For instance: I have an image with Percona XtraDB Cluster installed with 
everything I need, running in bootstrap mode. I then merely have to update 
it's my.cnf file and restart MySQL versus having to install all the 
packages per-container. Same thing goes for simple apache web heads. 

In the VM world: you are running a DBaaS service, you are certainly going 
to launch multiple instances using the same VM image and just tweak configs 
according to customer. 

On Thursday, May 1, 2014 5:23:27 PM UTC-4, Michael DeHaan wrote:
>
> (To be clear, I'm not sure why you'd want more than one identical 
> container per host anyway)
>
>
>
> On Thu, May 1, 2014 at 5:22 PM, Michael DeHaan 
> <[email protected]<javascript:>
> > wrote:
>
>> " The issue with this is that inventory is per host, correct?"
>>
>> Not to be pedantic, but Inventory is one thing that contains many hosts. 
>>   
>>
>> "Where then would it make sense to specify the count of containers per 
>> type?"
>>
>> How about a role that deploys the container, and you specify it as a 
>> parameter to the role how many you want of each image?
>>
>>
>>
>>
>>
>>
>>  
>>
>> On Thu, May 1, 2014 at 12:25 PM, Patrick Galbraith 
>> <[email protected]<javascript:>
>> > wrote:
>>
>>> Hi all!
>>>
>>> I have a fairly simple (at least it seems that way!) question about how 
>>> to arrange variables -- or even roles for that matter-- for a runbook that 
>>> I've written for my presentation at AnsibleFest on the Docker module.
>>>
>>> the issue is this: I use the docker module for launching a specific 
>>> number docker containers and have specific images for each type of 
>>> container, those types being broken into roles. The types are simply web 
>>> (apache), db (percona xtradb cluster), and haproxy. There is not much in 
>>> the way for this talk to try to configure the launched containers as it's 
>>> more about the ability to launch the containers. 
>>>
>>> Now, currently, I have within each of the roles of course a 
>>> vars/main.yml file with a variable I was going to use "containers_count". 
>>> There is a task in roles/common/tasks/main.yml that simply launches 
>>> containers 
>>>
>>> - name: docker image control
>>>   docker: image="{{repository_name}}/{{ image }}" name="{{ type }}_{{ 
>>> item }}" state={{ docker_state }}
>>>   with_sequence: count={{ containers_count }}
>>>
>>> The top level playbook simply does this:
>>>
>>> - hosts: docker
>>>   roles:
>>>   - common
>>>   - web
>>>
>>> - hosts: docker
>>>   roles:
>>>   - common
>>>   - db
>>>
>>> - hosts: docker
>>>   roles:
>>>   - common
>>>   - haproxy
>>>
>>> This results in the above task being called for each "type" and each 
>>> role has its own "container_count" from the role's vars. 
>>>
>>> It was pointed out to me that roles need to be more of a plugin ability 
>>> and specific things like a count of containers being more site-specific, 
>>> perhaps using inventory. The issue with this is that inventory is per host, 
>>> correct? So, in my testing, the only host is localhost, where I'm running 
>>> docker. For my presentation, hosts will be a certain number and on each a 
>>> certain number of containers running.
>>>
>>> Where then would it make sense to specify the count of containers per 
>>> type? Say for instance, I want 9 cluster node containers, 3 haproxy 
>>> containers and 10 web containers-- what would be a portable and flexible 
>>> way to do this? What is best practices in this case?
>>>
>>> Thank you!
>>>
>>> PS: my respository is 
>>> https://github.com/CaptTofu/ansible-docker-presentation for more 
>>> context.
>>>  
>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "Ansible Project" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected] <javascript:>.
>>> To post to this group, send email to 
>>> [email protected]<javascript:>
>>> .
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/ansible-project/207286e3-72df-48b3-9356-ae9a22b90ad2%40googlegroups.com<https://groups.google.com/d/msgid/ansible-project/207286e3-72df-48b3-9356-ae9a22b90ad2%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/e613eee4-b7b0-49e5-a95a-4d4b38f5b668%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to