我是一名开发人员,我目前的工作是编写脚本来管理软层VM。问题是有关更改根密码和绑定(删除绑定)SshKey。我的问题是:
我有一个正在运行的softlayer虚拟机,wihch softlayer api可以帮助我更改虚拟机的root密码。
我有一个正在运行的softlayer vm,之前没有绑定sshkey。是否有任何softlayer api可以帮助我将ssh-key与此虚拟机绑定?
与第2点相反,如何使用softlayer api解除sshkey的绑定?
最佳答案
关于第一个问题,请从vm更改root密码,请按照以下步骤操作:
从虚拟机中检索密码的标识符
https://$user:[email protected]/rest/v3.1/SoftLayer_Virtual_Guest/$vsiId/getSoftwareComponents?objectMask=mask[passwords]
Method: Get
用您自己的信息替换$ user,$ apiKey和$ vsiId
您将得到如下结果:
hardwareId": null
"id": 345676755
"manufacturerLicenseInstance": "C412F72A-1BB1-4C07-9467-E55729234F8E"
"passwords": [1]
0: {
"createDate": "2016-06-09T11:10:28-03:00"
"id": 122333
"modifyDate": "2016-09-06T11:19:18-03:00"
"password": "Cochabamba"
"port": null
"softwareId": 11209641
"username": "Ruber"
"software": null
}
}
然后,您可以使用以下调用进行更新:
https://$user:[email protected]/rest/v3.1/SoftLayer_Software_Component_Password/$passwordId/editObject
Method: Post
{
"parameters":[
{
"username":"usernameTest",
"password":"Password*-"
}
]
}
用您自己的信息替换:$ user,$ apiKey和$ passwordId,在这种情况下,$ passwordId为:122333
关于第二个和第三个问题,不幸的是,不可能通过SoftLayer API进行此操作,有必要进行OS重新加载