Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # patch kubernetes
- ```diff
- diff --git a/vendor/k8s.io/kubernetes/cmd/kube-controller-manager/app/plugins.go b/vendor/k8s.io/kubernetes/cmd/kube-controller-manager/app/plugins.go
- index 39659a8..1706400 100644
- --- a/vendor/k8s.io/kubernetes/cmd/kube-controller-manager/app/plugins.go
- +++ b/vendor/k8s.io/kubernetes/cmd/kube-controller-manager/app/plugins.go
- @@ -30,6 +30,7 @@ import (
- "k8s.io/kubernetes/pkg/volume/csi"
- "k8s.io/kubernetes/pkg/volume/flexvolume"
- "k8s.io/kubernetes/pkg/volume/host_path"
- + "k8s.io/kubernetes/pkg/volume/glusterfs"
- "k8s.io/kubernetes/pkg/volume/iscsi"
- "k8s.io/kubernetes/pkg/volume/local"
- "k8s.io/kubernetes/pkg/volume/nfs"
- @@ -104,6 +105,7 @@ func ProbeControllerVolumePlugins(config kubectrlmgrconfig.VolumeConfiguration)
- klog.Fatalf("Could not create NFS recycler pod from file %s: %+v", config.PersistentVolumeRecyclerConfiguration.PodTemplateFilePathNFS, err)
- }
- allPlugins = append(allPlugins, nfs.ProbeVolumePlugins(nfsConfig)...)
- + allPlugins = append(allPlugins, glusterfs.ProbeVolumePlugins()...)
- allPlugins = append(allPlugins, local.ProbeVolumePlugins()...)
- return allPlugins
- diff --git a/vendor/k8s.io/kubernetes/cmd/kubelet/app/plugins.go b/vendor/k8s.io/kubernetes/cmd/kubelet/app/plugins.go
- index d90911a..4dcb47c 100644
- --- a/vendor/k8s.io/kubernetes/cmd/kubelet/app/plugins.go
- +++ b/vendor/k8s.io/kubernetes/cmd/kubelet/app/plugins.go
- @@ -26,6 +26,7 @@ import (
- "k8s.io/kubernetes/pkg/volume/downwardapi"
- "k8s.io/kubernetes/pkg/volume/emptydir"
- "k8s.io/kubernetes/pkg/volume/flexvolume"
- + "k8s.io/kubernetes/pkg/volume/glusterfs"
- "k8s.io/kubernetes/pkg/volume/host_path"
- "k8s.io/kubernetes/pkg/volume/iscsi"
- "k8s.io/kubernetes/pkg/volume/local"
- @@ -52,6 +53,7 @@ func ProbeVolumePlugins() []volume.VolumePlugin {
- allPlugins = append(allPlugins, nfs.ProbeVolumePlugins(volume.VolumeConfig{})...)
- allPlugins = append(allPlugins, secret.ProbeVolumePlugins()...)
- allPlugins = append(allPlugins, iscsi.ProbeVolumePlugins()...)
- + allPlugins = append(allPlugins, glusterfs.ProbeVolumePlugins()...)
- allPlugins = append(allPlugins, downwardapi.ProbeVolumePlugins()...)
- allPlugins = append(allPlugins, configmap.ProbeVolumePlugins()...)
- allPlugins = append(allPlugins, projected.ProbeVolumePlugins()...)
- ```
- # add vendor dependency (manually)
- ```
- vendor/github.com/asaskevich/
- vendor/github.com/dgrijalva/
- vendor/github.com/go-ozzo/
- vendor/github.com/heketi/
- vendor/k8s.io/kubernetes/pkg/volume/glusterfs/
- ```
- # change container image base scratch to ubuntu (due to glusterfs not supported in alpine(musl))
- ```diff
- diff --git a/package/Dockerfile b/package/Dockerfile
- index 4d9a42e..e36b88b 100644
- --- a/package/Dockerfile
- +++ b/package/Dockerfile
- @@ -1,18 +1,21 @@
- -FROM alpine:3.10 as base
- -RUN apk add -U ca-certificates
- +FROM ubuntu:18.04
- ADD build/out/data.tar.gz /image
- -RUN mkdir -p /image/etc/ssl/certs /image/run /image/var/run /image/tmp /image/lib/modules /image/lib/firmware && \
- - cp /etc/ssl/certs/ca-certificates.crt /image/etc/ssl/certs/ca-certificates.crt
- -RUN cd image/bin && \
- +RUN chmod 1777 /tmp && \
- + cd image/bin && \
- rm -f k3s && \
- ln -s k3s-server k3s
- -
- -FROM scratch
- -COPY --from=base /image /
- -RUN chmod 1777 /tmp
- VOLUME /var/lib/rancher/k3s
- VOLUME /var/lib/cni
- VOLUME /var/log
- -ENV PATH="$PATH:/bin/aux"
- -ENTRYPOINT ["/bin/k3s"]
- +ENV PATH="$PATH:/image/bin:/bin/aux"
- +ENTRYPOINT ["/image/bin/k3s"]
- CMD ["agent"]
- +RUN apt-get update && apt-get -y install software-properties-common &&\
- + add-apt-repository ppa:gluster/glusterfs-4.1 &&\
- + apt-get update &&\
- + apt-get -y install glusterfs-client
- ```
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement