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入門#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
160
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
620
Kubernetes入門#2 CronJob / Kubernetes Getting Started#2 CronJob
hirose39
1
590
Kubernetes入門#1 運用例の紹介 / Kubernetes Getting Started#1 Case Introduction for k8ssa
hirose39
0
300
Other Decks in Technology
See All in Technology
攻撃と防御で学ぶAI時代のプロダクトセキュリティ演習
recruitengineers
PRO
1
420
タクシーアプリ『GO』の実践的データ活用〜位置情報データの収集とStreamlitでの可視化〜
mot_techtalk
2
200
事業価値と Engineering 2026年度版
recruitengineers
PRO
37
19k
GitHub CopilotのFinOps- AI CreditのObservabilityと価値を生むためのエージェント設計
yuriemori
0
130
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
19k
Cursor Meetup Sapporo - Cursor物語 続編
cocacola917
0
120
『三匹の子ぶた』から学ぶネットワークセキュリティの昔と今 / Network Security: Then and Now Through the Lens of The Three Little Pigs
nttcom
1
1.7k
取引先から届く 「セキュリティチェックシート」の読み解き方
kamadamakoto
0
120
Webアクセシビリティ入門 2026
recruitengineers
PRO
1
310
Forza Horizon 6 のテレメトリ機能で 自動運転に使えそうな学習データを集める話
henjin0
0
130
AIは実装を速くする。では、私たちは何を今作るべきか?-立場を越えてリリースに向き合ったチーム開発の実践 / 20260801 Hiromi Nakaya and Naoki Takahashi
shift_evolve
PRO
3
390
20260608_Codexの可能性_ノンプログラマー向け_大城追記
doradora09
PRO
0
760
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
135
10k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
390
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
A better future with KSS
kneath
240
18k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
790
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
390
My Coaching Mixtape
mlcsv
0
190
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
360
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
650
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
610
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
270
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
200
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