Облачная платформа Google: как работать в локальной среде с помощью ресурсов GCP

Я использую Google App Engine Flex для разработки внутреннего приложения angularjs / php-rest.
У меня успешный порт с обычных серверов на AppEngine, и теперь я хочу больше интегрировать с такими сервисами GCP, как: StackDriver, Cloud Storage и так далее.

StackDriver для ведения журнала & мониторинг.
Облачное хранилище: для хранения файлов данных экспорта и архивирования их перед отправкой в ​​браузер.

У меня вопрос, как я могу разрабатывать локально на моем ноутбуке (который может быть онлайн & не в сети) ?

Я не нашел в документации «пути» местного развития:

  • Нужно ли настраивать клиент stackDriver или Cloud Storage для записи на диск вместо достижения GCP?
  • Должен ли я настроить какой-нибудь прокси (например, cloud_sql_proxy), чтобы иметь доступ к GCP? Должен ли я создать проект для моего местного разработчика? Как это работает, если я не в сети?

Любая подсказка приветствуется 🙂

0

Решение

App Engine Flexible не поставляется с сервером разработки или эмуляторами служб для использования во время разработки, поэтому вы можете использовать службы напрямую.

  • Ведение журнала Stackdriver: логи, записанные в стандартный вывод а также STDERR автоматически отправляются в Stackdriver Logging без необходимости использования библиотеки Stackdriver Logging для PHP. Этого может быть достаточно для локального получения журналов, но мы рекомендуем вам использовать регистратор PSR-3, который автоматически добавляет метаданные в ваши журналы, чтобы журналы вашего приложения соотносились с журналами запросов. Вы можете настроить его для запуска локально и войти в свой проект, следуя документации Вот.
  • Мониторинг стека: Google App Engine включает встроенную поддержку мониторинга в гибкой среде (при развертывании) и не требует настройки. Агент мониторинга не может быть установлен на вашем локальном компьютере, но в любом случае было бы бессмысленно отслеживать его.
  • Облачное хранилище: простой вариант — создать корзину разработчиков, которую можно использовать во время разработки. Вы можете создать его в любом проекте и предоставить разрешения своей учетной записи службы разработки.

Одной из распространенных практик является создание различных проектов GCP для целей prod, staging и dev. Это позволяет создавать конкретные ресурсы для данной среды. Взяв в качестве примера логи, вы сможете просматривать логи и решать любые проблемы с ними в проекте dev, не загрязняя логи вашего проекта prod. Это было бы верно с CloudSQL, хранилищем данных и т. Д …

Вам не нужно настраивать прокси для этих сервисов. Cloud_sql_proxy — это удобный метод для обеспечения безопасных соединений и упрощения аутентификации с экземплярами CloudSQL без необходимости внесения в белый список IP-адресов.

Что касается ситуации в автономном режиме, то, разумеется, эти вызовы из вашего локального приложения в эти службы будут прерываться, если у вас нет подключения к Интернету в это время (прерывистое отключение может фактически помочь вам проверить ваши попытки и механизмы обработки ошибок). Однако, если вы планируете работать без подключения к Интернету, вам нужно написать заглушки для имитации ожидаемого поведения локально.

1

Другие решения

Других решений пока нет …