Getting Started with DevOpsGenie
This guide will walk you through setting up your first DevOpsGenie-managed environment. By the end, you'll have a fully configured EKS cluster with GitOps, observability, and security baseline installed.
Prerequisites
Before you begin, ensure you have the following:
- AWS Account with administrator or equivalent IAM permissions
- AWS CLI v2 configured with credentials (
aws configure) - Terraform ≥ 1.6 installed
- kubectl ≥ 1.27 installed
- Helm ≥ 3.12 installed
- Node.js ≥ 18 (for the DevOpsGenie CLI)
info
If you're evaluating DevOpsGenie in a sandbox, use a dedicated AWS account to avoid any unintended impact on production resources.
Installation Overview
DevOpsGenie is deployed in three phases:
- Bootstrap — install the CLI and configure your AWS environment
- Cluster Provisioning — deploy an EKS cluster using the DevOpsGenie Terraform modules
- Platform Installation — install the platform stack (GitOps, observability, security) via Helm
Step 1 — Install the DevOpsGenie CLI
npm install -g @devopsgenie/cli
devopsgenie --version
Verify the installation:
devopsgenie version
# DevOpsGenie CLI v2.4.1
Step 2 — Authenticate with AWS
aws configure
# AWS Access Key ID: ****
# AWS Secret Access Key: ****
# Default region name: us-east-1
# Default output format: json
Verify your identity:
aws sts get-caller-identity
Step 3 — Initialize a New Project
devopsgenie init my-platform
cd my-platform
This scaffolds the following directory structure:
my-platform/
├── terraform/
│ ├── modules/
│ │ ├── eks/
│ │ ├── vpc/
│ │ └── iam/
│ └── environments/
│ ├── staging/
│ └── production/
├── kubernetes/
│ ├── addons/
│ ├── namespaces/
│ └── policies/
├── gitops/
│ └── applications/
└── devopsgenie.yaml
Step 4 — Configure Your Environment
Edit devopsgenie.yaml to match your requirements:
devopsgenie.yaml
apiVersion: devopsgenie.io/v2
kind: PlatformConfig
cluster:
name: my-platform-production
region: us-east-1
version: "1.29"
nodeGroups:
- name: system
instanceTypes: [m6i.xlarge]
minSize: 2
maxSize: 5
- name: workloads
instanceTypes: [m6i.2xlarge, m6i.4xlarge]
minSize: 3
maxSize: 20
karpenter: true
platform:
gitops:
enabled: true
provider: argocd
repoUrl: https://github.com/your-org/gitops
observability:
enabled: true
stack: [prometheus, grafana, loki, opentelemetry]
security:
podSecurityStandards: restricted
opa: true
secretsManager: true
Step 5 — Deploy the Cluster
devopsgenie cluster create --config devopsgenie.yaml
This runs Terraform to provision the VPC, EKS cluster, IAM roles, and Karpenter. Expect this step to take 12–18 minutes.
✓ VPC created (3 AZs, public + private subnets)
✓ EKS cluster my-platform-production provisioned (v1.29)
✓ Karpenter installed and NodePool configured
✓ aws-load-balancer-controller deployed
✓ cluster-autoscaler disabled (Karpenter active)
✓ IRSA roles created for all platform components
Step 6 — Install the Platform Stack
devopsgenie platform install
✓ ArgoCD deployed (namespace: argocd)
✓ Prometheus + Alertmanager deployed (namespace: monitoring)
✓ Grafana deployed with 12 pre-built dashboards
✓ Loki + Promtail deployed (namespace: logging)
✓ OPA Gatekeeper deployed with CIS policy bundle
✓ External Secrets Operator configured
✓ cert-manager deployed (Let's Encrypt staging)
Next Steps
Your platform is live. Here's what to do next:
- Quick Start Guide — deploy your first application
- Platform Overview — understand the architecture
- Kubernetes & EKS Guide — detailed EKS configuration
- CI/CD Best Practices — connect your pipelines