运维工作常见问题处理101-127(四)

问题101、概念

PV:Page View,即访问量,中文翻译为页面浏览,又称点击量,用户没刷新一次就会被计算一次
UV:Unique Vistor,即独立访问,访问网站的一台电脑客户端为一个访客。一个电脑客户端可能有多个不通的自然人访问,但仍然是一个UV;如果企业通过NAT技术共享上网,那么出去的公网ip有且只有一个,这时候UV仍然是一个
QPS:Query Per Second,每秒查询率,可以综合反映系统的最大吞吐能力;对应的是Fetches/Sec,即每秒的相应请求数,又称最大吞吐能力

问题102:expect的用法

https://blog.51cto.com/14316149/2419456

问题103、mysql慢查询

1、服务器的cpu,进程,负载
top----看mysql的资源占用;看服务器的负载
2、查看mysql的tcp连接情况
netstat -tanlp |grep 141:3306 | awk ‘{print $5}’ | cut -d ‘:’ -f 4|sort|uniq -c |sort -k 1 -n -r 按照链接主机的数量大小依次排序
3、进入到数据库中,查看mysql的慢查询
show variables like ‘slow_query%’; mysql是否打开慢查询、慢查询的日志路径
show variables like ‘long_query_time’; 执行时长,超过这个时间会计入慢查询日志
show global status like ‘%slow%’; 系统有多少慢查询

开启慢查询日志
方法一:全局变量设置

mysql> set global slow_query_log=‘ON’; #将 slow_query_log 全局变量设置为“ON”状态
mysql> set global slow_query_log_file=’/usr/local/mysql/data/slow.log’; #设置慢查询日志存放的位置
mysql> set global long_query_time=1; #查询超过1秒就记录
方法二:配置文件设置
修改配置文件my.cnf,在[mysqld]下的下方加入
[mysqld]
slow_query_log = ON
slow_query_log_file = /usr/local/mysql/data/slow.log
long_query_time = 1

tailf 查询mysql的慢查询语句
4、连接数
show variables like ‘max_connections’;
show global status like ‘Max_used_connections’; MySQL服务器过去的最大连接数,最大连接数占上限连接数的85%左右(Max_used_connections / max_connections * 100% ≈ 85%)

问题104、dstat 用法

yum -y install dstat
dstat 1 3 #每一秒刷新一次,总共刷新3次;加上第一次的信息,共输出4次
dstat --top-cpu 3 3 #查询系统中占用cpu最多的进程,也是没三秒刷新一次,总共刷新3次,加上第一次的信息,共输出4次
dstat --top-mem 3 3 #查询系统中占用cpu最多的进程,也是没三秒刷新一次,总共刷新3次,加上第一次的信息,共输出4次

问题105、随机生成输字和字符

/dev/random 存储着系统当前执行环境的实时数据,是堵塞的随机数发生器,读取有时须要等待。
/dev/urandom 非堵塞随机数发生器,读取操作不会产生堵塞。

echo $RANDOM 随机生成0-32767之间的数字

echo ( ( (( ((RANDOM%100)) 生成100以内的随机数
echo ( ( (( ((RANDOM%1000)) 生成1000以内的随机数
echo ( ( (( ((RANDOM%10000)) 生成10000以内的随机数

tr -dc ‘A-Za-z0-9’ < /dev/urandom | head -c 6 生成随机6为任意字符
date +%s%N | md5sum | head -c 6 生成随机6为任意字符

head -n 20 /dev/urandom | cksum | cut -f1 -d ’ ’ 任意随机数
head -n 20 /proc/sys/kernel/random/uuid | cksum | cut -f1 -d ’ ’ 任意随机数
结合 cksum 产生整数、md5sum 产生字符串,可以产生随机的整数或字符串(仅含小写字母和数字)
openssl rand -base64 8 生成8为字符数
openssl rand -base64 8 | cksum 生成随机整数
openssl rand -base64 8 | cksum | cut -c 1-8 # 截取1-8位数
openssl rand -base64 8 | md5sum 生成随机字符串

openssl rand -base64 8 | md5sum | cut -c 1-8 # 截取1-8字符串

echo “proxy=http://192.168.171.149:8088” >> /etc/yum.conf

问题106、通过sed awk cut 获取网卡的ip地址

请执行命令取出 linux 中 eth0 的 IP 地址
cut方法1:
#ifconfig ens33 | sed -n 2p | cut -d " " -f10
192.168.20.130
awk方法2:
#ifconfig ens33|awk ‘NR==2’|awk -F " " ‘{print $2}’
192.168.20.130
sed方法3:
#ifconfig ens33 | sed -n ‘/inet /p’|sed ‘s/^inet//g’| sed ‘s#netmask.*##g’
把inet开头的替换为空,把netmask以后的替换为空
192.168.20.130

问题107、umount下载不成功,报错can’t stat() fuse.gvfs-fuse-daemon file system /home/leon/.gvfs,Output information may be incomplete 和 Transport endpoint is not connected

方法一:使用fuser命令
fuser -m -v /mnt 可以查看到当前占用/mnt目录的进程号,然后用kill杀死它
或者
fuser -m -k /mnt 直接杀死这个进程;如果你不是很明确是否要杀死所有霸占设备的程序,你还可以加一个 -i 参数,这样每杀死一个程序前,都会询问,(如fuser -m -v -i -k /mnt)
-m 参数表明指定的路径是一个挂载点显示所有使用指定文件系统的进程,后面可以跟挂载点,或是dev设备 ( Thanks lisir 😃;
-v 参数给出详细的输出
方法二:使用umount -l
参考https://blog.csdn.net/dddxxxx/article/details/78783501
选项 –l 并不是马上umount,而是在该目录空闲后再umount。
还可以先用命令 ps aux 来查看占用设备的程序PID,然后用命令kill来杀死占用设备的进程,这样就umount的非常放心了。

gitlab最新部署 https://www.cnblogs.com/root0/articles/12762789.html

问题108、mysql创建函数

show variables like ‘%func%’; #查询函数是否开启
set global log_bin_trust_function_creators=1; #临时开启函数权限

#创建函数
delimiter $$ #为命令终止符号,代替分号,因为分号在begin…end中会用到;
CREATE FUNCTION currval(v_seq_type TINYINT(1))
RETURNS INTEGER(11)
BEGIN
DECLARE VALUE INTEGER;
SET VALUE = 0;
SELECT current_val INTO VALUE FROM sequence WHERE seq_type = v_seq_type;
RETURN VALUE;
END;
delimiter; #函数创建成功后需恢复分号为命令终止符号
删除函数
DROP FUNCTION currval;

mysql 定时任务
事件调度器(Event Scheduler),可以用做定时执行某些特定任务,来取代原先只能由操作系统的计划任务来执行的工作。事件调度器有时也可称为临时触发器(temporal triggers),因为事件调度器是基于特定时间周期触发来执行某些任务,而触发器(Triggers)是基于某个表所产生的事件触发的,区别也就在这里
————————————————
SHOW VARIABLES LIKE ‘event_scheduler’; #查看当前是否已开启事件调度器
SELECT @@event_scheduler; #查看当前是否已开启事件调度器

SET GLOBAL event_scheduler = 1; #临时命令行
或者
SET GLOBAL event_scheduler = ON; #临时命令行
或者
event_scheduler=1 #配置文件

创建event

DROP EVENT IF EXISTS e_reset_seq;

CREATE EVENT e_reset_seq
ON SCHEDULE EVERY 1 DAY STARTS DATE_ADD(
DATE(CURDATE()),
INTERVAL 16 HOUR
) DO
UPDATE
sequence
SET
current_val = 0
WHERE seq_type = 1;

问题109、mysql 报错提示信息不明确或者MySQL 5.7 error和warnings无具体信息显示

如:
(root@localhost)[mysql5.7]> select * from czx;
ERROR 1146 (42S02): Unknown error 1146
而不是
(root@localhost)[mysql5.6]> select * from czx;
ERROR 1146 (42S02): Table ‘auod.czx’ doesn’t exist

解决:
注释掉mysql的配置文件中的basedir配置即可。

问题110、Linux添加定时任务提示权限不够/var/spool/cron/tmp.XXXXFSq8E3: 权限不够 crontab: edits left in /tmp/crontab.HaZsu1

处理办法

进入/var/spool下查看cron目录是正常的,但是在cron里面没有权限建立文件这个根源。
1.可以尝试先在/var/spool/cron目录下用vim编辑一个测试文件,看是否可以保存在这个cron目录下,如果无法保存提示权限问题。
那么可能目录有什么特殊的地方,root用户也被约束了
查看是否有特殊的属性
lsattr /var/spool/cron/
chattr -ai /var/spool/cron

问题111、在nginx中配置proxy_pass时,注意的问题

如果是按照^~匹配路径时,要注意proxy_pass后的url最后的/,当加上了/,
相当于是绝对根路径,则nginx不会把location中匹配的路径部分代理走;如果没有/,则会把匹配的路径部分也给代理走。

正则模式下
^(.)incomplete. 匹配包含incomplete的所有行
^\s+ 消除空行

问题112、mysql启用日志和查看日志

mysql有以下几种日志:
错误日志: -log-err
查询日志: -log
慢查询日志: -log-slow-queries
更新日志: -log-update
二进制日志: -log-bin

show variables like ‘%log%’; #是否启用了日志
show master status; #查看二进制日志
show master logs; #显示二进制日志数目
mysqlbinlog mail-bin.000001 #看二进制日志文件用mysqlbinlog
show variables like ‘general%’; #查询日志功能是否开启
general_log:日志功能是否开启,默认关闭OFF
general_log_file:日志文件保存位置

#log
log-error=/usr/local/mysql/log/error.log #错误日志
log=/usr/local/mysql/log/mysql.log #查询日志,对所有执行语句进行记录
log-slow-queries= /usr/local/mysql/log/slowquery.log #慢查询日志
long_query_time=2 #是指执行超过多久的sql会被log下来,这里是2秒

命令行:
set global general_log=‘ON’; #开启日志查询功能

set global slow_query_log=‘ON’; #将 slow_query_log 全局变量设置为“ON”状态
set global slow_query_log_file=’/usr/local/mysql/data/slow.log’; #设置慢查询日志存放的位置
set global long_query_time=1; #查询超过1秒就记录

问题113、yum本地源搭建(上传CentOS-7-x86_64-DVD-1810.iso镜像到root下)

1、挂载光驱
mkdir -p /mnt/cdrom
mount CentOS-7-x86_64-DVD-1810.iso /mnt/cdrom
2、配置yum本地源
cat < /etc/yum.repos.d/local.repo
[local]
name=local
baseurl=file:///mnt/cdrom
enabled=1
gpgcheck=0
EOF
3、配置开机自动挂载光驱
echo ‘/root/CentOS-7-x86_64-DVD-1810.iso /mnt/cdrom iso9660 defaults 0 0’ >> /etc/fstab
mount -a

问题114、mysql8 主从同步配置

1、master配置(/etc/my.cnf)
server_id = 10 #必须项
log_bin = /u01/mysql/binlog/binlog #必须项
max_binlog_size = 1G
expire_logs_days = 7

mkdir /u01/mysql/binlog
chown -R mysql:mysql /u01/mysql/binlog
/etc/init.d/mysqld restart

2、slave配置(/etc/my.cnf)
server_id = 20 #必须项
expire_logs_days = 7
max_binlog_size = 1G

/etc/init.d/mysqld restart
3、master配置授权用户
create USER ‘repl’@’%’ IDENTIFIED WITH mysql_native_password BY ‘repl%2018’;
GRANT REPLICATION SLAVE ON . TO ‘repl’@’%’;

show master status; #查看日志及偏移量

4、在slave中授权
CHANGE MASTER TO
MASTER_HOST=‘192.168.18.17’,
MASTER_PORT=3306,
MASTER_USER=‘repl’,
MASTER_PASSWORD=‘repl%2018’,
MASTER_LOG_FILE=‘binlog.000001’,
MASTER_LOG_POS=155;

start slave;
show slave status\G;

问题115、tr令详解
  1. 用途
    tr,translate的简写,主要用于压缩重复字符,删除文件中的控制字符以及进行字符转换操作。
  2. 语法
    tr [OPTION]… SET1 [SET2]
    -s 替换重复的字符
      -s: squeeze-repeats,用SET1指定的字符来替换对应的重复字符 (replace each input sequence of a repeated character that is listed in SET1 with a single occurrence of that character)
    -d 删除字符
      -d:delete,删除SET1中指定的所有字符,不转换(delete characters in SET1, do not translate)
    -t 字符替换
      -t:truncate,将SET1中字符用SET2对应位置的字符进行替换,一般缺省为-t
    -c 字符补集替换
      -c:complement,用SET2替换SET1中没有包含的字符
  3. 实例
    a) -s 参数
    echo “aaabbbaacccfddd” | tr -s [abcdf]
    abacfd
    可以使用这一特点,删除文件中的空白行,实质上跟上面一样,都是用SET1指定的字符来替换对应的重复字符

cat b.txt
I like football
Football is very fun!

Hello

cat b.txt | tr -s ["\n"]
I like football
Football is very fun!
Hello

b) -d 参数
echo “a12HJ13fdaADff” | tr -d “[a-z][A-Z]”
1213
echo “a1213fdasf” | tr -d [adfs]
1213

c) -t 参数
echo “a1213fdasf” | tr -t [afd] [AFO]
A1213FOAsF
上述代码将a转换为A,f转换为F,d转换为O;可以利用这一特点,实现大小字母的转换

echo “Hello World I Love You” |tr -t [a-z] [A-Z]
HELLO WORLD I LOVE YOU

echo “HELLO WORLD I LOVE YOU” |tr -t [A-Z] [a-z]
hello world i love you

也可以利用字符集合进行转换

echo “Hello World I Love You” |tr -t [:lower:] [:upper:]
HELLO WORLD I LOVE YOU

echo “HELLO WORLD I LOVE YOU” |tr -t [:upper:] [:lower:]
hello world i love you

d) -c 参数
cat a.txt
Monday 09:00
Tuesday 09:10
Wednesday 10:11
Thursday 11:30
Friday 08:00
Saturday 07:40
Sunday 10:00

cat a.txt | tr -c “[a-z][A-Z]” “#” | tr -s “#” | tr -t “#” “\n”
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday
复制代码
上面代码中 tr -c “[a-z][A-Z]” “#” 表示将除大小字母以外的所有的字符都替换为#。

cat a.txt | tr -cs “[a-z][A-Z]” “\n”
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday

问题116、tr令详解

nginx: [emerg] socket() [::]:80 failed (97: Address family not supported by protocol)

原因是本机不支持ipv6协议,所以在nginx找那个禁用掉ipv6的配置项即可
/etc/nginx/sites-available/default
注释掉listen [::]:80 default_server;即可

问题117、dockerfile

FROM:定制的镜像都是基于哪个镜像的镜像
COPY:从上下文目录中复制文件或者目录到容器里指定路径,两种格式:shell和exec格式
COPY [–chown=:] <源路径1>… <目标路径>
COPY [–chown=:] ["<源路径1>",… “<目标路径>”]
RUN:用于执行后面跟着的命令行命令,两种格式:shell和exec格式
RUN <命令行命令>
RUN [“可执行文件”, “参数1”, “参数2”]
ADD:和 COPY 的使用格式一致(同样需求下,官方推荐使用 COPY)
ADD的优点:在执行 <源文件> 为 tar 压缩文件的话,压缩格式为 gzip, bzip2 以及 xz 的情况下,会自动复制并解压到 <目标路径>。
ADD的缺点:在不解压的前提下,无法复制 tar 压缩文件。会令镜像构建缓存失效,从而可能会令镜像构建变得比较缓慢。具体是否使用,可以根据是否需要自动解压来决定。
CMD:类似于 RUN 指令,用于运行程序,但二者运行的时间点不同:
CMD 在docker run 时运行;
RUN 是在 docker build。
作用:为启动的容器指定默认要运行的程序,程序运行结束,容器也就结束。CMD 指令指定的程序可被 docker run 命令行参数中指定要运行的程序所覆盖。
注意:如果 Dockerfile 中如果存在多个 CMD 指令,仅最后一个生效。

格式:
CMD <shell 命令> 
CMD ["<可执行文件或命令>","<param1>","<param2>",...] 
CMD ["<param1>","<param2>",...]  # 该写法是为 ENTRYPOINT 指令指定的程序提供默认参数
推荐使用第二种格式,执行过程比较明确。第一种格式实际上在运行的过程中也会自动转换成第二种格式运行,并且默认可执行文件是 sh。

ENTRYPOINT:类似于 CMD 指令,但其不会被 docker run 的命令行参数指定的指令所覆盖,而且这些命令行参数会被当作参数送给 ENTRYPOINT 指令指定的程序。

但是, 如果运行 docker run 时使用了 --entrypoint 选项,此选项的参数可当作要运行的程序覆盖 ENTRYPOINT 指令指定的程序。
优点:在执行 docker run 的时候可以指定 ENTRYPOINT 运行所需的参数。
注意:如果 Dockerfile 中如果存在多个 ENTRYPOINT 指令,仅最后一个生效。
格式:
ENTRYPOINT ["<executeable>","<param1>","<param2>",...]
可以搭配 CMD 命令使用:一般是变参才会使用 CMD ,这里的 CMD 等于是在给 ENTRYPOINT 传参,以下示例会提到。
eg:
FROM nginx
ENTRYPOINT ["nginx", "-c"] # 定参
CMD ["/etc/nginx/nginx.conf"] # 变参 
容器内会默认运行以下命令,启动主进程:nginx -c /etc/nginx/nginx.conf

ENV:设置环境变量,定义了环境变量,那么在后续的指令中,就可以使用这个环境变量
格式:
ENV
ENV = =…
ARG:构建参数,与 ENV 作用一至。不过作用域不一样。ARG 设置的环境变量仅对 Dockerfile 内有效,也就是说只有 docker build 的过程中有效,构建好的镜像内不存在此环境变量。
构建命令 docker build 中可以用 --build-arg <参数名>=<值> 来覆盖。
格式:
ARG <参数名>[=<默认值>]
VOLUME:定义匿名数据卷。在启动容器时忘记挂载数据卷,会自动挂载到匿名卷。
作用:
避免重要的数据,因容器重启而丢失,这是非常致命的。
避免容器不断变大。
格式:
VOLUME ["<路径1>", “<路径2>”…]
VOLUME <路径>
在启动容器 docker run 的时候,我们可以通过 -v 参数修改挂载点。
EXPOSE:仅仅只是声明端口。
作用:
帮助镜像使用者理解这个镜像服务的守护端口,以方便配置映射。
在运行时使用随机端口映射时,也就是 docker run -P 时,会自动随机映射 EXPOSE 的端口。
格式:
EXPOSE <端口1> [<端口2>…]
WORKDIR:指定工作目录。用 WORKDIR 指定的工作目录,会在构建镜像的每一层中都存在。(WORKDIR 指定的工作目录,必须是提前创建好的)。
docker build 构建镜像过程中的,每一个 RUN 命令都是新建的一层。只有通过 WORKDIR 创建的目录才会一直存在。
格式:
WORKDIR <工作目录路径>
USER:用于指定执行后续命令的用户和用户组,这边只是切换后续命令执行的用户(用户和用户组必须提前已经存在)。
格式:
USER <用户名>[:<用户组>]
HEALTHCHECK:用于指定某个程序或者指令来监控 docker 容器服务的运行状态。
格式:
HEALTHCHECK [选项] CMD <命令>:设置检查容器健康状况的命令,这边 CMD 后面跟随的命令使用,可以参考 CMD 的用法。
HEALTHCHECK NONE:如果基础镜像有健康检查指令,使用这行可以屏蔽掉其健康检查指令
ONBUILD:用于延迟构建命令的执行。简单的说,就是 Dockerfile 里用 ONBUILD 指定的命令,在本次构建镜像的过程中不会执行(假设镜像为 test-build)。当有新的 Dockerfile 使用了之前构建的镜像 FROM test-build ,这是执行新镜像的 Dockerfile 构建时候,会执行 test-build 的 Dockerfile 里的 ONBUILD 指定的命令。
格式:
ONBUILD <其它指令>

注意:如果 Dockerfile 中如果存在多个 CMD 指令,仅最后一个生效。
注意:Dockerfile 的指令每执行一次都会在 docker 上新建一层。所以过多无意义的层,会造成镜像膨胀过大,以 && 符号连接命令,这样执行后,只会创建 1 层镜像

问题118、es 命令行sql查询

1、查询gather-005中 NAME=‘Lihua’
curl -XGET ‘192.168.10.100:9200/major_info_201810/_search?pretty’ -H ‘Content-Type:application/json’ -d’
{
“query”:{
“match”:{
“NAME”:“Lihua”
}
}
}’

2、查询 gather-010中前两个
curl -XGET ‘192.168.10.100:9200/major_info_201810/_search?pretty’ -H ‘Content-Type:application/json’ -d’
{
“size”:2
}’
3、查询gather-000中area_type为0的前1个
curl -XGET ‘192.168.10.100:9200/major_info_201810/_search?pretty’ -H ‘Content-Type:application/json’ -d’
{
“size”:1,
“query”:{
“term”:{
“NAME.keyword”:“Lihua”
}
}
}’

问题119、nginx配置websocket

cat xinhua-backend.conf

#关键配置项
#add for websocket
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}

server
    {
        listen 8002;
        server_name 172.16.3.2;
        client_max_body_size 200M;
        root /u01/isi/application/xinhua-education/front/business; 

        location /proxy  {
            proxy_pass http://172.16.3.3:8097/;
            proxy_connect_timeout 6000;
            proxy_read_timeout 6000;
        }
#关键配置项
        location /webSocket {
            proxy_pass http://172.16.3.3:8097;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;   #和map中声明的变量对应起来
            proxy_set_header Connection $connection_upgrade;  #和map中声明的变量对应起来
        } 
}
问题120、华为云子网-网络ACL策略(上网和端口)

启动ping:网络acl–某个子网–入方向规则(启用ICMP,源和目的地址任意,即0.0.0.0/0,源端口和目的端口全部)
开启某个端口(如放通ssh端口):TCP协议,源地址任意,源端口全部,目的地址任意,目的端口22(如需要限制源ip的话,可做相应的调整)
确保上网:网络acl–某个子网–出方向规则(启用ipv4,协议全部,源和目的地址任意,即0.0.0.0/0,源端口和目的端口全部。)

问题121、linux 挂载错误Transport endpoint is not connected

umount -l /mnt #/mnt是挂载点

选项–l 并不是马上umount,而是在该目录空闲后再umount。
还可以先用命令 ps aux 来查看占用设备的程序PID,然后用命令kill来杀死占用设备的进程,这样就umount的非常放心了

问题122、谷歌浏览器70-77各个版本的rpm下载地址

安装包下载:https://dl.lancdn.com/landian/software/chrome/m/
驱动下载:https://npm.taobao.org/mirrors/chromedriver

问题123、k8s报错

报错提示:[ERROR FileContent–proc-sys-net-bridge-bridge-nf-call-iptables]
解决办法:
方法一:echo “1” >/proc/sys/net/bridge/bridge-nf-call-iptables
方法二: modprobe br_netfilter

问题124、promethues邮件告警显示时间问题

触发时间: {{ .StartsAt.Format “2020-01-02 15:04:05” }}
改成: {{ (.StartsAt.Add 28800e9).Format “2020-01-02 15:04:05” }}
其中 Add 28800e9 就是表示加8个小时。

原因:邮件自定义模板会需要使用 .StartsAt.Add 28800e9 ,但是微信不需要这样加也就是保持原样子 .StartsAt.Format 会自动转成北京时间的。

问题125、ansible 加密 解密

ansible-vault encrypt /etc/ansible/hosts 给hosts加密
ansible-vault view /etc/ansible/hosts --ask-vault-pass 查看hosts文件
ansible -i /etc/ansible/hosts node1 -m ping --ask-vault-pass 执行ansible命令

问题126、alertmanager邮件发送异常报错

level=info ts=2021-02-18T04:24:44.593Z caller=cluster.go:640 component=cluster msg=“gossip settled; proceeding” elapsed=10.000618469s
level=warn ts=2021-02-18T04:24:45.291Z caller=notify.go:674 component=dispatcher receiver=Melt-Media integration=email[1] msg=“Notify attempt failed, will retry later” attempts=1 err=“send RCPT command: 550 Mailbox not found or access denied”

出错原因:您要发送的收件人短时间内收到大量邮件,为避免受到恶意攻击,暂时禁止向该收件人发信。
改善建议:暂停向该收件人发信,稍后重新尝试。
特别提示:如果邮箱被注销了,但是还在发送列表里,也会导致这个问题

解决:是因为在alertmanager.yml文件中邮箱错误导致报错的

问题127、es耗时查询

http://192.168.16.8:9810/_tasks?pretty

都到这儿了,更多文章,详见个人微信公众号ALL In Linux,来扫一扫吧!
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值