kubernetes(minikube) 使用笔记

第一次学习Kubernetes教程,先做记录行为/现象,后面学习原理的时候作为参照。

----

〇、启动与部署

1. 启动Kubernetes

minikube start

2. 部署镜像

示例:kubectl create deployment <deployment name> --image=gcr.io/google-samples/kubernetes-bootcamp:v1

3. 服务停止与环境清理

minikube stop

minikube delete

 

一、查看信息

1. kubectl get deployments/nodes/pods/services

(有意思的是这些命令都兼容不带s的单数形式,下面的前缀也是)

2. kubectl describe
kubectl describe deployment/<deployment name>
kubectl describe node/<node name>
kubectl describe pod/<pod name>
kubectl describe service/kubernetes

3. 标签记法

上述对deployment/node/pod/service的定位可以使用标签记法替代

如:node -l <key>=<value>

标签操作见后续笔记。

 

二、网络

外部直接可达的网络类型:

1. NodePort

IP获取方式:minikube ip

端口获取方式:kubectl get services 的返回结果中可以查看到端口映射情况。或者使用kubectl describe services/<service name> 查看。

映射创建方式:kubectl expose deployment/<deployment name> --type="NodePort" --port <pod port>

逆操作(删除服务):kubectl delete service/<service name>

2. proxy

IP:localhost

端口:默认8001

访问pod(80端口)的示例:http://localhost:8001/api/v1/namespaces/default/pods/<pod name>/proxy/

 

三、直接操作Pod

类似于docker的操作。

1. 执行命令

kubectl exec <pod name> command

2. 登录pod

kubectl exec -ti <pod name> bash

 

四、Scale & ReplicaSet

查看ReplicaSet:

kubectl get rs

调整副本数:

kubectl scale deployments/<deployment name> --replicas=<replica number>

 

五、应用升级

kubectl set image deployments/<deployment name> <container name>=<container image>

示例:kubectl set image deployments/<deployment name> kubernetes-bootcamp=jocatalin/kubernetes-bootcamp:v2

可以使用 kubectl describe <resource type> 来查看container name是什么。

确认变更是否成功:kubectl rollout status deployments/<deployment name>

回滚变更:kubectl rollout undo deployments/<deployment name>

 

六、标签操作

追加标签:kubectl label pod <pod name> <key>=<value>

如果要修改需要加--overwrite参数。

 

posted @ 2020-09-29 17:23  rainforwind  阅读(472)  评论(0)    收藏  举报