3 Y。S。H。

尚未进行身份认证

我要认证

成为什么样的人,只看他除了工作以外的时间

等级
TA的排名 6w+

Ceph 理解基础架构

Ceph化简的大致结构图Ceph网络流量结构存储类型存储的类型都是经过历史演化的结果,而ceph都是支持,并且利用rados集群解决了各自的缺点块存储:最接近硬件,直接对硬件进行操作,通过把所有数据按照固定的大小分块,每一块赋予一个用于寻址的编号,但是存储需要建立在连续的编号上,数据按照字节进行读写缺点:容量浪费(连续的编号)和不便管理(硬盘越来越大)文件存储:最常见使用的文件系统,采用树状结构进行目录和文件分类管理缺点:性能不如块存储,因为多了一层管理对象存储:基于前两者

2020-10-23 17:51:52

Mycat 读写分离配置参数解释

Mycat 环境MyCAT是使用JAVA语言进行编写开发,由于MyCAT中使用了JDK7中的一些特性,所以要求必须在JDK7以上的版本上运行安装JDK7以上的版本官网下载安装包解压后配置直接使用官方建议放在usr/local/Mycat 目录下目录解释bin程序目录,存放了window版本和linux版本,除了提供封装成服务的版本之外,也提供了nowrap的shell脚本命令./mycat console,首先要chmod +x *mycat 支持的命令{ console | sta

2020-10-15 10:55:13

Mysql 主从复制参数

Mysql 主从复制步骤安装数据库(建议5.7以上,支持更多的特性)主库配置从库配置测试和查看日志安装数据库yum localinstall https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpmyum install mysql-community-server -y#安装数据库5.7版本systemctl enable mysqldsystemctl start mysqld#启动和自启gre

2020-10-13 17:39:18

Mysql 主从基础概念

Mysql的边界单台msql的边界就是单台服务器的的性能,包括内存、cpu、硬盘、I/O,因为最终的数据库载体还是文件,解决方案加大单台的性能多台服务器提供服务从性价比和冗余性都会选择第二种方案mysql的读写分离为什么采用读写分离?sql语句最常用的就是增删改查,进而再分为2个类型查是读数据,而增删改是对数据的写,通常情况下查询是比写操作频繁而且需要时间长,而写的需求相应的小很多,这样有助于分析问题和解决问题1、应用程序直接对接多台mysql服务器缺点:数据库和应用服务是紧耦

2020-10-10 11:09:13

Mysql 重要基础概念

数据库表结构表的组成列:字段行:记录/数据结构说的就是字段,记录是根据字段定义的类型产生的MySQL 数据类型数据类型用于指定特定字段所包含数据的规则,它决定了数据保存在字段里的方式,包括分配给字段的宽度,以及值是否可以是字母、数字、日期和时间等字符串类型(CHAR(0-255固定长度),VARCHAR(0-255可变长度)数值类型(INT(整数型)、FLOAT(浮点型))日期和时间类型(DATE(年月日)、TIME(时分秒))MySQL 约束类型约束是一种限制,它通过对表

2020-09-29 16:03:54

Mysql 数据库基础了解

基础概念SQLSQL是基于数据库的一种高级语言,实现对数据的各种操作,关系型数据库的一种标准,也就是 SQL语言对所有符合协议标准的都是通用的DB( DataBase)数据库是数据的集合,存储在文件系统中,以文件形式存在DBMS(DataBase Management System)数据库管理系统就是我们常说的mysql、oracle、db2等等数据库(DBMS)的种类(常见)关系型数据库通过二维表的形式建立多张表,建立成的数据库关系型数据库组成结构发展结构的目

2020-09-27 14:13:16

集群 keepalived+LVS

LVS遗留问题:LVS无法做到后端真实服务器的健康检查,就会导致其中一台挂了,ipvs规则不会自动删除,导致用户请求还是会转到已经失效的服务器上面解决方案:编写shell脚本检测服务状态,进行添加和删除ipvs规则keepalived高可用自带LVS模块,可以做到基于TCP、UDP协议实现ipvs规则自动添加和删除keepalivedvrrp协议以守护进程方式的实现能够根据配置文件自动生成ipvs规则对各RS做健康状态检测vrrp虚拟路由冗余协议通过把几台服务器联合组成一台虚

2020-09-25 11:25:20

集群 LVS-NAT模式

LVS-NAT模式DR使用的场景都是属于内网常规使用负载,而NAT模式就是实现NAT功能的必要如下。调度器有公网和内网地址存在,需要实现公网访问进行负载虚拟化场景的IP地址都是属于虚拟化内部使用,而主机上的IP地址就是类似公网的功能,实现虚拟化和内网的负载也就是调度器2边是无法实现通讯的都可以用过NAT模式解决NAT相比DR模式简单很多,因为原理就是我们常用的利用防火墙的SNAT和网关配置能实现多台服务器的流量通过一台电脑转发出去,前提是多台电脑的网关需要指向转发流量的这台电脑上而公网就要

2020-09-22 13:02:57

集群 LVS-DR模式

LVS负载均衡LVS 由2部分程序组成,包括 ipvs 和 ipvsadm,LVS基于linux内核的netfilter机制,以IP的HOOK链为切入点,注册实现了多个HOOK函数来完成具体功能用户空间: ipvsadm就是实现命令行管理,也就是客户端工具内核空间:ipvs就是依赖netfilter机制之上的一个个模块功能LVS在2.6版本就已经集成到内核中,所以只要关注ipvs模块是否加载就行同样iptables也是基于netfilter机制,所以iptables也是能实现负载均衡,

2020-09-21 18:16:59

集群 负载均衡基础

对于服务常见的2个指标Recovery Point Objective (RPO),指的是最多可能丢失的数据的时长(图中2)Recovery Time Objective (RTO) ,指的是从灾难发生到整个系统恢复正常所需要的最大时长(图中1)如果没有高可用(图中1)都是使用负载进行冗余的话,永远就存在单点故障,调度器的单点负载均衡也可以叫负载调度器,通过代理方式把不同的请求通过算法调度给后面真实的服务器进行处理,实现服务的负载均衡负载均衡种类LVS (LinuxVirtual.

2020-09-17 14:47:04

Nginx 负载均衡配置说明

Nginx负载均衡依赖于反向代理模块(实现七层的修改)属于七层负载,代理接收和发送流量(所有的流量都是要经过代理转发,区别于LVS)自带的后端检测是基于事后转发也就是访问出问题了再转发给其他服务器(无法提前知道故障避免访问)第三方检测模块Tengine,可以实现动态监测故障的后端剔除负载池,恢复后再加入实现负载均衡主要模块反向代理location / { proxy_pass http://localhost:8000; proxy_set_header Ho

2020-09-15 15:13:26

Nginx 配置文件结构

nginx.conf 文件的结构main: nginx 运行相关events::与用户的网络连接相关http:http服务器有关的公共配置,代理,缓存,日志,以及第三方模块的配置server: web服务相关的,提供http服务配置,可以配置多个web服务(多个server)location:地址定向,数据缓存,应答控制,以及第三方模块的配置(可以理解为url端口后面/,192.168.0.202:10080/zabbix,location就是/zabbix路径和服务器建立连接,可以多个)

2020-09-11 14:45:45

Nginx 基础知识

学习前必须理解的概念linux下的I/O模型I/O模型就是处理请求I/O读写的方式(一切皆文件),比如我们访问网页所有的请求过程内部是怎么实现的1、等待数据准备,数据会先被拷贝到操作系统内核的缓冲区中(内存中)2、将数据从内核拷贝到进程中,内核态到用户态转换正是因为这两个阶段,linux系统产生了下面五种网络模式的方案主要结合3点I/O模型异步和异步阻塞和非阻塞I/O 多路复用异步和异步重点在消息通知的方式的行为,也就是调用结果的通知方式不同同步:当一个同步调用发出去后,

2020-09-09 17:31:40

Kubernetes 健康探测

Pod的生命周期中存在2种健康探测,Readiness和Liveness是保证Pod容器正常运行的关键检测手段。1、零停机部署2、避免无效的Pod导致服务中断3、更加安全的滚动升级由 kubelet 对容器执行的定期诊断。要执行诊断,kubelet 调用由容器实现的 Handler默认健康探测默认是基于容器的dockerfile中的CMD或ENTRYPOINT指定的,容器进程退出代表故障处理方法就是进入重启策略(restartPolicy,默认为Always)这个阶段还是属于容器自身状态

2020-09-07 10:39:27

Kubernetes DNS服务

Kubernetes中kube-dns系统组件唯一是基于deployment资源管理器,并通过Service来通讯,很多应用前提都是要基于DNS组件来完成DNS A记录的自动产生基于Service NAME字段产生A记录,格式:svc名称.当前命名空间.当前集群的域名(默认就是svc.cluser.local ),比如:busybox1.default.svc.cluster.local基于Pod的主机名产生A记录,需要基于hostname和subdomain指定,格式:hostname.subd

2020-09-03 17:30:36

Kubernetes Service服务

最简单的已经通过yaml文件把容器跑起来了,这个时候就是网络通讯的问题了K8s是基于扁平化的网络,也就是所有的Pod和node节点都是互通的docker run 是基于-p 作为映射端口,而yaml文件里写的ports并不是这个功能,前面也说了扁平化,说明这个参数并没有用,只是为了方便Pod中查看而已Pod也有一个单独IP地址的IT产品的解决方案通常都是加一层,那么这层就是K8s的Service服务哪些场景需要Service服务?集群外部需要访问到Pod应用集群内部Pod与Pod之间

2020-09-01 22:28:06

Kubernetes Yaml文件格式

语法要求大小写敏感使用缩进表示层级关系缩进时不允许使用Tab键,只允许使用空格缩进的空格数目不重要,只要相同层级的元素左侧对齐即可# 表示注释,从这个字符一直到行尾,都会被解析器忽略数据结构对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)纯量(scalars):单个的、不可再分的值对象类型:对象的一组键值对,使用冒号结构表示(冒号后面必须空格后在

2020-09-01 16:02:28

Kubernetes Pod生命周期

Pod生命周期第一阶段:Pod环境初始化第二阶段:容器初始化第三阶段:Pod生成容器初始化Pause是Pod的第一个启动容器,负责资源的共享(使Pod容器属于一个namespace下)Init容器是Pod启动前的一个必要条件,当然也可以没有,主要是为了确保Pod的正常安全运行Init容器类似脚本运行,只要运行成功后就被销毁Init容器可以多个,但是运行下一个之前确保上一个已经完成Init容器失败后,Pod会一直重启(受到restartPolicy控制,默认Always)Init

2020-08-30 18:29:27

Kubernetes 安装几点说明

1、安装方式基于二进制包一步一步安装(对于学习认识系统有帮助)以守护进程存在基于kubeadm工具快速安装(推荐)以docker形式存在(其实是K8s的pod)2、系统内核版本最好升到4.4以上,不然容易出现各种奇怪问题3、安装包下载K8s是google公司基于Borg系统开源的项目,所以安装包全部在google网站上,国内是禁止掉的,目前可以基于阿里云镜像源可以安装最新版到Kubernetes-1.18.6,需要指定版本安装阿里云源cat <<EOF &gt

2020-08-29 18:36:26

Kubernetes Pod组件和网络通信

容器的有状态和无状态容器本身应用是针对无状态服务的,也就是在一个集群应用中,应用是可以停止然后恢复还能进行服务的,比如web服务,IPVS等等,对于数据库这样的有状态服务是K8s的目标,目前也有针对的控制组件叫StatefulSetPod组件Pod 是 Kubernetes 的最小工作单元,是一个或多个容器的集合单位。Pod的好处在于:方便管理,有些应用必定跟其他应用是频繁交互,并且是需要共享资源和网络的,这样用Pod来管理是很需要的(有点类似Docker-compose,但是Pod功能更强大和方便

2020-08-25 14:59:12

查看更多

勋章 我的勋章
  • 签到达人
    签到达人
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证
    技术圈认证
    用户完成年度认证,即可获得
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 阅读者勋章Lv3
    阅读者勋章Lv3
    授予在CSDN APP累计阅读博文达到30天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv3
    勤写标兵Lv3
    授予每个自然周发布7篇到8篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。