AC CLI 管理员命令参考

本参考提供了 AC CLI 管理员命令的描述和示例命令。您必须具有 cluster-admin 或等效权限才能使用这些命令。

有关开发人员命令,请参见 AC CLI 开发人员命令参考。

运行 ac adm -h 可列出所有管理员命令,或运行 ac <command> --help 获取特定命令的详细信息。

目录

ac adm

ACP 集群管理的管理工具

示例用法

# 排空节点以进行维护
ac adm drain NODE_NAME

# 标记节点为不可调度
ac adm cordon NODE_NAME

# new-project 用于在集群中创建项目
ac adm new-project --cluster CLUSTER_NAME

# 取消标记节点为不可调度(标记为可调度)
ac adm uncordon NODE_NAME

ac adm certificate

修改证书资源

ac adm certificate approve

批准证书签名请求

示例用法

# 批准 CSR 'csr-sqgzp'
ac adm certificate approve csr-sqgzp

ac adm certificate deny

拒绝证书签名请求

示例用法

# 拒绝 CSR 'csr-sqgzp'
ac adm certificate deny csr-sqgzp

ac adm cordon

将节点标记为不可调度

示例用法

# 将节点 "foo" 标记为不可调度
ac adm cordon foo

ac adm drain

排空节点以准备维护

示例用法

# 排空节点 "foo",即使其上有不受 replication controller、replica set、job、daemon set 或 stateful set 管理的 Pod
ac adm drain foo --force

# 同上,但如果存在不受上述控制器管理的 Pod 则中止,并使用 15 分钟的宽限期
ac adm drain foo --grace-period=900

ac adm new-project

创建新项目

示例用法

# 在指定集群中创建项目
ac adm new-project my-project --cluster cluster1

# 在多个集群中创建项目
ac adm new-project my-project --cluster cluster1,cluster2

ac adm new-project-namespace

在项目中创建新命名空间

示例用法

# 在指定集群的项目中创建命名空间
ac adm new-project-namespace  my-namespace --project my-project --cluster cluster1

ac adm policy

管理项目或命名空间的 RBAC 策略

示例用法

# 将用户分配到项目中的管理员角色
ac adm policy add-project-role-to-user project-admin-system alice --project my-project

# 将用户分配到项目中特定集群命名空间的命名空间角色
ac adm policy add-namespace-role-to-user namespace-developer-system alice --namespace my-namespace --project my-project --cluster business-1

# 给用户 alice 添加 kubernetes 集群角色 view
ac adm policy add-cluster-role-to-user view alice

# 给用户 alice 添加 kubernetes 角色 view(指定命名空间)
ac adm policy add-role-to-user view alice -n my-namespace

ac adm policy add-cluster-role-to-user

将 kubernetes 集群角色分配给当前上下文集群中的用户

示例用法

# 给用户 alice 添加 kubernetes 集群角色 view
ac adm policy add-cluster-role-to-user view alice

ac adm policy add-namespace-role-to-user

将平台角色分配给项目中特定集群命名空间的用户

示例用法

# 将 namespace-developer-system 角色分配给项目 my-project 中的用户 alice
ac adm policy add-namespace-role-to-user namespace-developer-system alice --namespace my-namespace --project my-project --cluster business-1

ac adm policy add-project-role-to-user

将平台角色分配给项目中的用户

示例用法

# 将 project-admin-system 角色分配给项目 my-project 中的用户 alice
ac adm policy add-project-role-to-user project-admin-system alice --project my-project

ac adm policy add-role-to-user

将 kubernetes 角色分配给当前上下文集群中的用户

示例用法

# 给用户 alice 添加 kubernetes 角色 view
ac adm policy add-role-to-user view alice -n my-namespace

ac adm taint

更新一个或多个节点上的污点

示例用法

# 给节点 'foo' 添加一个键为 'dedicated',值为 'special-user',效果为 'NoSchedule' 的污点
# 如果已有相同键和效果的污点,则替换其值
ac adm taint nodes foo dedicated=special-user:NoSchedule

# 如果存在,移除节点 'foo' 上键为 'dedicated',效果为 'NoSchedule' 的污点
ac adm taint nodes foo dedicated:NoSchedule-

# 移除节点 'foo' 上所有键为 'dedicated' 的污点
ac adm taint nodes foo dedicated-

# 给带有标签 myLabel=X 的节点添加键为 'dedicated',效果为 'PreferNoSchedule' 的污点
ac adm taint node -l myLabel=X  dedicated=foo:PreferNoSchedule

# 给节点 'foo' 添加一个键为 'bar',无值的污点,效果为 'NoSchedule'
ac adm taint nodes foo bar:NoSchedule

ac adm uncordon

将节点标记为可调度

示例用法

# 将节点 "foo" 标记为可调度
ac adm uncordon foo