kubeadm部署
kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具。
这个工具能通过两条指令完成一个kubernetes集群的部署:
# 创建一个 Master 节点
$ kubeadm init
# 将一个 Node 节点加入到当前集群中
$ kubeadm join <Master节点的IP和端口 >1 安装要求
在开始之前,部署Kubernetes集群机器需要满足以下几个条件:
一台或多台机器,操作系统 CentOS7.x-86_x64
硬件配置:2GB或更多RAM,2个CPU或更多CPU,硬盘30GB或更多
集群中所有机器之间网络互通
可以访问外网,需要拉取镜像
禁止swap分区
2 准备环境

角色
IP
k8s-master
192.168.166.84
k8s-node1
192.168.166.227
k8s-node2
192.168.31.63
3 所有节点安装Docker/kubeadm/kubelet/kubectl
3.1 安装Docker
Kubernetes默认CRI(容器运行时)为Docker,因此先安装Docker。
由于更新频繁,安装时可以指定docker版本
yum -y install docker-ce-18.06.1.ce-3.el7
3.2 配置docker加速器
3.3 添加阿里云YUM软件源
3.4 安装kubeadm,kubelet和kubectl
由于版本更新频繁,这里指定版本号部署:
yum install -y kubelet-1.17.0 kubeadm-1.17.0 kubectl-1.17.0
3.5 配置kubectl、kubeadm命令的参数补全设置
4 部署Kubernetes Master
可以指定kubernetes的版本
由于默认拉取镜像地址k8s.gcr.io国内无法访问,这里指定阿里云镜像仓库地址。
通过
--kubernetes-version v1.17.0参数,可以指定kubernetes的版本
执行成功后,按提示将相关配置文件复制到用户的home目录下
要记住最后kubeadm join那句话,node节点加入集群时需要。
5 安装Pod网络插件(CNI)
由于服务器连接不到raw.githubusercontent.com这个网址,所有我先在本地下载好,然后再传到服务器上去
6 加入Kubernetes Node
向集群添加新节点,执行在kubeadm init输出的kubeadm join命令:
这句话为master初始化成功后的最后一句话
7 测试kubernetes集群
在master节点执行
在Kubernetes集群中创建一个pod,验证是否正常运行:
访问地址:http://NodeIP:Port
8 部署 Dashboard
由于服务器连接不到raw.githubusercontent.com这个网址,所有我先在本地下载好,然后再传到服务器上去
默认Dashboard只能集群内部访问,修改Service为NodePort类型,暴露到外部:
将上面改为:
访问地址:http://NodeIP:32443
创建service account并绑定默认cluster-admin管理员集群角色:
使用输出的token登录Dashboard。
Last updated
Was this helpful?