1 - Ansible Provision and configuration

  1. Environment preparation
    Get ready with 2 CentOS virtual machine, and configure the network to able connect internet and internal communication.
    Please reference to below posts for VM provision and configuration with Hyper-V on Windows 10
    1 - Enable and launch Hyper-V
    2 - Provision Virtual machine with Hyper-V
    3 - Install CentOS with Virtual Machine
    4 - Configure network connectivity for Virtual machine

    One more step before we go further, need to configure these two node to recognize each other, execute below command for both nodes:
    [root@shell-master ~]# cat >> /etc/hosts << _EOF_
    > 192.168.137.163 shell-master
    > 192.168.137.164 shell-node1
    > _EOF_

    Once done Virtual machine setup, we'll have below CentOS machine ready to go:
    Node System Comments
    shell-master CentOS 7 Managing maching, will install Ansible here to manage other machines
    shell-node1 CentOS 7 Managed maching, will be managed by shell-master






    1 - Ansible Provision and configuration
    Note: For the whole practice post, we will be using root user for all the activities/operations.

  2. epel yum repository installation
    Since Ansible is belong to epel (Extra Packages for Enterprise Linux ) repository, so we need to have epel repo first, otherwise CentOS won't find the package for installation.
    Running below command to get epel repo, once done the installation, you will find the epel repo configure file been introduced to the system:
    yum install epel-release -y
    yum repolist

    ls /etc/yum.repos.d

    1 - Ansible Provision and configuration

  3. Ansible will be installed only for managing node shell-master. running below command on shell-master node:
    yum install ansible -y

    If everything goes well, you will get Ansible installed successfully, congratulations !

    1 - Ansible Provision and configuration

  4.  Setup Authentication between master and node
    Ansible manage nodes via SSH, it's not required to install any agent to managed node. However we need to setup Authentication from master to node, to enable SSH authorization.
    Run below command to generate RSA key pairs (Private and Public key) from shell-master:

    ssh-keygen -t rsa -P ''

    1 - Ansible Provision and configuration

  5. Publish RSA public key to managed node
    Now we can publish the authenticate public key to our managed node shell-node1, by running below command from shell-master:
    ssh-copy-id -i ~/.ssh/id_rsa.pub shell-node1

    1 - Ansible Provision and configuration

    Now we've published the authenticated key to shell-node1, you can try login into shell-node1 from shell-master by running below command, you will find there is a file authorized_keys introduced on shell-node1:

    1 - Ansible Provision and configuration
  6. Alright, all good to GO now, we've master and node connected, they able to do the communicate !
    Next let's play with Ansible
上一篇:ansible变量


下一篇:Flink 状态管理