安装部署 K8S+gitlab+harbor+Jenkins
一、 安装 K8S
1. 安装 docker 及 K8s
1) 设置 hostname
服务器分别执行命令:
hostnamectl set-hostname master
hostnamectl set-hostname node1
hostnamectl set-hostname node2
2) 修改 hosts
3 台服务器修改/etc/hosts 文件,增加如下
192.168.63.171 master
192.168.63.172 node1
192.168.63.173 node2
3) 执行脚本安装 docker 及 K8S
将 auto_install_docker_k8s.sh 脚本上传至/home 目录,给脚本可执行权限
执行命令:chmod a+x auto_install_docker_k8s.sh
执行脚本:./auto_install_docker_k8s.sh
2. 初始化及设置
1) 初始化 master
Master 执行如下命令:
kubeadm init --image-repository registry.aliyuncs.com/google_containers --kubernetes-
version v1.18.2 --apiserver-advertise-address 192.168.63.171 --pod-network-
cidr=10.244.0.0/16 --token-ttl 0
得到 join 的命令
kubeadm join 192.168.63.171:6443 --token o3vo0t.mh6u7ebevav3medb \
--discovery-token-ca-cert-hash
sha256:719b8a7f59a94522ada73c3142fa5fa138aa8a7bf9f7ea954f4e5d226770d593
2) Node 节点执行 join 语句
Node 节点执行上面步骤获得的 join 命令行
执行命令:
kubeadm join 192.168.63.171:6443 --token o3vo0t.mh6u7ebevav3medb \
--discovery-token-ca-cert-hash
sha256:719b8a7f59a94522ada73c3142fa5fa138aa8a7bf9f7ea954f4e5d226770d593
3) 设置 admin.conf
a) Root 用户
Master 节点中将下面语句添加到/etc/profile
执行命令:vim /etc/profile
export KUBECONFIG=/etc/kubernetes/admin.conf
执行命令:source /etc/profile
同样 node1 及 node2 节点同样处理
b) 如果是普通的用户权限
mkdir -p $HOME/.kube
sudo sp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
4) 安装 flannel 网络
Master 节点执行命令:
kubectl apply -f
https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
查看安装结果
执行命令:kubectl get pods -n kube-system
二、 harbor 安装
此次安装在 node2 中 192.168.63.173
1. 文件下载
https://github.com/goharbor/harbor/releases 到 github 官网下载 offline 离线包,上传到
node2
将下载文件放置在/home/harbor 目录,下载版本为:harbor-offline-installer-v1.9.2-rc1.tgz
2. 环境安装
安装 docker-compose、docker
1) Docker-compose 安装
下载
执行命令:
curl -L https://get.daocloud.io/docker/compose/releases/download/1.22.0/docker-
compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
文件夹赋权
执行命令
chmod +x /usr/local/bin/docker-compose
2) Docker 安装
“安装 K8S”步骤已安装
3. 系统基础配置
1) 关闭 selinux
“安装 K8S”步骤已设置
2) 设置 ipv4_forward=1
[root@k8s ~]# vi /etc/sysctl.conf
net.ipv4.ip_forward = 1
[root@k8s ~]# sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1
[root@k8s ~]# systemctl restart network
3) 关闭防火墙
执行命令:systemctl disable firewalld && systemctl stop firewalld
4. 安装 harbor
1) 解压离线包
tar xvf harbor-offline-installer-v1.9.2-rc1.tgz
[root@harbor home]# tar xvf harbor-offline-installer-v1.9.2-rc1.tgz
harbor/harbor.v1.9.2.tar.gz
harbor/prepare
harbor/LICENSE
harbor/install.sh
harbor/harbor.yml
2) 修改配置 harbor.yml 及 daemon.json
修改 harbor.yml
hostname: 192.168.60.173
harbor_admin_password: TWrjb12345
修改 daemon.json 文件
[root@harbor harbor]# vim /etc/docker/daemon.json
{
"registry-mirrors": ["http://f1361db2.m.daocloud.io"],
"insecure-registries":["192.168.63.173:800"]
}
3) 运行 install.sh
[root@harbor harbor]# ./install.sh
4) 服务运行与停止
服务停止
docker-compose stop
服务启动
docker-compose up -d
5) 设置服务自启动
cat >> /usr/lib/systemd/system/harbor.service <<EOF
[Unit]
Description=Harbor