I'm looking for some clues on which solution can help me on my problem which is running a kubernetes cluster between 2 VMs.
I'm beginning with Kubernetes and all its possibilities but like everybody I started from a minikube
single-node cluster to host my 4 containers respectively hosting mongoDB, redis, rabbitMQ and minio.
The idea is that I need something like minikube
to create a cluster like this: Moreover, these 2 VMs will run on RedHat EL 7 and won't be local and they may be hosted on different machines
Is it possible to build that architecture with kubeadm?
I may lack some vocabulary or some points may be unclear so I'll refine this post as the thread goes. For the same reason I apologize if this is a duplicate but from what I've seen it's not.
I don't get why this has been downvoted.
Response is yes, it can be achieved with kubeadm
, it will allow you to aggregate your different VM/hosts into the cluster in the same way docker-swarm
does by kind of subscribing them into the cluster.
See how (thanks @Jason Stanley)
If like me you're on a client infrastructure, implementing your solution 'on-premise' on a Red Hat environment, you'll need two or three things.
First one and because it's a restriction meant by docker and red hat is to use docker-ee
the enterprise edition which allow support on prod by red hat, which is why most people pay a red hat subscription.
See typical architecture using docker-ee and how to install that on Red Hat
The other thing is to deploy a docker registry
, this is an official image (documentation here) provided by Docker team, registry
will allow your cluster to pull the image from it - images that you will push inside while setting everything up - note that this is relevant in a restricted environment where your VM/hosts can't have access to internet or use a proxy.
One handy tool is using helm
which allow you to set your cluster easily by referencing which images provide a given service, on which port with which policy.