GKEで学ぶKubernetes入門
by
Shouta Yoshikai
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
GKEで学ぶ Kubernetes入門 吉海 将太 1
Slide 2
Slide 2 text
自己紹介 2
Slide 3
Slide 3 text
自己紹介 吉海 将太(よしかい しょうた) 仕事 サーバーサイドエンジニア ▫ 開発 ▪ Python, Golang ▫ 運用 ▪ Kubernetes ▪ GKE ▪ GCP ▫ Webの連載 ▪ Kubernetesによる スケーラブルな Webアプリ環境の 構築 趣味 ▫ YouTube ▪ 輝夜 月が熱い ▫ クソアニメ ▪ ポプテピピック ▪ ダイナミックコード ▫ Action on Googleのア プリ開発 ▫ 電子工作 ▪ Raspberry Pi ▪ ESP8266 3
Slide 4
Slide 4 text
今日のゴール 4
Slide 5
Slide 5 text
● Kubernetesについて知る ● Kubernetesをざっくり使えるようになる ● 家に帰ったらKubernetesクラスタ立てる 今日ゴール 5
Slide 6
Slide 6 text
今日話すこと 6
Slide 7
Slide 7 text
今日話すこと 1. Kubernetesついて 2. なぜKubernetesなのか 3. Google Kubernetes Engineについて a. Google Kubernetes Engineを使う理由 4. Google Kubernetes Engineを使ってみよう i. Kubernetesの用語や概念について ii. ハンズオン 5. Kubernetesお役立ち情報 7
Slide 8
Slide 8 text
Kubernetesついて 8
Slide 9
Slide 9 text
“ みなさんに質問 Kubernetes使ったこと ありますか? 9
Slide 10
Slide 10 text
Kubernetesついて オープンソースのコンテナ化されたアプリケーションのためのオー ケストレーションシステム ▫ オートデプロイ ▫ スケーリング ▫ 管理 最新 Versionは1.9 略称はK8S Kubernetesはギリシャ語で航海長 発音はクーバネイティスが、英語圏では一般的 日本語の表記はクーべネティスが何故か多い・・・・・ 10
Slide 11
Slide 11 text
Kubernetesついて Github レポジトリhttps://github.com/kubernetes/kubernetes 言語はGolang GoogleのBorgというクラスタシステムを参考にオープンソース化し たのがKubernetes その時のプロジェクト名は Seven of Nine 参考: Google から世界へ : Kubernetes 誕生の物語 https://cloudplatform-jp.googleblog.com/2016/08/google-ku bernetes.html 11
Slide 12
Slide 12 text
Kubernetesついて Cloud Native Computing Foundation(以下 CNCF)という団体が 運営している Googleが最初のプロジェクトとして CNCFに寄贈 12
Slide 13
Slide 13 text
Kubernetesついて Github レポジトリhttps://github.com/kubernetes/kubernetes 言語はGolang GoogleのBorgというクラスタシステムを参考にオープンソース化し たのがKubernetes その時のプロジェクト名は Seven of Nine 参考: Google から世界へ : Kubernetes 誕生の物語 https://cloudplatform-jp.googleblog.com/2016/08/google-ku bernetes.html 13
Slide 14
Slide 14 text
なぜ Kubernetesなのか 14
Slide 15
Slide 15 text
なぜKubernetesなのか ▫ コンテナ管理ツールの需要が高い! ▪ アプリケーションをDockerコンテナ化するのが一般的 ▪ コンテナを運用する上でコンテナ管理ツール必要 ▫ デファクトスタンダードに! ▪ Google, AWS, Azureなど大手ベンダーが K8Sの Serviceを提供!!! 15
Slide 16
Slide 16 text
Google Kubernetes Engineについて 16
Slide 17
Slide 17 text
“ みなさんに質問 Google Cloud Platform 使ったことありますか? 17
Slide 18
Slide 18 text
Google Kubernetes Engineについ て ▫ Googleが提供しているKubernetesのクラスタの実行環境 ▫ ワンコマンドでKubernetesのクラスタが構築出来る ▫ 略称はGKE ▪ 昔はGoogle Container Engineという名前だった ▪ Google Container Engineなのに略称がGKEでもやっ とした。GCEだと既存のサービス名と被るためだと思わ れる 18
Slide 19
Slide 19 text
Google Kubernetes Engineについ て ▫ 料金 ▪ クラスタのノードを構築している Google Compute Engineのインスタンスの料金が発生 19
Slide 20
Slide 20 text
Google Kubernetes Engineを使う理由 20
Slide 21
Slide 21 text
Google Kubernetes Engineを使う 理由 ▫ K8Sのクラスタを簡単に構築出来る ▪ 導入コストと運用コストが低い ▪ オンプレにK8Sのクラスタをいちから構築するのは大変 ▫ アプリケーションのログの管理する仕組みが提供されている ▪ エラーのログが発生した時のアラートの設定が簡単 ▫ コンテナレジストリが GCPに用意されている 21
Slide 22
Slide 22 text
Google Kubernetes Engineを使う 理由 ▫ Kubernetes は、Google 自らが開発元!! ▪ Googleはどこベンダーよりも早く Kubernetesの環境を提供 22
Slide 23
Slide 23 text
Google Kubernetes Engineを 使ってみよう 23
Slide 24
Slide 24 text
概念や用語について K8Sにはいくつか専門用語や概念あるので、ここで触 れておきます。 ▫ クラスタ ▫ Master ▫ Node ▫ kubectl 24
Slide 25
Slide 25 text
クラスタとMaster クラスタ Kubernetesはクラスタで構成され、クラスタは 1つ以上のNodeと Masterで構成 Master Masterはクラスタ全体を参照することが可能で、 Masterが公開し ているエンドポイントを通して、クラスタを操作することができる。 MasterではKubernetes APIサーバーが実行されており、 RESTリク エストに応じて各リソース( Pod、Serviceなど)の作成や編集、削除 などの各種操作を提供 25
Slide 26
Slide 26 text
Nodeとkubectl Node Nodeは1つ以上で構成され、Masterに管理されています。 Node はDockerコンテナをサポートしており、デプロイされたコンテナは Node上で動作 kubectl Kubernetesクラスタに対して、コマンドを実行するためのコマンドラ インインターフェイス。基本的に kubectlのコマンドを叩いてk8sを操 作していきます。 26
Slide 27
Slide 27 text
27
Slide 28
Slide 28 text
概念や用語について Pod Podはアプリケーションを構成するDockerコンテナ のグループ Replica Set Podの複製を保持する機能を提供 Deployment PodとReplica Setの設定をまとめたもの 上記の2つのリソースをまとめて定義出来るので便 利 28
Slide 29
Slide 29 text
29
Slide 30
Slide 30 text
概念や用語について アプリケーション公開するために必要なもの Service アプリケーション(Pod)を外部に公開するためのリ ソース。ClusterIP、NodePort、LoadBalancerなど 様々な種類がある Ingress Serviceと組み合わせて使う。TLS対応などSVCで出 来ない機能を提供している 30
Slide 31
Slide 31 text
31
Slide 32
Slide 32 text
ハンズオン Kubernetesによるスケーラブルな Webアプリ環境の構築 1回目を参考にハンズオンしましょう https://codezine.jp/article/detail/10420?p=4 32
Slide 33
Slide 33 text
Kubernetes お役立ち情報 33
Slide 34
Slide 34 text
Kubernetes コミュニテイ 勉強会 ▫ Kubernetes Meetup Tokyo ▪ 3月8日 19:00 Kubernetes Meetup Tokyo #10 ▫ GCPUG ▪ Google Cloud Platformの勉強会 ▪ K8Sの勉強会ではないが、 Google Kubernetes Engineの勉強会が開催されたりする Slack ▫ http://slack.k8s.io/ ▪ 基本英語だがjp-enventsとjp-usersという日本専用の チャンネルがある 34
Slide 35
Slide 35 text
Kubernetes 書籍 ▫ Software Design 2018年3月号(2018/2/17 発売) ▫ 入門 Kubernetes (2018/3/22 発売予定) ▫ SRE サイトリライアビリティエンジニアリング (2017/08 発売) ▪ 運用周りに興味があるなら一読すると幸せになれま す。 ▪ Kubernetesの話はないけどKubernetesを運用する 上でめっちゃ役立つ内容がてんこ盛り 35
Slide 36
Slide 36 text
おまけ 36
Slide 37
Slide 37 text
インターン募集中!!!! インターンのエンジニア募集中!! 主にWebアプリケーションの開発!! Python, Angular 新しい技術にバンバンされるます! GKEにも触れます! 下記のURLの応募フォームから募集出来ます!!!! https://www.kabuku.co.jp/jobs/intern-software-developer 37
Slide 38
Slide 38 text
38
Slide 39
Slide 39 text
Google Assistantのアプリを作りまし た(個人) スマホにインストールした Google AssistantかGoogle Homeに "怒ってないよにつないで "って話しかけてみて下さい。 「えいえい怒った?」と話しかけると「怒ってないよ♡」って返します。 アプリのペー ジ:https://assistant.google.com/services/a/uid/0000001a6f41 b0be?hl=ja 初期アプリ名はクソアプリ、アプリ名で審査に落ちたので改名 39
Slide 40
Slide 40 text
技術書典4にサークル参加します (個人) 技術書展について ▫ 日時 2018/04/22 (日) 場所 秋葉原UDX アキバ・スクエア 主催 TechBooster/達人出版会 一般参加 無料 ▫ 技術書のみの同人誌即売会 サークル名 ▫ 俺のLab. 配布物予定 ▫ 音声操作が出来る四足歩行ロボの作り方 40