1、名称空间
kubectl get namespace
简化为
kubectl get ns
查看名称空间中的资源(默认default名称空间)
kubectl get all [ -n default]
创建名称空间
kubectl create ns myapp
删除名称空间
kubectl delete ns myapp
2、deployment
创建deployment
kubectl create deploy/deployment nginx-dp --image=harbor.yanc.com/public/nginx:1.17.10 -n kube-public
查看deploy
kubectl get deploy -n kube-public
查看deploy的详细描述
kubectl describe deployment nginx-dp -n kube-public
删除deployment
kubectl delete deploy nginx-dp -n kube-public
扩容/缩减(通过备份个数来控制)
kubectl scale deployment nginx-dp --replicas=2 -n kube-public
3、pod
查看pods
kubectl get pods -n kube-public -o wide
进入pod
kubectl exec -it nginx-dp-7844c44765-czh4l bash -n kube-public
删除pod(deploy控制器会重新启一个pod)
kubectl delete pod nginx-dp-7844c44765-czh4l -n kube-public
强制删除参数:–force --grace-period=0
4、service
创建service(暴露对外端口)
kubectl expose deployment nginx-dp --port=80 -n kube-public
查看service
kubectl describe svc nginx-dp -n kube-public
kubectl get svc nginx-dp -n kube-public -o wide
删除service
kubectl delete svc nginx-dp -n kube-public
5、yaml
查看pod的yaml文件
kubectl get pods -n kube-public
kubectl get pods nginx-dp-7844c44765-czh4l -o yaml -n kube-public
查看metadata帮助
kubectl explain service.metadata
kubectl explain svc.metadata
创建一个资源配置清单
vim /root/nginx-ds-svc.yaml
apiVersion: v1
kind: Service
metadata:
labels:
app: nginx-ds
name: nginx-ds
namespace: default
spec:
ports:
- name: nginx
port: 80
protocol: TCP
targetPort: 80
selector:
app: nginx-ds
sessionAffinity: None
type: ClusterIP
kubectl create -f nginx-ds-svc.yaml
kubectl get svc nginx-ds -o yaml
apiVersion: v1
kind: Service
metadata:
creationTimestamp: "2020-05-11T13:55:24Z"
labels:
app: nginx-ds
managedFields:
- apiVersion: v1
fieldsType: FieldsV1
fieldsV1:
f:metadata:
f:labels:
.: {}
f:app: {}
f:spec:
f:ports:
.: {}
k:{"port":80,"protocol":"TCP"}:
.: {}
f:port: {}
f:protocol: {}
f:targetPort: {}
f:selector:
.: {}
f:app: {}
f:sessionAffinity: {}
f:type: {}
manager: kubectl
operation: Update
time: "2020-05-11T13:55:24Z"
name: nginx-ds
namespace: default
resourceVersion: "1735113"
selfLink: /api/v1/namespaces/default/services/nginx-ds
uid: 81e4c51e-0b9b-44a6-9f7a-fd26d12bfb74
spec:
clusterIP: 192.168.27.166
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
app: nginx-ds
sessionAffinity: None
type: ClusterIP
status:
loadBalancer: {}
离线修改
修改完yaml文件后执行
kubectl apply -f nginx-ds-svc.yaml
在线修改
kubectl edit svc nginx-ds
删除
kubectl delete svc nginx-ds
kubectl delete -f nginx-ds-svc.yaml