Подтвердить что ты не робот

Кубернетес на облачном провайдере AWS

Я установил CentOS Atomic Host в качестве операционной системы для кубернетов на AWS.

Все работает отлично, но, похоже, я что-то пропустил.

Я не настроил поставщика облачных вычислений и не могу найти документацию по этому вопросу.

В этом вопросе я хочу знать: 1. Какие функции предоставляет облачный провайдер кубернетам? 2. Как настроить поставщика облачных сервисов AWS?

UPD 1: внешняя балансировка нагрузки не работает; Я еще не тестировал awsElasticBlockStore, но я также подозреваю, что он не работает.

UPD 2: Детали обслуживания:

$ kubectl get svc nginx-service-aws-lb -o yaml
apiVersion: v1
kind: Service
metadata:
  creationTimestamp: 2016-01-02T09:51:40Z
  name: nginx-service-aws-lb
  namespace: default
  resourceVersion: "74153"
  selfLink: /api/v1/namespaces/default/services/nginx-service-aws-lb
  uid: 6c28b718-b136-11e5-9bda-06c2feb29b0d
spec:
  clusterIP: 10.254.172.185
  ports:
  - name: http-proxy-protocol
    nodePort: 31385
    port: 8080
    protocol: TCP
    targetPort: 8080
  - name: https-proxy-protocol
    nodePort: 31370
    port: 8443
    protocol: TCP
    targetPort: 8443
  selector:
    app: nginx
  sessionAffinity: None
  type: LoadBalancer
status:
  loadBalancer: {}
4b9b3361

Ответ 1

Я не могу говорить с битами ProjectAtomic или с KUBERNETES_PROVIDER env-var, так как мой опыт был связан с устройством обеспечения CoreOS. Я расскажу о своих переживаниях и посмотрю, поможет ли это вам немного углубиться в вашу настройку.

Прежде всего, абсолютно необходимо, чтобы контроллер EC2 и рабочие машины EC2 имели правильную apiserver и controller-manager имеет аргумент, указывающий на файл конфигурации облачного облака, который, к сожалению, не документирован нигде, кроме источника. Это поле Zone, по моему опыту, необязательно (точно так же, как говорится в комментариях). Тем не менее, он видел, что KubernetesClusterTag заставлял меня следить за этим полем в коде, чтобы увидеть, что он делает.

Если ваш опыт не похож на мой, вы увидите в журналах докеров controller-manager кучу сообщений об ошибках о том, как он создал ELB, но не смог найти подсетей для присоединения к нему; (что бит "docker logs" предполагает, конечно, что ProjectAtomic также использует докер для запуска демонов Kubernetes).

Как только я привязал a Tag с именем KubernetesCluster и установил каждый экземпляр Tag в ту же строку (это может быть что угодно, AFAIK), тогда aws_loadbalancer смог найти подсеть в VPC и он привязал Узлы к ELB, и все было круто - за исключением того, что часть об этом может только создать Интернет, стоящий перед ELB, прямо сейчас.: - (

Просто для ясности: aws.cfg содержит поле с именем KubernetesClusterTag, которое позволяет переопределить Tag, который будет искать Kubernetes; без любого значения в этом файле, Kuberenetes будет использовать имя Tag KubernetesCluster.

Надеюсь, это поможет вам, и я надеюсь, что это поможет другим, потому что, как только Кубернеш встает, это потрясающе.

Ответ 2

  • Что предоставляет облачный провайдер для кубернетов?

Некоторые функции, которые я знаю: внешний loadbalancer, постоянные тома.

  1. Как настроить поставщика облачных сервисов AWS?

Существует среда var, называемая KUBERNETES_PROVIDER, но кажется, что env var имеет значение только тогда, когда люди начинают кластер k8s. Поскольку вы сказали, что "все работает нормально", я думаю, вам не нужна какая-либо дополнительная настройка для использования функций, о которых я упоминал выше.