151 lines
6.3 KiB
Markdown
151 lines
6.3 KiB
Markdown
|
|
# Examples
|
||
|
|
|
||
|
|
Real-world infrastructure as code examples demonstrating Provisioning across
|
||
|
|
multi-cloud, Kubernetes, security, and operational scenarios.
|
||
|
|
|
||
|
|
## Overview
|
||
|
|
|
||
|
|
This section contains production-ready examples showing how to:
|
||
|
|
|
||
|
|
- **Deploy infrastructure** from basic single-cloud to complex multi-cloud environments
|
||
|
|
- **Orchestrate Kubernetes** clusters with Provisioning automation
|
||
|
|
- **Implement security** patterns including encryption, secrets management, and compliance
|
||
|
|
- **Build custom workflows** for specialized infrastructure operations
|
||
|
|
- **Handle disaster recovery** with backup strategies and failover procedures
|
||
|
|
- **Optimize costs** through resource analysis and right-sizing
|
||
|
|
- **Migrate legacy systems** from traditional infrastructure to cloud-native architectures
|
||
|
|
- **Test infrastructure as code** with validation, policy checks, and integration tests
|
||
|
|
|
||
|
|
All examples use Nickel for type-safe configuration and are designed as learning resources and templates for your own deployments.
|
||
|
|
|
||
|
|
## Quick Start Examples
|
||
|
|
|
||
|
|
### Basic Infrastructure Setup
|
||
|
|
|
||
|
|
- **[Basic Setup](./basic-setup.md)** - Single-cloud with networking,
|
||
|
|
compute, storage - perfect starting point
|
||
|
|
|
||
|
|
- **[E-Commerce Platform](./real-world-scenario.md)** - Multi-tier
|
||
|
|
application across AWS and UpCloud with load balancing, databases
|
||
|
|
|
||
|
|
### Multi-Cloud Deployments
|
||
|
|
|
||
|
|
- **[Multi-Cloud Deployment](./multi-cloud-deployment.md)** - Deploy across
|
||
|
|
AWS, UpCloud, Hetzner with provider abstraction
|
||
|
|
|
||
|
|
- **[Kubernetes Deployment](./kubernetes-deployment.md)** - Kubernetes
|
||
|
|
clusters, workloads, networking, operators via Nickel
|
||
|
|
|
||
|
|
- **[Machine Learning Infrastructure](./machine-learning-infrastructure.md)**
|
||
|
|
- Training clusters, GPU resources, features, inference services
|
||
|
|
|
||
|
|
- **[Hybrid Cloud Setup](./hybrid-cloud-deployment.md)** - Hub-and-spoke
|
||
|
|
architecture connecting on-premise and cloud
|
||
|
|
|
||
|
|
### Operational Examples
|
||
|
|
|
||
|
|
- **[Disaster Recovery Drills](./disaster-recovery-drills.md)** - Database failover, complete infrastructure failover, backup recovery testing procedures.
|
||
|
|
|
||
|
|
- **[FinOps Cost Governance](./finops-cost-governance.md)** - Budget frameworks, cost monitoring, chargeback models, and cost optimization strategies.
|
||
|
|
|
||
|
|
- **[Legacy System Migration](./legacy-system-migration.md)** - Zero-downtime migration with
|
||
|
|
gradual traffic cutover (5% → 100%).
|
||
|
|
|
||
|
|
### Advanced Patterns
|
||
|
|
|
||
|
|
- **[Batch Workflow Orchestration](./advanced-workflow-orchestration.md)** - DAG scheduling,
|
||
|
|
parallel execution, conditional logic, error handling.
|
||
|
|
|
||
|
|
- **[Advanced Networking](./advanced-networking.md)** - Load balancing, service mesh,
|
||
|
|
DNS management, zero-trust architecture.
|
||
|
|
|
||
|
|
- **[GitOps Infrastructure Deployment](./gitops-infrastructure-deployment.md)** -
|
||
|
|
GitHub Actions, automated reconciliation, drift detection, audit trails.
|
||
|
|
|
||
|
|
- **[Secrets Rotation Strategy](./secrets-rotation-strategy.md)** - Passwords, API keys,
|
||
|
|
certificates with zero-downtime rotation.
|
||
|
|
|
||
|
|
### Security and Compliance
|
||
|
|
|
||
|
|
- **[Compliance and Audit](./compliance-and-audit-example.md)** - SOC2, GDPR, HIPAA,
|
||
|
|
PCI-DSS compliance with audit logging.
|
||
|
|
|
||
|
|
- **[Security Examples](./security-examples.md)** - Encryption, authentication, MFA,
|
||
|
|
secrets management, and audit patterns.
|
||
|
|
|
||
|
|
- **[Infrastructure as Code Testing](./iac-testing-strategies.md)** - Syntax validation,
|
||
|
|
schema checks, policy compliance, unit and integration tests.
|
||
|
|
|
||
|
|
### Cloud Provider Specific
|
||
|
|
|
||
|
|
- **[AWS Deployment Guide](./aws-deployment-examples.md)** - EC2, RDS, S3, VPC, Load Balancers, IAM with cost optimization.
|
||
|
|
|
||
|
|
- **[UpCloud Deployment Guide](./upcloud-deployment-examples.md)** - Compute, Storage, Networking, Backups with managed services.
|
||
|
|
|
||
|
|
- **[Hetzner Deployment Guide](./hetzner-deployment-examples.md)** - Dedicated servers, cloud infrastructure, networking with cost efficiency.
|
||
|
|
|
||
|
|
- **[Kubernetes Examples](./kubernetes-examples.md)** - Deployments, StatefulSets, DaemonSets, Jobs, Custom Resources, Operators.
|
||
|
|
|
||
|
|
### Configuration and Migration
|
||
|
|
|
||
|
|
- **[Terraform to Nickel Migration](./terraform-migration.md)** - Convert existing Terraform HCL to Nickel type-safe configuration with validation examples.
|
||
|
|
|
||
|
|
- **[KCL to Nickel Migration](./kcl-to-nickel-migration.md)** - Upgrade from deprecated KCL to Nickel with schema examples and best practices.
|
||
|
|
|
||
|
|
## Example Organization
|
||
|
|
|
||
|
|
Each example follows this structure:
|
||
|
|
|
||
|
|
```text
|
||
|
|
example-name.md
|
||
|
|
├── Overview - What this example demonstrates
|
||
|
|
├── Prerequisites - Required setup
|
||
|
|
├── Architecture Diagram - Visual representation
|
||
|
|
├── Nickel Configuration - Complete, runnable configuration
|
||
|
|
├── Deployment Steps - Command-by-command instructions
|
||
|
|
├── Verification - How to validate deployment
|
||
|
|
├── Troubleshooting - Common issues and solutions
|
||
|
|
└── Next Steps - How to extend or customize
|
||
|
|
```
|
||
|
|
|
||
|
|
## Learning Paths
|
||
|
|
|
||
|
|
### I'm new to Provisioning
|
||
|
|
1. Start with [Basic Setup](./basic-setup.md)
|
||
|
|
2. Read [Real-World Scenario](./real-world-scenario.md)
|
||
|
|
3. Try [Kubernetes Deployment](./kubernetes-deployment.md)
|
||
|
|
|
||
|
|
### I need multi-cloud infrastructure
|
||
|
|
1. Review [Multi-Cloud Deployment](./multi-cloud-deployment.md)
|
||
|
|
2. Study [Hybrid Cloud Setup](./hybrid-cloud-deployment.md)
|
||
|
|
3. Implement [Advanced Networking](./advanced-networking.md)
|
||
|
|
|
||
|
|
### I need to migrate existing infrastructure
|
||
|
|
1. Start with [Legacy System Migration](./legacy-system-migration.md)
|
||
|
|
2. Add [Terraform Migration](./terraform-migration.md) if applicable
|
||
|
|
3. Set up [GitOps Deployment](./gitops-infrastructure-deployment.md)
|
||
|
|
|
||
|
|
### I need enterprise features
|
||
|
|
1. Implement [Compliance and Audit](./compliance-and-audit-example.md)
|
||
|
|
2. Set up [Disaster Recovery](./disaster-recovery-drills.md)
|
||
|
|
3. Deploy [Cost Governance](./finops-cost-governance.md)
|
||
|
|
4. Configure [Secrets Rotation](./secrets-rotation-strategy.md)
|
||
|
|
|
||
|
|
## Copy and Customize
|
||
|
|
|
||
|
|
All examples are self-contained and can be:
|
||
|
|
|
||
|
|
1. **Copied** into your workspace and adapted
|
||
|
|
2. **Extended** with additional resources and customizations
|
||
|
|
3. **Tested** using Provisioning's validation framework
|
||
|
|
4. **Deployed** directly via `provisioning apply`
|
||
|
|
|
||
|
|
Use them as templates, learning resources, or reference implementations for your own infrastructure.
|
||
|
|
|
||
|
|
## Related Documentation
|
||
|
|
|
||
|
|
- **Configuration Guide** → See `provisioning/docs/src/infrastructure/nickel-guide.md`
|
||
|
|
- **API Reference** → See `provisioning/docs/src/api-reference/`
|
||
|
|
- **Development** → See `provisioning/docs/src/development/`
|
||
|
|
- **Operations** → See `provisioning/docs/src/operations/`
|