The objective of this post will set up three nodes Kubernetes(K8S) cluster on VirtualBox and launch an application/nginx.

What you will learn

  • Using vagrant spin up multiple virtual machines
  • Install Kubernetes and set up Controller(master) and Workers
  • Launch an application scale up/down and expose it.
  • containerd as the container runtime. we will not use Docker
Image for post
Image for post
Kubernetes

Tools

please make sure on your host machine Vagrant and VirtualBox are installed.

For sure you can play around with Kubernetes via minikube as well, but to be honest it does not…


In this post, I’d like to share the resources that I often use. Most of them are well know but I thought maybe your favorite resource is not listed below, then ShareIT, I will appreciate IT.

Image for post
Image for post
https://www.pexels.com/photo/books-file-on-shelf-2128249/

Let me share my resources

  1. Oreilly Books: Definitely it’s my favorite resource if I tend to learn something new extensively. You can subscribe online and access all resources not only books but also videos!. If you are a student you do not need even to pay simply high-quality resources FREE!
  2. Corresponding Tool Docs: To be honest this is the first place where should take…

Level: Advanced-intermediate

In this post, I will focus on resource management in docker using cgroups. If you are new in the container world and especially Docker that will use for demos, please read either my linked article about underlying technologies or other corresponded resources out there.

In Docker, the resources are managed by Control Groups (cgroups) which a Linux kernel feature allows you to limit, modify, or allocate resources as needed. Docker allows limiting container resources per flag for each individual container. You can see a bunch of flags here. Let’s see a sample:

docker run -it --cpuset-cpus="1-3" --memory=50MiB ubuntu


Currently, the DevOps landscape is growing extremely fast and there are a lot of tools appearing newly. Lastly, Hashicorp comes up with a new tool called Waypoint and I do believe the Waypoint will have a huge effect on the deployment and as well as the development process of many corporations. To be honest, Waypoint is simply awesome!

Image for post
Image for post
https://github.com/hashicorp/waypoint

Waypoint is definitely easy to start and it has comprehensive documentation to start with immediately. It is working perfectly with cloud providers such as AWS, Azure, GKE, and as well as well integrated with GitLab and GitHub.

Entire CI/CD with one tool/file…


Regular expression = regex

A few weeks ago I faced a task that required parse a text and extract certain pieces of information. There is a bunch of ways of handling kinds of tasks in programming. However, realized that using regular expression will be much simpler than writing a parsing function or importing an external library instead. Especially if you implementing C++ and to use third-party libraries for parsing for a small task, it will be an unnecessary dependency. So I have noticed that I was not confident in the regular expression operations. Thus push me to read a bit…


2. Part

In the last post, we started with Memento now let’s move on with a creational pattern called Singleton.

Image for post
Image for post
https://www.vinatis.de/28133-singleton-of-dufftown-18-jahre

By using Singleton pattern you ensure instantiating your object to be strictly controlled. The Client can access the singleton instance through Singleton’s Instance operation.

Benefits:

  • Controlled access to the sole instance.
  • Reduced namespace
  • Permits refinement of operations and representation.
  • Permits a variable number of instances. The pattern makes it easy to change your mind and allow more than one instance

Cons:

  • Increase dependencies
  • Testing gets harder because the test cases most probably will have dependencies.

There are lots of implementation…


1.Part

In this post, I will go over one of the core Design Pattern in Gang of Four. Let’s start with a fundamental definition: Design Patterns. What is a design pattern why we need them?

Image for post
Image for post
https://chrisnolan.fandom.com/wiki/Memento?file=Memento_poster.jpg

GoF defines patterns as:

“Each pattern describes a problem which occurs over and over again in our environment, and then describes the core of the solution to that problem, in such a way that you can use this solution a million times over, without ever doing it the same way twice” Christopher Alexander

The definition above is from Design Pattern Bible. So those patterns solve…


After a long break, I am back again. Let’s move forward with another Jenkins job type so-called multibranch pipeline. In this post, I will focus on parallel execution syntax for the CD chain via Jenkins.

Image for post
Image for post
Multibranch
Following tools I’ve used:
* Jenkins
* Docker
* CMake

You most probably work on a multi-branch project where you not directly developing under the master/main branch. To keep the main/production branch always stable we avoid pushing new code there. In my demo will use a C++ project where build, test, and all QA processes triggered by CMake.

Each parallel stage will run its docker…


After you read this post, you might/should have a basic understanding of how containers work.

Containers are one of the hottest and key topics in Cloud Computing. Especially Docker hit the container revolution off in 2013 and since then container technologies rising up continuously. For many people, containers are equal to Docker and Docker does some magical things. It’s not exactly how it works.

So in this post, I’d like to look closely at Docker and how does docker work and see what's going on behind the scene.

Image for post
Image for post
https://www.mygodpictures.com/wp-content/uploads/2015/11/Atlas-Picture-uy906.jpg

In the picture above you see Atlas in Greek mythology. I took…


For C++ developers package/library management is not simple as in other many languages. However, there are some tools that make this process less painful. One of those tools is Conan which is a portable package manager, intended for C and C++ developers, but it is able to manage builds from source, dependencies, and precompiled binaries for any language. Conan is free and opensource, works on all mainstream operating systems including Windows, Linux, macOS, FreeBSD, etc.

Image for post
Image for post
https://conan.io/

Nonetheless in this post, I want to go over the platform “Artifactory” from JFrog where you can deploy your Conan packages. Basically, Artifactory is a…

Mehmet Ali Baykara

Computer Science And DevOps things :)

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store