自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 博客停止更新

由于这次疫情在家,除了给自己充电以外,还把之前一直搁浅的事情做了,就是搭建一个属于自己的博客平台,之前做了一个框架出来,后来由于工作原因比较忙,也懒得搞了,直到最近一直闲在家里…新博客地址:https://lvzhenjiang.gitee.io/博客首页:该博客会持续更新!最后,感谢这个博客平台,让我借此一亩三分地,写下了大约200篇博文。。。...

2020-03-08 15:38:31 124

原创 安装Python

关于Python的火爆程度,这里就不用再介绍了,直接开始安装!而且由于市场上大部分都在使用Python 3,所以我们就直接安装Python 3.8.1版本!<!--more-->一、Windows安装本次采用windows 10系统!1)下载Python软件包访问Python官网!下载链接地址:https://www.python.org/ftp/python/3.8.1/...

2020-03-09 17:15:33 76

原创 Jenkins+Gitlab针对kubernetes集群实现可持续集成

关于如何使用Jenkins+Gitlab实现可CI/CD,在此就不多做介绍了,本篇博文主要介绍Jenkins+Gitlab针对kubernetes集群实现CI/CD。由于Kubernetes近年来的火爆程度,掌握这项技能已经变得尤为重要!一、环境准备系统主机名IP地址所运行的服务Centos 7master192.168.1.1K8s集群的master节点Ce...

2020-03-07 21:50:07 214

原创 Kubernetes服务编排的利器——Helm

博文大纲:一、Helm简介二、Helm组件及相关术语1)Helm2)Tiller3)Chart4)Repoistory5)Release三、Helm工作原理四、部署Helm1)安装Helm客户端2)安装Tiller server3)配置Helm仓库4)测试Helm是否可一、Helm简介很多人都使用过Ubuntu下的ap-get或者CentOS下的yum, 这两者都是Linux系统下的包管理...

2020-02-29 16:03:15 134

原创 针对Kubernetes群集做资源限制

Kubernetes对资源的限制实际上是通过cgroup来控制的,cgroup是容器的一组用来控制内核如何运行进程的相关属性集合,针对内存、CPU各种设备都有对应的cgroup。默认情况下,Pod运行没有CPU和内存的限制,这就意味着系统中的任何pod将能够像执行该pod所在的节点一样,消耗足够多的CPU和内存,一般会针对某些应用的Pod资源进行资源限制,这个资源限制是通过resources的l...

2020-02-28 21:00:53 75

原创 Kubernetes集群水平扩展——HPA(自动伸缩)

Kubernetes集群可以通过Replication Controller的scale机制完成服务的扩容或缩容,实现具有伸缩性的服务。Kubernetes集群自动伸缩分为:sacle手动伸缩:可参考K8s资源对象的基本管理之使用命令行的方式(升级、回滚、扩容、缩容);autoscale自动伸缩:也就是本篇博文所介绍的HPA;Kubernetes自动扩展主要分为:水平扩展:...

2020-02-28 20:39:24 380

原创 Jenkins+maven+gitlab+Tomcat自动部署更新及回滚

参考链接:https://blog.51cto.com/14154700/2452034

2020-02-27 21:24:24 86

原创 Kafka原理及Kafka群集部署

博文大纲:一、Kafka概述1)消息队列2)为什么要使用消息队列?3)什么是Kafka?4)Kafka的特性5)Kafka架构6)Topic和Partition的区别7)kafka流程图8)Kafka的文件存储机制9)数据的可靠性和持久性保证10)leader选举二、部署单机Kafka1)部署Kafka2)测试Kafka三、部署Kafka群集1)环境准备2)部署zookeeper群集3)部署Ka...

2020-02-27 14:52:13 77

原创 Kubernetes的三种可视化UI界面

博文大纲:一、dashboard二、Weave Scope三、Prometheus一、dashboard1)获取yaml文件修改并执行如图:[root@master ~]# wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-rc5/aio/deploy/recommended.yaml[root@m...

2020-02-26 20:26:23 1203 1

原创 Rabbitmq简介及部署群集

博文大纲:一、MQ简介二、什么是RabbitMQ?三、安装RabbitMQ四、部署Rabbitmq集群1)部署环境2)安装rabbitmq服务3)配置host文件,并将上述两个节点加入集群4)rabbitmq01配置群集并将rabbitmq02、03加入01群集5)访问web界面6)web页面添加vhost五、单台节点加入或退出群集1)单节点加入集群2)单节点退出集群一、MQ简介MQ全称为...

2020-02-25 23:25:58 125

原创 Jenkins实现html代码上线与回滚

一、案例环境二、部署Gitlab1)部署Gitlab2) 配置免密登录3)测试免密登录三、部署Jenkins四、Jenkins集成Gitlab五、部署Nginx六、Jenkins实现代码自动上线七、Jenkins实现代码自动部署与回退及重复构建一、案例环境系统IP地址主机名所运行的服务Centos 7192.168.1.6gitlabgitlabCento...

2020-02-25 20:58:01 186

原创 Nginx系列之静态服务

博文大纲:1)静态资源类型2)静态资源场景3)静态资源配置语法4)静态资源文件压缩5)静态资源浏览器缓存6)静态资源防盗链1)静态资源类型Nginx作为静态资源web服务器部署配置,传输非常的高效,常常用于静态资源处理、请求、动静分离!非服务器动态运行生成的文件属于静态资源!类型种类浏览器端渲染HTML、CSS、JS图片JPEG、GIF、PNG视频F...

2020-02-23 11:19:01 49

原创 Kubernetes之Ingress-nginx部署使用

博文大纲:一、Ingress简介1)Ingress组成2)Ingress工作原理3) Ingress可以解决什么问题?二、配置Ingress-nginx1)搭建registry私有仓库2)创建用于测试的Pod2)创建tomcat服务及其service3)确保以上资源对象成功创建4)创建Ingress-controller资源对象5)创建Ingress资源对象6)为Ingress-controll...

2020-02-21 22:36:34 254

原创 shell编程(七)

一、awk介绍1.awk概述2.awk能干啥?二、awk使用方式1.==命令行模式使用==1)语法结构2)常用选项介绍3)=='==命名部分说明=='==2.脚本模式使用1)脚本编写2)脚本执行三、 awk内部相关变量1、==常用内置变量举例==2、内置变量分隔符举例四、 awk工作原理五、awk使用进阶1.格式化输出print和printf2.awk变量定义3.awk中BEGIN...END使用...

2020-02-20 19:49:30 24

原创 shell编程(六)

一、sed介绍1.sed用来做啥?2.sed如何处理文件?二、sed使用方法介绍1.命令行格式1)语法格式2)举例说明2.脚本格式1)用法2)注意事项3)举例说明3.补充扩展总结三、课堂练习四、课后实战一、sed介绍1. sed用来做啥?sed是Stream Editor(流编辑器)的缩写,简称流编辑器;用来==处理文件==的。2. sed如何处理文件?sed是==一行一行读取==...

2020-02-20 19:42:01 30

原创 shell编程(五)

一、case语句1.语法结构2.应用案例1)脚本传不同值做不同事2)根据用户需求选择做事二、函数1.什么是函数?2.如何定义函数?3.函数如何调用?1)当前命令行调用2)定义到用户的环境变量中3)脚本中调用三、综合案例1.任务背景2.具体要求3.综合分析4.落地实现四、正则表达式1.正则表达式是什么?2.正则能干什么?3.正则当中名词解释4.第一类正则表达式1)正则中普通常用的元字符2)正则中其...

2020-02-20 19:32:57 80

原创 shell编程(四)

一、随机数1.如何生成随机数?2.实战案例1)随机产生以139开头的电话号码2)随机抽出5位幸运观众3)批量创建用户(密码随机产生)二、嵌套循环1.应用案例1)打印指定图案2)落地实现13)落地实现2三、阶段性补充总结1.影响shell程序的内置命令四、综合案例1.实战案例11)具体需求2)案例分析3)落地实现实战案例2一、随机数1. 如何生成随机数?系统变量:==RANDOM==...

2020-02-20 18:54:11 35

原创 shell编程(三)

一、for循环语句1.for循环语法结构1)列表==循环2)不带列表循环3)类C风格的for循环2.应用案例1)脚本==计算==1-100奇数和2)判断所输整数是否为质数3)批量创建用户4)批量创建用户5)局域网内脚本检查主机网络通讯6)判断闰年二、while循环语句1.while循环语法结构2.应用案例1)脚本计算1-50偶数和2)脚本同步系统时间三、until循环1.until语法结构2.应...

2020-02-20 18:39:32 41

原创 shell编程(二)

一、条件判断语法结构条件判断相关参数1)判断文件类型2)判断文件权限3)判断文件新旧4)判断整数5)判断字符串6)多重条件判断二、流程控制语句基本语法结构1)if结构2)if...else结构3)if...elif...else结构4)层层嵌套结构应用案例1)判断两台主机是否ping通2)判断一个进程是否存在3)判断一个服务是否正常4)判断用户是否存在5)判断软件包是否安装6)判断当前主机的内...

2020-02-20 18:31:16 31

原创 shell编程(一)

一、shell介绍1.编程语言分类2.shell简介3.shell脚本1)什么是shell脚本?2)什么时候用到脚本?3)shell脚本能干啥?4)shell脚本的基本写法5)shell脚本的执行方法二、变量的定义1.变量是什么?2.什么时候需要定义变量?3.变量如何定义?4.变量的定义规则1)变量名区分大小写2)变量名不能有特殊符号3)变量名不能以数字开头4)等号两边不能有任何空格5)变量名尽...

2020-02-20 18:14:42 31

原创 shell编程之文本小工具

一、文本处理工具1、grep工具2、cut工具3、sort工具4、uniq工具5、tee工具6、diff工具7、paste工具二、bash的特性1、命令和文件自动补全2 、常用的通配符3、bash中的引号一、文本处理工具1. grep工具grep是==行==过滤工具;用于根据关键字进行行过滤语法和选项语法:# grep [选项] '关键字' 文件名常见选项:OPTIONS:...

2020-02-20 17:58:17 39

原创 Jenkins之Pipeline代码流水线配置

前言Pipeline名词顾名思义就是流水线的意思,因为公司可能会有很多项目,如果使用jenkins构建完成后,开发构建项目需要一项一项点击,比较麻烦,因此,pipeline就应用而生了 。部署Pipeline——代码流水线管理1)环境准备:IP地址Jenkins192.168.1.8测试端192.168.1.7部署Jenkins可以参考Jenkins+G...

2020-02-20 12:40:56 165

原创 部署Maven与Nexus(私服)

博文大纲:一、Maven简介1)Maven的功能:2)Maven使用场景(从运维人员的角度来看):3)Maven仓库二、部署Maven1)配置jdk环境2)部署Maven三、部署Nexus私服1)Nexus简介2)部署Nexus四、Maven配置nexus私服,将远程仓库设置成本地搭建的Nexus私服1)修改maven的主配置文件2)创建一个maven项目进行测试3)配置认证,将打包好的项目上传...

2020-02-19 22:27:21 77

原创 常用的文本处理工具

博文大纲:1)grep命令2)cut命令3)sort命令4)uniq命令5)tee命令6)diff命令7)paste命令8)tr命令注意:以下工具均不会对源文件进行修改,只是将结果输出!1) grep命令grep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。常用选项:-i:忽略大小写;-v:反向查找;-w:精确查找;-o:只输出匹配的关键字;-c...

2020-02-18 17:02:37 160

原创 从头到尾掌握Nginx(一)

1)Nginx服务概述Nginx由俄罗斯的lgor Sysoev开发,专为性能优化而开发,其最知名的优点就是它的稳定性和低系统资源消耗、以及对HTTP并发连接的高处立能力(单台物理服务器可支持30000~50000个并发请求)。正因为如此,大量提供社交网络、新闻资讯、电子商务及虚拟主机等服务的企业纷纷选择Nginx来提供Web服务。搭建Web服务如果是为了解析静态网页、动态网页等、不需要太多的...

2020-02-16 14:39:04 49

原创 Kubernetes数据持久化之Secret与ConfigMap

ConfigMap和Secret是Kubernetes中两种特殊类型的存储卷,ConfigMap这种资源对象主要用于提供配置数据以定制程序行为,不过一些敏感的配置信息,比如像用户名、密码、密钥等通常都是由Secret这种资源对象来进行配置的,他们将相应的配置信息保存于对象中,而后在Pod资源上以存储卷的形式将其挂载并获取相应配置,以实现配置与镜像文件的解耦。一、Secret资源对象1) Sec...

2020-02-14 21:26:34 60

原创 使用 Sonar 进行代码质量管理及邮件报警

一、Sonar 概述Sonar 是一个用于代码质量管理的开放平台。通过插件机制,Sonar 可以集成不同的测试工具,代码分析性工具,以及持续集成工具。与持续集成工具(例如 Hudson/Jenkins 等)不同,Sonar 并不是简单地把不同的代码检查工具结果(例如 FindBugs,PMD 等)直接显示在 Web 页面上,而是通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量...

2020-02-13 18:12:52 110

原创 Kubernetes针对有状态服务数据持久化之StatefulSet(自动创建PVC)

一、Kubernetes无状态服务VS有状态服务1)Kubernetes无状态服务Kubernetes无状态服务特征:1)是指该服务运行的实例不会在本地存储需要持久化的数据,并且多个实例对于同一请求响应的结果是完全一致的;2)多个实例可以共享相同的持久化数据。例如:nginx实例、tomcat实例等;3)相关的Kubernetes资源有:ReplicaSet、ReplicationContr...

2020-02-12 18:08:33 765

原创 Jenkins+Gitlab实现持续集成

一、Jenkins及持续集成1)什么是Jenkins?Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:1)持续的软件版本发布/测试项目;2)监控外部调用执行的工作;对Jenkins有兴趣的朋友可以参考Jenkins中文文档2)什么是持续集成?1)什么是集成?...

2020-02-11 13:02:08 80

原创 Kubernetes数据持久化之Storage Class(存储类)自动创PV

通过博文Kubernetes的存储之Volume可以了解到Kubernets实现数据持久化的流程为:搭建NFS底层存储——>创建PV——>创建PVC——>创建pod最终将pod中的container实现数据的持久化!从上述流程中,看似没有什么问题,但是仔细研究就会发现:PVC在向PV申请存储空间时,是根据指定PV的名称、访问模式、容量大小来决定具体向哪个PV申请空间的。打比方...

2020-02-10 16:11:13 471

原创 终于有人把 Docker 讲清楚了,万字详解!

作者:乐章链接:http://39sd.cn/732DD博文大纲:一、简介1)了解Docker的前生LXC2)LXC与docker什么关系?3)什么是docker4)docker官方文档5)为什么docker越来越受欢迎6)docker版本7)docker和openstack的几项对比8)容器在内核中支持2种重要技术9)docker三个重要概念10)docker的主要用途11)docker改...

2020-02-09 22:15:05 261 3

原创 Linux性能调优的优化思路

Linux操作系统是一个开源产品,也是一个开源软件的实践和应用平台,在这个平台下有无数的开源软件支撑,我们常见的有apache、tomcat、nginx、mysql、php等等,开源软件的最大理念就是自由、开放,那么Linux作为一个开源平台,最终要实现的是通过这些开源软件的支持,以低廉的成本,达到应用最有的性能。因此,谈到性能问题,主要实现的是Linux系统和应用程序的最佳结合。博文大纲:一...

2020-02-09 21:06:23 65

原创 centos 7部署并汉化Gitlab及基础操作

Gitlab 是一个利用 Ruby on Rails 开发的开源应用程序,实现一个Git 项目仓库,可通过Web 界面进行访问公开的或者私人的项目 Gitlab 拥有与 Github 类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,他非常易于浏览提交过的版本并提供一个文件历史库。他还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。关于gitlab...

2020-02-08 22:04:19 71

原创 git命令汇总

1)基本环境1)本地初始化:生成.git目录,不要轻易修改命令:git init 2)设置签名:区分不同开发人员的身份,这里设置的签名和登录远程库(代码中心)的账号、密码没有任何关系;* 项目级别/仓库级别:仅在当前本地库范围有效命令:git config user.name admingit config user.email admin@admin.com信息保存的位置:.gi...

2020-02-08 17:40:02 23

原创 Git分支管理

前言分支在实际生产环境中的作用:比如你准备开发一个新功能,但是需要很长的时间才能完成,第一天编写了一些代码,如果讲代码立即上传,由于代码还没写完,不完整的代码库会导致别人不能工作。但是如果等代码全部写完再提交,又存在丢失每天进度的巨大风险。现在有了分支,这样的担心就完全没有必要了。创建一个属于自己的分支,别人看不到,还继续在原来的分支上进行工作,而你在自己的分支上工作,想提交随时可以提交,直到...

2020-02-07 22:33:10 37

原创 Kubernetes的存储之Volume

在虚拟化的一系列解决方案中,数据的持久化都是需要我们非常关心的问题,dokcer是这样,Kubernetes也是这样。不过在Kubernetes中,有一个数据卷的概念。一、Volume简介我们经常都会说:容器、Pod都是很短暂的!其含义就是容器和Pod的生命周期都是很短暂的,会被频繁地销毁和创建。容器销毁时,保存在容器内部文件系统中的数据都会被清除。Volume的生命周期独立于容器,Pod中...

2020-02-05 20:17:35 33

原创 企业生产环境shell脚本案例分享

1)Mysql数据库备份脚本(完整备份+异地备份)一般Mysql数据库备份会采用在MYSQL从库上执行全量备份+增量备份方式。在从库备份避免Mysql主库备份的时候锁表造成业务影响。#!/bin/bash set -e #当脚本有错误时,便停止执行脚本#备份的数据库名DATABASES=( "magedu01" ...

2020-02-04 21:00:33 162

原创 Linux Bash语法总结

在学习Linux的过程中,无可避免的会碰到一个既让人喜欢、又令人十分头疼的神奇的东西——bash编程,也就是shell脚本。那么什么是shell脚本呢?shell是一个命令语言解释器,而shell脚本则是Linux命令的集合,按照预设的顺序依次解释执行,来完成特定的、较复杂的系统管理任务,类似于windows中的批处理文件。本篇博文主要介绍bash编程的基础语法讲解。一、bash编程之变量1)...

2020-02-04 11:47:11 109

原创 Zabbix监控PHP-FPM、Tomcat、Redis应用实战案例

一、Zabbix监控PHP-FPM应用实战Nginx+PHP-FPM是目前最流行的LNMP架构,在基于PHP开发的系统下,对这些系统性能的监控,主要是关注PHP-FPM的运行状态,那么什么是PHP-FPM呢?PHP-FPM是一个PHP FastCGI管理器,它提供了更好的PHP进程管理方式,可以有效控制内存和进程、可以平滑重载PHP配置,对于ZPHP5.3.3之前的PHP来说,它是一个补丁包,而...

2020-02-01 18:24:58 141

原创 Zabbix监控Mysql、Apache、Nginx应用实战案例

Zabbix对第三方应用软件的监控,主要有两个工作难点:一个是编写自定义监控脚本;另一个是在编写模板并导入zabbix web中,编写脚本这个要根据监控需求定制即可,而编写模板文件则相对来说有点难度,不过网上已经有很多已经写好的模板,可以直接拿来使用。所以,Zabbix对应用软件的监控其实并不难。一、zabbix监控mysql应用实战本次博文首先介绍的是Zabbix对Mysql的监控,这个是最...

2020-02-01 00:57:11 157

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