[英]How to add flag to kubelet
我想為 kubernetes 部署 rook。 我使用 1 個 master 和 3 個 worker,主機是 baremetal 中的 ubuntu。 但容器卡在了創建容器的過程中。 經過大量搜索,我明白我應該使用這個文檔https://github.com/rook/rook/blob/master/Documentation/flexvolume.md#most-common-readwrite-flexvolume-path說
配置 Rook operator 在通過設置環境變量 FLEXVOLUME_DIR_PATH 部署 rook-operator 時,您必須提供上面找到的 FlexVolume 路徑。 例如:
環境:[...] - 名稱:FLEXVOLUME_DIR_PATH 值:“/var/lib/kubelet/volumeplugins”(在 operator.yaml 清單中替換為路徑,或者如果您使用 helm,請將 agent.flexVolumeDirPath 設置為 FlexVolume 路徑)
配置 Kubernetes kubelet 您需要添加 flexvolume 標志以及 Kubernetes 集群中所有節點的 kubelet 的路徑:
--volume-plugin-dir=PATH_TO_FLEXVOLUME(其中PATH_TO_FLEXVOLUME就是上面找到的FlexVolume路徑)
問題是我如何添加帶有所有節點 kubelet 路徑的 flexvolume 標志?
@yasin lachini,
如果您在裸機上部署kubernetes集群,則無需配置任何內容。 這是因為/ usr / libexec / kubernetes / kubelet-plugins / volume / exec /是kubelet的默認FlexVolume路徑,並且Rook假定默認的FlexVolume路徑(如果未進行其他設置)。
我的環境:
rook-ceph / operator.yml(使用默認的FLEXVOLUME_DIR_PATH):
...
# Set the path where the Rook agent can find the flex volumes
# - name: FLEXVOLUME_DIR_PATH
# value: "/usr/libexec/kubernetes/kubelet-plugins/volume/exec"
...
部署后,在節點上:
# ls /usr/libexec/kubernetes/kubelet-plugins/volume/exec/
ceph.rook.io~rook ceph.rook.io~rook-ceph-system rook.io~rook rook.io~rook-ceph-system
有兩種選擇。
我 組
KUBELET_EXTRA_ARGS=--FLEXVOLUME_DIR_PATH=/var/lib/kubelet/volumeplugins
在文件內
/etc/default/kubelet
並重新啟動kubelete服務
sudo systemctl restart kubelet
二 。 您可以通過配置文件設置kubelet參數。
例如:
kind: KubeletConfiguration
apiVersion: kubelet.config.k8s.io/v1beta1
env:
- name: FLEXVOLUME_DIR_PATH
value: "/var/lib/kubelet/volumeplugins"
然后,只需將--config標志設置為Kubelet的配置文件的路徑即可啟動Kubelet。
sudo kubelet --config=/etc/default/kubelet/custom-conf.config
https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/
目前你可以在這個文件中添加標志: /var/lib/kubelet/kubeadm-flags.env
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.