前言

我的阿里云ACK 也就是k8s之前是2021年创立的,过后的版本是1.18,两头也降级过一次到1.22,然而最近k8s的1.24版本公布之后从docker runtime变到了containerd,所以打算再降级一下,之前的镜像制作和镜像公布包含编写dockerfile等等操作不变。

问题

1、NAT网关IP和Nginx SLB ip问题

NAT网关是ECS外面的Pod是否拜访外网的配置,如果没有NAT网关则你不能通过pod拜访外网,比如说你的服务外面有个网络爬虫,这时候就须要配置NAT网关

Nginx SLB是你的服务通过ingress让外界可能拜访外部资源的配置,也就是说你的利用对应的域名及ip是指向Nginx SLB公网对内拜访的资源。

2、Pod拉取集体或者企业公有镜像问题

这个问题也是我降级过程中遇到最大的问题,依据阿里工程师提供的应用免密组件拉取容器镜像文档即可解决。

步骤:(留神:先在控制台看看本人是否装置了aliyun-acr-credential-helper组件)
通过控制台形式设置acr-configuration配置项。

登录容器服务治理控制台。

在控制台左侧导航栏中,单击集群。

在集群列表页面,单击指标集群下的详情。

在集群信息页面左侧导航栏,抉择配置管理 > 配置项。

在配置项页面的上方命名空间下拉框中,抉择kube-system,而后找到配置项acr-configuration,而后通过以下两种形式配置acr-configuration。

集体:

acr-registry-info: |-  - instanceId: ""    regionId: "cn-hangzhou"

企业:

acr-registry-info: |-    - instanceId: "cri-xxx"      regionId: "cn-hangzhou"

残缺的配置,如下:

apiVersion: v1data:  acr-api-version: "2018-12-01"  acr-registry-info: |-    - instanceId: ""      regionId: "cn-hangzhou"  expiring-threshold: 15m  service-account: default  watch-namespace: allkind: ConfigMapmetadata: name: acr-configuration namespace: kube-system selfLink: /api/v1/namespaces/kube-system/configmaps/acr-configuration

3、Https证书

cert-manager是一个云原生证书治理开源工具,用于在Kubernetes集群中提供HTTPS证书并主动续期。以下示例介绍了如何应用cert-manager申请收费证书并主动续期。应用cert-manager申请收费的HTTPS证书

4、nacos新版本mysql字段缺失问题

Nacos v2.0.4降级到v2.1.0后mysql数据库字段缺失了,加上即可。

Nacos v2.0.4降级到v2.1.0后启动报如下谬误 Unknown column ‘encrypted_data_key‘ in ‘field list‘

总结

降级ACK过程中总会遇到各种各样的问题,还好都解决了,心愿对大家有所帮忙。