让我们漫步在Kubernetes的世界中吧

首先

这个帖子是2016年Kubernetes Advent Calendar的第一天投递。从今年8月开始,我在工作中进行了Kubernetes的验证,由于兴趣盎然,我决定制作了这个Advent Calendar,结果除了我还有其他24位参与者加入进来了。现在我很期待看到会有什么样的帖子集聚在这里。大家,请多多关照!

让我们来探索Kubernetes的世界吧!

因此,我正在使用Kubernetes进行各种验证。由于这是第一次,我打算介绍一些关于Kubernetes的信息,然后一起探索这个世界。

Kubernetes的起源故事

首先,让我们从探索Kubernetes的诞生方式开始。

    Google から世界へ : Kubernetes 誕生の物語

这篇文章来自于Google Cloud Platform日本博客。文章讲述了基于Google内部使用的Borg集群管理系统,使用Docker作为容器管理系统,从而创造了Kubernetes这样的系统。

谷歌提供的Google Container Engine是在Kubernetes上构建的集群管理和编排系统,可以使用Docker容器进行Kubernetes管理。

另外,我最近在新闻中得知Azure容器服务也可以选择使用Kubernetes作为编排工具。

了解Kubernetes

如果想了解Kubernetes的工作原理,可以查看官方网页上的“What is Kubernetes?”,里面介绍了下面的幻灯片。

    WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, and operations

Kubernetes的版本目标是1.1,但同时对Kubernetes的基本架构和主要功能(Pods、Labels、ReplicationControllers、Services等)进行了说明。

此外,我推荐您查看这份幻灯片,其中包含了关于Kubernetes 1.3和1.4的说明。

    • Kubernetes: The Latest and Greatest

Kubernetes 1.4 Update @ DevFest Kansai

GO在Google容器引擎上部署的Kubernetes是迄今最大的部署案例。

据说《 GO》使用Google Container Engine部署在Kubernetes上,我也每天玩。虽然Kubernetes有多种应用,但我最为吸引的就是《 GO》的案例。可以在这份幻灯片中看到介绍。

    GOとGCP

阅读方式和缩写

顺便说一下,我刚开始也好奇“Kubernetes”怎么读。但是在YouTube等地确认后,似乎“クゥーバネティス”是正确的发音。此外,由于字数较长,缩写时可使用“k8s”。

开放补贴

红帽通过在Kubernetes上添加必要的企业功能,提供了OpenShift作为一个面向企业的平台。OpenShift在Kubernetes的基础上添加了运维所需的工具集。我自己也稍微试用了一下,基本上是使用Kubernetes,所以只要会使用Kubernetes,就可以无障碍地使用OpenShift。

织物八

我想再介绍一个我最近对个人尤其关注的项目,那就是fabric8。fabric8是由Red Hat支持的开源社区,官方网页上的介绍如下:

fabric8 is an opinionated and open source Integrated Developer Platform 
for the Continuous Delivery of Microservices using Kubernetes and Jenkins.

据说,我主要使用Java,但fabric8提供了fabric8 maven插件和Jenkins管道功能来部署应用程序到Kubernetes,还提供了为Kubernetes定制的spring-cloud-kubernetes,所以我正在尝试使用它们并且目前很满意。

让我们在本地环境搭建Kubernetes吧!

要尝试使用Kubernetes,最方便的方法是使用Google容器引擎或Azure容器服务。但是,如果使用minikube,可以在本地机器上轻松搭建环境。

尽管Miniube的安装看起来很简单,但在我尝试过程中,我还是遇到了一些问题…

经过多次尝试和错误,我目前最喜欢的是使用之前介绍的fabric8提供的fabric8 maven插件来进行安装。虽然我认为这更适合Java用户,但只要安装了Java8和Maven 3.3.9,就可以通过下面的命令创建minikube环境。

mvn io.fabric8:fabric8-maven-plugin:3.2.7:cluster-start

(もう少し環境面を補足すると私の環境は、MacBook Air 11-inch, Mid 2012で、メモリは8G、brew installでxhyveを入れてあります)

这个方法会在下一篇文章中介绍,通过使用机场的Wifi,你可以看到一个愉快的老先生一边喝酒一边用一个命令搭建minikube环境的情况 🙂

    Installing Kubernetes in One Command With Drink in Hand

最后

所以呢?我們在散步的過程中介紹了一些與Kubernetes相關的話題。我相信在接下來的聖誕月曆文章中,我們能夠提供更多關於Kubernetes的信息,希望寫作和閱讀的人都能輕鬆愉快地享受。

另外,在12月3日(星期六)举办的JJUG CCC 2016 FALL活动中,我将以标题为“利用Docker开发Spring Cloud应用程序并在Kubernetes上部署(#ccc_g6)”的演讲主题进行演讲,请对此感兴趣的人一定要来听!活动结束后,我也计划将演讲资料发布在这里。

追記

我已经进行了演讲。很高兴能在 Kubernetes 圣诞节日历活动中与参与者面对面交流。这是当天的资料,请您一起查阅,我会非常开心的。

    Spring Cloudアプリケーションの開発にDockerを活用し、Kubernetes上にデプロイするまで
bannerAds