- 博客(116)
- 资源 (1)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Centos 7 报错mount.nfs: an incorrect mount option was specified的解决
自带LDAP服务的环境下学nfs的时候,记住一个东西。在服务端需要开启的服务是nfs-server和nfs-secure-server 在客户端,需要开启的服务是nfs-server和nfs-secure 记住了。错了,就会出问题。例如,你在客户端,开启的服务和服务端一样,都是nfs-server和nfs-secure-server的话,会让你的ldap出问题。如果你的客户端,没有...
2018-08-23 23:08:09
15783
1
原创 Linux性能优化学习笔记1
运维入门的时候,掌握的其中两个命令是top、uptime。这两个命令在某一个点其实是一样的,就是对于cpu平均负载这个点上。如下图所示这两个命令得到的load average(平均负载)是一样的。这里一共有三个数值。分别代表了cpu在1分钟、5分钟、15分钟的平均负载。 通过观察这里。我们可以以三个时间段cpu的平均负载情况来判断。服务器的cpu平均负载的趋势。1、假设服务器是有2个核心的cpu,那么怎么样才算是一个较为合理的平均负载呢。一般来说,我们都是已达到70%的数值来判断是较为合理的,当然了这个数值
2022-06-01 22:50:43
256
原创 面向对象:继承抛砖引玉出来的开闭、多态代码样例
# -*- coding:utf-8 -*-"""客户端代码调用父类,子类方法真正执行动作。---->多态新增子类方法,并不影响客户端代码和父类代码。--->开闭"""class Grenade: def __init__(self): """ 手榴弹类,作为客户端代码,调用伤害对象父类。 """ self.atk = 500 # 攻击 def explosion_effects(self.
2021-12-19 20:38:14
204
原创 利用Socket模块和Struct模块实现数据UDP传输
服务端代码# -*- coding:utf-8 -*-""" 使用udp完成服务端和客户端,客户端不断录入学生信息 将其发送到服务端,在服务端,将学生信息写入到一个文件中,每个学生信息 占一行 信息格式:id(int) name(str) age(int) score(float)"""import structimport socketIPADDR_PORT = ('127.0.0.1', 9999)file_save_server
2021-12-09 10:53:32
1576
原创 Python3使用xlwt模块实现excle表格化数据
这里拿的是passwd作为测试文件。后期优化一下可以通过交互灵活导出数据到excle表格没有模块的可以这样pip3 install xlwt代码如下
2021-06-01 23:34:51
125
原创 Oracle PLSQL单行数据的处理
非技术贴,仅作笔记一、单行数据,使用变量实现数据的提取与输出示例:查询employees表中,employee_id为150的行数据,提取last_name,
2021-05-30 13:46:20
490
原创 Kubernetes对项目Pod出入流量访问控制
将default命名空间携带run=web标签的Pod隔离,只允许default命名空间携带run=client1标签的Pod访问80端口apiVersion: networking.k8s.io/v1kind: NetworkPolicymetadata: name: test-network-policy namespace: defaultspec: podSelector: matchLabels: run: web policyTypes: -
2021-04-08 10:21:25
509
原创 StatefulSet控制器的理解
StatefulSet控制器,常称有状态应用部署控制器。常用于部署的pod是带状态的,有数据存储的,需要一个稳定的IP和稳定的存储。pod内容器是非一致的。这个控制器控制的pod,启动顺序是有序的,优雅的。由于需要有稳定的IP和存储,一般不是使用NodePort模式暴露外网。我们来启动一个StatefulSet的pod看看1、创建headless网络服务apiVersion: v1kind: Servicemetadata: name: headless-webspec: c
2021-04-06 13:35:35
192
原创 Kubernetes本地共享,网络共享,pv,pvc卷挂载示例
版本:v1.18.0本地共享类型:emptyDir,hostpath网络共享类型:nfs,pv、pvc卷其他:ConfigMap,Secret一、emptyDir示例:apiVersion: v1kind: Podmetadata: name: testemp labels: app: testempspec: restartPolicy: Always containers: - name: nginx image: nginx im
2021-04-06 12:51:56
787
原创 浅谈Kubernetes的节点选择,亲和度使用和污点的使用
一、nodeSelector:节点的选择是一种硬性的要求,主动性的选择。在不考虑污点的情况下,直接指定Pod部署到哪个节点中。判断的依据是通过node节点的标签来进行判断示例kubectl label nodes [节点名称] [标签名称]=[标签值]apiVersion: v1kind: Podmetadata: name: nodetest labels: app: nodetestspec: restartPolicy: Always nodeSelecto
2021-03-27 16:38:19
406
原创 从A目录,同步数据到B目录,文件只同步一次,已同步的忽略。
import osimport timeimport shutilimport pickle as pdef check_data_file(data_file): if not os.path.exists(data_file): os.mknod(data_file) data_list = [] with open(data_file, 'wb') as fobj: p.dump(data_list, fobj.
2020-12-18 09:53:20
156
原创 docker 安装报错 container-selinux >= 2.9 解决
container-selinux >= 2.9这个报错是container-selinux版本低或者是没安装的原因yum 安装container-selinux 一般的yum源又找不到这个包需要安装epel源 才能yum安装container-selinux然后在安装docker-ce就可以了。wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repoyum in
2020-12-09 11:09:20
1120
原创 python3 利用re模块实现日志数据的统计
import redef count_something(log_file, patt): ori_dict = {} with open(log_file) as fobj: for line in fobj: m = patt.search(line) if m: key = m.group() ori_dict[key] = ori_dict.get(.
2020-11-16 13:50:11
421
原创 python3 装饰器简单理解
def cheng2(func): def fuck(*args): return func(*args) * 2 return fuck@cheng2def count(x, y): return x + yif __name__ == '__main__': print(count(2, 3))函数count,使用了cheng2这个装饰器。我理解的逻辑是:函数count作为一个参数,传入给装饰器进行处理。装饰器内的函数进行具体的处理工作,返.
2020-11-14 12:23:00
96
原创 python3 oop面向对象编程入门
class Beartoy: #新建一个类 def __init__(self, name, size, color): #定义方法,用于创建实例用 self.name = name self.size = size self.color = colorif __name__ == '__main__': b1 = Beartoy('Tidy'.
2020-11-13 21:49:04
248
原创 Python3 实现完全备份、增量备份目录以及文件
import osfrom time import strftimeimport pickle as pimport tarfileimport hashlib#运行脚本,每周四进行完全备份,其他时间进行增量备份。src_dir = '/root/security' #定义源目录dst_dir = '/tmp/mybackup' #定义目标目录md5_file = '/tmp/m.
2020-11-12 14:30:38
1069
1
原创 python3.64 偏函数的概念和简单示例
本人理解,有误勿喷偏函数本身是一个已系统函数,他的作用是协助优化当前函数以及固定参数的作用。例如:def add(a, b, c, d): return a + b + c + dif __name__ == '__main__': print(add(10, 20, 30, 5)) print(add(10, 20, 30, 15)) print(add(10, 20, 30, 25)) print(add(10, 20, 30, 35))以
2020-11-10 17:21:25
138
原创 LVM逻辑卷各种场景扩容缩容
一、直接在线扩容lvs #查看目前的逻辑卷情况lvextend -L 20G /dev/testvg/lv_text #自动从逻辑卷所在的卷组分配空间resize2fs /dev/testvg/lv_test 20G #调整文件系统大小为XX值lvs #查看目前的逻辑卷情况二、逻辑卷缩容(高危操作)lvs #查看目前的逻辑卷情况umount /home #卸载挂载的逻辑卷e2fsck -f /dev/testvg/lv_text #强制检测逻辑卷的文件一致性resi.
2020-09-18 13:57:00
641
原创 Kubernetes利用NFS网络存储实现数据持久化存储
经测试,使用Pod方式编排yaml文件,是无法实现这个功能,提示:error: the server doesn't have a resource type "标签名"通过使用Deployment方式编排yaml文件,可以实现NFS的共享存储挂载到容器上。示例apiVersion: apps/v1kind: Deploymentmetadata: name: test-nfs-deploy labels: app: test-nfs-deployspec: repl
2020-09-15 16:09:59
283
原创 Kubernetes使用本地存储实现持久化存储
一、模式1:emptyDir在Pod的宿主节点,下,会新建一个共享目录被用于Pod的挂载。具体的路径/var/lib/kubernetes/pods/"ID"/volumes/volumes/kubernetes.io~empty-dir/XXXXXXX示例apiVersion: v1kind: Podmetadata: name: myempty labels: app: myemptyspec: containers: - name: myempty
2020-09-15 13:23:42
350
原创 测试验证Kubernetes Pod内共享存储空间
apiVersion: v1kind: Podmetadata: name: test-share-space labels: app: test-share-spacespec: containers: - name: write image: centos command: ["bash", "-c", "for i in {1..100};do echo $i >> /data/hello;sleep 2;done"] volumeM.
2020-09-15 12:14:14
179
原创 mount:wrong fs type, bad option, bad superblock on /dev/mapper/VolGroup-lv_home
事件背景:生产环境下,发现数据库无法启动,启动报错。经查/根目录已使用100%,按照正常流程是释放根目录的空间,删除不必要的过期备份和日志。但查看磁盘挂载情况,发现根目录仅分配了50G,几乎不太使用的分区home目录分配了132G,由于本人经验欠缺,误认为服务器的硬盘总空间是合计200G(实际做了逻辑卷 ,未分配的空间搞大2T),遂定下缩容home目录挂载的分区,然后再扩容根目录的挂载分区。但umount home目录分区,缩容到30G后,发现无法挂载回去了。报错以下截图所示。零、错误的操...
2020-09-14 18:09:29
2372
原创 【二】初步使用Kubernetes
1、新建命名空间,在该命名空间中创建一个pod命名空间名称:ckapod名称:pod-01镜像:nginxkubectl create ns ckavim pod-01.yamlapiVersion: v1kind: Podmetadata: namespace: cka name: pod-01 labels: app: pod-01spec: restartPolicy: Always containers: - name: pod-01
2020-09-02 23:06:13
105
原创 【一】利用kubeadm部署一个k8s集群
一、环境0、采用系统Centos7.8-2003,1个master,N个node1、调整时区为Asia/Shanghai,开启时间同步,保证所有节点时间同步2、关闭swap分区,临时关闭swapoff -a ,永久关闭写进fstab文件3、配置地址解析/etc/hosts二、【all】安装docker1、yum -y install dockersystemctl enable dockersystemctl start docker2、配置docker的阿里源镜像加速
2020-09-01 21:05:07
183
原创 Kubernetes部署存储卷实现容器挂载静态PV实现持久化存储
1、创建PVapiVersion: v1kind: PersistentVolumemetadata: name: pv0001spec: capacity: storage: 5Gi volumeMode: Filesystem accessModes: - ReadWriteMany persistentVolumeReclaimPolicy: Recycle nfs: path: /nfs/kubernetes/pv0001 serv
2020-08-15 10:44:19
387
原创 Kubernetes部署容器挂载nfs共享目录实现持久化存储
apiVersion: v1kind: Podmetadata: name: test-nfs labels: app: AION project: test-nfsspec: restartPolicy: Always containers: - name: nginx image: nginx imagePullPolicy: IfNotPresent volumeMounts: - name: data mount.
2020-08-15 10:21:59
1293
1
原创 Kubernetes部署容器挂在宿主机容器规定目录
apiVersion: v1kind: Podmetadata: name: test-emptydir labels: app: AION project: test-emptydirspec: restartPolicy: Always containers: - name: web2 image: nginx imagePullPolicy: IfNotPresent volumeMounts: - name: data .
2020-08-15 10:15:02
1004
原创 Kubernetes部署容器目录挂在宿主机指定目录
apiVersion: v1kind: Podmetadata: name: test-hostpath labels: app: web project: test-hostpathspec: restartPolicy: Always containers: - name: web image: nginx imagePullPolicy: IfNotPresent volumeMounts: - name: zhuye...
2020-08-15 10:06:33
4258
原创 Shell脚本-简单获取8位随机密码
第一种:8位随机字符串,包含小写字母,数字方法1:#!/bin/basha=$(echo "$RANDOM" | md5sum | cut -b 1-8)echo $a方法2:#!/bin/basha=`cat /proc/sys/kernel/random/uuid | cut -b 1-8`echo $a第二种:8位数随机数字方法1:#!/bin/bashb=$(echo "RANDOM" | cksum | cut -b 1-8)echo $b方法2:
2020-06-30 18:01:24
1538
原创 Shell三剑客之awk-26道练习题
#1)从文件读取 awk 程序处理文件echo "{print $2}" > test.awkecho "a b c d e f" | awk -f test.awk#2)指定分隔符,打印指定字段#打印第二字段,默认以空格分隔:tail -n 5 /etc/services | awk '{print $2}'#指定冒号为分隔符打印第一字段:tail -n 5 /etc/passwd | awk -F":" '{print $2}'#还可以指定多个分隔符,作为同一个分隔符处理:.
2020-06-28 20:44:54
980
1
原创 Shell三剑客之sed-33道练习题
借助以下文本内容作为示例讲解:vim a.txtlgpp-cbsp 48049/tcp # 3GPP Cell Broadcast Service Protocolisnetserv 48128/tcp # Image Systems Network Servicesielsleter 48128/udp # Image Systems Network Servicesbl
2020-06-26 10:33:20
507
原创 Shell三剑客之grep-21道练习题
#1)输出 b 文件中在 a 文件相同的行grep -f a b#2)输出 b 文件中在 a 文件不同的行grep -v -f a b#3) 匹配多个模式echo "a bc ed" | xargs -n 1 | grep -e 'a' -e 'ed'#4)去除 http.conf 文件空行或开头#号的行grep -E '^#|^$' /etc/httpd.d/conf/httpd.conf#5) 匹配开头不分大小写的单词echo "A b a c R" | xargs -n 1.
2020-06-22 22:16:09
797
原创 Shell脚本-expect方式远程登录主机执行命令脚本
#主机列表文件192.168.199.61192.168.199.62。。。。。。。#!/bin/bashHOST_INFO='/root/host.info'for HOST in $(cat $HOST_INFO)do expect -c " spawn ssh root@$HOST expect { \"(yes/no)\" {send \"yes\r\"; exp_continue} \".
2020-06-18 19:52:23
655
原创 Shell脚本-检测N个web界面url状态
http://www.baidu.comhttp://www.qq.comhttp://www.sina.comhttp://www.360.comhttp://www.jasd2312nsa.com#!/bin/bashURL_FILE='/root/shell_scripts/url.info'for ECHO_URL in `cat $URL_FILE`do WEB_STATUS=`curl -o /dev/null -s -w "%{http_code}" $ECHO_UR.
2020-06-18 14:38:09
395
1
原创 Shell脚本-检测多台主机磁盘使用情况,并设置阈值进行邮件报警
背景:监控N台主机磁盘使用情况。已设置ssh证书连接。需求:磁盘使用率大于等于80%,发送邮件到指定邮箱。1、设置监控主机与其他主机的ssh的证书登陆【监控主机】ssh-genkeyssh-copy-id 192.168.199.X 重复步骤手动发送私钥过去给其他主机。2、主机信息文件vim /root/shell_scripts/os.info192.168.199.61 22 root192.168.199.62 22 root192.168.199.63 22 ro
2020-06-17 22:29:40
539
原创 Shell脚本-检测系统网卡流量使用情况
#!/bin/bash#定义流量单位DW=kb/swhile :do #定义某一时间点的提取网卡流量数值,我这里的网卡是ens33 OLD_IN=$(cat /proc/net/dev | awk '$1~/ens33/{print $2}') OLD_OUT=`cat /proc/net/dev | awk '$1~/ens33/{print $10}'` sleep 5 #定义下一个时间点的提取网卡流量数值。 NEW_IN=$(cat /p.
2020-06-17 15:59:22
511
原创 Shell脚本-检测系统cpu,内存占用最高的10个进程并发送检测邮件到指定邮箱
yum -y install mailxcat >> /etc/mail.rc << EOFset from=jim_linuxzhang@163.com smtp=smtp.163.comset smtp-auth-user=jim_linuxzhang@163.com smtp-auth-password=邮箱smtp独立密码set smtp-auth=loginEOFvim cpu_mem_mail.sh#!/bin/bash#获取cpu,内存
2020-06-16 23:58:22
1518
2
原创 Shell脚本-批量生成100个账号
需求:批量生成100个账号,使用随机密码,并且密码保存在文本中。#!/bin/bash#定义保存批量生成账号的文件USER_FILE=./user.infoif ! $USER_FILE ;then touch $USER_FILE#生成对应的账号for USER in USER{1..100};do pass=$(echo $RANDOM | md5sum | cut -c 1-8) if ! $USER &> /dev/null ;then us
2020-06-16 20:04:54
2148
原创 利用mailx+smtp.163.com实现发送邮件功能
yum -y install mailxcat >> /etc/mail.rc << EOFset from=jim_linuxzhang@163.com smtp=smtp.163.comset smtp-auth-user=jim_linuxzhang@163.com smtp-auth-password=XXXXXXXXXX(smtp独立密码)set smtp-auth=loginEOF发送邮件:echo "this is test mail" |
2020-06-16 18:42:15
856
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人