k8s核心資源管理的三種方法:
①命令行CLI工具進(jìn)行管理
②同一資源配置清單manifest進(jìn)行管理
③web頁(yè)面進(jìn)行管理
獲取資源信息get
kubectl get resource [-o wide|json|yaml] [-n namespace]
-n 指定名稱空間籍救,-o 指定輸出格式
resource可以是具體資源名稱州疾,如查找叫nginx-dp的deployment可以寫(xiě)作: deployment nginx-dp惠昔;
也可以是資源類型,如pod业栅;或者all
獲取名稱空間
kubectl get namespace
kubectl get ns
獲取DEFAULT名稱空間里的所有資源(默認(rèn)是default 所以查詢defaulte的資源時(shí), 可以省略-n default)
kubectl get all -n default
創(chuàng)建資源create
kubectl create resourece [options]
# 創(chuàng)建名稱空間app
kubectl create namespace app
可以用kubectl get ns進(jìn)行查看
[root@hdss7-21 ~]# kubectl get ns app
NAME STATUS AGE
app Active 10s
可以用kubectl delete app 進(jìn)行刪除
# 創(chuàng)建deployment,叫做nginx-dp,在app名稱空間下,鏡像是harbor.od.com/public/nginx:latest
[root@hdss7-21 ~]# kubectl create deployment nginx-dp --image=harbor.od.com/public/nginx:latest -n app
查看app下的deployment
kubectl get deploy -n app
查看pods
kube get pods -n app
#-wide擴(kuò)展的方式,
kube get pods -n app -o wide
#describe ,查看詳細(xì)描述
kubectl describe deployment nginx-dp -n app
創(chuàng)建service資源()
[root@hdss7-21 ~]# kubectl expose deployment nginx-dp --port=80 --target-port=80 --name=app-svc -n app
[root@hdss7-21 ~]# kubectl describe svc app-svc -n app
Name: app-svc
Namespace: app
Labels: app=app-deploy
Annotations: <none>
Selector: app=app-deploy
Type: ClusterIP
IP: 192.168.28.124
Port: <unset> 80/TCP
TargetPort: 80/TCP
Endpoints: 172.7.21.8:80
進(jìn)入pods (exec)
Usage: kubectl exec (POD | TYPE/NAME) [-c CONTAINER] [flags] -- COMMAND [args...] [options]
# 交互式方法
#exec 交互式-it 指定bash
[root@hdss7-21 ~]# kubectl exec nginx-web-796c86d7cd-zx2b9 -it -- /bin/bash
root@nginx-web-796c86d7cd-zx2b9:/# exit
exit
#非交互式. 直接查看文件cat /etc/resolv.conf
[root@hdss7-21 ~]# kubectl exec nginx-web-796c86d7cd-zx2b9 -- cat /etc/resolv.conf
nameserver 192.168.0.2
search default.svc.cluster.local svc.cluster.local cluster.local host.com
options ndots:5
也可以直接docker exec 進(jìn)入容器
刪除資源
Usage: kubectl delete ([-f FILENAME] | [-k DIRECTORY] | TYPE [(NAME | -l label | --all)]) [options]
[root@hdss7-21 ~]# kubectl delete deployment app-deploy -n app
[root@hdss7-21 ~]# kubectl delete ns app
強(qiáng)制刪除
--force --grace=period=0
通過(guò)資源配置清單(yaml/json)管理資源
查看資源配置清單
kubectl get svc nginx-dp -o yaml -n kube-public
解釋資源配置清單
kubectl explain service
創(chuàng)建資源配置清單
vi /root/nginx-ds-svc.yaml
應(yīng)用資源配置清單
kubectl apply -f nginx-ds-scv.yaml
修改資源配置清單
在線修改 kubectl edit service nginx-ds 在線編輯資源配置并保存生效
離線修改 修改nginx-ds-svc.yaml ,然后kubectl apply -f nginx-ds-scv.yaml 文件使其生效
kubectl create/apply/delete -f /path/to/yaml
****************************************華麗的分隔符*************************************