Arrakis在GCP上的部署:从虚拟机配置到安全运行的最佳实践

Arrakis在GCP上的部署:从虚拟机配置到安全运行的最佳实践 Arrakis在GCP上的部署从虚拟机配置到安全运行的最佳实践【免费下载链接】arrakisA fully customizable and self-hosted sandboxing solution for AI agent code execution and computer use. It features out-of-the-box support for backtracking, a simple REST API and Python SDK, automatic port forwarding, and secure MicroVM isolation. Perfect for safely running, testing, and backtracking multi-step agent workflows.项目地址: https://gitcode.com/gh_mirrors/arra/arrakisArrakis是一款功能强大的自托管沙箱解决方案专为AI代理代码执行和计算机使用而设计。它提供了开箱即用的回溯支持、简单的REST API和Python SDK、自动端口转发以及安全的MicroVM隔离是安全运行、测试和回溯多步骤代理工作流的理想选择。本文将详细介绍如何在Google Cloud Platform (GCP)上部署Arrakis从虚拟机配置到安全运行的最佳实践帮助新手和普通用户轻松上手。为什么选择Arrakis进行沙箱隔离在当今AI快速发展的时代安全地运行和测试AI代理代码变得越来越重要。Arrakis作为一款开源的自托管沙箱解决方案具有以下核心优势强大的隔离能力采用MicroVM技术为每个AI代理创建独立的隔离环境有效防止恶意代码对主机系统的攻击。完整的回溯支持可以轻松回溯到之前的状态方便调试和测试多步骤代理工作流。简单易用的API和SDK提供REST API和Python SDK便于开发人员集成和扩展。自动端口转发简化网络配置使沙箱内的服务能够方便地被外部访问。Arrakis的高-level架构如图所示展示了其如何通过REST API与客户端和SDK进行交互并利用MicroVM技术实现安全隔离。GCP虚拟机配置启用嵌套虚拟化要在GCP上部署Arrakis首先需要创建一个支持嵌套虚拟化的GCE虚拟机。嵌套虚拟化是运行MicroVM的关键它允许在虚拟机内部再创建虚拟机从而实现Arrakis的沙箱隔离功能。步骤1创建支持嵌套虚拟化的GCE实例使用以下gcloud命令创建一个启用嵌套虚拟化的GCE虚拟机。请将$VM_NAME、$PROJECT_ID、$SERVICE_ACCOUNT和$ZONE替换为您自己的值VM_NAMEyour-vm-name PROJECT_IDyour-project-id SERVICE_ACCOUNTyour-service-account ZONEyour-zone gcloud compute instances create ${VM_NAME} --project${PROJECT_ID} --zone${ZONE} --machine-typen1-standard-1 --network-interfacenetwork-tierSTANDARD,stack-typeIPV4_ONLY,subnetdefault --maintenance-policyMIGRATE --provisioning-modelSTANDARD --service-account${SERVICE_ACCOUNT} --scopeshttps://www.googleapis.com/auth/devstorage.read_only,https://www.googleapis.com/auth/logging.write,https://www.googleapis.com/auth/monitoring.write,https://www.googleapis.com/auth/service.management.readonly,https://www.googleapis.com/auth/servicecontrol,https://www.googleapis.com/auth/trace.append --create-diskauto-deleteyes,bootyes,device-namemaverick-gcp-dev-vm3,imageprojects/ubuntu-os-cloud/global/images/ubuntu-2204-jammy-v20250128,moderw,size20,typepd-standard --no-shielded-secure-boot --shielded-vtpm --shielded-integrity-monitoring --labelsgoog-ec-srcvm_add-gcloud --reservation-affinityany --enable-nested-virtualization步骤2配置防火墙规则为了允许外部访问Arrakis服务需要创建相应的防火墙规则。以下命令将创建一个允许TCP端口3000-5000和7000入站流量的规则NETWORK_TAGallow-ingress-ports FIREWALL_RULEallow-ingress-ports-rule gcloud compute instances add-tags ${VM_NAME} --tags${NETWORK_TAG} --zone${ZONE} gcloud compute firewall-rules create ${FIREWALL_RULE} \ --directionINGRESS \ --priority1000 \ --networkdefault \ --actionALLOW \ --rulestcp:3000-5000,tcp:7000 \ --source-ranges0.0.0.0/0 \ --target-tags${NETWORK_TAG} \ --descriptionAllow TCP ingress on ports 3000-5000 and 7000 for VMs with the ${NETWORK_TAG} tag一键安装Arrakis简单高效的部署过程完成虚拟机配置后接下来就是安装Arrakis。Arrakis提供了一个便捷的安装脚本可以一键完成所有必要组件的下载和配置。步骤1SSH连接到GCE虚拟机使用gcloud命令或GCP控制台SSH连接到您刚刚创建的虚拟机。步骤2运行安装脚本在虚拟机中执行以下命令下载并运行Arrakis安装脚本cd $HOME curl -sSL https://raw.githubusercontent.com/abshkbh/arrakis/main/setup/setup.sh | bash安装脚本将自动创建目录结构、下载最新的Arrakis发布版本包括REST服务器、客户端、根文件系统镜像、initramfs和配置文件并设置必要的权限。安装完成后您可以在arrakis-prebuilt目录中找到所有相关文件。步骤3验证安装安装完成后可以通过以下命令验证文件是否正确下载cd $HOME/arrakis-prebuilt ls您应该能看到arrakis-restserver、arrakis-client、config.yaml等文件。启动Arrakis服务REST服务器与客户端使用安装完成后就可以启动Arrakis服务并开始使用了。步骤1启动REST服务器在终端中执行以下命令启动Arrakis REST服务器cd $HOME/arrakis-prebuilt sudo ./arrakis-restserver服务器启动后将监听指定的端口默认为7000等待客户端连接。步骤2使用客户端创建沙箱打开另一个终端使用Arrakis客户端连接到REST服务器并创建沙箱cd $HOME/arrakis-prebuilt ./arrakis-client客户端将提供一个交互式界面您可以通过简单的命令创建和管理沙箱。步骤3通过Python SDK使用Arrakis除了命令行客户端Arrakis还提供了Python SDK可以更方便地集成到您的Python项目中。您可以通过以下命令安装Python SDKpip install py-arrakis然后在Python代码中导入并使用SDKimport arrakis client arrakis.ArrakisClient(http://localhost:7000) sandbox client.create_sandbox() print(sandbox.id)Arrakis GUI界面直观管理沙箱Arrakis还提供了一个直观的GUI界面方便用户管理和监控沙箱。通过浏览器访问虚拟机的IP地址和相应端口例如http://VM_IP:8080即可打开Arrakis GUI。在GUI界面中您可以轻松创建新沙箱、查看现有沙箱的状态、分配资源、进行端口转发等操作极大地简化了沙箱管理流程。安全运行最佳实践保护您的AI代理工作流在使用Arrakis时遵循以下安全最佳实践可以确保您的AI代理工作流更加安全1. 限制网络访问虽然我们在前面配置了防火墙规则允许特定端口的访问但在实际生产环境中应进一步限制源IP范围只允许受信任的IP地址访问Arrakis服务。2. 定期更新ArrakisArrakis团队会定期发布更新修复安全漏洞和添加新功能。您可以通过以下命令更新Arrakiscd $HOME/arrakis-prebuilt ./setup.sh # 假设setup.sh支持更新功能3. 监控沙箱活动通过Arrakis的日志功能或集成第三方监控工具密切关注沙箱的活动情况及时发现异常行为。4. 合理配置资源限制在config.yaml文件中根据您的实际需求和虚拟机资源情况合理配置每个沙箱的CPU、内存和磁盘资源限制防止资源滥用。总结Arrakis——GCP上安全高效的AI沙箱解决方案通过本文的介绍您已经了解了如何在GCP上部署和使用Arrakis。从配置支持嵌套虚拟化的虚拟机到通过一键脚本安装Arrakis再到启动服务和使用客户端/SDK整个过程简单明了即使是新手用户也能轻松上手。Arrakis的强大隔离能力、回溯支持和易用的API/SDK使其成为在GCP上安全运行和测试AI代理代码的理想选择。无论是个人开发者还是企业用户都可以利用Arrakis构建安全、高效的AI代理工作流。如果您想深入了解Arrakis的更多功能和配置选项可以参考项目的官方文档docs/detailed-README.md。开始您的Arrakis之旅体验安全高效的AI沙箱隔离吧【免费下载链接】arrakisA fully customizable and self-hosted sandboxing solution for AI agent code execution and computer use. It features out-of-the-box support for backtracking, a simple REST API and Python SDK, automatic port forwarding, and secure MicroVM isolation. Perfect for safely running, testing, and backtracking multi-step agent workflows.项目地址: https://gitcode.com/gh_mirrors/arra/arrakis创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考