spring-cloud приложение:
- в котором используюся producer-only транзакции
- крутится это всё в google cloud kubernetes engine.
Если я правильно понял, то у producer-only транзакций, настройки продюсера transaction-id-prefix (spring cloud) должны быть уникальными для каждого инстанса и не должны меняться при перезапуске подов. Т.е. для этого, как мне кажется, лучше всего подходят id инстансов (не имя пода, а именно номер инстанса), но вроде как в GKE (google kubernetes engine) нет такое системной переменной, в отличие от других облаков.
Вопросы:
1) можно ли как-то вытянуть через системную переменную id инстанса в GKE
2) Что лучше использовать в качестве transaction-id-prefix в нашем случае (spring boot/cloud + kubernetes)?
Теоретические вопросы:
3) если использовать произвольное значение, то возможны ли проблемы с зомби-инстансами в кубере? ведь если создается новый под, то видимо старый был убит? А если зомби-инстансы не страшны в кубере, то может можно спокойно использовать в качестве значения transaction-id-prefix UUID.randomUUID()?
может не понял вопрос до конца, но гугл говорит что есть у них instance_id почему не использовать просто его ? "resource": { "type": "gke_container", "labels": { "zone": "us-central1-a", "pod_id": "1138528c-c36e-11e9-a1a7-42010a800198", "project_id": "auto-scaling-springboot", "cluster_name": "load-test", "container_name": "", "namespace_id": "f0965889-c36d-11e9-9e00-42010a800198", "instance_id": "3962380509873542383" }
Обсуждают сегодня