Как получить IP-адреса всех единиц в сервисе в рычаге очарования в другом сервисе?

Я плохо знаком с Амулетом и пытающийся записать очарование. Мне нужен IP-адрес всех единиц, развернутых в сервисе. Я в настоящее время использую амулет 1.25 И развертываю сервисы в OpenStack

Сценарий:

У меня есть 3 единицы Wordpress (он потребовал файлов рычага отношения) с

juju deploy -n 3 cs:wordpress

Я развернул свое очарование от локального repo

juju deploy local:trusty/myCharm

Я добавляю отношение между двумя

juju add-relation myCharm wordpress

Теперь, мне нужен список всех 3 IP-адресов сервиса Wordpress в одном из рычага в myCharm

Я установил ключи отношения в Wordpress и попытался использовать идентификаторы отношения-> список отношения->, отношение - получает инструменты рычага в myCharm. Но это дает мне всего один IP и не все три.

relation-ids {relationName}  --gives one id. 
relation-list -r {id} --gives just one unit(wordpress/18). 
relation-get -r {id} {relation-key} {unit} --gives corresponding ip.

Что я должен сделать для получения ожидаемого результата?

4
задан 26 August 2016 в 19:50

1 ответ

Эти relation-list -r {id} должен возвратить все единицы в отношении. Возможно, Вы только анализируете первое (или в последний раз) значение?

Это - то, на что мой relation-* похож вывод, когда у меня есть несколько единиц одного приложения, связанного с другим (в этом случае, я смотрю monitors данные отношения между nagios и 3 единицы nrpe; Вы, вероятно, хотите заменить теми, которые имеют myCharm и Ваши 3 единицы wordpress):

$ juju run --unit nagios/0 'relation-ids monitors'
monitors:1

$ juju run --unit nagios/0 'relation-list -r monitors:1'  
nrpe/0
nrpe/1
nrpe/2

$ juju run --unit nagios/0 'relation-get -r monitors:1 private-address nrpe/0'
172.31.13.216

я могу поместить это все вместе в цикл, который производит частно-адресное для всех единиц, связанных с nagios как это:

$ juju run --unit nagios/0 'for i in `relation-ids monitors`; do for j in `relation-list -r $i`; do relation-get -r $i private-address $j; done; done'
172.31.13.216
172.31.30.157
172.31.49.121
1
ответ дан 1 December 2019 в 10:36

Другие вопросы по тегам:

Похожие вопросы: