自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 实战篇--常见的Shell脚本编写案例(三)

常见的Shell脚本编写案例(三)1.21 FTP下载文件1.22 输入五个100数之内的字符,统计和、最小和最大1.23 将结果分别赋值给变量1.24 批量修改文件名1.25 统计当前目录中以.html结尾的文件总大小1.26 扫描主机端口状态1.27 Expect实现SSH免交互执行命令1.28 批量修改服务器用户密码1.29 打印乘法口诀1.30 getopts工具完善脚本命令行参数1.21 FTP下载文件#!/bin/bashif [ $# -ne 1 ]; then echo "Us

2020-10-15 23:48:05 448

原创 实战篇--常见的Shell脚本编写(二)

常见的Shell脚本编写(二)1.11 屏蔽网站访问频繁的IP1.12 判断输入是否为IP1.13 判断输入是否为数字1.15 监控目录,将新创建的文件名追加到日志中1.17 查看网卡实时流量1.18 MySQL数据库备份1.19 Nginx启动脚本1.20 选择SSH连接主机1.11 屏蔽网站访问频繁的IP1)屏蔽每分钟访问超过200的IP方法1:以Nginx日志作为测试DATE=$(date +%d/%b/%Y:%H:%M)ABNORMAL_IP=$(tail -n5000 access.lo

2020-10-15 23:41:44 309

原创 实战篇--常见的Shell脚本编写案例(一)

常见的 Shell脚本编写案例(一)注意事项1)开头加解释器:#!/bin/bash2)语法缩进,使用四个空格;多加注释说明。3)命名建议规则:变量名大写、局部变量小写,函数名小写,名字体现出实际作用。4)默认变量是全局的,在函数中变量local指定为局部变量,避免污染其他作用域。5)有两个命令能帮助我调试脚本:set -e 遇到执行非0时退出脚本,set-x 打印执行过程。6)写脚本一定先测试再到生产上。文章目录常见的 Shell脚本编写案例(一)1.1 获取随机字符串或数字1.2 定义一

2020-10-15 23:35:25 511

原创 k8s--pod配置管理(secret和configmap)

文章目录一:secret配置管理1.1 Secret机密1.2 创建secret1.2.1 方式一:基于文件创建secret1.2.2 基于参数创建secret1.3 pod使用secret1.3.1 方式一:使用secret中的变量导入到pod中1.3.2 方法二:使用挂载二:ConfigMap配置管理2.1 方法一:使用kubectl创建2.2 使用变量参数形式创建configmap资源一:secret配置管理1.1 Secret机密Secret解决了密码、token、密钥等敏感数据的配置问题,将

2020-10-15 19:01:02 1350 1

原创 k8s--五种控制器类型解析

文章目录一、k8s的五种控制器1.1 k8s的控制器类型1.2 Deployment控制器1.3 SatefulSet控制器1.4 DaemonSet控制器1.5 Job控制器1.6 cronjob控制器一、k8s的五种控制器1.1 k8s的控制器类型Kubernetes中内建了很多controller(控制器),这些相当于一个状态机,用来控制Pod的具体状态和行为:deployment:适合无状态的服务部署StatefullSet:适合有状态的服务部署DaemonSet:一次部署,所有的no

2020-10-14 23:01:16 5197 2

原创 k8s--Pod的调度约束

文章目录一、k8s创建pod工作流程二、调度方式2.1 nodeName方式2.2 nodeSelector一、k8s创建pod工作流程Kubernetes通过watch的机制进行每个组件的协作,每个组件之间的设计实现了解耦。1、用户创建pod的信息通过API Server存储到etcd中,etcd记录pod的元信息并将结果返回API Server2、API Server告知调度器请求资源调度分配,调度器给后端打分,将优先级高的node与pod绑定并告知API Server3、API Serve

2020-10-14 19:04:12 246

原创 k8s--Pod管理(资源控制、重启策略与探针)

文章目录一、pod的资源控制二、Pod重启策略pod的健康检查–探针(Probe)使用exec方式检查使用httpGet方式检查使用tcpSocket方式检查一、pod的资源控制Docker中我们可以对容器进行资源控制,在k8s中当然也有对pod资源进行控制官网中对pod资源控制的描述https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/我们可以在yaml中进行限制:Pod的每个容

2020-10-13 21:57:24 1262

原创 k8s--pod容器与镜像管理,k8s私有仓库harbor搭建

文章目录pod资源管理部署harbor创建私有项目pod资源管理pod的特点:最小部署单元一组容器的集合一个Pod中的容器共享网络命名空间Pod是短暂的pod容器分类:infrastructure container 基础容器initcontainers 初始化容器container 业务容器1:infrastructure container 基础容器维护整个pod网络空间:可以在node节点操作查看容器的网络'查看容器的网络'[root@node01 ~]# ca

2020-10-12 19:04:57 632

原创 k8s集群pod资源状态显示Terminating或Unknown时无法删除和故障排除

文章目录问题描述:解决方案:问题描述:在k8s集群中利用yaml创建pod资源时,创建的资源显示为Terminating或Unknown[root@master test]# kubectl get podsNAME READY STATUS RESTARTS AGEmy-tomcat-57667b9d9-nklvj 1/1 Terminating 0 10hmy-tom

2020-10-12 18:55:46 1244

原创 K8s集群--YAML文件

文章目录概述使用YAML文件创建资源对象详解k8s中的port概述k8s支持使用YAML和JSON格式的文件来创建资源对象,相比较而言:json格式的文件用于接口之间消息的传递,更适合二次开发yaml格式的文件只是一种简洁的非标记性语言,更适合运维YAML的文件格式和注意事项不支持制表符tab键缩进,需要使用空格缩进,使用缩进表示层级关系通常开头缩进2个空格,缩进的空格数不重要,只要相同层级的元素左对齐即可字符后缩进一个空格,如冒号、逗号、横杆用#号注释如果包含特殊字符用单引号引起

2020-10-12 11:01:57 215

原创 k8s集群--kubectl管理

文章目录使用kubectl命令管理项目的生命周期,创建--》发布--》更新--》回滚--》删除创建发布更新回滚删除其他常规操作Kubectl是管理k8s集群的命令行工具,通过生成的json格式传递给apiserver进行创建、查看、管理的操作。[root@master ~]# kubectl --help '帮助信息'kubectl controls the Kubernetes cluster manager. Find more information at: https://kub

2020-10-12 09:56:29 279

原创 两种简单的方式实现外部访问k8s中的pod服务端口

文章目录1、使用hostPort的方式2、使用NodePort的方式1、使用hostPort的方式这是一种直接定义Pod网络的方式。hostPort是直接将容器的端口与所调度的节点上的端口路由,这样用户就可以通过宿主机的IP加上来访问Pod了。[root@master opt]# vim hostpath.yml '创建一个yml文件,指定对外服务的端口'apiVersion: v1kind: Podmetadata: name: test-pdspec: containers

2020-10-01 10:53:03 6955 1

原创 k8s集群安装Kuboard进行管理

文章目录简介安装kuboard获取token访问kuboard服务器进行容器副本的验证如何正确的删除pod简介上一篇博客中已经将k8s群集搭建完毕了,这一篇中将安装Kuboard 方便管理k8s群集。如果想了解k8s群集的搭建可以看我的上一篇博客安装kuboard使用下面的命令安装kuboard[root@master ~]# kubectl apply -f https://kuboard.cn/install-script/kuboard.yaml官网里有这个yaml文件的详细介绍ht

2020-09-30 12:30:07 3167 2

原创 k8s二进制方式多节点部署

文章目录一、拓扑图和环境介绍二、多节点部署2.1 单节点部署2.2 master02部署2.3 nginx负载均衡部署2.4 keepalived热备部署2.5 修改node的VIP以及pod的创建一、拓扑图和环境介绍各主机ip地址分配主机名IP地址部署的服务master192.168.179.121/24apiserver、scheduler、controller-manager、etcdmaster02192.168.179.124/24apiserver、s

2020-09-30 12:29:38 260

原创 报错!clusterrolebindings.rbac.authorization.k8s.io “cluster-admin-binding“ already exists解决办法

项目场景:在使用二进制部署k8s群集时,遇到了签名证书无法创建的问题问题描述:在创建bootstrap角色赋予权限用于连接apiserver请求签名时,出现以下报错信息:[root@master kubeconfig]# kubectl create clusterrolebinding kubelet-bootstrap --clusterrole=system:node-bootstrapper --user=kubelet-bootstrapError from server (Alread

2020-09-29 12:15:33 7130

原创 kubernetes——单节点二进制方式部署k8s集群

文章目录一、群集理论基础1.1 flannel网络理论介绍1.2 各节点组件介绍二、群集部署2.1 环境部署2.2 etcd数据库部署2.2 docker引擎部署2.3 flannel网络配置2.4 部署master组件2.5 node01节点部署2.6 node02节点部署一、群集理论基础1.1 flannel网络理论介绍Overlay Network:覆盖网络,在基础网络上叠加的一种虚拟化网络技术模式,该网络中的主机通过虚拟链路连接起来VXLAN:将源数据包封装到UDP中,并使用基础网络的IP

2020-09-29 11:52:51 425 1

原创 Kubernetes容器云基础知识

文章目录一、Kubernetes是什么?二、kubernetes特性三、Kubernetes集群架构与组件四、kubernetes核心概念一、Kubernetes是什么?Kubernetes是Google在2014年开源的一个容器集群管理系统,Kubernetes简称k8S。K8S用于容器化应用程序的部署,扩展和管理。K8S提供了容器编排,资源调度,弹性伸缩,部署管理,服务发现停一系列功能。Kubernetes目标是让部署容器化应用简单高效。官方网站:https://kubernetes.io

2020-09-28 08:55:37 654

原创 Docker--TLS加密通讯详解

文章目录一、Docker存在的安全问题二、TLS加密通讯三、TLS安全加密配置3.1 实验环境3.2 实验操作3.3 实验测试一、Docker存在的安全问题1、Docker 自身漏洞作为一款应用 Docker 本身实现上会有代码缺陷。CVE官方记录 Docker 历史版本共有超过20项漏洞。黑客常用的攻击手段主要有代码执行、权限提升、信息泄露、权限绕过等。目前 Docker版本更迭非常快,Docker 用户最好将 Docker 升级为最新版本。2、Docker 源码问题Docker 提供了 Do

2020-09-27 11:18:40 240

原创 Docker资源管理--Cgroup资源配置方法

[root@docker ~]# mkdir /opt/stress[root@docker ~]# vim /opt/stress/Dockerfile[root@docker ~]# cd /opt/stress/[root@docker stress]# docker build -t centos:stress .[root@docker stress]# docker imagesREPOSITORY TAG IMAGE ID

2020-09-27 10:03:13 541

原创 Linux系统中Docker的harbor私有仓库部署与管理

文章目录一、Harbor私有仓库介绍1.1 Harbor简介1.2 harbor的特性1.3 harbor的简易架构1.4 harbor配置文件参数二、部署Harbor私有仓库一、Harbor私有仓库介绍1.1 Harbor简介Harbor是VMware公司的开源级的企业级DockerRegistry(仓库)项目,项目地址为 https://github.com/vmware/harbor.Harbor的目标是帮助用户迅速搭建一个企业级的DockerRegistry服务。Harbor以docker

2020-09-23 23:29:06 751

原创 Docker consul的容器服务更新与发现

文章目录一、Docker consul理论基础二、Docker consul自动发现服务架构的构建2.1 实验环境2.2 consul服务器部署2.3 nginx服务器部署2.4 安装consul-template2.5 测试三、小扩展3.1 添加httpd服务3.2 测试一、Docker consul理论基础consul是HashiCorp公司推出使用go语言编写的开源工具,用于实现分布式系统的服务发现与配置具有如下特性:consul支持健康检查,允许存储键值对一致性协议采用Raft算法,用来

2020-09-23 19:58:49 482 1

原创 Docker Compose容器编排简介及如何编写

文章目录一、Docker Compose容器编排详解1.1 Compose简介1.2 YML文件1.3 Docker Compose配置常用字段1.4 Docker Compose常用命令1.5 使用Docker Compose详解:使用步骤、环境准备二、实验:使用Docker-Compose一、Docker Compose容器编排详解1.1 Compose简介Compose 是用于定义和运行多容器 Docker 应用程序的工具。通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服

2020-09-22 22:51:01 664 1

原创 Docker四种网络模式介绍及配置

文章目录一、 Docker网络介绍二、Docker的四种网络模式2.1 host模式2.2 container模式2.3 none模式2.4 bridge模式三、网络模式配置3.1 指定网络模式创建容器:host模式3.2 指定固定ip创建容器:Bridge模式3.3 创建容器:Container模式一、 Docker网络介绍Docker使用Linux桥接,在宿主机虚拟一个Docker容器网桥(docker0),Docker启动一个容器时会根据Docker网桥的网段分配给容器一个IP地址,称为Conta

2020-09-22 19:51:45 821

原创 Docker---------使用Dockerfile构建SSHD、systemctl、nginx、Tomcat、MySQL镜像

文章目录一、构建SSHD镜像二、构建systemctl镜像三、构建Nginx镜像四、构建Tomcat镜像五、构建MySQL镜像一、构建SSHD镜像创建目录,编写Dockerfile文件[root@docker opt]# mkdir sshd[root@docker opt]# cd sshd/[root@docker sshd]# vim DockerfileFROM centos:7MAINTAINER The Centos Project <sshd-centos>RUN

2020-09-22 18:24:41 282

原创 Centos中Docker的基本操作、镜像创建、数据管理、私有仓库的建立、端口映射和容器互联

文章目录一、Docker概述1.1 Docker概述1.2 Docker的核心概念及安装方式二、Docker的基本操作2.1 环境准备及优化2.2 镜像的基本操作2.3 容器的操作一、Docker概述1.1 Docker概述Docker是什么?、是一种轻量级的“虚拟机”在Linux容器里运行应用的开源工具Docker与虚拟机的区别Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容

2020-09-20 23:20:56 711

原创 ELK日志分析系统(基本原理简介+ELK群集部署)

文章目录前言一、ELK日志分析系统简介1.1 ELK日志分析系统组成1.2 ELK工作原理1.3、Elasticsearch介绍1.4、Logstash介绍1.5、Kibana介绍二、ELK部署2.1 实验环境2.2 配置Elasticsearch环境2.3 apache服务器部署logstash2.4 node1主机安装Kibana2.5 访问测试前言日志分析是运维工程师解决系统故障,发现问题的主要手段。日志主要包括系统日志、应用程序日志和安全日志,系统运维和开发人员可以通过日志了解服务器软硬件信息、

2020-09-15 17:22:24 1532

原创 GFS分布式文件系统简介(各类型卷的介绍及部署)

文章目录一、GlusterFS概述1.1 GlusterFS简介1.2 GlusterFS特点1.3 GlusterFS术语1.4 模块化堆栈式架构1.5 GlusterFS工作原理1.6 GlusterFS的卷类型二、GFS平台部署2.1 实验环境2. 2 GFS平台部署一、GlusterFS概述1.1 GlusterFS简介Gluster File System,开源的分布式文件系统,是Scale存储的核心,能够处理千数量级的客户端.在传统的解决 方案中Glusterfs能够灵活的结合物理的,虚

2020-09-14 09:12:59 1404 1

原创 Mongodb数据库介绍及基本指令操作

文章目录一、Mongodb简介1.1 Mongodb的特点1.2 Mongodb的安装二、多实例创建方法三、数据库的基本操作指令四、导入导出五、备份恢复六、克隆七、用户管理与进程管理一、Mongodb简介MongoDB是一款跨平台、面向文档的数据库。可以实现高性能、高可用性,并且能够轻松扩展,是一个基于分布式文件存储的开源数据库系统,在高负载的情况下,添加更多的节点可以保证服务器的性能。在大数据时代中,大数据量的处理已经成了考量一个数据库最重要的原因之一。MongoDB的一个主要目标就是尽可能的让数

2020-09-13 09:58:34 218

原创 rsync远程同步和inotify结合使用完成自动同步

[root@source ~]# vim /etc/rsyncd.confuid = nobodygid = nobodyuse chroot = yesaddress = 192.168.179.123port 873log file = /var/log/rsync.log# max connections = 4pid file = /var/run/rsyncd.pidhosts allow = 192.168.179.0/24...[wwwroot]path = /var/

2020-09-13 08:54:13 199

原创 Redis集群的搭建(原理和实际操作中数据的读写情况,发生故障后的数据读写情况)

文章目录前言一、Redis集群1.1 Redis集群介绍1.2 Redis集群的优势1.3 Redis集群的实现方法1.4 Redis-Cluster数据分片1.5 Redis-Cluster的主从复制模型二、Redis集群搭建2.1 实验环境2.2 搭建过程前言上一篇介绍了单节点Redis服务器的搭建,但是单节点Redis服务器会出现的问题:单点故障,服务不可用,无法处理大量的并发数据请求,数据丢失此时就需要搭建Redis集群了一、Redis集群1.1 Redis集群介绍Redis集群是一个

2020-09-09 23:51:30 417

原创 Redis数据库的介绍(安装部署,常用命令介绍,性能管理)

文章目录前言一、Redis简介二、Redis的安装部署三、Redis数据库常用命令3.1 Redis-cil命令行工具3.2 redis-benchmark测试工具3.3 Redis多数据库操作四、Redis持久化4.1 RDB持久化4.2 AOF持久化五、Redis性能管理前言关系型数据库一个结构化的数据库,创建在关系模型基础上一般面向于记录包括Oracle、MySQL、sQL Server、Microsoft Access、DB2等非关系型数据库除了主流的关系型数据库外的数据库,都认

2020-09-08 19:45:41 177

原创 squid代理服务器的介绍及搭建(传统代理和透明代理),ACL访问控制,日志分析工具-sarg,反向代理的搭建

文章目录一、squid代理服务1.1 缓存代理概述1.2 代理的基本类型1.3 使用代理的好处二、squid代理服务搭建2.1 实验环境2.2 传统代理搭建2.3 透明代理搭建一、squid代理服务Squid是一个高性能的代理缓存服务器,Squid支持FTP、gopher、HTTPS和HTTP协议。和一般的代理缓存软件不同,Squid用一个单独的、非模块化的、I/O驱动的进程来处理所有的客户端请求。1.1 缓存代理概述Web代理的工作机制缓存网页对象,减少重复请求它是这样实现其功能的,接受来

2020-09-06 14:57:20 377

原创 Nginx+Tomcat群集搭建(动静分离+负载均衡)

文章目录一、Nginx动静分离实现原理1.1 动静分离实现原理1.2 Nginx静态处理优势二、Nginx负载均衡实现原理2.1 Nginx实现负载均衡是通过反向代理实现2.2 Nginx配置反向代理的主要参数三、Nginx+Tomcat群集搭建3.1 动静分离搭建3.1.1 搭建Nginx服务3.1.2 Tomcat服务搭建3.1.3 动静分离配置3.1.4 nginx处理静态图片,Tomcat处理动态页面配置3.2 负载均衡配置一、Nginx动静分离实现原理1.1 动静分离实现原理服务端接收来自

2020-09-04 11:00:15 175

原创 Haproxy搭建Web群集(Haproxy+Nginx高可用)

文章目录一、Haproxy简介二、Haproxy调度算法2.1 常见的Web集群调度器2.2 Haproxy应用分析2.3 Haproxy调度算法原理三、Haproxy配置文件详解四、Haproxy日志管理五、Haproxy参数优化六、Haproxy集群搭建6.1 实验目的6.2 实验环境6.3 实验步骤6.3.1 节点服务器配置(安装Nginx服务)6.3.2 Haproxy服务器配置6.3.3 验证6.3.4 日志管理一、Haproxy简介HAProxy是一个使用C语言编写的自由及开放源代码软件,其

2020-09-02 19:19:15 385

原创 LVS-DR+Keepalived高可用集群部署

文章目录前言一、LVS-DR数据包流向分析前言上一次简单介绍了一下负载均衡的工作模式分类,今天介绍其中的DR模式和Keepalived高可用,也就是热备一、LVS-DR数据包流向分析为方便进行原理分析,将Client与群集机器放在同一网络中,数据包流经的路线为1-2-3-41.Client向目标VIP发出请求,Director(负载均衡器)接收IP包头及数据帧信息2 .Director根据负载均衡算法选择 Realserver_1,不修改也不封装IP报文,而是将数据帧的MAC地址改为R

2020-09-02 09:55:29 256

原创 LVS负载均衡工作原理(LVS-NAT模式部署)

文章目录一、负载均衡群集原理1.1 企业群集应用概述1.2 企业群集分类1.3 负载均衡群集工作模式分析1.3.1 NAT模式1.3.2 TUN模式1.3.3 DR模式1.3.4 三种工作模式的区别二、群集架构与虚拟服务器2.1 负载均衡群集的架构2.2 LVS虚拟服务器概述三、LVS-NAT模式部署3.1 实验环境3.2 部署步骤3.3 NFS服务器配置3.4 Apache服务器配置3.5 LVS服务器配置3.6 测试一、负载均衡群集原理1.1 企业群集应用概述群集的含义:Cluster,群集,集

2020-08-31 19:14:16 261

原创 MySQL数据库--MHA的搭建与配置

文章目录前言一、MHA概述1.1 MHA简介1.2 MHA的组成1.3 MHA特点二、MHA的搭建2.1 实验准备2.2 实验需求2.2 主从复制2.3 安装MHA软件2.4 进行实验验证前言在之前有介绍过了MySQL服务器的主从复制和读写分离,但是此架构存在的问题是如果主服务器宕机,则数据库无法写入数据,会造成重大损失,所有就出现了MHA高可用一、MHA概述1.1 MHA简介MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本

2020-08-28 00:59:44 819 1

原创 在使用amoeba连接数据库时,报错java.lang.Exception: poolName=slaves, no valid pools

项目场景:搭建3台MySQL服务器,完成主从复制,搭建一台amoeba服务器,完成MySQL的读写分离问题描述:在服务搭建完毕后,利用客户机连接amoeba服务器登录数据库,无法查看数据库内容客户端报错的数据代码:mysql> show databases;ERROR 2006 (HY000): MySQL server has gone awayNo connection. Trying to reconnect...Connection id: 1545595021C

2020-08-27 09:24:09 507

原创 MySQL主从复制与读写分离(服务搭建实验)

文章目录为什么要做主从复制、读写分离一、主从复制1.1 MySQL主从复制原理1.2 MySQL的复制类型1.3 MySQL复制的基本原则二、读写分离2.1 MySQL读写分离原理2.2 读写分离方案三、主从复制、读写分离实验3.1 实验准备3.2 MySQL主从复制为什么要做主从复制、读写分离在业务复杂的系统中,有这么一个情景,有一句sql语句需要锁表,导致暂时不能使用读的服务,那么就很影响运行中的业务,使用主从复制,让主库负责写,从库负责读,这样,即使主库出现了锁表的情景,通过读从库也可以保证业务

2020-08-26 23:59:46 590

原创 MySQL高级SQL语句--数据库中各类函数介绍、存储过程简介及操作

文章目录一、数据库函数1.1 数学函数1.2 聚合函数1.3 字符串函数1.4 日期时间函数二、存储过程2.1 存储过程简介2.2 创建存储过程2.3 修改存储过程2.4 删除存储过程一、数据库函数MySQL 数据库函数提供了能够实现各种功能的方法,使我们在查询记录时能够更高效的输出。MySQL内建了很多函数,常用的包括数学函数、聚合函数、字符串函数和日期时间函数。1.1 数学函数数据库内存储的记录,经常要进行一系列的算术操作,所以 MySQL 支持很多数学函数。常用的数学函数如表所示数

2020-08-25 19:58:03 274

空空如也

空空如也

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

TA关注的人

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