Schematics 操作
Schematics 操作提供 Ansible-as-a-Service 功能,供您自动配置和管理 IBM Cloud 环境,并将复杂的多层应用程序部署到云基础结构。
要开始使用 Schematics中的 Ansible 的 Configuration Management,请参阅 入门教程。
Schematics 操作概述
Ansible 是 配置管理和供应工具。 博客 Infrastructure as Code: Chef,Ansible,Puppet 或 Terraform? 提供了几种流行的开放式源代码 IaC 工具的概述,并概述了它们的功能和相对优势。
它旨在实现云环境的配置,操作和管理自动化,并在云中部署多层应用程序工作负载。 Ansible 使用 YAML 语法来描述必须对单个主机或一组主机运行的任务,并将这些任务存储在 Ansible 运行手册中。
Ansible 不使用必须存在于目标机器上才能正常工作的代理程序或定制安全基础结构。 相反,Ansible 通过使用 SSH 密钥安全地连接到公用网络上的计算主机。 要使资源处于所需状态,Ansible 会将模块推送到运行 Ansible 运行手册中的任务的受管主机。 执行任务后,会将结果返回到 Ansible 服务器,并从受管主机中除去模块。 Ansible 模块具有幂等性,因此多次执行相同的运行手册或操作会返回相同的结果,因为只有在需要时才会更改资源。 有关 Ansible的更多信息,请查看此 视频。
通过使用提供的运行手册,Schematics 将运行 Ansible 引擎来执行运行手册。 Ansible通过 HTTPS,任务、角色和游戏本可以通过 IBM Cloud API 执行配置任务,或使用 SSH 配置计算实例(虚拟服务器)。 通过公用网络上的 SSH 执行服务器配置。 为了维护环境的安全性,强烈建议使用防御主机为计算基础结构提供安全网关。
作为用户,您有责任确保针对其云环境实施适当的网络策略和防御主机配置,以允许 Schematics 通过 SSH 连接到您的环境。 请参阅 Schematics 防火墙,允许的 IP,以获取 IP 地址 Schematics 使用的详细信息,并且必须允许访问。 使用防御主机时,将使用 SSH 转发来连接到目标 VSI。 命令 ssh -J bastion-ip vsi-ip
可用于验证对目标主机的访问权。 仅支持对 IBM Cloud VPC VSIs 执行操作。
示例 as-is IBM Cloud® 具有防御主机的 VPC 配置在 Cloud-Schematics 存储库中提供。 遵循教程 发现应用程序部署的最佳实践 VPC 配置,以获取有关创建合适网络配置的指导信息。
使用操作
要在 Schematics中使用 Ansible 功能,请创建指向要运行的 Ansible 运行手册的操作。
- 向运行手册添加任务: 使用 Ansible YAML 语法来描述要在云基础结构上运行的配置任务,例如安装软件或启动,停止和重新引导虚拟服务器。 您可以将这些任务添加到 Ansible 游戏本中,并将游戏本存储到 GitHub, GitLab, 或
Bitbucket
资源库中,以确保源代码控制,并在您的组织中实现协作、审查和审计。 如果您不熟悉 Ansible,那么可以使用其中一个 IBM 提供的运行手册,或者浏览 Ansible Galaxy 库。 - 创建 Schematics 操作: 创建操作时,将操作指向存储 Ansible 运行手册的存储库,并选择要执行的目标运行手册。
- 定义清单: 然后,选择要在其中运行 Ansible 运行手册中定义的任务的云资源。 为了保护云资源,您可以在目标主机前进一步设置防御主机,以将所有 Ansible SSH 连接代理到目标主机。 有关如何定义库存的详细信息,请参阅 创建资源库存。
- 运行操作: 当您准备好配置云资源时,可以运行操作。Schematics 使用内置 Ansible 引擎通过 SSH 连接到目标主机,并执行 Ansible 运行手册中定义的任务。 您可以通过查看日志来监视进度。
后续步骤
到目前为止,您已了解 Schematics 操作。 以下是要探索的一些后续步骤。
- 查看 创建操作 以创建操作?