简介:作为一个前端工程师,在往全栈发展。运维方面的知识目前比较困乏。遇到服务器使用会一头雾水。发现阿里提供了OS Copilot操作系统只能助手可以帮助我这种人管理服务器和linux操作系统。通过x-shell链接服务器并通过"rpm -q os-copilot"检查是否安装,没有安装就使用
yum install
安装,可以用户/角色来连接阿里云服务。测试-t
、-f
、|
等命名。还可以帮助我们配置njnix和java的一些基础配置。接下来我们详细介绍。一、安装和配置
1.1 远程链接自己的ECS示例登陆x-shell
1.2 安装 OS-copilot
1.2.1检查是否安装os-copilot
rpm -q os-copilot
1.2.2安装
os-copilot
sudo yum install -y os-copilot
1.2.3如果已安装,则运行如下命令升级到最新版本。
sudo yum update os-copilot
1.3配置
首先配置认证信息。
需要创建RAM认证用户/角色,方式有两种
1.ECS实例角色认证。
2.AK/SK方式认证。
因为我使用的第一种,在这里我使用第一种方式。如果大家想了解第二种可以移步这里
1.3.1创建角色
1.3.2配置授权
1.3.3关联ECS实例角色
完成上诉步骤就可以使用os-copilot了。
二、功能测试和测评
2.1 体验 -t
参数功能
-t
参数可以直接让 OS Copilot
进入 agent
模式,可以调用注册工具,体验上可以快速的给出更加精准的内容。通过演示,展示起高效、精准的结果。
2.1.1使用-t
和不使用-t
运行命令的对比
- 测试内容
co 当前系统健康度 co 当前系统健康度 -t
- 对比示例结果
使用前:
使用-t
后 - 结果与反馈
- 从上两张图结果可知,在未使用
-t
,OS copilot先要判断是否进行大模型判断,这样就会有多余步骤。 - 最后返回系统健康信息,但过程不如指定
-t
参数时直接和工具交互。 - 使用
-t
就会直接进入agent
模式后,OS copilot会自动调用注册工具来检查系统健康度。 - 返回结果比不加
-t
更加直接、交互更便捷。
2.1.2 使用体验总结
- 优点
- 使用
-t
后,可避免大模型推断的过程,节省时间成本。 - 更自动化,对我这种linux只是困乏的开发人员来说减少了学习成本或确认的步骤。
- 使用
- 缺点
- 如果目标不太明确的前提下,可能先要去跟大模型确定目标。
-t
的强制进入agent
模式可能不适合初次使用者。
- 如果目标不太明确的前提下,可能先要去跟大模型确定目标。
- 个人体验总结
- 从使用体验来说确实起到了交互便捷、回复结果精准。在目的性比较明确的前提下或验证脚本功能时非常便利。
2.2 体验 -f
参数功能
-f
参数可以从文件中读取复杂且多条task任务执行,非常适合批量处理场景。
2.2.1 测试内容
- 操作步骤
- 已
/opt
目录为例,编写一系列任务命令存储到task文件中:
- 已
cd /opt
echo "测试一下当前路径" > action.log
echo $(pwd) >>action.log
- 将多条命令写入
task
文件(可根据自己需求定义更多命令)
2.2.2 使用-f
参数执行任务文件
- 执行:
co -f action.log -t
-f
表示从文件读取命令,-t
可以一步指定agent
模式。
OS copilot可以一次性执行多条task中的指令,自动将输出或执行结果记录在相应(如我们这边测试结果action.log)中。所以对于多行、多步骤命令而言,大大减少我们重复输入工作量,对自动化配置有很大帮助。
2.2.3 个人体验总结
- 优点
- 对于平时重复且一致的任务,可以编写多条指令的task,大大减少重复操作。
- 适合处理复杂、多步骤的批量任务。
- 个人体验反馈
-f
对于不太变化重复的任务,集中批量执行十分友好。既可以做简单任务,也可以做复杂任务
2.3 体验通道 |
参数功能
2.3.1 使用通道命令解释配置文件
- 操作步骤
cat /etc/systl.conf | co 解释下这些参数的含义
- 先使用
cat
命令输出/etc/sysctl.conf
的内容,再使用通道传递给OS Copilot,让其逐个解释参数
- 先使用
- 示例截图
3.执行结果
- OS copilot 会自动解析文件内容,对每个参数进行说明
- 通道功能非常强大,对于代码解释,日志分析可以起到很大作用。在处理线上问题能快速定位和分析错误日志。我很喜欢
2.3.2 体验总结
- 优点
- 可以一条命令对文件查看和分析。
- 对日常配置审查、日志分析非常有用
- 缺点
- 暂时只能一次性解析,如果内容过大,就需要
chat
智能的多轮对话进行辅助查找。
- 使用总结和感悟
- 总体上管道让分析日志提供极大便利,对我这种初期学习服务器的小白帮助查看线上错误日志有很大帮助
三、其他测试场景
在以上提供的参数基础上,我尝试了让起帮助我安装Ngnix
、MySql
等服务器需要的功能,跟使用-f
的参数类似,也都可以快速生产并执行,进一步证明OS Copilot对于常用的运维需求或者脚本化需求有非常大效率提升。
在oc的chat
对话上帮助我认识和学习使用linux
- 示例命令
co 帮我安转一个ngnix/mysql, 最后给出后台启动ngnix/mysql的命令
- 使用体验
简化安装,快速提供教程,可以自动启动命令,降低使用门槛。对于外行人也可以快速学习使用。但是反这想,也会更卷。哈哈哈!
四、总结
1.个人背景
- 本身是前端开发人员,平时工作解除云资源比较少。都是公司运维人员在管。
- 总体评价
- OS copilot在
-t
、f
、管道|
三大功能的支持下,让我这个往全栈发展方向的人,节省的大量时间的学习成本。也提供了很多遍历。让在使用云服务的门槛大大下降。 -t
快速进入agent
模式,节省和大模型交互的时间。-f
可以对批量和复杂的任务进行处理,大大提升效率。- 通道 功能在分析代码和日志、解析上帮助明显,代码日子一目了然。查找日志报错精准点位。快速帮助我们解决问题。
- 优点
从个人感受出发:
- 大大降低云服务器学习门槛
- 对于重复多次的任务,可以编辑成批量任务,交给copilot来执行,自动化程度提高
- copilot提供的指令参数可以结合脚本、文件、管道等各种操作,满足多种需求。灵活性非常强。
- 不足和改进
- 在非
chat
模式下,上下文理解能力有限。可以继续进一步优化多轮对话 - 对于复杂的文件和多文件同事处理的能力有限
对于以上提出的改进意见我知道的多有大模型初期都有的问题。希望OS copilot多更新多完善。让我们在使用云服务起降低门槛。虽然降低门槛代表着更加内卷,但是时代的进步不以个人意志为转义。拥抱才是正解和驾驭才是正解。
5.个人反馈 - os copilot确实在运维领域有用,降低学习和使用门槛。让一个不怎么用云服务器产品的人也可以快速使用起来。
- 多余连续批量的执行能力,我非常喜欢。还可以使用
chat
的聊天能力帮助快速解决问题。 - 通道功能在日志查找等作用极大提升了我处理和定位问题的能力
- 总体而言,OS copilot在个场景下的自动化脚本执行、配置解析、批量任务处理为我这类人有很大帮助。