cka练习记录

  • 新建命名空间,在该命名空间中创建一个pod
[root@master log]# kubectl create ns cka-test
[root@master log]# kubectl run nginx --image=nginx -n cka-test
pod/nginx created
[root@master log]# kubectl get pods -n cka-test
NAME    READY   STATUS    RESTARTS   AGE
nginx   1/1     Running   0          114s
  • 创建一个deployment并暴露Service
[root@master log]# kubectl create deployment my-dep-tomcat --image=tomcat
[root@master log]# kubectl expose deployment my-dep-tomcat --port=8080 --target-port=8080
[root@master log]# kubectl get svc|grep my-dep-tomcat
my-dep-tomcat   ClusterIP   10.103.60.64    <none>        8080/TCP       18s
  • 列出命名空间下指定标签pod
[root@master log]# kubectl get pods -n cka-test -l run=nginx
NAME    READY   STATUS    RESTARTS   AGE
nginx   1/1     Running   0          33m
  • 查看pod日志,并将日志中Error的行记录到指定文件

  • 查看指定标签使用cpu最高的pod,并记录到到指定文件
  • 在节点上配置kubelet托管启动一个pod(kubelet配置文件位置)
  • 向pod中添加一个init容器,init容器创建一个空文件,如果该空文件没有被检测到,pod就退出
  • 创建一个deployment 副本数 3,然后滚动更新镜像版本,并记录这个更新记录,最后再回滚到上一个版本(如何滚动??)
  • 给web deployment扩容副本数为3
  • 创建一个pod,其中运行着nginx、redis、memcached、consul 4个容器
  • 生成一个deployment yaml文件保存到/opt/deploy.yaml
  • 创建一个pod,分配到指定标签node上
  • 确保在每个节点上运行一个pod
  • 查看集群中状态为ready的node数量,不包含被打了NodeSchedule污点的节点,并将结果写到/opt/node.txt
  • 设置成node不能调度,并使已被调度的pod重新调度
  • 给一个pod创建service,并可以通过ClusterIP访问
  • 任意名称创建deployment和service,然后使用busybox容器nslookup解析service
  • 列出命名空间下某个service关联的所有pod,并将pod名称写到/opt/pod.txt文件中(使用标签筛选)
  • 创建一个secret,并创建2个pod,pod1挂载该secret,路径为/etc/foo,pod2使用环境变量引用该secret,该变量的环境变量名为ABC
  • 创建一个Pod使用PV自动供给
  • 创建一个pod并挂载数据卷,不可以用持久卷
  • 将pv按照名称、容量排序,并保存到/opt/pv文件
  • Bootstrap Token方式增加一台Node(二进制)
  • Etcd数据库备份与恢复(kubeadm)
  • 给定一个Kubernetes集群,排查管理节点组件存在问题
  • 工作节点 NotReady状态怎么解决?
  • 升级管理节点kubelet ,kubectl 组件由1.18 升级为1.19 ,工作节点不升级
  • 创建一个ingress
  • Pod创建一个边车容器读取业务容器日志
  • 创建一个clusterrole,关联到一个服务账号
  • default命名空间下所有pod可以互相访问,也可以访问其他命名空间Pod,但其他命名空间不能访问default命名空间Pod
上一篇:解决一次calico异常情况,pod之间访问pod ip不通


下一篇:pod启动详解