【发布时间】:2017-08-10 21:12:17
【问题描述】:
我正在尝试在 Ubuntu EC2 机器 (t2.medium) 中运行弹性搜索。
但我收到了消息:
最大虚拟内存区域 vm.max_map_count [65530] 太低,至少增加到 [262144]
如何增加vm.max_map_count 的值?
【问题讨论】:
我正在尝试在 Ubuntu EC2 机器 (t2.medium) 中运行弹性搜索。
但我收到了消息:
最大虚拟内存区域 vm.max_map_count [65530] 太低,至少增加到 [262144]
如何增加vm.max_map_count 的值?
【问题讨论】:
注意
从版本 207 和 21x 开始,systemd 仅应用来自 /etc/sysctl.d/*.conf 和 /usr/lib/sysctl.d/*.conf。如果你有 自定义的/etc/sysctl.conf,需要重命名为 /etc/sysctl.d/99-sysctl.conf。如果你有例如/etc/sysctl.d/foo,你 需要重命名为/etc/sysctl.d/foo.conf。
见https://wiki.archlinux.org/index.php/sysctl#Configuration
所以在/etc/sysctl.d/99-sysctl.conf 中添加vm.max_map_count=262144 然后运行
sudo sysctl --system
【讨论】:
sysctl -w vm.max_map_count=262144
【讨论】:
时间:
密钥“vm.max_map_count”的权限被拒绝
sudo sysctl -w vm.max_map_count=262144
【讨论】:
sysctl vm.max_map_count
如果您使用的是 ubuntu VM,请导航到 etc 文件夹。
运行vim sysctl.conf
在文件末尾添加vm.max_map_count=262144并保存
最后运行sudo sysctl -w vm.max_map_count=262144这个命令
你会看到vm.max_map_count=262144
【讨论】:
-w 标志表示它写入信息,但在上面的第 2 行中,您已经手动将信息写入文件。那么为什么要在第 3 行再写一遍呢?
我用
# sysctl -w vm.max_map_count=262144
对于持久化配置
# echo "vm.max_map_count=262144" >> /etc/sysctl.conf
委托人
【讨论】:
以下命令在 Fedora 28(Linux 4.19 内核)上运行良好
sudo echo "vm.max_map_count=262144" >> /etc/sysctl.d/elasticsearchSpecifications.conf && sudo sysctl --system
【讨论】:
要使其持久化,您可以添加以下行:
vm.max_map_count=262144
在你的/etc/sysctl.conf 中运行
$ sudo sysctl -p
用新值重新加载配置
【讨论】:
cat /proc/sys/vm/max_map_count 不受此影响,这对我来说是个意外