Upload
Download free for 30 days
Login
Submit Search
AKS と ACI を組み合わせて使ってみた
Download as PPTX, PDF
2 likes
3,213 views
H
Hideaki Aoyagi
2018/06/23 「JAZUG熊本 (くまあず) :九州JAZUG連動企画 Day2」 で発表した資料です
Technology
Read more
1 of 23
Download now
Downloaded 14 times
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
More Related Content
PPTX
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
NTT DATA Technology & Innovation
PDF
Microsoft Azure Storage 概要
Takeshi Fukuhara
PDF
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
Amazon Web Services Japan
PDF
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
Amazon Web Services Japan
PDF
AWS CLIでAssumeRole
Tetsunori Nishizawa
PDF
AWSのログ管理ベストプラクティス
Akihiro Kuwano
PDF
AWS Black Belt Tech シリーズ 2015 - AWS Data Pipeline
Amazon Web Services Japan
PDF
マイクロサービス 4つの分割アプローチ
増田 亨
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
NTT DATA Technology & Innovation
Microsoft Azure Storage 概要
Takeshi Fukuhara
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
Amazon Web Services Japan
20190424 AWS Black Belt Online Seminar Amazon Aurora MySQL
Amazon Web Services Japan
AWS CLIでAssumeRole
Tetsunori Nishizawa
AWSのログ管理ベストプラクティス
Akihiro Kuwano
AWS Black Belt Tech シリーズ 2015 - AWS Data Pipeline
Amazon Web Services Japan
マイクロサービス 4つの分割アプローチ
増田 亨
What's hot
(20)
PPTX
Dockerからcontainerdへの移行
Akihiro Suda
PDF
オンプレミスRDBMSをAWSへ移行する手法
Amazon Web Services Japan
PDF
20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...
Amazon Web Services Japan
PDF
大規模なリアルタイム監視の導入と展開
Rakuten Group, Inc.
PPTX
ポスト・ラムダアーキテクチャの切り札? Apache Hudi(NTTデータ テクノロジーカンファレンス 2020 発表資料)
NTT DATA Technology & Innovation
PDF
20200826 AWS Black Belt Online Seminar AWS CloudFormation
Amazon Web Services Japan
PPTX
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
NTT DATA Technology & Innovation
PPTX
Redisの特徴と活用方法について
Yuji Otani
PDF
IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)
NTT DATA Technology & Innovation
PDF
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
Amazon Web Services Japan
PDF
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
Trainocate Japan, Ltd.
PDF
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
PDF
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
NTT DATA OSS Professional Services
PDF
Kuberneteの運用を支えるGitOps
shunki fujiwara
PDF
L2延伸を利用したクラウド移行とクラウド活用術
富士通クラウドテクノロジーズ株式会社
PDF
DockerとPodmanの比較
Akihiro Suda
PPTX
Azure API Management 俺的マニュアル
貴志 上坂
PDF
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
PDF
BuildKitの概要と最近の機能
Kohei Tokunaga
PPTX
もう怖くない。実例で学ぶAwsでのサイジングと料金計算
Takuya Tachibana
Dockerからcontainerdへの移行
Akihiro Suda
オンプレミスRDBMSをAWSへ移行する手法
Amazon Web Services Japan
20190828 AWS Black Belt Online Seminar Amazon Aurora with PostgreSQL Compatib...
Amazon Web Services Japan
大規模なリアルタイム監視の導入と展開
Rakuten Group, Inc.
ポスト・ラムダアーキテクチャの切り札? Apache Hudi(NTTデータ テクノロジーカンファレンス 2020 発表資料)
NTT DATA Technology & Innovation
20200826 AWS Black Belt Online Seminar AWS CloudFormation
Amazon Web Services Japan
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
NTT DATA Technology & Innovation
Redisの特徴と活用方法について
Yuji Otani
IAM Roles Anywhereのない世界とある世界(2022年のAWSアップデートを振り返ろう ~Season 4~ 発表資料)
NTT DATA Technology & Innovation
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
Amazon Web Services Japan
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
Trainocate Japan, Ltd.
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
Apache Kafkaって本当に大丈夫?~故障検証のオーバービューと興味深い挙動の紹介~
NTT DATA OSS Professional Services
Kuberneteの運用を支えるGitOps
shunki fujiwara
L2延伸を利用したクラウド移行とクラウド活用術
富士通クラウドテクノロジーズ株式会社
DockerとPodmanの比較
Akihiro Suda
Azure API Management 俺的マニュアル
貴志 上坂
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
BuildKitの概要と最近の機能
Kohei Tokunaga
もう怖くない。実例で学ぶAwsでのサイジングと料金計算
Takuya Tachibana
Ad
Similar to AKS と ACI を組み合わせて使ってみた
(20)
PDF
これから始めるAzure Kubernetes Service入門
Yuto Takei
PPTX
AKS (k8s) Hands on Lab Contents
Yoshio Terada
PPTX
2019年度 CaaS ワークショップ @ NTTコム
TomoyaTakegoshi
PDF
OSC2012 Tokyo/Spring JOSUG
Hideki Saito
PDF
半日でわかる コンテナー技術 (応用編)
Toru Makabe
PDF
Open Source x AI
Tsukasa Kato
PDF
Osc fukuoka xAI Meetup
ru pic
PDF
分散環境におけるDocker とオーケストレーション
Masahito Zembutsu
PDF
CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack witho...
VirtualTech Japan Inc.
PPTX
Java on Kubernetes on Azure
Yoshio Terada
PDF
AWS Black Belt Techシリーズ AWS Elastic Beanstalk
Amazon Web Services Japan
PPTX
KubeCon Recap for Istio and K8s network performance @Kubernetes Meetup #11
Masaya Aoyama
PDF
OCP Meetup Tokyo #05 ECK on OCP
Tetsuya Sodo
PDF
AlibabaCloudではじめるKubernetes
Shinya Mori (@mosuke5)
PPTX
Virtual Kubelet and Virtual Node
Yoshio Terada
PDF
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
Daisuke Ikeda
PPTX
Kubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみた
Akihito Inoh
PDF
Windows コンテナを AKS に追加する
Yuto Takei
PDF
[Japan Tech summit 2017] DEP 005
Microsoft Tech Summit 2017
PDF
Introduction of Azure Container Apps for Java Developers
Yoshio Terada
これから始めるAzure Kubernetes Service入門
Yuto Takei
AKS (k8s) Hands on Lab Contents
Yoshio Terada
2019年度 CaaS ワークショップ @ NTTコム
TomoyaTakegoshi
OSC2012 Tokyo/Spring JOSUG
Hideki Saito
半日でわかる コンテナー技術 (応用編)
Toru Makabe
Open Source x AI
Tsukasa Kato
Osc fukuoka xAI Meetup
ru pic
分散環境におけるDocker とオーケストレーション
Masahito Zembutsu
CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack witho...
VirtualTech Japan Inc.
Java on Kubernetes on Azure
Yoshio Terada
AWS Black Belt Techシリーズ AWS Elastic Beanstalk
Amazon Web Services Japan
KubeCon Recap for Istio and K8s network performance @Kubernetes Meetup #11
Masaya Aoyama
OCP Meetup Tokyo #05 ECK on OCP
Tetsuya Sodo
AlibabaCloudではじめるKubernetes
Shinya Mori (@mosuke5)
Virtual Kubelet and Virtual Node
Yoshio Terada
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
Daisuke Ikeda
Kubernetes Meetup Tokyo #8 Self-hosted Kubernetes を調べてみた
Akihito Inoh
Windows コンテナを AKS に追加する
Yuto Takei
[Japan Tech summit 2017] DEP 005
Microsoft Tech Summit 2017
Introduction of Azure Container Apps for Java Developers
Yoshio Terada
Ad
More from Hideaki Aoyagi
(18)
PPTX
re:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみた
Hideaki Aoyagi
PPTX
AWS Amplify 入門
Hideaki Aoyagi
PPTX
Amazon EKS への道 ~ EKS 再入門 ~
Hideaki Aoyagi
PPTX
Knative Lambda Runtimeを試してみた
Hideaki Aoyagi
PPTX
コンテナベースサーバーレスプラットフォーム「Knative」はServerlessなのか?
Hideaki Aoyagi
PPTX
AWSのセキュリティ関連サービスについてザっと整理してみた
Hideaki Aoyagi
PPTX
Amazon EKS への道 ~入門編~
Hideaki Aoyagi
PPTX
「ふくてん」に来てんね
Hideaki Aoyagi
PPTX
完全オンプレエンジニアがJAWS-UGへ参加してみて
Hideaki Aoyagi
PPTX
「豆の話」の続きのお話
Hideaki Aoyagi
PPTX
Azure/GCP使いの人にも知って欲しい(?) AWS Elastic Beanstalk
Hideaki Aoyagi
PPTX
Visual Studio 2017 事はじめ
Hideaki Aoyagi
PPTX
「さくらのIoT」でやってみたいこと
Hideaki Aoyagi
PPTX
とある初老インフラエンジニアの憂鬱
Hideaki Aoyagi
PPTX
はじめませんか? Bash on Windows
Hideaki Aoyagi
PPTX
AWS で VDI / DaaS っぽいものを作ってみた
Hideaki Aoyagi
PPTX
「Azureの動くしくみ」の片鱗を見て
Hideaki Aoyagi
PPTX
ネットワーク構成から考える AWS IaaS 管理
Hideaki Aoyagi
re:Invent 2021のS3アップデート紹介 & Glacier Instant Retrieval試してみた
Hideaki Aoyagi
AWS Amplify 入門
Hideaki Aoyagi
Amazon EKS への道 ~ EKS 再入門 ~
Hideaki Aoyagi
Knative Lambda Runtimeを試してみた
Hideaki Aoyagi
コンテナベースサーバーレスプラットフォーム「Knative」はServerlessなのか?
Hideaki Aoyagi
AWSのセキュリティ関連サービスについてザっと整理してみた
Hideaki Aoyagi
Amazon EKS への道 ~入門編~
Hideaki Aoyagi
「ふくてん」に来てんね
Hideaki Aoyagi
完全オンプレエンジニアがJAWS-UGへ参加してみて
Hideaki Aoyagi
「豆の話」の続きのお話
Hideaki Aoyagi
Azure/GCP使いの人にも知って欲しい(?) AWS Elastic Beanstalk
Hideaki Aoyagi
Visual Studio 2017 事はじめ
Hideaki Aoyagi
「さくらのIoT」でやってみたいこと
Hideaki Aoyagi
とある初老インフラエンジニアの憂鬱
Hideaki Aoyagi
はじめませんか? Bash on Windows
Hideaki Aoyagi
AWS で VDI / DaaS っぽいものを作ってみた
Hideaki Aoyagi
「Azureの動くしくみ」の片鱗を見て
Hideaki Aoyagi
ネットワーク構成から考える AWS IaaS 管理
Hideaki Aoyagi
AKS と ACI を組み合わせて使ってみた
1.
AKS と ACI
を 組み合わせて使ってみた 青柳 英明 2018/06/23 JAZUG 熊本(くまあず)「九州JAZUG連動企画 Day2」
2.
自己紹介 青柳 英明 職業: 福岡で
インフラSE やってます (オンプレOnly) 経歴: アプリケーション開発 … 3年 インフラエンジニア … 17年 Azure歴: 約2年? (久々に触りました・・・) コアメンバー: Fukuoka.NET (ふくてん) JAWS-UG福岡
3.
AKS (Azure Kubernetes
Service) とは → Azure が提供する 「マネージド」 な Kubernetes サービス 【 アンマネージド 】 API サーバ 管理サービス データベース Master ノード (管理プロセスを動かす) Worker ノード (コンテナ実行ホスト) 【 マネージド 】 API サーバ 管理サービス データベース サーバ構築不要 サーバ管理不要 Worker ノード (コンテナ実行ホスト)
4.
ACI (Azure Container
Instance) とは → Azure が提供する 「サーバレス」 なコンテナ実行環境 【 通常のコンテナ実行環境 】 Docker サーバ (物理/仮想) をホストとして利用 → 構築や管理が必要 【 サーバレスなコンテナ実行環境 】 Docker ホスト/Docker はサービスとして提供 → 構築・管理は不要
5.
AKS と ACI
を組み合わせて使う 【 標準の AKS 環境 】 API サーバ 管理サービス データベース サーバ構築不要 サーバ管理不要 Worker ノード (Azure VM) 【 AKS with ACI 】 API サーバ 管理サービス データベース サーバ構築不要 サーバ管理不要 ACI 上で実行 サーバ構築不要 サーバ管理不要 → 管理ノード・コンテナ実行ノード ともに構築・管理が不要になる
6.
「Virtual Kubelet」 ・・・
AKS with ACI を実現するためのソフトウェア AKS Kubelet Kubelet Worker ノード (Azure VM) Virtual Kubelet ACI ACI ACI (実態の無いノード)
7.
AKS 環境構築 (1/3) 使用するコマンドツールの準備 ・
Azure CLI ・ Kubectl ・ Helm … Virtual Kubelet の導入で使用 Azure Cloud Shell を使う場合 → 上記は既に導入済み PC / Mac を使う場合 → 適時導入 「Azure Cloud Shell」 → Azure Portal の右上のアイコンから起動
8.
AKS 環境構築 (2/3) ASK
クラスタの作成 ・ リソースグループの作成 az group create –n myResourceGroup –l westus AKS/ACI が利用できるリージョンに制限あり → 米国西部などを使用 ・ AKS クラスタの作成 az aks create -n myAksCluster -g myResourceGroup デフォルト (オプションを何もつけない) の場合 → サイズ 「DS1v2」 のノードが 「3つ」 作成される (料金を確認しておきましょう)
9.
AKS 環境構築 (3/3) Kubectl
コマンドツールの設定と確認 ・ 作成した AKS クラスタへの接続情報 (資格情報) を取り込む az aks get-credentials -n myAksCluster -g myResourceGroup → 「~/.kube/config」 へインポートされる ・ kubectl コマンドで接続できること (情報が取得できること) を確認 $ kubectl get nodes NAME STATUS ROLES AGE VERSION aks-nodepool1-38988403-0 Ready agent 22m v1.9.6 aks-nodepool1-38988403-1 Ready agent 22m v1.9.6 aks-nodepool1-38988403-2 Ready agent 22m v1.9.6
10.
Virtual Kubelet 環境構築
(1/3) Helm コマンドツールの設定と確認 ・ helm の初期化 helm init ・ 正常に初期化されたことを確認 $ helm version Client: &version.Version{SemVer:“v2.9.1”, GitCommit:・・・ Server: &version.Version{SemVer:“v2.9.1”, GitCommit:・・・ 「Server」 が上手く表示されない場合 → ここまでの設定を見直し
11.
Virtual Kubelet 環境構築
(2/3) Virtual Kubelet の導入 ・ 「ACI コネクター」 を使った Virtual Kubelet のインストール az aks install-connector -n myAksCluster -g myResourceGroup --connector-name myconnector ※ 実際は1行 README の手順にある 「Manual set-up」 「Deployment of the ACI provider in your cluster」 は実施する必要なし
12.
Virtual Kubelet 環境構築
(3/3) 環境構築の結果確認 $ kubectl get nodes NAME STATUS ROLES AGE VERSION aks-nodepool1-38988403-0 Ready agent 1d v1.9.6 aks-nodepool1-38988403-1 Ready agent 1d v1.9.6 aks-nodepool1-38988403-2 Ready agent 1d v1.9.6 virtual-kubelet-myconnector-linux Ready agent 1d v1.8.3 $ kubectl get pods –o wide NAME READY myconnector-linux-virtual-kubelet-for-aks-68f6b94867-5z55f 1/1 STATUS RESTARTS AGE IP NODE Running 0 1d 10.244.0.4 aks-nodepool1-38988403-0
13.
動作確認 (その1) README の手順に従い、サンプル
Pod (コンテナ) をデプロイ apiVersion: v1 kind: Pod metadata: name: helloworld spec: containers: - image: microsoft/aci-helloworld imagePullPolicy: Always name: helloworld ・・・(略)・・・ nodeName: virtual-kubelet-myconnector-linux tolerations: - key: azure.com/aci effect: NoSchedule この記述が必要
14.
動作確認 (その2) 自作のテストコンテナをデプロイ ・ 複数のPodを展開 ・
ロードバランサによる負荷分散 TCP/80 Service Load Balancer Pod ACI Pod ACI Pod ACI replicas:3 Deployment ReplicaSet ・・・ Kubernetes Resouece ・・・ Azure Service
15.
展開した 3 つの
Pod が、 Virtual Kubelet が管理する仮想ノード上で稼働している $ kubectl get pods -o wide NAME READY STATUS myconnector-linux-virtual-kubelet-for-aks-68f6b94867-5z55f 1/1 Running webserver-aci-deploy-7475c87d6f-8s57w 1/1 Running webserver-aci-deploy-7475c87d6f-d5lg6 1/1 Running webserver-aci-deploy-7475c87d6f-xrbdb 1/1 Running RESTARTS AGE IP NODE 0 1d 10.244.0.4 aks-nodepool1-38988403-0 0 4m 104.42.50.138 virtual-kubelet-myconnector-linux 0 4m 104.210.53.227 virtual-kubelet-myconnector-linux 0 4m 104.42.119.65 virtual-kubelet-myconnector-linux
16.
ACI のインスタンス一覧を確認 → 1つの
Pod につき、1つのコンテナインスタンスが作成されている $ az container list -o table Name Image --------------------------------------------- --------------------------------------------- default-webserver-aci-deploy-7475c87d6f-8s57w kumaazu2018.azurecr.io/go-webserver-sample:v1 default-webserver-aci-deploy-7475c87d6f-d5lg6 kumaazu2018.azurecr.io/go-webserver-sample:v1 default-webserver-aci-deploy-7475c87d6f-xrbdb kumaazu2018.azurecr.io/go-webserver-sample:v1
18.
ACR (Azure Container
Registry) の使用 公式コンテナイメージ の場合 (動作確認 その1) 自作コンテナイメージ の場合 (動作確認 その2) Docker Hub pull 認証なし Docker push ACR pull 認証が必要 AKS/ACI
19.
ACR の認証設定 AKS の場合 https://docs.microsoft.com/ja-jp/azure/container-registry/container-registry-auth-aks#grant-aks-access-to-acr →
Virtual Kubelet (AKS with ACI) の場合、この方法ではダメ ACI の場合 ・ az container create の 「--registry-username」 「--registry-password」 オプション → ACI は Virtual Kubelet から暗黙的にデプロイされるため、この方法は使えない ・ 「サービスプリンシパル」 を使用して認証設定を行う https://docs.microsoft.com/ja-jp/azure/container-registry/container-registry-auth-aks#access-with-kubernetes-secret → Virtual Kubelet (AKS with ACI) の場合は、この方法を使う必要がある
20.
サービスプリンシパルを作成し、資格情報を抽出する $ ACR_NAME=KumaAzu2018 $ SERVICE_PRINCIPAL_NAME=acr-service-principal $
ACR_LOGIN_SERVER=$(az acr show --name $ACR_NAME --query loginServer --output tsv) $ ACR_REGISTRY_ID=$(az acr show --name $ACR_NAME --query id --output tsv) $ SP_PASSWD=$(az ad sp create-for-rbac --name $SERVICE_PRINCIPAL_NAME --role Reader --scopes $ACR_REGISTRY_ID --query password --output tsv) $ CLIENT_ID=$(az ad sp show --id http://$SERVICE_PRINCIPAL_NAME --query appId --output tsv) $ echo $ACR_LOGIN_SERVER $ echo $CLIENT_ID $ echo $SP_PASSWD
21.
資格情報を Kubenetes の
「シークレット」 に格納する $ kubectl create secret docker-registry acr-auth --docker-server $ACR_LOGIN_SERVER --docker-username $CLIENT_ID --docker-password $SP_PASSWD --docker-email "
[email protected]
" secret "acr-auth" created $ kubectl get secrets -o wide NAME TYPE DATA AGE acr-auth kubernetes.io/dockerconfigjson 1 24s default-token-58jjl kubernetes.io/service-account-token 3 18h myconnector-linux-virtual-kubelet-for-aks Opaque 3 18h
22.
Kubenetes マニフェストファイルの記述内容 (抜粋) spec: containers: -
name: go-webserver-sample image: kumaazu2018.azurecr.io/go-webserver-sample:v1 imagePullSecrets: - name: acr-auth 「imagePullSecrets」 を記述 → イメージを ACR から pull する際、 シークレットから資格情報を取り出して認証を行う
23.
まとめ (所感) ・ 現状
(プレビュー) では、複数のコマンドツール (Azure CLI、kubectl、Helm) を 組み合わせて設定する必要あり ・ ACR の認証設定や、Kubernetes マニフェストファイルの記述など、 面倒な部分が多い 正式リリース時には、Azure CLI コマンド (az aks) に統合されたり、 GUI (ポータル) でも設定できるようになる・・・のかな?(期待) ご清聴ありがとうございました
Download