Ascender with LTS: CIQ's automation platform
Greg Sowell introduces Ascender, CIQ's automation product based on the upstream Ansible AWX project, by putting existing playbooks to work on a practical task: configuring long-term support for Rocky Linux through CIQ's Mountain product. Mountain lists the manual steps for version-locking a system to CIQ LTS for Rocky Linux 8.6, and the demo replaces those steps with a single job template.
The playbook runs against two hosts, one intended to stay on LTS and one that is not, both starting on Rocky Linux 8.6. The inventory holds the desired LTS version as a host variable, information that could just as easily come from a CMDB such as ServiceNow through a dynamic inventory. For the LTS host, the playbook installs the required packages, updates the CIQ access key stored securely in Ascender, enables the subscription and then runs updates; for the other host it simply updates.
The play recap confirms the result: the LTS host remains on 8.6 after updating while the non-LTS host moves to 8.8. Sowell notes the same approach works for a single application's hosts or an entire fleet, and points viewers to a separate Mountain video by Justin Bernard for more detail.
Key takeaways
- Ascender is based on upstream Ansible AWX, so existing playbooks can be reused with CIQ support behind them.
- Mountain shows manual steps for version-locking Rocky Linux to CIQ LTS; the demo automates them with a job template.
- The desired LTS version is stored as a host variable in the inventory and could be sourced dynamically from a CMDB like ServiceNow.
- The playbook installs LTS packages, updates the CIQ access key, enables the subscription and runs updates only where LTS is required.
- After the run, the LTS host stays on Rocky Linux 8.6 while the non-LTS host in the same inventory updates to 8.8.
Questions this video answers
How can you automate Rocky Linux LTS configuration with Ascender?
Store the target LTS version as a variable on each host in the Ascender inventory. A playbook checks whether LTS is already configured, installs the required packages, updates the CIQ access key, enables the Mountain subscription and runs updates. Hosts without an LTS variable simply receive normal updates in the same run.
Can one Ascender job update a mix of LTS and non-LTS Rocky Linux hosts?
Yes. In the demo two Rocky Linux 8.6 hosts run through the same job template. The playbook detects which host has an LTS version defined, configures it and keeps it at 8.6 after updating, while the other host is updated normally to 8.8, so fleets do not need to be uniform.
This video is part of the Ascender Pro playlist. Browse every CIQ video by product and topic.
Transcript
hey everybody I'm Greg Sowell and I'm here with another ciq demo today I am extremely excited to talk to you about Ascender it is our automation product that is based off the Upstream anible awx project right and so I've been working with anable on the command line and various other methods for quite a few years and now I get to take all those playbooks I've already written or that I can pull off the internet and now I can use them with ciq support so today's example I'm going to be actually showing you something pretty simple I'm going to be doing more Demos in the
future so be looking for those uh but for today I'm going to show you how to do LTS long-term support using our Mountain product and so our Mountain product is this right here and so I'm only going to go into this briefly because Justin Bernard one of my amazing team members did a really good video on it and so pop over there we'll have a a link in the description or maybe something will pop up here on the screen one of these corners but LTS long-term support in this example I've got ciq LTS for Rocky Linux 8.6 right so I've got my 8.6 installed and
for whatever reason I need to version lock it in here I can click on that subscription section inside of um Mountain here and it'll give me all the manual steps right and that's great only I don't want to do it manually I want to use piece of Automation and guess what I've already written a Playbook to do that so I'm going to pop into my Ascender install here I'm going to go to the template section so the template section is where you actually keep your pieces of automation uh that you want to to fire off so I'm going to fire this one off right here
it's my Rocky LTS mix demo and it says mix for a very specific reason and so this is up and running and guess what it's going to go it's going to connect into my machines and it's going to update them whether they're LTS or not and through the magic of editing we don't have to wait I'm going to pause here and we'll come back once it's complete all right the job has now completed and if I look down at the very bottom of my output so any time I launch a piece of automation inside of Ascender it's going to pop up in the job
View full transcriptHide full transcript
section right so if I go to the job section I can click right here I mean it's automatically going to take me there but if I click there I can go back in time and I can see what happened on my job run at the very bottom I see the play recap and I see everything completed successfully so let me walk you through a little bit of the output here so very first two things I'm doing really are just for informational purposes these are just for purposes of this demo same with the very last two right so you could actually shrink down this Playbook a
bit um but it makes it easier for me to kind of show you what's going on here so uh very first thing I do is I connect to those uh two systems one that's going to be the LTS and one that's non-lts and I am just grabbing what version of Linux are you running right you can see they both start out running Rocky Linux 8.6 green obsidian right start at the start pretty easy next I'm going to check and see if there is already any LTS stuff configured for the these devices there is not so it is going to pop in and so my LTS
device it's going to pop in and say hey uh I've noticed based on the inventory information and again an inventory is just a really big list of all the things you could potentially run against here's my LTS one I'm going to pop in the host section and for my LTS device I've actually got it stored right here this is the LTS version I want it to match to and I even use it in my playbook I use this as a variable that I I put in my playbook as well right so this could theoretically be pulled from my cmdb right my configuration management database my
source of truth right so I'm going to keep information about my applications or various things in some place right stored in some database I'm going to pull them into my uh my uh ciq Ascender here pull it into my inventory dynamically I'm going to bring that information along with it right so that cnbb could be something like um service now it's a very popular one that folks use these days right so pulling it in I'm going to have my LTS version so if it's got a variabl IED set of information there for LTS version it knows hey this is LTS make sure it's set to
LTS so it first run it checked and said oh hey you should be set as LTS I don't see that right now so first thing it's going to do it's going to install the required packages to make sure the LTS configuration is done right so really I'm just putting the CLI in there next you can see changed for uh updating the access key for CIQ then I'm enabling the subscription and then last I'm telling it to fire off updates for all these devices which is really cool right because I can have mixed hosts in there they don't all have to be LTS or all
non I can actually run a mixed in there and it's going to determine what does it need to be LTS or non LTS if it's one thing or the other it's actually going to configure it the way it needs to using the mountain access key I'm actually storing it again securely inside of there and I'm pushing that onto the device now the very last thing I do is I am am collecting the OS information again and I'm showing you hey here's my non-lts one or rather this is my LTS one and you can see right here Rocky Linux 8.6 it stayed on our LTS version
just the way we wanted to even after the update and then our non-lts version it went ahead and pulled the updates and now it's at 8.8 so right you can really quickly succinctly see how easily this can complete this task now you could be running this for uh a single application right maybe you've got an application that you're running and it's got a a whole set of hosts and you want to do the updates for them yeah you could do that you could run it across your entire fleet if you want to right you can mix and match you can do this however you want
so if you have any questions or comments please feel free to reach out reach out to me reach out to the rest of the team we always happy to uh be of help be of service so thanks happy automating happy mountaining we'll see you guys next time
Built for scale. Chosen by the world’s best.
2.75M+
Rocky Linux instances
Being used world wide
90%
Of fortune 100 companies
Use CIQ supported technologies
250k
Avg. monthly downloads
Rocky Linux
9
Enterprise products
Spanning the kernel to the orchestrator
Have questions about your infrastructure?
Talk to a CIQ engineer about Rocky Linux, HPC, and AI infrastructure.
