100 Terms & Services which every DevOps ♾ Engineer should be aware of:
1. Continuous Integration (CI): Automates code integration.
2. Continuous Deployment (CD): Automated code deployment.
3. Version Control System (VCS): Manages code versions.
4. Git: Distributed version control.
5. Jenkins: Automation server for CI/CD.
6. Build Automation: Automates code compilation.
7. Artifact: Build output package.
8. Maven: Build and project management.
9. Gradle: Build automation tool.
10. Containerization: Application packaging and isolation.
11. Docker: Containerization platform.
12. Kubernetes: Container orchestration.
13. Orchestration: Automated coordination of components.
14. Microservices: Architectural design approach.
15. Infrastructure as Code (IaC): Manage infrastructure programmatically.
16. Terraform: IaC provisioning tool.
17. Ansible: IaC automation tool.
18. Chef: IaC automation tool.
19. Puppet: IaC automation tool.
20. Configuration Management: Automates infrastructure configurations.
21. Monitoring: Observing system behavior.
22. Alerting: Notifies on issues.
23. Logging: Recording system events.
24. ELK Stack: Log management tools.
25. Prometheus: Monitoring and alerting toolkit.
26. Grafana: Visualization platform.
27. Application Performance Monitoring (APM): Monitors app performance.
28. Load Balancing: Distributes traffic evenly.
29. Reverse Proxy: Forwards client requests.
30. NGINX: Web server and reverse proxy.
31. Apache: Web server and reverse proxy.
32. Serverless Architecture: Code execution without servers.
33. AWS Lambda: Serverless compute service.
34. Azure Functions: Serverless compute service.
35. Google Cloud Functions: Serverless compute service.
36. Infrastructure Orchestration: Automates infrastructure deployment.
37. AWS CloudFormation: IaC for AWS.
38. Azure Resource Manager (ARM): IaC for Azure.
39. Google Cloud Deployment Manager: IaC for GCP.
40. Continuous Testing: Automated testing at all stages.
41. Unit Testing: Tests individual components.
42. Integration Testing: Tests component interactions.
43. System Testing: Tests entire system.
44. Performance Testing: Evaluates system speed.
45. Security Testing: Identifies vulnerabilities.
46. DevSecOps: Integrates security in DevOps.
47. Code Review: Inspection for quality.
48. Static Code Analysis: Examines code without execution.
49. Dynamic Code Analysis: Analyzes running code.
50. Dependency Management: Handles code dependencies.
51. Artifact Repository: Stores and manages artifacts.
52. Nexus: Repository manager.
53. JFrog Artifactory: Repository manager.
54. Continuous Monitoring: Real-time system observation.
55. Incident Response: Manages system incidents.
56. Site Reliability Engineering (SRE): Ensures system reliability.
57. Collaboration Tools: Facilitates team communication.
58. Slack: Team messaging platform.
59. Microsoft Teams: Collaboration platform.
60. ChatOps: Collaborative development through chat.
✈️ 𝐅𝐨𝐥𝐥𝐨𝐰 @prodevopsguy 𝐟𝐨𝐫 𝐦𝐨𝐫𝐞 𝐬𝐮𝐜𝐡 𝐜𝐨𝐧𝐭𝐞𝐧𝐭 𝐚𝐫𝐨𝐮𝐧𝐝 𝐜𝐥𝐨𝐮𝐝 & 𝐃𝐞𝐯𝐎𝐩𝐬!!! // 𝐉𝐨𝐢𝐧 𝐟𝐨𝐫 𝐃𝐞𝐯𝐎𝐩𝐬 𝐃𝐎𝐂𝐬: @devopsdocs
1. Continuous Integration (CI): Automates code integration.
2. Continuous Deployment (CD): Automated code deployment.
3. Version Control System (VCS): Manages code versions.
4. Git: Distributed version control.
5. Jenkins: Automation server for CI/CD.
6. Build Automation: Automates code compilation.
7. Artifact: Build output package.
8. Maven: Build and project management.
9. Gradle: Build automation tool.
10. Containerization: Application packaging and isolation.
11. Docker: Containerization platform.
12. Kubernetes: Container orchestration.
13. Orchestration: Automated coordination of components.
14. Microservices: Architectural design approach.
15. Infrastructure as Code (IaC): Manage infrastructure programmatically.
16. Terraform: IaC provisioning tool.
17. Ansible: IaC automation tool.
18. Chef: IaC automation tool.
19. Puppet: IaC automation tool.
20. Configuration Management: Automates infrastructure configurations.
21. Monitoring: Observing system behavior.
22. Alerting: Notifies on issues.
23. Logging: Recording system events.
24. ELK Stack: Log management tools.
25. Prometheus: Monitoring and alerting toolkit.
26. Grafana: Visualization platform.
27. Application Performance Monitoring (APM): Monitors app performance.
28. Load Balancing: Distributes traffic evenly.
29. Reverse Proxy: Forwards client requests.
30. NGINX: Web server and reverse proxy.
31. Apache: Web server and reverse proxy.
32. Serverless Architecture: Code execution without servers.
33. AWS Lambda: Serverless compute service.
34. Azure Functions: Serverless compute service.
35. Google Cloud Functions: Serverless compute service.
36. Infrastructure Orchestration: Automates infrastructure deployment.
37. AWS CloudFormation: IaC for AWS.
38. Azure Resource Manager (ARM): IaC for Azure.
39. Google Cloud Deployment Manager: IaC for GCP.
40. Continuous Testing: Automated testing at all stages.
41. Unit Testing: Tests individual components.
42. Integration Testing: Tests component interactions.
43. System Testing: Tests entire system.
44. Performance Testing: Evaluates system speed.
45. Security Testing: Identifies vulnerabilities.
46. DevSecOps: Integrates security in DevOps.
47. Code Review: Inspection for quality.
48. Static Code Analysis: Examines code without execution.
49. Dynamic Code Analysis: Analyzes running code.
50. Dependency Management: Handles code dependencies.
51. Artifact Repository: Stores and manages artifacts.
52. Nexus: Repository manager.
53. JFrog Artifactory: Repository manager.
54. Continuous Monitoring: Real-time system observation.
55. Incident Response: Manages system incidents.
56. Site Reliability Engineering (SRE): Ensures system reliability.
57. Collaboration Tools: Facilitates team communication.
58. Slack: Team messaging platform.
59. Microsoft Teams: Collaboration platform.
60. ChatOps: Collaborative development through chat.
Please open Telegram to view this post
VIEW IN TELEGRAM
In this project, I dive into setting up a robust 3-tier architecture on AWS designed to boost scalability, ensure high security, and optimize performance for modern web applications.
📣 Note: Fork this Repository🧑💻 for upcoming future projects, Every week releases new Project.
Please open Telegram to view this post
VIEW IN TELEGRAM
And here's a simple hack that can help.
It runs on each node, if a problem is detected it can report to apiserver. Here are some issues it can detect:
Try it out. Positive approach powers progress.
Please open Telegram to view this post
VIEW IN TELEGRAM
Let’s talk Docker images – nobody likes them big and slow, right? I had an image that was 879MB (way too big!), and I got it down to 150MB. Here’s how I did it:
[
[
[
[
[
Making Docker images smaller isn’t hard, and it’s worth it.
Faster builds, quicker deployments, and less storage needed. Give it a try!
Please open Telegram to view this post
VIEW IN TELEGRAM
1. Upwork - https://lnkd.in/gt4HYmd6
2. Docker, Inc - https://lnkd.in/gfX5-pQG
3. Automattic - https://lnkd.in/ddSBdusv
4. DigitalOcean - https://lnkd.in/dYgDZ-WF
5. Constructor - https://lnkd.in/daBzMdxM
6. Shopify - https://lnkd.in/d9zpGKTy
7. Abnormal Security - https://lnkd.in/gn5M4VDF
8. Mentorsity - https://lnkd.in/d8YyGHNH
9. Cloudflare - https://lnkd.in/g9JPXp2F
10. MissionWired - https://lnkd.in/gMA6AVdG
11. Symetra - http://www.symetra.com
12. Doist - https://doist.com/careers/
13. LogicGate - https://lnkd.in/gjgX27Bc
14. Canonical - https://lnkd.in/d9mf5Rr3
15. Cloudbeds - https://lnkd.in/dg3gC5v6
16. Sorcero - https://lnkd.in/gpmDTnH7
17. Beekeeper - https://lnkd.in/gxd7rs7Q
18. Uplers - https://www.uplers.com
19. Bold - https://lnkd.in/dZQ8dQnq
20. DuckDuckGo - https://lnkd.in/d_Kv9dM6
21. DealHub.io - https://lnkd.in/gyNED4yp
22. Kemecon - http://kemecon.com
23. Akamai Technologies - https://lnkd.in/dpTN5nPT
24. Arkency - https://lnkd.in/dBB_wZaR
25. Deltek - https://lnkd.in/dkSfGNbF
26. Cash App - https://lnkd.in/gdp8yUm8
27. Cloudflare - https://lnkd.in/g9JPXp2F
28. Affordmate - http://www.affordmate.com
29. Rec Room - https://lnkd.in/gErDuTNa
30. Funded.club - https://lnkd.in/gpH4FazA
31. Expert Thinking - https://lnkd.in/dz_4HFUi
32. Patreon - https://lnkd.in/gzQptMcQ
33. Xapobank - http://www.xapobank.com
34. Cengage Group - https://lnkd.in/gGkT6jRZ
35. LogicGate - https://lnkd.in/gjgX27Bc
36. Quest Software - https://lnkd.in/dkHSNGmM
37. Workera - https://lnkd.in/g2YzZu-H
38. Faire - https://lnkd.in/gYRNr9VM
39. McGraw Hill - https://lnkd.in/g59pzFf4
40. UserGems - https://lnkd.in/gXi3mNf6
41. Goinstacare - https://lnkd.in/d6ZN5FVD
42. Workiva - https://lnkd.in/g-FUYYdR
43. Contra - https://contra.com/careers
44. Awesomemotive - https://lnkd.in/diZZjb4J
45. Appcues - https://lnkd.in/dp2Jiupp
46. Jenius Bank - https://lnkd.in/gxGqHGkH
47. DocuSign - https://lnkd.in/ggfUncZf
48. Confluent - https://lnkd.in/dNSTmUeH
49. Census - https://lnkd.in/gAq7PGzc
50. AngelOne - https://lnkd.in/dk3NwDn6
Please open Telegram to view this post
VIEW IN TELEGRAM
1733716945710.gif
370.6 KB
Give me 3 minutes, and I'll explain the 😸 𝐆𝐈𝐓 𝐖𝐨𝐫𝐤𝐟𝐥𝐨𝐰 to you.
I will keep it very simple and straightforward.
[1.] 𝐈𝐧𝐢𝐭𝐢𝐚𝐥 𝐒𝐭𝐚𝐭𝐞
◾️ You have a remote repository on a server (README. md file exists).
◾️ Your local machine has no project files yet.
[2.] 𝐠𝐢𝐭 𝐜𝐥𝐨𝐧𝐞 <𝐫𝐞𝐩𝐨𝐬𝐢𝐭𝐨𝐫𝐲>
◾️ Copies the entire remote repository (README. md) to your local machine.
◾️ Creates a local repository linked to the remote one.
[3.] 𝐂𝐫𝐞𝐚𝐭𝐢𝐧𝐠 𝐚 𝐧𝐞𝐰 𝐟𝐢𝐥𝐞
◾️ You create a new file (newfile.txt) in your local working directory.
◾️ This file is untracked by Git at this point.
[4.] 𝐠𝐢𝐭 𝐚𝐝𝐝 .
◾️ Stages all changes (including the new file) in the working directory.
◾️ Prepares them to be included in the next commit.
[5.] 𝐠𝐢𝐭 𝐜𝐨𝐦𝐦𝐢𝐭 -𝐦 "<𝐦𝐞𝐬𝐬𝐚𝐠𝐞>"
◾️ Takes a snapshot of the staged changes.
◾️ Creates a new commit in your local repository with the changes and your commit message.
[6.] 𝐠𝐢𝐭 𝐩𝐮𝐬𝐡
◾️ Uploads all your local commits to the remote repository.
◾️ Now, both your local and remote repositories are synchronized.
📌 𝐊𝐞𝐲 𝐏𝐨𝐢𝐧𝐭𝐬
◾️ Working Directory => Where you make changes to your files.
◾️ Staging Area (Index) => A temporary holding area for changes you want to include in your next commit.
◾️ Local Repository => Your complete project history on your machine.
◾️ Remote Repository =>The central project repository on a server, often used for collaboration.
✈️ 𝗙𝗼𝗹𝗹𝗼𝘄 @prodevopsguy 𝐟𝐨𝐫 𝐦𝐨𝐫𝐞 𝐬𝐮𝐜𝐡 𝐜𝐨𝐧𝐭𝐞𝐧𝐭 𝐚𝐫𝐨𝐮𝐧𝐝 𝐜𝐥𝐨𝐮𝐝 & 𝐃𝐞𝐯𝐎𝐩𝐬!!! // 𝐉𝐨𝐢𝐧 𝐟𝐨𝐫 𝐃𝐞𝐯𝐎𝐩𝐬 𝐃𝐎𝐂𝐬: @devopsdocs
I will keep it very simple and straightforward.
[1.] 𝐈𝐧𝐢𝐭𝐢𝐚𝐥 𝐒𝐭𝐚𝐭𝐞
[2.] 𝐠𝐢𝐭 𝐜𝐥𝐨𝐧𝐞 <𝐫𝐞𝐩𝐨𝐬𝐢𝐭𝐨𝐫𝐲>
[3.] 𝐂𝐫𝐞𝐚𝐭𝐢𝐧𝐠 𝐚 𝐧𝐞𝐰 𝐟𝐢𝐥𝐞
[4.] 𝐠𝐢𝐭 𝐚𝐝𝐝 .
[5.] 𝐠𝐢𝐭 𝐜𝐨𝐦𝐦𝐢𝐭 -𝐦 "<𝐦𝐞𝐬𝐬𝐚𝐠𝐞>"
[6.] 𝐠𝐢𝐭 𝐩𝐮𝐬𝐡
Please open Telegram to view this post
VIEW IN TELEGRAM
Here's the step-by-step explanation for the deployment process of applications on Kubernetes:
‣ Once the application code is written, it is committed to a version control system.
‣ Git is a popular distributed version control system that tracks changes in source code during software development.
‣ Developers use Git to collaborate, track changes, and maintain a history of code revisions.
‣ The application is then packaged into a container using Docker.
‣ Docker allows you to package an application with all its dependencies into a standardized unit for software development.
‣ This ensures that the application runs consistently across different environments.
‣ Once the application is containerized, the Docker image is pushed to a container registry.
‣ Artifactory is a binary repository manager, which can be used to host Docker images among other binaries.
‣ The container registry stores Docker images and allows them to be pulled when needed for deployment.
‣ A Kubernetes Deployment configuration is created using YAML (Yet Another Markup Language).
‣ This configuration defines how the application should run inside the Kubernetes cluster, including the desired state, replicas, and other specifications.
‣ The Kubernetes Deployment configuration is applied to the Kubernetes cluster using kubectl, the Kubernetes command-line tool.
‣ This initiates the deployment process, and Kubernetes ensures that the desired state defined in the configuration is achieved within the cluster.
‣ A Kubernetes Service is created to expose the application internally within the Kubernetes cluster.
‣ This allows other services or applications within the cluster to communicate with the deployed application.
‣ To make the application accessible to external users, an Ingress resource is defined.
‣ The Ingress Controller manages the Ingress resources and ensures that external traffic is routed to the appropriate services within the cluster.
Please open Telegram to view this post
VIEW IN TELEGRAM
25 ☁️ git commands to make your life easier as a devops engineer.
𝟭. 𝗴𝗶𝘁 𝗱𝗶𝗳𝗳: Show file differences not yet staged.
𝟮. 𝗴𝗶𝘁 𝗰𝗼𝗺𝗺𝗶𝘁 -𝗮 -𝗺 "𝗰𝗼𝗺𝗺𝗶𝘁 𝗺𝗲𝘀𝘀𝗮𝗴𝗲": Commit all tracked changes with a message.
𝟯. 𝗴𝗶𝘁 𝘀𝘁𝗮𝘁𝘂𝘀: Show the state of your working directory.
𝟰. 𝗴𝗶𝘁 𝗮𝗱𝗱 𝗳𝗶𝗹𝗲_𝗽𝗮𝘁𝗵:Add file(s) to the staging area.
𝟱. 𝗴𝗶𝘁 𝗰𝗵𝗲𝗰𝗸𝗼𝘂𝘁 -𝗯 𝗯𝗿𝗮𝗻𝗰𝗵_𝗻𝗮𝗺𝗲: Create and switch to a new branch.
𝟲. 𝗴𝗶𝘁 𝗰𝗵𝗲𝗰𝗸𝗼𝘂𝘁 𝗯𝗿𝗮𝗻𝗰𝗵_𝗻𝗮𝗺𝗲: Switch to an existing branch.
𝟳. 𝗴𝗶𝘁 𝗰𝗼𝗺𝗺𝗶𝘁 --𝗮𝗺𝗲𝗻𝗱:Modify the last commit.
𝟴. 𝗴𝗶𝘁 𝗽𝘂𝘀𝗵 𝗼𝗿𝗶𝗴𝗶𝗻 𝗯𝗿𝗮𝗻𝗰𝗵_𝗻𝗮𝗺𝗲: Push a branch to a remote.
𝟵. 𝗴𝗶𝘁 𝗽𝘂𝗹𝗹: Fetch and merge remote changes.
𝟭𝟬. 𝗴𝗶𝘁 𝗿𝗲𝗯𝗮𝘀𝗲 -𝗶: Rebase interactively, rewrite commit history.
𝟭𝟭. 𝗴𝗶𝘁 𝗰𝗹𝗼𝗻𝗲: Create a local copy of a remote repo.
𝟭𝟮. 𝗴𝗶𝘁 𝗺𝗲𝗿𝗴𝗲: Merge branches together.
𝟭𝟯. 𝗴𝗶𝘁 𝗹𝗼𝗴 --𝘀𝘁𝗮𝘁: Show commit logs with stats.
𝟭𝟰. 𝗴𝗶𝘁 𝘀𝘁𝗮𝘀𝗵: Stash changes for later.
𝟭𝟱. 𝗴𝗶𝘁 𝘀𝘁𝗮𝘀𝗵 𝗽𝗼𝗽: Apply and remove stashed changes.
𝟭𝟲. 𝗴𝗶𝘁 𝘀𝗵𝗼𝘄 𝗰𝗼𝗺𝗺𝗶𝘁_𝗶𝗱: Show details about a commit.
𝟭𝟳. 𝗴𝗶𝘁 𝗿𝗲𝘀𝗲𝘁 𝗛𝗘𝗔𝗗~𝟭: Undo the last commit, preserving changes locally.
𝟭𝟴. 𝗴𝗶𝘁 𝗳𝗼𝗿𝗺𝗮𝘁-𝗽𝗮𝘁𝗰𝗵 -𝟭 𝗰𝗼𝗺𝗺𝗶𝘁_𝗶𝗱: Create a patch file for a specific commit.
𝟭𝟵. 𝗴𝗶𝘁 𝗮𝗽𝗽𝗹𝘆 𝗽𝗮𝘁𝗰𝗵_𝗳𝗶𝗹𝗲_𝗻𝗮𝗺𝗲: Apply changes from a patch file.
𝟮𝟬. 𝗴𝗶𝘁 𝗯𝗿𝗮𝗻𝗰𝗵 -𝗗 𝗯𝗿𝗮𝗻𝗰𝗵_𝗻𝗮𝗺𝗲: Delete a branch forcefully.
𝟮𝟭. 𝗴𝗶𝘁 𝗿𝗲𝘀𝗲𝘁: Undo commits by moving branch reference.
𝟮𝟮. 𝗴𝗶𝘁 𝗿𝗲𝘃𝗲𝗿𝘁: Undo commits by creating a new commit.
𝟮𝟯. 𝗴𝗶𝘁 𝗰𝗵𝗲𝗿𝗿𝘆-𝗽𝗶𝗰𝗸 𝗰𝗼𝗺𝗺𝗶𝘁_𝗶𝗱: Apply changes from a specific commit.
𝟮𝟰. 𝗴𝗶𝘁 𝗯𝗿𝗮𝗻𝗰𝗵: Lists branches.
𝟮𝟱. 𝗴𝗶𝘁 𝗿𝗲𝘀𝗲𝘁 --𝗵𝗮𝗿𝗱: Resets everything to a previous commit, erasing all uncommitted changes.
✈️ 𝗙𝗼𝗹𝗹𝗼𝘄 @prodevopsguy 𝐟𝐨𝐫 𝐦𝐨𝐫𝐞 𝐬𝐮𝐜𝐡 𝐜𝐨𝐧𝐭𝐞𝐧𝐭 𝐚𝐫𝐨𝐮𝐧𝐝 𝐜𝐥𝐨𝐮𝐝 & 𝐃𝐞𝐯𝐎𝐩𝐬!!! // 𝐉𝐨𝐢𝐧 𝐟𝐨𝐫 𝐃𝐞𝐯𝐎𝐩𝐬 𝐃𝐎𝐂𝐬: @devopsdocs
𝟭. 𝗴𝗶𝘁 𝗱𝗶𝗳𝗳: Show file differences not yet staged.
𝟮. 𝗴𝗶𝘁 𝗰𝗼𝗺𝗺𝗶𝘁 -𝗮 -𝗺 "𝗰𝗼𝗺𝗺𝗶𝘁 𝗺𝗲𝘀𝘀𝗮𝗴𝗲": Commit all tracked changes with a message.
𝟯. 𝗴𝗶𝘁 𝘀𝘁𝗮𝘁𝘂𝘀: Show the state of your working directory.
𝟰. 𝗴𝗶𝘁 𝗮𝗱𝗱 𝗳𝗶𝗹𝗲_𝗽𝗮𝘁𝗵:Add file(s) to the staging area.
𝟱. 𝗴𝗶𝘁 𝗰𝗵𝗲𝗰𝗸𝗼𝘂𝘁 -𝗯 𝗯𝗿𝗮𝗻𝗰𝗵_𝗻𝗮𝗺𝗲: Create and switch to a new branch.
𝟲. 𝗴𝗶𝘁 𝗰𝗵𝗲𝗰𝗸𝗼𝘂𝘁 𝗯𝗿𝗮𝗻𝗰𝗵_𝗻𝗮𝗺𝗲: Switch to an existing branch.
𝟳. 𝗴𝗶𝘁 𝗰𝗼𝗺𝗺𝗶𝘁 --𝗮𝗺𝗲𝗻𝗱:Modify the last commit.
𝟴. 𝗴𝗶𝘁 𝗽𝘂𝘀𝗵 𝗼𝗿𝗶𝗴𝗶𝗻 𝗯𝗿𝗮𝗻𝗰𝗵_𝗻𝗮𝗺𝗲: Push a branch to a remote.
𝟵. 𝗴𝗶𝘁 𝗽𝘂𝗹𝗹: Fetch and merge remote changes.
𝟭𝟬. 𝗴𝗶𝘁 𝗿𝗲𝗯𝗮𝘀𝗲 -𝗶: Rebase interactively, rewrite commit history.
𝟭𝟭. 𝗴𝗶𝘁 𝗰𝗹𝗼𝗻𝗲: Create a local copy of a remote repo.
𝟭𝟮. 𝗴𝗶𝘁 𝗺𝗲𝗿𝗴𝗲: Merge branches together.
𝟭𝟯. 𝗴𝗶𝘁 𝗹𝗼𝗴 --𝘀𝘁𝗮𝘁: Show commit logs with stats.
𝟭𝟰. 𝗴𝗶𝘁 𝘀𝘁𝗮𝘀𝗵: Stash changes for later.
𝟭𝟱. 𝗴𝗶𝘁 𝘀𝘁𝗮𝘀𝗵 𝗽𝗼𝗽: Apply and remove stashed changes.
𝟭𝟲. 𝗴𝗶𝘁 𝘀𝗵𝗼𝘄 𝗰𝗼𝗺𝗺𝗶𝘁_𝗶𝗱: Show details about a commit.
𝟭𝟳. 𝗴𝗶𝘁 𝗿𝗲𝘀𝗲𝘁 𝗛𝗘𝗔𝗗~𝟭: Undo the last commit, preserving changes locally.
𝟭𝟴. 𝗴𝗶𝘁 𝗳𝗼𝗿𝗺𝗮𝘁-𝗽𝗮𝘁𝗰𝗵 -𝟭 𝗰𝗼𝗺𝗺𝗶𝘁_𝗶𝗱: Create a patch file for a specific commit.
𝟭𝟵. 𝗴𝗶𝘁 𝗮𝗽𝗽𝗹𝘆 𝗽𝗮𝘁𝗰𝗵_𝗳𝗶𝗹𝗲_𝗻𝗮𝗺𝗲: Apply changes from a patch file.
𝟮𝟬. 𝗴𝗶𝘁 𝗯𝗿𝗮𝗻𝗰𝗵 -𝗗 𝗯𝗿𝗮𝗻𝗰𝗵_𝗻𝗮𝗺𝗲: Delete a branch forcefully.
𝟮𝟭. 𝗴𝗶𝘁 𝗿𝗲𝘀𝗲𝘁: Undo commits by moving branch reference.
𝟮𝟮. 𝗴𝗶𝘁 𝗿𝗲𝘃𝗲𝗿𝘁: Undo commits by creating a new commit.
𝟮𝟯. 𝗴𝗶𝘁 𝗰𝗵𝗲𝗿𝗿𝘆-𝗽𝗶𝗰𝗸 𝗰𝗼𝗺𝗺𝗶𝘁_𝗶𝗱: Apply changes from a specific commit.
𝟮𝟰. 𝗴𝗶𝘁 𝗯𝗿𝗮𝗻𝗰𝗵: Lists branches.
𝟮𝟱. 𝗴𝗶𝘁 𝗿𝗲𝘀𝗲𝘁 --𝗵𝗮𝗿𝗱: Resets everything to a previous commit, erasing all uncommitted changes.
Please open Telegram to view this post
VIEW IN TELEGRAM
A Kubernetes deployment strategy is a declarative configuration that governs how application updates are applied. Typically, it is defined in a YAML file as part of the Kubernetes Deployment object. Alternatively, you can create deployments imperatively using explicit commands.
The different Kubernetes Deployment Strategies are explained below:
- The default strategy in Kubernetes.
- Updates Pods incrementally, replacing those running the old application version with the new version one at a time, ensuring zero downtime.
- An all-or-nothing approach.
- Terminates all existing Pods before deploying new ones, resulting in downtime during the transition.
- Gradually replaces old replicas with new ones, maintaining a balance between the old and new versions during the update process.
- Introduces a 'maxUnavailable' parameter to specify the percentage of unavailable pods during the update, allowing for faster rollouts while maintaining partial availability.
- Creates two separate environments (blue for the current version and green for the new version).
- Traffic is shifted to the new (green) environment only after it has been validated.
- A progressive delivery approach.
- Deploys the new version to a small subset of users for testing, expanding its rollout to a larger audience if successful.
- Deploys the new version (shadow) alongside the current one.
- The shadow receives real-world traffic but does not affect end-users, allowing for performance or feature validation.
- Simultaneously deploys two or more versions of an application or feature to different user subsets.
- Measures performance based on engagement, error rates, or other key metrics to determine the better-performing version.
Please open Telegram to view this post
VIEW IN TELEGRAM
DEV Community
How to Crack Your First DevOps Interview: Tips and Sample Questions
Landing your first DevOps role can be a transformative step in your career. As a DevOps engineer, you...
Check out my latest article:
"How to Crack Your First DevOps Interview: Tips and Sample Questions"
This guide is packed with practical advice to help you land your first DevOps role!
🌟 Let me know your thoughts and share with someone who’s preparing for their DevOps journey!
Please open Telegram to view this post
VIEW IN TELEGRAM
Deploying new versions of applications without downtime is crucial for maintaining a seamless user experience.
𝗟𝗼𝗮𝗱 𝗕𝗮𝗹𝗮𝗻𝗰𝗲𝗿 𝗦𝗲𝗿𝘃𝗶𝗰𝗲:
Instead of using an ingress controller, we leveraged Kubernetes' LoadBalancer service to route traffic between the Blue (current live) and Green (new version) environments. This allowed us to switch traffic seamlessly once Green passed all health checks.
We carefully handled database migrations to ensure consistency between Blue and Green environments, preventing data conflicts or downtime.
Once Green was deployed and tested, traffic was rerouted through Elastic Load Balancer (ELB) in AWS. Prometheus and CloudWatch were used for monitoring during the switch, ensuring a smooth transition.
In case any issues arose during the Green deployment, the LoadBalancer could be quickly reverted to point back to the Blue environment, ensuring no impact on users.
𝗭𝗲𝗿𝗼 𝗗𝗼𝘄𝗻𝘁𝗶𝗺𝗲:
Ensured uninterrupted service for end-users.
Quick rollback capability minimized the risk during deployments.
The load balancer service efficiently handled high traffic, ensuring performance.
This deployment strategy gave us the confidence to roll out new features and updates without worrying about downtime.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
To demonstrate Blue-Green deployment, we’ll use AWS ECS to host our Swiggy-clone application. ECS is a highly scalable container orchestration service provided by AWS.
AWS CodePipeline is a fully managed continuous integration and continuous delivery (CI/CD) service that automates the build, test, and deployment phases of your release process. Let’s see how to set up a Blue-Green deployment pipeline using AWS CodePipeline:
📣 Note: Fork this Repository🧑💻 for upcoming future projects, Every week releases new Project.
Please open Telegram to view this post
VIEW IN TELEGRAM
We face this issue when the image is not present in registry or the given image tag is wrong.
Make sure you provide correct registry url, image name and image tag.
We might face authentication failures, when image is being stored in a private registry, make sure to create secret with private registry credentials and add created secret in Kubernetes Deployment File to pull docker image.
We face this issue when the process deployed inside container not running then the POD will be moved to CrashLoopBackOff.
POD might be running out of CPU or memory, POD should get enough resources allocated that’s cpu and memory for an application to be up and running, to fix that check in Resources Requests and Resources Limits.
We face this issue when PODs tries to utilise more memory than the limits we have set.
We can resolve it by setting appropriate resource request and resource limit.
When nodes might not be ready and required resources like CPU and Memory may not be available in nodes for the PODs to be up and running.
POD will be scheduled to a node but POD won’t be running in scheduled node.
We can fix this by providing correct image name, image tag and authentication to registry.
We can fix this by creating appropriate service.
If service is already created and application is still not accessible, make sure application and service are deployed in same namespace.
We can resolve this by setting appropriate resource requests and resource limits for the PODs and having enough resources in worker nodes.
Please open Telegram to view this post
VIEW IN TELEGRAM
1. Continuously Build & Deploy Python Web App On AWS With GitHub Action
2. Python Automation That Saved Our Client $1000/Month On Cloud Bills
3. Terraform To Deploy AWS Lambda Function With S3 Trigger
4. Building a RESTful API with Flask and PostgreSQL
5. Securely Connect EC2 Instances To S3 Buckets Via a Private Network With the VPC Gateway Endpoint - Terraform Implementation
6. Automate the Lambda Layer management with Terraform and Github Action
7. Deploy A highly Secure 3-Tier Infrastructure On AWS With Terraform And GitHub Action
8. A Complete Guide To Serverless On AWS With Lambda
9. Docker-compose to run a web application with Flask and Postgres containers.
10. Automate AWS SQS Encryption with Python And Boto3
Please open Telegram to view this post
VIEW IN TELEGRAM
This repository is your ultimate resource for everything Azure! Here's what it includes:
-
-
-
-
-
-
-
-
-
-
-
-
-
Please open Telegram to view this post
VIEW IN TELEGRAM
DevOps & Cloud (AWS, AZURE, GCP) Tech Free Learning
REF COMMIT ID
I've added a massive update to repository, Azure All-in-One
Dive in, explore, and let me know your feedback or suggestions! Your support and stars⭐️ mean a lot!
Please open Telegram to view this post
VIEW IN TELEGRAM
As a DevOps engineer working with Docker 🐬 , you might encounter common issues. Let's explore some of them and their solutions:
1⃣ . Dockerfile Errors:
Problem: Typos or incorrect commands in your Dockerfile can lead to build failures.
Solution: Review your Dockerfile carefully. Fix any typos or invalid commands. Ensure that each step completes successfully before proceeding[1].
2⃣ . Container Naming Collisions:
Problem: Running multiple containers with the same name can cause conflicts.
Solution: Use unique container names or remove existing containers with conflicting names before starting new ones.
3⃣ . Networking Issues:
Problem: Containers unable to communicate with each other or external services.
Solution: Check network configurations, DNS settings, and firewall rules. Ensure containers are on the same network if they need to communicate.
4⃣ . Resource Constraints:
Problem: Containers crashing due to insufficient resources (CPU, memory).
Solution: Adjust resource limits using flags like
5⃣ . Image Pull Failures:
Problem: Unable to pull images from registries.
Solution: Verify network connectivity, authentication, and registry URLs.
6⃣ . Volume Mount Issues:
Problem: Volumes not mounting correctly.
Solution: Check volume paths, permissions, and host paths.
Remember to consult official documentation and community forums for specific error messages and detailed troubleshooting steps. Happy Dockerizing!🐳 🔧
➡️ Reference links: [1] [2] [3] [4]
📱 𝗙𝗼𝗹𝗹𝗼𝘄 @prodevopsguy 𝐟𝐨𝐫 𝐦𝐨𝐫𝐞 𝐬𝐮𝐜𝐡 𝐜𝐨𝐧𝐭𝐞𝐧𝐭 𝐚𝐫𝐨𝐮𝐧𝐝 𝐜𝐥𝐨𝐮𝐝 & 𝐃𝐞𝐯𝐎𝐩𝐬!!! // 𝐉𝐨𝐢𝐧 𝐟𝐨𝐫 𝐃𝐞𝐯𝐎𝐩𝐬 𝐃𝐎𝐂𝐬: @devopsdocs
Problem: Typos or incorrect commands in your Dockerfile can lead to build failures.
Solution: Review your Dockerfile carefully. Fix any typos or invalid commands. Ensure that each step completes successfully before proceeding[1].
Problem: Running multiple containers with the same name can cause conflicts.
Solution: Use unique container names or remove existing containers with conflicting names before starting new ones.
Problem: Containers unable to communicate with each other or external services.
Solution: Check network configurations, DNS settings, and firewall rules. Ensure containers are on the same network if they need to communicate.
Problem: Containers crashing due to insufficient resources (CPU, memory).
Solution: Adjust resource limits using flags like
--cpus and --memory.Problem: Unable to pull images from registries.
Solution: Verify network connectivity, authentication, and registry URLs.
Problem: Volumes not mounting correctly.
Solution: Check volume paths, permissions, and host paths.
Remember to consult official documentation and community forums for specific error messages and detailed troubleshooting steps. Happy Dockerizing!
Please open Telegram to view this post
VIEW IN TELEGRAM