Centos kubectl从服务器获取cs提示错误(禁止)

Centos kubectl从服务器获取cs提示错误(禁止),centos,kubernetes,Centos,Kubernetes,在centos 7上运行kubectl get cs时,我收到以下错误消息 No resources found. Error from server (Forbidden): componentstatuses is forbidden: User "system:node:<server-name>" cannot list componentstatuses at the cluster scope 另外,我在~/.bash\u配置文件中有以下内容 export http_

在centos 7上运行
kubectl get cs
时,我收到以下错误消息

No resources found.
Error from server (Forbidden): componentstatuses is forbidden: 
User "system:node:<server-name>" cannot list componentstatuses at the cluster scope
另外,我在
~/.bash\u配置文件中有以下内容

export http_proxy=http://<proxy-server-IP>:3128
export https_proxy=http://<proxy-server-IP>:3128
export no_proxy=$no_proxy,127.0.0.1,localhost,<server-IP>,<server-name>
export KUBECONFIG=/etc/kubernetes/kubelet.conf

在重新安装centos 7并按照以下步骤操作后,我能够正确地调出主机

  • 安装docker ce并添加
  • 安装
  • 禁用防火墙D并关闭交换
  • 在.bash\u配置文件中不导出\u代理

    export no_proxy=$no_proxy,127.0.0.1,localhost,,,10.96.0.0/12,10.244.0.0/16

  • 库比德初始

    kubeadm init--apiserver播发地址=--pod网络cidr=10.244.0.0/16
    mkdir-p$HOME/.kube
    \cp-f/etc/kubernetes/admin.conf$HOME/.kube/config
    chown$(id-u):$(id-g)$HOME/.kube/config

  • 使用
    kubectl get cs进行测试

    NAME状态消息错误
    调度器正常
    控制器管理器正常
    etcd-0健康{“健康”:“正确”}


  • 无需手动安装etcd或导出KUBECONFIG

    重新安装centos 7并按照以下步骤操作后,我能够正确启动主控程序

  • 安装docker ce并添加
  • 安装
  • 禁用防火墙D并关闭交换
  • 在.bash\u配置文件中不导出\u代理

    export no_proxy=$no_proxy,127.0.0.1,localhost,,,10.96.0.0/12,10.244.0.0/16

  • 库比德初始

    kubeadm init--apiserver播发地址=--pod网络cidr=10.244.0.0/16
    mkdir-p$HOME/.kube
    \cp-f/etc/kubernetes/admin.conf$HOME/.kube/config
    chown$(id-u):$(id-g)$HOME/.kube/config

  • 使用
    kubectl get cs进行测试

    NAME状态消息错误
    调度器正常
    控制器管理器正常
    etcd-0健康{“健康”:“正确”}

  • 无需手动安装etcd或导出KUBECONFIG

    export KUBECONFIG=/etc/kubernetes/kubelet.conf

    完全不正确,;正如错误消息愉快地告诉您的那样,您正在尝试以
    节点的身份执行群集操作,而不是以用户或
    服务帐户的身份执行群集操作。RBAC几乎明确地设计为阻止您完全执行当前正在执行的操作。您永远不会希望
    节点
    能够读取敏感凭据,也不会在集群范围内创建任意的
    Pod
    s

    如果您想对此更挑剔,那么使用ssh连接到主节点,并使用
    /etc/kubernetes/admin.conf
    中常见的
    集群管理
    凭据(或类似文件,具体取决于集群的配置方式)。如果您还没有
    群集管理
    凭据,则创建一个X.509证书,该证书由apiserver信任的
    群集管理
    组织(
    O=
    )的CA签署,然后创建一个
    服务帐户
    (或其他)使用
    ClusterRoleBinding
    clusteradmin
    并从那里开始

    export KUBECONFIG=/etc/kubernetes/kubelet.conf

    完全不正确,;正如错误消息愉快地告诉您的那样,您正在尝试以
    节点的身份执行群集操作,而不是以用户或
    服务帐户的身份执行群集操作。RBAC几乎明确地设计为阻止您完全执行当前正在执行的操作。您永远不会希望
    节点
    能够读取敏感凭据,也不会在集群范围内创建任意的
    Pod
    s

    如果您想对此更挑剔,那么使用ssh连接到主节点,并使用
    /etc/kubernetes/admin.conf
    中常见的
    集群管理
    凭据(或类似文件,具体取决于集群的配置方式)。如果您还没有
    群集管理
    凭据,则创建一个X.509证书,该证书由apiserver信任的
    群集管理
    组织(
    O=
    )的CA签署,然后创建一个
    服务帐户
    (或其他)使用
    ClusterRoleBinding
    clusteradmin
    并从那里开始。

    尝试下面的代码片段

    1)
    sudo su

    2)
    kubectl获取cs

    请尝试以下代码片段

    1)
    sudo su

    2)
    kubectl获得cs

    export http_proxy=http://<proxy-server-IP>:3128
    export https_proxy=http://<proxy-server-IP>:3128
    export no_proxy=$no_proxy,127.0.0.1,localhost,<server-IP>,<server-name>
    export KUBECONFIG=/etc/kubernetes/kubelet.conf
    
    Error from server (Forbidden): error when retrieving current configuration of:
    Resource: "/v1, Resource=secrets", GroupVersionKind: "/v1, Kind=Secret"
    Name: "kubernetes-dashboard-certs", Namespace: "kube-system"
    Object: &{map["kind":"Secret" "metadata":map["labels":map["k8s-app":"kubernetes-dashboard"] "name":"kubernetes-dashboard-certs" "namespace":"kube-system" "annotations":map["kubectl.kubernetes.io/last-applied-configuration":""]] "type":"Opaque" "apiVersion":"v1"]}
    from server for: "https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml": 
    secrets "kubernetes-dashboard-certs" is forbidden: 
    User "system:node:<server-name>" cannot get secrets in the namespace "kube-system": 
    no path found to object