Harbor v1.1新增独立的管理员界面

来源:互联网 发布:人工智能项目 编辑:程序博客网 时间:2024/06/05 19:16

题图摄于美国加州:Point Lobo


开源企业级容器 Registry 项目 Harbor在v1.1版本新增管理员配置功能,本文讲述该功能的主要设计思想和给用户带来的便利,建议升级 Harbor 的用户阅读。作者尹文开为Harbor核心开发团队工程师。


简介

VMware 公司的开源企业级容器 Registry 项目 Harbor ,可帮助用户迅速搭建企业级的镜像仓库 registry 服务,它提供了管理图形界面, 基于角色的访问控制 RBAC,镜像远程复制(同步),AD/LDAP 集成等企业用户需求的功能,同时还原生支持中文,深受国内外用户的喜爱。


Harbor在最近发布的1.1版本中引入了一个全新的组件Admin Server,用来管理系统配置,并提供了相应的 WEB 页面和 API 来供用户操作,改进了之前需用户手动修改配置文件并手动重启系统的用户体验。

   

Admin Server新组件


在引入 Admin Server 组件之后,Harbor 的整体架构如下图所示:


当系统启动时,UI 和 Job Service 从 Admin Server 处读取各自所需的配置,完成自身启动过程。之后用户可以通过 WEB 界面或者通过 API 修改部分系统配置。修改后的配置会被写入到 Admin Server 中。其他组件重新读取Admin Server的配置信息就可以得到最新的配置。


和之前的版本不同,harbor.cfg 文件中的配置被分为两类,一类是必需的(madatory),如主机名称 hostname;另一类是可选的( optional ),如 LDAP 的配置。在 Harbor 初次启动时,Admin Server 从 harbor.cfg 文件读取配置并记录下来。之后重新启动Harbor的过程中,只有必需的配置会从 harbor.cfg 文件读取;其他可选的配置将不再生效,需要通过 Admin Server 的管理界面来修改。


Admin Server工作流程


新增的Admin Server的具体实现如下图所示:

用户可以通过 Admin Server 提供的 API 读写系统配置。读写的数据会经过加解密层进行相应的加密和解密。最终这些配置都会被持久化在底层相应的存储中。目前 Admin Server 实现了文件系统的驱动,其他类型的存储(例如 etcd )也可以很容易的进行扩展。


Admin Server的使用


之前的版本更新配置,需要修改harbor.cfg,然后停止并删除现有Harbor实例,再重新运行Harbor,比较繁琐。新版本的adminconsole可以使用户很方便地通过WEB界面配置认证、同步、邮件和系统等信息,修改立即生效,无需重启整个系统。


认证信息的配置页面如下图所示,目前支持两种认证模式:本地数据库和AD/LDAP 。当有新的用户注册或者使用AD/LDAP用户登录过系统后,为防止来自不同认证源的用户之间的冲突,认证模式将不再允许被修改。如果原有系统采用AD/LDAP认证模式,并且已经创建过用户,请务必在第一次启动新版本前,将harbor.cfg中的 auth_mode 配置成 ldap_auth 。否则无法在启动后切换到 LDAP/AD 认证。

在 “Replication” 选项页面,可以修改在同步镜像的过程中是否检查证书的合法性。如果远端 Harbor 使用的是自签名证书,请确保复选框没有被勾选。

升级注意事项

当用户的Harbor到升级v1.1.0时,在启动之前需要用新版本自带的模板重新配置harbor.cfg文件,切忌直接拷贝旧版本的 harbor.cfg 。其他详细步骤请参考升级文档:

https://github.com/vmware/harbor/blob/master/docs/migration_guide.md


欢迎加入VMware云原生研发团队

VMware公司云原生团队开发包括 Harbor 在内的容器平台开源项目,现招聘开发工程师,坐标北京,要求熟悉 Go/Java 语言,了解容器原理,有云计算和分布式系统背景,熟悉 DevOps 优先。这是一支站在业界最前沿、充满活力的团队,欢迎加入我们。待遇优厚,并有诸多出国交流机会。2017年8月底前有效,请转发给感兴趣的朋友。请后台留言,或简历发送:harbor@vmware.com 




Harbor 开源项目在国内外已经得到众多用户的喜爱,如果你是 Harbor 的开发者或用户,可申请加入“Harbor开源项目群”,请先关注“亨利笔记”公众号,并在公众号后台发送"入群"信息即可。 


亨利笔记