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
クラウド・コンテナ・CI/CDわからん会
Search
y-ohgi
October 15, 2024
0
67
クラウド・コンテナ・CI/CDわからん会
TIS株式会社様の社内勉強会にゲストで登壇させていただくスライドです。
y-ohgi
October 15, 2024
Tweet
Share
More Decks by y-ohgi
See All by y-ohgi
EKS Auto-Mode with Kro
y0hgi
0
180
AWS Cloud Control API & AWSCC Provider
y0hgi
1
37
AWSとSRE 〜サービスの信頼性〜
y0hgi
2
340
re:Invent 2024 re:Cap コンピューティング&コンテナ
y0hgi
3
450
クラウドを今から学ぶには
y0hgi
0
540
入門 Docker - JAWS-UG東京 ランチタイムLT会 #14
y0hgi
1
400
AWS CloudShell で開発したかった話 / i-cant-develop-in-cloudshell
y0hgi
1
2k
クラウド入門/Introduction Cloud
y0hgi
0
110
awswakaran.tokyo_CI_CD
y0hgi
2
2.3k
Featured
See All Featured
Navigating Team Friction
lara
190
15k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
A designer walks into a library…
pauljervisheath
210
24k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Docker and Python
trallard
46
3.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Into the Great Unknown - MozCon
thekraken
40
2.2k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Balancing Empowerment & Direction
lara
5
740
Transcript
クラウド・コンテナ・ CI/CDわからん会 TIS株式会社様 社内勉強会 2024/10/18
• じこしょうかい • クラウドわからん • コンテナわからん • CI/CDわからん おはなしすること
• y-ohgi ◦ @_y_ohgi ◦ JAWS-UG 東京支部運営 • 今まで ◦
合同会社DMM CTO室SRE部 ◦ フリーランス(SREを中心) ◦ どこかの会社のCCoE • Like ◦ コンテナ, TypeScript, Next.js じこしょうかい
• じこしょうかい • クラウドわからん • コンテナわからん • CI/CDわからん おはなしすること
オンプレ(On-Premises)について • 自社でサーバーの構築に必要な リソースを保持 ◦ ハードウェア, ソフトウェア, ネットワーク, 土地, etc…
• 専門家が必要 ◦ 構築だけでなく運用や障害などに対応できる人材 • 初期コストが高い ◦ 最初に必要なリソースを調達する金額面 ◦ 設計・見積もりから調達・構築を行う時間面 • 自社で全てを管理するため、 高いカスタマイズ性 クラウドわからん
クラウドについて • 必要なときに必要なだけのリソースを確保 することが可能 ◦ 不要なリソースはすぐに返却できる • 従量課金 ◦ 時間単位やリクエスト単位
での課金 • 代表的なクラウドベンダー ◦ AWS, Google Cloud, Azure • CNCF(Cloud Native Computing Foundation) ◦ クラウドネイティブな技術推進の団体 ◦ Kubernetesを代表にfluentd・Istio・containerdが傘下に クラウドわからん
• じこしょうかい • クラウドわからん • コンテナわからん • CI/CDわからん おはなしすること
コンテナとは • 代表的なツールとして「 Docker」 ◦ プロセスをアイソレーション するための技術 ◦ Virtual MachineはOSの仮想化の技術
• コンテナイメージを作成することで 高い可搬性 を得られる ◦ コンテナイメージからコンテナを作成 する ◦ 同一のコンテナイメージであれば開発者のマシンと本番で同じコンテナを動かせる ▪ コンテナイメージはimmutableなため、他の開発者や本番のイメージを再現可能 • コンテナを動かすためのクラウドサービス ◦ ECS, EKS, GKE, Cloud Run, etc... コンテナわからん
• じこしょうかい • クラウドわからん • コンテナわからん • CI/CDわからん おはなしすること
CI(Continuous Integration) • 継続的インテグレーション • 開発物の品質担保 が目的 ◦ デプロイ前のバグの早期発見 ◦
コーディング規約の統一 • 自動でビルド・テストを実行 ◦ Pull RequestをトリガーにCIを実行するなど • CIをする前に大切なことも ◦ 「開発者間で品質について事前の合意」 ◦ 「Lintやtestを行えている」 ◦ 「レビューの仕組みがある」 CI/CDわからん
CD(Continuous Deployment/Delivery) • 継続的デプロイ • 開発からリリースの一貫性 ◦ 再現性の高いデプロイを行うことで、オペミスの軽減 ◦ 誰がデプロイしても同じ手順になる
• 自動デプロイ ◦ developブランチにmergeされたタイミングでステージング環境に自動デプロイ される ◦ tag付けされたタイミングに本番環境に自動デプロイ される • CDをする際に大切なことも ◦ 「CIが通っていること」 ◦ 「監視を行いロールバックが可能なこと」 ◦ 「DBへのmigrationをどう扱うか」 CI/CDわからん
• リリースを(極力)自動化 しよう! • CI/CDを取り入れることで開発生産性の向上 ◦ リリースの手動部分を無くす ◦ 誰でもリリースができる仕組みに。 •
「For Keys」への取り組みでさらなる生産性の向上 ◦ 1. デプロイの頻度 ◦ 2. 変更のリードタイム ◦ 3. 変更障害率 ◦ 4. サービス復元時間 CI/CDわからん CI CD サービス開発の本質に使える時間を増やそう!
本日はよろしくお願いします まとめ