当前位置 : 主页 > 操作系统 > centos >

Harbor一键部署——初学者如何快速了解它?

来源:互联网 收集:自由互联 发布时间:2022-06-20
大家好!我是键客李大白,今天分析一个部署Harbor的方法。 ​​ 1 ​Harbor的5种安装方式 ​ ​ ​在线安装:​适合初学者快速搭建一个Harbor仓库,简单快速,安装过程需要从官方拉取

Harbor一键部署——初学者如何快速了解它?_运维

大家好!我是键客李大白,今天分析一个部署Harbor的方法。


​​1 ​Harbor的5种安装方式

  • ​在线安装:​适合初学者快速搭建一个Harbor仓库,简单快速,安装过程需要从官方拉取镜像,资源包带​online​。
  • ​离线安装:​适合公司内网环境,离线安装包装载了安装过程需要的镜像(自动导入),资源包带​offline​。
  • ​源码安装:​适合开发者对Harbor进行开发和测试,通过编译源码到本地进行安装,安装条件较苛刻,需要了解Harbor底层原理和实现方式的,可选择源码安装的方式;
  • ​Heml Chart:​通过Heml安装Harbor到 kubernetes集群;

每种安装方式都可以实现Habor的高可用(高可用方案官方建议使用kubernetes的安装方式,其他方式官方并不维护),防止单点故障,楼主本篇分享的是【​在线安装​】的部署方式,​需要保证主机能ping通百度​,因为在线安装是从网上下载镜像的。

                     Harbor一键部署——初学者如何快速了解它?_运维_02

​2 ​下载安装包

官方下载地址:​​https://github.com/goharbor/harbor/releases​​


2.1 官网下载安装包

找到对应的版本(本处以2.3.5,当前最新为2.5.0),建议为2版本。

Harbor一键部署——初学者如何快速了解它?_kubernetes_03

Harbor一键部署——初学者如何快速了解它?_云原生_04

还记得带online的包是干嘛的嘛?不记得就翻下笔记!​右键安装包​,选择“​复制链接地址​”

[root@prometheus ~]# yum install -y wget
[root@prometheus ~]# wget https://github.com/goharbor/harbor/releases/download/v2.3.5/harbor-online-installer-v2.3.5.tgz

    ​​说明:​​wget命令可从指定路径下载文件到当前主机路径,将“复制链接地址”的链接放到wget后即可下载。


2.2  解压安装包

[root@harbor ~]# tar zxvf harbor-online-installer-v2.3.5.tgz
harbor/prepare
harbor/LICENSE
harbor/install.sh
harbor/common.sh
harbor/harbor.yml.tmpl
[root@harbor ~]# cd harbor/
[root@harbor harbor]# ls
common.sh harbor.yml.tmpl install.sh LICENSE prepare

说明:

 ​install.sh:​ 安装的脚本;

 ​harbor.yml.tmp1​: 为配置文件模板;

 ​prepare​:准备脚本,将harbor.yml配置文件的内容注入到各组件的配置文件中;

 ​LICENSE:​许可文件;

​ common.sh:​安装脚本的工具脚本;


3​ ​ 部署环境

  • 操作系统: CentOS-7.8
  • 主机IP:195.168.2.81
  • 资源:2C、4G内存
  • Harbor版本:2.3.5
  • 安装软件:docker-ce-​19.03.8、docker-compose


4​ ​安装docker-ce和docker-compose

harbor在线安装是以docker-compose和镜像的方式启动相关服务的。

  • ​​安装docker-ce(19.03.8)​​

链接:https://pan.baidu.com/s/1NbM6mlnkkch9bUa67ONICw

提取码:vgb5


[root@harbor ~]# tar zxvf docker-ce-rpm.tar.gz
[root@harbor ~]# cd docker-ce-rpm/
[root@harbor docker-ce-rpm]# yum install -y ./*.rpm
[root@harbor docker-ce-rpm]# cd ~
[root@harbor ~]# systemctl enable --now docker
[root@harbor ~]# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)


  • ​安装docker-compose​

     下载地址:​​https://github.com/docker/compose/releases/download/​​

      ​docker-compose的版本在1.18.0+

# wget https://github.com/docker/compose/releases/download/v2.2.3/docker-compose-linux-x86_64
# cp docker-compose-linux-x86_64 /usr/local/bin/docker-compose
# chmod +x /usr/local/bin/docker-compose
# docker-compose --version //查看版本
Docker Compose version v2.2.3


5 ​配置内核参数

[root@harbor ~]# modprobe br_netfilter //加载内核模块(临时)
[root@harbor ~]# 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@harbor ~]# sysctl -p //重新加载内核配置

说明:

    ​net.ipv4.ip_forward​:数据包转发,容器部署的服务是从docker0网卡提供访问的,但流量是从主机的网卡(ens33/eth0/bond0)访问服务,需要开启数据包转发功能(​必须​)。


​6​  修改配置

  • ​创建配置文件​

使用安装包的配置文件模板创建配置文件

[root@harbor harbor]#
[root@harbor harbor]# pwd
/root/harbor
[root@harbor harbor]# ls
common.sh harbor.yml.tmpl install.sh LICENSE prepare
[root@harbor harbor]# cp harbor.yml.tmpl harbor.yml
  • ​修改配置​
[root@harbor harbor]# vim harbor.yml
hostname: 192.168.2.81 //主机名或主机IP地址
http:
port: 80

#https:
# port: 443
# certificate: /your/certificate/path
# private_key: /your/private/key/path

harbor_admin_password: Harbor12345 //Harbor的登录密码,不需要修改
_version: 2.3.5 //Harbor版本号,需要修改为当前的版本号

说明:

  https安装端口需要自己制作证书,来增加Harbor的安全性,本处为在线安装,主要用于测试,将https注释掉;本专栏的离线部署(生产内网)等都会配置https安全,有兴趣可进本专栏阅读。

配置文件的详细配置见官网(​​https://goharbor.io/docs/2.3.0/install-config/configure-yml-file/​​)

官网太专业不理解?本专栏也安排了。


​7  ​安装Harbor

                       Harbor一键部署——初学者如何快速了解它?_kubernetes_05


  • ​执行install.sh安装脚本​
# pwd
/root/harbor
# ./install.sh

过程会从网上拉取镜像,install完成后会自动启动相关服务;

  • ​查看服务状态​
[root@harbor harbor]# docker-compose ps
NAME COMMAND SERVICE STATUS PORTS
harbor-core "/harbor/entrypoint.…" core running (starting)
harbor-db "/docker-entrypoint.…" postgresql running (starting)
harbor-jobservice "/harbor/entrypoint.…" jobservice running (starting)
harbor-log "/bin/sh -c /usr/loc…" log running (starting) 127.0.0.1:1514->10514/tcp
harbor-portal "nginx -g 'daemon of…" portal running (starting)
nginx "nginx -g 'daemon of…" proxy running (starting) 0.0.0.0:80->8080/tcp
redis "redis-server /etc/r…" redis running (starting)
registry "/home/harbor/entryp…" registry running (starting)
registryctl "/home/harbor/start.…" registryctl running (starting)

running状态为正常!

​8​ 登录Harbor

使用主机IP+端口进行登录: http://192.68.2.81:80 

Harbor一键部署——初学者如何快速了解它?_docker_06

 登录进去后的界面:     Harbor一键部署——初学者如何快速了解它?_云原生_07


文末思考

Harbor有哪几种安装方式?它们有何区别?

无法访问harbor服务怎么排查?


Harbor一键部署——初学者如何快速了解它?_docker_08

网友评论