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
GKE101
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
chago
May 26, 2020
Technology
480
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GKE101
chago
May 26, 2020
Other Decks in Technology
See All in Technology
Screen Lens - 今見てる画面を翻訳する
komagata
0
260
GoCon2026 - Open Source, Open World
sanposhiho
4
3.5k
AI時代のAPI品質を支えるガードレール / API Guardrails for API quality in the AI era
yokawasa
1
220
Gitは怖い?共有ワークスペースから始めるSnowflakeチーム開発
coco_se
0
190
新機種発売前に見直そう!端末移行で再ログインが要るアプリ・要らないアプリは何が違うのか 〜シームレスに再開できる設計と実装〜
zozotech
PRO
0
130
20260912_スクフェス三河
kgnkhkr
0
330
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
3
480
消えない 動かない 効かない
yama3133
1
120
アプリをもっと"iOSアプリっぽく"する小さな工夫 / Small Touches That Make Your App Feel More Like an iOS App
matsuji
1
740
Multica × 長期記憶:40個のミニプロジェクト管理
eiei114
1
260
作品が生態系になった ─ Mini Tokyo 3D から世界へ
nagix
0
170
DEFCON_CHV_CTF_Write-up.pdf
bata_24
0
140
Featured
See All Featured
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
820
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
500
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
The SEO Collaboration Effect
kristinabergwall1
1
550
Paper Plane
katiecoart
PRO
3
53k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Test your architecture with Archunit
thirion
2
2.4k
Tell your own story through comics
letsgokoyo
1
1.1k
Crafting Experiences
bethany
1
330
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
Building Applications with DynamoDB
mza
96
7.2k
Transcript
GKE 101 2020 / 05 / 26 Kubernetes Novice Meetup
on YouTube @it__chago
Who am I ? chago (twitter: @it__chago) • Solution Architect
◦ Kubernetes関連 • Kubernetes歴: 1年未満 ◦ ほぼ全て独学 ◦ 今週末CKA受けます!! • 21:9ワイドモニター捗る
本日話すこと - What is GKE? - Step1: プロジェクトの作成 - Step2:
GKEクラスタの作成 - Step3: Nginxの作成 - Step4: Monitoring 本日話さないこと - Cloud SDKのインストール
早速GKEを触ってみる
What is GKE? • GKE:Google Kubernetes Engine • GCP(Google Cloud
Platform)上で動作するマネージドKubernetesサービス。 • GCPの各種機能とインテグレーションが行われている。 - ex) GCLB(Google Cloud LoadBalancer) • GKEではKubernetes NodeにGCE(Google Compute Engine)が利用される。 • Masterの管理はGoogleが担当、Nodeはユーザが担当する。 - ユーザはノードの使用料金のみを負担する。 • ノード自動アップデート機能が用意されている。 - クラスタのバージョンアップが簡単。 • NodePool:ノードに対してラベル付けをする。 • GCPは無料利用枠として登録時から1年間で$300まで使える。
Step0: Cloud SDKのインストール • GCPのリソースとアプリケーションの管理に使用できる一連のツール。 • gcloudコマンドラインツールはこのパッケージに含まれる。 • kubectlなどのApp Engine拡張機能は別途インストールする。
• Python3.5以降、もしくは2.7.9以降が必須。 • 今回はCentOS7.7で検証。
Step0: Cloud SDKのインストール yumでpython3.6をインストール。 # yum install -y https://centos7.iuscommunity.org/ius-release.rpm #
yum install -y python36u python36u-libs python36u-devel python36u-pip # ln -s /usr/bin/python3.6 /usr/local/bin/python
Step0: Cloud SDKのインストール アーカイブファイルをダウンロード。 # curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud- sdk-280.0.0-linux-x86_64.tar.gz #
tar –zxvf google-cloud-sdk-280.0.0-linux-x86_64.tar.gz curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-280.0.0-linux-x86_64.tar.gz
Step0: Cloud SDKのインストール インストールスクリプトの実行。 # ./google-cloud-sdk/install.sh curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-280.0.0-linux-x86_64.tar.gz
Step0: Cloud SDKのインストール インストールスクリプトの実行。 # ./google-cloud-sdk/install.sh curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-280.0.0-linux-x86_64.tar.gz
Step0: Cloud SDKのインストール インストールスクリプトの実行結果。 # cat /root/.bashrc ターミナルを再起動して変更を反映させる。 curl -O
https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-280.0.0-linux-x86_64.tar.gz
Step0: Cloud SDKのインストール SDKの初期化。 # gcloud init curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-280.0.0-linux-x86_64.tar.gz
Step0: Cloud SDKのインストール curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-280.0.0-linux-x86_64.tar.gz
Step1: プロジェクトの作成 • GCPには「プロジェクト」という概念が存在する。 • プロジェクト単位での課金やユーザー管理を行う事が出来る。 各プロジェクトで明確に環境を分けることが出来る。 • 以下を利用してプロジェクトを識別する。 1.プロジェクト名:
人が読めるプロジェクト名 プロジェクト作成中や作成後に編集可能。一意である必要は無し。 2.プロジェクトID: カスタマイズ可能な一意のプロジェクトID 但しカスタマイズはプロジェクトの作成時のみ。 プロジェクト名とランダムに割り当てられた番号で構成される。 3.プロジェクト番号: 自動生成される一意のプロジェクト識別子。
None
Step1: プロジェクトの作成 • # gcloud projects list 自分のプロジェクトの一覧を表示 • #
gcloud config set project プロジェクトの切り替え
Step2: GKEクラスタの作成 CLIで作成する場合は以下のコマンドを実行すればよい。 • # gcloud container clusters create cluster-name
GKEクラスタの作成 • # gcloud container clusters get-credentials cluster-name プロジェクトの切り替え
None
None
• GUIベースだと細かい設定を視覚的に出来る。
Step2: GKEクラスタの作成 設定項目 ・名前 クラスタの名前を入力。変更不可。 ・ロケーションタイプ - 単一ゾーン - マルチゾーン
- リージョン ・default-pool ノードを幾つ用意するかを設定。 デフォルトでは ノード数=3 に設定されている。
ゾーン リージョン
• 「クラスタの接続」では Cloud Shell, Cloud Consoleダッシュボードが選択出来る。
• Cloud Shellを使えばCLIでも操作が出来る。
• Cloud Consoleダッシュボードへ接続。
• Kubernetesのバージョンもワンクリックで変更が可能。
Step3: Nginxの作成 • # kubectl run pod-name –image=image-name –restart=Never 気軽にPodを立ち上げる事が出来るコマンド。
• 左のメニューから「ワークロード」を選択し、デプロイをクリック。
• イメージでnginxを選択しデプロイする。
• 続いて公開をクリックし、サービスを作成する。
• サービスのタイプは全3種。今回はロードバランサを選択しました。
Step4: Monitoring Google Cloudのオペレーションスイート (旧称: Stackdriver) インフラストラクチャとアプリケーションのパフォーマンスを モニタリングしてトラブルシューティングを行いパフォーマンスを向上する。 主な機能 -
Cloud Monitoring - Cloud Logging
通常のVMインスタンスの場合
None
Step4: Monitoring ・Kubernetes Engine MonitoringはGKEバージョン1.14からデフォルトで有効。 ・Kubernetes専用のモニタリングダッシュボード。 GKEにはCloud MonitoringとCloud Loggingのネイティブ統合が含まれている。 (統合を完全に無効化することも可能)
・有効にしてあると、Cloud Monitoringのダッシュボードに Kubernetes Engine Newという名前で表示される。
None
None
None
Namespace単位で リソースの確認 readinessProbeの確認
• https://cloud.google.com/kubernetes- engine/docs/concepts/kubernetes-engine-overview?hl=ja 参考リンク
Thank you for Listening !