Skip to content

ADORSYS-GIS/ai-ops

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI Ops

AI Ops is an infrastructure-as-code project that provides a robust, scalable platform for deploying and managing AI applications on AWS using Kubernetes (EKS).

🏗️ Architecture

The platform consists of the following main components:

  • Amazon EKS for container orchestration
  • Amazon RDS for database services
  • AWS Secrets Manager for secure secrets handling
  • Custom Helm charts for AI application deployments
  • Terraform for infrastructure provisioning

🚀 Getting Started

Prerequisites

  • AWS CLI configured with appropriate credentials
  • Terraform >= 1.0.0
  • kubectl
  • Helm >= 3.0.0

Infrastructure Setup

  1. Navigate to the terraform directory:
cd terraform
  1. Initialize Terraform:
terraform init
  1. Review and modify the dev.tfvars file according to your requirements.

  2. Plan and apply the infrastructure:

terraform plan -var-file=dev.tfvars
terraform apply -var-file=dev.tfvars

Deploying Applications

  1. Configure kubectl to use the new EKS cluster:
aws eks update-kubeconfig --name <cluster-name> --region <region>
  1. Deploy AI applications using Helm:
cd charts/ai
helm install <release-name> .

📁 Project Structure

🔐 Security

  • All sensitive information is managed through AWS Secrets Manager
  • Network security is enforced through VPC configuration and security groups
  • RBAC is implemented at the Kubernetes level
  • Infrastructure follows AWS security best practices

🛠️ Development

Adding New AI Applications

  1. Create a new Helm chart in the charts directory
  2. Define the necessary Kubernetes resources
  3. Update values.yaml with configurable parameters
  4. Document the chart's usage in its README

Modifying Infrastructure

  1. Make changes to relevant Terraform files
  2. Test changes using terraform plan
  3. Create a pull request with the changes
  4. After review, apply changes using CI/CD pipeline

📝 Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to the branch
  5. Create a Pull Request

🔄 CI/CD

The project uses GitHub Actions for continuous integration and deployment:

  • Automated Terraform validation and planning
  • Infrastructure deployment to staging/production
  • Helm chart linting and testing
  • Security scanning for infrastructure code

📄 License

[Add your license information here]

🤝 Support

For support, please open an issue in the GitHub repository or contact the maintainers.