minikube&kubectl
- minkube用于在本地开发环境中快速搭建一个单节点的Kubernetes集群,还有
k3s,k3d,kind都是轻量级的k8s - kubectl是使用K8s API 与K8s集群的控制面进行通信的命令行工具
这里使用Debian Linux演示,其他系统安装见官网,首先要安装驱动docker、kvm2、podman、qemu2和virtualbox其中的一个
#查看是否开启虚拟化,Intel-VT或AMD-V
lscpu | grep Virtualization
#安装curl
sudo apt install curl
#更新
sudo apt-get update
#安装transport-https,允许从https下载包
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg
#下载deb包
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_latest_amd64.deb
#安装minikube
sudo dpkg -i minikube_latest_amd64.deb
#下载kubectl
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
#安装kubectl
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
#查看安装
minikube version
kubectl version --client
#卸载
sudo apt remove minikube
sudo rm /usr/local/bin/kubectl
下载报错:Could not resolve host: storage.googleapis.co
#查看解析的ip
https://tool.chinaz.com/dns/storage.googleapis.com
#修改host,改为你解析的ip
sudo vi /etc/hosts
142.251.42.251 storage.googleapis.com
minikube命令
初次启动会下载镜像和组件
| 命令 | 解释 |
|---|---|
minikube start | 启动k8s集群 |
minikube status | 获取k8s集群状态 |
minikube stop | 停止k8s集群 |
minikube delete | 删除k8s集群 |
minikube dashboard | 访问dashboard |
minikube pause | 暂停k8s |
minikube unpause | 恢复k8s |
kubectl命令
| 命令 | 解释 |
|---|---|
kubectl get pods | 列出当前命名空间下的全部 Pod |
kubectl get services | 列出当前命名空间下的所有 Service |
kubectl get pod my-pod -o yaml | 获取一个 Pod 的 YAML |
kubectl apply -f ./my-manifest.yaml | 创建资源 |
kubectl create deployment nginx --image=nginx | 启动单实例 nginx |
kubectl rollout history deployment/frontend | 检查 Deployment 的历史记录,包括版本 |
kubectl rollout undo deployment/frontend | 回滚到上次部署版本 |
kubectl edit svc/docker-registry | 编辑名为 docker-registry 的服务 |
kubectl scale --replicas=3 rs/foo | 将名为 'foo' 的副本集扩缩到 3 副本 |
kubectl delete pod unwanted --now | 删除 Pod 且无宽限期限(无优雅时段) |
kubectl logs my-pod | 获取 Pod 日志 |
kubectl cp /tmp/foo_dir my-pod:/tmp/bar_dir | 将/tmp/foo_dir本地目录复制到远程当前命名空间中Pod中的 /tmp/bar_dir |