安装教程

目录

1. 基础环境准备(所有节点)

  • 1.1 前置条件与主机规划

  • 1.2 配置yum源

  • 1.3 关闭selinux与firewalld

  • 1.4 配置iptables

  • 1.5 配置主机名解析

  • 1.6 安装openstack软件包

  • 1.7 安装NTP服务(未完成)

2. 安装基础软件(controller)

  • 2.1 安装mariadb

  • 2.2 安装rabbitmq

  • 2.3 安装memcached

  • 2.4 安装etcd

3. 安装openstack服务

  • 3.1 安装keystone(controller)

  • 3.2 安装glance(controller)

  • 3.3 安装nova

    • 3.3.1 控制节点(controller)

    • 3.3.2 计算节点(compute)

  • 3.4 安装neutron

    • 3.4.1 控制节点(controller)

    • 3.4.2 计算节点(compute)

  • 3.5 安装cinder

    • 3.5.1 控制节点(controller)

    • 3.5.2 cinder-volume节点(cinder-volume)

  • 3.6 安装horizon

4. 替换代码

  • 4.1 覆盖代码(所有节点)

  • 4.2 重启nova与neutron服务

    • 4.2.1 控制节点(controller)

    • 4.2.2 计算节点(compute)

  • 4.3 更新neutron数据库(controller)

  • 4.4 配置spice访问(compute)

  • 4.5 创建虚机验证(dashboard)

5. 对接ceph

  • 5.1 创建存储池及授权(ceph侧操作)

  • 5.2 安装ceph组件

  • 5.3 glance

  • 5.4 cinder

  • 5.5 nova(compute)

1. 基础环境准备(所有节点)

1.1 前置条件与主机规划

准备两台主机,一台用作controller,一台用作compute与cinder-volume

  • 192.168.90.97:controller

  • 192.168.90.98:nova-compute、cinder-volume

1.2 配置yum源

to be continued

1.3 关闭selinux与firewalld

在每台主机上执行以下命令

1.4 配置iptables

在每台主机上执行以下命令

1.5 配置主机名解析

在每台主机上执行以下命令

1.6 安装openstack软件包

在每台主机上执行以下命令

1.7 安装NTP服务

to be continued

2. 安装基础软件(controller)

2.1 安装mariadb

2.1.1 执行命令安装mariadb

2.1.2 创建并编辑/etc/my.cnf.d/openstack.cnf文件,文件内容见config -> mariadb -> openstack.cnf,记得替换里面的变量

2.1.3 启动mariadb

2.1.4 运行mysql_secure_installation 脚本初始化数据库服务,并为数据库root帐户设置密码(这里设为123456):

2.2 安装rabbitmq

2.2.1 安装

2.2.2 启动

2.2.3 添加openstack用户,记得把下面的123456替换为合适的密码

2.2.4 为openstack用户设置权限

2.3 安装memcached

2.3.1 安装

2.3.2 修改配置文件/etc/sysconfig/memcached,用config -> memcached -> memcached的内容覆盖,记得替换里面的变量

2.3.3 启动服务

2.4 安装etcd

to be continued

3. 安装openstack服务

3.1 安装keystone

3.1.1

to be continued

3.2 安装glance

(to be continued)

下载镜像并上传

然后检查镜像是否上传成功

3.3 安装nova

3.3.1 控制节点

(to be continued)

装完后执行以下命令查看nova的apischedulerconductor等相关服务是否起来

3.5 安装cinder

3.5.1 控制节点

3.5.1.1 在数据库中创建cinder用户及授权

3.5.1.2 在keystone中创建cinder用户并授权

3.5.1.3 创建cinder服务的端点

3.5.1.4 安装cinder-api与cinder-scheduler

3.5.1.5 修改配置文件/etc/cinder/cinder.conf,用config -> cinder -> cinder.conf.controller的文件内容全量替换,记得更改里面的变量

3.5.1.6 初始化cinder数据库

3.5.1.7 启动cinder-api与cinder-scheduler服务

此时,执行命令openstack volume service list应该可以看到cinder-api与cinder-scheduler处于运行状态。

3.5.2 cinder-volume节点

cinder-volume节点只需要安装cinder-volume,不需要启动该服务,因为cinder-volume需要对接指定的后端存储,比如ceph、lvm。对接不同的后端,配置会不一样。所以,这一步我们只执行以下命令安装cinder-volume

4. 替换代码

4.1 覆盖代码(所有节点)

获取源码tar.gz包,解压后里面有一个patch.sh,以root用户执行这个脚本,就能替换该节点的代码。注意所有节点都要替换代码。

4.2 重启nova与nuetron服务

4.2.1 控制节点

4.2.2 计算节点

4.3 更新neutron数据库(控制节点)

4.3.1 执行以下命令为neutron数据库添加字段

执行完这个命令后,会打出信息,生成两个个文件,expand下的文件在第二步中会用到

4.3.2 修改生成的文件上面生成的文件,注释掉原来的upgrade函数,添加以下内容

该文件全路径为一般为/usr/lib/python2.7/site-packages/neutron/db/migration/alembic_migrations/versions/queens/expand/xxxxxxxxxx_add_auth_policy_in_securitygroup_rule.py

4.3.3 更新数据库

4.4 配置spice访问(计算节点)

4.4.1 nova.conf

修改nova配置文件,禁用vnc,并将连接方式改为spice。

4.4.2 证书

创建目录/etc/pki/libvirt-spice/,然后从http://10.142.233.68:8050/home/cloud-desk/tls/下载三个证书文件,放入到该目录下。

配置/etc/libvirt/qemu.conf

4.4.3 重启nova-compute服务

4.5 创建虚机验证

通过dashboard创建一个虚机,此时用的还是本地盘,通过spice端口进入虚机

5. 对接ceph

首先生成一个uuid,这个uuid在后面很多地方都会用到

5.1 创建存储池及授权(ceph侧操作)

这里要给cinder用户赋上vms池的权限,因为后面也要用到cinder用户去操作vms

5.2 安装ceph软件包(所有节点)

5.3 glance

5.3.1 编辑/etc/glance/glance-api.conf文件,修改[glance_store]的内容如下:

如果要允许image的写时拷贝,再添加下面内容到[Default]段下

5.3.2 拷贝ceph.client.glance.keyring/etc/ceph/

5.3.3 重启glance服务,测试上传镜像

5.4 cinder

5.4.1 controller

5.4.1.1 配置计算服务使用块存储

修改/etc/nova/nova.conf,在[cinder]区域添加如下内容

然后重启nova-api

5.4.1.2 创建卷类型

5.4.2 cinder-volume

在第3.5.2中我们只安装了cinder-volume,却没有更改配置文件及启动该服务。修改/etc/cinder/cinder.conf文件,用config -> cinder -> cinder.conf.volume的内容全量覆盖,注意替换里面的变量

然后重启cinder-volume服务

5.5 nova(compute)

5.5.1 配置libvirt访问ceph

创建一个secret.xml文件,其中75745520-953f-493b-8d19-6383f644087f是在5.1前面生成的UUID:

然后执行以下命令,定义一个secret的key

然后为这个key设置一个值,75745520-953f-493b-8d19-6383f644087f是在5.1前面生成的UUID,AQAYHS9cbK65LhAAYe774kLwXiNtUOz611QAvQ==/etc/ceph/ceph.client.cinder.keyring中的内容

然后执行下面的命令进行验证

5.5.2 配置nova-compute

修改/etc/nova/nova.conf,在[libvirt]区域添加如下的内容,注意把{UUID}改成5.1中生成的值:

5.5.3 重启libvirtd与nova-compute

Last updated

Was this helpful?