diff --git a/Makefile b/Makefile index d26d36cbe..d96d7bacd 100644 --- a/Makefile +++ b/Makefile @@ -30,9 +30,9 @@ CSI_IMAGE_TAG_LATEST = $(REGISTRY)/$(IMAGE_NAME):latest BUILD_DATE ?= $(shell date -u +"%Y-%m-%dT%H:%M:%SZ") LDFLAGS ?= "-X ${PKG}/pkg/blob.driverVersion=${IMAGE_VERSION} -X ${PKG}/pkg/blob.gitCommit=${GIT_COMMIT} -X ${PKG}/pkg/blob.buildDate=${BUILD_DATE} -s -w -extldflags '-static'" ifdef ENABLE_BLOBFUSE_PROXY -E2E_HELM_OPTIONS ?= --set image.blob.pullPolicy=Always --set image.blob.repository=$(REGISTRY)/$(IMAGE_NAME) --set image.blob.tag=$(IMAGE_VERSION) --set driver.userAgentSuffix="e2e-test" --set controller.logLevel=6 --set node.logLevel=6 --set node.enableBlobfuseProxy=true +E2E_HELM_OPTIONS ?= --set image.blob.pullPolicy=Always --set image.blob.repository=$(REGISTRY)/$(IMAGE_NAME) --set image.blob.tag=$(IMAGE_VERSION) --set driver.userAgentSuffix="e2e-test" --set controller.logLevel=6 --set node.logLevel=6 --set node.enableBlobfuseProxy=true --set node.blobfuseProxy.migrateK8sRepo=true else -E2E_HELM_OPTIONS ?= --set image.blob.pullPolicy=Always --set image.blob.repository=$(REGISTRY)/$(IMAGE_NAME) --set image.blob.tag=$(IMAGE_VERSION) --set driver.userAgentSuffix="e2e-test" +E2E_HELM_OPTIONS ?= --set image.blob.pullPolicy=Always --set image.blob.repository=$(REGISTRY)/$(IMAGE_NAME) --set image.blob.tag=$(IMAGE_VERSION) --set driver.userAgentSuffix="e2e-test" --set node.blobfuseProxy.migrateK8sRepo=true endif E2E_HELM_OPTIONS += ${EXTRA_HELM_OPTIONS} GO111MODULE = on diff --git a/charts/latest/blob-csi-driver-v0.0.0.tgz b/charts/latest/blob-csi-driver-v0.0.0.tgz index 44dfd85d5..e3fea2a71 100644 Binary files a/charts/latest/blob-csi-driver-v0.0.0.tgz and b/charts/latest/blob-csi-driver-v0.0.0.tgz differ diff --git a/charts/latest/blob-csi-driver/templates/csi-blob-node.yaml b/charts/latest/blob-csi-driver/templates/csi-blob-node.yaml index 863e90ed3..762886d21 100644 --- a/charts/latest/blob-csi-driver/templates/csi-blob-node.yaml +++ b/charts/latest/blob-csi-driver/templates/csi-blob-node.yaml @@ -102,6 +102,8 @@ spec: value: "{{ .Values.node.blobfuseProxy.disableUpdateDB }}" - name: KUBELET_PATH value: "{{ .Values.linux.kubelet }}" + - name: MIGRATE_K8S_REPO + value: "{{ .Values.node.blobfuseProxy.migrateK8sRepo }}" volumeMounts: - name: host-usr mountPath: /host/usr diff --git a/charts/latest/blob-csi-driver/values.yaml b/charts/latest/blob-csi-driver/values.yaml index 8a280a342..fc74895d9 100644 --- a/charts/latest/blob-csi-driver/values.yaml +++ b/charts/latest/blob-csi-driver/values.yaml @@ -120,13 +120,14 @@ node: logLevel: 5 enableBlobfuseProxy: true blobfuseProxy: - installBlobfuse: true + installBlobfuse: false blobfuseVersion: "1.4.5" installBlobfuse2: true blobfuse2Version: "2.3.2" setMaxOpenFileNum: true maxOpenFileNum: "9000000" disableUpdateDB: true + migrateK8sRepo: false blobfuseCachePath: /mnt appendTimeStampInCacheDir: false mountPermissions: 0777 diff --git a/deploy/csi-blob-node.yaml b/deploy/csi-blob-node.yaml index f41d838f4..89611ebd4 100644 --- a/deploy/csi-blob-node.yaml +++ b/deploy/csi-blob-node.yaml @@ -55,7 +55,7 @@ spec: - name: INSTALL_BLOBFUSE_PROXY value: "true" - name: INSTALL_BLOBFUSE - value: "true" + value: "false" - name: BLOBFUSE_VERSION value: "1.4.5" - name: INSTALL_BLOBFUSE2 diff --git a/pkg/blobfuse-proxy/init.sh b/pkg/blobfuse-proxy/init.sh index c0cefe953..003d3b7e9 100755 --- a/pkg/blobfuse-proxy/init.sh +++ b/pkg/blobfuse-proxy/init.sh @@ -20,6 +20,7 @@ INSTALL_BLOBFUSE_PROXY=${INSTALL_BLOBFUSE_PROXY:-true} DISABLE_UPDATEDB=${DISABLE_UPDATEDB:-true} SET_MAX_OPEN_FILE_NUM=${SET_MAX_OPEN_FILE_NUM:-true} SET_READ_AHEAD_SIZE=${SET_READ_AHEAD_SIZE:-true} +MIGRATE_K8S_REPO=${MIGRATE_K8S_REPO:-false} READ_AHEAD_KB=${READ_AHEAD_KB:-15380} KUBELET_PATH=${KUBELET_PATH:-/var/lib/kubelet} if [ "$KUBELET_PATH" != "/var/lib/kubelet" ];then diff --git a/pkg/blobfuse-proxy/install-proxy.sh b/pkg/blobfuse-proxy/install-proxy.sh index fb2559c11..12b871acf 100644 --- a/pkg/blobfuse-proxy/install-proxy.sh +++ b/pkg/blobfuse-proxy/install-proxy.sh @@ -33,6 +33,14 @@ then else cp /blobfuse-proxy/packages-microsoft-prod-22.04.deb /host/etc/packages-microsoft-prod.deb fi + + if [ "${MIGRATE_K8S_REPO}" = "true" ] + then + # https://kubernetes.io/blog/2023/08/15/pkgs-k8s-io-introduction/#how-to-migrate + echo "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.30/deb/ /" | tee /host/etc/apt/sources.list.d/kubernetes.list + $HOST_CMD curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.30/deb/Release.key | $HOST_CMD gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg + fi + # when running dpkg -i /etc/packages-microsoft-prod.deb, need to enter y to continue. # refer to https://stackoverflow.com/questions/45349571/how-to-install-deb-with-dpkg-non-interactively yes | $HOST_CMD dpkg -i /etc/packages-microsoft-prod.deb && $HOST_CMD apt update