<?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: William Méndez</title>
    <description>The latest articles on DEV Community by William Méndez (@wilo).</description>
    <link>https://dev.to/wilo</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%2F628582%2F41408839-28ed-42c1-89f2-c1a4c40d66c4.jpeg</url>
      <title>DEV Community: William Méndez</title>
      <link>https://dev.to/wilo</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/wilo"/>
    <language>en</language>
    <item>
      <title>Install Kubernetes using Minikube on Arch Linux</title>
      <dc:creator>William Méndez</dc:creator>
      <pubDate>Fri, 04 Jun 2021 01:47:06 +0000</pubDate>
      <link>https://dev.to/wilo/install-kubernetes-using-minikube-on-arch-linux-430o</link>
      <guid>https://dev.to/wilo/install-kubernetes-using-minikube-on-arch-linux-430o</guid>
      <description>&lt;p&gt;First of all, let me introduce some concepts about these technologies.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Arch Linux?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0nc1b7j97sxyntlq5nlp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0nc1b7j97sxyntlq5nlp.png" alt="Archlinux" width="390" height="129"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It's a versatile and flexible Gnu/Linux distribution,  focused on minimalism and simplicity. In my opinion the most important feature of this distro it's called Rolling Release, this will allow you to have the most recent version of your apps. For more info go to the &lt;a href="https://archlinux.org/" rel="noopener noreferrer"&gt;Arch Linux Homepage&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Docker?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8dxrgq4sg9ovtz1vwbgz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8dxrgq4sg9ovtz1vwbgz.png" alt="Docker" width="800" height="713"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It's a virtualization platform to deliver software as packages called containers. Containers can communicate with other containers through channels. This tool can be used to simulate the production server configs in your local machine.. More info in &lt;a href="https://www.docker.com/" rel="noopener noreferrer"&gt;Docker homepage&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Kubernetes?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F30v55z75gjcjdcf56ud6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F30v55z75gjcjdcf56ud6.png" alt="Kubernetes" width="730" height="389"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://kubernetes.io/" rel="noopener noreferrer"&gt;Kubernetes&lt;/a&gt; is an open source software for automating the deployment, scaling and handling of containerized applications. It works with a large list of container tools such as &lt;a href="https://www.docker.com/" rel="noopener noreferrer"&gt;Docker&lt;/a&gt;, &lt;a href="https://podman.io/" rel="noopener noreferrer"&gt;Podman&lt;/a&gt;, etc. This software is commonly used as &lt;strong&gt;Platform As A Service (PAAS)&lt;/strong&gt; and &lt;strong&gt;Software As A Service (SAAS)&lt;/strong&gt; in cloud computing. More info in &lt;a href="https://kubernetes.io/" rel="noopener noreferrer"&gt;Kubernetes Homepage&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Minikube?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F55zobj7rlnibd1ain36z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F55zobj7rlnibd1ain36z.png" alt="Minikube" width="700" height="300"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It's a tool for setup your local &lt;a href="https://kubernetes.io/" rel="noopener noreferrer"&gt;kubernetes&lt;/a&gt; cluster, it's multiplatform and opensoure, more info in &lt;a href="https://minikube.sigs.k8s.io/" rel="noopener noreferrer"&gt;Minikube Homepage&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Let's get started.&lt;/p&gt;

&lt;p&gt;Sync the database and update dependencies [It's not really necessary, but why not?]&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="o"&gt;[&lt;/span&gt;wilo@developer ~]&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;pacman &lt;span class="nt"&gt;-Syyu&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Install minikube, and other dependencies&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="o"&gt;[&lt;/span&gt;wilo@developer ~]&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;pacman &lt;span class="nt"&gt;-S&lt;/span&gt; kubectl minikube libvirt qemu dnsmasq ebtables dmidecode
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Additionally we assing the current user to the &lt;strong&gt;libvirt&lt;/strong&gt; group&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="o"&gt;[&lt;/span&gt;wilo@developer ~]&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;usermod &lt;span class="nt"&gt;-aG&lt;/span&gt; libvirt &lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="nb"&gt;whoami&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If you want to the &lt;strong&gt;libvirt&lt;/strong&gt; service loads when you start your OS.&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="o"&gt;[&lt;/span&gt;wilo@developer ~]&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;systemctl &lt;span class="nb"&gt;enable &lt;/span&gt;libvirtd
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now we start the &lt;strong&gt;libvirt&lt;/strong&gt; service.&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="o"&gt;[&lt;/span&gt;wilo@developer ~]&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;systemctl start libvirtd
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Once started the service, we check the status if everything it's ok.&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="o"&gt;[&lt;/span&gt;wilo@developer ~]&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;systemctl status libvirtd
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And you see the status like this.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr6ehup8a0msyml549tp4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr6ehup8a0msyml549tp4.png" alt="Libvirt status" width="800" height="431"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Well..., Then we set the Kvm2 provider in minikube&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="o"&gt;[&lt;/span&gt;wilo@developer ~]&lt;span class="nv"&gt;$ &lt;/span&gt;minikube config &lt;span class="nb"&gt;set &lt;/span&gt;driver kvm2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And finally start it.&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="o"&gt;[&lt;/span&gt;wilo@developer ~]&lt;span class="nv"&gt;$ &lt;/span&gt;minikube start
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgn7d60fq02elwd2lmpyj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgn7d60fq02elwd2lmpyj.png" alt="Minikube started" width="800" height="431"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now, we probe a some kubernetes commands on our terminal using &lt;strong&gt;kubectl&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwikn0ufos4qh35bzcwqe.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwikn0ufos4qh35bzcwqe.png" alt="Kubectl command" width="800" height="431"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And yeap! the installation process was successfully!, congrats! 🎉.&lt;/p&gt;

</description>
      <category>firstpost</category>
      <category>kubernetes</category>
      <category>minikube</category>
      <category>archlinux</category>
    </item>
  </channel>
</rss>
