SlideShare una empresa de Scribd logo
1 de 73
Introduction of
Kubernetes & Rancher
2018.7.11
DevLOVE 〜Kubernetesによるコンテナオーケストレーション〜
© 2018 cyberblack28
Profile
Twitter:cyberblack28
Job
Infrastructure Engineer
Frontend Engineer
Educational Solution Architect
Community
Hobby1: Music,Live,FES !!
Hobby2: Take a picture !!
https://www.flickr.com/photos/cyberblack
ISBN-10: 4798155373
ISBN-13: 978-4798155371
第6章 Rancher2.0の部
分を執筆しました。
2018年3月15日発売
#rancherjp
#kujiraya
#deepcn
Agenda
1. Market trend of Kubernetes
2. Introduction of Kubernetes
3. Introduction of Rancher
4. Kubernetes & Rancher Handson
5. Information
Market trend of Kubernetes
Market trend of Kubernetes
Kubernetesは十分成熟したソフトウェアに到達したとし、
CNCFのインキュベーション段階からの卒業を発表
by Publickey 2018.3.8
「Incubation Stage」(インキュベーション段階)では、ドキュメントが十分に用意され、健全な人数のコミッタが
揃い、開発が進められていることなどが確認されます。
そして、ガバナンスとコミットプロセスなどが明示化され、事例などが整い、CNCFのTechnical Operating
Committee(TOC)の投票によって卒業が認められる。
卒業にあたり、Kubernetesは、より速く成長し、活気に満ちた、健全で幅広い技術
コミュニティを維持できる、これまでにないほど強力なポジション
Market trend of Kubernetes
AWS上のKubernetesマネージドサービス「Amazon EKS」が正式版
に by Publickey 2018.6.7
• Amazon EKSは昨年11月に米ラスベガスで
行われたAWS re:Invent 2017で発表
• 米国東部 (バージニア北部) および米国西
部 (オレゴン) のリージョンで利用可能。
そのほかのリージョンでの対応は今後発表
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のリージョンでの追加展開が予定
Market trend of Kubernetes
Kubernetes on Windows ServerをDocker EEでサポート。Linuxと
Windows Serverのコンテナオーケストレーションを統一的に管理。
DockerCon 2018 by Publickey 2018.6.14
• Docker EEでWindows Server版
Kubernetesでサポート
Market trend of Kubernetes
VMwareもKubernetesのマネージドサービス「VMware Kubernetes
Engine」提供へ。VMware Cloud on AWSを皮切りにAzure版も予定
by Publickey 2018.6.28
• VMware CloudのサービスとしてKubernetesのマネー
ジドサービス「VMware Kubernetes Engine」(VKE)
を提供
• Kubernetesの複雑さを抽象化した「SmartCluster」を
提供
• VMwareもKubernetesをマルチクラウド戦略の軸に
Market trend of Kubernetes
GitHub Goes All in on Kubernetes
by THENEWSTACK 2017.8.16
SRE(Site Reliability Engineering)の事例としても興味深い!!
Market trend of Kubernetes
昨年、Distribution,PaaS,Managed,Installation/Operationsというカ
テゴリに分けて、Kubernetesに関係するサービスやツールを調べてみ
ました。
https://qiita.com/cyberblack28/items/e4836b4ff06156f69588
※1年以上前の情報です。
Investigating of Kubernetes Platform
Introduction of Kubernetes
What’s kubernetes ?
kubernetesは、Google社内のコンテナーオーケストレーションシステム
であるBorgからインスパイアされて開発されたOSSのコンテナーオーケ
ストレーションツールです。
読み方:クーバーネーティス、クーバネティス、クバネティス等
略称:k8s(kubernetes)
8文字
現在は、CNCF(Cloud Native Computing
Foundation)で管理され、多数の企業が参加す
るコミュニティで開発されています。
What’s kubernetes ?
• コンテナーのスケジューリング
• ローリングアップデート
• オートスケーリング
• 死活監視
• コンテナーの自動修復
• サービスディスカバリ
• ロードバランシング
• ログ管理
• 頻繁なアプリケーションのデプ
ロイを可能にするシステム基盤
• 無停止によるリリース、高可用
なシステム基盤
• 負荷に応じた伸縮自在なシステ
ム基盤
Kubernetesの主な役割と実現
主な役割 実現
Kubernetes Architecture
Master
API
UI
CLI
Node 3
Node 2
Node 1
Kubernetesは、構成要素としてMasterとNodeというコンポーネントがあります。
• Master
クラスタの制御を受け持ち、スケジューリングやイベント検知など、クラスタの
全体に関わる管理を担います。
• Node
アプリケーションコンテナーの稼働場所となります。コンテナーランタイムが稼
働し、Masterからの指示を受けてコンテナーの起動等の実行を担います。
Node n
Image Registry
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に保存された情報を監視して、更新があると直ちに通知される仕
組みになっています。
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
PodPod
Pod PodPod
Pod PodPod
Kubernetes Architecture
Pod
• 1つまたは複数のコンテナーをデプロイする最小単位
• Pod内のコンテナーは同じホスト名とIPアドレスを持つ
• Pod内のコンテナーは同じNode上で稼働
• Pod内のコンテナーは共通のライフサイクルを持つ
Container
Volume
Pod
Container Container
Podは、ボリュームとネットワークを共有する1個以上のコンテナーグループ。
IPアドレス
※例としてContainerを
3個としています。
Kubernetes Architecture
Pod
Node2
Container
Pod
Container
Podは複数のNodeに跨ることはありません。
Node1
Node1
Container
Pod
Container
コンテナー同士はlocalhost通信
IPアドレス
Container
Pod
Node2
IPアドレス
Kubernetes Architecture
Deployment & ReplicaSet
Master
Deployment
定義ファイル
Node 1,2,3,n
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
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機能を提供するオブジェクトです。
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
Kubernetes Architecture
Others
PVC,PV,StrageClass,Namespace,Label,Selector,ConfigMap,Secret等々、
kubernetesには、まだまだ沢山のオブジェクトやコンポーネントがあります。
詳細は是非こちらの書籍で!!
Introduction of Rancher
What’s Rancher ?
• クラウド、オンプレミス問わずコンテナー環境の構築、運用するため
のコンテナー管理プラットフォーム
• ホスト(ノード)とコンテナーの管理、アプリケーションのデプロイ、
オーケストレーション環境の自動構築を実現
• 開発はRancher Labs(http://rancher.com/)
• オープンソースソフトウェア(サポート付の有償版あり)
Difference between Rancher 1.6 and 2.0
1.6 2.0
• カタログ機能(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で利用可能なも
のは随時対応予定
Rancher2.0 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等の認証サー
ビスと統合
Feature of Rancher2.0
One Click Deployment ! !
カタログ一覧から選択して、起動ボタンをクリックするだ
けで、アプリケーションをデプロイできます。
Creating Private Catalogs ! !
個人で作成したカタログも登録できます。
Feature of Rancher2.0
Major developer catalogs
Feature of Rancher2.0
Kubernetes
Clusters
Create
Import EKS
GKE
AKS
vSphere
Bare
Metal
Create,Import,Manage Kubernetes Clusters !!
Manage
Get started with Rancher 2.0
OS Hardware Software
Ubuntu 16.04 (64-bit) Memory: 4GB • 1.12.6
• 1.13.1
• 17.03.2Red Hat Enterprise Linux
7.5 (64-bit)
RancherOS 1.3.0 (64-bit)
Step 1: Prepare a Linux Host
Step 2: Start the server
$ sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher
Web Access!! https://<server_ip>
Kubernetes & Rancher Handson
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
Kubernetes & Rancher Handson
1.Rancher Serverの構築
1.Instanceを2つ準備
項目 入力概要
名前 rancher-server
リージョン asia-northeast1(東京)
ゾーン asia-northeast1-b
マシンタイプ vCPUx1
ブートディスク
Ubuntu 16.04 LTS
ディスクサイズ80GB
ファイアウォール HTTPトラフィックを許可する、HTTPSトラフィックを許可する、両方にチェックを入れます。
GCP(Google Cloud Platform)を利用します。ファイアウォールのルールは全許可を前提とします。
項目 入力概要
名前 rancher-host
リージョン asia-northeast1(東京)
ゾーン asia-northeast1-b
マシンタイプ vCPUx1
ブートディスク
Ubuntu 16.04 LTS
ディスクサイズ80GB
ファイアウォール HTTPトラフィックを許可する、HTTPSトラフィックを許可する、両方にチェックを入れます。
1台目
2台目
Kubernetes & Rancher Handson
2.Dockerのインストール(2台:rancher-server,rancher-host)
$ curl https://releases.rancher.com/install-docker/17.03.2.sh | sh
3.Rancher2.0 Serverのインストール(1台:rancher-serverのみ)
$ sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher
4.ブラウザを起動して、RancherUIにアクセス(rancher-server)
https://EXTERNAL-IP/
adminユーザのパスワー
ド作成
Rancher Server URLの
登録
ログイン完了
5.初回ログイン設定
Kubernetes & Rancher Handson
6.Helmカタログの有効化
上部メニュー「Catalogs」を選択
「Enable」に変更 「Global」を選択
Kubernetes & Rancher Handson
1.「Add Cluster」をクリック
2.Kubernetes Clusterの構築
Kubernetes & Rancher Handson
2.「CUSTOM」を選択、「Cluster Name」に任意名を入力、「Next」ボタンを押下
GKE,EKS,AKSと連携する
場合に選択
EC2,Azure,DigitalOcean,
vSpher等Cloud Provider
と連携する場合に選択
既存のkubernetes Clusterと連
携する場合に選択
kubernetesのバー
ジョンを選択できま
す。
Networkで
Flannel,Calico,Canalを選択でき
ます。
Kubernetes & Rancher Handson
3.「Node Role」の「etcd」と「Control Plane」にチェック、「Node Address」の
「Public Address」と「Internal Address」に2台目(rancher-host)のIPアドレスを入力、
「Copy to Clipboard」ボタンを押下、そのコマンドを2台目(rancher-host)のコンソール
で実行後に「Done」ボタンを押下
1
2
3
5 4
rancher-host
コンソール
Kubernetes & Rancher Handson
4.クラスタ名をクリック
Kubernetes & Rancher Handson
5.リソース状況を確認
Kubernetes & Rancher Handson
1.上部メニューから「Default」を選択、「Catalog Apps」を選択
3.weavescopeカタログのデプロイ
2.「Launch」ボタンを押下
Kubernetes & Rancher Handson
3.「weave-scope」の「View Details」ボタンを押下
Kubernetes & Rancher Handson
4.「Launch」ボタンを押下
Kubernetes & Rancher Handson
5.デプロイ完了後、上部メニューから「Workloads」を選択
Kubernetes & Rancher Handson
6.「Load Balancing」をクリック
Kubernetes & Rancher Handson
7.「Add Ingress」ボタンを押下
Kubernetes & Rancher Handson
9.「Name」に任意名を入力、「Namespace」で「weave-scope」を選択、
「Target」で「weave-scope-frontend-weave-scope」を選択、「Port」に
「4040」と入力して、「Save」ボタンを押下
1 2
3 4
5
Kubernetes & Rancher Handson
10.自動生成されたURLをクリック
Kubernetes & Rancher Handson
11.weavescope起動を確認
Kubernetes & Rancher Handson
1.上部メニューから「Cluster.k8s-cluster」を選択
4.RancherUIからkubectlコマンドの実行
RancherUIからkubectlコマンドを実行できるので利用します。
2.「Launch kubectl」ボタンを押下
Kubernetes & Rancher Handson
3.コンソール起動確認
Kubernetes & Rancher Handson
3.「kubectl get nodes」の実行
> kubectl get nodes
NAME STATUS ROLES AGE VERSION
rancher-host Ready controlplane,etcd,worker 39m v1.10.5
> kubectl version
Client Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.8",
GitCommit:"c138b85178156011dc934c2c9f4837476876fb07", GitTreeState:"clean",
BuildDate:"2018-05-21T19:01:12Z", GoVersion:"go1.9.3", Compiler:"gc",
Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.5",
GitCommit:"32ac1c9073b132b8ba18aa830f46b77dcceb0723", GitTreeState:"clean",
BuildDate:"2018-06-21T11:34:22Z", GoVersion:"go1.9.3", Compiler:"gc",
Platform:"linux/amd64"}
4.「kubectl version」の実行
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 "redis-master" created
service "redis-slave" created
deployment "redis-slave" created
service "frontend" created
deployment "frontend" created
Kubernetes & Rancher Handson
2.デプロイの確認
> kubectl get services
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
frontend ClusterIP 10.43.52.144 <none> 80/TCP 1m
kubernetes ClusterIP 10.43.0.1 <none> 443/TCP 47m
redis-master ClusterIP 10.43.31.61 <none> 6379/TCP 1m
redis-slave ClusterIP 10.43.55.29 <none> 6379/TCP 1m
3.RancherUIからIngressを作成
上部メニューから「default」、「Workloads」を選択、「Load Balancing」を
クリック、「Add Ingress」ボタンを押下
1 2
3 4
Kubernetes & Rancher Handson
4.「Name」に任意名を入力、「Target」で「frontend」を選択、「Port」に
「80」と入力、「Save」ボタンをクリック
1
2 3
4
Kubernetes & Rancher Handson
5.自動生成されたURLをクリック
Kubernetes & Rancher Handson
6.Guestbookアプリケーションの確認
Kubernetes & Rancher Handson
7.weavescopeからもGuestbookアプリケーションを確認
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
Kubernetes & Rancher Handson
付録1:guestbook-all-in-one.yaml
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
---
redis-slave
Kubernetes & Rancher Handson
付録1:guestbook-all-in-one.yaml
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
redis-frontend
Kubernetes & Rancher Handson
付録2:Guestbookアプリケーション構成図
Information
Information
Docker実践ガイド
出版社: インプレス
ISBN-10: 4844339621
ISBN-13: 978-4844339625
Dockerの基本から、オンプレミスでコンテナー
環境を築く上で必要なことが網羅されている非
常に興味深い内容です。
Windowsコンテナー技術入門
出版社: インプレス
ISBN-10: 4295000957
ISBN-13: 978-4295000952
Windowsコンテナーについて詳しく書かれてい
る唯一の日本語書籍です。
Information
プログラマのためのDocker教科書 第2版
出版社: 翔泳社
ISBN-10: 4798153222
ISBN-13: 978-4798153223
プログラマがインフラ環境からDockerまでを体
系的に学べる良書です。インフラエンジニアに
も読み応えあります。
Docker実践入門――Linuxコンテナ技術の基礎から応用まで
出版社: 技術評論社
ISBN-10: 4774176540
ISBN-13: 978-4774176543
LinuxコンテナーからDockerまで丁寧に解説し、
Linuxコンテナーの仕組みから理解できます。
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を
中心にコンテナー単体からオーケストレーションを始
めるにあたりあらゆる側面からプラットフォームを紹
介し、実践へ導く内容となっています。
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
内容は実践的となっていますが、こちらも図解
が多くて分かりやすい書籍です。
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(CKA)
Information
Kubernetes&Docker管理入門 KD100
トレーニング詳細:https://www.mirantis.co.jp/training/
Kubernetes&Docker管理 KD200
MIRANTISが主催するkubernetesの資格で、トレーニングとセットです。
Information
自己学習
https://www.katacoda.com/
Webブラウザ上でコマンドを打ちながらチュートリアルを実行していきます。
Docker,Kubernetes,Istio,Prometheus等、自己学習できます。
Information
参考サイト
「今こそ始めよう!Kubernetes入門」
https://thinkit.co.jp/author/13290
「cndjpコミュニティ資料集」
https://speakerdeck.com/hhiroshell
Thank you for your attention !!

Más contenido relacionado

La actualidad más candente

Kubernetesと暮らすRancherな生活
Kubernetesと暮らすRancherな生活Kubernetesと暮らすRancherな生活
Kubernetesと暮らすRancherな生活Go Chiba
 
kubetnetes etc.. & Rancher2.0 Technical Preview -import BLUMIX K8S Clusters-
kubetnetes etc.. & Rancher2.0 Technical Preview -import BLUMIX K8S Clusters-kubetnetes etc.. & Rancher2.0 Technical Preview -import BLUMIX K8S Clusters-
kubetnetes etc.. & Rancher2.0 Technical Preview -import BLUMIX K8S Clusters-cyberblack28 Ichikawa
 
Kubernetes etc.. & rancher2.0 technical preview
Kubernetes etc.. & rancher2.0 technical previewKubernetes etc.. & rancher2.0 technical preview
Kubernetes etc.. & rancher2.0 technical previewcyberblack28 Ichikawa
 
Magnum - A new OpenStack API for Containers -
Magnum - A new OpenStack API for Containers -Magnum - A new OpenStack API for Containers -
Magnum - A new OpenStack API for Containers -Takehiro Kaneko
 
20分でわかるgVisor入門
20分でわかるgVisor入門20分でわかるgVisor入門
20分でわかるgVisor入門Shuji Yamada
 
Arukas meet Mesos/Marathon
Arukas meet Mesos/MarathonArukas meet Mesos/Marathon
Arukas meet Mesos/MarathonShuji Yamada
 
Introduction to Magnum (JP)
Introduction to Magnum (JP)Introduction to Magnum (JP)
Introduction to Magnum (JP)Motohiro OTSUKA
 
Kubernetes etc.. & rancher 2.0 technical preview
Kubernetes etc.. & rancher 2.0 technical previewKubernetes etc.. & rancher 2.0 technical preview
Kubernetes etc.. & rancher 2.0 technical previewcyberblack28 Ichikawa
 
Rootlessコンテナ
RootlessコンテナRootlessコンテナ
RootlessコンテナAkihiro Suda
 
Kubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみた
Kubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみたKubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみた
Kubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみたAkihito Inoh
 
今話題のいろいろなコンテナランタイムを比較してみた
今話題のいろいろなコンテナランタイムを比較してみた今話題のいろいろなコンテナランタイムを比較してみた
今話題のいろいろなコンテナランタイムを比較してみたKohei Tokunaga
 
DockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけ
DockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけDockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけ
DockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけShinya Mori (@mosuke5)
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較Akihiro Suda
 
Certified XXX まわりのはなし Kubernetes Invitational Meetup #2
Certified XXX まわりのはなし Kubernetes Invitational Meetup #2Certified XXX まわりのはなし Kubernetes Invitational Meetup #2
Certified XXX まわりのはなし Kubernetes Invitational Meetup #2Masaya Aoyama
 
Docker 18.09 新機能
Docker 18.09 新機能Docker 18.09 新機能
Docker 18.09 新機能Akihiro Suda
 
Datadog による Container の監視について
Datadog による Container の監視についてDatadog による Container の監視について
Datadog による Container の監視についてMasaya Aoyama
 
kubernetes(GKE)環境におけるdatadog利用
kubernetes(GKE)環境におけるdatadog利用kubernetes(GKE)環境におけるdatadog利用
kubernetes(GKE)環境におけるdatadog利用Koichi HARUNA
 

La actualidad más candente (20)

Kubernetesと暮らすRancherな生活
Kubernetesと暮らすRancherな生活Kubernetesと暮らすRancherな生活
Kubernetesと暮らすRancherな生活
 
kubetnetes etc.. & Rancher2.0 Technical Preview -import BLUMIX K8S Clusters-
kubetnetes etc.. & Rancher2.0 Technical Preview -import BLUMIX K8S Clusters-kubetnetes etc.. & Rancher2.0 Technical Preview -import BLUMIX K8S Clusters-
kubetnetes etc.. & Rancher2.0 Technical Preview -import BLUMIX K8S Clusters-
 
Kubernetes etc.. & rancher2.0 technical preview
Kubernetes etc.. & rancher2.0 technical previewKubernetes etc.. & rancher2.0 technical preview
Kubernetes etc.. & rancher2.0 technical preview
 
2017 KubeCon CNCon ver2
2017 KubeCon CNCon ver22017 KubeCon CNCon ver2
2017 KubeCon CNCon ver2
 
Rancher2.0でkubernetes
Rancher2.0でkubernetes Rancher2.0でkubernetes
Rancher2.0でkubernetes
 
Magnum - A new OpenStack API for Containers -
Magnum - A new OpenStack API for Containers -Magnum - A new OpenStack API for Containers -
Magnum - A new OpenStack API for Containers -
 
20分でわかるgVisor入門
20分でわかるgVisor入門20分でわかるgVisor入門
20分でわかるgVisor入門
 
Arukas meet Mesos/Marathon
Arukas meet Mesos/MarathonArukas meet Mesos/Marathon
Arukas meet Mesos/Marathon
 
Introduction to Magnum (JP)
Introduction to Magnum (JP)Introduction to Magnum (JP)
Introduction to Magnum (JP)
 
Kubernetes etc.. & rancher 2.0 technical preview
Kubernetes etc.. & rancher 2.0 technical previewKubernetes etc.. & rancher 2.0 technical preview
Kubernetes etc.. & rancher 2.0 technical preview
 
Rootlessコンテナ
RootlessコンテナRootlessコンテナ
Rootlessコンテナ
 
Kubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみた
Kubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみたKubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみた
Kubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみた
 
今話題のいろいろなコンテナランタイムを比較してみた
今話題のいろいろなコンテナランタイムを比較してみた今話題のいろいろなコンテナランタイムを比較してみた
今話題のいろいろなコンテナランタイムを比較してみた
 
2017 Kubecon cncon recap ver1
2017 Kubecon cncon recap ver12017 Kubecon cncon recap ver1
2017 Kubecon cncon recap ver1
 
DockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけ
DockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけDockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけ
DockerMeetup#26 LT: Alibaba Cloudのコンテナ関連についてちょっとだけ
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較
 
Certified XXX まわりのはなし Kubernetes Invitational Meetup #2
Certified XXX まわりのはなし Kubernetes Invitational Meetup #2Certified XXX まわりのはなし Kubernetes Invitational Meetup #2
Certified XXX まわりのはなし Kubernetes Invitational Meetup #2
 
Docker 18.09 新機能
Docker 18.09 新機能Docker 18.09 新機能
Docker 18.09 新機能
 
Datadog による Container の監視について
Datadog による Container の監視についてDatadog による Container の監視について
Datadog による Container の監視について
 
kubernetes(GKE)環境におけるdatadog利用
kubernetes(GKE)環境におけるdatadog利用kubernetes(GKE)環境におけるdatadog利用
kubernetes(GKE)環境におけるdatadog利用
 

Similar a Introduction of Kubernetes & Rancher

Kubernetes雑にまとめてみた 2020年8月版
Kubernetes雑にまとめてみた 2020年8月版Kubernetes雑にまとめてみた 2020年8月版
Kubernetes雑にまとめてみた 2020年8月版VirtualTech Japan Inc.
 
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとはKoto Shigeru
 
Infra: Kubernetes and GKE, Network
Infra: Kubernetes and GKE, NetworkInfra: Kubernetes and GKE, Network
Infra: Kubernetes and GKE, NetworkKuma Arakawa
 
Rancher 2.0 Technical Preview & Bluemix Kubernetes Cluster Import
Rancher 2.0 Technical Preview & Bluemix Kubernetes Cluster ImportRancher 2.0 Technical Preview & Bluemix Kubernetes Cluster Import
Rancher 2.0 Technical Preview & Bluemix Kubernetes Cluster ImportBMXUG
 
OpenStack上に展開するContainer as a Service を本番で利用するために必要だったこと
OpenStack上に展開するContainer as a Service を本番で利用するために必要だったことOpenStack上に展開するContainer as a Service を本番で利用するために必要だったこと
OpenStack上に展開するContainer as a Service を本番で利用するために必要だったことMasaya Aoyama
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門Kohei Tokunaga
 
新しいOpenShiftのしくみを調べてみた
新しいOpenShiftのしくみを調べてみた新しいOpenShiftのしくみを調べてみた
新しいOpenShiftのしくみを調べてみたKazuto Kusama
 
BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築
BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築
BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築Itoshi Nikaido
 
LIFULLの全社アプリケーション実行基盤 KEEL について
LIFULLの全社アプリケーション実行基盤 KEEL についてLIFULLの全社アプリケーション実行基盤 KEEL について
LIFULLの全社アプリケーション実行基盤 KEEL についてLIFULL Co., Ltd.
 
オープンソースのコンテナ管理プラットフォーム Rancher のご紹介
オープンソースのコンテナ管理プラットフォーム Rancher のご紹介オープンソースのコンテナ管理プラットフォーム Rancher のご紹介
オープンソースのコンテナ管理プラットフォーム Rancher のご紹介Ryotaro Kobayashi
 
Kubernetes雑にまとめてみた 2019年12月版
Kubernetes雑にまとめてみた 2019年12月版Kubernetes雑にまとめてみた 2019年12月版
Kubernetes雑にまとめてみた 2019年12月版VirtualTech Japan Inc.
 
Kubernetes 導入から始める DevOps について
Kubernetes 導入から始める DevOps についてKubernetes 導入から始める DevOps について
Kubernetes 導入から始める DevOps についてShigeru Tatsuta
 
Kubernetes ときどき Serverless -- cndjp第1回勉強会
Kubernetes ときどき Serverless -- cndjp第1回勉強会Kubernetes ときどき Serverless -- cndjp第1回勉強会
Kubernetes ときどき Serverless -- cndjp第1回勉強会Hiroshi Hayakawa
 
CNCF Updates 2019 Winter version and Knative
CNCF Updates 2019  Winter version and KnativeCNCF Updates 2019  Winter version and Knative
CNCF Updates 2019 Winter version and KnativeMasahito Zembutsu
 
Cloud Foundry Container-to-Container Networking
Cloud Foundry Container-to-Container NetworkingCloud Foundry Container-to-Container Networking
Cloud Foundry Container-to-Container NetworkingKazuto Kusama
 
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料VirtualTech Japan Inc.
 
AKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsAKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsYoshio Terada
 
【AWS共催】"Hosted Rancher on AWS" オンラインミートアップ
【AWS共催】"Hosted Rancher on AWS" オンラインミートアップ【AWS共催】"Hosted Rancher on AWS" オンラインミートアップ
【AWS共催】"Hosted Rancher on AWS" オンラインミートアップJunji Nishihara
 
k8sとOpenShiftの違いとは.pdf
k8sとOpenShiftの違いとは.pdfk8sとOpenShiftの違いとは.pdf
k8sとOpenShiftの違いとは.pdfFumieNakayama
 
Hccjp rancher+azurearc 201009
Hccjp rancher+azurearc 201009Hccjp rancher+azurearc 201009
Hccjp rancher+azurearc 201009Junji Nishihara
 

Similar a Introduction of Kubernetes & Rancher (20)

Kubernetes雑にまとめてみた 2020年8月版
Kubernetes雑にまとめてみた 2020年8月版Kubernetes雑にまとめてみた 2020年8月版
Kubernetes雑にまとめてみた 2020年8月版
 
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
 
Infra: Kubernetes and GKE, Network
Infra: Kubernetes and GKE, NetworkInfra: Kubernetes and GKE, Network
Infra: Kubernetes and GKE, Network
 
Rancher 2.0 Technical Preview & Bluemix Kubernetes Cluster Import
Rancher 2.0 Technical Preview & Bluemix Kubernetes Cluster ImportRancher 2.0 Technical Preview & Bluemix Kubernetes Cluster Import
Rancher 2.0 Technical Preview & Bluemix Kubernetes Cluster Import
 
OpenStack上に展開するContainer as a Service を本番で利用するために必要だったこと
OpenStack上に展開するContainer as a Service を本番で利用するために必要だったことOpenStack上に展開するContainer as a Service を本番で利用するために必要だったこと
OpenStack上に展開するContainer as a Service を本番で利用するために必要だったこと
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門
 
新しいOpenShiftのしくみを調べてみた
新しいOpenShiftのしくみを調べてみた新しいOpenShiftのしくみを調べてみた
新しいOpenShiftのしくみを調べてみた
 
BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築
BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築
BioDevOpsによる再現性のあるバイオインフォマティクス環境の構築
 
LIFULLの全社アプリケーション実行基盤 KEEL について
LIFULLの全社アプリケーション実行基盤 KEEL についてLIFULLの全社アプリケーション実行基盤 KEEL について
LIFULLの全社アプリケーション実行基盤 KEEL について
 
オープンソースのコンテナ管理プラットフォーム Rancher のご紹介
オープンソースのコンテナ管理プラットフォーム Rancher のご紹介オープンソースのコンテナ管理プラットフォーム Rancher のご紹介
オープンソースのコンテナ管理プラットフォーム Rancher のご紹介
 
Kubernetes雑にまとめてみた 2019年12月版
Kubernetes雑にまとめてみた 2019年12月版Kubernetes雑にまとめてみた 2019年12月版
Kubernetes雑にまとめてみた 2019年12月版
 
Kubernetes 導入から始める DevOps について
Kubernetes 導入から始める DevOps についてKubernetes 導入から始める DevOps について
Kubernetes 導入から始める DevOps について
 
Kubernetes ときどき Serverless -- cndjp第1回勉強会
Kubernetes ときどき Serverless -- cndjp第1回勉強会Kubernetes ときどき Serverless -- cndjp第1回勉強会
Kubernetes ときどき Serverless -- cndjp第1回勉強会
 
CNCF Updates 2019 Winter version and Knative
CNCF Updates 2019  Winter version and KnativeCNCF Updates 2019  Winter version and Knative
CNCF Updates 2019 Winter version and Knative
 
Cloud Foundry Container-to-Container Networking
Cloud Foundry Container-to-Container NetworkingCloud Foundry Container-to-Container Networking
Cloud Foundry Container-to-Container Networking
 
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
OpenStack Summit & KubeConからみるコンテナ技術の最新トレンド - OpenStack Day Tokyo 2018講演資料
 
AKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsAKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab Contents
 
【AWS共催】"Hosted Rancher on AWS" オンラインミートアップ
【AWS共催】"Hosted Rancher on AWS" オンラインミートアップ【AWS共催】"Hosted Rancher on AWS" オンラインミートアップ
【AWS共催】"Hosted Rancher on AWS" オンラインミートアップ
 
k8sとOpenShiftの違いとは.pdf
k8sとOpenShiftの違いとは.pdfk8sとOpenShiftの違いとは.pdf
k8sとOpenShiftの違いとは.pdf
 
Hccjp rancher+azurearc 201009
Hccjp rancher+azurearc 201009Hccjp rancher+azurearc 201009
Hccjp rancher+azurearc 201009
 

Más de cyberblack28 Ichikawa

KubeCon + CloudNativeCon China 2018 Recap, let's go to Seattle
KubeCon + CloudNativeCon China 2018 Recap, let's go to SeattleKubeCon + CloudNativeCon China 2018 Recap, let's go to Seattle
KubeCon + CloudNativeCon China 2018 Recap, let's go to Seattlecyberblack28 Ichikawa
 
KubeCon + CloudNativeCon China 2018 Recap
KubeCon + CloudNativeCon China 2018 RecapKubeCon + CloudNativeCon China 2018 Recap
KubeCon + CloudNativeCon China 2018 Recapcyberblack28 Ichikawa
 
話題のkubernetesをRancher2.0で便利に使う!
話題のkubernetesをRancher2.0で便利に使う!話題のkubernetesをRancher2.0で便利に使う!
話題のkubernetesをRancher2.0で便利に使う!cyberblack28 Ichikawa
 
try.rancher.comでrancherを始める
try.rancher.comでrancherを始めるtry.rancher.comでrancherを始める
try.rancher.comでrancherを始めるcyberblack28 Ichikawa
 
コンテナ管理 プラットフォーム 比較 ~Kubernetes~予告編
コンテナ管理 プラットフォーム 比較 ~Kubernetes~予告編 コンテナ管理 プラットフォーム 比較 ~Kubernetes~予告編
コンテナ管理 プラットフォーム 比較 ~Kubernetes~予告編 cyberblack28 Ichikawa
 
Rancherでmesosとmarathonやってみた
RancherでmesosとmarathonやってみたRancherでmesosとmarathonやってみた
Rancherでmesosとmarathonやってみたcyberblack28 Ichikawa
 
RancherのWindowsサポートと事始め
RancherのWindowsサポートと事始めRancherのWindowsサポートと事始め
RancherのWindowsサポートと事始めcyberblack28 Ichikawa
 
Docker入門~word press環境を作ってみる ハンズオン編 ver1.4~ pulic
Docker入門~word press環境を作ってみる ハンズオン編 ver1.4~ pulicDocker入門~word press環境を作ってみる ハンズオン編 ver1.4~ pulic
Docker入門~word press環境を作ってみる ハンズオン編 ver1.4~ puliccyberblack28 Ichikawa
 

Más de cyberblack28 Ichikawa (18)

Introduction of kubernetes rancher
Introduction of kubernetes rancherIntroduction of kubernetes rancher
Introduction of kubernetes rancher
 
KubeCon + CloudNativeCon China 2018 Recap, let's go to Seattle
KubeCon + CloudNativeCon China 2018 Recap, let's go to SeattleKubeCon + CloudNativeCon China 2018 Recap, let's go to Seattle
KubeCon + CloudNativeCon China 2018 Recap, let's go to Seattle
 
KubeCon + CloudNativeCon China 2018 Recap
KubeCon + CloudNativeCon China 2018 RecapKubeCon + CloudNativeCon China 2018 Recap
KubeCon + CloudNativeCon China 2018 Recap
 
What's Rio 〜Standalone〜
What's Rio 〜Standalone〜What's Rio 〜Standalone〜
What's Rio 〜Standalone〜
 
What's rancher v2.1.0 JA
What's rancher v2.1.0 JAWhat's rancher v2.1.0 JA
What's rancher v2.1.0 JA
 
Introduction of k8s rancher
Introduction of k8s rancherIntroduction of k8s rancher
Introduction of k8s rancher
 
What's Rio
What's RioWhat's Rio
What's Rio
 
話題のkubernetesをRancher2.0で便利に使う!
話題のkubernetesをRancher2.0で便利に使う!話題のkubernetesをRancher2.0で便利に使う!
話題のkubernetesをRancher2.0で便利に使う!
 
Rancher2.0とGKE
Rancher2.0とGKERancher2.0とGKE
Rancher2.0とGKE
 
Rancher2.0とGKE
Rancher2.0とGKERancher2.0とGKE
Rancher2.0とGKE
 
Docker Tokyo
Docker TokyoDocker Tokyo
Docker Tokyo
 
Whats service mesh & istio ?
Whats service mesh & istio ?Whats service mesh & istio ?
Whats service mesh & istio ?
 
try.rancher.comでrancherを始める
try.rancher.comでrancherを始めるtry.rancher.comでrancherを始める
try.rancher.comでrancherを始める
 
コンテナ管理 プラットフォーム 比較 ~Kubernetes~予告編
コンテナ管理 プラットフォーム 比較 ~Kubernetes~予告編 コンテナ管理 プラットフォーム 比較 ~Kubernetes~予告編
コンテナ管理 プラットフォーム 比較 ~Kubernetes~予告編
 
Rancherでmesosとmarathonやってみた
RancherでmesosとmarathonやってみたRancherでmesosとmarathonやってみた
Rancherでmesosとmarathonやってみた
 
Rancher Meetup Tokyo 6
Rancher Meetup Tokyo 6Rancher Meetup Tokyo 6
Rancher Meetup Tokyo 6
 
RancherのWindowsサポートと事始め
RancherのWindowsサポートと事始めRancherのWindowsサポートと事始め
RancherのWindowsサポートと事始め
 
Docker入門~word press環境を作ってみる ハンズオン編 ver1.4~ pulic
Docker入門~word press環境を作ってみる ハンズオン編 ver1.4~ pulicDocker入門~word press環境を作ってみる ハンズオン編 ver1.4~ pulic
Docker入門~word press環境を作ってみる ハンズオン編 ver1.4~ pulic
 

Último

CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 

Último (8)

CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 

Introduction of Kubernetes & Rancher

  • 1. Introduction of Kubernetes & Rancher 2018.7.11 DevLOVE 〜Kubernetesによるコンテナオーケストレーション〜 © 2018 cyberblack28
  • 2. Profile Twitter:cyberblack28 Job Infrastructure Engineer Frontend Engineer Educational Solution Architect Community Hobby1: Music,Live,FES !! Hobby2: Take a picture !! https://www.flickr.com/photos/cyberblack ISBN-10: 4798155373 ISBN-13: 978-4798155371 第6章 Rancher2.0の部 分を執筆しました。 2018年3月15日発売 #rancherjp #kujiraya #deepcn
  • 3. Agenda 1. Market trend of Kubernetes 2. Introduction of Kubernetes 3. Introduction of Rancher 4. Kubernetes & Rancher Handson 5. Information
  • 4. Market trend of Kubernetes
  • 5. Market trend of Kubernetes Kubernetesは十分成熟したソフトウェアに到達したとし、 CNCFのインキュベーション段階からの卒業を発表 by Publickey 2018.3.8 「Incubation Stage」(インキュベーション段階)では、ドキュメントが十分に用意され、健全な人数のコミッタが 揃い、開発が進められていることなどが確認されます。 そして、ガバナンスとコミットプロセスなどが明示化され、事例などが整い、CNCFのTechnical Operating Committee(TOC)の投票によって卒業が認められる。 卒業にあたり、Kubernetesは、より速く成長し、活気に満ちた、健全で幅広い技術 コミュニティを維持できる、これまでにないほど強力なポジション
  • 6. Market trend of Kubernetes AWS上のKubernetesマネージドサービス「Amazon EKS」が正式版 に by Publickey 2018.6.7 • Amazon EKSは昨年11月に米ラスベガスで 行われたAWS re:Invent 2017で発表 • 米国東部 (バージニア北部) および米国西 部 (オレゴン) のリージョンで利用可能。 そのほかのリージョンでの対応は今後発表
  • 7. 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のリージョンでの追加展開が予定
  • 8. Market trend of Kubernetes Kubernetes on Windows ServerをDocker EEでサポート。Linuxと Windows Serverのコンテナオーケストレーションを統一的に管理。 DockerCon 2018 by Publickey 2018.6.14 • Docker EEでWindows Server版 Kubernetesでサポート
  • 9. Market trend of Kubernetes VMwareもKubernetesのマネージドサービス「VMware Kubernetes Engine」提供へ。VMware Cloud on AWSを皮切りにAzure版も予定 by Publickey 2018.6.28 • VMware CloudのサービスとしてKubernetesのマネー ジドサービス「VMware Kubernetes Engine」(VKE) を提供 • Kubernetesの複雑さを抽象化した「SmartCluster」を 提供 • VMwareもKubernetesをマルチクラウド戦略の軸に
  • 10. Market trend of Kubernetes GitHub Goes All in on Kubernetes by THENEWSTACK 2017.8.16 SRE(Site Reliability Engineering)の事例としても興味深い!!
  • 11. Market trend of Kubernetes 昨年、Distribution,PaaS,Managed,Installation/Operationsというカ テゴリに分けて、Kubernetesに関係するサービスやツールを調べてみ ました。 https://qiita.com/cyberblack28/items/e4836b4ff06156f69588 ※1年以上前の情報です。 Investigating of Kubernetes Platform
  • 14. What’s kubernetes ? • コンテナーのスケジューリング • ローリングアップデート • オートスケーリング • 死活監視 • コンテナーの自動修復 • サービスディスカバリ • ロードバランシング • ログ管理 • 頻繁なアプリケーションのデプ ロイを可能にするシステム基盤 • 無停止によるリリース、高可用 なシステム基盤 • 負荷に応じた伸縮自在なシステ ム基盤 Kubernetesの主な役割と実現 主な役割 実現
  • 15. Kubernetes Architecture Master API UI CLI Node 3 Node 2 Node 1 Kubernetesは、構成要素としてMasterとNodeというコンポーネントがあります。 • Master クラスタの制御を受け持ち、スケジューリングやイベント検知など、クラスタの 全体に関わる管理を担います。 • Node アプリケーションコンテナーの稼働場所となります。コンテナーランタイムが稼 働し、Masterからの指示を受けてコンテナーの起動等の実行を担います。 Node n Image Registry
  • 16. 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に保存された情報を監視して、更新があると直ちに通知される仕 組みになっています。
  • 17. 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 PodPod Pod PodPod Pod PodPod
  • 18. Kubernetes Architecture Pod • 1つまたは複数のコンテナーをデプロイする最小単位 • Pod内のコンテナーは同じホスト名とIPアドレスを持つ • Pod内のコンテナーは同じNode上で稼働 • Pod内のコンテナーは共通のライフサイクルを持つ Container Volume Pod Container Container Podは、ボリュームとネットワークを共有する1個以上のコンテナーグループ。 IPアドレス ※例としてContainerを 3個としています。
  • 20. Kubernetes Architecture Deployment & ReplicaSet Master Deployment 定義ファイル Node 1,2,3,n 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
  • 21. 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機能を提供するオブジェクトです。
  • 22. 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
  • 25. What’s Rancher ? • クラウド、オンプレミス問わずコンテナー環境の構築、運用するため のコンテナー管理プラットフォーム • ホスト(ノード)とコンテナーの管理、アプリケーションのデプロイ、 オーケストレーション環境の自動構築を実現 • 開発はRancher Labs(http://rancher.com/) • オープンソースソフトウェア(サポート付の有償版あり)
  • 26. Difference between Rancher 1.6 and 2.0 1.6 2.0 • カタログ機能(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で利用可能なも のは随時対応予定
  • 27. Rancher2.0 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等の認証サー ビスと統合
  • 28. Feature of Rancher2.0 One Click Deployment ! ! カタログ一覧から選択して、起動ボタンをクリックするだ けで、アプリケーションをデプロイできます。 Creating Private Catalogs ! ! 個人で作成したカタログも登録できます。
  • 29. Feature of Rancher2.0 Major developer catalogs
  • 30. Feature of Rancher2.0 Kubernetes Clusters Create Import EKS GKE AKS vSphere Bare Metal Create,Import,Manage Kubernetes Clusters !! Manage
  • 31. Get started with Rancher 2.0 OS Hardware Software Ubuntu 16.04 (64-bit) Memory: 4GB • 1.12.6 • 1.13.1 • 17.03.2Red Hat Enterprise Linux 7.5 (64-bit) RancherOS 1.3.0 (64-bit) Step 1: Prepare a Linux Host Step 2: Start the server $ sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher Web Access!! https://<server_ip>
  • 33. 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
  • 34. Kubernetes & Rancher Handson 1.Rancher Serverの構築 1.Instanceを2つ準備 項目 入力概要 名前 rancher-server リージョン asia-northeast1(東京) ゾーン asia-northeast1-b マシンタイプ vCPUx1 ブートディスク Ubuntu 16.04 LTS ディスクサイズ80GB ファイアウォール HTTPトラフィックを許可する、HTTPSトラフィックを許可する、両方にチェックを入れます。 GCP(Google Cloud Platform)を利用します。ファイアウォールのルールは全許可を前提とします。 項目 入力概要 名前 rancher-host リージョン asia-northeast1(東京) ゾーン asia-northeast1-b マシンタイプ vCPUx1 ブートディスク Ubuntu 16.04 LTS ディスクサイズ80GB ファイアウォール HTTPトラフィックを許可する、HTTPSトラフィックを許可する、両方にチェックを入れます。 1台目 2台目
  • 35. Kubernetes & Rancher Handson 2.Dockerのインストール(2台:rancher-server,rancher-host) $ curl https://releases.rancher.com/install-docker/17.03.2.sh | sh 3.Rancher2.0 Serverのインストール(1台:rancher-serverのみ) $ sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher 4.ブラウザを起動して、RancherUIにアクセス(rancher-server) https://EXTERNAL-IP/ adminユーザのパスワー ド作成 Rancher Server URLの 登録 ログイン完了 5.初回ログイン設定
  • 36. Kubernetes & Rancher Handson 6.Helmカタログの有効化 上部メニュー「Catalogs」を選択 「Enable」に変更 「Global」を選択
  • 37. Kubernetes & Rancher Handson 1.「Add Cluster」をクリック 2.Kubernetes Clusterの構築
  • 38. Kubernetes & Rancher Handson 2.「CUSTOM」を選択、「Cluster Name」に任意名を入力、「Next」ボタンを押下 GKE,EKS,AKSと連携する 場合に選択 EC2,Azure,DigitalOcean, vSpher等Cloud Provider と連携する場合に選択 既存のkubernetes Clusterと連 携する場合に選択 kubernetesのバー ジョンを選択できま す。 Networkで Flannel,Calico,Canalを選択でき ます。
  • 39. Kubernetes & Rancher Handson 3.「Node Role」の「etcd」と「Control Plane」にチェック、「Node Address」の 「Public Address」と「Internal Address」に2台目(rancher-host)のIPアドレスを入力、 「Copy to Clipboard」ボタンを押下、そのコマンドを2台目(rancher-host)のコンソール で実行後に「Done」ボタンを押下 1 2 3 5 4 rancher-host コンソール
  • 40. Kubernetes & Rancher Handson 4.クラスタ名をクリック
  • 41. Kubernetes & Rancher Handson 5.リソース状況を確認
  • 42. Kubernetes & Rancher Handson 1.上部メニューから「Default」を選択、「Catalog Apps」を選択 3.weavescopeカタログのデプロイ 2.「Launch」ボタンを押下
  • 43. Kubernetes & Rancher Handson 3.「weave-scope」の「View Details」ボタンを押下
  • 44. Kubernetes & Rancher Handson 4.「Launch」ボタンを押下
  • 45. Kubernetes & Rancher Handson 5.デプロイ完了後、上部メニューから「Workloads」を選択
  • 46. Kubernetes & Rancher Handson 6.「Load Balancing」をクリック
  • 47. Kubernetes & Rancher Handson 7.「Add Ingress」ボタンを押下
  • 48. Kubernetes & Rancher Handson 9.「Name」に任意名を入力、「Namespace」で「weave-scope」を選択、 「Target」で「weave-scope-frontend-weave-scope」を選択、「Port」に 「4040」と入力して、「Save」ボタンを押下 1 2 3 4 5
  • 49. Kubernetes & Rancher Handson 10.自動生成されたURLをクリック
  • 50. Kubernetes & Rancher Handson 11.weavescope起動を確認
  • 51. Kubernetes & Rancher Handson 1.上部メニューから「Cluster.k8s-cluster」を選択 4.RancherUIからkubectlコマンドの実行 RancherUIからkubectlコマンドを実行できるので利用します。 2.「Launch kubectl」ボタンを押下
  • 52. Kubernetes & Rancher Handson 3.コンソール起動確認
  • 53. Kubernetes & Rancher Handson 3.「kubectl get nodes」の実行 > kubectl get nodes NAME STATUS ROLES AGE VERSION rancher-host Ready controlplane,etcd,worker 39m v1.10.5 > kubectl version Client Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.8", GitCommit:"c138b85178156011dc934c2c9f4837476876fb07", GitTreeState:"clean", BuildDate:"2018-05-21T19:01:12Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"} Server Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.5", GitCommit:"32ac1c9073b132b8ba18aa830f46b77dcceb0723", GitTreeState:"clean", BuildDate:"2018-06-21T11:34:22Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"} 4.「kubectl version」の実行
  • 54. 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 "redis-master" created service "redis-slave" created deployment "redis-slave" created service "frontend" created deployment "frontend" created
  • 55. Kubernetes & Rancher Handson 2.デプロイの確認 > kubectl get services NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE frontend ClusterIP 10.43.52.144 <none> 80/TCP 1m kubernetes ClusterIP 10.43.0.1 <none> 443/TCP 47m redis-master ClusterIP 10.43.31.61 <none> 6379/TCP 1m redis-slave ClusterIP 10.43.55.29 <none> 6379/TCP 1m 3.RancherUIからIngressを作成 上部メニューから「default」、「Workloads」を選択、「Load Balancing」を クリック、「Add Ingress」ボタンを押下 1 2 3 4
  • 56. Kubernetes & Rancher Handson 4.「Name」に任意名を入力、「Target」で「frontend」を選択、「Port」に 「80」と入力、「Save」ボタンをクリック 1 2 3 4
  • 57. Kubernetes & Rancher Handson 5.自動生成されたURLをクリック
  • 58. Kubernetes & Rancher Handson 6.Guestbookアプリケーションの確認
  • 59. Kubernetes & Rancher Handson 7.weavescopeからもGuestbookアプリケーションを確認
  • 60. 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
  • 61. Kubernetes & Rancher Handson 付録1:guestbook-all-in-one.yaml 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 --- redis-slave
  • 62. Kubernetes & Rancher Handson 付録1:guestbook-all-in-one.yaml 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 redis-frontend
  • 63. Kubernetes & Rancher Handson 付録2:Guestbookアプリケーション構成図
  • 65. Information Docker実践ガイド 出版社: インプレス ISBN-10: 4844339621 ISBN-13: 978-4844339625 Dockerの基本から、オンプレミスでコンテナー 環境を築く上で必要なことが網羅されている非 常に興味深い内容です。 Windowsコンテナー技術入門 出版社: インプレス ISBN-10: 4295000957 ISBN-13: 978-4295000952 Windowsコンテナーについて詳しく書かれてい る唯一の日本語書籍です。
  • 66. Information プログラマのためのDocker教科書 第2版 出版社: 翔泳社 ISBN-10: 4798153222 ISBN-13: 978-4798153223 プログラマがインフラ環境からDockerまでを体 系的に学べる良書です。インフラエンジニアに も読み応えあります。 Docker実践入門――Linuxコンテナ技術の基礎から応用まで 出版社: 技術評論社 ISBN-10: 4774176540 ISBN-13: 978-4774176543 LinuxコンテナーからDockerまで丁寧に解説し、 Linuxコンテナーの仕組みから理解できます。
  • 67. 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を 中心にコンテナー単体からオーケストレーションを始 めるにあたりあらゆる側面からプラットフォームを紹 介し、実践へ導く内容となっています。
  • 68. 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 内容は実践的となっていますが、こちらも図解 が多くて分かりやすい書籍です。
  • 73. Thank you for your attention !!