2016-07-31 23 views
0

Ich versuche aws kinesis Strom mit ansible und ich habe einige Beispiel-Modul Schnipsel von hereKann AWS Kinesis-Stream nicht mit Ansible-Modul erstellen ...!

Meine modifizierte Schnipsel kinesis.yml hier zu erstellen ist Kinesis-Stream auf bestimmten Region zu schaffen:

- hosts: localhost 
    connection: local 
    gather_facts: no 
    vars: 
#aws region to create kinesis 
    region: ap-south-1 
    tasks: 
    - name: Set up Kinesis Stream with 2 shards and wait for the stream to become ACTIVE 
     kinesis_stream: 
       name: test-stream 
       shards: 2 
       wait: yes 
       wait_timeout: 600 
       region: "{{ region }}" 
     register: test_stream 

Ich denke, einige, wo ich mit der Art und Weise Messud können wir kinesis Modul definieren, und ich habe die folgenden Fehler:

centos]# ansible-playbook -vvvv kinesis.yml 
    No config file found; using defaults 
    ERROR! no action detected in task. This often indicates a misspelled module name, or incorrect module path. 

    The error appears to have been in '/home/centos/kinesis.yml': line 4, column 7, but may 
    be elsewhere in the file depending on the exact syntax problem. 

    The offending line appears to be: 

     tasks: 
     - name: Set up Kinesis Stream with 2 shards and wait for the stream to become ACTIVE 
     ^here 

ich meine aws Konsole Zugriffsschlüssel mit boto konfiguriert haben. Bitte lassen Sie mich wissen, gibt es eine richtige Möglichkeit, Ansible Playbook zu definieren, um eine Kinesis auf bestimmte aws Region zu erstellen.

Antwort

-1

Endlich habe ich erreicht mit aws cli mit ansible. Auf ein wenig mehr zu verstehen, unterstützt es auch eine Befehlszeile Optionen. Also können wir aws cli-Befehle übergeben, die mit ansible funktionieren.

Hier ist mein Beispielmodul Schnipsel:

--- 
- hosts: localhost 
    connection: local 
    gather_facts: no 
    vars: 
    streamName: test-stream 
    shardCount: 2 
    tasks: 
    - name: Create Kinesis Sream 
     command: aws kinesis create-stream --stream-name {{streamName}} --shard-count {{shardCount}} 
     register: kinesis 

diese AWS CLI-Ansatz können wir schnell mehr AWS Funktionen/Dienstleistungen für unsere ansible Textbuch hinzuzufügen.

1

kinesis_stream ist in einer Pull-Anforderung, die noch nicht enthalten ist. Das bedeutet, dass es nicht Teil von Ansible ist. Es dauert oft lange, bis ein Modul oder eine Revision tatsächlich in Ansible geliefert wird (sie sind ziemlich dev-unfreundlich).

Um dieses Modul zu verwenden, müssen Sie es in Ihren lokalen Ordner library/ legen.

+0

Woher bekomme ich diese Bibliothek? Bitte teilen Sie, wenn Sie Referenzlinks haben. Danke –

+0

[Hier ist es] (https://github.com/ansible/ansible-modules-extras/pull/1901). Sie sollten es wahrscheinlich nicht ohne ein höheres Maß an Ansible-Know-how verwenden. – tedder42

+0

Ja, ich erforsche jetzt. Hoffe ich werde es in den kommenden Tagen erreichen! :) Danke –