自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 python模块中的_all__属性的作用

c.pymain.py运行main.py打印结果如下:

2022-12-11 21:07:37 523 1

原创 (集群外)jenkins连接K8S集群

主要使用pipeline、kubernetes、kubernetes pipeline插件。kubernetes插件配置配置如下图:kubernetes服务证书key为apiserver的数字证书,直接从服务器上cat出来粘贴;添加jenkins连接k8s集群凭据,这里需要将客户端连接kubernetes集群的数字证书生成PKCS#12加密文件,使用如下命令:openssl pkcs12 -export -out /root/cert.pfx -inkey /root/TLS/k8s/admin

2021-06-13 21:40:25 1033

原创 MySQL MGR高可用集群布署

配置组复制前提要求:​1、innodb存储引擎:数据必须存放在InnoDB事务存储引擎中。事务被乐观地执行,然后在提交时检查是否有冲突。如果存在冲突,为了在整个组中保持一致性,将回滚一些事务。这意味着需要事务性存储引擎。此外,InnoDB还提供了一些额外的功能,可以更好地管理和处理与组复制一起操作时的冲突。使用其他存储引擎(包括临时内存存储引擎)可能导致组复制出错。通过在组成员上设置系统变量disabled_storage_engines,可以防止使用其他存储引擎,例如:disabled_stor

2021-05-23 19:15:51 1064 8

原创 python中的抽象基类及相关用途

一、什么是抽象基类 (abc模块)?抽象基类就是定义各种方法而不做具体实现的类,任何继承自抽象基类的类必须实现这些方法,否则无法实例化。抽象基类不能被实例化(不能创建对象),通常是作为基类供子类继承,子类中重写虚函数,实现具体的接口。二、用途1、检查某个类是否有某种方法from collections.abc import Sized....print(isinstance(d,Sized)) #d为实例化的类对象,返回结果为true或false2、抽象基类实现...

2021-01-10 19:10:18 320

原创 使用python通过zabbix api获取监控项历史数据示例

1、python获取zabbix apiinfo.version信息:```import requestsimport jsondata = {"jsonrpc":"2.0","method":"apiinfo.version","id":1,"auth":None,"params":{}}header = {"Content-Type":"application/json-rpc"}url = 'https://zabbix.cn/api_jsonrpc.php'response =

2020-12-04 15:53:02 1114

原创 解决二进制K8S布署的metrics-server查看集群资源报错权限问题

布署完metircs-server后,查看已成功注册apiservices:使用kubectl top nodes及kubectl top pods均报错:Error from server (Forbidden): nodes.metrics.k8s.io is forbidden: User "kubernetes" cannot list resource "nodes" in API group "metrics.k8s.io" at the cluster scopeErr

2020-12-03 10:52:32 2096

原创 k8s flannel网络切换calico步骤

flannel网络切换calico操作步骤:1、删除flannel布署资源:kubectl delete -f kube-flannel.yml2、清除flannel遗留信息 删除flannel.1及cni0网卡 ip link delete flannel.1 ip link delete cni0 清除路由表(此前flannel配置为host-gw网络类型) ip route del 10.244.2.0/24 via 192.168.88.172 dev .

2020-11-11 17:30:37 1358

原创 prometheus+grafana监控tomcat java应用

一、prometheus监控tomcat java应用https://github.com/prometheus/jmx_exporter下载jmx_prometheus_javaagent jar包:https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.14.0/jmx_prometheus_javaagent-0.14.0.jarconfig.yaml配置文件示例:https://github.

2020-10-27 15:21:31 937

原创 使用salt批量运维管理服务器最常用的3条命令

# 1、测试远程主机是否可达salt '*' test.ping使用salt-key -L命令查看已安装并接受key的主机。# 2、对多台主机批量执行shell命令salt '*' cmd.run 'pwd'*为通配,表示已接受key的所有主机;pwd部分为要执行的shell命令;# 3、拷贝文件至远程主机salt '*' cp.get_file salt://zabbix_agentd /usr/sbin/zabbix_agentd此处拷贝的源文件放置路...

2020-10-21 10:37:14 824

原创 kafka_2.12集群布署

下载kafka:https://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.5.0/kafka_2.12-2.5.0.tgz配置JDK环境: echo "export JAVA_HOME=/usr/local/jdk" >> /etc/profile echo "export CLASSPATH=\$JAVA_HOME/lib:\$CLASSPATH" >> /etc/profile echo "expor

2020-08-05 18:57:10 587

原创 elasticsearch集群布署

官网下载elasticsearch:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.8.1-linux-x86_64.tar.gz解压缩包后配置jdk环境:cd elasticsearch-7.8.1mv jdk /usr/local/mkdir /data/elasticsearch/{data,logs} -p添加java环境系统配置:echo "export JAVA_HOME=/us

2020-08-05 08:33:46 166

原创 Redis v6.0.6 集群cluster模式布署

官网下载redis redis-6.0.6.tar.gz 版本。https://redis.io/环境信息: 192.168.199.140(centos 7.5) 7000、7001端口 192.168.199.141(centos 7.5) 7002、7003端口 192.168.199.142(centos 7.5) 7004、7005端口 安装编译依赖工具:yum install -y gcc gcc-c++ jemalloc ce...

2020-07-27 20:11:24 1262

原创 gitlab容器化布署及git常用操作

Gitlab容器化布署(官网参考地址https://docs.gitlab.com/omnibus/docker/README.html)拉取gitlab-ce镜像: docker pull gitlab/gitlab-ce 创建宿主机持久化数据存储目录: mkdir /data/gitlab/{config,logs,data} -p 运行gitlab容器: docker run -d -p 443:443 -p 80:80 -p 6022:22 --na

2020-07-20 22:37:57 220

原创 Linux配置NFS实现网络共享

NFS安装:yum install nfs-utils –y NFS配置文件目录:/etc/exportsNFS配置文件格式://格式为:共享目录的绝对路径 允许访问NFS资源的客户端(权限参数) [root@localhost /]# cat /etc/exports /nfsfile *(rw,sync,no_root_squash,no_all_squash) [root@localhost /]# systemctl restart nfs ..

2020-07-15 20:47:25 168

原创 k8s容器化部署wordpress实战

本次环境如下(3台centos7.5组成k8s v.1.14集群): master: 192.168.88.145 node1: 192.168.88.148 node2: 192.168.88.150 wordpress部署wordpress.yaml:apiVersion: apps/v1kind: Deploymentmetadata: labels: app: wordpress name: wordpressspec: ...

2020-06-19 16:14:48 788

原创 使用k8s v1.14.3安装部署EFK日志收集系统

EFK日志收集系统包含3个组件:elasticsearch、fluentd、kibana本次环境如下: Master:192.168.88.145 2C4G node1:192.168.88.148 2C4G node2:192.168.88.150 2C2G 直接上yaml文件: elasticsearch es-statefulset.yaml:文件中KUBERNETES_SERVICE_HOST变量的值请自行修改为k8s master节点..

2020-06-18 20:13:20 352

原创 zabbix监控 ceph集群

准备工作在任一安装mgr组件的节点上执行如下操作:安装zabbix_sender:yum install -y zabbix-sender开启zabbix模块:ceph mgr module enable zabbix 2.配置zabbix连接信息,格式为ceph zabbix config-set <key> <value>形式: 配置zabbix-server或zabbix-proxy连接信息:ceph zabbix config-set...

2020-06-01 16:23:12 389

原创 Linux环境下shell输出的中文文件windows打开乱码问题处理

最近在linux环境使用shell查询数据库,查询结果导出文件,发送到windows查看乱码,记录下解决方法:linux环境下使用file -i 文件名命令可查看文件的字符集编码为utf-8,windows一般编码为gbkfile -i in.csvin.csv: text/plain; charset=utf-8使用如下命令进行字符集编码转换:yum install -y dos2unixiconv -f utf-8 -t gbk in.csv | dos2unix > ou

2020-05-15 21:02:26 728

原创 使用k8s容器化布署jenkins

本环境基于minikube搭建的单机k8s。布署jenkins pod,jenkins.yaml文件如下:apiVersion: v1kind: Podmetadata: name: jenkins labels: name: jenkinsspec: containers: - name: jenkins image: jenkins...

2020-04-28 17:16:37 373

原创 使用kubeadm布署k8s集群v1.14.3 so easy !

本次环境使用两台机器,一台master,一台node节点均为cenots7.5系统。1、所有节点执行系统初始化初始化脚本如下:#!/bin/bash swapoff -a sed '/swap/s/^/&#/' /etc/fstab systemctl stop firewalldsystemctl disable firewalldsetenforce ...

2020-04-20 16:51:41 262

原创 Python数据类型之元组

一、什么是元组?方括号括起来的是列表,圆括号括起来的就是元组。元组是不可变序列。列表:[1,2,3]元组:(1,2,3)二、元组与列表相同的操作 1、使用方括号加下标访问元素(下标从0开始) 示例: a = (1,2,3) print(a...

2020-03-08 14:38:25 307

原创 Python学习之多线程-传参

定义2个函数 ,实现多线程调用传参定义计算次数: import threadingdef demo1(counts): global num for i in range(counts): num += 1def demo2(counts): global num for j in range(counts): ...

2020-02-24 13:34:38 326

原创 Python学习之多线程-互斥锁

当多个线程同时修改某一共享数据的时候,有时需要进行一定的同步控制 。以下示例为2个线程同时进行数据运算操作,确保每个线程执行完返回完成的数据: import threadingnum = 100def demo1(): global num for i in range(1000000): mutex.acquire() ...

2020-02-24 13:19:19 164

原创 Python学习之多线程创建

多线程主要用于并发执行任务,python中使用threading模块,为避免程序执行过快,子线程内睡1秒以显示效果,代码如下: import threadingimport timedef demo1(): for i in range(5): print("--demo1--%d" %i) time.sleep(1)def dem...

2020-02-20 20:19:19 148

原创 Ansible Playbook的定义

Ansible的Playbook使用YAML编写,YAML的语法规则如下:YAML文件中的第一行为“---”,表示这是一个YAML文件; YAML中的字段大小写敏感; YAML与Python一样,使用缩进表示层级关系; YAML的缩进不允许使用Tab键,只允许使用空格,且空格的数目不重要,只要相同层级的元素左侧对齐即可; “#”表示注释,从这个字符一直到行尾都会被解析器忽略。Y...

2020-02-19 13:15:23 243

原创 elk+x-pack实现安全认证

检查是否有试用资格:curl -XGET http://192.168.254.131:9200/_xpack/license/trial_status查看license信息:curl -XGET http://192.168.254.131:9200/_xpack/license请求试用:curl -XPOST http://192.168.254.131:9200/_x...

2020-01-20 17:04:45 398

原创 Linux环境KVM布署学习

1、环境检查:查看CPU是否支持虚拟化:cat /proc/cpuinfo |grep -E "vmx|svm"Vmware虚拟机centos需要开启cpu虚拟化支持:与虚拟化相关的程序包:qemu-kvm 主要的KVM程序包libvirt 用于管理超级监视程序的libv...

2020-01-19 14:44:06 471

原创 Postgresql布署及常用操作

Postgresql安装布署: wget -c https://ftp.postgresql.org/pub/source/v11.2/postgresql-11.2.tar.gz tar -xf postgresql-11.2.tar.gz编译安装:cd postgresql-11.2yum install readline-devel –y./config...

2020-01-19 10:36:21 229

原创 Python中yield用法学习示例

本文以一个爬虫示例,来记录python学习过程中yield的用法。目的:爬取代理网站的IP地址、端口及地区信息,定义一个方法,该方法为一个生成器,每次调用返回列表中的不同的值(直到遍历整个列表,即每次调用返回一个不同的IP地址及端口信息)。 import requestsfrom lxml import etree url = 'https://www.xicidaili.co...

2019-12-17 16:23:18 187

原创 Python爬虫之Chrome无头浏览器操作

测试代码如下: from selenium.webdriver.chrome.options import Optionsfrom selenium import webdriverchrome_options = Options()chrome_options.add_argument("--headless")browser = webdriver.Chrome(o...

2019-12-16 20:51:13 624

原创 Python学习之Django初识

Django项目创建方法: django-admin startproject [项目名称] 例:django-admin startproject first_project运行django项目(默认端口号8000): python manage.py runserver 指定端口运行:python manage.py runserver 9000 ...

2019-12-15 15:31:53 115

原创 Scrapy框架学习练手之爬取腾讯招聘技术类岗位

页面地址:https://careers.tencent.com/search.html?pcid=40001实现目标: 将爬取到的岗位名称、工作职责、工作要求、发布日期以字典格式输出。 Scrapy目录框架:思路: 浏览器抓包分析网页请求地址规律(爬虫最重要),找到页面地址规律后,根据请求返回的数据进行提取即可。 ...

2019-12-09 17:36:04 349

原创 基于docker布署minikube单机k8s V1.16.2

准备工作布署参考:https://yq.aliyun.com/articles/221687 虚拟机配置:2C2G centos7.5 下载docker官方repo文件,安装docker: wget https://download.docker.com/linux/centos/docker-ce.repo yum install...

2019-11-27 16:50:14 407

原创 logstash+grok匹配nginx日志示例

Logstash内部定义(匹配正则):/usr/local/logstash/vendor/bundle/jruby/2.3.0/gems/logstash-patterns-core-4.1.2/patternsNginx日志grok过滤示例:Nginx日志格式如下: log_format main '$remote_addr - - [$time_local] "$r...

2019-11-04 15:56:25 3933

原创 Ubuntu 与 Centos常见使用区别

以前是搞Centos的,无赖现公司生产环境使用的是Ubuntu,记录下常见使用情况下的一些不同点.....:软件安装管理:Centos使用yum install,Ubuntu使用apt-get installCentos搜索已安装软件使用rpm -q,Ubuntu使用apt-cache searchUbuntu默认文本编辑器为nano,使用系统管理工具可修改默认编辑器update-...

2019-11-04 15:37:03 1773

原创 WindowsServer2012r2远程桌面多用户同时远程连接设置

安装远程桌面服务下子项远程桌面会话主机、远程桌面授权:点击左下角服务器管理器,选择添加角色和功能安装完成后会自动重启服务器,如报错找不到文件,请指定备用源路径。2.配置远程桌面连接数及激活许可证服务器进入组策略配置:运行(win+r快捷键)-输入gpedit.msc计算机配置-管理模板-Windows组件-远程桌面服务-远程桌面会话主机-连接...

2019-09-29 09:58:20 20590 3

原创 wordpress安装主题报错故障排查一波三折

1、下载失败。 没有可以完成请求的HTTP传输器?解决办法:此问题是由于php.ini文件没有开启curl扩展所致,修改php.ini配置文件(php.ini配置文件路径请通过phpinfo信息中查看),extension=php_curl.dll取消前面的;使其配置生效;我这边php是使用源码编译安装的,编译时没有配置curl模块,遂使用phpize动态编译安装curl扩展模块:进入源...

2019-09-27 09:29:35 1945

原创 Python学习之匿名函数(lambda)及map()函数、sort()、sorted()方法

匿名函数1、Lambda函数表达式专门用来创建一些简单的函数,它是函数创建的另外一种方式。语法: lambda 参数列表【a,b,c….】:返回值示例如下: l = [1,2,3,4,5,6,7,8,9,10]print((lambda a,b : a + b)(10,20)) #写法一 #写法二:fn1 = lambda a,b:a*bprint(fn1(5,10...

2019-09-27 00:32:28 404

原创 Python函数学习之高阶函数

什么是高阶函数?接收一个或多个函数作为参数 将函数作为返回值返回满足以上任意一点即为高阶函数。示例如下: l = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] new_list = []def fn(func, lst): for n in lst: if func(n): new_li...

2019-09-26 23:10:57 105

原创 Python函数学习之函数的传递方式

函数的传递方式位置参数位置参数就是将对应位置的实参赋值给对应位置的形参。默认值:定义形参的时候,可以给形参指定默认值,如果用户传递了实参,默认值不会发挥任何作用,如果用户没有传递,则采用默认值。 def fn(a,b,c=20): print('a = ',a) print('b = ', b) print('c = ', c) ...

2019-09-26 22:08:06 377

空空如也

空空如也

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

TA关注的人

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