k8s操作手册 2.3
4.33 MB
126 页
0 评论
语言 | 格式 | 评分 |
---|---|---|
中文(简体) | .docx | 3 |
摘要 | ||
文档详细阐述了Kubernetes(k8s)的网络原理和高可用集群搭建过程。k8s集群中存在三种网络IP:Node IP、Pod IP和Cluster IP。Pod网络使用Flannel构建overlay网络,Service网络通过kube-proxy维护Cluster IP。文档还介绍了Service的类型,包括ClusterIp、NodePort、LoadBalancer和ExternalName,并详细说明了高可用集群的搭建步骤,涉及HAProxy反向代理和VIP配置。此外,文档还涵盖了Helm包管理工具的安装及k8s版本<=1.23的部署流程。 | ||
AI总结 | ||
以下是文档内容的中文总结:
---
### 《K8S操作手册 2.3》核心要点总结
####.endpoint health
- 文档开头提到Kubernetes高可用集群搭建完成,并进入第5章关于Kubernetes网络原理的内容。
---
### 第5章 K8S的网络原理
1. **Kubernetes集群中的三种网络IP**:
- **Node-IP**:K8S服务器的通信IP,用于节点之间的通信和管理。
- **Pod-IP**:Pod容器组的IP,用于容器间通信,但Pod漂移或重启后IP会变化。
- **Cluster-IP**:Service网络,用于集群内服务间通信,IP固定的,由kube-proxy维护。
2. **Service类型**:
- **ClusterIP**:仅用于集群内通信,默认使用iptables或IPVS规则。
- **NodePort**:通过节点IP上的静态端口映射到集群IP,默认端口范围30000-32768。
- **LoadBalancer**:结合云服务商的负载均衡器,将请求转发到Pod。
- **ExternalName**:映射到集群外部资源,需Kubernetes 1.7及以上版本。
3. **K8S服务器上的网络接口信息**:
- 通过`ip addr`命令查看网络接口信息,包括本地环回口(lo)和物理网卡(如ens33)。
- 容器网络接口:veth-pair虚拟网络接口,用于连接Pod和宿主机网络。
4. **网络路由与Flannel**:
- Pod网络通过Flannel实现overlay网络,底层使用VXLAN封装。
- 每个节点分配不同的Pod子网段,通过路由表实现跨节点通信。
---
### 第4章 K8S高可用集群搭建
1. **高可用拓扑**:
- 部署至少3台Master节点,使用VIP(虚拟IP)实现API Server的高可用。
- 使用HAProxy或Keepalived作为反向代理,负载分发到Master节点的6443端口。
2. **HAProxy配置示例**:
```haproxy
frontend k8s_api_tcp_6443
bind *:6443
mode tcp
default_backend my_k8s_cluster_6443
backend my_k8s_cluster_6443
mode tcp
balance roundrobin
server s1 10.99.1.51:6443 check weight 1
server s2 10.99.1.52:6443 check weight 1
server s3 10.99.1.53:6443 check weight 1
```
---
### 第14章 Helm包管理
1. **Helm功能**:
- Kubernetes的应用程序包管理器,通过Charts组织和管理Kubernetes资源配置文件。
2. **安装Helm**:
- **Helm v3**:直接使用helm命令,无需Tiller组件。
- **Helm v2**:需要Tiller,需创建ServiceAccount并授予cluster-admin权限。
---
### 第1章 部署K8S版本<=1.23
1. **Kubernetes 1.23及之前版本**:
- 默认使用Docker作为容器运行时,通过docker-shim调用dockerd。
- Docker版本要求:<= 20.10。
2. **Docker配置**:
- 修改`/etc/docker/daemon.json`,配置镜像仓库地址、insecure-registries等。
- 确保Docker使用systemd作为cgroup驱动。
---
### 配置与管理
1. **命名空间**:
- 通过`namespace-testxx.yaml`创建命名空间,定义元数据和标签。
2. **镜像获取策略**:
- `imagePullPolicy`支持三种模式:`IfNotPresent`(默认)、`Never`、`Always`。
3. **Kubernetes资源类型**:
- 通过`kubectl api-resources`列出所有资源类型及其缩写。
---
### 网络机制
1. **Pod网络模型**:
- 同一节点上的Pod通过CNI网桥(cni0)通信。
-跨节点Pod通信通过Flannel的overlay网络实现。
2. **veth-pair虚拟网络接口**:
- 一端连接Pod的网络栈,另一端连接宿主机的网络栈。
---
### 权限与调度
1. **Toleration**:
- 定义Pod对节点问题的容忍程度,避免因节点问题被驱逐。
2. **PriorityClass**:
- 用于定义Pod的优先级,确保重要Pod优先调度。
---
以上是文档的核心内容和关键信息的简要总结,涵盖了Kubernetes网络原理、高可用集群搭建、Helm包管理、版本部署及配置等内容。 |
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
119 页请下载阅读 -
文档评分