fix: getAPIEndpoints() should return public_url (#12852)

fixes #12850
This commit is contained in:
Harshavardhana 2021-08-02 21:50:20 -07:00 committed by GitHub
parent ea64a9263c
commit 9371852c7d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 16 additions and 8 deletions

View File

@ -2316,12 +2316,13 @@ func createHostAnonymizerForFSMode() map[string]string {
apiEndpoints := getAPIEndpoints()
for _, ep := range apiEndpoints {
if len(ep) > 0 {
if url, err := xnet.ParseHTTPURL(ep); err == nil {
// In FS mode the drive names don't include the host.
// So mapping just the host should be sufficient.
hostAnonymizer[url.Host] = "server1"
}
if len(ep) == 0 {
continue
}
if url, err := xnet.ParseHTTPURL(ep); err == nil {
// In FS mode the drive names don't include the host.
// So mapping just the host should be sufficient.
hostAnonymizer[url.Host] = "server1"
}
}
return hostAnonymizer

View File

@ -177,6 +177,9 @@ func getConsoleEndpoints() (consoleEndpoints []string) {
}
func getAPIEndpoints() (apiEndpoints []string) {
if globalMinioEndpoint != "" {
return []string{globalMinioEndpoint}
}
var ipList []string
if globalMinioHost == "" {
ipList = sortIPs(mustGetLocalIP4().ToSlice())

View File

@ -1461,7 +1461,7 @@ func (sys *NotificationSys) GetClusterMetrics(ctx context.Context) chan Metric {
// Speedtest run GET/PUT tests at input concurrency for requested object size,
// optionally you can extend the tests longer with time.Duration.
func (sys *NotificationSys) Speedtest(ctx context.Context, size int, concurrent int, duration time.Duration) []madmin.SpeedtestResult {
results := make([]madmin.SpeedtestResult, len(sys.peerClients)+1)
results := make([]madmin.SpeedtestResult, len(sys.allPeerClients))
scheme := "http"
if globalIsTLS {
@ -1494,7 +1494,11 @@ func (sys *NotificationSys) Speedtest(ctx context.Context, size int, concurrent
go func() {
defer wg.Done()
r, err := selfSpeedtest(ctx, size, concurrent, duration)
results[len(results)-1].Endpoint = globalMinioEndpoint
u := &url.URL{
Scheme: scheme,
Host: globalLocalNodeName,
}
results[len(results)-1].Endpoint = u.String()
results[len(results)-1].Err = err
if err == nil {
results[len(results)-1].Uploads = r.Uploads