ツールによって大きな違い
「Google Kubernetes Engine」の管理オプション機能を徹底解説
Googleは「Google Kubernetes Engine」(GKE)サービス向けにさまざまな管理オプションに対応する。各オプションにはそれぞれ長所と短所がある。選定のポイントと各オプションの機能を紹介する。
ほとんどのクラウドサービスとは異なり、「Google Kubernetes Engine」(GKE)などのKubernetesマネージドサービスは、オープンソーステクノロジーを基盤とする。こうしたテクノロジーは、クラウドベンダーが登場するはるか昔から、プライベートインフラで広く導入されていた。
Kubernetesは拡大を続ける大規模な開発者のエコシステムを引き付けている。このエコシステムには、Kubernetesベースのディストリビューションに含まれるツールを使用する開発者もいれば、自社開発のツールを使用する開発者もいる。こうした開発者や導入環境の多様性によって、Kubernetesを利用する場合には常に複数の方法が存在することになる。コンテナクラスタ管理をする場合も同じだ。
これはGKEにも当てはまる。GKEは以下のように、複数のクラスタ管理をサポートする。
- 「Google Cloud Console」:Webベースのグラフィカルユーザーインタフェース(GUI)。
- 「Google Cloud Shell」:Webベースまたはローカルのコマンドシェル。
- 「kubectl」:Kubernetesネイティブのコマンドラインツール。
- 拡張機能「Google Cloud Tools」とMicrosoftの「Windows PowerShell」:ソフトウェア開発キット(SDK)と関連コマンドレットを提供する方法。
これらの管理手法には、それぞれ長所、短所があり、さまざまな利用者に合わせた独自のスタイルが用意されている。
ツールの概要
「Google Cloud Platform」(GCP)のWebコンソールは全ての管理タスク向けのデフォルトインタフェースだ。ITチームはこの統一コンソールから全てのGCPサービスを構成、デプロイし、監視することが可能だ。他のサービスとは異なり、GKEには管理インタフェースが2つある。管理者はWebのGUIを使用して、クラスタの導入、ノードの管理、役割ベースのアクセス制御、外部ネットワーキング機能(IPエイリアス、負荷分散、ネットワークポリシーなど)を構成する。
クラスタの動作(具体的にはKubernetes自体の内部パラメーター)に関連するタスクの実行にはコマンドラインツールを使用する。このツールは関連APIを起動する。GKEでは、以下の方法でコマンドラインにアクセスする。
- kubectl:オープンソースのKubernetesディストリビューションに含まれるクラスタ管理用コマンドラインツール。標準UNIXスタイルのコマンド構文を使用する。この標準構文は4つの要素(コマンド名、リソースの種類、リソース名、コマンドフラグ)から成り立つ。コマンドフラグはオプションを指定するか、デフォルト値をオーバーライドする。
- 「gcloud」:もう1つのコマンドラインツール。このツールはGoogle Cloud Shellウェブインタフェースから利用するか、管理者が「Google Cloud SDK」の一部としてローカルにインストールできるスタンドアロンパッケージとして利用する。gcloudはGCP用の包括的な管理インタフェースだ。ITチームはこのインタフェースを「Google Compute Engine」の仮想マシン(VM)、「Google Cloud SQL」のインスタンス、「Google Cloud Deployment Manager」のテンプレートなど、他の多くのリソースに使用する。gcloudのコマンドの構文はkubectlと同様、サービス、コマンド、さまざまなフラグを指定する複数の要素から成り立つ。gcloudを使用する場合、WebベースのGoogle Cloud Consoleを使用するのが最も簡単だ。
- PowerShell:Google Cloud Toolsのコマンドレットを使用するツール。コマンドレットには、GKEのクラスタとポッドの作成や管理、GCPリソースの管理をするセットなどがある。
その他の便利な管理ツール
Kubernetesは最も活発なオープンソースプロジェクトの1つだ。そのため、時間を節約する手法やツールをシェアすることを希望する開発者を惹き付けている。ここではKubernetesエコシステムで最も普及している便利なツールとして、ソースコード管理サービス「GitHub」で無償入手できるものを幾つか紹介する。
- 「Minikube」:ローカル環境で小規模なシングルノードKubernetesクラスタを実行できるツール。この環境は、Kubernetesアプリケーションを開発/テストするためにVMやノートPCのOS内部にインストールするよう設計されている。「Docker」と「rkt」コンテナランタイムエンジン、コンテナネットワークインタフェース、「NodePort」、ドメインネームシステム、ダッシュボードなど、Kubernetesの基本機能をサポートする。
- 「kubeadm」:Kubernetesコミュニティーが確立したベストプラクティスに従って、Kubernetesの作成を容易にするツールキット。
- 「kube-ops-view」:Kubernetesの複数クラスタのステータス概要を提供し、ノード(Node)とポッド(Pod)のリソース使用状況を表示するダッシュボード。情報提供のみで制御はできない。そのため、kube-ops-viewは「Kubernetes Dashboard」の補完機能として、完全な管理用UIを提供する。
- 「kube-shell」:Kubernetes向けに便利な自動化機能を幾つか備えたもう1つのコマンドシェル。インラインドキュメントによるコマンドとオプションのオートコンプリート、LinuxとmacOS向けの「fish」シェルに似たオートサジェスチョン機能である、コマンド履歴、あいまい検索、サーバサイドオートコンプリートなどを備える。また、viエディタ形式のコマンドを使用する編集モードもある。
- 「Koki Short」:構成可能で再利用可能なモジュール形式の構文を使ってKubernetesのマニフェストの作成と管理を簡単にするツール。
- 「Stern」:Linuxの「tail」コマンドに似たコマンドラインツール。複数のポッドの出力をコマンドシェルにストリーミングできる。構文では正規表現をサポートし、コンテナ名によってサブセットをフィルタリング可能。出力をコンテナ別に色分け表示する。
- 「Kubernetes Helm」:「apt-get」や「yum」のようなLinuxツールに概念がよく似たKubernetesパッケージマネジャー。「Chart」と呼ばれる標準フォーマットを使ってコンテナ化されたアプリケーションの定義、インストール、アップグレードを簡単にする。
経験に応じたツールの選択
GKE管理ツールの選択は、個人ごとに大きく異なる。以下、個人の経験に応じた選択肢を提案する。
- Kubernetesの初心者やローカルでのクラスタ管理の経験が少ない場合は、Google Cloud ConsoleとGoogle Cloud Shellが最も便利で最善のオプションになる。
- 「Bash」や、macOSの「ターミナル」のようなローカルコマンドシェルを好んで使用する初心者にはローカルのgcloudが最適だ。
- Kubernetesの経験が豊富な管理者は、既に構文に精通していて、Kubernetesのあらゆる環境を管理する際に同じツールを使えるため、Kubectlが最も適している。
- Windowsの開発者や「Microsoft Azure」ユーザーはその環境の管理に既に使用しているPowerShellが理想的だ。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社うるる] 「入札市場」攻略ガイド:効率的に落札するためのポイントを徹底解説 -
製品資料
[株式会社うるる] 入札情報に特化した「販路拡大」「効率化」のためのサポートツールとは? -
市場調査・トレンド
[株式会社うるる] 公共入札に成功する企業と失敗する企業の「5つの違い」 -
製品資料
[日本ビジネスシステムズ株式会社] 専門家が教える、Microsoft 365の「テナント統合/分離」を成功に導く秘訣 -
製品資料
[rakumo株式会社] Microsoft 365での情報埋没を防ぐ、社内ナレッジを資産化する情報ポータル活用
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
半数がブルーカラー転向を視野に? ベテランエンジニアを追い込む“54歳の壁”
-
2
PHP脆弱性「PHP2Shell」で2260万件に影響 情シスの緊急チェックリスト
-
3
「Windows」の不要なファイルを安全に消して容量を空ける方法
-
4
なぜ「Gemini 4 Argon」は出遅れたのか? Googleが狙う“逆転のシナリオ”
-
5
「Microsoft 365」が乗っ取られる MFAを破る“本物の画面”の恐怖
-
6
生成AIが普及しても「技術書」を手放せないエンジニアの本音
-
7
OpenAIやAnthropicでさえ制御不能 2026年夏「3大サイバー攻撃」の衝撃
-
8
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
9
「Copilot」はなぜ放置される? “議事録要約止まり”を脱する処方箋
-
10
「IT運用・情報システム業務」に関するアンケート
ホワイトペーパーランキング PR
-
1
AI駆動攻撃にどう対抗する? 超速の攻撃からエンドポイントを保護する方法
-
2
最速72分でデータが流出? 最新の脅威トレンドや侵入手法から分かった防衛策
-
3
2026年のサイバーセキュリティには何が必要か? 最新データに学ぶ傾向と対策
-
4
経験豊富な即戦力人材に直接アプローチできる、「攻めの採用」への転換術
-
5
「IT史に名を残すシステム障害」8選
-
6
SASE選定は「見極め力」で大きな差――本当に必要な製品を選ぶための6つの視点
-
7
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
8
Microsoft 365のメールセキュリティ、3つの“死角”と追加で検討すべき対策とは
-
9
AI駆動開発のスピードと安全性を両立 「品質・セキュリティ管理」の実践ガイド
-
10
「標的型攻撃メール」事例・サンプル集
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー