目录
一 资源管理介绍
kubernetes本质上就是一个集群系统,用户可以在集群中部署各种服务,所谓部署服务,其实就是在k8s中运行一个个容器,并将指定的程序跑在容器中
k8s最小管理单元是pod而不是容器,所以只能将容器放在pod中,而k8s一般也不会直接管理pod,二十通过pod控制器来管理
pod提供服务,k8s提供service资源实现这个功能
二 资源管理方式
2.1 命令式对象管理
kubectl是k8s集群命令行工具
kubectl [comand] [type] [name] [flags]
- comamd: 指定要对资源执行的操作,例如create , get , delete
- type:指定资源类型,比如deployment、pod、service
- name:指定资源名称
- flags:指定额外可选参数
#查看所有pod kubectl get pod #查看某个pod kubectl get pod pod_name ##查看某个pod 以yaml格式展示结果 kubectl get pod pod_name -o yaml
简单演示namespace /pod 创建和删除简单演示下命令的使用
1.创建一个namesapce [root@master ~]# kubectl create namespace dev namespace/dev created 2.获取namespace [root@master ~]# kubectl get ns NAME STATUS AGE default Active 3h12m dev Active 10s 3.在namespace创建并运行也该nginx pod [root@master ~]# kubectl run pod --image=nginx -n dev pod/pod created 4.查看新创建的pod [root@master ~]# kubectl get pod -n dev NAME READY STATUS RESTARTS AGE pod 1/1 Running 0 39s 5.删除指定的pod [root@master ~]# kubectl delete pod pod -n dev pod "pod" deleted 6,删除指定的namespace [root@master ~]# kubectl delete ns dev namespace "dev" deleted
2.2命令对象配置
1.编写yaml文件 [root@master ~]# cat nginxpod.yaml apiVersion: v1 kind: Namespace metadata: name: dev --- apiVersion: v1 kind: pod metadata: name: nginxpod namespace: dev spec: containers: - name: nginx-containers mage: nginx 2.执行create命令 创建资源 [root@master ~]# kubectl create -f nginxpod.yaml 3.查看资源 [root@master ~]# kubectl get ns dev NAME STATUS AGE dev Active 10m [root@master ~]# kubectl get pod -n dev NAME READY STATUS RESTARTS AGE nginxpod 1/1 Running 0 67s 4.删除资源 [root@master ~]# kubectl delete -f nginxpod.yaml
2.3 声明式对象配置
##apply 只能创建,如继续执行未改变,若修改文件内容则会更新配置。 [root@master ~]# kubectl apply -f nginxpod.yaml namespace/dev created pod/nginxpod created
扩展:kubectl可以在node节点运行吗
只需要在master节点 将home下的./kub 拷贝node节点即可