Jack Wallen reveals you ways simple it’s to manage a Docker Swarm deployment with the Portainer web-based GUI.
I’ve mentioned this many occasions earlier than, and I’ll say it many occasions sooner or later: Portainer is my go-to container administration platform. With Portainer, I can do any activity required to manage and monitor container deployments. I can use Portainer on an remoted docker improvement machine or a multi-node Swarm Cluster.
Wait. Did I simply say multi-node Swarm Cluster? I did.
If your Docker deployments are of a large-scale nature, chances are high fairly good you’re dealing with a Docker Swarm. For those that don’t know, Swarm mode is constructed into the Docker Engine and permits you to manage a cluster of Docker nodes for extra scalability, decentralized deployments, desired state reconciliations, multi-host networking, load balancing and rolling updates.
In different phrases, in case your container deployments want to meet increased calls for, you’re in all probability utilizing Docker Swarm. And the excellent news is you’ll be able to manage your Swarm proper from Portainer.
SEE: Hiring equipment: Back-end Developer (TechRepublic Premium)
Now, if you happen to haven’t already deployed Portainer, be certain to take a look at How to deploy the Portainer container administration device with persistent storage earlier than persevering with on. You’ll need to be certain to deploy Portainer in your controlling node and ensure to use the Agent possibility when creating a new Docker Environment (Figure A).
Once you’ve created your new Environment, it ought to present up in your Environments itemizing (Figure B).
How to manage your Docker Swarm from Portainer
With your Docker Swarm Environment up and operating, choose it and it is best to see the Swarm entry within the left sidebar (Figure C).
Click that entry and also you’ll see two sections: Cluster Status and Nodes (Figure D).
Let’s take a have a look at our dockercontroller node. Click that entry to reveal the small print (Figure E).
As you’ll be able to see, there isn’t a nice deal of things you’ll be able to management. What you are able to do is ready the supply of the node (from Active, Pause, Drain) and add labels, that are metadata that describes the node.
As to the supply, listed here are the descriptions:
- Active: A node is energetic and is offered for the scheduler to assign duties.
- Pause: A node is up however the scheduler can’t assign new duties to this node though current duties will stay operating.
- Drain: A node is up however the scheduler can’t assign new duties and can shut down all current duties, assigning them to different nodes.
The Availability possibility is a very helpful approach to manage particular person nodes. You would possibly want to substitute a node. Instead of simply stopping it, it is best to drain it so all duties are reassigned. You can then deploy the brand new node and set it as energetic.
Use labels as a helpful technique of organizing your swarm. For instance, say node 1 is a Ubuntu server, and node 2 is an AlmaLinux server. Head over to the primary node (which, for our instance, is hosted on Ubuntu Server) and click on + Label. In the ensuing window, kind os for title and Ubuntu Server for worth (Figure F).
You can add as many labels as you want.
Resolving a complicated error
When I first began working with Docker Swarm and Portainer, I found a complicated error that took me a while to resolve. When I’d try to make any change to a Swarm Node, I’d obtain the error:
rpc error: code = Unknown desc
Even after restarting each node within the Swarm, I wound up with the identical error. On a whim, I checked the time on every server, solely to uncover that node1 and node2 have been configured for various time zones. Because of that, the Swarm nodes had hassle speaking with each other. To repair that downside, I logged into the nodes and ran the command:
sudo timedatectl set-timezone ZONE
Where ZONE is the right timezone for my space which could be discovered with the command:
cat /and so on/timezone
Once you’ve made positive the time zones are right for every node, that error ought to go away and you’ll label your nodes as wanted and set their Availability.
Of course, you may also scale your deployments inside your Swarm with Portainer. To learn how that is executed, take a look at my tutorial How to scale service deployments with Portainer.
And that’s all there may be to managing your Docker Swarm with Portainer. This platform is a exceptional resolution for anybody trying to make managing Docker container deployments a a lot simpler and extra environment friendly course of.
Subscribe to TechRepublic’s How To Make Tech Work on YouTube for all the newest tech recommendation for enterprise execs from Jack Wallen.