Browse Source
Feat: support username/password authentication for etcd filer store s… (#4477)
Feat: support username/password authentication for etcd filer store seaweedfs/seaweedfs#4262
Co-authored-by: Mesar Hameed <mesar.hameed@gmail.com>
pull/4484/head
Mesar Hameed
2 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with
9 additions and
2 deletions
-
weed/command/scaffold/filer.toml
-
weed/filer/etcd/etcd_store.go
|
|
@ -262,6 +262,8 @@ routeByLatency = false |
|
|
|
[etcd] |
|
|
|
enabled = false |
|
|
|
servers = "localhost:2379" |
|
|
|
username = "" |
|
|
|
password = "" |
|
|
|
timeout = "3s" |
|
|
|
|
|
|
|
[mongodb] |
|
|
|
|
|
@ -37,15 +37,18 @@ func (store *EtcdStore) Initialize(configuration weed_util.Configuration, prefix |
|
|
|
servers = "localhost:2379" |
|
|
|
} |
|
|
|
|
|
|
|
username := configuration.GetString(prefix + "username") |
|
|
|
password := configuration.GetString(prefix + "password") |
|
|
|
|
|
|
|
timeout := configuration.GetString(prefix + "timeout") |
|
|
|
if timeout == "" { |
|
|
|
timeout = "3s" |
|
|
|
} |
|
|
|
|
|
|
|
return store.initialize(servers, timeout) |
|
|
|
return store.initialize(servers, username, password, timeout) |
|
|
|
} |
|
|
|
|
|
|
|
func (store *EtcdStore) initialize(servers string, timeout string) (err error) { |
|
|
|
func (store *EtcdStore) initialize(servers string, username string, password string, timeout string) (err error) { |
|
|
|
glog.Infof("filer store etcd: %s", servers) |
|
|
|
|
|
|
|
to, err := time.ParseDuration(timeout) |
|
|
@ -55,6 +58,8 @@ func (store *EtcdStore) initialize(servers string, timeout string) (err error) { |
|
|
|
|
|
|
|
store.client, err = clientv3.New(clientv3.Config{ |
|
|
|
Endpoints: strings.Split(servers, ","), |
|
|
|
Username: username, |
|
|
|
Password: password, |
|
|
|
DialTimeout: to, |
|
|
|
}) |
|
|
|
if err != nil { |
|
|
|