zoukankan      html  css  js  c++  java
  • 在OpenStack虚拟机实例中创建swap分区的一种方法

    测试组里一个同学负责MapR的搭建,MapR文档中建议每个节点上至少有24GB的swap分区,不知道MapR为啥会有这种反人类的建议……swap无非就是一块顺序读写的磁盘空间,莫非省着内存不用,用swap能提高效率?也许它用swap来存map-reduce的临时文件?

    可是既然这么建议了,只好照办,毕竟我们对MapR也不熟悉。

    【引用请注明出处:http://blog.csdn.net/bhq2010/article/details/9320223

    要让OpenStack的实例中有swap分区,可以在镜像中加,但是很麻烦,而且也不好弄个几十GB的swap,那样镜像会很大。

    另外一种方法如下:

    1. 安装必要的软件

    我们的精简的centos中没有mkfs.ext4和parted,所以要安装e4fsprogs和parted,一般的centos中都已经安装了。设置好软件源:

    # yum update
    # yum install parted
    # yum install e4fsprogs

    2. 创建分区和文件系统

    实例中的vda是openstack提供的root文件系统,装着系统,所以只能对vdb,也就是ephemeral storage 进行分区并创建文件系统:

    # parted /dev/vdb --script "mktable gpt"
    # parted /dev/vdb --script "mkpart primary 1024KB 48GB"
    # parted /dev/vdb --script "mkpart primary 48GB -1"
    # ls /dev | grep vdb
    # mkswap /dev/vdb1
    # mkfs.ext4 /dev/vdb2
    

    这里ephemeral disk(vdb)在flavor中设的是500GB,给swap分了 48GB.,剩下的给了vdb2.

    3. 修改fstab

    将/etc/fstab改为如下内容:

    /dev/vda                /        ext4   defaults              0 0
    /dev/vdb1               swap     swap   defaults              0 0
    /dev/vdb2               /opt     ext4   defaults              0 0


    重启实例或者mountall一下,就可以了。

    用free查看一下swap是否为48GB

  • 相关阅读:
    JSP基础
    线程控制
    多线程简述
    Servlet生命周期
    同步代码块和同步方法有什么区别?
    java.sql.Date和java.util.Date的区别
    Java自学指南五、编码工具
    基本类型和包装类的区别?
    什么是包装类?为什么要有包装类?基本类型与包装类如何转换?
    什么是Java的垃圾回收机制?
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3190086.html
Copyright © 2011-2022 走看看