Kubesphere 配置镜像仓库
1. Harbor https证书配置
1.1 生成Harbor证书
mkdir /apps/harbor/cert -p
cd /apps/harbor/cert
openssl genrsa -out ca.key 2048
openssl req -x509 -new -nodes -key ca.key -subj "/C=CN/ST=Shanghai/L=Shanghai/O=pana/OU=Devops/CN=harbor.intra.com" -days 36500 -out ca.crt
openssl req -new -sha256 -key ca.key -subj "/C=CN/ST=Shanghai/L=Shanghai/O=pana/OU=Devops/CN=harbor.intra.com" \
-reqexts SAN -config <(cat /etc/ssl/openssl.cnf \
<(printf "[SAN]\nsubjectAltName=DNS:harbor.intra.com,DNS:harbor.intra.com")) -out harbor.csr
openssl req -text -noout -in harbor.csr
openssl x509 -req -days 365000 -in harbor.csr -CA ca.crt -CAkey ca.key -CAcreateserial -extfile <(printf "subjectAltName=DNS:harbor.intra.com,DNS:harbor.intra.com") -out harbor.crt
cd ..
证书文件
# ll cert/
total 28
drwxr-xr-x 2 root root 4096 Apr 10 12:40 ./
drwxr-xr-x 5 root root 4096 Apr 10 12:40 ../
-rw-r--r-- 1 root root 1359 Apr 10 12:40 ca.crt
-rw------- 1 root root 1675 Apr 10 12:40 ca.key
-rw-r--r-- 1 root root 41 Apr 10 12:40 ca.srl
-rw-r--r-- 1 root root 1314 Apr 10 12:40 harbor.crt
-rw-r--r-- 1 root root 1098 Apr 10 12:40 harbor.csr
1.2 修改
vi harbor.yml
修改16,17行
https:
# https port for harbor, default is 443
port: 443
# The path of cert and key files for nginx
# 修改以下2行,将配置文件改为刚才生成的
certificate: /apps/harbor/cert/harbor.crt
private_key: /apps/harbor/cert/ca.key
1.3 部署harbor
./install.sh
启动完成后网页段访问
https://harbor.intra.com/
查看证书信息
2. Harbor私有仓库授权
vi /etc/systemd/system/docker.service
编辑docker service,在Type=notify下加入以下这行
[Service]
Type=notify
# 加入以下这行
Environment="DOCKER_OPTS=--insecure-registry=http://harbor.intra.com"
重启服务后
systemctl daemon-reload && systemctl restart docker
执行
docker info
在不安全的仓库列表中查看到harbor.intra.com
通过dns或者hosts实现harbor.intra.com
的解析
3. Harbor域名解析
修改coredns的configmap[配置],[配置字典],[编辑YAML]
添加以下配置
hosts {
192.168.31.104 harbor.intra.com
fallthrough
}
验证从任意容器中可以解析harbor.intra.com
4. Kubesphere配置
4.1 创建配置字典
依次点击[配置],[配置字典],[创建]
名称:harbor
项目:kubeshpere-system
获取harbor的ca证书(在harbor服务器上),此ca是由步骤1.1生成
# cat cert/ca.crt
将内容粘贴过来
4.2 创建ks-apiserver映射
[应用负载],[工作负载],[ks-apiserver]
[更多操作],[编辑设置]
[存储卷],[挂载配置字典或保密字典]
路径是:
/etc/ssl/certs/ca.crt
确保都准确填写.如果1不出现那么就是之前2.1的时候项目选错了
点确认前没有出现报错.
这里报错是正常的,deployment会被重建.
过一会刷新下就恢复正常了
4.3 创建Harbor保密字典
[配置],[保密字典],[创建]
名称:harbor-secret
项目:openelb
[镜像仓库信息]
确保这里可以验证成功.
如果不行,依次检查:文章来源:https://www.toymoban.com/news/detail-430123.html
- 步骤3,是否可以从容器解析到harbor.intra.com
- 步骤4.1 创建的配置字典是否和harbor的ca一致
- 步骤4.2的映射配置是否正确无报错.
- 步骤2.是否配置了例外的镜像仓库(所有k8s节点)
这个地方被坑了6个小时…文章来源地址https://www.toymoban.com/news/detail-430123.html
到了这里,关于[Gitops--7]Kubesphere 配置镜像仓库的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!