Example #1
0
  private void updateMemberContext(
      MemberContext memberContext, Pod pod, KubernetesCluster kubernetesCluster) {

    String memberPrivateIPAddress = pod.getStatus().getPodIP();
    String podHostIPAddress = pod.getStatus().getHostIP();
    String memberPublicIPAddress = podHostIPAddress;
    String kubernetesHostPublicIP =
        findKubernetesHostPublicIPAddress(kubernetesCluster, podHostIPAddress);

    if (StringUtils.isNotBlank(kubernetesHostPublicIP)) {
      memberPublicIPAddress = kubernetesHostPublicIP;
      if (log.isInfoEnabled()) {
        log.info(
            String.format(
                "Member public IP address set to kubernetes host public IP address:"
                    + "[pod-host-ip] %s [kubernetes-host-public-ip] %s",
                podHostIPAddress, kubernetesHostPublicIP));
      }
    }

    memberContext.setInstanceId(pod.getMetadata().getName());
    memberContext.setDefaultPrivateIP(memberPrivateIPAddress);
    memberContext.setPrivateIPs(new String[] {memberPrivateIPAddress});
    memberContext.setDefaultPublicIP(memberPublicIPAddress);
    memberContext.setPublicIPs(new String[] {memberPublicIPAddress});
    memberContext.setInitTime(memberContext.getInitTime());
    memberContext.setProperties(memberContext.getProperties());
  }