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
Kubernetesでの環境構築および運用フロー構築のはなし
Search
yasudatoshiyuki
November 22, 2019
Technology
0
100
Kubernetesでの環境構築および運用フロー構築のはなし
yasudatoshiyuki
November 22, 2019
Tweet
Share
More Decks by yasudatoshiyuki
See All by yasudatoshiyuki
襲来する課題の山に立ち向かう開発体制づくり
yasudatoshiyuki
0
190
エンジニア採用戦略で変わったこと、変わらないこと
yasudatoshiyuki
1
2.2k
エンジニアリングマネジメントでいかに事業をドライブするか?
yasudatoshiyuki
0
130
iCAREという組織にVPoEが必要になった理由とVPoEが果たす役割
yasudatoshiyuki
0
67
Rails開発者向けGraphQL入門
yasudatoshiyuki
0
46
CarelyでBuefy使ってみてどうだった?
yasudatoshiyuki
0
82
GraphQLを導入してよかったこと大変だったこと
yasudatoshiyuki
0
140
Other Decks in Technology
See All in Technology
Ktor + Google Cloud Tasks/PubSub におけるOTel Messaging計装の実践
sansantech
PRO
1
310
(HackFes)米国国防総省のDevSecOpsライフサイクルをAWSのセキュリティサービスとOSSで実現
syoshie
5
670
OpenTelemetry の Log を使いこなそう
biwashi
5
1.1k
The Madness of Multiple Gemini CLIs Developing Simultaneously with Jujutsu
gunta
1
2.7k
「手を動かした者だけが世界を変える」ソフトウェア開発だけではない開発者人生
onishi
15
7k
分散トレーシングによる コネクティッドカーのデータ処理見える化の試み
thatsdone
0
260
「AI駆動開発」のボトルネック『言語化』を効率化するには
taniiicom
1
200
みんな Kiro ってる?
r3_yamauchi
PRO
0
120
Shadow DOMとセキュリティ - 光と影の境界を探る / Shibuya.XSS techtalk #13
masatokinugawa
0
300
複数のGemini CLIが同時開発する狂気 - Jujutsuが実現するAIエージェント協調の新世界
gunta
12
3.6k
経験がないことを言い訳にしない、 AI時代の他領域への染み出し方
parayama0625
0
230
モバイルゲームの開発を支える基盤の歩み ~再現性のある開発ラインを量産する秘訣~
qualiarts
0
520
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
246
12k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
How STYLIGHT went responsive
nonsquared
100
5.7k
Designing for Performance
lara
610
69k
Balancing Empowerment & Direction
lara
1
500
Measuring & Analyzing Core Web Vitals
bluesmoon
7
530
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
The Cult of Friendly URLs
andyhume
79
6.5k
Become a Pro
speakerdeck
PRO
29
5.4k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
The Pragmatic Product Professional
lauravandoore
35
6.8k
Transcript
K8sでの 環境構築および 運用フロー構築のはなし
自己紹介 2
名前:安田俊之 関わってきた技術: Linux, Docker, K8s, Terraform, Ansible, Chef, Ruby On
Rails, Vue.js, AngularJS, Symfony, FuelPHP, CakePHP Androidアプリ, Spring(Java), Perl/CGI PostgreSQL, MySQL, Oracle, PL/SQL Vim, Zsh, etc. 3
本題 4
みなさん、Kubernetes使った ことありますか? その前に 5
これからKubernetesおよび EKS(AWSのKubernetesのマネージ ドサービス)についてお話しますが、そ れらの基本知識についての説明は時 間がないので割愛します。 前提 6
ザーッとどんな感じで環境構築したかとサイト管理 をしているかをご紹介させて下さい。 Kubernetesについてあまり知らない方は、なんと なく、雰囲気で、聞いていただけるとありがたいで す! 前提 7
K8sを使った背景 8
弊社(iCARE)では元々 コーポレートサイトの一 部でメインのサービス Carelyを紹介していた のですが、今年4月か ら別途プロダクトサイト を立ち上げることに。 K8sを使った背景 9
動作環境の要件としては • WordPressで管理したい • ユーザー向けのコンテンツはCDNでキャッシュし たい といったシンプルな要件。 とはいえ、 K8sを使った背景 10
スクラッチからシステムを構築できるチャンスは、 弊社にはあまりない。なので、むしろこのシンプル な構成だからこそ新しい技術Kubernetesでサイト を構築するチャンス! そしてそこで技術なれして本サービスCarelyに展 開したい! K8sを使った背景 11
ただし、プロダクトサイトを管理するメンバーには Dockerの知識はなく、gitの操作くらいしかできない ので、サイトを管理するメンバーにはdockerコマン ド等は期待できない K8sを使った背景 12
そういうバックグラウンドがあったので、次のような 構成でサイトを構築することを考えた K8sを使った背景 13
システム構成 14
システム構成図 15 こんな感じ
システム構成図 16 サイト管理者はdockerコ マンドではなく、git コマ ンドでコンテンツをgit サーバーにpush
システム構成図 17 gitサーバーは、podがマ ウントしているEFSにマ ウントしており、git push されたファイルはEFSに 格納される
システム構成図 18 podではEFSにマウント しているので、git pushさ れたコンテンツをwebコ ンテンツとしてユーザー に返すことができる
システム構成図 19 ユーザーは CloudFront〜ELBを経 由してkubernetesのpod へは、アクセスできる
システム構成図 20 KubernetesはEKSで管 理しているので、管理コ ストは低い
システム構成図 21 WordPressはhelm chartで管理。 WordPressのバージョン アップもhelmコマンドで できるので楽。
管理の詳細について 22
1. システム管理者は、kubectl, helmコマンド 2. サイト管理者は、WordPressの管理画面を利用しつつ、 gitでテーマを管理 3. Kubernetesのステータスをビジュアル的に確認する際は Kubernetes Dashboardを利用
こんな感じで管理しています 23
Kubernetes Dashboard 24
• DataDogエージェントのpodを追加し、DataDog側でも Node情報を取得、しきい値を設定して、アラートが上がる ようにしている(つい先日、EKSバージョンアップをした際 に動かなくなって、ちょっとそのままにしてあるけど・・・) こんな感じで管理しています 25
1. 今の所、特筆して困ることはないが、頻繁に操作するわけ ではないので、その都度コマンドがどんなだったか忘れて しまいがち 2. Kubernetesコマンドを扱うエンジニアが二人しかいないの で、改善はあまり進んでいない 3. EKSのバージョンアップに合わせてNode(EC2)のイメージ を変えたりする作業があったが、少し面倒くさかった(aws
の公式サイトに「およそ 3 か月ごとにリリースされており」 とあるようにマイナーバージョンのリリースが頻繁にある) K8s運用で困ったこと 26
• オートスケールにしていないので、オートスケー ルにしたい(ただ、基本的にはユーザーアクセス はCloudFrontでさばかれるので、今の所ニーズ がほとんどない) • あと、他のサービスもEKSの上にのせたりしな がら、 Kubernetesの知識、経験を積み上げて、 最終的にはメインプロダクトであるCarelyもそこ
に乗せたい 今後の展望 27
ご清聴ありがとうございまし た! 以上 28
質問 29