You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Vagrant创建K8s集群VM时遭遇GPG公钥缺失错误

解决Kubernetes仓库GPG密钥缺失(NO_PUBKEY B53DC80D13EDEF05)问题

1. 手动导入缺失的公钥

方法1:兼容旧版apt-key方式

直接在VM节点终端执行以下命令:

apt-key adv --keyserver keyserver.ubuntu.com --recv-keys B53DC80D13EDEF05

如果遇到密钥服务器超时,可切换HTTP端口的密钥服务器:

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys B53DC80D13EDEF05

方法2:符合新版apt规范的推荐方式

# 接收密钥
gpg --keyserver keyserver.ubuntu.com --recv-keys B53DC80D13EDEF05
# 导出密钥到系统可信密钥环目录
gpg --export B53DC80D13EDEF05 | tee /usr/share/keyrings/kubernetes-archive-keyring.gpg > /dev/null
# 重新配置K8s仓库,关联密钥环
echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://apt.kubernetes.io/ kubernetes-xenial main" | tee /etc/apt/sources.list.d/kubernetes.list

2. 检查并修正common.sh脚本的K8s配置

打开你的common.sh脚本,定位到Kubernetes仓库配置段:

  • 确认密钥导入步骤未被注释、无语法错误
  • 若脚本仍使用旧版apt-key方式,建议替换为上述方法2的内容,避免后续兼容问题

3. 验证修复并重新执行脚本

完成密钥导入后,先更新apt缓存确认错误消除:

apt-get update

若未再出现NO_PUBKEY提示,重新执行common.sh脚本即可。

4. 网络环境排查(针对国内网络或网络受限场景)

如果无法连接官方密钥服务器或K8s仓库,可替换为国内镜像源(以阿里云为例):

# 导入阿里云K8s密钥
curl -fsSL https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | gpg --dearmor -o /usr/share/keyrings/kubernetes-archive-keyring.gpg
# 配置阿里云K8s仓库
echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main" | tee /etc/apt/sources.list.d/kubernetes.list

内容的提问来源于stack exchange,提问作者AnilJ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 05:37:28