mirror of https://github.com/kubernetes/kops.git
Add fixedip to local kubeconfig if there is no loadbalancer and master topology is private
This commit is contained in:
parent
40b92e7d29
commit
3c0d0cf690
|
@ -690,14 +690,26 @@ func getApiIngressStatus(c OpenstackCloud, cluster *kops.Cluster) ([]kops.ApiIng
|
|||
if ok && val == cluster.Name && ok2 {
|
||||
role, success := kops.ParseInstanceGroupRole(val2, false)
|
||||
if success && role == kops.InstanceGroupRoleMaster {
|
||||
ips, err := c.ListServerFloatingIPs(instance.ID)
|
||||
if err != nil {
|
||||
return ingresses, err
|
||||
}
|
||||
for _, ip := range ips {
|
||||
if cluster.Spec.Topology != nil && cluster.Spec.Topology.Masters == kops.TopologyPrivate {
|
||||
ifName := instance.Metadata[TagKopsNetwork]
|
||||
address, err := GetServerFixedIP(&instance, ifName)
|
||||
if err != nil {
|
||||
return ingresses, fmt.Errorf("failed to get interface address: %v", err)
|
||||
}
|
||||
ingresses = append(ingresses, kops.ApiIngressStatus{
|
||||
IP: fi.StringValue(ip),
|
||||
IP: address,
|
||||
})
|
||||
|
||||
} else {
|
||||
ips, err := c.ListServerFloatingIPs(instance.ID)
|
||||
if err != nil {
|
||||
return ingresses, err
|
||||
}
|
||||
for _, ip := range ips {
|
||||
ingresses = append(ingresses, kops.ApiIngressStatus{
|
||||
IP: fi.StringValue(ip),
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue