Cobbler is used to reimage testnodes in the lab. The Cobbler host is cobbler.front.sepia.ceph.com and is managed by Ansible. It's a bare metal machine that used to be mira065.
Access the Web UI at https://cobbler.front.sepia.ceph.com/cobbler_web/
See testnodereimage
ceph-cm-ansible repo, there is a tools/cobbler-access.sh script. Run it.wip-username in the ceph-sepia-secrets repo------ String for cobbler.yml ------ into a new line in ansible/inventory/group_vars/cobbler.yml under users_digest_linesansible-playbook cobbler.yml --tags="settings"# Example $ ~/git/ceph/ceph-cm-ansible/tools/cobbler-access.sh Enter username: bob ------ String for cobbler.yml ------ bob:Cobbler:07a95ca759fd46e9416de672a5e2bb60 # Add the user to the cobbler.yml secrets group_vars file dgalloway@w541 ceph-sepia-secrets (wip-bob)$ git diff diff --git a/ansible/inventory/group_vars/cobbler.yml b/ansible/inventory/group_vars/cobbler.yml index 758427a..6968689 100644 --- a/ansible/inventory/group_vars/cobbler.yml +++ b/ansible/inventory/group_vars/cobbler.yml @@ -15,6 +15,7 @@ users_digest_lines: - "yuriw:Cobbler:XXXXX" - "vasu:Cobbler:XXXXX" - "dmick:Cobbler:XXXXX" + - "bob:Cobbler:07a95ca759fd46e9416de672a5e2bb60"
cobbler.ymlroles/cobbler_profile/defaults/main.yml ansible/inventory/group_vars/cobbler.yml in the secrets reporoles/cobbler_profile/defaults/main.ymlansible-playbook cobbler.yml --tags="$NEW_PROFILE_TAG" where $NEW_PROFILE_TAG is the tag created in Step 1$NEW_DISTRO_NAME-stock$NEW_DISTRO_NAME
Because RHEL ISOs are only available inside the Red Hat firewall, we can't add an http URL to the secrets repo. To add a RHEL version:
scp the ISO to cobbler.front.sepia.ceph.com:/isofile:///iso/path
Cobbler keeps a list of supported distros in /var/lib/cobbler/distro_signatures.json so it knows what defaults to apply to a distro/profile.
If a distro is brand-spankin' new, you may get an error like “No signature matched in /var/www/cobbler/ks_mirror/Ubuntu-17.10-server-x86_64”.
First try running cobbler signature update. If it still doesn't show up in cobbler signature report, you'll have to manually add an entry in the JSON.
/var/lib/cobbler/distro_signatures.jsonservice cobblerd restartThis would typically be done if a newer ISO (minor revision) of an OS is released. For example: if you wanted to import Ubuntu 16.04.3 in place of the original 16.04 image.
# Example: for host in $(cobbler system find --profile Ubuntu-16.04-server-x86_64); do cobbler system edit --name=$host --profile inktank-rescue; done
cat these hosts to a file so you can set the profile back after cobbler system find --profile Ubuntu-16.04-server-x86_64 > currently_xenial.dgalloway for host in $(cat currently_xenial.dgalloway); do cobbler system edit --name=$host --profile inktank-rescue; done # Reimport distro for host in $(cat currently_xenial.dgalloway); do cobbler system edit --name=$host --profile Ubuntu-16.04-server-x86_64; done rm currently_xenial.dgalloway