大家好,今天小编为大家分享关于gg修改器要root吗6_gg修改器免root的内容,赶快来一起来看看吧。
最近,我们一直在调查一些流式数据库解决方案,主要目标是Apache Pinot,从描述上看它符合我们的需求,因此是主要目标。
Apache Pinot 是一种实时分布式 OLAP 数据存储,专为低延迟高吞吐量分析而构建,非常适合面向用户的分析工作负载。
不过官方的文档其实是少了一些,所以在网上找了一些资料,终于可以做一些实验了。这些过程当时没有记录,所以我不确定实际使用了哪些参考资料。
目前整个实验基础设施都是用 构建的pose,Github 仓库中的完整代码如下。
https:///wirelessr/pinot-plus-presto
先解释一下核心组件,我们来看看pose.yml.
services: zookeeper: image: zookeeper:3.5.6 pinot-controller: image: apachepinot/pinot:0.9.3 ports: – “9000:9000” – “8888” environment: JAVA_OPTS: “-javaagent:/opt/pinot/etc/jmx_prometheus_javaagent/jmx_prometheus_javaagent-0.12.0.jar=8888:/opt/pinot/etc/jmx_prometheus_javaagent/configs/pinot.yml -Dplugins.dir=/opt/pinot/plugins -Xms1G -Xmx4G -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -Xloggc:gc-pinot-controller.log” pinot-broker: image: apachepinot/pinot:0.9.3 ports: – “8099:8099” – “8888” environment: JAVA_OPTS: “-javaagent:/opt/pinot/etc/jmx_prometheus_javaagent/jmx_prometheus_javaagent-0.12.0.jar=8888:/opt/pinot/etc/jmx_prometheus_javaagent/configs/pinot.yml -Dplugins.dir=/opt/pinot/plugins -Xms4G -Xmx4G -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -Xloggc:gc-pinot-broker.log” pinot-server: image: apachepinot/pinot:0.9.3 ports: – “8098:8098” – “8888” environment: JAVA_OPTS: “-javaagent:/opt/pinot/etc/jmx_prometheus_javaagent/jmx_prometheus_javaagent-0.12.0.jar=8888:/opt/pinot/etc/jmx_prometheus_javaagent/configs/pinot.yml -Dplugins.dir=/opt/pinot/plugins -Xms4G -Xmx16G -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -Xloggc:gc-pinot-server.log”
以上是构建Pinot需要的四个基本服务,与官方文档大部分相同的部分省略,只列出我修改的部分。顺便说一句,我已经将镜像版本更改为新版本,但让我们保留示例中的正式版本。
主要更改是对三个 Pinot 服务的ports和environment,以使 Prometheus 可以使用 Pinot 的指标。
因此,ports打开一个附加8888并添加一个附加javaagent参数到JAVA_OPTS. 的目的javaagent是使原始 Pinot JMX 指标能够基于 Web 并暴露给 Prometheus。
到目前为止,jmx_prometheus_javaagent.jar官方文档中没有包含版本号,但是我从官方容器中找不到对应的文件,所以我只好使用了jmx_prometheus_javaagent-0.12.0.jar。
为了观察服务的状态,我们还需要构建Prometheus和Grafana.
prometheus: image: prom/prometheus container_name: monitoring-prometheus restart: unless-stopped volumes: – monitoring-prometheus-data-1:/prometheus – ./volumes/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml ports: – “9090:9090” grafana: image: grafana/grafana volumes: – ./volumes/grafana/provisioning:/etc/grafana/provisioning – ./volumes/grafana/dashboards:/var/lib/grafana/dashboards ports: – “3000:3000” environment: GF_SERVER_ROOT_URL: https://localhost:3000 GF_SECURITY_ADMIN_PASSWORD: password
在volumes我们定义这两个服务所需的配置文件。
运行后pose,我们可以从https://localhost:3000. 帐号和密码就是admin和passowrd。
为什么我们需要 Presto?因为 Pinot 支持 SQL,但实际上 Pinot 不支持JOIN. 如果需要合并两个表,则必须由外部 SQL 引擎提供。
Presto 是一个 SQL 引擎,支持 ANSI SQL 和多种数据源,当然也包括 Pinot,所以我在实验中选择使用 Presto。
presto-coordinator: image: apachepinot/pinot-presto restart: unless-stopped ports: – “18080:8080”
Presto 有两个角色,协调者和工作者。在实验环境中,我们简单地使用了协调器的内置worker。
官方容器apachepinot/pinot-presto默认为 coordinator,没有任何设置,并且已经使用 FQDN pinot-controller:9000,所以无需更改任何内容,我们可以直接使用。
克隆 Github 仓库后,我们可以pose up -d直接运行,让实验环境正常运行。
整个实验环境包含三个关键点。
顺便说一句,官方文档并没有介绍如何使用带安全性的 Kafka,仅以不带安全性的 Kafka 为例。
在Confluent的情况下,Kafka 是内置的SASL_SSL,我参考这篇文章来设置 Kafka 的账号和密码。
https://dev.startree.ai/docs/pinot/recipes/kafka-sasl
这个实验环境可能会针对我的一些需求进行扩展,例如添加 Presto 工作器。
以上就是关于gg修改器要root吗6_gg修改器免root的全部内容,希望对大家有帮助。