启动的时候刚开始没有做啥,真正开始的执行是从这个方法开始的
org.elasticsearch.cli.Command#execute
1、创建Environment
会利用到elasticsearch home中conf的配置文件,必填项
在创建Environment之前先准备
核心的关键是获取命令行传入进去的path.home的值,放到setting里。因为在创建Environment的时候,要依据该参数将里面的
config、plugins、data、logs、bin、lib、modules等解析出来,正好对应相应文件夹
xiaohuihui@xiaohuihuideMBP 8_home % ls
config data lib logs modules plugins
相当于从path.home里解析相应路径,这个时候会有一个Environment的变量,这个变量还不是最终返回的Environment,因为还没解析配置文件elasticsearch.yaml。
接着开始解析elasticsearch.yaml文件,如果用户在该配置文件中设置了一些logs、data的路径,才会是最终的路径,因为解析完该配置文件后,es会new一个Environment 返回,这时的logs、data等的路径是解析完elasticsearch.yaml之后的。总结一下,es本身对于l