Запускаете Docker с Consul или Eureka?

Я пытаюсь запустить демонстрационное приложение Istio + consul на моем 3-узловом кластере K8s.

Я следую этому руководству: https://istio.io/docs/guides/bookinfo/, раздел "Запуск на Docker с помощью Consul или Eureka"

Но демонстрация консула Istio терпит неудачу вот так:

root@kubemaster:~/istio-0.8.0# docker-compose -f samples/bookinfo/consul/bookinfo.yaml up -d
ERROR: Network consul_istiomesh declared as external, but could not be   found. Please create the network manually using `docker network create consul_istiomesh` and try again.

Но затем я создаю сеть в соответствии с сообщением об ошибке:

root@kubemaster:~/istio-0.8.0# docker network create consul_istiomesh 
b137f18c35c21b7bb3129cf5f3984c81fe270dfec35906c1611ffe249ef336c1

Но потом я получаю такую ​​ошибку:

root@kubemaster:~/istio-0.8.0# docker-compose -f samples/bookinfo/consul/bookinfo.yaml up -d
Creating consul_productpage-v1_1
Creating consul_reviews-v3_1
Creating consul_details-v1_1
Creating consul_reviews-v1_1
Creating consul_ratings-v1_1
Creating consul_reviews-v2_1

ERROR: for productpage-v1  user specified IP address is supported only when connecting to networks with user configured subnets
Traceback (most recent call last):
File "/usr/local/bin/docker-compose", line 11, in <module>
sys.exit(main())
File "/usr/local/lib/python2.7/dist-packages/compose/cli/main.py", 
line 63, in main
log.error(e.msg)
AttributeError: 'ProjectError' object has no attribute 'msg'

Что делать ?


person Traiano Welcome    schedule 21.07.2018    source источник
comment
Вы пытаетесь запустить это в докере с помощью docker-compose или в кубернетах, используя манифесты и kubectl?   -  person Const    schedule 21.07.2018
comment
Я запускаю istio на Kubernetes (с докером). Теперь, когда вы упомянули об этом, инструкции говорят мне использовать docker-compose для развертывания консула, но было бы разумно развернуть его с помощью kubectl ...   -  person Traiano Welcome    schedule 22.07.2018
comment
Вы пробовали использовать новую версию Istio 1.0.0? Также обновлен гид.   -  person Akar    schedule 03.08.2018


Ответы (1)


Что делать ?

Хотя технически вы можете смешивать вручную управляемые контейнеры докеров и контейнеры, управляемые Kubernetes, это не совсем правильный подход, если в этом нет крайней необходимости ... Если ваш istio работает в Kubernetes, имеет смысл переписать docker-compose в манифесты k8s ( или воспользуйтесь помощью инструментов преобразования), имея в виду различия, такие как ссылки на службы и т. д.

С учетом сказанного вы можете запускать их бок о бок (если вам нужно), но вы должны учитывать открытые конечные точки / службы, и будет немного сложно распутать настройку сети.

Итак, вы можете сделать две вещи:

  • настроить манифесты служб docker-compose и istio k8s для взаимодействия друг с другом или
  • переписать docker-compose в манифесты k8s и запустить все в кластере
person Const    schedule 22.07.2018