Terraform-Projects
Note:
Jenkins through Terraform
2. EC2(Jenkins+Sonarqube+Trivy) through Terraform
Install Terraform & setup env path on Local Laptop(if wish to use VSCode) or any ec2 instance
Install aws cli and aws configure(access, secret keys) with IAM User(admin access)
prepare main.tf, provider.tf, install.sh (Jenkins + Docker + Trivy) files and
run all Terraform commands(init, validate, plan, apply) in VSCode inside main.tf's folder
Next access Jenkins(8080), Sonar(9000) and later run terraform destroy
3. EKS cluster through Terraform
Install Terraform & setup env path on Local Laptop(if wish to use VSCode) or any ec2 instance
Install aws cli and aws configure(access, secret keys) with IAM User(admin access)
prepare main.tf, provider.tf and run all Terraform commands(init, validate, plan, apply) in VSCode inside main.tf's folder
Next open Cloudshell and run command (to update kube config) to connect kubectl with eks cluster
next give aws configure(access, secret keys), next kubectl get nodes, if any deployment, service files available run those files to deploy apps
Next run terraform destroy in VSCode to clear whole cluster(including Node Group) setup
4. Amazon App deploy on Docker Container through Terraform { Jenkins + Sonar + Docker + Trivy }
Install Terraform & setup env path on Local Laptop(if wish to use VSCode) or any ec2 instance
Install aws cli and aws configure(access, secret keys) with IAM User(admin access)
prepare main.tf, provider.tf, install.sh files (Jenkins + Docker + Trivy).
Next run all Terraform commands(init, validate, plan, apply) in VSCode inside main.tf's folder
Next Add all needed Plugins (JDK, NodeJs, Sonar, Docker, OWASP) in Jenkins and config all in Tools & System config
Next add all creds(sonar-token, sonar-server, docker login) in Jenkins credentials
Next prepare Pipeline script(Git, Sonar, QGate, npm, OWASP, Trivy FScan, Docker Build & Push, Trivy Image scan, Deploy stages)
Next run the build and access Amazon App in browser with EC2 IP:3000 port
Next run terraform destroy in VSCode to clear whole setup
5. Deploy Super Mario Game on EKS Cluster through Terraform
Create IAM User (admin access) and keep ready access, secret keys
create EC2(ubuntu 20.04, t2.micro) and clone Github repo.
run script to install all (aws cli, docker, kubectl, terraform)
Next go inside EKS-TF folder and run terraform commands (init, plan, apply)
Next run command (to update kube config) to connect kubectl with eks cluster
Next run kubectl commands to deploy app & expose service and access Mario Game through Load Balancer DNS link
Next delete all deployments and run terraform destroy inside main.tf's folder to clear whole EKS setup
6. Deploy Hotstar App on EKS through Terraform
Create IAM User (admin access) and keep ready access, secret keys
create EC2(ubuntu 20.04, t2.large) and attach IAM role(admin access)
run script1.sh(Jenkins + Docker), script2.sh(Terraform + Kubectl + aws CLI) on EC2
Next run sonar container on above EC2 and next access Jenkins(8080), sonar(9000)
Next Install Terraform plugin & config it in Tools in Jenkins, Next create s3 bkt(for backend.tf)
Create Parameterised pipeline Job for Terraform in Jenkins to create EKS and run the build
Install Plugins(JDK, Sonar, NodeJs, OWASP, Docker, k8s) and config in Tools, system config
Next run command (to update kube config) to connect kubectl with eks cluster
Next add relevant creds(sonar-token, docker login, k8s) in Jenkins credentials
On EC2 Login with Dockerhub & Install Docker-Scout, Next prepare pipeline(deploy of Hotstar) in Jenkins
Build & access in browser with ALB DNS link, Later run destroy pipeline to clear whole EKS setup
7. Launch EC2(Jenkins through Ansible Play-book) through Terraform
Install Terraform & setup env path on Local Laptop(if wish to use VSCode) or any ec2 instance
Install aws cli and aws configure(access, secret keys) with IAM User(admin access)
prepare main.tf, provider.tf, install.sh files (EC2+Ansible).
Next run all Terraform commands(init, validate, plan, apply) in VSCode inside main.tf's folder
when we run Terraform apply, EC2 will be created with Ansible install, next Ansible-Playbook will be run
and Jenkins will be installed with the above playbook, next access Jenkins(8080)
hfddskg
dfgdksjg
hdfskg
Note: