[转帖]CKA 真题
https://segmentfault.com/a/1190000021380185
- 1.列出pod并排序
kubectl get pod --sort-by .metadata.name 题目一般都是按名字排序
- 2.找出pod中的错误日志
kubectl logs heapster-798fcd9949-lk9rc | grep error > xx.txt 要求是把错误内容输出到某个文件中,可以粘贴,也可以直接重定向文件
- 3.创建一个pod ,并调度到某个节点上
命令行创建pod的方法可以参考攻略的pdf,主要参数是--restart=Never,否则就会是deployment kubectl run nginx-pod --image=nginx --port=80 --restart=Never --dry-run -o yaml > pod.yaml
先导出一份示例yaml出来,记得保存好这份yaml,后面也要用的
在yaml的spec属性中增加 nodeName: xxx 创建pod:kubectl create -f pod.yaml
- 4.列出正常节点的个数
kubectl get node 如何判断正常节点:一般都是not ready get或者describe node排查node信息,把可用数写到一个文件中,文件里写一个数字就行了,不要多写空格换行之类的,谨记
- 5.pod中挂载volume
直接使用这个文档的示例就行,不用改啥东西
文档地址:https://kubernetes.io/docs/concepts/storage/volumes/
- 6.提供一个pod,添加init-container ,在container中添加一个空文件,启动的时候。在另一个containre中检测是否有这个文件,否则退出
文档地址:https://kubernetes.io/docs/co...
apiVersion: v1
kind: Pod
metadata:
creationTimestamp: null
labels:
run: nginx-pod
name: nginx-pod
spec:
containers:
- image: nginx
name: nginx-pod
command: ['sh','-c','if [ -f "a.txt" ]; then echo xx ;fi']
ports:
- containerPort: 80
resources: {}
volumeMounts:
- name: workdir
mountPath: /usr/nginx/html
dnsPolicy: ClusterFirst
initContainers:
- image: busybox
name: initcheck
command: ['sh','-c','touch /tmp/index.html']
volumeMounts:
- name: workdir
mountPath: /tmp
volumes:
- name: workdir
emptyDir: {}
- 7.创建pod,再创建一个service
pod的模板使用前几题留下的yaml,改下就行了 service的nodePort类型:https://kubernetes.io/docs/concepts/services-networking/service/ 注意:校验nodePort是否通,不要在中控机上校验,登录到node去校验 也有可能让你建cluster-ip类型
- 8.在一个pod中创建2个容器,如redis+nginx
apiVersion: v1
kind: Pod
metadata:
name: demo
spec:
containers:
- image: nginx
name: nginx
- image: redis
name: redis
- 9.找到指定service下的pod中,cpu利用率按高到底排序
按selector查找
kubectl get pod --selector="run=demo" | awk '{ print $1}' | grep -v NAME |
或者找到pod后,一个一个看
kubectl top pod | grep -v NAME | sort -k 3
- 10.创建一个简单的daemonset
文档地址:https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/ 文档中给的yaml内容太多了,volume都可以删掉 daemonset创建好后会发现pod数小于节点数,可以看下节点是不是打了taint
- 11.deployment的扩容 ,scale命令
kubectl scale --replicas=4 deployment demo
- 12 创建secret,有一个paasword字段(手动base64加密),创建两个pod引用该secret,一个用env ,一个用volume来调用
这个文档里面全都有,记住链接 https://kubernetes.io/docs/concepts/configuration/secret/
- 13.先将nginx:1.9的deployment,升级到nginx:1.11,记录下来(—record),然后回滚到1.9
升级
kubectl set image deployments demo demo=nginx:1.11 --record
回滚
kubectl rollout undo deployment demo
- 14.使用ns lookup 查看service 和pod的dns
service和pod的创建用之前的yaml
查看dns kubectl run -it --image busybox:1.28.4 dnstest --rm /bin/sh sevice: nslookup svc-demo.kube-system.svc.cluster.local pod: nslookup 1-2-3-4.default.pod.cluster.local 查看pod ip时,要把1.2.3.4换成1-2-3-4,否则会报错 对应的文档:https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/
- 15.etcdctl 来 备份etcd
ETCDCTL_API=3 etcdctl --endpoints ....snapshot save xxx 根据-h提示写就行了 先声明环境变量ETCDCTL_API=3 ,不然etcdctl 是v2版本 这个文档: 文档地址:https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/
- 16.static pod的使用
文档地址:https://kubernetes.io/docs/tasks/administer-cluster/static-pod/ 找到--pod-manifest-path=/etc/kubelet.d/配置的位置,然后把pod的yaml放进去 apiVersion: v1
kind: Pod
metadata:
name: static-web
labels:
role: myrole
spec:
containers:
- name: web
image: nginx
ports:
- name: web
containerPort: 80
protocol: TCP
- 17.在一个新的namespace创建pod
先创建ns,在创建pod,和前面步骤类似
- 18.pv 类型hostpath 位置在/data , 大小为1G , readonly模式
文档地址: https://kubernetes.io/docs/concepts/storage/persistent-volumes/
- 20.给pod创建service
- 21.使用node selector,选择disk为ssd的机器调度
apiVersion: v1
kind: Pod
metadata:
name: nginx
labels:
env: test
spec:
containers:
- name: nginx
image: nginx
imagePullPolicy: IfNotPresent
nodeSelector:
disktype: ssd
22.排查apiserver连接不上问题:
用的kubeadmin安装的,是kubelet的配置中目录地址有问题
- 23.把一个node弄成unavailable 并且把上边的pod重新调度去新的node上
应该是直接drain,需要注意daemonset要强制删除,或者给节点打污点,taint,再去删掉
- 24.tls bootstrap加入节点(题目超长,时间一般都是不够用的。可以选择性放弃,这题8分)
参考作答:https://lingxiankong.github.i...
文档地址:https://kubernetes.io/docs/re...
[转帖]CKA 真题的更多相关文章
- 互联网最全cka真题解析-2022
1.CKA真题解析kubectl自动补全及帮助信息1.配置kubectl自动补全apt install bash-completion source <(kubectl completion b ...
- 2020年11月CKA新题考试心得体会
1 什么是CKA CKA,即Certificated Kubernetes Administrator,CNCF官方提供的Kubernetes技能认证,含金量还是不错的.还有CKAD,相对简单一些,没 ...
- 2016.1.4~2016.1.7真题回顾!-- HTML5学堂
2016.1.4~2016.1.7真题回顾!-- HTML5学堂 2015悄然而逝,崭新的2016随即而行!生活需要新鲜感,学习JavaScript的过程需要有成就感!成就感又是来自于每一天的不断练习 ...
- 2015.12.29~2015.12.30真题回顾!-- HTML5学堂
2015.12.29~2015.12.30真题回顾!-- HTML5学堂 吃饭,能够解决饥饿,提供身体运作机能.练习就像吃饭,强壮自己,提升编程技能,寻求编程技巧的最佳捷径!吃饭不能停,练习同样不能停 ...
- 2015.12.21~2015.12.24真题回顾!-- HTML5学堂
2015.12.21~2015.12.24真题回顾!-- HTML5学堂 山不在高,有仙则名!水不在深,有龙则灵!千里冰封,非一日之寒!IT之路,须厚积薄发!一日一小练,功成不是梦!小小技巧,尽在HT ...
- 网易实习笔试真题C/C++
刚做的时候根本就没有想到解题思路,刚好看到了别人的思路,自己写了一下.里面对unordered_map及vector二维数组的建立很灵活,另外区别了一下map,unordered_map,hash_m ...
- 你只是看起来很努力(只是做了一遍真题,草草的对了一遍答案,然后冲出自习室继续她学生会的事情了,骗自己更容易)good——想起了自己在六大时候的无奈
(转)你只是看起来很努力一次上课,一个女孩子垂头丧气的跟我说,老师,我考了四次四级,还没过,究竟是为什么. 我说,你真题做了吗?单词背了吗?她拿出已经翻破了的真题,跟我说,你讲的所有的题目我连答案都记 ...
- 考试宝典-真题园安卓AppV2.1.0新版发布啦,全新界面,全新体验,全面适配Android 5.0&6.0系统!
真题园移动客户端是真题园网 http://www.zhentiyuan.com 旗下的一款学习考试应用App. 1.全新适配Android5.0.6.0系统,重新优化架构网络通信模块. 2.全新清爽U ...
- 考试必备神器-真题园手机客户端Android版1.1正式上线啦,欢迎大家下载使用!
真题园-考试必备神器,爱学习,找真题! 真题园-考试必备神器,爱学习,找真题!1.真题园android客户端1.1版全新发布上线.2.最新教育资讯实时更新,了解行业动态新闻.3.最新最全的真题大全,最 ...
- 第四届蓝桥杯 c/c++真题
第四届蓝桥杯 c/c++真题 <1>高斯日记 问题 大数学家高斯有个好习惯:无论如何都要记日记. 他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210 后来人们 ...
随机推荐
- 带你掌握数仓的作业级监控TopSQL
摘要:目前TopSQL功能被用户广泛使用,是性能定位.劣化分析.审计回溯等重要的基石,为用户提供覆盖内存.耗时.IO.网络.空间等多方面的监控能力. 本文分享自华为云社区<GaussDB(DWS ...
- 号外!5G+X联创营华为云官网上线,5G 创业春天来了!
摘要:为助力互联网行业客户与伙伴实现降本增效.抓住新趋势,华为云发起"5G+X"联创营计划. 会议室里,产品经理和程序员们唇枪舌战,陷入激烈得讨(zheng)论(chao). 产品 ...
- 智能对联模型太难完成?华为云ModelArts助你实现!手把手教学
摘要:农历新年将至,听说华为云 AI 又将开启智能对对联迎接牛气冲天,让我们拭目以待!作为资深 Copy 攻城狮,想要自己实现一个对对联的模型,是不能可能完成的任务,因此我搜罗了不少前人的实践案例,今 ...
- 华为云云原生数据库GaussDB加速创新,企业核心数据上云信赖之选
集大会演讲.圆桌讨论.精彩活动及现场直击....一大波华为开发者大会2021干货资料来喽~~!还等什么快快来领取技术福利! 摘要:华为开发者大会(Cloud)上,华为云发布了云原生数据库GaussDB ...
- 从“13天”到“0天”延时,揭秘幸福里离线SLA保障最佳实践
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 "幸福里"是抖音集团旗下集内容.社区.工具于一体的房产媒体综合信息平台,致力于提供多样化 ...
- 字节跳动开源数据集成引擎 BitSail 的演进历程与能力解析
导读 BitSail 是字节跳动开源数据集成引擎,支持多种异构数据源间的数据同步,并提供离线.实时.全量.增量场景下全域数据集成解决方案,目前支撑了字节内部和火山引擎多个客户的数据集成需求.经过字节跳 ...
- Mysql--JOIN连表查询
一.Join查询原理 MySQL内部采用了一种叫做 nested loop join(嵌套循环连接)的算法:通过驱动表的结果集作为循环基础数据,然后一条一条的通过该结果集中的数据作为过滤条件到下一个表 ...
- 0x53 动态规划-区间DP
A: 石子合并 所求问题:1到n这些石子合并最少需要多少代价 由于石子合并的顺序可以任意,我们将石子分为两个部分 子问题:1到k这堆石子合并,k+1到n这堆石子合并,再把两堆石子合并,需要多少代价\( ...
- Java | VS Code 如何导入外部 jar 包源
Java Extension Pack里的Project Manager for Java扩展,安装后在文档查看的下方会有"JAVA PROJECTS",在Referenced L ...
- Codeforces Round #565 (Div. 3) (重现赛个人题解)
1176A. Divide it! 题目链接:http://codeforces.com/problemset/problem/1176/A 题意: 给定一个数字 \(n\) 和三种操作 如果 n 能 ...