How To Install Kubernetes On Windows 10

Image
How To Install Kubernetes On Windows 10
Learn to install Kubernetes on windows. Know the requirements of hardware and software before following the steps to install Kubernetes on windows.
Blog Author
Published on
Jul 22, 2022
Views
10088
Read Time
15 Mins
Table of Content

Kubernetes has become the go-to container orchestration platform for managing cloud resources and developing scalable applications. If you're looking to harness the power of Kubernetes on your Windows machine, you've come to the right place. This comprehensive guide will walk you through multiple installation methods, ensuring you can choose the approach that best fits your needs and technical expertise.

Whether you're a developer getting started with containerization or an experienced professional setting up a local development environment, this tutorial will provide you with clear, step-by-step instructions to get Kubernetes running on your Windows system.

Windows System Specifications for Kubernetes Installation

Before diving into the installation process, let's ensure your system meets the necessary requirements for running Kubernetes smoothly.

Hardware Requirements

Master Node Requirements:

  • Minimum 2 GB RAM (4 GB or more recommended for optimal performance)

  • At least 2 CPU cores

  • 20 GB free disk space

  • Stable internet connection for downloading components

Worker Node Requirements:

  • Minimum 1 GB RAM (2 GB recommended)

  • At least 1 CPU core

  • 10 GB free disk space

General Hardware:

  • Mouse and keyboard for navigation

  • Monitor with minimum 1024x768 resolution

Software Requirements

Operating System:

  • Windows 10 Pro, Enterprise, or Education (64-bit)

  • Windows 11 Pro, Enterprise, or Education (64-bit)

  • Windows Server 2019 or later

Essential Software:

  • Hyper-V capability (for Docker Desktop method)

  • Windows Subsystem for Linux 2 (WSL2) - recommended

  • PowerShell 5.1 or later

  • .NET Framework 4.7.2 or later

Network Requirements:

  • Unique MAC address for each node

  • Unique product UUID for every node

  • Full network connectivity between all cluster machines

  • Access to required ports (6443, 2379-2380, 10250-10252, 10255)

Additional Libraries or Tools (Installed Prior)

Before proceeding with Kubernetes installation, ensure you have these tools ready:

Required Tools:

  • Git for Windows (for cloning repositories)

  • A text editor (VS Code, Notepad++, or similar)

  • Windows Terminal (optional but recommended)

Docker Requirements:

  • Docker Desktop for Windows (latest stable version)

  • Container feature enabled in Windows

  • Virtualization enabled in BIOS/UEFI

WSL2 Requirements (for WSL2 method):

  • WSL2 installed and configured

  • Ubuntu 20.04 LTS or Ubuntu 22.04 LTS distribution

  • WSL2 set as default version

 
 
 
 
 
Get Beginner to Advance Level DevOps Training
Learn DevOps with Generative AI

How to Install Kubernetes on Windows in 5 Simple Steps

Getting Kubernetes running on Windows is straightforward with these 5 essential steps. We'll use the most practical approach - Docker Desktop with built-in Kubernetes - perfect for local development and learning.

Step 1: Set Up Prerequisites

Enable WSL2 and Install Ubuntu:

# Open PowerShell as Administrator

wsl --install

wsl --set-default-version 2

 

Restart your computer when prompted, then install Ubuntu from Microsoft Store and complete the initial setup.

Install kubectl (Kubernetes CLI):

# Using winget (recommended)

winget install -e --id Kubernetes.kubectl

 

# Verify installation

kubectl version --client

 

Step 2: Install Docker Desktop

  1. Download Docker Desktop from https://www.docker.com/products/docker-desktop

  2. Run the installer as Administrator

  3. During installation, ensure "Use WSL 2 instead of Hyper-V" is selected

  4. Restart your computer when installation completes

  5. Launch Docker Desktop and complete the initial setup

Step 3: Enable Kubernetes in Docker Desktop

  1. Right-click the Docker Desktop icon in your system tray

  2. Select "Settings"

  3. Navigate to "Kubernetes" in the left panel

  4. Check "Enable Kubernetes"

  5. Click "Apply & Restart"

Docker will now download and configure a single-node Kubernetes cluster. This process takes 5-10 minutes depending on your internet speed.

Step 4: Verify Your Installation

Open PowerShell or Command Prompt and run these verification commands:

# Check kubectl configuration

kubectl config use-context docker-desktop

kubectl get nodes

 

You should see output showing a docker-desktop node in Ready status.

# Check cluster information

kubectl cluster-info

 

This confirms your Kubernetes cluster is running and accessible.

Step 5: Test with Your First Deployment

Deploy a simple application to confirm everything works:

# Create a test deployment

kubectl create deployment hello-nginx --image=nginx

 

# Expose it as a service

kubectl expose deployment hello-nginx --type=NodePort --port=80

 

# Check the service status

kubectl get svc hello-nginx

 

Your Kubernetes installation is now complete and ready for development!

Alternative Installation Methods

If you prefer different approaches or are using Windows Home edition:

Method A: Minikube with WSL2 (Windows Home Compatible)

# Inside WSL2 Ubuntu terminal

sudo apt update

sudo apt install -y curl conntrack

 

# Install Docker in WSL2

curl -fsSL https://get.docker.com | sh

sudo usermod -aG docker "$USER"

newgrp docker

 

# Install Minikube

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64

sudo install minikube-linux-amd64 /usr/local/bin/minikube

 

# Start cluster

minikube start --driver=docker

 

Method B: Kind (Lightweight Testing)

# Inside WSL2, install Kind

curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.25.0/kind-linux-amd64

chmod +x ./kind

sudo mv kind /usr/local/bin/kind

 

# Create cluster

kind create cluster

kubectl cluster-info --context kind-kind

 

Install kubectl Binary on Windows

Via Direct Download

  1. Download the latest release:

curl.exe -LO "https://dl.k8s.io/release/v1.28.0/bin/windows/amd64/kubectl.exe"

 

  1. Add kubectl to your PATH:

  • Create a folder: C:\kubectl

  • Move kubectl.exe to this folder

  • Add C:\kubectl to your system PATH

  • Verify installation:

  • kubectl version --client

     

    Via Curl Command

    curl.exe -LO "https://dl.k8s.io/release/$(curl.exe -L -s https://dl.k8s.io/release/stable.txt)/bin/windows/amd64/kubectl.exe"

     

    Install on Windows using Package Managers

    Using Chocolatey

    choco install kubernetes-cli

     

    Using Scoop

    1. Install Scoop:

    iwr -useb get.scoop.sh | iex

     

    1. Install kubectl:

    scoop install kubectl

     

    Using Winget

    winget install Kubernetes.kubectl

     

    Verify kubectl Configuration

    After installation, verify your kubectl configuration:

    Check kubectl version:

    kubectl version --client --output=yaml

     

    View cluster information:

    kubectl cluster-info

     

    List all contexts:

    kubectl config get-contexts

     

    Check current context:

    kubectl config current-context

     

    Test cluster connectivity:

    kubectl get nodes

    kubectl get namespaces

     

    Troubleshooting the 'No Auth Provider Found' Error Message

    This common error occurs when kubectl cannot authenticate with your Kubernetes cluster. Here are the solutions:

    Solution 1: Update kubectl Configuration

    1. Check your current config:

    kubectl config view

     

    1. Update the config file (usually located at %USERPROFILE%\.kube\config):

    apiVersion: v1

    clusters:

    - cluster:

        server: https://your-cluster-endpoint

      name: your-cluster

    contexts:

    - context:

        cluster: your-cluster

        user: your-user

      name: your-context

    current-context: your-context

    kind: Config

    users:

    - name: your-user

      user:

        exec:

          apiVersion: client.authentication.k8s.io/v1beta1

          command: kubectl

          args:

          - oidc-login

          - get-token

     

    Solution 2: Reinstall kubectl

    1. Uninstall current kubectl:

    choco uninstall kubernetes-cli

     

    1. Reinstall with latest version:

    choco install kubernetes-cli

     

    Solution 3: Reset Docker Desktop Kubernetes

    1. Open Docker Desktop Settings

    2. Go to Kubernetes section

    3. Click "Reset Kubernetes Cluster"

    4. Restart Docker Desktop

    Optional kubectl Configurations and Plugins

    Useful kubectl Plugins

    Install krew (kubectl plugin manager):

    1. Download krew from GitHub releases

    2. Extract and add to PATH

    3. Install useful plugins:

    kubectl krew install ctx

    kubectl krew install ns

    kubectl krew install tree

     

    kubectl Aliases and Shortcuts

    Create a PowerShell profile with useful aliases:

    # Create or edit PowerShell profile

    notepad $PROFILE

     

    # Add these aliases

    Set-Alias k kubectl

    function pods { kubectl get pods $args }

    function services { kubectl get services $args }

    function deployments { kubectl get deployments $args }

     

    Auto-completion Setup

    Enable kubectl auto-completion in PowerShell:

    kubectl completion powershell | Out-String | Invoke-Expression

     

    Conclusion

    You now have three robust methods to install Kubernetes on your Windows machine. The Docker Desktop method is perfect for beginners and local development, WSL2 provides a Linux-like experience with excellent performance, and the native Windows installation with Mini kube offers the most flexibility for advanced configurations.

    Choose the method that best aligns with your technical expertise and project requirements. Remember that Kubernetes is a powerful tool that becomes more valuable as you gain experience with container orchestration concepts.

    Whether you're starting your DevOps journey or expanding your containerization skills, having Kubernetes running locally on Windows opens up countless possibilities for application development, testing, and learning. Take time to explore the kubectl commands, experiment with deploying applications, and gradually build your expertise with this essential cloud-native technology.

    The installation is just the beginning – now you can start creating pods, services, and deployments to fully harness the power of Kubernetes in your development workflow.

    Share Article
    WhatsappFacebookXLinkedInTelegram
    About Author
    Karan Gupta

    Cloud Engineer

    AWS DevOps Engineer with 6 years of experience in designing, implementing, automating and
    maintaining the cloud infrastructure on the Amazon Web Services (AWS).
    Are you Confused? Let us assist you.
    +1
    Explore DevOps Certification Training!
    Upon course completion, you'll earn a certification and expertise.
    ImageImageImageImage

    Popular Courses

    Gain Knowledge from top MNC experts and earn globally recognised certificates.
    50645 Enrolled
    2 Days
    From USD 699.00
    USD
    349.00
    Next Schedule September 11, 2025
    2362 Enrolled
    2 Days
    From USD 699.00
    USD
    349.00
    Next Schedule September 13, 2025
    25970 Enrolled
    2 Days
    From USD 1,199.00
    USD
    545.00
    Next Schedule September 13, 2025
    20980 Enrolled
    2 Days
    From USD 999.00
    USD
    499.00
    Next Schedule September 13, 2025
    12659 Enrolled
    2 Days
    From USD 1,199.00
    USD
    545.00
    Next Schedule September 13, 2025
    PreviousNext

    Trending Articles

    The most effective project-based immersive learning experience to educate that combines hands-on projects with deep, engaging learning.
    WhatsApp