1纹笼、環(huán)境說明
CentOS 7.8 拴签,JDK1.8孝常,Docker 19.03.8, Influxdb 1.8.0蚓哩,Grafana 6.7.3构灸。
2、influxdb 下載安裝配置
2.1 influxdb 下載安裝
wget https://dl.influxdata.com/influxdb/releases/influxdb-1.8.0.x86_64.rpm
sudo yum localinstall influxdb-1.8.0.x86_64.rpm
2.2 influxdb 配置
2.2.1 找到 influxdb 配置文件
find / -name influxdb.conf
2.2.2 編輯 influxdb.conf 文件
vim /etc/influxdb/influxdb.conf
#找到 [http] 部分岸梨,配置如下
[http]
enabled = true
bind-address = ":8086"
auth-enabled = false
log-enabled = true
write-tracing = false
pprof-enabled = false
https-enabled = false
https-certificate = "/etc/ssl/influxdb.pem"
max-row-limit = 10000
2.3 啟動 influxdb
systemctl start influxdb
systemctl daemon-reload
2.4 創(chuàng)建數(shù)據(jù)庫
influx -port 8086
create database jmeter
use jmeter
#創(chuàng)建jmeter數(shù)據(jù)庫的用戶名和密碼
CREATE USER "jmeter" WITH PASSWORD 'jmeter' WITH ALL PRIVILEGES
3冻押、Grafana 中文粗略版在Docker中安裝
3.1 下載或編寫 tool.sh 文件
vim tool.sh
#!/usr/bin/env bash
grafana_version='6.7.3'
docker_user='w958660278'
console() {
content=$2
case $1 in
"br") echo -e "\033[36m------------------------------\033[0m" ;;
"info") echo -e "\033[36m$content\033[0m" ;;
"action") echo -e "\033[36m$content\033[0m" ;;
"success") echo -e "\033[32m$content\033[0m" ;;
"error") echo -e "\033[31m$content\033[0m" ;;
"warning") echo -e "\033[33m$content\033[0m" ;;
"danger") echo -e "\033[35m$content\033[0m" ;;
esac
}
initDevProject() {
console br
console info 'Init-tool'
console br
console action 'Clone source from https://github.com/WangHL0927/grafana.git'
git clone https://github.com/WangHL0927/grafana.git
cd ./grafana
console action 'Run yarn install...'
yarn install
console success 'Init dev success!'
}
releaseDockerDev() {
console br
console info "Release Dev version and push to DockerHub"
console danger "The full tag name like grafana-cn:$grafana_version.0001-dev"
console danger "Input build version and press ENTER:[eg. 0002]"
read version
tag="$docker_user/grafana-cn:$grafana_version.$version-dev"
tag2="$docker_user/grafana-cn:latest-dev"
console action "Build and push $grafana_version.$version-dev..."
rm -rf ./grafana/public/build/*.js.map
docker build -t $tag .
docker push $tag
console action "Push latest-dev..."
docker tag $tag $tag2
docker push $tag2
console success 'Release success!'
}
releaseDocker() {
console br
console info "Release Latest version and push to DockerHub"
console danger "The full tag name like grafana-cn:$grafana_version.0001"
console danger "Input build version and press ENTER:[eg. 0002]"
read version
tag="$docker_user/grafana-cn:$grafana_version.$version"
tag2="$docker_user/grafana-cn:latest"
console action "Build and push $grafana_version.$version..."
rm -rf ./grafana/public/build/*.js.map
docker build -t $tag .
docker push $tag
console action "Push latest..."
docker tag $tag $tag2
docker push $tag2
console success 'Release success!'
}
printMenu() {
console br
console info "Tool Script"
console br
console info "1. Start dev-server."
console info "2. Stop/Remove dev-server."
console info "3. Restart dev-server."
console info "4. Release to DockerHub with dev tag."
console info "5. Release to DockerHub with latest tag."
console info "6. Init dev project."
console br
console danger "Input number and press ENTER:"
}
main() {
printMenu
read num
case $num in
"1") ./dev-server/dev-server.sh ;;
"2") ./dev-server/remove-dev-server.sh ;;
"3") ./dev-server/restart-dev-server.sh ;;
"4") releaseDockerDev ;;
"5") releaseDocker ;;
"6") initDevProject ;;
*)
console error "ERROR: undefined function!"
exit;;
esac
}
main
#在當(dāng)前目錄下執(zhí)行 ./tool.sh
3.2 在 Docker 中運(yùn)行 Grafana
docker run -d -p 3000:3000 --name=grafana-cn w958660278/grafana-cn:latest-dev
3.3 導(dǎo)入 Grafana Dashboard
#參考:https://www.kancloud.cn/owenwangwen/open-capacity-platform/1217389
#jmeter-grafana-dashboard.json 鏈接:https://pan.baidu.com/s/1LPc5fpw5yUsX9RJOcjFQng
#提取碼:2c4d
4、JMeter 下載安裝
wget https://mirror.bit.edu.cn/apache//jmeter/binaries/apache-jmeter-5.3.tgz
tar -zxvf apache-jmeter-5.3.tgz
5盛嘿、JMeter 使用
5.1 新建 test 目錄
mkdir test && cd test
#編寫一個project.jmx,參考:https://www.kancloud.cn/owenwangwen/open-capacity-platform/1217389
#鏈接:https://pan.baidu.com/s/1r9LqoMBC-fnp2ZasXyrMXQ
#提取碼:3qp3
5.2 在 test 目錄下編寫 test.sh文件
vim test.sh
cd /root/test/temp/ && rm *
cd /root/test/result/ && rm *
/root/jmeter-5.3/bin/jmeter.sh -n -t /root/test/project.jmx -l /root/test/temp/result.jtl -e -o /root/test/result
5.3 執(zhí)行 test.sh
./test.sh
5.4 登陸Grafana進(jìn)行查看