2016-11-21 2 views
1

Если у меня есть два одинаковых сервера, сервер A и сервер B, оба являются тестовыми средами. Как я могу использовать один и тот же рецепт шеф-повара, но использовать разные данные пользователя на каждом сервере?Рецепт шеф-повара с использованием разных имен пользователей и паролей

Например:

Server A 
Recipe WebSite to setup IIS, but uses: 
UsernameA 
PasswordA ... for the application pool 

и

Server B 
Recipe WebSite to setup IIS, but uses: 
UsernameA 
PasswordB ... for the application pool 

В моей среде я на самом деле есть 10 тестовых сред, мне нужно настроить все с помощью того же рецепта все с уникальными именами и паролями.

+0

Просьба не перекрестно размещать сообщения на нескольких сайтах, список рассылки является лучшим местом для этого вопроса. Это резюме для использования атрибутов или баз данных и, следовательно, не относится к StackOverflow в поисках учебника. – Tensibai

ответ

2

Двумя основными способами получения данных для работы шеф-повара являются атрибуты узлов и элементы мешков данных. В этом случае вам, вероятно, понадобится последний, так как вы собираетесь использовать полную настройку снежинки (т. Е. Каждый сервер уникален). Я бы, вероятно, сделал один элемент пакета данных на сервере, используя полное доменное имя узла или, возможно, имя узла. Затем вы можете получить доступ к этому из вашего кода рецепта, как это:

item = data_bag_item('passwords', node['fqdn']) 
template '/my/iis.config' do 
    # Other stuff here ... 
    variables username: item['username'], password: item['password'] 
end 

Вы можете найти более подробную информацию о пакетах данных и template ресурса в любом Chef учебнике.

Смежные вопросы