This workshop is designed for the Enterprise Cloud services security team at SAP, focusing on setting up a secure, efficient, and scalable Amazon EKS cluster for hosting Ansible and AWX. The deployment utilizes Terraform for infrastructure management, Helm for application deployment, and Ansible for automation orchestration.
- Deploy a secure and scalable Amazon EKS cluster.
- Utilize Terraform for efficient infrastructure management.
- Implement Ansible and AWX for automation within a Kubernetes environment.
- Apply best practices in cloud security, efficiency, and scalability.
- Basic knowledge of Kubernetes, AWS EKS, and AWS services.
- Familiarity with Terraform, Helm, and Ansible.
aws-infra-step-1-terraform/
- Terraform scripts for setting up the EKS cluster, IAM roles, VPC, and security groups.
- Key focus on security configurations like IAM roles, KMS for encryption, and VPC setup.
aws-awx-helm-step-2/helm-chart/
- Configuration and deployment of AWX using Helm charts.
- Emphasis on best practices for Helm chart configurations.
awx-ansible-step-3/
- No pre-created Ansible playbooks are provided, allowing the ECS team to decide on the development scope.
- Amazon EKS: Managed Kubernetes service for running containers.
- Terraform: Infrastructure as Code tool for resource management.
- Helm: Kubernetes package manager for deploying AWX.
- Ansible & AWX: Automation tools for configuration and orchestration.
- IAM Roles and Policies: Implement least privilege access control.
- Encryption with AWS KMS: Ensuring data security at rest.
- Integration with AWS GuardDuty: Enhanced security monitoring.
- Auto Scaling Groups: For dynamic scaling of worker nodes.
- Terraform State Management: Ensuring consistent infrastructure deployment.
- Resource Tagging: For better management and cost allocation.
- EKS Cluster Configuration: Optimized for high availability and load balancing.
- Persistent Volume Management: Efficient storage solutions for Kubernetes.
- Load Balancing Strategies: Implementing AWS load balancers for traffic distribution.
- CloudWatch Integration: For comprehensive monitoring and logging.
- Prometheus and Grafana: Custom monitoring solutions for Kubernetes clusters.
- Elasticsearch, Fluentd, and Kibana (EFK Stack): For efficient log management.
Participants will work through labs covering:
- Terraform script execution and AWS resource setup.
- Helm chart customization and AWX deployment.
- Ansible playbook creation and execution in the Kubernetes environment.
Feedback and contributions to this workshop are encouraged. Please adhere to the CONTRIBUTING.md guidelines for contributions.
This workshop and its content are licensed under the MIT License. Refer to the LICENSE file for details.