Elastic Search探索的第一课
—-stic search 5.3.0
按照道理应该就可以了,然而接下来各种坑一一出现,分别阐述
错误1:
error='Cannot allocate memory' (errno=12)
solutions: 由于elasticsearch5.0默认分配jvm空间大小为2g,需要改小一点
错误2: can not run elasticsearch as root
solutions: 在 Linux 环境中,elasticsearch 不允许以 root 权限来运行!所以需要创建一个非root用户,以非root用户来起es
错误3:(1) max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536] (2) max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
此错误出现在修改config/elasticsearch.yml中的network.host为network.host: 0.0.0.0以便让外网任何IP都能来访问时。
solutions: 切换到root用户,然后
错误4:max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
solutions: 先要切换到root用户; 然后可以执行以下命令,设置 vm.max_map_count ,但是重启后又会恢复为原值。
持久性的做法是在 /etc/sysctl.conf 文件中修改 vm.max_map_count 参数:
最后终于在外网访问成功:
然后在外网访问http://你的安装机IP:9100
新建 Index,可以直接向 Elastic 服务器发出 PUT 请求。下面的例子是新建一个名叫weather的 Index。
然而刷新elasticsearch-head可视化界面可以看到索引已经成功插入