自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 动态pv策略和组件

provisioner插件------支持nfs,创建pv目录storageclass:定义pv的属性动态pv的默认策略是删除(重要)动态pv删除pvc之后的状态,最好调整为released1、创建账号,给卷插件能够在集群内部通信,获取资源,监听事件,创建,删除,更新pv2、创建卷插件pod,卷插件的pod创建pv3、storageclass:给pv赋予属性(pvc被删除之后pv的状态,以及回收策略)4、创建pvc------完成。

2024-01-11 17:35:54 994

原创 k8s的存储卷

1、Provisioning(配置)------pvc请求request------检索(找一个合适的pv)------pvc和pv(binding绑定)------使用------pod被删除------pv的releasing(释放)------recying(回收)即使容器被销毁,删除,重启,节点上的存储卷的数据依然存在,后续也可以继续使用。pod内的挂载点声明一个请求,pvc请求,pvc会找一个最合适的pv来作为pod的存储卷,pv和共享目录再一一映射,最终由nfs来提供最终的共享存储空间。

2024-01-10 16:59:51 1246 1

原创 k8s的集群调度

list-watch------会在每一步把监听的消息(APIserver:6443)-------------controller manager,schedule,kubelet,etcd都会监听。创建完成之后,kubelet get pod kubectl describe pod nginx-------------------->etcd的数据库当中。注:指定节点标签部署pod,是要经过scheduler的算法,如果节点不满足条件,pod会进入pending状态,直到节点满足条件为止。

2024-01-08 13:16:41 1228

原创 pod进阶

80999诊断结果:1、成功,容器通过了,正常运行2、失败,存活探针就会重启3、未知状态:诊断失败。

2024-01-04 17:34:36 1021

原创 pod详解

发布和yaml文件的初步了解。pod环节;pod的生命周期检查环境pod是什么?pod是k8s中最小的资源管理组件。pod也是最小化运行容器化的应用的资源管理对象。pod是一个抽象的概念,可以理解为一个或者多个容器化应用的集合。在一个pod当中运行一个容器是最常用的方式。在一个pod当中同时运行多个容器,在一个pod当中可以同时封装几个需要耦合的互相协作的容器。这些多个容器共享资源,也可以互相协作组成一个service单位。

2024-01-03 12:32:16 687

原创 k8s的陈述式资源管理

k8s的陈述式资源管理:命令行:kubectl命令行工具优点:90%以上的场景都可以满足对资源的增,删,查比较方便,对改不是很友好缺点:命令比较冗长,复杂,难记声明式:k8s当中的yaml文件来实现资源管理------声明式GUI:图形化工具的管理。1、kubectl命令的详解 查看 部署 查看pod的情况(详细的信息,日志 发布和回滚)查看k8s的版本查看所有api的资源对象的名称(简写)查看k8s的集群信息查看master节点的状态基本信息查看。

2023-12-29 13:33:03 2062

原创 kubeadm

kubeadm来快速的搭建一个k8s集群二进制搭建适合大集群,50台以上主机。kubeadm更适合中小企业的业务集群。我用过的集群是二进制,搭建过admmaster 192.168.233.91 2核4G /4核8G docker kubeadm kubectl flannelnode1 192.168.233.92 2核4G /4核8G docker kubeadm kubectl flannelnode2 192.168.233

2023-12-28 17:28:46 827

原创 k8s的二进制部署

ca-config.json 证书颁发机构的配置文件,定义了证书生成的策略,默认的过期时间和模版。ca-csr.json 证书颁发机构的配置文件,定义了证书生产的策略,默认的过期时间和模版。server.pem etcd服务器的证书文件,用于加密和认证etcd节点之间的通信。etcd一般都是集群部署,etcd也有选举leader的机制,至少要3台,或者奇数台。server-csr.json 用于生成etcd的服务器证书的私钥签名文件。etcd的一个高可用---------分布式的键值存储数据库。

2023-12-26 11:48:12 724

原创 kubernetes

在k8s集群当中,创建一个pod之后,都会为其中运行的容器分配一个集群内的IP地址,由于业务的变更,容器可能会发生变化,IP地址也会发生变化,service的作用就是提供整个pod对外统一的IP地址。(多个容器组成的一个内部的IP地址,网关)根据调度算法选择一个合适的node,node节点的资源情况,node的资源控制的情况等等,选一个资源最富裕,负载最小的node来部署。1、对docker等容器技术从应用的包------部署-------运行-------停止-------销毁,全生命周期管理。

2023-12-25 12:30:17 891

原创 playbook

模块标签,可以在playbook当中为任务设定标签(tages),我们在运行playbook时,可以通过指定任务标签,来实现只允许设定的标签的任务。/etc/ansible/hosts 配置了主机的占位符名称和j2文件中的占位符一致(定义参数:占位符的参数的参数声明好)rolse:分别把变量 文件 任务 模块以及处理器,放在单独的目录当中,使用rolse模块来一键调用这些文件。httpd.conf.j2 在文件当中配置的是占位符(声明的变量)-----------main.yml 角色运行的任务。

2023-12-21 16:58:44 887

原创 Ansible

远程操作主机功能自动化运维(playbook 剧本 yaml格式)是基于python开发的配置管理和应用部署工具。在自动化运维中,现在是异军突起。Ansible能批量配置、部署、管理上千台主机。类似于xshell的一键输入工具,不需要每次都切换主机进行操作。只要有一台ansible的固定主机,就可以所有节点的操作。不需要angent,客户端。只需要一台主机上配置了ansible。ansible是基于模块进行工作,只是提供了一种运行的架构,执行操作和辩证的是ansible的模块来实现的。

2023-12-18 15:30:08 980

原创 Docker-consule 服务发现与注册

服务信息,健康检查等等。server-leader是所有server节点的老大,它和其它server节点不同的是,它需要负责同步注册的信息给其它的server节点,同时也要负责各个节点的健康监测。consul-template:自动化管理配置文件的工具,(作用是)获取consul当中注册的服务信息,可以自动的添加到配置文件当中,及时生效,无需重启服务。获取锁:微服务2,建立会话,获取锁,如果申请的锁没有被使用,客户端成功获取,如果已经存在,表示已有其他的服务在占用,会给你分配一个新的锁(KV 存储)

2023-12-15 12:30:30 258

原创 Docker-harbor私有仓库

Registry每次都会指向一个不同的Token,强制用户每次的pull/push,都必须带一个合法的token(公钥对),Registry会通过公钥对,进行解密验证,合法身份才能进行指定操作。用户进行访问控制,不同的用户对docker的镜像有不同的读写权限。1、proxy:安装完了harbor之后,他会自动生成一个nginx的容器,自动对外映射,80端口,nginx前端代理,在harbor当中。4、镜像的删除和垃圾回收,仓库当中的镜像可以被删除(基于权限控制的),也可以回收镜像占用的空间。

2023-12-14 12:30:25 234

原创 Docker compose

用&来定义锚点,用*来引用。

2023-12-12 14:34:12 179

原创 dockerfile

bootfs 宿主机的引导文件系统,启动操作系统的文件,启动容器需要的最基本的文件。ADD:复制,解压。镜像层是不可变的,你在某一层当中添加一个新的命令,但是下一次删除了指令,镜像中基于这个命令创建的文件依然存在。每一层都是一个layers,每一层都包含文件系统的一部分,这些层次叠加在一起,最终形成的就是rootfs。3、entrypoint的指令不会被覆盖,cmd的指令如果在docker run的后面加上输出,会被覆盖。RUN:在基础的镜像上执行的命令,每一个run就是一层,分层越多,镜像越大。

2023-12-11 16:35:16 181

原创 Docker的资源控制

-cpu-shares 是给每个容器使用cpu设置了相对的权重,权重高的,可以使用cpu的资源更多,但是,如果只有一个容器在运行,即使设置了权重,但是没有其他更高的权重的容器来占用资源,权重低的容器依然不受限。在使用dd 获取空字符集是从文件系统的缓存当中输入,速度是比较快的,加了之后就:禁用文件系统缓存,直接把数据写入磁盘,可以更真实的测试设备的性能,模拟直接写入物理设备的情况。CFS调度周期的长度,单位微秒,在每个周期内,容器可以使用指定比例的cpu时间,默认情况下都是100ms(毫秒)。

2023-12-08 17:40:24 286

原创 Docker 网络

3、容器和主机通信:通过桥接模式,容器可以与主机之间通信,容器可以访问主机上的运行服务,主机也可以通过桥接网络(docker:0)来访问容器内部的进程(iptables的nat地址转换。数据卷是一个供容器使用的一个特殊的目录,在容器中,和宿主机的目录进行映射,主机和宿主机之间都可以对目录中的文件进行修改,双方同步生效。2、分配唯一的ip地址,每次运行一个容器,docker的进程都会分配一个唯一的且未被其他容器占用的ip地址给容器。这个容器,没有网络,没有ip,没有路由,只有lo回环网络。

2023-12-07 19:30:07 286

原创 学习笔记小结

L:Logstash:数据收集引擎(收集),支持动态的(实时的)从各种服务应用收集日志资源,还可以对收集到的日志数据进行过滤、分析,丰富,统一格式等待操作。所有的键盘命令行输出,转化成标准输出(rubydebug的模式),6.0之后,logstash的默认输出格式就是rubydebug格式的标准输出。1、数据分片:是集群的核心功能,每个主都可以对外提供读、写的功能,但是数据是一一对应写入主的对应从节点。注:主从节点的哈希槽位的值是连续的,如果出现不连续的哈希值,或者有哈希槽位没有被分配,整个集群将会报错。

2023-11-27 14:00:19 241

原创 10月13日上课内容 Ansible 的脚本 --- playbook 剧本

#Ansible在执行完某个任务之后并不会立即去执行对应的handler,而是在当前play中所有普通任务都执行完后再去执行handler,这样的好处是可以多次触发notify,但最后只执行一次对应的handler,从而避免多次重启。copy: src=/opt/httpd.conf dest=/etc/httpd/conf/httpd.conf #这里需要一个事先准备好的/opt/httpd.conf文件。Jinja是基于Python的模板引擎。

2023-10-13 17:01:44 383

原创 10月11-12日上课内容 Ansible、

Ansible其中一个比较鲜明的特性是Agentless,即无Agent的存在,它就像普通命令一样,并非C/S软件,也只需在某个作为控制节点的主机上安装一次Ansible即可,通常它基于ssh连接来控制远程主机,远程主机上不需要安装Ansible或其它额外的服务。Ansible是基于模块工作的,它只是提供了一种运行框架,它本身没有完成任务的能力,真正执行操作的是Ansible的模块, 比如copy模块用于拷贝文件到远程主机上,service模块用于管理服务的启动、停止、重启等。//在远程主机定义任务计划。

2023-10-11 19:02:52 255

原创 10月10日上课内容 Docker--harbor私有仓库部署与管理

总共分为7个容器运行,通过在docker-compose.yml所在目录中执行 docker-compose ps 命令来查看, 名称分别为:nginx、harbor-jobservice、harbor-ui、harbor-db、harbor-adminserver、registry、harbor-log。如果进入 Harbor.cfg,只会在第一次启动 Harbor 时生效,随后对这些参数的更新,Harbor.cfg 将被忽略。之后, 此设置将被忽略,并且应在 UI 中设置管理员的密码。

2023-10-11 19:01:04 320

原创 9月22、25-27日上课内容 Docker

其中Docker服务端是一个服务进程,负责管理所有容器。Docker 相关的本地资源存放在 /var/lib/docker/ 目录下,其中 containers 目录存放容器信息,image 目录存放镜像信息,overlay2 目录下存放具体的镜像底层文件。容器是在linux上本机运行,并与其他容器共享主机的内核,它运行的是一个独立的进程,不占用其他任何可执行文件的内存,非常轻量。====namespace的六项隔离============================================

2023-09-25 08:31:18 390

原创 9月19-21日上课内容 zabbix监控系统与部署Zabbix5.0监控

案列:自定义监控客户端服务器登录的人数需求:限制登录人数不超过 3 个,超过 3 个就发出报警信息#可以将自定义的监控项配置文件创建在 zabbix_agent2.d 目录中#自定义监控项的格式如下点击左边菜单栏【配置】中的【模板】,点击【创建模板】【模板名称】设置成 Template Login User【可见的名称】设置成 Template Login User【群组】选择 Template【描述】可自定义。

2023-09-20 10:50:25 170

原创 9月15日、9月18日上课内容 Zookeeper集群 + Kafka集群

zookeeper:分布式服务管理框架。存储业务服务节点元数据及状态信息,并负责通知在zookeeper上注册的服务节点状态给客户端= 文件系统+ 通知机制1个Leader,N个follower,节点数量要是>=3的奇数台第一选选举,通过比较myid, myid最大的获取选票,当选票过半数确定Leader的节点之后再加入的节点无论myid多大都会作为follower加入这个集群。

2023-09-18 11:53:38 503

原创 9月13-14日上课内容 第三章 ELK日志分析系统及部署实例

接近实时集群 JAVA节点索引索(库)->类型 (表)->文档 (记录)分片和副本ELK提供了一个分布式多用户能力的全文搜索引擎ELK平台是一套完整的日志集中处理解决方案,将 ElasticSearch、Logstash 和 Kiabana 三个开源工具配合使用, 完成更强大的用户对日志的查询、排序、统计需求。●:是基于Lucene(一个全文检索引擎的架构)开发的分布式存储检索引擎,用来存储各类日志。

2023-09-14 19:53:07 298

原创 9月11-12日上课内容 第二章 GFS 分布式文件系统

文件进入硬盘里面,用什么东西来调用它?系统:用户态和内核态通过内核层面去调用硬件设备,协同各方,存储数据,文件系统在内核层面来调用用户态只做操作无元数据:保存数据的地方GlusterFS 是一个开源的分布式文件系统。由存储服务器、客户端以及NFS/Samba 存储网关(可选,根据需要选择使用)组成。没有元数据服务器组件,这有助于提升整个系统的性能、可靠性和稳定性。MFS传统的分布式文件系统大多通过元服务器来存储元数据,元数据包含存储节点上的目录信息、目录结构等。

2023-09-12 12:08:50 147

原创 9月8日上课内容 第一章 rsync远程同步

rsync(Remote Sync,远程同步) 是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,并保持链接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份、镜像服务器等应用。在远程同步任务中,负责发起rsync同步操作的客户机称为发起端,而负责响应来自客户机的rsync同步操作的服务器称为同步源。在同步过程中,同步源负责提供文件的原始位置,发起端应对该位置具有读取权限。

2023-09-11 19:43:54 185

原创 9月7日上课内容 redis群集

集群,即Redis Cluster,是Redis 3.0开始引入的分布式存储方案。集群由多个节点(Node)组成,Redis的数据分布在这些节点中。集群中的节点分为主节点和从节点:只有主节点负责读写请求和集群信息的维护;从节点只进行主节点数据和状态信息的复制。#集群的作用,可以归纳为两点:(1)数据分区:数据分区(或称数据分片)是集群最核心的功能。集群将数据分散到多个节点,一方面突破了Redis单机内存大小的限制,存储容量大大增加;

2023-09-08 15:04:18 305

原创 9月6日上课内容 redis高可用

持久化数据1、RDBRDB:周期性的把内存中的数据保存在磁盘中触发方式RDB分为: 手动触发:自动触发:save m n(假设 900 10 则表示900秒内或者10次语句执行,则触发RDB持久化)特殊触发:当手动关闭时redis时 ,会进行RDB方式持久化shutdown 关闭时注: kill 删除进程 不会触发RDB持久化过程RDB 内存中 --》 写入磁盘中保存的方式结果数据--》 写入磁盘中保存数据对象。

2023-09-07 11:04:19 96

原创 9月5日上课内容 第一章 NoSQL之Redis配置与优化

1、非关系型数据库数据保存在缓存中,利于读取速度/查询数据架构中位置灵活分布式、扩展性高关系型数据库安全性高(持久化)事务处理能力强任务控制能力强可以做日志备份、恢复、容灾的能力更强一点非关系数据库实例--》数据库---》集合---》键值对非关系数据库不需要手动建数据库和集合 (表)关系型数据库实例--》数据库--》表 (table) --》记录行 (row) /数据字段 (column)--》存储数据。

2023-09-07 10:20:38 491

原创 9月4日上课内容 第七章 案例:MHA高可用配置及故障切换

MHA(MasterHigh Availability)是一套优秀的MySQL高可用环境下故障切换和主从复制的软件。MHA 的出现就是解决MySQL 单点的问题。MySQL故障切换过程中,MHA能做到0-30秒内自动完成故障切换操作。MHA能在故障切换的过程中最大程度上保证数据的一致性,以达到真正意义上的高可用。MHA Node 运行在每台 MySQL 服务器上。MHA Manager 可以单独部署在一台独立的机器上,管理多个 master-slave 集群;也可以部署在一台 slave 节点上。M

2023-09-05 15:55:33 128

原创 8月31日-9月1日 第六章 案例:MySQL主从复制与读写分离(面试重点,必记)

详细图示1、什么是读写分离?读写分离,基本的原理是让主数据库处理事务性增、改、删操作(INSERT、UPDATE、DELETE),而从数据库处理SELECT查询操作。数据库复制被用来把事务性操作导致的变更同步到集群中的从数据库。2、为什么要读写分离呢?因为数据库的“写”(写10000条数据可能要3分钟)操作是比较耗时的。但是数据库的“读”(读10000条数据可能只要5秒钟)。所以读写分离,解决的是,数据库的写入,影响了查询的效率。3、什么时候要读写分离?

2023-09-01 12:41:40 315

原创 8月29-31日上课内容 第五章 MySQL高级SQL语句

需要注意的是,子查询只能返回一列数据,如果需 求比较复杂,一列解决不了问题,可以使用多层嵌套的方式来应对。AS 之后的别名,主要是为表内的列或者表提供临时的名称,在查询过程中使用,库内实际的表名 或字段名是不会被改变的。子查询也被称作内查询或者嵌套查询,是指在一个查询语句里面还嵌套着另一个查询语 句。子查询语句是先于主查询语句被执行的,其结果作为外层的条件返回给主查询进行下一 步的查询过滤。如果不为空, 则返回 TRUE;UPDATE 内的子查询,在 set 更新内容时,可以是单独的一列,也可以是多列。

2023-08-30 19:53:21 110

原创 8月28日上课内容 第四章 MySQL备份与恢复

MySQL 的日志默认保存位置为 /usr/local/mysql/data##配置文件[mysqld]##错误日志,用来记录当MySQL启动、停止或运行时发生的错误信息,默认已开启log-error=/usr/local/mysql/data/mysql_error.log #指定日志的保存位置和文件名##通用查询日志,用来记录MySQL的所有连接和语句,默认是关闭的。

2023-08-30 12:08:48 1260

原创 8月24-25日上课内容 第三章 MySQL索引、事务与存储引擎

1、索引的概念索引就是一种帮助系统能够快速查询信息的结构2、索引的作用设置索引之后查询速度变快,当表很大或查询涉及到多个表时,可以成千上万倍地提高查询速度加快表与表之间连接降低数据库的IO成本创建唯一索引来保证数据的唯一性减少分组和排序时间3、索引的副作用索引需要占用额外空间插入和修改数据时会话费更多的时间索引随着数据变动而变动4、创建索引的规则MySQL的优化 哪些字段/场景适合创建索引 哪些部署会1、小字符2、唯一性强的字段3、更新不频繁,但是查询表(比重)比较高的字段4、表

2023-08-28 12:43:34 118

原创 8月23日上课内容 第二章 MySQL数据库管理

SQL语言Structured Query Language的缩写,即结构化查询语言关系型数据库的标准语言用于维护管理数据库包括数据查询、数据更新、访问控制、对象管理等功能SQL语言分类:DDL:数据定义语言,用于创建数据库对象,如库、表、索引等DML:数据操纵语言,用于对表中的数据进行管理DQL:数据查询语言,用于从数据表中查找符合条件的数据记录DCL:数据控制语言,用于设置或者更改数据库用户或角色权限。

2023-08-24 12:54:05 147

原创 8月21-22日上课内容 第一章 MySQL数据库初始

SQL Server (微软公司产品)面向Windows操作系统简单、易用。Oracle (甲骨文公司产品)面向所有主流平台安全、完善,操作复杂DB2(IBM公司产品)面向所有主流平台大型、安全、完善MySQL (甲骨文公司收购)免费、开源、体积小createdropalter创建新的数据库CREATE DATABASE 数据库名;创建新的表CREATE TABLE 表名 (字段1 数据类型,字段2 数据类型[,...][,PRIMARY KEY (主键名)]);

2023-08-23 12:42:18 552

原创 8月18日上课内容 Haproxy搭建Web群集

课程大纲。

2023-08-21 19:54:19 176

原创 8月17日上课内容 第三章 LVS+Keepalived群集

keepalived工作原理Keepalived 是一个基于VRRP协议来实现的LVS服务高可用方案,可以解决静态路由出现的单点故障问题在一个LVS服务集群中通常有主服务器 (MASTER)和备份服务器(BACKUP)两种角色的服务器,但是对外表现为一个虚拟:1主服务器会发送VRRP通告信息给备份服务器,当备份服务器收不到VRRP消息的时候,即主服务器异常的时候,备份服务器就会接管虚拟IP,继续提供服务,从而保证了高可用性。keepalived主要模块及其作用。

2023-08-21 11:10:52 490

原创 8月16日上课内容 第二章 部署LVS-DR群集

1.Client向目标VIP发出请求,Director(负载均衡器)负责接收,接收的源ip,目标ip加载进内核当中2、Director根据负载均衡算法选择RealServer_1,不修改也不封装IP报文,而是将数据帧的MAC地址改为RealServer_1的MAC地址,然后在局域网上发送3、RealServer_1收到这个帧,解封装后发现目标IP与本机匹配 (),于是处理这个报文。随后重新封装报文,发送到局域网4、Client将收到回复报文。

2023-08-17 19:46:51 696

空空如也

空空如也

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

TA关注的人

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