Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Kubernetes入門#4 About Kubernetes Uses With GKE &...
Search
hi-rose
September 13, 2019
Technology
370
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Kubernetes入門#4 About Kubernetes Uses With GKE & EKS
hi-rose
September 13, 2019
More Decks by hi-rose
See All by hi-rose
20231118_過去の叡智から学ぶ効率的なアウトプット術
hirose39
0
180
Kubernetes入門#5 The pod resource and QoS / Kubernetes Getting Started#5
hirose39
1
370
Kubernetes入門#3 About ConfigMap and Secret / Kubernetes Getting Started#3
hirose39
1
630
Kubernetes入門#2 CronJob / Kubernetes Getting Started#2 CronJob
hirose39
1
600
Kubernetes入門#1 運用例の紹介 / Kubernetes Getting Started#1 Case Introduction for k8ssa
hirose39
0
310
Other Decks in Technology
See All in Technology
Goodbye ShellScript, Hello File-based App
shunsock
0
390
なぜ「決定性」が 決定的に重要なのか? Durable Execution 基盤の数理的理解 #serverlessjp / ServerlessDays Tokyo 2026
ytaka23
3
920
AIエージェントの一手は 誰も見ていない - Falco拡張OSS「Prempti」とeBPFで サーバーレス実行基盤を二層防御する
keitah
0
310
Von-Neumann Machines, Dreams & The Futures of IT
ufried
0
110
AIエージェントの自己改善をどう設計するか / How to Design Self-Improvement for AI Agents
22mi
25
16k
アプリをもっと"iOSアプリっぽく"する小さな工夫 / Small Touches That Make Your App Feel More Like an iOS App
matsuji
2
970
Claude in Chrome 入門 / Introduction to Claude in Chrome
cielo1985
0
870
AIで社員の自主発信に広報目線を組み込む
_mossann_t
0
130
リアーキテクチャ後の障害ゼロを目指したShadow Testingの取り組み
nihonbuson
PRO
1
160
Deployment の 先にある AI Agent 基盤 - kagent vNext、Agent Substrate、Hermes から読み解く Agent Runtime の現在地 / k8s-matsuri-2-ai-agent-platform-amsy810
masayaaoyama
4
670
EventBridge に「合流」はない ― サーバーレスのワークフローを育てるということ / No Join in EventBridge
yusukeshimizu
2
270
あけおめLINE 傾向とその対策
nasa9084
0
180
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.9k
Color Theory Basics | Prateek | Gurzu
gurzu
1
470
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
Side Projects
sachag
456
43k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
700
How to Talk to Developers About Accessibility
jct
2
550
My Coaching Mixtape
mlcsv
0
320
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.4k
Done Done
chrislema
186
16k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.8k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
430
Transcript
Kubernetes Sapporo for Beginners Kubernetes 入門 #4 ~ Kubernetesをマルチクラウドで運用してみた話~
Kubernetes Sapporo for Beginners 自己紹介 廣瀬 亮輔(Ryosuke Hirose)/@hi-rose • 旭川高専卒業後、札幌で今の会社に就職してシステム開発 •
2017年4月頃からアーキテクト部署所属 ◦ Kubernetesもその頃から業務利用 ◦ GCP上でWebアプリケーションのバックエンド系基盤開発を担当 ▪ API基盤機能開発 ▪ データマイグレーション系サービス基盤の PJリーダー ▪ クラウド上検証環境の運用 ▪ CIの構築 *普段GCPメインのため、GCP実装ベースでの理解が中心となります 2
Kubernetes Sapporo for Beginners 概要1 • 現在GCPにてGKEを利用したWeb業務アプリケーションが稼働中 • その前身のサーバークライアントシステムのサーバー群がAWSで稼働中 3
補足:システムに関してのDevelopers Summit登壇スライド https://speakerdeck.com/broadleaf
Kubernetes Sapporo for Beginners 概要2 • AWS→GCPのデータ連携を行うプロジェクトが発足 • AWSにてEKSを利用したデータ連携サービスを構築 •
GKEとEKSを使ってデータ連携の仕組みを開発したお話 4
Kubernetes Sapporo for Beginners EKS利用の動機 5 • クラウド環境で標準開発しているコンテナベースに実装できる • GCPにてGKE運用を行っており、学習コストが低いこと
• ManagedなEKSが東京リージョンに来て少し経ったタイミングだったこと • ECSもあるが、Kubernetesの現在の盛り上がりから今後発展するだろうこと • 同一クラスタを使った機能拡張の可能性が高いこと • まだ使っている人も少ないし試しに使ってみよう ◦ EKSがだめでもコンテナで作成したサービスや作成したプログラムは無駄にはならない
Kubernetes Sapporo for Beginners インフラ構成の概要 元々以下のイメージで独立して稼働 6 GCP Elasticsearch Cassandra
Redis GKEクラスタ 在庫 取引 AWS SQLServer Oracle いろんなサーバーたち システムA(Win) システムB(Linux) : 設定
Kubernetes Sapporo for Beginners インフラ構成の概要こうなった AWS側にデータ連携のためのエージェントプログラムを配置して以下のような構成に 7 GCP Elasticsearch Cassandra
Redis GKEクラスタ 在庫 取引 AWS SQLServer Oracle いろんなサーバーたち システムA(Win) システムB(Linux) : 連携API EKSクラスタ 連携エージェント いろいろ 設定
Kubernetes Sapporo for Beginners EKS使ってよかったこと 8 • GKEで使用していたService、Workload、ConfigMap/Secretといった、アプリケーション を動かす上で必要な要素の8割方は流用することができた ◦
サイドカー動作している loggingエージェント等の仕組みもそのまま流用 ◦ もちろん、現在のGKEで動いているアプリケーション自体が特定のクラウドベンダーに依存しすぎず に構築している部分も重要 ◦ StatefulsetsはPersistentVolumeの配置ゾーン・リージョンの関係で少し意識はするかも • クラスタに共通で必要な設定管理のコンテナもそのまま流用できた • 結果的に新しい仕組みの開発作業に集中できた
Kubernetes Sapporo for Beginners EKS使って遭遇したこと 9 • Elasticsearchコンテナが立ち上がらない問題 ◦ クラスタに配置してログの一時保存に利用しているもの
◦ 以下のIssueが上がっており、1.11.8にて解消とのことでノードバージョンを更新して解消。当時は 1.11.5を利用していた ▪ https://github.com/awslabs/amazon-eks-ami/pull/206 ◦ 原因としては、特定ノードバージョンの AMIでulimitリソース設定の値が下げられたため • GKE利用時には発生なし。カーネル設定等、クラウドベンダーによって実装が変 わってくる可能性のある部分だなと実感 ◦ 今回はわかりやすく「起動しない」だったが、パフォーマンス面で差異が出るなどは実際に検証しな いとわからない
Kubernetes Sapporo for Beginners EKS使って遭遇したこと2 10 • Persistent Volume、Ingress周りの設定はベンダーによる違いが大きい ◦
各クラウドベンダーが実装しているストレージや LBの実装によるため ◦ annotationが多いことからもわかるかと思う • インスタンスファミリーの退役に伴うノードの再作成 ◦ 先日発生。m3→m5、r3→r5 ◦ GCPではあまり経験が無い ▪ メンテナンスに伴うmigrationでたまーに再起動はある … • Webの管理コンソールが見づらい(EKSに関して) ◦ GCPの方がクラスタ、ノード、ワークロードなど、この辺は見やすいかな ◦ 慣れ?
Kubernetes Sapporo for Beginners EKSを使って遭遇したこと3 11 • ノード1台がEBS関連のeventを吐いてNot Ready ◦
テスト環境で1度だけノードがEBS関連のeventを吐きながら停止した ◦ 30分後自動復旧 ◦ 今後調査 • FSxディスクへアクセスできない ◦ サポートされているのが Windowsと Amazon Linuxのみ ◦ サポートに問い合わせたが公式的な方法は無し ◦ コンテナに色々入れて AD参加させてetc…障害点が増えそう ◦ 結果的にFSxアクセスの要求がなくなったため調べただけでやらなかった
Kubernetes Sapporo for Beginners その他、やってみて 12 ◦ 最初はAWS側にGitlab-Runnerマシンを配置して DockerビルドしたものをECR(Elastic Container
Registory)に配置していたが、管理やリリース時 のチェックが煩雑になったため 1か所に統一 (※) ◦ イメージはKubernetesの要素Secretのtype:docker を登録し、Deployment定義に設定することで GCR からpullしてEKSノード上にコンテナが起動する ※参考:https://speakerdeck.com/hirose39/kubernetes-getting-started-number-1-case-introduction-for-k8ssa?slide=7 • コンテナイメージはGCP側のGCR(Google Container Registory)に統一
Kubernetes Sapporo for Beginners まとめ 13 • 細かい差異やトラブル、初回の構築には時間が掛かる部分もありますが、運用して いる上では今のところは順調に動作 •
まだ仮運用のため、今後本格的に運用していく中で発生した事項などはまたお話し できればと思います
Kubernetes Sapporo for Beginners 質疑応答 お聞きいただきありがとうございました。 何でも気軽にご質問くださいませ! 14