狠狠撸

狠狠撸Share a Scribd company logo
Serverspecを導入したものの
放置気味な人へ
Ansible Meetup in Tokyo 2015.09
@ks888sk
自己紹介
● @ks888sk (やがみ)
○ メーカー系企業のインフラエンジニア
○ Ansibleはここ一年くらい実サービスで使ってみています
○ Ansible向けのデバッガとか作ってます
Serverspec
● サーバの設定をテストするツール
○ らくらく導入
■ gemで一発
■ 初期化スクリプトあり?
○ テストが簡単に書ける
describe package('httpd')
it { should be_installed }
end
Serverspecあるある
1. Serverspecを導入してみる
○ 導入後しばらくは、ちゃんとテストを書く
2. 数々の理由から、テストを書かなくなる
○ 忙しくて。。忘れてて。。。
3. 設定ミスが問題を起こす
○ テスト書いていれば...!
どうすればいいか?
Serverspecのテストを書き続けるには
A. TDDの実践
○ サーバ/インフラ徹底攻略とかが詳しいです
B. コードレビュー時にチェック
C. ツールでテスト不足をチェック
○ テストがないAnsibleのタスクを指摘してくれる
○ 次ページ以降で紹介
ツールでテスト不足をチェック
● Kirby
○ Ansible用のコードカバレッジツール(拙作)
○ Playbook/Roleのタスクのうち、どれだけがServerspecで
テストされているか(=カバレッジ)がわかる
○ テストがないタスクの一覧もわかる
Kirbyの実行結果の例
$ ansible-playbook web.yml -i inventory
(省略)
TASK: [Apache2のインストール] *
(省略)
TASK: [/etc/apache2/conf-available/security.confの設定] *
(省略)
PLAY RECAP ***
*** Kirby Results ***
Coverage : 50% (1 of 2 tasks are tested)
Not tested:
- /etc/apache2/conf-available/security.confの設定
*** Kirby End **
localhost : ok=2 changed=2 unreachable=0 failed=0
通常通りAnsibleを実行
カバレッジ、テストされてい
ないタスク一覧を表示
Kirbyのその他の良さ
● テストになっていないテスト (下例)が見つかる
tasks:
- name: Apache2のインストール
apt: pkg=apache2 state=present update_cache=yes
- name: /etc/apache2/conf-available/security.confの設定
template: src=/slideshow/serverspec-52756117/52756117/security.conf.j2 dest=/etc/apache2/conf-available/security.conf
Playbook (抜粋)
describe package('apache2') do
it { should be_installed }
end
describe file('/etc/apache2/conf-available/security.conf') do
it { should be_file }
end
specファイル (抜粋)
Kirbyのその他の良さ
● テストになっていないテスト (下例)が見つかる
tasks:
- name: Apache2のインストール
apt: pkg=apache2 state=present update_cache=yes
- name: /etc/apache2/conf-available/security.confの設定
template: src=/slideshow/serverspec-52756117/52756117/security.conf.j2 dest=/etc/apache2/conf-available/security.conf
Playbook (抜粋)
describe package('apache2') do
it { should be_installed }
end
describe file('/etc/apache2/conf-available/security.conf') do
it { should be_file }
end
specファイル (抜粋)
黄枠タスクに書き間違いが
あっても、発見できない
→ テストとして不十分
Kirbyのその他の良さ
● Kirbyが見つけてくれました(ドヤ)
$ ansible-playbook web.yml -i inventory
(省略)
PLAY RECAP ***
*** Kirby Results ***
Coverage : 50% (1 of 2 tasks are tested)
Not tested:
- /etc/apache2/conf-available/security.confの設定
*** Kirby End **
localhost : ok=2 changed=2 unreachable=0 failed=0
security.conf設定タスクの
テストがないことを指摘
Kirbyの詳細
● 以下をご確認下さい
○ GitHubページ
■ https://github.com/ks888/kirby
○ ブログ記事
■ http://ks888.hatenablog.
com/entry/2015/09/06/223538
まとめ
● Serverspecのテストが段々書かれなくなる問題
● 拙作ツールによる対策を紹介
○ Ansible用のコードカバレッジツールKirby
■ Ansibleのタスクのうち、テストされていないタスク一覧
がわかる
■ ご意見等、ぜひTwitter(@ks888sk)にお願いします
ご清聴ありがとうございました

More Related Content

What's hot (20)

PPT
奥别产サーバの基础知识【编集済み】
Kikunaga Taishi
?
PDF
How to contribute AWX
Hideki Saito
?
PDF
hb-agent 秘伝のタレからソースコードへ (ITインフラ 業務自動化現状確認会 ) #infra_auto
Yuichiro Saito
?
PDF
BOSHで始めるImmutable Infrastructure
i_yudai
?
PPTX
Amazon EKS への道 ~ EKS 再入門 ~
Hideaki Aoyagi
?
PPTX
Amazon EKS への道 ~入門編~
Hideaki Aoyagi
?
PPTX
Cloud Foundryの件について@OpenStack Days Tokyo 2015
Ken Ojiri
?
PPTX
Virtual Kubelet and Virtual Node
Yoshio Terada
?
PPTX
Azure Pipline × Terraform
Kentaro Higashi
?
PDF
Understanding Azure Application Gateway
Kuniteru Asami
?
PPTX
AKS と ACI を組み合わせて使ってみた
Hideaki Aoyagi
?
PPT
Physical to Iaas(Instance), case of VIP.
Yukihiko SAWANOBORI
?
PDF
辫颈虫颈惫のインフラを支える技术
Ryuta Kamizono
?
PPTX
コンテナベースサーバーレスプラットフォーム「碍苍补迟颈惫别」は厂别谤惫别谤濒别蝉蝉なのか?
Hideaki Aoyagi
?
PDF
作って(壊して?)学ふ?インターネットのしくみ サイハ?ーエーシ?ェントの実験用ASの紹介 / Introduce experimental AS in ...
whywaita
?
PDF
もっと気軽に始める础苍蝉颈产濒别
akira6592
?
PDF
ACI + Ansible
Takehiro Yokoishi
?
PDF
碍耻产别谤苍别迟别蝉で笔贬笔を动かした话
gree_tech
?
PDF
CFの便利機能を他の環境でも。Open Service Broker
Kazuto Kusama
?
PDF
Jupyter勉強会 20160701 at NII
axsh co., LTD.
?
奥别产サーバの基础知识【编集済み】
Kikunaga Taishi
?
How to contribute AWX
Hideki Saito
?
hb-agent 秘伝のタレからソースコードへ (ITインフラ 業務自動化現状確認会 ) #infra_auto
Yuichiro Saito
?
BOSHで始めるImmutable Infrastructure
i_yudai
?
Amazon EKS への道 ~ EKS 再入門 ~
Hideaki Aoyagi
?
Amazon EKS への道 ~入門編~
Hideaki Aoyagi
?
Cloud Foundryの件について@OpenStack Days Tokyo 2015
Ken Ojiri
?
Virtual Kubelet and Virtual Node
Yoshio Terada
?
Azure Pipline × Terraform
Kentaro Higashi
?
Understanding Azure Application Gateway
Kuniteru Asami
?
AKS と ACI を組み合わせて使ってみた
Hideaki Aoyagi
?
Physical to Iaas(Instance), case of VIP.
Yukihiko SAWANOBORI
?
辫颈虫颈惫のインフラを支える技术
Ryuta Kamizono
?
コンテナベースサーバーレスプラットフォーム「碍苍补迟颈惫别」は厂别谤惫别谤濒别蝉蝉なのか?
Hideaki Aoyagi
?
作って(壊して?)学ふ?インターネットのしくみ サイハ?ーエーシ?ェントの実験用ASの紹介 / Introduce experimental AS in ...
whywaita
?
もっと気軽に始める础苍蝉颈产濒别
akira6592
?
ACI + Ansible
Takehiro Yokoishi
?
碍耻产别谤苍别迟别蝉で笔贬笔を动かした话
gree_tech
?
CFの便利機能を他の環境でも。Open Service Broker
Kazuto Kusama
?
Jupyter勉強会 20160701 at NII
axsh co., LTD.
?

Viewers also liked (16)

PDF
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Hidetoshi Hirokawa
?
PDF
Ansibleを使ってみよう ~Windowsターゲット編~
Takeshi Kuramochi
?
PDF
痴补驳谤补苍迟环境の础苍蝉颈产濒别を速くしたい
Kazuhiro Oinuma
?
ZIP
クックパッドで笔耻辫辫别迟を导入した话
Satoshi Takada
?
PDF
Ansible study1
Hideki Saito
?
PDF
Dynamic Inventory: no more host lists!
SATOSHI TAGOMORI
?
PDF
入门础苍蝉颈产濒别
Taku SHIMIZU
?
PDF
Hyperlapse for Azure Media Servicesを使ってみた
Naoto MATSUMOTO
?
PDF
忍者ツールス?の颁辞耻肠丑产补蝉别导入事例
Kenichi Tsunokawa
?
PDF
Aws2013 03-15 last2
Hajime Ogushi
?
PDF
Ansible 入門 #01 (初心者向け)
Taro Hirose
?
PDF
スマホのセンサーでネットワークを操る ~Ansible TowerによるレガシーNW機器のAPI化~
akira6592
?
PDF
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
Takeshi Kuramochi
?
PDF
顿辞肠办别谤クイックツアー
Etsuji Nakai
?
PDF
AnsibleによるInfrastructure as code入門
kk_Ataka
?
PDF
Ansible 2.0 のサマライズとこれから
Takeshi Kuramochi
?
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Hidetoshi Hirokawa
?
Ansibleを使ってみよう ~Windowsターゲット編~
Takeshi Kuramochi
?
痴补驳谤补苍迟环境の础苍蝉颈产濒别を速くしたい
Kazuhiro Oinuma
?
クックパッドで笔耻辫辫别迟を导入した话
Satoshi Takada
?
Ansible study1
Hideki Saito
?
Dynamic Inventory: no more host lists!
SATOSHI TAGOMORI
?
入门础苍蝉颈产濒别
Taku SHIMIZU
?
Hyperlapse for Azure Media Servicesを使ってみた
Naoto MATSUMOTO
?
忍者ツールス?の颁辞耻肠丑产补蝉别导入事例
Kenichi Tsunokawa
?
Aws2013 03-15 last2
Hajime Ogushi
?
Ansible 入門 #01 (初心者向け)
Taro Hirose
?
スマホのセンサーでネットワークを操る ~Ansible TowerによるレガシーNW機器のAPI化~
akira6592
?
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
Takeshi Kuramochi
?
顿辞肠办别谤クイックツアー
Etsuji Nakai
?
AnsibleによるInfrastructure as code入門
kk_Ataka
?
Ansible 2.0 のサマライズとこれから
Takeshi Kuramochi
?
Ad

Similar to 厂别谤惫别谤蝉辫别肠を导入したものの放置気味な人へ (10)

PPTX
Ansible specでテストをする話
KeijiUehata1
?
PPTX
Ansible ではじめるインフラのコード化入門
Sho A
?
PDF
础苍蝉颈产濒别ではじめるサーバー?ネットワークの自动化(2018/08/22)
akira6592
?
PDF
Ansibleを失敗しながら学ぶ その1
Kazuyuki Ichikawa
?
PDF
Ansible quickstart
Hideki Saito
?
PPTX
ansible 社内お勉強会資料
Makoto Uehara
?
PDF
厂别谤惫别谤蝉辫别肠を使ってみた话
Yasufumi Moritake
?
PDF
础苍蝉颈产濒别て?始めるインフラ构筑自动化
dcubeio
?
PPTX
础苍蝉颈产濒别で始める颈苍蹿谤补罢顿顿(初级编)
佐久本正太
?
PDF
Ansible ではじめるサーバ作業の自動化
Masashi Shinbara
?
Ansible specでテストをする話
KeijiUehata1
?
Ansible ではじめるインフラのコード化入門
Sho A
?
础苍蝉颈产濒别ではじめるサーバー?ネットワークの自动化(2018/08/22)
akira6592
?
Ansibleを失敗しながら学ぶ その1
Kazuyuki Ichikawa
?
Ansible quickstart
Hideki Saito
?
ansible 社内お勉強会資料
Makoto Uehara
?
厂别谤惫别谤蝉辫别肠を使ってみた话
Yasufumi Moritake
?
础苍蝉颈产濒别て?始めるインフラ构筑自动化
dcubeio
?
础苍蝉颈产濒别で始める颈苍蹿谤补罢顿顿(初级编)
佐久本正太
?
Ansible ではじめるサーバ作業の自動化
Masashi Shinbara
?
Ad

Recently uploaded (9)

PDF
安尾 萌, 松下 光範. 環境馴致を計量可能にするための試み,人工知能学会第4回仕掛学研究会, 2018.
Matsushita Laboratory
?
PDF
安尾 萌, 北村 茂生, 松下 光範. 災害発生時における被害状況把握を目的とした情報共有システムの基礎検討, 電子情報通信学会HCGシンポジウム2018...
Matsushita Laboratory
?
PPTX
Vibe Codingを始めよう ?Cursorを例に、ノーコードでのプログラミング体験?
iPride Co., Ltd.
?
PDF
論文紹介:AutoPrompt: Eliciting Knowledge from Language Models with Automatically ...
Toru Tamaki
?
PDF
Forguncy 10 製品概要資料 - ノーコードWebアプリ開発プラットフォーム
フォーガンシー
?
PDF
論文紹介:Unbiasing through Textual Descriptions: Mitigating Representation Bias i...
Toru Tamaki
?
PPTX
色について.pptx .
iPride Co., Ltd.
?
PPTX
勉強会_ターミナルコマント?入力迅速化_20250620. pptx. .
iPride Co., Ltd.
?
PDF
安尾 萌, 藤代 裕之, 松下 光範. 協調的情報トリアージにおけるコミュニケーションの影響についての検討, 第11回データ工学と情報マネジメントに関する...
Matsushita Laboratory
?
安尾 萌, 松下 光範. 環境馴致を計量可能にするための試み,人工知能学会第4回仕掛学研究会, 2018.
Matsushita Laboratory
?
安尾 萌, 北村 茂生, 松下 光範. 災害発生時における被害状況把握を目的とした情報共有システムの基礎検討, 電子情報通信学会HCGシンポジウム2018...
Matsushita Laboratory
?
Vibe Codingを始めよう ?Cursorを例に、ノーコードでのプログラミング体験?
iPride Co., Ltd.
?
論文紹介:AutoPrompt: Eliciting Knowledge from Language Models with Automatically ...
Toru Tamaki
?
Forguncy 10 製品概要資料 - ノーコードWebアプリ開発プラットフォーム
フォーガンシー
?
論文紹介:Unbiasing through Textual Descriptions: Mitigating Representation Bias i...
Toru Tamaki
?
色について.pptx .
iPride Co., Ltd.
?
勉強会_ターミナルコマント?入力迅速化_20250620. pptx. .
iPride Co., Ltd.
?
安尾 萌, 藤代 裕之, 松下 光範. 協調的情報トリアージにおけるコミュニケーションの影響についての検討, 第11回データ工学と情報マネジメントに関する...
Matsushita Laboratory
?

厂别谤惫别谤蝉辫别肠を导入したものの放置気味な人へ