はじめに
Kubernetes クラスタで実行されている任意のアプリケーションにとって、リソースの使用状況は重要な側面です。リソースの使用状況を監視することで、パフォーマンスの問題を特定し、リソースを最適化し、アプリケーションの全体的な効率を向上させることができます。この実験では、metrics-server を使用して Kubernetes クラスタでのリソースの使用状況を表示する方法を探ります。CPU とメモリの使用状況について説明します。
💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください
Kubernetes クラスタで実行されている任意のアプリケーションにとって、リソースの使用状況は重要な側面です。リソースの使用状況を監視することで、パフォーマンスの問題を特定し、リソースを最適化し、アプリケーションの全体的な効率を向上させることができます。この実験では、metrics-server を使用して Kubernetes クラスタでのリソースの使用状況を表示する方法を探ります。CPU とメモリの使用状況について説明します。
リソースを作成する前に、動作中の Kubernetes クラスタが必要です。Minikube は、ローカルマシン上で動作する軽量の Kubernetes 環境です。
作業ディレクトリに移動する:
ターミナルを開き、デフォルトのプロジェクトフォルダに移動します。
cd /home/labex/project
Minikube を起動する:
Minikube を起動して Kubernetes クラスタを初期化します。
minikube start
Minikube が動作していることを確認する:
Minikube クラスタの状態を確認します。
minikube status
kubelet
やapiserver
などのコンポーネントがRunning
と表示されていることを確認します。minikube start
を再度実行します。Minikube の起動に問題がある場合は、必要に応じてminikube delete
を使用して環境をリセットします。
metrics-server は、さまざまな Kubernetes オブジェクトからメトリクスを収集し、他の Kubernetes コンポーネントに対して利用可能な形式で提供する Kubernetes コンポーネントです。Kubernetes クラスタでリソースの使用状況を表示する前に、metrics-server を有効にする必要があります。
minikube addons enable metrics-server
このコマンドにより、Kubernetes クラスタで metrics-server が有効になります。
metrics-server が動作しているかどうかを確認するには、次のコマンドを実行します。
kubectl get pods --namespace=kube-system | grep metrics-server
Kubernetes クラスタで CPU とメモリの使用状況を表示するには、kubectl top
コマンドを使用します。このコマンドを使うと、Kubernetes オブジェクトのリソース使用状況をリアルタイムで確認できます。
## 特定の名前空間内のすべてのポッドのCPUとメモリの使用状況を表示する
kubectl top pods --namespace=kube-system
## クラスタ内のすべてのノードのCPUとメモリの使用状況を表示する
kubectl top nodes
このコマンドにより、指定された名前空間内のすべてのポッドまたはクラスタ内のすべてのノードの現在の CPU とメモリの使用状況統計が表示されます。
ポッド内で実行されているコンテナの CPU とメモリの使用状況を表示するには、再びkubectl top
コマンドを使用します。
レプリカのテンプレートとして使用される単純なポッドを作成します。/home/labex/project/
にmyapp-pod.yaml
という名前のファイルを作成し、以下の内容を記述します。
apiVersion: v1
kind: Pod
metadata:
name: myapp-pod
spec:
containers:
- name: myapp-container
image: nginx
ports:
- containerPort: 80
以下のコマンドを使用してポッドを作成します。
kubectl apply -f myapp-pod.yaml
次に、特定のポッド内の特定のコンテナの CPU とメモリの使用状況を表示するには、次のコマンドを使用します。
kubectl top pod myapp-pod --namespace=default --containers=true
このコマンドにより、指定されたポッド内の指定されたコンテナの現在の CPU とメモリの使用状況統計が表示されます。
おめでとうございます!あなたは Kubernetes のリソース使用状況の表示の実験を成功裏に完了しました。この実験では、Kubernetes クラスタにおける CPU とメモリのリソース使用状況統計を表示する方法を学びました。metrics-server を使用することで、現在、Kubernetes クラスタで実行されているアプリケーションのリソース使用状況を監視し、リソースを最適化し、全体的な効率を向上させることができます。