这是 Google Distributed Cloud 纯软件产品(Bare Metal 和 VMware)的错误目录。
每个错误条目都包含以下信息:
错误 ID:简短的唯一标识符,格式为 E######,其中 ###### 是唯一编号。
错误标题:简短且直观易懂的错误说明。
错误说明:详细信息,可帮助您排查并解决错误原因。
E000000:未指定 Kubeconfig 文件
执行 bmctl
命令,但不指定 kubeconfig 文件。
如需继续,请确保使用 --kubeconfig
标志提供 kubeconfig 文件。
示例:
bmctl [command] --kubeconfig [kubeconfig-file]
E000001:Kubeconfig 文件无效
所提供的 kubeconfig 文件不是常规文件模式。
确保您指定了有效的 kubeconfig 文件,然后重试。
E000002:Bootstrap.Run
函数已被调用
Bootstrap.Run
函数会执行工作流来初始化日志记录目录和文件,并在必要时创建引导集群。
此函数旨在仅在执行 bmctl
命令期间调用一次,以防止创建多个引导集群。
如果 Bootstrap.Run
函数被调用多次,则会发生此错误,但这并非预期行为。
等待所有现有的 bmctl
进程完成,然后重试该操作。
E000003:未找到匹配的地区或可用区
检查集群配置文件中 spec.clusterOperations.location
中提供的位置是否存在于您的 Google Cloud 项目中。
您可以运行以下命令,查看项目中的所有区域和可用区:
gcloud compute regions list
如果您提供的区域或可用区存在于您的项目中,请确保您使用的大写形式正确无误。区域和可用区区分大小写。
E000004:Secret 存储在错误的命名空间中
例如,返回的错误消息可能如下所示:
The secret 'x' should be stored in the namespace 'y'.
Please remove 'x' from the path "p" in the configuration file of cluster 'c'.
如需解决此问题,请从集群配置文件中移除在错误命名空间中引用的 Secret。
E000005:HTTP 状态代码不一致
尝试访问 Google Cloud API 或 Google Container Registry API 时,系统返回了意外的 HTTP 状态代码。
确保您已正确设置代理配置,包括代理网址(如适用)。
通过以下方式之一确保已提供服务账号密钥:
- 将
GOOGLE_APPLICATION_CREDENTIALS
环境变量设置为包含服务账号凭据的文件的路径。 运行以下命令,使用默认凭据向 Google Cloud 进行身份验证:
gcloud auth application-default login
如需了解详情,请参阅 https://cloud.google.com/docs/authentication#adc。
在 Google Cloud 控制台中检查服务账号:依次前往“IAM 和管理”->“服务账号”。如果您的服务账号密钥已过期,请按照 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/how-to/update-secrets 中所述的说明更新密钥。
检查服务账号的角色和权限,然后重试。 如需了解需要创建和配置的 Google Cloud 资源,请参阅 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/installing/configure-sa。
E000006:无法在没有管理员集群 kubeconfig 的情况下管理用户集群
如果没有管理员集群的 kubeconfig 路径,我们就无法管理用户集群。管理用户集群需要管理员集群的 kubeconfig 路径。
如需解决此错误,请确保在管理用户集群时使用 --kubeconfig
标志提供管理员集群的 kubeconfig 路径。
这样可确保为管理用户集群正确配置必要的身份验证和权限。
E000007:版本不匹配
集群配置文件中 spec.anthosBareMetalVersion
下指定的版本与用于管理集群的 bmctl
二进制文件版本不一致。
如需解决此错误,请执行以下操作:
- 将
bmctl
二进制文件更新为与集群版本相匹配的相应版本。 - 对于升级,请更新集群配置中指定的版本,以反映
bmctl
二进制版本。
E000008:未指定 ClusterOperations 配置
集群需要 ClusterOperations 配置。
确保在集群配置文件中,为 spec.clusterOperations
下的集群正确定义了 ClusterOperations 配置。
E000009:未指定 ClusterOperations 中的 ProjectID
ClusterOperations 配置中的 ProjectID 字段为空。必须提供 ProjectID 才能管理集群操作。
确保在集群配置文件的 spec.clusterOperations.projectID
下正确定义了 ProjectID。
E000010:未指定 ClusterOperations 中的位置
ClusterOperations 配置中的位置信息字段为空。需要位置信息才能管理集群操作。
确保在集群配置文件中的 spec.clusterOperations.location
下正确定义了位置。
E000011:使用访问令牌时无法使用服务账号
如果您的集群是使用访问令牌创建的,则需要移除集群配置文件中指定的服务账号密钥路径。
确保:
- 设置了环境变量
GCP_ACCESS_TOKEN_X
。 - 移除了集群配置文件中引用的服务账号密钥路径。
E000012:使用访问令牌时无法使用服务账号
如果您的集群是使用服务账号密钥创建的,请确保:
- 未设置环境变量
GCP_ACCESS_TOKEN_X
。 - 所有必需的服务账号密钥路径均已在集群配置文件中设置。
E000013:在没有 --force
的情况下绕过 Google Cloud 预检失败
标志 --bypass-gcp-preflight-errors
必须与 --force
一起设置。
请确保同时使用这两个标志,然后继续操作。
E000014:不支持 Docker 容器运行时
Docker 容器运行时已不再受支持。
在集群配置文件中,将容器运行时设置为 spec.nodeConfig.containerRuntime
下的 containerd
。
E000015:未启用的 API
您的项目中未启用某些必需的 API。
确保已在项目中启用所有必需的 API,然后继续操作。如需了解详情,请参阅 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/installing/configure-sa。
E000016:Kubeconfig 文件统计信息错误
所提供的 kubeconfig 文件不存在或无法访问。
确保 kubeconfig 文件存在,并且 bmctl
命令具有访问该文件的必要权限。
E000017:未启用 IPV4 转发
管理员工作站上未启用 IPv4 转发。必须启用 IPv4 转发。
如需解决此错误,请按以下步骤操作:
- 确保文件
/proc/sys/net/ipv4/ip_forward
存在。 - 运行以下命令以启用 IPv4 转发:
echo '1' > /proc/sys/net/ipv4/ip_forward
E000018:无法解析配置文件
我们无法解析集群的配置文件。此问题可能由多种原因造成。
确保配置文件 bmctl-workspace/[cluster-name]/[cluster-name].yaml
存在,并且 bmctl
命令具有访问该文件的必要权限。
检查配置文件是否存在任何语法错误或缺失的字段。
如果您需要更新配置文件,请务必遵循正确的格式和结构。如需了解详情,请参阅 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/reference/cluster-config。
E000019:控制平面负载平衡器作业未完成
这表示在等待控制平面或负载均衡器作业完成时发生了错误。
检查集群的控制平面或负载均衡器作业的状态:
kubectl describe jobs -A
如需详细了解具体错误,请查看命令返回的封装错误。
E000020:无法创建 HTTP 客户端
我们无法创建 HTTP 客户端,以确保您的工作站可以访问 Google Cloud API 和 Container Registry。
确保您已正确设置代理配置,并提供代理网址(如适用)。
E000021:无法访问 Google API
我们无法验证与 Google Cloud API 或 Google Container Registry API 的连接。
您的工作站必须能够访问 Google Cloud API 和 Container Registry,才能正常运行。
通过以下方式之一确保已提供服务账号密钥:
- 将
GOOGLE_APPLICATION_CREDENTIALS
环境变量设置为包含服务账号凭据的文件的路径。 运行以下命令,使用默认凭据向 Google Cloud 进行身份验证:
gcloud auth application-default login
如需了解详情,请参阅 https://cloud.google.com/docs/authentication#adc。
在 Google Cloud 控制台中检查服务账号:依次前往“IAM 和管理”->“服务账号”。如果您的服务账号密钥已过期,请按照 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/how-to/update-secrets 中所述的说明更新密钥。
检查服务账号的角色和权限,然后重试。 如需了解需要创建和配置的 Google Cloud 资源,请参阅 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/installing/configure-sa。
E000022:无法解析集群版本
我们无法从集群配置文件中解析版本。
如需解决此错误,请确保集群配置文件中 spec.anthosBareMetalVersion
下指定的版本有效且符合预期格式。
E000023:GKE 会员资格客户端错误
我们无法获取用于建立 GKE Hub 成员资格注册的客户端。
如果 GKE Connect 在集群配置文件中的 spec.gkeConnect
下配置,则必须具有 GKE 会员资格。
确保在集群配置文件中指定 gcpAccessToken
或 gkeConnectAgentServiceAccountKeyPath
。
E000024:无法创建 GKE 注册检查
我们无法创建新的 GKE 注册检查。
此检查对于验证以下内容至关重要:
- 尚未注册 GKE Connect。
- 您的服务账号具有足够的权限来执行 GKE 连接注册的变更。
确保在 Google Cloud 控制台 -> Kubernetes Engine -> 集群中,您的集群没有现有的 GKE Connect 会员资格。 如果您的集群已存在会员资格,请执行以下操作之一:
- 请选择其他集群名称。
从 Google Cloud 控制台中取消注册现有集群,或运行以下命令:
gcloud container hub memberships unregister <CLUSTER_NAME> --gke-cluster=<LOCATION>/<CLUSTER_NAME>
参考:https://cloud.google.com/sdk/gcloud/reference/container/hub/memberships/unregister
如需详细了解具体错误,请查看命令返回的封装错误。
E000025:GKE 注册检查失败
这表示在执行 GKE 注册检查时发生了故障。
此检查对于验证以下内容至关重要:
- 尚未注册 GKE Connect。
- 您的服务账号拥有足够的权限来对 GKE 连接注册执行变动。
确保在 Google Cloud 控制台 -> Kubernetes Engine -> 集群中,您的集群没有现有的 GKE Connect 会员资格。 如果您的集群已存在会员资格,请执行以下操作之一:
- 请选择其他集群名称。
从 Google Cloud 控制台中取消注册现有集群,或运行以下命令:
gcloud container hub memberships unregister <CLUSTER_NAME> --gke-cluster=<LOCATION>/<CLUSTER_NAME>
参考:https://cloud.google.com/sdk/gcloud/reference/container/hub/memberships/unregister
如需详细了解具体错误,请查看命令返回的封装错误。
E000026:无法检索 Google 默认凭据
我们无法检索 Google 默认凭据。如需了解相关信息,请参阅 https://cloud.google.com/docs/authentication/production#automatically。
如需详细了解具体错误,请查看命令返回的封装错误。
E000027:Google Cloud 权限遭拒
这表示向 Google Cloud API 发出的请求遭拒。
通过以下方式之一确保已提供服务账号密钥:
- 将
GOOGLE_APPLICATION_CREDENTIALS
环境变量设置为包含服务账号凭据的文件的路径。 运行以下命令,使用默认凭据向 Google Cloud 进行身份验证:
gcloud auth application-default login
如需了解详情,请参阅 https://cloud.google.com/docs/authentication#adc。
在 Google Cloud 控制台中检查服务账号:依次前往“IAM 和管理”->“服务账号”。如果您的服务账号密钥已过期,请按照 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/how-to/update-secrets 中所述的说明更新密钥。
检查服务账号的角色和权限,然后重试。 如需了解需要创建和配置的 Google Cloud 资源,请参阅 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/installing/configure-sa。
E000028:服务账号密钥无效
用于 Google 默认凭据的服务账号密钥无效。
在 Google Cloud 控制台中检查服务账号:依次前往“IAM 和管理”->“服务账号”。如果您的服务账号密钥已过期,请按照 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/how-to/update-secrets 中所述的说明更新密钥。
如需详细了解具体错误,请查看命令返回的封装错误。
E000029:Google Cloud 权限不足
由于权限不足,我们无法与 Google Cloud API 通信。需要提供有效的服务账号密钥才能成功进行通信。
通过以下方式之一确保已提供服务账号密钥:
- 将
GOOGLE_APPLICATION_CREDENTIALS
环境变量设置为包含服务账号凭据的文件的路径。 运行以下命令,使用默认凭据向 Google Cloud 进行身份验证:
gcloud auth application-default login
如需了解详情,请参阅 https://cloud.google.com/docs/authentication#adc。
在 Google Cloud 控制台中检查服务账号:依次前往“IAM 和管理”->“服务账号”。如果您的服务账号密钥已过期,请按照 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/how-to/update-secrets 中所述的说明更新密钥。
检查服务账号的角色和权限,然后重试。 如需了解需要创建和配置的 Google Cloud 资源,请参阅 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/installing/configure-sa。
E000030:无法创建计算服务
我们无法创建计算服务来从您的 Google Cloud 项目中检索有关可用区或位置的信息,而这是根据集群配置中 spec.clusterOperations.location 下指定的位置执行检查所必需的。
如需详细了解具体错误,请查看命令返回的封装错误。
E000031:无法创建服务账号检查
我们无法创建服务账号检查。
系统会使用集群配置文件中 cloudOperationsServiceAccountKeyPath
下指定的服务账号密钥文件来创建服务账号检查。
确保服务账号文件存在且有效。
在 Google Cloud 控制台中检查服务账号:依次前往“IAM 和管理”->“服务账号”。如果您的服务账号密钥已过期,请按照 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/how-to/update-secrets 中所述的说明更新密钥。
如需详细了解具体错误,请查看命令返回的封装错误。
E000032:服务账号检查失败
这表示在执行服务账号检查时发生了故障。
此检查会针对 cloudOperationsServiceAccountKeyPath 下的集群配置文件中引用的服务账号密钥文件运行验证。
确保:
projectID
有效。如需了解详情,请参阅 https://cloud.google.com/resource-manager/docs/creating-managing-projects#before_you_begin。- 服务账号密钥文件存在且有效。
在 Google Cloud 控制台 -> IAM 和管理 -> 服务账号中检查服务账号密钥。 如果服务账号密钥已过期,请按照 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/how-to/update-secrets 中所述的说明更新密钥。
- 已启用 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/installing/configure-sa 中列出的权限和 API。如需了解映射关系,请参阅 https://cloud.google.com/iam/docs/understanding-roles。
如需详细了解具体错误,请查看命令返回的封装错误。
E000033:无法设置标志
我们无法为日志目录或文件设置标志。
bmctl
命令使用日志目录或文件在命令运行时保存日志。
如需详细了解具体错误,请查看命令返回的封装错误。
E000034:目录创建失败
我们无法创建目录。
此问题通常是由于创建目录的权限不足或创建目录的路径不存在而引起的。
确保您具有创建目录的必要权限,并且指定的位置存在。
如需详细了解具体错误,请查看命令返回的封装错误。
E000035:Container Registry 权限验证失败
在执行 Container Registry 权限验证时遇到了故障。
gcrServiceAccountKey
下集群的配置文件中引用的服务账号密钥文件用于运行验证。
确保服务账号密钥文件存在且有效。在 Google Cloud 控制台 -> IAM 和管理 -> 服务账号中检查服务账号密钥。 如果服务账号密钥已过期,请按照 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/how-to/update-secrets 中所述的说明更新密钥。
如需详细了解具体错误,请查看命令返回的封装错误。
如需忽略验证失败,请在运行命令时使用 --ignore-validation-errors
标志。
E000036:需要最低内核版本
工作站的最低内核版本验证失败。工作站必须满足最低内核版本要求。
确保内核版本的数字部分不低于 4.15.0
。如需检查内核版本,请运行以下命令:
uname -r
您还可以在 /proc/version
文件中找到内核详细信息。
如需详细了解具体错误,请查看命令返回的封装错误。
E000037:无法检索服务账号名称
我们无法检索工作负载身份所需的服务账号。
在集群配置文件中提供以下任一内容,以修正该错误:
- 将字段
spec.gkeConnect.projectID
设置为您的 Google Cloud 项目 ID。 - 将
metadata.annotations
下的baremetal.cluster.gke.io/gcr-service-account
设置为服务账号的名称。
如需详细了解具体错误,请查看命令返回的封装错误。
E000038:无法创建引导集群
我们无法成功创建引导集群。 引导集群是一个临时集群,用于托管创建或升级自行管理(管理员、混合或独立)集群所需的 Kubernetes 控制器。
如需解决与引导集群相关的问题,请参阅 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/troubleshooting/create-upgrade。
如需详细了解具体错误,请查看命令返回的封装错误。
E000039:引导集群互联网故障
我们无法通过以下命令验证引导集群的互联网连接:
docker exec bmctl-control-plane curl https://oauth2.googleapis.com/$discovery/rest
如需详细了解具体错误,请查看命令返回的封装错误。
E000040:无法从 Kubeconfig 文件创建 REST 配置
我们无法从 kubeconfig 文件创建 REST 配置。 需要 REST 配置来建立与 Kubernetes API 服务器的通信方式。
确保所提供的 kubeconfig 文件存在且有效。
如需详细了解具体错误,请查看命令返回的封装错误。
E000041:引导集群依赖项安装失败
我们无法将所有必需的资源应用于引导集群。
如需详细了解具体错误,请查看命令返回的封装错误。
E000042:引导集群外部清单安装失败
我们无法安装通过标志 --addon-manager-manifests-path
指定的目录中的清单。
确保所提供的清单目录存在且有效。
如需详细了解具体错误,请查看命令返回的封装错误。
E000043:无法提取清单文件
我们无法成功提取清单文件。
清单文件应提取到 .manifests
目录中,该目录是在调用 bmctl 命令时创建的。
确保 bmctl
命令具有在系统上创建目录和文件的必要权限,并且 .manifests
目录已成功创建。
如需详细了解具体错误,请查看命令返回的封装错误。
E000044:无法创建 Kubernetes 客户端
我们无法使用提供的 kubeconfig 文件为您的集群创建 Kubernetes 客户端。
确保 kubeconfig 文件存在且有效。
如需详细了解具体错误,请查看命令返回的封装错误。
E000045:无法加载集群清单配置文件
加载过程会将配置文件中的条目转换为 KusBuild,并使用集群自定义资源中的值设置参数。配置文件位置由清单的根目录、配置文件名称和环境决定。
如需详细了解具体错误,请查看命令返回的封装错误。
E000046:无法设置 Workload Identity
我们无法成功为您的项目设置工作负载身份。
如需详细了解具体错误,请查看命令返回的封装错误。
E000047:无法创建或更新调试选项
我们无法根据提供给 bmctl
命令的标志和集群配置文件的顶部部分在引导集群中创建或更新调试选项 ConfigMap。
此 ConfigMap 对于调试目的而言是必需的,并且包含相关配置数据。
如需详细了解具体错误,请查看命令返回的封装错误。
E000048:无法创建使用情况服务
我们无法创建服务使用情况。此服务对于访问 Google Cloud 服务使用情况 API 至关重要,而这些 API 对于验证是否已启用必需的 API 等任务是必需的。
如需详细了解具体错误,请查看命令返回的封装错误。
E000049:API 启用检查失败
这表示在执行 API 启用检查时出错。这样可确保您的项目中已启用所有必需的 API,请参阅 https://cloud.google.com/anthos/clusters/docs/bare-metal/latest/installing/configure-sa。
如需绕过 API 启用状态检查失败问题,请使用标志 --skip-api-check
。
如需详细了解具体错误,请查看命令返回的封装错误。
E000050:无法执行对象操作
这表示在对 Kubernetes 或自定义对象执行 Get、Patch、List、Update、Delete 或 Apply 操作时发生了错误。
确保 Kubernetes 集群可访问,并且 API 服务器响应正常。
如需详细了解具体错误,请查看命令返回的封装错误。
E000051:无法序列化对象
无法将对象编组为 YAML 格式。
如需详细了解具体错误,请查看命令返回的封装错误。
E000052:无法从服务账号生成 Secret
我们无法根据集群配置文件中 gkeRegisterServiceAccountKey
下指定的服务账号密钥路径生成要存储在命名空间 gke-register
中的 Secret gkeRegisterServiceAccountKey
。
确保指定的密钥文件存在。
如需详细了解具体错误,请查看命令返回的封装错误。
E000053:无法读取集群配置文件
我们无法读取您的集群配置文件。
确保集群配置文件存在,并且 bmctl
命令具有访问该文件的必要权限。
如需详细了解具体错误,请查看命令返回的封装错误。
E000054:无法应用预检依赖项资源
我们无法成功应用预检命令依赖项。
如需详细了解具体错误,请查看命令返回的封装错误。
E000055:Google Cloud 预检失败
Google Cloud 预检检查失败。如需了解详情,请查看预检检查资源。
检查预检检查资源:
kubectl describe preflightcheck -A
如需绕过 Google Cloud 预检检查失败,请使用标志 --bypass-gcp-preflight-errors
和 --force
。
如需详细了解具体错误,请查看命令返回的封装错误。
E000056:预检检查失败
预检检查失败。如需了解详情,请查看预检检查资源。
检查预检检查资源:
kubectl describe preflightcheck -A
如需绕过预检检查失败,请使用标志 --force
。
如需详细了解具体错误,请查看命令返回的封装错误。
E000057:无法验证预检检查状态
我们无法成功验证预检检查资源的状态。
如需了解详情,请查看预检检查资源:
kubectl describe preflightcheck -A
如需详细了解具体错误,请查看命令返回的封装错误。
E000058:kubeconfig Secret 未就绪
这表示在读取 kubeconfig secret 或等待其准备就绪时发生了错误。
确保 Secret <CLUSTER_NAME>-kubeconfig
存在于引导集群的集群命名空间中,且路径 .data
不为空。
如需详细了解具体错误,请查看命令返回的封装错误。
E000059:无法写入 Kubeconfig 文件
我们无法成功将 kubeconfig 文件写入到路径 bmctl-workspace/<CLUSTER_NAME>/<CLUSTER_NAME>-kubeconfig
。
确保 bmctl
命令具有写入 kubeconfig 文件目录的必要权限。
您可以尝试运行 bmctl reset
命令,然后再次尝试创建集群,以解决此问题。
如需详细了解具体错误,请查看命令返回的封装错误。
E000060:集群未就绪
这表示在等待集群准备就绪时发生了错误。
如需了解详情,请检查集群的状态:
kubectl describe cluster <CLUSTER_NAME> -A
如需详细了解具体错误,请查看命令返回的封装错误。
E000061:NodePool 尚未准备就绪
这表示在等待节点池准备就绪时发生了错误。
检查节点池的状态:
kubectl describe nodepool -A
如需详细了解具体错误,请查看命令返回的封装错误。
E000062:SecretForwarder 未就绪
这表示在等待 SecretForwarder 准备就绪时发生了错误。
检查 SecretForwarder 的状态:
kubectl describe secretforwarder -A
如需详细了解具体错误,请查看命令返回的封装错误。
E000063:无法将非结构化对象转换为具体类型
我们无法将非结构化对象转换为具体类型。
如需详细了解具体错误,请查看命令返回的封装错误。
E000064:集群 API 提供程序安装失败
我们无法验证管理员集群中集群 API 提供商的安装情况。
如需进行问题排查,请登录引导集群并检查 lifecycle-controllers-deployer
作业和 lifecycle-controller-manager
pod 日志。
如需详细了解具体错误,请查看命令返回的封装错误。
E000065:无法透视
我们无法成功将资源从引导集群转换到实际集群。
如需详细了解具体错误,请查看命令返回的封装错误。
E000066:无法应用资源
表示应用资源时出错。 此资源可能是集群配置文件中指定的客户资源。
确保每个客户指定的资源都具有正确的格式且有效。
如需详细了解具体错误,请查看命令返回的封装错误。
E000067:无法创建命令
我们无法创建带有指定标志的占位命令,以供 bmctl
内部命令使用。
如需详细了解具体错误,请查看命令返回的封装错误。
E000068:无法检索 GKE 版本
我们无法根据集群配置文件中通过 spec.anthosBareMetalVersion
指定的集群版本检索 GKE 版本。
如需详细了解具体错误,请查看命令返回的封装错误。
E000069:集群已是目标版本
这表示集群已达到目标版本。确保集群配置文件中 spec.anthosBareMetalVersion
下指定的版本高于当前集群版本,然后重试。
E000070:集群和 NodePool 已达到目标版本
这表示集群及其节点池已达到目标版本。确保集群配置文件中 spec.anthosBareMetalVersion
下指定的版本高于当前版本,然后重试。
E000071:CIDR 中的 IP 地址不足
这表示启动集群 pod CIDR 范围没有足够的 IP 地址来容纳节点。
请务必使用标志 --bootstrap-cluster-pod-cidr
提供一个具有足够 IP 地址的 CIDR 范围,以供节点使用。
如需详细了解具体错误,请查看命令返回的封装错误。
E000072:预览版功能升级政策验证失败
我们无法验证集群中指定的受支持的已启用预览版功能是否满足升级要求。
如需详细了解具体错误,请查看命令返回的封装错误。
E000073:无法将引导集群注册到 GKE Connect 成员资格
我们无法将引导集群注册到 GKE Hub 会员资格。
确保在 Google Cloud 控制台 -> Kubernetes Engine -> 项目中的集群中,没有为您的引导集群名称(默认选择或通过标志 --bootstrap-cluster
提供)设置现有的 GKE 连接成员资格。
如果已存在具有相应集群名称的成员资格,请执行以下操作之一:
- 使用标志
--bootstrap-cluster
提供其他名称 从 Google Cloud 控制台中取消注册现有集群,或运行以下命令:
gcloud container hub memberships unregister <CLUSTER_NAME>
如需详细了解具体错误,请查看命令返回的封装错误。
E000074:无法通过服务账号创建 Secret
我们无法使用集群配置文件中指定的服务账号文件创建 Secret。
确保文件存在且可访问。
如需详细了解具体错误,请查看命令返回的封装错误。
E000075:无法检索 GKE Hub 网址
我们无法提取 GKE Hub 端点网址。GKE Hub 端点是用于 GKE Hub API 请求的网址端点。
如需详细了解具体错误,请查看命令返回的封装错误。
E000076:升级未完成
等待升级成功完成时出错。只有当集群和节点池都达到目标版本时,才能确定升级已完成。
检查节点池和集群的状态:
kubectl describe nodepool -n <NAMESPACE> --kubeconfig <KUBECONFIG_FILE>
kubectl describe cluster -n <NAMESPACE> --kubeconfig <KUBECONFIG_FILE>
如需详细了解具体错误,请查看命令返回的封装错误。
E000077:无法创建 Workload Identity Stackdriver Secret
我们无法创建工作负载身份 Stackdriver Secret。
如需详细了解具体错误,请查看命令返回的封装错误。
E000078:无法提升节点池版本
我们无法将 NodePool 资源当前版本提升到目标版本。
如需详细了解具体错误,请查看命令返回的封装错误。
E000079:无法提升集群版本
我们无法将集群资源当前版本提升到目标版本。
确保目标版本高于当前版本且有效。
如需详细了解具体错误,请查看命令返回的封装错误。
E000080:无法更新 kubeconfig Secret
我们无法更新集群的 kubeconfig Secret。
如需详细了解具体错误,请查看命令返回的封装错误。
E000081:缺少密钥
这表示相应 Secret 资源不包含特定密钥。
如需详细了解具体错误,请查看命令返回的错误。
E000082:无法打印升级结果
无法输出集群升级结果。
检查未能成功升级的任何节点的 BaremetalMachine
资源:
kubectl describe baremetalmachines -n <NAMESPACE> --kubeconfig <KUBECONFIG_FILE>
如需详细了解具体错误,请查看命令返回的封装错误。
E000083:缺少 GKEConnect 规范
集群配置中未指定 GKEConnect 规范。
确保集群配置文件中提供了 spec.gkeConnect
字段。
E000084:无法创建连接代理连接检查
我们无法创建新的 Connect Agent 连接检查。
如需详细了解具体错误,请查看命令返回的错误。
E000085:Connect Agent 连接检查失败
执行 Connect Agent 连接性检查时出错。
如需详细了解具体错误,请查看命令返回的错误。
E000086:无法检索具有组版本种类的自定义资源
这表示在使用 GroupVersionKind 检索自定义资源时出错。
如需详细了解具体错误,请查看命令返回的封装错误。
E000087:无法从私有注册表构建私有注册表配置
我们无法根据集群配置文件中 privateRegistries
下指定的集群凭据设置来构建注册表配置。
确保集群配置文件中 privateRegistries
下提供的配置有效,然后重试。
如需详细了解具体错误,请查看命令返回的封装错误。
E000088:无法从注册表镜像构建私有注册表配置
我们无法根据集群配置文件中 registryMirrors
下指定的集群凭据设置来构建注册表配置。
确保集群配置文件中 registryMirrors
下提供的配置有效,然后重试。
如需详细了解具体错误,请查看命令返回的封装错误。
E000089:无法更新节点访问权限
这表示更新节点访问权限时出错。
如需详细了解具体错误,请查看命令返回的封装错误。
E000090:无法在 bmctl 更新中计算差异
这表示在执行 bmctl update
命令期间,计算 YAML 集群配置文件与集群中的实时配置之间的差异时出错。
作为一种解决方法,您可以运行 bmctl get config
以获取集群中的实时配置,然后在 bmctl
之外手动执行与 YAML 集群配置文件的差异比较。
如需详细了解具体错误,请查看命令返回的封装错误。
E000091:控制台提示的输入无效
向控制台提示提供的输入无效。
输入 yes
或 no
。
如需详细了解具体错误,请查看命令返回的封装错误。
E000092:未能创建集群专用命名空间
作为创建集群的第一步,我们创建了特定于新集群的命名空间。新集群的几乎所有资源都存储在此命名空间中。
此错误表示尝试确保存在此类特定于集群的命名空间(通过创建新命名空间或仅检查其是否存在)失败。
如需详细了解具体错误,请查看命令返回的封装错误。
E300000:检测到孤立容器
这表示我们已通过 Node Problem Detector 检测到节点上的孤立容器。
孤立容器是指不再主动运行或发挥作用,但仍处于部分清理或不一致状态的容器进程。
如需查看完整日志,请在相关节点上执行以下命令:
journalctl -u node-problem-detector
使用错误消息中孤立容器的详细信息检索容器 ID。
使用以下命令从节点中移除孤立容器:
crictl stop <container-id>
crictl rm <container-id>
如果上述命令无法移除孤立容器,则需要停止每个容器的进程。 您可以使用以下命令检索每个容器的进程 ID 或 PID,并停止相应容器。
crictl inspect <container-id> | grep pid
kill -9 <pid>
后续步骤
如果您已按照纠正措施指南操作,但错误仍然存在,请与技术支持团队联系。
如需详细了解如何排查集群问题,请参阅以下资源:
Google Distributed Cloud
Google Distributed Cloud