Доступ к конечной точке Rails EKS - PullRequest
0 голосов
/ 08 мая 2020

Я работаю над развертыванием кластера Kubernetes в AWS, и у меня проблема с сертификатом. Я использую Chrome.

И я получаю это сообщение об ошибке, когда пытаюсь получить к нему доступ:

enter image description here

Я вижу что я думаю, это панель управления Kubernetes, если я go через Firefox хотя.

k8 yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: project # name of the deployment
  labels: # these labels apply to the deployment
    app: project
    component: project
spec:
  strategy:
    type: Recreate
  selector:
    matchLabels:
      app: project
  template:
    metadata:
      labels: # these labels apply to our container
        app: project
        component: project
    spec:
      containers:
      - name: project # name of our container
        image: id.dkr.ecr.region.amazonaws.com/project_api:latest # the URI that we got from ECR
        env:
        - name: DB_URL
          value: project.1234.region.rds.amazonaws.com # URL of our database endpoint
        - name: DB_USERNAME
          valueFrom:
            secretKeyRef:
              name: db-creds
              key: username # use the encoded username from the K8s secret db-creds
        - name: DB_PASSWORD
          valueFrom:
            secretKeyRef:
              name: db-creds
              key: password # use the encoded password from the K8s secret db-creds
        - name: DB_NAME
          value: projectDB # our DB is named projectDB
        ports:
        - containerPort: 3000 # expose the running contianer on port 3000
          name: project

loadbalance.yml

apiVersion: v1
kind: Service
metadata:
  name: load-balancer
  labels:
    app: project
spec:
  selector:
    app: project
  type: LoadBalancer
  ports:
  - nodePort: 31000
    port: 3000
    targetPort: 3000

In Firefox. Я ожидал, что смогу получить к нему доступ через порт 3000. URLENDPOINT: хотя тайм-аут 3000.

Есть идеи, как мне получить доступ к моему приложению? Есть идеи, что мне нужно сделать, чтобы обойти проблему с ssl-сертификатом?

1 Ответ

1 голос
/ 08 мая 2020

Этот URL является API для вашей плоскости управления EKS, а не LoadBalancer для Service из load-balancer; если вы запустите kubectl -n default get -o yaml svc load-balancer, он, скорее всего, покажет вам фактическое имя DNS для созданного им балансировщика нагрузки, если таковое имеется (поскольку этот Service является запросом для LoadBalancer, и ваш кластер EKS может у вас нет разрешений IAM, или ваша учетная запись может не иметь квоты для выполнения запроса)

Вы можете сказать, что это EKS ELB, а не ELB вашей службы, не только по явному .eks в доменном имени - - то, что он точно не будет делать при создании вашего балансировщика нагрузки, - но также из CN представленного SSL-сертификата:

*  subject: CN=kube-apiserver
*  start date: May  7 20:52:30 2020 GMT
*  expire date: May  7 20:56:46 2021 GMT
*  issuer: CN=kubernetes
...