Я хотел бы, чтобы мои службы Google Cloud Run конфиденциально обменивались данными друг с другом по протоколу, отличному от HTTP, и / или без добавления аутентификации носителя в мой код.
Мне известно об этой документации от Google, в которой описывается, как вы можете осуществлять аутентифицированный доступ между службами, хотя, очевидно, только для HTTP.
Думаю, у меня есть общее представление о том, что необходимо:
- Создайте собственный VPC для моего проекта
- Включите бессерверный соединитель VPC.
Я не совсем понимаю:
- Это необходимо? Могут ли сервисы Cloud Run в рамках одного проекта уже видеть друг друга?
- How do services address one another after this?
- Do I gain the ability to use simpler by-convention DNS names? For example, could I have each service in Cloud Run manifest on my VPC as a single first level DNS name like
apione
andapitwo
rather than a larger DNS name that I'd then have to hint in through my deployments? - Если нет, то есть ли какой-либо механизм, позволяющий службам обнаруживать имена?
- Do I gain the ability to use simpler by-convention DNS names? For example, could I have each service in Cloud Run manifest on my VPC as a single first level DNS name like
- Если я помещу свою управляемую базу данных Postgres Cloud SQL в эту сеть, могу ли я контролировать ее DNS-имя?
Наконец, есть ли еще какие-то подводные камни, о которых я хотел бы знать? Вы можете предположить, что мой вариант использования очень простой, две или более долгоживущих службы в Cloud Run, осуществляющие связь не по протоколу HTTP TCP / UDP.
Я также нашел потенциально связанный запрос функции Google Cloud Run, за который стоит проголосовать, если это не так. в настоящее время возможно.