drain3学习笔记

介绍

由于众所周知的原因,Github访问不稳定。官网虽然介绍,但是案例连接无效,因此保存于此,方便参考学习。

配置

官网样例(GitHub)

drain3.ini

[SNAPSHOT]
snapshot_interval_minutes = 10
compress_state = True

[MASKING]
masking = [
          {"regex_pattern":"((?<=[^A-Za-z0-9])|^)(([0-9a-f]{2,}:){3,}([0-9a-f]{2,}))((?=[^A-Za-z0-9])|$)", "mask_with": "ID"},
          {"regex_pattern":"((?<=[^A-Za-z0-9])|^)(\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3})((?=[^A-Za-z0-9])|$)", "mask_with": "IP"},
          {"regex_pattern":"((?<=[^A-Za-z0-9])|^)([0-9a-f]{6,} ?){3,}((?=[^A-Za-z0-9])|$)", "mask_with": "SEQ"},
          {"regex_pattern":"((?<=[^A-Za-z0-9])|^)([0-9A-F]{4} ?){4,}((?=[^A-Za-z0-9])|$)", "mask_with": "SEQ"},
          {"regex_pattern":"((?<=[^A-Za-z0-9])|^)(0x[a-f0-9A-F]+)((?=[^A-Za-z0-9])|$)", "mask_with": "HEX"},
          {"regex_pattern":"((?<=[^A-Za-z0-9])|^)([\\-\\+]?\\d+)((?=[^A-Za-z0-9])|$)", "mask_with": "NUM"},
          {"regex_pattern":"(?<=executed cmd )(\".+?\")", "mask_with": "CMD"}
          ]
mask_prefix = <:
mask_suffix = :>

[DRAIN]
# engine is Optional parameter. Engine will be "Drain" if the engine argument is not specified.
# engine has two options: 'Drain' and 'JaccardDrain'.
# engine = Drain
sim_th = 0.4
depth = 4
max_children = 100
max_clusters = 1024
extra_delimiters = ["_"]

[PROFILING]
enabled = True
report_sec = 30

案例(GitHub)

### 3.1 CKA学习笔记资源概述 CKA(Certified Kubernetes Administrator)认证是云原生领域中极具权威性的技术认证,主要考察考生在Kubernetes集群的部署、管理、配置、故障排查等方面的能力。备考过程中,学习笔记是整理知识结构、巩固操作技能的重要工具。以下内容基于CKA考试大纲和实际备考经验,提供系统的学习笔记资源建议。 ### 3.2 学习笔记内容结构 CKA学习笔记应围绕考试核心模块展开,涵盖以下主题: #### 3.2.1 集群架构、安装与配置(25%) 学习笔记应详细记录使用`kubeadm`工具部署Kubernetes集群的全过程,包括初始化主节点、添加工作节点、配置`kubeconfig`文件等关键步骤。例如,初始化集群的命令如下: ```bash kubeadm init --kubernetes-version 1.24 \ --pod-network-cidr=172.16.0.0/16 \ --apiserver-advertise-address=167.235.78.191 ``` 学习笔记中应包含节点维护操作,如标记节点为不可调度状态(`cordon`)、迁移Pod(`drain`)以及恢复节点(`uncordon`)等命令[^5]。 #### 3.2.2 工作负载与调度(15%) 在工作负载部分,应记录Deployment、StatefulSet、DaemonSet等资源类型的创建与更新方法。例如,定义一个简单的Deployment: ```yaml apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment spec: replicas: 3 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:1.14.2 ports: - containerPort: 80 ``` 学习笔记中还应包含如何通过标签调度Pod到特定节点、创建多容器Pod等内容[^3]。 #### 3.2.3 存储(10%) 学习笔记应涵盖持久化存储的配置方法,包括PersistentVolume(PV)和PersistentVolumeClaim(PVC)的定义与绑定过程。例如,定义一个NFS类型的PV: ```yaml apiVersion: v1 kind: PersistentVolume metadata: name: nfs-pv spec: capacity: storage: 1Gi accessModes: - ReadWriteMany nfs: server: 192.168.1.100 path: "/mnt/data" ``` #### 3.2.4 服务与网络(20%) 学习笔记中应详细记录Service(ClusterIP、NodePort、LoadBalancer)、Ingress控制器的配置方式,以及CNI插件(如Calico、Flannel)的基本使用。例如,创建一个NodePort类型的Service: ```yaml apiVersion: v1 kind: Service metadata: name: nginx-service spec: type: NodePort ports: - port: 80 targetPort: 80 nodePort: 30007 selector: app: nginx ``` #### 3.2.5 故障排查(30%) 学习笔记应包含常见故障排查命令,如查看Pod状态、日志输出、执行容器命令等。例如: ```bash kubectl get pods kubectl describe pod <pod-name> kubectl logs <pod-name> kubectl exec -it <pod-name> -- /bin/bash ``` 此外,还应记录ETCD备份与恢复、集群升级、节点扩容等高级操作流程。 ### 3.3 学习笔记获取方式 CKA学习笔记可通过以下方式获取或整理: - **官方培训课程笔记**:Linux Foundation提供的CKA培训课程包含结构化学习资料,适合系统整理笔记。 - **在线学习平台**:如Udemy、Coursera、Katacoda等平台提供配套笔记和实验手册。 - **社区资源**:GitHub上可找到多个CKA学习笔记项目,涵盖考试重点、命令速查、YAML模板等[^1]。 - **自建笔记系统**:通过搭建本地Kubernetes环境(如Minikube、kubeadm)进行实操,并记录每一步操作和结果。 ### 3.4 推荐学习资源 - **Kubernetes官方文档**:https://kubernetes.io/docs/ 是最权威的参考资料,建议在学习过程中反复查阅。 - **CKA考试大纲**:参考CKA_Curriculum文档,确保笔记覆盖所有考试模块[^4]。 - **模拟考试平台**:Killercoda、Practice CKA Exams等平台提供实战练习环境,有助于验证笔记内容的实用性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值