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台虚拟机

如何在容器平台创建数据库 容器云平台搭建_如何在容器平台创建数据库_02

1.3配置IP地址

Master:

如何在容器平台创建数据库 容器云平台搭建_如何在容器平台创建数据库_03


Node1:

如何在容器平台创建数据库 容器云平台搭建_运维_04


Harbor:

如何在容器平台创建数据库 容器云平台搭建_网络_05

1.4修改主机名,关闭swap
hostnamectl set-hostname 主机名
sed -ri 's/.*swap.*/#&/' /etc/fstab

如何在容器平台创建数据库 容器云平台搭建_容器_06


如何在容器平台创建数据库 容器云平台搭建_docker_07


如何在容器平台创建数据库 容器云平台搭建_如何在容器平台创建数据库_08


重启虚拟机,再连接

如何在容器平台创建数据库 容器云平台搭建_docker_09

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

如何在容器平台创建数据库 容器云平台搭建_docker_10

1.6修改hosts映射
vi /etc/hosts

添加如下内容:

10.0.0.10 master
10.0.0.20 node1
10.0.0.30 harbor

如何在容器平台创建数据库 容器云平台搭建_如何在容器平台创建数据库_11

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节点时间

如何在容器平台创建数据库 容器云平台搭建_容器_12

3.设置免密登录,保证三台虚拟机能互相免密登录

ssh-keygen
ssh-copy-id master
ssh-copy-id node1
ssh-copy-id harbor

如何在容器平台创建数据库 容器云平台搭建_容器_13


如何在容器平台创建数据库 容器云平台搭建_网络_14

如何在容器平台创建数据库 容器云平台搭建_网络_15

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

如何在容器平台创建数据库 容器云平台搭建_网络_16


如何在容器平台创建数据库 容器云平台搭建_容器_17

如何在容器平台创建数据库 容器云平台搭建_网络_18

4.2运行hello0-world镜像来检验docker是否安装完成
docker run hello-world

如何在容器平台创建数据库 容器云平台搭建_网络_19


如何在容器平台创建数据库 容器云平台搭建_容器_20


如何在容器平台创建数据库 容器云平台搭建_网络_21

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

如何在容器平台创建数据库 容器云平台搭建_运维_22

4.4登录 horbor 仓库

根据在harbor.yml文件中配置的端口与IP地址(或域名)进行访问

如何在容器平台创建数据库 容器云平台搭建_如何在容器平台创建数据库_23

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

如何在容器平台创建数据库 容器云平台搭建_如何在容器平台创建数据库_24

6.安装docker-compose

6.1下载docker-compose
yum install docker-compose -y
6.2测试是否安装成功
docker-compose version

如何在容器平台创建数据库 容器云平台搭建_docker_25

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

如何在容器平台创建数据库 容器云平台搭建_如何在容器平台创建数据库_26