Kubernetes学习笔记:搭建与关键组件详解
需积分: 10 167 浏览量
更新于2024-07-16
收藏 1.88MB DOCX 举报
本篇文档是关于Kubernetes实验的学习笔记,记录了作者在学习和实践Kubernetes过程中积累的经验和心得。Kubernetes(简称k8s)是一种开源的容器编排系统,用于自动化容器部署、扩展和管理。文章主要关注以下几个核心概念和组件:
1. **Master与Node**:
- Master节点是k8s的核心组成部分,主要包括API server(API服务器,处理所有客户端请求并维护集群状态)、Scheduler(调度器,根据策略决定Pod在哪些节点上运行)和Controller Manager(控制器管理器,管理各种控制器如ReplicationController、Deployment等)。
- Node节点则是实际运行Pod的地方,包含kubelet(管理Pod生命周期、与Master通信)和kube-proxy(负责节点内部的网络代理)。
2. **Pod、Label和LabelSelector**:
- Pod是k8s中最基本的可执行单元,可以包含多个容器。每个Pod都有一个或多个Label,它们以key=value的形式表示,用于标记Pod以便进行筛选和组织。
- LabelSelector用于匹配具有特定标签的Pod,这是资源配额、服务发现和副本集等操作的基础。
3. **控制器与工作负载**:
- ReplicationController和ReplicaSet是早期版本中的控制器,用于确保某个Pod副本的数量恒定。新版本推荐使用Deployment,它更强大,可实现滚动更新等功能。
- StatefulSet用于管理具有确定顺序和持久存储需求的Pod。
- Job和CronJob则用于执行一次性或定期的任务。
4. **附加组件(Add-Ons)**:
- Kubernetes提供了很多附加组件,如Harbor,这是一个私有容器镜像仓库,用于安全地存储和管理镜像。
5. **环境准备**:
- 文档指定了集群的物理架构,包括Master和Node的具体IP地址。强调了时间同步的重要性,因为时间问题可能导致各种错误。
- 需要关闭防火墙服务(firewall和iptables.service)以允许k8s的通信。
6. **安装与配置步骤**:
- 包括设置Etcd集群(存储k8s的状态信息),配置Flannel网络插件以实现集群内的网络互通,以及在Master和Node上安装和配置Kubernetes服务(如kube-apiserver、kube-scheduler、kube-controller-manager)和kubelet、kube-proxy等核心组件。
- 提供了具体的版本信息(docker 18.09和k8s 1.15.3),并指导读者设置yum源以获取对应版本的软件包。
通过本文档,读者可以了解到Kubernetes的基础搭建过程、关键组件的作用以及如何在实践中管理和调度容器化应用。对于想要深入学习和实践k8s的人来说,这是一份宝贵的参考资料。
2019-09-26 上传
2024-03-19 上传
2021-10-11 上传
2021-10-11 上传
2021-10-10 上传
运维日记
- 粉丝: 108
- 资源: 1
最新资源
- 数据库基础了解+习题有答案
- 系统的传递函数阵和状态空间表达式的转换
- FTL Intel
- 综合过程Design Compiler.doc
- JavaFX编程语言中文教程
- 悟透javaScript
- j2me帮助手册很好的东西
- linux gdb 调试手册
- Ansys 使用问答精华.pdf
- servlet2.4规范
- 操作系统考试试题含答案
- General Search
- 单片机毕业设计论文文献翻译
- 排列树问题 对于给定的n个圆,编程计算最小长度排列。
- 0-1 Knapsack 试设计一个用回溯法搜索子集空间树的函数。该函数的参数包括结点可行性判定函数和上界函数等必要的函数,并将此函数用于解0-1背包问题。
- 子集树问题 试设计一个用回溯法搜索子集空间树的函数。该函数的参数包括结点可行性判定函数和上界函数等必要的函数,并将此函数用于解装载问题。