1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Azure Kubernetes Services 環境を構築する

Last updated at Posted at 2019-11-08

今日から連続して AKS の環境構築、デプロイ、アプリケーション実行、スケーリング、更新、について記事を書いていきたいと思います。AKS の使用方法を網羅的に見ていきたいと思います。

Azure CLI で Azure Container Registry をデプロイする

Azure Portal から デプロイする方法もありますが、Azure CLI でより簡単にできるのでこのシリーズでは主に Azure CLI を使用します。初めに、実行するコマンドを羅列すると以下の様になります。

$ az acr check-name -n komiyasavalacr
$ ACR_NAME=komiyasavalacr
$ ACR_RES_GROUP=$ACR_NAME
$ az group create --resource-group $ACR_RES_GROUP --location japaneast
$ az acr create --resource-group $ACR_RES_GROUP --name $ACR_NAME --sku Standard --location japaneast

まず komiyasavalacr という名前の Container Registry が既に存在しているか確認し、なれけば $ACR_NAME にその値を代入します。そのあとで、az group create ならびに、az acr create で Azure container Registry を作成します。

次に以下の code を実行していきます。今回は ToruMakabe さんの Sample Git の image をお借りました。
(今回の記事シリーズは、ToruMakabe さんが執筆している本は以下でそれを参考にさせて頂きました。非常に分かりやすい本だったので、とてもおすすめです!)
しくみがわかるKubernetes Azureで動かしながら学ぶコンセプトと実践知識

$ git clone https://github.com/ToruMakabe/Understanding-K8s.git
$ cd Understanding-K8s/chap02
$ az acr build --registry $ACR_NAME --image photo-view:v1.0 v1.0/
$ az acr build --registry $ACR_NAME --image photo-view:v2.0 v2.0/

デプロイに少し時間がかかります。しばらくして Azure Portal を確認すると、photo-view という Repositories に v1.0 v2.0 という二つの Version がデプロイされていることが分かります。
image.png

ACR と AKS を連携させる

次に作成した Azure container Registry (ACR) と Azure Kubernetes Services を連携させるための作業を行います。
以下 Code を Azure CLI で実行することで AKS をデプロイするためのACR のサービスプリンシパルと接続された APP_ID ならびに SP_PASSWD が発行可能です。

$ACR_ID=$(az acr show --name $ACR_NAME --query id --output tsv)
$SP_NAME=sample-acr-service-principal
$SP_PASSWD=$(az ad sp create-for-rbac --name $SP_NAME --role Reader --scopes $ACR_ID --query password --output tsv)
$APP_ID=$(az ad sp show --id http://$SP_NAME --query appId --output tsv)
$echo $APP_ID
$echo $SP_PASSWD

クラスターの作成

次にいよいよ AKS クラスターを作成します。クラスターの作成を Azure CLI で実行するには、以下コマンドを実行します。

$AKS_CLUSTER_NAME=AKSCuster
$AKS_RES_GROUP=$AKS_CLUSTER_NAME
$az group create --resource-group $AKS_RES_GROUP --location japaneast
$az aks create --name $AKS_CLUSTER_NAME --resource-group $AKS_RES_GROUP --node-count 3 --kubernetes-version 1.13.12 --node-vm-size Standard_DS1_v2 --generate-ssh-key --service-principal $APP_ID --client-secret $SP_PASSWD

書籍では Kubernetes の Version が少々古いものになっていましたので、今回は 1.13.12 を使用します。
デプロイ中は Status が以下の様に Running となりますが、成功すると Succeeded に変わります。(デプロイ完了まで割と時間がかかります。)
image.png
ここまでで、環境構築の完了です!
念のため、クラスター接続のための認証情報を以下コマンドを実行して確認しておきましょう。

$ az aks get-credentials --admin --resource-group $AKS_RES_GROUP --name $AKS_CLUSTER_NAME

次回の記事では Azure Kubernetes Services を Azure CLI から操作するための基本的なコマンドを見ていきます。

参考

Azure Kubernetes Service (AKS)

しくみがわかるKubernetes Azureで動かしながら学ぶコンセプトと実践知識

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?