首页
AI导航
美图
服务
付费
树洞
留言
云主机
推荐
邻居
更多
我的书单
我的足迹
罗盘时钟
圈小猫
工作打分
本站统计
版本历史
推荐
txt阅读器
主机监控
M商城
网址导航
在线工具
证件照制作
Search
1
docker和docker-compose一键安装脚本
824 阅读
2
docker下运行grafana和grafana Image Renderer
664 阅读
3
grafana的Dashboard面板添加阈值报警
632 阅读
4
WooCommerce对接第三方支付插件开发
503 阅读
5
基于docker的部署fecmall开源电商系统
442 阅读
ChatGPT
虚拟化
数据库
运维
基础知识
监控预警
数据展示
运维工具
web安全
系统服务
开发
python
php
java
shell
go
html5
项目
博客
电商
工具
娱乐
影视
读书
读书笔记
综合
VPS报告
规范文档
知识总结
经验分享
关于本站
登录
Search
标签搜索
python
django
电商平台
运维工具
Joe主题
docker
zabbix
蓝鲸智云
运维
监控
typecho
grafana
wordpress
运维知识
mysql
php
elk
nginx
web安全
VPS测试
IT不难
累计撰写
245
篇文章
累计收到
209
条评论
首页
栏目
ChatGPT
虚拟化
数据库
运维
基础知识
监控预警
数据展示
运维工具
web安全
系统服务
开发
python
php
java
shell
go
html5
项目
博客
电商
工具
娱乐
影视
读书
读书笔记
综合
VPS报告
规范文档
知识总结
经验分享
关于本站
页面
美图
服务
留言
邻居
我的足迹
本站统计
版本历史
推荐
M商城
网址导航
搜索到
30
篇与
的结果
2022-12-05
centos7部署rtmp服务并进行压力测试
前言{callout color="#f0ad4e"}上一篇文章: 利用iperf3测试两个节点之间的网络性能 ,而影响应用并发有可能是其他方面的原因。直播一般是流量消耗大户,本篇文章分享部署rtmp服务的方法,以及如何进行压力测试。{/callout}服务部署{callout color="#ef4dc4"}nginx-rtmp是打包好的rtmp镜像,在安装了docker的服务器上直接启动即可,非常方便。{/callout}启动# 获取镜像 docker pull alfg/nginx-rtmp # 启动rtmp服务 docker run -it -d -v /data/rtmp:/opt/data --name nginx-rtmp -p 3008:1935 -p 8080:80 --rm alfg/nginx-rtmp # 停止 docker stop nginx-rtmp推流{message type="success" content="利用本地mp4文件进行推流"/}# 安装ffmpeg yum-config-manager --add-repo=https://negativo17.org/repos/epel-multimedia.repo yum-config-manager --disable epel-multimedia yum install -y --enablerepo=epel-multimedia ffmpeg ffmpeg-devel # 验证 ffmpeg -version # 测试视频 wget http://dl.itbunan.xyz/test.mp4 # rtmp推流 # stream_loop -1 循环 -0 单次 # copy 编码复用 ffmpeg -re -stream_loop -1 -i test.mp4 -vcodec copy -acodec copy -f flv rtmp://127.0.0.1:3008/stream/test # hls推流 # 服务已自动转换 #ffmpeg -re -stream_loop -1 -i test.mp4 -vcodec libx264 -acodec aac -f flv rtmp://127.0.0.1:3008/hls/test测试服务状态http://IP:8080/stat {card-default label="服务状态" width="80%"}{/card-default}服务器状态{message type="success" content="通过top,iftop, dstat等工具查看"/}dstatyum install -y dstat dstat -cmdngy -N bond2 --bits{card-default label="dstat" width="80%"}{/card-default}可用性测试rtmp流播放# 本地安装ffplay, 可以打开播放即可 ffplay rtmp://ip:3008/stream/testhls流播放#获取静态资源 wget https://cdn.jsdelivr.net/npm/hls.js@latest -O /data/rtmp/hls.js #修改播放代码 docker exec -it nginx-rtmp sh vi /www/static/player.html<!DOCTYPE html> <html> <head> <title>RTMP Stream Example</title> <script src="hls.js"></script> </head> <body> <video id="my-video" controls autoplay></video> <script> var params = new URLSearchParams(window.location.search); var url = params.get('url'); if (Hls.isSupported()) { var video = document.getElementById('my-video'); var hls = new Hls(); hls.loadSource(url); hls.attachMedia(video); hls.on(Hls.Events.MANIFEST_PARSED, function() { video.play(); }); } </script> </body> </html> 本地通过浏览器访问,可以播放视频 http://IP:8080/player.html压力测试{callout color="#ef6d4d"}有钱人可以使用 阿里云性能测试 ,功能很强大,唯一缺点就是贵。本人尝试用了下,几十块没了。什么也没测出来。有可能是配置不对,总之懒得看了,玩不起。直接用st-load自己测吧。{/callout}# st-load 在centos8上编译失败了,也懒得排错了。直接起一个centos7的镜像吧。 docker pull centos:7.9.2009 docker run -d --name=centos7 --privileged centos:7.9.2009 /usr/sbin/init docker exec -it centos7 /bin/bash # https://github.com/rzrobert/st-load-master.git wget http://dl.itbunan.xyz/st-load-master.tgz tar xvf st-load-master.tgz cd st-load-master/ ./configure make # 支持包 yum -y install patch unzip make gcc gcc-c++ libstdc++-devel # 执行压测,-c 后面是并发数 ./objs/sb_rtmp_load -c 10 -r rtmp://ip:3008/stream/test{message type="warning" content="跑压测的同时,用自身电脑ffplay单独启动一路,如果正常播放,说明没有到达瓶颈"/}输入和输出带宽占比经测试上游推流每路2M左右,不会随着客户端拉流的路数的增加而增加,下图为推流1路,拉流10路的带宽截图{card-default label="推流端" width="75%"}{/card-default}{card-default label="rtmp-server" width="75%"}{/card-default}{card-default label="拉流测试端" width="75%"}{/card-default}
2022年12月05日
34 阅读
0 评论
0 点赞
2022-11-02
利用iperf3测试两个节点之间的网络性能
前言{callout color="#f0ad4e"}iperf3 是一个 TCP/IP 和 UDP/IP 的性能测量工具,能够提供网络吞吐率信息,以及震动、丢包率、最大段和最大传输单元大小等统计信息;从而能够帮助我们测试网络性能,定位网络瓶颈。iperf是开源的。iperf 不能够测试时延。{/callout}网络性能参数(服务质量QOS){message type="success" content="带宽/吐、延迟、抖动、丢包率 "/}{card-describe title="抖动"}在iperf中,测试需要发送大量的包,计算出来的抖动值就是连续发送时延差值的平均值。{/card-describe}软件安装#安装 yum install -y iperf3 #简单回测 #启动服务端 iperf3 -s #客户端测试 iperf3 -c 127.0.0.1{card-default label="结果" width="95%"}{/card-default}参数说明{callout color="#f0ad4e"}-s 以server模式启动-c 以client模式启动{/callout}{card-describe title="通用参数"}-f [k|m|K|M] 分别表示以Kbits, Mbits, KBytes, MBytes显示报告-i sec 以秒为单位显示报告间隔-l 缓冲区大小,默认是8KB-m 显示tcp最大mtu值-o 将报告和错误信息输出到文件-p 指定服务器端使用的端口或客户端所连接的端口-u 使用udp协议-w 指定TCP窗口大小,默认是8KB{/card-describe}{message type="success" content="-w 数据的计算 带宽x延迟"/} 网络带宽为40Mbit/s,回环路径消耗时间是2ms,那么TCP的窗口大小不小于40Mbit/s×2ms = 80kbit = 10Kbytes {card-describe title="server专用参数"}-D 以服务方式运行ipserf-R 停止iperf服务,针对-D{/card-describe}{card-describe title="client专用参数"}-d 同时进行双向传输测试-n 指定传输的字节数-r 单独进行双向传输测试-b 指定发送带宽,默认是1Mbit/s-t 测试时间,默认10秒,eg:iperf3 -c 222.35.11.23 -t 5-F 指定需要传输的文件-T 指定ttl值{/card-describe}测试用例{message type="success" content="如果需要同时获取吞吐量、抖动和丢包率,需要使用UDP协议,默认为TCP"/}服务端# 使用udp协议 iperf3 -s -u # 默认tcp,以服务方式启动 iperf3 -s -D客户端# 每秒输出一次结果, 采用udp, 带宽限制为10M iperf3 -c ip -u -i 1 -t 10 -b 10M # 反转server和client iperf3 -c 163.177.76.26 -b 100M -i 1 -t 5 -R # 单线程传输1GB数据,每秒输出1次结果 iperf3 -c ip -n -n 1G -i 1 # 100M,单线程 iperf3 -c ip -n 100M -i 1 # 100M,双线程 iperf3 -c ip -n 100M -i 1 - P2拓展字节单位换算{card-describe title="关于字节(Byte)"}1Byte = 8 bitascii:英文字母占1个字节,中文汉字2个字节utf-8:英文字母占1个字节,中文汉字3个字节Unicode: 英文字母占2个字节,中文汉字2个字节{/card-describe}网络数据包{card-default label="数据结构" width="80%"}{/card-default}{card-default label="封装过程" width="80%"}{/card-default}MTU{message type="success" content="最大传输单元,指通信协议在某一层上面所能通过的最大数据包大小,通常与通信接口有关"/}{callout color="#f0ad4e"}TCP/IP协议涉及四层:链路层,网络层,传输层,应用层以太网的数据帧在链路层IP包在网络层TCP或UDP在传输层关系:数据帧{IP包{TCP或UDP包{Data}}}{/callout}{card-describe title="数据包大小分析"}链路层MTU通常为1500网络层IP首部占用20字节,MTU变为1480传输层UDP占用8字节,MTU为1480-8=1472;TCP占用20字节,MTU为1480-20=1460。{/card-describe}{card-default label="数据帧构成" width="70%"}{/card-default}{message type="error" content="INternet上MTU为576,UDP编程数据长度最好在576-20-8=548字节以内"/}
2022年11月02日
102 阅读
0 评论
0 点赞
2022-09-26
微星主板IMPI版本升级
前言{callout color="#f0ad4e"}公司一批很老的服务器,年头到了,老是无故重启。通过IPMIview远程链接还老是卡住,发一下某一天不卡,对比卡住的和不卡的。发现ipmi版本不同。升级后,链接正常。特此记录升级过程。{/callout}{card-default label="升级后" width="75%"}{/card-default}确定主板型号#登录系统确认 dmidecode -t 2{card-default label="主板型号" width="75%"}{/card-default}获取新版本固件官方地址: 链接 {cloud title="IMPI固件" type="bd" url="https://pan.baidu.com/s/12ff11qDtORFmFJXfECS2TQ" password="5rdw"/}升级{card-default label="升级" width="90%"}{/card-default}
2022年09月26日
37 阅读
2 评论
2 点赞
2022-07-04
opendevops的使用配置记录
前言{callout color="#f0ad4e"}opendevops部署完成后,就要管理公司所有的云服务器还有实体机的资源了。此篇文章记录配置使用过程,遇到的问题以及解决办法。安装参考: opendevops基于腾讯云vps的一键部署脚本 {/callout}介绍{alert type="info"}codo 混合云,自动化运维、开源管理平台vue + iview 开发python + tornado 轻量、简洁、异步非阻塞 (tornado,全栈式Web框架和异步网络库多功能ITSM基于RBAC权限系统Web Terminnal 登录日志设计录像回放作业调度CMDB监控报警名词解释:ITSM 是指 一套帮助企业对IT系统的规划、研发、实施、和运营进行有效管理的方法,是一套方法论RBAC 以角色为基础的访问控制(英文 : Role-Based access control, RBAC) 简单归纳为who, what, how 即who 对 what 进行了 how 操作{/alert}{card-default label="关系图" width="80%"}{/card-default}Microservice模块说明codo项目前端codo-admin管理后端codo-cmdb资产管理codo-task任务系统codo-cron定时任务kerrigan配置中心codo-tools运维工具codo-dns域名管理codo-scripts一些示例脚本库,将提供提供示例脚本Architecture{alert type="info"}Apigateway 代理前端文件Apigateway 依赖DNS服务,需要安装Dnsmasq微服务部署完成后,需要在Apigateway进行注册一台mysql master示例,不同的微服务使用单独的库{/alert}{card-default label="架构图" width="75%"}{/card-default}使用官方使用文档
2022年07月04日
54 阅读
0 评论
1 点赞
2022-07-02
蓝鲸智云-初步使用过程记录
官方文档地址官方文档地址服务状态检测#检测所有服务 cd /data/install echo bkssm bkiam usermgr paas cmdb gse job consul | xargs -n 1 ./bkcli check #单独模块检测 ./bkcli check job #检查脚本可用性 ./bkcli install dbcheck ./bkcli check dbcheck #检查开源组件状态 echo redis rabbitmq mongodb consul zk | xargs -n 1 ./bkcli status{message type="success" content="job 模块报错, /etc/resolv.conf 改变导致的 "/}重启服务器后排查{message type="success" content="ob作业平台agent状态更新,每15分钟1次"/}saas模块重新部署#登录中控机 cd /data/install/ ./bk_install saas-o bk_user_manage{message type="success" content="开发者中心 - S-mart 重新部署"/}删除模块过程#重启 cmdb ges 和 job ./bkcli restart cmdb ./bkcli restart gse ./bkcli restart job通过日志分析问题#具体服务日志 journalctl -u bk-iam #只看最新50行 journalctl -u bk-iam -n 50 --no-pager #加上时间范围 journalctl -u bk-iam.service --since "2021-01-14 11:00" --until "2021-01-14 11:05"{message type="success" content="如果进程启动失败,分析原因 例如 bkmonitorv3 进程显示 FAILED"/}# 登陆至监控模块所在的机器 source /data/install/utils.fc ssh $BK_MONITORV3_IP0 # 修改配置文件 vim /data/bkce/etc/supervisor-bkmonitorv3-monitor.conf #修改 [program:kernel_api] 配置下的 stdout_logfile 的值为一个临时路径 /data/bkce/logs/kernel_api_stdout.log #重启监控平台 systemctl restart bk-monitor #查看日志,定位问题并分析解决 tailf /data/bkce/logs/kernel_api_stdout.log
2022年07月02日
44 阅读
0 评论
2 点赞
2022-07-02
蓝鲸智云-公共组件mongodb由单示例变为集群模式
前期准备# 登录中控机, 停止cmdb cd /data/install ./bkcli status cmdb ./bkcli stop cmdb手动备份# 登录mongodb服务器,手动备份 source /data/install/utils.fc nohup bash /data/src/backup/dbbak/dbbackup_mongodb.sh /data/src/backup/dbbak/dbbackup_mongodb.conf blueking & 安装mongo单实例# 登录其他服务器安装mongo单实例 ./bin/install_mongodb.sh -b 172.17.0.11 -p 27017 -d /opt/bkopen/public/mongodb -l /opt/bkopen/logs/mongodb ./bin/install_mongodb.sh -b 172.17.0.6 -p 27017 -d /opt/bkopen/public/mongodb -l /opt/bkopen/logs/mongodb开启key认证# 配置所有的mongodb 开启key认证 source /data/install/utils.fc ./bin/setup_mongodb_rs.sh -a config -e ${BK_MONGODB_KEYSTR_32BYTES}ReplicaSet 初始化# 在任意一台mongodb上执行 ReplicaSet 初始化 ./bin/setup_mongodb_rs.sh -a init -j ${BK_MONGODB_IP_COMMA} -u $BK_MONGODB_ADMIN_USER -p $BK_MONGODB_ADMIN_PASSWORD -P 27017
2022年07月02日
30 阅读
0 评论
1 点赞
2022-07-02
蓝鲸智云-配置生成与渲染说明
生成配置./bkcli install bkenv {card-describe title="配置加载顺序"}./bin/default/./bin/01-generate/./bin/02-dynamic/./bin/03-userdef/./bin/04-final/{/card-describe}{callout color="#f0ad4e"}0级 默认值 1级 1次性生成的变量 2级 动态生成的变量3级 用户自定义变量4级 将0-3级的同模块名的变量文件按优先级合并到 ./bin/04-final/模块.env 实际部署,只会从此文件读取变量{/callout}{message type="success" content="合并完成后,通过 ./bin/envdiff.sh 输出./bin/04-final/<模块>.env 和 ./bin/default/<模块>.env 之间差异的变量取值"/}./bin/01-generate/dbadmin.env #密码文件 配置渲染过程{message type="success" content="渲染配置的脚本调用链总结为:./bkcli render paas -> ./bin/bkr.sh paas -> ./bin/render_tpl"/}
2022年07月02日
49 阅读
0 评论
1 点赞
2022-07-02
蓝鲸智云-采用腾讯云vps部署持续集成平台
资源准备操作系统{callout color="#f0ad4e"}操作系统:centos 7.9{/callout}服务器准备{callout color="#f0ad4e"}服务器: 8核16G 2台 (172.17.0.6,172.17.0.11){/callout}部署过程前期准备{message type="success" content="中控机执行"/}#免密 ssh root@172.17.0.6 -o "StrictHostKeyChecking no" "echo sucess" ssh root@172.17.0.11 -o "StrictHostKeyChecking no" "echo sucess" #下载ci安装包 mkdir -p /data && cd /data && wget http://172.17.0.10:803/bkci-v1.5.7-slim.tar.gz && tar xvf bkci-v1.5.7-slim.tar.gz #下载插件 cd /data/src/ && wget http://172.17.0.10:803/rabbitmq_delayed_message_exchange-3.8.0.ez #下载并导入模板 wget https://bkopen-1252002024.file.myqcloud.com/bkci/bk-ci-deploy-20210706.dat{card-describe title="中控机配置install.config"}172.17.0.6 ci(gateway)172.17.0.6 ci(artifactory),ci(auth),ci(dispatch),ci(dispatch-docker),ci(environment)172.17.0.6 ci(image),ci(log),ci(misc),ci(notify)172.17.0.6 ci(openapi),ci(plugin),ci(process),ci(project),ci(quality)172.17.0.6 ci(repository),ci(store),ci(ticket),ci(websocket)172.17.0.6 ci(agentless)172.17.0.11 ci(dockerhost){/card-describe}{message type="success" content="如果没有安装监控日志套餐,配置es7模块"/}{card-describe title="install.config 配置文件"}172.17.0.3 es7172.17.0.15 es7172.17.0.17 es7{/card-describe}#执行 ./bkcli install es7 ./bkcli start es7部署{message type="success" content="蓝鲸持续集成部署或升级流水线 新建任务"/}FAQ执行抱错处理#修改 yum源 为中控机IP vim /etc/yum.repos.d/Blueking.repo baseurl=http://172.17.0.15:8080
2022年07月02日
53 阅读
1 评论
2 点赞
2022-07-02
蓝鲸智云-采用腾讯云vps部署容器管理平台
资源准备操作系统{callout color="#f0ad4e"}操作系统:centos 7.9{/callout}服务器准备{callout color="#f0ad4e"}服务器: 4核8G 3台 (172.17.0.5,172.17.0.9,172.17.0.14){/callout}模块分配{callout color="#f0ad4e"}172.17.0.5 //MYSQL 数据库、MongoDB 数据库、Redis 数据库、Harbor 私有仓库(客户端浏览器可访问的 IP)172.17.0.9 //BCS 后台服务、BCS 导航页(客户端浏览器可访问的 IP)、web_console 服务172.17.0.14 //容器监控服务{/callout}部署过程前期准备通过节点管理安装gse agent {message type="success" content="蓝鲸->直连区域->默认接入点"/}#登录中控机,设置中控机到新服务器免密登录 ssh root@172.17.0.5 -o "StrictHostKeyChecking no" "echo sucess" ssh root@172.17.0.9 -o "StrictHostKeyChecking no" "echo sucess" ssh root@172.17.0.14 -o "StrictHostKeyChecking no" "echo sucess" #通过作业平台,批量设置主机名 LIP=`/sbin/ifconfig eth0 | grep inet | grep -v inet6 | awk '{print $2}' | sed 's/\.//g'` hostnamectl set-hostname bkopen-$LIP echo -e "\033[32m [hostname 配置] ==> OK \033[0m" echo -e "\033[32m hostname:bkopen-$LIP \033[0m" #下载安装包到中控机并解压 mkdir -p /data && cd /data && wget http://172.17.0.10:803/bcs_ce-6.0.10.tgz && tar xvf bcs_ce-6.0.10.tgz #下载标准运维模板并导入 wget https://bkopen-1252002024.file.myqcloud.com/bcs/bk_sops_common_ce_2021_04_27-01.dat {message type="success" content="公共流程->导入->覆盖相同id项->导入"/}开始部署{message type="success" content="新建任务-->公共流程-->BlueKing[Basic] Environment Deployment-->新建任务 -->选择“蓝鲸”业务-->下一步-->参数填写"/}使用本机绑定域名 110.40.133.123 bcs.bktencent.com api-bcs.bktencent.com 访问管理平台 http://bcs.bktencent.com
2022年07月02日
63 阅读
0 评论
2 点赞
2022-07-02
蓝鲸智云-采用腾讯云vps部署监控日志平台
资源准备操作系统{callout color="#f0ad4e"}操作系统:centos 7.9{/callout}服务器准备{callout color="#f0ad4e"}服务器: 8核16G 3台 (172.17.0.2,172.17.0.8,172.17.0.16){/callout}模块分配{callout color="#f0ad4e"}172.17.0.2 kafka(config),influxdb(bkmonitorv3),es7,monitorv3(influxdb-proxy),monitorv3(monitor),monitorv3(grafana),monitorv3(transfer)172.17.0.8 log(api),log(grafana)172.17.0.16 fta,beanstalk{/callout}部署过程前期准备{callout color="#f0ad4e"}a. 配置中控机到新服务器的免密登录b. 前往节点管理安装agent{/callout}#登录中控机,下载软件包 mkdir -p /data && cd /data wget http://172.17.0.10:803/bkce_co_package-6.0.4.tgz && tar xvf bkce_co_package-6.0.4.tgz #配置中控机和新增服务器之间的免密码登录 ssh root@172.17.0.10 -o "StrictHostKeyChecking no" "echo sucess" #将标准运维模板上传 wget https://bkopen-1252002024.file.myqcloud.com/ce/bk_sops_co_package-6.0.4.dat{message type="success" content="详细步骤: 打开标准运维 -> 项目流程 -> 导入 -> 点击上传 -> 创建新流程->导入bk_sops_co_package-6.0.4.dat"/}#中控机检查 install.config value_modules=(es7 monitorv3\(influxdb-proxy\) monitorv3\(monitor\) monitorv3\(grafana\) influxdb\(bkmonitorv3\) monitorv3\(transfer\) fta beanstalk log\(grafana\) log\(api\) kafka\(config\)) for module in ${value_modules[@]}; do if grep ${module} /data/install/install.config >/dev/null; then echo -e "The \e[1;31m ${module} \e[0m module exists in install.config, please remove it before deploying."; fi; done #登录新服务器,设置hostname LIP=`/sbin/ifconfig eth0 | grep inet | grep -v inet6 | awk '{print $2}' | sed 's/\.//g'` hostnamectl set-hostname bkopen-$LIP echo -e "\033[32m [hostname 配置] ==> OK \033[0m" echo -e "\033[32m hostname:bkopen-$LIP \033[0m"监控平台部署{message type="success" content="选择 ce[bkmonitorv3] 流程模版进行新建任务"/} 参数 {callout color="#f0ad4e"}172.17.0.15 #ctrl_ip 中控机IP/data/bkmonitorv3_package-3.3.1931.tgz #whole_pkg_path 安装包路径 172.17.0.2 #待部署的IP地址{/callout}{card-describe title="重新部署方法"}浏览器进入 http://paas.bktencent.com/admin/ App-->应用基本信息-->监控平台--->应用开发状态(已下架) 重装{/card-describe}日志平台部署{message type="success" content="选择ce[bklog] 新建任务"/}参数 {callout color="#f0ad4e"}172.17.0.15 #ctrl_ip 中控机IP /data/bklog_package-4.2.645.tgz #whole_pkg_path 安装包路径 172.17.0.8 #待部署的IP地址{/callout}故障自愈{message type="success" content="选择 ce[fta] 新建任务"/}参数 {callout color="#f0ad4e"}172.17.0.15 #ctrl_ip 中控机IP /data/fta_package-5.2.14-ce.tgz #whole_pkg_path 安装包路径 172.17.0.16 #待部署的IP地址{/callout}
2022年07月02日
29 阅读
0 评论
1 点赞
1
2
3