skywalking部暑(zookeeper、kafka、elasticsearch)

news2024/11/26 21:23:30
服务器IP部暑角色
192.168.11.100zookeeper kafka elasticsearch

一、docker部暑
。。。

二、.安装Zookeeper

path=/data/zookeeper
mkdir -p ${path}/{data,conf,log}
chown -R 1000.1000 ${path}

echo "0" > ${path}/data/myid 
#zookeeper配置文件
cat > ${path}/conf/zoo.cfg << 'EOF'
4lw.commands.whitelist=mntr,ruok
clientPort=2181
dataDir=/data/zookeeper/data
dataLogDir=/data/zookeeper/log
tickTime=2000
initLimit=5
syncLimit=2
autopurge.snapRetainCount=3
autopurge.purgeInterval=0
maxClientCnxns=60
server.0=192.168.11.100:2888:3888

EOF

cat > ${path}/start.sh << 'EOF'
cd `dirname $0`
docker run -d \
--network host \
--restart=always \
-v `pwd`/data:/data/zookeeper/data \
-v /etc/localtime:/etc/localtime \
-v `pwd`/conf/zoo.cfg:/conf/zoo.cfg \
--name zookeeper \
zookeeper:3.6.3
EOF

bash ${path}/start.sh
#查询zookeeper状态
docker exec -i zookeeper zkServer.sh status 

ZooKeeper JMX enabled by default
Using config: /conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: standalone

#zookeeper安全问题

#对根目录进行基于IP或auth的授权
docker exec -i zookeeper zkCli.sh -server 127.0.0.1  << EOF
setAcl / ip:127.0.0.1:rwcda,ip:192.168.11.0/24:rwcda,ip:172.19.0.0/16:rwcda
getAcl /
quit
EOF


[zk: 127.0.0.1(CONNECTED) 1] getAcl /
'ip,'127.0.0.1
: cdrwa
'ip,'192.168.11.0/24
: cdrwa
'ip,'172.19.0.0/16
: cdrwa


#关闭acl
setAcl / world:anyone:cdrwa

三、部暑kafka
#KAFKA_BROKER_ID,KAFKA_LISTENERS,KAFKA_ADVERTISED_LISTENERS,KAFKA_ZOOKEEPER_CONNECT等四个参数按实际情况修改

path=/data/kafka
mkdir ${path}/{log,data} -p
cat >  ${path}/start.sh << 'EOF'
#!/bin/bash
cd `dirname $0`

docker run -d \
--name kafka \
--restart=always \
--network host \
-e LOG_DIRS=/data/kafka/log \
-e KAFKA_BROKER_ID=0 \
-e KAFKA_LISTENERS=PLAINTEXT://192.168.11.100:9092 \
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.11.100:9092 \
-e KAFKA_ZOOKEEPER_CONNECT=192.168.11.100:2181/kafka \
-e KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR=1 \
-e KAFKA_PORT=9092 \
-v `pwd`/data:/kafka \
-v `pwd`/log:/data/kafka/log \
-v /etc/localtime:/etc/localtime \
wurstmeister/kafka:2.13-2.8.1
EOF

bash  ${path}/start.sh

验证kafka

#创建topic
docker exec -it  kafka bash
kafka-topics.sh --create \
--zookeeper 192.168.11.100:2181/kafka \
--topic test \
--partitions 1 \
--replication-factor 1

#生产者
docker exec -it kafka bash
/opt/kafka_2.13-2.8.1/bin/kafka-console-producer.sh \
--broker-list 192.168.11.100:9092 \
--topic test 

#消费者
docker exec -it kafka bash
/opt/kafka_2.13-2.8.1/bin/kafka-console-consumer.sh \
--bootstrap-server 192.168.11.100:9092 \
--topic test --from-beginning 

四、elasticsearch
4.1、集群证书生成,生成elastic-certificates.p12证书(此步要手动执行确认)

mkdir -p /data/elasticsearch/{config,logs,data}/
mkdir -p /data/elasticsearch/config/certs/

chown 1000:root /data/elasticsearch/{config,logs,data}
docker run -i --rm \
-v /data/elasticsearch/config/:/usr/share/elasticsearch/config/ \
elasticsearch:7.17.6 bash << 'EOF'
bin/elasticsearch-certutil ca  -s --pass '' --days 10000 --out elastic-stack-ca.p12
bin/elasticsearch-certutil cert  -s --ca-pass '' --pass '' --days 5000  --ca elastic-stack-ca.p12  --out  elastic-certificates.p12
mv elastic-* config/certs
chown -R 1000:root config
exit
EOF

4.2 准备elasticsearch.yml

mkdir -p /data/elasticsearch/{config,data}
cat > /data/elasticsearch/config/elasticsearch.yml << 'EOF'
cluster.name: smartgate-cluster
discovery.seed_hosts: 192.168.11.100
cluster.initial_master_nodes: 192.168.11.100
network.host: 192.168.11.100

#增加了写队列的大小
thread_pool.write.queue_size: 1000
#锁定内存
bootstrap.memory_lock: true

xpack.license.self_generated.type: basic
xpack.ml.enabled: false
#xpack.security.enrollment.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.security.enabled: true

#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
#xpack.security.http.ssl.client_authentication: optional
#xpack.security.authc.realms.pki.pki1.order: 1

node.roles: ['master','data','ingest','remote_cluster_client']
node.name: 192.168.11.100

http.port: 9200
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization
http.cors.enabled: true
http.host: "192.168.11.100,127.0.0.1"
transport.host: "192.168.11.100,127.0.0.1"
ingest.geoip.downloader.enabled: false
EOF

cat >/data/elasticsearch/start.sh << 'EOF'
#!/bin/bash
cd `dirname $0`
dockerd --iptables=false >/dev/nul 2>&1 &
sleep 1
docker start elasticsearch >/dev/nul 2>&1
if [ "$?" == "0" ]
then
docker rm elasticsearch -f
fi
sleep 1
docker start elasticsearch >/dev/nul 2>&1
if [ "$?" != "0" ]
then

echo "run elasticsearch"

docker run -d \
--restart=always \
--name elasticsearch \
--network host \
--privileged \
--ulimit memlock=-1:-1 \
--ulimit nofile=65536:65536 \
-e ELASTIC_PASSWORD=xxxxxxxx \
-e KIBANA_PASSWORD=xxxxxxxx \
-e "ES_JAVA_OPTS=-Xms1g -Xmx1g" \
-v /etc/localtime:/etc/localtime \
-v `pwd`/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v `pwd`/config/certs/:/usr/share/elasticsearch/config/certs \
-v `pwd`/data/:/usr/share/elasticsearch/data/ \
-v `pwd`/logs/:/usr/share/elasticsearch/logs/  \
elasticsearch:7.17.6
fi
EOF

bash /data/elasticsearch/start.sh

4.3 验证es

curl -u elastic:xxxxxxxx  http://192.168.11.100:9200/
{
  "name" : "192.168.11.101",
  "cluster_name" : "smartgate-cluster",
  "cluster_uuid" : "arM00fRrTy-FsqohMaftAA",
  "version" : {
    "number" : "7.17.6",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "f65e9d338dc1d07b642e14a27f338990148ee5b6",
    "build_date" : "2022-08-23T11:08:48.893373482Z",
    "build_snapshot" : false,
    "lucene_version" : "8.11.1",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

五、skywalking-oap-server

path=/data/sw-oap
mkdir ${path}/{log,config} -p
cat >  ${path}/start.sh << 'EOF'
#!/bin/bash
cd `dirname $0`

docker run -d \
--restart always  \
--name sw-oap \
-p 1234:1234 \
-p 11800:11800 \
-p 12800:12800 \
-e TZ=Asia/Shanghai \
-e SW_STORAGE=elasticsearch \
-e SW_STORAGE_ES_CLUSTER_NODES=192.168.11.100:9200 \
-e SW_ES_USER=elastic \
-e SW_ES_PASSWORD="xxxxxxxx" \
-e SW_CLUSTER_ZK_HOST_PORT="192.168.11.100:2181/oap" \
-e "SW_KAFKA_FETCHER=default" \
-e "SW_KAFKA_FETCHER_ENABLE_METER_SYSTEM=true" \
-e "SW_KAFKA_FETCHER_PARTITIONS=2" \
-e "SW_KAFKA_FETCHER_PARTITIONS_FACTOR=1" \
-e "SW_KAFKA_FETCHER_SERVERS=192.168.11.100:9092" \
-e "SW_NAMESPACE=yzy" \
-v /etc/localtime:/etc/localtime \
apache/skywalking-oap-server:9.3.0
EOF

bash ${path}/start.sh 

六 skywalking ui

path=/data/swui
mkdir ${path}/{log,config} -p

cat >  ${path}/start.sh << 'EOF'
#!/bin/bash
cd `dirname $0`

docker run -d \
--restart always \
--name swui \
-p 8082:8080  \
-e TZ=Asia/Shanghai \
-e SW_OAP_ADDRESS="http://192.168.11.100:12800" \
-e SW_TIMEOUT=20000 \
-v /etc/localtime:/etc/localtime \
apache/skywalking-ui:9.3.0
EOF

bash ${path}/start.sh 

七、demo

path=/data/sw-java
mkdir ${path}/agent/config -p
cd ${path}
curl -L https://archive.apache.org/dist/skywalking/java-agent/8.9.0/apache-skywalking-java-agent-8.9.0.tgz -o apache-skywalking-java-agent-8.9.0.tgz
tar zxvf  apache-skywalking-java-agent-8.9.0.tgz
mv skywalking-agent/skywalking-agent.jar  ${path}/agent/
mv skywalking-agent/optional-plugins/apm-trace-ignore-plugin-8.9.0.jar ${path}/agent/
mv skywalking-agent/optional-reporter-plugins/kafka-reporter-plugin-8.9.0.jar ${path}/agent/
mv skywalking-agent/config/agent.config ${path}/agent/config/

cat > ${path}/agent/config/apm-trace-ignore-plugin.config << 'EOF'
trace.ignore_path=${SW_AGENT_TRACE_IGNORE_PATH:/actuator/**}
EOF

cat >  ${path}/start.sh << 'EOF'
#!/bin/bash
cd `dirname $0`

docker rm -f  sw-java

docker run -d \
--restart always \
--name sw-java \
-p 18080:8080  \
-e TZ=Asia/Shanghai \
-e JAVA_OPTS=" -javaagent:/agent/skywalking-agent.jar -DSW_AGENT_COLLECTOR_BACKEND_SERVICES=192.168.11.100:11800 -DSW_KAFKA_BOOTSTRAP_SERVERS=192.168.11.100:9092  -DSW_KAFKA_NAMESPACE=yzy -DSW_AGENT_NAME=yzy-app " \
-v /etc/localtime:/etc/localtime \
-v `pwd`/agent:/agent/ \
maskerade/springboot-demo
EOF

bash ${path}/start.sh 

访问几次:
http://192.168.11.100:18080

sw-ui:
http://192.168.11.100:8082
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/402883.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Gitee初练 --- 问题合集(一)

Gitee一、Windows找不到gpedit.msc请确定文件名是否正确的提示二、windows 10 凭据无法保存三、解决 git pull/push 每次都要输入用户名密码的问题一、Windows找不到gpedit.msc请确定文件名是否正确的提示 就随便在一个地方建立一个文本文件&#xff0c;将一下内容复制进去 e…

从0-1超详细教你使用nginx打包部署静态资源,以及hash和history配置汇总

首先呢&#xff0c;我们要有以下几个方面的知识和操作&#xff0c;来实现项目部署 第一&#xff1a;我们要搭建nginx部署基础环境 具体流程可参考这个链接从0-1超详细教你实现前端代码nginx部署全流程 第二&#xff1a;我们要知道前端路由hash和history实现以及区别 路由功…

Reactor响应式流的核心机制——背压机制

响应式流是什么&#xff1f; 响应式流旨在为无阻塞异步流处理提供一个标准。它旨在解决处理元素流的问题——如何将元素流从发布者传递到订阅者&#xff0c;而不需要发布者阻塞&#xff0c;或订阅者有无限制的缓冲区或丢弃。 响应式流模型存在两种基本的实现机制。一种就是传统…

【OpenAI 多模态预训练】VideoGPT?微软透露GPT-4或将在下周发布

【多模态预训练】VideoGPT&#xff1f;微软透露GPT-4或将在下周发布 先让我猜个名字&#xff0c;VideoGPT&#xff1f; 太绝了&#xff01;看完ChatGPT之后就感觉OpenAI正在做多模态的预训练语言模型。万万没想到来的这么快。据介绍&#xff0c;GPT-4或将为多模态大模型&#…

redis经典五种数据类型及底层实现

目录一、Redis源代码的核心部分1.redis源码在哪里2.src源码包下面该如何看&#xff1f;二、我们平时说redis是字典数据库KV键值对到底是什么1.6大类型说明(粗分)2.6大类型说明3.上帝视角4.Redis定义了redisObject结构体4.1 C语言struct结构体语法简介4.2 字典、KV是什么4.3 red…

jsp毕业答辩管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 JSP 毕业答辩管理系统是一套完善的java web信息管理系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发&#xff0c;数据库为Mysql5.0&…

Spring Security基础入门

基础概念 什么是认证 认证&#xff1a;用户认证就是判断一个用户的身份身份合法的过程&#xff0c;用户去访问系统资源的时候系统要求验证用户的身份信息&#xff0c;身份合法方可继续访问&#xff0c;不合法则拒绝访问。常见的用户身份认证方式有&#xff1a;用户密码登录&am…

基于java的网络选课商城项目部署

前言&#xff1a;相信看到这篇文章的小伙伴都或多或少有一些编程基础&#xff0c;懂得一些linux的基本命令了吧&#xff0c;本篇文章将带领大家服务器如何部署一个使用django框架开发的一个网站进行云服务器端的部署。 文章使用到的的工具 Python&#xff1a;一种编程语言&…

SAP 生产订单收货入库Goods Receipt

Goods Receipt: 收货这块比较简单&#xff0c;当我们做完报工之后&#xff0c;成品就可以入库了。 那么收货完了&#xff0c;到底会有什么样的影响呢&#xff1f; 会产生物料凭证以及会计凭证&#xff0c;但是若订单中勾选”GR非股价的“&#xff0c;则不会有价值。 这里我们需…

E1. Unforgivable Curse (easy version) #855 div3

ps&#xff1a;很久没有更新啦&#xff0c;之前一直在复习准备期末考试&#xff0c;也没怎么写题。现在考完要恢复训练啦 Problem - E1 - Codeforces 题意&#xff1a; 两个字符串s和t&#xff0c;在s中任意两个间隔为k或者k1的字母可以进行任意次的交换&#xff0c;问你可不…

STL源码剖析(1) - 空间配置器与内存操作详解

文章首发于&#xff1a;My Blog 欢迎大佬们前来逛逛1. SGI空间配置器SGI STL的空间配置器是 alloc而非allocator&#xff0c;并且不接受任何参数&#xff1a;vector<int,std::alloc> vec我们通常使用缺省的空间配置器&#xff1a;template <typename T,typename Alloc…

mac 安装python、pip、weditor

问题现象&#xff1a;执行 python3 -m weditor 报错 ➜ ~ python3 -m weditor dyld[42143]: dyld cache (null) not loaded: syscall to map cache into shared region failed dyld[42143]: Library not loaded: /System/Library/Frameworks/CoreFoundation.framework/Versio…

【前端vue2面试题】2023前端最新版vue2模块,高频24问

​ &#x1f973;博 主&#xff1a;初映CY的前说(前端领域) &#x1f31e;个人信条&#xff1a;想要变成得到&#xff0c;中间还有做到&#xff01; &#x1f918;本文核心&#xff1a;博主收集的关于vue2面试题 目录 vue2面试题 1、$route 和 $router的区别 2、一个.v…

Redis高频面试题汇总(上)

目录 1.什么是Redis? 2.为什么Redis这么快 3.分布式缓存常见的技术选型方案有哪些&#xff1f; 4.你知道 Redis 和 Memcached 的区别吗&#xff1f; 5.Redis使用场景有哪些 6.Redis 常用的数据结构有哪些&#xff1f; 7.Redis 数据类型有哪些底层数据结构&#xff1f; …

sonarqube指标详解

最近公司引入了sonar&#xff0c;作为代码质量检测工具&#xff0c;以期提高研发同学的代码质量&#xff0c;但是结果出来后&#xff0c;有些同学不清楚相应的指标内容&#xff0c;不知道应该重点关注哪些指标&#xff0c;于是查询了一下相关的资料&#xff0c;加以总结同时也分…

【数据结构】堆排序

堆是一种叫做完全二叉树的数据结构&#xff0c;可以分为大根堆&#xff0c;小根堆&#xff0c;而堆排序就是基于这种结构而产生的一种程序算法。大堆&#xff1a;每个节点的值都大于或者等于他的左右孩子节点的值小堆&#xff1a;每个结点的值都小于或等于其左孩子和右孩子结点…

扬帆优配|业务量大突破,这个行业发展明显向好

近期上市的新股&#xff0c;大都在招股阐明书里公布了本年第一季度成绩预告。 我国快递事务量本年已达200亿件 国家邮政局监测数据显现&#xff0c;到3月8日&#xff0c;本年我国快递事务量已到达200.9亿件&#xff0c;比2019年到达200亿件提前了72天&#xff0c;比2022年提前…

goland开发环境搭建及运行第一个go程序HelloWorld

1、下载和安装golang 点击进入下载页面 下载好安装包&#xff0c;点击安装。 我之前安装过低版本的安装包&#xff0c;所以这里提示要先卸载已经安装过的低版本的。 同意协议&#xff0c;继续安装。 默认安装的文件夹为C盘&#xff0c;建议更改&#xff0c;我这里更改为D盘…

YOLOv5训练大规模的遥感实例分割数据集 iSAID从切图到数据集制作及训练

最近想训练遥感实例分割&#xff0c;纵观博客发现较少相关 iSAID数据集的切分及数据集转换内容&#xff0c;思来想去应该在繁忙之中抽出时间写个详细的教程。 iSAID数据集下载 iSAID数据集链接 下载上述数据集。 百度网盘中的train和val中包含了实例和语义分割标签。 上述…

哪些职业适合创业?学习哪些技能可以自己创业?

创意行业&#xff1a;创意行业包括广告、设计、影视等领域&#xff0c;需要创新思维和创意能力&#xff0c;适合创业。学习创意思维、平面设计、影视制作等技能可以自己创业。 科技行业&#xff1a;科技行业包括互联网、人工智能、物联网等领域&#xff0c;需要技术能力和创新思…