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
90
Kubernetesでの環境構築および運用フロー構築のはなし
yasudatoshiyuki
November 22, 2019
Tweet
Share
More Decks by yasudatoshiyuki
See All by yasudatoshiyuki
襲来する課題の山に立ち向かう開発体制づくり
yasudatoshiyuki
0
180
エンジニア採用戦略で変わったこと、変わらないこと
yasudatoshiyuki
1
2.1k
エンジニアリングマネジメントでいかに事業をドライブするか?
yasudatoshiyuki
0
120
iCAREという組織にVPoEが必要になった理由とVPoEが果たす役割
yasudatoshiyuki
0
59
Rails開発者向けGraphQL入門
yasudatoshiyuki
0
38
CarelyでBuefy使ってみてどうだった?
yasudatoshiyuki
0
73
GraphQLを導入してよかったこと大変だったこと
yasudatoshiyuki
0
110
Other Decks in Technology
See All in Technology
関東Kaggler会LT: 人狼コンペとLLM量子化について
nejumi
3
460
ビジネスと現場活動をつなぐソフトウェアエンジニアリング~とあるスタートアッププロダクトの成長記録より~
mizunori
0
210
30分でわかる『アジャイルデータモデリング』
hanon52_
9
2.2k
APIファーストで実現する運用性の高い IoT プラットフォーム: SORACOMのアプローチ
soracom
PRO
0
240
トラシューアニマルになろう ~開発者だからこそできる、安定したサービス作りの秘訣~
jacopen
2
1.5k
個人開発から公式機能へ: PlaywrightとRailsをつなげた3年の軌跡
yusukeiwaki
11
2.7k
Kubernetes x k6 で負荷試験基盤を開発して 負荷試験を民主化した話 / Kubernetes x k6
sansan_randd
2
730
技術負債の「予兆検知」と「状況異変」のススメ / Technology Dept
i35_267
1
1k
「海外登壇」という 選択肢を与えるために 〜Gophers EX
logica0419
0
500
Datadog APM におけるトレース収集の流れ及び Retention Filters のはなし / datadog-apm-trace-retention-filters
k6s4i53rx
0
320
Googleマップ/Earthが一般化した 地図タイルのイマ
mapconcierge4agu
1
200
インフラをつくるとはどういうことなのか、 あるいはPlatform Engineeringについて
nwiizo
5
2.1k
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
The Cult of Friendly URLs
andyhume
78
6.2k
How to Ace a Technical Interview
jacobian
276
23k
Fireside Chat
paigeccino
34
3.2k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Typedesign – Prime Four
hannesfritz
40
2.5k
Building Your Own Lightsaber
phodgson
104
6.2k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
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