SlideShare a Scribd company logo
1 of 102
Puppetのススメ hbstudy#8 (株)paperboy&co. 宮下 剛輔 2010/02/23
自己紹介 宮下 剛輔 mizzy, id:MIZZY gosukenator(twitter, gmail) http://mizzy.org/ ペパボで技術責任者というのをやってます インフラからウェブ開発まで広く見てます 子だくさん 2009/11/24に4人目が生まれました
自己紹介 最近はまってること WiiFitPlusで筋トレ ホームベーカリーでパンを焼く アサシンクリード2 シーケンス13プレイ中 ホットドクターペッパー牛乳
Puppetのススメ
アジェンダ Puppetの概要 Puppetの動作概要 マニフェストの基礎 Puppetを動かしてみる Puppetの使いどころ Puppetを利用する上で知っておくべきこと Puppetの微妙なところ
Puppetの概要
Puppet情報リソース http://reductivelabs.com/products/puppet/ http://gihyo.jp/admin/serial/01/puppet http://trac.mizzy.org/puppet Software Design 2007年12月号 Software Design 総集編 【2000~2009】
Puppetとは? Ruby製のシステム管理ツール でも、使う上ではRubyかどうかはあまり関係ない Facter(後述)の拡張時にはRubyの知識必要
システム管理ツール? Puppetはサーバの状態を定義し、維持するためのツール 以下はPuppetの対象外 ハードウェアの設置 ネットワーク接続 OSインストール/初期設定 ネットワークの設定 Puppet自身のインストール
Puppetの対象範囲 OSインストール/ネットワーク設定/Puppetインストール後のフェーズがPuppetの対象範囲 パッケージインストール/設定 ユーザ追加 cron設定 パッケージアップデート などなど
なぜPuppetが必要か? 手動作業に伴う問題 手作業は時間がかかる 手を動かしてる時間はもちろん 待ち時間も大幅に効率下げる要因 並行して別作業するのも大変 あるべき状態との乖離 正しい手順書があっても、作業漏れ、ミスなどが出る 手順書自体が間違ってたり、古かったりすることもある
なぜPuppetが必要か? 他の自動化手法に伴う問題 カスタムスクリプトでの自動化 解読、メンテが大変 自由度が高すぎて、書く人のスキルの差によるばらつきが大きい HDDイメージ複製、PXEブート+NFS、rsyncといった手法 複数OS、複数の役割を持つサーバが混在した環境では、一括管理が難しい サーバによって異なる部分をどう吸収するか? Apache の ServerName、MySQLの server-id など
Puppet導入のメリット システム構築/アップデートの自動化 システムの状態を目に見える形で記録できる マニフェストと呼ばれる独自言語による記述 システムのあるべき状態と実際の状態の乖離を防ぐ マニフェストで状態を定義し、システムへ適用する マニフェストの独自言語は、スクリプト言語より自由度が低いが、その分属人的なスキルに依存しにくい OS、役割、設定の異なるサーバ群の集中管理ができる マニフェストはテキストファイルなので、バージョン管理ツールによるトラッキングが可能
Puppetの動作概要
Puppetのネットワーク構成 puppetサーバ (puppetmasterd) 実行結果レポート マニフェストの取得と実行 puppetクライアント (puppetd) puppetクライアント (puppetd) puppetクライアント (puppetd) プロトコルは XMLRPC over HTTPS
Puppet用語 マニフェスト システムのあるべき状態が記述されたファイル Puppetサーバで一括して維持管理する Puppetクライアントで取得し、システムに適用 リソース Puppetマニフェスト内で扱うオブジェクト ユーザ、ファイル、パッケージなど
Puppetの動作概要パターン1 puppetサーバ (puppetmasterd) ③ 適用結果をレポート ① マニフェストを取りに行く(デフォルトは30分に1回) puppetクライアント (puppetd) ② 取得したマニフェストを適用する
Puppetの動作概要パターン2 puppetサーバ (puppetmasterd) ④ 適用結果をレポート ② マニフェストを取りに行く ① サーバ上でpuppetrunを実行してpuppetdをキックする puppetクライアント (puppetd) ③ 取得したマニフェストを適用
マニフェストの基礎
リソースの定義 リソースタイプ リソースのタイトル リソースの属性 file { '/etc/hosts':     owner  => $default_owner,     group  => $default_group,     mode   => 644,     source => 'puppet://server/module/hosts', } /etc/hosts を puppetサーバから取得し、オーナー、グループ、モードを適切に設定するためのリソース定義 これ全体が「リソース」
クラスでリソースをまとめる 「sudo」クラスを定義 class sudo{ package { ‘sudo’:         ensure => latest,         alias  => sudo     }     file { ‘/etc/sudoers’:         source => 'puppet://server/module/sudoers',         mode   => 440,         owner  => $default_owner,         group  => $default_group,         alias  => sudoers     } } node ‘mail.hoge.com’ { include sudo } package リソース file リソース クラスをノードに適用
クラスを継承する base クラスを定義 class base {      file { "/my/file":         content => template("base.erb")     } } class sub inherits base { # override the content        File["/my/file"] { content => template("other.erb")     } }  base クラスを継承した sub クラスを定義 base クラスの /my/file リソースの属性を上書き
リソースの依存関係 file { '/etc/ssh':     source  => puppet://server/module/ssh, recurse => true, notify  => Service[ssh] } service { 'ssh':     name      => sshd,     ensure    => running, subscribe => File[‘/etc/ssh’] } /etc/ssh以下のファイルに変更があれば、sshサービスリソースに再起動を促す /etc/sshリソースに変更があれば、サービスを再起動する notifyかsubscribeのどちらか一方だけ定義すればOK
Puppetを動かしてみる
インストール 詳細は略。gihyo.jp 見てください。(といっても、古いのでそのまま利用できないかもですが。) ちなみに、CentOSだとEPELリポジトリに割と新しめのパッケージがあります。 依存するパッケージもそれほど多くありません。(augeas-libs, facter, ruby, ruby-augeas, ruby-libs, ruby-shadow)
デフォルトの設定ファイルを削除 基本的に、設定は最低限必要なところだけすれば良いので、デフォルトの設定ファイル群は消してしまうのが吉 自分がタッチしてない余分なファイルがあると、その挙動に悩むこともあるし というわけで、インストールしたらおもむろに rm –rf /etc/puppet/* してしまう
マニフェストを書く 簡単なマニフェストを書いてみる まずはディレクトリ作成 # mkdir /etc/puppet/manifets
マニフェストを書く /etc/puppet/manifests/site.pp file{ '/etc/passwd':     owner => 'root',     group => 'root',     mode  => 644, }
マニフェストを適用(スタンドアロン版) # puppet /etc/puppet/manifests/site.pp notice: //File[/etc/passwd]/mode: mode changed '777' to '644'
マニフェスト適用(クライアント/サーバ版) サーバ起動 # /usr/sbin/puppetmasterd --verbose br />  --no-daemonize --nonodes info: Starting server for Puppet version 0.24.8 info: Listening on port 8140 notice: Starting Puppet server version 0.24.8
マニフェストを適用(クライアント/サーバ版) クライアントで適用 # /usr/sbin/puppetd --server puppet.hoge.com br />--no-daemonize --verbose --onetime info: No classes to store info: Caching catalog at /var/puppet/state/localconfig.yaml notice: Starting catalog run notice: //File[/etc/passwd]/mode: mode changed '777' to '644' notice: Finished catalog run in 0.03 seconds
以上 簡単ですよね? サーバとクライアントが別の場合は、証明書の署名が手順に入ります /etc/puppet/autosign.confを設定すれば、署名手順は自動化できます 実運用では、デーモンとして常駐させたり、puppetrunでクライアントをキックしたりします
Puppetの使いどころ
Puppetの使いどころ 大量にサーバがある 異なるOSや環境のサーバが混在 台数少なくても、同じような手順を何度も実行する可能性がある 開発環境、検証環境等の、ベースになる部分 自分以外の人も同じ手順を実行するかもしれない システムの状態を何らかの形で記録しておきたい、バージョン管理したい インクリメンタル/テスト駆動サーバ構築
バージョン管理ツールによるトラッキング なぜこんな設定してるんだろう?という瞬間ありませんか? こんな時でも、バージョン管理ツールで誰がどんな意図で設定、あるいは修正したのかが記録されていると安心です デプロイツールと組み合わせて、サーバのアップデートもできます(ペパボではArcherつかってます) ただし、適切なバージョン管理ツールの利用が必要です。特にコメントをしっかり残す、という習慣が大事 システム管理者にバージョン管理ツールを根付かせるのは難しい?
インクリメンタル/テスト駆動サーバ構築 テスト環境では、Puppetマニフェストを少しづつ書き足し、修正、テストしながら、構築すべき内容を詰めていく Puppet化しておくと、一からつくりなおすのも簡単 マニフェストは、テスト環境、本番環境どちらでも使えるように作成。環境の違いはFacter変数などで吸収 本番環境では、テスト環境で作り上げたマニフェストを適用するだけ テスト環境できっちりテストしておけば、本番でも大丈夫と自信が持てる
Puppetを利用する上で知っておくべきこと
Puppetのコンセプトに馴染む マニフェストでは、リソースとリソース間の関係を記述する 静的な状態を記述する Puppetでどうシステムを管理するか、を考える場合、リソースとリソースの関係にブレイクダウンすること システム上で何を実行するのか、ではなく、どういう状態にするのか、を考える
リソースとその関係へのブレイクダウン 例えばApacheの場合、以下のようなリソースへとブレイクダウンし、各リソースとその関係を記述する パッケージ サービス 設定ファイル群 バーチャルホスト Apacheモジュール
Apacheマニフェスト package { ‘httpd’: ensure => installed } service { ‘httpd’:    enable => true,    ensure => running,    require => Package[‘httpd’], }
Apacheマニフェスト(つづき) file {    ‘/etc/httpd/conf.d/hoge.conf’:        source => “puppet://$server/hoge.conf”,        notify  => Service[‘httpd’]; ‘/etc/httpd/conf.d/fuga.conf’:         source  => “puppet://$server/fuga.conf”,        notify   => Service[‘httpd’]; }
Apacheマニフェスト(つづき) defineapache_module() {    .... } apache_module { ‘rewrite’: config => “puppet://$server/rewrite.conf”, }
Apacheマニフェスト(つづき) definevirtual_host() {     ... } virtual_host { ‘www.example.jp’: docroot => ‘/var/www/html’ , }
マニフェストは宣言型言語 マニフェストは設定ではなく、言語である 手続型言語ではなく宣言型言語 「何を実行するか」ではなく最終的な「状態」を定義する 通常のシステム管理タスクは手続型なので、発想の転換が必要
手続型と宣言型 手続型 OpenSSHをインストールする 設定ファイルを修正する サービスを起動する 宣言型 OpenSSHがインストールされた状態にする 設定ファイルの内容を決められた通りにする サービスが起動した状態とする
手続型と宣言型 同じことをしているように見えるが、実は異なる 手続型はプロセスを記述する 同じことを何度も繰り返すと、違った状態になることがあり得る 宣言型は最終的な状態を記述する マニフェストを何度適用しても、最終的な状態は同じ
defined type defineは関数/機能を定義しているように見えるけど、実際はリソースタイプを定義しているので注意 definevirtual_host() {     ... } virtual_host { ‘www.example.jp’: docroot => ‘/var/www/html’ , }
クラスと継承 マニフェストにはクラスと継承があるけど、オブジェクト指向言語として十分な機能を備えてるわけではない クラスはあくまでもリソースのコレクションにすぎない
以上はPuppetBest Practices 3.0から http://plathrop.tertiusfamily.net/puppet/best-practice-draft.html
モジュールの活用 モジュールは、よく利用するマニフェストを汎用的に利用できるようにまとめたもの よくある処理や、複雑な処理はモジュールとしてまとめるとすっきり でも、本当に汎用的なモジュールを作成するのは難しい…コピペになりがち モジュールをうまく共有する仕組みがないのもイマイチ でも、できるだけ早い段階から活用した方がいい 汎用的とか共有とか考慮しなくても、メンテナンス性は向上する
iptablesモジュールの利用例 include'iptables' file { '/etc/iptables.d/filter':         content => template('filter'),         notify  => Exec["rebuild_iptables"]; '/etc/iptables.d/nat':         content => template('nat'),         notify  => Exec["rebuild_iptables"]; }
iptablesモジュールでやってること iptablesパッケージのインストール 必要なファイルの配布 全サーバ共通ルールファイル rebuild用スクリプト ルールファイルをがっちゃんこして /etc/sysconfig/iptables に書き込む サーバ個別ルールファイルの配布 ルールファイルが変更された場合にrebuildスクリプト実行
モジュール公開してるところ http://reductivelabs.com/trac/puppet/wiki/PuppetModules 外部へのリンクもあり http://github.com/n0ts/puppet
エラー通知 Puppetにはエラーだけ通知する仕組みがない? tagmailは特定のクラスに関するログの通知先アドレスを指定できるが、エラーのみ通知、ということができない という話をクックパッドテックライフLTで話したけど、実は0.24.6からは、tagでログレベルも指定できるようになってたことに気づいた /etc/puppet/tagmail.conf err: error@example.jp
syslogでエラー通知を分離 puppet.conf [puppetd] syslogfacility = local0 syslog.conf local0.err br />/var/log/puppet/error.log
ノード情報の管理 シンプルなやりかたは、ノード情報をマニフェストに記述する node‘www.hoge.com’ { include‘base’ include‘www’ }
ノード情報の管理 ExternalNode機能を使えば、既存で持ってるノード情報を使いまわせる 具体的には、ノード名を与えると、既存のノード情報を変換してYAML形式で出力するようなスクリプトを用意して、puppetに設定する
External Nodeの設定例 /etc/puppet/puppet.confでの設定 [puppetmasterd] external_nodes = br /> /usr/bin/cobbler-ext-nodes node_terminus  = exec
cobbler-ext-nodesの実行結果 $ cobbler-ext-nodes web-proxy.example.jp classes: [base, web-proxy] parameters: {from_cobbler: 1}
Cobblerでノード情報管理 最近はCobblerを利用しているので、こいつのノード情報をマスターとしてます cobbler-ext-nodesコマンドが付属してるので、Puppetと即連携可 Cobblerはdnsmasqと連携できるので、DNS/DHCPのノード情報としても利用できる
LDAPによるノード情報管理 puppetrun –all とか –class オプションの利用には、LDAPでノード情報を管理する必要がある でも、あまりお勧めしない。めんどうだけどあまりメリットない。 puppetrun –all や –class 相当のことがしたければ、スクリプト組むのがよい
execは最小限に Puppetマニフェストは基本的に、最終的な「状態」を定義するもの なので、何度適用しても、最終的な状態は同じになる ただしexecリソースは例外で、何を実行するかを定義する 副作用のあるコマンドを実行すると、何度実行しても同じ結果になるという保証がないので危険 execを濫用するとマニフェストのメンテもしづらくなる Puppetの考え方に馴染んでない人は、何でもexecで実行してしまおうとするので注意
execを濫用したマニフェスト exec { 'sysctl add': command => 'echo "net.ipv4.netfilter.ip_conntrack_max = 131072" >> /etc/sysctl.conf br />    && /sbin/sysctl -p', onlyif => "test -f /etc/sysctl.conf", unless => "grep 'net.ipv4.netfilter.ip_conntrack_max' /etc/sysctl.conf 2>/dev/null" }
execを適切に利用したマニフェスト file {'/etc/sysctl.conf': ensure  => present, source  => "puppet://$server/sysctl.conf", } exec { '/sbin/sysctl -p': subscribe   => File['/etc/sysctl.conf'], refreshonly=> true, }
Facterの活用 FacterというライブラリをPuppetは利用している システムに関する情報(プロセッサアーキテクチャ,利用OSとそのバージョン,ドメイン名,FQDN,IPアドレスなど)を収集するための,クロスプラットフォームなRubyライブラリ FacterによってFacter変数が定義される
Facter変数 $ facter architecture => x86_64 domain => hoge.com facterversion => 1.5.7 fqdn => puppet.hoge.com hardwareisa => x86_64 hardwaremodel => x86_64 hostname => h026 id => miya interfaces => eth0,eth1,sit0 ipaddress => 192.168.10.26 ipaddress_eth0 => 192.168.10.26 ipaddress_eth1 => 192.168.122.106 is_virtual => false ...
Facter変数を利用したマニフェスト例 $ntp_package= $operatingsystem? {  freebsd => 'openntpd',    default => 'ntp', } package { $ntp_package: ensure => present }
カスタムFact Facter.add(:serverid) do setcodedo       /+$/.match(Facter.hostname) end end
カスタムFactを利用したテンプレート /etc/my.cnfのテンプレ [mysqld] server-id=<%= serverid %>
0.25.xの利用推奨 いろいろなところで正規表現使えるようになってるので、0.25.xの利用がお勧めです
Puppetの微妙なところ
変数のスコープとオーバーライド この関係がわかりづらく、仕様がいまいち 意図通りのオーバーライドができない 柔軟なオーバーライドができない
想定通りに動かない例 classbase_class { $myvar = 'bob' file {"/tmp/testvar":          content => "$myvar",     } } classchild_classinheritsbase_class { $myvar= 'fred' }
想定通りにするには $myvar= ‘bob‘ classbase_class {     file {"/tmp/testvar":          content => "$myvar",     } } classchild_class { $myvar= 'fred‘ includebase_class } ただし、$myvarがグローバルになる
想定通りにするには(別パターン) classbase_class { $myvar = 'bob' file {"/tmp/testvar":          content => "$myvar",     } } classchild_classinheritsbase_class { $myvar= 'fred‘ File[‘/tmp/testvar’]{        content => "$myvar“     } } ただし、記述が冗長
といった感じで… 変数がグローバルになる、記述が冗長になるなど、いずれにしてもいまいち
理想的な例 classfile { $var= ‘hoge’ file {        ‘/tmp/file’: content => $var } } classfile_fugainherits file { $var= ‘fuga’ }
もうひとつの理想的な例 継承ではなく委譲 classfile { $var= ‘hoge’ file { ‘/tmp/file’: content => $var} } classfile_fuga { file.new( var => ‘fuga’ ).apply }
理想的な例(ノードの場合) ノード定義でもこんな風にできればいいのに node‘www.example.com’ { file.new( var => ‘fuga’ ).apply }
変数オーバーライドとモジュール モジュールも結局はクラスなので、同じ問題が起こる 汎用的なモジュールつくるのが難しい一因 無理やり実現する方法はあるけど、ちょっと面倒
モジュールでの変数オーバーライド 詳しくはPuppetBestPractices? at Cookpadの資料参照 node"sample1.example.com"{ classapache_config inheritsapache_defaults { $ssl = false     } includeapache }
External/LDAPNodeと変数オーバーライド 前ページのモジュール変数オーバーライド手法は、LDAPNodeやExternalNodeでは使えない External/LDAPNodeではクラスのincludeとパラメータ設定ぐらいしかできない
柔軟性とメンテナンス性のバランス 以上のような感じで、マニフェスト言語については柔軟性不足な感がある そもそも、クラスはリソースのコレクションでしかない 柔軟性が低いのは、誰が書いても同じになりやすく、メンテしやすい、というメリットはある バランスが難しい
内部DSL実装 マニフェストは外部DSL 内部DSL実装も実はある Ruby DSL http://reductivelabs.com/trac/puppet/wiki/RubyDSL あまり使われてないって書いてある ShadowPuppet http://reductivelabs.com/trac/puppet/wiki/ShadowPuppet
ShadowPuppet class ManifestExample< ShadowShadow::Manifest   recipe :sample   recipe :mysql, { :root_password=> 'OMGSEKRET' } defsample     exec :foo, :command => '/bin/echo "foo" > /tmp/foo.txt'     package :foo, :ensure => :installed     file '/tmp/example.txt', :ensure => :present, :contents => Facter.to_hash_inspect end def mysql(options)   ... end end
変数オーバーライド以外のモジュールに関する問題 CPAN的な仕組みがない。PRM(Puppet Recipe Manager)というのがあったけど、現在はウェブサイトは残ってるが、ソースが見当たらない PRMのウェブサイトから辿れなかったけど、 http://people.redhat.com/~alikins/prm/にはあった 1年ほど更新されてない
クラス設計が難しい これも言語の柔軟性が低いゆえ? 特に、リソースの重複が悩ましい 複数クラスにまたがるリソースの定義が難しい 仮想リソースという仕組みはあるが、これはこれで面倒ではある でも、柔軟性が増すと別の悩みが出てきそう
ドキュメントが読みづらくなった 例えば TypeReference 現行ページ http://docs.reductivelabs.com/references/stable/type.html 旧ページ http://reductivelabs.com/trac/puppet/wiki/TypeReference.
現行ページ
旧ページ
リソースタイプに微妙なものが リソースタイプには、file, user, group, package, service, cron といったものがある 上の例は、割りとOSに普遍的なものだけど、中にはnagios_command, nagios_contact, nagios_hostといった、Nagios固有のものがある。(Nagios固有のタイプで14もあり、リファレンスの中でも目立ってる) アプリケーション固有のものは、コアに入れないでモジュールにした方がいいのでは?
パッケージ利用がほぼ必須 Puppetを利用する場合は、RPMなどパッケージ利用がほぼ必須 execでmakeは各サーバにコンパイラとかいれないといけないし、時間もかかる Puppetでファイル配布できるけど、大量にファイルがあるとかなり遅い rsyncをPuppetで実行するのも、微妙な感じ でもパッケージングめんどくさい とは言っても、パッケージングのメリットもある ソースRPMつかってれば、異なるディストリビューション/アーキテクチャでもパッケージリビルドするだけでOK
--noopのdiffが読みづらい puppetdに—noopオプションをつけると、ファイルリの内容が変更された場合、実際にファイルは書き変えないけど、diff出力してくれる だけど、ノーマルな形式のdiffで、ユニファイド形式じゃないので、読みづらい
ロールバックできない 「トランザクショナルレイヤー」というのがドキュメントを見るとあるんだけど、ロールバックはできない
puppetrunの微妙なところ LDAPNodeつかわないと、--allや--classが使えない
サーバ間の依存関係が記述できない リソース間の依存関係は記述できる このサービスデーモンはこの設定ファイルに依存する、など サーバ間の依存関係は記述できない このサーバは、データベースサーバがセットアップされてからマニフェストを適用する、といったことができない
パッケージ削除が微妙 パッケージの追加は、依存関係勝手に解決してくれる(これはPuppetではなく、利用しているパッケージプロバイダ依存) パッケージ削除は解決してくれない RedHat系の場合、追加はyumコマンドでやるけど、削除はrpmコマンドでやってるっぽい 他のパッケージシステムは不明 余計なパッケージを最初から入れないのが吉
とはいうものの 色々微妙な点を挙げてみたけど、Puppet以上にシンプルで使いやすいものはなさそう というわけで、当分はPuppet使い続けることになりそう だけどChefの今後の動きにも要注目 内部DSLなので言語の自由度は高そう
結論 微妙なところもあるけど、現存するこの手のツールの中ではベストだと思う なのでみんなPuppet使ってみよう
ご清聴ありがとうございました

More Related Content

What's hot

ログ+メトリック+トレースの組み合わせで構築する一元的なオブザーバビリティ
ログ+メトリック+トレースの組み合わせで構築する一元的なオブザーバビリティログ+メトリック+トレースの組み合わせで構築する一元的なオブザーバビリティ
ログ+メトリック+トレースの組み合わせで構築する一元的なオブザーバビリティElasticsearch
 
SPAのルーティングの話
SPAのルーティングの話SPAのルーティングの話
SPAのルーティングの話ushiboy
 
ASP.NET Core の ​ パフォーマンスを支える ​ I/O Pipeline と Channel
ASP.NET Core の ​ パフォーマンスを支える ​ I/O Pipeline と ChannelASP.NET Core の ​ パフォーマンスを支える ​ I/O Pipeline と Channel
ASP.NET Core の ​ パフォーマンスを支える ​ I/O Pipeline と ChannelJoni
 
忙しい人の5分で分かるMesos入門 - Mesos って何だ?
忙しい人の5分で分かるMesos入門 - Mesos って何だ?忙しい人の5分で分かるMesos入門 - Mesos って何だ?
忙しい人の5分で分かるMesos入門 - Mesos って何だ?Masahito Zembutsu
 
USB3.0ドライバ開発の道
USB3.0ドライバ開発の道USB3.0ドライバ開発の道
USB3.0ドライバ開発の道uchan_nos
 
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)VirtualTech Japan Inc.
 
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜Taiji Tsuchiya
 
Machine configoperatorのちょっとイイかもしれない話
Machine configoperatorのちょっとイイかもしれない話 Machine configoperatorのちょっとイイかもしれない話
Machine configoperatorのちょっとイイかもしれない話 Toshihiro Araki
 
Azure ADとIdentity管理
Azure ADとIdentity管理Azure ADとIdentity管理
Azure ADとIdentity管理Naohiro Fujie
 
Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...
Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...
Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...NTT DATA Technology & Innovation
 
組み込みLinuxでのGolangのススメ
組み込みLinuxでのGolangのススメ組み込みLinuxでのGolangのススメ
組み込みLinuxでのGolangのススメTetsuyuki Kobayashi
 
OPC UAをオープンソースやフリーのソフトで遊んでみた
OPC UAをオープンソースやフリーのソフトで遊んでみたOPC UAをオープンソースやフリーのソフトで遊んでみた
OPC UAをオープンソースやフリーのソフトで遊んでみたミソジ
 
WSUS移行をしてみた話
WSUS移行をしてみた話WSUS移行をしてみた話
WSUS移行をしてみた話DaikiYonekawa
 
EtherCATやPROFINETを OPC UAで接続してみた
EtherCATやPROFINETを OPC UAで接続してみたEtherCATやPROFINETを OPC UAで接続してみた
EtherCATやPROFINETを OPC UAで接続してみたミソジ
 
トラブルから理解するHyper vの基礎
トラブルから理解するHyper vの基礎トラブルから理解するHyper vの基礎
トラブルから理解するHyper vの基礎Naoki Abe
 

What's hot (20)

ログ+メトリック+トレースの組み合わせで構築する一元的なオブザーバビリティ
ログ+メトリック+トレースの組み合わせで構築する一元的なオブザーバビリティログ+メトリック+トレースの組み合わせで構築する一元的なオブザーバビリティ
ログ+メトリック+トレースの組み合わせで構築する一元的なオブザーバビリティ
 
自宅k8s/vSphere入門
自宅k8s/vSphere入門自宅k8s/vSphere入門
自宅k8s/vSphere入門
 
SPAのルーティングの話
SPAのルーティングの話SPAのルーティングの話
SPAのルーティングの話
 
ASP.NET Core の ​ パフォーマンスを支える ​ I/O Pipeline と Channel
ASP.NET Core の ​ パフォーマンスを支える ​ I/O Pipeline と ChannelASP.NET Core の ​ パフォーマンスを支える ​ I/O Pipeline と Channel
ASP.NET Core の ​ パフォーマンスを支える ​ I/O Pipeline と Channel
 
【初心者向け】API を使ってクラウドの管理を自動化しよう
【初心者向け】API を使ってクラウドの管理を自動化しよう【初心者向け】API を使ってクラウドの管理を自動化しよう
【初心者向け】API を使ってクラウドの管理を自動化しよう
 
Vault の鍵管理機構
Vault の鍵管理機構Vault の鍵管理機構
Vault の鍵管理機構
 
イエラエセキュリティMeet up 20210820
イエラエセキュリティMeet up 20210820イエラエセキュリティMeet up 20210820
イエラエセキュリティMeet up 20210820
 
忙しい人の5分で分かるMesos入門 - Mesos って何だ?
忙しい人の5分で分かるMesos入門 - Mesos って何だ?忙しい人の5分で分かるMesos入門 - Mesos って何だ?
忙しい人の5分で分かるMesos入門 - Mesos って何だ?
 
USB3.0ドライバ開発の道
USB3.0ドライバ開発の道USB3.0ドライバ開発の道
USB3.0ドライバ開発の道
 
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
OpenStackで始めるクラウド環境構築入門(Horizon 基礎編)
 
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
 
Machine configoperatorのちょっとイイかもしれない話
Machine configoperatorのちょっとイイかもしれない話 Machine configoperatorのちょっとイイかもしれない話
Machine configoperatorのちょっとイイかもしれない話
 
Azure ADとIdentity管理
Azure ADとIdentity管理Azure ADとIdentity管理
Azure ADとIdentity管理
 
Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...
Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...
Apache BigtopによるHadoopエコシステムのパッケージング(Open Source Conference 2021 Online/Osaka...
 
L2延伸を利用したクラウド移行とクラウド活用術
L2延伸を利用したクラウド移行とクラウド活用術L2延伸を利用したクラウド移行とクラウド活用術
L2延伸を利用したクラウド移行とクラウド活用術
 
組み込みLinuxでのGolangのススメ
組み込みLinuxでのGolangのススメ組み込みLinuxでのGolangのススメ
組み込みLinuxでのGolangのススメ
 
OPC UAをオープンソースやフリーのソフトで遊んでみた
OPC UAをオープンソースやフリーのソフトで遊んでみたOPC UAをオープンソースやフリーのソフトで遊んでみた
OPC UAをオープンソースやフリーのソフトで遊んでみた
 
WSUS移行をしてみた話
WSUS移行をしてみた話WSUS移行をしてみた話
WSUS移行をしてみた話
 
EtherCATやPROFINETを OPC UAで接続してみた
EtherCATやPROFINETを OPC UAで接続してみたEtherCATやPROFINETを OPC UAで接続してみた
EtherCATやPROFINETを OPC UAで接続してみた
 
トラブルから理解するHyper vの基礎
トラブルから理解するHyper vの基礎トラブルから理解するHyper vの基礎
トラブルから理解するHyper vの基礎
 

Viewers also liked

Introduction to Cross Site Scripting ( XSS )
Introduction to Cross Site Scripting ( XSS )Introduction to Cross Site Scripting ( XSS )
Introduction to Cross Site Scripting ( XSS )Irfad Imtiaz
 
100 Text Loans, Text Loans
100 Text Loans, Text Loans100 Text Loans, Text Loans
100 Text Loans, Text Loans100Textloans
 
د. فوزية اخضر - تطبيق تجربة مدرسة المستقبل الشاملة - المعرض والمنتدى الدولي ل...
د. فوزية اخضر - تطبيق تجربة مدرسة المستقبل الشاملة - المعرض والمنتدى الدولي ل...د. فوزية اخضر - تطبيق تجربة مدرسة المستقبل الشاملة - المعرض والمنتدى الدولي ل...
د. فوزية اخضر - تطبيق تجربة مدرسة المستقبل الشاملة - المعرض والمنتدى الدولي ل...IEFE
 
NVM Lensink Gussinklo Makelaardij Presentatie
NVM Lensink Gussinklo Makelaardij PresentatieNVM Lensink Gussinklo Makelaardij Presentatie
NVM Lensink Gussinklo Makelaardij Presentatielensinkgussinklo
 
World Economic Forum, la grande sciocchezza
World Economic Forum, la grande sciocchezzaWorld Economic Forum, la grande sciocchezza
World Economic Forum, la grande sciocchezzaMassimo Mucchetti
 
Social by Design REMIXED by Geoff Colon
Social by Design REMIXED by Geoff ColonSocial by Design REMIXED by Geoff Colon
Social by Design REMIXED by Geoff ColonGeoffrey Colon
 
Lawyer in Vietnam Oliver Massmann Trans Pacific Partnership Agreement - Ratif...
Lawyer in Vietnam Oliver Massmann Trans Pacific Partnership Agreement - Ratif...Lawyer in Vietnam Oliver Massmann Trans Pacific Partnership Agreement - Ratif...
Lawyer in Vietnam Oliver Massmann Trans Pacific Partnership Agreement - Ratif...Dr. Oliver Massmann
 
Plan Social Media Wawawiwa Design
Plan Social Media Wawawiwa DesignPlan Social Media Wawawiwa Design
Plan Social Media Wawawiwa DesignHumberto Isea
 
Policy Paper ESCENARIOS PROSPECTIVOS DE LA SEGURIDAD EN COLOMBIA FRENTE AL PR...
Policy Paper ESCENARIOS PROSPECTIVOS DE LA SEGURIDAD EN COLOMBIA FRENTE AL PR...Policy Paper ESCENARIOS PROSPECTIVOS DE LA SEGURIDAD EN COLOMBIA FRENTE AL PR...
Policy Paper ESCENARIOS PROSPECTIVOS DE LA SEGURIDAD EN COLOMBIA FRENTE AL PR...John Anzola
 
Páginas Israelíticas – 3 – Amar las almas y no llorar
Páginas Israelíticas – 3 – Amar las almas y no llorarPáginas Israelíticas – 3 – Amar las almas y no llorar
Páginas Israelíticas – 3 – Amar las almas y no llorarAntonio García Megía
 
Jill Watson Instructional Approaches that Set SLIFE up to succeed (and are go...
Jill Watson Instructional Approaches that Set SLIFE up to succeed (and are go...Jill Watson Instructional Approaches that Set SLIFE up to succeed (and are go...
Jill Watson Instructional Approaches that Set SLIFE up to succeed (and are go...Jill Watson, Ph.D.
 
Annualcycles mensual
Annualcycles mensualAnnualcycles mensual
Annualcycles mensualAlbert Pares
 
Non-technical risks and their impact on mining - Trench, Sykes & Packey - Oct...
Non-technical risks and their impact on mining - Trench, Sykes & Packey - Oct...Non-technical risks and their impact on mining - Trench, Sykes & Packey - Oct...
Non-technical risks and their impact on mining - Trench, Sykes & Packey - Oct...John Sykes
 
Tackling complexity in giant systems: approaches from several cloud providers
Tackling complexity in giant systems: approaches from several cloud providersTackling complexity in giant systems: approaches from several cloud providers
Tackling complexity in giant systems: approaches from several cloud providersPatrick Chanezon
 
MUDE SUA VIDA! COMO ESTÁ A SUA SAÚDE?
MUDE SUA VIDA! COMO ESTÁ A SUA SAÚDE?MUDE SUA VIDA! COMO ESTÁ A SUA SAÚDE?
MUDE SUA VIDA! COMO ESTÁ A SUA SAÚDE?Cristina do Vale
 
Encuesta Bogotá Cómo Vamos - Fragmento Canal Capital y Sec. Cultura
Encuesta Bogotá Cómo Vamos - Fragmento Canal Capital y Sec. CulturaEncuesta Bogotá Cómo Vamos - Fragmento Canal Capital y Sec. Cultura
Encuesta Bogotá Cómo Vamos - Fragmento Canal Capital y Sec. CulturaCanal Capital
 

Viewers also liked (20)

Introduction to Cross Site Scripting ( XSS )
Introduction to Cross Site Scripting ( XSS )Introduction to Cross Site Scripting ( XSS )
Introduction to Cross Site Scripting ( XSS )
 
100 Text Loans, Text Loans
100 Text Loans, Text Loans100 Text Loans, Text Loans
100 Text Loans, Text Loans
 
د. فوزية اخضر - تطبيق تجربة مدرسة المستقبل الشاملة - المعرض والمنتدى الدولي ل...
د. فوزية اخضر - تطبيق تجربة مدرسة المستقبل الشاملة - المعرض والمنتدى الدولي ل...د. فوزية اخضر - تطبيق تجربة مدرسة المستقبل الشاملة - المعرض والمنتدى الدولي ل...
د. فوزية اخضر - تطبيق تجربة مدرسة المستقبل الشاملة - المعرض والمنتدى الدولي ل...
 
NVM Lensink Gussinklo Makelaardij Presentatie
NVM Lensink Gussinklo Makelaardij PresentatieNVM Lensink Gussinklo Makelaardij Presentatie
NVM Lensink Gussinklo Makelaardij Presentatie
 
World Economic Forum, la grande sciocchezza
World Economic Forum, la grande sciocchezzaWorld Economic Forum, la grande sciocchezza
World Economic Forum, la grande sciocchezza
 
Social by Design REMIXED by Geoff Colon
Social by Design REMIXED by Geoff ColonSocial by Design REMIXED by Geoff Colon
Social by Design REMIXED by Geoff Colon
 
Lawyer in Vietnam Oliver Massmann Trans Pacific Partnership Agreement - Ratif...
Lawyer in Vietnam Oliver Massmann Trans Pacific Partnership Agreement - Ratif...Lawyer in Vietnam Oliver Massmann Trans Pacific Partnership Agreement - Ratif...
Lawyer in Vietnam Oliver Massmann Trans Pacific Partnership Agreement - Ratif...
 
Plan Social Media Wawawiwa Design
Plan Social Media Wawawiwa DesignPlan Social Media Wawawiwa Design
Plan Social Media Wawawiwa Design
 
Buddhist Temple Dhammakaya Thai
Buddhist Temple Dhammakaya ThaiBuddhist Temple Dhammakaya Thai
Buddhist Temple Dhammakaya Thai
 
Infoprop (1)
Infoprop (1)Infoprop (1)
Infoprop (1)
 
Policy Paper ESCENARIOS PROSPECTIVOS DE LA SEGURIDAD EN COLOMBIA FRENTE AL PR...
Policy Paper ESCENARIOS PROSPECTIVOS DE LA SEGURIDAD EN COLOMBIA FRENTE AL PR...Policy Paper ESCENARIOS PROSPECTIVOS DE LA SEGURIDAD EN COLOMBIA FRENTE AL PR...
Policy Paper ESCENARIOS PROSPECTIVOS DE LA SEGURIDAD EN COLOMBIA FRENTE AL PR...
 
Páginas Israelíticas – 3 – Amar las almas y no llorar
Páginas Israelíticas – 3 – Amar las almas y no llorarPáginas Israelíticas – 3 – Amar las almas y no llorar
Páginas Israelíticas – 3 – Amar las almas y no llorar
 
Jill Watson Instructional Approaches that Set SLIFE up to succeed (and are go...
Jill Watson Instructional Approaches that Set SLIFE up to succeed (and are go...Jill Watson Instructional Approaches that Set SLIFE up to succeed (and are go...
Jill Watson Instructional Approaches that Set SLIFE up to succeed (and are go...
 
Annualcycles mensual
Annualcycles mensualAnnualcycles mensual
Annualcycles mensual
 
Non-technical risks and their impact on mining - Trench, Sykes & Packey - Oct...
Non-technical risks and their impact on mining - Trench, Sykes & Packey - Oct...Non-technical risks and their impact on mining - Trench, Sykes & Packey - Oct...
Non-technical risks and their impact on mining - Trench, Sykes & Packey - Oct...
 
Tackling complexity in giant systems: approaches from several cloud providers
Tackling complexity in giant systems: approaches from several cloud providersTackling complexity in giant systems: approaches from several cloud providers
Tackling complexity in giant systems: approaches from several cloud providers
 
Rahoitusvoimala
RahoitusvoimalaRahoitusvoimala
Rahoitusvoimala
 
MUDE SUA VIDA! COMO ESTÁ A SUA SAÚDE?
MUDE SUA VIDA! COMO ESTÁ A SUA SAÚDE?MUDE SUA VIDA! COMO ESTÁ A SUA SAÚDE?
MUDE SUA VIDA! COMO ESTÁ A SUA SAÚDE?
 
Encuesta Bogotá Cómo Vamos - Fragmento Canal Capital y Sec. Cultura
Encuesta Bogotá Cómo Vamos - Fragmento Canal Capital y Sec. CulturaEncuesta Bogotá Cómo Vamos - Fragmento Canal Capital y Sec. Cultura
Encuesta Bogotá Cómo Vamos - Fragmento Canal Capital y Sec. Cultura
 
Sexuality education in_europe
Sexuality education in_europeSexuality education in_europe
Sexuality education in_europe
 

Similar to Puppetのススメ

Ansible quickstart
Ansible quickstartAnsible quickstart
Ansible quickstartHideki Saito
 
GMO TECHNOLOGY BOOT CAMP2015(PHP編)
GMO TECHNOLOGY BOOT CAMP2015(PHP編)GMO TECHNOLOGY BOOT CAMP2015(PHP編)
GMO TECHNOLOGY BOOT CAMP2015(PHP編)Arata Fujimura
 
Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話
Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話
Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話id774
 
Raspberry Pi 2 誤自宅サーバー移行日記
Raspberry Pi 2 誤自宅サーバー移行日記Raspberry Pi 2 誤自宅サーバー移行日記
Raspberry Pi 2 誤自宅サーバー移行日記96smcln
 
Symfony2 How to create your Bundle
Symfony2 How to create your BundleSymfony2 How to create your Bundle
Symfony2 How to create your Bundlechobi e
 
PHPBLT#6 PHPの未来に入るかもしれない機能の紹介
PHPBLT#6 PHPの未来に入るかもしれない機能の紹介PHPBLT#6 PHPの未来に入るかもしれない機能の紹介
PHPBLT#6 PHPの未来に入るかもしれない機能の紹介sters
 
Aizu.LT::Tokyo #4
Aizu.LT::Tokyo #4Aizu.LT::Tokyo #4
Aizu.LT::Tokyo #4Taku Unno
 
第21回Creators MeetUp
第21回Creators MeetUp第21回Creators MeetUp
第21回Creators MeetUpKenichi Mukai
 
20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側
20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側
20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側賢 秋穂
 
おまえらこのライブラリ使ってないの? m9 (2013-07)
おまえらこのライブラリ使ってないの? m9	(2013-07)おまえらこのライブラリ使ってないの? m9	(2013-07)
おまえらこのライブラリ使ってないの? m9 (2013-07)Toru Furukawa
 
Distutil setuptools distribute
Distutil setuptools distributeDistutil setuptools distribute
Distutil setuptools distributeAtsushi Odagiri
 
140917運用管理勉強会job scheduler
140917運用管理勉強会job scheduler140917運用管理勉強会job scheduler
140917運用管理勉強会job schedulerOSSラボ株式会社
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力ThinReports
 
Offline Hoogleで何処でもはすはす
Offline Hoogleで何処でもはすはすOffline Hoogleで何処でもはすはす
Offline Hoogleで何処でもはすはすKiwamu Okabe
 
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介Etsuji Nakai
 
Struts2を始めよう!
Struts2を始めよう!Struts2を始めよう!
Struts2を始めよう!Shinpei Ohtani
 
Open Source System Administration Framework - Func
Open Source System Administration Framework - FuncOpen Source System Administration Framework - Func
Open Source System Administration Framework - FuncGosuke Miyashita
 
インフラ自動化とHashicorp tools
インフラ自動化とHashicorp toolsインフラ自動化とHashicorp tools
インフラ自動化とHashicorp toolsUchio Kondo
 
ヒカルのGo 資料 Webアプリケーションの作り方
ヒカルのGo 資料 Webアプリケーションの作り方ヒカルのGo 資料 Webアプリケーションの作り方
ヒカルのGo 資料 Webアプリケーションの作り方Yosuke Furukawa
 

Similar to Puppetのススメ (20)

Ansible quickstart
Ansible quickstartAnsible quickstart
Ansible quickstart
 
GMO TECHNOLOGY BOOT CAMP2015(PHP編)
GMO TECHNOLOGY BOOT CAMP2015(PHP編)GMO TECHNOLOGY BOOT CAMP2015(PHP編)
GMO TECHNOLOGY BOOT CAMP2015(PHP編)
 
Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話
Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話
Twitter クライアント “Termtter” の紹介と収集したソーシャルデータを Fluentd + Hadoop で分析する話
 
Raspberry Pi 2 誤自宅サーバー移行日記
Raspberry Pi 2 誤自宅サーバー移行日記Raspberry Pi 2 誤自宅サーバー移行日記
Raspberry Pi 2 誤自宅サーバー移行日記
 
Symfony2 How to create your Bundle
Symfony2 How to create your BundleSymfony2 How to create your Bundle
Symfony2 How to create your Bundle
 
PHPBLT#6 PHPの未来に入るかもしれない機能の紹介
PHPBLT#6 PHPの未来に入るかもしれない機能の紹介PHPBLT#6 PHPの未来に入るかもしれない機能の紹介
PHPBLT#6 PHPの未来に入るかもしれない機能の紹介
 
Aizu.LT::Tokyo #4
Aizu.LT::Tokyo #4Aizu.LT::Tokyo #4
Aizu.LT::Tokyo #4
 
第21回Creators MeetUp
第21回Creators MeetUp第21回Creators MeetUp
第21回Creators MeetUp
 
Niigata.pm #1
Niigata.pm #1Niigata.pm #1
Niigata.pm #1
 
20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側
20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側
20160521 大規模映像配信サービスの Java8による全面リニューアルの裏側
 
おまえらこのライブラリ使ってないの? m9 (2013-07)
おまえらこのライブラリ使ってないの? m9	(2013-07)おまえらこのライブラリ使ってないの? m9	(2013-07)
おまえらこのライブラリ使ってないの? m9 (2013-07)
 
Distutil setuptools distribute
Distutil setuptools distributeDistutil setuptools distribute
Distutil setuptools distribute
 
140917運用管理勉強会job scheduler
140917運用管理勉強会job scheduler140917運用管理勉強会job scheduler
140917運用管理勉強会job scheduler
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
 
Offline Hoogleで何処でもはすはす
Offline Hoogleで何処でもはすはすOffline Hoogleで何処でもはすはす
Offline Hoogleで何処でもはすはす
 
環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介環境構築自動化ツールのご紹介
環境構築自動化ツールのご紹介
 
Struts2を始めよう!
Struts2を始めよう!Struts2を始めよう!
Struts2を始めよう!
 
Open Source System Administration Framework - Func
Open Source System Administration Framework - FuncOpen Source System Administration Framework - Func
Open Source System Administration Framework - Func
 
インフラ自動化とHashicorp tools
インフラ自動化とHashicorp toolsインフラ自動化とHashicorp tools
インフラ自動化とHashicorp tools
 
ヒカルのGo 資料 Webアプリケーションの作り方
ヒカルのGo 資料 Webアプリケーションの作り方ヒカルのGo 資料 Webアプリケーションの作り方
ヒカルのGo 資料 Webアプリケーションの作り方
 

More from Gosuke Miyashita

Walter ファミリーの紹介 at Shibuya.go#1
Walter ファミリーの紹介 at Shibuya.go#1Walter ファミリーの紹介 at Shibuya.go#1
Walter ファミリーの紹介 at Shibuya.go#1Gosuke Miyashita
 
Serverspec at Testing Framework Meeting
Serverspec at Testing Framework MeetingServerspec at Testing Framework Meeting
Serverspec at Testing Framework MeetingGosuke Miyashita
 
Serverspec at July Tech Festa 2013
Serverspec at July Tech Festa 2013Serverspec at July Tech Festa 2013
Serverspec at July Tech Festa 2013Gosuke 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
 
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
 

More from Gosuke Miyashita (20)

Walter ファミリーの紹介 at Shibuya.go#1
Walter ファミリーの紹介 at Shibuya.go#1Walter ファミリーの紹介 at Shibuya.go#1
Walter ファミリーの紹介 at Shibuya.go#1
 
Serverspec at Testing Framework Meeting
Serverspec at Testing Framework MeetingServerspec at Testing Framework Meeting
Serverspec at Testing Framework Meeting
 
Serverspec at July Tech Festa 2013
Serverspec at July Tech Festa 2013Serverspec at July Tech Festa 2013
Serverspec at July Tech Festa 2013
 
Serverspec at hbstudy #45
Serverspec at hbstudy #45Serverspec at hbstudy #45
Serverspec at hbstudy #45
 
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
 
10分でわかるDevOps
10分でわかるDevOps10分でわかるDevOps
10分でわかるDevOps
 
DevOpsって何?
DevOpsって何?DevOpsって何?
DevOpsって何?
 
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...
 

Recently uploaded

TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 

Recently uploaded (9)

TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 

Puppetのススメ