<?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: aquila</title>
    <description>The latest articles on DEV Community by aquila (@aquiladayc).</description>
    <link>https://dev.to/aquiladayc</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%2F255353%2Fa5ab4ac1-4b1d-4180-84d6-06cee1bff7ab.png</url>
      <title>DEV Community: aquila</title>
      <link>https://dev.to/aquiladayc</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/aquiladayc"/>
    <language>en</language>
    <item>
      <title>CKA 2020 September</title>
      <dc:creator>aquila</dc:creator>
      <pubDate>Mon, 28 Sep 2020 12:23:17 +0000</pubDate>
      <link>https://dev.to/aquiladayc/cka-2020-september-19ib</link>
      <guid>https://dev.to/aquiladayc/cka-2020-september-19ib</guid>
      <description>&lt;p&gt;I took CKA exam in this September and passed it. So let me share my experience and thought on it.&lt;/p&gt;

&lt;p&gt;CKA, Certified Kubernetes Administrator, is mainly provided by Linux foundation.&lt;br&gt;
&lt;a href="https://www.cncf.io/certification/cka/"&gt;https://www.cncf.io/certification/cka/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It's updated this September, so check what's changed.&lt;br&gt;
&lt;a href="https://training.linuxfoundation.org/cka-program-changes-2020/"&gt;https://training.linuxfoundation.org/cka-program-changes-2020/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here's some points to know...&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Exam duration is 2 hours&lt;/li&gt;
&lt;li&gt;17~20 questions&lt;/li&gt;
&lt;li&gt;Each question has 4~13% weight&lt;/li&gt;
&lt;li&gt;Passing line is 66%&lt;/li&gt;
&lt;li&gt;Only official docs can be refered during the exam
&lt;a href="https://kubernetes.io/docs/home/"&gt;https://kubernetes.io/docs/home/&lt;/a&gt; (and k8s github page?)&lt;/li&gt;
&lt;li&gt;Be sure that your desk/working space is cleared. Nothing on the wall, under your desk&lt;/li&gt;
&lt;li&gt;No smartwatch on your wrist&lt;/li&gt;
&lt;li&gt;Test result will be sent out within 36 hours after test completion. In my case, I waited for 34 hours.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Preparation is key&lt;/strong&gt;&lt;br&gt;
I used 2 website to get ready for the exam.&lt;/p&gt;

&lt;p&gt;1/ Udemy, CKA course&lt;br&gt;
&lt;a href="https://www.udemy.com/course/certified-kubernetes-administrator-with-practice-tests/"&gt;https://www.udemy.com/course/certified-kubernetes-administrator-with-practice-tests/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is very popular among CKA candidates. It covers 90% of exam topic(as of now), and starts from very basic.&lt;br&gt;
But, may be because of september updates, some topics are not covered(StatefulSets, Service account for example). For those, you have to take CKAD course.&lt;/p&gt;

&lt;p&gt;2/ Killer.sh&lt;br&gt;
&lt;a href="https://killer.sh/"&gt;https://killer.sh/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;No lecture part, only practice tests (and detailed answers). Comparing to udemy course, this is much harder. It is targeted to "hard" level of actual exam. So it is a good reharsal.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Some thoughts&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;I don't think you need to use tmux. In my opinion, it doesn't help much. If you are not used to it, learning cost is a bit high, and it doesn't pay off much.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;alias, export and auto completion of kubectl is your friends. Some people says auto completion is too heavy to use in exam environment, but it was no problem for me.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Let me know if you have any question, I'll answer that as possible!&lt;/p&gt;

</description>
      <category>kubernetes</category>
      <category>cka</category>
    </item>
    <item>
      <title>Install terraform on ubuntu</title>
      <dc:creator>aquila</dc:creator>
      <pubDate>Sat, 11 Apr 2020 09:17:52 +0000</pubDate>
      <link>https://dev.to/aquiladayc/install-terraform-on-ubuntu-52pm</link>
      <guid>https://dev.to/aquiladayc/install-terraform-on-ubuntu-52pm</guid>
      <description>&lt;p&gt;&lt;strong&gt;OS info&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;vagrant@ubuntu-xenial:~/downloads$ cat /etc/&lt;em&gt;release&lt;/em&gt;&lt;br&gt;
DISTRIB_ID=Ubuntu&lt;br&gt;
DISTRIB_RELEASE=16.04&lt;br&gt;
DISTRIB_CODENAME=xenial&lt;br&gt;
DISTRIB_DESCRIPTION="Ubuntu 16.04.6 LTS"&lt;br&gt;
VERSION="16.04.6 LTS (Xenial Xerus)"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Download zip file&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;wget https://releases.hashicorp.com/terraform/0.12.24/terraform_0.12.24_linux_amd64.zip&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Unzip it&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;unzip terraform_0.12.24_linux_amd64.zip&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Export PATH&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;export PATH="$PATH:&amp;lt;Path to terraform unzip file&amp;gt;"&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Reflect new path&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;source ~/.profile&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Test&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;terraform --version&lt;/code&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>JConsole connects to Guest OS</title>
      <dc:creator>aquila</dc:creator>
      <pubDate>Tue, 24 Dec 2019 07:06:13 +0000</pubDate>
      <link>https://dev.to/aquiladayc/jconsole-connects-to-guest-os-255h</link>
      <guid>https://dev.to/aquiladayc/jconsole-connects-to-guest-os-255h</guid>
      <description>&lt;p&gt;&lt;strong&gt;What I want to do&lt;/strong&gt;: Using JConsole, monitor java application which running on guest OS.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_UPXg3X1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/io3e7btfiqlrn7lesbbf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_UPXg3X1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/io3e7btfiqlrn7lesbbf.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;First attempt&lt;/strong&gt;&lt;br&gt;
I couldn't connect to guest os, so I learnt how to configure the network between Guest OS and Host OS&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--e6ECwh4I--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/lvunk96hiw0dlqlx0dnv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--e6ECwh4I--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/lvunk96hiw0dlqlx0dnv.png" alt="Alt text of image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Guest OS configuration&lt;/strong&gt;&lt;br&gt;
I'm using Vagrant to manage VMs(Virtual box) on my windows. Basically what I need to do is to configure Host-only adapter. Default adapter is NAT. This is mandatory. So we cannot change it to Host-only, instead, we need to add another adapter which is Host-only.&lt;/p&gt;

&lt;p&gt;This can be achieved by adding 1 line in Vagrantfile.&lt;br&gt;
&lt;strong&gt;config.vm.network "private_network", type: "dhcp"&lt;/strong&gt;&lt;br&gt;
or &lt;br&gt;
&lt;strong&gt;config.vm.network "private_network", ip: "192.168.33.10"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Then you can see that a new adapter is added by &lt;strong&gt;"ip a"&lt;/strong&gt;. You can try pinging to the ip. In below example, it is &lt;strong&gt;172.28.128.3&lt;/strong&gt;.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--4YFSlX5O--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/xia82timsnofb89d7c57.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--4YFSlX5O--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/xia82timsnofb89d7c57.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Java option&lt;/strong&gt;&lt;br&gt;
To be visible from Jconsile, you need 2 options.&lt;br&gt;
-Dcom.sun.management.jmxremote.port=PORT&lt;br&gt;
-Djava.rmi.server.hostname=IPADDRESS&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Connect as remote&lt;/strong&gt;&lt;br&gt;
You can connect to IPADDRESS:PORT in jconsole start screen.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Vagrant commands</title>
      <dc:creator>aquila</dc:creator>
      <pubDate>Sun, 22 Dec 2019 09:07:10 +0000</pubDate>
      <link>https://dev.to/aquiladayc/vagrant-commands-3c3k</link>
      <guid>https://dev.to/aquiladayc/vagrant-commands-3c3k</guid>
      <description>&lt;p&gt;Vagrant commands which often use&lt;/p&gt;

&lt;p&gt;1/ Initialization&lt;br&gt;
vagrant init &lt;/p&gt;

&lt;p&gt;2/ Start&amp;amp;Stop&lt;br&gt;
vagrant up&lt;br&gt;
vagrant halt&lt;/p&gt;

&lt;p&gt;3/ Remove vm&lt;br&gt;
vagrant box list (you can see the NAME of envs)&lt;br&gt;
vagrant box remove NAME&lt;/p&gt;

&lt;p&gt;4/ Remove whole config file&lt;br&gt;
vagrant global-status (to list env ids)&lt;br&gt;
vagrant destroy [name|id]&lt;/p&gt;

&lt;p&gt;5/ Export VM box &lt;br&gt;
vagrant package&lt;/p&gt;

&lt;p&gt;6/ Open VM box&lt;br&gt;
vagrant init &lt;br&gt;
vagrant up&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Capture ping on linux using Wireshark</title>
      <dc:creator>aquila</dc:creator>
      <pubDate>Mon, 25 Nov 2019 06:39:23 +0000</pubDate>
      <link>https://dev.to/aquiladayc/capture-ping-on-linux-using-wireshark-f2l</link>
      <guid>https://dev.to/aquiladayc/capture-ping-on-linux-using-wireshark-f2l</guid>
      <description>&lt;p&gt;On linux, I want to capture ping incoming/outgoing.&lt;br&gt;
Then I installed wireshark with yum command.&lt;br&gt;
&lt;b&gt;yum install wireshark&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;To watch ping,&lt;br&gt;
&lt;b&gt;tshark -2 -R icmp&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;"-R" is the option to filter on read, it must be used with -2.&lt;br&gt;
icmp is protocol which is used by ping&lt;/p&gt;

</description>
    </item>
    <item>
      <title>JVM tmpdir option</title>
      <dc:creator>aquila</dc:creator>
      <pubDate>Tue, 22 Oct 2019 09:13:38 +0000</pubDate>
      <link>https://dev.to/aquiladayc/jvm-tmpdir-option-65h</link>
      <guid>https://dev.to/aquiladayc/jvm-tmpdir-option-65h</guid>
      <description>&lt;p&gt;By default, JVM creates tmp dir under /tmp/&lt;br&gt;
This setting can be changed by adding JVM option &lt;br&gt;
&lt;b&gt;"-Djava.io.tmpdir=mytmpdir"&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;1 tricky thing is mytmpdir should be exist before starting Java process. &lt;/p&gt;

&lt;p&gt;So steps should be&lt;br&gt;
1/ add JVM option -Djava.io.tmpdir&lt;br&gt;
2/ mkdir mytmpdir&lt;br&gt;
3/ restart java process&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
