DevOps and Cloud Infrastructure engineer with 12+ years automating deployments, building resilient systems, and scaling cloud-native architectures. Expert in Docker, Kubernetes,...
# Grafana provisioning: datasources
# /etc/grafana/provisioning/datasources/prometheus.yml
apiVersion: 1
datasources:
- name: Prometheus
type: prometheus
# Prometheus configuration
global:
scrape_interval: 15s
evaluation_interval: 15s
scrape_timeout: 10s
# Main nginx.conf
worker_processes auto;
worker_rlimit_nofile 65535;
events {
#!/bin/bash
set -euo pipefail
# Colors for output
RED='\033[0;31m'
GREEN='\033[0;32m'
# RDS PostgreSQL instance
resource "aws_db_instance" "main" {
identifier = "${var.project_name}-db"
engine = "postgres"
engine_version = "16.1"
# Using the module
module "api_service" {
source = "./modules/ecs_service"
service_name = "api"
# Configure Terraform
terraform {
required_version = ">= 1.6.0"
required_providers {
aws = {
stages:
- lint
- test
- build
- deploy
name: CI Pipeline
on:
push:
branches: [main, develop]
pull_request:
# HPA v2 with multiple metrics
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
name: web-app-hpa
namespace: production
# ConfigMap from literal values
apiVersion: v1
kind: ConfigMap
metadata:
name: web-app-config
namespace: production
# ClusterIP Service (internal only)
apiVersion: v1
kind: Service
metadata:
name: web-app
namespace: production