安装
- 开通 ECS 服务器
服务器镜像,建议选择 Alibaba Cloud Linux、CentOS、Ubuntu 或 Anolis OS
- 安装 os-copilot
如果是 Alibaba Cloud Linux/CentOS,执行以下命令安装 os-copilot:
1 | sudo yum install -y os-copilot |
如果是 Ubuntu:
curl -#S https://mirrors.aliyun.com/os-copilot/os-copilot-all-in-one-latest.sh | bash
配置
1.配置 RAM 用户
由于需要使用 AK,SK, 这里先添加 RAM 用户
打开 https://ram.console.aliyun.com/users,点击创建用户,填写登录名称,访问方式勾选 使用永久 AccessKey 访问
,点击确定。
复制 AccessKey,AccessSecret,后面会用到。
2.分配权限
点击用户名称,在标签栏处,点击权限管理,新增授权
,在权限策略处,搜索 “AliyunSysOMOSCopilotAccess”,然后勾选,点击 “确认新增授权”
这样,RAM 用户就拥有了 os-copilot 的权限。
3.在命令行中配置 AK,SK
让我们回到服务器的命令行,执行以下命令:
1 | export ALIBABA_CLOUD_ACCESS_KEY_ID=<AccessKey ID> |
将
测试
1.使用普通模式
1 | copilot 当前服务器的健康度 |
输出以下内容1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53[root@moguyun ~]# copilot 当前服务器的健康度
[Copilot]:
要检查当前服务器的健康度,可以执行以下几个步骤来获取相关信息:
1 检查CPU使用率: 使用 top 命令可以查看当前系统的CPU使用情况。
top -b -n 1
2 检查内存使用情况: 使用 free 命令可以查看内存使用情况。
free -h
3 检查磁盘使用情况: 使用 df 命令可以查看磁盘空间使用情况。
df -h
4 检查网络连接状态: 使用 netstat 命令可以查看网络连接状态。
netstat -tuln
5 检查系统负载: 使用 uptime 命令可以查看系统的平均负载。
uptime
6 检查系统日志: 使用 journalctl 命令可以查看系统日志,帮助发现潜在的问题。
journalctl -xe
7 检查服务状态: 使用 systemctl 命令可以查看系统服务的状态。
systemctl list-units --type=service --state=failed
通过以上命令,你可以全面了解服务器的健康状况。如果有任何异常,可以根据输出的信息进一步排查问题。
[Copilot]发现如下命令:
1. top -b -n 1
2. free -h
3. df -h
4. netstat -tuln
5. uptime
6. journalctl -xe
7. systemctl list-units --type=service --state=failed
[Copilot]: 请选择要执行的命令或者保存所有命令,从[s, 1, 7]中进行选择,回复's'或'save'进行保存,回复'n'或'no'进行取消,回复'r'或'retry'重新生成回答。
请输入: 1
[Copilot]: 确认执行该命令[top -b -n 1]?(y/n)
请输入: y
top - 15:53:04 up 94 days, 22:14, 1 user, load average: 0.01, 0.02, 0.00
Tasks: 224 total, 1 running, 220 sleeping, 0 stopped, 3 zombie
%Cpu(s): 3.1 us, 3.1 sy, 0.0 ni, 93.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
MiB Mem : 3581.4 total, 668.4 free, 1285.0 used, 1628.1 buff/cache
MiB Swap: 0.0 total, 0.0 free, 0.0 used. 1834.3 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3216368 root 20 0 0 0 0 I 6.7 0.0 0:01.06 kworker+
1 root 20 0 169548 6352 3068 S 0.0 0.2 1:40.93 systemd
4 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 rcu_par+
...
3219422 root 20 0 2744 816 708 S 0.0 0.0 0:00.23 copilot
3219423 root 20 0 517300 73980 17776 S 0.0 2.0 0:01.34 copilot
3219447 root 20 0 227204 4668 4020 R 0.0 0.1 0:00.00 top
[Copilot]: 执行结束。
可以看到,这种模式下,Copilot 会根据用户的输入要求,给出对应的建议命令,然后需要手动选择、确认执行。
2.使用自动模式,在命令后面增加参数 -t
1 | copilot 当前服务器的健康度 -t |
输出以下内容
1 | [Copilot]: |
3.使用文件定义任务
新建一个文件,定义需要执行的任务
1 | cat task.txt |
测试结果
copilot 执行任务
1 | co -f ~/task.txt -t |
1 | [Copilot]: |
4.测试解释命令
1 | cat /etc/sysctl.conf |co "使用中文解释" |