Как сделать, чтобы внутренний днс консула отдавал только живой ip, на котором работает сервис, ну постгрес например. Сделал так
consul.d# cat postgres.json
{«services»: [
{
«id»: «pg_dbmaster»,
«name»: «postgres»,
«address»: «8.8.8.8»,
«tags»: [«master»],
«port»: 5432
},
{
«id»: «pg_dbread»,
«name»: «postgres»,
«address»: «127.0.0.1»,
«tags»: [«slave»],
«port»: 5432,
«check»: {
«name»: «pg_dbread_check»,
«tcp»: «localhost:5432»,
«interval»: «10s»,
«timeout»: «1s»
}
}
]
}
на 127.0.0.1 ПГ специально дохлый, по идее на запрос должен отдавать только 8.8.8.8
dig @127.0.0.1 -p 8600 postgres.service.consul A +short
8.8.8.8
а он, редиска, отдаёт оба
8.8.8.8
127.0.0.1