Table of Contents

Ansible

Summary

Ansible is used to automate configuration of many lab services. Since the list is ever-growing, see https://github.com/ceph/ceph-cm-ansible for details.

The secrets repo is a private repo containing vars for things we want to keep secret (duh).

Most information one would need is in the READMEs of ceph-cm-ansible and ceph-sepia-secrets. Go there for more details.

Common tasks

Setting up a brand new infra host

To configure sudoers and users on a new infra host installation,

  1. Set a password for the root or ubuntu user during install
  2. Add to the [production] group in ceph-sepia-secrets
  3. Run
    ansible-playbook -k -K --extra-vars '{ansible_ssh_user: root|ubuntu}' --ssh-extra-args="-o PubkeyAuthentication=no -o PasswordAuthentication=yes" ansible_managed.yml --limit="$NEWHOST.front.sepia.ceph.com"
    
    #Enter password when prompted
    
    ansible-playbook -b users.yml --limit="$NEWHOST.front.sepia.ceph.com"