二、安全
下面的表格给出了需要密码的服务列表以及它们在指南中关联关系:
密码 | |
密码名称 | 描述 |
数据库密码(不能使用变量) | 数据库的root密码 |
ADMIN_PASS | admin 用户密码 |
CEILOMETER_DBPASS | Telemetry 服务的数据库密码 |
CEILOMETER_PASS | Telemetry 服务的 ceilometer 用户密码 |
CINDER_DBPASS | 块设备存储服务的数据库密码 |
CINDER_PASS | 块设备存储服务的 cinder 密码 |
DASH_DBPASS | Database password for the dashboard |
DEMO_PASS | demo 用户的密码 |
GLANCE_DBPASS | 镜像服务的数据库密码 |
GLANCE_PASS | 镜像服务的 glance 用户密码 |
HEAT_DBPASS | Orchestration服务的数据库密码 |
HEAT_DOMAIN_PASS | Orchestration 域的密码 |
HEAT_PASS | Orchestration 服务中``heat``用户的密码 |
KEYSTONE_DBPASS | 认证服务的数据库密码 |
NEUTRON_DBPASS | 网络服务的数据库密码 |
NEUTRON_PASS | 网络服务的 neutron 用户密码 |
NOVA_DBPASS | 计算服务的数据库密码 |
NOVA_PASS | 计算服务中``nova``用户的密码 |
RABBIT_PASS | RabbitMQ的guest用户密码 |
SWIFT_PASS | 对象存储服务用户``swift``的密码 |
四、主机网络
示例架构假设使用如下网络:
- 管理使用 10.0.0.0/24 带有网关 10.0.0.1
这个网络需要一个网关以为所有节点提供内部的管理目的的访问,例如包的安装、安全更新、 DNS,和NTP。
- 提供者网段 192.168.9.0/24,网关192.168.9.1
这个网络需要一个网关来提供在环境中内部实例的访问。
五、网络时间协议(NTP)
你应该安装Chrony,一个在不同节点同步服务实现 :term:`NTP`的方案。我们建议你配置控制器节点引用更准确的(lower stratum)NTP服务器,然后其他节点引用控制节点。
六、OpenStack包
启用openstack库
# apt-get install software-properties-common
# add-apt-repository cloud-archive:mitaka
完成安装
1、在主机上升级包
# apt-get update && apt-get dist-upgrade
2、安装openstack客户端
# apt-get install python-openstackclient
七、MYSQL数据库
大多数 OpenStack 服务使用SQL 数据库来存储信息。 典型地,数据库运行在控制节点上。指南中的步骤依据不同的发行版使用MariaDB或 MySQL。OpenStack 服务也支持其他 SQL 数据库,包括`PostgreSQL <http://www.postgresql.org/>`__.
1、安全并配置组件
# apt-get install mariadb-server python-pymysql
2、为数据库用户``root``设置适当的密码。
3、创建并编辑 /etc/mysql/conf.d/openstack.cnf,然后完成如下动作:
- 在 [mysqld] 部分,设置 ``bind-address``值为控制节点的管理网络IP地址以使得其它节点可以通过管理网络访问数据库:
[mysqld]
...
bind-address = 10.0.0.11
在``[mysqld]`` 部分,设置如下键值来启用一起有用的选项和 UTF-8 字符集:
[mysqld]
...
default-storage-engine = innodb
innodb_file_per_table
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8
4、完成安装
重启数据库服务
service mysql restart
执行 mysql_secure_installation脚本来对数据库进行安全加固。
mysql_secure_installation
八、消息队列
OpenStack 使用 messagequeue 协调操作和各服务的状态信息。消息队列服务一般运行在控制节点上。OpenStack支持好几种消息队列服务包括 RabbitMQ, Qpid,和 ZeroMQ。不过,大多数发行版本的OpenStack包支持特定的消息队列服务。本指南安装 RabbitMQ 消息队列服务,因为大部分发行版本都支持它。如果你想安装不同的消息队列服务,查询与之相关的文档。
安全并配置组件
1、安装包
apt-get install rabbitmq-server
2、添加 openstack用户:
# rabbitmqctl add_user openstack RABBIT_PASS
Creating user "openstack" ...
...done.
用合适的密码替换 RABBIT_DBPASS。
3、给``openstack``用户配置写和读权限:
# rabbitmqctl set_permissions openstack ".*" ".*" ".*"
Setting permissions for user "openstack" in vhost "/" ...
...done.
九、Memcached缓存令牌
认证服务认证缓存使用Memcached缓存令牌。缓存服务memecached运行在控制节点。在生产部署中,我们推荐联合启用防火墙、认证和加密保证它的安全。
安全并配置组件
1、安装软包
apt-get install memcached python-memcache
2、编辑 /etc/memcached.conf文件和配置服务使用控制节点管理IP地址,以此使其它节点通过管理网访问控制节点。
-l 10.0.0.11
3、完成安装
重启Memcached服务:
service memcached restart