Keystone 服务应该在控制器节点上安装并配置。
要快速填充 Keystone 数据库,可使用样例脚本 /usr/demo/openstack/keystone/sample_data.sh。该脚本创建以下初始租户:
service,在其下为每个 OpenStack 服务创建一个 Keystone 用户。
demo,在其下创建一个使用缺省口令的用户 admin。
此外,该脚本还会设置一些环境变量,用于定义每个 API 服务所在的节点以及每个服务的口令。缺省情况下,对于租户 service 的每个服务,服务名、用户名和口令完全相同。例如,对于 Nova 服务,创建的用户为 nova,使用的口令为 nova。
可以在运行该脚本之前更改变量来定制服务的用户名及其对应的口令以及初始租户的名称。请确保查看该脚本,以了解有关可为环境设置的参数的更多信息。
controller# pkg install keystone
该令牌由随机字符串组成。
controller# openssl rand -hex 10 token-string
controller# export SERVICE_TOKEN=token-string
该配置应如以下示例所示:
[DEFAULT] admin_token = token-string qpid_hostname=$CONTROLLER_ADMIN_NODE rabbit_host=$CONTROLLER_ADMIN_NODE ... [database] connection = mysql://keystone:service-password@$CONTROLLER_ADMIN_NODE/keystone
controller# svcadm enable keystone
controller# su - keystone -c "keystone-manage pki_setup"
要使用样例脚本,请发出以下命令。
controller# CONTROLLER_PUBLIC_ADDRESS=$CONTROLLER_ADMIN_NODE \ CONTROLLER_ADMIN_ADDRESS=$CONTROLLER_ADMIN_NODE \ CONTROLLER_INTERNAL_ADDRESS=$CONTROLLER_ADMIN_NODE \ SERVICE_TOKEN=token-string \ /usr/demo/openstack/keystone/sample_data.sh