Horizons: The OmniChat

A flexible and powerful chatbot platform that brings enterprise-grade LLM capabilities to your infrastructure.

View project on GitHub

AWS Deployment Guide

Prerequisites

Quick Start

  1. Initialize deployment:
    cp aws/terraform.tfvars.template aws/terraform.tfvars
    cp aws/backend.hcl.example aws/backend.hcl
    # Edit both files with your configuration
    
  2. Deploy infrastructure:
    make aws-init
    make aws-plan
    make aws-apply
    

Troubleshooting

Infrastructure Deployment

  1. Terraform State Issues
# Check state
terraform -chdir=aws state list

# Refresh state
terraform -chdir=aws refresh
  1. Resource Creation Failures
# Get detailed error output
TF_LOG=DEBUG terraform -chdir=aws apply

# Check AWS CloudTrail for API errors
aws cloudtrail lookup-events --lookup-attributes AttributeKey=EventName,AttributeValue=CreateStack

ECS Services

  1. Task Definition Issues
# List task definitions
aws ecs list-task-definitions

# Describe specific task
aws ecs describe-task-definition --task-definition horizons-compute-webui
  1. Service Health
# Check service status
aws ecs describe-services --cluster horizons-compute-fargate --services horizons-compute-webui | grep -e status -e failures
  1. Container Logs
# Get log streams
aws logs describe-log-streams --log-group-name /ecs/horizons/webui

# View logs
aws logs get-log-events --log-group-name /ecs/horizons/webui --log-stream-name $STREAM_NAME

Network Issues

  1. VPC Configuration
# Check VPC endpoints
aws ec2 describe-vpc-endpoints --filters Name=vpc-id,Values=vpc-XXXXX

# Verify security groups
aws ec2 describe-security-groups --filters Name=group-name,Values=horizons-*
  1. Load Balancer
# Check target health
aws elbv2 describe-target-health --target-group-arn $TARGET_GROUP_ARN

Authentication

  1. Cognito Issues
# List user pools
aws cognito-idp list-user-pools --max-results 20

# Check user pool status
aws cognito-idp describe-user-pool --user-pool-id $POOL_ID
  1. SSL Certificate
# Verify certificate
aws acm describe-certificate --certificate-arn $CERT_ARN

Database

  1. RDS Connectivity
# Check RDS status
aws rds describe-db-instances --db-instance-identifier horizons-persistence-db
  1. Performance Issues
# View slow query logs
aws rds download-db-log-file-portion --db-instance-identifier horizons-persistence-db --log-file-name error/postgresql.log.YYYY-MM-DD-HH

Maintenance

Backup and Recovery

  1. Database Backups
# Create snapshot
aws rds create-db-snapshot --db-instance-identifier horizons-persistence-db --db-snapshot-identifier your-backup

# List snapshots
aws rds describe-db-snapshots --db-instance-identifier horizons-persistence-db
  1. EFS Backups
# Create EFS backup
aws backup start-backup-job --backup-vault-name horizons-backup --resource-arn $EFS_ARN

Updates and Upgrades

  1. Container Images
# Update task definitions
aws ecs update-service --cluster horizons-compute-fargate --service horizons-compute-webui --force-new-deployment
  1. Infrastructure Updates
# Apply Terraform changes
make aws-plan
make aws-apply

Monitoring

  1. CloudWatch Dashboards
# View metrics
aws cloudwatch get-dashboard --dashboard-name horizons-monitoring

Getting Help

  1. Check AWS ECS Documentation
  2. Check AWS Bedrock Documentation
  3. Review Terraform AWS Provider
  4. Join our Community Discussion

Horizons OmniChat by evereven