创建过程

  1. 创建虚拟网络
  2. 创建m1.nano规格的主机(相等于定义虚拟机的硬件配置)
  3. 生成一个密钥对(openstack的原理是不使用密码连接,而是使用密钥对进行连接)
  4. 增加安全组规则(用iptables做的安全组)
  5. 启动一个实例(启动虚拟机有三种类型:1.命令CLI 2.api 3.Dashboard)实际上Dashboard也是通过api进行操作
  6. 虚拟网络分为提供者网络和私有网络,提供者网络就是跟主机在同一个网络里,私有网络自定义路由器等,跟主机不在一个网络

提供者网络架构

创建提供者网络

  • 控制节点操作,创建网络
source /root/admin-openstack.sh
neutron net-create --shared --provider:physical_network public --provider:network_type flat public-net

命令格式:neutron net-create --shared(所有项目共享网络)  --provider:physical_network(物理网络) public(物理网络的名称) --provider:network_type(创建的网络类型为flat,单一扁平网络)flat public-net(自定义一个名称)

补充知识点:上图中tenant_id 等于 project_id,查看项目列表如下图

  • 检查是否创建成功
neutron net-list

  • 创建子网
neutron subnet-create --name public-subnet \
--allocation-pool start=192.168.137.100,end=192.168.137.200 \
--dns-nameserver 223.5.5.5 --gateway 192.168.137.2 \
public-net 192.168.137.0/24

参数说明

  • neutron subnet-create 子网创建
  • --name (名称)
  • --allocation—pool 分配地址池
  • start=开始IP地址
  • end=结束IP地址
  • dns-nameserver DNS地址,233.5.5.5是阿里公共DNS地址
  • --gateway 网关
  • public-net 提供者的网络名称(要跟上面创建网络的名称对应起来)

检查是否关联成功

neutron net-list

neutron subnet-list

创建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

参数说明:

  • openstack flavor create 创建主机
  • --id 主机ID
  • --vcpus cpu数量
  • --ram 64(默认是MB,可以写成G)
  • --disk 磁盘(默认单位是G)

查看创建结果

openstack flavor list

提示:1-5是系统默认的,0是刚才创建的

创建密钥对

大部分云镜像支持公共密钥认证而不是传统的密码认证。在启动实例前,必须添加一个公共密钥到计算服务。

  • 生成秘钥
source /root/demo-openstack.sh
ssh-keygen -q -N ""

将密钥放在openstack上

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

验证公钥的添加

openstack keypair list

增加安全组规则

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

  • 允许 ICMP (ping)
openstack security group rule create --proto icmp default

  • 允许安全 shell (SSH) 的访问
openstack security group rule create --proto tcp --dst-port 22 default

在公有网络上创建实例

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

source /root/demo-openstack.sh
  • 列出云主机可用类型
openstack flavor list

  • 列出可用镜像
openstack image list

  • 列出可用的网络
openstack network list

备注:创建云主机网络的时候使用的不是名称,而是ID

  • 列出可用的安全组
openstack security group list

  • 创建实例
openstack server create --flavor m1.nano --image cirros \
--nic net-id=cc9d7710-d82e-4109-9412-56ae02a18d7d --security-group default \
--key-name mykey shhnwangjian-instance

参数说明:

  • openstack server create 创建实例
  • --flavor 主机类型名称
  • --image 镜像名称
  • --nic net-id=网络ID
  • --security-group 安全组名称
  • --key-name key名称
  • 最后一个是自定义实例名称

检查

openstack server list

验证能否ping通

ssh连接测试,因为通过秘钥认证,不需要输入密码

使用虚拟控制台访问实例

openstack console url show shhnwangjian-instance

可以复制上面URL地址,在浏览器访问

异常排查

如果无法创建虚拟机,我们需要查看控制节点和计算节点所有服务的日志,同时也要查看iptables、selinux、时间同步等

grep 'ERROR' /var/log/nova/*
grep 'ERROR' /var/log/neutron/*
grep 'ERROR' /var/log/glance/*
grep 'ERROR' /var/log/keystone/*

检查

source admin-openstack.sh
nova service-list
neutron agent-list
nova image-list

创建 OpenStack云主机(十一)的更多相关文章

  1. 创建 OpenStack云主机 (十五)

    创建过程 创建虚拟网络 创建m1.nano规格的主机(相等于定义虚拟机的硬件配置) 生成一个密钥对(openstack的原理是不使用密码连接,而是使用密钥对进行连接) 增加安全组规则(用iptable ...

  2. 创建 OpenStack云主机

    创建过程 创建虚拟网络 创建m1.nano规格的主机(相等于定义虚拟机的硬件配置) 生成一个密钥对(openstack的原理是不使用密码连接,而是使用密钥对进行连接) 增加安全组规则(用iptable ...

  3. OpenStack 云主机深入了解(十四)

    云主机深入了解 1.云主机在计算节点以进程方式运行 2.监听vnc的端口,vnc默认端口从5900开始, 多台云主机,端口递增 3.云主机桥接网卡,与宿主机联通网络 提示:在openstack环境下, ...

  4. Openstack 云主机深入了解 (十六)

    一)云主机深入了解 1.云主机在计算节点以进程方式运行 2.监听vnc的端口,vnc默认端口从5900开始, 多台云主机,端口递增 3.云主机桥接网卡,与宿主机联通网络 提示:在openstack环境 ...

  5. openstack云主机硬盘复制查询

        假定客户在自己的电脑上创建文件后 #宿主机查看客户使用的是哪个磁盘 [root@compute1 ~]# lvs LV VG Attr LSize Pool Origin Data% Meta ...

  6. 数据包从物理网卡流经 Open vSwitch 进入 OpenStack 云主机的流程

    目录 文章目录 目录 前言 数据包从物理网卡进入虚拟机的流程 物理网卡处理 如何将网卡收到的数据写入到内核内存? 中断下半部分软中断处理 数据包在内核态 OvS Bridge(Datapath)中的处 ...

  7. 恒创科技 基于openStack云主机

    https://www.henghost.com/cloud-vps.shtml?s=gg&gclid=CKaXuOyr79UCFY-TvQodMJ8BCw

  8. openstack云主机冷迁移

    1:开启nova计算节点之间互信 冷迁移需要nova计算节点之间使用nova用户互相免密码访问 默认nova用户禁止登陆,开启所有计算节点的nova用户登录shell. usermod -s /bin ...

  9. Openstack新建云主机的流程

    前言 前天晚上没睡觉,所以昨天睡得很早,导致今天4点就起来了 时间是人最宝贵的财富,于是我打消了钻在被子里刷剧的念头,爬起来整理一下在Openstack中新建一个云主机的流程. Openstack可以 ...

随机推荐

  1. flaskr 报错及其修改

    作者:hhh5460 官网有一个flaskr的例子,按照其8个步骤(包括测试),一步一步照着做,有3个地方报错. 究其原因,可能是flaskr这个例子年代比较久远,而现在python以及flask都有 ...

  2. [UOJ#268]. 【清华集训2016】数据交互[动态dp+可删堆维护最长链]

    题意 给出 \(n\) 个点的树,每个时刻可能出现一条路径 \(A_i\) 或者之前出现的某条路径 \(A_i\) 消失,每条路径有一个权值,求出在每个时刻过后能够找到的权值最大的路径(指所有和该路径 ...

  3. python中列表的常用操作增删改查

    1. 列表的概念,列表是一种存储大量数据的存储模型. 2. 列表的特点,列表具有索引的概念,可以通过索引操作列表中的数据.列表中的数据可以进行添加.删除.修改.查询等操作. 3. 列表的基本语法 创建 ...

  4. webpack 支持的模块方法

    在webpack中支持的模块语法风格有:ES6,commonJS和AMD ES6风格(推荐) 在webpack2中,webpack支持ES6模块语法.这意味着在没有babel等工具处理的情况下你就可以 ...

  5. LintCode——数字统计

    数字统计:计算数字k在0到n中的出现的次数,k可能是0~9的一个值 样例:例如n=12,k=1,在 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],我们发现1出现 ...

  6. 每天学一点---document.createDocumentFragment

    document.createDocumentFragment  用于创建文档对象,创建好的对象存在于内存中(不会引起回流,对元素位置和几何上的运算),不是附着在DOM树上,所以有更好的性能 可将该文 ...

  7. Actual Time Cost

  8. OpenState: Programming Platform-independent Stateful OpenFlow Applications Inside the Switch

    文章名称:OpenState: Programming Platform-independent Stateful OpenFlow Applications Inside the Switch Op ...

  9. ctr中的GBDT+LR的优点

    1 为什么gbdt+lr优于gbdt? 其实gbdt+lr类似于做了一个stacking.gbdt+lr模型中,把gbdt的叶子节点作为lr的输入,而gbdt的叶子节点相当于它的输出y',用这个y'作 ...

  10. Final发布点评

    1.  约跑App——nice!:为改进演示效果,本组使用摄像头实时采集投影的方式展示其作品,是一种演示的创新.本组重点放在了修改上次来着其他组发现的bug,不过新功能上好像没有加入多少,可能是保证软 ...