创建虚拟网络

在启动实例之前,您必须创建必须的虚拟机网络设施。

创建提供者网络

在控制节点上,加载 admin 凭证来获取管理员能执行的命令访问权限:

. admin-openrc

创建网络:

openstack network create  --share --external \
  --provider-physical-network provider \
  --provider-network-type flat provider

在网络上创建一个子网:

//解析
openstack subnet create --network provider \
  --allocation-pool start=分配的第一个IP,end=配的最后一个IP \  这个范围不能包括任何已经使用的IP地址。
  --dns-nameserver DNS服务器IP --gateway 网关地址 \
  --subnet-range 掩码CIDR provider
openstack subnet create --network provider \
  --allocation-pool start=192.168.145.140,end=192.168.145.150 \
  --dns-nameserver 114.114.114.114 --gateway 192.168.145.2 \
  --subnet-range 192.168.145.0/24 provider

创建m1.nano类型

默认的最小规格的主机需要512 MB内存。对于环境中计算节点内存不足4 GB的,我们推荐创建只需要64 MB的m1.nano规格的主机。若单纯为了测试的目的,请使用m1.nano规格的主机来加载CirrOS镜像

openstack flavor create --id 0 --vcpus 1 --ram 64 --disk 1 m1.nano

生成一个键值对

在启动实例前,你必须添加一个公共密钥到计算服务。

导入demo项目凭证

. demo-openrc

生成密钥对并添加公钥:

ssh-keygen -q -N ""

回车一下

openstack keypair create --public-key ~/.ssh/id_rsa.pub mykey

验证公钥的添加:

openstack keypair list

增加安全组规则

默认情况下, default安全组适用于所有实例并且包括拒绝远程访问实例的防火墙规则。对诸如CirrOS这样的Linux镜像,我们推荐至少允许ICMP (ping) 和安全shell(SSH)规则。

添加规则到 default 安全组。

  • Permit ICMP (ping):

    openstack security group rule create --proto icmp default

  • 允许安全 shell (SSH) 的访问:

    openstack security group rule create --proto tcp --dst-port 22 default

启动一个实例

启动一台实例,您必须至少指定一个类型、镜像名称、网络、安全组、密钥和实例名称。

在控制节点上,获得 admin 凭证来获取只有管理员能执行的命令的访问权限:

. demo-openrc

一个实例指定了虚拟机资源的大致分配,包括处理器、内存和存储。

列出可用类型:

    openstack flavor list

列出可用镜像:

openstack image list

列出可用网络:

openstack network list

列出可用的安全组:

启动云主机

启动实例:

使用provider公有网络的ID替换PUBLIC_NET_ID

openstack server create --flavor m1.nano --image cirros \
  --nic net-id=PROVIDER_NET_ID --security-group default \
  --key-name mykey provider-instance
  
//PROVIDER_NET_ID填写openstack network list指令查出的网络ID
openstack server create --flavor m1.nano --image cirros \
  --nic net-id=cb9b69a8-5036-44cf-adb3-580a7df45dec --security-group default \
  --key-name mykey provider-instance

检查实例的状态:

openstack server list

Windows添加hosts

在Windows路径C:\Windows\System32\drivers\etc中找到hosts文件编辑它,鼠标右键,打开方式选择你熟悉的文档编辑器;

加入以下配置并保存:

控制节点IP controller
计算节点IP compute1
192.168.145.133 controller
192.168.145.134 compute1

使用虚拟控制台访问实例

获取会话URL并从web浏览器访问它:

openstack console url show provider-instance

登录后发现小问题booting from hard disk,我们解决它

在计算节点编辑nova.conf 文件

vim /etc/nova/nova.conf
[libvirt] 
... 
cpu_mode = none 
virt_type = qemu

重启Nova服务

systemctl restart openstack-nova-compute

在web页面可以看见刚才启动的实例,

再次访问实例,进行ping操作;

如果觉得我的文章对你有用,请随意赞赏