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
200
エンジニア採用戦略で変わったこと、変わらないこと
yasudatoshiyuki
1
2.2k
エンジニアリングマネジメントでいかに事業をドライブするか?
yasudatoshiyuki
0
140
iCAREという組織にVPoEが必要になった理由とVPoEが果たす役割
yasudatoshiyuki
0
67
Rails開発者向けGraphQL入門
yasudatoshiyuki
0
46
CarelyでBuefy使ってみてどうだった?
yasudatoshiyuki
0
83
GraphQLを導入してよかったこと大変だったこと
yasudatoshiyuki
0
150
Other Decks in Technology
See All in Technology
ヘンリー会社紹介資料(エンジニア向け) / company deck for engineer
henryofficial
0
360
Azureコストと向き合った、4年半のリアル / Four and a half years of dealing with Azure costs
aeonpeople
1
280
serverless team topology
_kensh
3
210
Introdução a Service Mesh usando o Istio
aeciopires
1
280
生成AI時代のPythonセキュリティとガバナンス
abenben
0
130
AI時代におけるデータの重要性 ~データマネジメントの第一歩~
ryoichi_ota
0
710
ソースを読む時の思考プロセスの例-MkDocs
sat
PRO
1
160
ソフトウェアエンジニアの生成AI活用と、これから
lycorptech_jp
PRO
0
890
Zephyr(RTOS)にEdge AIを組み込んでみた話
iotengineer22
1
330
データ戦略部門 紹介資料
sansan33
PRO
1
3.8k
Digitization部 紹介資料
sansan33
PRO
1
5.7k
Linux カーネルが支えるコンテナの仕組み / LF Japan Community Days 2025 Osaka
tenforward
1
120
Featured
See All Featured
Six Lessons from altMBA
skipperchong
29
4k
How to train your dragon (web standard)
notwaldorf
97
6.3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
Music & Morning Musume
bryan
46
6.9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
Done Done
chrislema
185
16k
Code Reviewing Like a Champion
maltzj
526
40k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
YesSQL, Process and Tooling at Scale
rocio
173
15k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Unsuck your backbone
ammeep
671
58k
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