背景:

  本项目的服务器是内网环境,没有网络,因此需要在离线的环境中,安装head服务。

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

需要用到的安装包有:

  • node的安装包
  • elasticsearch的head插件源码

说明:此次只讲述为elasticsearch安装head服务,不讲述elasticsearch的安装过程。

部署过程:

  1、从node官网下载node for Linux的安装包和node for windows安装包

  (说明:由于不能服务器上网,因此不能再服务器上使用npm install命令,所以要有一台能上网的电脑,我的是Windows的,读者的是什么版本的就下载相应版本的node,用来获取node_modules)。
  2、在windows上安装node环境,和其他软件安装一样,不再赘述。
  3、将node安装包上传到服务器上的安装目录,解压缩。(node官网给的安装包为tar.xz包,其解压命令为:tar -xJf ****.tar.xz)
  4、将node命令、npm命令添加到/usr/local/bin目录中

ln -s ${node安装目录}/bin/node /usr/local/bin/node
ln -s ${node安装目录}/bin/npm /usr/local/bin/npm

  5、测试node分别在Linux和Windows上安装成功

node -v
npm -v 

  6、如果不成功,就重新安装;如果成功,那么就需要安装grunt的环境了。
  7、在Windows安装grunt环境:
    ① 在cmd中使用npm安装grunt

npm install -g grunt

    ② 使用npm 安装grunt-cli

npm install -g grunt-cli

  8、下载head服务的源码包
    在head的github上下载head的源码
    解压,然后进入解压后的目录,进入cmd命令行中
    然后进行依赖安装:

npm install

  9、以上都成功后,找到npm下载的grunt、grunt-cli和elasticsearch-head的安装包
    grunt与grunt-cli的node_modules目录的位置:C:\Users\wei\AppData\Roaming\npm。将这个目录下的grunt和grunt-cli打包上传到服务器上

    然后,将grunt/bin/grunt命令软连接到/usr/local/bin/grunt,然后将node_modules在/usr/local和/usr/lib两个目录做指向的链接

    其次是elasticsearch-head的安装目录的位置是自己指定的。可以将elasticsearch-head全部打包上传到服务器的elasticsearch的plugins目录中。

ln -s /opt/grunt/bin/grunt
ln -s /opt/grunt/node_modules /usr/lib/node_modules
ln -s /opt/grunt/node_modules /usr/bin/node_modules

  10、修改elasticsearch-head目录中的Gruntfile.js文件(connect的key下)

第93行 添加 hostname: 'ip地址' 
第94行 修改端口号(避免和ES的端口号冲突)

  11、修改elasticsearch-head目录下的_site目录中的app .js文件

第4354行 this.base_url 的地址修改为http://IP地址:端口号。   # 这个端口号和Gruntfile.js设置的端口号一样

  12、修改elasticsearch目录下config目录中的elasticsearch.yml文件
    如果没有,就添加上,如果有,核实是否一样:

http.cors.enabled: true
http.cors.allow-origin: "*"

  13、启动head服务
  

grunt server &

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄