Softlayer_Hardware: как настроить несколько групп хранения raid10 на одном наборе дисков

Я работаю над автоматизацией предоставления экземпляров Softlayer без операционной системы. У меня есть соответствующий json для заказа оборудования, но я не могу понять, как указать схему диска.

В приведенном ниже ответе Нельсона показана ключевая часть процесса: использование инструментов разработчика Chrome для получения ценовых идентификаторов и конфигурации рейда.

На портале я заказал тестовую систему, указав 4 диска Western Digital WD RE по 4000 ГБ и настроив группы хранения со стандартным linux на 1 ТБ плюс дополнительный раздел на 7 ТБ.

Конфигурация группы хранения

И используя инструменты chrome dev для захвата полученного 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

Когда система материализовалась, я увидел диски следующим образом:

/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 как базовый linux на 1 ТБ и 1 как fs на 7 ТБ, смонтированный в /disk1.

Теперь нам нужно выяснить синтаксис для создания того же с помощью python. SoftLayer API: Provision Server with Basic Конфигурация RAID показывает, как создать базовый раздел RAID10 Linux. И Настройка разделов диска Softlayer во время заказа расширяет это, чтобы показать, как создавать различные конфигурации. Однако ни один из них не показывает, как создать конфигурацию выше. А второй утверждает, что в то время это было невозможно.

Это порядок json без блока storageGroup. Обратите внимание, что идентификаторы цен доступны в инструменте разработчика Chrome, обсуждаемом в ответе.

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? }
    ]
}

Вот окончательный файл storageGoup json, созданный на основе выходных данных инструментов разработки Chrome выше. Это произвело желаемую конфигурацию рейда:

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

person pdorwin    schedule 31.07.2017    source источник
comment
пожалуйста, добавьте изображение конфигурации вашего диска, я не могу понять вашу конфигурацию (та, которую вы сделали на портале)   -  person Nelson Raul Cabero Mendoza    schedule 01.08.2017
comment
Я предполагаю, что вы просите дамп конфигурации рейда. Пытался выяснить, как это сделать - не могли бы вы дать мне несколько команд, которые я могу использовать/исследовать/предоставить запрошенную информацию.   -  person pdorwin    schedule 02.08.2017
comment
Я просто хочу, чтобы вы сделали скриншот вашей конфигурации с помощью портала управления. Я имею в виду раздел диска на портале управления, просто сделайте снимок этого изображения и добавьте его к своему вопросу.   -  person Nelson Raul Cabero Mendoza    schedule 02.08.2017
comment
У меня нет образа для вас, но я думаю, вам нужна информация на вкладке storge, 4 диска по 4000 ГБ Western Digital WD RE без хранилища iSCSI, NFS или NAS.   -  person pdorwin    schedule 03.08.2017
comment
возможно ли получить текущую информацию о группах хранения из API Softlayer?   -  person pdorwin    schedule 03.08.2017


Ответы (1)


это конфигурация, которую, я думаю, вы делаете (было бы проще, если бы вы опубликовали скриншот)

введите здесь описание изображения

для этого конфигурация групп хранения:

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

В любом случае, если это не та конфигурация, вы можете увидеть конфигурацию, которую использует портал управления, с помощью инструментов разработчика Chrome

вам просто нужно перейти к управлению, сделать всю конфигурацию для вашего заказа и, прежде чем нажать «СОХРАНИТЬ В ЗАКАЗ», откройте инструменты разработчика, выберите вкладку «Сеть» и отметьте флажок «Сохранить журнал»:

введите здесь описание изображения

затем нажмите кнопку «Сохранить в заказе» и найдите следующий запрос POST

введите здесь описание изображения

Открой это

введите здесь описание изображения

и вы увидите конфигурацию группы хранения, тогда вам просто нужно перевести эту же конфигурацию в свой запрос и все. Если у вас возникли проблемы с этим, пришлите мне конфигурацию, которую вы видите в инструментах разработчика.

ОБНОВЛЕНИЕ

в соответствии с вашим изображением правильная конфигурация выглядит так:

"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]
        }
    ]
person Nelson Raul Cabero Mendoza    schedule 03.08.2017
comment
хорошо - теперь это имеет смысл, что я могу сбросить заказ json перед заказом - БОЛЬШОЕ СПАСИБО - попробую. Конфигурация рейда, которую вы предоставили, близка - однако, если вы установите эту группу хранения tp 1 ТБ Liunux Basic и добавите вторую группу хранения 7 ТБ raid10, это то, что я заказал. - person pdorwin; 03.08.2017
comment
Я разместил ссылку на изображение в исходном сообщении на мою конфигурацию рейда. - person pdorwin; 03.08.2017
comment
Я обновил свой ответ конфигурацией вашего снимка экрана, попробуйте и дайте мне знать. - person Nelson Raul Cabero Mendoza; 04.08.2017
comment
Эта конфигурация работала для меня - большое спасибо за вашу помощь и терпение. Я очень ценю указатель на инструменты разработчика Chrome - это действительно ключ к такому типу работы. Теперь, когда я разобрался, мне нужно изменить конфигурацию и иметь для этого инструменты. БЛАГОДАРЮ ВАС !!!! - person pdorwin; 04.08.2017