Harbor 高可用部署
高可用方案和单节点 harbor 的主要区别在 harbor.yml
的配置,如图所示我们需要将配置文件中的数据库和redis配置为外部数据库,并且将多个 harbor 节点挂载同一份 nfs 文件目录。
harbor.yml
配置修改点如下说明:
- 数据存储位置,改为nfs挂载目录,因为我们本来就挂载到了/data目录下,所以不用动
- 注释掉database
- 注释掉clair
- 打开
external_database
和external_redis
块的注释,并改为实际外部服务的地址
修改完的样例文件,如下:
hostname: 192.168.166.81
http:
port: 80
harbor_admin_password: Harbor12345
data_volume: /data
jobservice:
max_job_workers: 10
notification:
webhook_job_max_retry: 10
chart:
absolute_url: disabled
log:
level: info
local:
rotate_count: 50
rotate_size: 200M
location: /var/log/harbor
_version: 1.10.0
external_database:
harbor:
host: 192.168.166.203
port: 5432
db_name: registry
username: postgres
password: postgres
ssl_mode: disable
max_idle_conns: 2
max_open_conns: 0
clair:
host: 192.168.166.203
port: 5432
db_name: clair
username: postgres
password: postgres
ssl_mode: disable
notary_signer:
host: 192.168.166.203
port: 5432
db_name: notarysigner
username: postgres
password: postgres
ssl_mode: disable
notary_server:
host: 192.168.166.203
port: 5432
db_name: notaryserver
username: postgres
password: postgres
ssl_mode: disable
external_redis:
host: 192.168.166.245
port: 6379
password:
registry_db_index: 1
jobservice_db_index: 2
chartmuseum_db_index: 3
clair_db_index: 4
proxy:
http_proxy:
https_proxy:
no_proxy:
components:
- core
- jobservice
- clair
生成harbor运行的必要文件(环境)以及docker-compose.yml
文件;执行后会通过网络获取Docker Image,建议提前修改好国内镜像站加速。
./prepare
安装Harbor
./install.sh
参考:https://blog.51cto.com/mageedu/2605814
(END)