【发布时间】:2019-07-06 02:06:56
【问题描述】:
我正在尝试为垃圾收集添加 kublet 参数以自动处理。我按照以下步骤操作,在编辑节点时出现错误为“unknown field “configMap” in io.k8s.api.core.v1.NodeConfigSource”
第 1 步:
bash kubectl proxy --port=8001 &
第 2 步: 拉取当前配置文件
NODE_NAME="the-name-of-the-node-you-are-reconfiguring"; curl -sSL "http://localhost:8001/api/v1/nodes/${NODE_NAME}/proxy/configz" | jq '.kubeletconfig|.kind="KubeletConfiguration"|.apiVersion="kubelet.config.k8s.io/v1beta1"' > kubelet_configz_${NODE_NAME}
第 3 步: 我编辑了这个值
"imageGCHighThresholdPercent": 70,
"imageGCLowThresholdPercent": 65,
第 4 步: 将配置推送到控制平面
kubectl -n kube-system create configmap my-node-config --from-file=kubelet=kubelet_configz_${NODE_NAME} --append-hash -o yaml
第 5 步: 编辑节点
kubectl edit node ${NODE_NAME}
在其中添加了配置源
configSource:
configMap:
name: CONFIG_MAP_NAME #my new created configmap name added
namespace: kube-system
kubeletConfigKey: kubelet
在将编辑节点保存为“io.k8s.api.core.v1.NodeConfigSource”中的“未知字段“configMap”时出错
我的节点信息
nodeInfo:
architecture: amd64
bootID: 951c736d-9a2c-4a81-bf32-922c53970ab3
containerRuntimeVersion: docker://17.3.2
kernelVersion: 3.10.0-693.11.6.el7.x86_64
kubeProxyVersion: v1.10.6
kubeletVersion: v1.10.6
machineID: 609bbd29e32a4898e604f49bff82a88c
operatingSystem: linux
osImage: CentOS Linux 7 (Core)
systemUUID: EC20197C-6279-B13C-6A3A-000FDAC5C4E8
apiVersion: v1
items:
- apiVersion: v1
kind: Node
metadata:
annotations:
node.alpha.kubernetes.io/ttl: "0"
volumes.kubernetes.io/controller-managed-attach-detach: "true"
规格信息:
spec:
externalID: i-0f84faccd78dff3b3
podCIDR: 109.92.5.0/24
providerID: aws:///ap-south-1a/i-0foh4faccdsdcns3b3
参考链接:https://kubernetes.io/docs/tasks/administer-cluster/reconfigure-kubelet/
【问题讨论】:
标签: kubernetes garbage-collection kops kubelet