1. Offers Magazineトップ
  2. Azure DevOpsをはじめてみよう。概要やサービスまとめ

Azure DevOpsをはじめてみよう。概要やサービスまとめ

2019-05-23

DevOpsを実現するためのサービスであるAzure DevOpsは、具体的にどのようなツールが用意されているのでしょうか?DevOpsやAzure DevOpsの基礎知識、代表的なツールの機能について解説します。

Offers magazine

空いた時間で副業スタート!
経験を事業や組織に生かそう!

SNSアカウントで気軽に登録!たくさんのオファーが待っています!

Offersで副業を開始する

この記事の目次

Azure DevOpsの概要

MicrosoftにもともとあったサービスであるVSTSを使いやすくリニューアルしたサービスが『Azure DevOps』です。

DevOpsという組織論を取り入れるために便利なツールがそろっていますが、具体的に何ができるのでしょうか? まずは概要から紹介します。

DevOpsとは

開発チーム(Dev)と運用チーム(Ops)が協力し合ってソフトウェアやシステムを提供し、顧客のニーズに迅速に応え続けるモデルのことを『DevOps』といいます。

ここで実行されるのは、とにかく速い開発サイクルです。

全体を完成させてからリリースするのではなく、小さなセクションごとにリリースし不具合を都度修正することで、よりスピーディーに顧客のニーズを取り入れます。

これを実現するのに必要なのが、作業を自動化する優れたツールと、実際に働いている開発チームと運用チームの協力関係です。

Azure DevOpsは、二つのうち、作業を自動化する優れたツールにあたります。開発と運用が協力するために必要なワークフローを実現するための道具といえるでしょう。

Azure DevOpsとは

ソフトウェアやシステム開発を自動化してサイクルをスピーディーに回すことは、DevOpsを取り入れる際に必須といえます。しかし、その環境作りに時間を取られるのでは、なかなか実現しません。

一つずつ別個のサービスを組み合わせて自動化した場合、どこかで不具合が生じる可能性もあります。

そこで便利なのがAzure DevOpsです。必要なツールがひとまとめになっているため、スムーズに必要な環境を整えられます。スマートな計画立案・効率的な作業・スピーディーなリリースが実現可能です。

主なサービスと使い方

DevOpsに役立つサービス群であるAzure DevOpsには、具体的にどのようなサービスが備わっているのでしょうか? 多くの企業が導入している代表的なものを紹介します。

Azure Boards

チームの連携が大切なDevOpsでは、どのようにプロジェクトが進行しているのか一目で確認できることが大切です。それを可能にするのが『Azure Boards』の役割になります。

大きなチームになるほど、全体の状況を正確に把握することは難しいものです。それを、計画・開発・リリースにいたるまで、漏れなく可能にします。どんな小さな動きも逃しません。

例えば、コードを変更したときには、作業項目に直接リンクされます。この仕組みにより、他メンバーが実行した作業を見逃しません。

分析が随時実行されるため、プロジェクトの状態を常に正常に保つためにも役立ちます。

Azure Pipelines

『Azure Pipelines』は、ソフトウェアやシステムを作成し、使える状態にする一連の流れを自動化するサービスです。

これまで手作業で行ってきた確認作業をサービスに任せることで、よりクリエイティブな仕事に時間を割けます。対応している言語は、Python・Java・PHP・Ruby・C++などで、AndroidやiOSアプリも自動化が可能です。

ビジネス用のチャットツールや、コードの静的解析ツールを拡張機能として追加することもできます。

オープンソースソフトウェア用なら10並列まで無料で使えるのも魅力です。

Azure Repos

アクセスできるユーザーを限定して、ソフトウェアやシステムのコードのバージョンを管理できるのが『Azure Repos』です。個人の小規模なプロジェクトでも、世界規模のプロジェクトでも使えます。

使用している統合開発環境やエディタなどから、コードのデータをGitの保存場所に入れられるのです。

すると、メンバーの変更した箇所を共有したり、コードに対応した検索機能で素早く対象を見つけたりできます。

また、アプリケーションどうしを連携可能にするAPIや、アプリケーションの更新情報をリアルタイムで知らせるWeb hookの統合で、さらに便利で使いやすい状態が実現可能です。

Azure Test Plans

『Azure Test Plans』は、Webとデスクトップ両方のアプリケーションに対応したテストを実行します。コードに不備はないか確認するのはもちろん、システムが正常に動作するか自動でチェック可能です。

直前のテスト結果によって次のテストの内容が変化する、探索的テストも実行でき、より高品質なソフトやアプリケーションの提供を実現します。

決められた設定であるシナリオデータに沿ってテストをすることも可能です。リリース後の環境に近い設定でテストをすると、事前に欠陥を見つけ、早期に対応できます。

Azure Artifacts

簡単にコードを共有できるのが、『Azure Artifacts』というサービスです。過去に書いたコードの再利用もできます。パブリック・プライベートを問わず、Maven・npm・NuGet・Pythonのパッケージを共有可能です。

また、自動化の仕組みであるパイプラインに追加することで、共有したパッケージのバージョン管理やテスト・リリースの自動化が実行できるようになります。

GitやGitHubとの連携

バージョン管理をするためのGitやGitHubと連携すると、チームでの作業をスムーズに実行可能です。Azure DevOpsとGitおよびGitHubを連携する方法を紹介します。

GitやGitHubとは

プログラミングの現場ではバージョン管理が非常に重要です。『Git』や『GitHub』というシステムを利用すると、それを効率的に実行できます。

一つのファイルで大勢のエンジニアが作業しているとします。すると、Aさんがファイルを変更したあとに、Bさんが最新より古いバージョンに変更を加えて更新する、ということが起こり得ます。

結果、最新のファイルがどこにあるものなのか、誰も分からなくなってしまうのです。

GitやGitHubを使うと、PC上に全てのバージョンの履歴が残ります。そのため、後からどのファイルが最新か迷うことが少なくなるでしょう。

タスク管理ツールやメモ機能が充実しているので、うまく生かせば、よりスムーズなやり取りができます。

GitHubとの連携方法

GitHubはAzure DevOpsと連携して使用可能です。連携するための手順を紹介します。

まずはAzureにログインします。「リソースの作成」をクリックし、検索ボックスに「DevOps」プロジェクトと入力してから「作成」をクリックです。

「Bring your own code」「Next」の順にクリックしたら、保存場所であるリポジトリに「GitHub」を選びます。アカウント認証のために「Authorize」をクリックしたら、GitHubにサインインしてください。

リポジトリやアカウント権限に問題がなければ「Authorize Azure」をクリック、さらにリポジトリとブランチの情報を確認して問題なければ「Next」をクリックします。

今後のテストを考え、「is app Dockerized」をYesにして、Application Settings でDockerfile pathと Path to Chart folderを設定後は「Kubanetes Service」を選択します。

最後に、プロジェクト名やデプロイ先などを入力して「Done」をクリックし、デプロイすれば完了です。

Azure ADについて知ろう

IDやアクセスの管理は、セキュリティ対策のために必須です。必要に応じて、より複雑な認証を使わなければいけませんし、IDの情報保護も重要なポイントといえます。

その作業を担うのが、『Azure AD』です。これまでIDやアクセス管理に費やしていた時間を短縮できますし、管理の不備で起こる可能性がある不具合を回避できます。

主な対象者

Azure ADの導入が役立つのは、IT管理者・アプリ開発者です。IT管理者の場合、システムの種類別にアクセス権限を設定することや、認証によってアクセスの制御をすることが役立ちます。

例えば、重要な部分にアクセスするためには『多要素認証』を必須にすることで重要なファイル・情報を厳重に守ります。

アプリ開発者にとって便利なのは、既にあるユーザー情報を使ってアプリを使えるようにする機能です。また、組織情報を使ってユーザーがアプリをより使いやすくすることもできます。

一般ユーザーも含め、Microsoft365・Office365・Azure・Dynamics CRM Onlineを利用している場合、意識していないだけでAzure ADを使っています。クラウドアプリへのアクセス管理も可能なサービスだからです。

利用可能な機能

他にも利用できる機能がたくさんありますので、代表的なものを紹介します。

『アプリケーション管理』では、インターネット上で使うクラウド型・ダウンロードして使うオンプレミス型といった種類を問わず、管理可能です。

『企業間管理』は、自社データの管理と、ゲストや外部パートナーの管理をします。一方、『企業消費者間管理』で行うのは、サインインやプロファイルの管理を制御することです。

他にも、クラウドアプリのアクセス管理をする『条件付きアクセス』や、PCやスマホなどデバイスによる会社データへのアクセスを管理する『デバイスの管理』も使用できます。

また、これらのログインに関わるレポートと監視の機能もあるため、有効な対策ができているかチェック可能です。

Azure DevOpsの料金について

無料から使えるAzure DevOpsには、さまざまなプランがあります。料金や機能がプランによって違うので、ぴったりのものを選びましょう。

基本的なプランの内容

基本プランは三つあります。無料で使えるのは、ユーザー数とビルド時間が無制限の『オープンソースプロジェクト』と、5ユーザー限定の『小規模なチーム』です。

ユーザー数で料金が変わる『あらゆる規模のチーム』は、1カ月3360円から利用できます。Azure Pipelines・Azure Boards・Azure Reposなどを利用するには、必ずいずれかを契約する必要があるのです。

機能面で三つに共通しているのは、Azure Boardsの作業項目トラッキングとかんばんボードが使える点です。

他の機能は、オープンソースプロジェクトより、他の二つの方が充実しています。

例えば、オープンソースプロジェクトは公開されるタイプのパブリックGitリポジトリのみ無制限で利用できますが、他の二つではプライベートGitリポジトリが無制限で利用できます。

カスタマイズの内容と料金

Azure DevOpsは1000以上の拡張機能を選んでカスタマイズ可能です。より便利で使いやすくするために役立つ、代表的な機能を紹介します。

コードのビルドからデプロイまでを自動化する『Azure Pipelines』は、並列ジョブ1個までなら無料で使用可能です。高速化したいなら、料金加算で並列ジョブを追加します。

テストの計画から実行までを自動化できる『Azure Test Plans』は、1カ月5824円で使えます。ブラウザベースのテストはもちろん、実際の利用状況を想定したユーザー受け入れテストも実施可能です。

2GBまで無料で使える『Azure Artifacts』は、クラス最高のNuGetサーバーです。2GBを超えると1GBごとに224円で利用できます。自動バージョン管理や高度なアクセス制御など、最小限の手間で利用可能です。

まとめ

開発チームと運用チームが協力して、ユーザーにより高い価値を提供する組織論を、DevOpsといいます。これを実践するためには、開発と運用の協調と同時に、自動化ツールが欠かせません。

Azure DevOpsは、自動化のためのツールをひとまとめにしたMicrosoftのサービスです。基本プランに拡張機能をプラスすることで、使いやすくカスタマイズできます。

ツールを効果的に活用し、DevOps導入の成功を目指しましょう。

ハイクラスエンジニア・デザイナーの副業・転職マッチングサービス
副業からはじめる新しい転職へ

「freee」の1ヶ月利用無料特典付き!
週1、土日・夜のみなどの条件も!

今すぐはじめる