zoukankan      html  css  js  c++  java
  • 【spark】elasticsearch自签证书,spark进行读写

    • 颁发自签证书

      1) 列出keystore中的证书

    keytool -list
    

      默认情况下,它会在你的 $HOME 目录下产生一个空的 .keystore 文件。如要指定 Java 正在用的 keystore 文件,使用以下参数

    keytool -list -keystore $JAVA_HOME/lib/security/cacerts
    

      注意一下, keystore 文件都受 密码 保护。生成新的 keystore 文件时,会要求你输入一个新密码;而当访问一个已有的 keystore 文件时,会要求你验证密码。  

      2) 获取es的http证书

    ./bin/elasticsearch-certutil cert --pem elastic-stack-ca.p12
    

     在certificate-bundle.zip中获取ca.crt 

    openssl s_client -connect google.com:443 < /dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ca.crt

      3) 导入证书

    keytool -import -alias <证书别名> -keystore $JAVA_HOME/jre/lib/security/cacerts -file ca.crt
    

      导入时会需要验证密码,默认密码见上面

      4) 保存keystore 用于程序使用

    • elasticsearch配置

      1) elasticsearch生成密钥

      执行./bin/elasticsearch-certutil ca 生成 elastic-stack-ca.p12

      执行 ./bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12 生成elastic-certificates.p12

      依次输入生成cert.zip的文件名,节点信息和IP,会在当前目录生成一个zip压缩包。指定

      将elastic-stack-ca.p12elastic-certificates.p12拷贝到config/certs

      修改config/elasticsearch.yml

    xpack.security.enabled: true
    xpack.security.transport.ssl.enabled: true
    xpack.security.transport.ssl.verification_mode: certificate
    xpack.security.transport.ssl.keystore.path: certs/elastic-certificates.p12
    xpack.security.transport.ssl.truststore.path: certs/elastic-certificates.p12
    xpack.monitoring.collection.enabled: true
    
    #启用https
    xpack.security.http.ssl.enabled: true
    xpack.security.http.ssl.keystore.path: certs/elastic-certificates.p12
    xpack.security.http.ssl.truststore.path: certs/elastic-certificates.p12 
    

      5) spark读取es

    val df = sparkSession.read
          .format("org.elasticsearch.spark.sql")
          .options(configMap)
          .load()
    

      其中options 为key-value的es 配置,参考es官方文档

      其中配置ssl: "es.net.ssl.truststore.location","es.net.ssl.truststore.pass"

     

      

  • 相关阅读:
    OpenCV 2.48配置
    win进入当前文件夹,启动当前文件夹的程序
    C++程序运行效率的10个简单方法
    银行国际清算业务平台架构
    股票证券交易系统架构分析与设计
    负载均衡|六种负载均衡算法
    Intelli IDEA快捷键(配合IdeaVim)(转)
    [易学易懂系列|golang语言|零基础|快速入门|(三)]
    [易学易懂系列|golang语言|零基础|快速入门|(二)]
    [易学易懂系列|golang语言|零基础|快速入门|(一)]
  • 原文地址:https://www.cnblogs.com/zhouwenyang/p/14164124.html
Copyright © 2011-2022 走看看