ザ Kubernetes ダッシュボードは監視の効果的な方法です ミニクベ 集まる。 使用率とクラスター固有のパラメーターの表示とは別に、ダッシュボードからクラスターとそのリソースを管理できることをご存知ですか? Minikubeダッシュボードが重要です!
ダッシュボードを介してポッド、サービス、およびその他の多くのリソースを作成および破棄するときに読み進めてください。これは、コマンドラインで実行したはずのタスクです。
前提条件
このチュートリアルは、実践的なデモンストレーションになります。 フォローしたい場合は、次のものがあることを確認してください。
- Minikube –この記事ではバージョンv1.25.2を使用しています。 Kubectl 自動的。
- MiniKubeとKubectlをまだインストールしていない場合は、以下の関連記事のリンクをたどってインストールしてください。
MiniKubeクラスターの作成
前提条件が正常にインストールされたら、MiniKubeでのプレイを開始できます。 まず、Kubernetesクラスターを作成することから始めます。
ターミナルセッションを開き、以下のコマンドを実行します。 このコマンドは、Kubernetesクラスターを作成します。
ザ -extra-config=kubelet.housekeeping-interval=10s
スイッチは表示を有効にします CPU ダッシュボードの使用率メトリック。
minikube start --extra-config=kubelet.housekeeping-interval=10s
クラスターのハウスキーピング間隔の変更は、Minikubeの開発者による最適化の決定です。 あなたはそれについてもっと読むことができます Minikubeの課題追跡システム。 この副作用の修正はテスト済みであり、後のバージョンに含める必要があります。
このコマンドは、以下に示すように、Dockerコンテナー内で実行される単一ノードクラスターを自動的にセットアップします。
ダッシュボードとメトリクスの有効化-サーバーアドオン
Minikubeには、開発プロセスを簡素化するためのアドオンとしてインストールされたいくつかのKubernetesツールが付属しています。
1.を実行します minikube addons
以下のコマンド list
インストールされているすべてのアドオン。 minikube addons list
下の画像のような出力が表示されるはずです。 ダッシュボードとmetrics-serverアドオンのステータスは、新しいMinikubeクラスターではデフォルトで無効になっています。

2.を使用してダッシュボードを有効にします minikube addons
以下のコマンド。
minikube addons enable dashboard
フィードバックは以下のショットのようになります。

3.を有効にします metrics-server
以下を使用したアドオン minikube addons
指図。 メトリック-サーバーは、ノードと実行中のポッドに関するより多くのデータへのアクセスを集約して提供することにより、ダッシュボードを強化します。
minikube addons enable metrics-server
以下に示すように、metrics-serverアドオンが有効になると通知が表示されます。

4.を再実行します minikube addons list
両方を確認するコマンド addons
以下に示すように、これで有効になります。

KubernetesMiniKubeダッシュボードの起動
を実行します minikube dashboard
以下に示すコマンドを使用して、デフォルトのWebブラウザでダッシュボードを自動的に起動します。
数分待った後、ダッシュボードが開始されたことを示すフィードバックがターミナルウィンドウに表示されます。

以下に示すように、ブラウザもダッシュボードに対して開く必要があります。

通常、ブラウザウィンドウは自動的に開きます。 そうでない場合は、何らかの理由で、ダッシュボードのアドレスをターミナルからコピーして、ブラウザで手動で開くことができます。
Minikubeダッシュボードでのデプロイメントの作成
このセクションでは、クラスターのパフォーマンスデータを取得するだけでなく、ダッシュボードを介してWebサービスのデプロイメントを作成および管理します。
1.をクリックします 新しいリソースを作成する 以下に示すように、ボタンをクリックして新しいデプロイメントを作成します。

2.をクリックします フォームから作成 タブを使用して、宣言的にではなくフォームに入力して展開を作成します YAML また JSON ファイル。
![[フォームから作成]タブをクリックします](https://adamtheautomator.com/wp-content/uploads/2022/05/image-271.png)
3.以下に示すように、デプロイメントに対応するパラメーターを入力します
- アプリ名:デプロイメントの名前。 このチュートリアルでは、
myhttpd
。 - コンテナ画像:デプロイメントのベースイメージを定義します。 このチュートリアルでは、次のように入力します
httpd:latest
。 - ポッドの数: 展開に含めるポッドの数を指定します。 値をに残します
1
今のところ。 - サービス: [表示]を選択して、展開を公開します。 選択する
External
を使用してクラスターの外部にWebサービスを公開する ロードバランサー サービス。 そうすることで、Webブラウザを介してサービスにアクセスできるようになります。 - 両方を設定します ポート と ターゲットポートs値から
80
。
フォームの最終入力画面は、次のショットのようになります。 次に、をクリックします 配備 展開を開始します。

ワークロードダッシュボードで展開の進行状況を監視します。 数分後、ステータスはすぐに琥珀色から活気のある緑に移行するはずです。 成功した展開の監視

MiniKubeダッシュボードでのコンテナのスケーリングと管理
デプロイメントが完了したら、コマンドラインで実行したであろうクラスター管理タスクのいくつかを実行します(Mnikubeダッシュボードがなかった場合)。 まず、次の手順で展開をスケールアウトします。
1.をクリックします 展開 ブラウザウィンドウの左側にあるナビゲーションバーにあります。

2.をクリックします myhttpd 下 展開 セクション。これは、前に設定したデプロイメントです。

3.をクリックします スケールリソース 次のスクリーンショットに示すように、右上隅の近くにあるアイコン。
![展開のスケーリング:[リソースのスケーリング]ボタンの選択](https://adamtheautomator.com/wp-content/uploads/2022/05/image-276.png)
4.を設定します 必要なレプリカ の値 2
展開をスケールアウトします。 これにより、レプリカ数が1(現在)から2に増えます。をクリックします。 規模 変更を有効にします。

5.をクリックします。 ワークロードステータス ナビゲーションペインのリンクをクリックして、ダッシュボードに変更が反映されていることを確認します。 デプロイメントに2つの実行中のポッドが表示されます。

MiniKubeダッシュボードからノードのIPアドレスを取得する
IPは、クラスター内のサービスに到達する1つの方法です。 ノードのIPアドレスを見つけるには、通常、コマンドを実行する必要があります。 しかし、ダッシュボードができたので、その情報を簡単に表示できます。
以下の手順に従って、クラスターのIPを取得します。
1.をクリックします ノード 以下のようにダッシュボードの右側にあるナビゲーションバーから。

2.をクリックします ミニクベ 下のリンク ノード カード。

3.下にスクロールして リソース情報 カードを作成し、ノードのIPアドレスを見つけます。

既存のサービスの一覧表示
デプロイメントの作成時に[外部]を選択して、LoadBalancerサービスをデプロイメントにアタッチしました。 以下の手順に従って、デプロイメントのサービスのリストを確認できます。
1.をクリックします サービス ナビゲーションバーにあります。

2.以下の画像のようなリストが表示され、サービスタイプを確認できます。 myhttpd は LoadBalancer。 サービスを外部にマップするポート番号をメモします。 この例では、ポート番号は 32276
。

次に、新しいブラウザウィンドウまたはタブを開き、次の場所に移動します。 HTTP://<node_internal_ip>:external_port
。 この例では、URLは http://192.168.49.2:32276
。

ポッドリソースの編集
LoadBalancerサービスは通常、クラスターにサービスを提供する実際のロードバランサーを見つけることができるクラウド環境での本番環境での使用を目的としています。 ただし、開発環境では、デプロイメントを迅速に公開するためのより一般的な方法は、 NodePort サービス。 以下の手順に従って、Nodeportサービスを作成します。
1.をクリックします 新しいリソースを作成する 下図のようなボタン。

2.以下のYAMLコードをコピーして、埋め込みエディターに貼り付けます。 このYAMLコードは NodePort
サービス。 NodePortは、リッスンしているWebサービスを作成します TargetPort
80
、ポートで外部から利用可能 31337
apiVersion: v1
kind: Service
metadata:
# Append np to Service name set to avoid collision with existing LoadBalancer service
name: myhttpd-np
spec:
type: NodePort
selector:
k8s-app: myhttpd
ports:
# By default and for convenience, the `targetPort` is set to the same value as the `port` field.
- port: 80
targetPort: 80
# Optional field
# If omitted the Kubernetes control plane will allocate a port from a range (default: 30000-32767)
nodePort: 31337
画面は下のスクリーンショットのようになります。

3.編集後、をクリックします アップロード ボタンをクリックして、定義を適用し、サービスを作成します。

4.までスクロールします サービス のセクション ワークロード NodePortのステータスを確認するダッシュボード。 成功を示すために、サービスステータスが緑色に変わるはずです。

5.ブラウザで、外部URLを開きます。 http://192.168.49.2:31337
、Webサービスが利用可能であることを確認します。

リソースの削除
NodePortが外部アクセス用に正しく設定されたので、LoadBalancerサービスを削除できるようになりました。
まず、をクリックします サービス ダッシュボードのナビゲーションメニューのリンク。

次に、をクリックします 行動 myhttpdLoadBalancerサービスの右端にあるメニューをクリックしてクリックします 消去。

ポッドリソース使用率の監視
ポッドを管理する上で重要なのは、リソースの使用率を監視することです。 幸い、ダッシュボードでは、これらのリソースを統計グラフで表示できます。
クリック ポッド ナビゲーションメニュー。 CPUとメモリの使用量のグラフが表示されます。

ズームインします ポッド ポッドごとのメトリックを表示するカード。

ダッシュボードからのコンテナログの読み取り
ログは優れたトラブルシューティングリファレンスであり、イベントを迅速に調査するのに役立ちます。 そして、そのような状況では、特定のコンテナのログをから読み取ることができます ポッド カード。
1.をクリックします 行動 ログを表示してクリックするポッドのメニュー ログ。

2.以下に示すように、ビューポートからログを調べます。 ポッドのログを表示する

3.右上のオプションメニューをクリックして、 自動更新 ボックスを使用して、5秒ごとにログを更新できるようにします。

4.最後に、上部の[ダウンロード]ボタンをクリックして、 ログをダウンロードまたはエクスポートするには、保存してください。 これで、共有、分析、解析、またはアーカイブできるログのコピーができました。

結論
このチュートリアルの最後に到達することで、Kubernetes MiniKubeダッシュボードを使用してデプロイを効果的に作成、スケーリング、編集する方法を学びました。 それで遊んでください。 ポッドの数が増えると、クラスターを使いこなすのにさらに役立ちます。
The post KubernetesMiniKubeダッシュボードを使用した効果的なデプロイ appeared first on Gamingsym Japan.