diff --git a/03-unbound-dns/README.md b/03-infra01-server/03-unbound-dns/README.md similarity index 100% rename from 03-unbound-dns/README.md rename to 03-infra01-server/03-unbound-dns/README.md diff --git a/04-free-ipa/README.md b/03-infra01-server/04-free-ipa/README.md similarity index 100% rename from 04-free-ipa/README.md rename to 03-infra01-server/04-free-ipa/README.md diff --git a/05-templates/README.md b/03-infra01-server/05-templates/README.md similarity index 100% rename from 05-templates/README.md rename to 03-infra01-server/05-templates/README.md diff --git a/06-matchbox/README.md b/03-infra01-server/06-matchbox/README.md similarity index 100% rename from 06-matchbox/README.md rename to 03-infra01-server/06-matchbox/README.md diff --git a/03-infra01-server/install.yml b/03-infra01-server/install.yml new file mode 100644 index 0000000..60c7d04 --- /dev/null +++ b/03-infra01-server/install.yml @@ -0,0 +1,15 @@ +--- +- name: Install all software on infra01 + hosts: infra01 + connection: local + gather_facts: true + become: yes + + collections: + - somaz94.ansible_k8s_iac_tool + + roles: + - install_kustomize + + tasks: + diff --git a/10-sno-hub-cluster/05-bootstrap-acm/README.md b/10-sno-hub-cluster/05-bootstrap-acm/README.md new file mode 100644 index 0000000..e69de29 diff --git a/10-sno-hub-cluster/05-bootstrap-acm/install2.yml b/10-sno-hub-cluster/05-bootstrap-acm/install2.yml new file mode 100644 index 0000000..53e60b0 --- /dev/null +++ b/10-sno-hub-cluster/05-bootstrap-acm/install2.yml @@ -0,0 +1,13 @@ +--- +- name: Run all tasks necessary to configure matchbox to install the cluster + hosts: matchbox + connection: local + gather_facts: true + + tasks: + - name: Clone Git repository + ansible.builtin.git: + repo: "https://github.com/redhatryan/acm-hub-bootstrap.git" + dest: 05-bootstrap-acm + version: main + become: true diff --git a/group_vars/hub-cluster/vars b/group_vars/hub-cluster/vars index f05c9db..3c45e44 100644 --- a/group_vars/hub-cluster/vars +++ b/group_vars/hub-cluster/vars @@ -1,4 +1,5 @@ cluster_name: "hub" +cluster_version: "4.17.20" base_domain: "int.mk-labs.cloud" worker_node_count: 0 master_node_count: 1 diff --git a/requirements.yml b/requirements.yml index 9bda7f6..596acfa 100644 --- a/requirements.yml +++ b/requirements.yml @@ -2,3 +2,9 @@ collections: - name: community.general version: 10.4.0 + + - name: nccurry.openshift + version: 1.4.0 + + - name: somaz94.ansible_k8s_iac_tool + version: 1.1.6 diff --git a/step-by-step.md b/step-by-step.md index 386621e..1953ff0 100644 --- a/step-by-step.md +++ b/step-by-step.md @@ -42,8 +42,16 @@ This ~~is~~ *will be* the complete walkthrough of the deployment of my homelab. cd homelab ansible-galaxy collection install -r + ansible-playbook -i inventory.yml 10-sno-hub-cluster/install.yml + ``` +Other needed software: +- kustomize +- oc +- ansible +- terraform + ## [FreeIPA](04-free-ipa/README.md) *Manual* ## [Templates](05-templates/README.md) *Manual* @@ -80,6 +88,15 @@ This ~~is~~ *will be* the complete walkthrough of the deployment of my homelab. ``` - Admin password and kubeconfig are in the homelab/10-sno-hub-cluster/03-openshift-image/auth directory +- Bootstrap ACM + + Running this playbook will configure Matchbox to wait for the sno-cluster to boot via iPXE and will install Single Node OpenShift. All configuration files are built from templates driven from Ansible variables. + + ```bash + ansible-playbook -i inventory.yml 10-sno-hub-cluster/install2.yml + ``` + +10-sno-hub-cluster/05-bootstrap-acm/bootstrap.sh ## Internal Cluster *TBD*