gpt4 book ai didi

kubernetes - 从事件集群获取kube主组件的运行配置

转载 作者:行者123 更新时间:2023-12-02 12:15:26 25 4
gpt4 key购买 nike

我们有一个具有5个主节点和50个工作节点的kube集群。 kube集群在裸机服务器上运行,而不是作为容器运行。在集群初始化期间,我们会根据环境要求更新kube-api-server / scheduler / controller的参数,但不是所有选项。
像节点一样,我们可以使用API​​-:/ api / v1 / nodes // proxy / configz来获取当前应用的kubelet配置,有没有一种方法可以获取当前配置(例如kube-api-qps,kube-api -burst等)用于主组件( Controller ,调度程序)。

我可以在10252和10251上获得 Controller 和调度程序的度量标准和healthz。但是,我找不到如何通过API获取这些组件的当前配置的信息。

最佳答案

并非来自API(在撰写本文时)通常,组件配置是通过command line或/和Pod YAML list 文件传递的。通常, list 文件在/etc/kubernetes/manifests

  • kube-apisever-> /etc/kubernetes/manifests/kube-apiserver.yaml
  • kube-controller-manager-> /etc/kubernetes/manifests/kube-apiserver.yaml
  • kube-scheduler-> /etc/kubernetes/manifests/kube-scheduler.yaml

  • 例如,minikube kube-apiserver:
    apiVersion: v1
    kind: Pod
    metadata:
    creationTimestamp: null
    labels:
    component: kube-apiserver
    tier: control-plane
    name: kube-apiserver
    namespace: kube-system
    spec:
    containers:
    - command:
    - kube-apiserver
    - --advertise-address=192.168.64.6
    - --allow-privileged=true
    - --authorization-mode=Node,RBAC
    - --client-ca-file=/var/lib/minikube/certs/ca.crt
    - --enable-admission-plugins=NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota
    - --enable-bootstrap-token-auth=true
    - --etcd-cafile=/var/lib/minikube/certs/etcd/ca.crt
    - --etcd-certfile=/var/lib/minikube/certs/apiserver-etcd-client.crt
    - --etcd-keyfile=/var/lib/minikube/certs/apiserver-etcd-client.key
    - --etcd-servers=https://127.0.0.1:2379
    - --insecure-port=0
    - --kubelet-client-certificate=/var/lib/minikube/certs/apiserver-kubelet-client.crt
    - --kubelet-client-key=/var/lib/minikube/certs/apiserver-kubelet-client.key
    - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
    ...

    kube-proxy有点不同。
  • kube-proxy-> kube-system命名空间
  • 中的kube-proxy ConfigMap YAML

    要了解您可以使用API​​做什么,可以使用 kubectl get --raw命令。例如:
    $ kubectl get --raw /
    {
    "paths": [
    "/api",
    "/api/v1",
    "/apis",
    "/apis/",
    "/apis/admissionregistration.k8s.io",
    "/apis/admissionregistration.k8s.io/v1beta1",
    "/apis/apiextensions.k8s.io",
    "/apis/apiextensions.k8s.io/v1beta1",
    "/apis/apiregistration.k8s.io",
    "/apis/apiregistration.k8s.io/v1",
    ...

    关于kubernetes - 从事件集群获取kube主组件的运行配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57379308/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com