Skip to content

Saturn-Lab-Datacenter is a project that teaches you how to create your own virtual datacenter to learn dev ops tools and other academic applications. The project will show you how to simulate a real datacenter environment and how to configure and manage the resources in an efficient and secure way.

License

Notifications You must be signed in to change notification settings

Kaioguilherme1/Saturn-Lab-Datacenter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Saturn-Lab-Datacenter

This repository aims to teach how to create a virtual datacenter for learning devops tools and other academic applications. The datacenter is composed of a main virtual machine (VM) called Saturn and several other VMs that represent the moons of Saturn. Each VM has a specific function in the datacenter, such as firewall, router, web server, database, etc.

Portuguese Version

Vesão em Português

Prerequisites

We will use Ubuntu 20.04 LTS to run this lab at the moment, but we can add support for Windows later. To follow this tutorial, you will need:

  • A computer with internet access.
  • Minimum computer requirements to run the virtual datacenter:
    • Processor: at least an octacore.
    • RAM: minimum 8 GB, recommended 16 GB.
    • Disk space: minimum 100 GB free, note. this value is dynamic so it will vary depending on what is stored in the datacenter machines.
  • Basic knowledge in linux
  • Willingness to learn.

Dependencies

List the dependencies

  • Virtual box
  • Netplan
  • ssh

Construction

under construction

Usage

The virtual datacenter can be used to learn about devops tools and other academic applications. For example, you can:

  • Install and configure tools such as Docker, Kubernetes, Ansible, Jenkins, etc. on the VMs and use them to create and manage development and production environments.
  • Simulate attacks and defenses on the network using tools such as Nmap, Metasploit, Snort, Suricata, etc. and analyze the logs and alerts generated by pfSense.
  • Create and host websites and web applications using tools such as Apache, Nginx, PHP, MySQL, WordPress, etc. on the VMs and access them from the internet or the local network.
  • Study network concepts and protocols using tools such as Wireshark, Tcpdump, Netcat, etc. and observe the traffic between the VMs.

Development

Status of resources and tools that will be included in the

  • Rede própria
  • pfSense 2.6
  • Ubuntu Server 20.04 LTS
  • Docker
  • Portainer
  • Bind9
  • Swarm
  • Zabbix 6 LTS
  • Graylog 5
  • Jenkins
  • Git
  • Ansible
  • Terraform
  • Grafana
  • Kubernetes

Versions

The datacenter will be divided into 3 versions depending on the desired use depending on the objective of use being:

Saturn-Lab-minimal

In this version, you can create a lean datacenter with the minimum resources of operation for those who want to customize their datacenter as much as possible by hand. The resources are:

  • Own network - An isolated network that connects the datacenter VMs.
  • Bind9 - A DNS server software that allows you to resolve domain names to IP addresses.
  • Ubuntu Server 20.04 LTS - A lightweight and stable operating system for VMs.
  • pfSense 2.6 - A firewall and network router software that allows you to manage the traffic and security of the network.

Saturn-Lab-base

In this version, you can create a more complete virtual datacenter, with the same tools as the minimal version, plus some tools to automate and manage the containers.

Resources:

  • Own network - An isolated network that connects the datacenter VMs.
  • Bind9 - A DNS server software that allows you to resolve domain names to IP addresses.
  • Ubuntu Server 20.04 LTS - A lightweight and stable operating system for VMs.
  • pfSense 2.6 - A firewall and network router software that allows you to manage the traffic and security of the network.
  • Zabbix 6 LTS - A network monitoring system that allows you to collect and analyze performance and availability data from VMs and containers.
  • Graylog 5 - A log management system that allows you to collect and analyze logs from VMs and containers.
  • Docker - A container platform that allows you to package and run applications in an isolated and portable way.
  • Swarm - A container orchestrator that allows you to manage a cluster of VMs as a single entity.
  • Portainer - A graphical interface for managing Docker and Swarm containers.

Saturn-Lab-Full

In this version, you can create an advanced virtual datacenter, with all the tools from the previous versions, plus some tools to monitor and analyze the performance and logs of the VMs and containers, as well as automate and integrate the development and delivery of software.

Resources:

  • Own network - An isolated network that connects the datacenter VMs.
  • Bind9 - A DNS server software that allows you to resolve domain names to IP addresses.
  • Ubuntu Server 20.04 LTS - A lightweight and stable operating system for VMs.
  • pfSense 2.6 - A firewall and network router software that allows you to manage the traffic and security of the network.
  • Docker - A container platform that allows you to package and run applications in an isolated and portable way.
  • Swarm - A container orchestrator that allows you to manage a cluster of VMs as a single entity.
  • Portainer - A graphical interface for managing Docker and Swarm containers.
  • Zabbix 6 LTS - A network monitoring system that allows you to collect and analyze performance and availability data from VMs and containers.
  • Graylog 5 - A log management system that allows you to collect and analyze logs from VMs and containers.
  • Jenkins - A continuous integration and delivery tool that allows you to automate the software lifecycle.
  • Git - A distributed version control system that facilitates the management and sharing of source code.
  • Ansible - An IT automation tool that allows you to configure and manage servers, applications and infrastructure.
  • Terraform - A tool for creating, changing and versioning infrastructure with security and efficiency.
  • Grafana - A data visualization tool that allows you to create interactive dashboards and charts from various data sources.
  • Kubernetes - A container orchestration system that allows you to automate the deployment, scaling and management of containerized applications.

Contribution

This repository is an open and collaborative project. You can contribute with suggestions, corrections, improvements or new features. For that, you can:

  • Open an issue reporting a problem or requesting a change.
  • Fork the repository and submit a pull request with your changes.
  • Contact the author of the repository by email or social networks.

Authors

Mention all those who helped lift the project from its inception

License

This project is under the license (MIT) - see the file LICENSE.md for details.

About

Saturn-Lab-Datacenter is a project that teaches you how to create your own virtual datacenter to learn dev ops tools and other academic applications. The project will show you how to simulate a real datacenter environment and how to configure and manage the resources in an efficient and secure way.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages