ES学习经历三,es集群部署
2018-02-02 14:06
851 查看
elasticsearch5.5多机集群配置
ELasticsearch 5.5要求JDK版本最低为1.8;
这里使用vmware配置了两台虚拟机,安装的centos系统 IP分别是 192.168.0.154 和 192.168.0.148 ;
使用xshell分别连接两台虚拟机。
192.168.0.154 的作为主节点。
配置集群之前
先把要加群集群的节点的里的data目录下的Node目录 删除,否则集群建立会失败。
分别修改两个elasticsearch.yml配置文件:
cluster.name:
my-application //唯一的,前面是key,后面的value,value默认即可,有需求也可以修改
node.name:
node-1 //每台机器一个,主节点这里取node-1,第二台从节点取node-2即可
network.host:
192.168.0.154 //对外开放ip,写本机ip
http.port:
9200 //开放端口,测试使用,相同即可
discovery.zen.ping.unicast.hosts: ["192.168.0.154"] //设置哪个是主操作机器
//修改后先后启动es,主节点es必须先启动
[elastic@bogon data]$ sh /home/es/elasticsearch-5.5.2/bin/elasticsearch -d
//分别启动测试是否成功的head插件接口
[root@bogon elasticsearch-head]# npm run start
通过head插件可以看到,主节点是星号,从节点也是亮起的,不然就是灰色,并有未集群的说明。
//测试java连接es,操作数据
ELasticsearch 5.5要求JDK版本最低为1.8;
这里使用vmware配置了两台虚拟机,安装的centos系统 IP分别是 192.168.0.154 和 192.168.0.148 ;
使用xshell分别连接两台虚拟机。
192.168.0.154 的作为主节点。
配置集群之前
先把要加群集群的节点的里的data目录下的Node目录 删除,否则集群建立会失败。
分别修改两个elasticsearch.yml配置文件:
cluster.name:
my-application //唯一的,前面是key,后面的value,value默认即可,有需求也可以修改
node.name:
node-1 //每台机器一个,主节点这里取node-1,第二台从节点取node-2即可
network.host:
192.168.0.154 //对外开放ip,写本机ip
http.port:
9200 //开放端口,测试使用,相同即可
discovery.zen.ping.unicast.hosts: ["192.168.0.154"] //设置哪个是主操作机器
//修改后先后启动es,主节点es必须先启动
[elastic@bogon data]$ sh /home/es/elasticsearch-5.5.2/bin/elasticsearch -d
//分别启动测试是否成功的head插件接口
[root@bogon elasticsearch-head]# npm run start
通过head插件可以看到,主节点是星号,从节点也是亮起的,不然就是灰色,并有未集群的说明。
//测试java连接es,操作数据
package com.gcc.testDemo; import java.net.InetAddress; import org.elasticsearch.client.transport.TransportClient; import org.elasticsearch.common.settings.Settings; import org.elasticsearch.common.transport.InetSocketTransportAddress; import org.elasticsearch.transport.client.PreBuiltTransportClient; public class TestCon { private static String host="192.168.0.154"; private static int port=9300; public static final String CLUSTER_NAME="my-application"; private static Settings.Builder settings=Settings.builder().put("cluster.name",CLUSTER_NAME); public static void main(String[] args) throws Exception{ TransportClient client = new PreBuiltTransportClient(settings.build()) .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(host),port)); System.out.println(client); client.close(); } }
package com.gcc.testDemo; import java.net.InetAddress; import org.elasticsearch.action.dele 4000 te.DeleteResponse; import org.elasticsearch.action.get.GetResponse; import org.elasticsearch.action.index.IndexResponse; import org.elasticsearch.action.update.UpdateResponse; import org.elasticsearch.client.transport.TransportClient; import org.elasticsearch.common.settings.Settings; import org.elasticsearch.common.transport.InetSocketTransportAddress; import org.elasticsearch.common.xcontent.XContentType; import org.elasticsearch.transport.client.PreBuiltTransportClient; import com.google.gson.JsonObject; import org.junit.After; import org.junit.Before; import org.junit.Test; public class TestIndex { private static String host="192.168.0.154"; // 服务器地址 private static int port=9300; // 端口 public static final String CLUSTER_NAME="my-application"; // 集群名称 private static Settings.Builder settings=Settings.builder().put("cluster.name",CLUSTER_NAME); private TransportClient client=null; @SuppressWarnings({ "resource", "unchecked" }) @Before public void getCient()throws Exception{ client = new PreBuiltTransportClient(settings.build()) .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName(host),port)); } @After public void close(){ if(client!=null){ client.close(); } } /** * 创建索引 添加文档 * @throws Exception */ @Test public void testIndex()throws Exception{ JsonObject jsonObject=new JsonObject(); jsonObject.addProperty("name", "java编程思想"); jsonObject.addProperty("publishDate", "2012-11-11"); jsonObject.addProperty("price", 100); IndexResponse response=client.prepareIndex("book", "java", "1") .setSource(jsonObject.toString(), XContentType.JSON).get(); System.out.println("索引名称:"+response.getIndex()); System.out.println("类型:"+response.getType()); System.out.println("文档ID:"+response.getId()); System.out.println("当前实例状态:"+response.status()); } /** * 根据id获取文档 * @throws Exception */ @Test public void testGet()throws Exception{ GetResponse response=client.prepareGet("book", "java", "1").get(); System.out.println(response.getSourceAsString()); } /** * 根据id修改文档 * @throws Exception */ @Test public void testUpdate()throws Exception{ JsonObject jsonObject=new JsonObject(); jsonObject.addProperty("name", "java编程思想2"); jsonObject.addProperty("publishDate", "2012-11-12"); jsonObject.addProperty("price", 102); UpdateResponse response=client.prepareUpdate("book", "java", "1").setDoc(jsonObject.toString(), XContentType.JSON).get(); System.out.println("索引名称:"+response.getIndex()); System.out.println("类型:"+response.getType()); System.out.println("文档ID:"+response.getId()); System.out.println("当前实例状态:"+response.status()); } /** * 根据id删除文档 * @throws Exception */ @Test public void testDelete()throws Exception{ DeleteResponse response=client.prepareDelete("book", "java", "1").get(); System.out.println("索引名称:"+response.getIndex()); System.out.println("类型:"+response.getType()); System.out.println("文档ID:"+response.getId()); System.out.println("当前实例状态:"+response.status()); } }
相关文章推荐
- HyperV视频教程 Hyper-V 3.0基础快速入门学习+HyperV集群部署与创建
- Kubernetes学习2--集群部署与搭建
- hadoop学习记(1)--集群安装部署
- C# Hadoop学习笔记(三)—集群部署结构
- centos7 部署Elasticsearch单机/集群并安装head插件实现ES集群的可视化管理
- dubbo学习之dubbo管理控制台装配及集成zookeeper集群部署(1)【转】
- Kubernetes学习2--集群部署与搭建
- ES学习经历二,安装head插件
- Elasticsearch2.4学习(二)------Elasticsearch2.4.1集群部署及elasticsearch.yml配置
- Cassandra1.2文档学习(7)—— 规划集群部署
- 一脸懵逼学习Hadoop分布式集群HA模式部署(七台机器跑集群)
- 云计算学习总结(1)——PaaS云平台部署之在Centos7搭建Mesos+Zookeeper+Marathon+Docker单机集群
- RabbitMQ学习之集群部署
- Ubuntu下部署ES集群
- CentOS6.5下redis安装部署配置指南、常用命令、主从同步集群、redis-php学习资料整合详解
- dubbo学习之dubbo管理控制台装配及集成zookeeper集群部署(1)
- Spark Hadoop集群部署与Spark操作HDFS运行详解---Spark学习笔记10
- dubbo学习及集成zookeeper集群部署
- zookeeper学习与实战(二)集群部署
- dubbo学习及集成zookeeper集群部署