2024年最新 CKA 导航页

1. Dokcer 基础相关

  • Docker 、 Docker-Compose 安装教程
  • Docker基础知识、相关概念以及基本使用命令
  • Docker 一句话删除所有镜像/容器

2. CKA 相关学习

CKA(Certified Kubernetes Administrator)是由 Cloud Native Computing Foundation(CNCF)提供的一项认证考试,旨在验证个人在 Kubernetes 群集管理方面的技能和知识。通过考试取得 CKA 认证可以证明个人具备独立管理 Kubernetes 环境的能力。

CKA 考试的主要内容包括但不限于以下几个方面:

  • 集群架构和安装: 理解 Kubernetes 的架构和组件,并能够安装和配置 Kubernetes 群集。

  • 应用工作负载: 管理容器化应用程序的部署、扩展和更新,以及配置应用程序的资源限制和调度规则。

  • 集群维护: 实施备份和恢复策略、监控和故障排除 Kubernetes 群集,并进行安全审计和更新管理。

  • 网络: 配置和管理 Kubernetes 网络、服务和负载均衡,确保网络的可靠性和安全性。

  • 存储: 配置持久存储和卷,以及管理存储资源和存储类别。

  • 安全: 管理 Kubernetes 集群的安全设置,包括身份验证、授权、网络安全和安全策略。

分数占比: 存储(Storage)10%、 故障排除(Troubleshooting)30%、 工作负载和调度(Workloads & Scheduling)15%、 集群架构、安装和配置(Cluster Architecture, Installation & Configuration)25%、服务和网络(Services & Networking)20%

1. 权限控制 RBAC 4分

RBAC( 基于角色的访问控制)主要用于向指定用户或用户组的权限管理,主要考点是理解和操作 Kubernetes 中的 RBAC 和命名空间,以及如何创建、绑定和限制资源的权限。

解题思路

进入题目指定集群 ——> 创建集群作用域并赋予权限 ——> 创建身份验证令牌 ——> 将作用域绑定在身份令牌上

# ClusterRole 相关操作
$ kubectl  create / get / describe / delete clusterrole(s) <clusterrole-name> 

# 考试用参数
 -  --verb # 用于指定具体的操作权限
 -  --resource # 限制对特定资源的操作权限

# ServiceAccount 相关操作
$ kubectl create / get / describe serviceaccount(s) --namespace=<namespace>

# 考试用参数
 - -n	# 用于指定 Namespace
 - --clusterrole	# 指定要绑定的 ClusterRole 的名称
 - --serviceaccount		# 用于指定要绑定的 ServiceAccount 的名称

2. 扩展 Deployment 副本数量 4分

主要考点 : Deployment

Deployment 是用于定义和管理 Pod 的控制器对象,主要在于使用 Kubernetes 中的 Deployment 对象来进行扩展,并确保扩展后的 Pod 数量达到要求。

解题思路

进入题目指定集群 ——> 查看当前部署副本数量 ——> 扩展

# Deployment 相关操作
$ kubectl describe / get / scale / delete deployment(s) <deployment-name>

# 考试用参数
 - --replicas	# 用于设置副本数量

3. 配置网络策略 NetworkPolicy 7分

主要考点 : NetworkPolicy

NetworkPolicy 用于定义和管理网络访问策略,通过配置策略可以定义规则以限制进出 Pod 的网络流量。

解题思路

进入题目指定集群 ——> 官网复制默认配置 ——> 根据题目要求修改配置 ——> 执行该配置文件
默认 yaml 如下

apiVersion: networking.k8s.io/v1	# 指定使用的 Kubernetes API 版本
kind: NetworkPolicy		# 声明配置为 NetworkPolicy 资源
metadata:		# 元数据  用于定义 NetworkPolicy 的名称和命名空间
  name: test-network-policy
  namespace: default
spec:		# 定义规则与策略
  podSelector:		# 选择应用 NetworkPolicy 的目标 Pod
    matchLabels:		# 匹配标签
      role: db
  policyTypes:		# 策略类型
  - Ingress		# 允许入站流量
  - Egress		# 允许出站流量
  ingress:		# 入站规则
  - from:		# 允许流量来源
    - ipBlock:		# 允许来自 IP 段的流量
        cidr: 172.17.0.0/16
        except:		# 排除不允许的 IP 段
        - 172.17.1.0/24
    - namespaceSelector:		# 允许来自特定命名空间的流量
        matchLabels:
          project: myproject
    - podSelector:		# 允许来自特定标签的 Pod
        matchLabels:
          role: frontend
    ports:
    - protocol: TCP
      port: 6379
  egress:		# 出站规则,允许从 Pod 发出的流量
  - to:		# 指定允许流量去往的目标
    - ipBlock:		# 指定允许去往的 IP 段
        cidr: 10.0.0.0/24
    ports:		# 指定允许的端口和协议
    - protocol: TCP
      port: 5978

4. 查看 Pod 的 CPU 5分

主要考点 : Pod

在 Kubernetes 中,Pod 是最小的部署单元,它是一个或多个容器的组合,共享网络命名空间、IP地址和存储卷。Pod 通常被用来组合具有关联功能的容器,比如一个前端应用和一个后端应用,它们可以放在同一个 Pod 中,共享资源和通信。

解题思路

进入题目指定集群 ——> 根据题目要求排序显示 ——> 将查询结果写入指定文件

# Pod 相关操作
$ kubectl get / describe / delete / top pod(s) <pod-name>

5. 创建 Ingress 7分

主要考点 : Ingress

Ingress 是一种资源对象,用于管理外部到 Kubernetes 集群内服务的访问。

解题思路

进入题目指定集群 ——> 官网复制默认配置 ——> 根据题目要求修改配置 ——> 执行该配置文件
默认 yaml 如下

apiVersion: networking.k8s.io/v1		# 指定 Kubernetes 中使用的 API 版本
kind: Ingress		# 指定对象的类型
metadata:	# 包含有关对象的元数据信息
  name: minimal-ingress
  annotations:		# 配置 Nginx Ingress 控制器的重写目标
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:		# 指定了 Ingress 对象的规范,即其配置
  ingressClassName: nginx-example 		# 指定要使用的 Ingress 控制器的类别或类型
  rules:		# 定义路由规则
  - http:
      paths:		# 定义了针对特定路径的路由规则列表
      - path: /testpath
        pathType: Prefix		# 指定路径的类型  "Prefix"(前缀匹配)  "Exact"(精确匹配)
        backend:		# 指定后端服务
          service:
            name: test
            port:
              number: 80

6. 暴露服务 Service 7分

主要考点 : Deployments

Deployments 是一种资源对象,用于定义和管理容器化应用程序的部署过程。它提供了一种声明式的方式来定义、创建、更新和管理应用程序的部署。

解题思路

进入题目指定集群 ——> 官网复制默认配置 ——> 根据题目要求修改配置 ——> 执行该配置文件
默认 yaml 如下

apiVersion: apps/v1 		# 制定 Kubernetes API 的版本
kind: Deployment		# 指定对象的类型
metadata:		# 元数据部分
  name: nginx-deployment
  labels:		# 指定 Deployments 对象的标签
    app: nginx
spec:		# 指定 Deployments 的规范部分
  replicas: 3		# 指定要创建的 Pod 的副本数量
  selector:		# 指定用于选择要控制的 Pod 的标签选择器
    matchLabels:		# 匹配 Pod 标签的规则
      app: nginx
  template:		# 指定要创建的 Pod 的模板数据
    metadata:
      labels:
        app: nginx
    spec:
      containers:		# 指定容器的配置信息
      - name: nginx
        image: nginx:1.14.2
        ports:
        - containerPort: 80

7. 调度 Pod 到指定节点 4分

主要考点 : Pod

在 Kubernetes 中,Pod 是最小的部署单元,它是一个或多个容器的组合,共享网络命名空间、IP地址和存储卷。Pod 通常被用来组合具有关联功能的容器,比如一个前端应用和一个后端应用,它们可以放在同一个 Pod 中,共享资源和通信。

解题思路

进入题目指定集群 ——> 官网复制默认配置 ——> 根据题目要求修改配置 ——> 执行该配置文件
默认 yaml 如下

apiVersion: v1
kind: Pod
metadata:
  name: nginx
spec:
  containers:
  - name: nginx
    image: nginx:1.14.2
    ports:
    - containerPort: 80

8. 查看可用节点数量 4分

主要考点 : Pod

在 Kubernetes 中,Pod 是最小的部署单元,它是一个或多个容器的组合,共享网络命名空间、IP地址和存储卷。Pod 通常被用来组合具有关联功能的容器,比如一个前端应用和一个后端应用,它们可以放在同一个 Pod 中,共享资源和通信。

解题思路

进入题目指定集群 ——> 根据题目要求筛选显示 ——> 将查询结果写入指定文件

# Pod 相关操作
$ kubectl get / describe / delete / top pod(s) <pod-name>

9. 创建多容器的 Pod 4分

主要考点 : Pod

在 Kubernetes 中,Pod 是最小的部署单元,它是一个或多个容器的组合,共享网络命名空间、IP地址和存储卷。Pod 通常被用来组合具有关联功能的容器,比如一个前端应用和一个后端应用,它们可以放在同一个 Pod 中,共享资源和通信。

解题思路

进入题目指定集群 ——> 官网复制默认配置 ——> 根据题目要求修改配置 ——> 执行该配置文件
默认 yaml 如下

apiVersion: v1
kind: Pod
metadata:
  name: nginx
spec:
  containers:
  - name: nginx
    image: nginx:1.14.2
    ports:
    - containerPort: 80

10. 创建 PV 4分

主要考点 : PersistentVolume

在 Kubernetes 中,PersistentVolume(持久卷)是一种资源对象,用于抽象底层存储的细节,提供了一种统一的方式来管理持久化存储,并使存储资源可以被 Pod 访问。

解题思路
# PV 相关操作命令
$ kubectl get / describe / delete 

进入题目指定集群 ——> 官网复制默认配置 ——> 根据题目要求修改配置 ——> 执行该配置文件
默认 yaml 如下

apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv0003
spec:
  capacity:		# 指定持久卷的容量
    storage: 5Gi		# 指定存储容量大小
  volumeMode: Filesystem	# 指定持久卷的卷模式
  accessModes:		# 指定持久卷的访问模式
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Recycle		# 指定持久卷的回收策略
  storageClassName: slow		# 指定持久卷的存储类名称
  mountOptions:
    - hard
    - nfsvers=4.1
  nfs:		# 指定 NFS 类型的持久卷的详细信息
    path: /tmp
    server: 172.17.0.2

11. 创建 PVC 7分

主要考点 : PersistentVolumeClaim

PersistentVolumeClaim 是 Kubernetes 中的一种资源对象,用于请求持久化存储资源。当应用程序需要使用持久化存储时,可以创建一个 PersistentVolumeClaim,该声明描述了对存储的需求,比如存储大小和访问模式等。

解题思路
# PV 相关操作命令
$ kubectl get / describe / delete 

进入题目指定集群 ——> 官网复制默认配置并根据题目要求修改配置参数 ——> 创建 pod 节点并将 pvc 赋予到 pod 节点上 ——> 使用 record 参数按题目要求修改 pvc 参数

12. 查看 Pod 日志 5分

主要考点 : Pod

在 Kubernetes 中,Pod 是最小的部署单元,它是一个或多个容器的组合,共享网络命名空间、IP地址和存储卷。Pod 通常被用来组合具有关联功能的容器,比如一个前端应用和一个后端应用,它们可以放在同一个 Pod 中,共享资源和通信。

解题思路

进入题目指定集群 ——> 将日志写入指定文件中

13. 使用 Sidecar 代理容器日志 7分

主要考点 : 日志架构

在应用程序的 Pod 中,包含专门记录日志的边车(Sidecar)容器,该方案是将日志记录功能与应用程序容器分离开来,以确保日志记录不会影响应用程序的性能或稳定性,并且使得日志记录的配置更加灵活和可控。

解题思路

进入题目指定集群 ——> 导出现有 pod 的配置参数 ——> 根据题目要求修改配置参数 ——> 删除原有 pod 节点,重新添加

14. 升级集群 7分

主要考点 : 集群升级

从高层规划的角度看,要执行的步骤是:

  • 升级控制平面
  • 升级集群中的节点
  • 升级 kubectl 之类的客户端
  • 根据新 Kubernetes 版本带来的 API 变化,调整清单文件和其他资源
解题思路

进入题目指定集群 ——> 驱逐主节点并远程连接至主节点 ——> 查找指定版本的 kubeadm 并安装 ——> 执行 kubeadm 升级计划 ——> 升级 kubelet 并重启服务 ——> 升级kubectl ——> 回退到从节点并重新加入主节点

15. 备份还原 etcd 7分

主要考点 : etcdctl

etcd 是 一致且高可用的键值存储,用作 Kubernetes 所有集群数据的后台数据库。

解题思路

进入题目指定集群 ——> 制作快照 ——> 修改 etcd 配置还原快照 (不做扣四分)

16. ※ 排查集群中故障节点 13分

主要考点 : 排查故障

白给分

解题思路

进入题目指定集群 ——> ssh 连接故障节点 ——> 重启 kublet 并配置自动启动 ——> 回退至 node01 节点

题目分数高,操作难度低,建议先做

17. 节点维护 4分

主要考点 : Pod

在 Kubernetes 中,Pod 是最小的部署单元,它是一个或多个容器的组合,共享网络命名空间、IP地址和存储卷。Pod 通常被用来组合具有关联功能的容器,比如一个前端应用和一个后端应用,它们可以放在同一个 Pod 中,共享资源和通信。

解题思路

进入题目指定集群 ——> 暂停节点调度 ——> 驱逐节点


有 CKA 相关问题可评论留言 订阅点赞关注可即使查阅最新文章更新

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/597879.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

c#实现音乐的“vip播放功能”

文章目录 前言1. c#窗体2. 功能3. 具体实现3.1 添加文件3.2 音乐播放3.3 其他功能 4. 整体代码和窗口5. 依赖的第三方库 前言 最近在QQ音乐里重温周杰伦的歌&#xff0c;觉得好听到耳朵怀孕&#xff0c;兴起想要下载下来反复听&#xff0c;发现QQ音乐VIP歌曲下载下来的格式居然…

C++初阶之list的使用和模拟以及反向迭代器的模拟实现

个人主页&#xff1a;点我进入主页 专栏分类&#xff1a;C语言初阶 C语言进阶 数据结构初阶 Linux C初阶 算法 欢迎大家点赞&#xff0c;评论&#xff0c;收藏。 一起努力&#xff0c;一起奔赴大厂 一.list简介 list是一个带头双向链表&#xff0c;在数据结构的时候…

44 网络基础

本章重点 了解网络发展背景&#xff0c;对局域网/广域网的概念有基本认识 了解网络协议的意义&#xff0c;重点理解TCP/IP五层结构模型 学习网络传输的基本流程&#xff0c;理解封装和分用 目录 1.网络发展 2.协议 3.OSI七层模型 4.TCP/IP五层模型 5.网络传输流程图 6.网络中…

VMP 简单源码分析(.net)

虚拟机 获取CPU的型号 实现了一个指令集解释器&#xff0c;每个操作码对应一个特定的处理函数&#xff0c;用于执行相应的指令操作。在执行字节码时&#xff0c;解释器会根据操作码查找并调用相应的处理函数来执行指令。 截获异常 先由虚拟机处理 处理不了再抛出异常 priva…

开源投票系统源码及搭建 在线投票活动创建系统的设计与开发

在当今数字化时代&#xff0c;在线投票活动已成为各类组织、企业和个人不可或缺的一部分。无论是选举、问卷调查、产品评选还是其他需要收集公众意见的场景&#xff0c;一个高效、稳定且易于使用的在线投票系统都至关重要。 分享一款基于开源投票系统源码的在线投票活动创建系…

设计模式Java实现-建造者模式

楔子 小七在2019年的时候&#xff0c;就想写一个关于设计模式的专栏&#xff0c;但是最终却半途而废了。粗略一想&#xff0c;如果做完一件事要100分钟&#xff0c;小七用3分钟热情做的事&#xff0c;最少也能完成10件事情了。所以这一次&#xff0c;一定要把他做完&#xff0…

ICode国际青少年编程竞赛- Python-1级训练场-综合训练1

ICode国际青少年编程竞赛- Python-1级训练场-综合训练1 1、 Spaceship.turnLeft() for i in range(2):Spaceship.turnLeft()Spaceship.step(3) Dev.step(-1) Spaceship.step(4) Spaceship.turnLeft() Spaceship.step(3)2、 Spaceship.step() Spaceship.turnLeft() Spaceship.…

学QT的第一天~

#include "mywidget.h" MyWidget::MyWidget(QWidget *parent) : QWidget(parent) { //窗口相关设置// this->resize(427,330); this->setFixedSize(427,330); //设置图标 this->setWindowIcon(QIcon("C:\\Users\\Admin\\Desktop\\pictrue\\dahz.jpg&q…

【面试经典 150 | 分治】建立四叉树

文章目录 写在前面Tag题目来源解题思路方法一&#xff1a;递归 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法&#xff0c;两到三天更新一篇文章&#xff0c;欢迎催更…… 专栏内容以分析题目为主&#xff0c;并附带一些对于本题涉及到的数据结构等内容进行回顾…

C语言写的LLM训练

特斯拉前 AI 总监、OpenAI 创始团队成员 Andrej Karpathy 用 C 代码完成了 GPT-2 大模型训练过程&#xff1a;karpathy/llm.c: LLM training in simple, raw C/CUDA (github.com) 下载源码 git clone --recursive https://github.com/karpathy/llm.c.git下载模型 从HF-Mirro…

JavaScript中的RegExp和Cookie

个人主页&#xff1a;学习前端的小z 个人专栏&#xff1a;JavaScript 精粹 本专栏旨在分享记录每日学习的前端知识和学习笔记的归纳总结&#xff0c;欢迎大家在评论区交流讨论&#xff01; 文章目录 &#x1f506;RegExp &#x1f3b2; 1 什么是正则表达式 &#x1f3b2;2 创建…

组件化开发根组件

目录 一、组件化开发介绍 二、根组件 一、组件化开发介绍 组件化&#xff1a;一个页面可以拆分成一个个组件&#xff0c;每个组件有着自己独立的结构、样式、行为。 好处&#xff1a;便于维护&#xff0c;利于复用&#xff0c;提升开发效率。 二、根组件 组件分类&#xff…

MindSponge分子动力学模拟——安装与使用

技术背景 昇思MindSpore是由华为主导的一个&#xff0c;面向全场景构建最佳昇腾匹配、支持多处理器架构的开放AI框架。MindSpore不仅仅是软件层面的工具&#xff0c;更重要的是可以协同华为自研的昇腾Ascend平台&#xff0c;做到软硬件一体的行业解决方案。基于MindSpore的高通…

Gin 框架的使用

1、Gin 快速开发 1.1、环境准备 1.1.1、导入 gin 依赖 这里就叫 gin 依赖了&#xff0c;在 Goland 命令行中输入下面的命令&#xff1a; go get -u github.com/gin-gonic/gin 1.1.2、设置代理 如果下载失败&#xff0c;最好设置一下代理&#xff0c;在 cmd 命令行中输入下…

react【实用教程】 搭建开发环境(2024版)Vite+React (官方推荐)

以项目名 reactDemo为例 1. 下载脚手架 在目标文件夹中打开命令行 npm create vite2. 安装项目依赖 cd reactDemo npm i若安装失败&#xff0c;则修改下载源重试 npm config set registry https://registry.npmmirror.com3. 启动项目 npm run dev4. 预览项目 浏览器访问 http…

亚马逊FBA头程多少钱一公斤?FBA头程怎么收费?

在亚马逊的电商生态中&#xff0c;FBA服务已经成为许多卖家提升客户满意度和销售效率的重要工具&#xff0c;然而&#xff0c;对于使用FBA服务的卖家来说&#xff0c;选择一家合适的物流合作伙伴并了解其FBA头程的收费标准和计费方式同样至关重要&#xff0c;亚马逊FBA头程多少…

Elsevier——投稿系统遇到bug时的解决方法

重要&#xff1a;找期刊客服&#xff01;&#xff01;&#xff01; 一、方法&#xff1a; 1. 点击进入与官方客服的对话 2. 按要求输入个人信息 3. 输入遇到的问题 比如&#xff1a; 主题&#xff1a;The Current Status is jammed. 详细描述&#xff1a;The Current State o…

XSS-Labs 靶场通过解析(上)

前言 XSS-Labs靶场是一个专门用于学习和练习跨站脚本攻击&#xff08;XSS&#xff09;技术的在线平台。它提供了一系列的实验场景和演示&#xff0c;帮助安全研究人员、开发人员和安全爱好者深入了解XSS攻击的原理和防御方法。 XSS-Labs靶场的主要特点和功能包括&#xff1a;…

数据结构:线性表(详解)

线性表 线性表的知识框架&#xff1a; 线性表的定义&#xff1a; 线性表是具有相同数据类型的n(n > 0)个数据元素的有限序列&#xff0c;当n 0时线性表为一个空表。 若用L命名为线性表&#xff0c;则数据集合为L {a1,a2,…,an}&#xff0c;其中a1称为表头元素&#xff0c…

【方法】如何创建RAR格式压缩文件?

为了方便存储或者传输文件&#xff0c;我们经常会把文件打包成不同格式的压缩包&#xff0c;那如果想创建的是RAR格式的压缩包&#xff0c;要如何做呢&#xff1f; RAR是WinRAR软件独有的压缩格式&#xff0c;所以我们可以通过WinRAR软件来创建RAR格式压缩包。下面分享两种创建…