TOP>製品/サービス>カテゴリから探す>システム運用管理>Red Hat Ansible Automation Platform>機能紹介

Red Hat Ansible Automation Platform

Red Hat Ansible Automation Platformは、インフラ構築やメンテナンスを自動化する構成管理ツールです。冪等性(べきとうせい)の担保、学習コストの低さ、自動化対象の多さなどの特長があります。

Ansibleで自動化を始めるまでのステップ

Ansibleで自動化を始めるまでの大まかなステップは以下の通りです。
本ページでは、AnsibleのインベントリーやPlaybook作成、モジュールについてなど、図解を交えわかりやすく紹介します。

Ansibleで自動化を始めるまでのステップ

Ansibleのインベントリーとは

インベントリーとは 自動化対象のホストをIPアドレスまたはホスト名で記述するリストファイルのこと で、Ansibleが提供する管理GUIから簡単に作成可能です。

※クリックすると拡大します

AnsibleのPlaybookとは

AnsibleのPlaybookとは、 自動化する作業をYAMLというデータ形式で記述したファイルのこと です。

Playbookの基本構成は以下の通りです。

(1)YAMLファイルの宣言
(2)実行対象の指定
(3)タスクを指定


Playbookの作成方法

今回は、 WebサーバへApacheをインストールするPlaybook を例に作成方法を説明します。


説明 記述例
1 YAMLファイルであることを宣言します。
半角のハイフンを3つ記入します。
---
2 Playbookの任意の名称を記述します。
名称のルールはありませんが、作業内容が判断できる名称をおすすめします。

(例)今回作成するPlaybookの名称は「Setup webserver」とします。
- name: Setup webserver
3 Playbookを実行する対象のホスト(インベントリー)を記述します。 hosts: Web_Server
4 タスクの開始行であることを宣言します。 tasks:
5 実行するタスクの任意の名称を記述します。

各タスクに名前を付けることで、Playbookの実行状況やタスクごとの
実行結果を容易に確認できます。

(例)今回実行するタスクの名称は「install httpd」とします。
- name: install httpd
6 実行するタスクを記述します。
タスクは「モジュール」と「オプション」を記述します。
※モジュールについてはこちら

(例)今回はyumモジュールを利用し、httpdの最新バージョンをインストールする
タスクを記述しています。
  yum:
  name: httpd
  state: latest
7 後続のタスクがある場合は「5」「6」の手順を繰り返します。

(例)後続タスクの名称は「start httpd service」とします。
タスクはserviceモジュールを利用し、サービスを起動します。
さらに、自動起動設定を有効化するタスクを記述しています。
- name: start httpd service
 service:
  name: httpd
  state: started
  enabled: yes

Playbook作成時の注意点

YAMLはインデントの位置でデータ構造を判断するので、Playbookを作成する際、インデントは非常に重要です。

今回例示したPlaybookは、具体的に以下のようなインデントで記述する必要があります。

---
- name: Setup webserver
 hosts: Web_Server
 tasks:
  - name: install httpd
   yum:
    name: httpd
    state: latest
  - name: start httpd service
   service:
    name: httpd
    state: started
    enabled: yes

ワークフローテンプレートについて

Playbookを組み合わせたフローを 「ワークフローテンプレート」 と呼びます。
Ansibleの管理GUI上で各Playbookを連結させワークフローテンプレートの作成・実行が可能です。視覚的にもわかりやすく、直感的に操作できます。また、実行結果はログとして格納され、作業の証跡をきちんと残せます。

※クリックすると拡大します


Ansibleのモジュールとは

先述した通り、 Playbookでタスクを記述する際はモジュールを指定 します。
様々なサードパーティからモジュールが提供されており、モジュールの数は3,000種類を超えています。WindowsやLinuxサーバへの汎用的な操作はもちろん、特定のネットワーク機器や仮想環境への操作にも対応しています。

モジュール名 説明
copy ローカルのファイルを管理ホストへコピーする(SCP)
get_url 外部からHTTPでファイルをダウンロードする
file ファイルのパーミッションや所有者などのプロパティを設定する
yum, dnf, apt, pip, gem パッケージ(RPM など)をインストール/アンインストールする
service プロセス起動/停止などを操作する
user OS ユーザの追加・削除・変更する
uri Web サーバからのコンテンツ取得や API リクエストを発行する
lineinfile テキストファイルの行や文字列を編集する

※一部抜粋したサンプルです


Playbookの効率的な作成・運用方法

各担当者が作成したPlaybookを他の担当者や他部門と共有・利用することで、より効率よく自動化を推進できます。

管理GUI上で容易にPlaybookの管理や組み合わせができるので全社展開がしやすく、Ansibleが組織全体の自動化を促進するプラットフォームになります。

※クリックすると拡大します


Playbookの実行

Playbookの実行は、管理GUIまたはREST API連携により、CIツールや構成管理ツールなど他製品からの連携実行が可能です。

Ansibleのアクセス管理

インベントリーやPlaybookは、組織・チーム・ユーザーによるロールコントロールとアクセス制御が可能です。
運用担当・開発担当など、役割に応じた適切な職務分掌を実現します。

Ansibleのアクセス管理イメージ


柔軟な通知方法

ワークフローテンプレートの実行時、正常終了・異常終了をトリガーとして様々な手段でユーザーに通知できます。
SNSやチャットツール、メールなど既存のコミュニケーションツールを活用した情報共有が可能です。

通知方法イメージ


3時間でわかる!IaC体験ワークショップを開催中

Ansibleを使ったコードによる環境構築・メンテナンス(IaC)を体験していただくために
ハンズオン形式のワークショップ を開催しています。

IaCの基本的な考え方やAnsibleの知識、操作方法のレクチャーに加え、弊社で用意したハンズオン環境を使い、サーバ構築やメンテナンス業務の自動化を習得していただきます。

ワークショップの日程や内容の詳細などは以下よりお気軽にお問い合わせください。

IaC体験ワークショップの流れ

JP1のエージェント導入を自動化!Ansible×JP1

アシストでは統合運用管理製品JP1のエージェント導入作業を自動化するための、 オリジナルのPlaybook を提供しています。

Playbookが導入設計書兼手順書の役割を果たすため、従来の作業で発生していた手順書作成工数や設定のダブルチェックがなど不要になり、作業コストを大きく削減します。また、自動化することで「設計した値」と「実装値」のズレといったオペレーションミスも防止できるといった様々なメリットがあります。

JP1のエージェント導入作業自動化についてご興味のある方は、以下の問い合わせボタンよりお気軽にお問い合わせください。

提供内容 対象製品
ガイド提供(Ansible構築・Playbook実行)
JP1インストール用サンプルPlaybook作成・提供
JP1インストール以外のAnsible自動化要件ヒアリング
および 自動化実装(※2)
Ansible基本操作トレーニング(※2)
※2…別途ご相談のうえお見積します
JP1/Base
JP1/Automatic Job Management System 3 – Agent
JP1/Extensible SNMP Agent
JP1/SNMP System Observer – Agent for Process
JP1/Performance Management – Base
JP1/Performance Management – Agent Option for Platform
JP1/Performance Management – Agent Option for Oracle

お求めの情報は見つかりましたでしょうか。

資料請求/お問い合わせはこちら(専門の担当者が確認し、ご対応します。)

お客様の状況に合わせて詳しい情報をお届けできます。お気軽にご相談ください。

ページの先頭へ戻る