- The document discusses Ansible Galaxy NG, an open source project that provides a platform for sharing Ansible roles and collections.
- The author deployed Ansible Galaxy NG locally using Ansible playbooks and configured it to integrate with the local Pulp repository to manage collections.
- This allows collections to be hosted privately while also maintaining integration with upstream sources like the Ansible Galaxy and Red Hat Automation Hub public repositories.
This document provides an overview and introduction to Ansible. It discusses the motivation for IT automation and introduces some key Ansible concepts including Ansible Core, command line tools, playbooks, inventory, modules, and plugins. It also demonstrates how to get started with Ansible, use ad-hoc commands, and write playbooks. The presenter provides examples of installing packages and copying files using playbooks.
8. Server
Infrastructure as Codeを実現
Okinawa Open Days 2016
Linux
Apache
MySQL
PHP
Playbook
例: テスト環境の⾃動構築
fetch/push
review
check/fetch/review
fetch/push
deploy
operation
operation
exec
8
ITオートメーションツールと、他の役割のツール群を
連携させることで、更に大きな導入効果を得られます。
26. ダイナミックインベントリを利用する
Okinawa Open Days 2016
サービスアカウントの準備
作成した認証ファイルを、Cloud Shellにアップロードします。
(5) Cloud Shellのメニューバーからファイルアップロードを選択して、認証
ファイルアップロードします。
26
27. ダイナミックインベントリを利用する
Okinawa Open Days 2016
APIを有効化する
Google Compute EngineをAPI経由で操作する機能を有効化します。
"API Manager"の"ライブラリ"から"Compute Engine API"を"有効"にします。
27
28. ダイナミックインベントリを利用する
Okinawa Open Days 2016
GCP認証ファイルの作成
Google Cloud PlatformのAPIを利用するために必要となる認証情報を
設定するファイル(secrets.py)を作成します。
secrets.pyの内容は以下の2行です。
GCE_PARAMS = ('<client_email>', '<credentialファイルパス>')
GCE_KEYWORD_PARAMS = {'project': '<project_id>'}
credential.jsonの"project_id"パラメータの値
credential.jsonの"client_email"パラメータの値 credential.jsonファイルのパス
28
29. ダイナミックインベントリを利用する
Okinawa Open Days 2016
ダイナミックインベントリの動作確認
GCP用のダイナミックインベントリは、Pythonスクリプトで提供され
ています。
(ood2016)$ ./gce.py --help
usage: gce.py [-h] [--list] [--host HOST] [--pretty]
Produce an Ansible Inventory file based on GCE
optional arguments:
-h, --help show this help message and exit
--list List instances (default: True)
--host HOST Get all information about an instance
--pretty Pretty format (default: False)
(ood2016)$ ./gce.py --pretty --list
(ood2016)$ ./gce.py --pretty --host <ホスト名>
virtualenvの環境名がプロンプトに表示されいない場合は、以下のコマンドを実行してください
$ source ~/ood2016/bin/activate
29
44. IT Automation by Ansible
Okinawa Open Days 2016
このハンズオンセッションでは、Ansibeを利用したオペレー
ションの自動化について体験していただきました。
Ansibleに代表されるITオートメーションツールは、これまで
人間が行ってきた作業を自動化するための機能を提供してく
れます
Google Cloud PlatformやOpenStackのようなクラウド基盤
との連携機能を持っており、親和性が高いのが特徴です。
44
45. Infrastructure as Code
ITオートメーションツールを導入して、 手作業のコード化
を推進することで、ソフトウェア開発の分野で利用されてい
るQAやテストなどの優れた手法を、ITインフラの運用管理
にも応用することができるようになります。
1.手順書のコード化
2.コードのリビジョンの管理
3.チケットシステムによる課題管理
4.コードレビュー
5.テスト
6.デプロイシステム
7.インフラの構成管理
Internet Week 2016
出展: Wikipedia
1〜7をシステマチックに連携させることで
Infrastructure as Codeを実現する
45