ccictl配置指南
云容器实例支持使用定制的ccictl来创建负载等资源。
安装并设置ccictl
以下操作以Linux环境为例。
- 将下载ccictl中下载的ccictl赋予可执行权限,并放到PATH目录下。
#chmod +x ./ccictl #mv ./ccictl $PATH
其中,$PATH为PATH路径(如/usr/local/bin),请替换为实际的值。
您还可以通过如下命令查看ccictl的版本,如下所示。
#ccictl version #Client Version: version.Info{GitVersion:"v0.0.2", GitCommit:"996a2efcd852473dde345ae2931833342cab1d96", BuildDate:"2025-03-24T00:32:05Z", GoVersion:"go1.19.6", Compiler:"gc", Platform:"linux/amd64"}
- 配置IAM认证信息并持久化到本地。
- 指定CCI集群:
ccictl config set-cluster <$context-cluster-name> --server=https://<$cci-endpoint>
- $context-cluster-name:集群名称,要用户可自定义。
- $cci-endpoint:CCI的Endpoint,不同区域的终端节点不同,详情请参考获取云容器实例Endpoint。
示例:
#ccictl config set-cluster cci-cluster --server=https://cci.cn-north-4.myhuaweicloud.com #Cluster "cci-cluster" set.
- 设置ccictl使用的用户凭证:
ccictl config set-credentials <$user> --auth-provider=iam --auth-provider-arg=iam-endpoint=https://<$iam-endpoint> --auth-provider-arg=cache="true" --auth-provider-arg=project-name=<$project-name> --auth-provider-arg=user-name=<$user-name> --auth-provider-arg=domain-name=<$domain-name> --auth-provider-arg=password=<$password>
或
ccictl config set-credentials <$user> --auth-provider=iam --auth-provider-arg=iam-endpoint=https://<$iam-endpoint> --auth-provider-arg=cache="true" --auth-provider-arg=project-name=<$project-name> --auth-provider-arg=ak=<$ak> --auth-provider-arg=sk=<$sk>
表2 用户名/密码配置 Command Flag
Description
domain-name
租户名,即账号名。
user-name
子用户名,即IAM用户名。
password
用户或子用户密码。
表3 AK/SK配置 Command Flag
Description
ak
ak、sk的获取方法请参见获取AK/SK,ak为文件中Access Key部分,sk为文件中Secret Key部分。
sk
表4 公共配置 Command Flag
Description
context-user-name
用户名,即配置的上下文用户名,用户可自定义。
iam-endpoint
IAM的Endpoint,必须配置,详情请参见地区和终端节点。
project-name
项目名,详情请参见从控制台获取项目ID。
cache
是否开启将IAM Token缓存到本地,提高访问性能,默认为true。
注意:在非安全环境,建议关闭此选项。
示例:
#ccictl config set-credentials cci-user --auth-provider=iam --auth-provider-arg=iam-endpoint=https://iam.cn-north-4.myhuaweicloud.com --auth-provider-arg=cache="true" --auth-provider-arg=project-name=cn-north-4 --auth-provider-arg=ak=ak****** --auth-provider-arg=sk=sk****** #User "cci-user" set.
- 设置和使用ccictl的上下文:
ccictl config set-context <$context-name> --cluster=<$context-cluster-name> --user=<$context-user-name>
- $context-name:上下文名称,用户可自定义。
- $context-cluster-name:前文配置的集群名称。
- $context-user-name:前文配置的用户名。
示例:
#ccictl config set-context cci-context1 --cluster=cci-cluster --user=cci-user #Context "cci-context1" created.
使用ccictl的上下文。
ccictl config use-context <$context-name>
示例:
#ccictl config use-context cci-context1 #Switched to context "cci-context1".
- 指定CCI集群:
- 配置完成后,即可通过ccictl命令操作云容器实例的相关资源。
例如,执行ccictl get namespace,查看namespace资源。
#ccictl get namespace #No resources found.
非安全环境配置ccictl
- 参照上述安装并设置ccictl。
- 编辑config文件,删除敏感信息参数。
Linux系统,config文件默认位于$HOME/.kubev2/config。
表5 删除敏感信息参数 Command Flag
Environment Value
Description
--domain-name
DOMAIN_NAME
租户名
--user-name
USER_NAME
子用户名
--password
PASSWORD
用户密码
--ak
ACCESS_KEY_ID
Access Key
--sk
SECRET_ACCESS_KEY
Secret Key
--cache
CREDENTIAL_CACHE
是否开启缓存Token
- 配置删除参数相应的环境变量来使用ccictl,以AK/SK为例。
#export ACCESS_KEY_ID=xxxxxxx #export SECRET_ACCESS_KEY=xxxxxxx #export CREDENTIAL_CACHE=false #ccictl get ns
执行上述命令后,提示如下类似信息:
#No resources found.
获取AK/SK
AK(Access Key ID):访问密钥ID。与私有访问密钥关联的唯一标识符;访问密钥ID和私有访问密钥一起使用,对请求进行加密签名。
SK(Secret Access Key):与访问密钥ID结合使用的密钥,对请求进行加密签名,可标识发送方,并防止请求被修改。
- 登录管理控制台。
- 单击用户名,在下拉列表中单击“我的凭证”。
- 在“我的凭证”页面,单击“访问密钥”页签。
- 单击“新增访问密钥”,输入验证码。
- 单击“确定”,生成并下载访问密钥。
为防止访问密钥泄露,建议您将其保存到安全的位置。
获取云容器实例Endpoint
终端节点(Endpoint)即调用API的请求地址,不同服务不同区域的终端节点不同,您可以从地区和终端节点查询服务的终端节点。
区域名称 |
区域 |
终端节点(Endpoint) |
---|---|---|
华北-北京四 |
cn-north-4 |
cci.cn-north-4.myhuaweicloud.com |
华东-上海一 |
cn-east-3 |
cci.cn-east-3.myhuaweicloud.com |
华南-广州 |
cn-south-1 |
cci.cn-south-1.myhuaweicloud.com |
西南-贵阳一 |
cn-southwest-2 |
cci.cn-southwest-2.myhuaweicloud.com |