解决方案:虐神百度小偷开源系统 v1.0
优采云 发布时间: 2022-10-20 10:21解决方案:虐神百度小偷开源系统 v1.0
虐神百度小偷完全免费,没有任何功能限制,而且开源,是php采集初学者的最佳范例。不管你是否精通php编码,甚至不知道如何打字,使用本程序在1分钟内搭建一个千万页面的网站。支持伪静态,windows下支持httpd.ini,linux下支持.htaccess,如果空间不支持,也可以选择伪静态模式或者不支持空间的动态模式,但是搜索不是很友好。
程序用户缓存功能,后台设置控制是否开启。
网站后台管理路径//你的网址/admin/ 默认密码通过
预留7个广告位,可在后台直接设置
友情链接、首页导航、搜索关键词等部分可以在后台设置
其他linux空间用户,请注意以二进制方式上传
ps:百度小偷2.0将新增以下功能:
1.数据采集后自动存入本地数据库,保存在本地
2、会同步采集Ask和其他网站的数据
整套解决方案:一键部署Prometheus,并预置仪表盘和数据源
【摘要】一键部署普罗米修斯+格拉法纳+cAdvisor+节点导出器,设置主机或容器监控。使用Grafana的配置方法,仪表板和数据源通过配置进行配置。
零,前言
中秋节遇见教师节,那是双福幸福~~钥匙小盒子祝大家中秋节圆满!教师节快乐!
一、概述
普罗米修斯是一个开源的监控报警系统,*敏*感*词*会,成为继k8s之后第二个托管在CNCF的项目,在kubernetes容器管理系统中,通常用普罗米修斯进行监控,同时也支持各种出口商采集数据,也支持推门进行数据上报,普罗米修斯的性能足以支持数以万计的集群。
Grafana是一个跨平台的开源测量分析和可视化工具,可以可视化采集数据并及时通知警报接收者。它主要具有以下六个特点:
节点导出器可以采集机器(物理机、虚拟机、云主机等)的监控指标,并且可以采集指标,包括 CPU、内存、磁盘、网络、文件数量和其他信息
cAdvisor实时监控和性能数据采集节点机器上的资源和容器,包括CPU使用率、内存使用率、网络吞吐量和文件系统使用量,cAdvisor集成在 Kubelet 中,当 kubelet 启动时,cAdvisor 将自动启动 cAdvisor,即一个 cAdvisor 仅监视一台节点计算机。
二、监控逻辑图
3. 部署说明
普罗米修斯的几种安装方法是图像准备
监控主机基础信息的镜像:docker pull prom/node-exporter:v1.3.1监控主机容器信息的镜像:docker pull zcube/cadvisor:v0.39.3收集主机信息的镜像:docker pull prom/prometheus:v2.33.5展示主机信息的镜像:docker pull grafana/grafana:8.4.3
图像包装
docker save -o /docker_images/node-exporter.tar node-exporter:v1.3.1docker save -o /docker_images/cadvisor.tar cadvisor:v0.39.3docker save -o /docker_images/prometheus.tar prometheus:v2.33.5docker save -o /docker_images/grafana.tar grafana:8.4.3
4. 准备相关文件和脚本
4.1 创建泊坞站撰写监控.yml 文件
version: "3.7"<br />services:<br /> node-exporter:<br /> image: prom/node-exporter:v1.3.1<br /> container_name: bdyh-node-exporter<br /> restart: on-failure<br /> privileged: true<br /> deploy:<br /> resources:<br /> limits:<br /> memory: 1024M<br /> reservations:<br /> memory: 300M<br /> environment:<br /> TZ: Asia/Shanghai<br /> volumes:<br /> - /proc:/host/proc:ro<br /> - /sys:/host/sys:ro<br /> - /:/rootfs:ro<br /> ports:<br /> - "9100:9100"<br /> networks:<br /> - pk_net<br /> cadvisor:<br /> image: zcube/cadvisor:v0.39.3<br /> container_name: bdyh-cadvisor<br /> restart: on-failure<br /> privileged: true<br /> deploy:<br /> resources:<br /> limits:<br /> memory: 1024M<br /> reservations:<br /> memory: 300M<br /> environment:<br /> TZ: Asia/Shanghai<br /> volumes:<br /> - /:/rootfs:ro<br /> - /var/run:/var/run:ro<br /> - /sys:/sys:ro<br /> - /var/lib/docker/:/var/lib/docker:ro<br /> - /dev/disk/:/dev/disk:ro<br /> - /cgroup:/cgroup:ro <br /> ports:<br /> - "9080:8080"<br /> networks:<br /> - pk_net<br /> prometheus:<br /> image: prom/prometheus:v2.33.5<br /> container_name: bdyh-prometheus<br /> restart: on-failure<br /> privileged: true<br /> deploy:<br /> resources:<br /> limits:<br /> memory: 1024M<br /> reservations:<br /> memory: 300M<br /> environment:<br /> TZ: Asia/Shanghai<br /> volumes:<br /> - /data/monitoring/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml<br /> ports:<br /> - "9090:9090"<br /> depends_on:<br /> - node-exporter<br /> - cadvisor<br /> networks:<br /> - pk_net<br /> grafana:<br /> image: grafana/grafana:8.4.3<br /> container_name: bdyh-grafana<br /> restart: on-failure<br /> privileged: true<br /> deploy:<br /> resources:<br /> limits:<br /> memory: 1024M<br /> reservations:<br /> memory: 300M<br /> environment:<br /> TZ: Asia/Shanghai<br /> volumes:<br /> - /data/monitoring/grafana/grafana-storage:/var/lib/grafana<br /> #利用grafana的provisioning方式,通过配置方式添加datasource和dashboard,预置仪表盘和数据源<br /> - /data/monitoring/grafana/provisioning:/etc/grafana/provisioning<br /> - /data/monitoring/grafana/json:/tmp/dashboards<br /> ports:<br /> - "3000:3000"<br /> depends_on:<br /> - prometheus<br /> networks:<br /> - pk_net<br />networks:<br /> pk_net:<br /> external: true<br /><br />
注意:使用grafana的配置方法,通过配置添加数据源和仪表板,并预设仪表板和数据源。
4.2 配置文件和 json 文件保护程序.yml 配置文件内容如下:
global:<br /> scrape_interval: 60s<br /> evaluation_interval: 60s<br /> <br />scrape_configs:<br /> - job_name: prometheus<br /> static_configs:<br /> - targets: ['bdyh-prometheus:9090']<br /> labels:<br /> instance: prometheus<br /> <br /> - job_name: <b style="color:#000000">Linux<br /> static_configs:<br /> - targets: ['bdyh-node-exporter:9100']<br /> <br /> - job_name: docker<br /> static_configs:<br /> - targets: ['bdyh-cadvisor:8080']<br />
Docker host monitoring.json,
Liunx主机监控.json可以从官方网站下载,需要调整内部的uid,自定义一个名称,此名称应与数据源.yaml文件相同。以下示例如下:
...<br /> "datasource": {<br /> "type": "prometheus",<br /> "uid": "bdyh-prometheus-9090"<br /> }<br /> ...<br />
用于在“数据源”下存储数据源的配置文件(可以配置多个项),如 datasources.yaml 中所示:
# # config file version<br />apiVersion: 1<br /><br /># # list of datasources that should be deleted from the database<br />deleteDatasources:<br /> - name: Prometheus<br /> orgId: 1<br /><br /> # list of datasources to insert/update depending<br /> # on what's available in the database<br />datasources:<br /> # name of the datasource. Required<br /> - name: Prometheus<br /> # datasource type. Required<br /> type: prometheus<br /> # access mode. direct or proxy. Required<br /> access: proxy<br /> # org id. will default to orgId 1 if not specified<br /> orgId: 1<br /> # 自定义UID,可以用于在配置的其他部分引用此数据源,如果没有指定,将自动生成<br /> uid: bdyh-prometheus-9090<br /> # url<br /> url: http://bdyh-prometheus:9090<br /> # database password, if used<br /> password:<br /> # database user, if used<br /> user:<br /> # database name, if used<br /> database:<br /> # enable/disable basic auth<br /> basicAuth: false<br /> # basic auth username<br /> basicAuthUser: ''<br /> # basic auth password<br /> basicAuthPassword: ''<br /> # enable/disable with credentials headers<br /> withCredentials: false<br /> # mark as default datasource. Max one per org<br /> isDefault: false<br /> # fields that will be converted to json and stored in json_data<br /> jsonData:<br /> graphiteVersion: "1.1"<br /> tlsAuth: false<br /> tlsAuthWithCACert: false<br /> httpHeaderName1: "Authorization"<br /> # json object of data that will be encrypted.<br /> secureJsonData:<br /> tlsCACert: "..."<br /> tlsClientCert: "..."<br /> tlsClientKey: "..."<br /> # <br /> httpHeaderValue1: "Bearer xf5yhfkpsnmgo"<br /> version: 1<br /> # allow users to edit datasources from the UI.<br /> editable: true<br />
仪表板 .yaml 文件如下所示:
apiVersion: 1<br />providers:<br /> - name: 'default'<br /> orgId: 1<br /> folder: ''<br /> type: file<br /> updateIntervalSeconds: 10<br /> options:<br /> path: /tmp/dashboards<br />
注意:/tmp/仪表板是仪表板的 JSON 文件。例如:Docker 主机监控.json 和 Liunx 主机监控.json
4.3 一键式部署脚本
筛选 Docker 以查找是否存在此自定义网络脚本:install-network.sh
#!/bin/bash<br />###############################################################<br /># 作者:键客小盒子<br /># 脚本名:install-network.sh<br /># 时间:2022-09-10<br /># 功能描述:过滤Docker是否存在此自定义网络<br />###############################################################<br />echo -e 'nn-----------------------执行install-network start-----------------------'<br />echo ""<br />#自定义一个网络名称变量<br />network_name="pk_net"<br /><br />filterName=`docker network ls | grep $network_name | awk '{ print $2 }'`<br /><br />if [ "$filterName" == "" ]; then<br /> echo "不存在pk_net,将创建一个自定义的网络pk_net,如下所示:"<br /> echo ""<br /> #不存在就创建一个自定义的网络pk_net,此处的10.139可以自定义,不冲突即可<br /> sudo docker network create --driver bridge --subnet 10.139.0.0/16 --gateway 10.139.0.1 pk_net<br />else<br /> echo "已存在网络pk_net"<br />fi<br />echo -e 'nn-----------------------执行install-network end-----------------------'<br /><br />
一键式部署主机和容器监控:install-monitoring.sh
#!/bin/bash<br />###############################################################<br /># 作者:键客小盒子<br /># 脚本名:install-monitoring.sh<br /># 时间:2022-09-10<br /># 功能描述:一键部署主机及容器监控(Prometheus+Grafana+cAdvisor+node-exporter)<br />###############################################################<br />echo -e 'nn-----------------------Docker install monitoring start-----------------------'<br />cd `dirname $0`<br />SH_PATH=`pwd`<br />BASE_PATH=${SH_PATH%/*}<br />echo ""<br />echo ""<br />echo "#########################################################"<br />echo "# 导入监控镜像 -- 开始 #"<br />echo "#########################################################" <br />sudo docker load -i ./docker_images/node-exporter.tar<br />sudo docker load -i ./docker_images/cadvisor.tar<br />sudo docker load -i ./docker_images/prometheus.tar<br />sudo docker load -i ./docker_images/grafana.tar<br />echo "#########################################################"<br />echo "# 导入监控镜像 -- 结束 #"<br />echo "#########################################################"<br /><br />echo ""<br />echo ""<br />echo "#########################################################"<br />echo "# 创建docker自定义网络 -- 开始 #"<br />echo "#########################################################"<br />#预先创建一个自定义的网络pk_net,此处的10.139可以自定义,不冲突即可<br />sudo chmod u+x *.sh<br />sudo bash ./install-network.sh<br />sleep 2s<br />echo "#########################################################"<br />echo "##创建docker自定义网络 -- 结束 #"<br />echo "#########################################################"<br /><br />echo ""<br />echo ""<br />echo "#########################################################"<br />echo "# 创建 monitoring目录 -- 开始 #"<br />echo "#########################################################"<br /> <br />sudo mkdir -p $BASE_PATH/monitoring/prometheus<br />sudo mkdir -p $BASE_PATH/monitoring/grafana/grafana-storage<br />sudo mkdir -p $BASE_PATH/monitoring/grafana/provisioning<br />sudo mkdir -p $BASE_PATH/monitoring/grafana/json<br />sudo mkdir -p $BASE_PATH/docker-compose-file<br />sudo cp ./monitoring/prometheus/prometheus.yml $BASE_PATH/monitoring/prometheus/prometheus.yml<br />sudo cp -r ./monitoring/grafana/provisioning/* $BASE_PATH/monitoring/grafana/provisioning/<br />sudo cp -r ./monitoring/grafana/json/* $BASE_PATH/monitoring/grafana/json/<br />sudo cp -r $BASE_PATH/pkulaw/docker/docker-compose-monitoring.yml $BASE_PATH/docker-compose-file<br />sudo chmod -R 777 $BASE_PATH/monitoring<br />sudo chmod -R 777 $BASE_PATH/monitoring/grafana/grafana-storage<br />echo "#########################################################"<br />echo "# 创建 monitoring目录 -- 结束 #"<br />echo "#########################################################"<br /><br />echo ""<br />echo ""<br />echo "#########################################################"<br />echo "# 根据实际路径调整docker-compose中的映射路径 -- 开始 #"<br />echo "#########################################################"<br />BASE_COMPOSE_URL1=$BASE_PATH/monitoring/prometheus<br />BASE_COMPOSE_URL2=$BASE_PATH/monitoring/grafana<br />sudo sed -i "s#/data/monitoring/prometheus#$BASE_COMPOSE_URL1#" $BASE_PATH/docker-compose-file/docker-compose-monitoring.yml<br />sudo sed -i "s#/data/monitoring/grafana#$BASE_COMPOSE_URL2#" $BASE_PATH/docker-compose-file/docker-compose-monitoring.yml<br />echo "#########################################################"<br />echo "# 根据实际路径调整docker-compose中的映射路径-- 结束 #"<br /><br />echo ""<br />echo ""<br />echo "#########################################################"<br />echo "# 安装 monitoring -- 开始 #"<br />echo "#########################################################"<br />docker-compose -p monitoring --compatibility -f $BASE_PATH/docker-compose-file/docker-compose-monitoring.yml up -d<br />echo "#########################################################"<br />echo "# 安装 monitoring -- 结束 #"<br />echo "#########################################################"<br /><br />echo ""<br />echo ""<br />echo "#########################################################"<br />echo "# monitoring开放端口 -- 开始 #"<br />echo "#########################################################"<br />sudo firewall-cmd --permanent --add-port=9100/tcp<br />sudo firewall-cmd --permanent --add-port=9080/tcp<br />sudo firewall-cmd --permanent --add-port=9090/tcp<br />sudo firewall-cmd --permanent --add-port=3000/tcp<br />sudo firewall-cmd --reload<br />echo "#########################################################"<br />echo "# monitoring开放端口 -- 结束 #"<br />echo "#########################################################"<br />echo -e 'nn-----------------------Docker install monitoring end-----------------------'<br />
完整的目录结构如下:
注意:上面的格拉法纳存储文件是格拉法纳的原创配置,只需保持静止并安装即可。
4.4 一键部署
$ chmod +x install-monitoring.sh<br />$ ./install-monitoring.sh
原文最初发表于微信公众号(架构到美国):一键部署普罗米修斯,预设仪表盘和数据源