<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>column on takac.dev</title>
    <link>https://takac.dev/categories/column/</link>
    <description>Recent content in column on takac.dev</description>
    <generator>Hugo -- gohugo.io</generator>
    <lastBuildDate>Thu, 08 Oct 2020 00:50:00 +0900</lastBuildDate><atom:link href="https://takac.dev/categories/column/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>3 reasons why I recommend Kubernetes for pre-growth start-up</title>
      <link>https://takac.dev/3-reasons-why-i-recommend-kubernetes-for-pre-growth-start-up/</link>
      <pubDate>Thu, 08 Oct 2020 00:50:00 +0900</pubDate>
      
      <guid>https://takac.dev/3-reasons-why-i-recommend-kubernetes-for-pre-growth-start-up/</guid>
      <description>
        
          &lt;p&gt;I&#39;ve been operating the Kubernetes cluster in my company since I joined. Let me share my opinion about why I recommend Kubernetes to pre-growth start-up companies.&lt;/p&gt;
&lt;p&gt;Before I explain, I&#39;m not crazy about Kubernetes. I understand to choose some other ways, depending on the company, the business environment, the team philosophy, and so on.&lt;/p&gt;
&lt;p&gt;About two years ago, I joined the current start-up company. First of all, I discuss with our development engineers what&#39;s the best way to grow our service? As a result, I decided to use EKS which is a managed Kubernetes service by AWS for the following reasons.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I already learned about Kubernetes when I worked in my previous company.&lt;/li&gt;
&lt;li&gt;The engineers who already joined before were trying to containerize.&lt;/li&gt;
&lt;li&gt;I explained the advantages of Kubernetes to the engineers and they agreed with that.&lt;/li&gt;
&lt;li&gt;They have to move their system to AWS.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;As you know, it&#39;s difficult to learn Kubernetes so I don&#39;t recommend it to people who haven&#39;t learned yet. And also, it depends on the company or team member&#39;s skill, there&#39;s some other option like ECS, docker swarm and more.&lt;/p&gt;
&lt;p&gt;So, I&#39;ve operated the Kubernetes cluster for about 2 years. And these are its advantages.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Scalability&lt;/li&gt;
&lt;li&gt;Container orchestration tool will be needed soon&lt;/li&gt;
&lt;li&gt;Portability&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Let me explain one by one.&lt;/p&gt;
&lt;p&gt;First, there&#39;s a possibility that start-up companies will grow rapidly and suddenly. At the time, the infrastructure team should avoid becoming a hindrance to growth. When the system scales to 100x bigger, if it takes time 100x to set up, that&#39;s kind of a horrible system. And also, when it&#39;s an emergency, scale the system by infrastructure engineer only by adding nodes, pods, and scaling up DB. On the other hand, modify the application to fit Kubernetes, it&#39;ll be scalable because it&#39;s necessary to eliminate all dependencies on the running server.&lt;/p&gt;
&lt;p&gt;Second, sooner or later some container orchestration tools will be necessary. It will be hard to move to Kubernetes from another environment like docker-compose because it&#39;s different terminology and philosophy. So it&#39;s better to use and get used to it before growth.&lt;/p&gt;
&lt;p&gt;Last, sometimes the start-up company will need to move their system to the other cloud provider when they get some monetary support or because of some investor&#39;s intention. At that time, if the servers are not reproducible, it must be a nightmare. Of course, if they use some cloud provider&#39;s managed service like RDS, it will take time but if most of the applications are running on the Kubernetes cluster, it will be helpful. Even though the provider&#39;s managed orchestration service like ECS is good, it will bring hard work in that situation.&lt;/p&gt;
&lt;p&gt;As I explained above, I highly recommend Kubernetes to pre-growth start-up companies but it&#39;s conditional. And as I said at the beginning, this is not the only way in every environment and organization. So I understand some people disagree with my option.&lt;/p&gt;

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