分享

通过Dashbord创建虚拟机指导

nettman 发表于 2014-2-24 00:16:24 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 1 8814
本帖最后由 pig2 于 2014-2-24 01:57 编辑
可以带着下面问题来阅读
1.创建虚拟机的方式有几种?
2.如何查看镜像?
3.如何创建虚拟机?
4.如何查看新创建虚拟机?





创建Dashbord有两种方式:
1.通过Dashbord创建新的虚拟机
2.通过命令来创建虚拟机




下面介绍通过命令来创建虚拟机


1.激活环境变量

如果本来就激活了就没有必要进行这一步了。
新建文件novarc
  1. export OS_TENANT_NAME=admin  
  2. export OS_USERNAME=admin  
  3. export OS_PASSWORD=123456  
  4. export OS_AUTH_URL="http://10.214.0.179:5000/v2.0/"  
复制代码
执行脚本
source novarc

2.下载或制作自己的虚拟机镜像

到官方网站下载。http://cloud-images.ubuntu.com/lucid/current/

3.上传镜像
  1. glance add name="ubuntu rubis" is_public=true container_format=vof disk_format=vhd < /root/images/disk.img  
复制代码
ps:(可选)脚本:
新建文件upimage.sh
  1. IMAGE_NAME='quantal-server-cloudimg-amd64'#改成你下载镜像的名字  
  2. echo "upload images"  
  3. mkdir -p /tmp/images  
  4. tar -zxf ./$IMAGE_NAME.tar.gz  -C /tmp/images  
  5. RVAL=`glance add name="ubuntu-10.04.2-kernel" is_public=true container_format=aki disk_format=aki < /tmp/images/$IMAGE_NAME-vmlinuz*`  
  6. KERNEL_ID=`echo $RVAL | cut -d":" -f2 | tr -d " "`  
  7. glance add  name="ubuntu-10.04.2" is_public=true container_format=ami disk_format=ami kernel_id=$KERNEL_ID < /tmp/images/$IMAGE_NAME.img  
复制代码
执行脚本:sh upimage.sh

说明:
镜像在物理机上的实际位置:
  1. root@nova-controller:/var/lib/glance#ls  
  2. glance.sqlite  image-cache images  
复制代码
4.创建虚拟机密钥对
  1. root@nova-controller:/var/lib/stackops# ssh-keygen   
  2. Generating public/private rsa key pair.  
  3. Enter file in which to save the key (/root/.ssh/id_rsa): /root/.ssh/id_rsa2  
  4. Created directory '/root/.ssh'.  
  5. Enter passphrase (empty for no passphrase):   
  6. Enter same passphrase again:   
  7. Your identification has been saved in /root/.ssh/id_rsa2.  
  8. Your public key has been saved in /root/.ssh/id_rsa2.pub.  
  9. The key fingerprint is:  
  10. 46:ef:fa:ee:46:f4:7f:82:37:b9:e4:fe:39:2e:3e:30 root@nova-controller  
  11. The key's randomart image is:  
  12. +--[ RSA 2048]----+  
  13. |                 |  
  14. |                 |  
  15. |        .        |  
  16. |       . ..      |  
  17. |        S...     |  
  18. |       . ..E.    |  
  19. |         .. oo.. |  
  20. |         .. .=*.o|  
  21. |        .=+ .+BOo|  
  22. +-----------------+  
复制代码
5.导入密钥
  1. root@nova-controller:/var/lib/stackops# nova keypair-list  
  2. root@nova-controller:~# nova keypair-add --pub_key .ssh/id_rsa2.pub key2  
复制代码
6.查看镜像
  1. root@nova-controller:~# nova image-list  
  2. +----+-----------------------+--------+  
  3. | ID |          Name         | Status |  
  4. +----+-----------------------+--------+  
  5. | 1  | ubuntu-10.04.2-kernel | ACTIVE |  
  6. | 2  | ubuntu-10.04.2        | ACTIVE |  
  7. +----+-----------------------+--------+  
复制代码
7.查看虚拟机规格
  1. root@nova-controller:~# nova flavor-list  
  2. +----+-----------+-----------+------+----------+-------+------------+----------+  
  3. | ID |    Name   | Memory_MB | Swap | Local_GB | VCPUs | RXTX_Quota | RXTX_Cap |  
  4. +----+-----------+-----------+------+----------+-------+------------+----------+  
  5. | 1  | m1.tiny   | 512       | 0    | 0        | 1     | 0          | 0        |  
  6. | 2  | m1.small  | 2048      | 0    | 20       | 1     | 0          | 0        |  
  7. | 3  | m1.medium | 4096      | 0    | 40       | 2     | 0          | 0        |  
  8. | 4  | m1.large  | 8192      | 0    | 80       | 4     | 0          | 0        |  
  9. | 5  | m1.xlarge | 16384     | 0    | 160      | 8     | 0          | 0        |  
  10. +----+-----------+-----------+------+----------+-------+------------+----------+  
复制代码
8.创建虚拟机
  1. root@nova-controller:~# nova boot --flavor  1 --image 2 --key_name key2 Secondvmzju  
  2. +--------------+--------------------------------------+  
  3. |   Property   |                Value                 |  
  4. +--------------+--------------------------------------+  
  5. | accessIPv4   |                                      |  
  6. | accessIPv6   |                                      |  
  7. | adminPass    | SgoPBBCaaN5BumLA                     |  
  8. | config_drive |                                      |  
  9. | created      | 2012-06-22T19:14:17Z                 |  
  10. | flavor       | m1.tiny                              |  
  11. | hostId       |                                      |  
  12. | id           | 1                                    |  
  13. | image        | ubuntu-10.04.2                       |  
  14. | key_name     | key2                                 |  
  15. | metadata     | {}                                   |  
  16. | name         | Secondvmzju                          |  
  17. | progress     | 0                                    |  
  18. | status       | BUILD                                |  
  19. | tenant_id    | 1                                    |  
  20. | updated      | 2012-06-22T19:14:17Z                 |  
  21. | user_id      | admin                                |  
  22. | uuid         | 4cf112db-5db2-4e1a-af5a-219689a11300 |  
  23. +--------------+--------------------------------------+  
复制代码
--flavor:指定虚拟机规格
--image:指定使用镜像
--key_name:指定使用key
“secondvmzju”为虚拟机名
(一个image可以创建多个虚拟机,但需要你的image,是采用qcow2的格式。)

9.查看新创建的虚拟机
  1. root@nova-controller:~# nova show Secondvmzju  
  2. +-----------------+----------------------------------------------------------+  
  3. |     Property    |                          Value                           |  
  4. +-----------------+----------------------------------------------------------+  
  5. | accessIPv4      |                                                          |  
  6. | accessIPv6      |                                                          |  
  7. | config_drive    |                                                          |  
  8. | created         | 2012-06-22T19:14:17Z                                     |  
  9. | flavor          | m1.tiny                                                  |  
  10. | hostId          | 28aabad0d319fc4dc6bd5a1f0d496229ee46648ec74f45fd7084047d |  
  11. | id              | 1                                                        |  
  12. | image           | ubuntu-10.04.2                                           |  
  13. | key_name        | key2                                                     |  
  14. | metadata        | {}                                                       |  
  15. | name            | Secondvmzju                                              |  
  16. | progress        | 100                                                      |  
  17. | service network | 10.0.0.2                                                 |  
  18. | status          | ACTIVE                                                   |  
  19. | tenant_id       | 1                                                        |  
  20. | updated         | 2012-07-05T11:32:19Z                                     |  
  21. | user_id         | admin                                                    |  
  22. | uuid            | 4cf112db-5db2-4e1a-af5a-219689a11300                     |  
  23. +-----------------+----------------------------------------------------------+  
复制代码
10.网络配置

给虚拟机配置网络(可选)。
  1. 查看当前公网已使用的ip:  
  2. root@nova-controller:~# nova floating-ip-list  
  3. +-------------+-------------+----------+  
  4. |      Ip     | Instance Id | Fixed Ip |  
  5. +-------------+-------------+----------+  
  6. | 192.168.1.1 | None        | None     |  
  7. | 192.168.1.2 | 1           | 10.0.0.2 |  
  8. +-------------+-------------+----------+  
  9.   
  10. 创建公网地址  
  11. root@nova-controller:~# nova floating-ip-create  
  12. +-------------+-------------+----------+  
  13. |      Ip     | Instance Id | Fixed Ip |  
  14. +-------------+-------------+----------+  
  15. | 192.168.1.2 | None        | None     |  
  16. +-------------+-------------+----------+  
  17. 绑定公网地址IP到虚拟机  
  18. root@nova-controller:~# nova add-floating-ip Secondvmzju 192.168.1.2  
  19. 再次查看虚拟机,注意servicenetwork  
  20. root@nova-controller:~# nova show Secondvmzju  
  21. +-----------------+----------------------------------------------------------+  
  22. |     Property    |                          Value                           |  
  23. +-----------------+----------------------------------------------------------+  
  24. | accessIPv4      |                                                          |  
  25. | accessIPv6      |                                                          |  
  26. | config_drive    |                                                          |  
  27. | created         | 2012-06-22T19:14:17Z                                     |  
  28. | flavor          | m1.tiny                                                  |  
  29. | hostId          | 28aabad0d319fc4dc6bd5a1f0d496229ee46648ec74f45fd7084047d |  
  30. | id              | 1                                                        |  
  31. | image           | ubuntu-10.04.2                                           |  
  32. | key_name        | key2                                                     |  
  33. | metadata        | {}                                                       |  
  34. | name            | Secondvmzju                                              |  
  35. | progress        | 100                                                      |  
  36. | service network | 10.0.0.2, 192.168.1.2                                    |  
  37. | status          | ACTIVE                                                   |  
  38. | tenant_id       | 1                                                        |  
  39. | updated         | 2012-07-05T11:32:19Z                                     |  
  40. | user_id         | admin                                                    |  
  41. | uuid            | 4cf112db-5db2-4e1a-af5a-219689a11300                     |  
  42. +-----------------+----------------------------------------------------------+  
  43. 防火墙设置:  
  44. 允许ssh:  
  45. root@nova-controller:~# nova secgroup-add-rule default tcp 22 22 0.0.0.0/0  
  46. +-------------+-----------+---------+-----------+--------------+  
  47. | IP Protocol | From Port | To Port |  IP Range | Source Group |  
  48. +-------------+-----------+---------+-----------+--------------+  
  49. | tcp         | 22        | 22      | 0.0.0.0/0 |              |  
  50. +-------------+-----------+---------+-----------+--------------+  
  51. 允许ping  
  52. root@nova-controller:~# nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0  
  53. +-------------+-----------+---------+-----------+--------------+  
  54. | IP Protocol | From Port | To Port |  IP Range | Source Group |  
  55. +-------------+-----------+---------+-----------+--------------+  
  56. | icmp        | -1        | -1      | 0.0.0.0/0 |              |  
  57. +-------------+-----------+---------+-----------+--------------+  
  58.   
  59. 查看防火墙规则:  
  60. root@nova-controller:~# nova secgroup-list-rules  default  
  61. +-------------+-----------+---------+-----------+--------------+  
  62. | IP Protocol | From Port | To Port |  IP Range | Source Group |  
  63. +-------------+-----------+---------+-----------+--------------+  
  64. | icmp        | -1        | -1      | 0.0.0.0/0 |              |  
  65. | tcp         | 22        | 22      | 0.0.0.0/0 |              |  
  66. +-------------+-----------+---------+-----------+--------------+  
复制代码
11.连接虚拟机

使用ssh连接(进入)虚拟机
ssh –i 通过身份认证文件验证的方式登录。
  1. root@nova-controller:~# ssh -i .ssh/id_rsa2 ubuntu@10.0.0.2  
  2. The authenticity of host '10.0.0.2 (10.0.0.2)' can't be established.  
  3. RSA key fingerprint is aa:fc:78:9a:bd:6d:f3:bb:67:cd:28:15:b5:06:fb:c8.  
  4. Are you sure you want to continue connecting (yes/no)? yes  
  5. Warning: Permanently added '10.0.0.2' (RSA) to the list of known hosts.  
复制代码
可以查看虚拟机的名字,就是创建的时候定的名字。
  1. ubuntu@secondvmzju:~$ hostname  
  2. secondvmzju  
  3. ubuntu@secondvmzju:~[        DISCUZ_CODE_28        ]nbsp;
复制代码
12.备注

在计算节点上可以通过virsh对虚拟机进行管理(不过建议是用nova)。
  1. root@nova-compute-1:~# virsh list --all  
  2. Id Name                 State  
  3. ----------------------------------  
  4.   1 instance-00000001    running  
复制代码
instance在计算节点上的实际位置:
  1. root@nova-compute-1:/var/lib/nova/instances# ls  
  2. _base  instance-00000001  
复制代码
可以把公网的ip与虚拟机解除绑定。
  1. root@nova-controller:~# nova remove-floating-ip Secondvmzju 192.168.1.2  
  2. 回收ip。  
  3. root@nova-controller:~# nova floating-ip-delete 192.168.1.2  
复制代码
考题:
你能否回答什么是虚拟机镜像?虚拟机镜像用来干什么?



加微信w3aboutyun,可拉入技术爱好者群

已有(1)人评论

跳转到指定楼层
howtodown 发表于 2014-2-24 16:42:39
string2020 发表于 2014-2-24 16:33
glance image-create --name=centos-6.4 --disk-format=qcow2 --container-format=bare --is-public=true < ...

可以,但是难度有点大,初学不建议采用这种方式。
回复

使用道具 举报

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

本版积分规则

关闭

推荐上一条 /2 下一条