Enviar pesquisa
Carregar
入門 Chef Server #biglobetechtalk
•
34 gostaram
•
8,080 visualizações
BIGLOBE Tech Talk
Seguir
第1回 BIGLOBE Tech Talk 「初めての Chef」の発表です
Leia menos
Leia mais
Notícias e política
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 44
Recomendados
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk
BIGLOBE Tech Talk
Chef社内勉強会(第1回)
Chef社内勉強会(第1回)
Yoshinori Nakanishi
Chef概論とレシピ実践入門
Chef概論とレシピ実践入門
Kazuto Ohara
明日から始める Chef 入門 #bpstudy
明日から始める Chef 入門 #bpstudy
Takeshi Komiya
Itamae-Serverspec入門
Itamae-Serverspec入門
辰徳 斎藤
Puppetのススメ
Puppetのススメ
Gosuke Miyashita
Serverspecの活用tips紹介
Serverspecの活用tips紹介
Daisuke Ikeda
Serverspecを使ってサーバ5000台のBaculaクライアントをテスト
Serverspecを使ってサーバ5000台のBaculaクライアントをテスト
Ken Sawada
Recomendados
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk
開発エンジニアがChefで テスト駆動サーバー設定してみた #biglobetechtalk
BIGLOBE Tech Talk
Chef社内勉強会(第1回)
Chef社内勉強会(第1回)
Yoshinori Nakanishi
Chef概論とレシピ実践入門
Chef概論とレシピ実践入門
Kazuto Ohara
明日から始める Chef 入門 #bpstudy
明日から始める Chef 入門 #bpstudy
Takeshi Komiya
Itamae-Serverspec入門
Itamae-Serverspec入門
辰徳 斎藤
Puppetのススメ
Puppetのススメ
Gosuke Miyashita
Serverspecの活用tips紹介
Serverspecの活用tips紹介
Daisuke Ikeda
Serverspecを使ってサーバ5000台のBaculaクライアントをテスト
Serverspecを使ってサーバ5000台のBaculaクライアントをテスト
Ken Sawada
serverspecでサーバ環境のテストを書いてみよう
serverspecでサーバ環境のテストを書いてみよう
Daisuke Ikeda
Ansibleで始めるinfraTDD(初級編)
Ansibleで始めるinfraTDD(初級編)
佐久本正太
Serverspec at Testing Framework Meeting
Serverspec at Testing Framework Meeting
Gosuke Miyashita
Serverspecを自分好みにアレンジ スクリーンショットで証跡保存を撲滅-
Serverspecを自分好みにアレンジ スクリーンショットで証跡保存を撲滅-
Daisuke Ikeda
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
npsg
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
Yukihiko SAWANOBORI
ポリドックにServerspecを教えよう!
ポリドックにServerspecを教えよう!
ftnk
ぼくのかんがえた Itamae/Serverspec 構成フレームワーク 〜 Kondate 〜
ぼくのかんがえた Itamae/Serverspec 構成フレームワーク 〜 Kondate 〜
Naotoshi Seo
Chefで作る開発環境
Chefで作る開発環境
regret raym
Serverspecを使ってみた話
Serverspecを使ってみた話
Yasufumi Moritake
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
満徳 関
AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-
AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-
靖 小田島
Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)
Taro Hirose
Chef windows linux環境構築
Chef windows linux環境構築
靖 小田島
Server specのご紹介
Server specのご紹介
Akira Kaneda
Ansible入門
Ansible入門
Daiki Hayakawa
Niigata.pm #1
Niigata.pm #1
hayajo Imai
さくらインターネットにおけるServerspec導入事例(DevOps勉強会 #3 Serverspecの巻)
さくらインターネットにおけるServerspec導入事例(DevOps勉強会 #3 Serverspecの巻)
さくらインターネット株式会社
Ansible quickstart
Ansible quickstart
Hideki Saito
Chefで始めるWindows Server構築
Chefで始めるWindows Server構築
Takashi Kanai
Alternative chef
Alternative chef
Ryuji Tsutsui
Teorias
Teorias
Jinneth2015
Mais conteúdo relacionado
Mais procurados
serverspecでサーバ環境のテストを書いてみよう
serverspecでサーバ環境のテストを書いてみよう
Daisuke Ikeda
Ansibleで始めるinfraTDD(初級編)
Ansibleで始めるinfraTDD(初級編)
佐久本正太
Serverspec at Testing Framework Meeting
Serverspec at Testing Framework Meeting
Gosuke Miyashita
Serverspecを自分好みにアレンジ スクリーンショットで証跡保存を撲滅-
Serverspecを自分好みにアレンジ スクリーンショットで証跡保存を撲滅-
Daisuke Ikeda
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
npsg
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
Yukihiko SAWANOBORI
ポリドックにServerspecを教えよう!
ポリドックにServerspecを教えよう!
ftnk
ぼくのかんがえた Itamae/Serverspec 構成フレームワーク 〜 Kondate 〜
ぼくのかんがえた Itamae/Serverspec 構成フレームワーク 〜 Kondate 〜
Naotoshi Seo
Chefで作る開発環境
Chefで作る開発環境
regret raym
Serverspecを使ってみた話
Serverspecを使ってみた話
Yasufumi Moritake
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
満徳 関
AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-
AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-
靖 小田島
Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)
Taro Hirose
Chef windows linux環境構築
Chef windows linux環境構築
靖 小田島
Server specのご紹介
Server specのご紹介
Akira Kaneda
Ansible入門
Ansible入門
Daiki Hayakawa
Niigata.pm #1
Niigata.pm #1
hayajo Imai
さくらインターネットにおけるServerspec導入事例(DevOps勉強会 #3 Serverspecの巻)
さくらインターネットにおけるServerspec導入事例(DevOps勉強会 #3 Serverspecの巻)
さくらインターネット株式会社
Ansible quickstart
Ansible quickstart
Hideki Saito
Chefで始めるWindows Server構築
Chefで始めるWindows Server構築
Takashi Kanai
Mais procurados
(20)
serverspecでサーバ環境のテストを書いてみよう
serverspecでサーバ環境のテストを書いてみよう
Ansibleで始めるinfraTDD(初級編)
Ansibleで始めるinfraTDD(初級編)
Serverspec at Testing Framework Meeting
Serverspec at Testing Framework Meeting
Serverspecを自分好みにアレンジ スクリーンショットで証跡保存を撲滅-
Serverspecを自分好みにアレンジ スクリーンショットで証跡保存を撲滅-
ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
ポリドックにServerspecを教えよう!
ポリドックにServerspecを教えよう!
ぼくのかんがえた Itamae/Serverspec 構成フレームワーク 〜 Kondate 〜
ぼくのかんがえた Itamae/Serverspec 構成フレームワーク 〜 Kondate 〜
Chefで作る開発環境
Chefで作る開発環境
Serverspecを使ってみた話
Serverspecを使ってみた話
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-
AWSとAnsibleで実践!プロビジョニング入門‐Lamp+Laravel-
Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)
Chef windows linux環境構築
Chef windows linux環境構築
Server specのご紹介
Server specのご紹介
Ansible入門
Ansible入門
Niigata.pm #1
Niigata.pm #1
さくらインターネットにおけるServerspec導入事例(DevOps勉強会 #3 Serverspecの巻)
さくらインターネットにおけるServerspec導入事例(DevOps勉強会 #3 Serverspecの巻)
Ansible quickstart
Ansible quickstart
Chefで始めるWindows Server構築
Chefで始めるWindows Server構築
Destaque
Alternative chef
Alternative chef
Ryuji Tsutsui
Teorias
Teorias
Jinneth2015
MySQL Clusterに適したベアメタルクラウド SoftLayer
MySQL Clusterに適したベアメタルクラウド SoftLayer
Maho Takara
Portfolio assesment: Writing interconnected and powerful learnings
Portfolio assesment: Writing interconnected and powerful learnings
Jordi Díaz Gibson
Crecimiento de bucaramanga y su area metropolitana
Crecimiento de bucaramanga y su area metropolitana
Marcela02102000
비아그라 복용법々비아그라 구입『〃∠∩비아그라판매∝비아그라구입〃비아그라파는곳∧비아그라팝니다≠
비아그라 복용법々비아그라 구입『〃∠∩비아그라판매∝비아그라구입〃비아그라파는곳∧비아그라팝니다≠
成 金
tutorial hotspot mikrotik
tutorial hotspot mikrotik
Dimas Ari
サーバー設定自動化は経営課題
サーバー設定自動化は経営課題
Maho Takara
ラズパイ+SL+BMでワトソンと話そう
ラズパイ+SL+BMでワトソンと話そう
Maho Takara
Renewable Energy From Evaporation
Renewable Energy From Evaporation
Albert Vx
IBMワトソン 勉強会 20161121a
IBMワトソン 勉強会 20161121a
Maho Takara
Tensor flow勉強会 (ayashiminagaranotensorflow)
Tensor flow勉強会 (ayashiminagaranotensorflow)
tak9029
Destaque
(12)
Alternative chef
Alternative chef
Teorias
Teorias
MySQL Clusterに適したベアメタルクラウド SoftLayer
MySQL Clusterに適したベアメタルクラウド SoftLayer
Portfolio assesment: Writing interconnected and powerful learnings
Portfolio assesment: Writing interconnected and powerful learnings
Crecimiento de bucaramanga y su area metropolitana
Crecimiento de bucaramanga y su area metropolitana
비아그라 복용법々비아그라 구입『〃∠∩비아그라판매∝비아그라구입〃비아그라파는곳∧비아그라팝니다≠
비아그라 복용법々비아그라 구입『〃∠∩비아그라판매∝비아그라구입〃비아그라파는곳∧비아그라팝니다≠
tutorial hotspot mikrotik
tutorial hotspot mikrotik
サーバー設定自動化は経営課題
サーバー設定自動化は経営課題
ラズパイ+SL+BMでワトソンと話そう
ラズパイ+SL+BMでワトソンと話そう
Renewable Energy From Evaporation
Renewable Energy From Evaporation
IBMワトソン 勉強会 20161121a
IBMワトソン 勉強会 20161121a
Tensor flow勉強会 (ayashiminagaranotensorflow)
Tensor flow勉強会 (ayashiminagaranotensorflow)
Semelhante a 入門 Chef Server #biglobetechtalk
20130723 ecシステムにchefを導入してみた v1.0
20130723 ecシステムにchefを導入してみた v1.0
NIFTY Cloud
社内勉強会 - chef
社内勉強会 - chef
Nemoto Yusuke
DevOpsを実現する為のChef実践テクニック Chef12対応版
DevOpsを実現する為のChef実践テクニック Chef12対応版
Yusuke Ando
DevOpsを実現するChef活用テクニック
DevOpsを実現するChef活用テクニック
Yusuke Ando
S16 Microsoft Azure 上での Chef 環境の構成
S16 Microsoft Azure 上での Chef 環境の構成
Microsoft Azure Japan
今日から使い始めるChef
今日から使い始めるChef
Masahiro NAKAYAMA
Rubyで楽々サーバー管理 - 岡山Ruby会議01 -
Rubyで楽々サーバー管理 - 岡山Ruby会議01 -
Masaya Konishi
[JANOG35.5] WhiteBox SW検証 ~サーバサイド編~
[JANOG35.5] WhiteBox SW検証 ~サーバサイド編~
gree_tech
Redmine Ansible
Redmine Ansible
ITO Yoshiichi
Aspnet mvc 6の今を紹介
Aspnet mvc 6の今を紹介
Makoto Nishimura
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
Akihiro Kuwano
Cloudstack user group meeting in osaka
Cloudstack user group meeting in osaka
Naotaka Jay HOTTA
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Ryo Nakamaru
Chef Howto with Vagrant + Berkshelf
Chef Howto with Vagrant + Berkshelf
Masahiro NAKAYAMA
第2回 JAWS−UG 神戸 開発運用の現場でのChef活用
第2回 JAWS−UG 神戸 開発運用の現場でのChef活用
Takuro Sasaki
Eight meets AWS
Eight meets AWS
Tetsuya Mase
ReVIEW & CI - ChefでCI環境構築
ReVIEW & CI - ChefでCI環境構築
Masahiro Wakame
Chef
Chef
Ishikawa Yuya
130412 kayac-cinnamon
130412 kayac-cinnamon
Yuki Shibazaki
Apache cloudstack4.0インストール
Apache cloudstack4.0インストール
Yasuhiro Arai
Semelhante a 入門 Chef Server #biglobetechtalk
(20)
20130723 ecシステムにchefを導入してみた v1.0
20130723 ecシステムにchefを導入してみた v1.0
社内勉強会 - chef
社内勉強会 - chef
DevOpsを実現する為のChef実践テクニック Chef12対応版
DevOpsを実現する為のChef実践テクニック Chef12対応版
DevOpsを実現するChef活用テクニック
DevOpsを実現するChef活用テクニック
S16 Microsoft Azure 上での Chef 環境の構成
S16 Microsoft Azure 上での Chef 環境の構成
今日から使い始めるChef
今日から使い始めるChef
Rubyで楽々サーバー管理 - 岡山Ruby会議01 -
Rubyで楽々サーバー管理 - 岡山Ruby会議01 -
[JANOG35.5] WhiteBox SW検証 ~サーバサイド編~
[JANOG35.5] WhiteBox SW検証 ~サーバサイド編~
Redmine Ansible
Redmine Ansible
Aspnet mvc 6の今を紹介
Aspnet mvc 6の今を紹介
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
泥臭い運用から、プログラマブルインフラ構築(に行きたい)
Cloudstack user group meeting in osaka
Cloudstack user group meeting in osaka
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Chef Howto with Vagrant + Berkshelf
Chef Howto with Vagrant + Berkshelf
第2回 JAWS−UG 神戸 開発運用の現場でのChef活用
第2回 JAWS−UG 神戸 開発運用の現場でのChef活用
Eight meets AWS
Eight meets AWS
ReVIEW & CI - ChefでCI環境構築
ReVIEW & CI - ChefでCI環境構築
Chef
Chef
130412 kayac-cinnamon
130412 kayac-cinnamon
Apache cloudstack4.0インストール
Apache cloudstack4.0インストール
Mais de BIGLOBE Tech Talk
アジャイル実践のための3つのコツ BIGLOBEはこうやりました
アジャイル実践のための3つのコツ BIGLOBEはこうやりました
BIGLOBE Tech Talk
リーンでアジャイルにAndroidアプリ開発をしてみた!(NECビッグローブ ABC向け資料)
リーンでアジャイルにAndroidアプリ開発をしてみた!(NECビッグローブ ABC向け資料)
BIGLOBE Tech Talk
エンジニアからはじめるリーンスタートアップ(応募スライド)
エンジニアからはじめるリーンスタートアップ(応募スライド)
BIGLOBE Tech Talk
agilejapan2012biglobedojo
agilejapan2012biglobedojo
BIGLOBE Tech Talk
biglobedojo7
biglobedojo7
BIGLOBE Tech Talk
顧客開発モデルの実践事例のご紹介 BIGLOBE 芳賀
顧客開発モデルの実践事例のご紹介 BIGLOBE 芳賀
BIGLOBE Tech Talk
Mais de BIGLOBE Tech Talk
(6)
アジャイル実践のための3つのコツ BIGLOBEはこうやりました
アジャイル実践のための3つのコツ BIGLOBEはこうやりました
リーンでアジャイルにAndroidアプリ開発をしてみた!(NECビッグローブ ABC向け資料)
リーンでアジャイルにAndroidアプリ開発をしてみた!(NECビッグローブ ABC向け資料)
エンジニアからはじめるリーンスタートアップ(応募スライド)
エンジニアからはじめるリーンスタートアップ(応募スライド)
agilejapan2012biglobedojo
agilejapan2012biglobedojo
biglobedojo7
biglobedojo7
顧客開発モデルの実践事例のご紹介 BIGLOBE 芳賀
顧客開発モデルの実践事例のご紹介 BIGLOBE 芳賀
入門 Chef Server #biglobetechtalk
1.
©2013 NEC BIGLOBE,
Ltd. 1 第1回 BIGLOBE Tech Talk 「初めての Chef」 入門 Chef Server 2013.6.14 NEC BIGLOBE SACHO Yasuhisa
2.
©2013 NEC BIGLOBE,
Ltd. 2 自己紹介 • 佐長 康久 (さちょう やすひさ) • ミドルウェア担当 • id: @syasuhisa – つぶやき内容は所属組織とは関係ありまs(ry
3.
©2013 NEC BIGLOBE,
Ltd. 3 目次 • Chef とは • Chef Server について • Chef Server 設定編 • Chef Server 利用編 • まとめ
4.
©2013 NEC BIGLOBE,
Ltd. 4 Chef とは
5.
©2013 NEC BIGLOBE,
Ltd. 5 Chef とは • インフラの構築・運用管理を自動化するため のフレームワーク
6.
©2013 NEC BIGLOBE,
Ltd. 6 Chef の基本 • Ruby で記述されたクックブックやレシピ※と呼ばれる 設定情報を元に、サーバの状態を維持・管理する Infrastructure as Code – インフラをコードで制御できるように クックブック レシピ Ruby プログラム ※ クックブック: レシピ、属性情報、設定テンプレートなどをまとめたもの レシピ: 設定や手順を記述した Ruby プログラム
7.
©2013 NEC BIGLOBE,
Ltd. 7 • 設定や手順をプログラムで書いておけば、自動で設 定してくれる? で? 対象サーバ 自動設定 クックブック レシピ 1)Apache入れて 2)起動 Apache 起動 • 本質的には、 あるべき状態をプログラムで定義しておけば、自動 で状態を維持してくれる
8.
©2013 NEC BIGLOBE,
Ltd. 8 Chef のバリエーション 種別 概要 OSS Chef オープンソース版 Hosted Chef Opscode 社が Chef Server を運用 Private Chef Hosted 版をプライベート環境で運用 • 機能差については下記参照 http://www.opscode.com/chef/#which-chef
9.
©2013 NEC BIGLOBE,
Ltd. 9 OSS Chef のバリエーション 種類 特徴 機能 Chef Server 本気のサーバ・クライアント型 多 Chef zero 軽量簡易 Chef Server Chef solo スタンドアロン版 Chef apply 単一レシピを実行 少
10.
©2013 NEC BIGLOBE,
Ltd. 10 基本構成 Chef Server Node Workstation knife Chef Client 管理者用端末 knife コマンドで、 クックブック、Chef Server を操作する Chef Server に管理され るサーバ Chef Client が定期的に Chef Server と通信し、 定義された状態を 維持する 管理サーバ クックブックの配布・保存、 Node の認証、管理、 情報の検索などを行う
11.
©2013 NEC BIGLOBE,
Ltd. 11 Node 動作概要 Chef Server Workstation クックブック レシピ 1)Apache入れて 2)起動 レシピ 1)Apache入れて 2)起動 knife Chef Client ① クックブックを用意して、 Chef Server へアップロード
12.
©2013 NEC BIGLOBE,
Ltd. 12 Node 動作概要 Chef Server Workstation knife Chef Client ② クックブックの 情報を(定期的に)取得 クックブック レシピ 1)Apache入れて 2)起動 レシピ 1)Apache入れて 2)起動
13.
©2013 NEC BIGLOBE,
Ltd. 13 Node 動作概要 Chef Server Workstation knife Chef Client ③ Node が、クックブックで 定義された状態と異なる場合、 必要な処理を実行して、 状態を合わせる クックブック レシピ 1)Apache入れて 2)起動 レシピ 1)Apache入れて 2)起動 Apache 起動
14.
©2013 NEC BIGLOBE,
Ltd. 14 最近の話題 • Chef11 • Facebook • AWS OpsWorks • 「入門 Chef Solo」本(伊藤直也さん著) • IBM • Microsoft
15.
©2013 NEC BIGLOBE,
Ltd. 15 Chef Server について
16.
©2013 NEC BIGLOBE,
Ltd. 16 Chef Server とは • クライアント・サーバモデル • インフラ情報を集中管理 – 情報検索 • 例 – OS が CentOS のノード – メモリが 4GB のノード – 検索結果を利用した設定との連携など • 中規模~向け • WebUI
17.
©2013 NEC BIGLOBE,
Ltd. 17 Chef11 • より高性能かつスケーラブルに – 1 サーバで 10,000 ノード管理可能 – コアエンジンが Ruby 製から Erlang 製に – DB が CouchDB から PostgreSQL に – WebUI が Merb から Rails 3 に – フロントエンドに Nginx • API や WebUI アクセスをリバースプロキシ • ポートが分かりやすく – HTTPS(443/tcp)に集約 – HTTP(80/tcp)は HTTPS へリダイレクト
18.
©2013 NEC BIGLOBE,
Ltd. 18 Chef11 • Chef Server の導入が簡単に – Chef10 までは Chef Server の構築が手間だった – 一つの RPM でインストール • 組み込み Ruby など必要なものはすべて – /opt/chef-server 配下 • セットアップもコマンド一発 • テストまで
19.
©2013 NEC BIGLOBE,
Ltd. 19 Chef Server の構成要素 Nginx フロントエンド用リバースプロキシ WebUI Web インタフェース機能、Rails 3 Erchef コアエンジン部、Erlang 実装 Bookshelf クックブックを保存 Message Queues 検索 Indexer、RabbitMQ+chef-solr PostgreSQL Node やクックブックの情報を保存 参考: http://docs.opscode.com/chef_overview_server.html
20.
©2013 NEC BIGLOBE,
Ltd. 20 chef-client 実行 ① Node 情報収集(Ohai) ② 認証 ③ 設定情報取得 ④ 設定準備 ⑤ 設定実行(実施済みはスキップ) ⑥ 情報更新、ログ出力 終了 Chef Client の処理フロー Chef Server いい? OK! 最新情報通知
21.
©2013 NEC BIGLOBE,
Ltd. 21 Ohai • Ruby 製の情報収集ツール – Chef のインフラ情報管理を支えている – Chef Client に同梱 • 様々な Node の情報を JSON 形式で収集 – 環境や OS に合わせて情報収集 • ソースは努力の結晶だそうです – 項目は数百以上 • OS、 CPU、メモリ、ディスク、NW、… • 収集した情報は Chef Server に保存 – 検索可能に
22.
©2013 NEC BIGLOBE,
Ltd. 22 認証 • Chef Server は API クライアント(Chef Client や knife) を公開鍵暗号で認証 • 初回通信時のみ特殊な validator キーを使用 – validator キーは Chef Server 構築時に自動生成 – API クライアント利用前に設置が必要 Chef Server Chef Client 初回通信時: validator キーで署名して、 新しい API クライアントの鍵を要求 以降: 新しい API クライアントキーで署名 新しい API クライアントの鍵を返却
23.
©2013 NEC BIGLOBE,
Ltd. 23 Chef Server 設定編
24.
©2013 NEC BIGLOBE,
Ltd. 24 vagrant VirtualBox Windows7 テスト環境 • PC(Windows7) – VirtualBox 4.2.12 • chefsv – workstation も兼ねる – Chef Server 11.8.0.1 – Chef Client 11.4.4 – 192.168.10.10 – 要 git • node01 – Chef Client 11.4.4 – 192.168.10.31 – vagrant 1.2.2 • CentOS 6.4 box 192.168.10.10 192.168.10.31 192.168.10.1 chefsv node01 テスト環境概要図
25.
©2013 NEC BIGLOBE,
Ltd. 25 テスト環境設定時のポイント • hosts – Chef Server は 127.0.0.1 で自分の名前解決ができること – Chef Server は Node の名前解決ができること – Node は Chef Server の名前解決ができること • iptables – Workstation、Node → Chef Server(443/tcp) – Workstation → Node(22/tcp) – WebUI 用 → Chef Server(80/tcp) • ssh – Workstation → Node ログインできること – ログインアカウント(今回は vagrant)で sudo できること • knife – knife コマンド実行時に knife.rb を探索 – ~/.chef/knife.rb なら、気にしなくても大丈夫
26.
©2013 NEC BIGLOBE,
Ltd. 26 仮想環境構築 • Vagrantfile 置いて、vagrant up Vagrant.configure("2") do |config| config.vm.box = "centos64" config.vm.define :server do |sv| sv.vm.network :private_network, ip:"192.168.10.10" sv.vm.hostname = "chefsv" end config.vm.define :node do |sv| sv.vm.network :private_network, ip:"192.168.10.31" sv.vm.hostname = "node01" end end
27.
©2013 NEC BIGLOBE,
Ltd. 27 Chef Server 設定 chefsv$ sudo rpm -ivh chef-server-11.0.8-1.el6.x86_64.rpm • Chef Server RPM のダウンロード – http://www.opscode.com/chef/install/ • インストール chefsv$ sudo chef-server-ctl reconfigure Starting Chef Client, version 11.4.0 Compiling Cookbooks... ... Chef Client finished, 268 resources updated chef-server Reconfigured! chefsv$ sudo chef-server-ctl test ... Finished in 34.09 seconds 70 examples, 0 failures • セットアップ
28.
©2013 NEC BIGLOBE,
Ltd. 28 Chef Server 管理コマンド • /opt/chef-server/bin/chef-server-ctl – 状態、設定確認 – 起動、停止、再起動 – 一括ログ参照 – シグナル送信 – (再)設定 – 初期化 – アンインストール cleanse graceful-kill help hup int kill once reconfigure reindex restart service-list show-config start status stop tail term test uninstall 利用可能なオプション一覧
29.
©2013 NEC BIGLOBE,
Ltd. 29 Workstation 設定 • knife インストール(Chef Client に含まれる) chefsv$ curl -L https://www.opscode.com/chef/install.sh | sudo bash chefsv$ chef-client -v Chef: 11.4.4 chefsv$ cd ~ chefsv$ git clone git://github.com/opscode/chef-repo.git chefsv$ mkdir ~/.chef chefsv$ sudo cp /etc/chef-server/chef-validator.pem ~/.chef/validation.pem chefsv$ sudo cp /etc/chef-server/admin.pem ~/.chef/ chefsv$ sudo chown vagrant:vagrant ~/.chef/*.pem • レポジトリの準備 • 鍵の準備
30.
©2013 NEC BIGLOBE,
Ltd. 30 Workstation 設定 chefsv$ $ knife configure -i WARNING: No knife configuration file found Where should I put the config file? [/home/vagrant/.chef/knife.rb] Please enter the chef server URL: [http://chefsv:4000] https:://192.168.10.10 Please enter a name for the new user: [vagrant] Please enter the existing admin name: [admin] Please enter the location of the existing admin's private key: [/etc/chef/admin.pem] ~/.chef/admin.pem Please enter the validation clientname: [chef-validator] Please enter the location of the validation key: [/etc/chef/validation.pem] ~/.chef/validation.pem Please enter the path to a chef repository (or leave blank): ~/chef-repo Creating initial API user... Please enter a password for the new user: ******** Created user[vagrant] Configuration file written to /home/vagrant/.chef/knife.rb • knife コマンド初期設定
31.
©2013 NEC BIGLOBE,
Ltd. 31 Node 設定 chefsv$ knife bootstrap 192.168.10.31 -x vagrant -P ******** --sudo Bootstrapping Chef on 192.168.10.31 ... 192.168.10.31 Converging 0 resources 192.168.10.31 Chef Client finished, 0 resources updated • Workstation から bootstrap で起動 • 自動で validator キーを置いてくれる • Chef Server 登録して、初回 Chef Client 実行まで
32.
©2013 NEC BIGLOBE,
Ltd. 32 Node 設定 chefsv$ knife ssh name:node01 'sudo chef-client -d -i 300 -s 10 -L /var/log/chef-client.log' -P ******** • knife ssh で Chef Client を daemon 化(強気) nocd01$ ps -fea | grep chef root 5743 1 0 05:58 ? 00:00:00 /opt/chef/embedded/bin/ruby /usr/bin/chef-client -d -i 300 -s 10 -L /var/log/chef-client.log • 300s 間隔で 10s ランダムに時間をずらして実行 • ログは /var/log/chef-client.log に出力 • 手動で単発実行するなら、-d オプションなしで • -W オプションで why-run(dry-run) – 設定は実施しない
33.
©2013 NEC BIGLOBE,
Ltd. 33 Chef Server 利用編
34.
©2013 NEC BIGLOBE,
Ltd. 34 クックブック・レシピ • サーバの「状態」を定義 – 何回実行しても同じ状態になるように作る – 冪等(べきとう)性(これ大事 • プラットフォームの違いを吸収してくれる(ものも – 例) package * action: install • CentOS → yum • Ubuntu → apt-get • コミュニティでたくさん公開 – http://community.opscode.com/cookbooks – だいたい動きますが、期待通りか確認しましょう – わりとそのままでは使えないことも… – とても参考になります
35.
©2013 NEC BIGLOBE,
Ltd. 35 クックブック開発・テスト • 開発・テストツールも色々あります – test-kitchen – Food Critic – cucumber-chef – chef-workflow – chefspec – yard-chef 参考 URL: http://docs.opscode.com/#the-chef-community
36.
©2013 NEC BIGLOBE,
Ltd. 36 クックブックの登録 chefsv$ knife cookbook upload apache2 Uploading apache2 [1.6.2] Uploaded 1 cookbook. chefsv$ knife coolkbook list apache2 1.6.2 • クックブックの取得 chefsv$ knife cookbook site install apache2 Installing apache2 to /home/vagrant/chef-repo/cookbooks ... Cookbook apache2 version 1.6.2 successfully installed • クックブックを Chef Server にアップロード
37.
©2013 NEC BIGLOBE,
Ltd. 37 ここからは WebUI で chefsv の IP アドレスで接続 ログイン情報は画面右 初回ログイン後、パスワード変更画面へ
38.
©2013 NEC BIGLOBE,
Ltd. 38 Status 管理 Node 情報が一覧表示 Uptime や Last Check-in など 長時間更新されていないと色が変わる
39.
©2013 NEC BIGLOBE,
Ltd. 39 Cookbooks 登録済みクックブックが一覧表示 chefsv$ knife cookbook list apache2 1.6.2
40.
©2013 NEC BIGLOBE,
Ltd. 40 Nodes 管理 Node が一覧表示 chefsv$ knife node list node01
41.
©2013 NEC BIGLOBE,
Ltd. 41 レシピの適用 適用したいレシピを ドラッグ&ドロップして、 下部の「Save Node」 ボタンを押す chefsv$ knife node run_list add node01 'recipe[apache2]'
42.
©2013 NEC BIGLOBE,
Ltd. 42 適用レシピの確認 新たに Run List と Recipes に 登録したレシピ情報が反映 Chef Client を daemon 化していれば、 しばらくすればレシピが適用 していない場合は、knife ssh や Node 上で Chef Client を実行して適用 node01$ ps -fea | grep httpd root 7358 1 0 14:38 ? 00:00:00 /usr/sbin/httpd apache 7361 7358 0 14:38 ? 00:00:00 /usr/sbin/httpd apache 7362 7358 0 14:38 ? 00:00:00 /usr/sbin/httpd ...
43.
©2013 NEC BIGLOBE,
Ltd. 43 情報検索 Node 用 Queryに「platform:centos」と入力して、 「Search node」ボタンを押すと、 CentOS の Node 一覧が表示される chefsv$ knife search node platform:centos 1 items found Node Name: node01 Environment: _default FQDN: node IP: 10.0.2.15 Run List: recipe[apache2] Roles: Recipes: apache2 Platform: centos 6.4 Tags:
44.
©2013 NEC BIGLOBE,
Ltd. 44 まとめ • Chef は、 「インフラの構築・運用管理を自動化するため のフレームワーク」 • Chef11 はいろいろと便利に • Chef Server も簡単に試せます • WebUI もぜひ • 冪等(べきとう)性は大切です • 使いこなすには、Dev+Ops 力! 以上です