使用 ACP CLI 入门
目录
关于 ACP CLI
通过 ACP CLI(ac),您可以从终端管理 ACP 平台和集群。ACP CLI 提供类似 kubectl 的体验,针对 ACP 的集中式、基于代理的多集群架构进行了优化。
ACP CLI 适用于以下场景:
- 通过统一界面管理 ACP 平台和多个集群
- 直接操作项目源代码,编写 ACP 平台操作脚本并自动化工作流
- 在带宽受限且无法使用 Web 控制台时管理项目
- 管理不同 ACP 环境(生产、预发布、开发)中的应用
安装
从二进制文件安装
您可以通过下载适合您操作系统的二进制文件来安装 ACP CLI(ac)。
请按照以下步骤下载正确的软件包:
- 在浏览器中打开 Alauda Cloud 下载页面。
- 选择 CLI Tools 进入 CLI 下载页面。
- 找到 ACP CLI (ac) 部分。
- 下载与您的操作系统和 CPU 架构匹配的二进制文件(例如,
ac-linux-amd64)。
在 Linux 上安装 ACP CLI
- 按上述步骤完成下载 Linux 版本二进制文件(例如,
ac-linux-amd64 或 ac-linux-arm64)。
- 赋予二进制文件可执行权限:
将
ac-linux-amd64 替换为您下载的文件名。
- 将二进制文件移动到 PATH 中并重命名为
ac:
sudo mv ac-linux-amd64 /usr/local/bin/ac
如果下载了其他版本,请相应调整文件名。
- 验证安装:
在 macOS 上安装 ACP CLI
- 按上述步骤完成下载 macOS 版本二进制文件(例如,
ac-darwin-amd64 或 ac-darwin-arm64)。
- 赋予二进制文件可执行权限:
将
ac-darwin-amd64 替换为您下载的文件名。
- 将二进制文件移动到 PATH 中并重命名为
ac:
sudo mv ac-darwin-amd64 /usr/local/bin/ac
如果下载了其他版本,请相应调整文件名。
- 验证安装:
在 Windows 上安装 ACP CLI
- 按上述步骤完成下载 Windows 版本二进制文件(例如,
ac-windows-amd64.exe)。
- 将
ac-windows-amd64.exe 移动到 PATH 中的某个目录,并根据需要重命名为 ac.exe。
如果不想重命名,请确保该文件所在目录已包含在 PATH 中。
- 验证安装:
初始步骤
登录 ACP 平台
ac login 命令是连接 ACP 平台的入口。它负责身份验证并自动配置对所有可用集群的访问。
交互式登录
为了获得最简单的体验,运行 ac login 不带参数,并按照交互提示操作:
$ ac login
Platform URL: https://prod.acp.com
Session name: prod
Username: user@example.com
Password: [hidden]
✔ Login successful. Welcome, user@example.com!
Your kubeconfig has been configured for the 'prod' platform.
+ Default context 'prod/global' has been created and activated.
To switch clusters within this session, use:
ac config use-cluster <cluster_name>
To switch between platforms, use:
ac config get-sessions # Discover all configured sessions
ac config use-session <name> # Switch to different platform
使用参数登录
您也可以直接提供参数登录:
ac login https://prod.acp.com --name prod --username user@example.com
使用环境变量登录
用于自动化和脚本时,可以使用环境变量:
export AC_LOGIN_PLATFORM_URL=https://prod.acp.com
export AC_LOGIN_SESSION=prod
export AC_LOGIN_USERNAME=user@example.com
export AC_LOGIN_PASSWORD=your-password
ac login
快速配置管理
登录后,ACP CLI 提供便捷的命令以支持日常操作:
查看当前状态
使用 ac namespace 查看当前操作上下文:
$ ac namespace
You are currently in namespace "default" (no namespace set in context).
Context: prod/global
Cluster: acp:prod:global
Server: https://acp.prod.example.com/kubernetes/global/
切换集群
在当前会话中切换集群:
$ ac config use-cluster workload-a
Switched to context "prod/workload-a".
$ ac config use-cluster global
Switched to context "prod/global".
切换命名空间
更改当前使用的命名空间:
$ ac namespace my-app-dev
Now using namespace "my-app-dev" in context "prod/global".
基础资源操作
使用标准 kubectl 命令管理资源:
# 列出当前命名空间中的 pods
$ ac get pods
# 查看指定 pod 的详细信息
$ ac describe pod my-pod
# 获取所有命名空间中的服务
$ ac get services --all-namespaces
# 应用配置文件
$ ac apply -f deployment.yaml
管理多个环境
对于同时使用多个 ACP 平台的用户:
列出所有已配置的会话:
$ ac config get-sessions
CURRENT SESSION PLATFORM USER CLUSTERS
* prod https://acp.prod.example.com user@example.com 3
staging https://staging.acp.example.com user@example.com 2
切换平台:
$ ac config use-session staging
Switched to session "staging".
Context "staging/global" activated.
您的第一个应用
让我们创建并查看一个简单的应用,以验证一切正常:
创建一个简单的 Pod
-
创建一个基础 Pod 配置:
cat > test-pod.yaml << EOF
apiVersion: v1
kind: Pod
metadata:
name: test-pod
labels:
app: test
spec:
containers:
- name: nginx
image: nginx:1.20
ports:
- containerPort: 80
EOF
-
应用该配置:
$ ac apply -f test-pod.yaml
pod/test-pod created
查看应用状态
-
列出 pods 以查看您的应用:
$ ac get pods
NAME READY STATUS RESTARTS AGE
test-pod 1/1 Running 0 30s
-
获取 pod 的详细信息:
$ ac describe pod test-pod
-
查看 pod 日志:
清理
完成后删除测试 pod:
ac delete -f test-pod.yaml
获取帮助
内置帮助系统
ACP CLI 在多个层级提供全面的帮助:
通用帮助
获取所有可用命令的概览:
命令特定帮助
获取任意命令的详细帮助:
ac login --help
ac config --help
ac get --help
资源文档
获取 Kubernetes 资源的信息:
ac explain pod
ac explain deployment
ac explain service
登出
完成工作或需要切换凭据时,使用登出命令:
$ ac logout
✔ Successfully logged out from 'prod' platform.
All session configurations have been removed.
To reconnect, run: ac login https://prod.acp.com --name prod
登出命令将:
- 从本地配置中移除身份验证令牌
- 清理该会话的所有集群和上下文条目
- 撤销 ACP 中当前使用的令牌
- 确保不会留下孤立的配置项