尝试使用Exastro IT Automation的三种Ansible模式(② Ansible-LegacyRole编)

相关链接

    • Ansibleモード共通設定、① Ansible-Legacy編

② Ansible-LegacyRole編(現在の記事)
③ Ansible-Pioneer編

首先

在之前的文章中,我们解释了Exastro IT Automation(以下简称ITA)中的Ansible三种模式之一,即Ansible-Legacy的使用方法。

我今次想參考上一次的Ansible-Driver實習教程,並且實際使用Ansible-LegacyRole。

工作环境


    • Exastro IT Automation 1.5.0

 

    • CentOS Linux 7(ITAサーバ)

 

    • CentOS Linux 7(targetサーバ)

 

    • Windows 10(ITAクライアント)

 

    Google Chrome(Win10側)

image.png

Ansible-LegacyRole是指什么?

Ansible-LegacyRole是一种模式,可以注册和使用角色包。

首先,Role是一种类似于Ansible标准配置的文件结构,可以通过playbook来加载和读取。
通过使用事先定义好的文件结构,Ansible可以解读和加载配置。
对于简单的处理,一个Playbook就足够了,但在处理复杂的情况下,将playbook分解为适当的Role进行包含,可以提高可重用性和可读性。

你可以将您自己创建的Role或从Ansible Galaxy获取的Role注册到ITA中并使用,但是Role中的变量定义和任意配置需要使用ITA内的ITAreadme或转换表进行设置。
换句话说,您无需修改Role本身。

请参考Ansible-Driver座学編的社区网站,了解有关Ansible-LegacyRole的详细信息。

用Ansible-LegacyRole编写

这次我们将从Ansible Galaxy下载的角色注册到ITA中并进行执行。
该角色会在机器的/etc/sudoers.d目录下添加文件。

image.png

具体的步骤如下:
1. 做好事前准备
2. 设定移动方式
3. 设定操作步骤
4. 管理赋值(创建参数表)
5. 执行任务操作

事前准备

本次将从Ansible-Galaxy下载的角色注册到ITA并执行。

请从以下网址下载要使用的角色。
https://galaxy.ansible.com/weareinteractive/sudo

这个角色会在机器的/etc/sudoers.d目录下添加文件。

然而,该角色可能会将某些部分的设置注释掉或者使用默认值。在这种情况下,ITA通过创建ITAreadme和解读表来进行必要的更改,而无需修改角色中的文件。

建议参考手册以获取关于详细ITAreadme和翻译表的信息。

生成的文件列举如下。

ITAreadme文件是用于添加或修改变量定义的配置文件。

sudo_users:
 - name: 

读取表-使得ITA能够为ITAreadme中定义的除了”VAR_…”以外的变量设置具体值的默认变量定义文件

LCA_sudo_users: sudo_users
LCA_sudo_sudoers_file: sudo_sudoers_file
図2.png

1. 创建一个名为「roles」的文件夹。
2. 将下载的Role移动到刚创建的「roles」文件夹中。
3. 将「roles」文件夹、读解表和ITAreadme打包成ZIP文件。


2. 运动设置

在这里,我们将讨论与角色相关的运动设置。

创建动作

选择「Ansible-LegacyRole」菜单组,然后点击注册作业按钮开始注册作业。

需要填写的项目是”Movement 名称”和”主机指定格式”。

※运动:使用构建工具对各个机器进行构建、设置等工作的单位

在本篇文章中,我们将介绍Movement的名称为「sudoer登记」,使用主机指定格式「IP」进行注册。

这次,我将根据下表进行设定。

入力内容Movement名Sudoer登録ホスト指定形式IP
image.png

只需要一种选择:
①请输入必填项目
②输入后,点击[提交]按钮


注册卷包装

选择「Ansible-LegacyRole」菜单组,进行注册操作。「角色包管理」

必须填写的项目包括「角色包名」和「角色包文件(ZIP格式)」。

使用刚才创建的“roles.zip”作为Playbook素材。
在指定文件后,必须点击预先上传按钮。

image.png

只需一个选项,用中文将以下内容转述:
①请填写必填项目(在选择角色包后,点击“预先上传”按钮)
②填写完毕后,点击“注册”按钮。


将Movement与Role相关联

选择「Ansible-LegacyRole」菜单组,然后进行注册操作,选择「Movement详细」。

必须填写的项目有「Movement」「滚动包名称」「包含顺序」。

这次,设置如下表所示。

Movement名ロールパッケージ名ロール名インクルード順序Sudoer登録sudo-masteransible-sudo-master1
image.png

请适当选择并输入必填项目
点击[注册]按钮拜访


3. 运营设置 shè zhì)

创建一个操作,并将其与移动和主机进行关联。

在ITA系统中,操作指的是用于表示整个工作的工作名称。

请选择“基本控制台”菜单组,然后开始进行“投入操作一览”的注册。

必须填写的项目是「操作名称」和「预计执行日期」。

这次,设置如下表所示。

項目名入力内容オペレーション名LegacyRole_Practice実施予定日時(任意の値)
image.png

①需要输入以下项目:”操作名称”和”预计执行日期”
②点击[注册]按钮


4.进行值代入管理(创建参数表)

创建参数表

创建参数表并管理适用于目标机器的参数。

选择”菜单定义/创建”选项,在菜单组中选择”菜单创建”,输入必填项。

image.png

只需一个选项来进行汉语本地化改写:
① 请适当选择并输入必填项目
② 点击[目标菜单组]按钮


image.png

请按图中所示选择菜单组(菜单组已在上一篇文章“Ansible模式通用设置”中创建)。
点击[确定]按钮。


定义参数表的项目名称。

点击了前一选项中的”确定”按钮后的接续方案。

这里是定义表格项目的地方。

添加项目,并输入项目名称为“sudoer_name”和“sudoer_filename”。最大字节数都是32字节。

image.png

点击[项目],添加新项目
点击[项目1]和[项目2],设置项目名称
选择并输入如图所示
点击[创建]按钮


注册参数

到目前为止,我们已经完成了参数表的制作。接下来,我们将注册用于设置目标主机的数据。

选择「LegacyRole实践」以开始注册。

必须输入的项目是“主机名”和“操作”,参数为[sudoer_name]、[sudoer_filename]。

image.png

请根据需要适当选择和输入必填项。
点击[注册]按钮。


自动注册设置的参数输入

将各个项目与变量进行关联。

选择「Ansible-LegacyRole」菜单组,然后进行「代入值自动注册设置」的注册操作。

对于每个项目,将进行以下设置:“菜单组:菜单”,“注册方式”,“Movement”和“Value变量”。
同时,具体的设置如下表所示。

メニューグループ:メニュー項目登録方式MovementValue-変数変数名Value変数-メンバー変数名LegacyRole実践用sudoer_nameValue型Sudoer登録LCA_sudo_users[0].nameLegacyRole実践用sudoer_filenameValue型Sudoer登録LCA_sudo_sudoers_file
image.png

①请适当选择并填写必填项目
②点击「注册」按钮


确认代入值和操作主机。

点击[Ansible-LegacyRole]菜单组下的[作业主机]。
点击[Ansible-LegacyRole]菜单组下的[变量管理]。
点击[筛选器],确认[列表/更新]。

我們要確認所設定的項目是否已使用「legacyRole代入値自動登録設定プロシージャ」正確指定了相應的值。

image.png
image.png

5.执行作业

Movement的执行

请选择「Ansible-LegacyRole」菜单组,然后选择「执行操作」。

image.png

①选择创建的动作
②选择创建的操作
③点击”执行”按钮


确认执行结果

执行作业时,屏幕会跳转并显示执行状态和日志。此外,还可以下载包含输入数据和结果数据的ZIP文件。

image.png

另外,移至目标设备并执行以下操作。

# cat /etc/sudoers.d/example_sudoers

当出现以下内容时,表示执行成功。

# Ansible managed


example_name ALL=(ALL:ALL)  ALL

最后

这次我们讲解了Ansible三种模式之一的Ansible-LegacyRole的用法。

下次我想要说明一下Ansible-Pioneer。

相关链接

    • Ansibleモード共通設定、① Ansible-Legacy編

 

    • ② Ansible-LegacyRole編

③ Ansible-Pioneer編(次回)

引用

    • ExastroSuite コミュニティページ

 

    • Exastro IT Automation

 

    ITA Ansible実習編
广告
将在 10 秒后关闭
bannerAds