kube-apiserverはどこにありますか?質問する

kube-apiserverはどこにありますか?質問する

基本的な質問: マスター ノードで kube-apiserver を使用しようとすると、コマンドが見つからないというエラーが発生します。kube-apiserver をインストール/構成するにはどうすればよいですか? 例へのリンクがあれば役立ちます。

$ kube-apiserver --enable-admission-plugins DefaultStorageClass
-bash: kube-apiserver: command not found

詳細: 私は Kubernetes と Docker の初心者で、volumeClaimTemplates を使用して StatefulSet を作成しようとしていました。問題は、自動 PV が作成されず、PVC ログに「persistentvolume-controller がボリュームの作成を待機しています」というメッセージが表示されることです。DefaultStorageClass を定義する必要があるかどうかはわかりませんが、定義するには kube-apiserver が必要でした。

Name:          nfs
Namespace:     default
StorageClass:  example-nfs
Status:        Pending
Volume:
Labels:        <none>
Annotations:   volume.beta.kubernetes.io/storage-provisioner=example.com/nfs
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:
Access Modes:
Events:
  Type    Reason                Age                  From                         Message
  ----    ------                ----                 ----                         -------
  Normal  ExternalProvisioning  3m (x2401 over 10h)  persistentvolume-controller  waiting for a volume to be created, either by external provisioner "example.com/nfs" or manually created by system administrator

取得した PVC の結果は次のとおりです。

$ kubectl get pvc
NAME      STATUS    VOLUME    CAPACITY   ACCESS MODES   STORAGECLASS   AGE
nfs       Pending                                       example-nfs    10h

そしてストレージクラスを取得します:

$ kubectl describe storageclass example-nfs
Name:                  example-nfs
IsDefaultClass:        No
Annotations:           <none>
Provisioner:           example.com/nfs
Parameters:            <none>
AllowVolumeExpansion:  <unset>
MountOptions:          <none>
ReclaimPolicy:         Delete
VolumeBindingMode:     Immediate
Events:                <none>

この問題をトラブルシューティングするにはどうすればよいですか (例: ストレージが作成されなかった理由のログなど)?

ベストアンサー1

ここでは 2 つの異なる質問があります。1 つは kube-apiserver の構成について、もう 1 つは のトラブルシューティングについてですStorageClass

最初の質問に対する答えは次のとおりです。

kube-apiserverマスターノード上でDockerコンテナとして実行されています。したがって、バイナリは内でコンテナ上、ホスト システム上ではありません。マスターによって、kubeletにあるファイルから起動されます/etc/kubernetes/manifestskubeletこのディレクトリを監視し、ここで「静的ポッド」として定義されているポッドを起動します。

kube-apiserverコマンドライン引数を構成するには、/etc/kubernetes/manifests/kube-apiserver.yamlマスターで変更する必要があります。

おすすめ記事