
# 自建Kibana如何对接CSS服务的Elasticsearch集群？
#### 约束限制
只有OSS版本的Kibana镜像支持对接CSS服务的Elasticsearch集群。
#### 操作步骤
1. 创建一个弹性云服务器ECS。
   - ECS需要和CSS服务的集群在同一个虚拟私有云中。
   
   - ECS选择的安全组需要开放5601端口。
   
   - ECS需要绑定弹性公网IP。
   
   
   操作指导请参见[购买ECS](https://support.huaweicloud.com/usermanual-ecs/ecs_03_7001.html)。
   
2. 获取CSS服务的Elasticsearch集群的访问地址。
   1. 登录[云搜索服务管理控制台](https://console.huaweicloud.com/elasticsearch/)。
   
   2. 在左侧导航栏，选择"集群管理 \> Elasticsearch"。
   
   3. 在集群列表，选择目标集群，在"内网访问地址"列获取并记录集群的内网地址，一般是"\<host\>:\<port\>"或"\<host\>:\<port\>,\<host\>:\<port\>"样式，例如"10.62.179.32:9200,10.62.179.33:9200"。 当集群中存在Client节点时，仅显示所有Client节点的IP和端口；否则，显示所有数据节点和冷数据节点的IP和端口。
      
    
3. 在ECS上安装Kibana，并修改配置文件"kibana.yml"。
   - 安全集群的配置文件示例如下：
     ```
     elasticsearch.username: "***"   //安全集群的用户名
     elasticsearch.password: "***"   //安全集群的密码
     elasticsearch.ssl.verificationMode: none
     server.ssl.enabled: false
     server.rewriteBasePath: false
     server.port: 5601
     logging.dest: /home/Ruby/log/kibana.log
     pid.file: /home/Ruby/run/kibana.pid
     server.host: 192.168.xxx.xxx   //Kibana服务器的IP地址或DNS名称，建议使用localhost
     elasticsearch.hosts: http://10.0.0.xxx:9200   //Elasticsearch集群的访问地址
     elasticsearch.requestHeadersWhitelist: ["securitytenant","Authorization"]
     opendistro_security.multitenancy.enabled: true
     opendistro_security.multitenancy.tenants.enable_global: true
     opendistro_security.multitenancy.tenants.enable_private: true
     opendistro_security.multitenancy.tenants.preferred: ["Private", "Global"]
     opendistro_security.multitenancy.enable_filter: false
     ```
     ![](https://support.huaweicloud.com/css_faq/public_sys-resources/caution_3.0-zh-cn.png)
     访问安全模式的集群，还需要安装插件opendistro_security_kibana，详细请参考[security-kibana-plugin](https://github.com/opendistro-for-elasticsearch/security-kibana-plugin/tags?after=v1.3.0.0)。安装的插件版本需要和集群版本保持一致，通过GET _cat/plugins命令可以获取到集群安全插件的版本号。
     
   
   - 非安全集群的配置文件示例如下：
     ```
     server.port: 5601
     logging.dest: /home/Ruby/log/kibana.log
     pid.file: /home/Ruby/run/kibana.pid
     server.host: 192.168.xxx.xxx   //Kibana服务器的IP地址或DNS名称，建议使用localhost
     elasticsearch.hosts: http://10.0.0.xxx:9200   //Elasticsearch集群的访问地址
     ```
     
    
4. 通过本地浏览器访问ECS绑定的弹性公网IP，URL为"http://弹性公网IP:5601"，登录Kibana访问Elasticsearch集群。
 
