Skip to content

Latest commit

 

History

History
667 lines (636 loc) · 25.3 KB

2-3_插件安装.md

File metadata and controls

667 lines (636 loc) · 25.3 KB

2-3 插件安装

elasticsearch-head

https://github.com/mobz/elasticsearch-head

为什么要使用Head插件?

  • es返回的服务信息是json格式的,阅读等对于用户而言不是很友好
  • Head则提供了友好的Web页面,方便阅读,可以集成了基本的查询

安装 elasticsearch-head

  1. 下载或 git clone elasticsearch-head

  2. 确认 node >= 6.0

  3. npm install

  4. npm run start

  5. 检查运行结果

    浏览器访问:http://localhost:9100

配置 elasticsearch

  1. 修改 elasticsearch/config/elasticsearch.yml

    添加

    http.cors.enabled: true
    http.cors.allow-origin: "*"
    
  2. 启动 elasticsearch

  3. 启动 elasticsearch-head

集群状态

  • green 绿色: 集群运行良好
  • yellow 黄色: 集群健康不是很好,但是可以正常使用
  • red 红色: 集群运行不好, 已经开始丢失数据了

详细步骤

CorningSunMac:elastic corning$ ls
elasticsearch-6.2.2		elasticsearch-6.2.2.tar.gz
CorningSunMac:elastic corning$ git clone git@github.com:mobz/elasticsearch-head.git
Cloning into 'elasticsearch-head'...
remote: Counting objects: 4224, done.
remote: Total 4224 (delta 0), reused 0 (delta 0), pack-reused 4224
Receiving objects: 100% (4224/4224), 2.16 MiB | 6.00 KiB/s, done.
Resolving deltas: 100% (2329/2329), done.
CorningSunMac:elastic corning$ ls
elasticsearch-6.2.2		elasticsearch-6.2.2.tar.gz	elasticsearch-head
CorningSunMac:elastic corning$ node -v
v6.9.2
CorningSunMac:elastic corning$ cd elasticsearch-head/
CorningSunMac:elasticsearch-head corning$ ls
Dockerfile				README.textile				index.html				src
Dockerfile-alpine			_site					package.json				test
Gruntfile.js				elasticsearch-head.sublime-project	plugin-descriptor.properties
LICENCE					grunt_fileSets.js			proxy
CorningSunMac:elasticsearch-head corning$ npm install
npm WARN deprecated coffee-script@1.10.0: CoffeeScript on NPM has moved to "coffeescript" (no hyphen)
npm WARN deprecated http2@3.3.7: Use the built-in module in node 9.0.0 or newer, instead
npm WARN prefer global coffee-script@1.10.0 should be installed with -g

> fsevents@1.1.3 install /Users/corning/local/elastic/elasticsearch-head/node_modules/fsevents
> node install

[fsevents] Success: "/Users/corning/local/elastic/elasticsearch-head/node_modules/fsevents/lib/binding/Release/node-v48-darwin-x64/fse.node" already installed
Pass --update-binary to reinstall or --build-from-source to recompile

> phantomjs-prebuilt@2.1.16 install /Users/corning/local/elastic/elasticsearch-head/node_modules/phantomjs-prebuilt
> node install.js

PhantomJS not found on PATH
Downloading https://github.com/Medium/phantomjs/releases/download/v2.1.1/phantomjs-2.1.1-macosx.zip
Saving to /var/folders/mg/pxtj807539j2bbfwcmfprsw80000gn/T/phantomjs/phantomjs-2.1.1-macosx.zip
Receiving...
  [======================================--] 96%
Received 16746K total.
Extracting zip contents
Removing /Users/corning/local/elastic/elasticsearch-head/node_modules/phantomjs-prebuilt/lib/phantom
Copying extracted folder /var/folders/mg/pxtj807539j2bbfwcmfprsw80000gn/T/phantomjs/phantomjs-2.1.1-macosx.zip-extract-1519609948869/phantomjs-2.1.1-macosx -> /Users/corning/local/elastic/elasticsearch-head/node_modules/phantomjs-prebuilt/lib/phantom
Writing location.js file
Done. Phantomjs binary available at /Users/corning/local/elastic/elasticsearch-head/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs
elasticsearch-head@0.0.0 /Users/corning/local/elastic/elasticsearch-head
├─┬ grunt@1.0.1
│ ├── coffee-script@1.10.0
│ ├─┬ dateformat@1.0.12
│ │ ├── get-stdin@4.0.1
│ │ └─┬ meow@3.7.0
│ │   ├─┬ camelcase-keys@2.1.0
│ │   │ └── camelcase@2.1.1
│ │   ├── decamelize@1.2.0
│ │   ├─┬ loud-rejection@1.6.0
│ │   │ ├─┬ currently-unhandled@0.4.1
│ │   │ │ └── array-find-index@1.0.2
│ │   │ └── signal-exit@3.0.2
│ │   ├── map-obj@1.0.1
│ │   ├── minimist@1.2.0
│ │   ├─┬ normalize-package-data@2.4.0
│ │   │ ├── hosted-git-info@2.5.0
│ │   │ ├─┬ is-builtin-module@1.0.0
│ │   │ │ └── builtin-modules@1.1.1
│ │   │ └─┬ validate-npm-package-license@3.0.1
│ │   │   ├─┬ spdx-correct@1.0.2
│ │   │   │ └── spdx-license-ids@1.2.2
│ │   │   └── spdx-expression-parse@1.0.4
│ │   ├─┬ read-pkg-up@1.0.1
│ │   │ ├─┬ find-up@1.1.2
│ │   │ │ └── path-exists@2.1.0
│ │   │ └─┬ read-pkg@1.1.0
│ │   │   ├─┬ load-json-file@1.1.0
│ │   │   │ ├─┬ parse-json@2.2.0
│ │   │   │ │ └─┬ error-ex@1.3.1
│ │   │   │ │   └── is-arrayish@0.2.1
│ │   │   │ ├── pify@2.3.0
│ │   │   │ └─┬ strip-bom@2.0.0
│ │   │   │   └── is-utf8@0.2.1
│ │   │   └── path-type@1.1.0
│ │   ├─┬ redent@1.0.0
│ │   │ ├─┬ indent-string@2.1.0
│ │   │ │ └─┬ repeating@2.0.1
│ │   │ │   └─┬ is-finite@1.0.2
│ │   │ │     └── number-is-nan@1.0.1
│ │   │ └── strip-indent@1.0.1
│ │   └── trim-newlines@1.0.0
│ ├── eventemitter2@0.4.14
│ ├── exit@0.1.2
│ ├─┬ findup-sync@0.3.0
│ │ └── glob@5.0.15
│ ├─┬ glob@7.0.6
│ │ ├── fs.realpath@1.0.0
│ │ ├─┬ inflight@1.0.6
│ │ │ └── wrappy@1.0.2
│ │ ├── inherits@2.0.3
│ │ └── once@1.4.0
│ ├─┬ grunt-cli@1.2.0
│ │ └── resolve@1.1.7
│ ├── grunt-known-options@1.1.0
│ ├─┬ grunt-legacy-log@1.0.0
│ │ ├─┬ grunt-legacy-log-utils@1.0.0
│ │ │ └── lodash@4.3.0
│ │ ├── hooker@0.2.3
│ │ └── underscore.string@3.2.3
│ ├─┬ grunt-legacy-util@1.0.0
│ │ ├── getobject@0.1.0
│ │ ├── lodash@4.3.0
│ │ └─┬ which@1.2.14
│ │   └── isexe@2.0.0
│ ├── iconv-lite@0.4.19
│ ├─┬ js-yaml@3.5.5
│ │ ├── argparse@1.0.10
│ │ └── esprima@2.7.3
│ ├─┬ minimatch@3.0.4
│ │ └─┬ brace-expansion@1.1.11
│ │   ├── balanced-match@1.0.0
│ │   └── concat-map@0.0.1
│ ├─┬ nopt@3.0.6
│ │ └── abbrev@1.1.1
│ ├── path-is-absolute@1.0.1
│ └── rimraf@2.2.8
├─┬ grunt-contrib-clean@1.0.0
│ ├── async@1.5.2
│ └── rimraf@2.6.2
├─┬ grunt-contrib-concat@1.0.1
│ ├─┬ chalk@1.1.3
│ │ ├── ansi-styles@2.2.1
│ │ ├── escape-string-regexp@1.0.5
│ │ ├─┬ has-ansi@2.0.0
│ │ │ └── ansi-regex@2.1.1
│ │ ├── strip-ansi@3.0.1
│ │ └── supports-color@2.0.0
│ └── source-map@0.5.7
├─┬ grunt-contrib-connect@1.0.2
│ ├─┬ connect@3.6.6
│ │ ├─┬ debug@2.6.9
│ │ │ └── ms@2.0.0
│ │ ├─┬ finalhandler@1.1.0
│ │ │ ├── statuses@1.3.1
│ │ │ └── unpipe@1.0.0
│ │ ├── parseurl@1.3.2
│ │ └── utils-merge@1.0.1
│ ├── connect-livereload@0.5.4
│ ├── http2@3.3.7
│ ├─┬ morgan@1.9.0
│ │ ├─┬ basic-auth@2.0.0
│ │ │ └── safe-buffer@5.1.1
│ │ ├── depd@1.1.2
│ │ ├─┬ on-finished@2.3.0
│ │ │ └── ee-first@1.1.1
│ │ └── on-headers@1.0.1
│ ├─┬ opn@4.0.2
│ │ ├── object-assign@4.1.1
│ │ └─┬ pinkie-promise@2.0.1
│ │   └── pinkie@2.0.4
│ ├── portscanner@1.2.0
│ ├─┬ serve-index@1.9.1
│ │ ├─┬ accepts@1.3.4
│ │ │ └── negotiator@0.6.1
│ │ ├── batch@0.6.1
│ │ ├── escape-html@1.0.3
│ │ ├─┬ http-errors@1.6.2
│ │ │ ├── depd@1.1.1
│ │ │ └── setprototypeof@1.0.3
│ │ └─┬ mime-types@2.1.18
│ │   └── mime-db@1.33.0
│ └─┬ serve-static@1.13.2
│   ├── encodeurl@1.0.2
│   └─┬ send@0.16.2
│     ├── destroy@1.0.4
│     ├── etag@1.8.1
│     ├── fresh@0.5.2
│     └── statuses@1.4.0
├─┬ grunt-contrib-copy@1.0.0
│ └── file-sync-cmp@0.1.1
├─┬ grunt-contrib-jasmine@1.0.3
│ ├── es5-shim@4.5.10
│ ├─┬ grunt-lib-phantomjs@1.1.0
│ │ ├─┬ phantomjs-prebuilt@2.1.16
│ │ │ ├── es6-promise@4.2.4
│ │ │ ├─┬ extract-zip@1.6.6
│ │ │ │ ├─┬ concat-stream@1.6.0
│ │ │ │ │ └── typedarray@0.0.6
│ │ │ │ ├─┬ mkdirp@0.5.0
│ │ │ │ │ └── minimist@0.0.8
│ │ │ │ └─┬ yauzl@2.4.1
│ │ │ │   └─┬ fd-slicer@1.0.1
│ │ │ │     └── pend@1.2.0
│ │ │ ├─┬ fs-extra@1.0.0
│ │ │ │ ├── jsonfile@2.4.0
│ │ │ │ └── klaw@1.3.1
│ │ │ ├─┬ hasha@2.2.0
│ │ │ │ └── is-stream@1.1.0
│ │ │ ├── kew@0.7.0
│ │ │ ├── progress@1.1.8
│ │ │ ├─┬ request@2.83.0
│ │ │ │ ├── aws-sign2@0.7.0
│ │ │ │ ├── aws4@1.6.0
│ │ │ │ ├── caseless@0.12.0
│ │ │ │ ├─┬ combined-stream@1.0.6
│ │ │ │ │ └── delayed-stream@1.0.0
│ │ │ │ ├── forever-agent@0.6.1
│ │ │ │ ├─┬ form-data@2.3.2
│ │ │ │ │ └── asynckit@0.4.0
│ │ │ │ ├─┬ har-validator@5.0.3
│ │ │ │ │ ├─┬ ajv@5.5.2
│ │ │ │ │ │ ├── co@4.6.0
│ │ │ │ │ │ ├── fast-deep-equal@1.1.0
│ │ │ │ │ │ ├── fast-json-stable-stringify@2.0.0
│ │ │ │ │ │ └── json-schema-traverse@0.3.1
│ │ │ │ │ └── har-schema@2.0.0
│ │ │ │ ├─┬ hawk@6.0.2
│ │ │ │ │ ├── boom@4.3.1
│ │ │ │ │ ├─┬ cryptiles@3.1.2
│ │ │ │ │ │ └── boom@5.2.0
│ │ │ │ │ ├── hoek@4.2.1
│ │ │ │ │ └── sntp@2.1.0
│ │ │ │ ├─┬ http-signature@1.2.0
│ │ │ │ │ ├── assert-plus@1.0.0
│ │ │ │ │ ├─┬ jsprim@1.4.1
│ │ │ │ │ │ ├── extsprintf@1.3.0
│ │ │ │ │ │ ├── json-schema@0.2.3
│ │ │ │ │ │ └── verror@1.10.0
│ │ │ │ │ └─┬ sshpk@1.13.1
│ │ │ │ │   ├── asn1@0.2.3
│ │ │ │ │   ├── bcrypt-pbkdf@1.0.1
│ │ │ │ │   ├── dashdash@1.14.1
│ │ │ │ │   ├── ecc-jsbn@0.1.1
│ │ │ │ │   ├── getpass@0.1.7
│ │ │ │ │   ├── jsbn@0.1.1
│ │ │ │ │   └── tweetnacl@0.14.5
│ │ │ │ ├── is-typedarray@1.0.0
│ │ │ │ ├── isstream@0.1.2
│ │ │ │ ├── json-stringify-safe@5.0.1
│ │ │ │ ├── oauth-sign@0.8.2
│ │ │ │ ├── performance-now@2.1.0
│ │ │ │ ├── qs@6.5.1
│ │ │ │ ├── stringstream@0.0.5
│ │ │ │ ├─┬ tough-cookie@2.3.3
│ │ │ │ │ └── punycode@1.4.1
│ │ │ │ ├── tunnel-agent@0.6.0
│ │ │ │ └── uuid@3.2.1
│ │ │ └─┬ request-progress@2.0.1
│ │ │   └── throttleit@1.0.0
│ │ ├── rimraf@2.6.2
│ │ ├── semver@5.5.0
│ │ └─┬ temporary@0.0.8
│ │   └── package@1.0.1
│ ├── jasmine-core@2.99.1
│ ├── lodash@2.4.2
│ └── sprintf-js@1.0.3
├─┬ grunt-contrib-watch@1.0.0
│ ├─┬ gaze@1.1.2
│ │ └─┬ globule@1.2.0
│ │   ├── glob@7.1.2
│ │   └── lodash@4.17.5
│ ├── lodash@3.10.1
│ └─┬ tiny-lr@0.2.1
│   ├─┬ debug@2.2.0
│   │ └── ms@0.7.1
│   ├─┬ faye-websocket@0.10.0
│   │ └─┬ websocket-driver@0.7.0
│   │   ├── http-parser-js@0.4.10
│   │   └── websocket-extensions@0.1.3
│   ├── livereload-js@2.3.0
│   └── qs@5.1.0
├── grunt-karma@2.0.0
├─┬ http-proxy@1.16.2
│ ├── eventemitter3@1.2.0
│ └── requires-port@1.0.0
└─┬ karma@1.3.0
  ├── bluebird@3.5.1
  ├─┬ body-parser@1.14.2
  │ ├── bytes@2.2.0
  │ ├── content-type@1.0.4
  │ ├─┬ debug@2.2.0
  │ │ └── ms@0.7.1
  │ ├── http-errors@1.3.1
  │ ├── iconv-lite@0.4.13
  │ ├── qs@5.2.0
  │ ├─┬ raw-body@2.1.7
  │ │ ├── bytes@2.4.0
  │ │ └── iconv-lite@0.4.13
  │ └─┬ type-is@1.6.16
  │   └── media-typer@0.3.0
  ├─┬ chokidar@1.7.0
  │ ├─┬ anymatch@1.3.2
  │ │ ├─┬ micromatch@2.3.11
  │ │ │ ├─┬ arr-diff@2.0.0
  │ │ │ │ └── arr-flatten@1.1.0
  │ │ │ ├─┬ braces@1.8.5
  │ │ │ │ ├─┬ expand-range@1.8.2
  │ │ │ │ │ └─┬ fill-range@2.2.3
  │ │ │ │ │   ├── is-number@2.1.0
  │ │ │ │ │   ├── isobject@2.1.0
  │ │ │ │ │   ├─┬ randomatic@1.1.7
  │ │ │ │ │   │ ├─┬ is-number@3.0.0
  │ │ │ │ │   │ │ └── kind-of@3.2.2
  │ │ │ │ │   │ └── kind-of@4.0.0
  │ │ │ │ │   └── repeat-string@1.6.1
  │ │ │ │ ├── preserve@0.2.0
  │ │ │ │ └── repeat-element@1.1.2
  │ │ │ ├─┬ expand-brackets@0.1.5
  │ │ │ │ └── is-posix-bracket@0.1.1
  │ │ │ ├── extglob@0.3.2
  │ │ │ ├── filename-regex@2.0.1
  │ │ │ ├─┬ kind-of@3.2.2
  │ │ │ │ └── is-buffer@1.1.6
  │ │ │ ├─┬ object.omit@2.0.1
  │ │ │ │ ├─┬ for-own@0.1.5
  │ │ │ │ │ └── for-in@1.0.2
  │ │ │ │ └── is-extendable@0.1.1
  │ │ │ ├─┬ parse-glob@3.0.4
  │ │ │ │ ├── glob-base@0.3.0
  │ │ │ │ └── is-dotfile@1.0.3
  │ │ │ └─┬ regex-cache@0.4.4
  │ │ │   └─┬ is-equal-shallow@0.1.3
  │ │ │     └── is-primitive@2.0.0
  │ │ └─┬ normalize-path@2.1.1
  │ │   └── remove-trailing-separator@1.1.0
  │ ├── async-each@1.0.1
  │ ├─┬ fsevents@1.1.3
  │ │ ├── nan@2.9.2
  │ │ └─┬ node-pre-gyp@0.6.39
  │ │   ├── detect-libc@1.0.2
  │ │   ├─┬ hawk@3.1.3
  │ │   │ ├── boom@2.10.1
  │ │   │ ├── cryptiles@2.0.5
  │ │   │ ├── hoek@2.16.3
  │ │   │ └── sntp@1.0.9
  │ │   ├─┬ mkdirp@0.5.1
  │ │   │ └── minimist@0.0.8
  │ │   ├─┬ nopt@4.0.1
  │ │   │ ├── abbrev@1.1.0
  │ │   │ └─┬ osenv@0.1.4
  │ │   │   ├── os-homedir@1.0.2
  │ │   │   └── os-tmpdir@1.0.2
  │ │   ├─┬ npmlog@4.1.0
  │ │   │ ├─┬ are-we-there-yet@1.1.4
  │ │   │ │ └── delegates@1.0.0
  │ │   │ ├── console-control-strings@1.1.0
  │ │   │ ├─┬ gauge@2.7.4
  │ │   │ │ ├── aproba@1.1.1
  │ │   │ │ ├── has-unicode@2.0.1
  │ │   │ │ ├── object-assign@4.1.1
  │ │   │ │ ├── signal-exit@3.0.2
  │ │   │ │ ├─┬ string-width@1.0.2
  │ │   │ │ │ ├── code-point-at@1.1.0
  │ │   │ │ │ └─┬ is-fullwidth-code-point@1.0.0
  │ │   │ │ │   └── number-is-nan@1.0.1
  │ │   │ │ ├─┬ strip-ansi@3.0.1
  │ │   │ │ │ └── ansi-regex@2.1.1
  │ │   │ │ └── wide-align@1.1.2
  │ │   │ └── set-blocking@2.0.0
  │ │   ├─┬ rc@1.2.1
  │ │   │ ├── deep-extend@0.4.2
  │ │   │ ├── ini@1.3.4
  │ │   │ ├── minimist@1.2.0
  │ │   │ └── strip-json-comments@2.0.1
  │ │   ├─┬ request@2.81.0
  │ │   │ ├── aws-sign2@0.6.0
  │ │   │ ├── aws4@1.6.0
  │ │   │ ├── caseless@0.12.0
  │ │   │ ├─┬ combined-stream@1.0.5
  │ │   │ │ └── delayed-stream@1.0.0
  │ │   │ ├── extend@3.0.1
  │ │   │ ├── forever-agent@0.6.1
  │ │   │ ├─┬ form-data@2.1.4
  │ │   │ │ └── asynckit@0.4.0
  │ │   │ ├─┬ har-validator@4.2.1
  │ │   │ │ ├─┬ ajv@4.11.8
  │ │   │ │ │ ├── co@4.6.0
  │ │   │ │ │ └─┬ json-stable-stringify@1.0.1
  │ │   │ │ │   └── jsonify@0.0.0
  │ │   │ │ └── har-schema@1.0.5
  │ │   │ ├─┬ http-signature@1.1.1
  │ │   │ │ ├── assert-plus@0.2.0
  │ │   │ │ ├─┬ jsprim@1.4.0
  │ │   │ │ │ ├── assert-plus@1.0.0
  │ │   │ │ │ ├── extsprintf@1.0.2
  │ │   │ │ │ ├── json-schema@0.2.3
  │ │   │ │ │ └── verror@1.3.6
  │ │   │ │ └─┬ sshpk@1.13.0
  │ │   │ │   ├── asn1@0.2.3
  │ │   │ │   ├── assert-plus@1.0.0
  │ │   │ │   ├── bcrypt-pbkdf@1.0.1
  │ │   │ │   ├─┬ dashdash@1.14.1
  │ │   │ │   │ └── assert-plus@1.0.0
  │ │   │ │   ├── ecc-jsbn@0.1.1
  │ │   │ │   ├─┬ getpass@0.1.7
  │ │   │ │   │ └── assert-plus@1.0.0
  │ │   │ │   ├── jodid25519@1.0.2
  │ │   │ │   ├── jsbn@0.1.1
  │ │   │ │   └── tweetnacl@0.14.5
  │ │   │ ├── is-typedarray@1.0.0
  │ │   │ ├── isstream@0.1.2
  │ │   │ ├── json-stringify-safe@5.0.1
  │ │   │ ├─┬ mime-types@2.1.15
  │ │   │ │ └── mime-db@1.27.0
  │ │   │ ├── oauth-sign@0.8.2
  │ │   │ ├── performance-now@0.2.0
  │ │   │ ├── qs@6.4.0
  │ │   │ ├── safe-buffer@5.0.1
  │ │   │ ├── stringstream@0.0.5
  │ │   │ ├─┬ tough-cookie@2.3.2
  │ │   │ │ └── punycode@1.4.1
  │ │   │ ├── tunnel-agent@0.6.0
  │ │   │ └── uuid@3.0.1
  │ │   ├─┬ rimraf@2.6.1
  │ │   │ └─┬ glob@7.1.2
  │ │   │   ├── fs.realpath@1.0.0
  │ │   │   ├── inflight@1.0.6
  │ │   │   ├─┬ minimatch@3.0.4
  │ │   │   │ └─┬ brace-expansion@1.1.7
  │ │   │   │   ├── balanced-match@0.4.2
  │ │   │   │   └── concat-map@0.0.1
  │ │   │   └── path-is-absolute@1.0.1
  │ │   ├── semver@5.3.0
  │ │   ├─┬ tar@2.2.1
  │ │   │ ├── block-stream@0.0.9
  │ │   │ ├─┬ fstream@1.0.11
  │ │   │ │ └── graceful-fs@4.1.11
  │ │   │ └── inherits@2.0.3
  │ │   └─┬ tar-pack@3.4.0
  │ │     ├─┬ debug@2.6.8
  │ │     │ └── ms@2.0.0
  │ │     ├── fstream-ignore@1.0.5
  │ │     ├─┬ once@1.4.0
  │ │     │ └── wrappy@1.0.2
  │ │     ├─┬ readable-stream@2.2.9
  │ │     │ ├── buffer-shims@1.0.0
  │ │     │ ├── core-util-is@1.0.2
  │ │     │ ├── isarray@1.0.0
  │ │     │ ├── process-nextick-args@1.0.7
  │ │     │ ├── string_decoder@1.0.1
  │ │     │ └── util-deprecate@1.0.2
  │ │     └── uid-number@0.0.6
  │ ├── glob-parent@2.0.0
  │ ├─┬ is-binary-path@1.0.1
  │ │ └── binary-extensions@1.11.0
  │ ├─┬ is-glob@2.0.1
  │ │ └── is-extglob@1.0.0
  │ └─┬ readdirp@2.1.0
  │   ├─┬ readable-stream@2.3.4
  │   │ ├── isarray@1.0.0
  │   │ ├── process-nextick-args@2.0.0
  │   │ ├── string_decoder@1.0.3
  │   │ └── util-deprecate@1.0.2
  │   └── set-immediate-shim@1.0.1
  ├── colors@1.1.2
  ├─┬ combine-lists@1.0.1
  │ └── lodash@4.17.5
  ├── core-js@2.5.3
  ├── di@0.0.1
  ├─┬ dom-serialize@2.2.1
  │ ├── custom-event@1.0.1
  │ ├── ent@2.2.0
  │ ├── extend@3.0.1
  │ └── void-elements@2.0.1
  ├─┬ expand-braces@0.1.2
  │ ├── array-slice@0.2.3
  │ ├── array-unique@0.2.1
  │ └─┬ braces@0.1.5
  │   └─┬ expand-range@0.1.1
  │     ├── is-number@0.1.1
  │     └── repeat-string@0.2.2
  ├── graceful-fs@4.1.11
  ├── isbinaryfile@3.0.2
  ├─┬ log4js@0.6.38
  │ ├─┬ readable-stream@1.0.34
  │ │ ├── core-util-is@1.0.2
  │ │ ├── isarray@0.0.1
  │ │ └── string_decoder@0.10.31
  │ └── semver@4.3.6
  ├── mime@1.4.1
  ├─┬ optimist@0.6.1
  │ ├── minimist@0.0.10
  │ └── wordwrap@0.0.3
  ├── qjobs@1.2.0
  ├── range-parser@1.2.0
  ├── rimraf@2.6.2
  ├─┬ socket.io@1.4.7
  │ ├─┬ debug@2.2.0
  │ │ └── ms@0.7.1
  │ ├─┬ engine.io@1.6.10
  │ │ ├─┬ accepts@1.1.4
  │ │ │ ├─┬ mime-types@2.0.14
  │ │ │ │ └── mime-db@1.12.0
  │ │ │ └── negotiator@0.4.9
  │ │ ├── base64id@0.1.0
  │ │ ├─┬ debug@2.2.0
  │ │ │ └── ms@0.7.1
  │ │ ├─┬ engine.io-parser@1.2.4
  │ │ │ ├── after@0.8.1
  │ │ │ ├── arraybuffer.slice@0.0.6
  │ │ │ ├── base64-arraybuffer@0.1.2
  │ │ │ ├── blob@0.0.4
  │ │ │ ├─┬ has-binary@0.1.6
  │ │ │ │ └── isarray@0.0.1
  │ │ │ └── utf8@2.1.0
  │ │ └─┬ ws@1.0.1
  │ │   ├── options@0.0.6
  │ │   └── ultron@1.0.2
  │ ├─┬ has-binary@0.1.7
  │ │ └── isarray@0.0.1
  │ ├─┬ socket.io-adapter@0.4.0
  │ │ ├─┬ debug@2.2.0
  │ │ │ └── ms@0.7.1
  │ │ └─┬ socket.io-parser@2.2.2
  │ │   ├── debug@0.7.4
  │ │   ├── isarray@0.0.1
  │ │   └── json3@3.2.6
  │ ├─┬ socket.io-client@1.4.6
  │ │ ├── backo2@1.0.2
  │ │ ├── component-bind@1.0.0
  │ │ ├── component-emitter@1.2.0
  │ │ ├─┬ debug@2.2.0
  │ │ │ └── ms@0.7.1
  │ │ ├─┬ engine.io-client@1.6.9
  │ │ │ ├── component-inherit@0.0.3
  │ │ │ ├─┬ debug@2.2.0
  │ │ │ │ └── ms@0.7.1
  │ │ │ ├── has-cors@1.1.0
  │ │ │ ├── parsejson@0.0.1
  │ │ │ ├── parseqs@0.0.2
  │ │ │ ├── xmlhttprequest-ssl@1.5.1
# ======================== Elasticsearch Configuration =========================
#
# NOTE: Elasticsearch comes with reasonable defaults for most settings.
#       Before you set out to tweak and tune the configuration, make sure you
#       understand what are you trying to accomplish and the consequences.
#
# The primary way of configuring a node is via this file. This template lists
# the most important settings you may want to configure for a production cluster.
#
# Please consult the documentation for further information on configuration options:
# https://www.elastic.co/guide/en/elasticsearch/reference/index.html
#
# ---------------------------------- Cluster -----------------------------------
#
# Use a descriptive name for your cluster:
#
#cluster.name: my-application
#
# ------------------------------------ Node ------------------------------------
#
# Use a descriptive name for the node:
#
#node.name: node-1
#
# Add custom attributes to the node:
#
#node.attr.rack: r1
#
# ----------------------------------- Paths ------------------------------------
#
# Path to directory where to store the data (separate multiple locations by comma):
#
#path.data: /path/to/data
#
# Path to log files:
#
#path.logs: /path/to/logs
#
# ----------------------------------- Memory -----------------------------------
"config/elasticsearch.yml" 88L, 2853C
# Set the bind address to a specific IP (IPv4 or IPv6):
  │ │ │ └── yeast@0.1.2
  │ │ ├── indexof@0.0.1
  │ │ ├── object-component@0.0.3
  │ │ ├─┬ parseuri@0.0.4
  │ │ │ └─┬ better-assert@1.0.2
  │ │ │   └── callsite@1.0.0
  │ │ └── to-array@0.1.4
  │ └─┬ socket.io-parser@2.2.6
  │   ├── benchmark@1.0.0
  │   ├── component-emitter@1.1.2
  │   ├─┬ debug@2.2.0
  │   │ └── ms@0.7.1
  │   ├── isarray@0.0.1
  │   └── json3@3.3.2
  ├─┬ tmp@0.0.28
  │ └── os-tmpdir@1.0.2
  └─┬ useragent@2.3.0
    └─┬ lru-cache@4.1.1
      ├── pseudomap@1.0.2
      └── yallist@2.1.2

npm WARN elasticsearch-head@0.0.0 license should be a valid SPDX license expression
CorningSunMac:elasticsearch-head corning$  npm run start

> elasticsearch-head@0.0.0 start /Users/corning/local/elastic/elasticsearch-head
> grunt server

Running "connect:server" (connect) task
Waiting forever...
Started connect web server on http://localhost:9100
^C
CorningSunMac:elasticsearch-head corning$ cd ../elasticsearch-6.2.2
CorningSunMac:elasticsearch-6.2.2 corning$ ls
LICENSE.txt	NOTICE.txt	README.textile	bin		config		data		lib		logs		modules		plugins
CorningSunMac:elasticsearch-6.2.2 corning$ vi config/elasticsearch.yml
CorningSunMac:elasticsearch-6.2.2 corning$ ./bin/elasticsearch -d
CorningSunMac:elasticsearch-6.2.2 corning$ Java HotSpot(TM) 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
cd ..
CorningSunMac:elastic corning$ ls
elasticsearch-6.2.2		elasticsearch-6.2.2.tar.gz	elasticsearch-head
CorningSunMac:elastic corning$ cd elasticsearch-head/
CorningSunMac:elasticsearch-head corning$ npm run start

> elasticsearch-head@0.0.0 start /Users/corning/local/elastic/elasticsearch-head
> grunt server

Running "connect:server" (connect) task
Waiting forever...
Started connect web server on http://localhost:9100