Ubuntu 安装与配置¶
本节描述了如何在 Ubuntu 16.04 (LTS) 上安装和配置基础设施优化服务。
先决条件¶
在安装和配置基础设施优化服务之前,您必须创建一个数据库、服务凭证和 API 端点。
创建数据库,请完成以下步骤
使用数据库访问客户端以
root用户身份连接到数据库服务器# mysql创建
watcher数据库CREATE DATABASE watcher CHARACTER SET utf8;授予对
watcher数据库的适当访问权限GRANT ALL PRIVILEGES ON watcher.* TO 'watcher'@'localhost' \ IDENTIFIED BY 'WATCHER_DBPASS'; GRANT ALL PRIVILEGES ON watcher.* TO 'watcher'@'%' \ IDENTIFIED BY 'WATCHER_DBPASS';
将
WATCHER_DBPASS替换为合适的密码。退出数据库访问客户端。
exit;
激活
admin凭证以访问仅管理员可用的 CLI 命令$ . admin-openrc
要创建服务凭证,请完成以下步骤
创建
watcher用户$ openstack user create --domain default --password-prompt watcher User Password: Repeat User Password: +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | domain_id | default | | enabled | True | | id | b18ee38e06034b748141beda8fc8bfad | | name | watcher | | options | {} | | password_expires_at | None | +---------------------+----------------------------------+
将
admin角色添加到watcher用户$ openstack role add --project service --user watcher admin
注意
此命令不会产生任何输出。
创建 watcher 服务实体
$ openstack service create --name watcher --description "Infrastructure Optimization" infra-optim +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | Infrastructure Optimization | | enabled | True | | id | d854f6fff0a64f77bda8003c8dedfada | | name | watcher | | type | infra-optim | +-------------+----------------------------------+
创建基础设施优化服务 API 端点
$ openstack endpoint create --region RegionOne \ infra-optim public http://controller:9322 +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | Infrastructure Optimization | | enabled | True | | id | d854f6fff0a64f77bda8003c8dedfada | | name | watcher | | type | infra-optim | +-------------+----------------------------------+ $ openstack endpoint create --region RegionOne \ infra-optim internal http://controller:9322 +--------------+----------------------------------+ | Field | Value | +--------------+----------------------------------+ | enabled | True | | id | 225aef8465ef4df48a341aaaf2b0a390 | | interface | internal | | region | RegionOne | | region_id | RegionOne | | service_id | d854f6fff0a64f77bda8003c8dedfada | | service_name | watcher | | service_type | infra-optim | | url | http://controller:9322 | +--------------+----------------------------------+ $ openstack endpoint create --region RegionOne \ infra-optim admin http://controller:9322 +--------------+----------------------------------+ | Field | Value | +--------------+----------------------------------+ | enabled | True | | id | 375eb5057fb546edbdf3ee4866179672 | | interface | admin | | region | RegionOne | | region_id | RegionOne | | service_id | d854f6fff0a64f77bda8003c8dedfada | | service_name | watcher | | service_type | infra-optim | | url | http://controller:9322 | +--------------+----------------------------------+
安装和配置组件¶
安装软件包
# apt install watcher-api watcher-decision-engine \ watcher-applier # apt install python-watcherclient
编辑
/etc/watcher/watcher.conf文件并完成以下操作在
[database]部分,配置数据库访问[database] ... connection = mysql+pymysql://watcher:WATCHER_DBPASS@controller/watcher?charset=utf8
在
[DEFAULT]部分,配置 RabbitMQ 消息代理的传输 URL。[DEFAULT] ... control_exchange = watcher transport_url = rabbit://openstack:RABBIT_PASS@controller
将 RABBIT_PASS 替换为您在 RabbitMQ 中为 OpenStack 用户选择的密码。
在
[keystone_authtoken]部分,配置身份服务访问。[keystone_authtoken] ... www_authenticate_uri = http://controller:5000 auth_url = http://controller:5000 memcached_servers = controller:11211 auth_type = password project_domain_name = default user_domain_name = default project_name = service username = watcher password = WATCHER_PASS
将 WATCHER_PASS 替换为您在 Identity 服务中为 watcher 用户选择的密码。
Watcher 通过项目客户端与其他 OpenStack 项目交互,为了实例化这些客户端,Watcher 从 Identity 服务请求新的会话。在
[watcher_clients_auth]部分,配置 Identity 服务访问以与其它 OpenStack 项目客户端交互。[watcher_clients_auth] ... auth_type = password auth_url = http://controller:5000 username = watcher password = WATCHER_PASS project_domain_name = default user_domain_name = default project_name = service
将 WATCHER_PASS 替换为您在 Identity 服务中为 watcher 用户选择的密码。
在
[api]部分,配置 host 选项。[api] ... host = controller
将 controller 替换为您的控制器节点上管理网络接口的 IP 地址,通常对于示例架构中的第一个节点为 10.0.0.11。
在
[oslo_messaging_notifications]部分,配置消息传递驱动程序。[oslo_messaging_notifications] ... driver = messagingv2
填充 watcher 数据库
su -s /bin/sh -c "watcher-db-manage --config-file /etc/watcher/watcher.conf upgrade"
完成安装¶
启动基础设施优化服务并配置它们在系统启动时启动
# systemctl enable watcher-api.service \
watcher-decision-engine.service \
watcher-applier.service
# systemctl start watcher-api.service \
watcher-decision-engine.service \
watcher-applier.service