Kubernetes(一)基于Kubeadm集群部署

部署方式:
Kubernetes 集群的部署方式有多种,使用批量部署工具如(ansible/saltstack)等自动化大部分部署任务或者直接手动部署二进制预编译的软件包。还有一种方式是使用kubeadm 结合 apt-get/yum 安装必要软件安装,以守护进程的方式启动在宿主机上,本次就使用 kubeadm 来部署 Kubernetes 集群。

基本环境
OS采用Ubuntu18.04

Docker 19.03.8
Kubernetes: 1.17.3
*
kubeadm: v1.17.2

IP地址: 主机名
192.168.39.5 master1
192.168.39.15 master2
192.168.39.203 master3
192.168.39.201 node1
192.168.39.202 node2
192.168.39.203 node3

K8s官方参考文档
使用 k8s 官方提供的部署工具 kubeadm 自动安装,需要在 master 和 node 节点上
安装 docker 等组件,然后初始化,把管理端的控制服务和 node 上的服务都以 pod
的方式运行
在这里插入图片描述
一、
1、 设置主机名解析:

vim /etc/hosts
192.168.39.15 master1 master1.com
192.168.39.5 master2 master2.com
192.168.39.206 master3 master3.com
192.168.39.201 node1 node1.com
192.168.39.202 node2 node2.com
192.168.39.203 node3 node3.com

2、时间同步:
在集群的 Master 和各 node 同步时间,也可写入计划任务

~# ntpdate ntp.aliyun.com

或者

~# crontab -e
...
*/12 * * * * root /bin/bash ntpdate ntp.aliyun.com

3、关闭系统的防火墙并且金庸swap设备

~# swappoff -a

二、部署Kubernetes集群

2.1、可参考Kubeadm部署参考----步骤过程如下。
  1. 部署 HAProxy 和 Keepalived 作为 Kubernetes 管理端的访问入口,及实现访问入口高可用。
  2. 在 Master 及各 Node 安装 Docker、kubelet、kubectl 和 kubeadm,以守护进程方式启动 Docker 及 kubelet。
  3. 在其中一台 Master 上使用kubeadm init进程集群初始化。
  4. 在其他的 Master 上使用kubeadm join命令加入集群。
  5. 在各 Node 上使用kubeadm join命令加入初始化完成的集群。
  6. 在集群上部署网络组件,如 flannel 或者 calico 等来提供 service 网络和 pod 网络。
2.2 在各 master 节点安装 kubeadm、kubelet、kubectl、Docker

安装docker参考

2.2.1 在阿里云配置 K8s 镜像源
~# apt update && apt-get install -y apt-transport-https
~# curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -
~# cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF
~# apt update
2.2.2所有服务器点安装 kubelet kubeadm kubectl:
# apt-get update
#安装指定版本 kubeadm
查看版本信息
# apt-cache madison kubeadm 
安装 kubeadm kubectl kubelet
# apt install kubeadm=1.17.3-00 kubectl=1.17.3-00 kubelet=1.17.3-00
启动并验证 kubelet
# systemctl start kubelet && systemctl enable kubelet && systemctl status kubelet

在这里插入图片描述

2.3 master 节点运行 kubeadm init 初始化命令:

在三台 master 中任意一台 master 进行集群初始化,而且集群初始化只需要初始化一次。
kubeadm 命令使用:
kubeadm init 命令简介:
命令使用:https://kubernetes.io/zh/docs/reference/setup-tools/kubeadm/kubeadm/

Available Commands:
alpha #kubeadm 处于测试阶段的命令
completion #bash 命令补全,需要安装 bash-completion
	#mkdir /data/scripts -p
	#kubeadm completion bash > /data/scripts/kubeadm_comple
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值