make elasticsearch discovery supports IPv6

This commit is contained in:
SataQiu 2019-11-24 09:26:59 +08:00
parent d87c921a51
commit bbbf396348
2 changed files with 7 additions and 1 deletions

View File

@ -23,6 +23,7 @@ go_library(
"//staging/src/k8s.io/client-go/tools/clientcmd:go_default_library",
"//staging/src/k8s.io/client-go/tools/clientcmd/api:go_default_library",
"//vendor/k8s.io/klog:go_default_library",
"//vendor/k8s.io/utils/net:go_default_library",
],
)

View File

@ -31,6 +31,7 @@ import (
"k8s.io/client-go/tools/clientcmd"
clientapi "k8s.io/client-go/tools/clientcmd/api"
"k8s.io/klog"
utilnet "k8s.io/utils/net"
)
func buildConfigFromEnvs(masterURL, kubeconfigPath string) (*restclient.Config, error) {
@ -52,7 +53,11 @@ func flattenSubsets(subsets []corev1.EndpointSubset) []string {
ips := []string{}
for _, ss := range subsets {
for _, addr := range ss.Addresses {
ips = append(ips, fmt.Sprintf(`"%s"`, addr.IP))
if utilnet.IsIPv6String(addr.IP) {
ips = append(ips, fmt.Sprintf(`"[%s]"`, addr.IP))
} else {
ips = append(ips, fmt.Sprintf(`"%s"`, addr.IP))
}
}
}
return ips