K8s集群环境搭建
文章目录
环境规划
1、集群类型
Kubernetes集群大体上分为两类:一主多从和多主多从
一主多从:一台master节点和多台node节点,搭建简单,但是有单机故障风险,适用于测试环境
多主多从:多台master节点和多台node节点,搭建麻烦,安全性高,适用于生产环境
2、安装方式
Kubernetes有多种部署方式,目前主流的方式有kubeadm、minikube、二进制包
- Minikube:一个用于快速搭建单节点kubernetes的工具
- Kubeadm:一个用于快速搭建kubernetes集群的工具,https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm/
- 二进制包:从官网下载每个组件的二进制包,依次去安装,此方式对于理解kubernetes组件更加有效,https://github.com/kubernetes/kubernetes
说明:现在需要安装kubernetes的集群环境,但是又不想过于麻烦,所有选择使用kubeadm方式
3、主机规划
角色 ip地址 组件
master:192.168.56.172 docker,kubectl,kubeadm,kubelet
node1: 192.168.56.178 docker,kubectl,kubeadm,kubelet
node2: 192.168.56.179 docker,kubectl,kubeadm,kubelet
二、环境搭建
本次环境搭建需要安装三台Linux系统(一主二从),内置centos7.5系统,然后在每台linux中分别安装docker。kubeadm(1.25),kubelet(1.25.4),kubelet(1.25.4).
1、主机安装
安装虚拟机过程中注意下面选项的设置:
1、操作系统环境:cpu2个 内存2G 硬盘50G centos7+
2、语言:中文简体/英文
3、软件选择:基础设施服务器
4、分区选择:自动分区/手动分区
5、网络配置:按照下面配置网络地址信息
网络地址:192.168.56.(172、178、179)
子网掩码:255.255.255.0
默认网关:192.168.56.2
DNS:8.8.8.8
6、主机名设置:
Master节点:master
Node节点:node1
Node节点:node2
2、环境初始化
1、查看操作系统的版本
# 此方式下安装kubernetes集群要求Centos版本要在7.5或之上
cat /etc/redhat-release
Red Hat Enterprise Linux release 8.2 (Ootpa)
2、禁用firewalld、selinux、postfix**(三个节点都做)**
关闭防火墙、selinux,postfix----3台主机都配置
[root@master ~]# systemctl stop firewalld
[root@master ~]# systemctl disable firewalld
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@master ~]# vim /etc/selinux/config
SELINUX=disabled
[root@master ~]# setenforce 0
[root@master ~]# systemctl stop postfix
Failed to stop postfix.service: Unit postfix.service not loaded.
3、主机名解析 (三个节点都做)
为了方便集群节点间的直接调用,在这个配置一下主机名解析,企业中推荐使用内部DNS服务器
[root@master ~]# vim /etc/hosts
192.168.56.172 master.example.com master
192.168.56.178 node1.example.com node1
192.168.56.179 node2.example.com node2
[root@master ~]# scp /etc/hosts root@192.168.56.178:/etc/hosts
The authenticity of host '192.168.56.178 (192.168.56.178)' can't be established.
ECDSA key fingerprint is SHA256:eQmQvNKvqyunaSCRVsY9fMK2hNemyw9vET5TfKGsYRo.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.56.178' (ECDSA) to the list of known hosts.
root@192.168.56.178's password:
hosts 100% 294 75.7KB/s 00:00
[root@master ~]# scp /etc/hosts root@192.168.56.179:/etc/hosts
The authenticity of host '192.168.56.179 (192.168.56.179)' can't be established.
ECDSA key fingerprint is SHA256:GN3clt4iK6mZ/V5GjZapZjrDbtWVX6v/h0OQdgomwr4.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.56.179' (ECDSA) to the list of known hosts.
root@192