首页 文章 精选 留言 我的

精选列表

搜索[API],共10000篇文章
优秀的个人博客,低调大师

Elasticsearch API 使用指南(全)

1. 集群支持的选项 curl -XGET "http://172.0.0.52:9200/_cat" 2. 查看节点信息 curl -XGET "http://172.0.0.52:9200/_cat/nodes?v" 3. 查看master节点信息 curl -XGET "http://172.0.0.52:9200/_cat/master?v" 4.查看所有节点上的热点线程 curl -XGET "http://172.0.0.52:9200/_nodes/hot_threads" 5.查看有问题的分片或索引 curl -XGET "http://172.0.0.52:9200/_cluster/allocation/explain?pretty" 6.查看线程池设置 curl -XGET "http://172.0.0.52:9200/_nodes/thread_pool/" 7.统计全部信息 curl -XGET "http://172.0.0.52:9200/_cluster/stats?human&pretty" 8.查看集群状态 curl -XGET "http://172.0.0.52:9200/_cluster/health?pretty" 9.查看ES信息 curl -XGET "http://172.0.0.52:9200/" 10.获取所有索引的信息 curl -XGET "http://172.0.0.52:9200/_cat/indices?v&pretty" curl -XGET "http://172.0.0.52:9200/_cat/nodes?v" curl -XGET "http://172.0.0.52:9200/_cat/segments?v&h=shard,segment,size,size.memory" 11.获取所有文档数量 curl -XGET "http://172.0.0.52:9200/_count?pretty" -H 'Content-Type: application/json' -d' { "query": { "match_all": {} } }' 12. 查看集群的健康状态 green:所有功能都是完好的; yellow:所有数据是可用的,但是一些副本还没有被分配; red代表一些数据由于某些原因已经不可用。 注意,尽管一个集群是red状态,它仍然可以提供部分服务(比如,它会继续从可用的切片数据里搜索),但是在失去部分数据后,需要尽快去修复。 curl -XGET "http://172.0.0.52:9200/_cat/health?v" 13. 创建索引 test_one 索引名 pretty 参数表示输出格式良好的JSON响应(如果存在) curl -XPUT "http://172.0.0.52:9200/test_one?pretty" 14. 查看索引列表 curl -XGET "http://172.0.0.52:9200/_cat/indices?v" curl -XGET "http://172.0.0.52:9200/test_one" 15. 删除索引 根据索引名称删除 curl -XDELETE "http://172.0.0.52:9200/test_one?pretty" 可以一次删除多个索引(以逗号间隔)删除所有索引_all或通配符 * 16. 创建文档 向es中插入文档的时候,必须要指定一个类型(type) 16.1.使用PUT来创建文档,需要指定id 索引 index:test_one 类型 type:test_type _id:1 curl -XPUT "http://172.0.0.52:9200/test_one/test_type/1?pretty" -H 'Content-Type: application/json' -d' {"name": "ghl", "age": 24, "sex": "male"}' 16.2. 使用POST来创建文档,可以不指定id(不指定时随机生成id) curl -XPOST "http://172.0.0.52:9200/test_one/test_type?pretty" -H 'Content-Type: application/json' -d' {"name": "Jack"}' 17. 查看文档 curl -XGET "http://172.0.0.52:9200/test_one/test_type/1?pretty" 18. 替换文档 使用PUT并指定id时,es会使用新的文档替换原文档 curl -XPUT "http://172.0.0.52:9200/test_one/test_type/1?pretty" -H 'Content-Type: application/json' -d' {"name": "Jack"}' 19. 更新文档 curl -XPOST "http://172.0.0.52:9200/test_one/test_type/1/_update?pretty" -H 'Content-Type: application/json' -d' {"doc":{"name": "Lucy"}}' 20. 删除文档 curl -XDELETE "http://172.0.0.52:9200/test_one/test_type/1?pretty" 21. 索引的增删改查有一个类似的格式下: curl -XGET "http://172.0.0.52:9200/<Index>/<Type>/<ID>" REST Verb:REST风格的语法谓词; Node:节点ip; port:节点端口号,默认9200; Index:索引名; Type:索引类型; ID:操作对象的ID号; 22. 判断索引是否存在 curl -XHEAD "http://172.0.0.52:9200/test_one" 23. 查看索引模板 curl -XGET "http://172.0.0.52:9200/_template/template_1" curl -XGET "http://172.0.0.52:9200/_template/temp*" curl -XGET "http://172.0.0.52:9200/_template/template_1,template_2" curl -XGET "http://172.0.0.52:9200/_template" 24. 删除模板 curl -XDELETE "http://172.0.0.52:9200/_template/template_1" 25. 打开/关闭索引 curl -XPOST "http://172.0.0.52:9200/test_one/_close" curl -XPOST "http://172.0.0.52:9200/test_one/_open" curl -XGET "http://172.0.0.52:9200/_cat/indices?v" 26.查看索引状态信息 curl -XGET "http://172.0.0.52:9200/_stats" curl -XGET "http://172.0.0.52:9200/logstash-nginx-access-2019.08.07,test_one/_stats" 27.查看索引段信息 curl -XGET "http://172.0.0.52:9200/test_one/_segments" curl -XGET "http://172.0.0.52:9200/logstash-nginx-access-2019.08.07,test_one/_segments" curl -XGET "http://172.0.0.52:9200/_segments"

优秀的个人博客,低调大师

fabric8 API操作ConfigMap

ConfigMap用来保存key-value pair配置数据,数据可以在pod容器中挂载. 可以简单理解为Linux系统中的/etc目录,用来存储配置文件的目录。这里以将ConfigMap数据作为容器内配置文件举例. 本例中, ConfigMap挂载到容器后, 其每一个item会成为挂载目录下的一个文件, key为文件名, 文件内容是key对应的值. 前台UI如下: 添加ConfigMap内容: 点击保存, 将键值对数据以map方式传入后台, 构建ConfigMap对象并进行创建: 构建对象: /** * 构建ConfigMap对象 * @param ku8ConfigMap */ public void createConfigMap(Ku8ConfigMap ku8ConfigMap) { k8sAPIService.createConfigMap( ku8ConfigMap.getNamespace(), new ConfigMapBuilder() .withKind("ConfigMap") .withApiVersion("v1") .withNewMetadata() .withName(ku8ConfigMap.getName()) .withNamespace(ku8ConfigMap.getNamespace()) .endMetadata() .withData(ku8ConfigMap.getData()) .build() ); } 创建对象: /** * 创建ConfigMap * @param namespace * @param configMap * @return */ public ConfigMap createConfigMap(String namespace, ConfigMap configMap) { return getClient().configMaps().inNamespace(namespace).create(configMap); } Ku8ConfigMap实体如下: package com.***.entity; import javax.xml.bind.annotation.XmlRootElement; import java.io.Serializable; import java.util.Date; import java.util.Map; @XmlRootElement public class Ku8ConfigMap implements Serializable { private static final long serialVersionUID = -2929072646302058679L; private Integer configMapId; private String name; private Integer namespaceId; private Date createTime; private Date updateTime; private Map<String, String> data; private String namespace; public Integer getConfigMapId() { return configMapId; } public void setConfigMapId(Integer configMapId) { this.configMapId = configMapId; } public Integer getNamespaceId() { return namespaceId; } public void setNamespaceId(Integer namespaceId) { this.namespaceId = namespaceId; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Date getCreateTime() { return createTime; } public void setCreateTime(Date createTime) { this.createTime = createTime; } public Date getUpdateTime() { return updateTime; } public void setUpdateTime(Date updateTime) { this.updateTime = updateTime; } public Map<String, String> getData() { return data; } public void setData(Map<String, String> data) { this.data = data; } public String getNamespace() { return namespace; } public void setNamespace(String namespace) { this.namespace = namespace; } } 在kubernetes集群查看ConfigMap创建结果: 创建Deployment时, 挂载ConfigMap: 后端操作: // 遍历需要挂载的ConfigMap列表 for (VolumeDto confMap : ku8ConfMapArray) { ConfigMap f8ConfigMap = k8sAPIService.getConfigMapByName(namespace, confMap.getName()); if (f8ConfigMap == null) { throw new BusinessException("cant find configMap:" + confMap.getName()); } for (Container f8Container : f8Containers) { // 遍历需要创建的容器 List<VolumeMount> f8VolumeMounts = f8Container.getVolumeMounts(); if (f8VolumeMounts == null) { f8VolumeMounts = new ArrayList<VolumeMount>(); } // 在容器中挂载ConfigMap VolumeMount f8VolumeMount = new VolumeMountBuilder().withName(confMap.getName()).withMountPath(confMap.getPath()).build(); f8VolumeMounts.add(f8VolumeMount); f8Container.setVolumeMounts(f8VolumeMounts); } // 将ConfigMap挂载为pod的一个volume List<KeyToPath> f8KeyToPathList = new ArrayList<KeyToPath>(); f8ConfigMap.getData().forEach((k, v) -> f8KeyToPathList.add(new KeyToPathBuilder().withKey(k).withPath(k).build())); // key既为键名称又作为挂载结果的文件名称 Volume f8Volume = new VolumeBuilder().withName(confMap.getName()).withNewConfigMap().withName(confMap.getName()).withItems(f8KeyToPathList).endConfigMap().build(); f8Volumes.add(f8Volume); } 查看创建成功的pod: 查看 ConfigMap 挂载结果:

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册