分享

keystone 优化

abcdefghijklmn 发表于 2017-12-6 15:20:35 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 2 5967
大家在keystone优化方面有什么好的建议呢?求救~~~~~

已有(2)人评论

跳转到指定楼层
desehawk 发表于 2017-12-6 16:19:48
优化分为集群优化和代码优化。集群优化,一般来讲集群优化比较多,如果代码优化的话,就是二次开发了,这个困难度大一些集群优化,比如开启缓存
由于openstack中的各api都是wsgi服务,并且都用到了keystoneclient提供的一个中间件(wsgi filter)auth_token,对应的文件位于:keystoneclient/middleware/auth_token.py。该中间件采用memcache来缓存token的相关信息到本地,从而减少各服务对keystone的直接访问,不过默认情况下缓存并未启用。为此,添加如下配置到nova.conf、cinder.conf…
[mw_shl_code=bash,true][keystone_authtoken]  
auth_uri = http://keystone_server:5000/  
auth_host = keystone_server  
auth_port = 35357  
auth_protocol = http  
admin_tenant_name = service  
admin_user = nova  
admin_password = password  
memcache_servers = 127.0.0.1:11211  
token_cache_time = 3600 #token本地缓存的失效时间设置为1个小时。  
cache = true  [/mw_shl_code]
cache = true

第二可以定期清理token
keystone里提供了一个工具,定时清理过期的token,在crontab中定时执行。
把这条命令加入到crontab里,根据需要运行就可以了,例如每小时运行一次。
* */1 * * * /usr/bin/keystone-manage token_flush >/dev/null 2>&1



回复

使用道具 举报

abcdefghijklmn 发表于 2017-12-7 11:10:12
desehawk 发表于 2017-12-6 16:19
优化分为集群优化和代码优化。集群优化,一般来讲集群优化比较多,如果代码优化的话,就是二次开发了,这个 ...

如果token使用的是fernet也需要清理token吗?我memcached已经开了。。。但在一个四核的实体服务器上测试,keystone qps只达到了200多,这个应该不太正常把?在 nginx 那一层qps能达到15000,但keystone返回结果才200多。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条