-
Notifications
You must be signed in to change notification settings - Fork 264
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit a8d55c4
Showing
153 changed files
with
19,714 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
draft.toml | ||
charts/ | ||
NOTICE | ||
LICENSE | ||
README.md |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
/public | ||
/creds | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
[submodule "themes/dimension"] | ||
path = themes/dimension | ||
url = https://github.com/sethmacleod/dimension.git | ||
[submodule "themes/hugo-nederburg-theme"] | ||
path = themes/hugo-nederburg-theme | ||
url = https://github.com/appernetic/hugo-nederburg-theme.git | ||
[submodule "themes/forty"] | ||
path = themes/forty | ||
url = https://github.com/MarcusVirg/forty |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
FROM gitpod/workspace-full | ||
|
||
RUN brew install hugo | ||
RUN mkdir -p /home/gitpod/copilot/bin | ||
RUN curl -Lo /home/gitpod/copilot/bin/copilot https://github.com/aws/copilot-cli/releases/latest/download/copilot-linux | ||
RUN chmod +x /home/gitpod/copilot/bin/copilot | ||
ENV PATH $PATH:/home/gitpod/copilot/bin | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
image: | ||
file: .gitpod.Dockerfile | ||
|
||
tasks: | ||
- init: make init | ||
- command: hugo server --baseUrl $(gp url 1313) --appendPort=false | ||
name: Hugo | ||
openMode: tab-before | ||
|
||
ports: | ||
- port: 1313 | ||
onOpen: open-preview |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
# Patterns to ignore when building packages. | ||
# This supports shell glob matching, relative path matching, and | ||
# negation (prefixed with !). Only one pattern per line. | ||
.DS_Store | ||
# Common VCS dirs | ||
.git/ | ||
.gitignore | ||
.bzr/ | ||
.bzrignore | ||
.hg/ | ||
.hgignore | ||
.svn/ | ||
# Common backup files | ||
*.swp | ||
*.bak | ||
*.tmp | ||
*~ | ||
# Various IDEs | ||
.project | ||
.idea/ | ||
*.tmproj | ||
*.png | ||
|
||
# known compile time folders | ||
target/ | ||
node_modules/ | ||
vendor/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
FROM klakegg/hugo:0.78.2-alpine | ||
RUN apk add -U git | ||
COPY . /src | ||
RUN make init | ||
RUN make build | ||
|
||
FROM nginx:1.19.4-alpine | ||
RUN mv /usr/share/nginx/html/index.html /usr/share/nginx/html/old-index.html | ||
COPY --from=0 /src/public /usr/share/nginx/html | ||
EXPOSE 80 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
SHELL := /bin/bash | ||
|
||
init: | ||
git submodule init | ||
git submodule update | ||
cp content/img/banner.jpg themes/forty/static/img/. | ||
|
||
build: | ||
hugo | ||
|
||
dev: | ||
hugo server | ||
|
||
codefresh: | ||
codefresh auth create-context devops-catalog --api-key $CF_TOKEN | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/vfarcic/copilot-demo) | ||
|
||
# [The DevOps Toolkit Series](http://www.devopstoolkitseries.com) | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
--- | ||
title: "{{ replace .TranslationBaseName "-" " " | title }}" | ||
date: {{ .Date }} | ||
draft: true | ||
--- | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,145 @@ | ||
# Site settings | ||
baseURL = "/" | ||
languageCode = "en-us" | ||
title = "The DevOps Toolkit Series" | ||
theme = "forty" | ||
|
||
# Enter your tracking code to enable Google Analytics | ||
googleAnalytics = "UA-174219852-1" | ||
|
||
# Enter your disqus shortname to enable comments | ||
disqusShortname = "" | ||
|
||
[params] | ||
|
||
# Provide your metadata here. | ||
name = "Viktor Farcic" | ||
description = "Books and courses dedicated to DevOps practices and tools" | ||
|
||
# Link custom assets relative to /static | ||
custom_css = [] | ||
custom_js = [] | ||
favicon = "favicon.ico" | ||
|
||
# Just a custom image variable, please define it in .md files for content. | ||
image = "" | ||
|
||
# 404 error customization | ||
[params.error404] | ||
heading = "Page couldn't be found" | ||
text = "Please visit [this page](/)" | ||
|
||
# Navigation Section | ||
# TODO: Remove params | ||
[params.navigation] | ||
title = "The DevOps Toolkit Series" | ||
subtitle = "By Viktor Farcic" | ||
menu = "Menu" | ||
# Optional logo as brand stored in img/ | ||
# logo = "logo.png" | ||
|
||
[[params.navigation.links]] | ||
name = "Home" | ||
url = "#" | ||
|
||
# Banner section | ||
[params.banner] | ||
# To change the background image on the homepage banner, replace 'banner.jpg' in | ||
# the 'static/img' folder. | ||
title = "The DevOps Toolkit Series" | ||
subtitle = "Where DevOps becomes practice" | ||
buttonText = "Get Started" | ||
|
||
|
||
# Tiles Section | ||
[params.tiles] | ||
enable = true | ||
# Display your showcases here. | ||
|
||
[[params.tiles.showcase]] | ||
title = "The DevOps Toolkit" | ||
subtitle = "Catalog, Patterns, And Blueprints" | ||
image = "catalog-small.jpg" | ||
url = "posts/catalog" | ||
|
||
[[params.tiles.showcase]] | ||
title = "Kubernetes Chaos Engineering" | ||
subtitle = "Kubernetes Chaos Engineering With Chaos Toolkit And Istio" | ||
image = "chaos-small.jpg" | ||
url = "posts/chaos" | ||
|
||
[[params.tiles.showcase]] | ||
title = "Canary Deployments" | ||
subtitle = "Canary Deployments To Kubernetes Using Istio and Friends" | ||
image = "canary-small.jpg" | ||
url = "posts/canary" | ||
|
||
[[params.tiles.showcase]] | ||
title = "The DevOps 2.6 Toolkit" | ||
subtitle = "Jenkins X" | ||
image = "devops26-small.jpg" | ||
url = "posts/devops-26" | ||
|
||
[[params.tiles.showcase]] | ||
title = "The DevOps 2.5 Toolkit" | ||
subtitle = "Monitoring, Logging, and Auto-Scaling Kubernetes" | ||
image = "devops25-small.jpg" | ||
url = "posts/devops-25" | ||
|
||
[[params.tiles.showcase]] | ||
title = "The DevOps 2.4 Toolkit" | ||
subtitle = "Continuous Deployment To Kubernetes" | ||
image = "devops24-small.png" | ||
url = "posts/devops-24" | ||
|
||
[[params.tiles.showcase]] | ||
title = "The DevOps 2.3 Toolkit" | ||
subtitle = "Kubernetes" | ||
image = "devops23-small.jpg" | ||
url = "posts/devops-23" | ||
|
||
[[params.tiles.showcase]] | ||
title = "The DevOps 2.2 Toolkit" | ||
subtitle = "Building Self-Adaptive And Self-Healing Docker Clusters" | ||
image = "devops22-small.jpg" | ||
url = "posts/devops-22" | ||
|
||
[[params.tiles.showcase]] | ||
title = "The DevOps 2.1 Toolkit" | ||
subtitle = "Building, testing, deploying, and monitoring services inside Docker Swarm clusters" | ||
image = "devops21-small.png" | ||
url = "posts/devops-21" | ||
|
||
[[params.tiles.showcase]] | ||
title = "The DevOps 2.0 Toolkit" | ||
subtitle = "Automating the Continuous Deployment Pipeline with Containerized Microservices" | ||
image = "devops20-small.jpg" | ||
url = "posts/devops-20" | ||
|
||
[params.blog] | ||
# All blogs defined in their own files. You can find example blogs | ||
# at 'exampleSite/content/blogs'. Copy the 'blogs' folder into the 'content' directory | ||
# at the root of this Hugo site. | ||
# For more informtion take a look at the README. | ||
# To add more blogs just copy and paste the code. | ||
|
||
# Footer section | ||
[params.footer] | ||
enable = true | ||
copyright = "Viktor Farcic" | ||
|
||
# Uses font awesome icons | ||
[[params.footer.social]] | ||
icon = "fa-twitter" | ||
url= "https://www.twitter.com/vfarcic" | ||
label = "Twitter" | ||
|
||
[[params.footer.social]] | ||
icon = "fa-github" | ||
url= "https://www.github.com/vfarcic" | ||
label = "GitHub" | ||
|
||
[[params.footer.social]] | ||
icon = "fa-linkedin" | ||
url= "https://www.linkedin.com/in/viktorfarcic/" | ||
label = "LinkedIn" |
Binary file not shown.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
--- | ||
title: "Canary Deployments To Kubernetes Using Istio and Friends" | ||
date: 2018-11-09T01:24:49+02:00 | ||
draft: false | ||
--- | ||
|
||
## Udemy Course | ||
|
||
Preview it or buy it now at **[Udemy](https://www.udemy.com/course/canary-deployments-to-kubernetes-using-istio-and-friends/?referralCode=75549ECDBC41B27D94C4)**. | ||
|
||
![](/img/canary-smaller.jpg#floatright) | ||
|
||
Kubernetes provides a few "decent" deployment strategies out of the box. However, they might not be enough. Canary is missing. | ||
|
||
What is the canary deployments process? How should we implement it in Kubernetes? Which tools should we use? We'll try to answer those and quite a few other questions. | ||
|
||
This talk will guide you through the journey of practical implementation of canary deployments. We'll use Kubernetes because it makes many things easier than any other platform before it. We'll need service mesh because, after all, most of the canary process is controlled through networking and changes to Kubernetes definitions. We'll need a few other tools, and we might even need to write our own scripts to glue everything into a cohesive process. | ||
|
||
The end result will be a set of instructions and a live demo of a fully operational canary deployment process that can be plugged into any continuous delivery tool. We'll define the process, and we'll choose some tools. Nevertheless, we'll do all that while making the process agnostic and applicable to any toolset you might pick. | ||
|
||
Preview it or buy it now at **[Udemy](https://www.udemy.com/course/canary-deployments-to-kubernetes-using-istio-and-friends/?referralCode=75549ECDBC41B27D94C4)**. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
--- | ||
title: "The DevOps Toolkit" | ||
date: 2018-11-09T01:24:49+02:00 | ||
draft: false | ||
--- | ||
|
||
## Catalog, Patterns, And Blueprints | ||
|
||
The **video course** is available in **[Udemy](https://www.udemy.com/course/devops-catalog/?referralCode=4F332F3B87309FE1C2EF)**. | ||
|
||
The **book** is currently available only from **[LeanPub](https://leanpub.com/the-devops-toolkit-catalog)**. | ||
|
||
![](/img/catalog-smaller.jpg#floatright) | ||
|
||
Unlike my other books and courses where I typically dive into a single tool or a single process, this time, I chose a different approach. Instead of going to great lengths trying to help someone become proficient in one thing, this time, I am trying to give you a quick introduction into many different tools and processes. We will skip the potentially lengthy discussions and in-depth exercises. What I want, this time, is to help you make decisions. Which tool works the best for a given task? What should we explore in more depth, and what is a waste of time? The goal is not to learn everything about a tool in detail but rather to dive into many concepts and a plethora of tools right away. The aim is to get you up-to-speed fast while producing useful "real world" results. Think of each chapter as a crash-course into something with the outcome that you can use right away. | ||
|
||
I will assume that you don't have time to read hundreds of pages to learn something that you are not even sure is useful. Instead, I will guess that you got up to one hour to read a summary, and then decide if a tool is worthwhile a more significant investment. | ||
|
||
This is a catalog of the tools, and the processes I believe are useful in this day and age. I will try to transfer what I think works well and what might have been the right choice in the past but is not optimal anymore. | ||
|
||
Nevertheless, even if the scope of this book/course is different than others, some things are still the same. This is not a book/course with lots of theory. Sure, there will be some text you might need to read, but most of the content consists of hands-on exercises. I always believed that the best way to learn something is through practice, and I am not giving up on that. This is a book/course full of real-world hands-on examples, and each chapter will let you dive into a different tool or a process. At the end of each, you will be able to say, "now I know what this is about, and now I can make a decision whether it is a worthwhile investment." | ||
|
||
Think of this book/course as a catalog, combined with patterns and blueprints. | ||
|
||
The **video course** is available in **[Udemy](https://www.udemy.com/course/devops-catalog/?referralCode=4F332F3B87309FE1C2EF)**. | ||
|
||
The **book** is currently available only from **[LeanPub](https://leanpub.com/the-devops-toolkit-catalog)**. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
--- | ||
title: "Kubernetes Chaos Engineering" | ||
date: 2018-11-09T01:24:49+02:00 | ||
draft: false | ||
--- | ||
|
||
## Kubernetes Chaos Engineering With Chaos Toolkit And Istio | ||
|
||
The **video course** is available in **[Udemy](https://www.udemy.com/course/kubernetes-chaos-engineering-with-chaos-toolkit-and-istio/?referralCode=02D178244316CE05E24A)**. | ||
|
||
The **book** is available from **[Amazon](https://amzn.to/2xUscyO)**, **[LeanPub](https://leanpub.com/the-devops-2-7-toolkit)**, and (probably) through your favorite book seller. | ||
|
||
![](/img/chaos-smaller.jpg#floatright) | ||
|
||
There are very few things as satisfying as destruction, especially when we're frustrated. | ||
|
||
How often did it happen that you have an issue that you cannot solve and that you just want to scream or destroy things? Did you ever have a problem in production that is negatively affecting a lot of users? Were you under a lot of pressure to solve it, but you could not "crack" it as fast as you should. It must have happened, at least once, that you wanted to take a hammer and destroy servers in your datacenter. If something like that never happened to you, then you were probably never in a position under a lot of pressure. In my case, there were countless times when I wanted to destroy things. But I didn't, for quite a few reasons. Destruction rarely solves problems, and it usually leads to negative consequences. I cannot just go and destroy a server and expect that I will not be punished. I cannot hope to be rewarded for such behavior. | ||
|
||
What would you say if I tell you that we can be rewarded for destruction and that we can do a lot of good things by destroying stuff? If you don't believe me, you will soon. That's what chaos engineering is about. It is about destroying, obstructing, and delaying things in our servers and in our clusters. And we're doing all that, and many other things, for a very positive outcome. | ||
|
||
Chaos engineering tries to find the limits of our system. It helps us deduce what are the consequences when bad things happen. We are trying to simulate the adverse effects in a controlled way. We are trying to do that as a way to improve our systems to make them more resilient and capable of recuperating and resisting harmful and unpredictable events. | ||
|
||
That's our mission. We will try to find ways how we can improve our systems based on the knowledge that we will obtain through the chaos. | ||
|
||
The **video course** is available in **[Udemy](https://www.udemy.com/course/kubernetes-chaos-engineering-with-chaos-toolkit-and-istio/?referralCode=02D178244316CE05E24A)**. | ||
|
||
The **book** is available from **[Amazon](https://amzn.to/2xUscyO)**, **[LeanPub](https://leanpub.com/the-devops-2-7-toolkit)**, and (probably) through your favorite book seller. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
--- | ||
title: "The DevOps 2.0 Toolkit" | ||
date: 2017-09-21T13:31:31+02:00 | ||
draft: false | ||
--- | ||
|
||
### Automating the Continuous Deployment Pipeline with Containerized Microservices | ||
|
||
**This book is based on very old technology and the code behind it is not maintained anymore.** | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
--- | ||
title: "The DevOps 2.1 Toolkit" | ||
date: 2017-09-21T15:12:25+02:00 | ||
draft: false | ||
--- | ||
|
||
### Building, testing, deploying, and monitoring services inside Docker Swarm clusters | ||
|
||
**This book is based on very old technology and the code behind it is not maintained anymore.** |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
--- | ||
title: "The DevOps 2.2 Toolkit" | ||
date: 2017-09-21T15:17:10+02:00 | ||
draft: false | ||
--- | ||
|
||
### Building Self-Adaptive And Self-Healing Docker Clusters | ||
|
||
**This book is based on very old technology and the code behind it is not maintained anymore.** |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
--- | ||
title: "The DevOps 2.3 Toolkit" | ||
date: 2017-12-14T15:17:10+02:00 | ||
draft: false | ||
--- | ||
|
||
## Kubernetes | ||
|
||
### Deploying and managing highly-available and fault-tolerant applications at scale | ||
|
||
Buy it now from **[Amazon](https://amzn.to/2GvzDjy)**, **[LeanPub](https://leanpub.com/the-devops-2-3-toolkit)**, or look for it through your favorite book seller. | ||
|
||
![](/img/devops23-smaller.jpg#floatright) | ||
|
||
The goal of this book is not to convince you to adopt Kubernetes but to provide a detailed overview of its features. I want you to become confident in your Kubernetes knowledge and only then choose whether to embrace it. That is, unless you already made up your mind and stumbled upon this book in search of Kubernetes guidance. | ||
|
||
The plan is to cover all aspects behind Kubernetes, from basic to advanced features. We'll go not only through the tools behind the official project but also third-party add-ons. I hope that, by the time you finish reading this book, you will be able to call yourself "Kubernetes ninja". I cannot say that you will know everything there is to know about the Kubernetes ecosystem. That would be impossible to accomplish since its growing faster than any single person could follow. What I can say is that you will be very confident in running a Kubernetes cluster of any scale in production. | ||
|
||
Like all my other books, this one is very hands-on. There will be just enough theory for you to understand the principles behind each topic. The book is packed with examples, so I need to give you a heads up. Do not buy this book if you're planning to read it on a bus or in bed before going to sleep. You will need to be in front of your computer. A terminal will be your best friend. `kubectl` will be your lover. | ||
|
||
The book assumes that you feel comfortable with containers, especially Docker. We won't go into details how to build an image, what is container registry, and how to write Dockerfile. I hope you already know all that. If that's not the case, you might want to postpone reading this and learn at least basic container operations. This book is about things that happen after you built your images and stored them in a registry. | ||
|
||
This book is about running containers at scale and not panicking when problems arise. It is about the present and the future of software deployment and monitoring. It's about embracing the challenges and staying ahead of the curve. | ||
|
||
Buy it now from **[Amazon](https://amzn.to/2GvzDjy)**, **[LeanPub](https://leanpub.com/the-devops-2-3-toolkit)**, or look for it through your favorite book seller. |
Oops, something went wrong.