From d04d4be3230beefed862196272afa9468751c61f Mon Sep 17 00:00:00 2001 From: andyzhangx Date: Sun, 10 Dec 2023 02:42:27 +0000 Subject: [PATCH] feat: add hpc chart support chore: set hostNetwork: true for host process deployment --- Makefile | 18 +++ charts/README.md | 1 + charts/latest/csi-driver-smb-v0.0.0.tgz | Bin 4788 -> 5088 bytes .../csi-smb-node-windows-hostprocess.yaml | 120 ++++++++++++++++++ .../templates/csi-smb-node-windows.yaml | 2 +- charts/latest/csi-driver-smb/values.yaml | 5 +- 6 files changed, 143 insertions(+), 3 deletions(-) create mode 100644 charts/latest/csi-driver-smb/templates/csi-smb-node-windows-hostprocess.yaml diff --git a/Makefile b/Makefile index d64ff95aaf1..074b233175f 100644 --- a/Makefile +++ b/Makefile @@ -98,11 +98,16 @@ e2e-test: .PHONY: e2e-bootstrap e2e-bootstrap: install-helm +ifdef WINDOWS_USE_HOST_PROCESS_CONTAINERS + (docker pull $(IMAGE_TAG) && docker pull $(CSI_IMAGEIMAGE_TAG_TAG)-windows-hp) || make container-all push-manifest +else docker pull $(IMAGE_TAG) || make container-all push-manifest +endif ifdef TEST_WINDOWS helm upgrade csi-driver-smb charts/$(VERSION)/csi-driver-smb --namespace kube-system --wait --timeout=15m -v=5 --debug --install \ ${E2E_HELM_OPTIONS} \ --set windows.enabled=true \ + --set windows.useHostProcessContainers=${WINDOWS_USE_HOST_PROCESS_CONTAINERS} \ --set linux.enabled=false \ --set controller.replicas=1 \ --set controller.logLevel=6 \ @@ -162,6 +167,19 @@ container-windows: --build-arg BASE_IMAGE=nanoserver:$(OSVERSION) \ -f ./cmd/smbplugin/Dockerfile.Windows . +# workaround: only build hostprocess image once +ifdef WINDOWS_USE_HOST_PROCESS_CONTAINERS +ifeq ($(OSVERSION),ltsc2022) + $(MAKE) container-windows-hostprocess +endif +endif + +# Set --provenance=false to not generate the provenance (which is what causes the multi-platform index to be generated, even for a single platform). +.PHONY: container-windows-hostprocess +container-windows-hostprocess: + docker buildx build --pull --output=type=$(OUTPUT_TYPE) --platform="windows/$(ARCH)" --provenance=false --sbom=false \ + -t $(IMAGE_TAG)-windows-hp -f ./cmd/smbplugin/Dockerfile.Windows.hostprocess . + .PHONY: container-all container-all: smb-windows docker buildx rm container-builder || true diff --git a/charts/README.md b/charts/README.md index a01fa5173ec..4d441b03ace 100644 --- a/charts/README.md +++ b/charts/README.md @@ -112,6 +112,7 @@ The following table lists the configurable parameters of the latest SMB CSI Driv | `linux.resources.smb.requests.cpu` | smb-csi-driver cpu requests limits | `10m` | | `linux.resources.smb.requests.memory` | smb-csi-driver memory requests limits | `20Mi` | | `windows.enabled` | whether enable windows feature | `false` | +| `windows.useHostProcessContainers` | whether deploy driver daemonset with host process containers on windows | `false` | | `windows.dsName` | name of driver daemonset on windows | `csi-smb-node-win` | | `windows.removeSMBMappingDuringUnmount` | remove SMBMapping during unmount on Windows node windows | `true` | | `windows.resources.livenessProbe.limits.memory` | liveness-probe memory limits | `200Mi` | diff --git a/charts/latest/csi-driver-smb-v0.0.0.tgz b/charts/latest/csi-driver-smb-v0.0.0.tgz index 74e6d05cc257a790c725700e56a4f85c1da29e83..57717938b506a135b7463f008b5c63e1e1146d43 100644 GIT binary patch delta 5074 zcmV;@6D{ntCEzEJJb(Ld<2Leme>SlH1K};u_P#5>^4Ok${IHv(ZP4a{INL*UJ}hWy zZ1cO4sFIWuUz-2@1Cn}+vgJpzyH^v~jV+Ngak+#}wXd@0HQ9D5P)9V>w4^55_EdPimX9~`~i%l}Ih z;^QgUEriCH!+$M=)J6=ZgbTLleEN}h2<>t*wYZ=RPoaen_s6n2LJUI6iJ)v@qp8DW z%}+maiwis@!PLsN>T-V^deM{ws-eJB8#y?@Y@xn~k>}k|k2nh(T}-a1xM9E{5G^EC z$ql1(A{7X*D&8es?MluLv&I?f`9bHnGgyV%BXbCV^M4yg$FLseq-iLd=I{pXTmnhtnk8TgUHNCH-+=ldqYn$ie9z(uPj$bXZ?3v=PXd?T^Mw8n ziyYd1r@xBwEe>o>9C+tAGzx^o?J&RsY$R9&=r#J+3Ze}B1+bq8Gi-y zXE4E$C*IVxD!ynTe0XST zZaf@7_R6Ev-(U`&jgDFf-Bb371k+2&5NCwhsNEHQ*jA+AG-3{LjoPGKWFLJZc=AmS z#D7;Tf6(h)lK3fuKO^AzT22_*sNeG|%?3#;!`SPQ^|wTpD(QL@gRM~D$%F(%ENt}n z6idSpJa7bM@gqS!U|3p>F<1+If`yIRN>&*4pp$72sY`q{;q4eB4P|Qyt$qGLxZueP zm`uPCHfmqdp)&(F@}S)aek>KCF|BheN?6GT(}r97>JGj8aDVs9_3g#oAEVLmkKx_bAmsfAk#l1sC93j$V8$hY>*> z>`ClHa3Wb-Z4=-@psDPs95@X_%0wh5S&oWDfvTfeNit_Z14gMp~`PdJ*!>dA%BqYF^#U1{f7A$D4=JBpkcIG@U`wf+`ZM1TAZ3O&Faq_(nK zvHj)<4_TI6_jrgMIC*?Tom)`#I#hLM7V7zV1@kmkB<8#`9D4!9PH))CCcMt_aA6Zd|O%2(oT>@ z!ig`*;>^HC|L8tFwSQWw+WA9>16Lc)Qpo5;eRfpLSk-%cw2%uE5&&v*f83GP+Q`b@ zNQ(n?bd*^MYUg(yagsH!=fD_o0sSS7?!ZCE2kIm7htXt09#GrLfI;A@&$?@|F*>0P z&A{`s-4`XSCxy}Fa(Y?(M>AG*v7{Jo`P$Q7k{Nz!`N9}*D&4-JU*gC z3iCwl)V50ltO}c^?YlIN8#j|w>F`-sO;(|5JQyo`lC=CwIgh0}ZvVeFYJY6Uup~9f zB%Qkajsq!TBSHVbzGtrS7b1ZRfj|RAehp5}rg37!$n&Hj%RuPqb+XNwacX6Qp{}1X zORl#n;B}K#l7DE+&urC*;b00&+aYAdu6Iei`~b`!Wp_Tez?Vv`{x9ru<<@fZpzsR) zf6#kd(*J|rVZXQ6|1VKW(vi${;%(`~j+UpVSFKMZaBXy^yd6UjuUh%s5gdlRJMX`0 z`5>^11-4(MaVaSrb?~)Q1xfh2y0ZUt8Kgc$Wa5==j+ck#2T%RSe14XafSTzT#XV)8iZ}{RyCyWt zH%OSg34tn*6_X~O#vBb(=i{2RH@L=f)T+GAQ7M6-6il8o3k!4&duEG#Zc?pWm|KzU zRkF6vFu!4-EW~cRxMF8C&hi%ua)6Ldfzc*Wp?_(T5`&(eD(}o-?fQBGPo?=36WQa? zv=>`qDokgJ=q8tbQ4c9g(kQTpCBJ;`g==4SQkL3(#blC=4Zs!oe}mrJqq6;X)H~YS ze=kui%SsG8*2xM(uW)tLpi- zj4Yqs*8pW9)oLl`&8^s$vE!v3NuDjrLD;G^mKz&ovLumptWn%+8Ma#MFw0t&deu;` zv(wWA>}JM#E+w;Q@$SH4uZ3;2rt`I9n>ug2H?-Y%gtI8s2w^tOkzA9#ZOu;x?SINc zOHKrKT?U+=eEa>ov$Nat;qV7TMGvqG%z`+}V|9%NaXbSMcn}O*deOF$1@lB|c!zXGp^c>7D*tsjbv~`T>&a8Uu=mLUnyXxFm0et!0F`HUgT+kuqtwGV z-3T+)z>zZmdEJ1vrkvKWvl?pl~ z*a|5VCuR$$*xM|HxY$t*ZGJLXORkErHxa8Pf+I`4)NLSEh2Fl1RB?aYM1Pdzg1l1! zssOAqv8=M8uxtXoEEubKE3r~c9A#c1t$CdY#EJDaOIF~9lmz1B+wV_@7az~B&Tg(R zuI@~WXngV|6<&4fwbQfBXmjUe%$T)vCe3n*A?T;c#?a6#J_Tbb;gCX8Gwjl7nG!Im zGAcw&Z9aX-U^|VHEQ`9ve}7BwLPiC3sAr?Q)0<7YQ6#Ssb6lk%W@8?=E)z_=h{4^A z0iRLN)kie4G7}>F8A_@Gp-^kC8Um=Xncm6$FTvg!cz7`chXyXU(Lt|JCtefM*Ztz_ z5E!AZxpA%am1lpm2^Iz9!R~hJ7Okb4Gh}2=JecN=pk$?yT74!9t$)9pLA0kiAmCyTebl`M&p%Z+U2Lg(AN$R%8LSSch3x7t0<&TGj)V&BM z^g6iAozVK+B>7vFm4EV|oX2zNJ-23*i%@4(tf3KB#Q*yJ!?&gQ-@(B?|LbK+yz|6? zTggs|Q@<+DYY)pkJ(Y9B){i76NYd=1X9^^ia>5KLVVh=z)g^>&5^yw8={g>~3%huoUc^z?8MC<$H>ilsI^?e+; z6_;E{?}70dcwPq{pz6wUDvz$<-ntOrBlZ8?A_R0sm=gE}vg8IGo!TRHL4dj;Ah{x7 zG}5l?zNwHgx_z2lg@}*0EFV z?N?>)GKXD?(T!>-rsV&v)Qwp!MXREuAr`ZfZ@)jgz4-n7_T%mO&mV`^r@wx@d3X0q z6@unbBY>OVKKy)fr2w2=-2Sjrcb$|NhZFUmDbA$9nSX|025Yb^V%p@-6^%x1`JenF zWv_{RF702DLc8zT$K>L*(a4DZ*AMT{KVDs*oqxP~cX@8Y{}ZEr*#(Tygn;MX!le2p zey81z(i&5ua+TaPq04HmY?7}!O}*S3nb0hAMH*n&M$W#fsMlAu?k8CV%qsu-PWTtNLJDrK0QsaZkSez9@F(iYk65cW2fVgr(i%78h9Xe6Qk*_d2Fq z_spZy*9|EziLWmlvRrlJkQM1GhfWNtX6YS8+lAlsggk5DZ6E&H?Rxqg>qY5G=W2xp z3(C4nfGHaF1)qA|m!z!a|J^VOw8H;;bkOgW&wqcsJs9l$zb{c5_bv&>@74?aIS(NukYCn&yUh1iN=D9EP0iAOPVG@$0#NLMaY-Xz-af~9Cppfm z_IjIUIj^-Ts(JvQcO$T??CEvQ^=4VldpGy;p1p*d`^)oEFL43DgEp)3#prs{{iy$? zihm9~fT6**?)3zUPhB`MgDNd1HI9bk<&K8W;!60^UGx7FuJP5!RC2~cv9HT*kED5l z8&?6zSKj;Y|2C&q_Kx?x<2_gQj`#l|$NTC9Cb3(VE)GkU_@^gx=z7bAE4wdp!mW^m zU{y$v12h_SMzYc<*DO8JQ*K#BAtiqk9DlN1smW_3X23y-14ozv;(~Zy;;V4uOGo_> z3o<4i5sNpn#o{{#DB|FjfYHEP$VD;zb%`0~F+}-j3<9J0!q(*e+|%I&%6=%V30)}jDIP=?TvxO*lE*{xW3wNhXL_;N&lK7*A;5$8Tz7c z&f7M&-Q;SEePsLVzP)S9xc19Lp0%uf&fB&2vFk4_c5S|mvQlmPgH%O^e~GZQq4F0K zvR>t)KWgHH-{|ViEko2=hh*M^ZtOki)_M;%yZ>{yVc-pJE8HXq+}$VyTz^)}`vCAh z0KE1+hjlSvBh+06f%n1LuQxcmdX4x}1GC$kq-gp5hA(_=VP#o0E;5XUc&Zi`8@(s4 za={ZCV9(eE)kf)$weB}8FGp(y{u)Lh*0&-Wg&-PC!scDvs0TH3ur;C5u+?VWs+ctU z;LR6NYU4j_j2$Zu0zGT|r+;^F`1Wlj{&TSZ{r49s71wO>hijBDD;X_c6q()(IV?0; z9t~RYyEwZH4LwJHGq3zEd;0j8>>C(TuYnhlC9H z{-cDuDzxuO;F4h4Tubbm3wi1HnXGY)s&Vi=8vlQAL@eb-<(k=l%@=`Y%2g_(c(+$o obepR;luqIjGUqh*=U%?|WncDXUp6lP7XSeN|4>hMQ~;y^0Q~d~a{vGU delta 4772 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 diff --git a/charts/latest/csi-driver-smb/templates/csi-smb-node-windows-hostprocess.yaml b/charts/latest/csi-driver-smb/templates/csi-smb-node-windows-hostprocess.yaml new file mode 100644 index 00000000000..a6ccb4f40a1 --- /dev/null +++ b/charts/latest/csi-driver-smb/templates/csi-smb-node-windows-hostprocess.yaml @@ -0,0 +1,120 @@ +{{- if and .Values.windows.enabled .Values.windows.useHostProcessContainers }} +kind: DaemonSet +apiVersion: apps/v1 +metadata: + name: {{ .Values.windows.dsName }} + namespace: {{ .Release.Namespace }} +{{ include "smb.labels" . | indent 2 }} +spec: + updateStrategy: + rollingUpdate: + maxUnavailable: {{ .Values.node.maxUnavailable }} + type: RollingUpdate + selector: + matchLabels: + app: {{ .Values.windows.dsName }} + template: + metadata: +{{ include "smb.labels" . | indent 6 }} + app: {{ .Values.windows.dsName }} + spec: +{{- with .Values.windows.tolerations }} + tolerations: +{{ toYaml . | indent 8 }} +{{- end }} + nodeSelector: + kubernetes.io/os: windows +{{- with .Values.node.nodeSelector }} +{{ toYaml . | indent 8 }} +{{- end }} +{{- with .Values.node.affinity }} + affinity: +{{ toYaml . | indent 8 }} +{{- end }} + priorityClassName: {{ .Values.priorityClassName | quote }} + securityContext: + seccompProfile: + type: RuntimeDefault + windowsOptions: + hostProcess: true + runAsUserName: "NT AUTHORITY\\SYSTEM" + hostNetwork: true + serviceAccountName: {{ .Values.serviceAccount.node }} + {{- include "smb.pullSecrets" . | indent 6 }} + initContainers: + - name: init +{{- if hasPrefix "/" .Values.image.smb.repository }} + image: "{{ .Values.image.baseRepo }}{{ .Values.image.smb.repository }}:{{ .Values.image.smb.tag }}-windows-hp" +{{- else }} + image: "{{ .Values.image.smb.repository }}:{{ .Values.image.smb.tag }}-windows-hp" +{{- end }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + command: + - "powershell.exe" + - "-c" + - "New-Item -ItemType Directory -Path C:\\var\\lib\\kubelet\\plugins\\{{ .Values.driver.name }}\\ -Force" + containers: + - name: node-driver-registrar +{{- if hasPrefix "/" .Values.image.nodeDriverRegistrar.repository }} + image: "{{ .Values.image.baseRepo }}{{ .Values.image.nodeDriverRegistrar.repository }}:{{ .Values.image.nodeDriverRegistrar.tag }}" +{{- else }} + image: "{{ .Values.image.nodeDriverRegistrar.repository }}:{{ .Values.image.nodeDriverRegistrar.tag }}" +{{- end }} + command: + - "csi-node-driver-registrar.exe" + args: + - --v=2 + - --csi-address=$(CSI_ENDPOINT) + - --kubelet-registration-path=$(DRIVER_REG_SOCK_PATH) + - --plugin-registration-path=$(PLUGIN_REG_DIR) + env: + - name: CSI_ENDPOINT + value: unix://C:\\csi\\csi.sock + - name: DRIVER_REG_SOCK_PATH + value: {{ .Values.windows.kubelet | replace "\\" "\\\\" }}\\plugins\\{{ .Values.driver.name }}\\csi.sock + - name: PLUGIN_REG_DIR + value: {{ .Values.windows.kubelet | replace "\\" "\\\\" }}\\plugins_registry\\ + - name: KUBE_NODE_NAME + valueFrom: + fieldRef: + fieldPath: spec.nodeName + imagePullPolicy: {{ .Values.image.nodeDriverRegistrar.pullPolicy }} + resources: {{- toYaml .Values.windows.resources.nodeDriverRegistrar | nindent 12 }} + - name: smb +{{- if hasPrefix "/" .Values.image.smb.repository }} + image: "{{ .Values.image.baseRepo }}{{ .Values.image.smb.repository }}:{{ .Values.image.smb.tag }}-windows-hp" +{{- else }} + image: "{{ .Values.image.smb.repository }}:{{ .Values.image.smb.tag }}-windows-hp" +{{- end }} + imagePullPolicy: {{ .Values.image.smb.pullPolicy }} + command: + - "smbplugin.exe" + args: + - "--v={{ .Values.node.logLevel }}" + - "--drivername={{ .Values.driver.name }}" + - --endpoint=$(CSI_ENDPOINT) + - --nodeid=$(KUBE_NODE_NAME) + - "--enable-get-volume-stats={{ .Values.feature.enableGetVolumeStats }}" + - "--remove-smb-mapping-during-unmount={{ .Values.windows.removeSMBMappingDuringUnmount }}" + ports: + - containerPort: {{ .Values.node.livenessProbe.healthPort }} + name: healthz + protocol: TCP + livenessProbe: + failureThreshold: 5 + httpGet: + path: /healthz + port: healthz + initialDelaySeconds: 30 + timeoutSeconds: 10 + periodSeconds: 30 + env: + - name: CSI_ENDPOINT + value: unix://C:\\csi\\csi.sock + - name: KUBE_NODE_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: spec.nodeName + resources: {{- toYaml .Values.windows.resources.smb | nindent 12 }} +{{- end -}} diff --git a/charts/latest/csi-driver-smb/templates/csi-smb-node-windows.yaml b/charts/latest/csi-driver-smb/templates/csi-smb-node-windows.yaml index b033b151c97..ad5663c6029 100755 --- a/charts/latest/csi-driver-smb/templates/csi-smb-node-windows.yaml +++ b/charts/latest/csi-driver-smb/templates/csi-smb-node-windows.yaml @@ -1,4 +1,4 @@ -{{- if .Values.windows.enabled}} +{{- if and .Values.windows.enabled (not .Values.windows.useHostProcessContainers) }} kind: DaemonSet apiVersion: apps/v1 metadata: diff --git a/charts/latest/csi-driver-smb/values.yaml b/charts/latest/csi-driver-smb/values.yaml index 35c35fd9054..9f288ffa9f5 100755 --- a/charts/latest/csi-driver-smb/values.yaml +++ b/charts/latest/csi-driver-smb/values.yaml @@ -115,7 +115,8 @@ linux: memory: 20Mi windows: - enabled: false # Unless you already had csi proxy installed, windows.csiproxy.enabled=true is required + enabled: false + useHostProcessContainers: false dsName: csi-smb-node-win # daemonset name kubelet: 'C:\var\lib\kubelet' removeSMBMappingDuringUnmount: true @@ -143,7 +144,7 @@ windows: cpu: 10m memory: 40Mi csiproxy: - enabled: false # required if windows.enabled is true, but may be installed manually also + enabled: false # set as false if csi-proxy is already installed on the node or useHostProcessContainers is true dsName: csi-proxy-win # daemonset name tolerations: {} affinity: {}