网站首页 > 开源技术 正文
kibana是ELK技术栈的可视化解决方案,它提供了可见即所得的页面生成功能。用现在时髦的话说就是低代码可视化开发。但是我们拖拽生成好页面后,如何嵌入或是集成到自己的系统中呢?今天给大家演示2种方法,希望能帮助大家少走弯路。由于kibana数据是从elasticsearch里面获取的,为了演示方便,我们先启动elasticsearch.
- 创建网络
docker network create elastic
2.启动elasticsearch
docker run -d --name es01-test --net elastic -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e "xpack.security.enabled=true" -v /root/elk/elastic-data:/usr/share/elasticsearch/data docker.elastic.co/elasticsearch/elasticsearch:7.16.2
匿名方式:
- 制作证书,具体的制作命令在下面会列出。
- 配置kibana.yml,下面会列出完整的内容。其中xpack.security.sameSiteCookies:"None"。允许浏览器在一个第三方网站中使用iframe嵌入kibana的网页。这个非常重要,又由于iframe必须嵌入https协议的网站,所以配置用到了上面制作的证书。
- 启动kibana容器
docker run --name kib01-test -d --net elastic -p 5601:5601 -v /root/elk/server:/root/elk/server -v /root/elk/kibana.yml:/usr/share/kibana/config/kibana.yml -e "ELASTICSEARCH_HOSTS=http://es01-test:9200" -e "ELASTICSEARCH_USERNAME=kibana_system" -e "ELASTICSEARCH_PASSWORD=CC352132" docker.elastic.co/kibana/kibana:7.16.2
4.登录获取匿名登录的嵌入代码,将相关iframe代码放到自有系统的页面中即可。
kibana配置
#
# ** THIS IS AN AUTO-GENERATED FILE **
#
# Default Kibana configuration for docker target
server.host: "0.0.0.0"
server.shutdownTimeout: "5s"
elasticsearch.hosts: [ "http://elasticsearch:9200" ]
monitoring.ui.container.elasticsearch.enabled: true
server.ssl.enabled: true
server.ssl.key: /root/elk/server/server.key
server.ssl.certificate: /root/elk/server/server.crt
csp.rules: ["frame-src 'self' https://naturalcycles.com/"]
xpack.security.sameSiteCookies: "None"
xpack.security.authc.providers:
basic.basic1:
order: 0
anonymous.anonymous1:
order: 1
credentials:
username: "elastic"
password: "CC352132"
证书制作
Generate CA and self-signed certificates
openssl genrsa -des3 -out ca.key 2048
openssl req -sha256 -new -x509 -days 365 -key ca.key -out ca.crt \ -subj "/C=CN/ST=GD/L=SZ/O=lee/OU=study/CN=testtest"
生成服务器端证书
openssl genrsa -des3 -out server.key 2048
openssl req -new -nodes -keyout server.key -out server.csr -config openssl.cnf
openssl x509 -req -in server.csr -CA demoCA/newcerts/ca.crt -CAkey demoCA/newcerts/ca.key -CAcreateserial -out server.crt -days 3600 -extfile openssl.cnf -extensions v3_req
OpenID connect方式
1.搭建AuthorizationServer用于认证服务,如何搭建,大家可以搜搜。有多种方式,比如cas或是spring-security-oauth2等开源方案可以实现。
2.启动Elasticsearch OpenID Connect 认证
3.配置kibana,实现单点登录
具体的配置过程,请参考下面的oidc-guide的wiki
参考wiki
https://www.elastic.co/guide/en/elasticsearch/reference/current/oidc-guide.html
https://www.elastic.co/guide/en/kibana/current/kibana-authentication.html#embedded-content-authentication
- 上一篇: 集群分布式下日志架构的搭建(集群日志管理)
- 下一篇: 津巴布韦政府多措并举推动解决电力短缺问题
猜你喜欢
- 2024-11-07 集群分布式下日志架构的搭建(集群日志管理)
- 2024-11-07 Elasticsearch算分优化方案之rescore_query
- 2024-11-07 Elasticsearch 三板斧之 Elasticsearch 安装
- 2024-11-07 最新JumpServer未授权访问漏洞(CVE-2023-42442)分析
- 2024-11-07 Spring Boot搭建 ELK,这才是正确看日志的方式
- 2024-11-07 大量使用 items_per_inner_pack 和 inner_packs_per_master_pack
- 2024-11-07 Kibana(一张图片胜过千万行日志)——转
- 2024-11-07 解决Elasticsearch集群开启账户密码安全配置自相矛盾的坑
- 2024-11-07 x-pack-sql-jdbc 发布后提示版本不兼容
- 2024-11-07 ES单机通过端口搭建伪集群(如何搭建es集群)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)