02-06-2025
Devops Syllabus
Linux Command
Sudo -i Change in root user
Whoami Show user name
Hostname Show host name
pwd Present working directory
Cat /etc/os-release Os working information
Uname -a Show Kernal information
Cd (dir Name) Change folder
Cd .. Come back
Touch (file name) Create file
ls Show list
mkdir Create dir
rmdir Remove dir
Cat Read file ,folder
Cat > (file name) Insert data in file
Rm -rvf (file name) Remove file
Cltr d Save file
Cat >> (file name) Add More Content in file
/filename Go to main folder
Cp file name Copy file
Cp -r /home/filename To source destination
Mv (filename) To move file,rename a folder
Mv * /home/ubuntu To all move file,rename a folder
MV filename1 filename2 Rename a folder
Man (cmd name) More info about command
Nano (file name) Add information in file
Hostname (name) To Change Host name
Bash Refresh shell
Hostnamectl set- To permeant change host name
hostname( name)
Init 6 To reboot linux
Vim (file name) For Create file
W Use for save file
Q Quit from file
i Press insert data in vim file
esc Exit from any mode in vim
wq Save and exit data in vim file
:q Forcefully exit from vim file
:q! Forcefully exit from vim file
:set nu Assign number to file
:set nonu Remove numbers
Vim editor commands (10/06/25)
Esc gg Cursor Go top of the vim file
Esc G Cursor Go down of the vim file
yy Copy line vim file
p Paste vim file
Num yy Copy multiple line vim file
yw Copy single word vim file
cc Cut line in vim file
dd Single line delete
u Undo change
/(word) Highlight word in vim file
:s /(word) / word Replace word in vim file
v Select full line at time in vim file
Shift+v (press small v) Select all block
Shift+v (press cap v) Select single word
Esc gg Cursor top vim file
H Top of the line
L Down of the line
User and Group Management (12/06/25)
/etc/paswd -user details
/etc/shadow- user passwd file
cat /etc/passwd Information about system
Adduser name Create new user
userdel -r username Delete the user
ls -a Check hidden file in user folder
Su - username Change in user mode
groupadd Create a group for users
Cat /etc/group Information about groups
gpasswd -a uname gname Add user into the group
Passwd (username) Create password for useradd command
Head /etc/filename Show First ten line of file
Head filename Head cmd shows head cmd
Tail filename Tail
Tail -7 filename
Tail -7 filename | tail -1 Shows particular line
Tail /etc/filename Show last ten line of file
Tail -5 /etc/filename Show random number of file
ls -i Check for ioniode count
Chage -l (username) Show password information
Chage -m (days username) Show minimum number of days password change
Chage -M (days username) Show maximum number of days password change
Chage -I (days username) Password chage in these days account change
Chage -E (“date” filename) To change expiry date of user
Chage -W(no days)(user To change warning days
name)
Usermod -u (id) (uname) Modified existing user id
Usermod -s /sbin/nologin Modified user shell
uname
gpasswd -M uname, gname Add multiple user at a time
gpasswd -d uname, gname Remove users from the group
Groupdel -f grpname Delete group
gpasswd -A (username Set group admin for group
groupname)
gpasswd -A ‘’( groupname) Remove admin from group
Usermod -L (username) Block user from group
Usermod -U (username) Unblock user from group
Userdel -r (username) Delete user
gpasswd -M (username), Add multiple user to the user
groupname
usermod -aG groupname Add a User to a Group
username
example:
usermod -aG avengers
natasha
gpasswd -a username Add a User to a Group
groupname
example:
gpasswd -a steve avengers
Tail -4 /etc/shadow Passwd storage in encrypted
File Permissions (16/06/25)
Root Local
Default Max
File 644 666v 664
Dir 755 777 775
Umask = max-min
Umask=022
Umask= to change the default permission for the file and dir
ls -l Check file permissions
ll check hidden file permission
ll (filename) Check permissions for perticular file
Cltr + c Exit from any file
Chmod o+w (filename) Give permission to other user to edit file
Chmod o-w (filename) Remove edit permission from user
:q! Exit from vim file
Chmod go+w (filename) Give permissions to the user by group
Chmod ugo-w (filename) Remove permissions by group
Chmod u=rw (filename) Add user permission read and write
ls -li Shows ioniode count with full data
r 4
w 2
e 1
e.g Chmod 666 (filename) Chmod 000 (filename)
Chmod (filename ) Chmod 644 (filename)
Chown (username) Changing owner user to another user
(filename)
Chgrp (group name) Changing group to another group
(filename)
ln (filename) filename Hardlink backup Link count
Ln – s (filename) filename Softlink Shortcut [dir-2 file-1]
du -sh (filename) Check size for file
ls – i (filename) Ionode count of file
Umask Default file permissions
Setfacl -m u:(username):rw To add permissions to specific user
(filename)
Setfacl -m g:(groupname):rw Add group to file
(filename)
Getfacl filename To get the details about permssions
Ctrl+x Exit from the nano file
Setfacl -x u:(username):rw To remove permissions
(filename)
Tar -cvf [Link] /etc Create the file to store etc data
Tar -xvf filename .tar -C To extract the data into the folder
/drive
Tar –cvzf [Link] To compress the file
/etc
Tar -xvzf [Link] - To extract the file into the folder cd
C /filename
tar -cvzf To extract the file
[Link] /etc
rm filename Remove the files
Chmod +x filename Execute the file
zip [Link] file1 file2 file3
Zip -r [Link] filename2 To zip file
Unzip [Link] -d /filesloc Saving the files in the folder
zip -u [Link] [Link] Update the file
Unzip [Link] Unzip the files
unzip -l [Link] View Contents of a Zip File
zip -e [Link] [Link] Create paaswd for the file
zip -s 100m [Link] Spilts bigfile into smaller parts
largefolder/ -r
Sudo apt install filename -y Install zip environment
Cat /etc/crontab To see schedule format JOB
APT Advance package tool
Crontab -e Input the date and time
Crontab guru Website name
Date Check the current date and time
Crontab -l To check schedule list
Top Shows running process
htop
Uptime Load average
cal Shows calander
W Load average
Ps Process information
Ps -l Process information
Ps -ef Process information
Ps -aux Process information
Man cmd name Tell us the information about cmd
Sleep minute freeze
Sleep 30 & Freeze at background using &
Jobs -l Shows job by created user
Ctrl z Stop the sleep mode
Df -hT Storage with type
lsblk -f Partition with file system
Fg % job number Shows task foreground
Cat /etc/passwd | grep Shows particular user /find
username
Cat /etc/passwd | grep You can find particular user
“username”
Locate Find the details
grep [options] 'pattern'
filename Shows word in that file
grep -i "linux" [Link] Find incase sensitive command word
grep -w "cat" [Link] Find whole word
grep -n "error" [Link] Shows line number
grep -r "keyword" Find recursively in directory
/path/to/dir
grep -c "fail" [Link] Count match
Find /etc -type f Find the particular files if we want another change that particular
folder name
Find /etc -size 10M Find by sizes k,M,G
find /path -perm 644 Find perm
Ctrl l clear
Sort [Link] |uniq Sorting the file
Sort -n [Link] arrange Ascending order
Sort -nr [Link] Arrange in descending order
Apt update Update the apt
Nice -n (num) sleep (time Set task priority
sec)
Nice Range -20 to +19 -20 = Higher Priority , +19 = Lower Priority not a command this is task
priority
Renice -n (num) (num) Changes into the priority
Kill -9 (PiD num) 399 Kill the task
Kill -l Kill information for tasks
history All cmd executed in the ec2
Wget link Link for the web address to install
Redhat (amazon linux) ubuntu
Package manager Package manager
-old =RPM dpkg
-New=Yum APT
Networking (24/06/2025)f
Ping [Link] Troubleshooting
Getmac Mac address
Ipconfig Check private address
Ifconfig For linux
Tracert websitename Trace the path
Ping Checks the troubleshooting
websitename/address
[Link]
Sudo apt install
network-manager
Nmtui Open network package manager
Curl [Link] Checks the public
Ssh-keygen Creating the key
Sed -I Change the data without vim cmd
ALL PORT NUMBER WORKS UNDER IN THE TCP
0 – 65535
TCP VS UDP
Port Number=
Windows RDP = 3389
Http= 80
Tomcat =8080
Jenkins =8080
Nfs =2049
Mysql=3306
Https= 443
Ssh=22
Streameditor
Awk cmd for linux
SED
Here’s a complete list of commonly used ports in Cloud & DevOps —
covering AWS, Kubernetes, Docker, Jenkins, Git, Terraform,
CI/CD, monitoring, and networking — so you can easily open the
right ones in your firewalls or security groups.
Cloud (AWS / Azure / GCP) Common Ports
Service Port Protocol Description
Secure shell for Linux server
SSH 22 TCP
access
Remote Desktop for Windows
RDP 3389 TCP
instances
HTTP 80 TCP Web traffic (unencrypted)
HTTPS 443 TCP Secure web traffic
Service Port Protocol Description
DNS 53 TCP/UDP Domain name resolution
NTP 123 UDP Network time protocol
25, 465,
SMTP TCP Email sending
587
IMAP / IMAPS 143 / 993 TCP Email receiving
POP3 / POP3S 110 / 995 TCP Email retrieval
S3 443 TCP AWS S3 API access
EC2 Metadata 80 / 443 TCP AWS instance metadata
RDS MySQL 3306 TCP AWS database (MySQL)
RDS PostgreSQL 5432 TCP PostgreSQL
RDS MSSQL 1433 TCP SQL Server
Redis (ElastiCache) 6379 TCP In-memory database
MongoDB 27017 TCP Document DB
Sends metrics/logs to AWS
CloudWatch Agent 443 TCP
CloudWatch
⚙️DevOps Tools & CI/CD
Tool Port Protocol Description
Jenkins 8080 TCP Jenkins web UI
GitHub / GitLab 22, 443 TCP Git SSH/HTTPS cloning
2375 (insecure) /
Docker Daemon 2376 TCP Docker remote API
(secure)
Code quality
SonarQube 9000 TCP
dashboard
Nexus / Artifactory 8081 / 8082 TCP Artifact repositories
Prometheus 9090 TCP Monitoring
Visualization
Grafana 3000 TCP
dashboard
ELK Stack
9200 TCP Elasticsearch API
(Elasticsearch)
Logstash 5044 TCP Log ingestion
Kibana 5601 TCP Log visualization
Ansible Tower / AWX 80 / 443 TCP Web console
Terraform Cloud / CLI 443 TCP API communication
🐳 Docker & Kubernetes
Service Port Protocol Description
Docker remote
Docker Engine API 2375 / 2376 TCP
management
Private Docker image
Docker Registry 5000 TCP
registry
Kube API Server 6443 TCP Kubernetes cluster API
Kubelet agent
Kubelet 10250 TCP
communication
Kube-scheduler 10251 TCP Scheduling component
Kube-controller-
10252 TCP Controller manager
manager
Kubernetes key-value
ETCD 2379–2380 TCP
store
NodePort Range 30000-32767 TCP Exposes services externally
Metrics-server 4443 TCP Cluster metrics
CoreDNS 53 TCP/UDP Kubernetes DNS service
Ingress Controller 80 / 443 TCP Expose HTTP/HTTPS apps
🧰 Monitoring & Logging
Service Port Protocol Description
Prometheus 9090 TCP Metrics collection
Node Exporter 9100 TCP Linux system metrics
cAdvisor 8080 TCP Container metrics
Alertmanager 9093 TCP Prometheus alerting
Grafana 3000 TCP Dashboard
Fluentd / Fluent Bit 24224 / 2020 TCP Log forwarding
🌐 Networking / Security / Misc
Service Port Protocol Description
OpenVPN 1194 UDP VPN connection
WireGuard 51820 UDP VPN tunnel
HAProxy 8080 / 8443 TCP Load balancer
NGINX 80 / 443 TCP Web proxy or reverse proxy
Apache 80 / 443 TCP Web server
Consul 8500 / 8600 TCP/UDP Service discovery
Vault 8200 TCP Secrets management
🧾 Summary Quick Reference
Category Key Ports
Web 80, 443
SSH / Remote 22, 3389
Database 3306, 5432, 1433, 6379
CI/CD 8080 (Jenkins), 9000 (SonarQube)
Monitoring 9090 (Prometheus), 3000 (Grafana)
Kubernetes 6443, 10250, 30000–32767
Docker 2375–2376, 5000
VPN / Proxy 1194, 51820, 8080
VPC
Public
A 1-126
127 – reserved for loopback address for itself checks the system
B 128-191
C 192- 223
Private I.p range
A= [Link] [Link]
B= [Link] – [Link]
C= [Link] – [Link]
If internet is not working in the linux
We can check in the file
Vim /etc/[Link]
Nmtui cmd use to open network package managar graphically
AWS
Amazon Linux
Elastic compute cloud Ec2
SSH Client task
Remote access for local machine
Launch ec2 instance
Go to connect
And go to ssh client
Copy path link
And go to command line windows cmd
Go to the cd downloads
Must be present your ssh key
Copy example cmd as shown in that UI
Paste the link
Type yes for ubuntu server
It will attach
2) Host a website on nginx server and httpd server
Go to the repo
Clone repo
And add that website folder
Mv * /var/www/html/
And add sec group 80 http
And go to the web browser
Add instance public ip
Public ip = dynamic we can make static by using elastic ip
Private ip = static
EBS =filesystem
Launch one instance attach ebs
Go to the volume need to be in the A-Z both ec2 and volume
Attach volume to the ec2
Sudo -i
10 gbi
Lsblk cmd
[Link] /dev/xvdb
Sudo mount /dev/xvdb /mnt
Vim /etc/fstab
Partition;
Fstab
Fdisk /dev/sda (disk id)
M for help
N for new partition
W save
Partprobe
[Link] /dev/sda1
Umount /dev/diskname
Mount /dev/sda1 /mnt
VPC
Go to the vpc
Create the vpc only
Give name to the vpc
Network range of ip public
[Link] / cidr block no 16 e.g.
Add subnet
Name
Give them range to ip
Divide them into the block
[Link]/22
Add accurate A-z availability zone
VPC create
Vpc give ip cidr
[Link]/16
No 1pv6 block
Create & go to the subnet
Select the vpc name
Give subnet name
Select A-Z
Go to action auto assign-ip
Enable
Add ipv4
[Link]/22
Private
Same process
Just select [Link]/22
Create the int- gateway
Select vpc
Create int
Attach to vpc
Create route table
Give name
Select vpc
Subnet associations
Select subnet only one
And save
Route edit
Add route
Select int- gtway
Select [Link]/0
Launch ec2
Network setting
While creating Nat Gateway always select public subnet
Private vpc – ec2 instance
Vpc-2 10.0.0/16
Peering connection -for vpc connection
Accepter -vpc-2
Requester -vpc-1
Icmp protocol= Ipv4 for peering conncetion in sec group
And add in the route table
Edit route add peering connection
Switch both vpc ip’s add another In that peering connection
Load Balancer
Create the two instance
Add Httpd commands
In Shebang line #!/bin/bash
And git –clone repo url
Go to clone url folder
Enter cmd
Mv * var/www/html/
Enter public ip on url
To launch website
Create also target group
Add name
Add sec group http 80
Add instance all in the pending below section
Add pending below
Review target
And create the target group
Create the load balancer
Create the application LB
Give name
Select A-Z zone & Subnets All
Security Group existing add in the LB
Listeners and Routing
Add target Group
Select
And
Create the Load Balancer
Copy DNS link
Paste the link on the web browser if not showing
Check sec group Http 80
ARN = Amazon Resource Number every service and resource after
creating they will get the id (unique id)
Application load balancer
Listeners and Route
Click 1 rule
Add rule
Condition
One for
/mobile/ *
And another
/laptop/ *
Forward to Target Group
Add LB
Both
/mobile & Laptop
Add Priority (1)Number
Route Path based LB
Create the 3 instance
HOME LAPTOP MOBILE
Add Sec Group
Add shebang line
Create the 3 Target group
Add home for 1 target g
Add laptop for 2 target g
Add mobile for 3 target g
Create the load balancer
Add load balancer create and add main home page Target
And all a-z
Add click http 80
Add rule
Add path
/mobile /*
/laptop /*
And also
Add both
Target mobile /laptop
Target add priority (1)
After that create the service
Copy DNS Link
And paste on URl
Use path of the folder
Instance ip/folder name
Auto Scaling
Vertical Scaling = Stroage Increases and capacity
Horizontal Scaling = Instances increases
First create ec2 template
Then launch the template
Create A-S
Add add name
Select temp ec2
Add all -AZ
Add Desired Capacity
Min
1
Max
2
Option select
Target Tracking Scaling Policy
Metric type
Average
Cpu capacity =10
Warmup =300 seconds
Run cmd in the ec2
Yum install stress -y
EFS= Elastic File system
Create the two instance
We need efs and instance in the same region
Add ESF- sec group for firewall
NFS 2049 on both instance
And run cmd
Sudo yum install amazon-efs-utils -y
Create on both instance Mkdir efs
Give permission chmod 777 efs
Go to the EFS service
Create the file system
Give name
And create one thing is mandatory is they have
both ec2 and efs on same region
Go efs network
And manage add our sec group delete another one
Go to the efs copy mount via dns cmd
Paste In the instance
Fdisk / partition name
Same steps as above ebs
Yum install httpd -y Installing the web environment
Systemctl start httpd Start
Systemctl enable httpd
Systemctl stop httpd
Systemctl status httpd
Cd /var/www/html File location
Public ip address On chrome of aws instance
search
Ubuntu linux
Apt install apache2 -y Install the environment
Systemctl start
apachye2
Systemctl enable
apachye2
Systemctl stop
apachye2
Cd /var/www/html
Cd
/usr/share/nginx/html
Same ip address Public ip for aws instance
SSh -I [Link] For cmd prompt
@ip address
Apt update nginx
Sudo apt install nginx Server hosting
Systemctl start nginx Start
Systemctl enable nginx
Df -ht File system name and storage
Systemctl stop nginx
Yum install git -y
#!/bin/bash Sheban line
Apt update -y
[Link] format
/dev/volumename
Mount
/dev/filename
/foldername
lsblk Storage attached drives
Umount
/dev/filetypename
Vim /etc/fstab Permanantly mount
Mount -a To add
Esc+:!cmd Vim to run cmd
Sudo gdisk /dev/xvdd Partition
Lsblk -f Find uuid for nano file
Fdisk /dev/xvdb partition
Press n For new partiton
Press m in gdisk or For help
fdisk
partprobe Update the changes for partition
/dev /filetypename /foldername filetype default 0 2
/dev/filetypename /drive ext4 defaults 02
EFS
sudo yum install amazon-efs-utils -y
VPC
scp -i id_ Copy form pc to linux
aws configure Login in the aws
Create the access key from Amzon cli token and use same region
the credentials from tab
account id right side
aws --version To see the access
aws iam list -users users
aws ec2 describe-instance Instance information
aws s3 ls list
aws s3 mb Create bucket
s3://nameofbucket
aws s3 cp filename Copy file into the bucket
s3://bucketname
aws s3 rm Remove the file
s3://bucketname/filename
aws s3 rb s3://bucketname Remove the bucket
Aws configure - -profile Create the profile user in credentials
“aws-user”
Vim .aws/credentials To see password
Scp -i id_rsa_key.pem id_rsa.[Link] ec2-user@(ip)address syantx
/home/ec-2user
Simple storage service
Create bucket for static website hosting
Give name
Object owner ship -acl enable
Untik block public access
Create bucket
Upload
Add the folder
Go to the properties
add static website option-enable
select all the uploaded files and then go action tab on
the right side tab is there
make public using acl option tick
S3= SSR, CCR
IAM User
Type of access
.aws mdhe login creddiatnels asta user che
[Link] Access [Link]
access
-acc id
-uname
-password
RDS-
Create database
Select standard
Engine select maria db
Template free tier
Credientials
Master admin
Self managed
Create password
Connectivity to an ec2
Add instance
Create one security grourp
Ssh 22 ipv4
Vpc
Add security group
Add mysql aurora 3306 In inbound rule
TCP 8080 custom add number only
Add http 80
And launch the Rds
CMD
sudo yum install mariadb105-server -y
systemctl start mariadb
systemctl enable mariadb
sudo mysql -h endpoint link -u admin -ppasswd123(pwd)
create database databasename;
show database;
use dbname;
paste the db script
show tables
desc students – shows the structure
select * from students
exit
bye
wget link for tomcat server
extract in the -C /opt
cd /opt/
ls
cd /tomcat
ls
cd /webapps
sudo yum install java -y
paste curl from [Link] repository
cd lib
paste curl ..mysql conncetor .jar
cd conf
ls
vim [Link]
edit the script
cd bin
ls
chmod +x [Link]
./[Link] start
Application server based
Webbased server based
Studentapp 3tier aws
Aws-rds-project
Copy the endpoint link and paste into the ec2
instance
Route 53-
DNS
Hosted zone
Create record
Record type
First 1-4 type we use from dropdown list
Go to ec2 instance
Launch ec2
Yum install git -y
Git clone staticwebsite url into instance
Go to route 53
Click on hosted zone name
Create record select A type
Copy the NS record route value to domain
servername into the domain website
Create record A type and paste the instance id of
public in that record box value
Done
Check dnschecker our website by our name
Recorder
A > ipv4
AAAA > ipv6
Cloudfront -
Latency delay in the network
CDN-content delivery network (edge location)
---Distribution
Name
Type single website
origin type
amazon s3
browse
select the bucket name s3
use website endpoint option
use default settings recommended settings
next
Firewall
Do not enable protection
Create distribution
Copy distribution domain name
S3 bucket policy –
Edit bucket policy in s3
General purpose bucket
Get statement search the service
Add the policy from s3 bucket in the
Project Studentapp updated in ubuntu
Create instance
Create security group
Create database
Install database in instance
Sudo apt install mysql
Create tables
Exit
Clone repository
Git clone
Go to backend folder
Go to cd src, cd main, cd resources
Open file in the [Link]
Add database in url in the file passwd username
Go to backend folder again
Install java from git cmd backend
Install maven
Cd Backend ls
Vim [Link]
Cmd -Mvn clean package-if mvn is failed try this
cmd (mvn clean package -DskipTests)
Cd target
Package file present in the folder
Cd frontend folder
Cd src,cd api, open file [Link]
Change ip address in second file
Backend
Npm install
Npm start
Npm run build
Install apache-2
And start the server
And install java -jar file in the backend file for from
repo
Then only can save the data in that page
running the database
And run the ec2 ip into the chrome
Lambda- serverless computing cloud
Function-
Select from scratch
Create function
Fn name
Execution role
Use an existing role
Toolbar
Test
Test event
Edit saved event
private
Value 1 change to hello world
And then go to code
Then deploy
Create instance
Create new function
Author from scratch
Python run time
Create role in iam
Permission
Ec2 full access
Lamda full access
Lambda basic execution role
Create function
Paste stop ec2 code form github into the code
Change instance ip-id into the code
Create event
Create new test
Private
Change in the code stop
Save
Add template
Code
Again do for the same start ec2
Whole step
Autoscaling with cloudwatch-
Create the ec2 instance
Create the Ami template
Launch template
Create autoscaling group
Select launch template
Select default vpc or own by choice
Select all subnets
Next as it is
Select desired capacity
min1-max3
go to cloudwatch-
select alarms
select matric
select the per instance metric
add instance id when selecting
cpu utililization
select autoscaling group name
conditions
greater/equal
threshold value 15
go to the automatic scaling
create dynamic policy
policy type
simple scaling
policy name
cl watch alarm
take the action
add 1 capacity units
create
there are many options create sns lambda
and other we can create directly
Jenkins- gitaction gitlab cli,etc
Git – version control system
Developer-linus Torvalds linux also made by him
Gitlab,bitbucket,github
Que.1 (cvcs vs dvcs)
Install git on instance
Yum install git -y
To activate
Git –version
Git clone url of the repo
Cmd
Create file by linux cmd
Git add filename -staging area
Git status to check files
Git commit -m “this is my first commit”
Git config --global [Link] “Rahul”
Git config --global [Link] “Rahul@[Link]”
Git config --global --list
Git log -to see the commit changes
Token generate
Cleck on profile icon on github
Settings
Website
Developer settings
Personal access token
Token(classic)
Generate new token(classic)
Select validity
Select all tickboxes
Generate token
Git push
Cmd To generate the key
Copy ssh path to clone
Ssh-keygen
Press enter
And copy the cmd from linux from .ssh ls-a
And go to the github and add the public key in the
Ssh and gpg key new key add and paste the key
Ctrl+shift+c=copy
Ctrl+shift+v=paste
Git restore --staged filename
To remove file from staging area
Git add. =add multiple files
Git bash cmd
Code .
Git branch
Git branch filename
Git checkout filename=switching the branch
Git push origin branchname
Git log --oneline
Git merge branchname
Git checkout -b release
Branching strategy
Git cherry-pick commit id
Git revert commit id
Git remote -v
Git remote remove origin
Git remote add origin=add url of github
Git pull origin branchname
Git fetch origin main
Main
Hotfix
Release
Develop
Feature
Dev1
Dev2
Diff between git merge and git rebase
Diff between git revert and git reset
L4 and l7 load balancer
Docker-
Docker Architecture
Dev team-
Write code
Install librarires
Test-
-test functionality
Operations
-setup infrastructure
-install dependencies
-deploy app
-containerization platform
-deploy app
Docker file
Docker file -set of instructions
Image – set of code dependencies, binaries
Docker –version
Sudo yum install docker -y
Sudo systemctl start
docker
Sudo systemctl enable
docker
Docker ps Shows running
container
Sudo chmod 777 To solve the docker
/var/run/[Link] issue
Docker run -itd –name cc Run container with
-P random port number
abhipraydh96/supermari use capital P
o
Sudo usermod -aG Add ec2 user into the
docker ec2-user docker group
Newgrp docker
Ps -aux | grep docker
Ps -aux | grep containerd
docker images
Docker pull nginx Install nginx latest
image
Docker images
Docker hub website
Docker run -itd -p 80:80 Run docker image
nginx container
Docker inspect container Find ip address of
id no/name container
abhipraydh96 Docker hub
Docker stop container id
Docker start containder id To start the container
/ name
Docker kill container id
Docker run -itd –name Ubuntu os
linux-cont ubuntu
Docker exec -it container Login other os in the
id or name /bin/bash container
Docker logs container id
Docker ps -a Shows off container
Docker tag nginx
abhipraydh96/engininx
Docker push pathname Push to repo
Docker login -u username Login in the docker
hub
Sudo apt install [Link]
-y
Docker rm container id Remove container
Docker rmi -f imagename Remove image
Docker stop $(docker ps - Stop multiple
aq) container
Docker rm $)docker ps - Remove multiple
qa) container
Docker rm -f $(docker
images)
Docker volume ls
Docker volume create
name
Docker volume –help
Docker run -itd –name
cont-1 –mount
source=vol-1,target=/fold
er name image name
Docker run -itd –name –
network
Docker build -t -f
Docker load -I Extract the image
[Link]
Docker network create
name
Docker network ls
apt install -y itputils-ping
Docker volume ls
Docker save -o Archieve the name
[Link]
Docker tag amzn Without tag we can
abhipraydh96/amzn not push
When many container is running we need to check
the that website we need to edit inbound rule by
ip we gave or all traffic set group rule
Vm Container
Full os we host machine kernal
Hypervisor Docker daemon
Heavy Lightweight (MB)
Monolithic vs microservices
Docker Volume task
Docker volume ls
Docker volume create ebs
Docker volume ls
Docker volume inspect ebs
Docker ps
Docker pull ubuntu
Docker images
Docker run -itd –name c1 mount
source=ebs,target=/device ubuntu
Docker exec -it c1 /bin/bash
Cd device
Touch file(1..5).txt
Do same for c2 container
Docker rm -f container name
Docker run -itd –name cont1 -v ssd:/drive ubuntu
Docker Network Types
Bridge(default)
None (Private)
Host
Overlay
Macvlan
Docker Networking
Docker network create networkname
Docker run -itd –name c1 –network vnet ubuntu
Docker run -itd –name c2 –network vnet ubuntu
Docker exec -it cname bin/bash
Docker inspect
Sudo apt install itputils-ping -y
Docker file
Vim dockerfile
Also create the [Link] file
FROM amazonlinux
RUN yum update -y
RUN yum install httpd -y
COPY [Link] /var/www/html/
CMD [“httpd”, “-D” , “FOREGROUND”]
-D : Default dir
Docker build -T image-one .
Docker build -T image- Image build
one .
Docker run -itd –name Create container and
c2 -p 81:80 image name run
Docker build -t Build the file
(filename) -f
imagename .
Docker login -u Login in the docker hub
username in ec2
Docker push repo
FROM amazonlinux
RUN yum update
RUN yum install nginx-y
CMD
CMD [“nginx” ,”-G”,”daemon off”
-g : global access
FROM ubuntu
RUN apt update -y
RUN apt install nginx -y
COPY yoga /var/www/html
CMD [“nginx” ,”-g”,”deamon off”]
Docker tag img image name
Docker 3 tier applications
Git clone repository 3 tier docker
Cd Directory
Cd Database
Build image
Run the container
Inspect the container copy the I.P address
CD backend../
Vim [Link]
Update ip of docker in the file
Vim dockerfile
Docker build -t backend .
Check images
Docker run -itd –name tomcat -p 8080:8080
backend
Cd frontend
Replace instance ip
Vim [Link]
Edit index file
Add ip of instance in that file
And search on url
Student app updated cloudblitz-
Launch instance
Set security group
Create rds database
Install database
From repo
If we want to change modify the database
Set up ec2 connection
Add database cmd mysql
Exit
Git clone repo cd
Go to backend
Cd src/main/resources
Vim [Link]
Change endpoint of database admin passwd
And also vim dockerfile -Backend
Change the endpoint in that file also
And build the dockerfile
Docker run -itd –name back-app -e
DB_PASSWORD=(password) -p 8080:8080 backend
Go to vim dockerfile
Change the endpoint
Also go to frontend
And also change the
Cd src/api/[Link]
Add instance ip in that file
And also vim dockerfile -Frontend
And add ip in that dockerfile also
If we have to change add new file in the dockerfile
And using chatgpt
We need correct the error
Rewrite the file from chatgpt
Add run/build dir dist with the help of chatgpt
Then also change the new file
And build the dockerfile
and run the cmd
Docker compose =
Docker swarm =
ENTRYPOINT and CMD diff
COPY and DIFF docker file
Entrypoint It cannot override
1. ENTRYPOINT
Defines the main command that will always
run in the container.
It is not overridden by command-line
arguments easily.
Used for a fixed executable.
2. CMD
Provides default arguments to the
ENTRYPOINT or defines the command if no
ENTRYPOINT is given.
It can be overridden when you run the
container.
Kubernetes =(K8s)
Control plane = Master node
Data plane= Worker node
Node= Instance, server
Cluster= Group of nodes
Pods= Small Packaged containers, units
Container runtime= container docker for run
and build purpose
Kube-proxy= communication between pods
assign i.p’s and networking
Kubelet-manage and observe works as agent
and give data to master node
Api Server = communicate with all worker
node handle all the work
Scheduler = create pods on worker node
Controller manager = control all the activity
actual and desired requirement checks all the
activity
ETCD Cluster= database saves data in value
and key pair
On premises -
Minikube(single node K8s cluster)
Kube-adm(Multi noded k8s cluster)
Kind Cluster (works on docker cont)
Killerkoda(k8s cluster for practice)
LABEX website for free services all the Devops
Kubernetes Command
Kubectl get nodes Show nodes
Kubectl get pods -o wide Detail
Information
Kubectl get pod Shows packaged
container
Kubectl run pod-1 –image nginx Create the pods
Kubectl run pod(name) --image
image name
Kubectl describe pod podname Information
about pod
Kubectl get svc Get ip
Kubectl exec -it podname – curl Access the data
clusterip
Kubectl expose pod podname – Create the
port=80 –target-port=80 – services
type=ClusterIP Login to the
cluster and
access into
node
Vim [Link]
Kubectl apply -f Code run
[Link](filename)
Kubectl exec -it podname – Login to the
bash
Kubectl delete svc pod name Delete the
service
Kubectl deploy –o wide
Kubectl get deploy podname
Kubectl set image deploy Update the new
/(deploymentname) cont- version also
1=abhipraydh96/studentapp:v image for rolling
2 update
Kubectl rollout history Get history of
deploy/name rollout
Kubectl set image deploy Save record for
/(deploymentname) cont- the updating v2
1=abhipraydh96/studentapp:v version of web
2 –record=true
Kubectl rollout undo Rollback to the
deploy/(name) previous state
of application
Kubectl describe deploy Get information
deployname
Kubectl get ns
Kubectl get sts
Kubectl get
Kubectl create ns prod(name)
Kubectl run nginx-pod –image- Run and create
nginx -n prod
Kubectl config set-context – Change the
current –namespace=prod pods ns
Kubectl get pods -n
prod(namespace name)
Kubectl config view –minify I
grep namespace
Kubectl config set-context – Back to the
current –namespace=default b default
namespace
Kubectl delete ns (namespace Delete the
name) namespace
Kubernetes
Crete the access key from the account id tab
Go to CDEC Devops repo
And go to Kubernetes folder
Install all the cmd
POD
POD
Services Kubernetes
[Link]= access app inside the cluster
[Link] Port = access app outside the cluster
external access
[Link] = balanced the load External access
Node port range
30000- 32767
EKS Cluster setup
Launch instance
Download eks in aws use throw git repo
Install kubectl using git repo
Install aws cli
Install aws configure
Paste accesskey
Paste secret key
Enter region
Task- create the Kubernetes cluster by GUI
And also create the Kubeadm for the cluster
Create the minikube in the kubernetes
Go to the repo cdec DEVops
Install minikube commands
We can access intra pod communication between
them by switching alternate the ip address of the
pod service I.P.
Created the RC and RS =auto healing
ReplicationController=equality based selector
ReplicaSet=equality based
Set based- in, not in, exist
Blue green deployment
Create the docker file
And also go to the minikube cluster
And install docker
Build the docker file for blue and grren separately
And push to the docker hub
Then go to the Kubernetes create the
Deploy yaml file for blue=v1
And Deploy yaml file for green=v2
And also create the svc file yaml
And also change the selector match label name for
blue and green for deploy in the [Link] file
And also create rolling update cmd run
Stateful set – for database
Create the pod one by one not in a same time like
rs and rc
Daemonset -for monitoring use
Kubernetes Volume
Gi=GB
Secretes= Save and hide data
Config map= Saves general data
Ingress=
Kubectl get pv Show
volumes
Kubectl get pvc Show claim
volumes
Echo “passwd123$” | base64 Create
encrypted
key
Kubernetes HPA Module minikube
Enable metrics server: minikube
addons enable metrics-server
Create deployment: vim [Link]
Create yaml file: paste cp code from
repo
Apply file : kubectl apply -f hpa-
[Link]
Create hpa file paste code from
repository
K8s student app project
Create the ec2 instance
Install the eks cluster
And also will create the 2 nodes ec2
And create the database RDS and
connect with one node that rds
Also select all traffic rules in sec group
Also open that node instance with
system manager
And also install maraidb105-server in
that node instance
Create database with cmd
And also clone the repo
Studentapp k8s repo name
And also go to the backend
Folder and edit vim [Link]
And update with rds admin password
and endpoint
And also build docker file
And push to the docker hub
And also edit [Link] file
Also edit the service file
With docker pushed image name
And do kubectl apply -f .
And do get svc
Copy loadbalancer link and paste in the
url
And also the go to the Frontend
Folder and edit vim [Link]
Paste the url link in the [Link]
And also build docker file
And push to the docker hub
Also edit the service file
And also, the edit [Link] file
With docker pushed image name
And do kubectl apply -f .
And do the kubectl get svc
Copy the loadbalancer link in the url
AWS Services
EC2
Load balancer
Target Group
Auto Scaling
VPC
S3
EBS
IAM
EFS
RDS
Lambda
Cloudfront
Route53
SNS
SQS
CLoudwatch
EKS
Cloudformation
Aws Fargate
ECS
ECR
Cloudtrail
Aws Config
Aws x-ray
Aws secret manager
CodeBuild
Code Commit (github like Service)
Code Deploy
Code Pipeline
AWS system manager
Terraform
Go to the github create the
codespace and also create the aws
credientls secret key and go to the
Official terraform installation
ubuntu
Also paste all the command
And install vs code hashicorp
terraform
After that set aws cli profile
With
aws configure –profile “username”
then do all the cmd and create the
tf file
also you can create the aws cli
access by creating the tf file in vs
code syntax you will get the official
tf documentation
Terraform init Install
package in
terraform
Terraform validate Check code
valid or not
Terraform plan Provide
apply details
Terraform apply Terraform
apply the
code
Terraform destroy Destroy the
all thing
Terraform apply - To skip all
auto-approve steps
Cat .aws/credientls Login go to
home cd
and pwd
alias Rename the
username=terraform terraform
name cmd
name
Terraform
workspace show
Terraform
workspace new prod
Terraform
workspace show
Taint
aws_instance.web
Aws configure -- Create the
profile ”[Link]” cli user
Terraform
workspace select
dev
Terraform install on ubuntu
Terraform aws group,
Users, group membership,
Aws cli installation on ubuntu
Aws documentation on terraform
official website for the vpc ec2 and
other services
Terraform three type of file
E.g [Link]
[Link]
[Link]
How to make module
Create the file terraform in that fiel
module in that file create ec2 in
that file create the file .tf file of ec2
services
Module = ls
Mkdir modules
Cd mkdir
Mkdir vpc
Cd vpc
Touch [Link] vpc-
[Link] and [Link] create this
files
Same for ec2 also
And create outside this modules
folder [Link]
We have to save all file under
module folder
And after that create [Link] on
home page and add the reference
and call in that file
[Link]=add all the requirement
And then create the
for string file= and list to hold that
value
.tfvar file= to add the value of all
[Link] file in that
[Link] = the file contains
all the history of the file which we
have done in that other files
We store this at s3 bucket
Questions-rajat
Terraform blocks -9 types
Access key and secret key diff
Terraform arc
architecture = tf commands
VPC endpoint
S3 endpoint
Check all services console and
answers
When we have to start terraform
We need to start [Link] file
Then
Terraform init
Ec2 NAT instance
Type of VPN
LAMP server
Wordpress server
LTAB server
Nodejs server
Create the project super
mario with Terraform=
Create ec2 instance
Create the iam role
Give name ec2 user
Ec2 access
Admin access
Eks full access 9
Role can handle only 10 policies at
a time
Create the role for super mario
Add role go to action select security
select modify iam role and attach
to ec2 from ec2 dashboard
Install docker
Follow github repo
Sudo yum install docker -y
Enable and start docker
Sudo usermod -ag docker ec2-user
Install terraform from official
website from amazon linux
Go to step 5 on repo
Setup terraform with cmd
Install Aws cli
Install Kubectl
Install git
Create the eks cluster
Create the bucket in tf and attach
the bucket in file with coding
[Link]
Clone repo super mario
Cd eks-tf
Ls
Cat [Link]
Aws configure –profile “eks”
Create the secret key and access
key
Add with cli
Ls
Go to cd [Link]
Vim [Link]
Add aws cli user details in both
[Link] file and [Link] file
Vim [Link] file for iam role
Change instance type in that file
Cmd =
Terraform init
Terraform validate
Terraform plan
Terraform apply -auto—approve
When cluster is ready
Update the eks
Go to the project mario
Vim yaml file
Run kubectl Apply cmds
And attach svc cmd
Copy the link add on the url of your
web browser
Terraform Provisioner =
[Link] Provisioner.
[Link] Provisioner.
[Link] -Exec.
Jenkins = CICD Tool
Installation ubuntu
[Link]
Jenkins port 8080 custom
tcp add in sec group
Add the url instance ip and Ip:8080
so we can access Jenkins
After that copy that path
And copy cat cmd and shows the
passwd
Plugins=Dependencies
Install plugin
[Link] integration
[Link] first 4 and also cloudbees
Docker
Credientels= saves all login
information
Freestyle Project =
Project insure me= Repo github
Build pipeline
Select pipeline
Create the sample Jenkins
Go to the instance
Sudo -i
And checks
/var/lib/Jenkins/workspace
You will find project name folder
Install docker
Install docker all cmd
[Link],groups
Install maven
Use sudo apt
Go to the Jenkins
Go to tools option
install maven in that tool option
And docker
Select form lates [Link]
Create the script for github repo
And generate form pipeline syntax
Select git add repo url
And paste the cmd which they give
us
Clone with cmd
And build stage
Webhook
Go to the gith hub
Create the token
Go to Jenkins and in the credentials
Go to and select =global tab
Add in the github credienetls
Token github details
And go to the
Go to the repository and
Go to settings
And also find webhook in that settings
Build pipeline
Create the checkout from version
control
Select add github repo details
and also create the
select the trigger option in the
webhook trigger
go to the github
selecyt repo and in that settings
you will find the webhhok
and also go to the webhook option
and add the webhook
ip address of instance and Jenkins
[Link]:8080/github-
webhook/
And add select the trigger option in
that tab
Go to again in that Jenkins
And build
AGENT
Create the two instance
[Link] Jenkins = install jenkins
create ssh key
[Link]- agent (worker node)
Create the one directory in node ec2
Give chmod 777 full permission to that
folder
Install java on node
Create ssh key in master node
Ssh-keygen
Copy public key
And paste in the node agent ec2
Nano authorized key paste the key
And go to the Jenkins
Go to the jenkins credentials
Add ssh with private key jenkins
Go to the master node
Copy private key and paste in the
Copy whole private key with starting
words and ending words
That Jenkins
And also go to the manage Jenkins
Go to tools
Go to the nodes
Add node
Add name
Give 1
Give 3
Use as much as possible
Give path like /home/ubuntu/dirname
which you created the directory in
agent ec2
Select launch agents via ssh
Node agent ec2 paste the ip address
Select Non verifying strategy
Build pipeline
And add script
And apply and
Build
Project Netflix
Create the one instance in ubuntu
[Link] or higher
Give 30 gb ebs volume and attach
Install Jenkins file and cmd
Login Jenkins
Setup Jenkins
Install docker in ec2 instance
Run cmd docker ps
Give chmod 777 permission
Install sonarqube in ec2 instance
Install trivy in ec2 instance
Manage Jenkins
Plugins
Available plugins in Jenkins
Stage view install in Jenkins
Docker 5 plugins install in Jenkins
Eclipse termurin installer in Jenkins
Sonar qube scanner install in Jenkins
Node js install in Jenkins
Install means download the plugins
Login the sonar qube using
Ec2 public ip and port number on url
Port number of sonar qube 9000
And password and login id
Admin
Pw-admin
Use sonarqube
Click on my profile – security – create
token
Select – user token – 30 days
Copy token
Go to Jenkins
Manage Jenkins -
Go to tools
Add sonarqube scanner
Upload all token and details
And go to jdk
Add jdk17
Download from website
Select version jdk-17.0.10+7
Go node
Add name node16
Install version node 16.10.0
Install docker
Download from website
Go to credentials
Select kind – secret text
Add Jenkins
Add token of sonarqube
Give id name -sonar token
Add docker
Select kind- username and password
Add docker hub username & password
Create pipeline
Project type pipeline
Go to manage Jenkins-
Go to the system
Sonarqube servers-
Install environment tick box
Add url ec2ip and sonar port no
http//[Link]:9000
Select sonar token name in that last
box cred
Go to project
Go to Netflix clone folder
And copy the sonarqube folder go in
that and copy the pipeline
In the code change our own dockerhub
password
And see all the name which we have
given in credentials and system for
sonarqube and
Also docker details
Add script from repo
Change the git from generate cmd for
git
Go to the tmdb if you want and create
the api key (optional)
And run and build pipeline
Copy ec2 ip to access file docker
container in ip
23.45.678:32009
Go to the ec2
and open image file
and go to sonarqube and check logs
Project Myntra Jenkins
Folder path=Go to github
Cdec devops
Jenkins
[Link]
Launch ec2 instance
With 50 gb storage attach with ec2
Install on ec2
Install java
[Link]
Install Jenkins
Install nodejs
16.10.0
Install docker
Install sonarqube using docker cmd
Create and install eks cluster
Install aws cli
Aws configure for user
Go to Jenkins – manage Jenkins
Install plugins
Sonarqube
Eclipse termiun installer
Docker
Stageview
nodejs
go to tools
add jdk17 same as Netflix project
version
add nodejs16
add docker
go to the sonarqube go to profile
security and also create token
and paste in the go to Jenkins
credentials select global-
secret text
paste the token
add docker credentials your docker
select username with password
hub account
and also go to the github and go to
the developer settings
create classic token copy
go to the Jenkins in the credentials
select username with password
go to the system add sonar server
with ip address of url ec2ip:9000
go to github repo and copy the
code edit all the details of docker
and github create the pipeline in
Jenkins
add code
go to the ec2
launch eks cluster
using eks cmd
and also do the namespace for
namespace
create the svc
add loadbalancer
paste the link of loadbalcer in the
url
login argo cd
go to advanced option if failed
for password
find secret password
cmd using you will find pw
the password will pop up in the
front ubuntu name copy and paste
the pw in the argo cd
go to the argo cd create
the service
and give and all the details you can
see reop image
give name
select head
select automatic
url of repo
select by default cluster
and give path give k8s
and paste into the url
eks svc loadbalancer link
install helm
sudo snap install helm --classic
-------------------------------
Install Grafana
Install helm- Kubernetes package
manager
Promehtuses
By git cmd repo
ARGO CD TOOL = Kubernetes
manager deployment using git
TRIVRY TOOL = security
vulnerability checker
Sonarqube = Security Process Code
Quality and Gateway of
Deployment
Checks Logs
Project insure me by cmd line tool
Launch instance
Clone repository
Install maven
Mvn clean package in the repo
Install amazon cli
Create secret key
Cmd-Aws configure
Make bucket s3
And cp java jar file in the target
folder in the bucket by aws cli cmd
Install docker
Create the dockerfile
And build
And run the container
Run cmd docker images
Run cmd docker ps
Cdec devops Jenkins Aws [Link]
project=Webhook
Create the ec2
Install Jenkins
Go to the jenkins
Install plugin
Maven
stageview
s3 publisher
Aws cli
Docker plugin in Jenkins
Go to credentials
Dockerhub id docker-cred
Add also aws credentials aws-cred
Go to pipeline create the
And also tick trigger
Hook trigger
Copy code
Edit pipeline
Add maven in the tool
Version in the code
And also add docker image build
and run cmd
select version control for repo url
paste in the code
go to the repo
in the repo settings
-webhooks
Add webhook
Paste the url of the instance
Add ip url/github-webhook/
Build in Jenkins
Go to the ec2 add group cmd for
Jenkins using docker
Give permission for docker sock
Questions
Declarative pipeline &Scripted
Pipeline
Docker
ECS
ECR like docker hub services in aws
Terraform project with
Jenkins
Repo = [Link]
Launch ec2 instance
Install Jenkins
Install terraform on instance
Launch Jenkins
Add plugins
Terraform
Stage view
Aws credentials
Aws steps
Go to tools -terraform -add
Cred- aws cred – add aws cli secrect
key
Git url change – by pipeline syntax
With credentials bind
Select secret key
And generate the script
In the code in stage infra
Add terraform all command
And build pipeline
--------------------------------------------
Jenkins build pipeline features
Parameter option in the Jenkins
Schedule option
Pool scm
And also build periodically
DATADOG Monitoring Tool
Launch an elastic compute
cloud ec2 instance
Go to official datadog website
By [Link] and create the
user
And go to the add cmd
In the instance
Intergration add the agent
create the cmd
option install
Infastructure
Hostmap to see monitor tool
Monitoring tool
Promothesus on repo cmd
Phase 4
Promothesus i.p9090= Holds
value
Node exporter i.p9100 =
Collects the value
Grafana i.p3000 = data
visualization tool
Grafana=
User id = admin
Pw= admin
Login with ip and grafana port
number
Grafana tool = connection s
Promothesus add ip
Task =
Aws Cost billing and
management repo
Aws
Task=
Ansible task
Task= angular k8s project repo
Policies=
[Link] based = [Link]
[Link] = aws managed
Customer
managed
[Link] based
Roles = temporary access
[Link] access =
[Link] access = communicate with
services
Task 1= create the IAM user without
graphical interface
[Link] AWS ORGANIZATION option
We can create the group
2.Ec2 instance type with series name
EC2 placement group option = spread, cluster,
partition
Auto scaling type =
1. Dynamic
Scaling
2. Predictive
3. Scheduled
4. Manual
5. Step
6. Target
tracking
AWS LAMBDA Services
Create the role
Ec2 full access
Lambda full access
Lambda basic execution role
Go to lambda
Create the function
Author from scracth
Select python 3.14
For start and stop ec2 instance
Change modify role
And add role
Then create the code add from repo
Add instance id in the code
And then create the test event
From repo add action code
And deploy
Security group firewall for Instance
And for subnet firewall is NACl network access
controller
Aws Cost optimization
Go to docs
And aws select cloud cost calculation example
1. What is Canary Deployment?
Think of it like sending a “canary” into the coal
mine — if it survives, the new version is safe to roll
out to everyone.
You deploy the new version (v2) alongside the
current version (v1) and route a small percentage
of traffic to it.
If no problems occur, you increase traffic
gradually until 100% of traffic is on v2.
Replication controller is a equality based using
selector
Replica set is a updated version of replication
controller and its based on equality based and set
based using matchlabels.
Daemon set = on our cluster reserved one pod for
monitoring purpose and logs in kubernetes
Ingress= traffic controller and path based routing
HPA = HPA (Horizontal Pod Autoscaler) is a
Kubernetes controller that automatically scales the
number of pods in a deployment, replica set, or
stateful set based on CPU, memory, or custom
metrics.
TF= statefile
Jenkins = explain stages of ci cd pipeline
Ansible
Configuration management tool
Public key always has with servers
Private key always has with user/client
Launch two instance
One is master node and another one is worker
node
Type = ssh-keygen in master node
Copy public from cat .ssh/id_ed33456.pub
Paste public key in worker node
Paste using nano .ssh/authorized_keys
Install all repo ansible commands in the
master node
Go to the vim/etc/ansible/hosts all ip private
address of worker instance in the hosts file
Go to the vim /etc/
Go to the vim sudo /etc/[Link] add false
command on repo
Check connection between server
Cmd= Ansible all -m ping
Create the playbook file on master node
With sudo vim [Link]
Add github code yaml script in the
Playbook file
Run cmd=ansible-playbook [Link]
Check public i.p. url on [Link]
For Grouping concept we can do only selected
servers what we have to install in the host file
we can use
[Frontend]
Ec2 [Link] address
[Link]
Add more
[backend]
192.168
[database]
192.268
In the hosts file we have to add
And also We have to add in playbook file
grouping name in hosts= frontend
Host-file = inventory file= stores all the servers
of all private ip address
Error code and status code
Nagiosxi /nagios monitoring tool
Go to the chatgpt and install all command on
the ec2
Git
Working directory =
{Git add .}
After cmd goes to Staging area
[git commit -m]
After goes to local repository
[Git push]
Go to the remote repository
Github tool
Git branching statergy
Git stash
Git config
Git rebase
Git merge
Project student application with Jenkins
terraform and script from super mario
and also pending task need to be completed
TCP- CGP - ICA = Workspace cloud Computer
Architecture built by Citrix