天行健,君子以自强不息;地势坤,君子以厚德载物。
每个人都有惰性,但不断学习是好好生活的根本,共勉!
文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。
K8S部署Harbor三部曲:
K8S部署Harbor(三部曲之一:配置)本篇
K8S部署Harbor(三部曲之二:部署)
K8S部署Harbor(三部曲之三:使用)
参考官网文档:https://goharbor.io/docs/2.5.0/install-config/installation-prereqs/
以下为最低要求和建议要求参数表
资源 | 最低配置 | 建议配置 |
---|---|---|
CPU | 2 CPU | 4 CPU |
Mem | 4 GB | 8 GB |
Disk | 40 GB | 160 GB |
软件版本最低要求参数表
软件名称 | 软件版本最低配置 | 建议版本 | 描述 |
---|---|---|---|
Docker engine | 17.06.0 | 最新版本 | 可参考官网安装,用于操作容器 |
Docker Compose | 1.18.0 | 最新版本 | 可参考官网安装,用于操作harbor |
Openssl | 最新版本 | 最新版本 | 用于生成harbor仓库的证书certificate和秘钥key |
网络端口要求,可根据需要修改配置文件中的端口并开放服务器对应的端口
(本篇使用https,后面会修改配置文件中https和http对应的端口)
端口号 | 协议 | 描述 |
---|---|---|
443 | HTTPS | 用于访问harbor仓库和核心API的https的请求端口,也可以在配置文件中修改此端口 |
4443 | HTTPS | 用于连接到harbor仓库的Docker内容信任的服务,仅当启用Notary时需要,可在配置文件中修改此端口 |
80 | HTTP | 用于访问harbor仓库和核心API的http请求的端口,也可以在配置文件中修改此端口 |
离线安装包harbor-offline-installer-v2.10.0.tgz官网下载链接
如果电脑可访问外网github网址则可在服务器中使用wget命令直接下载到服务器
wget https://github.com/goharbor/harbor/releases/download/v2.10.0/harbor-offline-installer-v2.10.0.tgz
离线安装包harbor-offline-installer-v2.10.0.tgz国内下载链接
这个应该没有什么问题,大多数用k8s的施主应该都装了Docker
不过依然附上一个参考文章:K8S集群中安装Docker
主要用于管理harbor的多个docker实例
yum install -y docker-compose
若yum命令执行失败,执行以下方式安装
sudo curl -L "https://github.com/docker/compose/releases/download/v2.5.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
若以上两种方式都无法获取,可参考文章使用加速地址安装docker-compose:Linux系统安装docker-compose
安装后可使用docker-compose version查看版本来确保安装完成
将安装的docker-compose设置为可执行
sudo chmod +x /usr/local/bin/docker-compose
将docker-compose配置为全局可执行,即任何路径都可运行该命令
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
后面好像需要指定docker-compose.yml文件位置来全局使用,先不管,直接执行上面这个命令
主要用于生成https访问harbor的证书和秘钥,如只需要使用http访问harbor的施主可以不安装
yum install -y openssl
此部分用于设置https安全访问所需要的证书秘钥
harbor仓库基础访问方式有两种,一种http一种https
仅使用http访问harbor的施主可以跳过,本篇执行
创建文件夹用于存放生成的证书秘钥文件
mkdir -p /harbor/certs/
可在当前位置生成后再将文件移动到certs文件夹中,也可cd命令直接进入certs文件夹中生成
本篇在当前位置生成后再移动到certs文件夹
openssl genrsa -out ca.key 4096
注意:该文件的生成位置,后续就要在同样的路径下进行第3步的操作,在别的路径下执行会找不到ca.key文件
如我在/harbor/certs路径下执行第2步,就要在该路径下执行第3步
ls命令查看生成的ca.key
生成证书秘钥并绑定ip以及配置地区和有效期
ip填写你自己的harbor安装位置服务器的ip,如有ip对应的域名也可填域名,本篇未设域名仅用ip配置
openssl req -x509 -new -nodes -sha512 -days 3650 \
-subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=172.30.0.224" \
-key ca.key \
-out ca.crt
将证书秘钥移动到我们前面创建的certs文件夹中
mv ca* /harbor/certs