Merge remote-tracking branch 'origin/master' into helm
# Conflicts: # README.md
This commit is contained in:
commit
1e8ca97f81
@ -45,7 +45,8 @@ $ kubectl delete -f deploy/kubernetes/sample-busybox-pod.yaml
|
|||||||
$ kubectl delete -f deploy/kubernetes/sample-seaweedfs-pvc.yaml
|
$ kubectl delete -f deploy/kubernetes/sample-seaweedfs-pvc.yaml
|
||||||
$ kubectl delete -f deploy/kubernetes/seaweedfs-csi.yaml
|
$ kubectl delete -f deploy/kubernetes/seaweedfs-csi.yaml
|
||||||
```
|
```
|
||||||
## Install by helm chart
|
|
||||||
|
# Deployment by helm chart
|
||||||
|
|
||||||
1. Clone project
|
1. Clone project
|
||||||
```bash
|
```bash
|
||||||
@ -53,7 +54,7 @@ git clone https://github.com/seaweedfs/seaweedfs-csi-driver.git
|
|||||||
```
|
```
|
||||||
2. Install
|
2. Install
|
||||||
```bash
|
```bash
|
||||||
helm install --set seaweedfsFiller=<url to filer host:port> seaweedfs-csi-driver ./seaweedfs-csi-driver/deploy/helm/seaweedfs-csi-driver
|
helm install --set seaweedfsFiler=<filerHost:port> seaweedfs-csi-driver ./seaweedfs-csi-driver/deploy/helm/seaweedfs-csi-driver
|
||||||
```
|
```
|
||||||
|
|
||||||
3. Clean up
|
3. Clean up
|
||||||
|
|||||||
@ -60,7 +60,7 @@ spec:
|
|||||||
- name: CSI_ENDPOINT
|
- name: CSI_ENDPOINT
|
||||||
value: unix:///csi/csi.sock
|
value: unix:///csi/csi.sock
|
||||||
- name: SEAWEEDFS_FILER
|
- name: SEAWEEDFS_FILER
|
||||||
value: {{ .Values.seaweedfsFiller | quote }}
|
value: {{ .Values.seaweedfsFiler | quote }}
|
||||||
- name: NODE_ID
|
- name: NODE_ID
|
||||||
valueFrom:
|
valueFrom:
|
||||||
fieldRef:
|
fieldRef:
|
||||||
|
|||||||
@ -63,7 +63,7 @@ spec:
|
|||||||
- name: CSI_ENDPOINT
|
- name: CSI_ENDPOINT
|
||||||
value: unix:///var/lib/csi/sockets/pluginproxy/csi.sock
|
value: unix:///var/lib/csi/sockets/pluginproxy/csi.sock
|
||||||
- name: SEAWEEDFS_FILER
|
- name: SEAWEEDFS_FILER
|
||||||
value: {{ .Values.seaweedfsFiller | quote }}
|
value: {{ .Values.seaweedfsFiler | quote }}
|
||||||
- name: NODE_ID
|
- name: NODE_ID
|
||||||
valueFrom:
|
valueFrom:
|
||||||
fieldRef:
|
fieldRef:
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
# host and port of your SeaweedFs filer
|
# host and port of your SeaweedFs filer
|
||||||
seaweedfsFiller: ""
|
seaweedfsFiler: ""
|
||||||
storageClassName: seaweedfs-storage
|
storageClassName: seaweedfs-storage
|
||||||
isDefaultStorageClass: false
|
isDefaultStorageClass: false
|
||||||
tlsSecret: ""
|
tlsSecret: ""
|
||||||
|
|||||||
@ -4,8 +4,9 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/chrislusf/seaweedfs/weed/glog"
|
|
||||||
"os/exec"
|
"os/exec"
|
||||||
|
|
||||||
|
"github.com/chrislusf/seaweedfs/weed/glog"
|
||||||
"k8s.io/utils/mount"
|
"k8s.io/utils/mount"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -19,8 +20,8 @@ type Mounter interface {
|
|||||||
Mount(target string) error
|
Mount(target string) error
|
||||||
}
|
}
|
||||||
|
|
||||||
func newMounter(bucketName string, driver *SeaweedFsDriver) (Mounter, error) {
|
func newMounter(bucketName string, driver *SeaweedFsDriver, volContext map[string]string) (Mounter, error) {
|
||||||
return newSeaweedFsMounter(bucketName, driver)
|
return newSeaweedFsMounter(bucketName, driver, volContext)
|
||||||
}
|
}
|
||||||
|
|
||||||
func fuseMount(path string, command string, args []string) error {
|
func fuseMount(path string, command string, args []string) error {
|
||||||
|
|||||||
@ -10,16 +10,18 @@ import (
|
|||||||
type seaweedFsMounter struct {
|
type seaweedFsMounter struct {
|
||||||
bucketName string
|
bucketName string
|
||||||
driver *SeaweedFsDriver
|
driver *SeaweedFsDriver
|
||||||
|
volContext map[string]string
|
||||||
}
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
seaweedFsCmd = "weed"
|
seaweedFsCmd = "weed"
|
||||||
)
|
)
|
||||||
|
|
||||||
func newSeaweedFsMounter(bucketName string, driver *SeaweedFsDriver) (Mounter, error) {
|
func newSeaweedFsMounter(bucketName string, driver *SeaweedFsDriver, volContext map[string]string) (Mounter, error) {
|
||||||
return &seaweedFsMounter{
|
return &seaweedFsMounter{
|
||||||
bucketName: bucketName,
|
bucketName: bucketName,
|
||||||
driver: driver,
|
driver: driver,
|
||||||
|
volContext: volContext,
|
||||||
}, nil
|
}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -35,6 +37,16 @@ func (seaweedFs *seaweedFsMounter) Mount(target string) error {
|
|||||||
fmt.Sprintf("-filer=%s", seaweedFs.driver.filer),
|
fmt.Sprintf("-filer=%s", seaweedFs.driver.filer),
|
||||||
fmt.Sprintf("-filer.path=/buckets/%s", seaweedFs.bucketName),
|
fmt.Sprintf("-filer.path=/buckets/%s", seaweedFs.bucketName),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for arg, value := range seaweedFs.volContext {
|
||||||
|
switch arg {
|
||||||
|
case "map.uid":
|
||||||
|
args = append(args, fmt.Sprintf("-map.uid=%s", value))
|
||||||
|
case "map.gid":
|
||||||
|
args = append(args, fmt.Sprintf("-map.gid=%s", value))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if seaweedFs.driver.ConcurrentWriters > 0 {
|
if seaweedFs.driver.ConcurrentWriters > 0 {
|
||||||
args = append(args, fmt.Sprintf("-concurrentWriters=%d", seaweedFs.driver.ConcurrentWriters))
|
args = append(args, fmt.Sprintf("-concurrentWriters=%d", seaweedFs.driver.ConcurrentWriters))
|
||||||
}
|
}
|
||||||
|
|||||||
@ -55,7 +55,9 @@ func (ns *NodeServer) NodePublishVolume(ctx context.Context, req *csi.NodePublis
|
|||||||
mo = append(mo, "ro")
|
mo = append(mo, "ro")
|
||||||
}
|
}
|
||||||
|
|
||||||
mounter, err := newMounter(volumeID, ns.Driver)
|
volContext := req.GetVolumeContext()
|
||||||
|
|
||||||
|
mounter, err := newMounter(volumeID, ns.Driver, volContext)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user