StackStorm: Event-driven automation
github.com
github.com
Rundeck is another closest competitors that worth mentioning. Things have evolved a lot in the ops space since then.
With advent of container orchestration of the operational automation pieces have also moved to the orchestration layer. There have been quite some new tools in the space I have been tracking for instance Fylament [2] which got acquired by netapp, blinkops etc. Post rendezvous with this domain, some bigger problems most of the major framework tools like this have is that, it is very hard to get started. There are lot of pre-requisites given the nature of the ops automation, this leads to a problem where it is very hard to active a customer. Secondly, these frameworks are always competing with it is bash/python script deployed with some container orchestration or some cronjobs. I have also seen people write CRDs and reconciliation loops in k8s doing lot of the tasks these automation frameworks would do.
[1] https://en.wikipedia.org/wiki/StackStorm
[2] https://www.netapp.com/newsroom/press-releases/news-rel-2022...
I even had one manager tell me that there was value in having someone do it manually instead of automatic, I suspect part of their pay or career progression was based on the size of their team.
They absolutely can. Find a spare host or create a VM. Write a shell script to run docker, or much better, use "docker compose" to create the setup. Have it run on the quiet for a while and get familiar with it, a little more every day, before using it in production. It's crucial that you are confident about using it, so that when you come to sell it to anyone else, your confidence transfers to them. (Sales, in large part, is about the transfer of feeling.) Once you have got the deployment and backup/restore, and tool-specific critical procedures clear in your mind, you're ready.
It's not a five-minute job; it's about demonstrating your strategic value to management by getting out of the toil loop. But, to be clear, if you feel you don't have the backing of anyone about such things, you certainly have my sympathy. The best way I have found out of the mire is to work on a workflow (create/destroy, backup/restore, LDAP integration) a little a day, until it's there, and then suddenly, your work put in over the days and weeks will be an overnight success.
Good luck!
I am not in an ops role at the moment, but in the past nothing has been able to beat cron. And the main reason is the time required to get automation tools up and running.
https://www.ansible.com/blog/getting-started-with-event-driv...
But, now we have some Jenkins jobs that would benefit from being isolated from Ansible runs, so Rundeck might be a good way to run those.
I work with climate and weather workflows, where cycles in workflows are common (ecFlow and Cylc are popular tools that support it).
Haven't checked in a while but I expect StackStorm's Orchesta engine to have even more interesting features now.
Other options available:
- deb/rpm packages
- Vagrant
- Docker-compose
- Ansible/Puppet
- Kubernetes/Helm
https://docs.stackstorm.com/install/index.html...or at least one that fucking works
zzz@hydra:~$ curl -sSL https://stackstorm.com/packages/install.sh | bash -s -- --user=st2admin --password=Ch@ngeMe
*** Detected Distro is Debian ***
*** Detected flavor bookworm ***
Unsupported ubuntu codename bookworm. Please use 16.04 (xenial) or Ubuntu 18.04 (bionic) or Ubuntu 20.04 (focal) as base system!
I've tried to drop the check for distro only to be asked for fucking sudo which is like... WTF ? zzz@hydra:/tmp$ ./install.sh --user=st2admin --password=Ch@ngeMe
*** Detected Distro is Debian ***
*** Detected flavor bookworm ***
Downloading deployment script from: https://raw.githubusercontent.com/StackStorm/st2-packages/v3.8/scripts/st2bootstrap-deb.sh...
Running deployment script for st2 ...
OS specific script cmd: bash st2bootstrap-deb.sh --stable --user=st2admin --password=****
[sudo] password for zzz:
curl|sh that downloads more curl|sh is also interesting choice.Expect to get MongoDB, RabbitMQ and Redis installed as dependencies.
It is curl|sh that also requires sudo
Works well for DevOps and SRE operations and like K8s, needs a whole team to run it
Today StackStorm has an open-source ecosysem with several partner companies (5) providing consulting, commercial support, custom solutions or training for the clients that may need it: https://stackstorm.com/partners/
These partners also contribute back to the core and help supporting the project together with the other maintainers.
- Prefect.io
- Apache Airflow
- Ansible Tower
There's also a bi-directional ChatOps framework you can tie with the workflows to make the experience more interactive.
So you can listen on events (could be a chat command) from 3rd party services, do some rule filtering & matching (all in YAML), and trigger workflows with the logic that runs actions in other tool(s) and service(s).
StackStorm has Exchange [4], - a collection of 100+ plugin integrations with different tools and services contributed and supported by community to make that building blocks juggling easier.
[1] https://docs.stackstorm.com/orquesta/index.html
[2] https://github.com/StackStorm/st2/tree/master/contrib/exampl...
I founded a startup that does something similar for Kubernetes:
http://github.com/robusta-dev/robusta
We've seen a bit of StackStorm too with our users!
The repo linked here appears to have contributions merged in that last month and it has a bunch of active pull requests.
* The release management team is preparing the v3.8.0 release right now, - coming out soon next week.
* There are 15 Maintainers (https://github.com/StackStorm/st2/blob/master/OWNERS.md) in the Technical Steering Committee (TSC), a very diverse group, but I'd say only 1/3 or half are really active.
* There are monthly TSC meetings and we invite curious to join us: https://github.com/StackStorm/community/issues/33 (next meeting is on 6th Dec).
* Past Meetings: https://github.com/StackStorm/community/issues?q=is%3Aissue+...
* The project is under the neutral Linux Foundation umbrella with no single commercial owner, so probably why less marketing. We have blog/twitter/linkedin with the mostly engineering updates for engineers.
But I agree with the sentiment overall, - the development velocity could be higher and we definitely welcome new contributors and interested folks. The tool is written in Python if someone is willing to join, play with it and start contributing.