Kubernetes
kubectl 常用的命令:
# 使用 kubectl get xxx -o json|yaml|wide|name... 查看详细信息
#1.获取节点列表:
kubectl get nodes
#2.创建:
kubectl create -f webserver.yaml
#3.查看创建的状态,状态为Pending【准备中】,Running状态【已经创建成功】:
kubectl get pods # 加--show-labels 显示标签 labels
# 3.1 查看 pods 标签:
kubectl get pods --show-labels
# 3.2 使用参数 -L 选项指表现,使之单独显示在一列中:
kubectl get pods -L label1,label2
# 3.3 给现有pod添加label:
kubectl label pods kubia-merual labelname=value
# 3.4 修改pod标签lables
kubectl label pods [pod name] lebal=new_lebal --overwrite # --overwrite 参数是必要的,否则kubectl 将只打印出警告,并不会更改标签
# 3.5 根据 label 值列出 pod:
kubectl get pods -l label_name=value # label_name!=value 不等于value的pod, label_name in (value1,value2) label 等于value1或value2的,label_name not in (value1,value2)
# 3.6 列出有某个标签的pod:
kubectl get pods -l label_name
# 3.7 列出没有某个标签的pod:
kubectl get pods -l '!label_name'
# 3.8 在标签选择中使用对个条件,用 逗号 隔开:
kubectl get pods -l label_name1=value1,label_name2=value2
#4.查看该容器在哪个节点
kubectl get pods -o wide
#5.查看该容器的所有状态
kubectl get pods [pod name] -o yaml # -o json 返回json格式信息
#6.删除Pod
kubectl delete pod [pod name]
#7.进入Pod对应的容器
kubectl exec -it redis-master-xjwzh bash # 通过“ -- ” 符号可指定进入 Pod 后执行的命令
#8.查看pod日志:
kubectl logs [pod name]
# 8.1查看多容器pod日志:
kubectl logs [pod name] -c [容器id]
#9.在不通过service情况下访问pod中的端口时,将本地端口转向pod中的端口:
kubectl port-forword [pod name] 宿主机-port:pod-port
#10.使用标签对工作节点进行分类
kubectl label node node_name label_name=value # 显示标签 选择标签和pod一样 同上
#11.删除pod
# 11.1 根据pod名删除(kubernetes 首先向进程发送一个 SIGTERM 信号并等待一定时间使其正常关闭,若没及时关闭则通过SIGKILL终止该进程)
kubectl delete pods pod-name
# 11.2 根据标签选择器删除 pod
kubectl delete pods -l label_name=value
# 11.3 通过删除整个命名空间来删除pod
kubectl delete namespace xxx-namespace
# 11.4 删除当前命名空间下的所有pod 保留 namespace
kubectl delete pods -all
# 11.5 删除当前命名空间内的所有资源pod 、ReplicationController以及service:
kubectl delete all --all
# 12. 把ReplicationController 资源通过 Server 暴露出来:
kubectl expose re kubia --type=LoadBalancer --label="label-name=value" # --type 外部访问方式 值可为 ClusterIP、 NodePort、 Ingress、LoadBalancer
# 13. 查看日志
kubectl logs pod-name
# 13.1 查看 pod 中某个容器的日志
kubectl logs pod-name -c container-name
1. Pod
2. ReplicationController
ReplicationController 介绍
创建一个 ReplicationController
将 pod 移入移出 ReplicationController
在rc中修改pod模板
水平缩放 pod
删除 ReplicationController
3. ReplicationSet
ReplicationSet 简介
定义 ReplicaSet
4. DaemonSet
5. Job
Job 简介与创建
Job 缩放、限制执行时间
定期执行的 Job – CronJob
6. Server
简介
创建服务
服务发现
连接外部服务
把服务暴露给集群外部客户端
ingress 控制器 与 资源.md
headless 服务
未完待续