自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(74)
  • 收藏
  • 关注

原创 Mysql数据库的主从复制

将源码编译装好的mysql数据库发送至两个纯净的实验环境安装过程:https://editor.csdn.net/md/?articleId=109447109rsync -r /usr/local/mysql/ [email protected]:/usr/local/rsync -r /usr/local/mysql/ [email protected]:/usr/local/修改配置文件在主库# vim /etc/my.cnf[mysqld]datadir=/usr/

2020-12-01 11:57:12 168

原创 Nginx的常用设置

由于企业环境不同,会遇到各种各样的问题,为了解决问题,正常生产,要对nginx进行配置优化实验环境一台安装好nginx并可以正常使用nginx的主机,两台测试机nginx服务器状态可视化vim /usr/local/nginx/conf/nginx.confnginx -s reload测试查看状态不产生日志vim /usr/local/nginx/conf/nginx.confnginx -s reload访问控制测试:黑名单用户访问白名单用户访问网页加密vim

2020-11-05 16:32:30 191

原创 利用Nginx+tomcat实现memcached的资源接管

nginx+tomcat安装并启动tomcat工具tar zxf apache-tomcat-7.0.37.tar.gz -C /usr/localcd /usr/localln -s apache-tomcat-7.0.37/ tomcatcd tomcat/bin./startup.sh修改nginx配置文件vim /usr/local/nginx/conf/nginx.conf重启nginx服务nginx -s reload测试编写jsp发布页#vim /usr

2020-11-03 15:32:15 246

原创 memcached缓存架构优化

*基本架构:web -> nginx -> .php -> php-fpm:9000 -> memcached -> mysql安装memcache工具包yum install memcached -ysystemctl start memcached安装memcache源码包tar zxf memcache-4.0.5.2.tar.gz这时切换至源码包没有configure执行文件需要执行phpizecd memcache-4.0.5.2phpize.

2020-11-03 11:53:53 230 1

原创 Mysql+phpMyAdmin+nginx源码包安装并实现Mysql数据库图形化

解压安装包tar zxf mysql-boost-5.7.31.tar.gzcd mysql-5.7.31安装cmake命令yum install cmake -y安装参数cmake \ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #指定安装目录 -DMYSQL_DATADIR=/usr/local/mysql/data \ #数据库存放目录 -DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock \

2020-11-02 16:33:58 266 1

原创 利用keepalived+haproxy实现LVS负载均衡高可用集群

实验环境准备四台可以互相ping通的主机,其中server1,server2作为调度器server3,server4作为服务器,配置好yum仓库,关闭火墙和selinux实验思路用keepalived来实现服务的高可用,haproxy作为调度器安装haproxyyum install haproxy -y修改haproxy配置文件vim /etc/haproxy/haproxy.cfg修改日志文件vim /etc/rsyslog.conf启动haproxysystemctl

2020-10-30 11:09:59 249

原创 利用keepalived+nginx实现LVS负载均衡高可用集群

实验环境准备四台可以互相ping通的主机,server1和server2为nginx,server3和server4作为服务器,配置好yum仓库,关闭火墙和selinux实验思路用keepalived来实现服务的高可用,nginx作为调度器,ipvsadm作为管理系统自带LVS的终端源码包安装nginxtar zxf nginx-1.19.1.tar.gz切换到解压后的安装目录执行安装命令./configure --prefix=/usr/local/nginx --with-http_ss

2020-10-30 01:02:31 87

原创 利用keepalived+arptables+ipvsadm实现LVS负载均衡的高可用集群

什么是LVS负载均衡在生产环境中往往有很庞大的访问量,这种情况下一台服务器是满足不了的,需要利用调度器来控制多台服务器的访问,并且将负载压力均衡分担。实验环境准备四台可以互相ping通的主机,配置好yum仓库,关闭火墙和selinux实验思路用ipvsadm控制内核中的LVS,用arptables实现VIP的广播和伪装,用keepalived实现资源的自动接管(高可用)。安装工具包yum install keepalived ipvsadm -y查看调度内容ipvsadm -ln清空

2020-10-29 13:48:06 267

原创 利用pcs+pacemaker+corosync实现(HA)高可用集群

实验环境搭建创建一台操作系统是rhel7.6的虚拟机node,配置好网络仓库,解析,网卡设置,关闭火墙和selinux后封装克隆node虚拟机,虚拟机域名为node1,node2,node3,主机名分别为server1,server2,server3配置好三台主机的网络,使三台主机能够相互ping通实验目的和实验步骤使用corosync作为集群消息事务层,pacemaker作为集群资源管理器,pcs作为CRM的接口管理工具。要求实现http的高可用功能实验步骤实现简单的http高可用将ser

2020-10-27 17:15:04 2714 1

原创 Github基本操作

什么是GithubgitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名gitHub,可以存储,上传,下载代码什么是GitGit是目前世界上最先进的分布式版本控制系统(没有之一)。Git与Github的区别git是软件,它可在本地建立仓库,你写的代码的各个版本都可以存着github是网上仓库,你写的代码的各个版本都可以存着。GitHub仓库地址https://github.comGitHub操作建立GitHub仓库上传代码至GitHu

2020-10-26 13:42:31 69

原创 Python中的CMDB自动化资产扫描Django项目

nmap模块安装nmap模块pip3 install python-nmap -i https://pypi.douban.com/simple扫描网段存活的IPimport nmapnm = nmap.PortScanner()result = nm.scan(hosts='172.25.254.0/24', arguments='-n -sP')print(result)hosts = nm.all_hosts()print(hosts)扫描是否为Linux系统import t

2020-10-26 12:24:12 437 1

原创 Python练习

链表的创建及头插法与尾插法class Node(object): def __init__(self,value): self.value = value self.next = Noneclass Linkedlist(object): def __init__(self,head=None,tail=None): self.head = head self.tail = tail def head_insert(

2020-10-21 12:05:34 80

原创 Python中的微信报警

微信必须可以登录网页才能使用此功能微信登录import itchatitchat.auto_login()itchat.send('你好,文件传输助手')try: username = itchat.search_friends(remarkName='好友名称')[0]['UserName']except Exception as e: print('查询好友失败,不能发送消息')else: itchat.send('wdnmd',toUserName=usernam

2020-10-21 11:57:59 164

原创 系统基础信息模块和文件对比模块

psutil系统监控及进程管理且跨平台的系统管理库。项目实战:Linux服务器主机监控脚本from datetime import datetimeimport psutiltry: import os os_uname = os.uname()except Exception as e: import platform os_uname = platform.uname()now_time = datetime.now()boot_time = dateti

2020-10-21 11:31:57 130 1

原创 Python自动化运维基础

什么是自动化运维运维早期:服务器体量小,部署步骤少,操作简单,对运维人员要求较低。运维人员都是通过手工执行命令操作管理硬件,软件资源,运维人员需要执行大量的重复性命令来完成日常的运维工作随着互联网汗液的飞速发展:服务器体量大,部署步骤多,操作频繁,对运维人员要求提高(至少掌握一门编程语言)。自动化运维就是将大量的重复性操作自动化,让工具或系统代替人工来自动完成具体的运维工作,解放生产力,提高效率,降低运维成本为什么要进行自动化运维自动化运维势在必行,主要有以下几点:手工运维缺点多:手工操作易发生

2020-10-21 11:07:24 520 1

原创 Python面向对象编程三大特性

对象和类类(class):是现实或思维世界中的实体在计算机中的反映,它将数据以及这些数据上的操作封装在一起对象(object):是具有类型的变量,类和对象是面向对象编程技术中的基本的概念类是创建实例的摸版对象是一个一个具体的实例例如:运行封装特性面向对象的三大特性是指:封装,继承和多态封装,顾名思义就是将内容封装到某个地方,以后再去调用被封装在某处的内容所以在使用面向对象封装特性时,需要:1:将内容封装到某处2:通过对象调用被封装的内容通过对象调用被封装的内容:对象.属性名通

2020-10-09 19:01:22 229

原创 Python中的模块与包

模块模块就是工具包,要想使用这个工具包中的工具(比如函数)就要导入这个模块模块是非常简单的Python文件,单个Python文件就是一个模块,两个模块就是两个Python文件模块的导入import 模块名1,模块名2import 模块名.函数名from 模块名 import 函数名/变量名import 长模块名 as 短模块名from 模块名 as import *问题1为什么必须加上模块名调用呢?import 模块名.函数名因为可能存在这样一种情况:在多个模块含有相同名称的函数,如

2020-10-09 17:57:09 114

原创 Python中的异常处理

什么是异常Error(错误):是系统中的错误,程序员是不能改变和处理的,如系统崩溃,内存空间不足,方法调用栈溢等。遇到这样的错误建议让程序终止Exception(异常):表示程序可以处理的异常,可以捕获并且恢复,遇到这类异常,应该尽可能处理异常,使程序恢复运行,而不是应该随意终止程序常见的异常IndentatioEerror:缩进错误Keyboardlnterrupt:Ctrl+C被按下UnboundLocalError:有同名的全局变量异常处理机制Pythob的异常机制主要依赖try,ex

2020-10-09 16:24:20 182 1

原创 Python高级特性

生成式列表生成式列表生成式就是一个用来生成列表的特定语法形式的表达式。是Python提供的一种生成列表的简洁形式,可以快速生成一个新的列表字典生成式字典生成式就是一个用来生成字典的特定语法形式的表达式集合生成式快速生成集合实例:生成器在Python中一遍循环一遍计算的机制称为生成器生成器的作用在性能限制需要用到,比如读取一个10G的文件,如果一次性将文件内容放到内存中处理的话,内存可能会溢出,但使用生成器把读写交叉处理进行,比如使用readline和readlines就可以在循环读取

2020-10-08 18:41:55 137

原创 Python中的文件操作

文件操作介绍操作文件打开文件在python代码中open命令可以打开一个已经存在的文件,或者创建一个不存在的文件(默认参数为’r’)当使用r参数打开文件,表示只是读取文件,文件必须存在当使用w参数打开文件,表示可以对文件有写权限,文件不存在时会创建文件,文件存在时会清空里边数据并且将自定义数据写入w+参数:w参数和r参数结合当使用a参数打开文件,表示可以对文件有写权限,文件不存在时会创建文件,文件存在时会在文件末尾追加自定义数据a+参数:a参数和r参数结合b参数:一般与r,w,a参数配合使

2020-10-07 18:05:25 182

原创 Python函数

函数概述如果在开发程序时需要某块代码多次但是为了提高编写的效率以及代码重复使用,把具有独立功能的代码组织为一个模块,这就是函数从实现函数的角度来看,至少需要清除以下三点:1:函数需要几个关键的动态变化的数据,这些数据应该被定义成函数的参数2:函数需要传出几个关键的重要数据,这些数据应该被定义成返回值3:函数的内部实现过程函数的创建和调用实例:一个简单判断大小的函数函数的帮助函数的变量在函数外定义的变量叫做全局变量在函数内定义的变量叫做局部变量全局变量作用于全局,局部变量只在函数

2020-10-01 18:49:05 204

原创 Python中的列表,元组,集合,字典

数组包含同一个类型元素的组例如:[1,2,3,4]列表打了激素的数组可以包含不同类型元素例如:[1,2,3,3.1,‘hello’]列表的特性重复和连接 ,索引和切片,成员操作符,for循环实例:重复和连接索引和切片成员操作符for循环列表的常用操作排序sort:正序reverse:列表倒装步长排序增加append:追加extend:拉伸,拓展insert:插入(用索引定位)删除remove:删除pop:弹出(可以直接给弹出的元素赋值

2020-10-01 16:35:09 164

原创 Python中内置数据结构字符串

字符串的创建和赋值字符串的创建赋值有三种方式实例:第一种第二种第三种运行转义符号\b:退格\n:换行\r:回车\t:TAB键字符串建立赋值属性字符串是不可变的,只能通过赋一个空字符串或者使用del语句来清空或者删除一个字符串,但是没有必要显示的删除字符串。定义这个字符串的代码结束会自动释放这些字符串字符串基本特性1:连接操作与重复操作2:成员操作符3:正向索引和反向索引4:可迭代对象,for循环索引通过数字方式表示字符所在字符串中的位置定义一个

2020-09-30 23:11:05 72

原创 Python中流程控制语句

思维导图python中的代码执行方式python中的代码执行流是从上到下贯穿执行if语句if单分支语句如果满足条件就去做实例:运行双分支语句如果满足条件就去做,如果不满足条件就去做实例:运行多分支语句如果满足第一个条件做…如果满足第二个条件做…(第三个第四个等)…如果不满足所有条件做…实例:运行三元运算符简化版的双分支语句实例:运行random模块random.random():生成一个0到1的随机浮点数random.uniform(a,b):生

2020-09-25 21:18:56 175

原创 Python在Windows中的搭建

python解释器的安装和配置下载python:www.python.org选择windows安装exe格式开始安装,选择自定义安装自定义设置选择自定义安装位置,建议不要安装在c盘安装成功

2020-09-25 17:34:28 98

原创 Python基础语法知识与巩固

思维脑图Python中的变量什么是变量变量是内存中的一个地址,用一个固定的字符串表示这个地址,这个字符串就是变量,对象赋值实际上是对象的引用变量的命名变量由字母,数字,下划线组成,不能以数字开头Pyhton中,变量定义时不需要指定类型,当需要使用变量时必须给这个变量赋值实例:给变量a赋值1查看给1error赋值1查看,不能使用,变量不能以数字开头Python中的数字类型int:整数long:长整数(python3中合并为整数)bool:布尔值True,falsefloat:

2020-09-24 11:02:02 119

原创 编程与python

编程与python脑图什么是编程语言程序可以看作对一系列动作执行过程的描述计算机程序执行的整个过程:计算机按照我们的命令去做动作,我们用一种特殊的语言对计算机说一个动作,他就会去执行,这个过程就可以视作编程,编程时所用的语言就是编程语言编程语言分类机器语言计算机只能识别0和1所以最早的编程语言是机器语言,这种语言极其不方便,很难实现一些复杂操作汇编语言汇编语言通过简单的英语单词来编程,这种语言虽然比机器语言方便很多,但是他的可移植性很差,往往从一个系统移动到另外一个系统就不能使用高级语言

2020-09-23 15:43:51 119

原创 Ansible中的角色使用

ansible rolesansible 角色简介1:Ansible roles 是为了层次化,结构化的组织Playbook2:rokes就是通过分别将变量,文件,任务,模块及处理器放置于单独的目录中,并可以便捷的include它们3:roles一般用于基于主机构建服务的场景中,在企业复杂业务场景中应用的频率很高4:以特定的层级目录结构进行有组织的tasks,variables,handers,templates,files等;相当于函数的调用把各个功能切割成片段来执行roles目录结构fil

2020-09-23 14:17:12 212

原创 Ansible中的任务执行控制

循环循环迭代任务简单循环looploop:赋值列表{{item}}:迭代变量名称实例:vim loop.yml运行循环散列或字典列表运行条件判断when:- 条件1- 条件2判断符号=:value == “字符串”,value == 数字<:value < 数字>:value > 数字<=:value <= 数字>=:value >= 数字!=: value != 数字is defined value:valu

2020-09-22 16:22:31 227

原创 Ansible中的变量及加密

变量命名只能包含数字,下划线,字母只能用下划线或字母开头变量级别全局:从命令行或配置文件中设定的play:在play和相关结构中设定的主机:由清单,事实或注册的任务变量优先级:狭窄范围与广域范围变量设定和使用方式在playbook中直接定义变量编写playbookvim user.yml在文件中定义变量定义变量vim userlistvim user.yml设定主机变量和清单变量在定义主机变量和清单变量时使用vim inventoryvim user.yml

2020-09-16 09:59:46 185

原创 Ansible中的playbook

playbook功能playbook是由一个或多个play组成的列表playbook文件使用YAML来写YAML是一种表达资料序列的格式,类似XML全名Yet Another Markup Language2001年首次发表www.yaml.org特点可读性好和脚本语言交互性好易于实现使用程序执行流梳理方式可扩展性强语法简介在文件中用—开始,用…结尾次行一般书写文件内容缩进严格大小写敏感key/value可以多行书写也可以一行书写,一行书写用“,”隔开value可以是

2020-09-15 14:17:29 98

原创 Ansible中的常用模块

Ansible实现管理的方式Ad-Hoc:利用ansible命令直接完成管理,主要用于临时命令使用场景playbook:ansible脚本,主要用于大型项目场景,需要前期规划Ad-Hoc执行方式帮助ansible-doc:现实模块帮助的命令格式ansible-doc 参数 模块常用参数-l :列出可用模块-h :显示指定模块的playbook片段Ansible命令运行方式及常用参数格式ansible 清单 -m 模块 -a 模块参数常用参数–version:显示版本-m mod

2020-09-15 11:49:48 233

原创 shell脚本练习(萌新的mysql数据库备份脚本)

1:数据库备份sh db_dump.sh westos(westos为数据库密码)备份所有数据库到/mnt/mysqldump/数据库名.sql当备份失败报错当文件存在输入S跳过备份,输入B时存在的文件变为数据库名_backup.sql,备份文件为数据库名.sql,输入O直接覆盖当文件不存在直接备份vim db_dump.sh测试安装mariadb-server测试打开数据库测试执行初始化测试创建备份目录测试当文件存在...

2020-09-10 15:02:31 87

原创 Ansible的安装及部署

实验环境配置准备四台主机Ansible主机:主机名ansible.westos.com IP 192.168.2.254nod1主机:主机名nod1.westos.com IP 192.168.2.1nod2主机:主机名nod2.westos.com IP 192.168.2.2nod3主机:主机名nod3.westos.com IP 192.168.2.3Ansible对企业运维的重要意义Ansible可以对文件实现批量处理,对远程主机批量操作Ansible的安装配置epel源dnf

2020-09-09 22:18:32 235

原创 shell脚本加密

解压安装,cd shc-3.8.9make install编写一个脚本vim shell.sh脚本加密shell.sh.x:是加密后的shell.sh.x.c:是shell转化成了c语言运行加密脚本这样的加密有个问题,就是在其他的主机无法运行换一种加密方式,在本机和其他主机也可以运行...

2020-09-09 17:36:38 610

原创 shell中的运算

运算符号+:加法-:减法*:乘法/:除法%:除法后的余数**:乘方++:自加1- -:自减1<:小于>:大于>=:大于等于<=:小于等于=:等于j+=i:j=j+ij*=i:j=j*ij/=i:j=j/ij%i:j=j%i运算指令(())letbc$[ ]expr注意:expr无法运算乘法printf ‘%0.2f’ .3...

2020-09-09 16:58:08 205 1

原创 shell的执行流控制

for循环格式for 定义变量do 使用变量执行动作done 结束例1vim for.shsh for.sh例2vim for.shsh for.sh,每间隔2循环一次例3sh for.sh例4sh for.sh例5sh for.sh脚本练习1编写脚本查看ip地址1-10是否通畅,并显示ipvim ip_check.shsh ip_check.sh脚本练习2编写脚本,实现1:40s 倒计时vim time.shsh time.shw

2020-09-09 15:08:06 100

原创 shell脚本中的变量

什么是变量变量就是内存一片区域的地址变量存在的意义命令无法操作一直变化的目标用一串固定的字符来表示不固定的目标可以解决此问题shell中脚本变量的定义方法环境级别export a=1这种变量设置在退出环境后消失用户级别vim /root/.bash_profile环境变化后依然存在切换用户,无法使用...

2020-09-08 23:05:09 309

原创 shell脚本的基础知识

什么是shell脚本中命令的解释器shell脚本的意义1:记录命令的执行过程和执行逻辑,方便以后重复执行2:脚本可以批量处理主机3:脚本可以定时处理主机如何创建shell脚本#!/bin/bash:幻数

2020-09-08 15:50:58 108

原创 SHELL脚本中的文本处理工具(grep,sed,awk)

grep过滤关键字符grep -e=egrepgrep参数vim filegrep westos file:过滤westos关键字grep ^westos file :过滤以westos开头的关键字grep westos$ file :过滤以westos结尾的关键字grep -i westos file:过滤westos关键字并且忽略大小写grep -E “\<westos” file:过滤westos关键字并且前边不能有字符grep -E “\westos\>”

2020-09-04 16:33:40 231

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除