自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 运维面试 -- export/import与 save/load区别

export/import与 save/load区别export/import 是根据容器来导出镜像(因此没有镜像的历史记录)而 save/load 操作的对象是镜像export/import 镜像的历史记录再导后无法进行回滚操作,而save/load镜像有完整的历史记录可以回滚Save镜像docker save -o /home/dyufei/tensorflow.tar tensorflow/tensorflowdocker save tensorflow/tensorflow

2022-02-10 17:33:14 378

原创 Web服务器基础 -- Tengine 环境部署

Tengine的部署[root@node02 ~]# wget -c http://tengine.taobao.org/download/tengine-2.3.3.tar.gz[root@node02 ~]# yum install gcc gcc-c++ make -y[root@node02 ~]# useradd -r -u 998 -c 'tengine user' -d /var/cache/nginx -s /sbin/nologin tengine[root@node02 ~]#

2022-01-14 20:20:04 566

原创 Haproxy 负载均衡高可用解决方案 -- Haproxy global配置

vim /etc/haproxy/haproxy.cfgglobal maxconn 100000 chroot /apps/haproxy stats socket /var/lib/haproxy/haproxy.sock mode 600 level admin #uid 99 #gid 99 user haproxy group haproxy daemon #nbproc 4 #cpu-map 1 0 #cpu-map 2 1 #cpu-map 3 2 #cpu-map

2022-01-14 18:17:19 461

原创 Haproxy 负载均衡高可用解决方案 -- Haproxy proxies 配置

haproxy Proxies 配置1、配置frontend和backend2、配置listen3、定义子配置文件1、配置frontend和backend[root@node01 ~]# vim /etc/haproxy/haproxy.cfg frontend webservice mode tcp bind 192.168.5.11:80 use_backend servers_pool1backend servers_pool1 server web1 192.168.5.12:8

2022-01-14 18:14:06 1338

原创 Haproxy 负载均衡高可用解决方案 -- haproxy日志配置

[root@node01 ~]# vim /etc/rsyslog.conf# Provides UDP syslog reception$ModLoad imudp$UDPServerRun 514... ...# Save haproxy messages also to haproxy.loglocal2.* /var/log/haproxy.log[root@node01 ~]# vim /

2022-01-14 18:09:04 248

原创 Haproxy 负载均衡高可用解决方案 -- Haproxy 环境的部署

文章目录1、什么是Haproxy1、认识Haproxy2、版本对比3、Haproxy功能二、Haproxy 环境的安装1、lua环境准备2、部署Haproxy1、什么是Haproxy1、认识HaproxyHAProxy是法国开发者 威利塔罗(Willy Tarreau) 在2000年使用C语言开发的一个开源软件,是一款具备高并发(一万以上)、高性能的TCP和HTTP负载均衡器,支持基于cookie的持久性,自动故障切换,支持正则表达式及web状态统计,目前最新TLS版本为2.6企业版:https:/

2022-01-13 19:07:17 462

原创 LVS 高可用性实现 -- ldirectord软件解决方案

LVS 高可用性实现 – ldirectord软件解决方案一、lvs 高可用的必要性LVS 不可用时 :Director不可用,整个系统将不可用;SPoF Single Point of Failure解决方案:高可用,keepalived、heartbeat/corosyncRS 不可用时:某RS不可用时,Director依然会调度请求至此RS解决方案: 由Director对各RS健康状态进行检查,失败时禁用,成功时启用常用解决方案:keepalivedheartbeat/coros

2022-01-13 17:56:37 542

原创 Git & Github & Gitee

Git 学习一、认识Git1、什么是Gitgit是一个分布式版本控制软件,最初由林纳斯·托瓦兹(Linus Torvalds)创作,于2005年以GPL发布。最初目的是为更好地管理Linux内核开发而设计。2、Git的特点 为什么用Git1.开源的代码管理软件2.分布式版本控制系统3.分散式协作存储工具和svn cvs相比有下面的好处:• 如遇服务器宕机, 整个协同工作无法进行, 因为此时无法进行代码更新提交,当然也不能checkout最新代码• 如果服务器数据丢失, 整个版本

2022-01-10 18:21:27 141

原创 监控案例实战 -- Zabbix 监控 php-fpm 性能状态

Zabbix 监控 php-fpm 性能状态前言一、配置 java-gateway前言本环境是基于 Centos 7.8 系统构建 Zabbix 学习环境安装 Zabbix-4.4.10 具体参考:Zabbix-4.4.10 环境部署一、配置 java-gateway部署 zabbix-Java-gateway[root@linux-rhel-7 ~]# yum install java zabbix-java-gateway -y[root@linux-rhel-7 ~]# systemc

2022-01-10 17:58:38 493

原创 Tomcat 监控

Tomcat 监控1、开发java监控页面2、jps监控3、Tomcat远程监控1、开发java监控页面[root@node01 ~]# vim /usr/local/tomcat/webapps/ROOT/meminfo.jsp<%Runtime rtm = Runtime.getRuntime();long mm = rtm.maxMemory()/1024/1024;long tm = rtm.totalMemory()/1024/1024;long fm = rtm.freeMe

2021-11-30 16:35:27 130

原创 Tomcat 虚拟主机案例

Tomcat 虚拟主机案例1、配置虚拟主机2、测试1、配置虚拟主机[root@node01 ~]# vim /usr/local/tomcat/conf/server.xml# 添加虚拟主机 <Host name="www.a.com" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Context docBase="/web/a" path="" relo

2021-11-20 13:21:55 546

原创 Tomcat 环境部署

Tomcat 环境部署1、安装jdk2、部署Tomcat3、配置Tomcat web控制页面4、Web站点部署(jsp)1、安装jdk[root@node01 ~]# yum install jdk-8u144-linux-x64.rpm -y[root@node01 ~]# java -versionjava version "1.8.0_144"Java(TM) SE Runtime Environment (build 1.8.0_144-b01)Java HotSpot(TM) 64

2021-11-19 22:54:51 1004

原创 判断Linux登录用户是否为管理员登录的四种方法

-- 方法一[root@node06 day02]# [ $USER = "root" ] && echo yes || echo noyes[tom@node06 ~]$ [ $USER = "root" ] && echo yes || echo nono-- 方法二[root@node06 day02]# [ $UID -eq 0 ] && echo yes || echo noyes[tom@node06 ~]$ [ $UID -eq

2021-10-30 20:45:07 3828

原创 Python 面向对象 之 继承

Python 面向对象 之 继承继承继承继承本质就是为实现代码的复用!属性和方法的继承class RichMan(object): def __init__(self): self.money = 100000000000000000000000000000000000000 self.company = "alibaba" def worlds(self): print("我不喜欢钱,我对钱不感兴趣") prin

2021-08-01 19:02:00 168

原创 Python 面向对象 之 封装

Python 面向对象 之 封装1、封装1.1 属性的封装 一1.2 属性的封装 二1.3 属性的封装 三面向对象三大特征:封装继承多态1、封装定义类class MyInfo(object): def __init__(self, name, age, gender): self.name = name self.age = age self.gender = genderif __name__ == '__main__':

2021-08-01 10:33:03 153

原创 Python 实现用户登录系统 案例 二(基于hashlib & sys & 对象序列化 [将用户名、密码信息序列化后保存到本地文件中 ])

Python 实现用户登录系统 案例 二(基于hashlib & sys & 对象序列化 [将用户名、密码信息序列化后保存到本地文件中 ])一级目录二级目录三级目录一级目录二级目录三级目录import sysimport hashlibimport pickle""" 实现一个用户登录系统,用户可以输入用户面进行用户的注册、用户的登录、退出系统等操作。 为了安全起见,引入hashlib中的MD5算法对用户密码进行明文加密。"""users = []s

2021-07-29 23:04:09 301

原创 Python 实现用户登录系统 案例 一(基于hashlib & sys)

Python 实现用户登录系统 案例一(基于hashlib & sys)基于hashlib 库MD5算法对用户密码进行加密用户名和密码信息存储在内存中import sysimport hashlib""" 实现一个用户登录系统,用户可以输入用户面进行用户的注册、用户的登录、退出系统等操作。 为了安全起见,引入hashlib中的MD5算法对用户密码进行明文加密。"""users = []slat = "'zhangwanqiangR%BIYGGF#BUYy

2021-07-28 14:25:04 424

原创 Python 常用模块总结

Python 常用模块总结1、random2、math3、os4、os.path5、sys6、hashlib7、hmac8、time9、datetime10、calendar11、UUID常见的模块randommathdatetimetimeosos.pathsyshashlibhmac… …模块的导入>>> import os>>> import hashlib [as hash]>>> import http.ser

2021-07-27 19:31:27 287 1

原创 PostgreSQL 并行查询

PostgreSQL 并行查询1、并行查询相关配置参数2、并行扫描2.1 并行顺序扫描2.2 并行索引扫描2.3 index-only扫描了解Oracle的朋友应该知道Oracle支持并行查询,比如 SELECT、UPDATE、DELETE大事务开启并行功能后能利用多核CPU,从而充分发挥便件性能,提升大事物处理效率,PostgreSQL在9.6版本前还不支持并行查询,SQL无法利用多核CPU提开性能,9.0放个开始支持并行查询,只是9.6版本的并行查询所支持的范围非常有限,例如只在顺序扫描、多表关联、聚

2021-07-13 16:43:49 433

原创 Python 字符串操作

Python 字符串操作字符串1、字符串的创建2、字符串的常见方法3、字符串的切片字符串1、字符串的创建--- 若数据类型>>> s = 'hello python'>>> type(s)<class 'str'>>>> ss = "i am zhangwanqiang">>> type(ss)<class 'str'>>>> sss = """i am a boy"""

2021-07-13 15:35:52 113

原创 Python 容器(List、Set、Hash、Dict)

Python 容器(List、Set、Hash、Dict)容器1、列表(1)列表的定义(2)元素的访问(3)遍历列表(4)列表的常见方法2、元组3、集合(1)集合的创建(2)集合的常见方法4、字典(1)字典的创建(2)元素的访问(3)常见方法容器列表(list)元组(tuple)集合(set)字典(dict)1、列表线性表:数组:连续内存的实现栈:先进后出,后进先出队列:先进先出,后进后出链表:单向链表:为指针指向首地址双向链表:收尾指向 Python

2021-07-13 15:33:40 551 1

原创 PostgreSQL 体系结构

PostgreSQL 体系结构1、概念梳理1.1 PostgreSQL数据库文件组成:1.2 数据库实例1.3 PostgreSQL 内部组成2、逻辑和物理存储结构2.1 数据库集簇2.2 数据库的逻辑结构2.3 物理存储结构1)名词解释:2)用户自定义创建表空间3、进程结构3.1 守护进程 & 服务进程3.2 辅助进程4、内存结构4.1 本地内存4.2 共享内存1、概念梳理1.1 PostgreSQL数据库文件组成:物理文件由一系列位于操作系统上的物理文件组成,通常将这些文理文件称为

2021-07-13 15:30:01 626

原创 PostgreSQL分区表案例实战

PostgreSQL分区表案例实战1、什么是分区表2、传统分区表2.1.1 创建分区表2.1.2 使用分区表i 父表插入数据ii 查看数据iii 分区表的查询执行计划iiii 查看分区表信息3、内置分区表3.1 创建分区表3.2 使用分区表总结:1、什么是分区表PostgreSQL10版本一个重量级的新特性是支持内置分区表,在分区表方面前进了一大步,目前支持范围分区和列表分区。继承加触发器方式实现的分区表称为传统分区表,10版本提供的分区表称为内置分区表。分区表主要有以下优势:当查询或更新一个分

2021-07-13 15:18:37 741 1

原创 PostgreSQL 入门实践

PostgreSQL 学习手册文章目录[*PostgreSQL 学习手册*]()一、什么是PostgreSQL1、认识PostgreSQL2、数据库的分类二、PostgreSQL的部署1、基于RPM方式部署三、PostgreSQL SQL学习1、数据库操作2、表操作3、表增删改4、表的查询(1)素材准备(2)查看表信息(3)按照约束条件产看表信息(4)模糊匹配(5)统计查询(6)套用函数查询(7)多表查询5、修改表结构6、索引7、视图四、事物1、开启事物2、回滚一、什么是PostgreSQL1、认识P

2021-07-02 15:40:53 248

原创 运维面试 -- docker save和docker export的区别

docker save和docker export的区别1、save/load,export/import成对使用。2、docker save保存的是镜像(image),docker export保存的是容器(container); # docker save busybox:latest -o busybox1.tar # docker export busybox -o busybox2.tar 可以打开tar文件,看到 busybox1.tar 里面是分层的 --- 镜像 可以打开ta

2021-05-15 18:26:57 413

原创 Python 使用 IO流 完成数据备份

from os import pathimport uuidimport timedef copy_file(): src = input("请输入要备份数据的路径:") dest = input("请输入保存备份数据的路径:") f = open(src, "rb") filename = src[src.rfind("\\")+1:] random_uuid = uuid.uuid4().hex filename = random_uuid + filename print(

2021-05-04 12:13:06 165

原创 Python 基于内存实现用户注册、登录系统(加密方式)

import sysimport hashlib# 用来存储所有的用户信息users = []slat = "liujianhong!@#$%^&*()_+-"def password_by_md5(password): md5 = hashlib.md5(password.encode("utf-8")) # 盐值 md5.update(slat.encode("utf-8")) return md5.hexdigest()def main(): print("~

2021-05-04 09:33:00 478

原创 Python 遍历指定磁盘下的视频文件

import osfrom os import path# def scanner_file(url):# # 查看指定目录下的文件# files = os.listdir(url)# # print(files)# for i in files:# # real_path = url + "\\" + i# # real_path = url + os.sep + i# real_path = path.join(url, i)# if path.isfil

2021-05-04 09:32:37 398

原创 Shell 面试题 -- 通过排列组合 1--4 生成三位数

[root@wan day5]# cat ex11.sh #!/bin/bash#########################################File Name: ex11.sh#Version: V1.0#Author: WanQiang#Email: [email protected]#Oranization: https://me.csdn.net/XY0918ZWQ#Cleated Time: 2021-04-24 23:51:14#Description:

2021-04-25 00:05:38 383

原创 Shell 面试题 -- 打印用户自定义乘法表

[root@wan day5]# vim lx2.sh#!/bin/bash#########################################File Name: lx2.sh#Version: V1.0#Author: WanQiang#Email: [email protected]#Oranization: https://me.csdn.net/XY0918ZWQ#Cleated Time: 2021-04-24 23:30:26#Description: ###

2021-04-25 00:04:07 120

原创 Shell 面试题 -- 位置参数 + 循环 批量拷贝文件

[root@wan day5]# vim lx1.sh#!/bin/bash#########################################File Name: lx1.sh#Version: V1.0#Author: WanQiang#Email: [email protected]#Oranization: https://me.csdn.net/XY0918ZWQ#Cleated Time: 2021-04-24 23:02:36#Description: ###

2021-04-25 00:02:39 233

原创 SHELL 之 文本三剑客 -- awk

[root@wan day8]# awk '{print}' passwd-- hello world输出[root@wan day8]# awk 'BEGIN {print "hello world"}'-- 输出指定的列[root@wan day8]# awk -F: '{print $1,$2,$3}' passwd | head -3-- 换行输出内容[root@wan day8]# awk 'BEGIN {print "zhang\nwan\nqiang"}'-- 格式化输出

2021-04-17 14:18:55 184

原创 SHELL 之 文本三剑客 -- sed

-- 打印指定的行 [root@wan day7]# sed -n '3 p' passwd daemon:x:2:2:daemon:/sbin:/sbin/nologin |-- 打印第一行 [root@wan day7]# sed -n '1 p' passwd root:x:0:0:root:/root:/bin/bash|-- 打印最后一行 [root@wan day7]# sed -n '$ p' passwd wan:x:1000:1000::/home/wan:/b

2021-04-17 14:17:45 201

原创 SHELL 之 文本三剑客 -- grep

|-- grep |-- 过滤含有‘root’字符的行 [root@wan ~]# grep root /etc/passwd root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologin |-- 忽略大小写,匹配含有‘root’字符的行 [root@wan ~]# grep -i root passwd root:x:0:0:root:/root:/bin/bash operat

2021-04-17 14:16:25 216

原创 Shell 脚本判断当前系统是否为管理员用户

Shell 脚本判断当前系统是否为管理员用户编写脚本[root@shell day2]# vim is_admin.sh#!/bin/bash#########################################File Name: is_admin.sh#Version: V1.0#Author: WanQiang#Email: [email protected]#Oranization: https://me.csdn.net/XY0918ZWQ#Cleated Time

2021-04-02 15:17:24 1406

原创 监控案例实战 -- Zabbix 监控 php-fpm 性能状态

Zabbix 监控 php-fpm 性能状态前言一、zabbix-agent 配置二、zabbix-server 配置三、数据采集前言本环境是基于 Centos 7.8 系统构建 Zabbix 学习环境安装 Zabbix-4.4.10 具体参考:Zabbix-4.4.10 环境部署一、zabbix-agent 配置配置 php-fpm# 部署 php-fpm[root@linux-rhel-7 ~]# yum install http://rpmfind.net/linux/centos/7

2021-03-24 19:23:56 239 1

原创 监控案例实战 -- Zabbix 监控 Nginx 当前的活动连接数

Zabbix 监控 Nginx 当前的活动连接数前言前言本环境是基于 Centos 7.8 系统构建 Zabbix 学习环境安装 Zabbix-4.4.10 具体参考:Zabbix-4.4.10 环境部署

2021-03-24 16:08:08 414 2

原创 监控案例实战 -- Zabbix 监控 企业级路由器

Zabbix 监控 企业级路由器前言一、监控 HUAWEI 路由器1、配置华为设备2、zabbix-server 监控二、监控 Cisco 路由器前言本环境是基于 Centos 7.8 系统构建 Zabbix 学习环境安装 Zabbix-4.4.10 具体参考:Zabbix-4.4.10 环境部署一、监控 HUAWEI 路由器1、配置华为设备网络拓扑配置华为云配置路由器<Huawei>sys[Huawei]int g0/0/0[Huawei-GigabitEthern

2021-03-19 22:12:24 1047

原创 监控案例实战 -- Zabbix 监控 Windows 主机

Zabbix 监控 Windows 主机前言前言本环境是基于 Centos 7.8 系统构建 Zabbix 学习环境安装 Zabbix-4.4.10 具体参考:Zabbix-4.4.10 环境部署

2021-03-19 18:11:22 466

原创 监控案例实战 -- Zabbix 监控 Linux 主机

Zabbix 监控 Linux 主机前言一、Linux 部署 zabbix-agent二、zabbix-server 配置前言本环境是基于 Centos 7.8 系统构建 Zabbix 学习环境安装 Zabbix-4.4.10 具体参考:Zabbix-4.4.10 环境部署一、Linux 部署 zabbix-agent安装 zabbix-agent[root@rhel7 ~]# vim /etc/zabbix/zabbix_agentd.confServer=192.168.5.11Ser

2021-03-19 15:45:20 219

空空如也

空空如也

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

TA关注的人

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