関連サイト
本書の関連ページが用意されています。
内容紹介
近年、複数のサーバー構築やクラウド環境の設定変更を統一的に制御できる構成管理ツールとして、Ansibleが注目を浴びています。
本書は、オープンソースの構成管理ツールの一つであるAnsibleの基本的な使い方から、アプリケーションデプロイメントの自動化や、クラウドAPIとの連携、Windowsサーバー、ネットワーク機器設定の自動化など、さまざまな応用事例をまとめた実践ガイドです。これからAnsibleを利用し、システム構築の自動化を始めてみたいというエントリーユーザーから、既存の運用プロセスからの自動化を図りたいという実務向けのユーザーまで、幅広く活用していただける内容です。
特にシステムを開発、運用するエンジニア同士がコードを共有し、継続的デリバリーへと組織のプロセスを展開していくうえで必要な、Ansibleの知識を豊富に取り上げています。Ansibleの特徴を理解していただいたうえで、ビジネス要求に対する開発スピードの向上や、変更要求に対する運用の柔軟性を身に付けていただくことを目的としています。Ansible 2.8/CentOS 7.6対応。
書誌情報
- 著者: 北山 晋吾, 佐藤 学, 塚本 正隆, 畠中幸司, 横地 晃
- 発行日: 2019-10-18 (紙書籍版発行日: 2019-10-18)
- 最終更新日: 2019-10-18
- バージョン: 1.0.0
- ページ数: 416ページ(PDF版換算)
- 対応フォーマット: PDF, EPUB
- 出版社: インプレス
対象読者
サーバー管理者、サーバー提案SE、システムインテグレータ、Linuxサーバー保守担当者技術レベル:中級。過去にRHEL互換OSを使ってシステム提案、日常業務を担当、導入、保守経験がある
著者について
北山 晋吾
EC事業のインフラ運用や、ベンダーでのシステムインテグレーション業務を経て、現在はレッドハット株式会社にてソリューションアーキテクトとして勤務。オープンソース界隈を中心とする、コミュニティ活動を趣味としている。
佐藤 学
SIerにてプログラミングやインフラを経験して、音楽アプリの会社にてDevOpsの導入に従事した後、現在は株式会社ディー・エヌ・エーに勤務。インフラの構築、運用を行っている。また仕事の傍ら、Infrastructure as Codeの普及に向けて登壇や講師を行い、日々邁進している。
塚本 正隆
営業からIT講師への職種転換というキャリアを経た後、日本ヒューレット・パッカードにてHybrid IT/Cloud関連のプロフェッショナルサービスメンバーおよびIT講師として多忙な日々を過ごす。コミュニティ活動にも多く参加し、様々な人達や技術との交流を楽しんでいる。あと、メガネが好き。
畠中幸司
PC、Web、モバイル、AIとトレンドに合わせてキャリアを広げるエンジニア&起業家。Microsoft、Hewlett Packard Enterpriseなどの企業で数多くのグローバルプロジェクトに携わる。神戸市出身。
横地 晃
インフラ構築からシステム開発まで行うSIerにて様々な業務を経験。現在は株式会社エーピーコミュニケーションズに所属し、ネットワーク自動化関連の業務に携わっている。他、Ansibleユーザー会などのコミュニティへの参加や、ブログがライフワーク。
目次
はじめに
- 本書のターゲット
- 本書の構成
- 本書の表記
- 本書で使用するコード
- 本書で使用した実行環境
第1章 Ansible の概要
- 1-1 Ansible を取り巻く環境
- 1-1-1 ビジネスアジリティの追求
- 1-1-2 Infrastructure as Code
- 1-2 Ansible とは
- 1-2-1 Ansible の特徴
- 1-2-2 Ansible を利用する際の注意点
- 1-2-3 他の構成管理ツールとの比較
- 1-2-4 Ansible のプロダクト
- 1-2-5 Ansible のユースケース
- 1-3 まとめ
第2章 Ansible の基礎
- 2-1 Ansible のアーキテクチャ
- 2-1-1 Ansible の基本動作
- 2-1-2 Ansible の内部コンポーネント
- 2-2 Ansible のインストール
- 2-2-1 インストールの準備
- 2-2-2 インストールの実施
- 2-3 Ansible の動作確認
- 2-3-1 事前準備
- 2-3-2 コマンドを実行してみる
- 2-4 まとめ
第 3 章 プレイブックとインベントリ
- 3-1 インベントリの基礎
- 3-1-1 ホストのグループ化
- 3-1-2 ホスト変数とグループ変数
- 3-1-3 インベントリ変数のファイル分割
- 3-2 プレイブックの基礎
- 3-2-1 YAML の基本
- 3-2-2 プレイブックの構造
- 3-2-3 変数
- 3-2-4 特殊なディレクティブ
- 3-2-5 タスクのグループ化
- 3-3 プレイブックの応用
- 3-3-1 ロールの概要
- 3-3-2 プレイブックの活用
- 3-4 まとめ
第 4 章 アプリケーションデプロイメント - Orchestration
- 4-1 WordPress のデプロイメント
- 4-1-1 基本構成
- 4-1-2 OS の基本設定
- 4-1-3 データベースの構築
- 4-1-4 ロードバランサの構築
- 4-1-5 実行環境の構築
- 4-1-6 WordPress のデプロイ
- 4-1-7 接続確認
- 4-2 WordPress のメンテナンス
- 4-2-1 スケールアウト
- 4-2-2 ローリングアップデート
- 4-3 まとめ
第 5 章 システムの構成管理 - Configuration Management
- 5-1 Linux の構成管理
- 5-1-1 基本構成
- 5-1-2 ロケール管理
- 5-1-3 パッケージ管理
- 5-1-4 ユーザー管理
- 5-1-5 ネットワーク管理
- 5-1-6 リゾルバ管理
- 5-1-7 タスクの実行と確認
- 5-2 Windows の構成管理
- 5-2-1 WinRM の構成概要
- 5-2-2 Windows 管理の事前準備
- 5-2-3 Windows 管理の実装
- 5-2-4 タスクの実行と確認
- 5-3 ネットワーク機器の構成管理
- 5-3-1 ネットワークモジュールの特徴
- 5-3-2 ネットワーク機器情報取得の実装
- 5-3-3 ネットワーク機器設定変更の実装
- 5-4 まとめ
第 6 章 ブートストラッピング - Bootstrapping
- 6-1 クラウド API の利用
- 6-1-1 ダイナミックインベントリ
- 6-2 Azure の連携
- 6-2-1 Azure 環境における Ansible の利用
- 6-2-2 Azure 環境の接続準備
- 6-2-3 クラウドリソースのプロビジョニング(構築自動化)
- 6-2-4 クラウドリソースの構成管理(運用自動化)
- 6-3 Dockerの連携
- 6-3-1 Docker環境における Ansible の利用
- 6-3-2 Docker 環境の事前準備
- 6-3-3 コンテナのプロビジョニング
- 6-3-4 コンテナの構成管理
- 6-4 まとめ
第 7 章 Ansible の徹底活用
- 7-1 プレイブックのベストプラクティス
- 7-1-1 インベントリの分割
- 7-1-2 プレイブックの分割
- 7-2 Ansible Galaxy
- 7-2-1 Ansible Galaxy の検索
- 7-2-2 Ansible Galaxy によるロール管理
- 7-3 パフォーマンスチューニング
- 7-3-1 ファクトキャッシュ
- 7-3-2 タスクの並列処理
- 7-3-3 SSH のチューニング
- 7-3-4 パッケージインストールタスクの高速化
- 7-4 プレイブックのデバッグ
- 7-4-2 Ansible Console コマンドの活用
- 7-4-3 実行ファイルの保存
- 7-4-4 Playbook Debugger
- 7-5 暗号化
- 7-5-1 Ansible Vault
- 7-6 まとめ
第 8 章 組織で実践する自動化
- 8-1 自動化 2.0 の世界
- 8-1-1 サイロ化した自動化からの脱却
- 8-1-2 自動化のセルフサービスポータル
- 8-2 AWX Project の導入
- 8-2-1 AWX のアーキテクチャ
- 8-2-2 AWX のインストール
- 8-2-3 基本オブジェクトの作成
- 8-2-4 ジョブの実行
- 8-3 まとめ