openstack虚拟化云计算平台详细安装流程报告单机文档格式.docx
《openstack虚拟化云计算平台详细安装流程报告单机文档格式.docx》由会员分享,可在线阅读,更多相关《openstack虚拟化云计算平台详细安装流程报告单机文档格式.docx(18页珍藏版)》请在冰豆网上搜索。
Cellometer
监控
cinder,neutron,nova,glance
OrchestrationService
Heat
与AWScloud兼容
组件对应关系
3.基础配置
1.硬件配置情况介绍:
机器
CPU
内存
硬盘
网卡
其他
虚拟机1
单核E5500
2G
20G
单网卡
2.节点情况介绍:
机器节点
主机名
IP地址
操作系统
用户名密码情况
节点
centos
basicServer
root/rootpass
Openstack/openstack
3.网络情况介绍:
通过一台单独的交换机进行网络访问,因此网络中有大量可用的段地址,可以分配给不同的虚拟机。
实验环境的网络速度有限速,所以很多措施是节省网络代码,如果网络条件好,很多步骤可以省略或者替换。
4.相关密码统计
所属机器
用户名密码
用户名密码说明
Centos的用户密码
Root用户的密码
openstack/openstack
Openstack的用户名密码
mySQL数据库服务器
Root/mysqlroot
Openstack服务密码
Nova/nova
Keystone/keystone
Glance/glance
Cinder/cinder
Openstack数据库密码
4.基本的操作系统配置
在进行下面的所有操作时,必须要有root权限,如果root权限不好获取,可以通过sudo命令来获取。
基础网络设置
1.将节点的IP设置成静态的IP地址。
修改文件:
vi/etc/sysconfig/network-scripts/ifcfg-eth0
需要注意的内容如下:
DEVICE=eth0网卡的名称
HWADDR=00:
1E:
67:
24:
E7:
31Mac地址的名称
TYPE=Ethernet网络类型
UUID=c6ee6fd1-467b-4f36-bcdc-307bc678191b
ONBOOT=yes这是随系统启动而启动的选项
NM_CONTROLLED=no这是由系统的networkmanager来管理IP地址,设置为No
BOOTPROTO=static设置网卡获取IP地址方式有static,DHCP,bootp.分别对应静态指定的ip地址,通过dhcp协议获得的ip地址,通过bootp协议获得的ip地址
IPADDR=10如果设置网卡获得ip地址的方式为静态指定,此字段就指定了网卡对应的ip地址
子网掩码
GATEWAY=网关地址
ARPCHECK=no
设置完成之后,重启网络:
servicenetworkrestart
1.有些教程中说ifcfg-eth0中的配置网关的GATEWAY关键字是NETWORK,是不对的,实现发现如果设置错误,上不了外网。
=no的作用是解决错误:
网络重启报错:
Bringingupinterfaceeth0:
Determiningifip20isalreadyinusefordeviceeth0...
2.设置节点的网关
修改对应网卡的网关的配置文件
vi/etc/sysconfig/network
修改以下内容
NETWORKING=yes(表示系统是否使用网络,一般设置为yes。
如果设为no,则不能使用网络,而且很多系统服务程序将无法启动)
HOSTNAME=centos(设置本机的主机名,这里设置的主机名要和/etc/hosts中设置的主机名对应)
GATEWAY=(设置本机连接的网关的IP地址。
)
3.设置节点的DNS
修改对应网卡的DNS的配置文件
vi/etc/
修改一下内容:
nameserver
4.设置节点的主机名IP对应关系
1、修改文件:
设置:
HOSTNAME=centos
2、修改文件:
vietc/hosts
在以前的内容上增加:
centos
0centos
设置节点的主机名和IP对应关系时要注意,每个节点都要配置此项,而且每个节点都要配置整个网络中其他节点的IP和主机名的对应关系。
这样做的目的是为了在整个网络中,可以通过主机名来访问其他的机器。
5.关闭节点的防火墙以及其他安全策略。
1.重启网络
运行以下命令
serviceNetworkManagerstop
servicenetworkstart
chkconfigNetworkManageroff
chkconfignetworkon
2.关闭防火墙
serviceiptablesstop
chkconfigiptablesoff
serviceip6tablesstop
chkconfigip6tablesoff
3.关闭SELinux
setenforce0
vietc/sysconfig/selinux
修改SELINUX=permissive
1.获取当前SELinux运行状态
#getenforce
可能返回结果有三种:
Enforcing、Permissive和Disabled。
Disabled代表SELinux被禁用,Permissive代表仅记录安全警告但不阻止可疑行为,Enforcing代表记录警告且阻止可疑行为。
目前常见发行版中,RHEL和Fedora默认设置为Enforcing,其余的如openSUSE等为Permissive。
2.改变SELinux运行状态
setenforce[Enforcing|Permissive|1|0]
该命令可以立刻改变SELinux运行状态,在Enforcing和Permissive之间切换,结果保持至关机。
一个典型的用途是看看到底是不是SELinux导致某个服务或者程序无法运行。
若是在setenforce0之后服务或者程序依然无法运行,那么就可以肯定不是SELinux导致的。
若是想要永久变更系统SELinux运行环境,可以通过更改配置文件/etc/sysconfig/selinux实现。
注意当从Disabled切换到Permissive或者Enforcing模式后需要重启计算机并为整个文件系统重新创建安全标签(touch/.autorelabel&
&
reboot)。
时间同步服务器设置
因为是单节点所以可以省略掉
数据库设置
1.节点安装步骤:
●运行以下命令,安装mysql服务器和客户端
yuminstall-ymysqlmysql-serverMySQL-python
●启动MySQL服务
servicemysqldstart
chkconfigmysqldon
●初始化MYSQL数据库
mysql_install_db
mysql_secure_installation
初始化MYSQL数据库的目的是为了删除mysql自带的测试数据库以及为mysql的root用户增加密码:
实验环境的密码为:
mysqlroot
基础包下载设置
在各个节点中,按照以下步骤安装:
yuminstall-y
yuminstallopenstack-utils-y
yuminstallopenstack-selinux-y
yumupgrade-y
reboot
由于网络原因,可能会提示下载失败等问题,这是由于需要远程国外的网站下载资源,如果一旦碰到下载失败的情况,重复执行命令即可,linux会自动连续下载。
Error:
Cannotretrievemetalinkforrepository:
epel.Pleaseverifyitspathandtryagain
修改/etc/文件,做如下改动
#baseurl
变为
baseurl
保存文件,再次执行即可
消息服务器设置
在节点进行消息服务器的安装工作:
1.安装消息服务器
yuminstallqpid-cpp-servermemcached-y
2.修改/etc/文件,将auth的选项设置no,来禁用qpidd的认证。
auth=no
3.启动消息服务器,并设置为自动启动。
serviceqpiddstart
chkconfigqpiddon
5.配置用户权限服务IdenitityService
用户权限服务的基本概念
用户权限服务主要包含两个功能:
●用户管理:
管理用户以及用户的权限。
●服务目录:
通过服务终端提供相应的服务目录。
主要涉及的名词有:
●用户(user):
用户指的是使用openstack云服务的使用者,用户具有登录和使用资源的权限,用户隶属于租户。
●证书(Credentials):
有且只有用户自己知道的一组数据,比如:
密码,认证令牌等等
●认证(Authentication):
确定一个用户身份的动作。
●令牌(token):
组用来访问资源的随机数字,令牌中包含了访问资源的范围和权限等等。
●租户(tenant):
租户可以被理解为一个项目,团队或组织。
你必须指定一个相应的租户(tenant)才可以申请OpenStack服务
●服务(Service):
openstack的组件表现形式,提供了一个或者多个终端,用户可以通过访问终端来资源。
●终端(Endpoint):
通过网络访问服务的一种方式,通常是URL地址等。
●角色(Role):
角色代表特定的租户中的用户操作权限
安装和配置用户权限服务
在节点中完成以下操作:
1.在节点中安装keystone服务包
yuminstallopenstack-keystonepython-keystoneclient-y
2.用户权限服务通过数据库来存储基本信息。
因此需要在数据库中修改数据库的位置,本实验中使用了mysql数据,通过以下命令来修改数据库配置信息。
openstack-config--set/etc/keystone/sqlkeystone@centos/keystone
3.通过openstack-db命令来初始化数据库表,同时创建相应的数据库和用户。
openstack-db--init--servicekeystone--passwordkeystone
4.使用openssl来生成认证令牌,用来使用用户权限服务和openstack的其他服务之间共享数据。
ADMIN_TOKEN=$(opensslrand-hex10)
echo$ADMIN_TOKEN
openstack-config--set/etc/keystone/DEFAULTadmin_token$ADMIN_TOKEN
这个步骤里生成ADMIN_TOKEN,后面需要频繁的使用到,所以此时要记录下来。
5.KeyStone使用了PKI令牌,执行下面的名来安装关键字和证书。
keystone-managepki_setup--keystone-userkeystone--keystone-groupkeystone
chown-Rkeystone:
keystone/etc/keystone/*/var/log/keystone/
6.启动keystone的服务并设置为开机自启动。
serviceopenstack-keystonestart&
chkconfigopenstack-keystoneon
定义用户,租户,角色等
安装完用户权限服务之后,可以增加相应的角色,租户,用户等。
1.设置环境变量
exportOS_SERVICE_TOKEN=使用上面生成的ADMIN_TOKEN
exportcentos:
35357/
2.创建租户
keystonetenant-create--name=admin--description="
AdminTenant"
keystonetenant-create--name=service--description="
ServiceTenant"
3.创建用户
keystoneuser-create--name=admin--pass=admin
4.创建角色
keystonerole-create--name=admin
5.将用户添加到对应的角色中去。
keystoneuser-role-add--user=admin--tenant=admin--role=admin
重要提醒
如果keystone服务报错:
Therequestyouhavemaderequiresauthentication.(HTTP401)
检查:
1.检查环境变量是否设置
1.检查AMDIN_PASS是不是没有替换,如果没有替换
a.通过keystoneuser-password-update
b.通过openstack-db--drop--servicekeystone删除数据库重建
定义服务和端点
在openstack中注册服务和终端,注册之前确保前面定义的OS_SERVICE_TOKEN可用。
1.注册服务
keystoneservice-create--name=keystone--type=identity--description="
KeystoneIdentityService"
执行完命令之后,记录下服务产生的ID。
2.注册终端
keystoneendpoint-create\
--service-id=上面流程中注册服务产生的服务的ID\
--publicurlcentos:
5000/\
--internalurlcentos:
--adminurlcentos:
6.配置镜像服务
镜像服务就是openstack用来存储服务器镜像的一个服务。
镜像的存储位置可以有几种配置方式,可以通过配置文件/etc/glance/配置文件来进行修改。
在节点执行以下命令:
1.安装镜像服务。
yuminstall-yopenstack-glance
2.在配置文件中修改镜像服务所在的数据库信息。
openstack-config--set/etc/glance/DEFAULTsql_connectioncentos/glance
3.通过openstack-db来初始化数据库,用户,表。
openstack-db--init--serviceglance--passwordglance
4.创建glance用户,并添加到对用的角色上。
keystone
keystoneuser-role-add--user=glance--tenant=service--role=admin
运行命令keystoneuser-role-add--user=glance--tenant=service--role=admin后,通过keystoneuser-role-list查看不到glance的相关配置,不是配置错误,可以通过命令:
keystone--os-tenant-nameservice--os-usernameglance--os-passwordglanceuser-role-list来查看
5.在配置文件中做一些修改,来保证镜像服务和用户权限服务结合。
openstack-config--set/etc/glance/keystone_authtokenauth_uricentos:
5000
openstack-config--set/etc/glance/keystone_authtokenauth_hostcentos
openstack-config--set/etc/glance/keystone_authtokenadmin_tenant_nameservice
openstack-config--set/etc/glance/keystone_authtokenadmin_userglance
openstack-config--set/etc/glance/keystone_authtokenadmin_passwordglance
openstack-config--set/etc/glance/paste_deployflavorkeystone
6.在配置文件中增加认证相关配置。
首先复制配置文件到正确的位置
cp/usr/share/glance//etc/glance/
编辑这两个配置文件,将以下配置添加到选项:
[filter:
authtoken]中
vi/etc/glance/
authtoken]
auth_host=centos
admin_user=glance
admin_tenant_name=service
admin_password=glance
7.注册服务
keystoneservice-create--name=glance--type=image--description="
GlanceImageService"
8.注册服务终端
--service-id=上面注册服务时产生的服务ID\
--publicurl=\
--internalurl=\
--adminurl=
9.启动镜像服务病设置为自动启动
serviceopenstack-glance-apistart&
chkconfigopenstack-glance-apion
serviceopenstack-glance-registrystart&
chkconfigopenstack-glance-registryon
7.配置计算服务
计算服务是云算机器,它是IaaS系统的主要部分,用它来承载和管理云计算系统。
安装计算服务
1.安装计算包
yuminstall-yopenstack-novapython-novaclient
2.在配置文件中修改数据库存储信息
openstack-config--set/etc/nova/nova
3.在配置文件中配置消息服务器
openstack-config--set/etc/nova/DEFAULTrpc_backend
openstack-config--set/etc/nova/DEFAULTqpid_hostnamecentos
使用openstack-db命令来初始化数据库,用户,表
openstack-db--init--servicenova--passwordnova
4.在配置文件中配置vnc相关的配置
openstack-config--set/etc/nova/DEFAULTmy_ip
openstack-config--set/etc/nova/DEFAULTvnc_enabledTrue
openstack-config--set/etc/nova/DEFAULTvncserver_listen
openstack-config