gpt4 book ai didi

Kubernetes kube-controller-manager。我如何申请旗帜?

转载 作者:行者123 更新时间:2023-12-02 11:36:39 31 4
gpt4 key购买 nike

the documentation ,我发现应该在 kube-controller-manager 上应用以下标志来解决我的问题:

--horizontal-pod-autoscaler-use-rest-clients=1m0s

但是我如何在 kube-controller-manager 上应用这个标志?我不明白,因为它不是基于 YAML 的设置,我在本地机器上唯一拥有的是 kubectloc CLI 工具。

最佳答案

kube-controller-manager 在您的 K8s 控制平面中运行。因此,您必须在运行控制平面的服务器上添加该标志。通常情况下,这是一个奇数的服务器(一个是主服务器)3 或 5,因为它是推荐的法定人数。 (Example using kubeadm)。

因此,通常 kube-controller-manager 配置位于您的 master 中的 /etc/kubernetes/manifests 下。文件名通常为 kube-controller-manager.yaml,内容可以更改为如下所示:

apiVersion: v1
kind: Pod
metadata:
creationTimestamp: null
labels:
component: kube-controller-manager
tier: control-plane
name: kube-controller-manager
namespace: kube-system
spec:
containers:
- command:
- kube-controller-manager
- --authentication-kubeconfig=/etc/kubernetes/controller-manager.conf
- --authorization-kubeconfig=/etc/kubernetes/controller-manager.conf
- --bind-address=127.0.0.1
- --client-ca-file=/var/lib/minikube/certs/ca.crt
- --cluster-signing-cert-file=/var/lib/minikube/certs/ca.crt
- --cluster-signing-key-file=/var/lib/minikube/certs/ca.key
- --controllers=*,bootstrapsigner,tokencleaner
- --kubeconfig=/etc/kubernetes/controller-manager.conf
- --leader-elect=true
- --requestheader-client-ca-file=/var/lib/minikube/certs/front-proxy-ca.crt
- --root-ca-file=/var/lib/minikube/certs/ca.crt
- --service-account-private-key-file=/var/lib/minikube/certs/sa.key
- --use-service-account-credentials=true
- --horizontal-pod-autoscaler-use-rest-clients=1m0s <== add this line
image: k8s.gcr.io/kube-controller-manager:v1.16.2
imagePullPolicy: IfNotPresent
livenessProbe:
failureThreshold: 8
httpGet:
host: 127.0.0.1
path: /healthz
port: 10252
scheme: HTTP
initialDelaySeconds: 15
timeoutSeconds: 15
name: kube-controller-manager
resources:
requests:
cpu: 200m
volumeMounts:
- mountPath: /etc/ssl/certs
name: ca-certs
readOnly: true
- mountPath: /var/lib/minikube/certs
name: k8s-certs
readOnly: true
- mountPath: /etc/kubernetes/controller-manager.conf
name: kubeconfig
readOnly: true
- mountPath: /usr/share/ca-certificates
name: usr-share-ca-certificates
readOnly: true
hostNetwork: true
priorityClassName: system-cluster-critical
volumes:
- hostPath:
path: /etc/ssl/certs
type: DirectoryOrCreate
name: ca-certs
- hostPath:
path: /var/lib/minikube/certs
type: DirectoryOrCreate
name: k8s-certs
- hostPath:
path: /etc/kubernetes/controller-manager.conf
type: FileOrCreate
name: kubeconfig
- hostPath:
path: /usr/share/ca-certificates
type: DirectoryOrCreate
name: usr-share-ca-certificates
status: {}

然后你需要重启你的 kube-controller-manager。

这可能会有所不同,具体取决于您在母版中运行的内容。如果像 docker 你可以做 sudo systemctl restart docker 或者你可能需要重新启动 containerd 如果你正在使用它而不是 docker systemctl restart containerd

或者,如果你只想启动 kube-controller-manager,你可以执行 docker restart kube-controller-mamnagercrictl stop kube-controller-经理; crictl 启动 kube-controller-manager

关于Kubernetes kube-controller-manager。我如何申请旗帜?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60767427/

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