Rancher2.0 Tech Preview2 ～Create a Cloud Cluster～

Rancher2.0 Tech Preview2の主要機能として追加された「Create a Cloud Cluster」は、GKE、EKS、AKSに対してKubernetesクラスタを作成することができます。

Tech Preview2では、GKEのみ対応となっています。（※2018年2月現在）

Rancher2.0 Tech Preview2からGKE上にKubernetesクラスタを作成してみましょう。

Tech Preview2のインストールは[Rancher2.0 Tech Preview2について](https://qiita.com/cyberblack28/items/dcfef4319e160468f4be)の「Get Started with Rancher 2.0」を参考にしてください。

# GCPでサービスアカウントの作成

GKEと連携するために、GCPでサービスアカウントを作成し、jsonファイルをエクスポートします。

1.「APIとサービス」-「認証情報」を選択します。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/eb8a6987-7b7f-ef0a-01ca-d3edd43515d2.png)

2.「認証情報を作成」を選択します。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/ad58555e-e9bd-f299-55cc-a7925d7a1397.png)

3.「サービスアカウントキー」を選択します。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/ffc204d5-838e-fc31-e20e-87fe1b573d87.png)

4.「新しいサービスアカウント」を選択し、サービスアカウントに任意名を入力し、役割でProjectからオーナーを選択して、作成ボタンをクリックします。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/1191fdc7-2712-c9d6-3d8a-19283e43d723.png)

5.jsonファイルがダウンロードされます。その後「閉じる」を選択します。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/6645d149-3e71-a98e-a06e-0c1926be8137.png)

# Rancher2.0 Tech Preview2でGKE上にKubernetesクラスタの作成

1.Rancher2.0 Tech Preview2 Serverにログイン後に、「Add Cluster」ボタンをクリックします。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/c7da1e4f-b4fd-8561-9107-d2b5565f346b.png)

2.「Create a Cloud Cluster」の「Select」ボタンをクリックします。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/b366dc48-d1ef-decd-a335-25bb5dcf93f8.png)

3.「Read from a file」ボタンをクリックして、GCPで作成したサービスアカウントのjsonファイルを選択します。その後、「Next」ボタンをクリックします。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/c8597c93-ca08-6986-05dd-4d9f4dba94ac.png)

4.Nameに任意名を入力し（ここではrancher-gke-clusterとします。）、Locationを「asia-northeast1-a」として、「Create」ボタンをクリックします。

Node ConfigurationのQuantityでNode数を設定できます。今回は3とします。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/b8083c5c-d9d6-c1fc-f2fe-793aa68320f1.png)

5.上部メニュー「Clusters」を選択します。

GKEに作成されたクラスタが表示されることを確認します。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/0ff8114b-7bd6-e3f9-ea42-7a7aa0f158bb.png)

6.上部メニュー「Nodes」を選択します。

GKE上に作成されたクラスタの詳細を確認できます。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/5e3bb2b7-ad35-c0df-fd0c-85c107d02241.png)

7.上部メニュー「Cluster.rancher-gke-cluster」を選択します。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/80d0782a-c6d3-d534-9110-cbb22f333bd6.png)

GKE上に構築されたクラスタのリソース状況を可視化されて確認できます。

![screencapture-35-198-222-0-c-cluster-5s475-1517753869931.png](https://qiita-image-store.s3.amazonaws.com/0/61606/164d1e7d-d34d-803b-e430-a218150b235d.png)

# GCPのダッシュボードから確認

1.「Compute Engine」-「VMインスタンス」を選択します。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/3df6e4a1-d4f4-755c-41c4-e32cce02acdc.png)

Kubernetesクラスタが構築されていることが確認できます。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/5b5e4f07-7da9-20a4-3f26-fcba8444700c.png)

2.「Kubernetes Engine」-「Kubernetesクラスタ」を選択します。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/8238db68-8adf-57b6-16e3-ef690003e5a6.png)

クラスタ名をクリックします。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/e4f398b2-4653-0798-90f3-4a2999acc9e0.png)

クラスタ内容を確認できます。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/61606/3df2e240-9fa0-dfa8-56b3-51d6902e021a.png)


# Google Cloud SDK Shellからも確認

Google Cloud SDK Shellを起動して、以下のコマンドを実行します。

```lang:コマンド
>gcloud auth login
#ブラウザが起動し、GCPのアカウントでログインして「許可」ボタンをクリックします。

>gcloud config set project PROJECT_ID
#PROJECT_IDは、GCPのダッシュボードから確認できます。

>gcloud container clusters get-credentials rancher-gke-cluster --zone=asia-northeast1-a

>kubectl get nodes
NAME                                                 STATUS    ROLES     AGE       VERSION
gke-rancher-gke-cluster-default-pool-a7cd8c2e-9nx4   Ready     <none>    26m       v1.8.7-gke.0
gke-rancher-gke-cluster-default-pool-a7cd8c2e-cf1c   Ready     <none>    26m       v1.8.7-gke.0
gke-rancher-gke-cluster-default-pool-a7cd8c2e-hbzb   Ready     <none>    26m       v1.8.7-gke.0
```

# 参考資料

## Rancher2.0 Tech Preview2
- [Announcing Rancher 2.0 Tech Preview 2](https://rancher.com/announcing-rancher-2-0-tech-preview-2/)
- [Updated Rancher 2.0 Architecture Document](https://cdn2.hubspot.net/hubfs/468859/Whitepapers/Rancher-2.0-Architecture-v0.6-jan-2018.pdf)
- [The Quick Start Guide](https://rancher.com/docs/rancher/v2.0/en/quick-start-guide/)
- [Technical Release 2 page](https://github.com/rancher/rancher/releases)
- [Hands-on with the Rancher2.0 Beta](https://www.youtube.com/watch?v=ld7ctOg3waM)