深信服技术认证之Openstack云平台使用入门
Openstack云平台使用入门
“The OpenStack project is an open source cloud computing platform that supports all types of cloud environments. The project aims for simple implementation, massive scalability, and a rich set of features. Cloud computing experts from around the world contribute to the project. ”
OpenStack是一个开源的云计算管理平台项目,是一系列软件开源项目的组合。由NASA(美国国家航空航天局)和Rackspace合作研发并发起,以Apache许可证(Apache软件基金会发布的一个自由软件许可证)授权的开源代码项目。OpenStack为私有云和公有云提供可扩展的弹性的云计算服务。项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。
下面我们来看一下,在部署好的一个单机测试环境上如何启动一个实例?
1、创建镜像
(1) 生效管理员环境变量并创建镜像
这里我们使用官方的镜像CentOS-7-x86_64-GenericCloud.qcow2
[root@localhost ~]# ls
admin-openrc demo-openrc
CentOS-7-x86_64-GenericCloud.qcow2 cirros-0.3.4-x86_64-disk.img
[root@localhost ~]# source admin-openrc
#创建镜像命令语法
openstack image create “⾃定义镜像名” --file 镜像⽂件名称 --disk-format 格式化类型 --container-format bare --public
usage:
[root@localhost ~]# openstack image create --file ~/CentOS-7-x86_64-GenericCloud.qcow2 --disk-format qcow2 --container-format bare --public Centos7
[root@localhost ~]# openstack image list
(2)为后面修改root的默认密码做准备
1)给镜像添加一个元数据信息
glance image-update 镜像ID --property hw_qemu_guest_agent=yes
glance image-update 8b8b10b0-7684-44c7-ba7b-d729374eaaad --property hw_qemu_guest_agent=yes #注意修改为自己的实际镜像ID
2)修改controller节点的nova.conf配置文件
vi /etc/nova/nova.conf
在[libvirt]项找到并修改inject_password参数为true,我们直接添加即可
inject_password=true
同样,在计算节点也需要修改,因为我们是分步骤安装的all in one模式,同时修改了。
3)重启nova-api服务
systemctl restart openstack-nova-api.service
2、创建云主机类型
(1)名称:s_flavor、vcpu:1个、ram:1024M、磁盘:10G
usage:
[root@localhost ~]# openstack flavor create --ram 1024 --vcpus 1 --disk 10 --public s_flavor
[root@localhost ~]# openstack flavor list
3、创建项目
(1)项目名称:sangf
项⽬列表查询
# 命令语句 openstack project list
ID:项⽬的唯⼀ID; Name:项⽬名称。
项⽬详情查询
# 命令语句 openstack project show 项⽬名
样例 openstack project show service
查询某⼀项⽬下的所有⽤户
# 命令语句 openstack user list --project=项⽬名
样例 openstack user list --project=service
创建项⽬
#命令语法 openstack project create --domain 域名 --description”对创建项⽬的描述” 项⽬名
样例 openstack project create --domain default --description "Service Project" service
usage:
[root@localhost ~]# openstack project create --domain default --description "My Project" --enable sangf
[root@localhost ~]# openstack project list
4、创建租户并设置租户配额
(1)管理用户:sangfor 用户密码:123456
[root@localhost ~]# openstack user create --project sangf --domain default --password 123456 --enable sangfor
[root@localhost ~]# openstack user list | grep sangfor
[root@localhost ~]# openstack role add --project sangf --user sangfor admin
(2)项目配额:虚拟内核3个、内存4G、实例5个,其他配置默认。
[root@localhost ~]# openstack quota set --ram 1024 --instances 5 --cores 3 sangf
[root@localhost ~]# openstack quota show sangf | grep -E "ram|instances|cores"
(3)编写租户sangfor环境变量
[root@localhost ~]# cp -r admin-openrc sangfor-openrc
[root@localhost ~]# vi sangfor-openrc
unset OS_SERVICE_TOKEN
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_DOMAIN_NAME=Default
export OS_USERNAME=sangfor
export OS_PASSWORD=123456
export OS_AUTH_URL=http://controller:35357/v3
export OS_PROJECT_NAME=sangf
export OS_IDENTITY_API_VERSION=3
#export OS_REGION_NAME=RegionOne
5、创建共享网络和私有网络
查看⽹络服务状态
#命令语句
systemctl status neutron-server.service neutron-linuxbridge-agent.service neutron-dhcp-agent.service neutron-metadata-agent.service
#服务解析:
1)neutron-server.service ⽤于接受apI请求创建⽹络,⼦⽹,路由器等。
2)neutron-linuxbridge-agent.service报告状态;处理RPC API;实现neutron中定义的⽹络拓扑。
3)neutron-dhcp-agent.service ⽤于创建和管理虚拟DHCP Server。
4)neutron-metadata-agent.service neutron-metadata-agent运⾏在⽹络节点上,作为中间⼈使instance可以访问请求nova-api-metadata。
(1)共享网络名:public-net,由admin用户创建,并设置共享
#查看物理网络类型"provider-network-type"
[root@localhost ~]# grep type_drivers /etc/neutron/plugin.ini
type_drivers = flat,vlan,gre,vxlan,geneve
#显示网络类型为flat
#查看物理网络名称"provider-physical-network"
[root@localhost ~]# grep ^flat /etc/neutron/plugin.ini
flat_networks = provider
[root@localhost ~]# grep ^flat /etc/neutron/plugins/ml2/ml2_conf.ini
flat_networks = provider
usage:
#命令语法
openstack network create --provider-physical-network 物理网络名称 --provider-network-type flat --share --external
#-share 允许所有项目都可以使用该网络 #-external 定义连通外部的虚拟网络 #物理网络名称,由ml2_conf.ini文件的flat_networks确定
#物理网络类型,映射到虚拟主机的网卡eth0,由linuxbridge_agent.ini文件中的physical_interface_mappings确定
[root@localhost ~]# openstack network create --project sangf --os-username admin --external --enable --share --provider-network-type flat --provider-physical-network provider public-net
[root@localhost ~]# openstack network list
(2)创建共享网络子网:subnet-pub,网段为本地eth0
[root@localhost ~]# hostname -I
192.168.17.222 192.168.122.1
[root@localhost ~]# openstack subnet create --subnet-range 10.0.10.0/24 --gateway 10.0.10.2 --network public-net --dns-nameserver 114.114.114.114 --allocation-pool start=10.0.10.151,end=10.0.10.200 --dhcp subnet-pub
[root@localhost ~]# openstack subnet list
(3)私有网络名:private-net,由sangfor用户创建
在openstack中,网络管理是比较复杂且难度较大的一个知识点,本实验租户网络使用linuxbridge,计算节点基于 Self-service networks,在 linuxbridge 环境中,一个数据包从 Instance 云主机实例发送到物理网卡会经过下面几个类型的设备:
· tap Interface : tapNxxx(N 为 0、1、2.....)
· Linux Bridge : brqxxx
· vlan Interface : ethX.Y(或ensX.Y;X 为 Interface 的序号,Y 为 vlan id。)
· vxlan Interface : vxlan-Z(Z 是 VNI)
· 物理 Interface: ethx(或ensx;x 为 Interface 的序号)
[root@localhost ~]# source sangfor-openrc
[root@localhost ~]# openstack network create --project sangf --os-username sangfor --enable private-net
[root@localhost ~]# openstack network list
(4)创建私有网络子网:subnet-private,网段为192.168.10网段
[root@localhost ~]# openstack subnet create --subnet-range 192.168.10.0/24 --gateway 192.168.10.254 --network private-net --dns-nameserver 8.8.8.8 --allocation-pool start=192.168.10.151,end=192.168.10.200 --dhcp subnet-private
[root@localhost ~]# openstack subnet list
6、创建路由,并关联内外网
(1)名称:s_router
[root@localhost ~]# source admin-openrc
[root@localhost ~]# openstack router create --enable s_router
[root@localhost ~]# openstack router list
(2)设置外部网关
选择外部网络public-net设置网关:
usage:
[root@localhost ~]# openstack router set --external-gateway public-net s_router
[root@localhost ~]# openstack router show s_router | grep external_gateway
(3)设置内部接口
usage:
[root@localhost ~]# openstack router add subnet s_router subnet-private
[root@localhost ~]# openstack router show s_router | grep interfaces_info
网络拓扑:
7、创建安全组
(1)名称:s_sec
[root@localhost ~]# openstack security group create s_sec
[root@localhost ~]# openstack security group list
(2)开放22号端口
[root@localhost ~]# openstack security group rule create --protocol tcp --dst-port 22 --ethertype IPv4 --ingress s_sec
[root@localhost ~]# openstack security group rule list s_sec
8、生成密钥对
(1)名称:s_key
[root@localhost ~]# openstack keypair create s_key > ~/s-key.pem
(2)密钥需保存在本地:cd /root/
[root@localhost ~]# ll
(3)设置密钥文件为仅可读
[root@localhost ~]# chmod 400 s-key.pem
[root@localhost ~]# ll
9、创建云主机实例,并分配浮动IP
(1)使用镜像:Centos7、使用云主机类型:s_flavor、使用网络:private-net、使用安全组:s_sec、使用密钥对:s_key,名称:s_cloud
[root@localhost ~]# source admin-openrc
[root@localhost ~]# openstack server create --image Centos7 --key-name s_key --security-group s_sec --flavor s_flavor --network private-net s_cloud
其他练习示例:
openstack server create --image cirros --flavor m1.nano --network private-net s_cloud02
openstack server create --image cirros --key-name s_key --security-group s_sec --flavor m1.nano --network private-net s_cloud03
[root@localhost ~]# openstack server list
重置镜像默认密码为自定义:
稍等片刻......待实例云主机创建完成能访问之后:
openstack server set --root-password 实例ID
[root@localhost ~]# openstack server set --root-password be70cf30-3b91-4d17-8917-9e94d5928899 #改为自己实际的实例id
根据提示设置输入自定义密码,即root登录密码。
(2)生成浮动IP
[root@localhost ~]# openstack floating ip create public-net
[root@localhost ~]# openstack floating ip list
(3)给云主机绑定浮动IP
[root@localhost ~]# openstack server add floating ip s_cloud 10.0.10.153 #改为自己实际的浮动IP地址
[root@localhost ~]# openstack server list
10、远程连接云主机,并查看网络信息
[root@localhost ~]# ssh -i s-key.pem root@10.0.10.153
[root@localhost ~]# ifconfig
文章作者傅先全:深信服云计算认证专家,产业教育中心资深讲师,曾任职于中国电信集团、华晟经世教育集团,分别担任云平台资深架构师、IT课程总监及名师团金牌讲师、多所高校特聘专家讲师;十余年云计算、大数据行业从业经验,在企业信息化建设、企业项目管理、云平台架构设计等方面有较强的实战经验;研究方向为云计算、大数据技术等,具有丰富的知识转换以及课程交付经验;同时,在院校学科建设、人才培养、项目科研、职业技能人才认证等方面具有丰富的产教融合体系建设与组织经验。
深信服技术认证之Openstack云平台使用入门相关推荐
- 深信服技术认证之容灾与备份(一)
1.1 业务数据可用性问题 随着信息技术的发展,互联网上的数据量激增,随之而来的数据和业务的可用性越来越重要.但是实际上业务系统中的业务数据可用性问题就像打地鼠游戏一样,永远猜不到下一个问题会在哪里冒 ...
- 深信服技术认证之IPV6地址表示及常见分类
根据最新数据显示我国IPV6活跃用户数已达4.35亿,约占中国网民的46.27%,IPV6地址资源位居全球第二,未来IPV6市场规模将超10亿.在巨大的资源背景推动下,了解IPV6已经成为当代IT从业 ...
- 深信服技术认证之F5隐写工具初探
什么是"隐写" "隐写",即人们通常所说的信息隐藏,是利用人类感觉器官的不敏感性(感觉冗余),以及多媒体数字信号本身存在的冗余(数据冗余特性),将秘密信息隐藏于 ...
- Openstack云平台的搭建与部署(具体实验过程截图评论拿)
目录 Openstack云平台的搭建与部署................................... 3 Keywords:Openstack.Cloud Computing.Iaas.. ...
- 云计算 openstack 云平台搭建详细教程(基于 Vmware 虚拟机搭建)
OpenStack 和 云计算 1.OpenStack 基本概述 早在1988年,类似云计算概念的"网络就是计算机"概念就被 SUN 微系统公司 的合作创建者约翰 · 盖奇首次提出 ...
- 手把手带你去搭建一套OpenStack云平台
1 前言 今天我们为一位朋友搭建一套OpenStack云平台. 我们使用Kolla部署stein版本的OpenStack云平台. kolla是用于自动化部署OpenStack的一个项目,它基于dock ...
- 构建基于openEuler2209的OpenStack云平台(十一)
上一篇:构建基于openEuler2209的OpenStack云平台(十) 11 安装和配置Heat服务(Orchestration service) Heat服务(Orchestration ser ...
- openStack 云平台管理节点管理网口流量非常大 出现丢包严重 终端总是时常中断问题调试及当前测试较有效方案...
openStack 云平台管理节点管理网口流量非常大 出现丢包严重 终端总是时常中断问题调试及当前测试较有效方案 tuning for Data Transfer hosts connected at ...
- openstack horizon dashboard_陕西高校邦OpenStack云平台实践章节答案
陕西高校邦OpenStack云平台实践章节答案 遗传算法的基本操作不包括( )遗传算法大的优点在于能够快速在解空间中找到目标函数的佳解.遗传算法的构成要素有哪些( )如果适应度函数有两个变量,则 ...
- 干货 | 手把手教你搭建一套OpenStack云平台
1 前言 今天我们为一位朋友搭建一套OpenStack云平台. 我们使用Kolla部署stein版本的OpenStack云平台. kolla是用于自动化部署OpenStack的一个项目,它基于dock ...
最新文章
- python 列出出当前目录及所有子目录下的文件
- 如何查看指定端口.(win)
- LSTM模型在问答系统中的应用 2017-06-27 21:03 在问答系统的应用中,用户输入一个问题,系统需要根据问题去寻找最合适的答案。 1:采用句子相似度的方式。根据问题的字面相似度选择相似度最
- 使用Windows PowerShell管理虚拟交换机
- mysql查询数据库desc_数据库查询DESC
- 将四个整数进行从小到大的顺序排列 java_07_Java基础语法_第7天(练习)_讲义(练习加强+在eclipse中实现)...
- HTML5 Canvas像素处理常用接口
- 实现ftoa与itoa
- 如何用SQLDMO在ASP.NET页面下实现数据库的备份与恢复
- 使用常识 | 如何在word中添加勾选框
- MacBook高效优先设置,你都开启了吗?
- B树和TreeSet与TreeMap
- SQL数据库附加数据及查询方法
- 1、操作系统的定义和作用?
- java图形验证码去除干扰,使用python 对验证码图片进行降噪处理
- Sa-token 之 SaManager
- 生信自学笔记(九)智慧的长者与多序列联配之clustal全局联配算法
- Case Study _均值方差模型 MatLab
- 建模simulink - xpc自定义模块
- Qt之QTextCodec乱谈
热门文章
- NLPIR 汉语分词系统 (PyNLPIR) 学习手札
- 全网最全清理c盘大全
- 计算机编辑文档教程,腾讯TIM在线文档编辑功能使用方法教程
- 21天学通c语言错误,为《21天学通C语言》(第7版)(Sams Teach Yourself C in 21 Days)正名...
- 浅谈前端是否需要精通JS三大框架,vue,angular,react。
- python拟合曲线求方程,曲线拟合方程python
- 小米随身wifi驱动linux驱动下载,小米随身WIFI驱动|小米WIFI驱动官方最新版(支持Win10)...
- 算法精解(一):C语言描述(链表)
- 2022年计算机体系结构与软件工程国际会议(CASE 2022 )
- Web前端开发技术第三版课后练习答案