Enviar búsqueda
Cargar
Ansibleではじめるサーバー・ネットワークの自動化(2018/07/05)
•
8 recomendaciones
•
18,582 vistas
akira6592
Seguir
Ansibleの概要と、サーバーとネットワークそれぞれ簡単な利用例(サンプル)とデモをご紹介します。
Leer menos
Leer más
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 37
Descargar ahora
Descargar para leer sin conexión
Recomendados
入門Ansible
入門Ansible
Taku SHIMIZU
Ansible ネットワーク自動化チュートリアル (JANOG42)
Ansible ネットワーク自動化チュートリアル (JANOG42)
akira6592
Ansible quickstart
Ansible quickstart
Hideki Saito
Ansible2.9 ネットワーク対応のアップデート #ansiblejp
Ansible2.9 ネットワーク対応のアップデート #ansiblejp
akira6592
OpenStack超入門シリーズ いまさら聞けないNeutronの使い方
OpenStack超入門シリーズ いまさら聞けないNeutronの使い方
Toru Makabe
Ansible ではじめるインフラのコード化入門
Ansible ではじめるインフラのコード化入門
Sho A
ネットワーク運用自動化の実際〜現場で使われているツールを調査してみた〜
ネットワーク運用自動化の実際〜現場で使われているツールを調査してみた〜
Taiji Tsuchiya
Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化
dcubeio
Recomendados
入門Ansible
入門Ansible
Taku SHIMIZU
Ansible ネットワーク自動化チュートリアル (JANOG42)
Ansible ネットワーク自動化チュートリアル (JANOG42)
akira6592
Ansible quickstart
Ansible quickstart
Hideki Saito
Ansible2.9 ネットワーク対応のアップデート #ansiblejp
Ansible2.9 ネットワーク対応のアップデート #ansiblejp
akira6592
OpenStack超入門シリーズ いまさら聞けないNeutronの使い方
OpenStack超入門シリーズ いまさら聞けないNeutronの使い方
Toru Makabe
Ansible ではじめるインフラのコード化入門
Ansible ではじめるインフラのコード化入門
Sho A
ネットワーク運用自動化の実際〜現場で使われているツールを調査してみた〜
ネットワーク運用自動化の実際〜現場で使われているツールを調査してみた〜
Taiji Tsuchiya
Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化
dcubeio
nginx入門
nginx入門
Takashi Takizawa
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
Yahoo!デベロッパーネットワーク
Open Liberty: オープンソースになったWebSphere Liberty
Open Liberty: オープンソースになったWebSphere Liberty
Takakiyo Tanaka
OSC2011 Tokyo/Spring 自宅SAN友の会(前半)
OSC2011 Tokyo/Spring 自宅SAN友の会(前半)
Satoshi Shimazaki
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Shingo Kitayama
#logstudy 01 rsyslog入門
#logstudy 01 rsyslog入門
Takashi Takizawa
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
Ansibleではじめるサーバー・ネットワークの自動化(2019/04版)
Ansibleではじめるサーバー・ネットワークの自動化(2019/04版)
akira6592
さいきんのMySQLに関する取り組み(仮)
さいきんのMySQLに関する取り組み(仮)
Takanori Sejima
Ansible とネットワーク自動化の概要(SmartCS と Ansible の連携による自動化の可能性を体験!)
Ansible とネットワーク自動化の概要(SmartCS と Ansible の連携による自動化の可能性を体験!)
akira6592
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
NTT Communications Technology Development
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
akira6592
DNSキャッシュサーバ チューニングの勘所
DNSキャッシュサーバ チューニングの勘所
hdais
OpenStack超入門シリーズ Novaのディスク周りあれこれ
OpenStack超入門シリーズ Novaのディスク周りあれこれ
Toru Makabe
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
NTT DATA Technology & Innovation
2011年度 新3年生向け
2011年度 新3年生向け
Yuki Takahashi
フロー技術によるネットワーク管理
フロー技術によるネットワーク管理
Motonori Shindo
(本当に)一般的なご自宅向けのNutanix CE
(本当に)一般的なご自宅向けのNutanix CE
AkiraMasago
AnsibleによるInfrastructure as code入門
AnsibleによるInfrastructure as code入門
kk_Ataka
サーバ構築を自動化する 〜Ansible〜
サーバ構築を自動化する 〜Ansible〜
Yui Ito
Ansibleではじめるサーバー・ネットワークの自動化(2018/08/22)
Ansibleではじめるサーバー・ネットワークの自動化(2018/08/22)
akira6592
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
Takeshi Kuramochi
Más contenido relacionado
La actualidad más candente
nginx入門
nginx入門
Takashi Takizawa
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
Yahoo!デベロッパーネットワーク
Open Liberty: オープンソースになったWebSphere Liberty
Open Liberty: オープンソースになったWebSphere Liberty
Takakiyo Tanaka
OSC2011 Tokyo/Spring 自宅SAN友の会(前半)
OSC2011 Tokyo/Spring 自宅SAN友の会(前半)
Satoshi Shimazaki
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Shingo Kitayama
#logstudy 01 rsyslog入門
#logstudy 01 rsyslog入門
Takashi Takizawa
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
VirtualTech Japan Inc.
Ansibleではじめるサーバー・ネットワークの自動化(2019/04版)
Ansibleではじめるサーバー・ネットワークの自動化(2019/04版)
akira6592
さいきんのMySQLに関する取り組み(仮)
さいきんのMySQLに関する取り組み(仮)
Takanori Sejima
Ansible とネットワーク自動化の概要(SmartCS と Ansible の連携による自動化の可能性を体験!)
Ansible とネットワーク自動化の概要(SmartCS と Ansible の連携による自動化の可能性を体験!)
akira6592
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
NTT Communications Technology Development
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
akira6592
DNSキャッシュサーバ チューニングの勘所
DNSキャッシュサーバ チューニングの勘所
hdais
OpenStack超入門シリーズ Novaのディスク周りあれこれ
OpenStack超入門シリーズ Novaのディスク周りあれこれ
Toru Makabe
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
NTT DATA Technology & Innovation
2011年度 新3年生向け
2011年度 新3年生向け
Yuki Takahashi
フロー技術によるネットワーク管理
フロー技術によるネットワーク管理
Motonori Shindo
(本当に)一般的なご自宅向けのNutanix CE
(本当に)一般的なご自宅向けのNutanix CE
AkiraMasago
AnsibleによるInfrastructure as code入門
AnsibleによるInfrastructure as code入門
kk_Ataka
サーバ構築を自動化する 〜Ansible〜
サーバ構築を自動化する 〜Ansible〜
Yui Ito
La actualidad más candente
(20)
nginx入門
nginx入門
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
ネットワークの自動化・監視の取り組みについて #netopscoding #npstudy
Open Liberty: オープンソースになったWebSphere Liberty
Open Liberty: オープンソースになったWebSphere Liberty
OSC2011 Tokyo/Spring 自宅SAN友の会(前半)
OSC2011 Tokyo/Spring 自宅SAN友の会(前半)
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Ansibleはじめよぉ -Infrastructure as Codeを理解-
#logstudy 01 rsyslog入門
#logstudy 01 rsyslog入門
ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門
Ansibleではじめるサーバー・ネットワークの自動化(2019/04版)
Ansibleではじめるサーバー・ネットワークの自動化(2019/04版)
さいきんのMySQLに関する取り組み(仮)
さいきんのMySQLに関する取り組み(仮)
Ansible とネットワーク自動化の概要(SmartCS と Ansible の連携による自動化の可能性を体験!)
Ansible とネットワーク自動化の概要(SmartCS と Ansible の連携による自動化の可能性を体験!)
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
DNSキャッシュサーバ チューニングの勘所
DNSキャッシュサーバ チューニングの勘所
OpenStack超入門シリーズ Novaのディスク周りあれこれ
OpenStack超入門シリーズ Novaのディスク周りあれこれ
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
CloudNativePGを動かしてみた! ~PostgreSQL on Kubernetes~(第34回PostgreSQLアンカンファレンス@オンライ...
2011年度 新3年生向け
2011年度 新3年生向け
フロー技術によるネットワーク管理
フロー技術によるネットワーク管理
(本当に)一般的なご自宅向けのNutanix CE
(本当に)一般的なご自宅向けのNutanix CE
AnsibleによるInfrastructure as code入門
AnsibleによるInfrastructure as code入門
サーバ構築を自動化する 〜Ansible〜
サーバ構築を自動化する 〜Ansible〜
Similar a Ansibleではじめるサーバー・ネットワークの自動化(2018/07/05)
Ansibleではじめるサーバー・ネットワークの自動化(2018/08/22)
Ansibleではじめるサーバー・ネットワークの自動化(2018/08/22)
akira6592
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
Takeshi Kuramochi
What is an Ansible?
What is an Ansible?
Shunsaku Kudo
OpenStack & Ansible で実現する自動化
OpenStack & Ansible で実現する自動化
Hideki Saito
Hinemosによる初期構築~障害検知自動復旧システムの実現について
Hinemosによる初期構築~障害検知自動復旧システムの実現について
Hinemos
OSSを活用したIaCの実現
OSSを活用したIaCの実現
Trainocate Japan, Ltd.
20190319 xtech recochoku_15m_pub
20190319 xtech recochoku_15m_pub
Dai Fujikawa
ACI + Ansible
ACI + Ansible
Takehiro Yokoishi
Ansible 2.8 アップデート情報 -機能追加と注意点-
Ansible 2.8 アップデート情報 -機能追加と注意点-
akira6592
20190124_hccjp_recochoku_40m_pub
20190124_hccjp_recochoku_40m_pub
Dai Fujikawa
第9回ACRiウェビナー_セック/岩渕様ご講演資料
第9回ACRiウェビナー_セック/岩渕様ご講演資料
直久 住川
Develop Web Application with Node.js + Express
Develop Web Application with Node.js + Express
Akinari Tsugo
シラサギハンズオン 1015 1016
シラサギハンズオン 1015 1016
Yu Ito
20171206 d3 health_tech発表資料
20171206 d3 health_tech発表資料
dcubeio
MySQL最新情報 ※2015年9月5日「第1回 関西DB勉強会」での発表資料
MySQL最新情報 ※2015年9月5日「第1回 関西DB勉強会」での発表資料
yoyamasaki
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコシステムズ合同会社
Ansible 2.5 におけるネットワークモジュールのトピック(正式リリース版)
Ansible 2.5 におけるネットワークモジュールのトピック(正式リリース版)
akira6592
OpenStack Grizzly構築手順書
OpenStack Grizzly構築手順書
VirtualTech Japan Inc.
G0042 h
G0042 h
silicone69
Rancher2.3とwindows Containerで作るkubernetesクラスタ
Rancher2.3とwindows Containerで作るkubernetesクラスタ
Takashi Kanai
Similar a Ansibleではじめるサーバー・ネットワークの自動化(2018/07/05)
(20)
Ansibleではじめるサーバー・ネットワークの自動化(2018/08/22)
Ansibleではじめるサーバー・ネットワークの自動化(2018/08/22)
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
What is an Ansible?
What is an Ansible?
OpenStack & Ansible で実現する自動化
OpenStack & Ansible で実現する自動化
Hinemosによる初期構築~障害検知自動復旧システムの実現について
Hinemosによる初期構築~障害検知自動復旧システムの実現について
OSSを活用したIaCの実現
OSSを活用したIaCの実現
20190319 xtech recochoku_15m_pub
20190319 xtech recochoku_15m_pub
ACI + Ansible
ACI + Ansible
Ansible 2.8 アップデート情報 -機能追加と注意点-
Ansible 2.8 アップデート情報 -機能追加と注意点-
20190124_hccjp_recochoku_40m_pub
20190124_hccjp_recochoku_40m_pub
第9回ACRiウェビナー_セック/岩渕様ご講演資料
第9回ACRiウェビナー_セック/岩渕様ご講演資料
Develop Web Application with Node.js + Express
Develop Web Application with Node.js + Express
シラサギハンズオン 1015 1016
シラサギハンズオン 1015 1016
20171206 d3 health_tech発表資料
20171206 d3 health_tech発表資料
MySQL最新情報 ※2015年9月5日「第1回 関西DB勉強会」での発表資料
MySQL最新情報 ※2015年9月5日「第1回 関西DB勉強会」での発表資料
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
Ansible 2.5 におけるネットワークモジュールのトピック(正式リリース版)
Ansible 2.5 におけるネットワークモジュールのトピック(正式リリース版)
OpenStack Grizzly構築手順書
OpenStack Grizzly構築手順書
G0042 h
G0042 h
Rancher2.3とwindows Containerで作るkubernetesクラスタ
Rancher2.3とwindows Containerで作るkubernetesクラスタ
Más de akira6592
新人研修資料 向き合うエンジニア
新人研修資料 向き合うエンジニア
akira6592
Ansible 実践ガイド第3版 ネットワーク担当としてのふりかえり #インフラエンジニアBooks
Ansible 実践ガイド第3版 ネットワーク担当としてのふりかえり #インフラエンジニアBooks
akira6592
Ansible でお世話になっている機能と拡張
Ansible でお世話になっている機能と拡張
akira6592
Ansible 2.10 と Collection
Ansible 2.10 と Collection
akira6592
自動化の下ごしらえ
自動化の下ごしらえ
akira6592
向き合うエンジニア 2020年度版
向き合うエンジニア 2020年度版
akira6592
はじめてAnsibleのバグ修正に協力してみた
はじめてAnsibleのバグ修正に協力してみた
akira6592
CML-Personal (VIRL2)のインストールと基本機能
CML-Personal (VIRL2)のインストールと基本機能
akira6592
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみた
akira6592
自動化ツール Ansible に触れてみよう(技術インターン)
自動化ツール Ansible に触れてみよう(技術インターン)
akira6592
技術ブログを書こう
技術ブログを書こう
akira6592
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
akira6592
show コマンド結果をパースする方法あれこれ #npstudy
show コマンド結果をパースする方法あれこれ #npstudy
akira6592
はじめた自動化をどう広めるか 書籍「Fearless Change」からのヒント
はじめた自動化をどう広めるか 書籍「Fearless Change」からのヒント
akira6592
はじめどころを探る自動化アセスメント(JANOG44 ここからはじめよう、運用自動化)
はじめどころを探る自動化アセスメント(JANOG44 ここからはじめよう、運用自動化)
akira6592
向き合うエンジニア
向き合うエンジニア
akira6592
ネットワークコンフィグ分析ツール Batfish との付き合い方
ネットワークコンフィグ分析ツール Batfish との付き合い方
akira6592
Ansibleではじめるサーバー・ネットワークの自動化(2019/02版)
Ansibleではじめるサーバー・ネットワークの自動化(2019/02版)
akira6592
「自動化の行き着く先は?」をうけて
「自動化の行き着く先は?」をうけて
akira6592
Ansibleでネットワーク機器の状態確認を自動化してみよう
Ansibleでネットワーク機器の状態確認を自動化してみよう
akira6592
Más de akira6592
(20)
新人研修資料 向き合うエンジニア
新人研修資料 向き合うエンジニア
Ansible 実践ガイド第3版 ネットワーク担当としてのふりかえり #インフラエンジニアBooks
Ansible 実践ガイド第3版 ネットワーク担当としてのふりかえり #インフラエンジニアBooks
Ansible でお世話になっている機能と拡張
Ansible でお世話になっている機能と拡張
Ansible 2.10 と Collection
Ansible 2.10 と Collection
自動化の下ごしらえ
自動化の下ごしらえ
向き合うエンジニア 2020年度版
向き合うエンジニア 2020年度版
はじめてAnsibleのバグ修正に協力してみた
はじめてAnsibleのバグ修正に協力してみた
CML-Personal (VIRL2)のインストールと基本機能
CML-Personal (VIRL2)のインストールと基本機能
BGP Unnumbered で遊んでみた
BGP Unnumbered で遊んでみた
自動化ツール Ansible に触れてみよう(技術インターン)
自動化ツール Ansible に触れてみよう(技術インターン)
技術ブログを書こう
技術ブログを書こう
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
show コマンド結果をパースする方法あれこれ #npstudy
show コマンド結果をパースする方法あれこれ #npstudy
はじめた自動化をどう広めるか 書籍「Fearless Change」からのヒント
はじめた自動化をどう広めるか 書籍「Fearless Change」からのヒント
はじめどころを探る自動化アセスメント(JANOG44 ここからはじめよう、運用自動化)
はじめどころを探る自動化アセスメント(JANOG44 ここからはじめよう、運用自動化)
向き合うエンジニア
向き合うエンジニア
ネットワークコンフィグ分析ツール Batfish との付き合い方
ネットワークコンフィグ分析ツール Batfish との付き合い方
Ansibleではじめるサーバー・ネットワークの自動化(2019/02版)
Ansibleではじめるサーバー・ネットワークの自動化(2019/02版)
「自動化の行き着く先は?」をうけて
「自動化の行き着く先は?」をうけて
Ansibleでネットワーク機器の状態確認を自動化してみよう
Ansibleでネットワーク機器の状態確認を自動化してみよう
Ansibleではじめるサーバー・ネットワークの自動化(2018/07/05)
1.
株式会社 エーピーコミュニケーションズ 横地 晃(@akira6592) 2018/07/05
2.
はじめに 構成管理ツールAnsibleで、サーバーや ネットワーク機器への作業を自動化できます。 本資料ではAnsibleの概要と利用例をご紹介します ので、イメージをつかんでいただければと思います。 2 ・本資料は
Ansible 2.6.0 を利用した独自の調査に基づくものです。
3.
自己紹介 3 名前 横地 晃
@akira6592 所属 株式会社エーピーコミュニケーションズ 担当 ネットワークの設計構築 最近の出来事 会議室の名前が Kingyo になった
4.
内容 4 自動化の概要 Ansible
の概要 Ansible の構成要素(インベントリ・Playbook等) 利用例: サーバー編・ネットワーク編 (デモあり) まとめ
5.
5 自動化の概要
6.
自動化のメリット 6 効率化 人が処理するより早い
正確性 指定した通りに処理され、人の判断の揺らぎがない 拡張性 例:10台向けの仕組みを100台にも拡張しやすい
7.
自動化を始めやすい作業 「リスクが少ない」とは 失敗時の影響範囲が小さい、狭い
切り戻しが容易 ・・など 「効果が表れやすい」とは 繰り返しが多い作業 対象機器が多い作業 効果を測定可能 ・・など 7 リスクが少なく、効果が表れやすい作業
8.
【参考】Infrastructure as Code(IaC)
構成定義ファイル バージョン管理 継続的テストシステム、プロセス 一斉変更ではなく小刻みな変更 8 Infrastructure as Code - クラウドにおけるサーバ管理の原則とプラクティス https://www.oreilly.co.jp/books/9784873117966/ ソフトウェア開発で培われてきたプラクティスをインフラに適用 【例】 主な Ansible の出番
9.
9 Ansible の概要
10.
構成管理ツール「Ansible」の特徴 10 エージェントレス パワフル シンプル Playbookと呼ばれる構成定義ファイル を利用する プログラミング不要
多数のサーバー、クラウド、ネットワーク機 器向けモジュールを標準装備 モジュールを自作することも可能 操作対象機器側に専用ソフト(エージェント)は インストール不要 Chef や puppet などと比較されることが多い
11.
シェルスクリプトとの比較 モジュールを利用することで、コマンドを直接書かなくて良い エラーの扱いがラク
実行時にエラーがあった場合は、その場で止まってくれる エラーの有無はモジュール内で検出される べき等性がある 何度実行しても同じ結果になる 通常のコマンドやシェルスクリプトを呼び出すこともできる ただし、この場合はべき等性はAnsible自身は担保しない ほかのAnsibleの機能と連携できる 11 Ansible の使い方やYAMLの書き方を覚える必要がある Ansibleは・・・
12.
動作環境 12 pip install ansible
Python環境上で動作(ただしWindowsはインストール不可) インストール方法例 https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html 他、yum、dnf、apt-get 等でも可 例: junos_config モジュールであれば、Pythonパッケージ「ncclient」もインストール必要 https://docs.ansible.com/ansible/latest/modules/junos_config_module.html ※利用するモジュール(後述)によっては追加インストールも必要 (モジュールのドキュメントの「Requirements」を参照) Linux: ○ Win: × Linux: ○ Win: ○ コントロール ターゲット
13.
13 Ansibleの構成要素
14.
主な構成要素 (1) インベントリ (2) モジュール (3)
Playbook (4) ansible.cfg 14 (1)インベントリ (ホスト情報) (3)Playbook (構成定義)(2)モジュール (機能) (4)ansible.cfg (環境設定) host1 host2 host3 どこに なにを 対象機器 操作 利用 参照
15.
インベントリとは 操作対象ホストのIPアドレス、ホスト名を指定する 変数の定義やグループ化も可能 15 [web] 172.16.0.10 172.16.0.11 172.16.0.12 [db] 172.16.10.10 172.16.10.11 [all:vars] ansible_user=vagrant グループ名 変数定義 所属ホスト サンプル ※構成管理情報(AWS、Zabbixなど)から動的にインベントリ情報を生成する「ダイナミックインベントリ」という仕組みもある
16.
モジュールとは Ansibleの機能単位 Playbook
等で必要なモジュール(とオプション)を指定 16 システム • Linux • Windows クラウド等 • AWS • Azure • GCP • Dcoker • OpenStack DB • PostgreSQL • MySQL • MS SQL Server 監視 • Zabbix • Sensu • nagios 通知 • Mail • Slack • syslog NW機器 • Cisco IOS • Juniper Junos • Ariststa EOS 【対応プラットフォーム例】 などなど、バージョンアップで増えていく
17.
17 ※ モジュールインデックス http://docs.ansible.com/ansible/modules_by_category.html 分類
モジュール名 用途 サーバー系 yum yumによるパッケージのインストール、 アンインストール user ユーザーの作成、削除 win_firewall_rule Windos Firewallの設定 クラウド系 ec2 AWSのec2インスタンスの作成、終了、起 動、停止 azure_rm_virtualmachine Azure VM の管理 ネットワーク系 ios_config Cisco IOS 機器へのコンフィグ投入 junos_config Juniper Junos 機器へのコンフィグ投入 モジュールの例 全1600モジュール以上 などなど、バージョンアップで増えていく
18.
Playbookとは YAMLというフォーマットで記述する構成定義ファイル Playbookを用意せずに実行するad-hoc方式もある 18 --- -
hosts: web become: yes tasks: - name: Ensure httpd package is present yum: name: httpd state: present - name: Ensure latest index.html file is present template: src: index.html.j2 dest: /var/www/html/index.html スペースの数で 情報の階層を表現 サンプル モジュール名 モジュールオプション タスク タスク
19.
ansible.cfg とは Ansibleの動作を決める設定ファイル
例:SSHホストキーチェックの有無、インベントリファイルのパス ファイルが無い場合は、デフォルトの動作になる 19 [defaults] host_key_checking = False inventory = hosts サンプル
20.
20 【利用例1】 Webサーバーの インストールと コンテンツのデプロイ
21.
インベントリファイル 21 [web] 172.16.0.10 [web:vars] ansible_user=vagrant ansible_ssh_private_key_file=~/.ssh/testsv.key グループ「web」にホスト 「172.16.0.10 」が所属 グループ「web」で使用する変数の定義。 ログインユーザー名と秘密鍵へのパス。 利用例1
22.
Playbook 22 --- - hosts: web become:
yes tasks: - name: httpd package yum: name: httpd state: present - name: deploy index.html template: src: index.html.j2 dest: /var/www/html/index.html - name: httpd service service: name: httpd state: started enabled: yes vars: v_name: world 対象ホストを指定。インベントリファイル内で定義した グループ「web」を指定。 ログイン先で sudo する yum モジュールを利用 パッケージ「httpd」がインストールされた状態にする template モジュールを利用 テンプレートファイル「index.html.j2」を利用して生成し た内容を「/var/www/html/index.html」にデプロイ service モジュールを利用 サービス「httpd」を起動状態にする。 変数「v_name」の内容を「world」として定義 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 利用例1
23.
コンテンツファイル 23 <html> <head> <title>Test Page</title> </head> <body> <h1>Hello, {{
v_name }} !</h1> </body> </html> 変数を展開する (今回はPlaybook内の変数) Ansibleでは、Jinja2 というテンプレートエンジンを利用でき、変数や 繰り返し、条件分岐などのロジックを埋め込むことができる。 利用例1
24.
Playbook実行 24 [vagrant@centos7 demo]$ ansible-playbook
-i inventory web.yml PLAY [web] ******************************************************* TASK [Gathering Facts] ********************************************** ok: [172.16.0.10] TASK [httpd package] *********************************************** changed: [172.16.0.10] TASK [deploy index.html] ******************************************** changed: [172.16.0.10] TASK [httpd service] ************************************************ changed: [172.16.0.10] PLAY RECAP ****************************************************** 172.16.0.10 : ok=4 changed=3 unreachable=0 failed=0 [vagrant@centos7 demo]$ -i オプションでインベントリファイルを指定 Playbookファイル名 グループ「web」を対象とした処理の開始 基本情報(ファクト)の収集 httpd のインストール (実際にインストールされたためchangedステータス) Index.html ファイルのデプロイ (実際にデプロイしためchangedステータス) httpdのサービスの起動 (実際に開始したためchangedステータス) 実行結果のサマリ 利用例1
25.
確認 25 テンプレートファイルの 「Hello, {{ v_name
}} !」と 変数定義「v_name: world」が 組み合わせでこの内容に 無事にWebサーバーが起動して内容が表示された 利用例1
26.
デモ 26 利用例1 https://youtu.be/7jIv_h6xQcM 事前確認 → Playbook実行
→ 事後確認
27.
27 【利用例2】 ネットワーク機器への コンフィグ投入
28.
インベントリファイル 28 [web] 172.16.0.10 [web:vars] ansible_user=vagrant ansible_ssh_private_key_file=~/.ssh/testsv.key [junos] 172.16.0.1 [junos:vars] ansible_network_os=junos ansible_user=admin ansible_ssh_pass=p@ss9999 グループ「juons」にホスト 「172.16.0.1」が所属 グループ「juons」で使用する変数 の定義。 ネットワークOS名、ユーザー名、 パスワード 利用例2
29.
Playbook 29 --- - hosts: junos gather_facts:
no connection: netconf tasks: - name: ntp config test junos_config: lines: - set system ntp server 10.0.1.123 - name: config backup junos_command: commands: - show configuration register: result - name: save config to file copy: content: "{{ result.stdout[0] }}" dest: "show_config_{{ inventory_hostname }}.txt" 対象ホストを指定。インベントリファイル内で定義した グループ「juons」を指定。 通常のSSHではなくNETCONFで接続する junos_config モジュールを利用してコンフィグを投入 投入したいコンフィグを指定 (参照先NTPサーバー 10.0.1.123を設定) junos_config モジュールを利用してshowコマンドを実行 copy モジュールを利用 変数「result」内の標準出力の0番目の内容を、 ファイル名「show_config_172.16.0.1.txt」で保存する 実行したいshowコマンドを指定 (コンフィグファイルの表示) 実行した結果を変数「result」に代入 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 利用例2
30.
Playbook実行 30 [vagrant@centos7 demo]$ ansible-playbook
-i inventory net.yml PLAY [junos] **************************************************** TASK [ntp config test] *************************************************************** changed: [172.16.0.1] TASK [config backup] *************************************************************** ok: [172.16.0.1] TASK [save config to file] *************************************************************** changed: [172.16.0.1] PLAY RECAP *************************************************************** 172.16.0.1 : ok=3 changed=2 unreachable=0 failed=0 [vagrant@centos7 demo]$ -i オプションでインベントリファイルを指定 Playbookファイル名 グループ「junos」を対象とした処理の開始 コンフィグの投入 (実際に投入されたためchangedステータス) show configuration コマンドの実行 コンフィグのファイル保存の実行 実行結果のサマリ 利用例2
31.
確認 31 無事にコンフィグ投入とコンフィグのファイル保存ができた root@vsrx1> show configuration
system ntp | display set set system ntp server 10.0.1.123 NW機器側 [vagrant@centos7 demo]$ cat show_config_172.16.0.1.txt ## Last changed: 2018-06-20 18:20:40 UTC version 12.1X47-D15.4; system { host-name vsrx1; root-authentication { encrypted-password "$1$nq....."; ssh-rsa "ssh-rsa AAAAB3....."; } login { user vagrant { uid 2000; .... ntp { server 10.0.1.123; } } interfaces { ge-0/0/0 { ..... Ansibleホスト側 利用例2
32.
デモ 32 利用例2 事前確認 → Playbook実行
→ 事後確認 https://youtu.be/tE63YsOrX9Q
33.
33 まとめ
34.
まとめ 34 使えそうかも、と感じていただけたら幸いです。 Ansible はシンプルで始めやすいツール
エージェントレスなので、対象機器に専用ソフトは不要 Linux、Windows、クラウド、NW機器などに対応 Playbook という構成定義ファイルを作成して実行するのが 基本的な使い方
35.
【付録】参考資料 35 公式ドキュメント トップ
https://docs.ansible.com/ Getting Started https://docs.ansible.com/ansible/latest/user_guide/intro_getting_started.html モジュールインデックス http://docs.ansible.com/ansible/modules_by_category.html ハンズオンコンテンツ https://github.com/ansible/lightbulb Ansible by Red Hat https://www.redhat.com/ja/explore/ansible 書籍 Ansible実践ガイド 第2版 https://book.impress.co.jp/books/1117101100 Ansible徹底入門 https://www.shoeisha.co.jp/book/detail/9784798149943 おそらく公式ドキュメントの中で 各モジュールの説明ページを見る時間が 一番長い(何ができる?どう使う?)
36.
【付録】コミュニティ情報 36 https://ansible-users.connpass.com/ Ansible Night 通常セッションとLT。年に数回全国で開催される。 次回
2018/07/12 Ansible Night in Osaka 2018.07 https://ansible-users.connpass.com/event/90117/ 次々回 2018/08/02 Ansible Night in Fukuoka 2018.08 https://ansible-users.connpass.com/event/93620/ Ansible もくもく会 ハンズオン。年に数回開催される。 次回 2018/07/17 Ansibleもくもく会 (第4回) https://ansible-users.connpass.com/event/92701/ Ansible ユーザー会
37.
【付録】イベント情報 37 https://www.janog.gr.jp/meeting/janog42/program/ASBL 日付 : 2018/07/11 概要: Ansibleの初心者向けのチュートリアルとなります。 主にサーバ向けの構成管理ツールとして利用されるAnsible ですが、近年はネットワークの構成管理 および自動化ツールとしても利用されるようになっております。 今回はこれからAnsibleを始められる方や初心者向けに、概 要/基礎から簡単なプレイブックの書き方 などを紹介して参ります。 ★ストリーム配信および録画公開予定 Ansible
ネットワーク自動化チュートリアル 【JANOG42 Meeting in Mie】
Descargar ahora