2015年7月22日
透過Azure AD驗證Azure Service Management REST API呼叫
2015年7月21日
[Azure]將Azure File Service mount到Linux機器上
Azure File Service透過SMB 2.1協定將Azure Storage以File Share的形式讓用戶端更簡單的存取檔案。在此服務推出之前,如果需要在Azure環境中建置類似Share Storage的機制時,大多必須自行架設file Server;透過Azure File Service,不需另外建立機器也可以提供Share Storage的功能。
Azure File Service目前每一個Share最大為5TB的空間,最大的IOPS為1000。每個File Share最大的Throughput為60MB/s。
Azure File Service目前為預覽服務,如果尚未啟用,需到這裡啟用此預覽功能:http://azure.microsoft.com/en-us/services/preview/
此用功能之後,可以透過Powershell來建立一個新的share,詳細的步驟可以參考這裡的文件:http://blogs.technet.com/b/canitpro/archive/2014/09/23/step-by-step-create-a-file-share-in-azure.aspx
或是,透過https://portal.azure.com的介面建立
要注意的是,目前為止,Azure Storage v2尚未支援File Service;因此如果要使用Azure File Service,則從https://manage.windowsazure.com建立傳統儲存體
如果需要在Linux環境中將Azure File Share mount起來,需要注意Linux OS必須支援SMB 2.1協定,在Azure的Gallery中,需要選擇較新的Linux Distribution才能使用;例如Ubuntu 15。
下面會以Ubuntu 15.04為例,說明如何將已經建立的File Share mount到機器中。
- 首先安裝cifs-utils最新版,這個版本在Ubutu 15.04的Azure Gallery Image中已經安裝。
sudo apt-get install cifs-utils
- 建立一個directory
sudo mkdir /mnt/share
- 透過以下的指令mount file share
sud mount.cifs –o vers=2.1,user=<STORAGE ACCOUNT NAME>,password=<STORAGE ACCOUNT KEY> //<FILE SHARE FQDN>/<SHARE NAME> /mnt/share
例如,如果我的Storage account為abcde;Storage Key為12345;File Share為myshare則指另為
sud mount.cifs –o vers=2.1,user=abcde,password=12345 //abcde.file.core.windows.net/myshare /mnt/share
執行完後可以透過df -h確認
2015年7月5日
透過ARM Template發布Marketplace Offering
上一篇我們展示了如何透過ARM Template由Azure Gallery所提供的映像建置佈署虛擬機器;我們一樣可以透過同樣的方式來佈署Marketplace中的機器;作法一樣,唯一的不同只有Template File的Schema不同。
以我們的夥伴的Marketplace Offering為例:http://azure.microsoft.com/en-us/marketplace/partners/advantech/susiaccess30-std/
- 首先透過Azure powershell取得Publisher、Offer與Sku
- 接著,修改我們的Template,主要的改變在virtual machines一段
- 在virtual Machnes宣告中,加入plan宣告
1: "plan": {
2: "name": "std",
3: "product": "susiaccess30",
4: "promotionCode": null,
5: "publisher": "advantech"
6: },
- 其中
- name為先前powershell取得的sku
- product為powershell取得的Offer
- publisher為PublisherName
- 如果沒有Promotion Code,這邊填上null
- name為先前powershell取得的sku
- 在virtual Machnes宣告中,加入plan宣告
- 完整的Virtual Machin宣告如下
1: {
2: "apiVersion": "2015-05-01-preview",
3: "type": "Microsoft.Compute/virtualMachines",
4: "name": "susivm",
5: "location": "[resourceGroup().location]",
6: "dependsOn": [
7: "[concat('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]",
8: "[concat('Microsoft.Network/networkInterfaces/', 'nicJumpBox')]"
9: ],
10: "plan": {
11: "name": "std",
12: "product": "susiaccess30",
13: "promotionCode": null,
14: "publisher": "advantech"
15: },
16: "properties": {
17: "hardwareProfile": {
18: "vmSize": "[parameters('vmSize')]"
19: },
20: "osProfile": {
21: "computername": "susiaccess",
22: "adminUsername": "[parameters('adminUsername')]",
23: "adminPassword": "[parameters('adminPassword')]"
24: },
25: "storageProfile": {
26: "imageReference": {
27: "publisher": "advantech",
28: "offer": "susiaccess30",
29: "sku": "std",
30: "version": "latest"
31: },
32: "osDisk": {
33: /*"operatingSystemType": "Windows",*/
34: "name": "susiaccess30-osdisk",
35: "vhd": {
36: "uri": "[concat('http://',parameters('storageAccountName'),'.blob.core.windows.net/vhds/','osdisk-vm-test', '.vhd')]"
37: },
38: "caching": "ReadWrite",
39: "createOption": "FromImage"
40: /*,"sourceImage": null*/
41: }
42: },
43: "networkProfile": {
44: "networkInterfaces": [
45: {
46: "properties": {
47: "primary": false
48: },
49: "id": "[resourceId('Microsoft.Network/networkInterfaces','nicJumpBox')]"
50: }
51: ]
52: }
53: }
54: }
- 完整的template在此:https://github.com/michael-chi/ARM-WebServers-with-JumpBox/blob/master/azuredeploy.json
- 也可以透過”Deploy to Azure”按鈕佈署到Azure上!