九度企业网站推广软件app开发软件
1、云中的概念
在云平台注册了一个账号,这个账号对于云平台来说,就是一个租户或者一个项目。
租户/项目(tenant/project),租户就是项目的意思。主机聚合就是主机组的意思。
region(区域),就是数据中心的地理位置,比如北京数据中心和武汉数据中心,用户就近选择区域可降低业务网络延迟。
az(availability zone)可用区,可理解为一个数据中心里面不同的机房,一个region有多个az,az之间内网互通(前提是同一个VPC网络),每个az有独立供电系统和网络系统。
vpc:virtual private cloud 虚拟私有云,网络。同一个VPC不同子网(跨网段)互通。
同一个region不同VPC默认不互通,通过对等连接来互通,但不同VPC之间不能存在相同子网(存在相同子网,不能创建对等连接,会ip地址冲突,可通过内大网解决有点复制不推荐),在创建不同vpc时,注意各个vpc之间不存在相同子网。
跨region不同VPC通过专线或VNP来互通,一般通过VNP来互通、云专线太贵了。
2、OpenStack图形化发放一台云主机
https://blog.51cto.com/cloudcs/6273673
1、创建项目(租户)和用户,使用 admin 管理员登录进行操作。
2、创建实例规格,使用 admin 管理员登录进行操作
3、创建镜像,使用 admin 管理员登录进行操作,管理员创建的镜像默认是共享的设置成公有的,普通用户创建的镜像默认是私有的。
发放云主机所使用的cirros精简版linux镜像获取,http://download.cirros-cloud.net/
4、创建网络(私网),使用普通用户登录进行操作
创建子网的网段不能和控制节点计算节点一样
5、配置安全组,使用普通用户登录进行操作
安全组要和虚拟机绑定,默认出口方向全部放行,添加入口规则。
选择规则就行,下面信息不用输入不用输入端口。
5、创建密钥对,使用普通用户登录进行操作
6、发放云主机,使用普通用户登录进行操作
现在ping不通外网
7、创建网络(公网),使用admin管理员登录进行操作
公网ip,在openstack环境里面,它不是一个真正的公网,公网是需要花钱从运营商购买的。这里说的公网ip指的是我们自己的实验环境模拟出来的一个公网ip,因为当前控制节点和计算节点它们使用的是100子网,又可以通过NAT和外部网络互通,因此可以将100这个子网定义为虚拟的一个公网ip。
创建的云主机默认连不上外网的,想连上外网要创建路由添加接口,分配一个出口公网ip地址
8、创建路由,使用普通用户登录进行操作
现在能ping通外网,里面访问外面百度,是通过路由接口分配了一个出口公网ip地址
9、外面访问里面,通过弹性公网ip,普通用户登入创建浮动公网ip,把浮动公网ip绑定到实例虚拟机上
10、通过密钥文件(私钥)SSH远程登入
11、增加磁盘,普通用户登入创建卷,再将创建的卷挂载到实例,虚拟机就多了一块硬盘
解挂
实验测试环境创建的卷占用的是控制节点的本地磁盘,支持lvm扩容,扩vg卷组
12、删除刚发放的云主机
3、OpenStack命令行发放一台云主机
https://blog.51cto.com/cloudcs/6273775
加载 admin 管理员环境变量进行操作。通过 packstack 工具搭建好的环境,默认会在应答文件所在目录生成 admin 用户的环境变量文件 keystonerc_admin ,直接通过 source 加载即可。
用source加载用户环境,source keystonerc_admin 进入管理员环境,exit退出环境变量。
生成普通用户的环境变量文件,复制admin环境变量文件来修改(改用户名、项目名等内容)
命令行发放云主机流程(命令行删除云主机流程倒着来)
1.管理员创建一个租户tenant/项目project
2.管理员创建一个用户关联租户关联角色 user/role
3.生成普通用户的环境变量文件,复制admin环境变量文件来修改
4.管理员创建实例规格 flavor
5.普通用户创建镜像 image
6.普通用户创建私网 network 再创建子网 subnet
7.普通用户创建安全组(设置规则) security group
8.普通用户创建密钥 keypair
9.普通用户发放云主机 server
10.管理员创建公网 network 再创建子网 subnet
11.普通用户创建路由(设置网关连接公网及创建接口连接私网)云主机可以ping外网 router
12.普通用户申请弹性公网IP,绑定给云主机,外面访问里面 floating ip
13.普通用户创建云硬盘(卷),绑定给云主机(挂载)volume
查看硬盘,openstack volume list
命令行发放的云主机,查不到硬盘记录,web界面查不到卷记录、实例显示未连接卷,但能正常使用,应该是个bug
图形化发放的云主机,有硬盘记录
具体步骤
1、管理员创建一个项目 project
求帮助,openstack --help |grep project
具体命令再求帮助,packstack help project create
创建项目,openstack project create hcie
查看项目,openstack project list
2、管理员创建一个用户关联项目关联角色 user role
求帮助,openstack --help |grep user
具体命令再求帮助,packstack help user create
openstack user create --project hcie --password redhat hcie
查看用户,openstack user list
给用户再关联角色,求帮助,openstack --help |grep role
查看当前已有角色,openstack role list
给用户绑定角色,具体命令再求帮助,packstack help role add
openstack role add --project hcie --user hcie member
开源openstack不支持自定义角色赋权限,只能二次开发自定义角色权限
3、生成普通用户的环境变量文件,复制admin环境变量文件来修改(改用户名、项目名等内容)
4、管理员创建实例规格 flavor
求帮助,openstack --help |grep flavor
具体命令再求帮助,packstack help flavor create
创建实例规格,packstack flavor create --ram 1024 --disk 3 --vcpus 1 m3.hehe
查看实例规格, openstack flavor list
5、普通用户创建镜像,先把镜像文件上传到/tmp目录 image
求帮助,openstack --help |grep image
具体命令再求帮助,packstack help image create
创建镜像,packstack image create --disk-format qcow2 --min-disk 3 --min-ram 1024 --file /tmp/cirros-0.6.2-x86_64-disk.img rhel
查看镜像,openstack image list
6、普通用户创建私网 network 再创建子网 subnet
命令行创建私网和子网分开创建了,图形化创建私网和子网是在一个页面创建的
求帮助,openstack --help |grep network
具体命令再求帮助,packstack help network create
创建私网,packstack network create private
查看私网,openstack network list
但目前私网下面没有子网,要进一步再创建子网 subnet
创建子网,求帮助,openstack --help |grep subnet
具体命令再求帮助,packstack help subnet create
创建子网,packstack subnet create --allocation-pool start=192.168.88.100,end=192.168.88.200 --gateway 192.168.88.254 --subnet-range 192.168.88.0/24 --network private pri_sub
查看子网,openstack subnet list
查看私网,openstack network list
7、普通用户创建安全组(设置规则)security group rule
求帮助,openstack --help |grep sec
具体命令再求帮助,packstack help security group create
packstack security group create sec110
查看安全组,openstack security group list
sec110还没设置入口规则,创建规则再求帮助,packstack help security group rule create
packstack security group rule create --protocol tcp --dst-port 22:22 --ingress sec110
packstack security group rule create --protocol tcp --dst-port 80:80 --ingress sec110
packstack security group rule create --protocol icmp --ingress sec110 icmp协议无端口号,icmp协议是ping命令的协议
查看规则,packstack security group rule list
8、普通用户创建密钥 keypair
求帮助,openstack --help |grep key
具体命令再求帮助,packstack help keypair create
packstack keypair create key110 > key110.pem 生成密钥重定向到私钥文件保存
9、普通用户发放云主机 server
求帮助,openstack --help |grep server
具体命令再求帮助,packstack help server create
packstack server create --image rhel --flavor m3.hehe --security-group sec110 --key-name key110 --network private linux01
查看发放的云主机,packstack server list
现在实例是ping不通外网的,要让实例通外网
10、管理员创建公网 network 再创建子网 subnet
求帮助,openstack --help |grep network
查看,packstack network list
创建公网,packstack network create --share --external --project hcie --provider-network-type flat --provider-physical-network extnet public
再创建子网,求帮助,openstack --help |grep subnet
packstack subnet create --dhcp --allocation-pool start=192.168.100.220,end=192.168.100.230 --gateway 192.168.100.2 --subnet-range 192.168.100.0/24 --network public public_sub
查看子网,openstack subnet list
11、普通用户创建路由(设置网关连接公网及创建接口连接私网)云主机可以ping外网 router
求帮助,openstack --help |grep router
具体命令再求帮助,packstack help router create
创建路由,packstack router create r1
设置网关连接公网及创建接口连接私网
求帮助,openstack --help |grep router
具体命令再求帮助,packstack help router set
创建路由网关,packstack router set --external-gateway public r1
具体命令再求帮助,packstack help router add
创建路由子接口,packstack router add subnet r1 pri_sub
12、普通用户申请弹性公网IP,绑定给云主机,外面访问里面 floating ip server
求帮助,openstack --help |grep floating ip
具体命令再求帮助,packstack help floating ip create
packstack floating ip create public 从public公网分配浮动IP
查看浮动IP,packstack floating ip list
求帮助,openstack --help |grep server
具体命令再求帮助,packstack help server add floating ip
查看给哪个实例分配浮动IP,packstack server lsit
packstack server add floating ip linux01 192.168.100.223 给哪个实例加哪个浮动IP
13、普通用户创建云硬盘(卷),绑定给云主机(挂载)volume
求帮助,openstack --help |grep volume
查看硬盘,openstack volume list
命令行发放的云主机,查不到硬盘记录,web界面查不到卷记录、实例显示未连接卷,但能正常使用,应该是个bug
图形化发放的云主机,有硬盘记录