Home
Explore
Submit Search
Upload
Login
Signup
Advertisement
2014年のChefとInfrastructure as code
Report
Yukihiko SAWANOBORI
Follow
CEO at HiganWorks LLC
Jun. 22, 2014
•
0 likes
26 likes
×
Be the first to like this
Show More
•
6,840 views
views
×
Total views
0
On Slideshare
0
From embeds
0
Number of embeds
0
Check these out next
さくらのクラウドフォーメーション with Chef [XEgg session]
Yukihiko SAWANOBORI
OpenShift のある生活
Yoshimasa Tanabe
シェフから板前になった話
oshiro_seiya
PowerShellでFunction Appしよう!
Tsubasa Yoshino
ゼロから始めるオープンソース生活
kazuki kumagai
20141017 リモートワークの理想と現実とその後 - DevLoveKansai remotework 2
Takuya Oketani
アプリ開発&チーム管理で役立った拡張機能
Masaki Suzuki
社内Chef勉強会
Masaaki Uchida
1
of
61
Top clipped slide
2014年のChefとInfrastructure as code
Jun. 22, 2014
•
0 likes
26 likes
×
Be the first to like this
Show More
•
6,840 views
views
×
Total views
0
On Slideshare
0
From embeds
0
Number of embeds
0
Download Now
Download to read offline
Report
Technology
JTF2014のセッションスライドです。
Yukihiko SAWANOBORI
Follow
CEO at HiganWorks LLC
Advertisement
Advertisement
Advertisement
Recommended
Infrastructure as Codeと 組織のドキュメンテーション + Immutable Infrastructure事例
Yukihiko SAWANOBORI
14.8K views
•
79 slides
Jsugプレゼン資料new
Wataru Kakizoe
1.3K views
•
24 slides
Aws OpsWorks [JAWSDAYS 2014 ACEに聞けトラック]
Yukihiko SAWANOBORI
3.7K views
•
81 slides
Chef入門
Yasufumi Moritake
658 views
•
10 slides
Infrastructure as code ~ ツールスタック / ヌーラボの事例 ~
ikikko
2.6K views
•
31 slides
Ansible x softlayer Provisioning
softlayerjp
782 views
•
21 slides
More Related Content
Slideshows for you
(20)
さくらのクラウドフォーメーション with Chef [XEgg session]
Yukihiko SAWANOBORI
•
12.2K views
OpenShift のある生活
Yoshimasa Tanabe
•
3.6K views
シェフから板前になった話
oshiro_seiya
•
952 views
PowerShellでFunction Appしよう!
Tsubasa Yoshino
•
1.1K views
ゼロから始めるオープンソース生活
kazuki kumagai
•
1.6K views
20141017 リモートワークの理想と現実とその後 - DevLoveKansai remotework 2
Takuya Oketani
•
8.5K views
アプリ開発&チーム管理で役立った拡張機能
Masaki Suzuki
•
2.7K views
社内Chef勉強会
Masaaki Uchida
•
2K views
開発チーム管理で役立ったVSCode拡張機能
Masaki Suzuki
•
2K views
インフラエンジニアの綺麗で優しい手順書の書き方
Shohei Koyama
•
144.5K views
エンジニア目線での対外ブランディング ~ヌーラボ編~
ikikko
•
3K views
Nulabとawsと私
ikikko
•
4.1K views
Micronaut on Azure 試してみた
拓将 平林
•
1.9K views
アプリエンジニアからクラウド専用のインフラエンジニアになってみて
Sato Shun
•
84.6K views
チームでChef serverを運用するには
知教 本間
•
5.6K views
JiraとConfluenceのTips集
Hiroshi Ohnuki
•
7K views
Cognitive serviceのすゝめ
Tsubasa Yoshino
•
152 views
React meetup 3_eight
Hideharu Okuma
•
4.6K views
AWS EC2の自動リブート
Eiji Kamiya
•
3.1K views
Backlog/Cacooから学ぶ、サービスに必要な機能の取捨選択と改善の仕方
ikikko
•
4.7K views
Similar to 2014年のChefとInfrastructure as code
(20)
DevOpsを実現する為のChef活用テクニック
Yu Kitazume
•
1.1K views
DevOpsを実現するChef活用テクニック
Yusuke Ando
•
3.7K views
DevOpsを実現する為のChef実践テクニック Chef12対応版
Yusuke Ando
•
4.8K views
モバイルOSとWeb標準とそれらへのアプローチ
Kisato
•
7.7K views
Chefで始めるWindows Server構築
Takashi Kanai
•
7.6K views
コンテナ事例 CircleCI, Cucumber-Chef
Yukihiko SAWANOBORI
•
6.2K views
Ossを使ったazureでのdev ops
裕貴 荒井
•
514 views
Infrastructure as Code
裕貴 荒井
•
547 views
作る人から作りながら運用する人になっていく
Ryo Mitoma
•
971 views
Firefox OSアーキテクチャクイックツアー - FxOSコードリーディングミートアップ#21向け追記版
Masami Yabushita
•
2.2K views
論理思考とプログラミング 2013f#10
Noritada Shimizu
•
1.8K views
神戸ITフェスティバル2013「Firefox開発ツールコレクション」
Noritada Shimizu
•
1.9K views
三位一体の自動化で壊せ DevとOpsの壁~アラサーエンジニアの挑戦~
Rakuten Group, Inc.
•
8.5K views
自社製品のバージョン管理 進化と問題解決の道のり
Study Group by SciencePark Corp.
•
195 views
Firefox OS 勉強会 名古屋2nd 「便利な便利な開発ツール」
Noritada Shimizu
•
1.4K views
オルターブースが実践する .NET Core “ガチ” 開発
Yuta Matsumura
•
509 views
サイドプロジェクトで使う Azure DevOps
Shuhei Eda
•
1.1K views
Objective-Cプログラマのためのswift導入法
Tomoki Hasegawa
•
5.7K views
Angular js開発事例
Shun Takeyama
•
3.7K views
[REV UP] あなたならどう使う?最新Azureレシピ for LINE Platform
拓将 平林
•
1.3K views
Advertisement
More from Yukihiko SAWANOBORI
(20)
mocloud カスタムDockerイメージ ハンズオン
Yukihiko SAWANOBORI
•
1.5K views
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
Yukihiko SAWANOBORI
•
4.8K views
[LT] インフラの人がChefやServerspec(ほか)が Rubyだったおかげですこし プログラムをするようになった話
Yukihiko SAWANOBORI
•
5.3K views
DevOpsのアプローチと クラウド/バーチャル環境/構成管理ツール のお話
Yukihiko SAWANOBORI
•
6.7K views
さくらのインフラコード
Yukihiko SAWANOBORI
•
3.2K views
JAWSUG初心者向けトラック 【Deploy&Ops】
Yukihiko SAWANOBORI
•
2.4K views
MarketPlaceのAMIをPackerで作る時、 Chefは3度配膳する
Yukihiko SAWANOBORI
•
1.1K views
仮想マシンざっくり解説と実践Vagrant | StaticPress × S3 × Vagrant 勉強会
Yukihiko SAWANOBORI
•
7.2K views
Chef Casual Talks 出張版京セラドーム公演 (JAWS FESTA Kansai 2013内イベント)
Yukihiko SAWANOBORI
•
4.3K views
はかどるChefの小ネタ集
Yukihiko SAWANOBORI
•
5.2K views
Building document with the Sphinx public edtion
Yukihiko SAWANOBORI
•
1.9K views
Chef_Casual_Talks_Kansai_Vol1_Infrastructure_as_Code
Yukihiko SAWANOBORI
•
4.2K views
Chef(Server)と AWS OpsWorks(tm)の比較
Yukihiko SAWANOBORI
•
9K views
aws_opsworks
Yukihiko SAWANOBORI
•
4.3K views
Chef meetup vol2_higanwoks
Yukihiko SAWANOBORI
•
1.2K views
What is chef
Yukihiko SAWANOBORI
•
20.9K views
CentOSでつくる神Plesk
Yukihiko SAWANOBORI
•
4K views
密着! nibohsiデプロイ 13:00-13:05 - railsアプリのデプロイ事例 -
Yukihiko SAWANOBORI
•
1.3K views
Lxc on cloud
Yukihiko SAWANOBORI
•
1.5K views
The Chef integrations Z Cloud(Joyent)
Yukihiko SAWANOBORI
•
811 views
Recently uploaded
(20)
留信网认证可查【拜欧拉大学文凭证书毕业证购买】
1lkjhg
•
3 views
UAV写真・レーザー測量test.pptx
ssuserb48d2b1
•
14 views
CDLEハッカソン2022参加報告.pdf
SHOIWA1
•
7 views
①【麦吉尔大学毕业证文凭学位证书|工艺完美复刻】
love445ds
•
2 views
【DL輪読会】Flow Matching for Generative Modeling
Deep Learning JP
•
729 views
①【阳光海岸大学毕业证文凭学位证书|工艺完美复刻】
vgh215w
•
2 views
ペンタエリスリトール市場.pdf
HinaMiyazu
•
3 views
20230516 @Mix Leap Hirohiko_Suwa
Masashi Nakagawa
•
83 views
SoftwareControl.pdf
ssusercd9928
•
15 views
☀️【杜兰大学毕业证成绩单留学生首选】
2125nuh
•
2 views
【2023年5月】平成生まれのためのUNIX&IT歴史講座
法林浩之
•
16 views
PCベース制御による集中制御.pdf
ssusercd9928
•
19 views
JSTQB_テストマネジメントとレビュープロセス.pdf
akipii Oga
•
113 views
☀️【中央兰开夏大学毕业证成绩单留学生首选】
25mjhd12
•
4 views
JSTQB_テストプロセスの概念モデル.pdf
akipii Oga
•
135 views
AIEXPO_CDLE名古屋紹介
KotaMiyano
•
3 views
ヘッドレス化したbaserCMS5とその機能
Ryuji Egashira
•
10 views
《杨百翰大学毕业证|学位证书校内仿真版本》
d520dasw12
•
2 views
Kubernetes超入門
Takashi Suzuki
•
5 views
統計学の攻略_正規分布ファミリーの全体像.pdf
akipii Oga
•
133 views
Advertisement
2014年のChefとInfrastructure as code
2014年のChefと Infrastructure as code JTF2014
(June 22 2014) @sawanoboly (HiganWoks LLC)
運営組織 2 • 業務執行社員をつとめる合同会社 • アプリケーションのためのプラットフォーム構築/運 用自動化をテーマにした活動を担当 •
http://opsrock.in 共同開発・運営 • Chefをはじめ、Infrastracture as Code 関連を主に取り扱うソリューションを提供 • 導入支援・トレーニングも
本日のお話 • Chefをひと通り解説 • Chef本ベース+補足など ! •
近頃のChef関連 Update • Chef-Zero, ChefDK, Chef-Metal.. • local_mode, local_template 3
Chefの本
5 ちなみに買った人ー?
6
7
Chef 書籍:Chef活用ガイドより
Chefとは • 米Chef社(Chef Software,
Inc.)が開発保守 する構成管理のフレームワーク • 旧社名Opscode • Infrastructure as codeの一部で利用 9
Infrastructure as code •
背景に、APIコールでサーバインスタンスが 調達できる環境 • インフラを抽象化し、設計、実装といったプ ロセスをコードで管理しよう • テストなど、アプリ開発の優れた手法を取り 入れ • バージョン管理を行い、Githubなどでコー ドを中心にしたコミュニケーション 10
Chef社が提唱する10の原則のうち 構成管理ツールに求められる要素抜粋 • 拡張に対応しやすい • 変更や増強、改良が容易。 •
再現できる • 環境の再生や複製は重要。 • 冪等性を持つ • 必要な時にだけ実行 • 収束性がある • 宣言し、その通りの状態へ。 11
Chefの基本機能 • ノード(サーバ)情報の収集 • 収集した情報の集約 •
コンフィグレーション • Cookbook/Recipeにリソースを定義し、 収集したノード情報を元に状態を収束する • ほか、いわゆるプロビジョニング 12
情報収集&集約
情報収集イメージ (Server/Client構成) 14 書籍:Chef活用ガイドより
情報収集ライブラリ OHAI 書籍:Chef活用ガイドより
Ohaiの役割 • (非常に)泥臭くプラットフォームを判別し、 Chef実行時にハード・OS情報を提供。 • 拡張は容易、さらに単体でも使えます。 16 書籍:Chef活用ガイドより
Ohai単独の例 17
Chef-Server 書籍:Chef活用ガイドより
Chef-Serverの概要 • ノード情報の集約 • ポリシー配布のハブ •
作業端末とノードの中間に位置 • 基本的にメタデータの保持 • 種類は2つ • Open Source Chef • Enterprise Chef 19
最近は導入の敷居も低い • OpenSource版のインストールはパッケージ で簡単。 • 管理コマンド`chef-server-ctl` 20
Chef-Clientの一味 (Chef-Client, Chef-Solo, Chef- apply,
Chef-Shell) 書籍:Chef活用ガイドより
Chef-Clientの役割 • Chef-Server(または任意のデータストア)への Node情報アップロード • Nodeの収束 •
実行状況と結果のレポート ! • 意外と多機能なエージェントとして作られてい ます • サーバに色々入れるの嫌か、インスタンスのイ ンターフェースとして受け入れるかは自由 22
Chef-Clientの種類 • Chef-Client: 前項の全て •
Chef-Shell: 対話式 • Cookbook開発やデバックに • Knifeによる一括更新 • Chef-Apply: 簡易実行 • Chef-Solo: 主にプロビジョナ用途 • handler等の活用で、Chef-Server環境に劣 らない連携も可能 23
プロビジョナとしての Chefと連携するツール
仮想環境ユーティリティ 25 Test-KitchenはChef公式ツール
プロビジョナの相互適用例 • VagrantまたはTest-KitchenでCookbookの 開発とテストを実施 • プロビジョナ部分をpackerで実行し、AMI やVagrant
boxにして配布 26
*aaS • ※こちらはコンフィグレーションも含む 27
Workstation (& Git(hub)) 書籍:Chef活用ガイドより
書籍:Chef活用ガイドより
Infrastructure as code 導入のキモWorkstatonとリポジトリ 30 引用:Infrastructure
as Code - naoyaのはてなダイアリー <http://d.hatena.ne.jp/naoya/20131215/1387090668>
Seach Data Bags Environment Role Cookbook &
LWRP 書籍:Chef活用ガイドより 書籍:Chef活用ガイドより 書籍:Chef活用ガイドより
細かすぎるので省略。 でも一点だけ
役割ベースの設計 • Chefを活用する場合、システムが提供する サービスを役割で分け、レイヤを積み重ねる ように設計するのが良いです。 ! • 『ベテランシステム管理者であれば、既にサー バーをロールベースでスクリプト化している はず』 -
[翻訳] Dockerについてよくある勘違い(http:// techracho.bpsinc.jp/hachi8833/2014_06_16/17982) より 33
Enterprise Chefの 追加要素
Reporting • Chef-Clientの実行状況を記録。 35
Push jobs 36 • サーバからPushでジョブ実行、成否の管 理。
ただしChef-Clientの ソースは共通
多少工夫すれば OpenSource版でも同様の実装はOK 38
2014年のChef (※2013モノも含む)
2014年のChef傾向 • Chef-Server構成 • 検証しやすさを向上 •
Chef-Client系 • 単体でもServer相当機能 • 極シンプルな実行をサポート • WorkStation系 • セットアップ負担の軽減をめざす • ? Infrastructure as code推進系 • リソース定義の概念を広げる 40
Chef-Zero Server構成を検証しやすくする (揮発性)軽量Chef-Server
Chef-Zeroの特徴 • Chef-Server APIのCRUDを全てサポート •
ただし認証は全部通る • オンメモリでデータの永続性は無い • 消しやすさ = テスト向き 42
Chef-Zeroの活用 • Test-KitchenでChef-Server対応Cookbook の動作確認に • Vagrantのchef-clientプロビジョナと組み合 わせてクラスタ向けCookbookの動作確認 •
vagrant-pluginもあるがやや環境依存 • 専用VMを当てるかローカルで上げ下げす るのが無難 43
Chef Development Kit (Chef-DK) WorkStation環境の簡単セットアップ Omnibusの系譜
Chef-DKとは • ChefのCookbook開発とServer管理ツール 一式をパッケージ形式にしたもの。 • 新規:
chefコマンド • Mac OS X, Linux対応、Windowsは Coming Soon… • (現状)公式おすすめのワークフローを実践す るツールとの連携設定済み • Test-Kitchen, Barkshelf, Foodcritic等 45
で、DK使ったほうがいいの? • 古参からするとあまり必要でないかも • Rubyプロジェクト管理手法がわかってい ればとくに •
Chef系以外にもインテグレーションしたい ツールは沢山ある • チームで環境を えたい等にはよいのかも • あと、DKパッケージは妙にデカイ 46
Chef-Client Local Mode Chef-RepoをServerレスで
Local Mode • chef-client
-z / knife -z • knife solo っぽい形態 • ローカルファイルシステムにあるChef-Repo を元にChef-Clientを実行 • nodes/以下に自分及び他nodeの情報を設置 して、Searchが可能 • knifeでServer環境と同一の操作体系 48
Chef-Metal LWRPで片鱗、 よりInfrastructure as codeへ リソース解釈を拡大
50 http://qiita.com/inokappa/items/78c31bdf0b415ed2d954 http://qiita.com/TsuyoshiUshio@github/items/180a54994df57a1d08d3
51
Chefで扱うリソースの拡大 • 従来の一般的なChefリソース • 単一Node上の要素(file,
service, package等) ! • Chef-Metalで扱うリソース • IaaS上のコンピュータリソース • 台数などの要素を状態管理 52
補足:状態を持つリソースについて • recipe =
単一ノードへの変更という概念はわか りやすさ優先のミスリード • 構造化されたデータを取得し、定義通りになるア クションを(主にRubyで)実行できるならば、なん でも管理対象 • LWRPでは以前から実践されている • コミュニティCookbook等では、LWRPとして 『リソース=クラスタ』という状態管理するも のも存在 • MongoDB, RabbitMQ, ElasticSerach等 53
Chef-Metalの対応 • 基本はコンピュータリソースの調達 (ノードの増減とレシピの適用) • vagrant •
fog (マルチクラウド対応ライブラリ) • ec2, digitaloceanなどPublic IaaS • *Stackな Private IaaS • 国内ベンダ 『Sakura no Cloud』 54
fog補足 • fogの対象はコンピュート系リソース以外にも 及ぶ • ストレージ •
Network • NameServiceなどなど ! • 複数クラウドを対象に可搬性のある CloudFormation (にするつもりかもしれない) 55
Local Template ちょっとChef、をとても便利に 地味ながら使える機能拡張
予備知識:Chef-Apply • Recipeを次の形式で実行 • 標準入力 •
単一ファイル • 簡単な設定変更やバッチ処理に • Cookbookのお決まり事が不要 57
58
local trueでの挙動は単純 • local
=> false • erbテンプレートのサーチ対象 • レシピと同じCookbook • 任意Cookbook内のtemplates/ ! • local => true • 絶対パス • Chef-Applyがtemplateを気軽に扱えるように 59
2014年のChef傾向まとめ • Chef-Server構成 • 検証しやすさを向上
(Chef-Zero, Local Mode) • Chef-Client系 • 単体でもServer相当機能 (Local Mode) • 極シンプルな実行をサポート (Local Template) • WorkStation系 • セットアップ負担の軽減をめざす (Chef-DK) • ? Infrastructure as code推進系 • リソース定義の概念を広げる (Chef-Metal) 60
終
Advertisement