Open noelmcloughlin opened 3 years ago
Saltstack formulas (https://github.com/saltstack-formulas) is very mature for CNCF. I am a core maintainer. Salt-Formulas (https://github.com/salt-formulas) may merge with Saltstack-Formulas. Ansible Galaxy (https://galaxy.ansible.com) is unclear so needs study.
List of CNCF installers avaialble from Saltstack formulas community used in SODA:
- epel-formul (**)
- salt-formula (*****)
- openssh-formula (**)
- packages-formula (*****)
- firewalld-formula (**)
- etcd-formula (****)
- ceph-formula (**)
- deepsea-formula (**)
- docker-formula (*****)
- helm-formula (**)
- iscsi-formula (*****)
- lvm-formula (*****)
- devstack-formula (****)
- golang-formula (*****)
- memcached-formula (***)
- opensds-formula (*****)
- mysql-formula (****)
- timezone-formula (****)
- resolver-formula (***)
- nginx-formula (****)
- mongodb-formula (*****)
- node-formula (****)
- apache-formula (*****)
- prometheus-formula (******)
- grafana-formula (****)
- sysstat-formula (*****)
- kubernetes-formula (*****)
Ratings: Outstanding=5star, Good=4star, mature=3star, Limited=2star.
List of CNCF installers available from the salt-formulas community used in SODA:
N/A
https://landscape.cncf.io/category=automation-configuration&format=card-mode&grouping=category
In SODA we have used Ansible, Salt, StackStorm for Automation, and Configuration.
I guess SODA Installer should use:
CNCF PROVISIONING: AUTOMATION AND CONFIGURATION
Airship - loosely coupled but interoperable open source tools that declaratively automate cloud provisioning (Reference Airship manifests, CICD, and reference architecture.) Ansible - Automate everything from code deployment to network configuration to cloud management, in a language that approaches plain English, Apollo - Apollo is a reliable open-source configuration management system CloudFormation, language for you to describe and provision all the AWS infrastructure resources Bosh: Cloud Foundry BOSH is an open source tool chain Cadence, distributed, scalable, durable, and highly available fault-oblivious stateful code platform CF Engine: Automate large-scale, complex and mission critical IT infrastructure Chef Infrastructure into code Custodian: Rules engine for cloud security, cost optimization, and governance, DSL in yaml Cloudify, Multi-Cloud Automation Couler, Unified Interface for Constructing and Managing Workflows Foreman Server Lifecycle Juju devops tooling built to manage today's complex applications Kiosk, Multi-Tenancy Extension For Kubernetes KubeEdge, - Kubernetes Native Edge Computing Framework LinuxKit, building secure, portable and lean operating systems for containers MaaS: Self-service, remote installation ManageIQ, Manage containers, virtual machines, networks, and storage from a single platform Metal3-io, Bare metal host provisioning for Kubernetes OpenStack, Open Source Cloud OpenYurt, An open platform that extends upstream Kubernetes to Edge Pulumi Pulumi - Modern Infrastructure as Code Puppet Server automation framework and application RunDeck: Self-Service Operations: Give specific users access to your existing tools, services, and scripts Saltstack, automate the management and configuration of any infrastructure or application at scale. Stackstorm, event-driven automation for auto-remediation, security responses, troubleshooting, deployments, and more Terraform, create, change, and improve infrastructure vSphere server virtualization software and the heart of a modern SDDC
Issue/Feature Description:
Most Installer Open Issues (OS, Technology) are already fixed by upstream Saltstack Formulas. We need to decide if Ansible Galaxy is mature enough to be integrated into Soda Installer. This is a task to make an inventory of:
Why this issue to fixed / feature is needed(give scenarios or use cases):
SODA is an open-source integration project whose Installer must scale to support two pipelines:
SODA landscape installer(s) is the core responsibility of SODA Engineers. We are responsible for the SDLC of these artifacts.
CNCF landscape (https://landscape.cncf.io) must be treated differently. There are potentially thousands of components that could be reused, each delivering their own installation procedures (tarball, packages, installers). The de-facto solution for integrating CNCF integration is to use configuration management tools (Ansible/Salt/chef/puppet/Stackstorm) to deploy a project and CI/CD technologies to ensure installer faults are not captured by end-users.