2017-02-06 17 views
0

У меня есть «Развертывание» в Kubernetes, который отлично работает в GKE, но не работает в MiniKube. у меня Под с 2 контейнерами: - (1) Nginx в качестве обратного прокси-сервера (читает секреты и объемы ConfigMap на/и т.д./TLS &/и т.д./Nginx соответственно) (2) Услуга на основе виртуальной машины Java прослушивания на локальнойKubernetes Minikube Секреты появляются не в Pod

Проблема при развертывании минибука заключается в том, что Nginx-контейнер не может прочитать сертификаты TLS, которые, как представляется, не присутствуют, т. Е. Тома монтирования секретов для Pod, похоже, не сработала.

nginx: [emerg] BIO_new_file("/etc/tls/server.crt") failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/etc/tls/server.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file) 

Но если я «журналы minikube» Я получаю большое количество, казалось бы, «успешные» Tls объем монтирует ...

MountVolume.SetUp succeeded for volume "kubernetes.io/secret/61701667-eca7-11e6-ae16-080027187aca-scriptwriter-tls" (spec.Name: "scriptwriter-tls") 

И сам секрет в кластере хорошо ...

$ kubectl get secrets scriptwriter-tls 
NAME    TYPE  DATA  AGE 
scriptwriter-tls Opaque 3   1h 

Таким образом, казалось бы, что касается miniKube, все хорошо из точки зрения секретов. Но, с другой стороны, контейнер nginx не видит этого.

Я не могу войти в контейнер, так как он продолжает заканчиваться.

Для полноты соответствующих разделов из YAML развертывания ... Во-первых, Nginx конфигурации ...

- name: nginx 
    image: nginx:1.7.9 
    imagePullPolicy: Always 
    ports: 
    - containerPort: 443 
    lifecycle: 
     preStop: 
     exec: 
      command: ["/usr/sbin/nginx", "-s", "quit"] 
    volumeMounts: 
     - name: "nginx-scriptwriter-dev-proxf-conf" 
     mountPath: "/etc/nginx/conf.d" 
     - name: "scriptwriter-tls" 
     mountPath: "/etc/tls" 

А во-вторых, сами объемы на уровне контейнера ...

volumes: 
    - name: "scriptwriter-tls" 
     secret: 
     secretName: "scriptwriter-tls" 
    - name: "nginx-scriptwriter-dev-proxf-conf" 
     configMap: 
     name: "nginx-scriptwriter-dev-proxf-conf" 
     items: 
      - key: "nginx-scriptwriter.conf" 
      path: "nginx-scriptwriter.conf" 

Любые указатели помощи будут очень признательны.

ответ

0

Я первый класс numpty! :-) Иногда ошибка - это просто ошибка! Поэтому проблема заключалась в том, что секреты создаются с использованием локальных $ HOME/.ssh/* certs ... и если вы создаете их с разных компьютеров с разными сертификатами, тогда угадайте, что ?! Так что все исправлено сейчас :-)

 Смежные вопросы

  • Нет связанных вопросов^_^