k8s可以实现容器集群的自动化部署、自动扩缩容、自动维护等功能
k8s官网:https://kubernetes.io
控制节点官网:https://packages.cloud.google.com
calico插件地址:https://github.com/projectcalico/calico
k8s集群核心架构
- master 管理节点
- node 计算节点
- image 镜像仓库
Master
功能:提供集群的控制,对集群进行全局决策,检测和响应集群事件
核心组件:APIServer、Scheduler、ControllerManager、etcd
Node
功能:运行容器的实际节点,提供运行环境,再多个节点上运行,水平扩展
核心组件:kubelet、kube-proxy、Runtime
控制节点介绍
- kubeadm:集群配置工具
- kubelet:管理Pod,在集群中的每个节点上启动
- kubectl:用来与集群通信的命令行工具
- containerd:容器管理软件
- ipvsadm:集群管理工具
- iproute-tc:网络流量管理工具
Kubeadm工具
- config:镜像管理命令
- init:集群初始化命令
- reset:还原、删除集群配置
- join:计算节点加入集群
- token:token凭证管理
- help
calico插件
可以让不同节点上的容器实现互联互通, 同时也可以设置访问策略,一种容器之间网络互通的解决方案。具有节约资源、容易管理、更少的依赖、适配性广的优点。
安装步骤
1、安装控制节点
- 配置软件仓库
- 系统环境配置
- 安装软件包
- 配置内核参数
- 上传k8s镜像到网络仓库(registry仓库 / harbor仓库)
- master安装
2、安装网络插件
- 上传calico镜像到网络仓库(registry仓库 / harbor仓库)
- 安装calico
3、安装计算节点
- 获取凭证
- node安装
- 验证节点和容器工作状态