Zorya 项目使用教程
1. 项目介绍
Zorya 是一个 Google Cloud 实例调度器,旨在通过自动化非生产环境的实例启动和停止来帮助用户降低成本。根据官方数据,Zorya 平均可以为用户节省 60% 的非生产环境成本。该项目通过定时任务和策略管理,自动调度 Google Cloud 上的虚拟机实例、Cloud SQL 和 GKE 节点池,从而优化资源使用,减少不必要的开支。
2. 项目快速启动
安装依赖
首先,确保你已经安装了 Python 和 pip。然后,使用以下命令安装项目依赖:
pip install -r requirements.txt -t lib
下载并安装 Yarn
接下来,下载并安装 Yarn:
npm install -g yarn
启用必要的 GCP API
在 Google Cloud 控制台中,启用以下 API:
- Cloud Tasks
- App Engine
- Cloud Storage
- Datastore
- IAP
- Cloud Build
- Cloud Scheduler
- Compute Engine
- Cloud SQL Admin API
部署后端和 GUI
使用以下命令部署后端和 GUI:
./deploy.sh project-id
访问应用
部署完成后,使用以下命令访问应用:
gcloud app browse
启用 IAP
为了确保应用的安全性,建议启用 Cloud Identity-Aware Proxy (Cloud IAP)。在 Google Cloud 控制台中,启用 IAP 并添加允许访问的用户。
3. 应用案例和最佳实践
应用案例
Zorya 特别适用于需要频繁启动和停止虚拟机实例的非生产环境,例如开发、测试和预发布环境。通过自动化这些环境的资源管理,可以显著降低成本。
最佳实践
- 策略管理:根据不同的环境需求,创建不同的调度策略。例如,开发环境可以在工作时间启动,非工作时间停止;测试环境可以在测试任务执行时启动,任务完成后停止。
- 监控与日志:定期检查 Zorya 的执行日志,确保调度任务按预期执行。
- 权限管理:确保 Zorya 的服务账号拥有适当的权限,以避免权限不足导致的调度失败。
4. 典型生态项目
Zorya 可以与以下 Google Cloud 生态项目结合使用,进一步提升资源管理的效率和成本优化:
- Google Cloud Monitoring:用于监控实例的运行状态和资源使用情况。
- Google Cloud Logging:用于记录和分析 Zorya 的调度日志。
- Google Cloud Scheduler:用于创建和管理定时任务,与 Zorya 的调度策略结合使用。
- Google Cloud IAM:用于管理 Zorya 服务账号的权限,确保其拥有执行调度任务所需的权限。
通过结合这些生态项目,可以构建一个完整的资源管理解决方案,进一步优化 Google Cloud 上的资源使用和成本控制。