2017-07-31 66 views
0

我正在調配Softlayer baremetal實例的自動化。 我有一個適當的json訂購硬件,但我似乎無法弄清楚如何指定磁盤佈局。Softlayer_Hardware:如何在同一組磁盤上設置多個raid10 storageGroup

從尼爾森的下面的答案顯示了該過程的關鍵部分:使用Chrome開發人員工具來獲取價格ID和RAID配置。

在門戶網站上,我訂購了一個測試系統,指定了4個4000GB Western Digital WD RE驅動器,並使用1 TB標準Linux和7 TB附加分區配置存儲組 。

Storage group configuration

並使用Chrome瀏覽器開發工具來捕獲產生的JSON,我看到了存儲組配置

data[Order][primaryDiskPartitionId]:1 
data[Order][storageGroups][storage-group-1][arrayTypeId]:5 
data[Order][storageGroups][storage-group-1][arraySize]:1000 
data[Order][storageGroups][storage-group-1][lvmFlag]:0 
data[Order][storageGroups][storage-group-1][partitionTemplateId]:1 
data[Order][storageGroups][storage-group-1][hardDrives][]:0 
data[Order][storageGroups][storage-group-1][hardDrives][]:1 
data[Order][storageGroups][storage-group-1][hardDrives][]:2 
data[Order][storageGroups][storage-group-1][hardDrives][]:3 
data[Order][storageGroups][storage-group-2][arrayTypeId]:5 
data[Order][storageGroups][storage-group-2][arraySize]:7000 
data[Order][storageGroups][storage-group-2][lvmFlag]:0 
data[Order][storageGroups][storage-group-2][hardDrives][]:0 
data[Order][storageGroups][storage-group-2][hardDrives][]:1 
data[Order][storageGroups][storage-group-2][hardDrives][]:2 
data[Order][storageGroups][storage-group-2][hardDrives][]:3 

當系統materialzied,只見盤如下:

/dev/sda6  1006602 1850 953597 1%/<------ sda - 1Tb linux parttion set 
/dev/sda1   237 68  158 30% /boot 
/dev/sdb1  6553650 54 6487522 1% /disk1 <- sdb - remaining 7Tb 

而磁盤結構是

-> fdisk -l /dev/sda 
Disk /dev/sda: 1000 GiB, 1073741824000 bytes, 2097152000 sectors 
Units: sectors of 1 * 512 = 512 bytes 
Sector size (logical/physical): 512 bytes/512 bytes 
I/O size (minimum/optimal): 262144 bytes/262144 bytes 
Disklabel type: dos 
Disk identifier: 0xab520822 

Device  Boot Start  End Sectors Size Id Type 
/dev/sda1 *  2048  499711  497664 243M 83 Linux 
/dev/sda2  501758 2097149951 2096648194 999.8G 5 Extended 
/dev/sda5  501760 2500607 1998848 976M 82 Linux swap/Solaris 
/dev/sda6  2502656 2097149951 2094647296 998.8G 83 Linux 

Partition 2 does not start on physical sector boundary. 

-> fdisk -l /dev/sdb 
Disk /dev/sdb: 6.3 TiB, 6926708506624 bytes, 13528727552 sectors 
Units: sectors of 1 * 512 = 512 bytes 
Sector size (logical/physical): 512 bytes/512 bytes 
I/O size (minimum/optimal): 262144 bytes/262144 bytes 
Disklabel type: gpt 
Disk identifier: ADFDCBE8-94E3-4C23-85C6-D43F332AA1BB 

Device  Start   End  Sectors Size Type 
/dev/sdb1 2048 13528725503 13528723456 6.3T Linux filesystem 

SL創建RAID 10設備,刻該成2個獨立的磁盤,1作爲1個TB linux的基本和1作爲7個TB FS安裝在/磁盤1

現在我們需要找出語法創建通過Python相同。 SoftLayer API: Provision Server with Basic RAID Configuration顯示瞭如何創建一個基本的raid10 linux分區。 和Configuring Softlayer Disk Partitions at Order Time擴展了這些以顯示如何創建各種配置。 但是,都沒有顯示如何創建上面的配置。第二種說明當時是不可能的。

這是沒有storageGroup塊的命令json。請注意,價格id在答案中討論的chrome dev工具中可用。

worker_json = { 
    "quantity" : 1, 
    "packageId": 551, 
    "location" : datacenterId, 
    "hardware" : [ 
     { 
      "hostname": module.params.get('hostname'), 
      "domain": module.params.get('domain'), 
      "primaryNetworkComponent": { 
       "networkVlanId": public, 
      }, 
      "primaryBackendNetworkComponent": { 
       "networkVlanId": private, 
      } 
     } 
    ], 
    "prices": [ 
     { "id": 171621 }, 
     { "id": 177669 }, 
     { "id": 165723 }, 
     { "id": 29691 , "item" : {"description": "RAID 10 - SATA/SAS - MegaRAID SAS 9361-8i" }}, 
     { "id": 49841 , "item" : {"description": "Hard Drive 4000GB Western Digital WD RE" }}, 
     { "id": 49841 , "item" : {"description": "Hard Drive 4000GB Western Digital WD RE" }}, 
     { "id": 49841 , "item" : {"description": "Hard Drive 4000GB Western Digital WD RE" }}, 
     { "id": 49841 , "item" : {"description": "Hard Drive 4000GB Western Digital WD RE" }}, 
     { "id": 33483 }, 
     { "id": 35686 }, 
     { "id": 50359 }, 
     { "id": 34807 }, 
     { "id": 27023 }, 
     { "id": 35310 }, 
     { "id": 50223 }, 
     { "id": 25014 }, 
     { "id": 34996 }, 
     { "id": 32500 } 
    ], 
    "storageGroups": [ 
     { What to put here? } 
    ] 
} 

下面是從Chrome瀏覽器開發工具的輸出上面創建的最終storageGoup JSON。這產生了預期的RAID配置:

"primaryDiskPartitionId": 1, 
    "storageGroups": [ 
     { 
      "arraySize": 1000, 
      "arrayTypeId": 5, 
      "hardDrives": [ 0, 1, 2, 3 ], 
      "partitionTemplateId" : 1 
     }, 
     { 
      "arraySize": 7000, 
      "arrayTypeId": 5, 
      "hardDrives": [ 0, 1, 2, 3 ] 
     } 
    ] 
+0

請加你盤的映像配置我無法弄清楚你的配置(你在門戶網站上所做的配置) –

+0

我假設你要求轉儲RAID配置 一直試圖弄清楚如何做到這一點 - 你可以給我幾個命令,我可以使用/研究/提供重新獲取信息。 – pdorwin

+0

我只是想讓你使用控制門戶對你的配置進行截圖。我的意思是控制門戶上的磁盤部分只是捕獲該圖像並將其添加到您的問題 –

回答

1

如此配置,我認爲你正在做的(它會更容易,如果你wouald有張貼截圖)

enter image description here

爲存儲組配置是:

"storageGroups": [ 
    { 
    "arraySize": 8000, 
    "arrayTypeId": 5, 
    "hardDrives": [ 0, 1, 2, 3 ], 
    "partitionTemplateId": 4 
    } 
] 

無論如何,如果這不是配置,你可以看到控制門戶使用的配置與chrome developer tools

你只需要去控制所有的配置爲您的訂單,並在按下「保存到訂單」打開開發人員工具,選擇「網絡」選項卡並標記「保留日誌」複選框:

enter image description here

然後點擊 「保存到訂單」 按鈕,並查找以下POST請求

enter image description here

打開它

enter image description here

,你會看到存儲組的配置,那麼你只需要翻譯在您的要求相同的配置,這就是它。如果你有這麻煩給我,你在開發者工具查看配置

UPDATE

accordign圖像正確的配置似乎是這樣的:

"primaryDiskPartitionId": 1, 
"storageGroups": [{ 
      "arraySize": 1000, 
      "arrayTypeId": 5, 
      "hardDrives": [0, 1, 2, 3], 
      "lvmFlag": 1, 
      "partitionTemplateId": 1 
     }, 
     { 
      "arraySize": 7000, 
      "arrayTypeId": 5, 
      "hardDrives": [0, 1, 2, 3] 
     } 
    ] 
+0

沒問題 - 現在有道理,我可以在訂單之前轉儲訂單json - 感謝一個bunch - 會試一試。您提供的RAID配置是關閉的 - 但是,如果您設置該存儲組tp 1TB Liunux Basic並添加第二個7Tb raid10存儲組,這正是我所訂購的。 – pdorwin

+0

我在原始帖子中發佈了一個圖像鏈接到我的團隊配置 – pdorwin

+0

我更新了我的答案並附上截圖的配置,試試這個,讓我知道 –