{"id":1918,"date":"2016-07-25T12:32:55","date_gmt":"2016-07-25T07:02:55","guid":{"rendered":"http:\/\/naveenbalani.com\/?p=1918"},"modified":"2019-12-18T23:17:10","modified_gmt":"2019-12-18T17:47:10","slug":"kubernetics-and-google-cloud-platform","status":"publish","type":"post","link":"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/","title":{"rendered":"Kubernetes and Google Cloud Platform"},"content":{"rendered":"<p>This article assumes you are familiar with Docker, if not <a title=\"Micro Services with Docker (Part 1 \u2013 The WHY)\" href=\"http:\/\/naveenbalani.com\/index.php\/2015\/05\/micro-services-with-docker-part-1-the-why\/\">click here to\u00a0read this\u00a0article<\/a>.<\/p>\n<div class=\"image-wrapper\">\u00a0Kubernetes is an open-source production grade container management system. It helps you effectively manage and scale\u00a0container applications in a clustered environment.<\/div>\n<div class=\"image-wrapper\"><\/div>\n<div class=\"image-wrapper\">Kubernetes is (extract from Github):<\/div>\n<div class=\"image-wrapper\">\n<ul>\n<li><strong>lean<\/strong>: lightweight, simple, accessible<\/li>\n<li><strong>portable<\/strong>: public, private, hybrid, multi cloud<\/li>\n<li><strong>extensible<\/strong>: modular, pluggable, hookable, composable<\/li>\n<li><strong>self-healing<\/strong>: auto-placement, auto-restart, auto-replication<\/li>\n<\/ul>\n<\/div>\n<p class=\"image-wrapper\" style=\"text-align: left;\">While deploying and orchestrating docker containers, you have two choices &#8211; Docker Swarm and Kubernetes. Docket Swarm was build specifically for solving docker orchestration in a standardised way and exposes standard docker APIs which can be used for communication with containers.\u00a0Kubernetes builds upon 15 years of experience of running production workloads at Google\u00a0and \u00a0provides first class support for running docker containers.<\/p>\n<div class=\"image-wrapper\" style=\"text-align: left;\"><\/div>\n<p class=\"image-wrapper\">Having tried both Docker Swarn and \u00a0Kubernetes in production environments, I feel the best way to build and orchestrate docker containers is through Kubernetes.\u00a0The horizontal auto scaling feature and self discovery via external descriptors makes its easier to\u00a0manage dependencies. \u00a0Kubernetes has \u00a0a learning curve but provides greater flexibility and features. I also feel the dependency and configuration\u00a0between containers is easier to maintain using\u00a0Kubernetes.<\/p>\n<div class=\"image-wrapper\" style=\"text-align: left;\"><\/div>\n<p class=\"image-wrapper\">One of the key feature that was missing in\u00a0Kubernetes earlier, was the ability to manage and run\u00a0federated services across cluster (geographical\u00a0distributions workloads).\u00a0This is an important feature, as we had to\u00a0manually take care of this via geo centric load balancers. \u00a0Kubernetes 1.3 (released on July 6) introduces cross-cluster service discovery, stateful workloads for applications and many more features.<\/p>\n<p style=\"text-align: left;\">We are running on GCP and I will post my experience when we move over to Kubernetes 1.3. So far GCP and Kubernetes have provided us one of the best option to build and scale container applications in a production environment. (Updated &#8211; <a href=\"https:\/\/navveenbalani.dev\/index.php\/articles\/setting-up-production-topology-on-google-cloud\/\">here is the link to the production article<\/a>)<\/p>\n<p class=\"image-wrapper\">\u00a0If you are building and orchestrating docker containers, give\u00a0Kubernetes a try and you won&#8217;t be disappointed. \u00a0Also do ensure you build services (micro services) the right\u00a0way and lay out right set of\u00a0dependency to leverage the power and capabilities of container management solutions.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This article assumes you are familiar with Docker, if not click here to\u00a0read this\u00a0article. \u00a0Kubernetes is an open-source production grade container management system. It helps you effectively manage and scale\u00a0container applications in a clustered environment. Kubernetes is (extract from Github): lean: lightweight, simple, accessible portable: public, private, hybrid, multi cloud extensible: modular, pluggable, hookable, composable [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2104,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[3,167,176],"tags":[263,178,177],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v16.0.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Kubernetes and Google Cloud Platform - Current and Future Technology Trends by Navveen Balani<\/title>\n<meta name=\"description\" content=\"Kubernetes and Google Cloud Platform - Articles\" \/>\n<link rel=\"canonical\" href=\"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Kubernetes and Google Cloud Platform - Current and Future Technology Trends by Navveen Balani\" \/>\n<meta property=\"og:description\" content=\"Kubernetes and Google Cloud Platform - Articles\" \/>\n<meta property=\"og:url\" content=\"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/\" \/>\n<meta property=\"og:site_name\" content=\"Current and Future Technology Trends by Navveen Balani\" \/>\n<meta property=\"article:published_time\" content=\"2016-07-25T07:02:55+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-12-18T17:47:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/navveenbalani.dev\/wp-content\/uploads\/2016\/07\/kubernetes.png\" \/>\n\t<meta property=\"og:image:width\" content=\"984\" \/>\n\t<meta property=\"og:image:height\" content=\"584\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\">\n\t<meta name=\"twitter:data1\" content=\"2 minutes\">\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/navveenbalani.dev\/#website\",\"url\":\"https:\/\/navveenbalani.dev\/\",\"name\":\"Current and Future Technology Trends by Navveen Balani\",\"description\":\"Current and Future Technology Trends by Navveen Balani\",\"publisher\":{\"@id\":\"https:\/\/navveenbalani.dev\/#\/schema\/person\/51f7ab14b20611d95e3c7fd4ea0950bf\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/navveenbalani.dev\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/#primaryimage\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/navveenbalani.dev\/wp-content\/uploads\/2016\/07\/kubernetes.png\",\"width\":984,\"height\":584},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/#webpage\",\"url\":\"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/\",\"name\":\"Kubernetes and Google Cloud Platform - Current and Future Technology Trends by Navveen Balani\",\"isPartOf\":{\"@id\":\"https:\/\/navveenbalani.dev\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/#primaryimage\"},\"datePublished\":\"2016-07-25T07:02:55+00:00\",\"dateModified\":\"2019-12-18T17:47:10+00:00\",\"description\":\"Kubernetes and Google Cloud Platform - Articles\",\"breadcrumb\":{\"@id\":\"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/navveenbalani.dev\/\",\"url\":\"https:\/\/navveenbalani.dev\/\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"position\":2,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/\",\"url\":\"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/\",\"name\":\"Kubernetes and Google Cloud Platform\"}}]},{\"@type\":\"Article\",\"@id\":\"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/#webpage\"},\"author\":{\"@id\":\"https:\/\/navveenbalani.dev\/#\/schema\/person\/51f7ab14b20611d95e3c7fd4ea0950bf\"},\"headline\":\"Kubernetes and Google Cloud Platform\",\"datePublished\":\"2016-07-25T07:02:55+00:00\",\"dateModified\":\"2019-12-18T17:47:10+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/#webpage\"},\"publisher\":{\"@id\":\"https:\/\/navveenbalani.dev\/#\/schema\/person\/51f7ab14b20611d95e3c7fd4ea0950bf\"},\"image\":{\"@id\":\"https:\/\/navveenbalani.dev\/index.php\/articles\/kubernetics-and-google-cloud-platform\/#primaryimage\"},\"keywords\":\"future-dev,google cloud platform,Kubernetes\",\"articleSection\":\"Articles,Docker,Kubernetes\",\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/navveenbalani.dev\/#\/schema\/person\/51f7ab14b20611d95e3c7fd4ea0950bf\",\"name\":\"Navveen\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/navveenbalani.dev\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/navveenbalani.dev\/wp-content\/uploads\/2019\/07\/navveen_balani.jpeg\",\"width\":200,\"height\":200,\"caption\":\"Navveen\"},\"logo\":{\"@id\":\"https:\/\/navveenbalani.dev\/#personlogo\"},\"sameAs\":[\"http:\/\/naveenbalani.com\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","_links":{"self":[{"href":"https:\/\/navveenbalani.dev\/index.php\/wp-json\/wp\/v2\/posts\/1918"}],"collection":[{"href":"https:\/\/navveenbalani.dev\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/navveenbalani.dev\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/navveenbalani.dev\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/navveenbalani.dev\/index.php\/wp-json\/wp\/v2\/comments?post=1918"}],"version-history":[{"count":28,"href":"https:\/\/navveenbalani.dev\/index.php\/wp-json\/wp\/v2\/posts\/1918\/revisions"}],"predecessor-version":[{"id":2884,"href":"https:\/\/navveenbalani.dev\/index.php\/wp-json\/wp\/v2\/posts\/1918\/revisions\/2884"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/navveenbalani.dev\/index.php\/wp-json\/wp\/v2\/media\/2104"}],"wp:attachment":[{"href":"https:\/\/navveenbalani.dev\/index.php\/wp-json\/wp\/v2\/media?parent=1918"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/navveenbalani.dev\/index.php\/wp-json\/wp\/v2\/categories?post=1918"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/navveenbalani.dev\/index.php\/wp-json\/wp\/v2\/tags?post=1918"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}