文档

探针安装常见问题

更新时间:

本文介绍探针安装和容器服务安装ack-ahas-pilot常见问题。

常见问题

本文介绍了以下常见问题:

AHAS架构感知和故障演练探针limits配置

问题现象

架构感知和故障演练功能需要使用AHAS Agent探针,AHAS Agent以Daemonset方式部署在每个节点上,默认的资源配置如下:

resources:
  requests:
    # resources.requests.cpu: cpu request
    cpu: 0.1
    # resources.requests.memory: memory request
    memory: 200Mi
  limits:
    # resources.limits.cpu: cpu limit
    cpu: 0.2
    # resources.limits.memory: memory limit
    memory: 360Mi

由于AHAS Agent占用的资源取决于节点上的Pods、进程、网络连接数等,所以在安装AHAS Agent时需要根据节点CPU和内存大小修改Agent limits资源配置。

解决方案

AHAS Agent的limits配置规则如下:

  • CPU limits配置:
    • CPU≤8 Core,采用默认配置。
    • CPU>8 Core,采用Core(核数)/40=CPU limits配置,例如节点CPU总核数是16,则CPU limits配置=16/40=0.4。
  • Memory limits配置:
    • 节点内存Memory≤16 G,采用默认配置。
    • 节点内存Memory>16 G,采用Memory(单位是G)×1024/48=Memory limits配置(单位是Mi)。例如Memory=64 G,则Memory limits配置=64×1024/48=1365 Mi。

综上所述,如果节点配置是12 Core、48 G,则limits配置如下:

resources:
  requests:
    # resources.requests.cpu: cpu request
    cpu: 0.1
    # resources.requests.memory: memory request
    memory: 200Mi
  limits:
    # resources.limits.cpu: cpu limit
    cpu: 0.3
    # resources.limits.memory: memory limit
    memory: 1024Mi

在Kubernetes集群中,常见ECS规格对应的AHAS Agent的资源limits配置建议如下表。

机器配置CPU配置Memory配置

4 vCPU

8 GiB

resources.requests.cpu: 0.1
resources.limits.cpu:0.2
resources.requests.memory:200Mi
resources.limits.memory: 360Mi

4 vCPU

16 GiB

resources.requests.cpu: 0.1
resources.limits.cpu:0.2
resources.requests.memory:200Mi
resources.limits.memory: 360Mi

8 vCPU

16 GiB

resources.requests.cpu: 0.1
resources.limits.cpu:0.2
resources.requests.memory:200Mi
resources.limits.memory: 360Mi

96 vCPU

192 GiB

resources.requests.cpu: 0.1
resources.limits.cpu:2.4
resources.requests.memory:200Mi
resources.limits.memory: 4096Mi

ECS探针安装常见问题

问题现象

探针安装引导页中无法查询到ECS机器。

可能原因
  • 请确认地域选择是否正确。
  • 架构感知探针仅支持VPC网络模式下的Linux机器,Window机器暂不支持。
  • 自动安装模式仅支持ECS中自动安装了云助手的机器,未安装云助手的ECS会执行失败。

容器服务安装ack-ahas-pilot常见问题1

问题现象

安装ack-ahas-pilot时报以下错误。

Can't install release with errors: rpc error: code = Unknown desc = unable to decode ": no kind "CustomResourceDefinition: is registered for version "apiextensions.k8s.io/v1beta1”
问题原因

可能是Helm版本导致的问题,Helm最低要求2.12版本,解决方式是升级Helm版本。

解决方案
  1. 登录到Kubernetes集群Master节点,请参见获取集群KubeConfig并通过kubectl工具连接集群
  2. 执行如下命令,升级Helm的版本。
    helm init --tiller-image registry.cn-hangzhou.aliyuncs.com/acs/tiller:v2.16.3 --upgrade
    说明
    • 镜像地址可使用对应Region的VPC域名,比如杭州区域的机器可以替换为registry-vpc.cn-hangzhou.aliyuncs.com/acs/tiller:v2.16.3
    • 以上操作只升级Helm服务端的版本,客户端可以通过下载对应的Client Binary,请参见下载Helm 2.16.3版本的客户端
  3. Helm客户端和服务端的版本升级完毕后,执行如下命令,确认版本升级成功。
    helm version

    系统显示类似如下,确认Helm的版本为v2.16.3。

    Client: &version.Version{SemVer:"v2.16.3", GitCommit:"2e55dbe1fdb5fdb96b75ff144a339489417b146b", GitTreeState:"clean"}
    Server: &version.Version{SemVer:"v2.16.3", GitCommit:"2e55dbe1fdb5fdb96b75ff144a339489417b146b", GitTreeState:"clean"}

容器服务安装ack-ahas-pilot常见问题2

问题现象

安装ack-ahas-pilot时报以下错误。

Can't install release with errors: rpc error: code = Unknown desc = a release named ahas already exists. Run: helm ls --all ahas; to check the status of the release Or run: helm del --purge ahas; to delete it
问题原因

已安装AHAS。

解决方案

卸载已存在的AHAS,重新执行创建,卸载方式如下。

  1. 登录容器服务管理控制台
  2. 集群列表页面,单击目标集群名称或者目标集群右侧操作列下的详情

  3. 在集群管理页左侧导航栏,选择应用 > Helm
  4. Helm页面单击目标Helm操作列的删除,并在弹出的对话框中单击确定,删除AHAS应用。

容器服务安装ack-ahas-pilot常见问题3

问题现象

安装ack-ahas-pilot时报以下错误。

cannot re-use a name that is still in use
问题原因

已安装AHAS。

解决方案

卸载已存在的AHAS,重新执行创建,卸载方式如下。

  1. 登录容器服务管理控制台
  2. 集群列表页面,单击目标集群名称或者目标集群右侧操作列下的详情

  3. 在集群管理页左侧导航栏,选择应用 > Helm
  4. Helm页面单击目标Helm操作列的删除,并在弹出的对话框中单击确定,删除AHAS应用。

容器服务安装ack-ahas-pilot常见问题4

问题现象

安装ack-ahas-pilot时报以下错误。

Can't install release with errors: rpc error: code = Unknown desc = customresourcedefinitions.apiextensions.k8s.io "chaosblades.chaosblade.io" is forbidden: User "system:serviceaccount:kube-system:default" cannot delete resource "customresourcedefinitions" in API group "apiextensions.k8s.io" at the cluster scope
问题原因

用户集群中的helm server端安装的Tiller没有在具备集群角色(cluster admin)的服务账户的情况下部署,引发此问题。

解决方案
  1. 登录到Kubernetes集群Master节点,请参见获取集群KubeConfig并通过kubectl工具连接集群
  2. 执行以下命令。
    kubectl create serviceaccount --namespace kube-system tiller
    kubectl create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
    kubectl patch deploy --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}'

容器服务安装ack-ahas-pilot常见问题5

问题现象

安装ack-ahas-pilot时报以下错误,无法删除chaosblade 的crd,执行kubectl delete crd chaosblades.chaosblade.io 仍无法删除。

Can't install release with errors: rpc error: code = Unknown desc = object is being deleted: customresourcedefinitions.apiextensions.k8s.io "chaosblades.chaosblade.io" already exists
解决方案
  1. 执行以下命令,删除AHAS Agent CRD资源。
    kubectl delete crd chaosblades.chaosblade.io --kubeconfig XXX
    说明 请替换XXX,如果本地配置了config文件,可以不添加kubeconfig参数。
  2. 若长时间不返回,执行以下命令。
    blades=($(kubectl get blade -n ahas --kubeconfig XXX | grep -v NAME | awk '{print $1}' | tr '\n' ' ')) && kubectl patch blade $blades -n ahas --type merge -p '{"metadata":{"finalizers":[]}}' --kubeconfig XXX

容器服务安装ack-ahas-pilot常见问题6

问题现象

安装ack-ahas-pilot时报以下错误。

Can't install release with errors: rpc error: code = Unknown desc = unable to decode "": no kind "CustomResourceDefinition" is registered for version "apiextensions.k8s.io/v1beta1"
问题原因

可能是Helm版本导致的问题,Helm最低要求2.12版本,解决方式是升级Helm版本。

解决方案
  1. 登录到Kubernetes集群Master节点,请参见获取集群KubeConfig并通过kubectl工具连接集群
  2. 执行如下命令,升级Helm的版本。
    helm init --tiller-image registry.cn-hangzhou.aliyuncs.com/acs/tiller:v2.16.3 --upgrade
    说明
    • 镜像地址可使用对应Region的VPC域名,比如杭州区域的机器可以替换为registry-vpc.cn-hangzhou.aliyuncs.com/acs/tiller:v2.16.3
    • 以上操作只升级Helm服务端的版本,客户端可以通过下载对应的Client Binary,请参见下载Helm 2.16.3版本的客户端
  3. Helm客户端和服务端的版本升级完毕后,执行如下命令,确认版本升级成功。
    helm version

    系统显示类似如下,确认Helm的版本为v2.16.3。

    Client: &version.Version{SemVer:"v2.16.3", GitCommit:"2e55dbe1fdb5fdb96b75ff144a339489417b146b", GitTreeState:"clean"}
    Server: &version.Version{SemVer:"v2.16.3", GitCommit:"2e55dbe1fdb5fdb96b75ff144a339489417b146b", GitTreeState:"clean"}

容器服务安装ack-ahas-pilot常见问题7

问题现象

ack-ahas-pilot安装后,架构感知中无数据或者数据展示不全。

问题原因
  • 部分AHAS Agent安装失败,请在容器服务 > 应用 > 守护进程集中选择AHAS命名空间,查看AHAS Agent是否存在异常。
  • 请调整架构地图中顶部的视图筛选条件,选择合适的过滤条件。
  • 本页导读 (1)
文档反馈