SlideShare a Scribd company logo
July Tech Festa 2013
2013/07/14
Gosuke Miyashita
サーバ
プロビジョニン
グ
Cloud or VM
Image
Launch
OS
Install
System
Configuration
Provisioning Toolchain by Lee Thompson at Velocity 2010
Application Service
Orchestration
Bootstrapping
Configuration
Orchestration
Capistrano
Fabric
Puppet
Chef
EC2
OpenStack
サーバ
プロビジョニン
グ
とテスト
監視とは継続的
なテストである
by @kazuho
Cloud or VM
Image
Launch
OS
Install
System
Configuration
Application Service
Orchestration
Bootstrapping
Configuration
Orchestration
Nagios
Zabbix
serverspec
???
Zabbix/NagiosによるApacheの
テスト(監視)
httpdプロセスが動いているか
80番ポートに外からアクセスでき
るか
80番ポートが正しいレスポンスを
返すか
serverspecによるApacheのテス
ト
httpdプロセスが動いているか
80番ポートをListenしているか
httpdパッケージが入っているか
自動起動するようになっているか
設定ファイルが存在するか
正しい設定がされているか
Orchestration領域のテス
ト
Zabbix
Nagios
Configuration領域のテス
ト
serverspec
Configuration領域に
おけるテスト
みなさん
どうやってますか?
シェルコマンド叩
く?
シェルスクリプト?
実際にサービスに
アクセスする?
Configuration
Management
Framework
Configuration
Management Framework
とテスト
これはテスト
どうやってますか?
シェルコマンド叩
く?
シェルスクリプト?
実際にサービスに
アクセスする?
この界隈は様々な
テストツールが存在
シンタックスチェック
Foodcritic
knife cookbook test
puppet-lint
ユニットテスト
Chefspec
rspec-puppet
require 'chefspec'
describe 'http_server::default' do
let (:chef_run) {
ChefSpec::ChefRunner.new.converge
'http_server::default‘
}
it 'should install nginx' do
expect(chef_run).to install_package 'nginx'
end
it 'should start nginx' do
expect(chef_run).to start_service 'nginx'
end
end
結合テスト
Minitest Chef Handler
Cucumber Chef
Test Kitchen
rspec-system
serverspec
class TestNginx < MiniTest::Chef::TestCase
def test_package_is_installed
assert_installed package("nginx")
end
def test_service_is_running
assert_running service("nginx")
end
end
Infrastructure as Code
からの自然な流れ
サーバの状態を
コードで記述
↓
状態のテストも
コードで記述
serverspecは
この流れの中で
生まれたもの
severspecとは
サーバの状態を簡潔な
コードで記述して
テストするための仕組
み
サーバの状態を
RSpecで記述
RSpec?
Rubyのテスト
フレームワーク
describe Array, "when empty" do
before do
@empty_array = []
end
it "should be empty" do
expect(@empty_array).to be_empty
end
it "should size 0" do
expect(@empty_array.size).to eq 0
end
end
serverspecに
よるテスト
describe package('httpd') do
it { should be_installed }
end
describe service('httpd') do
it { should be_enabled }
it { should be_running }
end
describe port(80) do
it { should be_listening }
end
基本的に
シェルコマンド叩い
て
チェックしてるだけ
テスト対象のサーバ
にSSHで接続して
コマンドを叩く
シェルコマンド実行
によるサーバのテス
トをスマートにやれ
るようにしたのが
serverspec
serverspecの
始め方
# yum install rubygems
# gem install serverspec rake
# serverspec-init
# rake spec
デモ
詳細は
http://serverspec.org/
serverspec
をつくった理由
PuppetやChef
使っていてそもそも
serverspecって必要?
そもそも
PuppetやChefに
テストって必要?
レシピやマニフェスト
が正しく書けたかどう
か
必ずテストしますよ
ね?
一度書いたマニフェス
トやレシピを更新しな
いのであればそれほど
必要ではないかも
マニフェストやレシ
ピを継続的に更新す
る
なら必要性が高まる
プログラムの
リファクタリングと
一緒
様々なテストツール
が存在するのになぜ
わざわざserverspecを
つくったのか?
既存ツールは機能が
多すぎたり、特定の
ツールに依存してた
りするのがイヤ
serverspecの特徴
マニフェストを継続
的に更新するなら
テストコードも
継続的な更新が必要
なのでテストコード
の読みやすさや
書きやすさも重要
テストツール自体の
シンプルさも重要
ChefやPuppetに
依存しない
テスト対象のサーバ
にエージェント不要
テスト対象のサーバ
にRubyすら不要
テスト以外の余計な
機能がない
利用のための
敷居が低い
テストはシェルコマ
ンドを実行してるだ
け
問題が起きたときに
調査しやすい
serverspecの応用
サーバ構築の継続的
インテグレーション
Puppetマニフェストを
更新したら自動でマニ
フェスト適用と
serverspecによるテス
トを実行
まとめ
シェルコマンド実行
によるサーバのテス
トをスマートにやれ
るようにしたのが
serverspec
読みやすい
書きやすい
わかりやすい
要するに
簡潔
簡潔さ超重要
ビジネス要件は
絶えず変化する
それに伴いシステム
も変化し複雑に
複雑さと変化に対応
するためには継続的
なテスト重要
テストコード自体も
システムに伴い
変化し複雑になる
なのでできるだけ
簡潔に記述しテスト
できることが重要
serverspecとは
現実のシステムの
複雑さと変化に
対応するために
システムのあるべき
状態を簡潔に記述し
継続的にテストする
ためのもの
おまけ
miyagawa podcast ep14
でserverspecについて
話してます
おしまい

More Related Content

What's hot

Capistranoで自動デプロイ
Capistranoで自動デプロイCapistranoで自動デプロイ
Capistranoで自動デプロイtoyoshi
 
超簡単!ActivePerlをWindows Serverにインストール
超簡単!ActivePerlをWindows Serverにインストール超簡単!ActivePerlをWindows Serverにインストール
超簡単!ActivePerlをWindows ServerにインストールShin Tanigawa
 
Pyats Introduction
Pyats IntroductionPyats Introduction
Pyats IntroductionToru Okatsu
 
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築Hideharu MATSUFUJI
 
Myfirst cloudfoundry intro_20161201
Myfirst cloudfoundry intro_20161201Myfirst cloudfoundry intro_20161201
Myfirst cloudfoundry intro_20161201Tomohiro Ichimura
 
How to deploy & operate OpenStack Production
How to deploy & operate OpenStack ProductionHow to deploy & operate OpenStack Production
How to deploy & operate OpenStack ProductionVirtualTech Japan Inc.
 
Serverspec at Testing Framework Meeting
Serverspec at Testing Framework MeetingServerspec at Testing Framework Meeting
Serverspec at Testing Framework MeetingGosuke Miyashita
 
Open shiftoriginquickstart clouddevelopercircle_20170920
Open shiftoriginquickstart clouddevelopercircle_20170920Open shiftoriginquickstart clouddevelopercircle_20170920
Open shiftoriginquickstart clouddevelopercircle_20170920kei omizo
 
Quarkus による超音速な Spring アプリケーション開発
Quarkus による超音速な Spring アプリケーション開発Quarkus による超音速な Spring アプリケーション開発
Quarkus による超音速な Spring アプリケーション開発Chihiro Ito
 
TDD勉強会キックオフ for Java
TDD勉強会キックオフ for JavaTDD勉強会キックオフ for Java
TDD勉強会キックオフ for JavaYuta Kawadai
 
Lapp環境をソースからインストールする(debian)
Lapp環境をソースからインストールする(debian)Lapp環境をソースからインストールする(debian)
Lapp環境をソースからインストールする(debian)Kimiyuki Yamauchi
 
OpenStackSDK with Ansible
OpenStackSDK with AnsibleOpenStackSDK with Ansible
OpenStackSDK with AnsibleHideki Saito
 
.NET 5 勉強会 ~.NET Framework から .NET へ~
.NET 5 勉強会 ~.NET Framework から .NET へ~.NET 5 勉強会 ~.NET Framework から .NET へ~
.NET 5 勉強会 ~.NET Framework から .NET へ~Fujio Kojima
 
Webサーバ勉強会#1_prefork_8-15
Webサーバ勉強会#1_prefork_8-15Webサーバ勉強会#1_prefork_8-15
Webサーバ勉強会#1_prefork_8-15mashan94
 
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalkBIGLOBE Tech Talk
 
Server specのご紹介
Server specのご紹介Server specのご紹介
Server specのご紹介Akira Kaneda
 

What's hot (20)

CruiseControl.NET設置
CruiseControl.NET設置CruiseControl.NET設置
CruiseControl.NET設置
 
Goss入門
Goss入門Goss入門
Goss入門
 
Capistranoで自動デプロイ
Capistranoで自動デプロイCapistranoで自動デプロイ
Capistranoで自動デプロイ
 
超簡単!ActivePerlをWindows Serverにインストール
超簡単!ActivePerlをWindows Serverにインストール超簡単!ActivePerlをWindows Serverにインストール
超簡単!ActivePerlをWindows Serverにインストール
 
Pyats Introduction
Pyats IntroductionPyats Introduction
Pyats Introduction
 
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
 
Myfirst cloudfoundry intro_20161201
Myfirst cloudfoundry intro_20161201Myfirst cloudfoundry intro_20161201
Myfirst cloudfoundry intro_20161201
 
How to deploy & operate OpenStack Production
How to deploy & operate OpenStack ProductionHow to deploy & operate OpenStack Production
How to deploy & operate OpenStack Production
 
Serverspec at Testing Framework Meeting
Serverspec at Testing Framework MeetingServerspec at Testing Framework Meeting
Serverspec at Testing Framework Meeting
 
SubversionServer設置
SubversionServer設置SubversionServer設置
SubversionServer設置
 
Open shiftoriginquickstart clouddevelopercircle_20170920
Open shiftoriginquickstart clouddevelopercircle_20170920Open shiftoriginquickstart clouddevelopercircle_20170920
Open shiftoriginquickstart clouddevelopercircle_20170920
 
20121205 jjbug
20121205 jjbug20121205 jjbug
20121205 jjbug
 
Quarkus による超音速な Spring アプリケーション開発
Quarkus による超音速な Spring アプリケーション開発Quarkus による超音速な Spring アプリケーション開発
Quarkus による超音速な Spring アプリケーション開発
 
TDD勉強会キックオフ for Java
TDD勉強会キックオフ for JavaTDD勉強会キックオフ for Java
TDD勉強会キックオフ for Java
 
Lapp環境をソースからインストールする(debian)
Lapp環境をソースからインストールする(debian)Lapp環境をソースからインストールする(debian)
Lapp環境をソースからインストールする(debian)
 
OpenStackSDK with Ansible
OpenStackSDK with AnsibleOpenStackSDK with Ansible
OpenStackSDK with Ansible
 
.NET 5 勉強会 ~.NET Framework から .NET へ~
.NET 5 勉強会 ~.NET Framework から .NET へ~.NET 5 勉強会 ~.NET Framework から .NET へ~
.NET 5 勉強会 ~.NET Framework から .NET へ~
 
Webサーバ勉強会#1_prefork_8-15
Webサーバ勉強会#1_prefork_8-15Webサーバ勉強会#1_prefork_8-15
Webサーバ勉強会#1_prefork_8-15
 
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk
 
Server specのご紹介
Server specのご紹介Server specのご紹介
Server specのご紹介
 

Viewers also liked

しみじみサーバーレス
しみじみサーバーレスしみじみサーバーレス
しみじみサーバーレスToru Makabe
 
Walter ファミリーの紹介 at Shibuya.go#1
Walter ファミリーの紹介 at Shibuya.go#1Walter ファミリーの紹介 at Shibuya.go#1
Walter ファミリーの紹介 at Shibuya.go#1Gosuke Miyashita
 
インフラ野郎Azureチーム Night
インフラ野郎Azureチーム Nightインフラ野郎Azureチーム Night
インフラ野郎Azureチーム NightToru Makabe
 
3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal3分でわかるAzureでのService Principal
3分でわかるAzureでのService PrincipalToru Makabe
 
Why my Go program is slow?
Why my Go program is slow?Why my Go program is slow?
Why my Go program is slow?Inada Naoki
 
Presto changes
Presto changesPresto changes
Presto changesN Masahiro
 
Introduction to ATDD with Cucumber and RSpec
Introduction to ATDD with Cucumber and RSpecIntroduction to ATDD with Cucumber and RSpec
Introduction to ATDD with Cucumber and RSpecKenta Murata
 
Fluentd at Bay Area Kubernetes Meetup
Fluentd at Bay Area Kubernetes MeetupFluentd at Bay Area Kubernetes Meetup
Fluentd at Bay Area Kubernetes MeetupSadayuki Furuhashi
 
ジョジョの奇妙なTDD
ジョジョの奇妙なTDDジョジョの奇妙なTDD
ジョジョの奇妙なTDDjoker1007
 
How To Write Middleware In Ruby
How To Write Middleware In RubyHow To Write Middleware In Ruby
How To Write Middleware In RubySATOSHI TAGOMORI
 
Embulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loaderEmbulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loaderSadayuki Furuhashi
 
偶然にも500万個のSSH公開鍵を手に入れた俺たちは
偶然にも500万個のSSH公開鍵を手に入れた俺たちは偶然にも500万個のSSH公開鍵を手に入れた俺たちは
偶然にも500万個のSSH公開鍵を手に入れた俺たちはYoshio Hanawa
 
ハイブリッドクラウドの現実とAzureの使いどころ
ハイブリッドクラウドの現実とAzureの使いどころハイブリッドクラウドの現実とAzureの使いどころ
ハイブリッドクラウドの現実とAzureの使いどころToru Makabe
 

Viewers also liked (17)

しみじみサーバーレス
しみじみサーバーレスしみじみサーバーレス
しみじみサーバーレス
 
Walter ファミリーの紹介 at Shibuya.go#1
Walter ファミリーの紹介 at Shibuya.go#1Walter ファミリーの紹介 at Shibuya.go#1
Walter ファミリーの紹介 at Shibuya.go#1
 
インフラ野郎Azureチーム Night
インフラ野郎Azureチーム Nightインフラ野郎Azureチーム Night
インフラ野郎Azureチーム Night
 
3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal
 
JVM! JVM! JVM!
JVM! JVM! JVM!JVM! JVM! JVM!
JVM! JVM! JVM!
 
Pyfes201110
Pyfes201110Pyfes201110
Pyfes201110
 
Why my Go program is slow?
Why my Go program is slow?Why my Go program is slow?
Why my Go program is slow?
 
Float is Legacy
Float is LegacyFloat is Legacy
Float is Legacy
 
Presto changes
Presto changesPresto changes
Presto changes
 
Introduction to ATDD with Cucumber and RSpec
Introduction to ATDD with Cucumber and RSpecIntroduction to ATDD with Cucumber and RSpec
Introduction to ATDD with Cucumber and RSpec
 
Fluentd at Bay Area Kubernetes Meetup
Fluentd at Bay Area Kubernetes MeetupFluentd at Bay Area Kubernetes Meetup
Fluentd at Bay Area Kubernetes Meetup
 
ジョジョの奇妙なTDD
ジョジョの奇妙なTDDジョジョの奇妙なTDD
ジョジョの奇妙なTDD
 
PHP7を魔改造した話
PHP7を魔改造した話PHP7を魔改造した話
PHP7を魔改造した話
 
How To Write Middleware In Ruby
How To Write Middleware In RubyHow To Write Middleware In Ruby
How To Write Middleware In Ruby
 
Embulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loaderEmbulk, an open-source plugin-based parallel bulk data loader
Embulk, an open-source plugin-based parallel bulk data loader
 
偶然にも500万個のSSH公開鍵を手に入れた俺たちは
偶然にも500万個のSSH公開鍵を手に入れた俺たちは偶然にも500万個のSSH公開鍵を手に入れた俺たちは
偶然にも500万個のSSH公開鍵を手に入れた俺たちは
 
ハイブリッドクラウドの現実とAzureの使いどころ
ハイブリッドクラウドの現実とAzureの使いどころハイブリッドクラウドの現実とAzureの使いどころ
ハイブリッドクラウドの現実とAzureの使いどころ
 

Similar to Serverspec at July Tech Festa 2013

Zabbixを使った効果的な運用管理の実現
Zabbixを使った効果的な運用管理の実現Zabbixを使った効果的な運用管理の実現
Zabbixを使った効果的な運用管理の実現Daisuke Ikeda
 
テスト駆動インフラ構築-Chefとserverspecを使ったインフラ自動化のすすめ-
テスト駆動インフラ構築-Chefとserverspecを使ったインフラ自動化のすすめ-テスト駆動インフラ構築-Chefとserverspecを使ったインフラ自動化のすすめ-
テスト駆動インフラ構築-Chefとserverspecを使ったインフラ自動化のすすめ-賢 秋穂
 
Ec cube開発合宿 プラグインセミナー
Ec cube開発合宿 プラグインセミナーEc cube開発合宿 プラグインセミナー
Ec cube開発合宿 プラグインセミナーAyumu Kawaguchi
 
AWS Black Belt Techシリーズ AWS Elastic Beanstalk
AWS Black Belt Techシリーズ  AWS  Elastic  BeanstalkAWS Black Belt Techシリーズ  AWS  Elastic  Beanstalk
AWS Black Belt Techシリーズ AWS Elastic BeanstalkAmazon Web Services Japan
 
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)Akio Katayama
 
20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-public20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-publicAmazon Web Services Japan
 
知らないと地味にハマるOpen stackインストール時の注意点
知らないと地味にハマるOpen stackインストール時の注意点知らないと地味にハマるOpen stackインストール時の注意点
知らないと地味にハマるOpen stackインストール時の注意点d-shen
 
Awsで実現するseleniumテスト高速術
Awsで実現するseleniumテスト高速術Awsで実現するseleniumテスト高速術
Awsで実現するseleniumテスト高速術finoue
 
2014_0206 aws startup_tech
2014_0206 aws startup_tech2014_0206 aws startup_tech
2014_0206 aws startup_techYosuke Tomita
 
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefnpsg
 
Devops @ Gengo -- AWS日本語初会議
Devops @ Gengo -- AWS日本語初会議Devops @ Gengo -- AWS日本語初会議
Devops @ Gengo -- AWS日本語初会議Matthew Romaine
 
JAWS-UG コンテナ支部 #15 - Amazon ECSの開発環境を動的に管理するツールを作ってみました
JAWS-UG コンテナ支部 #15 - Amazon ECSの開発環境を動的に管理するツールを作ってみましたJAWS-UG コンテナ支部 #15 - Amazon ECSの開発環境を動的に管理するツールを作ってみました
JAWS-UG コンテナ支部 #15 - Amazon ECSの開発環境を動的に管理するツールを作ってみましたTamirlan Torgayev
 
Jenkins study jenkins build-cicdi
Jenkins study jenkins build-cicdiJenkins study jenkins build-cicdi
Jenkins study jenkins build-cicdi昌桓 李
 
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介Etsuji Nakai
 

Similar to Serverspec at July Tech Festa 2013 (20)

Serverspec at hbstudy #45
Serverspec at hbstudy #45Serverspec at hbstudy #45
Serverspec at hbstudy #45
 
Version管理 1
Version管理 1Version管理 1
Version管理 1
 
Zabbixを使った効果的な運用管理の実現
Zabbixを使った効果的な運用管理の実現Zabbixを使った効果的な運用管理の実現
Zabbixを使った効果的な運用管理の実現
 
テスト駆動インフラ構築-Chefとserverspecを使ったインフラ自動化のすすめ-
テスト駆動インフラ構築-Chefとserverspecを使ったインフラ自動化のすすめ-テスト駆動インフラ構築-Chefとserverspecを使ったインフラ自動化のすすめ-
テスト駆動インフラ構築-Chefとserverspecを使ったインフラ自動化のすすめ-
 
Ec cube開発合宿 プラグインセミナー
Ec cube開発合宿 プラグインセミナーEc cube開発合宿 プラグインセミナー
Ec cube開発合宿 プラグインセミナー
 
AWS Black Belt Techシリーズ AWS Elastic Beanstalk
AWS Black Belt Techシリーズ  AWS  Elastic  BeanstalkAWS Black Belt Techシリーズ  AWS  Elastic  Beanstalk
AWS Black Belt Techシリーズ AWS Elastic Beanstalk
 
AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)AWSマイスターシリーズReloaded(AWS Beanstalk)
AWSマイスターシリーズReloaded(AWS Beanstalk)
 
20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-public20120416 aws meister-reloaded-aws-elasticbeanstalk-public
20120416 aws meister-reloaded-aws-elasticbeanstalk-public
 
知らないと地味にハマるOpen stackインストール時の注意点
知らないと地味にハマるOpen stackインストール時の注意点知らないと地味にハマるOpen stackインストール時の注意点
知らないと地味にハマるOpen stackインストール時の注意点
 
Awsで実現するseleniumテスト高速術
Awsで実現するseleniumテスト高速術Awsで実現するseleniumテスト高速術
Awsで実現するseleniumテスト高速術
 
2014_0206 aws startup_tech
2014_0206 aws startup_tech2014_0206 aws startup_tech
2014_0206 aws startup_tech
 
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
 
Devops @ Gengo -- AWS日本語初会議
Devops @ Gengo -- AWS日本語初会議Devops @ Gengo -- AWS日本語初会議
Devops @ Gengo -- AWS日本語初会議
 
JAWS-UG コンテナ支部 #15 - Amazon ECSの開発環境を動的に管理するツールを作ってみました
JAWS-UG コンテナ支部 #15 - Amazon ECSの開発環境を動的に管理するツールを作ってみましたJAWS-UG コンテナ支部 #15 - Amazon ECSの開発環境を動的に管理するツールを作ってみました
JAWS-UG コンテナ支部 #15 - Amazon ECSの開発環境を動的に管理するツールを作ってみました
 
Jenkins study jenkins build-cicdi
Jenkins study jenkins build-cicdiJenkins study jenkins build-cicdi
Jenkins study jenkins build-cicdi
 
Yahoo! JAPANでのHadoop利用について
Yahoo! JAPANでのHadoop利用についてYahoo! JAPANでのHadoop利用について
Yahoo! JAPANでのHadoop利用について
 
Spock's world
Spock's worldSpock's world
Spock's world
 
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介
 
Amazon Simple Workflow Service (SWF)
Amazon Simple Workflow Service (SWF)Amazon Simple Workflow Service (SWF)
Amazon Simple Workflow Service (SWF)
 
cross2012a fujya
cross2012a fujyacross2012a fujya
cross2012a fujya
 

More from Gosuke Miyashita

NoSQLに関するまとめ
NoSQLに関するまとめNoSQLに関するまとめ
NoSQLに関するまとめGosuke Miyashita
 
イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化Gosuke Miyashita
 
Maglica - A Simple Internal Cloud Tool at #techkayac
Maglica - A Simple Internal Cloud Tool at #techkayacMaglica - A Simple Internal Cloud Tool at #techkayac
Maglica - A Simple Internal Cloud Tool at #techkayacGosuke Miyashita
 
DevOps とは何か 何であるべきか
DevOps とは何か 何であるべきかDevOps とは何か 何であるべきか
DevOps とは何か 何であるべきかGosuke Miyashita
 
Inside Sqale's Backend at RubyConf Taiwan 2012
Inside Sqale's Backend at RubyConf Taiwan 2012Inside Sqale's Backend at RubyConf Taiwan 2012
Inside Sqale's Backend at RubyConf Taiwan 2012Gosuke Miyashita
 
Ia型超新星とチャンドラセカール限界
Ia型超新星とチャンドラセカール限界Ia型超新星とチャンドラセカール限界
Ia型超新星とチャンドラセカール限界Gosuke Miyashita
 
Inside Sqale's Backend at YAPC::Asia Tokyo 2012
Inside Sqale's Backend at YAPC::Asia Tokyo 2012Inside Sqale's Backend at YAPC::Asia Tokyo 2012
Inside Sqale's Backend at YAPC::Asia Tokyo 2012Gosuke Miyashita
 
Inside Sqale's Backend at Sapporo Ruby Kaigi 2012
Inside Sqale's Backend at Sapporo Ruby Kaigi 2012Inside Sqale's Backend at Sapporo Ruby Kaigi 2012
Inside Sqale's Backend at Sapporo Ruby Kaigi 2012Gosuke Miyashita
 
Assurer - a pluggable server testing/monitoring framework
Assurer - a pluggable server testing/monitoring frameworkAssurer - a pluggable server testing/monitoring framework
Assurer - a pluggable server testing/monitoring frameworkGosuke Miyashita
 
Open Source System Administration Framework - Func
Open Source System Administration Framework - FuncOpen Source System Administration Framework - Func
Open Source System Administration Framework - FuncGosuke Miyashita
 
Puppet Best Practices? at COOKPAD
Puppet Best Practices? at COOKPADPuppet Best Practices? at COOKPAD
Puppet Best Practices? at COOKPADGosuke Miyashita
 
How Danga::Socket handles asynchronous processing and how to write asynchrono...
How Danga::Socket handles asynchronous processing and how to write asynchrono...How Danga::Socket handles asynchronous processing and how to write asynchrono...
How Danga::Socket handles asynchronous processing and how to write asynchrono...Gosuke Miyashita
 
Danga::Socketの非同期処理の仕組みとPerlbalで非同期処理するプラグインを書く方法
Danga::Socketの非同期処理の仕組みとPerlbalで非同期処理するプラグインを書く方法Danga::Socketの非同期処理の仕組みとPerlbalで非同期処理するプラグインを書く方法
Danga::Socketの非同期処理の仕組みとPerlbalで非同期処理するプラグインを書く方法Gosuke Miyashita
 
Xen Summit 2008 Tokyo - Operating Xen domains through LL(Perl/Python) with li...
Xen Summit 2008 Tokyo - Operating Xen domains through LL(Perl/Python) with li...Xen Summit 2008 Tokyo - Operating Xen domains through LL(Perl/Python) with li...
Xen Summit 2008 Tokyo - Operating Xen domains through LL(Perl/Python) with li...Gosuke Miyashita
 
関西オープンソース 2008 30days Albumの裏側
関西オープンソース 2008 30days Albumの裏側関西オープンソース 2008 30days Albumの裏側
関西オープンソース 2008 30days Albumの裏側Gosuke Miyashita
 
How To Build A Scalable Storage System with OSS at TLUG Meeting 2008/09/13
How To Build A Scalable Storage System with OSS at TLUG Meeting 2008/09/13How To Build A Scalable Storage System with OSS at TLUG Meeting 2008/09/13
How To Build A Scalable Storage System with OSS at TLUG Meeting 2008/09/13Gosuke Miyashita
 

More from Gosuke Miyashita (20)

NoSQLに関するまとめ
NoSQLに関するまとめNoSQLに関するまとめ
NoSQLに関するまとめ
 
イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化
 
Maglica - A Simple Internal Cloud Tool at #techkayac
Maglica - A Simple Internal Cloud Tool at #techkayacMaglica - A Simple Internal Cloud Tool at #techkayac
Maglica - A Simple Internal Cloud Tool at #techkayac
 
DevOps とは何か 何であるべきか
DevOps とは何か 何であるべきかDevOps とは何か 何であるべきか
DevOps とは何か 何であるべきか
 
Inside Sqale's Backend at RubyConf Taiwan 2012
Inside Sqale's Backend at RubyConf Taiwan 2012Inside Sqale's Backend at RubyConf Taiwan 2012
Inside Sqale's Backend at RubyConf Taiwan 2012
 
Ia型超新星とチャンドラセカール限界
Ia型超新星とチャンドラセカール限界Ia型超新星とチャンドラセカール限界
Ia型超新星とチャンドラセカール限界
 
How Perl Changed My Life
How Perl Changed My LifeHow Perl Changed My Life
How Perl Changed My Life
 
Inside Sqale's Backend at YAPC::Asia Tokyo 2012
Inside Sqale's Backend at YAPC::Asia Tokyo 2012Inside Sqale's Backend at YAPC::Asia Tokyo 2012
Inside Sqale's Backend at YAPC::Asia Tokyo 2012
 
Inside Sqale's Backend at Sapporo Ruby Kaigi 2012
Inside Sqale's Backend at Sapporo Ruby Kaigi 2012Inside Sqale's Backend at Sapporo Ruby Kaigi 2012
Inside Sqale's Backend at Sapporo Ruby Kaigi 2012
 
Assurer - a pluggable server testing/monitoring framework
Assurer - a pluggable server testing/monitoring frameworkAssurer - a pluggable server testing/monitoring framework
Assurer - a pluggable server testing/monitoring framework
 
Open Source System Administration Framework - Func
Open Source System Administration Framework - FuncOpen Source System Administration Framework - Func
Open Source System Administration Framework - Func
 
10分でわかるDevOps
10分でわかるDevOps10分でわかるDevOps
10分でわかるDevOps
 
DevOpsって何?
DevOpsって何?DevOpsって何?
DevOpsって何?
 
Puppetのススメ
PuppetのススメPuppetのススメ
Puppetのススメ
 
Puppet Best Practices? at COOKPAD
Puppet Best Practices? at COOKPADPuppet Best Practices? at COOKPAD
Puppet Best Practices? at COOKPAD
 
How Danga::Socket handles asynchronous processing and how to write asynchrono...
How Danga::Socket handles asynchronous processing and how to write asynchrono...How Danga::Socket handles asynchronous processing and how to write asynchrono...
How Danga::Socket handles asynchronous processing and how to write asynchrono...
 
Danga::Socketの非同期処理の仕組みとPerlbalで非同期処理するプラグインを書く方法
Danga::Socketの非同期処理の仕組みとPerlbalで非同期処理するプラグインを書く方法Danga::Socketの非同期処理の仕組みとPerlbalで非同期処理するプラグインを書く方法
Danga::Socketの非同期処理の仕組みとPerlbalで非同期処理するプラグインを書く方法
 
Xen Summit 2008 Tokyo - Operating Xen domains through LL(Perl/Python) with li...
Xen Summit 2008 Tokyo - Operating Xen domains through LL(Perl/Python) with li...Xen Summit 2008 Tokyo - Operating Xen domains through LL(Perl/Python) with li...
Xen Summit 2008 Tokyo - Operating Xen domains through LL(Perl/Python) with li...
 
関西オープンソース 2008 30days Albumの裏側
関西オープンソース 2008 30days Albumの裏側関西オープンソース 2008 30days Albumの裏側
関西オープンソース 2008 30days Albumの裏側
 
How To Build A Scalable Storage System with OSS at TLUG Meeting 2008/09/13
How To Build A Scalable Storage System with OSS at TLUG Meeting 2008/09/13How To Build A Scalable Storage System with OSS at TLUG Meeting 2008/09/13
How To Build A Scalable Storage System with OSS at TLUG Meeting 2008/09/13
 

Recently uploaded

20240523_IoTLT_vol111_kitazaki_v1___.pdf
20240523_IoTLT_vol111_kitazaki_v1___.pdf20240523_IoTLT_vol111_kitazaki_v1___.pdf
20240523_IoTLT_vol111_kitazaki_v1___.pdfAyachika Kitazaki
 
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)keikoitakurag
 
論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers
論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers
論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayersToru Tamaki
 
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...atsushi061452
 
Intranet Development v1.0 (TSG LIVE! 12 LT )
Intranet Development v1.0 (TSG LIVE! 12 LT )Intranet Development v1.0 (TSG LIVE! 12 LT )
Intranet Development v1.0 (TSG LIVE! 12 LT )iwashiira2ctf
 
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptxssuserbefd24
 
論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose EstimationToru Tamaki
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizesatsushi061452
 
ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521
ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521
ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521Satoshi Makita
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptxyassun7010
 
5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一
5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一
5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一瑛一 西口
 

Recently uploaded (11)

20240523_IoTLT_vol111_kitazaki_v1___.pdf
20240523_IoTLT_vol111_kitazaki_v1___.pdf20240523_IoTLT_vol111_kitazaki_v1___.pdf
20240523_IoTLT_vol111_kitazaki_v1___.pdf
 
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
 
論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers
論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers
論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers
 
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
 
Intranet Development v1.0 (TSG LIVE! 12 LT )
Intranet Development v1.0 (TSG LIVE! 12 LT )Intranet Development v1.0 (TSG LIVE! 12 LT )
Intranet Development v1.0 (TSG LIVE! 12 LT )
 
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
 
論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
 
ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521
ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521
ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
 
5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一
5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一
5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一
 

Serverspec at July Tech Festa 2013