k8s核心资源管理的三种方法:
①命令行CLI工具进行管理
②同一资源配置清单manifest进行管理
③web页面进行管理
获取资源信息get
kubectl get resource [-o wide|json|yaml] [-n namespace]
-n 指定名称空间,-o 指定输出格式
resource可以是具体资源名称,如查找叫nginx-dp的deployment可以写作: deployment nginx-dp;
也可以是资源类型,如pod;或者all
获取名称空间
kubectl get namespace
kubectl get ns
获取DEFAULT名称空间里的所有资源(默认是default 所以查询defaulte的资源时, 可以省略-n default)
kubectl get all -n default
创建资源create
kubectl create resourece [options]
# 创建名称空间app
kubectl create namespace app
可以用kubectl get ns进行查看
[root@hdss7-21 ~]# kubectl get ns app
NAME STATUS AGE
app Active 10s
可以用kubectl delete app 进行删除
# 创建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扩展的方式,
kube get pods -n app -o wide
#describe ,查看详细描述
kubectl describe deployment nginx-dp -n app
创建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
进入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 进入容器
删除资源
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
强制删除
--force --grace=period=0
通过资源配置清单(yaml/json)管理资源
查看资源配置清单
kubectl get svc nginx-dp -o yaml -n kube-public
解释资源配置清单
kubectl explain service
创建资源配置清单
vi /root/nginx-ds-svc.yaml
应用资源配置清单
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
****************************************华丽的分隔符*************************************