kkamegawa's weblog

Visual Studio,TFS,ALM,VSTS,DevOps関係のことについていろいろと書いていきます。Google Analyticsで解析を行っています

今どきのAzure Stack on Azureの作り方

諸事情あって、Azure上にAzure Stackを作っています。検索すれば上のほうにでてくる世界のやまさのエントリーがあるのですが、私がこれをやってもDSCを構築するところで失敗しました。検索しても事例がいくつかあるものの、ASDKはサポート外なので、MSDN Forumで知ってる人の答えをもらうしかないようです。

blog.nnasaki.com

書かれていないものの、今までやってた方はAzure ADでやっていたのでしょうか?私はサブスクリプションの都合でADFSで構築しています(Azure ADだと構築時一時的に全体管理者が必要になるため)。

困ったなーと思っていたら、今どきはこんなARMテンプレートを用意してくれている人がいました。プロフィールを見ると、MSトルコのSeniorプレミアフィールドエンジニアの方のようです。

github.com

このテンプレートでデプロイするとManaged DiskをPremium SSDで構築してくれます。評価環境ならforkしてStandard SSDに書き換えたほうがいいでしょう。お金があるなら別ですが。

デプロイすると、デスクトップにPowerShellのアイコンが4つできているはずです。Install Azure ADかInstall ADFSかどちらかクリックするとデプロイが始まります。

1時間ちょっとすると、たぶん再起動がかかります。ここから先はCloudAdminアカウントで接続するのは同じですね。あとはひたすら待ちます。E16インスタンスでは4時間かかっても終わりませんでした。放置しているので、そのうちできるでしょう、たぶん。

github.com

もしくはこちらのスクリプトでASDK環境を構築できるそうです。ただし、ASDK 1811.2限定。こちらはAzure StackのGlobal Black Beltの方ですね。

ASDKを作った後の最大のやっちゃいけないことは、ホストOSでシャットダウン、再起動などを実施してしまうことです。ASDK内では複数のVMが起動していて、お互い依存しています。なので、最悪起動中のVMが不整合に陥り、起動しなくなります(というか、知らない人がやってしまいました)。

シャットダウンは必ず特権エンドポイントにつないでから、Stop-AzureStackコマンドレットを実行しましょう。というか、通常シャットダウンしないもののようですね…。

docs.microsoft.com

Azure DevOps 2018/1/14の更新

Azure DevOps Sprint 146リリースノートの翻訳を行いました。オリジナルはこちらから読んでください。

docs.microsoft.com

Sprint 145がクリスマス休暇にかかったので、いつも通りスキップされて、結構多い機能強化になっています。Pipelinesの機能強化多いですね。GitHubをはじめとする外部連携が多くなって、権限周りの矛盾や使いにくさをどんどん改良している感じです。

Azure SQLタスクでAzure AD認証使えるようになったのはいいですね。あとはSQL Databaseへの接続をもうちょっと制限できるようになればいいなぁ。今はAzureサービス全公開しないとAzure DevOpsからつなげないはずなので。

Microsoft Hosted AgentでAzul SystemのOpenJDKが提供されるようになりました。これは助かりますね。

WikiにWork Itemのクエリが貼り付けられるのも地味に便利です。Exportのときはおそらく固定になるのでしょうけど、リリースノートを作成するときとか便利そう。

ではまた三週間後。

Translate to Japanese to Azure DevOps release note ...

Azure DevOps Server 2019 RC2リリース

Azure DevOps Server 2019 RC2がリリースされました。

docs.microsoft.com

blogs.msdn.microsoft.com

リリースノートや告知ブログを見てください。たぶんAzure DevOps ServiceのSprint 143くらいまでの内容が大体入っているはずです。

新機能以外にも廃止を伴う重要な変更がいくつかあります。

  • 次のメジャーバージョンアップでクライアントオブジェクトモデルとSOAP APIの廃止
  • プル要求がpull requestに変更(!)

f:id:kkamegawa:20190123064346p:plain

こんな感じ。結構長い間いくつかのルートで文句出ていましたが、ようやくという感じです。ざっくり見た限りでは目につくところは大体プル要求が消えています。

Visual Studio のTeam Explorerは別途VSのマイナー更新および、VS 2019 Previewで更新がかかるのでしょう。

これ変じゃね?みたいな翻訳見つけたら教えてください。伝えます。今回のメジャーバージョンには入らないかもしれませんが、次のメジャーバージョンアップでは入れてもらえる可能性があります。

あと、新規でプロジェクトコレクションを作る場合、従来のXMLベースのプロセステンプレートだけではなく、クラウド版Azure DevOps Servicesと同等の継承モデルプロセスの選択が可能になっています。

これはプロジェクトベースではなく、さらにその上のコレクション単位の管理になります。新規でプロジェクトを作る場合、面倒ですが、別のプロジェクトコレクションを作って、そちらでやったほうがいろいろ楽ですね。

f:id:kkamegawa:20190123070243p:plain

これで継承を選びます。こちらを選ぶと、Reporting Servicesは使えないので、インストールする必要もなくなります。

Azure DevOpsローンチイベントを開催しました

Azure DevOps関西を開催しました。イベントは2018になっているけど、作ったのが2018年だったので、すっかり忘れていました…。

jazug.connpass.com

参加してくださった皆さん、当日運営を手伝ってくれた皆さん、スピーカーの皆さんありがとうございました。connpassにも登録しているけど、私の資料はこちらで公開しています。来週も東京で同じスライド使います。

注意事項(1/19追記)
用語が古いものがいくつかありました。すいません

  • Account(アカウント)→Organization(組織)
  • Security Group(セキュリティグループ) → DevOps Group

(追記終わり)

資料作ったときは「60分で余らないかなーどうかなー」とか思っていたんですが、PowerPointの時間見るとほぼほぼぴったりでした…19日は50分なので、どこで10分短縮するか。ほとんどトークなので、その辺短縮します。

Azure DevOpsの開発進捗は公開されているので、こちらも見てください。

dev.azure.com

docs.microsoft.com

今回は実験的にsli.doを使って質問を受け付けました。直接聞くのは~という人にも匿名でセッション中に気になったことがすぐ聞けるので、よかったんじゃないかなと思います。モデレーターの回答は全部私です。

また追記します。

Q:UnityがインストールされているMicrosoft-hosted agentが出てくる予定はありますか?
A:UnityはクライアントOSしかサポートしていません。クライアントOSをサーバー的に使うのはEULA上問題があるので、今のところ難しいかと思います。Unityがビルドツールのみリリースしてくれて、Windows Serverの提供があれば変わるかもしれません。もしくはmacOSであればチャンスがあるかもですかね。
Unityには専用のCloud Buildがあるので、こちらを使っていただくことになると思います。
また、Microsoft-hostedはストレージが10GBしかないので、Unityが想定するリッチコンテンツのビルドには厳しいかもしれません。

1/19追記
Q:他のCIツールと比べた場合、Azure Pipelinesの強みは何でしょうか
A:全世界にAzureのデータセンターがあるので、自分のIP的に近いところが選びやすいでしょうか。あとはAzure ADも使えるので、もしもAzureをすでに使っていれば費用が一元化されるメリットがあります。
macOSのエージェントが同じ無料枠で提供されているのもメリットです。

Q:実行時の動画やスクショなどを取れるMSEdgeの拡張はありますか?
A:残念ながらありません。Edgeリリース当初から出す出すといわれて、ずーっと出してなかったのですが、報道の通り、Edgeの中身がChromeになるので、今度こそできるのではないかと期待しています。

Q:CI/CDでiOSのアプリをビルドできますか?
A:可能です。ただ、iOSであれば兄弟サービスのVisual Studio AppCenterのほうが楽です。

Q:デプロイ時にデータベースを変更する(例:カラムの追加)ことがあります。 この場合、DBもバックアップも実行できるのでしょうか。 SQL DatabaseとAzure Databse for MySQLのどちらもできると助かります。
A:デプロイ時にバックアップを行うスクリプトなどを明示的に実行することで対応することになります。

Q:Board の記法が良く分からない。 md に変更出来る?
A:markdownは今年Q1(なのでもうすぐ)のサポートが予定されています。https://dev.azure.com/mseng/Azure%20DevOps%20Roadmap/_workitems/edit/1221138