看到马哥微信公众号中有这么一篇文章《巧用tmpfs加速你的linux服务器》,有点小启发,我用它来存放keystone pki签证,还有dashboard的secret key。
我的环境:
openstack版本:icehouse
os : centos6.5 x86_64
tmpfs简介
系统启动时会将tmpfs挂载到 /dev/shm下,看这里
[root@controller1 ~]# cat /etc/fstabtmpfs /dev/shm tmpfs defaults 0 0
tmpfs和ramdisk的区别
相同点:都可以使用RAM
不同点:tmpfs是文件系统;ramdisk是块设备,使用块设备每次都得先格式化
具体应用
[root@controller3 ~]# mkdir -p /dev/shm/tmp # 在/dev/shm目录创建一个tmp目录[root@controller3 ~]# chmod 1777 /dev/shm/tmp[root@controller3 ~]# mount --bind /dev/shm/tmp /tmp # 与实际tmp目录绑定1 /tmp目录是keystone默认为openstack各大组件签证的目录[root@controller1 ~]# ll /tmp/ total 0drwx------ 2 neutron neutron 100 Oct 6 15:52 keystone-signing-ISneL_drwx------ 2 glance glance 100 Oct 6 15:52 keystone-signing-L9P1nIdrwx------ 2 nova nova 100 Oct 6 15:52 keystone-signing-UB328hdrwx------ 2 ceilometer ceilometer 100 Oct 6 15:53 keystone-signing-Y4YIPpdrwx------ 2 ceilometer ceilometer 100 Oct 6 15:48 keystone-signing-yVI_hQdrwx------ 2 glance glance 100 Oct 6 15:52 keystone-signing-ZH5adK2 horizon的LOCAL_PATH是/tmp目录[root@controller3 ~]# vim /etc/openstack-dashboard/local_settings # 编辑dashboard配置文件LOCAL_PATH = '/tmp' [root@controller3 ~]# vim /etc/rc.local # 避免开机失去与/tmp目录的绑定,编辑rc.local,添加如下内容/bin/mount --bind /dev/shm/tmp /tmp
还需注意的是tmpfs数据在系统重新启动后不会保留,因为虚拟内存本质上就是易失的,所以有些数据需要保留的,还需自己写一些脚本来实现。