1. # 系统参数修改
    2. echo 'vm.max_map_count=262144' >> /etc/sysctl.conf
    3. echo 'vm.swappiness=1' >> /etc/sysctl.conf
    4. sysctl -p
    5. # 创建临时目录,下载es,解压到安装目录
    6. mkdir -p ~/mdtemp/
    7. cd ~/mdtemp/
    8. wget http://pdpublic.mingdao.com/private-deployment/offline/common/elasticsearch-7.10.2.tar.gz
    9. tar xf elasticsearch-7.10.2-linux-x86_64.tar.gz -C /usr/local
    10. mv /usr/local/elasticsearch-7.10.2 /usr/local/elasticsearch
    11. # 修改配置文件
    12. cat > /usr/local/elasticsearch/config/elasticsearch.yml <<EOF
    13. node.name: elasticsearch-1 #节点标识,唯一,其他节点需要修改
    14. node.roles:
    15. - master
    16. - data
    17. network.host: 0.0.0.0
    18. network.publish_host: 188.102.17.245 # 本机IP
    19. http.port: 9200
    20. transport.port: 9300
    21. path.data:
    22. - /data/elasticsearch/data
    23. cluster.initial_master_nodes:
    24. - elasticsearch-1
    25. http.cors.enabled: true
    26. http.cors.allow-origin: "*"
    27. xpack.security.enabled: true
    28. xpack.license.self_generated.type: basic
    29. xpack.security.transport.ssl.enabled: true
    30. xpack.security.transport.ssl.verification_mode: certificate
    31. xpack.security.transport.ssl.keystore.path: elastic-certificates.p12 # 证书的相对路径,也可修改为绝对路径
    32. xpack.security.transport.ssl.truststore.path: elastic-certificates.p12 # 证书的相对路径,也可修改为绝对路径
    33. EOF
    34. #生成证书
    35. /usr/local/elasticsearch/bin/elasticsearch-certutil cert -out /usr/local/elasticsearch/config/elastic-certificates.p12 -pass ""
    36. #创建es用户、数据存储目录
    37. useradd -M -s /sbin/nologin elasticsearch
    38. mkdir -p /data/elasticsearch/data/
    39. #安装插件
    40. su elasticsearch -s /bin/bash -c '/usr/local/elasticsearch/bin/elasticsearch-plugin install http://pdpublic.mingdao.com/private-deployment/offline/common/elasticsearch-analysis-ik-7.10.2.zip'
    41. #授权
    42. chown -R elasticsearch.elasticsearch /usr/local/elasticsearch /data/elasticsearch/
    43. #配置systemd管理
    44. cat > /etc/systemd/system/elasticsearch.service <<EOF
    45. [Unit]
    46. Description=Elasticsearch
    47. [Service]
    48. User=elasticsearch
    49. Group=elasticsearch
    50. LimitNOFILE=65536
    51. LimitNPROC=65536
    52. ExecStart=/usr/local/elasticsearch/bin/elasticsearch
    53. ExecStop=/usr/bin/kill \$MAINPID
    54. Restart=on-failure
    55. [Install]
    56. WantedBy=multi-user.target
    57. EOF
    58. #启动es
    59. systemctl start elasticsearch
    60. systemctl enable elasticsearch
    61. #设置密码,交互式设置,密码在终端不可见,每个用户的密码都要二次输入确认,elastic用户为es的管理用户。
    62. /usr/local/elasticsearch/in/elasticsearch-setup-passwords interactive