新卒2年目のchef guy
TRANSCRIPT
![Page 1: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/1.jpg)
新卒 2 年目の Chef Guy株式会社クリック
夏目 祐樹
![Page 2: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/2.jpg)
自己紹介 夏目 祐樹 ( ナツメ ユウタ ) Twitter: @sinofseven Facebook: yuta.natsume.5 つい最近新卒 2 年目になった新人 SE マイクロソフトのエバンジェリスト牛尾 剛さんから
Chef Guy の称号を頂いた
![Page 3: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/3.jpg)
Chef Guy のきっかけ 2/27 にあった DevOps ハッカソンで Chef を書いていたら、牛尾さんから称号を頂いた。 そのとき開発していたのは、
Minecraft のサーバー (mod 入り ) をWeb ページから簡単に作るためのシステム。
ほかのメンバーのおかげで、優勝しました。
![Page 4: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/4.jpg)
Demo
![Page 5: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/5.jpg)
DevOps ハッカソン 概略
![Page 6: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/6.jpg)
DevOps ハッカソン 福岡 (2/27)
チーム構成 :インフラ技術者と開発者の組み合わせ条件 : Infrastructure as Code と別の DevOps 手法 (1 つ以上 ) をアプリに実装テーマ : どこにもないクリエイティブなソリューションを生み出すこと !
![Page 7: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/7.jpg)
ハッカソンの流れ 初日 午前中 :・ DevOps 等についての説明 ( 講演 ?) DevOps, ARM, Docker, その他デモ・各自やってみたいことを張り出してチーム決め Minecraft Server を作りたい CI/CD 環境を作りたい Project Oxford で何かしたい etc… 午後 :チームに分かれて開発開始
![Page 8: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/8.jpg)
ハッカソンの流れ 二日目 午前からずっと開発 時間が来たらチームごとにプレゼン。時間は 5 分 優勝チーム発表 !!
![Page 9: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/9.jpg)
ハッカソンにおける評価ポイントクリエイティブなソリューションかどうかほかのユーザーが再利用できるものであるかどうかどのような DevOps 手法を実装したか
![Page 10: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/10.jpg)
実際につくったもの
![Page 11: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/11.jpg)
Minecraft Mall自分だけの Minecraft サーバーを簡単に手に入れることができるサービス
• Web サイトのボタンクリックでサーバーが作成できる• サーバーの状態がわかる• サーバーの削除がボタンクリックでできる
![Page 12: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/12.jpg)
チームメンバー 自分 : Chef を使用し Minecraft サーバーの構築を担当 yukiusagi さん (@yukiusagi2052): ARM で Minecraft 用の仮想マシンを作成を担当 はももつさん (@airish9): 仮想マシンの作成 / 削除 / 状態取得のための API 作成を担当 松本 典子さん (@nori790822): デザイナーとしてフロントの Web ページを担当
![Page 13: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/13.jpg)
サービスが生まれたきっかけ yukiusagi さんが Minecraft Server(Mod 入り )を作りたいとふせんを貼る。 なんだかんだで最後まで残る。 興味を持ったメンバーが集まる。 自分が Web ページからサーバー立てれたらいいよねと主張。
![Page 14: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/14.jpg)
![Page 15: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/15.jpg)
採用した DevOps プラクティス Infrastructure as Code (IaC) ・・・ ARM &
Chef 変更 / 構成管理 ・・・ Git 継続的インテグレーション 継続的デプロイ 自動スケーリング 運用環境でのテスト ・・・ ステージング
![Page 16: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/16.jpg)
採用した DevOps プラクティス
![Page 17: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/17.jpg)
ソリューションの未解決課題 ポータルを利用しないサーバー作成。( Web ページのボタンをクリックするだけで解決) Web ページのボタンでのサーバー削除。 最終的に、いろんな人がログインして使えるようにしたい。
![Page 18: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/18.jpg)
Chef Guy として自分が作ったものMinecraft Server(Mod 入り ) を構築するための Cookbook
Chef を動かすための環境構築スクリプト
![Page 19: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/19.jpg)
Minecraft Server を構築するための Cookbook 以下の流れでサーバーを構築
1. jre のインストール2. ポート開放3. Mod を動かすための Minecraft Server のダウンロード4. 設定ファイルを更新5. Mod 「 Dynmap 」を設置6. リモートコントロールの仕組みを組み込む7. サーバーを起動する8. Dynmap に地図の描画指示を出す
![Page 20: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/20.jpg)
Chef を動かすための環境構築PowerShell のスクリプトで構築以下の流れで構築
1. Chef Client をダウンロード2. Cookbook の Zip ファイルをダウンロード3. Chef Client のインストール4. Cookbook の Zip ファイルを解凍5. chef-solo で Cookbook を実行
![Page 21: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/21.jpg)
Chef を動かすための環境構築 Update による変更 GitHub に公開後、 yukiusagi さんが環境構築スクリプトを更新してくれた。具体的には、・スクリプトの実行中にログを出力する機能の追加・ cookbook および chef client のインストーラの ダウンロードをスクリプトから分離 ( ダウンロードは、 ARM の Json に記述。 具体的には、 WinRMCustomScriptExtension を使用 )
![Page 22: 新卒2年目のchef guy](https://reader035.vdocuments.site/reader035/viewer/2022062223/587757f11a28ab4e4f8b47d7/html5/thumbnails/22.jpg)
まとめ 新人 SE が DevOps ハッカソンで牛尾さんから
Chef Guy の称号を頂きました。 DevOps ハッカソンで作成したものは
Github で公開しており、現在も一部更新を行っています。https://github.com/minecraft-mall/MinecraftMall