Ansible Private Automation Hub – Creating Content – Part 1

Overview

This is going to be a multi part on using Private Automation Hub, creating, publishing and using your own content.

You will need

  • Private automation hub
  • Ansible Tower 3.8+
  • local box with Ansible installed

Setting up of Automation Hub

We need a namespace for our collection, I like to think of the namespace as either a company when this is public facing i.e Red Hat, Cisco, AWS etc etc or when being used for an internal company use the departments i.e Database, Networking and so on as the respected teams would own there own collections. For this walkthrough I will be using a namespace called ‘devops’

We will also need a group and a user assigned rights to this namespace, as of automation hub 1.2 all users and groups are local only.

1.) Creating a group

a.) Navigate to Groups and then Create

b.) Give your group a name ( Note ensure this is lowercase)

c.) If needed set additional permissions here by selecting Edit for now I am leaving this as default

2.) Creating a user

a.) Navigate to Users and then Create User

b.) Fill out the user form ( requireed fields are username and password ) and assign this use to the respected group

3.) Create a Namespace

a.) Navigate to My Namespace and then click on create

Note I am logged into my automation hub as Admin and have synced all the content from cloud.redhat.com hence you see a10, amazon etc you cannot use the same namespace names

b.) Fill out the namespace form, by giving it a name ( lowecase ) assign a group to it in my case devops group and I have giving it the upload to namespace privilege

c.) After creating this you will be in the namespace view, we want to go ahead and create an API Key for this name space and note it down

Then click on Load Token

And copy the API key and keep this safe as everytime you load the token it will overwrite the existing ones

Part 2 we will be creating our first collection and uploading it to Automation Hub

Opsgenie Edge Connector & custom actions via Ansible.

What does it bring.

Opsgenie is the glue that holds Alert and Incidents together, by allowing all tools to stay in sync during the life-cycle of the alert or incident

Ansible is the I.T automation glue that holds the configuration / orchestration management together

We are rapidly increasing the number of services per head count in the on demand era and both tools show no issues in meeting the challenge of an increased workload, but they have there own area of expertise, yet if we take a thousand foot view its clear having them work together we can achieve great things.

Continue reading “Opsgenie Edge Connector & custom actions via Ansible.”

Ansible Tower Smarter inventories.

I love the idea of smart inventories, I want a large dynamic inventory and then create small subset inventories based on filters to pass onto my other groups. However; There is a huge issue with the smart inventory that it doesn’t present the group information down to them. So if my DBA team has Dev, QA and Prod environments I would need to create 3 inventories for them DB-Dev, DB-QA and DB-Prod instead of being able to just create one DB group and let them set there job template based on a limit to the environment.

Continue reading “Ansible Tower Smarter inventories.”

CloudForms Fix SmartState for VMWare 6.7

VMWare made significant changes of the API’s with the release of 6.7 and as such the way we mount vmdk and read then has changed, you will see once you upgrade that CloudForms can no longer perform a SSA, the error in the User interface will look similar to this.

Continue reading “CloudForms Fix SmartState for VMWare 6.7”

Set custom virtual environments and Ansible versions in Tower

Tower 3.3 introduced the ability to have multiple versions of Ansible availble, this can be really useful if we have custom python packages needed with dependencies we dont want to upgrade, or we want a specific version of Ansible being run to combat anything deprecated.

Continue reading “Set custom virtual environments and Ansible versions in Tower”

Auto Remediation with Zabbix and Ansible Tower Part 1

Objective Goals

1.) Automatically detect new systems and logically add them to a group

2.) If no Agent is found to be running, then to have Ansible Tower run a job to set it up

3.) Create a collection of playbooks that can be used for auto remediation

Continue reading “Auto Remediation with Zabbix and Ansible Tower Part 1”

Auto Patch schedule with Satellite 6.3 and Ansible Tower Part 3

From the previous 2 parts we have set up Satellite and created our Ansible Playbooks, now we want to put it all together on Tower by creating the Job Templates and Workflows to make this happen.

Continue reading “Auto Patch schedule with Satellite 6.3 and Ansible Tower Part 3”

Auto Patch schedule with Satellite 6.3 and Ansible Tower Part 2

In Part one we went over the setup of Satellite and Katello-cvmanager to perform the publish and promote in Satellite.

Now we want to create the playbooks that Ansible Tower with use in order to  patch the servers and then setup the next lifecycle environment.

You want to create these playbooks, You can skip this section and grab them from my github repo HERE but as always understand what is being done before you just run them.

Continue reading “Auto Patch schedule with Satellite 6.3 and Ansible Tower Part 2”