-
Notifications
You must be signed in to change notification settings - Fork 0
MS_AzureCloudShell
- 戻る(Azureのシェル)
- Azure PowerShell
- Azure Cloud Shell
- Azure CLI
- Azure Subscription の管理で、そろそろ必要になったので。
- Azure リソースを管理するための、ブラウザーでアクセスできるシェル。
- Linux ユーザーは Bash(
MS_Bash.md)を、
Windows ユーザーは PowerShellを選ぶことができる。- 各ツールに Bash と PowerShell 両方のエクスペリエンスのサポートがあるもよう。
- Bash サポートが先で PowerShell は後発(プレビュー)だったりした。
補足(何が嬉しいのか): Cloud Shell の価値は
**「ローカルに何もインストールしなくてよい」**という一点に尽きる。
項目 内容 認証済み ポータルにログインした ID でそのまま認証済み。 az loginが不要ツール同梱 Azure CLI / Azure PowerShell / kubectl/terraform/git/jqなどが最初から入っているどこからでも ブラウザ、Azure モバイルアプリ、Visual Studio Code拡張から 無料 シェル自体は無料(アタッチするストレージのみ課金) 「一時的に 1 コマンド打ちたい」「手元の端末に CLI が入っていない」
といった場面で最も効く。
Azure Cloud Shell を起動して、以下を選択すれば、直ちにシェルを開始できる。
- Bash(
MS_Bash.md) - PowerShell
- 初回起動時に、Microsoft Azure ファイル共有のアタッチについて案内される。
- 以後すべてのセッションで、ストレージが自動的にアタッチされる。
-
アタッチしたストレージは以下ドライブとして参照できる。
$home\clouddrive -
ドライブ外のファイルやマシンの状態は、セッション間で保持されない。
補足(この制約が最も重要): Cloud Shell のコンテナは
一定時間(既定 20 分)操作が無いと破棄される。
$HOME/clouddrive(および$HOME直下の一部)以外に置いたファイルは
消える。
場所 永続性 $HOME/clouddrive永続(Azure Files にマウント) $HOME配下永続( acc_<user>.imgとして保存される)/tmpなどその他揮発(セッション終了で消える) apt installしたパッケージ揮発 スクリプトや設定は必ず
clouddriveに置く。
追加ツールが恒常的に要るなら、Cloud Shell ではなく
ローカルまたは WSL を使う方が向く。
Azure サブスクリプションを選択しても API としては、
Azure サブスクリプション ID を要求するものもある。
- Cloud Shell にサインイン。
- [PowerShell]または[Bash]を選択
- [ファイルのアップロード/ダウンロード]を選択し、[アップロード]を選択。
- ファイルを選択し、[開く]を選択。
clouddrive としてマウントされた Azure Files 共有に、
ポータルや Storage Explorer から直接ファイルを置くこともできる。
-
以下でアップロードした
ps1ファイルを確認できる。cd $Home\CloudDrive dir -
以下のように実行できる。
.\XXXX.ps1 -parameterName1 parameterValue1 -parameterName2 parameterValue2
-
注意
-
ps1ファイルに日本語が含まれる場合、UTF-8 で保存。 - アップロードの際は要注意。
-
補足(文字コードの注意): Cloud Shell の PowerShellは
PowerShell 7(Core) なので、既定のエンコーディングは UTF-8 である。
Windows の Windows PowerShell 5.1 で作った
Shift-JIS(CP932)のスクリプトをそのまま持ち込むと文字化けする。ローカルで保存する際は「UTF-8(BOM なし)」を選ぶ。
BOM 付き UTF-8 も PowerShell 7 なら読めるが、
Bash 側で使うスクリプトでは BOM が邪魔になるため、
BOM なしに統一しておくのが無難である。
-
Azure Cloud Shell の概要
https://learn.microsoft.com/azure/cloud-shell/overview -
Azure Cloud Shell ウィンドウの使用
https://learn.microsoft.com/azure/cloud-shell/using-the-shell-window -
Azure Cloud Shell でファイルを永続化する
https://learn.microsoft.com/azure/cloud-shell/persisting-shell-storage
Tags: 移行, シェル, インフラストラクチャ, クラウド, Azure
このWikiは「Open棟梁Project」,「OSSコンソーシアム 開発基盤部会」によって運営されています。