CKAD 模拟题库 | 13. Pod 健康检查 livenessProbe

模拟题目:

设置配置环境:

[candidate@node-1] $ kubectl config use-context k8s

Task

由于Liveness Probe 发生了问题 您无法访问一个应用程序。该应用程序可能在任何 namespace 中运行

  1. 找出对应的 Pod 并将其名称和 namespace 写入文件 /ckad/CKAD00011/broken.txt 使用以下格式
    <namespaceName>/<podName>

    文件 /ckad/CKAD00011/broken.txt 已存在

  2. kubectl get events 来获取相关错误事件井将其写入文件 /ckad/CKAD00011/error.txt 请使用输出格式 wide
    文件 /ckad/CKAD00011/error.txt 已存在 。
  3. 修复故障的 Pod 的 Liveness Probe 问题。

参考:

https://kubernetes.io/zh-cn/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/

继续阅读“CKAD 模拟题库 | 13. Pod 健康检查 livenessProbe”

CKAD 模拟题库 | 12. Secret

模拟题目:

设置配置环境:

[candidate@node-1] $ kubectl config use-context k8s

Task

  1. 在 namespace default 中创建一个名为 another-secret 并包含以下单个键值对的 Secret key1:value2
  2. 在 namespace default 中创建一个名为 nginx-secret 的 Pod 。 用 nginx:1.16 的镜像来指定一个容器 。添加一个名为 COOL_VARIABLE 的环境变量来使用 secret 键 key1 的值。

参考:

https://kubernetes.io/zh-cn/docs/concepts/configuration/secret/

https://kubernetes.io/zh-cn/docs/tasks/inject-data-application/distribute-credentials-secure/#define-container-env-var-using-secret-data
file

继续阅读“CKAD 模拟题库 | 12. Secret”

CKAD 模拟题库 | 11. ConfigMap

模拟题目:

设置配置环境:

[candidate@node-1] $ kubectl config use-context k8s

Task

  1. 在 namespace default 中创建一个名为 some-config 并存储着以下键值对的 Configmap: key3:value4
  2. 在 namespace default 中创建一个名为 nginx-configmap 的 Pod 。用 nginx:stable 的镜像来指定一个容器。用存储在Configmap some-config 中的数据来填充卷 并将其安装在路径 /some/path

参考:

https://kubernetes.io/zh-cn/docs/concepts/configuration/configmap/

file

继续阅读“CKAD 模拟题库 | 11. ConfigMap”

CKAD 模拟题库 | 10. RBAC 授权

模拟题目:

设置配置环境:

[candidate@node-1] $ kubectl config use-context k8s

Task

在名为 honeybee-deployment 的 Deployment 和 namespace gorilla 中的一个 Pod 正在记录错误

  1. 查看日志以识别错误消息
    找出错误,包括 User "system:serviceaccount:gorilla:default "can not list resource "serviceaccounts "[…] in the namespace "gorilla"
  2. 更新 Deployment honeybee-deployment 以解决 Pod 日志中的错误。
    您可以在 /ckad/prompt-escargot/honeybee-deployment.yaml 中找到 honeybee-deployment 的 清单文件

参考:

https://kubernetes.io/zh-cn/docs/reference/access-authn-authz/rbac/

继续阅读“CKAD 模拟题库 | 10. RBAC 授权”

CKAD 模拟题库 | 9. 创建 Deployment 并指定环境变量

模拟题目:

设置配置环境:

[candidate@node-1] $ kubectl config use-context k8s

Task

在现有的 namespace ckad00014 中创建一个运行 6 个 Pod 副本 ,名为 api 的 Deployment 。 用 nginx:1.16 的镜像来指定一个容器。将名为 NGINX_PORT 且值为 8000 的环境变量添加到容器中 然后公开端口 80

参考:

https://kubernetes.io/zh-cn/docs/tasks/inject-data-application/define-environment-variable-container/
file

继续阅读“CKAD 模拟题库 | 9. 创建 Deployment 并指定环境变量”

CKAD 模拟题库 | 8. 配置container 安全上下文

模拟题目:

设置配置环境:

[candidate@node-1] $ kubectl config use-context k8s

Task

修改运行在
namespace quetzal 名为 broker-deployment 的现有 Deployment 使其容器

  • 以用户 30000 运行
  • 禁止特权提升。

您可以在 /ckad/daring-moccasin/broker-deployment.yaml 找 到 broker-deployment 的清单文件

参考:

https://www.hao.kim/1104.html
https://kubernetes.io/zh-cn/docs/tasks/configure-pod-container/security-context/

kubectl explain deployment.spec.template.spec.containers.securityContext

file
file

继续阅读“CKAD 模拟题库 | 8. 配置container 安全上下文”

CKAD 模拟题库 | 7. 金丝雀部署

模拟题目:

设置配置环境:

[candidate@node-1] $ kubectl config use-context k8s

Task

namespace goshawk 中名为 chipmunk-service 的 Service 指向名为 current-chipmunk-deployment 的 Deployment 创建的 5 个 Pod
file
你可以在 /ckad/goshawk 中找到 current-chipmunk-deployment 的清单文件。

  1. 在同一 namespace 中创建一个 相同的 Deployment 名为 canary-chipmunk-deployment
  2. 修改 Deployment 以便
    • 在 namespace goshawk 中运行的 Pod 的最大数量为 10
    • chipmunk.service 流量的 40% 流向 Pod canary-chipmunk-deployment
      file

参考:

https://kubernetes.io/zh-cn/docs/concepts/cluster-administration/manage-deployment/#canary-deployments
https://kubernetes.io/zh-cn/docs/concepts/workloads/controllers/deployment/#canary-deployment

kubectl -h
kubectl scale -h

继续阅读“CKAD 模拟题库 | 7. 金丝雀部署”

CKAD 模拟题库 | 6. 运行旧版应用程序

模拟题目:

设置配置环境:

[candidate@node-1] $ kubectl config use-context k8s

Task

  1. 修复清单文件 /ckad/credible-mite/www.yaml 中的任何 API 弃用问题 以便可以将应用程序部署在 k8s cluster 上 。
    注意:该应用程序是为 Kubernetes v1.15 开发的 。
    k8s cluster 运行着 Kubernetes v1.26
  2. 请在 garfish namespace 中 部署 更新后的 清 单文件 /ckad/credible-mite/www.yaml 中指定的应用程序 。

参考:

kubectl explain deployment.spec
kubectl explain deployment.spec.selector

1.8版本之前 .spec.selector 可以省略
1.8版本之后 .spec.selector 不可以省略

继续阅读“CKAD 模拟题库 | 6. 运行旧版应用程序”

CKAD 模拟题库 | 5. CPU和内存 限制

模拟题目:

设置配置环境:

[candidate@node-1] $ kubectl config use-context k8s

Task

namespace haddock 中名为 nosql 的 Deployment 的 Pod 因其容器已用完资源而无法启动。
请更新 haddock Deployment ,使 Pod

  • 为其容器请求 15Mi 的内存
  • 将内存限制为 haddock namespace 设置的最大内存容量一半
    您可以在 /ckad/chief-cardinal/nosql.yaml 找到 nosql Deployment 的配置清单。

参考:

https://kubernetes.io/zh-cn/docs/concepts/configuration/manage-resources-containers/

file

继续阅读“CKAD 模拟题库 | 5. CPU和内存 限制”

CKAD 模拟题库 | 4. CPU和内存 请求

模拟题目:

设置配置环境:

[candidate@node-1] $ kubectl config use-context k8s

Task

在现有的 namespace pod-resources 中创建一个名为 nginx-resources 的 Pod 。
镜像为 nginx:1.16 ,为其容器指定资源请求 40m 的 CPU 和 50Mi 的内存

参考:

https://kubernetes.io/zh-cn/docs/concepts/configuration/manage-resources-containers/
file

继续阅读“CKAD 模拟题库 | 4. CPU和内存 请求”