Skip to content

AnnaDob/gitops-task

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitOps Task

Setup and run GitOps infrastructure with spam2000 app and monitoring system.

Tech Stack

Component Technology Purpose
Orchestration Minikube Local Kubernetes cluster
GitOps ArgoCD Automatic synchronization with Git
Monitoring VictoriaMetrics Metrics collection and storage
Visualization Grafana Dashboards and visualization
Package Manager Helm Manage Kubernetes applications
Application spam2000 Application that generates metrics

Prerequisites

The following tools must be installed on your local machine:

  • Minikube
  • kubectl
  • Docker
  • Helm
  • Git
  • ArgoCD CLI

Installation

  1. Clone the repository:
git clone https://github.com/AnnaDob/gitops-task.git
cd gitops-task
  1. Run the bootstrap script:
./bootstrap.sh
  1. Wait until the bootstrap script completes. It may take up to 10 minutes for all pods to start and reach the Running state.

Access to Applications

After the script finishes, the following services will be available:

App URL
ArgoCD http://localhost:8080
Grafana http://localhost:3000
Spam2000 http://localhost:8081

ArgoCD

kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d

Grafana

kubectl get secret monitoring-grafana -n monitoring -o jsonpath="{.data.admin-password}" | base64 -d; echo

Spam2000 App

Expected Result

  • Everything is deployed with a single command
  • Any parameter change in Git automatically updates deployed resources (GitOps)
  • Monitoring system provides dashboards for both the cluster and the spam2000 app

ArgoCD Application

ArgoCD Applications

ArgoCD Applications

ArgoCD Applications

Grafana Dashboards

Grafana Dashboard

Grafana Dashboard

Spam2000 App

Spam2000 Metrics

Spam2000 Metrics

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages