1、下载并安装ES的yum公钥
#rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch
二、yum安装ES
1、更新yum的缓存
# yum makecache
2、安装ES
# yum install elasticsearch
(注意:通过这种方式式安装 config 不在elasticsearch下 通过 非root用户启动可能报错 )
(我安装完后是在 /etc/elasticsearch和 /usr/share/elasticsearch 两个文件下 在/usr/share/elasticsearch 下新建 confg 后执行 cp /etc/elasticsearch/* /usr/share/elasticsearch/config)
安装成功后启动
Root 用户
service elasticsearch start
其他用户
Elasticsearch目录下 ./bin/elasticsearch
要通过 其他电脑访问 修改 config 下elasticsearch.yml
在最下面添加
集群名称 (cluster.name 前加空格 :后加空格)
cluster.name: elasticsearch
network.host:--本台电脑ip--
head 插件安装
bin目录下 ./plugin install mobz/elasticsearch-head
java 客户端建索引
/**
* 测试插入索引的功能
* @param args
*/
public static void main(String[] args) {
try {
//创建集群名称 cluster.name值要与elasticsearch.yml 中的相对应
Settings settings = Settings.settingsBuilder().put("cluster.name","my-application")
.put("client.transport.sniff", true).build();
// 创链接
Client client = TransportClient.builder().settings(settings).build()
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("192.168.7.2"), 9300));
List<String> jsonData = DataFactory.getInitJsonData();
String json = "{" +
"\"user\":\"kimchy\"," +
"\"postDate\":\"2013-01-30\"," +
"\"message\":\"trying out Elasticsearch\"" +
"}";
for (int i = 0; i < jsonData.size(); i++) {
IndexResponse response = client.prepareIndex("twitter", "tweet").setSource(json).get();
System.out.println("成功创建了一个索引,索引名为:"+response.getIndex()+",类别为:"+response.getType()+",文档ID为:"+response.getId());
}
// 关闭client
client.close();
} catch (Exception e) {
e.printStackTrace();
}
}