- 博客(24)
- 收藏
- 关注

原创 keepalived高可用web集群,使用falcon进行监控
环境:1、web环境:centos-7.9+nginx-1.19.22、监控环境:centos-7.9+openfalcon-0.2.03、堡垒机:centos-7.9+ansible-2.9.23名称:构建一个keepalived高可用的nginx负载均衡的web集群,并使用open-falcon对整个nginx集群进行监控项目拓扑图:脚本准备:1、一键编译安装部署nginx2、一键部署agent3、一键安装部署ngx_metric采集nginx数据4、playbook的yml文件使
2021-08-29 18:07:51
534
2

原创 使用python检测linux服务器是否宕机脚本
基本思路和原理:1、使用python的os库操作linux服务器( 使用ping命令检查网络,nc检查端口,如果二者都执行失败,则判断机器宕机)2、使用python的sys库获取脚本执行的参数(即ip列表)3、使用多线程处理,加快处理速度#!/usr/bin/python3# -*- coding: utf-8 -*-# author: suwenyangimport osfrom sys import argvimport threadingdef ping_once(ip):
2021-08-18 20:48:20
759

原创 基于双vip的MySQL的主从复制(实现读写分离,半同步,GTID,延迟备份功能)
项目名称:构建一个简单的MySQL主从复制集群项目环境:两台Linux操作系统的服务器(虚拟机)CentOS7.9 / MySQL5.7.33项目描述:为了提升MySQL的并发能力构建一个简单的MySQL集群,并实现读写分离,大大提高MySQL集群的业务处理能力。同时深入学习MySQL的整体部署和对集群架构的理解。项目步骤:项目名称:构建一个简单的MySQL主从复制集群项目环境:3台2核的MySQL服务器(虚拟机)centos-7.9 + mysql-5.7.332台2核的中间件服务器(虚拟
2021-04-25 13:09:59
430
1
原创 Vue和axios解决后端传输过来的图片乱码问题
问题:显示乱码:解决代码: refreshCaptcha(){ let that=this axios.get('你的api',{ responseType: 'arraybuffer', }) .then(response => { return 'data:image/png;base64,' + btoa( new Uint8Array(re
2022-03-14 23:14:02
1259
原创 vue和django跨域问题的解决
1 在终端安装解决跨域相关的包python -m pip install django-cors-headers2 在django项目中的setting.py文件钟加入以下配置‘corsheaders’,注释csrf, 添加 ‘corsheaders.middleware.CorsMiddleware’,最后添加这两行配置...
2022-03-08 21:39:04
592
原创 把sqlalchemy对象转化成json数据类型
def to_json_all(msg: list): import json data = {} if type(msg) == list: for i in range(len(msg)): temp_dict = {} j = 0 for k, v in msg[i].__dict__.items(): if j > 0:
2022-01-14 18:45:07
1457
原创 linux里文件系统相关
硬链接拥有inode号,用于硬链接重要文件软连接相当于windows里的快捷方式命令:lnf : 链结时先将与 dist 同档名的档案删除 -d : 允许系统管理者硬链结自己的目录 -i : 在删除与 dist 同档名的档案时先进行询问 -n : 在进行软连结时,将 dist 视为一般的档案 -s : 进行软链结(symbolic link) -v : 在连结之前显示其档名 -b : 将在链结时会被覆写或删除的档案进行备份 -S SUFFIX : 将备份的档案都加上 SUF
2021-12-29 15:46:06
272
原创 docker常用命令
docker常用命令1.查看当前运行的所有容器docker ps -a2.停止所有容器(container),这样才能够删除其中的images:docker stop $(docker ps -a -q)3.如果想要删除所有容器(container)的话再加一个指令:docker rm $(docker ps -a -q)4.查看当前有那些镜像(images)docker images5.删除镜像(images),通过镜像(images)的id来指定删除谁docker rmi 6.想要
2021-09-21 20:11:31
105
原创 Linux中sed命令
sed的常用编辑命令P:打印匹配行 printd:删除指定行 deletea:在匹配行后面追加 appendi:在匹配行前面插入 insertc:整行替换 changer:将文件内容读入 reads:字符串替换(匹配正则表达式)substitutionsed的常用选项-n:只显示匹配处理的行(否则会输出所有)-e:执行多个编辑命令时(一般用 ; 代替)-i:直接在文件中进行修改,而不是输出到屏幕-r:支持扩展正则表达式-f:从脚本文件中读取内容并执行(文件中的编辑命令,每行一个,不
2021-09-07 10:28:57
318
原创 shell脚本干货
处理文本方法:cat $test.txt |while read linedo echo $linedonecase方法:read -p "input: " optioncase $option in 1) echo 1 ;; 2) echo 2 ;; 3) echo 3 ;; *) echo error
2021-09-06 16:55:49
342
原创 iptables防火墙策略
iptables的四表五链:四表:raw,mongon,nat,filter五链:PREROUTING, POSTROUTING, FORWAROD, INPUT, OUTPUT
2021-09-03 22:40:26
759
原创 Linux操作系统永久修改主机名
先查看linux版本[root@localhost ~]# cat /etc/redhat-release主机名一般默认为 localhost.localdomain,可通过hostname 查看[root@localhost ~]# hostnamelocalhost.localdomaincentos71、修改/etc/hostname文件,将localhost.localdomain改成自己定义的主机名vim /etc/hostname2、修改/etc/hosts文件,方便访问本
2021-08-19 11:33:40
1428
原创 Linux中的三种安装软件方式(rpm, yum, 编译安装)
一、Linux中的三种安装软件方式区别:1、rpm:安装rpm包时,如有关系依赖包,需要自己去解决依赖关系2、yum:可以自动解决依赖关系,可以配置多个资源仓库3、编译安装:可以指定安装路径,根据自己需求进行定制二、rpm安装1、rpm(Red-Hat Package Manager)由Red Hat公司提出,被众多Linux发行版所采用,建立统一的数据文件,详细记录软件包的安装,卸载等变化信息,能够自动分析软件包的依赖关系2、RPM软件包软件素材参考:http://rpmfind.net
2021-08-18 21:27:49
9158
原创 python环境下使用requirements.txt安装多个依赖包
当我们做项目时,需要安装很多个第三方库和环境依赖包,直接pip install 就显示十分的繁琐,我们就可以创建一个requirements.txt文件,把当前项目所有依赖包及其精确版本号写入,可以直接一次性把项目环境部署好- 创建requirements.txtpip freeze > requirements.txt- 安装requirements.txt里面做需要的第三方库和环境依赖包pip install -r requirements.txt...
2021-08-01 21:47:15
674
原创 脚本一键编译安装MySQL
脚本代码如下:#!/bin/bash#解压mysql二进制安装包tar xf mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz#移动mysql解压后的文件到/usr/local下改名叫mysqlmv mysql-5.7.33-linux-glibc2.12-x86_64 /usr/local/mysql#新建组和用户 mysqlgroupadd mysql#mysql这个用户的shell 是/bin/false 属于mysql组 useradd
2021-07-10 17:46:25
490
原创 脚本一键编译安装nginx
1、一键安装脚本如下:#!/bin/bash# 解决依赖关系yum install gcc pcre-devel openssl-devel -y# 下载nginx安装包curl -O http://nginx.org/download/nginx-1.19.2.tar.gz# 解压tar -xf nginx-1.19.2.tar.gz# 建立一个用户useradd mynginxecho "123456" |passwd mynginx --stdincd nginx-1.
2021-07-10 16:43:17
211
原创 Linux中的awk命令
1.awk是linux里面的一个文本处理命令(工具)–》程序–》awk完整语法#ENGIN{commands}: 处理数据前执行的命令#//: 匹配代码块,可以是字符串或者正则表达式#{commands}: 每行都执行的命令#END{commands}: 处理数据后执行的命令#file:指定路径的文件awk 'BEGIN{commands}//{commands}END{commands}' fileawk的数据字段变量$0表示整行文本$1表示文本中第1个数据字段$2表示文本中第2个
2021-07-03 11:01:23
251
原创 Linux中grep命令
1.grep介绍grep命令是Linux中的一个强大的文本过滤查找工具,可接正则表达式过滤,把匹配行打印出来基本语法grep [-option] pattern filename2.常用参数直接加匹配内容(匹配内容可加 " " 也可以不加)# 输出/etc/passwd有mysql的行grep mysql /etc/passwdcat /etc/passwd |grep mysql# 查看有关mysql服务的进程相关信息ps -ef |grep "mysql"-v:反向
2021-07-02 21:36:57
3462
原创 Linux中的find命令
find命令方便我们查找Linux中的目录或文件1.基本语法find path -option expresstion2.按名称查找# 查找根目录下命名含有passwd的文件find / -name passwd# 查找根目录下以.c结尾的文件find / -name *.c3.按用户名和组查找# 查找根目录下指定属主的目录或文件find / -user 用户名# 查找根目录下指定属组的目录或文件find / -group 组名4.按绝对路径深度查找# 查找根目录下绝对路径
2021-07-02 21:28:37
494
原创 Linux机器配置ssh免密通道登录
准备2台Linux服务器,两台机器之间能相互ping通1.单向信任关系a)在client机器上生成密钥,默认存放路径是/root/.ssh,ssh-keygen -t ecdsa 是指定密钥的加密格式,不接 -t 默认是 rsa 加密格式,可以man ssh-keygen 查看 详情[root@client ~]# ssh-keygen -t ecdsab)以 .pub结尾的为公钥,将公钥传到server机器上去ssh-copy-id -i /root/.ssh/id_ecdsa.pub roo
2021-06-27 15:35:18
279
原创 DNS域名服务器的搭建
DNS(Domain name system)网络拓扑结构图如下*一、缓存域名服务器的搭建1.在DNS服务器上安装软件yum install bind* -y2.开启服务systemctl start named 也可用以下命令设置DNS服务开机启动systemctl enable named3.通过查看进程或者端口号确保服务是否开启通过进程查看通过端口号查看,如果没有 netstat 命令,使用以下命令进行安装yum install net-tools -y4.修改配
2021-06-20 17:10:47
4615
3
原创 SNAT和DNAT的原理以及实验
SNAT(Source Network Address Translation)源地址转换,根据指定条件修改数据包的源IP地址,缓解了ipv4匮乏的问题。DNAT(Destination Network Address Translation)目的地址转换,根据指定条件修改数据包的目的IP地址,保证了内网服务器的安全本次实验可以更清楚的了解SNAT和DNAT的工作原理1.实验环境:(具体配置如图)2.两个实验中,防火墙服务器和server router是同一台服务器,在这台服务..
2021-04-26 20:36:14
1306
原创 MySQL中实现简单的主从复制
项目名称:构建一个简单的MySQL主从复制集群项目环境:两台Linux操作系统的服务器(虚拟机)CentOS7.9 / MySQL5.7.33项目描述:为了提升MySQL的并发能力构建一个简单的MySQL集群,并实现读写分离,大大提高MySQL集群的业务处理能力。同时深入学习MySQL的整体部署和对集群架构的理解。项目步骤:1.两台服务器的基本信息如下:2.在准备好的的2台Linux系统的机器上使用脚本一键安装部署好二进制版本的MySQL在master服务器上配置/etc/my.cnf文件中
2021-04-08 23:20:47
174
1
原创 Linux中tr命令
tr命令是一个字符转换工具只能对stdin操作,不能直接对文件进行操作使用tr转换字符的基本语法tr SET1 SET2用SET2中的字符替换掉SET1中同一位置的字符[root@firewall-server lianxi]# echo 123456 |tr 123 abcabc456[root@firewall-server lianxi]# echo $PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin[r
2021-02-09 21:20:08
223
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人