Openstack 安装部署指南翻译系列 之 启动一个实例

本节创建必要的虚拟网络以支持启动实例。网络选项1包括一个提供者provider(external)网络,一个实例使用它。网络选项2包括一个提供商provider网络,一个实例使用它,一个自助服务(private)网络与一个使用它的实例。本节中的说明使用控制器节点上的命令行界面(CLI)工具。但是,可以按照安装工具的任何主机上的说明进行操作。有关CLI工具的更多信息,请参阅Pike的 OpenStackClient文档。要使用仪表板(dashboard),请参阅仪表板(dashboard)用户文档。

1.1.1.1. 创建虚拟网络

为配置Neutron时选择的网络选项创建虚拟网络。如果选择选项1,只创建提供商网络。如果选择选项2,需创建提供商和自助服务网络。

1.1.1.1.1. 提供商网络

在启动实例之前,必须创建必要的虚拟网络基础架构。对于网络选项1,实例使用通过第2层(桥接/切换)连接到物理网络基础设施的提供商(外部)网络。该网络包括为实例提供IP地址的DHCP服务器。

该admin或其他特权用户必须创建此网络,因为它直接连接到物理网络基础架构。

注意:以下说明和图表使用示例IP地址范围。必须根据特定环境进行调整。

网络选项1:提供商网络 - 概述

网络选项1:提供商网络 - 连接

1.1.1.1.1.1. 创建提供商网络

1、在控制器节点上,输入admin凭据以访问仅管理CLI命令:

$ . admin-openrc

2、创建网络:

$ openstack network create  --share --external \

--provider-physical-network provider \

--provider-network-type flat provider

该--share选项允许所有项目使用虚拟网络。

该--external选项将虚拟网络定义为外部网络。如果您想创建一个内部网络,可以改用--internal。默认值为internal。

--provider-physical-network provider 和 --provider-network-type flat使用以下文件中的信息将平面虚拟网络连接到主机接口上的平面(native/untagged)物理网络:

ml2_conf.ini:

[ml2_type_flat]

flat_networks  =  provider

linuxbridge_agent.ini:

[linux_bridge]

physical_interface_mappings = provider:eth1

3、在网络上创建一个子网:

$ openstack subnet create --network provider \

--allocation-pool start=START_IP_ADDRESS,end=END_IP_ADDRESS \

--dns-nameserver DNS_RESOLVER --gateway PROVIDER_NETWORK_GATEWAY \

--subnet-range PROVIDER_NETWORK_CIDR provider

用PROVIDER_NETWORK_CIDRCIDR表示法替代提供商物理网络上的子网。

替换START_IP_ADDRESS及END_IP_ADDRESS使用要为实例分配的子网内范围的第一个和最后一个IP地址。此范围不得包含任何现有的活动IP地址。

替换DNS_RESOLVER为DNS解析器的IP地址。在大多数情况下,可以使用/etc/resolv.conf主机上的文件中的一个。

替换PROVIDER_NETWORK_GATEWAY为提供商网络上的网关IP地址,通常为“.1”IP地址。

例如:提供商网络在203.0.113.1上使用203.0.113.0/24网关。DHCP服务器将每个实例的IP地址从203.0.113.101分配到203.0.113.250。所有实例使用8.8.4.4作为DNS解析器,运行下面的命令:

$ openstack subnet create --network provider \

--allocation-pool start=203.0.113.101,end=203.0.113.250 \

--dns-nameserver 8.8.4.4 --gateway 203.0.113.1 \

--subnet-range 203.0.113.0/24 provider

1.1.1.1.1. 自服务(self-service)网络

如果选择网络选项2,还可以创建通过NAT连接到物理网络基础架构的自服务(self-service)(私有)网络。该网络包括为实例提供IP地址的DHCP服务器。该网络上的一个实例可以自动访问Internet等外部网络。但是,从互联网这样的外部网络访问该网络上的实例需要一个浮动IP地址。

demo或其他非特权用户可以创建此网络,它仅提供与demo项目中的实例的连接。

警告:必须在自服务网络之前创建提供商(provider)网络。

注意:以下说明和图表使用示例IP地址范围。必须根据您的特定环境进行调整。

网络选项2:自助服务网络 - 概述

网络选项2:自服务网络 - 连接

1.1.1.1.1.1. 创建自助网络

1、在控制器节点上,输入demo凭据以访问仅限用户的CLI命令:

$ . demo-openrc

2、创建网络:

$ openstack network create selfservice

非特权用户通常不能为此命令提供其他参数。该服务使用以下文件中的信息自动选择参数:

ml2_conf.ini:

[ml2]

tenant_network_types = vxlan

[ml2_type_vxlan]

vni_ranges = 1:1000

3、在网络上创建一个子网:

$ openstack subnet create --network selfservice \

--dns-nameserver DNS_RESOLVER --gateway SELFSERVICE_NETWORK_GATEWAY \

--subnet-range SELFSERVICE_NETWORK_CIDR selfservice

替换DNS_RESOLVER为DNS解析器的IP地址。在大多数情况下,可以使用/etc/resolv.conf主机上的文件中的一个。

替换SELFSERVICE_NETWORK_GATEWAY为要在自助服务网络上使用的网关,通常为“.1”IP地址。

替换SELFSERVICE_NETWORK_CIDR为要在自助服务网络上使用的子网。尽管我们建议使用RFC 1918的网络,您可以使用任意值。

例如:自助网络在172.16.1.1上使用172.16.1.0/24网关。DHCP服务器为每个实例分配一个从172.16.1.2到172.16.1.254的IP地址。所有实例使用8.8.4.4作为DNS解析器。

$ openstack subnet create --network selfservice \

--dns-nameserver 8.8.4.4 --gateway 172.16.1.1 \

--subnet-range 172.16.1.0/24 selfservice

1.1.1.1.1.2. 
创建路由器

自助网络使用通常执行双向NAT的虚拟路由器连接到提供商网络。每个路由器包含至少一个自助服务网络和提供商网络上的网关的接口。

提供商网络必须包括router:external使自助路由器能够使用它来连接外部网络(如Internet)的选项。本admin或其他特权用户必须包括网络创建过程中,此选项或以后添加。在这种情况下,router:external通过--external在创建provider网络时使用参数来设置该选项。

1、在控制器节点上,输入demo凭据以访问仅限用户的CLI命令:

$ . demo-openrc

2、创建路由器:

$ openstack router create router

3、在路由器上添加自助网络子网作为接口:

$ neutron router-interface-add router selfservice

4、在路由器上的提供商网络上设置网关:

$ neutron router-gateway-set router provider

1.1.1.1.1.3. 验证操作

在继续操作之前验证操作并修复任何问题。以下步骤使用网络和子网创建示例中的IP地址范围。

1、在控制器节点上,输入admin凭据以访问仅管理CLI命令:

$ . admin-openrc

2、列出网络命名空间。你应该看到一个qrouter命名空间和两个 qdhcp命名空间。

$ ip netns

3、列出路由器上的端口以确定提供商网络上的网关IP地址:

$ neutron router-port-list router

4、从控制器节点或物理提供商网络上的任何主机Ping此IP地址:

$ ping -c 4 203.0.113.102

1.1.1.1. 创建m1.nano 规格

最小默认规格每个实例消耗512 MB内存。对于包含小于4 GB内存的计算节点的环境,建议创建m1.nano每个实例只需要64 MB 的规格。只有使用这种规格与CirrOS图像进行测试。

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

1.1.1.2. 生成一个密钥对

大多数云镜像支持公钥认证,而不是传统的密码认证。在启动实例之前,必须向Compute服务添加公钥。

1、生效demo项目凭证:

$ . demo-openrc

2、生成一个密钥对并添加公钥:

$ ssh-keygen -q -N ""

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

注意:或者,您可以跳过该ssh-keygen命令并使用现有的公钥。

3、验证加密密钥对:

$ openstack keypair list

1.1.1.3. 添加安全组规则

默认情况下,default安全组应用于所有实例,并包括拒绝远程访问实例的防火墙规则。对于像CirrOS这样的Linux映像,建议至少允许ICMP(ping)和安全shell(SSH)。

向default安全组添加规则:

允许ICMP(ping):

$ openstack security group rule create --proto icmp default

允许安全shell(SSH)访问:

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

1.1.1.4. 启动一个实例

如果选择了网络选项1,则只能在提供商网络上启动实例。如果选择了网络选项2,则可以在提供商网络和自助服务网络上启动一个实例。

1.1.1.4.1. 在提供商网络上启动一个实例
1.1.1.4.1.1. 确定实例选项

要启动实例,必须至少指定flavor(规格),镜像名称,网络,安全组,密钥和实例名称。

1、在控制器节点上,输入demo凭据以访问仅限用户的CLI命令:

$ . demo-openrc

2、一个flavor指定一个包含处理器,内存和存储的虚拟资源分配配置文件。列出可用的规格:

$ openstack flavor list

注意:还可以通过ID引用规格。

3、列出可用镜像:

$ openstack image list

此实例使用cirros镜像。

4、列出可用网络:

$ openstack network list

此实例使用provider提供商网络。但是,必须使用ID而不是名称来引用此网络。

注意:如果选择选项2,则输出也应包含 selfservice自助服务网络。

5、列出可用的安全组:

$ openstack security group list

此实例使用default安全组。

1.1.1.4.1.2. 启动实例

1、启动实例:

替换PROVIDER_NET_ID为provider提供商网络的ID 。

注意:如果选择了选项1,并且您的环境仅包含一个网络,则可以省略该--nic选项,因为OpenStack会自动选择唯一可用的网络。

$ openstack server create --flavor m1.nano --image cirros \

--nic net-id=PROVIDER_NET_ID --security-group default \

--key-name mykey provider-instance

2、检查您的实例的状态:

$ openstack server list

状态从改变BUILD到ACTIVE时构建过程成功完成。

1.1.1.4.1.3. 使用虚拟控制台访问实例

1、获取实例的虚拟网络计算(VNC)会话URL,并从Web浏览器访问它:

$ openstack console url show provider-instance

注意:如果您的Web浏览器在无法解析controller主机名,则可以controller使用控制器节点上IP地址。

CirrOS映像包括传统的用户名/密码认证,并在登录提示符下提供这些凭据。登录CirrOS后,建议您使用以下网络连接进行验证ping。

2、验证对提供商物理网关的访问权限:

$ ping -c 4 203.0.113.1

3、验证访问互联网:

$ ping -c 4 openstack.org

1.1.1.4.1.4. 
远程访问该实例

1、验证从控制器节点或提供商物理网络上的任何主机到实例的连接:

$ ping -c 4 203.0.113.103

2、使用SSH从控制器节点或提供商物理网络上的任何主机访问您的实例:

$ ssh [email protected]

1.1.1.4.2. 在自助服务网络上启动一个实例
1.1.1.4.2.1. 确定实例选项

要启动实例,必须至少指定flavor,镜像名称,网络,安全组,密钥和实例名称。

1、在控制器节点上,输入demo凭据以访问仅限用户的CLI命令:

$ . demo-openrc

2、一个flavor指定一个包含处理器,内存和存储的虚拟资源分配配置文件。列出可用的flavor:

$ openstack flavor list

3、列出可用镜像:

$ openstack image list

此实例使用cirros镜像。

4、列出可用网络:

$ openstack network list

此实例使用selfservice自助服务网络。但是,您必须使用ID而不是名称来引用此网络。

5、列出可用的安全组:

$ openstack安全组列表

$ openstack security group list

此实例使用default安全组。

6、启动实例:

替换SELFSERVICE_NET_ID为selfservice网络的ID 。

$ openstack server create --flavor m1.nano --image cirros \

--nic net-id=SELFSERVICE_NET_ID --security-group default \

--key-name mykey selfservice-instance

7、检查实例的状态:

$ openstack server list

状态从改变BUILD到ACTIVE时构建过程成功完成。

1.1.1.4.2.2. 使用虚拟控制台访问实例

1、获取 您的实例的虚拟网络计算(VNC)会话URL,并从Web浏览器访问它:

$ openstack console url show selfservice-instance

注意:如果您的Web浏览器在无法解析controller主机名,则可以使用控制器节点IP地址替换。

CirrOS映像包括传统的用户名/密码认证,并在登录提示符下提供这些凭据。登录CirrOS后,建议您使用以下网络连接进行验证ping。

2、验证对自助网关的访问权限:

$ ping -c 4 172.16.1.1

3、验证访问互联网:

$ ping -c 4 openstack.org

1.1.1.4.2.3. 远程访问该实例

1、在提供商虚拟网络上创建一个浮动IP地址:

$ openstack floating ip create provider

2、将浮动IP地址与实例相关联:

$ openstack server add floating ip selfservice-instance 203.0.113.104

3、检查您的浮动IP地址的状态:

$ openstack server list

4、通过控制器节点或提供商物理网络上的任何主机通过浮动IP地址验证与实例的连接:

$ ping -c 4 203.0.113.104

5、使用SSH从控制器节点或提供商物理网络上的任何主机访问您的实例:

$ ssh [email protected]

时间: 2024-09-29 04:01:35

Openstack 安装部署指南翻译系列 之 启动一个实例的相关文章

Openstack安装部署指南翻译系列 之 说明(Pike版本官网翻译)

从部署实践来看,部署工作有两大困难,一个是架构设计,一个是排查错误.其中,当部署过程中出现错误,需要排查的时候,如果不了解基础的系统结构原理和基础的安装步骤,是很难定位和解决问题的. 现在Openstack的部署有很多可选项,主要有: 1)根据社区官网最基础的安装文档根据设计对每一个service组件进行安装,这种安装方式最基础,全手工: 2)使用Mirantis公司的Fuel工具进行部署.这种部署方式非常高效,界面友好,Fuel工具真正实现了一键部署,只要设计好网络和功能节点分布,一键部署完成

Openstack 安装部署指南翻译系列 之 Glance服务安装(Image)

1.1.1.1. ance服务安装(Image) 1.1.1.1.1. 镜像服务概述 镜像服务(Glance)使用户能够发现,注册和检索虚拟机镜像.它提供了一个 REST API,可让您查询虚拟机镜像元数据并检索实际镜像.可以存储通过Image Service在各种位置(从简单的文件系统到像OpenStack Object Storage这样的对象存储系统)提供的虚拟机镜像. 重要:为了简单起见,本指南介绍如何配置Image服务以使用file后端,后端上传并存储在托管Image服务的控制器节点上

Openstack 安装部署指南翻译系列 之 Manila服务安装(Share Storage)

1.1.1.1. Manila服务安装(Share Storage) 1.1.1.1.1. 服务概述 OpenStack共享文件系统服务(manila)为虚拟机提供文件存储.共享文件系统服务提供了一个管理和配置文件共享的集合.该服务还支持共享类型的管理以及支持共享快照,前提是需要驱动程序支持. 共享文件系统服务由以下组件组成: manila-api 验证请求并将其路由到共享文件系统服务的WSGI应用程序. manila-data 一个独立的服务,其目的是处理数据操作,如复制,共享迁移或备份. m

Openstack 安装部署指南翻译系列 之 Neutron服务安装(Networking)

1.1.1.1. Neutron服务安装(Networking) 本章介绍如何使用提供商网络或自助服务网络选项安装和配置网络服务(Neutron). OpenStack Networking(Neutron)允许您创建并附加由其他OpenStack服务管理的接口设备到网络.可以实现插件以适应不同的网络设备和软件,为OpenStack架构和部署提供灵活性. 1.1.1.1.1. 网络服务概述 它包括以下组件: 2 neutron-server 接受并将API请求路由到相应的OpenStack Ne

Openstack 安装部署指南翻译系列 之 Keystone服务安装(Identity)

OpenStack系统由分开安装的几个关键服务组成.这些服务可根据其他云需求一起工作,包括计算(Compute),身份(Identity),网络(Networking),镜像(Image),块存储(Block Storage),对象存储(Object Storage),计量(Telemetry),编排(Orchestration)和数据库(Database)服务.可以单独安装任何这些项目,并将其配置为独立的或连接的实体. 本节介绍如何在控制器节点上安装和配置OpenStack Identity服

Openstack 安装部署指南翻译系列 之 环境配置

1.1.1. 环境配置 为了最大限度地减少混乱并为OpenStack提供更多资源,建议最少安装Linux发行版.此外,必须在每个节点上安装64位版本的发行版. 环境选项主要包括以下几个部分: l 安全 l 主机网络 l 网络时间协议(NTP) l OpenStack包 l SQL数据库 l 消息队列 l Memcached 1.1.1.1. 安全 OpenStack服务支持各种安全方法,包括密码,策略和加密.另外,包括数据库服务器和消息代理在内的支持服务支持密码安全性. 为了简化安装过程,本指南

Openstack 安装部署指南翻译系列 之 Cinder服务安装(Block Storage)

1.1.1.1. Cinder服务安装(Block Storage) 块存储服务(cinder)为访客实例提供块存储设备.存储设置方法由块存储驱动程序确定,或者在多后端配置的情况下确定驱动程序.有各种可用的驱动程序:NAS / SAN,NFS,iSCSI,Ceph等. 块存储API和调度器服务通常在控制器节点上运行.根据使用的驱动程序,卷服务可以在控制器节点,计算节点或独立存储节点上运行. 本节介绍如何为块存储服务安装和配置存储节点.为了简单起见,此配置引用一个具有空的本地块存储设备的存储节点.

Openstack 安装部署指南翻译系列 之 网络

网络包括两种类型,网络选项1:提供商网络(Provider networks)和网络选项2:自助网络(Self-service networks),其中网络选项2:自助网络(Self-service networks)能够实现更加高级的网络功能,能够实现网络选项1的所有功能,因此我们的项目选择网络选项2:自助网络(Self-service networks).以下是虚拟网络选项的说明: 1.1.1.1. 网络选项1:提供商网络(Provider networks) 提供商网络选项以最简单的方式部

Openstack安装部署指南翻译系列 之 硬件需求

1.1.1.1. 控制节点 控制器节点运行身份服务,镜像服务,计算的管理部分,网络的管理部分,各种网络代理和仪表板.它还包括支持服务,如SQL数据库,消息队列和NTP. 可选地,控制节点运行块存储,对象存储,编排和计量服务的部分. 控制器节点至少需要两个网络接口. 1.1.1.2. 计算节点 计算节点运行虚拟机实例的Compute 的管理程序部分.默认情况下,Compute使用KVM虚拟机管理程序.计算节点还运行网络服务代理,将实例连接到虚拟网络,并通过安全组向实例提供防火墙服务. 可以部署多个