SlideShare a Scribd company logo
あなたの側で、あなた以上に考える。
AWSでシステム構築工数を1/10にしつつ
高品質化も実現した枠組みのご紹介
1
あなたの側で、あなた以上に考える。Agenda
1. 自己紹介
2. スカイアーチネットワークスのご紹介
3. AWSを利用し分かった課題
4. システム構築の工数削減/品質向上に利用した枠組み
– AWS CloudFormation
– Chef
– Serverspec
– Zabbix
5. SkyHopper デモ
6. DevOps(Infrastructure as Code)の社内展開方法
7. まとめ
2
あなたの側で、あなた以上に考える。
自己紹介
あなたの側で、あなた以上に考える。自己紹介
20年程前
電子工作少年
N88-BASIC パラレルポート経由でLチカ、ラジコンを動かしたり…
現在
Raspberry PiでLチカ、R2D2をJuliusで日本語対応させて動かしたり…
会社では様々な角度から日々のサーバ管理業務にまつわる
業務効率化、自動化、新規サービス開発に取り組んでおります。
株式会社スカイアーチネットワークス
運用自動化責任者 神津 崇士 (こうづ たかし)
tktk19
http://kouzu.info
あなたの側で、あなた以上に考える。自己紹介
好きなAWSサービス:Amazon API Gateway
あなたの側で、あなた以上に考える。
会社紹介
あなたの側で、あなた以上に考える。会社紹介
7
サバカン屋
(サーバー管理)
あなたの側で、あなた以上に考える。
AWSを利用し分かった課題
突然ですが
AWSのマネジメントコンソールを使っていて
不便に思った事はありませんでしょうか??
また、ターミナルで毎回同様のコマンド操作に飽き飽きされて
ませんか?
あなたの側で、あなた以上に考える。
AWSを利用し分かった課題
他にもEBS, Security Group, Key Pair…
あなたの側で、あなた以上に考える。
AWSを利用し分かった課題
最初は操作を覚えるのが楽しかった
マネジメントコンソール/ターミナル操作ですが、ふと思い返すと…
繰り返し作業が多く (特に同様のシステム作成が多いと)
クラウド化のメリットを活かしきれていない??
•前にも見たようなシステム構成だなぁ…
•作業対象インスタンスどれ!? EBSどれ!?
•セキュリティグループ都度作成…
•RDSのパラメータグループ都度設定…
•クラウド利用手順書を作成したが、当時とマネジメントコンソールが違いすぎる!?
•俺は生涯に何回 yum install を打つのだろう
•サーバ状態確認、Listenポートは 80, 443, 3306…
あなたの側で、あなた以上に考える。
AWSを利用し分かった課題
そのように感じた貴方は
AWSマネジメントコンソール及び
ターミナルのみでのシステム運用
卒業です!
あなたの側で、あなた以上に考える。
AWSを利用し分かった課題
卒業後の進路として
独断ではございますが、弊社OSS SkyHopperで利用しているAWSのサービス
並びに各種OSSを紹介させて頂きます。(Infrastructure as Codeを実践)
12
あなたの側で、あなた以上に考える。AWS CloudFormation 一括でリソースコレクションを管理
• JSONフォーマットのTemplateファイルを元にインフラ作成が可能です
• Stackという枠の中に各種AWSリソースが作成されます
• パラメータを埋め込めるのでインスタンスサイズや許可IPアドレス等々
テンプレート利用時に指定が可能です
Template
Infrastructure
13
あなたの側で、あなた以上に考える。AWS CloudFormation 一括でリソースコレクションを管理
動作するテンプレート作成には試行錯誤が必要ですが
インフラストラクチャ設計のコード化が可能です。
※JSONファイルの編集には Atom Editorが お薦めです。
14
あなたの側で、あなた以上に考える。Chef でサーバの構成管理
• 構成管理ツールの原則に沿ったシステム自動構築のためのフレームワーク
• 構成管理ツールの原則の中で最も重要な原則
冪等性(べきとうせい) - ある操作を繰り返しても結果が同じ
• サーバの状態定義をRubyで記述出来る
あなたの側で、あなた以上に考える。Chef でサーバの構成管理
package ‘httpd’ do
action :install
end
シェルスクリプトで記載した場合
台本を書く
if ! rpm -qa | grep httpd ; then
yum -y install httpd
fi
Chefを利用した場合
結末だけを書く
httpdパッケージがインストールされていな
ければ、httpdをインストールする
パッケージ httpd がインストール
されている状態
Cookbookを作成する事でOS/ミドルウェア周りの
インストール/設定手順をコード化する事が可能です。
あなたの側で、あなた以上に考える。Chef でサーバの構成管理
2011年1月より2015年9月のGoogleトレンド結果
あなたの側で、あなた以上に考える。serverspecでサーバ状態をテスト
• テスト駆動インフラ/インフラCIを実現するためのフレームワーク
• 国内で開発され開発者の方自ら本を執筆している
• テスト対象のサーバに対してSSHログインし実行結果を確認するというシン
プルなアーキテクチャであるため、エージェントレスで運用が可能
あなたの側で、あなた以上に考える。serverspecでサーバ状態をテスト
describe service(‘httpd’), :if => os[:family] == ‘redhat’ do
it { should be_enabled }
it { should be_running }
end
...
describe port(80) do
it { should be_listening }
end
...
describe command(‘curl http://169.254../meta/instance-type') do
its(:stdout) { should match /t2.small/ }
end
#サービス httpdの自動起動がOnである
#サービス httpdが起動中である
#port 80がListen状態である事
#インスタンスタイプがt2.smallである事
導入からサンプルテスト実施まで5分あれば十分です!
正となるサーバ状態をテストコード化し繰り返し実施できます
あなたの側で、あなた以上に考える。Zabbixで監視 / 他サービスと連携
• 言わずとしれた…統合監視ソフトウェア
• 見た目のデザイン変更、Agentとの通信に暗号化が利用できるVer3.0がもうす
ぐリリースされる予定 (現在3.0のα版の位置付けの2.5が利用可能です)
• Zabbix 2.0以降 APIに正式対応しプログラム連携を行いやすくなりました
• アラート内容を引数として自前スクリプトを呼び出せるため Twilio / ChatOps
ツール 等との連携もスムーズです
あなたの側で、あなた以上に考える。Zabbixで監視 / 他サービスと連携
# gem install sky_zabbix --version '~> 2.2.0'
# gem install sky_zabbix --version '~> 2.4.0'
あなたの側で、あなた以上に考える。Zabbixで監視 / 他サービスと連携
画面での監視登録はミスの原因となるためコード化しましょう!
require ‘sky_zabbix’
zabbix_url = ’http://your.zabbix.host/api_jsonrpc.php’
client = SkyZabbix::Client.new(zabbix_url)
client.login(’admin’, ’pass’)
puts client.host.create(
host: “UserXXServer2”,
interfaces: [{
type: 1,
main: 1,
ip: "監視対象サーバIP”,
port: 10050,
useip: 1
}],
groups: [
groupid: "2", # グループID、ここでは「Linux Servers」を指定
]
)
あなたの側で、あなた以上に考える。SkyHopper
開発の目的: お客様の継続的インテグレーションを加速出来る体制を整えるため
に「より早く」「より確実に」パターン化されたサーバの構築、運用を実施する
手段: APIやDevOpsツールを組み合わせシームレスに連携する事で、AWSマネ
ジメントコンソールに入らない、ターミナルに接続しない事を目標に作成を進め
ております。
あなたの側で、あなた以上に考える。SkyHopper
デモ
あなたの側で、あなた以上に考える。SkyHopper の今後
• 2015.09.08 (ver 1.0.0)
– MFA対応, Zabbix監視のTemplate対応, EBS Snapshot取得機能
• 2015.12月版
– Chef why-run 機能を搭載!
– ELBの証明書アップロード&管理を簡単に行えるようになりました
– Windowsインスタンス対応
– デザインの統一感をもたせるようにUI改善
※現在公開最新Verで一部機能が動作しないため v1.3 をお使い下さい
今週中には修正予定となります
あなたの側で、あなた以上に考える。
DevOps文化の社内展開
あなたの側で、あなた以上に考える。Infrastructure as Codeの導入
27
導入の障壁を和らげる施策
curl -L http://sky…/sky_init.sh | bash
ワンライナーインストーラ作成で利用されるように
あなたの側で、あなた以上に考える。Infrastructure as Codeの導入
SkyHopper利用に絡めたInfrastructure as Code 教育を
社外・社内で実施しております
あなたの側で、あなた以上に考える。まとめ & 宣伝
• AWSの用意しているAPI・サービスを適切に利用する事で
高品質に、短期間でシステムを作ることが可能となる
• DevOpsツール群を組み合わせて利用する事で上記をさらに加速する事ができる
スカイアーチネットワークスでは下記を実施しております
• SkyHopperの導入支援
• SkyHopperを含めたDevOps入門セミナーの実施
• ご利用のシステムに合わせたCookbook開発
あなたの側で、あなた以上に考える。
30
株式会社スカイアーチネットワークス
〒105-0001 東京都港区虎ノ門4-2-12 虎ノ門4丁目MTビル2号館 5階
TEL 03-6743-1100 FAX 03-6743-1101
info@skyarch.net http://www.skyarch.net
All material contained within this presentation is the confidential
And proprietary information of Skyarch Networks Inc. Copyright 2015.
本資料(添付資料を含む)に掲載されている情報(ページデザイン等のビジュアル
を含む)は全て株式会社スカイアーチネットワークスの知的財産です。
この中の情報を再利用したものも全て株式会社スカイアーチネットワークスの
知的財産権に属します。コンテンツの複製、社外への公開、社内利用への転用
は全て、株式会社スカイアーチネットワークスの許諾を必要とする旨、ご理解を
お願いします。(Copyright 2015)

More Related Content

PDF
re:Inventの振り返りで学ぶAWSを利用したデータ活用戦略と、サバカン屋の新作缶づめ戦略
PDF
スカイアーチセミナー:【AWS基礎講座】提案で差をつける3つの条件:150325
PDF
サーバレス構成の運用・監視と自社製Data○ogもどきの話 公開用
PDF
ベンチャーCTO、AWSエバンジェリストを経て考える、クラウド時代に向き合うエンジニア像のこれから
PDF
AWSクラウドデザインパターン(CDP) - Eコマース編 -
PPTX
AWS歴4ヵ月の勉強法
PDF
コンソールゲームを世界展開してみた - JAWS DAYS 2015
re:Inventの振り返りで学ぶAWSを利用したデータ活用戦略と、サバカン屋の新作缶づめ戦略
スカイアーチセミナー:【AWS基礎講座】提案で差をつける3つの条件:150325
サーバレス構成の運用・監視と自社製Data○ogもどきの話 公開用
ベンチャーCTO、AWSエバンジェリストを経て考える、クラウド時代に向き合うエンジニア像のこれから
AWSクラウドデザインパターン(CDP) - Eコマース編 -
AWS歴4ヵ月の勉強法
コンソールゲームを世界展開してみた - JAWS DAYS 2015

What's hot (20)

PDF
AWS管理を自動化する奥義
PDF
クラウド運用3足の草鞋151102
PDF
アプリエンジニアからクラウド専用のインフラエンジニアになってみて
PDF
AWSクラウドデザインパターン(CDP) - 概要編 -
PPTX
AWSクラウドデザインパターン VPC移行編
PDF
JAWS DAYS 2015
PDF
20130519 JAWS-UG青森 美人CDP/CDP男子「も」2.0へ
PDF
20130520 実例で見るAWSの特徴と活用方法@JAWS-UG青森 第1回勉強会
PDF
CDP(キャンペーンサイト編)
PDF
OSS/linux on Azureの活用方法と勘所
PPTX
セルフペースラボで気軽に始めるAWS
PPTX
Azure使いから見たAWSの良いところ
PDF
JAWS-UG初心者支部第6回勉強会 AWS概要 説明資料
PDF
クラウドデザインパターンのススメ
PDF
初心者向けWebinar AWSでDRを構築しよう
PPTX
Kinesis Firehoseを使ってみた
PDF
Slerがawsで運用してきた話
PDF
クラウドデザインパターンから始めるクラウドの利点と弱点の理解~提案から設計・開発・保守に活かす!~
PPTX
Azure aws違い
PDF
モバイルゲームにおけるAWSの泥臭い使い方
AWS管理を自動化する奥義
クラウド運用3足の草鞋151102
アプリエンジニアからクラウド専用のインフラエンジニアになってみて
AWSクラウドデザインパターン(CDP) - 概要編 -
AWSクラウドデザインパターン VPC移行編
JAWS DAYS 2015
20130519 JAWS-UG青森 美人CDP/CDP男子「も」2.0へ
20130520 実例で見るAWSの特徴と活用方法@JAWS-UG青森 第1回勉強会
CDP(キャンペーンサイト編)
OSS/linux on Azureの活用方法と勘所
セルフペースラボで気軽に始めるAWS
Azure使いから見たAWSの良いところ
JAWS-UG初心者支部第6回勉強会 AWS概要 説明資料
クラウドデザインパターンのススメ
初心者向けWebinar AWSでDRを構築しよう
Kinesis Firehoseを使ってみた
Slerがawsで運用してきた話
クラウドデザインパターンから始めるクラウドの利点と弱点の理解~提案から設計・開発・保守に活かす!~
Azure aws違い
モバイルゲームにおけるAWSの泥臭い使い方
Ad

Viewers also liked (20)

PDF
仮想マシンを使った開発環境の簡単共有方法
PDF
Solaris Zone と Puppet、Serverspec でインフラ CI
PDF
Infrastructure as Codeの取り組みと改善
PDF
Infra as Code Sapppro Casual 札幌の開催趣旨とTest-Kitchenの話
PDF
Server specのご紹介
PDF
Ansibleを使ってサーバ100台にBaculaクライアントを簡単インストール
PDF
Serverspec at Testing Framework Meeting
PDF
師弟登壇・新米サムライの集い 2013
PDF
Serverspecを使ってサーバ5000台のBaculaクライアントをテスト
PDF
仕事を遊びにする自動化とガラクタプロダクト
PDF
itamae + Serverspecで テスト駆動インフラやってみた #shibuyarb
PDF
ペパボ福岡支社におけるRubyの活用事例
PPTX
AWS Startup Tech Meetup #008 発表資料
PDF
[LT] インフラの人がChefやServerspec(ほか)が Rubyだったおかげですこし プログラムをするようになった話
PDF
Ansible の CI を drone/Dokcker で試してみた
PDF
若手インフラエンジニア現状確認会 @hfm #wakateinfra
PDF
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
ODP
Serverspecの本気をみるのです
PDF
さくらインターネットにおけるServerspec導入事例(DevOps勉強会 #3 Serverspecの巻)
PPTX
Ansible ではじめるインフラのコード化入門
仮想マシンを使った開発環境の簡単共有方法
Solaris Zone と Puppet、Serverspec でインフラ CI
Infrastructure as Codeの取り組みと改善
Infra as Code Sapppro Casual 札幌の開催趣旨とTest-Kitchenの話
Server specのご紹介
Ansibleを使ってサーバ100台にBaculaクライアントを簡単インストール
Serverspec at Testing Framework Meeting
師弟登壇・新米サムライの集い 2013
Serverspecを使ってサーバ5000台のBaculaクライアントをテスト
仕事を遊びにする自動化とガラクタプロダクト
itamae + Serverspecで テスト駆動インフラやってみた #shibuyarb
ペパボ福岡支社におけるRubyの活用事例
AWS Startup Tech Meetup #008 発表資料
[LT] インフラの人がChefやServerspec(ほか)が Rubyだったおかげですこし プログラムをするようになった話
Ansible の CI を drone/Dokcker で試してみた
若手インフラエンジニア現状確認会 @hfm #wakateinfra
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
Serverspecの本気をみるのです
さくらインターネットにおけるServerspec導入事例(DevOps勉強会 #3 Serverspecの巻)
Ansible ではじめるインフラのコード化入門
Ad

Similar to AWSでシステム構築工数を1/10にしつつ、高品質化も実現した枠組みのご紹介 (20)

PDF
実践!AWSクラウドデザインパターン
PDF
[AWS Summit 2012] ソリューションセッション#2 リーンクラウドでいこう! クラウドで実現するリーンスタートアップ
PPTX
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
PPTX
はじめての Bluemix でシングルサインオン ~ 雲間を越えて、つなげたい
KEY
CloudFoundryをつかってみよう
PDF
JAWS re:Mote 2015 Nagoya
PDF
#cross2012 クラウドCROSS ニフティの中の人によるニフティクラウド活用
PDF
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
PPTX
20121221 AWS re:Invent 凱旋報告
PDF
Couchbaseの紹介 2015/03/05
PDF
LambdaとMobileの美味しいかもしれない関係
PDF
AWS初心者向けWebinar AWSでのNoSQLの活用
PDF
Reco choku tech night #09 -reinvent2018報告会-
PDF
Ph perがawsと出会ってdev opsを目指した話
PPTX
同じサービスを ECSとOpsWorksで 運用してみた
PDF
Eight meets AWS
PDF
IaC事始め
PDF
Amazon Web Services 最新事例集
PDF
AWSクラウドデザインパターン - JEITA講演 -
PDF
Open stack reference architecture v1 2
実践!AWSクラウドデザインパターン
[AWS Summit 2012] ソリューションセッション#2 リーンクラウドでいこう! クラウドで実現するリーンスタートアップ
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
はじめての Bluemix でシングルサインオン ~ 雲間を越えて、つなげたい
CloudFoundryをつかってみよう
JAWS re:Mote 2015 Nagoya
#cross2012 クラウドCROSS ニフティの中の人によるニフティクラウド活用
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
20121221 AWS re:Invent 凱旋報告
Couchbaseの紹介 2015/03/05
LambdaとMobileの美味しいかもしれない関係
AWS初心者向けWebinar AWSでのNoSQLの活用
Reco choku tech night #09 -reinvent2018報告会-
Ph perがawsと出会ってdev opsを目指した話
同じサービスを ECSとOpsWorksで 運用してみた
Eight meets AWS
IaC事始め
Amazon Web Services 最新事例集
AWSクラウドデザインパターン - JEITA講演 -
Open stack reference architecture v1 2

More from 株式会社スカイアーチネットワークス (11)

PDF
宇宙一美味いサバカンの駄洒落はラスベガスで通用したのか〜有沢のラスベガス出展挑戦レポート〜
PDF
PDF
スカイアーチセミナー:[スカイアーチNTTCom共催セミナー]事例で学ぶ賢いクラウド活用法 ~コンテンツ配信編~(事例セッション):150522
PDF
スカイアーチセミナー:[スカイアーチNTTcom共催セミナー]事例で学ぶ賢いクラウド活用法~コンテンツ配信編~:150522
PDF
スカイアーチセミナー:[スカイアーチ AWS共催]AWS移行のプロが教える!導入への3ステップ(skyhopperのご紹介):150521
PDF
スカイアーチセミナー:[スカイアーチ AWS共催]AWS移行のプロが教える!導入への3ステップ:150521
PDF
スカイアーチセミナー:Web制作会社エンジニア様向け『クラウド活用3つの秘訣』:150225
PDF
スカイアーチセミナー:【Web制作・SI企業様向け】サーバー管理が怖くなくなる方法
PDF
スカイアーチセミナー:自社アプリをクラウド展開する為の『失敗しない3つの法則
PDF
クラウドで始める事業継続[クラウドEXPO2012]
PPT
【スカイアーチ】Webサイトを脆弱性攻撃から守る
宇宙一美味いサバカンの駄洒落はラスベガスで通用したのか〜有沢のラスベガス出展挑戦レポート〜
スカイアーチセミナー:[スカイアーチNTTCom共催セミナー]事例で学ぶ賢いクラウド活用法 ~コンテンツ配信編~(事例セッション):150522
スカイアーチセミナー:[スカイアーチNTTcom共催セミナー]事例で学ぶ賢いクラウド活用法~コンテンツ配信編~:150522
スカイアーチセミナー:[スカイアーチ AWS共催]AWS移行のプロが教える!導入への3ステップ(skyhopperのご紹介):150521
スカイアーチセミナー:[スカイアーチ AWS共催]AWS移行のプロが教える!導入への3ステップ:150521
スカイアーチセミナー:Web制作会社エンジニア様向け『クラウド活用3つの秘訣』:150225
スカイアーチセミナー:【Web制作・SI企業様向け】サーバー管理が怖くなくなる方法
スカイアーチセミナー:自社アプリをクラウド展開する為の『失敗しない3つの法則
クラウドで始める事業継続[クラウドEXPO2012]
【スカイアーチ】Webサイトを脆弱性攻撃から守る

AWSでシステム構築工数を1/10にしつつ、高品質化も実現した枠組みのご紹介

Editor's Notes

  • #2: 本日はAWSでシステム構築工数の大幅削減と高品質化を実現した枠組みと その枠組を利用したオープンソース・ソフトウェアである SkyHopperを紹介させて頂きます。 よろしくお願いします。
  • #3: アジェンダはこのようになっております。 最初に枠組みで利用したサービス/ツールを紹介し 最後にSkyHopperのデモを行わせて頂きます。
  • #5: 私は、スカイアーチネットワークスで運用自動化責任者を名乗っております神津と申します。 業務は主に社内ツール開発/SkyHopper/DevOps絡みの受託開発や新サービス立ち上げに関わっております。 個人的な活動、趣味は20年前から変わっておらず、昔はN88BasicでLEDチカチカやモータ制御でラジコンを動かしたりしておりました 最近はRaspberryPiで同様の事を行っております。
  • #6: 個人的に最も楽しいのはサブタスクでRaspberryPiと組み合わせて 社内業務進捗やKPIの数値化/見える化を実施しています。 好きなAWSサービスはAmazon API Gatewayです! 様々なAPIをまとめて自作のAndroid アプリでアクセスしたり等とても便利だなぁと感じております
  • #8: 私どもはサーバ一筋15年のMSP事業者で御座います。 本日は、なんとこちらの美味しいサバ缶を3缶お持ちしておりますので、最後に弊社サヴァンジェリスト 浅尾よりサバ缶じゃんけんをご用意しております
  • #9: では本題となります 突然ですが AWSのマネジメントコンソールを使っていて 不便に思った事はありませんでしょうか?? 主にAWS上で似たようなシステム構築をすることが多い方かつLAMP環境中心のシステムを想定しております
  • #10: 一例と致しまして、マネジメントコンソールを思い返して頂くと、命名規約や社内ルールが浸透していないと このリソースはなんだっけ?という状態に簡単に陥ります。 先ほどもお話にあった内容で、本来であればシステムやサービスという単位で見たい
  • #11: その他の例と致しまして 前にも見たようなシステム構成だなぁ… 作業対象インスタンスどれ!? EBSどれ!? セキュリティグループ都度作成… 利用手順書を作成したが、マネジメントコンソールのアップデートが早過ぎる! サーバ調達は早くなったが、その後の運用は変化が無いという方もいらっしゃるのではないでしょうか? 実際弊社もクラウド導入時期はそうでした
  • #12: そのように感じた方は、卒業と称しまして AWSマネジメントコンソール及びSSH接続の利用頻度を減らす事で 作業工数の削減と作業ミスの削減を行いましょう!というご提案となります。
  • #13: 弊社OSS SkyHopperはこちらにアイコン表示されている CloudFormation / Chef / ServeSpec / Zabbix をサーバ構築/運用の枠組みとして シームレスに連携を行えるDevOpsツールとなります。
  • #14: まずはインフラをまとめて作成するCloudFormationの紹介となります JSONフォーマットのテンプレートファイルを作成→AWSに送信する事でインスタンスやRDS、S3バケットを含む一連のリソースをAWS上に構築可能です。 また、テンプレートにパラメータを渡す事が可能なためインスタンスサイズやIPアドレスを指定できるテンプレートを作成する事で 同様の構成の案件にテンプレートを使い回す事が可能です。
  • #15: テンプレートイメージはこちらになります。 EC2 SecurityGroup や EC2 Instanceといった記述の中に設定が記載されております。 気をつけるべき点としては RDS等を含むスタックだと単一リソースでも15分程掛かります また、JSONのSyntaxエラー等は即時通知されるが、他のエラーはあまり通知されずに 途中まで作成した後にロールバックされるケースが多いです 弊社では作成にAtomエディタを利用しています 画面に表示されている画面がスクリーンショットとなりますが Syntaxエラーがわかりやすい色分けで表示されたり、オートインデント機能もあるためお薦めです。 弊社では一部の案件でしか実施できていないため AWSでのインフラ作成時には利用する事をルールにして行く事を考えています。
  • #16: CloudFormationでインフラ作成後は、Chefを用いサーバ内のミドルウェアや設定変更を実施します Chefは構成管理ツールの原則に沿ったシステム自動構築のためのフレームワーク となり、最も重要な原則の中に冪等性(べきとうせい) - ある操作を繰り返しても結果が同じという物が御座います。 これは、Chefがサーバの現状を確認し、必要な作業のみを実行してくれるため、途中で失敗しても繰り返し実行できいずれ正しい状態に収束する という事です、実際にどのような事か例を見てみましょう
  • #17: シェルスクリプトで記載した場合まさしく台本を書く必要がありますが Chefを利用した場合は結末だけを書けばChefがよしなに計らってくれます。 上記例では殆ど差がありませんが 自動起動、インストール後に起動…と処理の追加を行うと シェルスクリプトの場合状態確認や結果判断/例外処理だらけのソースコードとなり 可読性が非常に悪くなります。 弊社では3年程前から基本的に全てのサーバのOSパラメータ設定、弊社管理スクリプトインストール、一部ミドルウェアインストールまでをChefを利用したインストーラで実施しています。 # また、Chefをインストールすると一緒にインストールされる インベントリ収集ツールのohaiコマンド # がかなり便利でこちらの機能を利用して様々なプラットフォームの情報を一元的に取得できます。
  • #18: 構成管理ツールは他にも有名所ですとAnsibleやPuppetと言ったものがあります 2011年頃よりどんどん使われており 高機能で少し難しいChefとエージェントレスで簡単なAnsibleという比較で耳にする機会が多いです。 SkyHopper ではマルチテナント対応等の観点からChef Serverを利用しています
  • #19: インフラ作成、サーバ構築までを完了したので次は作成したサーバのテストを行います。 Chef ServerSpecはサーバ状態をテストするDevOpsツールとなります。 Serverspec実行サーバにrubyのgemをインストールすれば良いだけで エージェントレスで導入出来るため始めるにあたり敷居が低いと思います
  • #20: プログラムのイメージはこちらとなります。 パッケージやサービスの状態、ポートのリッスン状態を定義しているテストや コマンドの実行結果を正規表現ルールで確認も行えます。 一部のミドルウェア設定ファイルの内容確認も行えます。 テスト結果を HTMLやJSON形式で出力する事も出来るため 弊社ではJSON形式のテスト結果をパースしエビデンスとして納品ドキュメントに加工しております。 gemのインストール時間も含めて5分でサンプルテストを実行する事が出来ますので 何らかのDevOpsツールの導入をご検討されている方はぜひ利用してみて下さい。
  • #21: 当初は2015.05が3.0リリース予定でしたがのびのびに…
  • #22: SkyHopperの内部で利用している、Zabbix API Wrapper の gem を出しております。 2.2 / 2.4 いずれも動作可能なのでご利用下さい。 Zabbixのソースコードから生成しているため全てのAPIに対応しております。
  • #23: こちらの画面はZabbix上にホストを作成する例となります。 APIを利用しないで実施する事によるミスの例 ・作業頻度と量が増えてくるとGUIベースでの実施でミスが起きるケースがありました。 ・複数人でのコンフィグ編集に気付かず設定反映のためリスタート、監視サービスが短時間落ちてしまった事もありました。 APIベースで実施する事で、大量データ投入等も可能になりますし、登録後のテストも実施出来るようになります。
  • #24: 開発の目的: お客様の継続的インテグレーションを加速出来る体制を整えるために「より早く」「より確実に」パターン化されたサーバの構築、運用を実施する 手段: APIやDevOpsツールを組み合わせシームレスに連携する事で、AWSマネジメントコンソールに入らない、ターミナルに接続しない事を目標に作成を進めております。
  • #27: DevOps文化の社内展開をどのように行ったか
  • #28: 弊社事例となりますが、2,3年前にChefのCookbookを作成したので全体で利用しよう!と Git 等をインストールし、Cookbookをダウンロードした後に、runlistを定義、Chefを実行する事で 半年ほどほぼ利用されない状態でした、、、 Git教育やChef教育を実施したが、あまり状況は変わらず、、、 ですが、ワンライナーインストーラとする事ですぐに使われる出しました 利用されだすまでに半年 → Cookbookの変更を行ってくれるまでに1年程 → ここ半年でGitを利用してくれるようになりました
  • #29: そのような体験を活かし DevOps文化を社内に広めるお手伝いをInfrastructure as Code のトレーニングメニューとしてご用意しております。 内容は先程申し上げた、各種DevOpsツールを利用しハンズオン形式で実際にコードを書き動作する所までをお手伝いする内容となっております。 お気軽にご相談下さい。
  • #30: クラウド事業者の用意している自動化サービスを適切に利用する事で 高品質に、短期間でシステムを作ることが可能となる DevOpsツール群を組み合わせて利用する事で上記をさらに加速する事ができる SkyHopperの利用も是非ご検討下さい! https://github.com/skyarch-networks ※ご利用のシステムに合わせた Cookbook開発やSkyHopperの カスタマイズを行うことも出来ますのでご相談下さい。
  • #31: ご清聴ありがとうございました!