nikoo 发表于 2017-12-5 07:36:34

照着官网来安装openstack pike之keystone安装

  openstack基础环境安装完成后,现在开启安装keystone服务(在控制节点上执行下面所有操作)
  1、为keystone创建数据库



mysql -u root -p
MariaDB [(none)]> CREATE DATABASE keystone;
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'keystone';
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'keystone';

  2、配置keystone



# yum install openstack-keystone httpd mod_wsgi

  修改配置文件/etc/keystone/keystone.conf,在部分配置下面配置:



connection = mysql+pymysql://keystone:keystone@192.168.101.10/keystone

  在下面添加如下:



provider = fernet

  进行验证:



# egrep "^provider" /etc/keystone/keystone.conf                     
provider = fernet

  3、进行keystone同步数据:



# su -s /bin/sh -c "keystone-manage db_sync" keystone         同步数据

  可以在日志中进行查看:



/var/log/keystone/keystone.log   记录着同步数据库

  4、初始化fernet key仓库



# keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
# keystone-manage credential_setup --keystone-user keystone --keystone-group keystone

  5、Bootstrap the Identity service:



# keystone-manage bootstrap --bootstrap-password bootstrap--bootstrap-admin-url http://192.168.101.10:35357/v3/--bootstrap-internal-url http://192.168.101.10:5000/v3/--bootstrap-public-url http://192.168.101.10:5000/v3/--bootstrap-region-id RegionOne

  这里设置的账号密码admin:bootstrap非常重要,后面要经常用到
  然后将httpd服务与keystone进行结合:


1、修改配置文件/etc/httpd/conf/httpd.conf




ServerName 192.168.101.10

  2、创建链接



# ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/

  3、开启httpd服务:



# systemctl enable httpd.service
# systemctl start httpd.service

  4、配置admin管理用户(权限管理),在当前session执行就行



# export OS_USERNAME=admin
# export OS_PASSWORD=bootstrap   这里的密码对应keystone-manage bootstrap
# export OS_PROJECT_NAME=admin
# export OS_USER_DOMAIN_NAME=Default
# export OS_PROJECT_DOMAIN_NAME=Default
# export OS_AUTH_URL=http://192.168.101.10:35357/v3   35357是管理端口
# export OS_IDENTITY_API_VERSION=3

  5、创建一个项目,域,用户和角色



# openstack project create --domain default --description "Service Project" service




创建一个demo项目:




# openstack project create --domain default --description "Demo Project" demo

  创建一个demo 用户:



# openstack user create --domain default --password-prompt demo

  需要设定并输入密码:demo


创建一个user 角色:




# openstack role create user

  将user这个角色添加到demo项目以及demo用户中:



# openstack role add --project demo --user demo user

  note:service项目用来添加各个服务:glance、nova等等


校验上面的操作:

1、修改配置文件/etc/keystone/keystone-paste.ini

  将admin_token_auth从配置文件中的sections:、、移除

  由于没有,所以这步骤没有更改



2、取消变量OS_AUTH_URL OS_PASSWORD




# unset OS_AUTH_URL OS_PASSWORD

  3、使用admin用户来请求一个认证token:



# openstack --os-auth-url http://192.168.101.10:35357/v3--os-project-domain-name Default --os-user-domain-name Default--os-project-name admin --os-username admin token issue

  这里需要输入密码:bootstrap



4、使用demo用户来请求认证token




# openstack --os-auth-url http://192.168.101.10:5000/v3 --os-project-domain-name Default --os-user-domain-name Default --os-project-name demo --os-username demo token issue

  这里需要输入密码:demo



至此keystone服务安装完成





将上述admin、demo的项目和用户的信息写到一个脚本变量中,用到的时候source一下就可以,不必export一个个变量:



vim admin-openrc: 针对admin

export OS_PROJECT_DOMAIN_NAME=Default

export OS_USER_DOMAIN_NAME=Default

export OS_PROJECT_NAME=admin

export OS_USERNAME=admin

export OS_PASSWORD=bootstrap

export OS_AUTH_URL=http://192.168.101.10:35357/v3

export OS_IDENTITY_API_VERSION=3

export OS_IMAGE_API_VERSION=2



vim demo-openrc: 针对demo

export OS_PROJECT_DOMAIN_NAME=Default

export OS_USER_DOMAIN_NAME=Default

export OS_PROJECT_NAME=demo

export OS_USERNAME=demo

export OS_PASSWORD=demo

export OS_AUTH_URL=http://192.168.101.10:5000/v3

export OS_IDENTITY_API_VERSION=3

export OS_IMAGE_API_VERSION=2

demo的token同理上面的admin





keystone服务基本安装完成,其他操作继续参考官方文档

如果遇到下面错误:

  请检查admin账号的密码是否正确
页: [1]
查看完整版本: 照着官网来安装openstack pike之keystone安装