找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 370|回复: 36

新版Conoha利用API上传镜像安装系统(可安装WIN)

[复制链接]

9

主题

281

回帖

597

积分

高级会员

积分
597
发表于 2015-6-2 11:39:23 | 显示全部楼层 |阅读模式
本帖最后由 dzxx36gyy 于 2015-6-2 16:36 编辑

经过一番折腾,楼主我已经搞定了新版Conoha利用API上传ISO安装系统的方法了,当然,
大部分人还是会拿来安装windows(水晶党退散,迅雷这么坑还玩?)。
本教程主要利用如下API:
1.ISO上传API https://www.conoha.jp/docs/compute-iso-download-add.html
2.查看已上传的ISO的API https://www.conoha.jp/docs/compute-iso-list-show.html
3.挂载已上传的ISO的API https://www.conoha.jp/docs/compute-insert_iso_image.html
4.卸载ISO的API https://www.conoha.jp/docs/compute-eject_iso_image.html
5.身份验证API https://www.conoha.jp/docs/identity-post_tokens.html
6.VPS详细信息查看API https://www.conoha.jp/docs/compute-get_vms_detail_specified.html

首先,参照官方文档,我发现大部分操作并没有利用到Conoha面板API中的密码,而是用到了
X-Auth-Token,然后我找啊找,发现身份验证的API里面有一项可以生成这个。命令如下:
curl -i -X POST \
-H "Accept: application/json" \
-d '{
  "auth": {
    "passwordCredentials": {
      "username": "API用户名",
      "password": "API用户密码(请自己在面板里添加)"
    },
    "tenantId": "店铺ID"
  }
}' \
https://identity.tyo1.conoha.io/v2.0/tokens 这是东京的API,其它地区的自己按照地址格式改。

运行之后会返回一串数据,请注意
{
  "access": {
    "token": {
      "issued_at": "2015-05-19T07:08:21.927295",
      "expires": "2015-05-20T07:08:21Z",
      "id": "sample00d88246078f2bexample788f7",
          其余省略
这段中的id即为X-Auth-Token,上面那个expires是有效期,之后的操作均要用到X-Auth-Token。
现在我们可以开始上传ISO了,注意,由于官方API系统没建设完全,对http链接支持不完善,请
使用ftp格式的ISO地址(ISO必须带virtio驱动),上传命令如下:
curl -i -X POST \
-H 'Content-Type: application/json' \
-H "Accept: application/json" \
-H "X-Auth-Token: (前面有个空格)这里是啥不用我说了吧" \
-d '{
    "iso-image": {
        "url": "ftp格式的ISO地址"
    }
}' \
https://compute.tyo1.conoha.io/v2/店铺ID/iso-images 同样,这个是东京的API地址,其它地区的
请按照格式自己修改
命令运行之后会返回数据,是ISO地址和你的API信息

之后我们应该查看ISO是否成功上传,命令如下
curl -i -X GET \
-H 'Content-Type: application/json' \
-H "Accept: application/json" \
-H "X-Auth-Token: (同样前面有个空格)" \
https://compute.tyo1.conoha.io/v2/店铺ID/iso-images

返回数据大概是这样的
{
  "iso-images": [
    {
      "url": "ftp://ftp.riken.jp/Linux/centos/6.6/isos/x86_64/CentOS-6.6-x86_64-minimal.iso",
      "path": "/mnt/isos/repos/tenant_iso_data/43b36734a9e541fd91a62fc63ee93fed/CentOS-6.6-x86_64-minimal.iso",
      "ctime": "Fri Oct 24 23:22:57 2014",
      "name": "CentOS-6.6-x86_64-minimal.iso",
      "size": 401604608
    },
    {
      "url": "http://ftp.riken.jp/Linux/centos/7/isos/x86_64/CentOS-7.0-1406-x86_64-Everything.iso",
      "path": "/mnt/isos/repos/tenant_iso_data/43b36734a9e541fd91a62fc63ee93fed/CentOS-7.0-1406-x86_64-Everything.iso",
      "ctime": "Sat Jul  5 07:16:46 2014",
      "name": "CentOS-7.0-1406-x86_64-Everything.iso",
      "size": 7062159360
    }
  ]
}
出现在里面的代表成功上传了,挂载镜像会使用到path
挂载命令如下(前提条件:先创建vps,然后关机,在面板——服务器——VPS(别真以为有个选项叫vps啊)——vps设置——控制台键盘映射改为en-us
curl -i -X POST \
-H "Accept: application/json" \
-H "X-Auth-Token: 不说了" \
-d '{"mountImage": "前面查看已上传的ISO里的path"}' \
https://compute.tyo1.conoha.io/v2/店铺ID/servers/VPS的UUID(点开vps管理,在VPS设置里和网址上有)/action

接下来要查看VPS详细信息,确认是否成功挂载
curl -i -X GET \
-H "Accept: application/json" \
-H "X-Auth-Token: 不说了" \
https://compute.tyo1.conoha.io/v2/店铺ID/servers/上一步里的UUID

返回信息里自己看吧,有你ISO的path就代表挂载成功了。
然后你开机吧(之前挂载步骤必须在关机状态下进行,不然会失败)
开启VNC,重启,会提示你按任意键以从光驱启动,之后不用我说了吧,唯一需要注意的一点就是
VPS设置里的那个控制台键盘映射必须换成en-us(电脑是日语键盘的请无视),不然各种灵异事件。

对了,安装完之后请卸载ISO,当然你不卸貌似也没问题,请在关机状态下运行
curl -i -X POST \
-H "Accept: application/json" \
-H "X-Auth-Token: 不说了" \
-d '{"unmountImage": ""}' \
https://compute.tyo1.conoha.io/v2/店铺ID/servers/VPS的UUID/action
返回信息没啥东西,无视吧。

好了,本教程END


(别问我这些命令在什么里面运行……,随便找台联网的linux机子都行)
回复

使用道具 举报

118

主题

372

回帖

1116

积分

金牌会员

积分
1116
发表于 2015-6-2 11:41:11 | 显示全部楼层
来一发啊
回复

使用道具 举报

222

主题

997

回帖

2670

积分

金牌会员

积分
2670
发表于 2015-6-2 11:42:19 | 显示全部楼层
Mark
回复

使用道具 举报

95

主题

424

回帖

1147

积分

金牌会员

积分
1147
发表于 2015-6-2 11:45:36 | 显示全部楼层
马克,权限勿超过70
回复

使用道具 举报

27

主题

1318

回帖

2727

积分

金牌会员

积分
2727
发表于 2015-6-2 11:50:17 | 显示全部楼层
先mark一下
回复

使用道具 举报

57

主题

196

回帖

573

积分

高级会员

积分
573
发表于 2015-6-2 11:50:22 | 显示全部楼层


来一发。。。。。。。。
回复

使用道具 举报

27

主题

1705

回帖

3543

积分

论坛元老

积分
3543
发表于 2015-6-2 11:56:27 | 显示全部楼层
可以弄个 不用来挂水晶
回复

使用道具 举报

0

主题

150

回帖

306

积分

中级会员

积分
306
发表于 2015-6-2 12:03:55 | 显示全部楼层
mark
回复

使用道具 举报

23

主题

384

回帖

845

积分

高级会员

积分
845
发表于 2015-6-2 12:06:06 | 显示全部楼层
不玩conoha
回复

使用道具 举报

0

主题

1

回帖

4

积分

新手上路

积分
4
发表于 2015-6-2 12:10:07 | 显示全部楼层
马克,权限设置为70协议禁止吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Discuz! X

GMT+8, 2025-1-31 07:27 , Processed in 0.022750 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表