使用ansible 部署es集群 中有五台机器 安装包在 管理主机上 请给出代码示例
时间: 2024-05-25 10:19:42 浏览: 244
以下是使用 Ansible 部署 ES 集群的示例代码:
1. 创建一个名为 es_cluster 的目录,用于存放 Ansible 相关文件。
2. 在 es_cluster 目录下创建一个名为 hosts 的文件,用于指定要部署 ES 集群的机器。
[es_nodes]
node1 ansible_host=192.168.1.1
node2 ansible_host=192.168.1.2
node3 ansible_host=192.168.1.3
node4 ansible_host=192.168.1.4
node5 ansible_host=192.168.1.5
3. 在 es_cluster 目录下创建一个名为 es.yml 的文件,用于定义 Ansible playbook。
---
- hosts: es_nodes
become: true
tasks:
- name: Install Java
apt:
name: openjdk-8-jdk
state: present
tags: java
- name: Install Elasticsearch
apt:
deb: https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.5.2-amd64.deb
state: present
tags: elasticsearch
- name: Configure Elasticsearch
copy:
src: elasticsearch.yml
dest: /etc/elasticsearch/elasticsearch.yml
owner: elasticsearch
group: elasticsearch
mode: 0644
tags: elasticsearch
4. 在 es_cluster 目录下创建一个名为 elasticsearch.yml 的文件,用于定义 ES 配置文件。
cluster.name: my_cluster
node.name: "{{ inventory_hostname }}"
network.host: 0.0.0.0
discovery.seed_hosts: ["node1", "node2", "node3", "node4", "node5"]
cluster.initial_master_nodes: ["node1"]
5. 使用以下命令运行 Ansible playbook:
ansible-playbook es.yml -i hosts --tags java,elasticsearch
这将安装 Java 和 Elasticsearch,并将 Elasticsearch 配置文件复制到每个节点上。
希望这个示例能够帮助到您!
阅读全文