1. Learn & Understand OS Concepts :
Get familiar with Linux understand the different process of memory & process management learn about virtualization
2 . Networking Concepts :
Learn about network layers different protocols like http ftp ssh how to listen on different ports & concepts like network security
3 . Learning how to set up Web servers :
Learning how to setup a web server like Apache , tomcat , nginx & IIS gonna help you a lot in your devops journey
4 . App containerization with docker
The most critical component of devops is knowing how to containerize an application using tools like docker
& kubernetes
5 . Container orchestration with kubernetes
Kubernetes is used for automating deployment, scaling, and managing containerized applications.
6 . Continuous Integration & Continuous Development
Creating and managing pipe lines with tools like github actions , Gitlab , jenekins
7. Monitoring & Automated Testing
The deployed application has a lot of different running services which needs to be monitored continuously using tools like Prometheus & In order to automate testing u need to learn any language like python , go or bash
8 . Version Control & Cloud Providers
To keep track of version you need to learn any version control tool like github & to work with cloud native you need to learn different cloud providers like AWS , Azure or google cloud
• • •
Missing some Tweet in this thread? You can try to
force a refresh
Microservices are applications which are loosely coupled services each represents separate business goal, the advantage of using microservices is they can be easily developed and maintained individually. It also gives developer freedom to choose stack.
What are Monoliths ?
A monolithic architecture means creating a single unit as the base for all the functional components. This includes database operations, business logic, background processing, etc. They are all deployed at once and run on the same servers.
Kubernetes Architecture consists of master node which manages other worker nodes. Worker nodes are nothing but virtual machines running within a data center. They expose the underlying network and storage resources to the application
Master Node (Control Plane )
Kubernetes master is responsible for scheduling, provisioning, controlling and exposing API to the clients. It coordinates activities inside the cluster and communicates with worker nodes to keep Kubernetes and applications running.