Skip to content

Commit 26d3477

Browse files
committed
Trying to fix display issues 3
1 parent 51f7664 commit 26d3477

File tree

2 files changed

+64
-46
lines changed

2 files changed

+64
-46
lines changed

content/learn/vp_agof.adoc

Lines changed: 55 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -30,44 +30,36 @@ In the Ansible GitOps framework, an ansible controller refers to any machine tha
3030

3131
THe link:https://docs.ansible.com/platform.html[Automation controller] is the command and control center for Red Hat Ansible Automation Platform, replacing Ansible Tower. It includes a webUI, API, role-based access control (RBAC), a workflow visualizer, and continuous integration and continuous delivery (CI/CD) integrations to help you organize and manage automation across your enterprise.
3232

33-
The Automation Controller serves as the centralized platform for managing and executing automation across infrastructure. It allows users to create job templates that standardize the deployment and execution of Ansible playbooks, making automation more consistent and reusable. It integrates essential components such as execution environments for consistent automation execution, projects (repositories for automation content), inventories (target endpoints), and credentials (for secure access to resources).
33+
The Automation Controller serves as the centralized platform for managing and executing automation across infrastructure. Use the Automation Controller to create job templates that standardize the deployment and execution of Ansible playbooks, making automation more consistent and reusable. It integrates essential components such as execution environments for consistent automation execution, projects (repositories for automation content), inventories (target endpoints), and credentials (for secure access to resources).
3434

3535
The webUI provides an intuitive interface to build, monitor, and manage automation workflows, while the API offers seamless integration with other tools, such as CI/CD pipelines or orchestration platforms. Overall, the Automation Controller streamlines the automation lifecycle, ensuring a scalable, secure, and maintainable automation environment.
3636

3737
== Ansible framework methods
3838

39-
The three main methods for setting up an Ansible framework in relation to Ansible Automation Platform (AAP) 2.4 can be summarized as follows:
39+
The three main methods for setting up an Ansible framework are as follows:
4040

4141
=== Method 1: AWS-based install
4242

43-
This method is ideal for organizations that prefer deploying AAP on AWS infrastructure. This default install process in AAP 2.4 uses AWS by default and offers a fully automated setup. It requires AWS credentials, builds an AWS image with Red Hat's ImageBuilder, and sets up AAP within an AWS VPC and subnet. The installation program creates all the necessary resources, including AAP Controllers and, optionally, additional components such as Automation Hub.
43+
This method is ideal for organizations that prefer deploying AAP on AWS infrastructure. This default install process in AAP 2.4 uses AWS by default and offers a fully automated setup. It requires AWS credentials, builds an AWS image with Red Hat's ImageBuilder, and sets up AAP within an AWS VPC and subnet. The installation program creates all the necessary resources, including AAP Controllers and, optionally, additional components such as the Automation Hub.
4444

45-
*Pros*: This is the easiest method if you already use AWS, as it automates the provisioning of resources, including VMs and network configurations.
46-
47-
*Cons*: This requires AWS infrastructure and credentials. This is not ideal if you're working in an on-premises environment or a cloud platform other than AWS.
45+
This is the easiest method if you already use AWS, as it automates the provisioning of resources, including VMs and network configurations. This requires AWS infrastructure and credentials.
4846

4947
=== Method 2: Pre-configured VMs Install
5048

51-
This method allows the installation of AAP on pre-configured Red Hat Enterprise Linux (RHEL) VMs. It requires you to provide an inventory file that specifies details about the VMs or instances where AAP will be installed. It is designed for users with existing infrastructure who want to deploy AAP without depending on AWS. If you need to install a pattern on a cluster with a different topology than this, use the API install mechanism.
52-
53-
*Pros*: Useful if you already have pre-configured VMs or bare-metal instances running RHEL. It allows greater flexibility and control over the environment.
54-
55-
*Cons*: Requires more manual effort to configure VMs and may need additional customization for non-standard topologies.
49+
This method allows the installation of AAP on pre-configured Red Hat Enterprise Linux (RHEL) VMs. You need to provide an inventory file that specifies details about the VMs or instances where AAP will be installed. It is designed for users with existing infrastructure who want to deploy AAP without depending on AWS. If you need to install a pattern on a cluster with a different topology than this, use the API install mechanism.
5650

57-
This model has been tested with up to two RHEL VMs (one for AAP and one for Hub).
51+
THis method is useful if you already have pre-configured VMs or bare-metal instances running RHEL. It allows greater flexibility and control over the environment. Using this method requires more manual effort to configure VMs and might need additional customization for non-standard topologies. This model has been tested with up to two RHEL VMs (one for AAP and one for Hub).
5852

5953
The requirements for this mode are as follows:
6054

6155
* Must be running a version of RHEL that AAP supports
6256
* Must be properly entitled with a subscription that makes the appropriate AAP repository available
6357

64-
=== Method 3: Custom Ansible controller (API install aka "Bare")
58+
=== Method 3: Custom Ansible controller (API install)
6559

6660
In this method, you provide an existing Ansible Automation Platform (AAP) Controller endpoint, either on bare metal or in a private cloud, without needing AWS or pre-configured VMs. You specify the manifest, endpoint hostname, admin credentials, and pass the installation process to a predefined `controller_config_dir`. This is suitable for complex or custom topologies where you want full control over the deployment.
6761

68-
*Pros*: Provides maximum flexibility and is designed for advanced users who have their own AAP installations, either on-prem or in complex environments that do not fit into the default or AWS-centric model.
69-
70-
*Cons*: Requires an existing AAP controller, which might not be ideal for users new to AAP or those looking for more hands-off installation
62+
This method provides maximum flexibility and is designed for advanced users who have their own AAP installations, either on-prem or in complex environments that do not fit into the default or AWS-centric model. You need an existing AAP controller, which might not be ideal for users new to AAP or those looking for more hands-off installation
7163

7264
== Creating a validated pattern using the AGOF framework
7365

@@ -120,9 +112,8 @@ You need to provide some key information to a file named `agof_vault.yml` create
120112
$ cp ~/agof/agof_vault_template.yml ~/agof_vault.yml
121113
----
122114
+
123-
124-
. Agof vault settings
125-
115+
.Agof vault settings
116+
+
126117
[cols="30%,70%", options="header"]
127118
|===
128119
| Argument | Description
@@ -143,7 +134,7 @@ $ cp ~/agof/agof_vault_template.yml ~/agof_vault.yml
143134
| An AWS region that your account has access to.
144135

145136
| `offline_token`
146-
| A Red Hat offline token used to build the RHEL image on https://console.redhat.com[console.redhat.com].
137+
a| A Red Hat offline token used to build the RHEL image on https://console.redhat.com[console.redhat.com].
147138

148139
[NOTE]
149140
====
@@ -166,7 +157,7 @@ Click the `GENERATE TOKEN` link at https://access.redhat.com/management/api[Red
166157
| The Organization Number (Org ID) attached to your Red Hat Subscription for RHEL and AAP.
167158

168159
| `activation_key_vault`
169-
| The name of an Activation Key to embed in the imagebuilder image.
160+
a| The name of an Activation Key to embed in the imagebuilder image.
170161

171162
[NOTE]
172163
====
@@ -178,7 +169,7 @@ Click the `Create Activation Keys` link at https://console.redhat.com[console.re
178169
#imagebuilder_ami: 'The ID of an AWS AMI image, preferably one that was built with this toolkit'
179170

180171
| `automation_hub_token_vault`
181-
| A token associated with your AAP subscription used to retrieve Automation Hub content.
172+
a| A token associated with your AAP subscription used to retrieve Automation Hub content.
182173

183174
[NOTE]
184175
====
@@ -192,25 +183,23 @@ Click the `Load token` link at https://console.redhat.com[console.redhat.com] >
192183
| Optional: The private automation hub URL for validated content.
193184
|===
194185

195-
196-
197186
. Edit the file and add the following:
198187

199188
* `controller_config_dir:` set it's value to `{{ '~/agof_minimal_demo/config' | expanduser }}`.
200-
* `db_password:` set an appropriate value for the postgres password for the DB instance for example `test`.
201-
* `agof_statedir:` set its value to "{{ '~/agof' | expanduser }}"
202-
* `agof_iac_repo:` set its value to "https://github.com/mhjacks/agof_demo_config.git"
189+
* `db_password:` sets an appropriate value for the postgres password for the DB instance for example `test`.
190+
* `agof_statedir:` set its value to `"{{ '~/agof' | expanduser }}"`
191+
* `agof_iac_repo:` set its value to `"https://github.com/mhjacks/agof_demo_config.git"`
203192

204-
. Optional: Create a subscription manifest by following the guidance at link:https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.4/htmlred_hat_ansible_automation_platform_operations_guide/assembly-aap-obtain-manifest-files#assembly-aap-obtain-manifest-files[Obtaining a manifest file]
193+
. Optional: Create a subscription manifest by following the guidance at link:https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.4/htmlred_hat_ansible_automation_platform_operations_guide/assembly-aap-obtain-manifest-files#assembly-aap-obtain-manifest-files[Obtaining a manifest file].
205194

206-
.. Update your `agof_vault.yml` file with the path to downloaded manifest zip file. For example add the following:
195+
.. Update your `agof_vault.yml` file with the path to the downloaded manifest zip file. For example add the following:
207196
+
208197
[source,shell]
209198
----
210199
controller_license_src_file: '~/Downloads/manifest_<sub_allocation_name>_20240924T131518Z.zip'
211200
manifest_content: "{{ lookup('file', controller_license_src_file) | b64encode }}"
212201
----
213-
202+
+
214203
.Example agof_vault.yml file
215204

216205
[source,yaml]
@@ -255,6 +244,7 @@ controller_config_dir: "{{ '~/agof_minimal_demo/config' | expanduser }}"
255244
db_password: 'test'
256245
257246
agof_statedir: "{{ '~/agof' | expanduser }}"
247+
258248
agof_iac_repo: "https://github.com/mhjacks/agof_demo_config.git"
259249
----
260250

@@ -312,9 +302,9 @@ It is designed for users with existing infrastructure who want to deploy AAP wit
312302
./pattern.sh make legacy_from_os_install INVENTORY=(your_inventory_file)
313303
----
314304

315-
The path to `your_inventory_file` defaults to ~/inventory_agof if you do not specify one.
305+
The path to `your_inventory_file` defaults to `~/inventory_agof` if you do not specify one.
316306

317-
.Example agof_inventory file
307+
.Example agof_inventory file for just AAP (default)
318308

319309
[source,yaml]
320310
----
@@ -341,26 +331,50 @@ username=myuser
341331
controller_hostname=192.168.5.207
342332
----
343333

344-
=== Method 3: Custom Ansible controller (API install)
334+
.Example agof_inventory file including AAP and Hub
345335

346-
In this method, you provide an existing Ansible Automation Platform (AAP) Controller endpoint, either on bare metal or in a private cloud, without needing AWS or pre-configured VMs.
336+
[source,yaml]
337+
----
338+
[build_control]
339+
localhost
340+
341+
[aap_controllers]
342+
192.168.5.207
347343
348-
Specify
344+
[automation_hub]
345+
346+
[eda_controllers]
347+
348+
[aap_controllers:vars]
349+
350+
[automation_hub:vars]
351+
352+
[all:vars]
353+
ansible_user=myuser
354+
ansible_ssh_pass=mypass
355+
ansible_become_pass=mypass
356+
ansible_remote_tmp=/tmp/.ansible
357+
username=myuser
358+
controller_hostname=192.168.5.207
359+
----
349360

350-
manifest
351-
endpoint hostname
352-
admin credentials, and pass the installation process to a predefined `controller_config_dir`.
361+
=== Method 3: Custom Ansible controller (API install)
353362

363+
In this method, you provide an existing Ansible Automation Platform (AAP) Controller endpoint, either on bare metal or in a private cloud, without needing AWS or pre-configured VMs.
364+
365+
You supply the manifest contents, endpoint hostname, admin username (defaults to "admin"), and admin password, and then the installation hands off to a `controller_config_dir` you define.
354366

367+
* Run the following command to install using this method:
368+
+
355369
[source,terminal]
356370
----
357-
./pattern.sh make api_install
371+
$ ./pattern.sh make api_install
358372
----
359373

360374
=== Tearing down the installation
361375

362-
To tear down the installation run the following command:
363-
376+
* To tear down the installation run the following command:
377+
+
364378
[source,terminal]
365379
----
366380
$ ./pattern.sh make aws_uninstall

content/learn/vp_agof_config_controller.adoc

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ include::modules/comm-attributes.adoc[]
1414

1515
== Understanding the Ansible GitOps Framework (AGOF) installation process
1616

17-
The Ansible GitOps Framework (AGOF) is a powerful solution designed to automate the deployment and configuration of Ansible Automation Platform (AAP) environments using GitOps principles. It leverages Ansible to manage infrastructure and application provisioning in a declarative, version-controlled way. AGOF provides a structured approach to setting up cloud infrastructure, installing AAP components, and handing over control to the AAP Controller for ongoing automation and management. An overview of the steps involved in configuring a basic demo minimal demo application are listed here:
17+
The Ansible GitOps Framework (AGOF) is a powerful solution designed to automate the deployment and configuration of Ansible Automation Platform (AAP) environments using link:https://opengitops.dev/[GitOps principles]. It leverages Ansible to manage infrastructure and application provisioning in a declarative, version-controlled way. AGOF provides a structured approach to setting up cloud infrastructure, installing AAP components, and handing over control to the AAP Controller for ongoing automation and management. An overview of the steps involved in configuring a basic demo minimal demo application are listed here:
1818

1919
=== 1. Pre-Init Environment (Bootstrap Ansible)
2020

@@ -28,8 +28,8 @@ The Ansible GitOps Framework (AGOF) is a powerful solution designed to automate
2828

2929
=== 3. Handover to Ansible Controller
3030

31-
* *Controller Setup*: The Ansible Automation Platform (AAP) Controller and optionally the Automation Hub are installed and configured. Entitlements are managed via a manifest, and execution environments and collections are downloaded and prepared.
32-
* *GitOps Mode*: After configuration, AGOF transitions to GitOps mode. All environment changes are managed via Git commits to the repositories used by the controller, ensuring declarative and automated infrastructure management from this point onward.
31+
* *Controller Setup*: The Ansible Automation Platform (AAP) Controller and optionally the Automation Hub are installed and configured. Entitlements are managed through a manifest, and execution environments and collections are downloaded and prepared.
32+
* *GitOps Mode*: After configuration, AGOF transitions to GitOps mode. Git commits to the repositories by the controller manage all environment changes, ensuring declarative and automated infrastructure management from this point onward.
3333

3434
== Using the Controller Configuration collection
3535

@@ -130,9 +130,13 @@ controller_launch_jobs:
130130
organization: "{{ orgname_vault }}"
131131
----
132132

133-
This file automates the creation, updating, or deletion of Ansible Controller objects (organizations, projects, inventories, credentials, templates, schedules). Sensitive information like passwords and keys are pulled dynamically from vaults, ensuring they are not hardcoded in the configuration. The project’s inventory and playbooks are managed through a Git repository, allowing for continuous integration and delivery (CI/CD) practices. Recurring playbook executions are scheduled automatically, eliminating the need for manual job triggers.
133+
This file automates the creation, updating, or deletion of Ansible Controller objects (organizations, projects, inventories, credentials, templates, schedules). Sensitive information like passwords and keys are pulled dynamically from vaults, ensuring they are not hardcoded in the configuration.
134134

135-
== Key sections and parameters
135+
A a Git repository manages the project’s inventory and playbooks, allowing for continuous integration and delivery (CI/CD) practices. AAP automatically schedules recurring playbook executions, eliminating the need for manual job triggers.
136+
137+
== Key sections and parameters
138+
139+
This section describes the parameters associated with the Ansible GitOps Framework minimal configuration demo.
136140

137141
=== Vault variables
138142

0 commit comments

Comments
 (0)