<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Sameer Meher</title>
    <description>The latest articles on DEV Community by Sameer Meher (@sameermeher).</description>
    <link>https://dev.to/sameermeher</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F290916%2F61ccb105-60dd-4e72-9e0b-0f048799f0b7.png</url>
      <title>DEV Community: Sameer Meher</title>
      <link>https://dev.to/sameermeher</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sameermeher"/>
    <language>en</language>
    <item>
      <title>Kubernetes Playground in ACloudGuru</title>
      <dc:creator>Sameer Meher</dc:creator>
      <pubDate>Mon, 12 Oct 2020 07:55:24 +0000</pubDate>
      <link>https://dev.to/sameermeher/kubernetes-playground-in-acloudguru-2aik</link>
      <guid>https://dev.to/sameermeher/kubernetes-playground-in-acloudguru-2aik</guid>
      <description>&lt;h1&gt;
  
  
  Kubernetes Playground in ACloudGuru
&lt;/h1&gt;

&lt;p&gt;With the advent of Technology in Cloud, learning and to up-skill yourself in its ecosystem has kind of become a necessity and best way to skill up to is always get hands on practice in those cloud providers, majorly dominated by AWS, Azure and GCP. But you always run the risk of forgetting the servers or cloud resources you have spun up for learning purpose and then you see a shocking bill delivered to your inbox (of course you could control the cost with AWS Budgets and limit the bill amount). But what if you have the liberty to spin up either resources in your major cloud provider or setup your own dedicated server for couple of weeks to learn and then destroy.&lt;/p&gt;

&lt;p&gt;That's exactly what comes bundled with ACloudGuru membership.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cloud Sandbox (provided for AWS, Azure and GCP)&lt;/li&gt;
&lt;li&gt;Cloud Servers&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I used these features extensively during my preparation for AWS and Kubernetes Certifications.&lt;/p&gt;

&lt;p&gt;During preparation for Kubernetes CKAD and CKA you need to create Cluster more than often to perform various tasks like - &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Creating Deployment manifest files and deploying it.&lt;/li&gt;
&lt;li&gt;Creating various kubernetes objects and edit it again and again to understand the behavior.&lt;/li&gt;
&lt;li&gt;Upgrading Kubernetes version in a LIVE cluster, Backing up ETCD&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now to practice all these during preparation, you would like to setup a dedicated cluster for couple of weeks or more and continue your journey, and that's what I did. I created a Kubernetes cluster with right version needed for the exam to continue my practice.&lt;/p&gt;

&lt;p&gt;In this blog I am going to discuss how you could leverage Cloud Servers as your Kubernetes Playground. Let's get started -&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;strong&gt;Create Cloud Serves:&lt;/strong&gt;
&lt;/h1&gt;

&lt;p&gt;Navigate to -&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Playground → Cloud Servers → Click "New Server"&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Create 3 such Cloud Servers to create a cluster with 1 Master + 2 Worker Nodes.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--DbxA6n9t--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/auakjbb0fow28468mm1z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--DbxA6n9t--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/auakjbb0fow28468mm1z.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Wait for all 3 Servers to be in 'Ready' state to connect to these servers. Please use "Tags" to understand which of these is your Master Node. Once all the servers are UP, you get this view -&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--MtZGQm1S--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/izdz1n2paszabwm4cdd3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MtZGQm1S--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/izdz1n2paszabwm4cdd3.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Expand these server to see its details and its login credentials. On your first login, it will prompt you to change your password.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;During my process of installing Docker, I experienced getting below error. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;E: Could not get lock /var/lib/dpkg/lock – open (11: Resource temporarily unavailable)&lt;br&gt;
E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You get this error when some other process is trying to update Ubuntu and when it updates the system, it locks &lt;strong&gt;dpkg&lt;/strong&gt; file (Debian package manager).&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Either wait Or follow "Method 2" mentioned in this &lt;a href="https://itsfoss.com/could-not-get-lock-error/"&gt;site&lt;/a&gt; to release locks.&lt;/em&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Install Kubernetes with Deployment Tools
&lt;/h1&gt;

&lt;p&gt;We can bootstrap clusters using either - Kubeadm, Kops, or Kubespray tools. &lt;/p&gt;

&lt;p&gt;We will use Kubeadm tool to setup our cluster. [&lt;a href="https://kubernetes.io/docs/setup/production-environment/tools/"&gt;Ref&lt;/a&gt;]&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Letting iptables see bridged traffic&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;"&lt;em&gt;**EXECUTE BELOW COMMANDS IN "ALL MACHINES" AS&lt;/em&gt;* &lt;strong&gt;sudo user ~ "sudo -i"&lt;/strong&gt;*&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;modprobe br_netfilter

&lt;span class="nb"&gt;cat&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class="no"&gt;EOF&lt;/span&gt;&lt;span class="sh"&gt; | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
&lt;/span&gt;&lt;span class="no"&gt;EOF
&lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;sysctl &lt;span class="nt"&gt;--system&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  &lt;strong&gt;Install Container Runtime (Docker) [&lt;a href="https://kubernetes.io/docs/setup/production-environment/container-runtimes/"&gt;Ref&lt;/a&gt;]&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;"&lt;em&gt;**EXECUTE BELOW COMMANDS IN "ALL MACHINES" AS&lt;/em&gt;* &lt;strong&gt;sudo user ~ "sudo -i"&lt;/strong&gt;*&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# (Install Docker CE)&lt;/span&gt;
&lt;span class="c"&gt;# Set up the repository:&lt;/span&gt;
&lt;span class="c"&gt;# Install packages to allow apt to use a repository over HTTPS&lt;/span&gt;
&lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get update &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-y&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  apt-transport-https ca-certificates curl software-properties-common gnupg2

&lt;span class="c"&gt;# Add Docker's official GPG key:&lt;/span&gt;
curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://download.docker.com/linux/ubuntu/gpg | &lt;span class="nb"&gt;sudo &lt;/span&gt;apt-key add -

&lt;span class="c"&gt;# Add the Docker apt repository:&lt;/span&gt;
&lt;span class="nb"&gt;sudo &lt;/span&gt;add-apt-repository &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="s2"&gt;"deb [arch=amd64] https://download.docker.com/linux/ubuntu &lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s2"&gt;
  &lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;lsb_release &lt;span class="nt"&gt;-cs&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt; &lt;/span&gt;&lt;span class="se"&gt;\&lt;/span&gt;&lt;span class="s2"&gt;
  stable"&lt;/span&gt;

&lt;span class="c"&gt;# Install Docker CE&lt;/span&gt;
&lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get update &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-y&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  containerd.io&lt;span class="o"&gt;=&lt;/span&gt;1.2.13-2 &lt;span class="se"&gt;\&lt;/span&gt;
  docker-ce&lt;span class="o"&gt;=&lt;/span&gt;5:19.03.11~3-0~ubuntu-&lt;span class="si"&gt;$(&lt;/span&gt;lsb_release &lt;span class="nt"&gt;-cs&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt; &lt;span class="se"&gt;\&lt;/span&gt;
  docker-ce-cli&lt;span class="o"&gt;=&lt;/span&gt;5:19.03.11~3-0~ubuntu-&lt;span class="si"&gt;$(&lt;/span&gt;lsb_release &lt;span class="nt"&gt;-cs&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;

&lt;span class="c"&gt;# Set up the Docker daemon&lt;/span&gt;
&lt;span class="nb"&gt;cat&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class="no"&gt;EOF&lt;/span&gt;&lt;span class="sh"&gt; | sudo tee /etc/docker/daemon.json
{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}
&lt;/span&gt;&lt;span class="no"&gt;EOF

&lt;/span&gt;&lt;span class="nb"&gt;sudo mkdir&lt;/span&gt; &lt;span class="nt"&gt;-p&lt;/span&gt; /etc/systemd/system/docker.service.d

&lt;span class="c"&gt;# Restart Docker&lt;/span&gt;
&lt;span class="nb"&gt;sudo &lt;/span&gt;systemctl daemon-reload
&lt;span class="nb"&gt;sudo &lt;/span&gt;systemctl restart docker
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you want the docker service to start on boot, run the following command:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;systemctl &lt;span class="nb"&gt;enable &lt;/span&gt;docker
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Install kubeadm, kubelet and kubectl [&lt;a href="https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#installing-kubeadm-kubelet-and-kubectl"&gt;Ref&lt;/a&gt;]
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;kubeadm&lt;/code&gt;: the command to bootstrap the cluster.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;kubelet&lt;/code&gt;: the component that runs on all of the machines in your cluster and does things like starting pods and containers.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;kubectl&lt;/code&gt;: the command line util to talk to your cluster.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;"&lt;em&gt;**EXECUTE BELOW COMMANDS IN "ALL MACHINES" AS&lt;/em&gt;* &lt;strong&gt;sudo user ~ "sudo -i"&lt;/strong&gt;*&lt;/p&gt;

&lt;p&gt;***&lt;strong&gt;&lt;em&gt;Please note that below command will always install latest packages.&lt;/em&gt;&lt;/strong&gt;***&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get update &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-y&lt;/span&gt; apt-transport-https curl
curl &lt;span class="nt"&gt;-s&lt;/span&gt; https://packages.cloud.google.com/apt/doc/apt-key.gpg | &lt;span class="nb"&gt;sudo &lt;/span&gt;apt-key add -
&lt;span class="nb"&gt;cat&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&amp;lt;&lt;/span&gt;&lt;span class="no"&gt;EOF&lt;/span&gt;&lt;span class="sh"&gt; | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
&lt;/span&gt;&lt;span class="no"&gt;EOF
&lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get update
&lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-y&lt;/span&gt; kubelet kubeadm kubectl
&lt;span class="nb"&gt;sudo &lt;/span&gt;apt-mark hold kubelet kubeadm kubectl
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;To install a specific version of kubeadm, kubelet, kubectl:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-y&lt;/span&gt; &lt;span class="nv"&gt;kubelet&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;1.17.0 &lt;span class="nv"&gt;kubeadm&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;1.17.0 &lt;span class="nv"&gt;kubectl&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;1.17.0
&lt;/code&gt;&lt;/pre&gt;

&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Restart kubelet:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;systemctl daemon-reload
systemctl restart kubelet
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h1&gt;
  
  
  Create Cluster with kubeadm tool
&lt;/h1&gt;

&lt;h3&gt;
  
  
  Initialize the Control Plane Node [&lt;a href="https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/"&gt;Ref&lt;/a&gt;]
&lt;/h3&gt;

&lt;p&gt;"&lt;em&gt;**EXECUTE BELOW COMMAND IN "MASTER" AS&lt;/em&gt;* &lt;strong&gt;sudo user ~ "sudo -i"&lt;/strong&gt;*&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;kubeadm init
&lt;span class="c"&gt;# this command takes few minutes to bootstrap the cluster and install control &lt;/span&gt;
&lt;span class="c"&gt;# plane components in master node.&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Above command will provide 2 important information.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Details of cluster api-server to be added to .kubeconfig as regular (non-root) user&lt;/li&gt;
&lt;li&gt;Command to be execute in worker nodes (as root user) to allow worker nodes to join the cluster.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;To make kubectl work for your non-root user, run these commands, which are also part of the kubeadm init output:&lt;/p&gt;

&lt;p&gt;"&lt;em&gt;**EXECUTE BELOW COMMANDS IN "MASTER" AS&lt;/em&gt;* &lt;strong&gt;non-root user&lt;/strong&gt;*&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mkdir&lt;/span&gt; &lt;span class="nt"&gt;-p&lt;/span&gt; &lt;span class="nv"&gt;$HOME&lt;/span&gt;/.kube
&lt;span class="nb"&gt;sudo cp&lt;/span&gt; &lt;span class="nt"&gt;-i&lt;/span&gt; /etc/kubernetes/admin.conf &lt;span class="nv"&gt;$HOME&lt;/span&gt;/.kube/config
&lt;span class="nb"&gt;sudo chown&lt;/span&gt; &lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="nb"&gt;id&lt;/span&gt; &lt;span class="nt"&gt;-u&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;:&lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="nb"&gt;id&lt;/span&gt; &lt;span class="nt"&gt;-g&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt; &lt;span class="nv"&gt;$HOME&lt;/span&gt;/.kube/config
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Install POD networking solution [&lt;a href="https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/#steps-for-the-first-control-plane-node"&gt;Ref&lt;/a&gt;]
&lt;/h3&gt;

&lt;p&gt;In our case we will use "weaveworks" CNI plugin.&lt;/p&gt;

&lt;p&gt;"&lt;em&gt;**EXECUTE BELOW COMMAND IN "MASTER" AS&lt;/em&gt;* &lt;strong&gt;non-root user&lt;/strong&gt;*&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;kubectl apply &lt;span class="nt"&gt;-f&lt;/span&gt; &lt;span class="s2"&gt;"https://cloud.weave.works/k8s/net?k8s-version=&lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;kubectl version | &lt;span class="nb"&gt;base64&lt;/span&gt; | &lt;span class="nb"&gt;tr&lt;/span&gt; &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="s1"&gt;'\n'&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Join Worker Nodes to Cluster [&lt;a href="https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/#join-nodes"&gt;Ref&lt;/a&gt;]
&lt;/h3&gt;

&lt;p&gt;As part of "kubeadm init" you must have received a "kubeadm join ..." command. Now, we need to execute those in worker nodes so that we complete the cluster creation process.&lt;/p&gt;

&lt;p&gt;"&lt;em&gt;**EXECUTE BELOW COMMAND IN "WORKER" NODES ONLY AS&lt;/em&gt;* &lt;strong&gt;sudo user ~ "sudo -i"&lt;/strong&gt;*&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;kubeadm &lt;span class="nb"&gt;join&lt;/span&gt; &lt;span class="nt"&gt;--token&lt;/span&gt; &amp;lt;token&amp;gt; &amp;lt;control-plane-host&amp;gt;:&amp;lt;control-plane-port&amp;gt; &lt;span class="nt"&gt;--discovery-token-ca-cert-hash&lt;/span&gt; sha256:&amp;lt;&lt;span class="nb"&gt;hash&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Wait for few minutes to allow nodes to join the cluster. Now, you can execute below command (from master node) to see your nodes joining the cluster.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;kubectl get nodes
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--B52FUygL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/ubm1j4pnlwwxaf761ot6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--B52FUygL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/ubm1j4pnlwwxaf761ot6.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Deploy sample application to test your cluster deployment
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;kubectl run nginx &lt;span class="nt"&gt;--image&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;nginx
&lt;span class="c"&gt;# output should be - pod/nginx created&lt;/span&gt;

&lt;span class="c"&gt;# Get deployed pod details&lt;/span&gt;
kubectl get pods &lt;span class="nt"&gt;-o&lt;/span&gt; wide
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--8PJ2GjFA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/vorwy3veqxmfgqzz38rf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8PJ2GjFA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/vorwy3veqxmfgqzz38rf.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This completes the process to bootstrap your own Kubernetes Cluster in the Playground. 😎&lt;/p&gt;

</description>
      <category>kubernetes</category>
    </item>
  </channel>
</rss>
