Slide 1

Slide 1 text

Introduction of Kubernetes & Rancher Kubernetes & Rancher Workshop #rancherjp © 2019 cyberblack28

Slide 2

Slide 2 text

Profile Twitter : cyberblack28 Blog : https://cyberblack28.hatenablog.com/ Job Educational Solution Architect Developer Advocate/Technical Evangelist Infrastructure Engineer Frontend Engineer Community Music,Live,FES !! Take a picture !! https://www.flickr.com/photos/cyberblack ISBN-10: 4798155373 ISBN-13: 978-4798155371 I wrote the Chapter 6 Rancher 2.0 part. Release on March 15,2018 #rancherjp #kujiraya #deepcn

Slide 3

Slide 3 text

Profile http://bit.ly/thinkit_rancher

Slide 4

Slide 4 text

Company We’re hireling !! Docker Kubernetes Rancher Cloud Native

Slide 5

Slide 5 text

Agenda 1. Market trend of Kubernetes 2. Introduction of Kubernetes 3. Introduction of Rancher 4. Kubernetes & Rancher Handson 5. Information

Slide 6

Slide 6 text

Market trend of Kubernetes

Slide 7

Slide 7 text

Market trend of Kubernetes Kubernetesは十分成熟したソフトウェアに到達したとし、 CNCFのインキュベーション段階からの卒業を発表 by Publickey 2018.3.8 「Incubation Stage」(インキュベーション段階)では、ドキュメントが十分に用意され、健 全な人数のコミッタが揃い、開発が進められていることなどが確認されます。そして、ガバナ ンスとコミットプロセスなどが明示化され、事例などが整い、CNCFのTechnical Operating Committee(TOC)の投票によって卒業が認められる。 卒業にあたり、Kubernetesは、より速く成長し、活気に満ちた、健全で幅広い技術コミュニティを維持できる、 これまでにないほど強力なポジション

Slide 8

Slide 8 text

Market trend of Kubernetes AWS上のKubernetesマネージドサービス「Amazon EKS」が正式版に by Publickey 2018.6.7 • Amazon EKSは昨年11月に米ラスベガスで行われたAWS re:Invent 2017で発表 • 米国東部 (バージニア北部) および米国西部 (オレゴン) のリージョン で利用可能。2018年12月末東京リージョンGA

Slide 9

Slide 9 text

Market trend of Kubernetes Azure Kubernetes Service (AKS) GA – New regions, more features, increased productivity by Microsoft Azure Blog 2018.6.13 • 「Microsoft Build 2018」にて「Azure Container Service」から「Azure Kubernetes Service」と改名 • オーストラリア東部、英国南部、米国西部、米国西部2、北ヨーロッパの各 リージョンで利用可能。今後数カ月以内に10のリージョンでの追加展開が 予定

Slide 10

Slide 10 text

Market trend of Kubernetes [速報]オンプレミスのKubernetesをGoogle Cloudで統合管理、 「Google Kubernetes Engine on-Prem」発表。Google Cloud Next ’18 by Publickey 2018.7.25 • ユーザのオンプレミス環境にGKE(Google Kubernetes Engine)と同等の Kubernetes環境を構築できる。 • Google Cloud ConsoleでオンプレミスのKubernetesクラスタの管理が可能 • Google Cloud Platform MarketplaceのKubernetes対応アプリの配布も対応

Slide 11

Slide 11 text

Market trend of Kubernetes [速報]Google、コンテナ実行環境をサーバレスで提供する「Serverless containers」発表。 Google Cloud Next ’18 by Publickey 2018.7.25 • Google Kubernetes Engine上で手軽にサーバレスなワークロードを実現 するためのアドオン「GKE serverless add-on」を発表 • コンテナベースのサーバレスアプリケーションをKubernetes環境で実現 するKnative(GKE serverless add-onとして提供される)を発表

Slide 12

Slide 12 text

Market trend of Kubernetes GitHub Goes All in on Kubernetes by THENEWSTACK 2017.8.16 SRE(Site Reliability Engineering)の事例としても興味深い!!

Slide 13

Slide 13 text

Introduction of Kubernetes

Slide 14

Slide 14 text

What’s kubernetes ? kubernetesは、Google社内のコンテナーオーケストレーションシステムであるBorgからインスパイ アされて開発されたOSSのコンテナーオーケストレーションツールです。 読み方:クーバーネーティス、クーバネティス、クバネティス等 略称:k8s(kubernetes) 8文字 現在は、CNCF(Cloud Native Computing Foundation)で管理され、 多数の企業が参加するコミュニティで開発されています。

Slide 15

Slide 15 text

What’s kubernetes ? • コンテナーのスケジューリング • ローリングアップデート • オートスケーリング • 死活監視 • コンテナーの自動修復 • サービスディスカバリ • ロードバランシング • ログ管理 • 頻繁なアプリケーションのデプロイを可能にす るシステム基盤 • 無停止によるリリース、高可用なシステム基盤 • 負荷に応じた伸縮自在なシステム基盤 Kubernetesの主な役割と実現 主な役割 実現

Slide 16

Slide 16 text

Kubernetes Architecture Master API UI CLI Node 3 Node 2 Node 1 Kubernetesは、構成要素としてMasterとNodeというコンポーネントがあります。 • Master クラスタの制御を受け持ち、スケジューリングやイベント検知など、クラスタの全体に関わる管理を担います。 • Node アプリケーションコンテナーの稼働場所となります。コンテナーランタイムが稼働し、Masterからの指示を受 けてコンテナーの起動等の実行を担います。 Node n Image Registry

Slide 17

Slide 17 text

Kubernetes Architecture API UI CLI API Server Scheduler Controller-Manager etcd Master コンポーネント 概要 API Server kubernetesのAPIです。利用者との通信、REST,CRUD,認証認可を行います。 Scheduler PodをどのNodeへデプロイするかスケジューリングします。 Controller-Manager クラスタを制御するコンポーネントで、Nodeの稼働状況監視、コンテナーのレプリケーション等、リソース定義 を具現化します。 etcd クラスタの全情報を格納するデータストアです。他のコンポーネントはAPI Serverを経由して、etcdに保存された 情報を監視して、更新があると直ちに通知される仕組みになっています。

Slide 18

Slide 18 text

Kubernetes Architecture Node コンポーネント 概要 Kubelet Nodeに配備されたPodのスケジューリングを監視して、YAMLファイルに基づいたContainer Runtimeを操作して Podの生成、更新、破棄などを行います。 Container Runtime kubeletから操作され、イメージの取得とコンテナーの実行を行います。Kubernetesはコンテナーランタイムの取 替が可能なため、Docker、containerd、rkt、cri-oなどのコンテナーランタイムを利用できます。 Kube-proxy 各Nodeで動作する、Serviceオブジェクトが持つCluster IPを転送するためのネットワークProxyです。デフォル トではiptablesが利用されます。 Master Kube-proxy Container Runtime Kubelet Node 1,2,3,n Pod Image Registry Pod Pod Pod Pod Pod Pod Pod Pod

Slide 19

Slide 19 text

Kubernetes Architecture Pod • 1つまたは複数のコンテナーをデプロイする最小単位 • Pod内のコンテナーは同じホスト名とIPアドレスを持つ • Pod内のコンテナーは同じNode上で稼働 • Pod内のコンテナーは共通のライフサイクルを持つ Container Volume Pod Container Container Podは、ボリュームとネットワークを共有する1個以上のコンテナーグループ。 IPアドレス ※例としてContainerを 3個としています。

Slide 20

Slide 20 text

Kubernetes Architecture Pod Node2 Container Pod Container Podは複数のNodeに跨ることはありません。 Node1 Node1 Container Pod Container コンテナー同士はlocalhost通信 IPアドレス Container Pod Node2 IPアドレス

Slide 21

Slide 21 text

Kubernetes Architecture Deployment & ReplicaSet Master Node 1,2,3,n Deployment 定義ファイル replicas:3 Controllers • ReplicationController D RS Kube proxy Container Runtime Kubelet Pod1 Pod2 Pod3 Controller-Manager D RS Deployment ReplicaSet 凡例 DeploymentはReplicaSetの作成、更新、履歴管理をします。 そして、ReplicaSetに指示して、Podのレプリカ数の調整 行い、定義ファイルのレプリカ数(replicas)を保証します。 また、Podに対してのローリングアップデート、ロール バックも行うことができます。 ReplicaSetは、定義された数のPodを常に起動させる仕組み です。 Image Registry

Slide 22

Slide 22 text

Kubernetes Architecture Service Client Node Service Pod Pod Pod 機能 概要 ClusterIP クラスタ内でPod同士が通信するためのプライベートIPアドレス ExternalIP 指定したNodeのIP:Portで受けたトラフィックをコンテナーに転送して、外部通信 NodePort 全NodeにおいてIP:Portで受けたトラフィックをコンテナーに転送して、外部通信 LoadBalancer LB経由でアクセス可能なService、L4ロードバランサ機能 endpoint Pod Pod Node Node LoadBalancer Serviceはクラスター内外からのリクエストをPodにアクセスする為のルーティングやDNS機能を提供するオブ ジェクトです。

Slide 23

Slide 23 text

Kubernetes Architecture Ingress Ingressは、外部 HTTP(S) トラフィックを内部Serviceにルーティングするためのルールと設定の集合をカプセ ル化するKubernetesリソースです。 Serviceがレイヤ4(TCP/UDP over IP)、Ingressがレイヤ7(HTTP(S))になります。 Service Pod Internet Pod Pod Ingress endpoint

Slide 24

Slide 24 text

Kubernetes Architecture Others PersistentVolumeClaim,PersistentVolume,StrageClass,Namespace,Label,Selector,ConfigMap,Secret等々、 kubernetesには、まだまだたくさんのオブジェクトやコンポーネントがあります。 詳細は是非こちらの書籍で!!

Slide 25

Slide 25 text

Introduction of Rancher

Slide 26

Slide 26 text

What’s Rancher ? • クラウド、オンプレミス問わずコンテナー環境の構築、運用するためのコンテナー管理プラット フォーム • ホスト(ノード)とコンテナーの管理、アプリケーションのデプロイ、オーケストレーション環 境の自動構築を実現 • 開発はRancher Labs(http://rancher.com/) • オープンソースソフトウェア(サポート付の有償版あり)

Slide 27

Slide 27 text

Difference between Rancher 1.6 and 2.1 1.6 2.1 • カタログ機能(docker-compose対応)によるワンク リックデプロイ • Networkとして、ipsec,vxlanをサポート • Storageとして、NFS,EBSをサポート • Architectureとして、Dockerベース • JavaとGoで書かれ、MySQLを使用 • マルチオーケストレーションサポート • Architectureとして、kubernetesベース • 100%Goで書かれ、etcdを使用 • オーケストレーションは、100% kubernetes • カタログ機能(Helm対応)によるワンクリックデプロイ • Networkは、flannel,canal,Calico等、kubernetesプラグイ ンを随時対応予定 • Storageは、kubernetesで利用可能なものは随時対応予定

Slide 28

Slide 28 text

Rancher v2.1.0 • Rancher1系のCattle OrchestratorからRancher2系のKubernetesのマイグレーション機能 • Windows Kubernetesクラスタの実験的サポート 「Rancher 2.1を使ってWindows NodeをKubernetesクラスタに参加させる」http://ur0.link/PjA3 Main outline • Latest - v2.1.7 - rancher/rancher:latest • Stable - v2.1.7 - rancher/rancher:stable Version Rancher Release - v2.1.0 http://urx3.nu/MJA0 Details

Slide 29

Slide 29 text

Feature of Rancher2.1 Kubernetes Clusters Create Import EKS GKE AKS vSphere Bare Metal Create,Import,Manage Kubernetes Clusters !! Manage “Kubernetes Everywhere”

Slide 30

Slide 30 text

Feature of Rancher2.1 One Click Deployment ! ! カタログ一覧から選択して、起動ボタンをクリックするだ けで、アプリケーションをデプロイできます。 Creating Private Catalogs ! ! 個人で作成したカタログも登録できます。

Slide 31

Slide 31 text

Feature of Rancher2.1 Major developer catalogs

Slide 32

Slide 32 text

Rancher2.1 Technical Architecture Kubelet Kubelet Cluster Controller Auth Proxy Rancher Server RKE Nodes Kubectl Kubernetes API Rancher UI CLI API Rancher Component Other Kubernetes Master Legend Rancher API Server etcd Cluster Agent 1 Cluster Agent 2 RKE Kubernetes Master GKE Nodes GKE Kubernetes Master Kubelet Kubelet Kubelet Kubelet コンポーネント 概要 Rancher API Server ユーザー管理機能、認証機能、名前空間のグループ化、全 NodeのIDを追跡 Cluster Controller クラスタ、プロジェクトへのアクセス制御ポリシー管理、 クラスタセットアップ Cluster Agents ワークロード管理、グローバルポリシーで定義されている ロールと制約のクラスタ適用、クラスタからRancher Serverへ情報伝播 Auth Proxy 全てのkubernetes APIの呼び出しをプロキシし、ローカル 認証、AD、GitHub等の認証サービスと統合

Slide 33

Slide 33 text

Rancher2.1 Deep Dive Documents https://www.slideshare.net/linecorp/lets-unbox-rancher-20-v200

Slide 34

Slide 34 text

Rancher Labs New Project “Rio” Kubernetes, Istio, Service Mesh like Docker Darren Shepherd Co-founder and Chief Architect at Rancher Labs, Inc. @ibuildthecloud https://github.com/rancher/rio https://www.slideshare.net/cyberblackvoom/whats-rio-112779732 Rioの資料はこちら!!

Slide 35

Slide 35 text

Get started with Rancher 2.1 OS Hardware Software Ubuntu 16.04 (64-bit) Memory: 4GB • 1.12.6 • 1.13.1 • 17.03.2 Red Hat Enterprise Linux 7.5 (64-bit) RancherOS 1.3.0 (64-bit) Step 2: Start the server $ sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher Web Access!! https:// Step 1: Prepare a Linux Host

Slide 36

Slide 36 text

Kubernetes & Rancher Handson

Slide 37

Slide 37 text

Kubernetes & Rancher Handson 1. Rancher Serverの構築 2. Kubernetes Clusterの構築 3. weavescopeカタログのデプロイ 4. RancherUIからkubectlコマンドの実行 5. Guestbookアプリケーションのデプロイ rancher-server rancher-host Guestbook Guestbook Rancher Server weavescope Agent Server

Slide 38

Slide 38 text

Kubernetes & Rancher Handson 1.Rancher Serverの構築 1.Dockerのインストール(2台:rancher-server,rancher-host) $ curl https://releases.rancher.com/install-docker/18.09.sh | sh 2.Rancher2.0 Serverのインストール(1台:rancher-serverのみ) $ sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher 3.ブラウザを起動して、RancherUIにアクセス(rancher-server) https://EXTERNAL-IP/ adminユーザのパスワード作成 Rancher Server URLの登録 ログイン完了 4.初回ログイン設定

Slide 39

Slide 39 text

5.Helmカタログの有効化 上部メニュー「Catalogs」を選択 「Enable」に変更 「Global」を選択 Kubernetes & Rancher Handson

Slide 40

Slide 40 text

Kubernetes & Rancher Handson 1.「Add Cluster」をクリック 2.Kubernetes Clusterの構築

Slide 41

Slide 41 text

Kubernetes & Rancher Handson 2.「CUSTOM」を選択、「Cluster Name」に任意名を入力、「Next」ボタンを押下 GKE,EKS,AKSと連携する場合に選択 EC2,Azure,DigitalOcean,vSpher等Cloud Providerと連携する場合に選択 既存のkubernetes Clusterと連携する場合に選択

Slide 42

Slide 42 text

Kubernetes & Rancher Handson 3.「Show advanced options」をクリック

Slide 43

Slide 43 text

Kubernetes & Rancher Handson 4.「Node Role」の「etcd」と「Control Plane」にチェック、「Node Address」の「Public Address」に2台目(rancher- host)のIPアドレスを入力、「Copy to Clipboard」ボタンを押下、そのコマンドを2台目(rancher-host)のコンソールで実行 後に「Done」ボタンを押下 1 2 3 5 4 rancher-host コンソール

Slide 44

Slide 44 text

Kubernetes & Rancher Handson 5.クラスタ名をクリック

Slide 45

Slide 45 text

Kubernetes & Rancher Handson 6.リソース状況を確認

Slide 46

Slide 46 text

Kubernetes & Rancher Handson 1.上部メニューから「Default」を選択、「Catalog Apps」を選択 3.weavescopeカタログのデプロイ 2.「Launch」ボタンを押下

Slide 47

Slide 47 text

Kubernetes & Rancher Handson 3.検索フィールドで「weave-scope」と入力して、「View Details」ボタンを押下

Slide 48

Slide 48 text

Kubernetes & Rancher Handson 4.「Launch」ボタンを押下

Slide 49

Slide 49 text

Kubernetes & Rancher Handson 5.デプロイ完了後、上部メニューから「Workloads」を選択

Slide 50

Slide 50 text

Kubernetes & Rancher Handson 6.「Load Balancing」をクリック

Slide 51

Slide 51 text

Kubernetes & Rancher Handson 7.「Add Ingress」ボタンを押下

Slide 52

Slide 52 text

Kubernetes & Rancher Handson 9.「Name」に任意名を入力、「Namespace」で「weave-scope」を選択、「Target」で「weave-scope- frontend-weave-scope」を選択、「Port」に「4040」と入力して、「Save」ボタンを押下 1 2 3 4 5

Slide 53

Slide 53 text

Kubernetes & Rancher Handson 10.自動生成されたURLをクリック

Slide 54

Slide 54 text

Kubernetes & Rancher Handson 11.weavescope起動を確認

Slide 55

Slide 55 text

Kubernetes & Rancher Handson 1.上部メニューから「rancher-kubernetes-cluster」を選択 4.RancherUIからkubectlコマンドの実行 RancherUIからkubectlコマンドを実行できるので利用します。 2.「Launch kubectl」ボタンを押下

Slide 56

Slide 56 text

Kubernetes & Rancher Handson 3.コンソール起動確認

Slide 57

Slide 57 text

Kubernetes & Rancher Handson 3.「kubectl get nodes」の実行 > kubectl get nodes NAME STATUS ROLES AGE VERSION rancher-host Ready controlplane,etcd,worker 1h v1.13.4 > kubectl version Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.5", GitCommit:"32ac1c9073b132b8ba18aa830f46b77dcceb0723", GitTreeState:"clean", BuildDate:"2018-06-21T11:46:00Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"} Server Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.4", GitCommit:"c27b913fddd1a6c480c229191a087698aa92f0b1", GitTreeState:"clean", BuildDate:"2019-02-28T13:30:26Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"linux/amd64"} 4.「kubectl version」の実行

Slide 58

Slide 58 text

Kubernetes & Rancher Handson 5.Guestbookアプリケーションのデプロイ 以下Guestbookアプリケーションのyamlファイルを利用して、デプロイします。 「https://raw.githubusercontent.com/kubernetes/examples/master/guestbook/all-in-one/guestbook-all-in-one.yaml」 1.Guestbookアプリケーションのデプロイ > kubectl apply -f https://raw.githubusercontent.com/kubernetes/examples/master/guestbook/all-in-one/guestbook-all-in-one.yaml service "redis-master" created deployment.apps "redis-master" created service "redis-slave" created deployment.apps "redis-slave" created service "frontend" created deployment.apps "frontend" created 2.デプロイの確認 > kubectl get services NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE frontend ClusterIP 10.43.161.216 80/TCP 24s kubernetes ClusterIP 10.43.0.1 443/TCP 1h redis-master ClusterIP 10.43.169.190 6379/TCP 24s redis-slave ClusterIP 10.43.85.124 6379/TCP 24s

Slide 59

Slide 59 text

Kubernetes & Rancher Handson 3.RancherUIからIngressを作成 上部メニューから「default」、「Add Ingress」ボタンを押下 1 2

Slide 60

Slide 60 text

Kubernetes & Rancher Handson 4.「Name」に任意名を入力、「Target」で「frontend」を選択、「Port」に「80」と入力、「Save」ボタン をクリック 1 2 3 4

Slide 61

Slide 61 text

Kubernetes & Rancher Handson 5.自動生成されたURLをクリック

Slide 62

Slide 62 text

Kubernetes & Rancher Handson 6.Guestbookアプリケーションの確認

Slide 63

Slide 63 text

Kubernetes & Rancher Handson 7.weavescopeからもGuestbookアプリケーションを確認

Slide 64

Slide 64 text

Kubernetes & Rancher Handson 付録1:guestbook-all-in-one.yaml apiVersion: v1 kind: Service metadata: name: redis-master labels: app: redis tier: backend role: master spec: ports: - port: 6379 targetPort: 6379 selector: app: redis tier: backend role: master --- apiVersion: apps/v1 # for k8s versions before 1.9.0 use apps/v1beta2 and before 1.8.0 use extensions/v1beta1 kind: Deployment metadata: name: redis-master spec: selector: matchLabels: app: redis role: master tier: backend replicas: 1 template: metadata: labels: app: redis role: master tier: backend spec: containers: - name: master image: k8s.gcr.io/redis:e2e # or just image: redis resources: requests: cpu: 100m memory: 100Mi ports: - containerPort: 6379 --- redis-master

Slide 65

Slide 65 text

Kubernetes & Rancher Handson 付録1:guestbook-all-in-one.yaml redis-slave apiVersion: v1 kind: Service metadata: name: redis-slave labels: app: redis tier: backend role: slave spec: ports: - port: 6379 selector: app: redis tier: backend role: slave --- apiVersion: apps/v1 # for k8s versions before 1.9.0 use apps/v1beta2 and before 1.8.0 use extensions/v1beta1 kind: Deployment metadata: name: redis-slave spec: selector: matchLabels: app: redis role: slave tier: backend replicas: 2 template: metadata: labels: app: redis role: slave tier: backend spec: containers: - name: slave image: gcr.io/google_samples/gb-redisslave:v1 resources: requests: cpu: 100m memory: 100Mi env: - name: GET_HOSTS_FROM value: dns # If your cluster config does not include a dns service, then to # instead access an environment variable to find the master # service's host, comment out the 'value: dns' line above, and # uncomment the line below: # value: env ports: - containerPort: 6379 ---

Slide 66

Slide 66 text

Kubernetes & Rancher Handson 付録1:guestbook-all-in-one.yaml frontend apiVersion: v1 kind: Service metadata: name: frontend labels: app: guestbook tier: frontend spec: # if your cluster supports it, uncomment the following to automatically create # an external load-balanced IP for the frontend service. # type: LoadBalancer ports: - port: 80 selector: app: guestbook tier: frontend --- apiVersion: apps/v1 # for k8s versions before 1.9.0 use apps/v1beta2 and before 1.8.0 use extensions/v1beta1 kind: Deployment metadata: name: frontend spec: selector: matchLabels: app: guestbook tier: frontend replicas: 3 template: metadata: labels: app: guestbook tier: frontend spec: containers: - name: php-redis image: gcr.io/google-samples/gb-frontend:v4 resources: requests: cpu: 100m memory: 100Mi env: - name: GET_HOSTS_FROM value: dns # If your cluster config does not include a dns service, then to # instead access environment variables to find service host # info, comment out the 'value: dns' line above, and uncomment the # line below: # value: env ports: - containerPort: 80

Slide 67

Slide 67 text

Kubernetes & Rancher Handson 付録2:Guestbookアプリケーション構成図

Slide 68

Slide 68 text

Information

Slide 69

Slide 69 text

Information Docker実践ガイド 出版社: インプレス ISBN-10: 4844339621 ISBN-13: 978-4844339625 Dockerの基本から、オンプレミスでコンテナー環境を築く上で必要なことが網羅さ れている非常に興味深い内容です。2019/2/18に第二版発売 Windowsコンテナー技術入門 出版社: インプレス ISBN-10: 4295000957 ISBN-13: 978-4295000952 Windowsコンテナーについて詳しく書かれている唯一の日本語書籍です。

Slide 70

Slide 70 text

Information プログラマのためのDocker教科書 第2版 出版社: 翔泳社 ISBN-10: 4798153222 ISBN-13: 978-4798153223 プログラマがインフラ環境からDockerまで体系的に学べる良書です。インフラエ ンジニアにも読み応えあります。 Docker実践入門――Linuxコンテナ技術の基礎から応用まで 出版社: 技術評論社 ISBN-10: 4774176540 ISBN-13: 978-4774176543 LinuxコンテナーからDockerまでを丁寧に解説し、Linuxコンテナーの仕組みから 理解できます。

Slide 71

Slide 71 text

Information 入門kubernetes 出版社: オライリージャパン ISBN-10: 4873118409 ISBN-13: 978-4873118406 こちらの書籍は、「Kubernetes Up & Running」の日本語訳です。訳者のお話によ ると、原書を元にかなり日本向けに改善されているとのことです。 コンテナ・ベース・オーケストレーション Docker/Kubernetesで作るクラウド時代のシステム基盤 出版社: 翔泳社 ISBN-10: 4798155373 ISBN-13: 978-4798155371 Google,RedHat,IBM,さくらインターネット,Rancherを中心にコンテナー単体からオーケスト レーションを始めるにあたりあらゆる側面からプラットフォームを紹介し、実践へ導く内容と なっています。

Slide 72

Slide 72 text

Information The Kubernetes Book 出版社: Independently published ISBN-10: 1521823634 ISBN-13: 978-1521823637 kubernetesの入門者向けの書籍で、イラスト図が多くわかりやすい内容です。 Kubernetes in Action 出版社: Manning Pubns Co ISBN-10: 1617293725 ISBN-13: 978-1617293726 内容は実践的となっていますが、こちらも図解が多くて分かりやすい書籍です。

Slide 73

Slide 73 text

Information Docker/Kubernetes 実践コンテナ開発入門 出版社:技術評論社 ISBN-10: 4297100339 ISBN-13: 978-4297100339 Docker/Kubernetesの基礎から、コンテナでのアプリケーション開発および運用のスタイルが網羅 されています。コンテナ開発のバイブル本といっても過言ではありません。 良書過ぎたので、感謝の気持ちを込めて書評を書きました!! https://cyberblack28.hatenablog.com/

Slide 74

Slide 74 text

Information Kubernetes完全ガイド 出版社:インプレス ISBN-10: 4295004804 ISBN-13: 978-4295004806 第1章 なぜKubernetesが必要なのか? 第2章 Kubernetes環境の選択肢 第3章 APIリソースとkubectl 第4章 Workloadsリソース 第5章 Discovery & LBリソース 第6章 Config & Storageリソース 第7章 ClusterリソースとMetadataリソース 第8章 リソース管理とオートスケーリング 第9章 ヘルスチェックとコンテナのライフサイクル 第10章 メンテナンスとノードの停止 第11章 高度で柔軟なスケジューリング 第12章 セキュリティ 第13章 マニフェストの汎用化を行うオープンソースソフトウェア 第14章 モニタリング 第15章 コンテナログの集約 第16章 CI/CD環境 第17章 マイクロサービスとServiceMesh 第18章 Kubernetesのアーキテクチャ 第19章 Kubernetesとこれから

Slide 75

Slide 75 text

Information しくみがわかるKubernetes Azureで動かしながら学ぶコンセプトと実践知識 出版社:翔泳社 ISBN-10: 4798157848 ISBN-13: 978-4798157849 第1部 導入編 第1章 コンテナーとKubernetes 第2章 Kubernetesの環境構築 第3章 Kubernetesを動してみよう 第2部 基本編 第4章 Kubernetesの要点 第5章 コンテナーアプリケーションの実行 第6章 アプリケーションのデプロイ 第3部 実践編 第7章 アーキテクチャと設計原則 第8章 可用性(Availability) 第9章 拡張性(Scalability) 第10章 保守性(Manageability) 第11章 リソース分離(Security) 第12章 可観測性(Observability)

Slide 76

Slide 76 text

Information Kubernetes実践入門 プロダクションレディなコンテナ&アプリケーションの作り方 出版社:技術評論社 ISBN-10: 4297104385 ISBN-13: 978-4297104382 本書は、コンテナイメージの作成・デプロイ・運用という一連の流れに沿って、 アプリケーション(コンテナ)を本番運用で使える状態(プロダクションレディ) にまで持っていく方法を解説します。 具体的には、アプリケーションの開発や運用に携わる人向けに、Kubernetesクラスタ上で、 アプリケーション(コンテナ)のデプロイ、更新、安定性の向上、セキュリティの強化、 ロギング、モニタリングなどを行う方法を扱います

Slide 77

Slide 77 text

Information みんなのDocker/Kubernetes 出版社:技術評論社 ISBN-10: 429710461X ISBN-13: 978-4297104610 Docker、そしてKubernetesの活用は広まりつつありますが、それに関する書籍の多くは入門にとどまるものも 多く、実際の利用に裏打ちされたノウハウについては未だまとまった情報がないのが現状です。 そんななか本書では、現場でDocker/Kubernetesを活用している読者に向けて、実践のための知識や事例の紹介 を行います。 第1部および第2部はDocker/Kubernetes活用で知られるZ Labのエンジニアによる手厚い解説、第3部はfreee、 Wantedly、CyberAgent、サイボウズといった幅広い企業で活躍するエンジニアによる事例紹介など、盛り沢山 な内容をお届けします! 2019.4.18発売

Slide 78

Slide 78 text

Information Certified Kubernetes Administrator(CKA) CNCFが主催するkubernetesの資格です。トレーニングコースと試験料合わせて$499,トレーニングコースのみ$299,試験のみ$300となっていま す。試験は、Webカメラで試験官が監視のもと行われるそうです。なので、日本からも受験できます。トレーニングコースは、Webブラウザを利 用したEラーニングです。申し込み先(https://goo.gl/pUZYvv) 日本語でのトレーニング、受験支援も始まるそうです!(https://www.creationline.com/lab/21622) Certified Kubernetes Application Developer(CKAD)

Slide 79

Slide 79 text

Information Kubernetes&Docker管理入門 KD100 トレーニング詳細:https://www.mirantis.co.jp/training/ Kubernetes&Docker管理 KD200 MIRANTISが主催するkubernetesの資格で、トレーニングとセットです。

Slide 80

Slide 80 text

Information 自己学習 https://www.katacoda.com/ Webブラウザ上でコマンドを打ちながらチュートリアルを実行していきます。 Docker,Kubernetes,Istio,Prometheus等、自己学習できます。

Slide 81

Slide 81 text

Information 自己学習 https://labs.play-with-docker.com/ Play with Docker https://labs.play-with-k8s.com/ Play with Kubernetes

Slide 82

Slide 82 text

Information 「今こそ始めよう!Kubernetes入門」 https://thinkit.co.jp/author/13290 「cndjpコミュニティ資料集」 https://speakerdeck.com/hhiroshell 参考サイト

Slide 83

Slide 83 text

Information 「コンテナ未経験新人が学ぶコンテナ技術入門」 http://ur0.work/NQqi 参考サイト

Slide 84

Slide 84 text

Information Rancher Meetup Tokyo #18 (モニタリングについて語ろう会) 2019/3/19 (tue) 19:00~21:00 株式会社リクルートテクノロジーズ 東京都中央区京橋1-6-1 8階 三井住友テプコビル

Slide 85

Slide 85 text

Information Cloud Native Tokyo #01 2019/4/10 (wed) 18:30~22:00 日本電信電話株式会社 ソフトウェアイノベーションセンタ 東京都港区芝浦 3-4-1 (グランパークタワー34F) 〜コンテナオーケストレーションプラットフォーム OpenShift & Rancher 特集〜

Slide 86

Slide 86 text

Docker / Kubernetes / Rancher One Day Training 2019.4.15 https://eventregist.com/e/cndf2019training 10:00〜10:20(20min):【概要編】コンテナーを取り巻く市場動向 10:20〜12:00(60min):【環境構築】 12:00〜13:00(60min):【昼休憩】セットアップ補助(お弁当をご用意します) 13:00〜15:00(110min+10min):【基礎編】Docker基礎 15:00〜16:30(80min+10min):【基礎編】Kubernetes(オーケストレーション) 16:30〜17:30(60min):【実践編】Rancher & Kubernetes #rancherjp Coupon Code rancherjp1000 #kujiraya Coupon Code kujiraya1000 CloudNative Days 2019 CloudNative Days Tokyo 2019 OpenStack Days Tokyo 2019 Toranomon Hills Forum, July 22-23, 2019 CloudNative Days Kansai 2019 2019.4.16 https://eventregist.com/e/cndf2019 JapanContainerDaysでも好評で完売した「1日でDocker/Kubernetesを基礎から学べる少数限定ト レーニング」を実施します。トレーニングを受けてカンファレンスに臨みましょう!

Slide 87

Slide 87 text

Thank you for your attention !!