一尘不染

kube-apiserver在哪里

docker

基本问题:当我尝试在主节点上使用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

并获取storageclass:

$ 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>

如何解决此问题(例如,未创建存储的原因的日志)?


阅读 1011

收藏
2020-06-17

共1个答案

一尘不染

您在这里问两个不同的问题,一个是关于kube-apiserver配置的问题,另一个是关于对您的问题进行故障排除的问题StorageClass

这是您第一个问题的答案:

kube-apiserver在您的主节点上作为Docker容器运行。因此,二进制文件 位于
容器内,而不位于主机系统上。它由主机kubelet从位于的文件启动/etc/kubernetes/manifestskubelet正在观看此目录,并将启动此处定义为“静态广告连播”的任何广告连播。

要配置kube-apiserver命令行参数,您需要/etc/kubernetes/manifests/kube- apiserver.yaml在主机上进行修改。

2020-06-17