国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

elasticSearch+kibana+logstash+filebeat集群改成https認證

這篇具有很好參考價值的文章主要介紹了elasticSearch+kibana+logstash+filebeat集群改成https認證。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、生成相關證書

ps:主節(jié)點操作

  1. 切換用戶:su es

  2. 進入目錄:cd /home/es/elasticsearch-7.6.2

  3. 創(chuàng)建文件:vi instances.yml

    instances:
      - name: "master" 
        ip: 
          - "192.168.248.10"
      - name: "slave1"
        ip:
          - "192.168.248.11"
      - name: "slave2"
        ip:
          - "192.168.248.12"
      - name: "kibana"
        ip:
          - "192.168.248.10"
      - name: "logstash"
        ip:
          - "192.168.248.10"   
      - name: "filebeat"
        ip:
          - "192.168.248.10"   
    
  4. 生成證書:/home/es/elasticsearch-7.6.2/bin/elasticsearch-certutil cert ca --pem --in instances.yml --out certs.zip

  5. 解壓得到各個證書:unzip certs.zip

二、配置elasticSearh

ps:三個節(jié)點

  1. 切換用戶:su es

  2. 將解壓得到的三個文件夾文件拷貝到各個節(jié)點的/home/es/elasticsearch-7.6.2/config下,如master節(jié)點:ca.crt、master.crt、master.key

  3. 三個節(jié)點配置,末尾添加配置:vi /home/es/elasticsearch-7.6.2/config/elasticsearch.yml
    ps1:根據(jù)名字配置master和slave1和slave2
    ps2:如果之前配置過密碼,需要將密碼的配置先移除

    xpack.security.http.ssl.enabled: true
    xpack.security.http.ssl.key: master.key
    xpack.security.http.ssl.certificate: master.crt
    xpack.security.http.ssl.certificate_authorities: ca.crt
    
    xpack.security.enabled: true
    xpack.security.transport.ssl.enabled: true
    xpack.security.transport.ssl.key: master.key
    xpack.security.transport.ssl.certificate: master.crt
    xpack.security.transport.ssl.certificate_authorities: ["ca.crt"]
    
  4. 如果是用root用戶拷貝的,記得賦權:chown -R es:es /home/es

  5. 啟動

    cd /home/es/elasticsearch-7.6.2/bin
    nohup /home/es/elasticsearch-7.6.2/bin/elasticsearch &
    
  6. 設置密碼:/home/es/elasticsearch-7.6.2/bin/elasticsearch-setup-passwords interactive

    ps1:可以統(tǒng)一設置一個密碼ffcsict123

    ps2:如果已經(jīng)設置過密碼了,可以忽略?;蛘咭部梢詣h除es的 .security-7 索引,重新執(zhí)行設置密碼的操作也可以

三、配置kibana

  1. 將kibana證書放到/home/es/kibana-7.6.2-linux-x86_64/config下:kibana.crt、ca.crt、kibana.key

  2. 配置:vi /home/es/kibana-7.6.2-linux-x86_64/config/kibana.yml

    # 修改
    elasticsearch.hosts: ["https://192.168.248.10:9200","https://192.168.248.11:9200","https://192.168.248.12:9200"]
    
    # 末尾添加
    # 這三個路徑寫成相對路徑會被錯,寫絕對路徑才行,不知道為啥
    server.ssl.enabled: true
    server.ssl.certificate: /home/es/kibana-7.6.2-linux-x86_64/config/kibana.crt
    server.ssl.key: /home/es/kibana-7.6.2-linux-x86_64/config/kibana.key
    elasticsearch.ssl.certificateAuthorities: ["/home/es/kibana-7.6.2-linux-x86_64/config/ca.crt"]
    
    elasticsearch.username: "kibana"
    elasticsearch.password: "ffcsict123"
    
  3. 如果是用root用戶拷貝的,記得賦權:chown -R es:es /home/es

  4. 啟動:nohup /home/es/kibana-7.6.2-linux-x86_64/bin/kibana &

  5. 訪問:https://192.168.248.10:5601
    elasticSearch+kibana+logstash+filebeat集群改成https認證,jenkins,運維

四、配置logstash

  1. 將logstash證書放到/home/es/logstash-7.6.2/config下:logstash.crt、ca.crt、logstash.key

  2. 修改配置文件:vi /home/es/logstash-7.6.2/config/logstash.yml

    xpack.monitoring.enabled: true
    xpack.monitoring.elasticsearch.username: logstash_system
    xpack.monitoring.elasticsearch.password: ffcsict123
    xpack.monitoring.elasticsearch.hosts: ["https://192.168.248.10:9200"]
    xpack.monitoring.elasticsearch.ssl.certificate_authority: "/home/es/logstash-7.6.2/config/ca.crt"
    
  3. 修改配置文件:vi /home/es/logstash-7.6.2/config/logstash-sample.conf

    output {
       elasticsearch {
        hosts => ["https://192.168.248.10:9200","https://192.168.248.11:9200","https://192.168.248.12:9200"]
        index => "testlog-%{+YYYY.MM.dd}"
        user => "elastic"
        password => "ffcsict123"
        ssl => true
        cacert => "/home/es/logstash-7.6.2/config/ca.crt"
       }
     }
    
  4. 啟動:nohup /home/es/logstash-7.6.2/bin/logstash -f /home/es/logstash-7.6.2/config/logstash-sample.conf &

五、配置filebeat

--------------------如果logstash不需要轉(zhuǎn)https,則可以忽略以下步驟-----------------

  1. 殺死logstash進程

  2. 將 logstash.key 轉(zhuǎn)換為 PKCS#8 格式

    cd /home/es/logstash-7.6.2/config
    openssl pkcs8 -in logstash.key -topk8 -nocrypt -out logstash.pkcs8.key
    
  3. 由于我們一個logstash服務,會有很多filebeat服務寫日志進來。如果將logstash改為https訪問,需要將所有涉及的filebeat都進行改配置。所以如果只是要求es改造為https,可以不改造logstash。如果需要改造,則修改配置文件:vi /home/es/logstash-7.6.2/config/logstash-sample.conf

    input {
      beats {
        port => 5044
        ssl => true
        ssl_certificate_authorities => ["/home/es/logstash-7.6.2/config/ca.crt"]
        ssl_certificate => "/home/es/logstash-7.6.2/config/logstash.crt"
        ssl_key => "/home/es/logstash-7.6.2/config/logstash.pkcs8.key"
        ssl_verify_mode => "force_peer"
      }
    }
    
  4. 啟動logstash:nohup /home/es/logstash-7.6.2/bin/logstash -f /home/es/logstash-7.6.2/config/logstash-sample.conf &

  5. 將filebeat證書放到/home/es/filebeat-7.6.2-linux-x86_64下:filebeat.crt、filebeat.crt、filebeat.key

  6. 配置filebeat:vi /home/es/filebeat-7.6.2-linux-x86_64/filebeat.yml

    output.logstash:
      hosts: ["192.168.248.10:5044"]
      ssl.certificate_authorities: ["/home/es/filebeat-7.6.2-linux-x86_64/ca.crt"]
      ssl.certificate: "/home/es/filebeat-7.6.2-linux-x86_64/filebeat.crt"
      ssl.key: "/home/es/filebeat-7.6.2-linux-x86_64/filebeat.key"
    
  7. 啟動:nohup /home/es/filebeat-7.6.2-linux-x86_64/filebeat -e -c /home/es/filebeat-7.6.2-linux-x86_64/filebeat.yml &文章來源地址http://www.zghlxwxcb.cn/news/detail-697881.html

六、連接https es的java api

import org.apache.http.HttpHost;
import org.apache.http.auth.AuthScope;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.client.CredentialsProvider;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.conn.ssl.NoopHostnameVerifier;
import org.apache.http.impl.client.BasicCredentialsProvider;
import org.apache.http.impl.nio.client.HttpAsyncClientBuilder;
import org.apache.http.ssl.SSLContextBuilder;
import org.apache.http.ssl.SSLContexts;
import org.elasticsearch.action.admin.indices.alias.get.GetAliasesRequest;
import org.elasticsearch.client.*;
import org.elasticsearch.cluster.metadata.AliasMetadata;
import org.springframework.core.io.ClassPathResource;

import javax.net.ssl.SSLContext;
import java.io.IOException;
import java.io.InputStream;
import java.security.KeyStore;
import java.security.cert.Certificate;
import java.security.cert.CertificateFactory;
import java.util.*;

/**
 * @author 天真熱
 * @create 2023-09-02 20:25
 * @desc
 **/
public class elkDemo {
    public static String ip = "192.168.248.10";
    public static String port = "9200";
    public static String esUsername = "elastic";
    public static String esPassword = "ffcsict123";

    public static void main(String[] args) throws IOException {
        {

            RestHighLevelClient clinet = getConnection();
            List<Map<String, Object>> indexs = getIndex(clinet);
            System.out.println(indexs);
        }
    }

    /**
     * 創(chuàng)建鏈接
     * @return
     */
    public static RestHighLevelClient getConnection() {
        // 創(chuàng)建憑據(jù)提供程序
        final CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
        credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(esUsername, esPassword));


        RestClientBuilder http = RestClient.builder(new HttpHost(ip, Integer.parseInt(port), "https"))
                .setRequestConfigCallback(new RestClientBuilder.RequestConfigCallback() {
                    @Override
                    public RequestConfig.Builder customizeRequestConfig(RequestConfig.Builder requestConfigBuilder) {
                        requestConfigBuilder.setConnectTimeout(700000);
                        requestConfigBuilder.setSocketTimeout(600000);
                        requestConfigBuilder.setConnectionRequestTimeout(100000);
                        return requestConfigBuilder;
                    }
                }).setHttpClientConfigCallback(new RestClientBuilder.HttpClientConfigCallback() {
                    @Override
                    public HttpAsyncClientBuilder customizeHttpClient(HttpAsyncClientBuilder httpAsyncClientBuilder) {
                        return httpAsyncClientBuilder.setSSLContext(buildSSLContext())
                                .setSSLHostnameVerifier(NoopHostnameVerifier.INSTANCE).setDefaultCredentialsProvider(credentialsProvider);
                    }
                });
        return new RestHighLevelClient(http);
    }

    /**
     * 獲取所有索引
     */
    public static List<Map<String, Object>> getIndex(RestHighLevelClient esHighInit) throws IOException {
        List<Map<String, Object>> resultList = new ArrayList();
        GetAliasesRequest request = new GetAliasesRequest();
        GetAliasesResponse alias = esHighInit.indices().getAlias(request, RequestOptions.DEFAULT);
        Map<String, Set<AliasMetadata>> map = alias.getAliases();
        map.forEach((k, v) -> {
            if (!k.startsWith(".")) {//忽略elasticesearch 默認的
                Map map1 = new HashMap();
                map1.put("indexName", k);
                resultList.add(map1);
            }
        });

        return resultList;
    }


    /**
     * 創(chuàng)建證書驗證
     * @return
     */
    private static SSLContext buildSSLContext() {
        ClassPathResource resource = new ClassPathResource("master.crt");

        SSLContext sslContext = null;
        try {
            CertificateFactory factory = CertificateFactory.getInstance("X.509");
            Certificate trustedCa;
            try (InputStream is = resource.getInputStream()) {
                trustedCa = factory.generateCertificate(is);
            }
            KeyStore trustStore = KeyStore.getInstance("pkcs12");
            trustStore.load(null, null);
            trustStore.setCertificateEntry("ca", trustedCa);
            SSLContextBuilder sslContextBuilder = SSLContexts.custom()
                    .loadTrustMaterial(trustStore, null);
            sslContext = sslContextBuilder.build();
        } catch (Exception e) {
            e.printStackTrace();
        }

        return sslContext;
    }
}

到了這里,關于elasticSearch+kibana+logstash+filebeat集群改成https認證的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 基于Elasticsearch+Logstash+Kibana+Filebeat的日志收集分析及可視化

    基于Elasticsearch+Logstash+Kibana+Filebeat的日志收集分析及可視化

    sudo rm /var/lib/dpkg/lock* sudo dpkg --configure -a apt update tail -f /var/log/car.log 海量的業(yè)務應用,也帶來了海量的日志數(shù)據(jù),給業(yè)務應用的運維帶來了新的挑戰(zhàn)。例如,我們常用的網(wǎng)約車應用,單個平臺的日訂單數(shù)量可以達到上億條,產(chǎn)生各種類型的日志數(shù)據(jù),像用戶業(yè)務方面會產(chǎn)生交

    2024年01月21日
    瀏覽(24)
  • ELKF日志系統(tǒng)搭建部署教程:從零開始構建Elasticsearch + Logstash + Filebeat + Kibana

    ELKF日志系統(tǒng)搭建部署教程:從零開始構建Elasticsearch + Logstash + Filebeat + Kibana

    學習如何從頭開始搭建和部署ELKF日志系統(tǒng),利用Elasticsearch、Logstash、Filebeat和Kibana來實現(xiàn)高效的數(shù)據(jù)采集、處理和可視化展示。跟隨本教程,輕松構建穩(wěn)定的日志系統(tǒng)。

    2024年02月05日
    瀏覽(21)
  • docker搭建最新ELFK分布式日志收集系統(tǒng)(elasticsearch+logstash+filebeats+kibana7.16.1)

    docker搭建最新ELFK分布式日志收集系統(tǒng)(elasticsearch+logstash+filebeats+kibana7.16.1)

    隨著分布式項目的集群部署,日志的存儲也分散開來,在日后出現(xiàn)問題進行日志定位時就會出現(xiàn)很困難,服務器很多會做負載均衡,這樣最終請求所落在的服務器也隨機起來,所以好的方式就是集中收集起來,不需要一臺一臺服務器去查,方便查看。 ELFK是Elasticsearch+Logstash+F

    2024年02月08日
    瀏覽(29)
  • 使用Docker安裝ELK(Elasticsearch+Logstash+Kibana)+filebeat____基于CentOS7.9

    使用Docker安裝ELK(Elasticsearch+Logstash+Kibana)+filebeat____基于CentOS7.9

    目錄 一、安裝JDK 二、部署Elasticsearch 三、部署kibana 四、部署Logstash 五、部署filebeat 六、filebeat采集數(shù)據(jù),logstash過濾,在kibana中顯示 七、kibana增加索引 1、更新系統(tǒng) 2、安裝Java 下面是安裝OpenJDK的命令: 3、驗證安裝 1、查看是否安裝docker 安裝最新版的docker可能導致部分系統(tǒng)不

    2024年02月04日
    瀏覽(27)
  • Docker 安裝 Elasticsearch8.8.2\kibana8.8.2\Logstash8.8.2\Filebeat:8.8.2[親測可用]

    Docker 安裝 Elasticsearch8.8.2\kibana8.8.2\Logstash8.8.2\Filebeat:8.8.2[親測可用]

    (注:安裝ELK8.4.3,Java版本必須是java17JDK) 一、Elasticsearch8.8.2部署 1、下載elasticsearch鏡像: docker pull docker.elastic.co/elasticsearch/elasticsearch:8.8.2 2、創(chuàng)建docker網(wǎng)絡: docker network create --driver bridge --subnet 172.18.0.0/16 elastic 3、創(chuàng)建Elasticsearch掛載目錄 mkdir -p /usr/elk8.8.2/elasticsearch 4、給創(chuàng)

    2024年02月01日
    瀏覽(20)
  • 【微服務】日志搜集es+kibana+filebeat+redis+logstash(單機)

    【微服務】日志搜集es+kibana+filebeat+redis+logstash(單機)

    日志搜集系統(tǒng)搭建 基于7.17.16版本 ps: 項目是toB的,日志量不大 7.17.16版本。8.x版本需要JDK11 java8 elastic 軟件不能以root用戶啟動,需要創(chuàng)建用戶 redis elasticsearch kibana logstash filebeat 下載tar包,解壓即可 es部署 配置ES_JAVA_HOME 略 elasticsearch.yml 修改config/elasticsearch.yml中參數(shù) 系統(tǒng)參數(shù)

    2024年01月16日
    瀏覽(77)
  • 使用ELK(ES+Logstash+Filebeat+Kibana)收集nginx的日志

    使用ELK(ES+Logstash+Filebeat+Kibana)收集nginx的日志

    書接上回:《ELK中Logstash的基本配置和用法》 默認情況下,Nginx的日志記錄的是下面的格式: 在 nginx.conf 中也可以看到相關配置信息: 現(xiàn)在為了方便收集日志,我們把這里的格式改為 json格式,在 nginx.conf 中加入下面的內(nèi)容: 以上配置是手動組裝了一個json格式的配置信息。

    2024年02月11日
    瀏覽(23)
  • 【圖文詳解】Docker搭建 ELK Stack (elk) [使用es-logstash-filebeat-kibana]

    【圖文詳解】Docker搭建 ELK Stack (elk) [使用es-logstash-filebeat-kibana]

    ????????如果您對 elk 還不了解,那么可以先直戳下方官方鏈接,官方通過圖形化界面很形象地介紹了elk stack(Elastic? Stack)。 ?ELK Stack:Elasticsearch 的開發(fā)者傾心打造 | Elastic 本文使用軟件(centos7,moba) | 拉取es鏡像 || 拉取kibana鏡像? ||| 拉取logstash鏡像 |||| 拉取filebeat鏡

    2023年04月08日
    瀏覽(28)
  • ELK集群部署---LogStash,F(xiàn)ilebeat的部署

    1.? 環(huán)境規(guī)劃: 主機名 IP地址 角色 node1 192.168.56.111 ElasticSearch(master) Zookeeper Kafka node2 192.168.56.112 ElasticSearch(slave) Kibana Zookeeper Kafka node3 192.168.56.113 ElasticSearch(slave) Zookeeper Kafka node4 192.168.56.114 Logstash Filebeat

    2023年04月18日
    瀏覽(30)
  • k8s部署Elasticsearch集群+Kibana方案--開啟X-Pack 安全認證

    k8s部署Elasticsearch集群+Kibana方案--開啟X-Pack 安全認證

    本文中使用 StatefulSet 方式部署 Elasticsearch 集群,并且開啟X-Pack 安全認證,存儲使用的是NFS,屬于一個初學者自己探索的方案,如果有比較好的方案,還請不吝評論賜教。 版本說明: Kubernetes v1.25.6 – v1.26.4 Elasticsearch, Kibana 7.13.3 NFS Subdir External Provisioner 前置環(huán)境 需要安裝好

    2024年02月11日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包