• ES基础(五十二)Hot & Warm 架构与 Shard Filtering


     

     

     

     

     

     

     

     

     

     

     

     

     

    课程代码

    # 标记一个 Hot 节点
    bin/elasticsearch  -E node.name=hotnode -E cluster.name=geektime -E path.data=hot_data -E node.attr.my_node_type=hot
    
    # 标记一个 warm 节点
    bin/elasticsearch  -E node.name=warmnode -E cluster.name=geektime -E path.data=warm_data -E node.attr.my_node_type=warm
    
    # 查看节点
    GET /_cat/nodeattrs?v
    
    # 配置到 Hot节点
    PUT logs-2019-06-27
    {
      "settings":{
        "number_of_shards":2,
        "number_of_replicas":0,
        "index.routing.allocation.require.my_node_type":"hot"
      }
    }
    
    
    
    PUT my_index1/_doc/1
    {
      "key":"value"
    }
    
    
    
    GET _cat/shards?v
    
    
    # 配置到 warm 节点
    PUT PUT logs-2019-06-27/_settings
    {  
      "index.routing.allocation.require.my_node_type":"warm"
    }
    
    
    # 标记一个 rack 1
    bin/elasticsearch  -E node.name=node1 -E cluster.name=geektime -E path.data=node1_data -E node.attr.my_rack_id=rack1
    
    # 标记一个 rack 2
    bin/elasticsearch  -E node.name=node2 -E cluster.name=geektime -E path.data=node2_data -E node.attr.my_rack_id=rack2
    
    PUT _cluster/settings
    {
      "persistent": {
        "cluster.routing.allocation.awareness.attributes": "my_rack_id"
      }
    }
    
    PUT my_index1
    {
      "settings":{
        "number_of_shards":2,
        "number_of_replicas":1
      }
    }
    
    PUT my_index1/_doc/1
    {
      "key":"value"
    }
    
    
    GET _cat/shards?v
    DELETE my_index1/_doc/1
    
    
    
    # Fore awareness
    # 标记一个 rack 1
    bin/elasticsearch  -E node.name=node1 -E cluster.name=geektime -E path.data=node1_data -E node.attr.my_rack_id=rack1
    
    # 标记一个 rack 2
    bin/elasticsearch  -E node.name=node2 -E cluster.name=geektime -E path.data=node2_data -E node.attr.my_rack_id=rack1
    
    
    PUT _cluster/settings
    {
      "persistent": {
        "cluster.routing.allocation.awareness.attributes": "my_rack_id",
        "cluster.routing.allocation.awareness.force.my_rack_id.values": "rack1,rack2"
      }
    }
    GET _cluster/settings
    
    # 集群黄色
    GET _cluster/health
    
    # 副本无法分配
    GET _cat/shards?v
    
    
    GET _cluster/allocation/explain?pretty
    # 标记一个 Hot 节点
    bin/elasticsearch  -E node.name=hotnode -E cluster.name=geektime -E path.data=hot_data -E node.attr.my_node_type=hot
    
    # 标记一个 warm 节点
    bin/elasticsearch  -E node.name=warmnode -E cluster.name=geektime -E path.data=warm_data -E node.attr.my_node_type=warm
    
    # 查看节点
    GET /_cat/nodeattrs?v
    
    # 配置到 Hot节点
    PUT logs-2019-06-27
    {
      "settings":{
        "number_of_shards":2,
        "number_of_replicas":0,
        "index.routing.allocation.require.my_node_type":"hot"
      }
    }
    
    
    
    PUT my_index1/_doc/1
    {
      "key":"value"
    }
    
    
    
    GET _cat/shards?v
    
    
    # 配置到 warm 节点
    PUT PUT logs-2019-06-27/_settings
    {  
      "index.routing.allocation.require.my_node_type":"warm"
    }
    
    
    # 标记一个 rack 1
    bin/elasticsearch  -E node.name=node1 -E cluster.name=geektime -E path.data=node1_data -E node.attr.my_rack_id=rack1
    
    # 标记一个 rack 2
    bin/elasticsearch  -E node.name=node2 -E cluster.name=geektime -E path.data=node2_data -E node.attr.my_rack_id=rack2
    
    PUT _cluster/settings
    {
      "persistent": {
        "cluster.routing.allocation.awareness.attributes": "my_rack_id"
      }
    }
    
    PUT my_index1
    {
      "settings":{
        "number_of_shards":2,
        "number_of_replicas":1
      }
    }
    
    PUT my_index1/_doc/1
    {
      "key":"value"
    }
    
    
    GET _cat/shards?v
    DELETE my_index1/_doc/1
    
    
    
    # Fore awareness
    # 标记一个 rack 1
    bin/elasticsearch  -E node.name=node1 -E cluster.name=geektime -E path.data=node1_data -E node.attr.my_rack_id=rack1
    
    # 标记一个 rack 2
    bin/elasticsearch  -E node.name=node2 -E cluster.name=geektime -E path.data=node2_data -E node.attr.my_rack_id=rack1
    
    
    PUT _cluster/settings
    {
      "persistent": {
        "cluster.routing.allocation.awareness.attributes": "my_rack_id",
        "cluster.routing.allocation.awareness.force.my_rack_id.values": "rack1,rack2"
      }
    }
    GET _cluster/settings
    
    # 集群黄色
    GET _cluster/health
    
    # 副本无法分配
    GET _cat/shards?v
    
    
    GET _cluster/allocation/explain?pretty

    本文来自博客园,作者:秋华,转载请注明原文链接:https://www.cnblogs.com/qiu-hua/p/14198143.html

  • 相关阅读:
    一个好用的,个人记事本应用,软件joplin
    aws EKS EFS 上安装mysql Operation notpermitted
    多变量的线性回归
    批量梯度下降BGD、随机梯度下降SGD和小批量梯度下降MBGD对比
    单变量线性回归
    数据库限制内存使用方法
    C# 调用 Excel 宏的方法
    Markdown 使用方法总结
    VBA注意事项
    将CSV文件中的数据导入到SQL Server 数据库中
  • 原文地址:https://www.cnblogs.com/qiu-hua/p/14198143.html
Copyright © 2020-2023  润新知