KubeSphere 使用 HTTPS 协议集成 Harbor 镜像仓库指南
作者:申红磊,青云科技容器解决方案架构师,开源项目爱好者,KubeSphere Member。
上面两篇文章讲了如何部署 HTTPS Harbor 和对接 HTTP 的 Harbor 镜像仓库;接下来详细介绍一下,如何添加基于 HTTPS 的 Harbor 镜像仓库对接使用说明。
因为 KubeSphere 无法直接解析 Harbor 域名,需要在 CoreDNS 添加解析记录,否则会报 no such host。
NodeLocal DNSCache
NodeLocal DNSCache 通过在集群上运行一个 DNSCache Daemonset 来提高 clusterDNS 性能和可靠性。相比于纯 CoreDNS 方案,nodelocaldns + CoreDNS 方案能够大幅降低 DNS 查询 timeout 的频次,提升服务稳定性。
nodelocaldns 通过添加 iptables 规则能够接收节点上所有发往 xxx.xxx.xx.xx 的 DNS 查询请求,把针对集群内部域名查询请求路由到 CoreDNS;把集群外部域名请求直接通过 Host 网络发往集群外部 DNS 服务器。
将 nodelocaldns 解析都转发给 coredns
#forward ./etc/resolv.conf指向coredns service ip
#search coredns service ip
$ kubectl get svc coredns -n kube-system
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
coredns ClusterIP 10.233.0.3 <none> 53/UDP,53/TCP,9153/TCP 28d
#修改nodelocaldns的配置configmap的值
$ kubectl edit cm nodelocaldns -n kube-system
## 将 forward ./etc/resolv.conf 调整为:forward . 10.233.0.3
apiVersion: v1
data:
Corefile: |
cluster.local:53 {
errors
cache {
success 9984 30
denial 9984 5
}
reload
loop
bind 169.254.25.10
forward . 10.233.0.3 {
force_tcp
}
prometheus :9253
health 169.254.25.10:9254
}
...
## 保存、重启、或者手动重启,效果一样

在 coredns 中添加主机记录
#修改 coredns configmap 文件,添加主机记录
$ kubectl edit cm coredns -n kube-system
....
}
kubernetes cluster.local in-addr.arpa ip6.arpa {
pods insecure
fallthrough in-addr.arpa ip6.arpa
ttl 30
}
hosts {
192.168.100.2 dockerhub.kubekey.local
fallthrough
}
prometheus :9153
....
## 保存或者重启coredns一下进行验证

如果此时添加 harbor 对接信息,会提示 证书问题, x509 的错误提示
Get"https://dockerhub.kubekey.local/v2/":x509:certificate signed by unknown authority
x509
在 KubepShere 中的 ks-apiserver 中添加镜像仓库 CA 证书。
通过 configmap 加载 CA 证书
查看 CA 证书的位置,在 Harbor 部署时,查看证书生成的位置及值:
#目录位置: ls /etc/docker/certs.d/
$ cat /etc/docker/certs.d/dockerhub.kubekey.local/ca.crt
-----BEGIN CERTIFICATE-----
MIIDATCCAemgAwIBAgIBADANBgkqhkiG9w0BAQsFADAWMRQwEgYDVQQDEwtyZWdp
c3RyeS1jYTAeFw0yMjA0MjExNjUzNTJaFw0zMjA0MTgxNjUzNTJaMBYxFDASBgNV
BAMTC3JlZ2lzdHJ5LWNhMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
vs0k1cS3S4L9tvTvJomlMwNN8eGSk8hujGKm6SQHAYicFsNmfYevfthJsufuikIq
ggxwyL9nExr470l4hN31PN/ztIKZh/57IKF6XZrF5Ld3fBxOvVGSTarZraIkxkPe
/N5HfJdAWh5CTKtdsOpal3CmP+6tbRQ6qQN5D9lO97Tid79W8a58jI7FHyeYS08D
VlBjDCip81mI4YsgMaXmatS0HjtLtCvQNsL5Py2KKAhHb+Rd0iepICUT2uUwR1Cu
RpO+FkiAxM8WXF/6IndiIsoC2XCh6pELadcKCNNy5IREC/+JbjveNZOuYU4KPJn5
TYZxzalJ8nWRHpi6neFHAQIDAQABo1owWDAOBgNVHQ8BAf8EBAMCAqQwDwYDVR0T
AQH/BAUwAwEB/zAdBgNVHQ4EFgQUtcd+vBgIbcmB8O7ZeSBwFOCPj/QwFgYDVR0R
BA8wDYILcmVnaXN0cnktY2EwDQYJKoZIhvcNAQELBQADggEBABxAVx3Wkfic/SWY
Z1T0kv+zq8NW1YyHDw13mRwcjV+lRI0/WtANEBAbAejmZJkhhz7uc/N9egXF6cOY
PLoxvLXQJGxQKfBqrGkFhAlFt4FWJm0g7fXq/a6Fo/EStRmW9Oio0dFJHQ/F6Lon
DK/1bx0s27JJqBmU4WnmGF1U2prYuJ3/C8mwxWb49K+z1s1sDQQOCp/jt8gabc2R
GAZgcYhIj+HUXAEl14+GhpoLqJbJ5ngVLxz08YDMTGp1pQ8uYeE1m29yTOThMGrC
owVM1fSSHs5UtKQ2/tVcxi5Mf+WUWZr2D2km0dI9BJyXwtQwGKhp3lwJX5e0NTZi
+6a/23U=
-----END CERTIFICATE-----
#界面创建configmap:工作台>企业空间>System-workspace>项目>kubesphere-system>配置>配置字典,新建harbor4shl-ca

编辑 ks-apiserver deployment 文件,进行 configmap 的挂载:


保存更新。
验证



本文由博客一文多发平台 OpenWrite 发布!
KubeSphere 使用 HTTPS 协议集成 Harbor 镜像仓库指南的更多相关文章
- harbor镜像仓库-02-https访问配置
harbor镜像仓库-02-https访问配置 harbordockerhttps harbor搭建部署参考上一章节 harbor镜像仓库-01-搭建部署 Harbor默认使用http,给harbor ...
- harbor镜像仓库-01-搭建部署
harbor镜像仓库-01-搭建部署 dockerregistryharbor安装部署docker-compose harbor的https配置参考另一章节harbor镜像仓库-02-https访问配 ...
- Harbor镜像仓库
Harbor镜像仓库 作者 刘畅 时间 2020-7-11 微信 目录 1.下载离线安装包 1 2.安装docker 1 3.安装docker-compose 2 4.自签TLS证书 2 4.1.创建 ...
- harbor镜像仓库-https访问配置
1. 证书的生成 在测试或开发环境中,您可以选择使用自签名证书,而不是来自受信任的第三方CA的证书.以下内容将向您展示如何创建自己的CA,并使用您的CA签署服务器证书和客户端证书. 1.1 生成c ...
- 企业级 Harbor 镜像仓库
Harbor是由VMWare公司开源的容器镜像仓库.事实上,Harbor是在Docker Registry上进行了相应 的企业级扩展,从而获得了更加广泛的应用,这些新的企业级特性包括:管理用户界面,基 ...
- Monocular 集成harbor helm 仓库
harbor 已经支持了helm 仓库(使用chartmuseum),Monocular 是一个不错的helm 仓库可视化工具 测试Monocular集成harbor 私服功能 使用docker- ...
- CentOS部署Harbor镜像仓库
关于Harbor Harbor是用于存储和分发Docker镜像的镜像仓库服务,相比Docker Registry,Harbor在安全.标识.管理等方面做了增强,更适合企业使用: 官方网站:https: ...
- docker登录没有配置https的harbor镜像仓库
已经搭建harbor 仓库 ,域名 172.16.1.99 出现问题: 客户端尝试登录 仓库 [root@localhost docker]# docker login 172.16.1.99:80 ...
- 私有化轻量级持续集成部署方案--06-私有镜像仓库-Harbor
提示:本系列笔记全部存在于 Github, 可以直接在 Github 查看全部笔记 针对私有镜像仓库的问题,Docker 官方提供了搭建仓库服务的镜像服务:registry,使用此镜像就可以部署私有仓 ...
- Docker镜像仓库Harbor搭建及配置
一.harbor简介 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源Docker Distribut ...
随机推荐
- 智能机器人(双足机器人、四足机器人、人形机器人humanoid)与自动驾驶技术/FSD(Full Self-Drive)“完全自动驾驶”在技术领域的相关性?
前文: https://www.cnblogs.com/devilmaycry812839668/p/18079439 前文中已经说了,对于能力强大的机器人公司来说,软件和AI技术并不是难点,真正的难 ...
- 大语言模型(LLM)运行报错:cannot import name 'AutoModel' from 'transformers'
解决方法: 安装pytorch即可,不过需要注意项目的README文件和requirements文件,安装对应版本的pytorch即可.
- 什么样的AI计算框架才是受用户喜欢的?
说明,本文是个人的一些胡想. 背景: AI计算框架现在从国外的百家争鸣过度到了国内百家争鸣的局面了.在7.8年前的时候,国外的AI计算框架简直是数不胜数,从14.15年前Nvidia公司的显卡需要手动 ...
- 代码随想录Day7
454.四数相加Ⅱ 给你四个整数数组 nums1.nums2.nums3 和 nums4 ,数组长度都是 n ,请你计算有多少个元组 (i, j, k, l) 能满足: 0 <= i, j, k ...
- AC自动机 基础篇
AC 自动机1 前置知识:\(KMP\),字典树. \(AC\) 自动机,不是用来自动 \(AC\) 题目的,而是用来处理字符串问题的(虽然确实可以帮助你 \(AC\)). 这里总结了 \(AC\) ...
- 通过 C# 将数据写入到Excel表格
Excel 是一款广泛应用于数据处理.分析和报告制作的电子表格软件.在商业.学术和日常生活中,Excel 的使用极为普遍.本文将详细介绍如何使用免费.NET库将数据写入到 Excel 中,包括文本.数 ...
- Java 代码本地设置Hadoop用户名密码
在Hadoop环境中,通常使用Kerberos进行身份验证.但在一些开发或测试环境中,我们可能需要在本地代码中设置用户名和密码来模拟或进行简单的测试.虽然这不是一个安全的做法,因为它违背了Kerber ...
- Camera | 11.瑞芯微摄像头采集图像颜色偏绿解决笔记
前言 在实际调试基于瑞芯微平台的camera过程中,发现显示的图片发绿, 现在把调试步骤分享给大家: 1.修改iq文件 sdk中位置: @external/camera_engine_rkaiq/iq ...
- spring boot 若依系统整合Ueditor,部署时候上传图片错误解决
spring boot 若依系统整合Ueditor,部署时候上传图片错误解决 前言:国庆假期找了个ruoyi版本的cms玩玩,从git上看,介绍如下图: 后台部分截图: 编辑 编辑 编辑 ...
- JMonkeyEngine3 Android 旋转 、放大、缩小一个方块 demo 版本3.5.2-stable
1. Class,里面是旋转的逻辑,很简陋,可以自己优化 import android.util.Log; import com.jme3.app.SimpleApplication; import ...