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: 3 months ago
JSON representation
Infrastructure Platforms and Applications Comparison
- Host: GitHub
- URL: https://github.com/bregman-arie/infraverse
- Owner: bregman-arie
- License: cc0-1.0
- Created: 2021-01-29T11:26:13.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2021-08-30T19:45:52.000Z (about 4 years ago)
- Last Synced: 2024-12-11T07:01:56.249Z (11 months ago)
- Topics: ansible, cicd, configuration-management, devops, gitlab, infra, jenkins
- Homepage:
- Size: 2.28 MB
- Stars: 140
- Watchers: 6
- Forks: 46
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: contributing.md
- License: LICENSE
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 - 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
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
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
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
[](https://creativecommons.org/publicdomain/zero/1.0)











