ML
    • Recent
    • Categories
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Ansible 2.4.2.0 on CentOS 7--ping module isn't working

    IT Discussion
    ansible
    6
    33
    3.4k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      matteo nunziati @wirestyle22
      last edited by

      @wirestyle22 said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

      @black3dynamite That looks so weird to me

      shouldn't the host be ansible_host=hostname ? Did they change that?

      Please post your inventory well formatted as code. It should contain a list of targets and should be passed to ansible with the -i flag. Also check the docs: https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html

      W 1 Reply Last reply Reply Quote 1
      • S
        stacksofplates
        last edited by stacksofplates

        Dont' pass ansible_host= in the command line. That's defined in your inventory file. You also don't need to add that in your inventory file at all since you've defined it in your /etc/hosts file. I never add the password in the inventory. If I don't have a key on the other end I just pass -k in the command. So you would do this:

        ansible -i inventory ansible-target1 -m ping -k
        

        Also make sure every host is on a separate line in your inventory. I noticed you only did > instead of >>. You could have only put one host in, but figured I'd mention it just in case.

        W 1 Reply Last reply Reply Quote 3
        • S
          stacksofplates
          last edited by

          Also 2.4.2 is kind of old. Some things are being deprecated soon, so you will want to either install from EPEL or use pip to pull in a newer version.

          S 1 Reply Last reply Reply Quote 0
          • S
            scottalanmiller @stacksofplates
            last edited by

            @stacksofplates said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

            Also 2.4.2 is kind of old. Some things are being deprecated soon, so you will want to either install from EPEL or use pip to pull in a newer version.

            Another "CentOS problem" that "doesn't exist" 😉

            S 1 Reply Last reply Reply Quote 0
            • S
              stacksofplates @scottalanmiller
              last edited by stacksofplates

              @scottalanmiller said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

              @stacksofplates said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

              Also 2.4.2 is kind of old. Some things are being deprecated soon, so you will want to either install from EPEL or use pip to pull in a newer version.

              Another "CentOS problem" that "doesn't exist" 😉

              Well it's weird. Idk if CentOS hasn't caught up with RHEL yet or what's going on. Ansible is at 2.7 in RHEL. I have no idea why it's lagging so far behind in CentOS.

              S 1 Reply Last reply Reply Quote 0
              • S
                scottalanmiller @stacksofplates
                last edited by

                @stacksofplates said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                @scottalanmiller said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                @stacksofplates said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                Also 2.4.2 is kind of old. Some things are being deprecated soon, so you will want to either install from EPEL or use pip to pull in a newer version.

                Another "CentOS problem" that "doesn't exist" 😉

                Well it's weird. Idk if CentOS hasn't caught up with RHEL yet. Ansible is at 2.7 in RHEL. I have no idea why it's lagging so far behind in CentOS.

                oh, weird.

                S 1 Reply Last reply Reply Quote 0
                • S
                  stacksofplates @scottalanmiller
                  last edited by

                  @scottalanmiller said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                  @stacksofplates said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                  @scottalanmiller said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                  @stacksofplates said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                  Also 2.4.2 is kind of old. Some things are being deprecated soon, so you will want to either install from EPEL or use pip to pull in a newer version.

                  Another "CentOS problem" that "doesn't exist" 😉

                  Well it's weird. Idk if CentOS hasn't caught up with RHEL yet. Ansible is at 2.7 in RHEL. I have no idea why it's lagging so far behind in CentOS.

                  oh, weird.

                  But even Fedora lags behind a little. It's getting better but I've seen it as far as 2 releases behind before.

                  M 1 Reply Last reply Reply Quote 0
                  • W
                    wirestyle22 @matteo nunziati
                    last edited by wirestyle22

                    @matteo-nunziati said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                    @wirestyle22 said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                    @black3dynamite That looks so weird to me

                    shouldn't the host be ansible_host=hostname ? Did they change that?

                    Please post your inventory well formatted as code. It should contain a list of targets and should be passed to ansible with the -i flag. Also check the docs: https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html

                    This is a basic ping check with a basic inventory file. Originally it was this but I have removed the ssh password portion.

                    ansible-target1 ansible_host=192.168.1.208 ansible_ssh_pass=password
                    ansible-target2 ansible_host=192.168.1.209 ansible_ssh_pass=password
                    
                    1 Reply Last reply Reply Quote 0
                    • W
                      wirestyle22 @stacksofplates
                      last edited by wirestyle22

                      @stacksofplates said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                      Dont' pass ansible_host= in the command line. That's defined in your inventory file. You also don't need to add that in your inventory file at all since you've defined it in your /etc/hosts file. I never add the password in the inventory. If I don't have a key on the other end I just pass -k in the command. So you would do this:

                      ansible -i inventory ansible-target1 -m ping -k
                      

                      Also make sure every host is on a separate line in your inventory. I noticed you only did > instead of >>. You could have only put one host in, but figured I'd mention it just in case.

                      God you're handsome.

                      0_1540659890758_ping.PNG

                      Time to screw around with YAML.

                      1 Reply Last reply Reply Quote 0
                      • O
                        Obsolesce
                        last edited by

                        Or in Salt:

                        salt pcname test.ping

                        S 1 Reply Last reply Reply Quote 0
                        • S
                          stacksofplates @Obsolesce
                          last edited by stacksofplates

                          @Obsolesce said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                          Or in Salt:

                          salt pcname test.ping

                          It's much simpler if you have your ansible.cfg and keys set up. Then it's just ansible server -m ping.

                          This is like trying to use Salt without having certs set up (or SSH keys in the case of salt-ssh)

                          O 1 Reply Last reply Reply Quote 0
                          • O
                            Obsolesce @stacksofplates
                            last edited by

                            @stacksofplates said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                            @Obsolesce said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                            Or in Salt:

                            salt pcname test.ping

                            It's much simpler if you have your ansible.cfg and keys set up. Then it's just ansible server -m ping.

                            This is like trying to use Salt without having certs set up (or SSH keys in the case of salt-ssh)

                            If you want to use ssh as a transport, but not needed or why you'd choose Salt. If that's the case then I'd rather want to use Ansible.

                            S 1 Reply Last reply Reply Quote 0
                            • S
                              stacksofplates @Obsolesce
                              last edited by

                              @Obsolesce said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                              @stacksofplates said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                              @Obsolesce said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                              Or in Salt:

                              salt pcname test.ping

                              It's much simpler if you have your ansible.cfg and keys set up. Then it's just ansible server -m ping.

                              This is like trying to use Salt without having certs set up (or SSH keys in the case of salt-ssh)

                              If you want to use ssh as a transport, but not needed or why you'd choose Salt. If that's the case then I'd rather want to use Ansible.

                              I want saying you should. Just once things are set up properly they are both (Ansible and Salt) very similar in ease of use.

                              1 Reply Last reply Reply Quote 0
                              • M
                                matteo nunziati @stacksofplates
                                last edited by

                                @stacksofplates said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                                @scottalanmiller said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                                @stacksofplates said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                                @scottalanmiller said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                                @stacksofplates said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                                Also 2.4.2 is kind of old. Some things are being deprecated soon, so you will want to either install from EPEL or use pip to pull in a newer version.

                                Another "CentOS problem" that "doesn't exist" 😉

                                Well it's weird. Idk if CentOS hasn't caught up with RHEL yet. Ansible is at 2.7 in RHEL. I have no idea why it's lagging so far behind in CentOS.

                                oh, weird.

                                But even Fedora lags behind a little. It's getting better but I've seen it as far as 2 releases behind before.

                                I always download it from upstream

                                1 Reply Last reply Reply Quote 0
                                • W
                                  wirestyle22
                                  last edited by wirestyle22

                                  @stacksofplates How are you organizing? I have playbooks and inventory together in the same directory right now. Seems bad. Also, are you using an IDE?

                                  black3dynamiteB S 3 Replies Last reply Reply Quote 0
                                  • W
                                    wirestyle22
                                    last edited by

                                    Another way to do this ping test:

                                    pingtest.yml

                                    -
                                      name: Test connectivity to target servers
                                      hosts: all
                                      tasks:
                                       - name: Ping test
                                         ping:
                                    

                                    0_1540684076126_pingtest.PNG

                                    1 Reply Last reply Reply Quote 0
                                    • black3dynamiteB
                                      black3dynamite @wirestyle22
                                      last edited by

                                      @wirestyle22 said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                                      @stacksofplates How are you organizing? I have playbooks and inventory together in the same directory right now. Seems bad. Also, are you using an IDE?

                                      Here are some best practices for directory layouts.

                                      https://docs.ansible.com/ansible/latest/user_guide/playbooks_best_practices.html#directory-layout

                                      https://docs.ansible.com/ansible/latest/user_guide/playbooks_best_practices.html#alternative-directory-layout

                                      1 Reply Last reply Reply Quote 1
                                      • S
                                        stacksofplates @wirestyle22
                                        last edited by stacksofplates

                                        @wirestyle22 said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                                        @stacksofplates How are you organizing? I have playbooks and inventory together in the same directory right now. Seems bad. Also, are you using an IDE?

                                        I'll give you a layout this afternoon. I keep my inventory with my playbooks but roles have their own repositories.

                                        1 Reply Last reply Reply Quote 1
                                        • S
                                          stacksofplates @wirestyle22
                                          last edited by stacksofplates

                                          @wirestyle22 said in Ansible 2.4.2.0 on CentOS 7--ping module isn't working:

                                          @stacksofplates How are you organizing? I have playbooks and inventory together in the same directory right now. Seems bad. Also, are you using an IDE?

                                          So I have my playbooks set up like this (for stuff at home). I've seen people put playbooks in a directory which is fine as well. It's just annoying because your ansible.cfg has to be in relation to your playbooks so you had to mess around with softlinks to get it to work that way.

                                          0_1540763586555_ansible-layout.png

                                          Roles (ones I've written) are in their own directory:

                                          0_1540763644755_ansible-roles-layout.png

                                          Here's my default ansible.cfg which I store with the playbooks:

                                          [defaults]
                                          inventory           = inventory
                                          roles_path          = roles
                                          retry_files_enabled = False
                                          pipelining          = True
                                          library             = library
                                          forks               = 50
                                          callback_whitelist = profile_roles
                                          

                                          And then in the inventory directory I have a prod and dev file that contain all of the groups and hosts.

                                          Also, are you using an IDE?

                                          I switch between VS Code and Vim. However I always turn on Vim mode in anything. I also have things like jj mapped to Esc and AA mapped to drop me to the end of a line in insert mode to make things easier.

                                          1 Reply Last reply Reply Quote 2
                                          • S
                                            stacksofplates
                                            last edited by

                                            So to clarify, playbooks is it's own private repository. Then the roles are public repos. In the roles directory in the playbooks repo I have a single file called requirements.yml. This tells Ansible what roles to install for me before it runs.

                                            It contains entries like this:

                                            - src: https://gitlab.com/hooksie1/ansible-firewalld.git
                                              name: firewalld
                                              scm: git
                                              version: master
                                            

                                            I've been using Jenkins to run my Ansible stuff so I have a build step that runs ansible-galaxy install -r roles/requirements.yml before it runs the playbook. That installs all of the roles for you. As a side note, if you're using Tower it will download the roles automatically if it sees that file exists.

                                            Here's the build steps in Jenkins:

                                            0_1540764303785_jenkins-step.png

                                            I also have started including a Makefile to do the same thing. That way you can just run make clean and make roles to remove and re-download them.

                                            W 1 Reply Last reply Reply Quote 2
                                            • 1
                                            • 2
                                            • 1 / 2
                                            • First post
                                              Last post