Azure Kubernetes Service クイック スタートでk8sでのデプロイの概要を掴む
はじめに
クイック スタート: Azure Kubernetes Service (AKS) クラスターのデプロイに沿って、
AKSでk8s1のクラスタをデプロイしました。
ポータルを操作してk8sクラスタのリソースを作成し、
クラウドシェルでコマンド入力してデプロイしています。
前提
私のレベル感ですが、k8sを勉強し始めた段階です。
- Dockerを独学し、docker-composeでVPSに複数コンテナをデプロイできるようになった
- docker-composeは本番環境には適さないことを知り、k8sを勉強し始める
後述するハンズオンでGCPでk8sを触った経験から、今回Azureでもk8sを試してみました。
k8sクラスタリソース作成(ポータル操作)
クイックスタートに沿って進めます。
「ノードサイズ」ですが、クイックスタートのDS1v2インスタンス(1vcpu、3.5GBメモリ)と同程度のサイズで費用を抑えられるVMインスタンスを選択しました。
監視まで設定したら「確認および作成」をクリック。
作成を押してからmyAKSClusterリソースが作られるまで15〜20分ほどかかりました。(VMのスペックが低いのが原因でしょうか?)
クラウドシェルからデプロイ
クイックスタートに沿って、viエディタでyamlファイルを作成し、kubectl
コマンドでデプロイしました。
$ az aks get-credentials --resource-group aks-quickstart-201808 --name myAKSCluster
$ kubectl get nodes
$ vi azure-vote.yaml
$ kubectl create -f azure-vote.yaml
$ kubectl get service azure-vote-front --watch
yamlファイルにはbackとfrontそれぞれにDeploymentとServiceを定義しています。
azure-vote-frontサービスに振られた外部IPアドレスにアクセス。
ブラウザをリロードすると、直前に押したボタンのカウントが1増えるという動きをしました。
このあたりはソースを確認してみようと思います。(宿題事項)
yamlファイルのソースコードを取得する
先日たくさんのアプリをGKEにk8sでデプロイするというハンズオン2に参加しました。
ソースのyamlファイルが取得できれば、Azureでもk8sでデプロイできるだろうという感触があったので試してみました。
$ wget --no-check-certificate https://github.com/HaraShun/kubernetes.rb/archive/master.tar.gz
$ tar xpvf master.tar.gz
$ cd kubernetes.rb-master/03_sinatra/k8s/
$ kubectl apply -f deployment.yaml
$ kubectl apply -f service.yaml
$ kubectl get svc -w
sinatraのアプリがデプロイできたので、ほかもAzureでデプロイできそうという感触です。
まとめ
vi系エディタでも、ソースコード取得でもyamlファイルが配置できれば、kubectl
コマンドからデプロイできることがわかりました。
今後はk8sのyamlファイルが自在に書けるように学習を進めます。
おまけ: 監視について
クイックスタートに沿って確認してみました。
myAKSClusterリソース選択後、「正常性」(赤枠)から遷移します。
クイックスタートにはContainersに「ログの表示」リンクがあると記載されているのですが、見当たりませんでした。
-
Kubernetesの略称。字数が少なくなるので私はこの表記を多用します。同様の短縮の仕方にi18nがありますね。 ↩
-
講義スライド: https://docs.google.com/presentation/d/1_mQJQ0Yz1zJHqUPefNYNPfx5mjHEbfRwTzUOaWi8vZ8/edit#slide=id.p 勉強会ページ: 【サポーターズCoLab勉強会】Kubernetes(GKE)ハンズオン勉強会 ↩
Author And Source
この問題について(Azure Kubernetes Service クイック スタートでk8sでのデプロイの概要を掴む), 我々は、より多くの情報をここで見つけました https://qiita.com/ftnext/items/1b34eba1a295be30a77d著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .