Slide 1

Slide 1 text

1 インフラエンジニアBooks #20 2022.04.20

Slide 2

Slide 2 text

● はじめに ● VMware章の紹介 ● Linux章の紹介 ● コンテナ章の紹介 アジェンダ 2 #インフラエンジニア Books

Slide 3

Slide 3 text

3 Part1: はじめに #インフラエンジニア Books

Slide 4

Slide 4 text

4 Ansibleクックブック 本書の概要 ● 本書では、Linux、VMware、コンテナ(Kubernetes)、ネット ワーク機器に対する自動化のユースケースごとにサンプル PlaybookやTipsを紹介しています 本書の想定読者 ● Ansibleの基礎知識を既に修得済で、これから自動化に取り組む または既に取り組んでいる方を想定しています ● もし、自動化対象が本書で紹介している仮想化技術やアプライア ンスなどにマッチし自動化実装をどうしていくか?について悩ん でる方がいましたら是非参考にしてください GitHubリポジトリの紹介 ● 紹介しているPlaybookは以下のリポジトリで公開しています 本書と一緒に活用ください https://github.com/ansible-cookbookjp/playbooks #インフラエンジニア Books

Slide 5

Slide 5 text

5 本書を出版した背景 Ansible は環境的にもスキル的にもはじめやすいツールで、これまで入門書も多数発売されてきました。 しかし、Ansibleユーザー会などのコミュニティでは「基礎は分かったが、実現したいことに対してどのモ ジュールを使ってどうプレイブックを書けばいいか分からない」という悩みを聞くことがたびたびありまし た。そのため、入門書とは別に「実現したいこと」を切り口にした次の一冊があるといいのではないかと考え ていました。 そんな矢先、Ansible実践ガイド第3版でお世話になった編集者の方から、同様のコンセプトの企画でお声が けいただき、執筆活動が始まりました。 #インフラエンジニア Books

Slide 6

Slide 6 text

6 著者紹介 #インフラエンジニア Books 大嶋 健容 (@sky_jokerxx) 宮崎 啓史 (@zaki_hmkc) 横地 晃 (@akira6592) 三枝 浩太 (@usagi_automate) 名前 (@Twitter ID) サーバメイン NWメイン

Slide 7

Slide 7 text

7 全体の目次概要 第1章 Ansibleの概要 AnsibleおよびCoreになってからの基本概念の紹介 第2章 プラットフォーム共通 Ansibleを使ったTipsの紹介 第3章 Linux Linuxの基本操作や運用に必要な自動化をす Playbook/Tipsの紹介 第4章 VMware ESXi/vCenterの操作を自動化をするPlaybook/Tips の紹介 #インフラエンジニア Books 第5章 コンテナ DockerやKubernetesの操作を自動化する Tips/Playbookの紹介 第6章 ルーター/スイッチ Cisco IOSのネットワーク機器(ルータ/スイッチ)を 対象に操作を自動化するPlaybook/Tipsの紹介 第7章 ロードバランサ F5 BIG-IPのLB設定に必要な操作を自動化する Playbook/Tipsの紹介 第8章 SDN Cisco ACIのネットワーク設定(ブリッジドメイン、エ ンドポイントグループ、フィルーターなど)を自動化す るPlaybook/Tipsの紹介 ★ 本日お話する対象 ★ ★ ★

Slide 8

Slide 8 text

8 Part2 VMware #インフラエンジニア Books

Slide 9

Slide 9 text

9 自己紹介 #インフラエンジニア Books --- - 名前: 大嶋 健容 所属: Red Hat K.K. 仕事: Ansibleを用いた自動化コンサルタント Twitter ID: @sky_jokerxx GitHub: ID: sky-joker Collaborator(共同開発者): - VMware Collection - Zabbix Collection Blog: https://sky-joker.tech/ 浸かってる沼: - 小型PCクラスタ構築 - オーディオ関連(真空管はいいぞ) 最近興味あること: - 仮説検証型アジャイル

Slide 10

Slide 10 text

VMware 10 目次(大項目) ● 4-1 概要 ● 4-2 ESXi設定 ● 4-3 vCenter 基本設定 ● 4-4 仮想マシン操作 ● 4-5 基本運用 #インフラエンジニア Books

Slide 11

Slide 11 text

11 前提 ● AnsibleからESXi/vCenterを操作する場合はVMwareのライセンスが必要 ○ ESXiの無償ライセンスの場合はvSphere APIが読み込みのみになってしまうため操作できません ○ 60日間の評価モードであれば使用することが可能ですが、評価期間が過ぎると操作できなくなります ○ もし、個人検証目的であれば VMUG Advantage に登録することでライセンス ($200/年) を入手する ことが可能です https://www.vmug.com/membership/vmug-advantage-membership/ ○ または vExpert に認定してもらうことで検証用ライセンスを入手することも可能です(年2回) https://vexpert.vmware.com/ ● community.vmwareコレクションをベースに紹介 ○ VMwareのコレクションには community.vmware(コミュニティー開発) と vmware.vmware_rest(Red Hat開 発) の2種類が存在しますが、本書では前者を前提に紹介しています ○ 補足となりますがネットワークだと NSX-Tモジュール(VMware開発) も存在します #インフラエンジニア Books

Slide 12

Slide 12 text

4-2 ESXi設定 12 #インフラエンジニア Books 概要 ESXiの設定で利用可能なモジュールをベースにした Playbook を紹介をしています キーワード 情報取得 データストア     ファイアウォール サービス   仮想スイッチ ポートグループ  VMkernel ローカルユーザー  ユースケース ● ESXiに対して新規データストアのマウント (NFS, VMFS) ● VMを接続する仮想スイッチ、ポートグループの追加 ● VMkernelの追加など 以下の対象者にオススメ ● ESXiのみの検証環境などで使用されている方 ● ESXiで可能な設定自動化を知りたい方

Slide 13

Slide 13 text

4-3 vCenter基本設定 13 #インフラエンジニア Books 概要 vCenter Serverを用いた環境設定が可能なモジュールをベー スに基本的な構成が作れる Playbookを紹介しています キーワード フォルダ パーミッション カテゴリ リソースプール メンテナンスモード タグ ライセンス データセンタ  クラスタ DRS HA       分散仮想スイッチ/ポートグループ ESXiホスト登録         ユースケース ● データセンタ/クラスタ作成、DRS/HA設定 ● 分散仮想スイッチを構築して ESXiホストの登録 ● カテゴリやタグを用いた管理など 以下の対象者にオススメ ● vCenter Serverの設定を自動化して効率化を図りたい方

Slide 14

Slide 14 text

4-4 仮想マシン操作 14 #インフラエンジニア Books 概要 仮想マシンの操作が可能なモジュールをベースに一般的な運用 で役立ちそうなPlaybookを紹介しています キーワード VM作成 OVFデプロイ/エクスポート スナップショット スクリーンショット ファイル取得/コピー コマンド実行 vMotion             ユースケース ● VMの新規作成またはテンプレートからの複製 (clone) ● ゲストOSのコマンド実行、ファイル転送・取得 ● スナップショットの取得・戻しなど 以下の対象者にオススメ ● VMのデプロイやスナップショット取得・戻しの作業を移管した い方 ● 既に展開しているVMに対してAnsibleマシンとNWリーチャビ リティーが無い状態でもゲスト OS操作をしたいと思っている方

Slide 15

Slide 15 text

4-5 基本運用 15 #インフラエンジニア Books 概要 基本的な運用の例としてログ取得やレポートを生成する Playbookを紹介しています キーワード ログ取得 レポート生成      ユースケース ● ESXiのサポートログの取得の自動化 ● 構成情報を把握するためのレポート生成 以下の対象者にオススメ ● ログ取得をオペレーターなどに移管したい方 ● 構成情報の収集から始めてみたい方

Slide 16

Slide 16 text

16 Part3 Linux Container #インフラエンジニア Books

Slide 17

Slide 17 text

17 自己紹介 #インフラエンジニア Books 自己紹介 - 名前: 宮﨑 啓史 所属: エーピーコミュニケーションズ web: - https://zaki-lknr.github.io/ - https://zaki-hmkc.hatenablog.com/ twitter: @zaki_hmkc 好き: - カレー - お台場

Slide 18

Slide 18 text

第3章 Linux 18 Linux OSの設定や運用、ファ イルやコマンド操作等サーバ 自動化を中心としたplaybook 集 目次(大項目) ● 3-1 概要 ● 3-2 OS基本設定 ● 3-3 ファイル操作 ● 3-4 Webサーバ構築例 ● 3-5 コマンドの実行 #インフラエンジニア Books

Slide 19

Slide 19 text

3章Linux 3-2 OS基本設定 19 OSインストール後やVMのデ プロイ後に行う各種設定の playbook集 ● 3-2-1 ユーザを作成する ● 3-2-2 ネットワークを設定する ● 3-2-3 パッケージインストールする(dnf) ● 3-2-4 パッケージインストールする(apt) ● 3-2-5 cronを管理する ● 3-2-6 ファイアウォールを設定する ● 3-2-7 LVMで新しい論理ボリュームを作成する ● 3-2-8 OSを再起動する ● 3-2-9 SELinuxを設定する ● 3-2-10 systemdを管理する ● 3-2-11 カーネルモジュールをロードする ● 3-2-12 カーネルパラメータを設定する ● 3-2-13 SSH公開鍵認証を設定する #インフラエンジニア Books

Slide 20

Slide 20 text

20 3-2-1 ユーザ作成 (書籍例) #インフラエンジニア Books

Slide 21

Slide 21 text

3章Linux 3-3 ファイル操作 21 ファイル作成や編集を行うプレイブッ ク例 ● 3-3-1 ディレクトリを作成する ● 3-3-2 空ファイルを作成する ● 3-3-3 シンボリックリンクを作成する ● 3-3-4 マネージドノードへファイルをコピーする ● 3-3-5 Jinja2テンプレート ● 3-3-6 Webサーバからファイルをダウンロードする ● 3-3-7 Gitのリモートリポジトリからクローンする ● 3-3-8 replaceで正規表現置換 ● 3-3-9 lineinfileで文字列の追記または更新 ● 3-3-10 blockinfileで複数行の追記または更新 モジュール例: file, copy, template, url, git, … #インフラエンジニア Books

Slide 22

Slide 22 text

22 3章Linux 3-4 Webサーバ構築例 #インフラエンジニア Books Webサーバに限らずBasic認証を使 うプロダクト・SSL証明書が必要な サーバアプリに応用 ● 3-4-1 Basic認証のパスワードファイルを作成 ● 3-4-2 HTTPSサーバー用の自己署名証明書を作成 ● 3-4-3 Let's Encryptを使った証明書作成

Slide 23

Slide 23 text

23 3章Linux 3-5 コマンドの実行 #インフラエンジニア Books ● 冪等性の考慮 ● チェックモードの対応 ● タスクの実行条件の指定 ● エラーのハンドリング ● 3-5-1 Linuxコマンドを実行する ○ commandモジュール ○ shellモジュール

Slide 24

Slide 24 text

第5章 Container 24 基本的にCLIの docker・kubectlコマンドの機 能がモジュールで提供されて いる 目次(大項目) ● 5-1 概要 ● 5-2 Docker ● 5-3 Kubernetes #インフラエンジニア Books

Slide 25

Slide 25 text

5章Container 5-2 Docker 25 実装例 ● ボリュームのバックアップ ● NetBoxのデプロイ ● 5-2-1 docker loginを実行する ● 5-2-2 Dockerイメージをpullする ● 5-2-3 Dockerイメージをbuildする ● 5-2-4 Dockerイメージをtarアーカイブへsaveする ● 5-2-5 tarアーカイブのイメージファイルをloadする ● 5-2-6 Dockerイメージをpushする ● 5-2-7 ブリッジネットワークを作成する ● 5-2-8 コンテナをデプロイする ● 5-2-9 コンテナ内のコマンドを実行する ● 5-2-10 Docker Composeを使う モジュール例 ● docker_imageモジュール ● docker_containerモジュール #インフラエンジニア Books

Slide 26

Slide 26 text

5章Container 5-3 Kubernetes 26 実装例 ● MetalLBのデプロイ ● 5-3-1 Kubernetesのリソースを作成する ○ manifestファイルでデプロイ ○ Jinja2テンプレートでデプロイ ● 5-3-2 Pod情報や一覧を取得する ● 5-3-3 Podのログを取得する ● 5-3-4 Pod内のコマンドを実行する ● 5-3-5 Helmでアプリケーションをデプロイする ● 5-3-6 Helmリポジトリを設定する #インフラエンジニア Books

Slide 27

Slide 27 text

27 Thank you For listening! #インフラエンジニア Books