SoftLayer API:如何使用RAID选项指定操作系统重新加载?

2024-06-16 11:00:17 发布

您现在位置:Python中文网/ 问答频道 /正文

使用Python软层库,我一直在尝试通过软层API提交操作系统重新加载,以便为配置的服务器获得一致的磁盘设置。这些服务器使用阵列中的所有可用磁盘进行RAID10或RAID1设置。在初始配置时,服务器设置正确。你知道吗

当我使用Python库提交操作系统重新加载时,使用如下方法:

def reload_server(server_id):
    conf = {
        "upgradeHardDriveFirmware": "1",
        "upgradeBios": "1",
        "hardDrives": [
            {
                "complexType": "SoftLayer_Hardware_Component_HardDrive",
                "partitions": [
                    { "name": "/boot", "minimumSize": "1"},
                    { "name": "/swap0", "minimumSize": "20"},
                    { "name": "/", "minimumSize": "15"},
                    { "name": "/disk", "minimumSize": "1", "grow": "1"}
                ]
            }
        ]
     }

     return client['Hardware_Server'].reloadOperatingSystem('FORCE', conf, id=server_id)

重新加载已启动,但分区设置仅使用第一个磁盘,而不是RAID块设备。因此,它们没有RAID设置。换言之,对于打算具有RAID10的6磁盘服务器,其应具有在操作系统(/dev/sda)中可见的单个块设备,/dev/sda被设置为具有这些分区,并且其他磁盘/dev/sdb/dev/sdc/dev/sdc等都是块设备:

root@server ~ $blkid
/dev/sda1: UUID="6c80b9ef-0228-4f6d-8ff9-7ed851f383f9" TYPE="ext2"
/dev/sda5: UUID="58e05f19-aa62-42cd-858b-568f415a0201" TYPE="swap"
/dev/sda6: UUID="8d7c0396-a3d3-4e72-847e-f8b3bbbda120" TYPE="ext4"
/dev/sda7: UUID="TmNPZO-V1Dq-xSRU-hHM2-02A8-9mJi-mRPLjo" TYPE="ext4"
/dev/sdb1: LABEL="/disk1" UUID="a19883ec-1fd0-472d-a2ef-188f943a0ab3" TYPE="ext4"
/dev/sdc1: LABEL="/disk2" UUID="c6bd0fc6-3d5c-4c29-9b33-a61b15793d5d" TYPE="ext4"
/dev/sdd1: LABEL="/disk3" UUID="5bda0575-1bfa-473b-83bc-519f705f2213" TYPE="ext4"
/dev/sde1: LABEL="/disk4" UUID="43fe460d-8ad4-41f9-b840-11f3d36d8788" TYPE="ext4"
/dev/sdf1: LABEL="/disk5" UUID="9b34ca0f-bc54-41fe-934a-daabdaa8521b" TYPE="ext4"

如何提交操作系统重新加载以确保RAID设置正确并且在重新加载时不会丢失?我该如何始终如一地做到这一点,因为我们已经使用类似的负载通过cURL提交了操作系统重新加载,并且重新加载导致了正确的RAID设置。你知道吗

编辑:澄清一下,我不想更改RAID配置。我想保留现有的RAID配置。我只是想改变分区。即,调整swap的大小,减少根分区,并为我们的自动化工具指定grow分区。当我提交操作系统重新加载并更改分区结构时,RAID阵列就不见了。你知道吗


Tags: namedev服务器idserveruuidtypelabel
1条回答
网友
1楼 · 发布于 2024-06-16 11:00:17

这是重新加载的预期行为,分区仅应用于第一个磁盘,并且不可能通过API为重新加载指定RAID配置。你知道吗

您有两个选项来维护RAID配置:

1.-不要为重新加载指定任何分区配置,这样服务器的操作系统将重新加载,但它将保持相同的RAID配置。你知道吗

2.-您可以指定一个脚本,该脚本将在重新加载后执行(customProvisioningScripUri是您需要添加的属性的名称,请参阅更多here),在该脚本中,您可以自动创建所需的RAID。你知道吗

敬礼

相关问题 更多 >