Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/bregman-arie/infraverse

Infrastructure Platforms and Applications Comparison
https://github.com/bregman-arie/infraverse

ansible cicd configuration-management devops gitlab infra jenkins

Last synced: 2 days ago
JSON representation

Infrastructure Platforms and Applications Comparison

Awesome Lists containing this project

README

        

The most ambitious crossover in history since the MCU.
An educational repository regarding the different platforms and projects in the infrastructure world.

Disclaimer: the project in some parts is opininated

- [Cloud](#cloud)
- [Services](#services)
- [CI/CD](#cicd)
- [CI/CD - Platforms](#cicd---platforms)
- [CI/CD - Configuration](#cicd---configuration)
- [Configuration Management](#configuration-management)
- [Dashboards](#dashboards)
- [Provisioning](#provisioning)
- [Monitoring](#monitoring)
- [More Infra related projects](#more-infra-related-projects)
- [Contribute](#contribute)
- [License](#license)

## Cloud

### Services




AWS


Azure


GCP


OpenStack

Open Source Alternatives or Solutions



Compute

EC2


Virtual Machine


Compute Engine


Nova


oVirt



Network

VPC


Virtual Network


VPC


Neutron



Object Storage

s3


Blob Storage


Cloud Storage


Swift



Block Storage

EBS


Disk Storage


Persistent Disk


Cinder



Image

AMI


Images


Images


Glance



Identity

IAM


Active Directory


Identity


Keystone



Load Balancer

Elastic Load Balancing


Load Balancer


Load Balancing


Octavia


Traefik
NGINX
HAProxy
Seesaw



Event/Data Streaming

Kinesis


Stream Analytics


Pub/Sub




Kafka


## CI/CD

### CI/CD - Platforms




Jenkins


GitLab CI


CircleCI


Bamboo


OpenShift Pipelines


TeamCity



OPEN SOURCE














Deployment Options

Managed service,
On-premise


Hosted,
On-premise


Hosted,
On-premise


Managed service,
On-premise


Depends on how OpenShift was deployed


Managed Service, On-Premise



Plugins

Over thousand plugins








Tekton Hub





Pipeline/Job/Task Format

Groovy,
Pipeline DSL


YAML


YAML


Java TaskType Module definition


Kubernetes YAMLs


Kotlin DSL




Best Use Case (imho)

Total Freedom (+ You are not afraid of using Groovy)


When your code is already in Gitlab


When you just want out-of-the-box working CI/CD


No idea


You don't want to maintain a CI/CD server and your CI/CD is mainly containers based


You want versatile CI/CD but don't care about open source

### CI/CD - Configuration




Jenkins


GitLab CI


CircleCI


Bamboo



Set Node/Worker/Runner
Slave

Runner

Runner

Agent

## Configuration Management




Ansible


Puppet


Chef



OPEN SOURCE








Agent
vs.
Agentless

Agentless


Master-Agent


Master-Agent



Underlying
Programming Language

Python


Ruby


Ruby



Push vs. Pull

Both supported.
Push is the default


Both supported.
Pull is the default


Pull

## Dashboards




Kibana


Grafana


ReportPortal



OPEN SOURCE








Querying

Lucene and KQL


Based on the
data source





Supports multiple
data sources

Only Elasticsearch







Visualizations

Pie charts, Line charts
Data tables, Markdown
Geo Maps, Metrics
Heat Map


Pie charts, Line charts
Data tables, Markdown
Geo Maps, Metrics
Heat Map


Pie charts, Line charts
Data tables



Best suited for

Logs Analysis


Metrics Analysis


Pattern Analysis

## Provisioning

Note: Many systems and tools can be used for provisioning (e.g. Ansible). This is focusing on those who were built mainly for this purpose.




Terraform


Pulumi


CloudFormation



OPEN SOURCE








Language
DSL (HCL)
Python, C#, JavaScript,
Go and TypeScript
JSON or YAML


Cloud Agnostic








Written in
Go
Go, Typescript and Python
?


Main Advantage
Large community and
many supported providers
Supports multiple languages
AWS services coverage
and rolling updates management

## Monitoring




Prometheus


Graphite


Nagios




Main Purpose
Time series DB and monitoring system
Time Series DB and Graph rendering of the data
Monitoring system focused specifically on servers and network


OPEN SOURCE








Written in
Go
Python
C


API
RESTful HTTP and JSON
HTTP API Sockets
RESTful HTTP via Addon installation


Written in
Go
Go, Typescript and Python
?


Data Gathering
Pull (Exporters)
Push
Pull (Agents)


Alerts








Queries








Visualizations

Users mainly use Grafana for dashboards





## More Infra related projects



### Contribute
Contributions welcome! Read the [contribution guidelines](contributing.md) first.

### License
[![CC0](https://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0)