Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

20190626 Get Started Azure Container Registry

173 vues

Publié le

GitHub x CircleCI x Azure でやってみようDevOps!
初のCircleCI Japan & Microsoft Japan共同セミナー
https://microsoft-events.connpass.com/event/132473/

Azure コンテナ関連サービス全てで利用される、Azure Container Registry (ACR) の機能をご紹介しました。

Publié dans : Technologie
  • Soyez le premier à commenter

20190626 Get Started Azure Container Registry

  1. 1. Azure Azure Container Registry を使い倒す GitHub x CircleCI x Azure でやってみようDevOps! https://microsoft-events.connpass.com/event/132473/ Issei Hiraoka @hoisjp 日本マイクロソフト クラウドソリューションアーキテクト 2019/06/26 20min
  2. 2. 平岡 一成 ひらおかいっせい 日本マイクロソフト株式会社 パートナー事業本部 > パートナー技術統括本部 > クラウドソリューションアーキテクト 担当領域 Azure Apps (Application Development) Web, API Server, PaaS, OSS, Container, Cognitive Services, NoSQL 経歴 • 2004年より、エンジニアとしてWebアプリケーション開発・運用プロジェクトに従事。 • 2012年に国内最大手EC事業会社に入社。EC サービスを支えるバックエンドAPIの開発・運用を行うグループマ ネージャを担当。大規模&高負荷システムの構築を得意とする。 • 2017年3月より現職。Azureパートナー向けの技術支援やPoC支援などを担当し、現在に至る。 @hoisjp hoisjp
  3. 3. Azure Container Registry Azure コンテナ関連サービス全てで利用される 基本機能のご紹介 使い倒すための機能群 Tips Azure 構成の紹介 CI / CD パイプライン構築の例 Next Step の紹介 Microsoft Learn アジェンダ for 20 minutes 資料はセッション後にすぐ公開します 以下のあたりは話しません Azure DevOps Azure Kubernetes Service
  4. 4. Azureのコンテナー エコシステム IaaSPaaS Azure services SQL Database Redis Cache CosmosDB And more! Partner services OpenShift Pivotal Cloud Foundry Docker Enterprise Edition Mesosphere DC/OS Azure Azure Container Registry (ACR) OSBA Azure Kubernetes Service (AKS) AKS Engine Batch Azure Container Instances (ACI) Virtual Machine Scale Sets (VMSS) Service Fabric Mesh Cluster Virtual kubelet Web Apps for Container ( App Service ) Azure Virtual Machine
  5. 5. Azure Container Registry Docker イメージのプライベートレジストリ
  6. 6. Azure Container Registry Docker イメージのプライベートレジストリ Docker コマンドライ ンをそのまま使える geo-replicationAzure の全コンテナ サービスをサポート
  7. 7. ACR: イメージストレージ https://docs.microsoft.com/ja-jp/azure/container-registry/container-registry-storage • 全てのイメージは保存時に暗号化される • 全てのプラン Basic/Standard/Premium で地理的冗長構成 • Docker, OCI (Open Container Initiative) のイメージフォーマットをサポート • 加えて、Helm チャート をサポート(プレビュー)
  8. 8. ACR の認証 https://docs.microsoft.com/ja-jp/azure/container-registry/container-registry-roles Role Based Access Control (RBAC) を用いて、大きく以下の2種類 Role Create/Delete Registries Repository/Tag Listing Docker Push Docker Pull Owner Contributor Reader acr-push* acr-pull*
  9. 9. User Authentication • 個人の認証には、Azure Active Directory Identity を使う • 使い慣れている docker コマンドと互換 az login az acr login --name [registryName] docker push / pull
  10. 10. Service Authentication サービスの認証には、AAD サービスプリンシパルを使った、 Server/Headless アイデンティティ を使う az login --service-principal ¥ --tenant example.com ¥ -u http://myapp-id ¥ -p WeryWerySecwet az acr login --name [acrName] docker push / pull docker login demo0626.azurecr.io ¥ -u http://myapp-id ¥ -p WeryWerySecwet docker push / pull
  11. 11. 補足:サービスプリンシパルとは https://docs.microsoft.com/ja-jp/azure/active-directory/develop/app-objects-and-service-principals 個人にではなく、 アプリケーションに対する 認証の仕組み これをもって、 アプリケーションがレジストリ に対してイメージを push/pull可能になる
  12. 12. ACR タスク クラウド上でネイティブのコンテナビルドサービスを提供 Follows docker build semantics docker build –t helloworld:v1 . az acr build –t helloworld{{.Build.ID}} . Trigger based builds (git commits, base image updates) helloworld{{.Build.ID}} myBuildTask jengademos https://github.com/me/helloworld master $PAT 2018.05 Public Preview! (ACR Build) 2018.09 GA https://docs.microsoft.com/ja-jp/azure/container-registry/container-registry-tasks-overview
  13. 13. 1. ある拠点の開発者が、コンテナー イメージを構築す るためにコードをコミットする 2. イメージは DNS に基づいて最も近い ACR リージョ ンにプッシュされる 3. その拠点へのデプロイがトリガーされる 4. ACR は設定されたリージョンへ地理的レプリケー ションを行う 5. もう一方の拠点へのデプロイがトリガーされる 6. 双方の AKS クラスターが contoso.azurecr.io からイ メージをプルする ACR: geo-replication https://docs.microsoft.com/ja-jp/azure/container-registry/container-registry-geo-replication Developer Container image contoso.azurecr.io East US West Europe contoso.azurecr.io contoso.azurecr.io/app:v1 AKS CD ACR contoso.azurecr.io/app:v1 AKSCDACR Geo-Replication ※ Premiumプランでのみサポート
  14. 14. ACR: Helm リポジトリ in preview Helm Chart を Azure Container Registry へプッシュする 2018.09 Public Preview! https://azure.microsoft.com/en-us/blog/azure-container-registry-public-preview-of-helm-chart-repositories-and-more/ https://docs.microsoft.com/ja-jp/azure/container-registry/container-registry-helm-repos az configure --defaults acr=<acrName> az acr helm repo add mkdir ~/acr-helm && cd ~/acr-helm helm fetch stable/wordpress az acr helm push wordpress-2.1.10.tgz
  15. 15. Tips: VS Code Docker 拡張
  16. 16. 紹介できなかったコンテンツたち セキュリティ • Stored • Authenticated • Scanned • Signed Image 管理 • Import • Purge Policies イベント • Webhooks • Event Grid
  17. 17. Azure 構成の紹介
  18. 18. circleci/azure-cli@1.1.0 Azure CLI をインストールして、Azure ログインをサポート あとはあらゆるコマンドでお好きなように circleci/azure-aks@0.1.0 cluster 作成 削除、helm chart のインストールなど circleci/azure-acr@0.1.1 build-image, push-image など イメージがプッシュされたトリガーを使って、後続の連携が可能 CircleCI で利用可能な手段は? https://circleci.com/orbs/registry/?filterBy=all&query=circleci%2Fazure query: circleci/azure
  19. 19. GitHub -> CircleCI -> Azure の構成例 ACR の geo-replication、 App Service の CD 機能 git push trigger ACR CD CD 東日本リージョン 西日本リージョン ACR App Service App Service Azure Monitor docker push feedback planning geo-replication 参考:https://docs.microsoft.com/ja-jp/azure/architecture/example-scenario/apps/devops-with-aks
  20. 20. 余談 - Orbs は公開されているので https://github.com/CircleCI-Public/azure-acr-orb 早速 Pull Request! https://github.com/CircleCI-Public/azure-acr-orb/pull/3
  21. 21. What’s next to get started?
  22. 22. Azure Container Registry を使用してコンテナー イメージをビルドして保存する Azure Container Instances で Docker コンテナー を実行する https://docs.microsoft.com/ja-jp/learn/paths/administer-containers-in-azure/ Azure Container Instances は、Azure でコンテナーを実行する方法として最も簡 単で迅速な方法です。 このラーニング パス では、コンテナーを作成して管理する方法、 ACI を利用して Kubernetes に柔軟なス ケールを与える方法を紹介します。
  23. 23. © Copyright Microsoft Corporation. All rights reserved.

×