軟硬件環境清單
環境搭建
部署Euler22.0系統,連接xshell:
關閉防火墻和selinux,設置主機名:
systemctl stop firewalld
systemctl disable firewalld
vi /etc/selinux/config
hostnamectl set-hostname harbor
reboot
修改靜態IP:
查看IP:
ip a
vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=ens33
UUID=f57e17a1-16b0-4bbe-aac3-87b544a801fb
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.12.136
PREFIX=24
GATEWAY=192.168.12.2
DNS1=223.5.5.5
重啟網絡服務:
systemctl restart network
【注意:
若重啟失敗
請按照以下步驟進行:
安裝?network-scripts:
dnf install network-scripts -y # openEuler 基于 RHEL 8+/CentOS 8+,默認可能不安裝
systemctl enable --now network # 啟用并啟動服務
systemctl restart network # 再次嘗試重啟
】
安裝并升級所需軟件:
yum install vim tree tar net-tools -y
yum update -y
【注意:
若更新不成功,請進行以下操作
再次檢查靜態IP是否正確:
vi /etc/sysconfig/network-scripts/ifcfg-ens33
查看當前路由表:
ip route show
缺少靜態路由:
ip route add default via 192.168.12.2 dev ens33
最后測試:
yum update -y
】
拍攝快照!!!
【注意:
拍攝完快照后,如果IP地址消失,請進行以下操作:
方案一:
sudo dhclient ens33
方案二:
在靜態IP文檔里面直接寫入命令,要求每次打開時網卡自動開啟
ONBOOT=yes
方案三:
手動啟動網卡:
ip link set ens33 up # 啟用網卡
最后記得重啟網絡服務:
# 如果使用傳統 network 服務
systemctl restart network
】
安裝docker
【華為的OpenEurer沒有docker源需要從官方下載】
添加docker-ce 源信息:
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
修改docker-ce源:
sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo # 更換為阿里開源鏡像站源
sed -i 's/$releasever/7/g' /etc/yum.repos.d/docker-ce.repo
# 由于阿里開源中沒有Euler系統版本,但其源自Centos則改為7即可
更新源:
yum makecache
安裝docker-ce:默認安裝docker-ce是最新版本
yum install docker-ce -y
啟動服務,查看信息:
systemctl enable --now docker
查看狀態:
systemctl status docker
查看版本詳細信息:
docker version
配置鏡像加速器:
登錄華為云:共建智能世界云底座-華為云
華為云--->控制臺--->登錄[注冊]--->登錄容器鏡像服務控制臺--->在左側導航欄選擇“鏡像資源 > 鏡像中心”--->鏡像加速器
vim /etc/docker/daemon.json
{"registry-mirrors": [ "https://8cdf32a387b744b2940801aa00322980.mirror.swr.myhuaweicloud.com" ,"https://docker.1ms.run","https://docker.1panel.live/"]
}
~
systemctl daemon-reload
systemctl restart docker
docker info
部署Harbor服務
下載Harbor
wget https://github.com/goharbor/harbor/releases/download/v2.12.2/harbor-offline-installer-v2.12.2.tgz
tar -xvf harbor-offline-installer-v2.12.2.tgz
配置HarBor:
cd harbor
安裝編排工具
yum install docker-compose -y
修改配置文件:
將示例文件修改為正常文件:
mv harbor.yml.tmpl harbor.yml
vim harbor.yml
# Configuration file of Harbor# The IP address or hostname to access admin UI and registry service.
# DO NOT use localhost or 127.0.0.1, because Harbor needs to be accessed by external clients.
hostname: 192.168.88.100 # 修改本機IP,若改為主機名需要做映射# http related config
http:# port for http, default is 80. If https enabled, this port will redirect to https portport: 1021 # 改為其它端口,防止80端口占用# https related config # https的內容全部注釋掉
# 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# enable strong ssl ciphers (default: false)# strong_ssl_ciphers: false
……………………………………
# The initial password of Harbor admin
# It only works in first time to install harbor
# Remember Change the admin password from UI after launching Harbor.
harbor_admin_password: 123 # 登錄密碼
安裝Harbor
安裝并啟動:
./install.sh
查看進程:
docker ps
測試
-
windows瀏覽器中輸入服務端IP:192.168.12.136:1021 來訪問管理頁面
-
用戶面:admin
-
密碼:123
-
-
如下圖:
實戰
將k8s集群所需的鏡像上傳到Harbor倉庫中:
鏡像處理
導入k8s:
cd /
mkdir /imagescd /images
導入命令:
docker load -i cni.tar
docker load -i coredns.tar
docker load -i etcd.tar
docker load -i kube-apiserver.tar
docker load -i kube-controller-manager.tar
docker load -i kube-controllers.tar
docker load -i kube-proxy.tar
docker load -i kube-scheduler.tar
docker load -i kuboard.tar
docker load -i node.tar
docker load -i pause.tar
查看導入的:
docker images
鏡像重新打標簽:
docker tag eipwork/kuboard:v3 192.168.12.136:1021/k8s/kuboard:v3
docker tag registry.aliyuncs.com/google_containers/kube-apiserver:v1.28.0 192.168.12.136:1021/k8s/kube-apiserver:v1.28.0
docker tag registry.aliyuncs.com/google_containers/kube-controller-manager:v1.28.0 192.168.12.136:1021/k8s/kube-controller-manager:v1.28.0
docker tag registry.aliyuncs.com/google_containers/kube-scheduler:v1.28.0 192.168.12.136:1021/k8s/kube-scheduler:v1.28.0
docker tag registry.aliyuncs.com/google_containers/kube-proxy:v1.28.0 192.168.12.136:1021/k8s/kube-proxy:v1.28.0
docker tag registry.aliyuncs.com/google_containers/etcd:3.5.9-0 192.168.12.136:1021/k8s/etcd:3.5.9-0
docker tag registry.aliyuncs.com/google_containers/coredns:v1.10.1 192.168.12.136:1021/k8s/coredns:v1.10.1
docker tag calico/kube-controllers:v3.25.0 192.168.12.136:1021/k8s/calico/kube-controllers:v3.25.0
docker tag calico/cni:v3.25.0 192.168.12.136:1021/k8s/calico/cni:v3.25.0
docker tag calico/node:v3.25.0 192.168.12.136:1021/k8s/calico/node:v3.25.0
docker tag registry.aliyuncs.com/google_containers/pause:3.9 192.168.12.136:1021/k8s/pause:3.9
docker images
設置私有鏡像庫
vim /etc/docker/daemon.json
"insecure-registries": ["http://192.168.12.136:1021"]
重啟docker服務:
systemctl restart docker
【注意:這里出現了問題沒有成功啟動,查看原因:
systemctl stop docker
少了逗號:
vim /etc/docker/daemon.json
{"registry-mirrors": [ "https://8cdf32a387b744b2940801aa00322980.mirror.swr.myhuaweicloud.com" ,"https://docker.1ms.run","https://docker.1panel.live/"] ,"insecure-registries": ["http://192.168.12.136:1021"]}
~
修改后,順利啟動docker:
】
管理服務
重啟HarBor:
cd /harbor
docker compose restart
登錄Harbor:
docker login 192.168.12.136:1021
推送鏡像到Harbor:
docker push 192.168.12.136:1021/k8s/kuboard:v3
docker push 192.168.12.136:1021/k8s/kube-apiserver:v1.28.0
docker push 192.168.12.136:1021/k8s/kube-controller-manager:v1.28.0
docker push 192.168.12.136:1021/k8s/kube-scheduler:v1.28.0
docker push 192.168.12.136:1021/k8s/kube-proxy:v1.28.0
docker push 192.168.12.136:1021/k8s/etcd:3.5.9-0
docker push 192.168.12.136:1021/k8s/coredns:v1.10.1
docker push 192.168.12.136:1021/k8s/calico/kube-controllers:v3.25.0
docker push 192.168.12.136:1021/k8s/calico/cni:v3.25.0
docker push 192.168.12.136:1021/k8s/calico/node:v3.25.0
docker push 192.168.12.136:1021/k8s/pause:3.9
查看推好的k8s:
機器重啟后需要執行下列操作,harbor才會就緒:
cd /harbor
重啟docker:
systemc restart docker
重啟HarBor:
docker compose restart
記得拍攝快照!!!