Skip to content

Latest commit

Β 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ€– AI-DevOps-Assistant

Terraform Docker Amazon EKS GitHub Actions ArgoCD Prometheus Amazon Bedrock Streamlit


πŸ“– Project Overview

  • AI-DevOps-Assistant is an end-to-end cloud-native DevOps and AIOps platform that demonstrates how modern applications can be built, deployed, monitored and intelligently managed on AWS.

  • The project combines Kubernetes, GitOps, Infrastructure as Code, CI/CD automation, observability and Generative AI into a single production-inspired architecture.

  • The application follows GitOps principles where Git remains the single source of truth and ArgoCD continuously synchronizes the Kubernetes cluster with the latest repository changes.

  • Infrastructure provisioning is completely automated using Terraform while GitHub Actions builds, scans, packages and publishes every microservice automatically.

  • The deployed application runs on Amazon EKS and is continuously monitored using Prometheus, Grafana, Alertmanager and Amazon CloudWatch.


🎯 Project Objectives

  • Build a Cloud-Native Microservices Platform
  • Implement Infrastructure as Code using Terraform
  • Provision an Amazon EKS Cluster
  • Deploy containerized workloads on Kubernetes
  • Implement GitOps using ArgoCD
  • Automate CI/CD using GitHub Actions
  • Store Docker images in Amazon ECR
  • Secure workloads using IAM, OIDC and IRSA
  • Manage secrets using AWS Secrets Manager
  • Monitor applications using Prometheus & Grafana
  • Centralize logs using Fluent Bit & CloudWatch
  • Integrate Amazon Bedrock Agents for AIOps
  • Build an AI-powered DevOps Assistant

✨ Key Features

☁ Cloud Infrastructure

  • Amazon VPC
  • Amazon EKS
  • Managed Node Groups
  • Amazon ECR
  • IAM Roles
  • IAM OIDC Provider
  • IAM Roles for Service Accounts (IRSA)
  • AWS Secrets Manager

πŸš€ CI/CD

  • GitHub Actions
  • Automated Docker Builds
  • Security Scanning
  • Amazon ECR Push
  • Automatic Image Versioning
  • Kubernetes Manifest Updates

πŸ”„ GitOps

  • ArgoCD
  • Auto Sync
  • Self Heal
  • Pruning
  • Drift Detection
  • Desired State Management

☸ Kubernetes

  • Deployments
  • Services
  • ConfigMaps
  • Secrets
  • StatefulSets
  • Namespaces
  • Service Accounts
  • Rolling Updates

πŸ“Š Observability

  • Prometheus
  • Grafana
  • Alertmanager
  • Fluent Bit
  • Amazon CloudWatch
  • Metrics Collection
  • Log Aggregation
  • Dashboard Visualization

πŸ€– AI Operations

  • Amazon Bedrock Agent
  • Lambda Action Groups
  • Root Cause Analysis
  • Log Investigation
  • Metrics Analysis
  • Service Health Monitoring
  • AI Recommendations

🧱 Architecture Highlights

Developer
     β”‚
     β–Ό
GitHub Repository
     β”‚
     β–Ό
GitHub Actions CI Pipeline
     β”‚
     β”œβ”€β”€β”€β”€β”€β”€β”€β”€β–Ί Build Docker Images
     β”œβ”€β”€β”€β”€β”€β”€β”€β”€β–Ί Security Scan
     β”œβ”€β”€β”€β”€β”€β”€β”€β”€β–Ί Push Images to Amazon ECR
     └────────► Update Kubernetes Manifests
                    β”‚
                    β–Ό
              GitHub Repository
                    β”‚
                    β–Ό
                 ArgoCD
                    β”‚
                    β–Ό
            Amazon EKS Cluster
                    β”‚
      β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
      β–Ό             β–Ό             β–Ό
 PostgreSQL   Microservices   Monitoring
                                   β”‚
                                   β–Ό
                         Amazon Bedrock Agent
                                   β”‚
                                   β–Ό
                        AI DevOps Assistant (KIRA)

πŸ›  Technology Stack

Layer Technology
Frontend React
Backend FastAPI / Python
AI Assistant Streamlit
AI Platform Amazon Bedrock
AI Model Qwen3 32B
AI Actions AWS Lambda
Database PostgreSQL
Containers Docker
Local Development Docker Compose
Container Registry Amazon ECR
Kubernetes Amazon EKS
Infrastructure Terraform
CI GitHub Actions
GitOps ArgoCD
Monitoring Prometheus
Dashboards Grafana
Alerts Alertmanager
Logging Fluent Bit
Log Storage Amazon CloudWatch
Secrets AWS Secrets Manager
Authentication IAM + OIDC + IRSA

πŸ“‚ Project Structure

AI-DevOps-Assistant/

β”‚
β”œβ”€β”€ .github/
β”‚   └── workflows/
β”‚       └── ci.yml
β”‚
β”œβ”€β”€ Architecture/
β”‚   └── architecture.png
β”‚   
β”‚
β”œβ”€β”€ docs/
β”‚
β”œβ”€β”€ gitops/
β”‚   β”œβ”€β”€ k8s/
β”‚   β”œβ”€β”€ manifests/
β”‚   β”œβ”€β”€ kustomization.yaml
β”‚   └── argocd.yaml
β”‚
β”œβ”€β”€ projects/
β”‚
β”‚   β”œβ”€β”€ boutique-microservices/
β”‚   β”‚
β”‚   β”œβ”€β”€ Infrastructure/
β”‚   β”‚
β”‚   └── aiops-assistant/
β”‚
β”œβ”€β”€ README.md
β”‚
└── LICENSE

πŸ›  Tools

☸ Amazon EKS Microservices

Microservice Responsibility
Frontend React Web Application
Gateway API Routes requests to backend services
Auth Service Authentication & Authorization
User Service User Management
Product Service Product Catalog
Order Service Order Processing
Orders Service Order Management

πŸ—„ Postgres Databases

  • User Information
  • Product Catalog
  • Orders
  • Authentication Data
  • Application Metadata

πŸš€ GitHub Actions Workflow

Push Code
      β”‚
      β–Ό
Checkout Repository
      β”‚
      β–Ό
Install Dependencies
      β”‚
      β–Ό
Run Lint/Test
      β”‚
      β–Ό
Build Docker Images
      β”‚
      β–Ό
Security Scan
      β”‚
      β–Ό
Push Images to Amazon ECR
      β”‚
      β–Ό
Update Kubernetes Manifests
      β”‚
      β–Ό
Commit Updated Image Tags

πŸ“¦ Amazon Elastic Container Registry (ECR)

  • frontend
  • gateway
  • auth
  • user-service
  • product-service
  • order-service
  • orders

πŸ”„ GitOps using ArgoCD

GitHub
    β”‚
    β–Ό
ArgoCD
    β”‚
    β–Ό
Detect Changes
    β”‚
    β–Ό
Sync Cluster
    β”‚
    β–Ό
Deploy New Version

☁ Infrastructure Provisioning

  • Amazon VPC
  • Public Subnets
  • Route Tables
  • Internet Gateway
  • Amazon EKS Cluster
  • Managed Node Group
  • Amazon ECR Repositories
  • IAM Roles
  • IAM Policies
  • IAM OIDC Provider
  • Helm Releases
  • ArgoCD
  • Monitoring Stack

πŸ” Security

  • IAM Roles
  • IAM Policies
  • IAM OIDC Provider
  • IAM Roles for Service Accounts (IRSA)
  • AWS Secrets Manager

πŸ“Š Observability Stack

Prometheus

  • Collect Metrics
  • Kubernetes Monitoring
  • Service Metrics

Grafana

  • Dashboards
  • Visualization
  • Performance Monitoring

Alertmanager

  • Alert Rules
  • Notifications
  • Incident Alerts

Fluent Bit

  • Log Collection
  • Kubernetes Log Forwarding

CloudWatch

  • Centralized Log Storage
  • Log Search
  • Operational Visibility

πŸ€– Amazon Bedrock Integration

  • Fetch Logs
  • Fetch Metrics
  • Check Service Health

Example:

Why is my Product Service unhealthy?
  • Invokes Lambda
  • Retrieves metrics
  • Collects logs
  • Checks service health
  • Generates an AI response

πŸ€– AI DevOps Assistant (KIRA)

  • The AI-DevOps-Assistant extends a traditional DevOps platform by integrating Amazon Bedrock Agents to automate operational tasks using Generative AI.

  • Instead of manually checking dashboards, logs, and Kubernetes resources, engineers can interact with an AI assistant using natural language.

  • The assistant can investigate production issues, analyze metrics, inspect logs, and perform service health checks through AWS Lambda Action Groups.


🧠 AI Workflow

                 User
                  β”‚
                  β–Ό
         Streamlit Web Interface
                  β”‚
                  β–Ό
        Amazon Bedrock Agent (KIRA)
                  β”‚
      β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
      β–Ό           β–Ό            β–Ό
Fetch Logs   Fetch Metrics   Health Check
      β”‚           β”‚            β”‚
      β–Ό           β–Ό            β–Ό
 AWS Lambda   AWS Lambda   AWS Lambda
      β”‚           β”‚            β”‚
      β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                  β”‚
                  β–Ό
     Amazon CloudWatch / Kubernetes
                  β”‚
                  β–Ό
          AI Generated Response

πŸš€ Why Amazon Bedrock?

  • Large Language Models
  • AWS Lambda
  • CloudWatch Logs
  • Kubernetes Monitoring
  • Natural Language Interaction

βš™ AI Components

Amazon Bedrock

  • Bedrock Agent
  • Foundation Model
  • Prompt Orchestration
  • Agent Instructions

AWS Lambda

Fetch Logs

  • Reading application logs
  • Returning recent log entries
  • Assisting log investigations

Fetch Metrics

  • CPU Usage
  • Memory Usage
  • Request Count
  • Response Time
  • Kubernetes Metrics

Fetch Health

  • Pod Status
  • Deployment Status
  • Service Health
  • Cluster Health
  • Application Availability

πŸ–₯ Streamlit Interface

  • AI Chat Interface
  • Root Cause Analysis
  • Metrics Inspection
  • Log Analysis
  • Health Checks
  • Natural Language Queries

πŸ”„ Complete End-to-End Workflow


πŸ‘¨β€πŸ’» Author

Nihal N

DevOps β€’ Cloud β€’ Kubernetes

LinkedIn

If you found this Project useful, consider giving it a ⭐!

About

An AI-integrated cloud-native DevOps microservices platform demonstrating Infrastructure as Code, GitOps CI/CD, Kubernetes orchestration, observability and Amazon Bedrock-driven AIOps on AWS.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages