Azure 開発者向けファースト ステップ ガイドGet started guide for Azure developers

Azure とはWhat is Azure?

Azure は、既存のアプリケーションをホストし、新しいアプリケーションの開発を簡易化し、さらにオンプレミス アプリケーションも強化することができる機能が一式そろったクラウド プラットフォームです。Azure is a complete cloud platform that can host your existing applications, streamline the development of new applications, and even enhance on-premises applications. Azure はアプリケーションの開発、テスト、デプロイ、管理に必要なクラウド サービスを統合しているだけでなく、クラウド コンピューターの効率性も利用しています。Azure integrates the cloud services that you need to develop, test, deploy, and manage your applications—while taking advantage of the efficiencies of cloud computing.

Azure でアプリケーションをホストすると、アプリケーションのデプロイを小規模から始めて、顧客の需要増大に合わせて規模を拡大することができます。By hosting your applications in Azure, you can start small and easily scale your application as your customer demand grows. また、高可用性アプリケーションに必要な信頼性があり、リージョン間のフェールオーバー機能もあります。Azure also offers the reliability that’s needed for high-availability applications, even including failover between different regions. Azure Portal を使用すると、すべての Azure サービスを簡単に管理できます。The Azure portal lets you easily manage all your Azure services. また、サービス固有の API とテンプレートを使用して、プログラムでサービスを管理することもできます。You can also manage your services programmatically by using service-specific APIs and templates.

対象読者: このガイドは、Azure プラットフォームのアプリケーション開発者向け入門ガイドです。Who should read this: This guide is an introduction to the Azure platform for application developers. 初めて Azure で新しいアプリケーションを構築する場合、または既存のアプリケーションを Azure に移行する場合のガイダンスと手順を説明しています。It provides guidance and direction that you need to start building new applications in Azure or migrating existing applications to Azure.

どこから始めるかWhere do I start?

Azure が提供しているどのサービスでも、ソリューション アーキテクチャのサポートに必要なサービスをなかなか見つけ出せないことがあります。With all the services that Azure offers, it can be a daunting task to figure out which services you need to support your solution architecture. ここでは、開発者が一般的に使用する Azure サービスを取り上げます。This section highlights the Azure services that developers commonly use. すべての Azure サービスの一覧については、Azure のドキュメントを参照してください。For a list of all Azure services, see the Azure documentation.

まず、Azure でアプリケーションをホストする方法を決める必要があります。First, you must decide on how to host your application in Azure. インフラストラクチャ全体を仮想マシン (VM) として管理する必要はありますか。Do you need to manage your entire infrastructure as a virtual machine (VM). Azure が提供するプラットフォーム管理施設を使用できますか。Can you use the platform management facilities that Azure provides? それとも、コードの実行をホストする用途でのみサーバーレス フレームワークが必要でしょうか。Maybe you need a serverless framework to host code execution only?

アプリケーションにクラウド記憶域が必要なら、Azure には複数のオプションがあります。Your application needs cloud storage, which Azure provides several options for. Azure のエンタープライズ認証を利用することができます。You can take advantage of Azure's enterprise authentication. また、クラウドベースの開発および監視用のツールもあり、ほとんどのホスティング サービスでは DevOps 統合が提供されています。There are also tools for cloud-based development and monitoring, and most hosting services offer DevOps integration.

それでは、アプリケーションに合わせて調査をお勧めするサービスをいくつか見てみましょう。Now, let's look at some of the specific services that we recommend investigating for your applications.

アプリケーションのホスティングApplication hosting

Azure は、アプリケーションの実行に利用できるクラウドベースのコンピューティング サービスをいくつか提供しています。そのため、インフラストラクチャの詳細について心配する必要はありません。Azure provides several cloud-based compute offerings to run your application so that you don't have to worry about the infrastructure details. アプリケーションの使用量の増大に合わせてリソースのスケール アップまたはスケール アウトを簡単に実行できます。You can easily scale up or scale out your resources as your application usage grows.

Azure は、アプリケーション開発とホスティングのニーズをサポートするサービスを提供しています。Azure offers services that support your application development and hosting needs. また、アプリケーション ホスティングを詳細に制御できるサービスとしてのインフラストラクチャ (IaaS) も提供しています。Azure provides infrastructure-as-a-service (IaaS) to give you full control over your application hosting. Azure のサービスとしてのプラットフォーム (PaaS) サービスは、アプリの強化に必要な完全に管理されたサービスを提供しています。Azure's platform-as-a-service (PaaS) offerings provide the fully managed services needed to power your apps. Azure には、本当の意味でのサーバーレス ホスティングもあります。このサービスを利用する場合、ユーザーに必要な作業はコードの作成のみです。There is even true serverless hosting in Azure where all you need to do is write your code.

Azure アプリケーション ホスティングのオプション

Azure App ServiceAzure App Service

Web ベースのプロジェクトを最も短時間で公開できる方法が必要な場合は、Azure App Service をお勧めします。When you want the quickest path to publish your web-based projects, consider Azure App Service. App Service では、モバイル クライアントをサポートする Web アプリを拡張し、使用されている REST API を公開する作業も簡単です。App Service makes it easy to extend your web apps to support your mobile clients and publish easily consumed REST APIs. このプラットフォームには、ソーシャル プロバイダーを使用した認証、トラフィックベースの自動スケーリング、実稼働環境でのテスト、継続的かつコンテナーベースのデプロイの機能があります。This platform provides authentication by using social providers, traffic-based autoscaling, testing in production, and continuous and container-based deployments.

Web アプリ、モバイル アプリ バックエンド、および API アプリを作成できます。You can create web apps, mobile app back ends, and API apps.

上に示した 3 つのアプリケーションの種類は、いずれも App Service ランタイムを共有しているため、1 つのプロジェクトやソリューションから、Web サイトのホスト、モバイル クライアントのサポート、自作 API を Azure で公開することのすべてを行うことができます。Because all three app types share the App Service runtime, you can host a website, support mobile clients, and expose your APIs in Azure, all from the same project or solution. App Service の詳細については、「Web Apps の概要」を参照してください。To learn more about App Service, see What is Azure Web Apps.

App Service は DevOps を念頭に置いて設計されています。App Service has been designed with DevOps in mind. GitHub webhook、Jenkins、Visual Studio Team Services、TeamCity など、公開と継続的インテグレーション デプロイに対応する多様なツールをサポートしています。It supports various tools for publishing and continuous integration deployments, including GitHub webhooks, Jenkins, Visual Studio Team Services, TeamCity, and others.

オンライン移行ツールを使用して、既存のアプリケーションを App Service に移行することができます。You can migrate your existing applications to App Service by using the online migration tool.

使用する場合: App Service を使用するのは、既存の Web アプリケーションを Azure に移行する場合、および Web アプリ用に完全に管理されているホスティング プラットフォームが必要な場合です。When to use: Use App Service when you’re migrating existing web applications to Azure, and when you need a fully managed hosting platform for your web apps. また、モバイル クライアントをサポートする必要がある場合、またはアプリと共に REST API を公開する必要がある場合にも App Service を使用できます。You can also use App Service when you need to support mobile clients or expose REST APIs with your app.

作業開始: App Service を使用すると、初めての Web アプリモバイル アプリAPI アプリでも簡単に作成、デプロイできます。Get started: App Service makes it easy to create and deploy your first web app, mobile app, or API app.

今すぐ試す: App Service なら、Azure アカウントを新規登録することなく、一時的なアプリをプロビジョニングしてプラットフォームを試すことができます。Try it now: App Service lets you provision a short-lived app to try the platform without having to sign up for an Azure account. プラットフォームと Azure App Service アプリの作成を試してみましょう。Try the platform and create your Azure App Service app.

Azure Virtual MachinesAzure Virtual Machines

サービスとしてのインフラストラクチャ (IaaS) プロバイダーの場合、Azure を使用すると、自社のアプリケーションを Windows または Linux VM にデプロイまたは移行することができます。As an infrastructure-as-a-service (IaaS) provider, Azure lets you deploy to or migrate your application to either Windows or Linux VMs. Azure Virtual Machines は、Azure Virtual Network と組み合わせると、Windows または Linux VM を Azure にデプロイすることもできます。Together with Azure Virtual Network, Azure Virtual Machines supports the deployment of Windows or Linux VMs to Azure. VM では、マシンの構成全体を制御できます。With VMs, you have total control over the configuration of the machine. VM を使用する場合、すべてのサーバー ソフトウェアのインストール、構成、メンテナンス、オペレーティング システムの修正プログラムを担当することになります。When using VMs, you’re responsible for all server software installation, configuration, maintenance, and operating system patches.

VM の場合は細かいレベルで制御できるため、Azure 上で PaaS モデルに合わない幅広いサーバー ワークロードを実行できます。Because of the level of control that you have with VMs, you can run a wide range of server workloads on Azure that don’t fit into a PaaS model. たとえば、データベース サーバー、Windows Server Active Directory、Microsoft SharePoint などのワークロードが含まれます。These workloads include database servers, Windows Server Active Directory, and Microsoft SharePoint. 詳細については、Linux または Windows の Virtual Machines のドキュメントを参照してください。For more information, see the Virtual Machines documentation for either Linux or Windows.

使用する場合: アプリケーション インフラストラクチャを完全に制御したい場合、またはオンプレミス アプリケーション ワークロードを変更せずに Azure に移行したい場合は、Virtual Machines を使用します。When to use: Use Virtual Machines when you want full control over your application infrastructure or to migrate on-premises application workloads to Azure without having to make changes.

作業開始: Linux VM または Windows VM を Azure Portal から作成します。Get started: Create a Linux VM or Windows VM from the Azure portal.

Azure Functions (サーバーレス)Azure Functions (serverless)

アプリケーションまたはコードを実行するインフラストラクチャ全体を構築し、管理する心配は不要です。Rather than of worrying about building out and managing a whole application or the infrastructure to run your code. コードを作成し、イベントやスケジュールに応答して実行させるだけでよいとしたらどうしますか。What if you could just write your code and have it run in response to events or on a schedule? Azure Functions は、必要なコードを作成するだけで済む "サーバーレス" スタイルのサービスです。Azure Functions is a "serverless"-style offering that lets you write just the code you need. Functions を使用すると、コードの実行は HTTP 要求、webhook、クラウド サービス イベント、またはスケジュールに応じてトリガーされます。With Functions, code execution is triggered by HTTP requests, webhooks, cloud service events, or on a schedule. C#、F#、Node.js、Python、PHP など、好きな言語でコードを開発することもできます。You can code in your development language of choice, such as C#, F#, Node.js, Python, or PHP. 使用量ベースの課金の場合、コードの実行時にのみ課金されます。また、必要に応じて Azure は拡大縮小されます。With consumption-based billing, you pay only for the time that your code executes, and Azure scales as needed.

使用する場合: 他の Azure サービス、Web ベースのイベント、またはスケジュールに応じてトリガーされるコードがある場合に、Azure Functions を使用します。When to use: Use Azure Functions when you have code that is triggered by other Azure services, by web-based events, or on a schedule. また、完全なホスト型プロジェクトのオーバーヘッドが必要ない場合、またはコードの実行時にのみ料金を支払いたい場合にも Functions を使用できます。You can also use Functions when you don't need the overhead of a complete hosted project or when you only want to pay for the time that your code runs. 詳細については、「Azure Functions の作業開始」を参照してください。To learn more, see Azure Functions Overview.

作業開始: ポータルから初めて関数を作成するには、Functions のクイックスタート チュートリアルに従います。Get started: Follow the Functions quickstart tutorial to create your first function from the portal.

今すぐ試す: Azure Functions を使用すると、Azure アカウントを新規登録することなくコードを実行できます。Try it now: Azure Functions lets you run your code without having to sign up for an Azure account. 今すぐ試して初めての Azure 関数を作成しましょう。Try it now at and create your first Azure Function.

Azure Service FabricAzure Service Fabric

Azure Service Fabric は、スケーラブルで信頼性に優れたマイクロサービスの構築、パッケージ化、デプロイ、管理を簡単に行うことができる分散システム プラットフォームです。Azure Service Fabric is a distributed systems platform that makes it easy to build, package, deploy, and manage scalable and reliable microservices. また、デプロイ済みのアプリケーションをプロビジョニング、デプロイ、監視、アップグレード/修正、削除するための包括的なアプリケーション管理機能も提供します。It also provides comprehensive application management capabilities for provisioning, deploying, monitoring, upgrading/patching, and deleting deployed applications. 共有プールのマシン上で動作するアプリは、小規模から開始し、必要に応じて数百または数千ものコンピューターの規模まで拡張することができます。Apps, which run on a shared pool of machines, can start small and scale to hundreds or thousands of machines as needed.

Service Fabric は、Open Web Interface for .NET (OWIN) と ASP.NET Core を使用した Web API をサポートします。Service Fabric supports WebAPI with Open Web Interface for .NET (OWIN) and ASP.NET Core. また、.NET Core と Java の両方で Linux 上のサービスを構築するための SDK を提供しています。It provides SDKs for building services on Linux in both .NET Core and Java. Service Fabric の詳細については、Service Fabric のラーニング パスを参照してください。To learn more about Service Fabric, see the Service Fabric learning path.

使用する場合: マイクロサービス アーキテクチャを使用するアプリケーションを作成する場合、または既存のアプリケーションを書き換える場合は、Service Fabric がお勧めです。When to use: Service Fabric is a good choice when you’re creating an application or rewriting an existing application to use a microservice architecture. 基になるインフラストラクチャをより細かく制御する場合、または直接アクセスする場合は、Service Fabric を使用します。Use Service Fabric when you need more control over, or direct access to, the underlying infrastructure.

作業開始: 最初の Azure Service Fabric アプリケーションを作成しますGet started: Create your first Azure Service Fabric application.

Azure サービスでアプリケーションを強化するEnhance your applications with Azure services

Azure では、アプリケーション ホスティングに加え、クラウドとオンプレミス両方のアプリケーションの機能、開発、およびメンテナンスを強化できるサービス プランを提供しています。In addition to application hosting, Azure provides service offerings that can enhance the functionality, development, and maintenance of your applications, both in the cloud and on-premises.

ホストされる記憶域とデータ アクセスHosted storage and data access

ほとんどのアプリケーションはデータを格納する必要があるため、Azure でアプリケーションをホストする方法の選択にかかわらず、次の機器とデータ サービスの 1 つまたは複数を検討してください。Most applications must store data, so regardless of how you decide to host your application in Azure, consider one or more of the following storage and data services.

  • Azure Cosmos DB: 包括的な SLA により、任意の数の地理的リージョンでスループットとストレージを柔軟にスケーリングできるグローバル分散マルチモデル データベースです。Azure Cosmos DB: A globally distributed, multi-model database service that enables you to elastically scale throughput and storage across any number of geographical regions with a comprehensive SLA.

    使用する場合: アプリケーションに、明確に定義された複数の整合性モデルのドキュメント、テーブル、またはグラフ データベース (MongoDB データベースを含む) が必要な場合。When to use: When your application needs document, table, or graph databases, including MongoDB databases, with multiple well-defined consistency models.

    開始: Azure Cosmos DB Web アプリをビルドしますGet started: Build an Azure Cosmos DB web app. MongoDB 開発者でない場合は、Azure Cosmos DB を使用した MongoDB Web アプリのビルドに関する記事をご覧ください。If you’re a MongoDB developer, see Build a MongoDB web app with Azure Cosmos DB.

  • Azure Storage: BLOB、クエリ、ファイルなどの非リレーショナル データに対して、耐久性があり、高可用な記憶域を提供します。Azure Storage: Offers durable, highly available storage for blobs, queues, files, and other kinds of nonrelational data. Storage は、VM 向けに記憶域の基盤を提供します。Storage provides the storage foundation for VMs.

    使用する場合: キーと値のペア (テーブル)、BLOB、ファイル共有、メッセージ (キュー) など、非リレーショナル データを格納するアプリケーションの場合。When to use: When your app stores nonrelational data, such as key-value pairs (tables), blobs, files shares, or messages (queues).

    作業開始: BLOBテーブルクエリ、またはファイルのいずれかの記憶域から選択します。Get started: Choose from one of these types storage: blobs, tables, queues, or files.

  • Azure SQL Database: クラウドにリレーショナル表形式データを格納する Azure ベース バージョンの Microsoft SQL Server エンジンです。Azure SQL Database: An Azure-based version of the Microsoft SQL Server engine for storing relational tabular data in the cloud. SQL Database は、予測可能なパフォーマンス、ダウンタイムなしのスケーラビリティ、ビジネス継続性、データ保護を提供しています。SQL Database provides predictable performance, scalability with no downtime, business continuity, and data protection.

    使用する場合: 参照整合性、トランザクションのサポート、および TSQL クエリのサポートがあるデータ記憶域が必要なアプリケーションの場合。When to use: When your application requires data storage with referential integrity, transactional support, and support for TSQL queries.

    作業開始: Azure Portal を使用して数分で SQL データベースを作成できます。Get started: Create a SQL database in minutes by using the Azure portal.

Azure Data Factory を使用して既存のオンプレミス データを Azure に移行することができます。You can use Azure Data Factory to move existing on-premises data to Azure. データをクラウドに移行する準備ができていない場合は、BizTalk Services のハイブリッド接続を使用して、App Service でホストされるアプリをオンプレミス リソースに接続できます。If you aren't ready to move data to the cloud, Hybrid Connections in BizTalk Services lets you connect your App Service hosted app to on-premises resources. また、オンプレミス アプリケーションから Azure データと記憶域サービスに接続することもできます。You can also connect to Azure data and storage services from your on-premises applications.

Docker のサポートDocker support

OS 仮想化の形式の 1 つである Docker コンテナーを使用すると、より効率的で予測可能な方法でアプリケーションをデプロイできます。Docker containers, a form of OS virtualization, let you deploy applications in a more efficient and predictable way. コンテナー化されたアプリケーションは、開発およびテスト システム上と同様に実稼働環境でも動作します。A containerized application works in production the same way as on your development and test systems. コンテナーは、標準の Docker ツールを使用して管理できます。You can manage containers by using standard Docker tools. コンテナーベースのアプリケーションは、既存のスキルと人気のあるオープンソース ツールを使用して Azure でデプロイおよび管理できます。You can use your existing skills and popular open-source tools to deploy and manage container-based applications on Azure.

Azure には、アプリケーションでコンテナーを使用する方法がいくつか用意されています。Azure provides several ways to use containers in your applications.

  • Azure Docker VM 拡張機能: Docker ツールを使用して、Docker ホストとして動作するように VM を構成できます。Azure Docker VM extension: Lets you configure your VM with Docker tools to act as a Docker host.

    使用する場合: VM 上のアプリケーション用に一貫性のあるコンテナー デプロイを生成する場合、または Docker Compose を使用する場合。When to use: When you want to generate consistent container deployments for your applications on a VM, or when you want to use Docker Compose.

    作業開始: Docker VM 拡張機能を使用して Azure に Docker 環境を作成しますGet started: Create a Docker environment in Azure by using the Docker VM extension.

  • Azure Container Service: コンテナー化されたアプリケーションを実行するように事前構成されている仮想マシンのクラスターを簡単に作成、構成および管理できます。Azure Container Service: Lets you create, configure, and manage a cluster of virtual machines that are preconfigured to run containerized applications. Container Service の詳細については、「Azure Container Service を使用した Docker コンテナー ホスティング ソリューションの概要」を参照してください。To learn more about Container Service, see Azure Container Service introduction.

    使用する場合: 追加のスケジュール設定および管理ツールを提供する実稼働レベルのスケーラブルな環境を作成する場合、または Docker Swarm クラスターをデプロイする場合。When to use: When you need to build production-ready, scalable environments that provide additional scheduling and management tools, or when you’re deploying a Docker Swarm cluster.

    作業開始: Container Service クラスターをデプロイしますGet started: Deploy a Container Service cluster.

  • Docker Machine: docker-machine コマンドを使用して、仮想ホスト上で Docker Engine をインストールおよび管理できます。Docker Machine: Lets you install and manage a Docker Engine on virtual hosts by using docker-machine commands.

    使用する場合: 1 つの Docker ホストを作成して、アプリのプロトタイプを短時間で作成する必要がある場合。When to use: When you need to quickly prototype an app by creating a single Docker host.

  • App Service 用のカスタム Docker イメージ: Linux 上に Web アプリをデプロイするときに、コンテナー レジストリまたは顧客のコンテナーから Docker コンテナーを使用できます。Custom Docker image for App Service: Lets you use Docker containers from a container registry or a customer container when you deploy a web app on Linux.

    使用する場合: Linux 上の Web アプリを Docker イメージにデプロイする場合。When to use: When deploying a web app on Linux to a Docker image.

    作業開始: Linux で App Service 用のカスタム Docker イメージを使用しますGet started: Use a custom Docker image for App Service on Linux.

認証Authentication

アプリケーションの使用者を把握することだけでなく、リソースへの不正アクセスを防止することも重要です。It's crucial to not only know who is using your applications, but also to prevent unauthorized access to your resources. Azure には、アプリ クライアントを認証する方法がいくつか用意されています。Azure provides several ways to authenticate your app clients.

  • Azure Active Directory (Azure AD): Microsoft のマルチテナントでクラウドベースの ID およびアクセス管理サービスです。Azure Active Directory (Azure AD): The Microsoft multitenant, cloud-based identity and access management service. Azure AD と統合することで、シングル サインオン (SSO) 機能をアプリケーションに追加できます。You can add single-sign on (SSO) to your applications by integrating with Azure AD. ディレクトリのプロパティには、Azure AD Graph API から直接、または Microsoft Graph API からアクセスできます。You can access directory properties by using the Azure AD Graph API directly or the Microsoft Graph API. OAuth 2.0 認証フレームワークと Open ID Connect の場合、ネイティブ HTTP/REST エンドポイントとマルチプラットフォーム Azure AD Authentication ライブラリを使用して、Azure AD のサポートと統合できます。You can integrate with Azure AD support for the OAuth2.0 authorization framework and Open ID Connect by using native HTTP/REST endpoints and the multiplatform Azure AD authentication libraries.

    使用する場合: SSO エクスペリエンスを提供する場合、Graph ベースのデータを使用する場合、またはドメインベースのユーザーを認証する場合。When to use: When you want to provide an SSO experience, work with Graph-based data, or authenticate domain-based users.

    作業開始: 詳細については、「開発者のための Azure Active Directory」を参照してください。Get started: To learn more, see the Azure Active Directory developer's guide.

  • App Service 認証: App Service を選択してアプリをホストする場合、Azure AD の組み込みの認証サポートと共に、ソーシャル ID プロバイダー (Facebook、Google、Microsoft、Twitter など) も利用できます。App Service Authentication: When you choose App Service to host your app, you also get built-in authentication support for Azure AD, along with social identity providers—including Facebook, Google, Microsoft, and Twitter.

    使用する場合: Azure AD、ソーシャル ID プロバイダー、またはその両方を使用して App Service アプリで認証を有効にする場合。When to use: When you want to enable authentication in an App Service app by using Azure AD, social identity providers, or both.

    作業開始: App Service の認証の詳細については、「Azure App Service での認証および承認」を参照してください。Get started: To learn more about authentication in App Service, see Authentication and authorization in Azure App Service.

Azure でのセキュリティのベスト プラクティスについては、「Azure セキュリティのベスト プラクティスとパターン」を参照してください。To learn more about security best practices in Azure, see Azure security best practices and patterns.

監視Monitoring

Azure でアプリケーションを起動し、実行する場合、パフォーマンス、問題、ユーザーがアプリを使用する方法を監視する機能が必要です。With your application up and running in Azure, you need to be able to monitor performance, watch for issues, and see how customers are using your app. Azure には、いくつかの監視オプションがあります。Azure provides several monitoring options.

  • Visual Studio Application Insights: Visual Studio と統合してライブ Web アプリケーションを監視する、Azure でホストされる拡張可能な分析サービスです。Visual Studio Application Insights: An Azure-hosted extensible analytics service that integrates with Visual Studio to monitor your live web applications. Azure 上でホストするかどうかにかかわらず、アプリのパフォーマンスと使いやすさを継続的に改善するために必要なデータを入手できます。It gives you the data that you need to continuously improve the performance and usability of your apps, whether they’re hosted on Azure or not.

    作業開始: Application Insights のチュートリアルに従ってください。Get started: Follow the Application Insights tutorial.

  • Azure Monitor: Azure インフラストラクチャとリソースから生成される指標とログに対して、視覚化、クエリ、ルート、アーカイブ、および処理を実行できるサービスです。Azure Monitor: A service that helps you to visualize, query, route, archive, and act on the metrics and logs that are generated by your Azure infrastructure and resources. Monitor には、Azure Portal に表示されるデータ ビューが用意されています。また、Azure リソースを監視できる 1 つのソースです。Monitor provides the data views that you see in the Azure portal and is a single source for monitoring Azure resources.

    作業開始: Azure Monitor を使ってみましょうGet started: Get started with Azure Monitor.

DevOps 統合DevOps integration

VM をプロビジョニングするか、継続的インテグレーションによって Web アプリを発行するかにかかわらず、Azure は人気のある DevOps ツールの多くと統合できます。Whether it's provisioning VMs or publishing your web apps with continuous integration, Azure integrates with most of the popular DevOps tools. Jenkins、GitHub、Puppet、Chef、TeamCity、Ansible、VSTS などのツールがサポートされているので、既に所有しているツールを利用し、経験を最大限に活用することができます。With support for tools like Jenkins, GitHub, Puppet, Chef, TeamCity, Ansible, VSTS, and others, you can work with the tools that you already have and maximize your existing experience.

今すぐ試す: DevOps 統合のいくつかを試しましょうTry it now: Try out several of the DevOps integrations.

作業開始: App Service アプリの DevOps オプションの詳細については、「Azure App Service への継続的なデプロイ」を参照してください。Get started: To see DevOps options for an App Service app, see Continuous Deployment to Azure App Service.

Azure Azure リージョンAzure regions

Azure は、世界中のさまざまな地域で一般的に利用できるグローバル クラウド プラットフォームです。Azure is a global cloud platform that is generally available in many regions around the world. Azure にサービス、アプリケーション、または VM をプロビジョニングする場合、リージョンを選択するように求められます。リージョンは、アプリケーションが実行される、またはデータが格納される特定のデータセンターを示しています。When you provision a service, application, or VM in Azure, you are asked to select a region, which represents a specific datacenter where your application runs or where your data is stored. これらのリージョンは特定の場所に対応しており、「Azure リージョン」ページに公開されています。These regions correspond to specific locations, which are published on the Azure regions page.

アプリケーションとデータに最適なリージョンを選択するChoose the best region for your application and data

Azure を使用する利点の 1 つは、世界中のさまざまなデータセンターにアプリケーションをデプロイできるということです。One of the benefits of using Azure is that you can deploy your applications to various datacenters around the globe. 選択したリージョンによっては、アプリケーションのパフォーマンスが変わることがあります。The region that you choose can affect the performance of your application. たとえば、大部分の顧客に近いリージョンを選択すると、ネットワーク要求における待機時間が少なくなります。For example, it's better to choose a region that’s closer to most of your customers to reduce latency in network requests. 特定の国でアプリを配信するための法的要件を満たせるリージョンを選択することもあります。You might also want to select your region to meet the legal requirements for distributing your app in certain countries. アプリケーションをホストしているデータセンターと同じデータセンター、またはできるだけ近いデータセンターにアプリケーションのデータを格納することが、常にベスト プラクティスです。It's always a best practice to store application data in the same datacenter or in a datacenter as near as possible to the datacenter that is hosting your application.

マルチリージョン アプリMulti-region apps

可能性は低いのですが、自然災害やインターネット障害などの事象により、データ センター全体がオフラインになる可能性があります。Although unlikely, it’s not impossible for an entire datacenter to go offline because of an event such as a natural disaster or Internet failure. 最大限の可用性を提供するため、重要なビジネス アプリケーションは複数のデータ センターでホストすることがベスト プラクティスです。It’s a best practice to host vital business applications in more than one datacenter to provide maximum availability. 複数のリージョンを使用することで、ローカル ユーザーの待機時間が短縮され、アプリケーションの更新時に柔軟性が向上する可能性もあります。Using multiple regions can also reduce latency for global users and provide additional opportunities for flexibility when updating applications.

Virtual Machine や App Service など、一部のサービスでは、Azure Traffic Manager を使用してリージョン間のフェールオーバーによるマルチリージョン サポートを可能にして、可用性の高いエンタープライズ アプリケーションをサポートできます。Some services, such as Virtual Machine and App Services, use Azure Traffic Manager to enable multi-region support with failover between regions to support high-availability enterprise applications. 例については、「Azure の参照アーキテクチャ: 高可用性 Web アプリケーション」を参照してください。For an example, see Azure reference architecture: Web application with high availability.

使用する場合: フェールオーバーとレプリケーションを利用するエンタープライズおよび高可用性アプリケーションがある場合。When to use: When you have enterprise and high-availability applications that benefit from failover and replication.

アプリケーションとプロジェクトを管理する方法How do I manage my applications and projects?

Azure には、プログラムと Azure Portal の両方で Azure リソース、アプリケーション、プロジェクトを作成および管理できるさまざまな機能があります。Azure provides a rich set of experiences for you to create and manage your Azure resources, applications, and projects—both programmatically and in the Azure portal.

コマンド ライン インターフェイスと PowerShellCommand-line interfaces and PowerShell

Azure には、Bash、ターミナル、コマンド プロンプト、またはコマンドライン ツールのいずれかを使用して、コマンド ラインからアプリケーションとサービスを管理する方法が 2 つあります。Azure provides two ways to manage your applications and services from the command line by using Bash, Terminal, the command prompt, or your command-line tool of choice. 通常、コマンド ラインからは、Azure Portal と同じタスクを実行できます。たとえば、仮想マシン、仮想ネットワーク、Web アプリ、他のサービスの作成や構成などを実行できます。Usually, you can perform the same tasks from the command line as in the Azure portal—such as creating and configuring virtual machines, virtual networks, web apps, and other services.

  • Azure コマンド ライン インターフェイス (CLI): コマンド ラインから Azure サブスクリプションに接続し、Azure リソースに対して多様なタスクをプログラミングできます。Azure Command-Line Interface (CLI): Lets you connect to an Azure subscription and program various tasks against Azure resources from the command line.

  • Azure PowerShell: Windows PowerShell を使用して Azure リソースを管理できるモジュールとコマンドレットのセットを提供します。Azure PowerShell: Provides a set of modules with cmdlets that enable you to manage Azure resources by using Windows PowerShell.

Azure ポータルAzure portal

Azure Portal は Web ベースのアプリケーションであり、Azure のリソースやサービスの作成、管理、削除に利用できます。The Azure portal is a web-based application that you can use to create, manage, and remove Azure resources and services. Azure Portal は https://portal.azure.com にあります。カスタマイズ可能なダッシュボード、Azure リソースを管理するツール、サブスクリプション設定と課金情報へのアクセス機能が含まれています。The Azure portal is located at https://portal.azure.com. It includes a customizable dashboard, tools for managing Azure resources, and access to subscription settings and billing information. 詳細については、「Microsoft Azure Portal の概要」を参照してください。For more information, see the Azure portal overview.

REST APIREST APIs

Azure は、Azure Portal UI をサポートする REST API のセットに基づいて構築されています。Azure is built on a set of REST APIs that support the Azure portal UI. これら REST API のほとんどは、任意のインターネット対応デバイスから Azure リソースとアプリケーションをプログラムでプロビジョニングおよび管理する場合にもサポートされます。Most of these REST APIs are also supported to let you programmatically provision and manage your Azure resources and applications from any Internet-enabled device. REST API ドキュメントの詳細については、「Azure REST SDK Reference」(Azure REST SDK リファレンス) を参照してください。For the complete set of REST API documentation, see the Azure REST SDK reference.

APIAPIs

REST API だけでなく、多くの Azure サービスでは、次の開発プラットフォーム用 SDK を含め、プラットフォーム固有の Azure SDK を使用して、アプリケーションのリソースをプログラムで管理できます。In addition to REST APIs, many Azure services also let you programmatically manage resources from your applications by using platform-specific Azure SDKs, including SDKs for the following development platforms:

Mobile AppsAzure Media Services などのサービスには、Web およびモバイル クライアント アプリからサービスにアクセスできるクライアント側 SDK があります。Services such as Mobile Apps and Azure Media Services provide client-side SDKs to let you access services from web and mobile client apps.

Azure リソース マネージャーAzure Resource Manager

Azure 上でアプリを実行すると、多くの場合は複数の Azure サービスを利用します。これらのサービスはいずれも同じライフ サイクルに従い、1 つの論理ユニットとして考えることができます。Running your app on Azure likely involves working with multiple Azure services, all of which follow the same life cycle and can be thought of as a logical unit. たとえば、Web アプリは Web Apps、SQL Database、Storage、Azure Redis Cache、Azure Content Delivery Network サービスを使用する可能性があります。For example, a web app might use Web Apps, SQL Database, Storage, Azure Redis Cache, and Azure Content Delivery Network services. Azure Resource Manager を使用すると、アプリケーション内の複数リソースを 1 つのグループとして操作できます。Azure Resource Manager lets you work with the resources in your application as a group. これらすべてのリソースを、1 回の連携した操作でデプロイ、更新、または削除できます。You can deploy, update, or delete all the resources in a single, coordinated operation.

Azure Resource Manager では、関連するリソースを論理的にグループ化して管理できるだけでなく、関連するリソースのデプロイと構成をカスタマイズできるデプロイ機能があります。In addition to logically grouping and managing related resources, Azure Resource Manager includes deployment capabilities that let you customize the deployment and configuration of related resources. たとえば、Resource Manager を使用すると、複数の仮想マシン、ロード バランサー、Azure SQL Database で構成されるアプリケーションを 1 つのユニットとしてデプロイおよび構成することができます。For example, by using Resource Manager, you can deploy and configure an application that consists of multiple virtual machines, a load balancer, and an Azure SQL database as a single unit.

このようなデプロイは、JSON 形式のドキュメントである Azure Resource Manager テンプレートを使用して開発できます。You develop these deployments by using an Azure Resource Manager template, which is a JSON-formatted document. テンプレートでは、スクリプトではなく宣言型テンプレートを使用してデプロイを定義し、アプリケーションを管理できます。Templates let you define a deployment and manage your applications by using declarative templates, rather than scripts. テンプレートは、テスト、ステージング、運用環境などのさまざまな環境に使用できます。Your templates can work for different environments, such as testing, staging, and production. たとえば、テンプレートを使用して、1 回のクリックでリポジトリのコードを Azure サービスのセットにデプロイするボタンを GitHub リポジトリに追加できます。For example, by using templates, you can add a button to a GitHub repo that deploys the code in the repo to a set of Azure services with a single click.

使用する場合: REST API、Azure CLI、Azure PowerShell を使用してプログラムで管理できるテンプレートベースのデプロイがアプリに必要な場合は、Resource Manager テンプレートを使用します。When to use: Use Resource Manager templates when you want a template-based deployment for your app that you can manage programmatically by using REST APIs, the Azure CLI, and Azure PowerShell.

作業開始: テンプレートを初めて使用する場合は、「Azure Resource Manager テンプレートの構造と構文の詳細」を参照してください。Get started: To get started using templates, see Authoring Azure Resource Manager templates.

アカウント、サブスクリプション、課金の概要Understanding accounts, subscriptions, and billing

開発者として、コードについて詳しく説明し、できるだけ早くアプリケーションを実行してみましょう。As developers, we like to dive right into the code and try to get started as fast as possible with making our applications run. できるだけ簡単に Azure の作業を始められることが重要です。We certainly want to encourage you to start working in Azure as easily as possible. そのために、Azure には無料試用版が用意されています。To help make it easy, Azure offers a free trial. Azure App Service など、一部のサービスには "無料で試すことができる" 機能があり、アカウントを作成する必要すらありません。Some services even have a "Try it for free" functionality, like Azure App Service, which doesn't require you to even create an account. アプリケーションのコーディングと Azure へのデプロイはおもしろい作業ですが、ユーザー アカウント、サブスクリプション、課金の観点から Azure のしくみを理解するために時間をかけることも重要です。As fun as it is to dive into coding and deploying your application to Azure, it's also important to take some time to understand how Azure works from a standpoint of user accounts, subscriptions, and billing.

Azure アカウントとはWhat is an Azure account?

Azure サブスクリプションの作成または使用には、Azure アカウントを持っている必要があります。To be able to create or work with an Azure subscription, you must have an Azure account. Azure アカウントは、Azure AD、または Azure AD から信頼されているディレクトリ (職場、学校組織など) の単なる ID です。An Azure account is simply an identity in Azure AD or in a directory, such as a work or school organization, that is trusted by Azure AD. このような組織に属していない場合でも、Azure AD から信頼されている Microsoft アカウントを使用して、常にサブスクリプションを作成できます。If you don't belong to such an organization, you can always create a subscription by using your Microsoft Account, which is trusted by Azure AD. オンプレミス Windows Server Active Directory を Azure AD と統合する方法については、「オンプレミスのディレクトリと Azure Active Directory の統合」を参照してください。To learn more about integrating on-premises Windows Server Active Directory with Azure AD, see Integrating your on-premises identities with Azure Active Directory.

すべての Azure サブスクリプションには、Azure AD インスタンスとの間に信頼関係があります。Every Azure subscription has a trust relationship with an Azure AD instance. つまり、ディレクトリを信頼してユーザー、サービス、デバイスを認証します。This means that it trusts that directory to authenticate users, services, and devices. 複数のサブスクリプションが同じディレクトリを信頼できますが、1 つのサブスクリプションは 1 つのディレクトリだけを信頼します。Multiple subscriptions can trust the same directory, but a subscription trusts only one directory. 詳細については、「Azure サブスクリプションを Azure Active Directory に関連付ける方法」を参照してください。To learn more, see How Azure subscriptions are associated with Azure Active Directory.

Azure AD では、個々の Azure アカウント ID (ユーザーとも呼ばれます) を定義できるだけでなく、グループも定義できます。In addition to defining individual Azure account identities, also called users, you can also define groups in Azure AD. ロールベースのアクセス制御 (RBAC) を使用して、サブスクリプション内のリソースへのアクセスを管理するには、ユーザー グループを作成することをお勧めします。Creating user groups is a good way to manage access to resources in a subscription by using role-based access control (RBAC). グループの作成の詳細については、「Azure Active Directory でグループを作成し、メンバーを追加する」を参照してください。To learn how to create groups, see Create a group in Azure Active Directory preview. PowerShell を使用してグループの作成と管理を行うこともできます。You can also create and manage groups by using PowerShell.

サブスクリプションを管理するManage your subscriptions

サブスクリプションは、Azure アカウントにリンクされている Azure サービスの論理ユニットです。A subscription is a logical unit of Azure services that is linked to an Azure account. サブスクリプションには、関連付けられている各アカウントに 1 つのロールがあります。Each associated account has a role in a subscription. Azure サービスの課金は、サブスクリプションごとに行われます。Billing for Azure services is done on a per-subscription basis. 使用できるサブスクリプション プランの種類別一覧については、「Microsoft Azure プランの詳細」を参照してください。For a list of the available subscription offers by type, see Microsoft Azure Offer Details.

管理者ロールAdministrator roles

Azure サブスクリプションには複数のアカウント管理者ロールがあり、いつでも割り当てることができます。An Azure subscription has multiple account administrator roles, which you can assign at any time.

  • アカウント管理者: このロールは、サブスクリプションを完全に制御します。また、課金を担当するアカウントです。Account Administrator: This role has full control over the subscription and is the account that is responsible for billing.

  • サービス管理者: このロールは、サブスクリプション内のすべてのサービスを制御します。Service Administrator: This role has control over all the services in the subscription. 既定では、これはアカウント管理者と同じアカウントです。By default, this is the same account as the Account Administrator.

  • 共同管理者: このロールは、サブスクリプションと Azure ディレクトリの関連付けを変更できないという点を除き、サービス アカウントと同じアクセス権を持ちます。Co-administrator: This role has the same access as the Service Administrator, except that it can’t change the association of the subscription to an Azure directory.

管理者ロールの詳細については、「サブスクリプションの管理者を追加する」を参照してください。To learn more about administrator roles, see How to add or change Azure administrator roles.

リソース グループResource groups

新しい Azure サービスをプロビジョニングする場合は、特定のサブスクリプションで実行します。When you provision new Azure services, you do so in a given subscription. 個々の Azure サービス (リソースとも呼ばれます) は、リソース グループのコンテキストで作成されます。Individual Azure services, which are also called resources, are created in the context of a resource group. リソース グループを使用すると、アプリケーションのリソースのデプロイと管理が簡単になります。Resource groups make it easier to deploy and manage your application's resources. リソース グループには、ユニットとして使用するアプリケーションのすべてのリソースを含める必要があります。A resource group should contain all the resources for your application that you want to work with as a unit. リソース グループ間や、異なるサブスクリプションとの間でも、リソースを移動できます。You can move resources between resource groups and even to different subscriptions. リソースの移動の詳細については、「新しいリソース グループまたはサブスクリプションへのリソースの移動」を参照してください。To learn about moving resources, see Move resources to new resource group or subscription.

Azure Resource Explorer は、サブスクリプションで作成済みのリソースを視覚化するために適したツールです。The Azure Resource Explorer is a great tool for visualizing the resources that you've already created in your subscription. 詳細については、「Resource Manager REST API」を参照してください。To learn more, see Use Azure Resource Explorer to view and modify resources.

リソースへのアクセス権を付与するGrant access to resources

Azure リソースへのアクセス権を許可する場合、そのタスクの実行に必要最小限の特権をユーザーに付与することが常にベスト プラクティスです。When you allow access to Azure resources, it’s always a best practice to provide users with the least privilege that’s required to perform a given task.

  • ロールベースのアクセス制御 (RBAC): Azure では、指定したスコープ (サブスクリプション、リソース グループ、または個々のリソース) でユーザー アカウント (プリンシパル) にアクセス権を付与することができます。Role-based access control (RBAC): In Azure, you can grant access to user accounts (principals) at a specified scope: subscription, resource group, or individual resources. RBAC を使用すると、リソースのセットをリソース グループにデプロイし、特定のユーザーまたはグループにアクセス許可を付与できます。RBAC lets you deploy a set of resources into a resource group and grant permissions to a specific user or group. また、対象のリソース グループに属するリソースにのみアクセスを制限することもできます。It also let you limit access to only the resources that belong to the target resource group. 仮想マシンや仮想ネットワークなど、1 つのリソースにアクセス権を付与することもできます。You can also grant access to a single resource, such as a virtual machine or virtual network. アクセス権を付与するには、ロールをユーザー、グループ、またはサービス プリンシパルに割り当てます。To grant access, you assign a role to the user, group, or service principal. 定義済みのロールが多数ありますが、独自のカスタム ロールを定義することもできます。There are many predefined roles, and you can also define your own custom roles.

    使用する場合: ユーザーとグループについて細かく調整されたアクセス管理が必要な場合。When to use: When you need fine-grained access management for users and groups.

    作業開始: 詳細については、「Azure Portal でのロールベースの Access Control の基礎を確認する」を参照してください。Get started: To learn more, see Get started with access management in the Azure portal.

  • サービス プリンシパル オブジェクト: ユーザー プリンシパルとグループへのアクセス権を付与するだけでなく、サービス プリンシパルに同じアクセス権を付与することができます。Service principal objects: In addition to providing access to user principals and groups, you can grant the same access to a service principal.

    使用する場合: Azure リソースの管理やアプリケーションのアクセス権付与をプログラムで行う場合。When to use: When you’re programmatically managing Azure resources or granting access for applications. 詳細については、「リソースにアクセスできる Azure Active Directory アプリケーションとサービス プリンシパルをポータルで作成する」を参照してください。For more information, see Create Active Directory application and service principal.

タグTags

Azure Resource Manager を使用すると、カスタム タグを個々のリソースに割り当てることができます。Azure Resource Manager lets you assign custom tags to individual resources. キーと値のペアであるタグは、課金または監視のためにリソースを整理する必要がある場合に便利です。Tags, which are key-value pairs, can be helpful when you need to organize resources for billing or monitoring. タグには、複数のリソース グループ全体のリソースを追跡する機能があります。Tags provide you a way to track resources across multiple resource groups. タグの割り当ては、ポータル、Azure Resource Manager テンプレート、またはプログラムで行うことができます。また、REST API、Azure CLI、または PowerShell を使用できます。You can assign tags in the portal, in the Azure Resource Manager template, or programmatically, by using the REST API, the Azure CLI, or PowerShell. 各リソースには複数のタグを割り当てることができます。You can assign multiple tags to each resource. 詳細については、「タグを使用した Azure リソースの整理」を参照してください。To learn more, see Using tags to organize your Azure resources.

課金Billing

オンプレミス コンピューティングからクラウドホスト型サービスに移行する場合、サービスの使用状況とそれに関連するコストの管理と見積もりは重要な懸案事項です。In the move from on-premises computing to cloud-hosted services, tracking and estimating service usage and related costs are significant concerns. 毎月かかる新しいリソース コストを見積もることができる点が重要です。It’s important to be able to estimate what new resources cost to run on a monthly basis. また、現在の費用に基づいて、特定の月の課金額を予測できることも必要です。You also need to be able to project how the billing looks for a given month based on the current spending.

リソースの使用状況データを取得するGet resource usage data

Azure には、Azure サブスクリプションのリソース使用状況とメタデータ情報にアクセスできる Billing REST API のセットが用意されています。Azure provides a set of Billing REST APIs that give access to resource consumption and metadata information for Azure subscriptions. これらの Billing API を使用すると、Azure コストの予測と管理を適切に実行できるようになります。These Billing APIs give you the ability to better predict and manage Azure costs. 費用の時間単位の増加を追跡して分析し、費用のアラートを作成し、現在の使用状況の傾向に基づいて今後の課金を予測することができます。You can track and analyze spending in hourly increments, create spending alerts, and predict future billing based on current usage trends.

使用開始: Billing API の使用の詳細については、「Azure Billing API を使用して、Azure の使用状況に関する詳細なデータをプログラムによって取得する」を参照してください。Get started: To learn more about using the Billing APIs, see Azure Billing Usage and RateCard APIs overview.

今後のコストを予測するPredict future costs

コストを事前に見積もることは困難ですが、Azure には、デプロイされているリソースのコストを見積もるときに使用できる料金計算ツールがあります。Although it's challenging to estimate costs ahead of time, Azure has a pricing calculator that you can use when you estimate the cost of deployed resources. ポータルと Billing REST API で [課金] ブレードを使用し、現在の使用状況に基づいて、今後のコストを見積もることもできます。You can also use the Billing blade in the portal and the Billing REST APIs to estimate future costs, based on current consumption.

使用開始: 「Azure Billing API を使用して、Azure の使用状況に関する詳細なデータをプログラムによって取得する」を参照してください。Get started: See Azure Billing Usage and RateCard APIs overview.

課金アラートのセットアップSet up billing alerts

Azure でアプリケーションまたはソリューションをデプロイした後は、アラートを作成して、アラートに定義されている使用制限に近づいたときに電子メールを送信することができます。After you’ve deployed your application or solution on Azure, you can create alerts that send you email when you approach the spending limits that are defined in the alert.

使用開始: 詳細については、「Microsoft Azure サブスクリプションの課金アラートまたはクレジット アラートの設定」を参照してください。Get started: To learn more, see Set up billing alerts for your Microsoft Azure subscriptions.