So I am doing a digital ocean thing.  I saw the dynamic inventory scripts 
and thought my problems were solved.  But turns out, it only covers the 
simplest case and doesn't help you further.

The background here is I'm doing a little bit of a hbase thing.  So I have 
created some hosts using the digital ocean commands, but first I had to fix 
the private networking bug 
(https://github.com/ansible/ansible-modules-core/pull/677)

So I create my hosts with a standalone playbook:
---
- hosts: localhost
  vars:
    ssh_keys: 1234
  connection: local
  tasks:
  - name: create droplets
    digital_ocean: >
      state=present
      wait=no
      private_networking=true
      command=droplet
      name={{ item }}
      unique_name=yes
      size_id=65
      region_id=8
      ssh_key_ids="{{ ssh_keys }}"
      image_id=9801950
    with_items:
      - hbase0
      - hbase1
      - hbase2
      - hbase3
      - hbase4
      - hbase5
      - hbase6
      - hbase7
      - hbase8

And this seems to work.  So I have 9 hosts, hooray!

I can even do:
ansible hbase0 -i digital_ocean.py -m ping

and i can ping just that 1 host

and I can do:
ansible all -i digital_ocean.py -m ping

and that works.  And that's great.

But now I need to do groups.  Since this is HBase, we need some hosts to be 
slightly different than other hosts.  Pretty standard ansible stuff.

So I will:
mkdir inventory
cp digital_ocean.py inventory
vim inventory/groups

And put stuff in this new 'groups' file.

Except that it's nearly impossible to do anything smart here.

Some facts:
- you can't use 'host names' -- do_name, or ansible_hostname in the facts
- you can't use globs: hbase[0:8]
- you can't really identify these 9 servers via anything other than their 
size, or their image id.  No tags - digital ocean's fault here, but still.
- you might be able to use raw IP addresses, but I don't know which IP is 
hbase0. 

So I gave up on digital_ocean.py.  I now generate a file i can paste into 
/etc/hosts, and use raw names hbase0, hbase1, etc, in a static file. 
 Basically I use dynamic inventory for generating the data I use to drive 
static hosts.

I have tried googling, asking irc.  As far as I can tell, if anyone else 
has a similar problem, google doesn't know.

In the mean time, I am back using static inventory.

-- 
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/360625c3-387e-4367-80e7-b478263f735b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to