Harbor的安装部署、主从备份及使用

本文详细介绍了Harbor的安装部署过程,包括基础准备、Docker和docker-compose的安装、Harbor的配置与管理,以及如何设置Harbor的主从备份。通过Harbor,可以实现镜像的权限控制、同步和安全管理。文中还涉及到证书生成、防火墙规则配置以及主从Harbor的配置与测试,确保了镜像在主从之间的高效复制。
摘要由CSDN通过智能技术生成

Harbor 是一个用于存储和分发 Docker 镜像的企业级 Registry 服务器。

①Harbor 可以根据角色灵活的进行权限控制,如访客只需给 pull 权限即可。
②Harbor 可以实现镜像同步。生产环境中对系统稳定性要求高,多个仓库可保证其高可用性。更常用的场景是,在企业级软件环境中,会在软件开发的不同阶段存在不同的镜像仓库。
③Harbor 可利用图形界面进行镜像的管理。
④Harbor 提供分层传输机制,优化网络传输:Docker 镜像是是分层的,而如果每次传输都使用全量文件(所以用 FTP 的方式并不适合),显然不经济。必须提供识别分层传输的机制,以层的 UUID 为标识,确定传输的对象。

Harbor主要组件
①proxy:Nginx 前端代理,主要是分发前端页面 UI 访问和镜像上传和下载流量。
②registry:镜像仓库,负责存储镜像文件。
③核心服务:提供 Web UI,数据库,Token 认证,webhook 等功能。
④日志服务:为了帮助监控 Harbor 运行,负责收集其他组件的 log,供日后进行分析。
⑤database:用来存储核心服务的一些数据。 这几个容器通过 Docker link 的形式连接在一起,这样,在容器之间可以通过容器名字互相访问。对终端用户而言,只需要暴露 proxy(即 Nginx)的服务端口。

基础准备

192.168.200.128 server (master)
192.168.200.129 db1 (slave)

在VMware下创建两台Centos7的主机,关闭selinux和firewall,yum源使用阿里,网易或者其他都可。

slave的操作:
在slave节点申请证书,所有的www.yidaoyun.com改为www2.yidaoyun.com,除外其他与master节点一样,给master一份证书。
安装docker-compose与master一样
安装harbor与master一样,配置harbor.cfg,www改为www2
master和slave的DNS为ldns ip地址
master和slave的resolv.conf改为ldns服务器的ip

防火墙规则配置:

[root@server ~]# iptables -F
[root@server ~]# iptables -X
[root@server ~]# iptables -Z
[root@server ~]# iptables-save
# Generated by iptables-save v1.4.21 on Sat May 28 13:28:47 2022
*filter
:INPUT ACCEPT [20:1320]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [11:1028]
COMMIT
# Completed on Sat May 28 13:28:47 2022

关闭swap交换分区

[root@server ~]# swapoff -a
[root@server ~]# sed -i "s/\/dev\/mapper\/centos-swap/\#\/dev\/mapper\/centos-swap/g" /etc/fstab
[root@server ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1980         144        1275           9         560        1669
Swap:             0           0           0

开启路由转发

[root@server ~]# cat >> /etc/sysctl.conf << EOF
> net.ipv4.ip_forward=1
> net.bridge.bridge-nf-call-ip6tables = 1
> net.bridge.bridge-nf-call-iptables = 1
> EOF
[root@server ~]# modprobe br_netfilter
[root@server ~]# sysctl -p
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1

安装环境依赖

[root@server ~]# yum install -y yum-utils device-mapper-persistent-data

配置仓库

[root@server ~]# yum-config-manager --add-repo http://mirrors.163.com/.help/CentOS7-Base-163.repo

安装docker-ce

yum install docker-ce docker-ce-cli containerd.io -y
提示没有包,下了个docker的yum
[root@server ~]# wget https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo --no-check-certificate

启动docker

[root@server yum.repos.d]# systemctl daemon-reload
[root@server yum.repos.d]# systemctl restart docker
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值