Halloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsPC HealthRecommendedCrashes, freezes, slowdowns? Check your PC nowSpot repairable issues before they interrupt work.Check PCHalloween DealsAmazon USOctober picks are moving - compare before checkoutAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
World desk10 min

How to Set Up a MicroK8s Kubernetes Cluster on Ubuntu

A practical MicroK8s-on-Ubuntu guide covering Snap installation, readiness checks, addons, multi-node joins, smoke testing, and troubleshooting.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Install MicroK8s with Snap, wait for the node to become ready, enable only the addons your workloads need, and then verify the cluster with a small NGINX deployment. A single-node setup takes one Ubuntu environment; a multi-node cluster repeats the installation on separate machines, gives every machine a distinct hostname, synchronizes clocks, and uses the generated microk8s add-node and microk8s join commands.

MicroK8s is distributed as a Snap and includes its own namespaced kubectl. The procedure below follows Canonical’s current getting-started, command-reference, and clustering guidance, including the documented 1.35 channel example.

As an Amazon Associate I earn from qualifying purchases.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What MicroK8s provides

MicroK8s is a compact Kubernetes distribution installed and maintained through Snap. Canonical describes it as “MicroK8s is a low-ops, minimal production Kubernetes.” Canonical’s MicroK8s documentation presents it as suitable for a minimal installation that can later be expanded with addons and additional nodes.

The command-line client is bundled as microk8s kubectl. That namespaced client avoids collisions with a separate kubectl installation on the same Ubuntu host. You can keep using the explicit command, or create the optional shell alias alias kubectl='microk8s kubectl' for the current shell.

#1 Best Overall
Sale
TOZO A1 Wireless Earbuds Bluetooth 5.3 Light Weight in Ear Headphones | IPX5 Waterproof,2 Mics for AI Calls,Immersive Premium Sound Bass Headset with Charging Case,32 EQ via App Black
  • [Ultra-Lightweight Ear Buds Designed for Small Ears] Each earbud weighs only 3.7g and features a compact, ergonomic in-ear design made especially for small ears. Secure, low-profile, and comfortable for workouts, all-day wear or overnight sleeping.The ultra-slim profile sits flush in your ear with no hard edges poking or rubbing, so you can even sleep on your side without discomfort.
  • [Immersive Stereo Sound with TOZO OrigX Technology] TOZO OrigX tuning delivers clear vocals, balanced mids, and natural stereo sound for music, podcasts, and videos.
  • [Long Battery Life for Daily Use] Get up to 7 hours of playtime on a single charge, with up to 32 hours total using the charging case—ideal for workdays, commuting, and extended listening sessions.
  • [Bluetooth 5.3 & Stable Connection] Bluetooth 5.3 provides fast pairing, stable wireless performance, and reduced dropouts as you move around home or office.
  • [Deep Bass with Clear Vocals] High-performance drivers produce punchy bass while keeping vocals clean and detailed for everyday listening.

A base installation is intentionally small. DNS, storage, ingress, observability, a registry, and other capabilities are opt-in, so the cluster starts with fewer moving parts than a fully enabled distribution. That design means you should decide which addons match the workload instead of enabling everything automatically.

Prerequisites and resource planning

You need an Ubuntu environment or another operating system with snapd, an internet connection, and administrative access for the initial Snap installation. For a multi-node cluster, each node must have its own VM, container, or physical environment; installing several logical nodes into one indistinguishable environment defeats the identity and failure boundaries a cluster needs.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Resource guidance Canonical’s stated figure How to interpret it
Memory for the smallest installation As little as 540 MB This is the smallest footprint described on the current getting-started page, not a comfortable target for application workloads.
Recommended memory for workloads At least 4 GB Use this recommendation when the node will run more than the base control-plane services.
Recommended disk space At least 20 GB Reserve this for the operating system, Snap data, container images, logs, and workload storage.

These figures are guidance on the current Canonical page; the page does not display a publication year. They are not a dated performance benchmark. Actual consumption depends on the Kubernetes version, enabled addons, images, logs, and applications you run.

Before a multi-node install, assign stable, distinct hostnames and make sure the system clocks remain synchronized. The clustering documentation calls time correctness important for inter-node communication. Record which machine will be your first, or initial, node because you will run the node-generation command there.

Install MicroK8s on one Ubuntu node

The following sequence creates a single-node cluster. Select the Snap channel deliberately: the channel determines the Kubernetes release line that the node follows. The example uses channel 1.35; choose the channel required by your organization’s version policy rather than copying it blindly.

  1. Install the Snap. Run:

    sudo snap install microk8s --classic --channel=1.35

    The --classic option is required by the documented installation command. Snap downloads the MicroK8s package and its Kubernetes components from the selected channel.

    Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  2. Add your login to the MicroK8s group.

    sudo usermod -a -G microk8s $USER

    MicroK8s creates the microk8s group so that, after your session is refreshed, routine commands do not require repeated administrator privileges.

  3. Prepare the local kubeconfig directory.

    mkdir -p ~/.kube
    chmod 0700 ~/.kube

    The directory is created with owner-only permissions before client configuration is written there.

    Rank #2
    Sale
    Smart Watch for Men Women Compatible with iPhone Samsung Android Phone 1.69 inch Full Touch Screen IP68 Waterproof Bluetooh Fitness Tracker Heart Rate/Sleep Monitor (Black)
    • 【IP68 Waterproof Multifunctinal Smart Watch】Torjalph fitness activity tracker smart watch is IP68 waterproof technology ,you can wear it when swimming,handwashing,it's rain-proof which means that you perform multiple exercise modes outside without worrying about sweat or rain corroding your fitness smart watch,and this watch equipped with a 230 mAh large capacity battery magnetic charging ,and this sports activity tracker watch can be used 5-7 days If fully charged.
    • 【Larger 1.83'' Full Screen Watch & Multi-dial Selection】1.83 inch full HD color touch screen smart watch for men / women provides excellent 240*284 resolution image quality ,This Bluetooth smart watch offers a better touch experience and remarkable immersion and ,more than 200 watch faces for you to choose from App"Da Fit ", you can change the dial style according to your mood to wear keeping the world on your wrist
    • 【Accurate Activity Tracker Smart Watch 】sports watch activity tracker uses sweat and dust resistant breathable silicone strap, our Fitness Tracker Smart Watch for Android iOS Phones supports 12 sports modes,walking,running,bicycle,swimming,badminton,basketball,football,rope skipping. This bluetooth calls smart watch for men women is lightweight and stylish, bringing more convenient and relaxing sports experience while also providing more protection.
    • 【Your 24 Hour Personal Daily Health Monitor】Fitness watch for women men full touch screen IP67 waterproof bluetooth smartwatch for Android iOS Phones with heart rate blood pressure monitor multifunction Andriod smart watch with steps counter sleep monitor sports fitness watch, monitoring blood oxygen saturation allows you to understand your physical condition in real time to track fitness progress ,to know your health status in time.
    • 【More Functions Bluetooth Call Smart Watch】This fitness activity smart watch full screen for iPhone and Android phones includes a bunch of new features including:The bluetooth smart watch can hang up the phone, receive and display WhatsAPP /Text /Facebook /Twitter /Messenger reminder.Support sedentary reminder, alarm clock, stopwatch, timer,weather information,music control, remote camera control compatible with Android 5.0 and above or iOS 9.0 and above smartphones.
  4. Refresh the login session. Start a fresh login shell with:

    su - $USER

    You can instead log out and back in. The important point is that the new group membership must be active before you expect passwordless MicroK8s commands to work.

    Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  5. Wait for the node to initialize.

    microk8s status --wait-ready

    The command waits until the local MicroK8s services report readiness. Do not move to workload testing while this command still reports that the node is not ready.

  6. Confirm that Kubernetes sees the node.

    microk8s kubectl get nodes

    The result should list the node managed by this MicroK8s installation. Use the bundled client even if another Kubernetes client is already installed on Ubuntu.

Canonical documents this installation flow in the MicroK8s getting-started guide. Keep the explicit microk8s prefix in scripts and documentation unless you have a deliberate reason to rely on the shell alias; it makes the intended client unambiguous on hosts that administer more than one Kubernetes environment.

Enable only the capabilities your workloads need

A fresh MicroK8s installation is deliberately minimal. Addons are enabled with microk8s enable and removed with microk8s disable. Run microk8s status to inspect the addons available in the installed release before choosing additional components.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Enable cluster DNS

microk8s enable dns

DNS supplies service-to-service name discovery inside the cluster. Workloads that address another Kubernetes Service by name generally need this capability, so enable it before testing applications that depend on internal service names.

Enable host-backed storage when local persistence is appropriate

microk8s enable hostpath-storage

The hostpath-storage addon provides storage backed by a directory on the host. It is suitable for workloads that can use local node storage and whose persistence model matches that limitation. It is not a substitute for designing a replicated or portable storage system when data must survive node loss or move freely between nodes.

Rank #3
New Bee Guitar Cable 10ft Electric Instrument Bass AMP Cord
  • [Low Noise High Fidelity] New bee guitar cord with 22AWG oxygen-free-copper center conductors provides enhanced signal transfer, the PVC insulation material and the high-density stranded copper double shield provide noise rejection for quiet operation
  • [Ideal for Choice] New bee 1/4 straight and right angle metal connectors, ensures a secure connection in any instrument, pedal, or amp jack. L shape great fro on stage guitar stands
  • [Wide Compatible] Suitable for mixer, power amplifier, microphone, effector, decoder, equalizer, electoronic organ, electric guitar, electric bass and other electronic equipments. Widely used in the installation of smart home, karaoke speaker, professional stage audio, etc
  • [Easy Disassemble] Making incidental repairs quick and easy! Very nice, flexible cable
  • [Dont Hesite to Order] 24 hours customer services and professional technology team are standing by

Inspect the release’s other addons

The documented addon set also includes:

  • ingress
  • metallb
  • registry
  • metrics-server
  • prometheus
  • dashboard
  • helm3
  • rbac

The names indicate the broad integration area, but the exact availability and behavior can vary by MicroK8s release. Use microk8s status for the current list and read the release-specific addon documentation before enabling a production component. The MicroK8s command reference documents the enable and disable operations.

Enable addons incrementally. A practical starting point for a basic application node is:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
microk8s enable dns
microk8s enable hostpath-storage

Then add ingress, load-balancing, image-registry, metrics, monitoring, dashboard, Helm, or RBAC capabilities only when the deployment requires them. Fewer enabled services make an initial diagnosis easier and reduce the amount of configuration you must maintain.

Create a multi-node MicroK8s cluster

Multi-node setup is the same basic Snap installation repeated in separate environments, followed by an authenticated join. Every machine must have its own identity. Prepare all nodes independently before attempting to connect them.

Prepare every node separately

  • Install MicroK8s in each VM, container, or physical Ubuntu environment using the channel selected for the cluster.
  • Give every machine a distinct hostname. The Ubuntu multi-node tutorial specifically recommends changing hostnames so nodes are recognized distinctly.
  • Keep the clocks synchronized. The clustering documentation identifies correct time as important to communication between nodes.
  • Refresh each user session after adding it to the microk8s group.
  • Run microk8s status --wait-ready on each machine so you know the local installation is ready before joining it.

Do not treat several shells or directories on one host as independent cluster nodes. Each node needs a separate environment and a network identity that the other nodes can reach.

Generate a join command on the initial node

On the first node, run:

microk8s add-node

MicroK8s prints one or more generated join commands. The output is authoritative for that cluster: it contains the address, port, and temporary authentication token that the next node must use. Copy the command intended for the node you are adding instead of constructing one by hand.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Join the next node

On the machine being added, run the generated command. Its shape is:

microk8s join <address>:25000/<token>

Replace the placeholders with the exact values printed by microk8s add-node. The generated token is sensitive while it is valid; share it only with the node that is being enrolled and avoid placing it in public tickets, shell history copied into documentation, or chat logs.

Rank #4
BSIMB 15.6" Digital Family Calendar & Chore Chart, No Subscription Fees
  • Digital Family Calendar: BSIMB digital calendar wall touch screen puts an end to your chaotic life. Designed for busy families, the digital calendar keeps you organised and in step with your family. Assign different colours and tasks to each family member to make family scheduling easier and more intuitive.
  • Easy Setup and Auto-Sync: Plug in, connect to WLAN and auto-syn your electric calendar in minutes. Digital wall calendar compatible with Google calendar, iCloud calendar, Outlook calendar, Cozi calendar and Yahoo calendar. Add events directly on the device or through the ecalendar app. Electronic calendar stays current whether you're at work or traveling—no manual updates needed.
  • All-In-One Home Assistant: Smart calendar builds habits and encourage independence with personalised chores. Display daily meal plan to reduce the daily ‘What's for dinner?’ stress. To-do lists keep track of everything you want. Turning chores into valuable achievements with stars and rewards, making life easier and more enjoyable.
  • Manage Anytime Anywhere: BSIMB electronic calendar for family stay connected with the powerful ecalendar app. Access and manage your digital wall calendar anytime, anywhere with free features like stars & rewards, photo screensaver, chore charts, meals plans, to-do lists etc. Electronic planner paid features like Magic Import tailor advanced tools for users with special needs.
  • Stay in Touch with Loved Ones: Share photos or videos from your phone to electronic wall calendar with app, instantly update your life moment, and keep in touch with your family, especially those who are far away; you can also surprise your smart calendar digital wall by sending him a wish card; it's also great for keeping tech-illiterate elders in touch with the youngsters.

Repeat the generation and join process for each additional control-plane or worker node as appropriate. The command printed by the initial node determines the join details for that cluster; do not reuse a stale command after the cluster’s membership or addressing has changed.

Verify membership from the initial node

microk8s kubectl get nodes

Run this on the original node after each join. The output should show the nodes that have successfully registered. If a node does not appear, check that its hostname is distinct, its clock is synchronized, the join command was copied exactly, and the joining environment completed its own readiness check before you investigate further.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The MicroK8s clustering documentation covers adding and removing nodes, worker nodes, storage, and high availability. The Ubuntu multi-node tutorial provides an additional walkthrough of a multi-machine deployment and the hostname consideration.

Run an NGINX smoke test

A small deployment confirms more than the API endpoint alone. It exercises scheduling, the node agent, image retrieval, container startup, and enough cluster networking to launch a normal workload.

  1. Create the deployment:

    microk8s kubectl create deployment nginx --image=nginx
  2. Check the pod:

    microk8s kubectl get pods
  3. Wait until the NGINX pod reports Running. If it is still pending or starting, repeat the status command rather than treating creation of the deployment object as a successful test.

This smoke test does not expose NGINX outside the cluster and does not validate every addon. It answers the narrower, useful question of whether the cluster can schedule a basic image-backed workload and start it on a node. Once it reaches Running, test the service discovery, storage, ingress, or external load-balancing features your real application will use.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Useful day-two commands

Keep the MicroK8s command reference available when operating the cluster. These commands are the documented starting points for routine lifecycle work:

Command When to use it
microk8s status Inspect readiness and the addon state for the installed release.
microk8s inspect Collect a diagnostic bundle when you need to investigate a problem or provide information for support.
microk8s start Start the MicroK8s services after they have been stopped.
microk8s stop Stop the MicroK8s services for maintenance or controlled shutdown.
microk8s reset Reset the cluster; read the command-reference warnings and understand the effect on cluster state before running it.
microk8s leave Leave a multi-node cluster from the node on which the command is run.
microk8s remove-node Remove a node from cluster membership from the appropriate cluster-management context.
microk8s refresh-certs Refresh MicroK8s certificates when certificate maintenance is required.

Use microk8s inspect before changing several settings at once. A diagnostic bundle preserves useful state for troubleshooting, while a sequence of unrecorded changes makes it harder to identify the original failure.

Troubleshoot the first installation

Commands still require administrative privileges

Confirm that the account was added with sudo usermod -a -G microk8s $USER and that you started a new login session with su - $USER or by logging out and back in. Until the group membership is refreshed, the shell may not recognize the new permissions. You can continue checking the installation with the documented commands after the refreshed session is active.

status --wait-ready does not complete

Recheck the prerequisites first: the host must have a functioning Snap installation, an internet connection for the package and images, and enough memory and disk for the selected workload. Run microk8s status to see the current state and then microk8s inspect to gather diagnostics. Avoid adding application-level complexity until the base node reaches readiness.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The node list is empty or incomplete

On a single node, verify that you are using microk8s kubectl get nodes against the same MicroK8s installation that passed the readiness check. In a multi-node cluster, confirm that every machine has a distinct hostname and synchronized clock, and that the joining machine used the exact command generated by microk8s add-node. Re-run the membership check on the original node after the join command finishes.

A pod does not reach Running

Start with microk8s kubectl get pods and the node status. A pending or starting pod means the smoke test is not complete, even though the deployment object was created. Review the cluster state with microk8s status and collect an inspection bundle. If the application expects internal service names, make sure the dns addon is enabled; if it requests persistent local storage, make sure the storage design and the hostpath-storage addon match that workload.

Local storage is the wrong fit

hostpath-storage uses host-backed directories. That can be appropriate for a local development service or a workload intentionally tied to one node, but it does not by itself provide cross-node replication. Reconsider the storage architecture before placing irreplaceable data on a multi-node cluster.

Plan versioning, addons, and scale deliberately

Choose a Snap channel as a policy decision

The installation command includes --channel=1.35 as an example. A channel is not just a download detail: it determines the Kubernetes release line installed and refreshed on the node. Document the channel you approve, use it consistently across nodes that belong to the same cluster, and review release-specific addon documentation before changing it.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Separate the base cluster from workload features

Start with the smallest useful set, commonly DNS and host-backed storage when the application needs them. Add ingress, MetalLB, a registry, metrics-server, Prometheus, the dashboard, Helm 3, or RBAC only after confirming the release exposes the addon and that its operational trade-offs are understood. This keeps the initial failure domain small and makes it clear which component introduced a new behavior.

Do not infer capacity from the installation footprint

The official material describes MicroK8s scalability qualitatively, but it does not publish a dated node-count, throughput, or capacity benchmark in the sources used for this guide. The 540 MB and 4 GB figures describe memory guidance, not a promise about how many pods or nodes a cluster can support. Size a real deployment from its control-plane, application, storage, networking, and observability requirements, then validate it under your own workload.

Completion checklist

  • Ubuntu or another Snap-capable operating system is online with internet access.
  • The selected MicroK8s channel is recorded and installed with sudo snap install microk8s --classic --channel=1.35, or with the approved channel for your policy.
  • Your account belongs to the microk8s group and the login session has been refreshed.
  • microk8s status --wait-ready completes successfully.
  • microk8s kubectl get nodes lists the expected node.
  • DNS and hostpath-storage are enabled only if the workload needs them.
  • Every multi-node machine has its own environment, a distinct hostname, and a synchronized clock.
  • Additional nodes were enrolled with the exact, current command generated by microk8s add-node.
  • The NGINX deployment reaches Running before you call the smoke test successful.
  • For any failure, microk8s status and microk8s inspect are available before destructive recovery commands are attempted.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Crashes, No Sound, or Screen Glitches?Free driver scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.