Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Crowd4U Shikinensengu Project 2018
Search
Masaki KOBAYASHI
October 08, 2018
Technology
1
50
Crowd4U Shikinensengu Project 2018
Crowd4U 式年遷宮プロジェクト at Lab Camp 2018
Masaki KOBAYASHI
October 08, 2018
Tweet
Share
More Decks by Masaki KOBAYASHI
See All by Masaki KOBAYASHI
Human+AI Crowd Task Assignment Considering Result Quality Requirements (HCOMP2021)
makky
0
130
筑波大学 情報学学位プログラム 説明会 学生発表
makky
1
94
大事なことは全てログファイルに書いてある
makky
0
58
Arm Treasure Data Internship 2018 Final Report
makky
0
840
Other Decks in Technology
See All in Technology
Part1 GitHubってなんだろう?その2
tomokusaba
2
720
OPENLOGI Company Profile
hr01
0
64k
Azure & DevSecOps
kkamegawa
2
180
AIとSREで「今」できること
honmarkhunt
3
720
CodeRabbitと過ごした1ヶ月 ─ AIコードレビュー導入で実感したチーム開発の進化
mitohato14
1
240
クラウドネイティブ環境の脅威モデリング
kyohmizu
1
400
Aspire をカスタマイズしよう & Aspire 9.2
nenonaninu
0
380
genspark_presentation.pdf
haruki_uiru
1
240
Global Azure2025(GitHub Copilot ハンズオン)
tomokusaba
2
720
SaaS公式MCPサーバーをリリースして得た学び
kawamataryo
0
120
3D生成AIのための画像生成
kosukeito
2
610
Terraform にコントリビュートしていたら Azure のコストをやらかした話 / How I Messed Up Azure Costs While Contributing to Terraform
nnstt1
1
450
Featured
See All Featured
BBQ
matthewcrist
88
9.6k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
A Tale of Four Properties
chriscoyier
159
23k
Side Projects
sachag
453
42k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2k
Optimizing for Happiness
mojombo
378
70k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
780
It's Worth the Effort
3n
184
28k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
A designer walks into a library…
pauljervisheath
205
24k
Transcript
2018/10/06 M2 Masaki Kobayashi
式年遷宮とは 神社等において、周期を定めて社殿を更新し、新たな社殿に 神体を移すこと。三重県の伊勢神宮では天照大神を祭神と する内宮、豊受大神を祭る外宮ともに、20年ごとに、社殿を 新しく造営し祭神を遷座してきた。一般には、この神宮式年 遷宮のことを指す。 出典: (株)朝日新聞出版発行「知恵蔵」 2
式年遷宮とは 3 古い社殿 新しい社殿 ご神体を移す ※20年ごとに
Crowd4Uにおける式年遷宮 4 古いVM 新しいVM ご神体を移す ※20年ごとに(?)
なぜ式年遷宮が必要なのか 新しい機能を気軽に実装できる状態を維持したい 例: WebSocketを活用した機能を実装する •Crowd4Uで使われているApacheが古い •Apacheを更新した際のサーバやアプリへの影響が不明 •テストが全く書かれていないので影響の確認も困難 ※ 本番環境用の社殿(VM)は1つしかないので壊せない 5
式年遷宮で実現すること インフラ環境の近代化 6 Before 遷宮 After 遷宮 OS Scientific Linux
6.4 (2013-03-28) Ubuntu 16.04 Apache 2.2.15 (2013-08-13) 2.4.35 Ruby 1.9.3 (2011/10/31) 1.9.3 / 2.5.1 Sinatra 1.4.7 (2016-01-24) 1.4.7 MySQL 5.6.13 (2013-07-31) 5.7.x (予定) 気軽に切り替えら れるようにする コードの変更に関 わるやつは後から
式年遷宮を実現するために大切なこと Infrastructure as Code コンピューティング・インフラ(プロセス、ベアメタルサーバー、仮想 サーバー、など)の構成を管理したり、機械処理可能な定義ファイ ルを設定したり、プロビジョニングを自動化するプロセスである。 by Wikipedia =>コードによるインフラ構築の自動化
7
Vagrant: VM構築の自動化 8 $ vagrant up でVMが作れる
Ansible:構成管理の自動化 9
現在の状況 $ vagrant up •VM構築 •Crowd4Uに必要なミドルウェアの導入 •Crowd4U/Cylogの起動 •タスクが処理できることを確認済み 10 Infrastructure
as Code 最高!!
今後の話 •Vagrantで作ったVMを実運用する => 年内 •DBのバックアップ・レストア => 重要 •Ruby gemsの更新 (Sinatra,
mysql2, etc...) •DB Serverの更新 •WebAppとDBの分離 •全部テスト書く, ログ収集 11 ご神体 A ご神体 B バックアップ レストア バックアップし たやつ
次の式年遷宮に向けて (大前提) 次は式年遷宮と呼ばなくて済むように VMやコードの更新が手軽なら定期的である必要がない Vagrant/Ansible等のツールは時代に合わせて変えよう 要素ごとに別の何かに置き換えられるようにしておくべき そのために出来るだけコード化しておく 出来るだけシンプルに実装する 12
式年遷宮が終わったらやろうね〜〜 No 既存のコードが使えなくなるような変更しないつもりです => 軽微な機能修正や追加は式年遷宮には影響がないはず => 出来ればGitHubに変更をcommitしましょう 動作チェックは、現在の学生が作った実験タスクが動くかどうかで行っ ています (テストがないので)
=> 移行後に不具合が見つかったらその都度修正します => それぐらいの勢いがないと移行できないと思います
まとめ •Crowd4U式年遷宮プロジェクトで考えていることを 話しました •次の式年遷宮を見据えて、Infrastructure as Code を 意識して進めています •今年度中に本番環境で新しいVMを稼働させたい 動作テストとか色々お願いすると思うので宜しくおねがいします
14