使用IBM Cloud Schematics配置云资源

在上一篇部署云资源中,我们讲到IBM Cloud Schematics可以进行云资源的部署,软件安装和配置,那我们接下来就讲下如何在Schematics中调用Ansible在虚拟机系统里面进行软件的安装和配置,来达到自动化的过程。

在参考本篇文章进行试验之前,建议阅读使用Schematics部署云资源一文。(https://blog.csdn.net/koolincn/article/details/121999643

首先我们需要编写Ansible play book脚本,这里我将基于之前Schematics交付的资源,在两个虚拟机(经典基础架构下的,以及VPC环境下的)上进行相关软件包的安装,然后搭建一个简易的两层应用(WEB+DB)。由于IBM的经典架构下的虚拟机会赠送一定数量的免费外网流量,所以我们选择用经典基础架构下的虚拟机作为对外接收请求的WEB服务器,使用VPC环境下的虚拟机作为后端的数据库服务器,WEB服务器与数据库服务器的通信走IBM的内网进行,一是安全,而是没有费用产生。(在本实验中,我们WEB和DB的通信还是走公网的形式,原因是因为VPC环境下的虚拟机与经典基础架构下的虚拟机走IBM内网通信的话,需要配置交换网关[Transit Gateway],并且启用该账号的VRF功能,本账号由于是测试账号,没有开通VRF)

我们还是先来看下我们的Ansible play book脚本。

README.md,roles目录以及site.yaml,README文件给整个代码以说明,site.yaml文件里面定义了执行Ansible脚本时不同的role。roles目录下是不同角色所对应需要执行的操作。

在DB role下,我们将执行安装和配置mysql,启动mysql服务等操作,在WEB role下面我们会安装和配置http,php以及相关的package。

下面我们来看下具体的yaml文件的内容,主目录下site.yaml的内容如下:

---
# This playbook deploys the LAMP application stack in this site.

- name: deploy and configure the webservers and application
  hosts: webserver
  remote_user: root

  roles:
    - web

- name: deploy MySQL and configure the databases
  hosts: dbserver
  remote_user: root

  roles:
    - db

- name: Verify Installation
  hosts: webserver
  tasks:

    - name: Query index page for application
      uri:
        url: http://localhost/index.php
        return_content: yes
      register: Output
    
    - name: Display Index page content
      ansible.builtin.debug:
        var: Output

对应的role下面的task下面的main.yaml内容,我们先看DB role下面的:

roles/db/tasks/main.yml

---
  # This playbook contains common plays that will be run on all nodes.

  - n
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值