Хубер Kubernetes с диаграммами Gitlab в AWS - как настроить тип сервиса - PullRequest
1 голос
/ 18 июня 2019

Я новичок в Kubernetes и AWS, относись ко мне как к новичку.

У меня в AWS работает Kubernetes со следующими именами:

>  kube kubectl get pods --all-namespaces
NAMESPACE       NAME                                                                READY   STATUS    RESTARTS   AGE
ingress-nginx   nginx-ingress-controller-76c86d76c4-s6kvk                           1/1     Running   0          28h
kube-system     calico-node-xxzzz                                                   1/1     Running   0          28h
kube-system     dns-controller-5czzzzzzfbd-t7pf8                                    1/1     Running   0          28h
kube-system     etcd-manager-main-ip-11-11-11-11.eu-west-1.compute.internal         1/1     Running   0          28h
kube-system     kube-apiserver-ip-11-11-11-11.eu-west-1.compute.internal            1/1     Running   2          28h
kube-system     kube-controller-manager-ip-11-11-11-11.eu-west-1.compute.internal   1/1     Running   0          28h
kube-system     kube-dns-111116bb49-pbt2l                                           3/3     Running   0          28h
kube-system     kube-dns-autoscaler-11111111-x8                                     1/1     Running   0          28h
kube-system     kube-proxy-ip-11-11-11-11.eu-west-1.compute.internal                1/1     Running   0          28h
kube-system     kube-scheduler-ip-10-84-37-60.eu-west-1.compute.internal            1/1     Running   0          28h

Моя цель - установить Gitlab с помощью Charts в Kubernetes. Тем не менее, проблема, с которой я сталкиваюсь, заключается в маршрутизации. Здесь здесь указано, что мне нужно установить в файле serviceType .

Но как я могу определить правильное значение, указанное в этом файле? Нужно ли мне создавать loadbalancer в AWS? Или он уже где-то есть, например такое контроллер входа nginx?

Я могу установить Gitlab через helm

helm upgrade --install gitlab gitlab/gitlab \
  --timeout 600 \
  --set global.hosts.domain=my_domain.com \
  --set global.hosts.externalIP=1.2.3.4 \
  --set certmanager-issuer.email=an_email@email.com \
  --namespace=gitlab \
  --debug

Однако домен, который я предоставил, недоступен через мой браузер, потому что я не предоставил serviceType для loadbalancer. Кроме того, я не уверен, что мой внешний IP-адрес правильный.

1 Ответ

2 голосов
/ 19 июня 2019

У вас уже запущен входной контроллер nginx.Работает?Если это так, вы, вероятно, должны использовать это вместо нового балансировщика нагрузки.

1) Настройте свой домен так, чтобы он указывал на ваш входной балансировщик нагрузки.Если вы используете route53, вы можете установить подстановочный знак A Record, чтобы * .mydomain.com перешел к балансировщику нагрузки.

2) Добавьте соответствующий входной раздел в ваш values.yaml: https://gitlab.doc.ic.ac.uk/help/install/kubernetes/gitlab_chart.md#ingress-routing

3) Используйте serviceType = ClusterIP.

Если вы не можете или не хотите использовать этот Ingress Controller, тогда да, serviceType = LoadBalancer подходит.Это создаст AWS ELB для вас.Вам нужно добавить запись A для вашего домена, указывающую на этот ELB.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...