Подпишитесь на облачный паб / тему из приложения, работающего в Kubernetes - PullRequest
3 голосов
/ 01 июля 2019

Я создал тему публикации / подраздела, в которую я буду публиковать сообщения каждый раз, когда новый объект загружается в корзину.Теперь я хочу создать подписку для отправки уведомления конечной точке каждый раз, когда в этот сегмент загружается новый объект.Следуя документации, я хотел что-то вроде этого:

gcloud alpha pubsub subscriptions create orderComplete \ --topic projects/PROJECT-ID/topics/TOPIC \ --push-endpoint http://localhost:5000/ENDPOINT/ --ack-deadline=60 Однако мое приложение работает на kubernetes, и кажется, что pub / sub не может достичь моей конечной точки.Есть предложения?

Ответы [ 2 ]

1 голос
/ 01 июля 2019

Чтобы Cloud Pub / Sub мог отправлять сообщения в ваше приложение, вам необходимо предоставить общедоступную конечную точку. В Куберне это, скорее всего, означает выставление Сервиса . При этом у вас должен быть нелокальный (т.е. не «localhost») URL для доступа к модулям, на которых запущены ваши двоичные файлы.

Перед созданием подписки Cloud Pub / Sub также необходимо подтвердить свой домен с помощью консоли Cloud.

Наконец, вы можете настроить свою подписку на отправку сообщений, изменив ее конфигурацию :

gcloud pubsub subscriptions modify-push-config mySubscription \
  --push-endpoint="https://publicly-available-domain.com/push-endpoint"
0 голосов
/ 01 июля 2019

Как в документации

Как правило, конечной точкой push-сообщения должен быть общедоступный HTTPS. сервер, представляя действительный сертификат SSL, подписанный сертификатом полномочия и маршрутизируемые по DNS.

Таким образом, вы должны предоставить свой сервис через HTTPS, используя Ingress, как описано там: https://cloud.google.com/kubernetes-engine/docs/concepts/ingress

...