Я прочитал документы go help gopath
и по-прежнему невероятно смущен, но нашел этот маленький самородок с другой страницы go doc:
Переменная среды GOPATH указывает местоположение вашей рабочей области. Это, скорее всего, единственная переменная среды, которую вам нужно установить при разработке кода Go.
Когда вы используете службу с type: ClusterIP
, она имеет только IP-адрес кластера и не имеет внешнего IP-адреса <none>
.
ExternalIP
- это просто конечная точка, через которую можно получить доступ к службам извне кластера, поэтому к службе типа ClusterIP
с ExternalIP
можно по-прежнему обращаться внутри кластера, используя его DNS-имя service.namespace, но теперь к нему также можно получить доступ со своей внешней конечной точки. Например, вы можете установить ExternalIP
в качестве IP-адреса одного из ваших узлов k8s или создать вход в ваш кластер на этом IP-адресе.
ClusterIP является типом службы по умолчанию в Kubernetes, который позволяет вам подключаться только к в пределах кластера.
Если тип вашей службы установлен как LoadBalancer или NodePort , автоматически создается ClusterIP
и служба LoadBalancer
или NodePort
будет направлять на это [113 ] IP-адрес.
Новые внешние IP-адреса назначаются только с типом LoadBalancer
.
Вы также можете использовать внешние IP-адреса узла, когда вы установите свой сервис как NodePort
. Но в этом случае вам понадобятся дополнительные правила брандмауэра для ваших узлов, чтобы разрешить входящий трафик для ваших открытых портов узла.
ClusterIP - это уникальный IP-адрес, предоставляемый из пула IP службе, и для доступа к модулям этого кластера службы IP-адрес может использоваться только внутри кластера. IP-адрес кластера является типом службы по умолчанию в kubernetes.
kubectl expose deployment nginx --port=80 --target-port=80 --type=LoadBalancer
В приведенном выше примере будет создан сервис с внешним IP и кластерным IP. В случае loadbalancer, услуги нодпорта, услуга может быть доступна из других кластеров через externalIP