You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
== About the Ansible GitOps framework (AGOF)for validated patterns
16
16
17
-
The link:/patterns/ansible-gitops-framework/[Ansible GitOps Framework] provides an extensible framework to do GitOps with https://docs.ansible.com/platform.html[Ansible Automation Platform] (AAP), and as such provides useful facilities for developing patterns (community and validated) that function with Ansible Automation Platform as the GitOps engine.
17
+
The link:/patterns/ansible-gitops-framework/[Ansible GitOps Framework] provides an extensible framework to do GitOps with https://docs.ansible.com/platform.html[Ansible Automation Platform] (AAP). It offers useful facilities for developing patterns (community and validated) that work with AAP as the GitOps engine.
18
18
19
19
When there is no access to OpenShift Container Platform, AGOF provides a standalone solution for deploying and managing validated patterns. This framework leverages GitOps principles without relying on OpenShift.
20
20
@@ -26,9 +26,9 @@ The link:https://github.com/validatedpatterns/agof/[Ansible GitOps Framework] re
26
26
27
27
== Role of the Ansible Controller
28
28
29
-
In the Ansible GitOps framework, an ansible controller refers to any machine that initiates and runs a playbook. This includes systems running ansible core or open source Ansible, where the machine executing the playbooks also acts as the controller. AAP provides the automation controller which is Red Hat's productized ansible controller.
29
+
In the Ansible GitOps framework, the Ansible Controller refers to any machine that initiates and runs playbooks. This includes systems running Ansible Core or open source Ansible, where the machine executing the playbooks also acts as the controller. The Ansible Automation Platform (AAP) provides the Automation Controller, which is Red Hat’s productized Ansible Controller.
30
30
31
-
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.
31
+
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 web UI, 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.
32
32
33
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).
34
34
@@ -40,12 +40,12 @@ The main methods for setting up an Ansible framework are as follows:
40
40
41
41
[NOTE]
42
42
====
43
-
This section focussed mainly on the AWSbased installation method.
43
+
The focus here is primarily on the AWS-based installation method.
44
44
====
45
45
46
46
=== AWS based install
47
47
48
-
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.
48
+
This method is ideal for organizations deploying AAP on AWS infrastructure. In AAP 2.4, the default installation process uses AWS and offers a fully automated setup. It requires AWS credentials and builds an AWS image with Red Hat’s ImageBuilder, setting up AAP within an AWS VPC and subnet. The installation program creates all necessary resources, including AAP Controllers and, optionally, additional components such as the Automation Hub.
49
49
50
50
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.
51
51
@@ -57,7 +57,7 @@ This method provides maximum flexibility and is designed for advanced users who
57
57
58
58
== Creating a validated pattern using the AGOF framework
59
59
60
-
Whichever method you use to deploy a validated pattern you need to:
60
+
To deploy a validated pattern, follow these steps:
61
61
62
62
. Clone the link:https://github.com/mhjacks/agof_demo_config[Ansible GitOps Framework Minimal Demo] repository. This is a minimal pattern that demonstrates how to use the Ansible GitOps Framework.
. Run from the AGOF repository directory the following command :
245
+
. Run the following command from the AGOF repository directory:
246
246
+
247
247
[source,terminal]
248
248
----
@@ -284,75 +284,7 @@ Once the install completes, you will have a project, an inventory (consisting of
284
284
285
285
. Under *Views* > *Schedules* verify the schedules are created.
286
286
287
-
288
-
=== Method 2: Pre-configured VMs Install
289
-
290
-
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.
291
-
292
-
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.
293
-
294
-
[source,shell]
295
-
----
296
-
./pattern.sh make legacy_from_os_install INVENTORY=(your_inventory_file)
297
-
----
298
-
299
-
The path to `your_inventory_file` defaults to `~/inventory_agof` if you do not specify one.
300
-
301
-
.Example agof_inventory file for just AAP (default)
302
-
303
-
[source,yaml]
304
-
----
305
-
[build_control]
306
-
localhost
307
-
308
-
[aap_controllers]
309
-
192.168.5.207
310
-
311
-
[automation_hub]
312
-
313
-
[eda_controllers]
314
-
315
-
[aap_controllers:vars]
316
-
317
-
[automation_hub:vars]
318
-
319
-
[all:vars]
320
-
ansible_user=myuser
321
-
ansible_ssh_pass=mypass
322
-
ansible_become_pass=mypass
323
-
ansible_remote_tmp=/tmp/.ansible
324
-
username=myuser
325
-
controller_hostname=192.168.5.207
326
-
----
327
-
328
-
.Example agof_inventory file including AAP and Hub
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.
Copy file name to clipboardExpand all lines: content/learn/vp_agof_config_controller.adoc
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,7 +12,7 @@ aliases: /ocp-framework/agof/
12
12
:_content-type: ASSEMBLY
13
13
include::modules/comm-attributes.adoc[]
14
14
15
-
== Understanding the Ansible GitOps Framework (AGOF) installation process
15
+
== Overview of the Ansible GitOps Framework (AGOF) Installation Process
16
16
17
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:
18
18
@@ -29,17 +29,17 @@ The Ansible GitOps Framework (AGOF) is a powerful solution designed to automate
29
29
=== 3. Handover to Ansible Controller
30
30
31
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.
32
+
* *GitOps Mode*: After configuration, AGOF transitions to GitOps mode. GGit commits made by the controller to the repositories manage all environment changes, ensuring declarative and automated infrastructure management from this point onward.
33
33
34
-
== Using the Controller Configuration collection
34
+
== Controller configuration collection
35
35
36
-
An AGOF pattern for example https://github.com/mhjacks/agof_demo_config is primarily an IaC (infrastructure as code) artifact designed to be used with the `controller_configuration` collections.
36
+
An AGOF pattern, for example, https://github.com/mhjacks/agof_demo_config is primarily an IaC (infrastructure as code) artifact designed to be used with the `controller_configuration` collections.
37
37
38
38
The AGOF (Ansible GitOps Framework) repository https://github.com/validatedpatterns/agof contains the code and tools needed to set up a new Ansible Automation Platform (AAP) instance. This setup is automated, using Infrastructure as Code (IaC) practices. It also includes some specific preferences to make it easier for others to publicly share and manage this type of infrastructure setup.
39
39
40
40
This approach ensures the automation controller configuration is version-controlled, dynamic, and reproducible. This method enables deployment automation with minimal manual intervention, which is useful for managing multiple controller instances or different environments in a CI/CD pipeline.
41
41
42
-
For example for the AGOF minimal configuration demo the file https://github.com/mhjacks/agof_demo_config/blob/main/controller_config.yml is used with Ansible's Controller Configuration Collection, allowing the automation and management of Red Hat Ansible Automation Controller (formerly known as Ansible Tower).
42
+
For example, for the AGOF minimal configuration demo the file https://github.com/mhjacks/agof_demo_config/blob/main/controller_config.yml is used with Ansible's Controller Configuration Collection, allowing the automation and management of Red Hat Ansible Automation Controller (formerly known as Ansible Tower).
43
43
44
44
[source,yaml]
45
45
----
@@ -132,7 +132,7 @@ controller_launch_jobs:
132
132
133
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.
134
134
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.
135
+
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.
0 commit comments