1.虚拟机规划
设备说明 | 主机名 | 接口 | IP地址 |
虚拟机1 | Master | Eth0 | 10.0.0.10/24 |
虚拟机2 | Node1 | Eth0 | 10.0.0.20/24 |
虚拟机3 | Harbor | Eth0 | 10.0.0.30/24 |
2.容器云平台初始化(harbor的安装部署)
1.根据规划的IP地址,创建虚拟机,确保网络正常通信。按照规划表修改主机名并关闭swap,永久关闭selinux和防火墙,修改hosts映射
1.1修改虚拟机网段
1.2创建3台虚拟机
1.3配置IP地址
Master:
Node1:
Harbor:
1.4修改主机名,关闭swap
hostnamectl set-hostname 主机名
sed -ri 's/.*swap.*/#&/' /etc/fstab
重启虚拟机,再连接
1.5永久关闭selinux和防火墙
1.5.1 停止防火墙
systemctl stop firewalld.service
1.5.2 禁止防火墙开机启动
systemctl disable firewalld.service
1.5.3 关闭selinux
sed -i "s/^SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
1.6修改hosts映射
vi /etc/hosts
添加如下内容:
10.0.0.10 master
10.0.0.20 node1
10.0.0.30 harbor
2.部署时间同步服务器,指定阿里云为上游NTP服务器
2.1 下载ntp服务
yum -y install ntp
2.2 修改ntp.conf配置文件
vi /etc/ntp.conf
修改内容如下:
删除原有的server 0/1/2/3/4,并添加如下内容
server ntp1.aliyun.com prefer
server ntp2.aliyun.com
2.3 调整至上海时区
timedatectl set-timezone Asia/Shanghai
2.4 同步阿里的时间源
ntpdate ntp1.aliyun.com
2.5 启动ntp服务,并配置自启
systemctl restart ntpd
systemctl enable ntpd
2.6 其他节点下载时间同步客户端
yum -y install ntpdate
2.7 其他节点同步控制节点时间
ntpdate master
指定master为时间同步服务器,其余两台同步master节点时间
3.设置免密登录,保证三台虚拟机能互相免密登录
ssh-keygen
ssh-copy-id master
ssh-copy-id node1
ssh-copy-id harbor
4.在所有节点上安装 dokcer-ce。并在 harbor 节点安装 harbor 仓库,显现正常登录 horbor 仓库
4.1 docker的安装(每个节点都要装)
yum install -y yum-utils
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce docker-ce-cli containerd.io
systemctl start docker
systemctl enable docker
4.2运行hello0-world镜像来检验docker是否安装完成
docker run hello-world
4.3安装 harbor 仓库
4.3.1下载,解压haror
yum install wget -y
wget https://ghproxy.com/https://github.com/goharbor/harbor/releases/download/v2.6.1/harbor-offline-installer-v2.6.1.tgz
tar -zxvf harbor-offline-installer-v2.6.1.tgz -C /usr/local/
4.3.2配置harbor
cd /usr/local/harbor/
cp harbor.yml.tmpl harbor.yml
vi harbor.yml
修改以下内容:
hostname = 10.0.0.30
port: 8081
注释掉以下内容:
# https related config
# https:
# # https port for harbor, default is 443
# port: 443
# # The path of cert and key files for nginx
# certificate: /your/certificate/path
# private_key: /your/private/key/path
4.3.3启动harbor(启动前需要安装docker compose)
./install.sh
4.4登录 horbor 仓库
根据在harbor.yml文件中配置的端口与IP地址(或域名)进行访问
5.修改默认 docker 仓库为 horbor 地址,修改 docker 启动引擎为 systemd
5.1修改默认 docker 仓库为 horbor 地址
修改daemon.json文件(所有节点都要执行)
vi /etc/docker/daemon.json
添加如下内容:
{
"registry-mirrors": ["https://cyowm7vy.mirror.aliyuncs.com"]
}
{"insecure-registries":["10.0.0.30:80"]}
重新加载配置并重启docker服务
systemctl daemon-reload
systemctl restart docker
5.2修改 docker 启动引擎为 systemd
vi /etc/docker/daemon.json
添加如下内容:
{
"exec-opts": ["native.cgroupdriver=systemd"]
}
重启docker服务
systemctl daemon-reload
systemctl restart docker
6.安装docker-compose
6.1下载docker-compose
yum install docker-compose -y
6.2测试是否安装成功
docker-compose version
7.在 master 及 node 节点安装 Kubeadm 工具并设置开机自动启动
7.1配置kubernetes阿里源(所有节点)
vi /etc/yum.repos.d/kubernetes.repo
内容如下:
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
7.2安装 kubeadm, kubelet 和 kubectl(所有节点)
yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
7.3设置开机自启(所有节点)
systemctl enable --now kubelet