从零开始部署:在DigitalOcean的Kubernetes上搭建Soroban RPC
内容提要
本教程指导开发人员在DigitalOcean的Kubernetes平台上部署个人的Soroban RPC(远程过程调用)服务器。通过这个教程,开发人员可以建立一个可通过自定义域名访问的生产就绪的Soroban RPC服务器,提高与Stellar智能合约可靠和高效地构建和交互的能力。
延伸解读
自建 RPC 的适用场景与权衡
文章指出,自建 Soroban RPC 服务器可提高可靠性、控制资源和配置,并可能获得比公共端点更好的性能。但这也意味着你需要自行维护基础设施,包括定期更新、监控集群健康等。因此,它更适合对 Stellar 智能合约有持续需求、且具备一定 Kubernetes 经验的开发者。若不想管理基础设施,可考虑使用 OBSRVR 等托管服务。
集群配置的考量
教程建议创建包含两个工作节点的集群,每个节点配置为 2 GB RAM / 1 vCPU,并解释这样可在成本与可靠性之间取得平衡。如果选择单节点集群,则需要选择更大的节点规格。这提示读者,节点数量和规格会影响可用性与成本,应根据实际需求权衡。
部署中的关键配置点
部署 Soroban RPC 时,需要修改 Helm 配置文件,包括将镜像标签更新为 latest、设置 Ingress 的 host 为你的域名,并指定 ingressClassName 为 nginx。这些配置决定了 RPC 服务能否通过自定义域名被外部访问。此外,还需安装 Nginx Ingress 控制器并更新 DNS A 记录,才能完成外部访问链路。
维护与清理注意事项
部署后需定期更新 Soroban RPC 服务器,可使用 helm repo update 和 helm upgrade 命令。同时应监控集群健康,并设置日志聚合以便排查问题。若不再需要,应删除 Helm 发布和 Kubernetes 集群,并移除 DNS A 记录,避免资源浪费和潜在费用。
Q&A
如何在DigitalOcean上创建Kubernetes集群?
登录DigitalOcean账户,导航到Kubernetes部分,点击“创建集群”,选择设置并创建集群。
部署Soroban RPC服务器的好处是什么?
部署个人Soroban RPC服务器可以提高可靠性、控制服务器资源和配置,以及潜在的更好性能。
如何验证Soroban RPC服务是否正常运行?
使用命令kubectl get service和kubectl get pods检查服务和Pods的状态,确保它们处于“运行”状态。
需要哪些工具来连接Kubernetes?
需要安装doctl、kubectl和Helm等工具,以便管理Kubernetes集群和部署应用。
如何更新DNS记录以指向DigitalOcean负载均衡器?
在域名注册商的DNS管理页面创建A记录,名称为rpc,值为之前步骤中的External-IP,然后保存更改。
如何清理Soroban RPC服务器的部署?
使用命令helm uninstall删除Helm发布,删除Kubernetes集群,并从域名注册商处删除DNS A记录。