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
110
0
Share
Kubernetesでの環境構築および運用フロー構築のはなし
yasudatoshiyuki
November 22, 2019
More Decks by yasudatoshiyuki
See All by yasudatoshiyuki
襲来する課題の山に立ち向かう開発体制づくり
yasudatoshiyuki
0
210
エンジニア採用戦略で変わったこと、変わらないこと
yasudatoshiyuki
1
2.3k
エンジニアリングマネジメントでいかに事業をドライブするか?
yasudatoshiyuki
0
150
iCAREという組織にVPoEが必要になった理由とVPoEが果たす役割
yasudatoshiyuki
0
81
Rails開発者向けGraphQL入門
yasudatoshiyuki
0
62
CarelyでBuefy使ってみてどうだった?
yasudatoshiyuki
0
92
GraphQLを導入してよかったこと大変だったこと
yasudatoshiyuki
0
170
Other Decks in Technology
See All in Technology
[最強DB講義]推薦システム | 基礎編
recsyslab
PRO
1
170
Hacobu Tech Deck
hacobu
PRO
0
110
ハーネスエンジニアリングをやりすぎた話 ~そのハーネスは解体された~
gotalab555
4
1.7k
AI駆動1on1〜AIに自分を育ててもらう〜
yoshiakiyasuda
0
120
AWS Agent Registry の基礎・概要を理解する/aws-agent-registry-intro
ren8k
3
370
最初の一歩を踏み出せなかった私が、誰かの背中を押したいと思うようになるまで / give someone a push
mii3king
0
160
ハーネスエンジニアリングの概要と設計思想
sergicalsix
9
4.9k
[OAWTT26][THR1028] Oracle AI Database 26ai へのアップグレード:ベストプラクティスと最新情報
oracle4engineer
PRO
1
100
QGISプラグイン CMChangeDetector
naokimuroki
1
400
EarthCopilotに学ぶマルチエージェントオーケストレーション
nakasho
0
290
Keeping Ruby Running on Cygwin
fd0
0
150
Good Enough Types: Heuristic Type Inference for Ruby
riseshia
1
210
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
180
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
170
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
140
Optimising Largest Contentful Paint
csswizardry
37
3.6k
How to Talk to Developers About Accessibility
jct
2
180
Information Architects: The Missing Link in Design Systems
soysaucechin
0
890
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1k
The Invisible Side of Design
smashingmag
302
52k
エンジニアに許された特別な時間の終わり
watany
106
240k
Building the Perfect Custom Keyboard
takai
2
730
KATA
mclloyd
PRO
35
15k
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