0% found this document useful (0 votes)
56 views7 pages

Aws EKS Project

Uploaded by

SAJJAN SHAH
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
56 views7 pages

Aws EKS Project

Uploaded by

SAJJAN SHAH
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

AWS EKS PROJECT1

SETUP CLOUD
NOTE – COST WILL BE INCURRED FOR AWS
EKS SETUP SO MAKE SURE YOU ARE DOING
THE PROJECT ON YOUR ON INTEREST AND
IF YOU ARE NOT OK THEN PROJECT2 IS IN
THE SAME DOCUMENT WITH LOCAL SETUP

Step 1 – LOGIN to the AWS Console

https://aws.amazon.com/console/

Step 2 – Select EC2 and create T2.MEDIUM INSTANCE


STEP3 – Select AMAZON LINUX 2 AMI 30 GB

Step 4 – Install all tools Pre-requisites

- Install Git

yum install git -y

- Install Java

yum install java -y

- Install Maven

cd /opt/
wget http://mirrors.estointernet.in/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
tar xvzf apache-maven-3.6.3-bin.tar.gz
vi /etc/profile.d/maven.sh
export MAVEN_HOME=/opt/apache-maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin

- Install Jenkins

cd /opt/
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
sudo yum install jenkins -y
sudo systemctl start jenkins
sudo systemctl enable jenkins

- Install Docker

yum install docker -y


usermod -aG docker jenkins
systemctl start docker
systemctl enable docker

- Install Python

yum install python3 -y

- Install Ansible

amazon-linux-extras install ansible2 -y

Step 5 – INSTALL SETUP FOR EKS

- Install kubectl

curl -o kubectl https://amazon-eks.s3-us-west-2.amazonaws.com/1.14.6/2019-08-22/bin/linux/amd64/kubectl


chmod +x ./kubectl
mkdir -p $HOME/bin
cp ./kubectl $HOME/bin/kubectl
export PATH=$HOME/bin:$PATH
echo 'export PATH=$HOME/bin:$PATH' >> ~/.bashrc
source $HOME/.bashrc
kubectl version --short –client

OR

curl -O
https://s3.us-west-2.amazonaws.com/amazon-eks/1.24.11/2023-03-17/bin/linux/amd64/kubec
tl.sha256
chmod +x ./kubectl
mkdir -p $HOME/bin && cp ./kubectl $HOME/bin/kubectl && export PATH=$PATH:$HOME/bin
echo 'export PATH=$PATH:$HOME/bin' >> ~/.bashrc
kubectl version --short –client

- Install eksctl

curl --silent --location "https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_$(uname


-s)_amd64.tar.gz" | tar xz -C /tmp

sudo mv /tmp/eksctl /usr/bin


eksctl version

Step6 - ATTACH THE IAM ROLE

Go to IAM -> CLICK CREATE NEW IAM ROLE -> SELECT EC2
-> CLICK ON ADMINISTRATOR ACCESS -> CREATE ROLE
STEP 7 –

Go toEC2 instance you have created -> Click on ACTIONS


-> SECURITY -> MODIFY IAM ROLE -> ATTACH YOUR
NEW ROLE
Step 8 -
- MASTER Cluster creation [ Change the master cluster name eksdemo as per your wish and select
region as us-west-1]

eksctl create cluster --name=eksdemo \


--region=us-west-1 \
--zones=us-west-1b,us-west-1c \
--without-nodegroup

- Add Iam-Oidc-Providers

eksctl utils associate-iam-oidc-provider \


--region us-west-1 \
--cluster eksdemo \
--approve

- WORKER NODE Create node-group [ Change the PEM key ssh-public-key to your key]
eksctl create nodegroup --cluster=eksdemo \
--region=us-west-1 \
--name=eksdemo-ng-public \
--node-type=t2.micro \
--nodes=2 \
--nodes-min=1 \
--nodes-max=2 \
--ssh-access \
--ssh-public-key=key-test \
--node-volume-size=10 \
--managed \
--asg-access \
--external-dns-access \
--full-ecr-access \
--appmesh-access \
--alb-ingress-access

STEP 9 –
Docker login – Hit the command

docker login

git clone https://github.com/praveen1994dec/spring-cloud-kubernetes.git

INSTALL ALL PREREQUISITE TOOLS -> CREATE EKS SETUP IN AWS -> 1 MASTER
AND 2 WORKER NODES -> CLONE THE ABOVE REPO IN MASTER SERVER ->
RUN THE BELOW COMMANDS

- cd spring-cloud-kubernetes/kubernetes-configmap-reload

- mvn clean install -DskipTests

- docker build -t praveensingam1994/kubernetes-configmap-reload .


- docker push praveensingam1994/kubernetes-configmap-reload:latest [ Push to your docker hub ]

- kubectl create -f kubernetes-configmap.yml


-
- kubectl get pods [ To get the pods ]
-
- kubectl get svc [ To get the service ]

STEP 10 – DELETE NODE AND THEN THE CLUSTER

eksctl delete nodegroup --cluster=eksdemo --region=us-west-1


--name=eksdemo-ng-public
eksctl delete cluster --name=eksdemo --region=us-west-1

You might also like