🙌

【Azure Kubernetes Service】構築からNGINXをデプロイするまでの流れ

2024/11/05に公開

執筆日

2024/11/5

私のスペック

私はKubernetes Serviceは全くわからないど素人です。
勉強のアウトプットでこの記事を書きます。
※Azure Kubernetes Serviceは長いので、AKSと略して書いていきます。

やること

  1. AzureへAKSをデプロイする
  2. AKSにNGINXをデプロイする

AzureへAKSをデプロイ

  1. Azure portalで「Kubernetes サービス」と検索する
  2. 「+作成」をクリックし、「Kubernetesクラスター」をクリックする
  3. AKSのパラメータを設定する
    ※クラスターのプリセット構成を「Dev/Test」にし、それ以外のパラメータはdefaultの設定のまま
  4. パラメータ入力後、「確認および作成」をクリックしデプロイする

AKSに NGINX をデプロイする

  1. Azure CLI と kubectl をインストールする
  1. Azure CLI を使って AKS クラスターに接続する
# Azure のテナントにログインする
az login -t "tenant ID"

# クラスター資格情報をダウンロードする
az aks get-credentials --resource-group "リソースグループ名" --name "クラスター名" --overwrite-existing
  1. NGINX をデプロイする

NGINX アプリケーションをデプロイし、外部からアクセスできるようにする

# 名前空間を作成する(今回はwebにしました)
kubectl create namespace web

# 名前空間に NGINX デプロイメントを作成する
kubectl create deployment deploy-nginx --image=nginx:latest -n web

# デプロイメントを公開するためのサービスを作成する
kubectl expose deployment deploy-nginx --type=LoadBalancer --name=nginx-service -n web --port=80

# サービスのステータスを確認する
kubectl get services -n web

以下のような出力が表示されます。

NAME            TYPE           CLUSTER-IP    EXTERNAL-IP     PORT(S)        AGE
nginx-service   LoadBalancer   10.0.237.42   <Public IP>   80:30121/TCP   24s

EXTERNAL-IP の列に表示される IP アドレスをブラウザで開くと、NGINX のウェルカムページが表示される

  1. リソースのクリーンアップ

作業が終わったら、リソースをクリーンアップする
※しなくてもOKです

# サービスの削除
kubectl delete service nginx-service -n web

# デプロイメントの削除
kubectl delete deployment deploy-nginx -n web

# 名前空間の削除
kubectl delete namespace web

まとめ

AKSをAzureにデプロイ→NGINXをデプロイするまで行いました。
うーん、まだイメージが掴めないな。。勉強しよ。

ヘッドウォータース

Discussion