使用Schematics和DevOps工具链设置持续部署
描述
在本教程中,您可以学习使用凭证和 API 密钥在 Schematics 工作空间中使用 Terraform 模板 IBM Cloud® Object Storage。 然后,您还学会使用 DevOps 交付管道自动执行持续部署。 作为教程的一部分,您可以使用 ibm_cos_bucket
Terraform 模板示例。
ibm_cos_bucket
示例创建 IBM Cloud Object Storage,IBM Cloud® Activity Tracker和 IBM Cloud® Monitoring的实例。
将根据您的资源使用情况产生成本。 有关定价的更多信息,请参阅 定价。 有关支持和帮助,请参阅 Schematics help。
目标
在本教程中,您可以:
- 浏览 IBM 提供的 Terraform 模板,以创建与 IBM 资源实例绑定的 IBM Cloud Object Storage 实例。和 IBM 资源组。
- 了解如何创建 IBM Cloud Schematics 工作空间。
- 了解如何使用 IBM Cloud Schematics 和 DevOps 工具链自动持续部署资源。
- 查看您创建的云资源。
所需时间
1 小时
受众
本教程面向希望学习如何使用 Terraform 模板进行创建的开发者和系统管理员。 并使用 IBM Cloud Schematics 和 DevOps 工具链自动持续部署资源。
先决条件
关于 IBM Cloud Schematics
IBM Cloud Schematics 是 IBM Cloud 自动化工具。 它简化了供应流程,通过Terraform、Helm 等各种资源工具,在您的 IBM Cloud 环境中协调基础设施即代码( IaC )、模板并管理云资源。 IaC 帮助您整理云环境,实现自动配置,加快部署速度,并管理您的资源。 基础设施的处理方式与应用程序代码相同,因此您可以自动执行 DevOps 核心实践,例如版本控制、测试、持续集成和部署。
关于 DevOps 工具链
DevOps 工具链是一组工具,用于自动执行开发和部署应用程序的任务。 工具链是一组工具集成,用于支持开发、部署和操作任务。 工具链的整体能力大于其各个单独工具集成的总和。
有关信息,请参阅 DevOps 工具链。 Schematics 选项支持持续交付基础结构配置以及 IBM Cloud 工具链。
完成教程的以下先决条件:
- 如果您没有 IBM Cloud 帐户,请创建 IBM Cloud 帐户,并按使用付费。 有关管理 IBM Cloud 帐户的更多信息,请参阅 管理 IBM Cloud 帐户。
- 安装 IBM Cloud CLI 和 Schematics CLI 插件。 有关命令行设置的更多信息,请参阅 Schematics 命令行设置。
- 确保在 IBM Cloud® Identity and Access Management 中为您分配了创建和使用 IBM Cloud Schematics 工作空间所需的许可权。请参阅 Schematics 访问权 并创建 IBM Cloud Object Storage 服务实例。
- 遵循指示信息以确保在 Cloud Identity and Access Management 中为您分配了创建资源所需的许可权。 有关创建 IBM Cloud Object Storage的更多信息,请参阅 IBM Cloud Object Storage。
访问 IBM Cloud 和 GitHub
完成以下步骤,从 GitHub: 访问 IBM Cloud 和 Terraform 模板
-
如果没有帐户,请创建 IBM Cloud 现收现付或预订 IBM Cloud 帐户。
-
登录到 GitHub 帐户。
-
打开 Terraform 模板以 创建 IBM Cloud Object Storage。
-
在 " GitHub " 页面的一侧,单击
Fork
图标以创建您自己的共享存储库派生。您需要复制 GitHub 的 Terraform 模板 URL 或 GitLab Repository URL 来创建 Schematics 工作区。
创建 IBM Cloud Schematics 工作空间
完成以下步骤,创建 IBM Cloud Schematics 和 Terraform 模板 URL。
-
从 Schematics 工作空间仪表板中,单击 创建工作空间。
-
在 指定模板 部分中。 作为
GitHub, GitLab, or Bitbucket Repository URL
作为https://github.com/IBM-Cloud/terraform-provider-ibm/blob/master/examples/ibm-cos-bucket
-
对于私有仓库,请提供您的 GitHub个人访问令牌。 您可以点击
Open reference picker
来选择您的 Secrets Manager 密钥参考。 更多信息,请参阅 创建 Secrets Manager 实例。 查看 获取 GitHub 个人访问令牌的步骤。 -
从 Terraform 版本 下拉列表中选择
terraform_v1.4
。 -
单击下一步。
-
在 工作空间详细信息 部分中,输入 工作空间名称,标记,资源组,位置,和 描述。
请确保提供要在其中创建工作空间的资源组和位置详细信息。
-
单击 下一步,然后单击 创建 以成功创建 Schematics 工作空间。
配置变量
单击 ...
以按表中所述配置变量,以认证凭证并保存更改。
名称 | 值 |
---|---|
iaas_classic_username |
输入用于访问 IBM Cloud 经典基础架构的用户名。 |
iaas_classic_api_key |
输入 API 密钥以访问 IBM Cloud 经典基础架构。 有关更多信息,请参阅 经典基础架构 API 密钥。 |
ibmcloud_api_key |
输入 IBM Cloud API 密钥,有关更多信息,请参阅 IBM Cloud API 密钥。 |
resource_group_name |
保留为缺省值。 |
自动执行持续部署过程
Enable continuous delivery
选项会将不同的 Terraform 操作自动化到 Schematics 工作空间。 完成以下步骤以观察端到端 Schematics 工作空间部署的自动化。
GitHub Server 类型参数需要授权。 您需要提供 GitHub 凭证并确认授权。
-
在变量页面上,单击
Enable continuous delivery
链接选项以查看 Schematics Infrastructure as Code Tekton Toolchain 页面。 -
单击
Delivery Pipeline Required
选项卡。 -
输入您的
IBM Cloud API key
。 -
单击 授权 > 授权 IBM-Cloud,然后输入 GitHub 密码以获得授权。
-
单击
Create
以查看“工具链”页面。 -
单击
Deliver Pipeline
窗格以查看 Schematics-deploy Dashboard 页面。 -
单击 运行管道
观察
UPDATE
是否处于STAGE RUNNING
状态,而不单击。
分析管道执行过程
观察管道仪表板并查看工作空间执行的状态。
- 在更新阶段过程中,从
ibm-cos-bucket
存储库示例中,观察具有cos_instance
名称和bucket_name
的main.tf
文件配置。 在传递 APPLY 阶段之后,将在 Schematics 工作空间中更新这些详细信息。 UPDATE
阶段完成,PLAN 阶段处于运行状态。- 单击 作业 和历史记录以从
PLAN
窗格查看作业的状态。 - 观察到 PLAN 阶段已通过,并且 APPLY 阶段处于正在运行状态。
- 从 Schematics 工作空间中,检查是否已成功创建资源名称和存储区名称。
- 观察
APPLY
阶段是否已通过,以及 TEST 阶段是否处于Running
状态。 - 观察
TEST
阶段是否成功传递。 - 现在,您可以在已配置的存储库中编辑模板,并观察持续交付工具链对工作空间的自动拉取。
分析 Schematics 工作空间
或者,通过 IBM Cloud 仪表板,可以查看工作空间的状态。
- 从 Schematics 工作空间仪表板。
- 选择
Navigation Menu > Schematics > Workspaces > Resources
以观察工作空间中资源的应用状态。 - 您可以从工作目录或 IBM Cloud 仪表板计划日志查看输出以查看工作空间状态。
您已成功创建 Schematics 工作空间,并使用 DevOps 工具链自动执行端到端部署。
后续步骤?
现在,您可以了解如何为 IBM 集群设置持续交付管道。 有关更多信息,请参阅 为 IBM 集群设置持续交付管道。