自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 声明式管理方法

1.适合于对资源的修改操作2.声明式资源管理方法依赖于资源配置清单文件对资源进行管理资源配置清单文件有两种格式:yaml(人性化,易读),json(易于api接口解析)3.对资源的管理,是通过事先定义在统一资源配置清单内,再通过陈述式命令应用到k8s集群里4.语法格式:kubectl create/apply/delete -f xxxx.yaml 如果要是查看里面元数据或者容器模板的可以在deployment后面加上.metadata或者.spec 离线修改:修改yaml文件,并用 kubec

2024-05-23 00:22:55 444

原创 探索k8s集群中kubectl的陈述式资源管理

2.kubectl 是官方的CLI命令行工具,用于与 apiserver 进行通信,将用户在命令行输入的命令,组织并转化为 apiserver 能识别的信息,进而实现管理 k8s 各种资源的一种有效途径。1.kubernetes 集群管理集群资源的唯一入口是通过相应的方法调用 apiserver 的接口。4.对资源的增、删、查操作比较方便,但对改的操作就不容易了。使用一条kubectl命令和参数选项。3.kubectl 的命令大全。,实现资源对象的管理操作。来实现资源对象管理操作。即通过命令的方式来实。

2024-05-20 13:34:00 126

原创 利用kubeadm安装k8s集群 以及跟harbor私有仓库下载镜像

Harbor节点(hub.kgc.com 192.168.88.6 docker、docker-compose、harbor-offline-v1.2.21、在所有节点上安装Docker和kubeadm2、部署Kubernetes Master3、部署容器网络插件4、部署 Kubernetes Node,将节点加入Kubernetes集群中5、部署 Dashboard Web 页面,可视化查看Kubernetes资源6、部署 Harbor 私有仓库,存放镜像资源。

2024-05-16 19:03:40 965

原创 kubernetes多master集群架构

您可以使用仪表板将容器化应用程序部署到Kubernetes集群,对容器化应用程序进行故障排除,并管理集群本身及其伴随资源。您可以使用仪表板来概述群集上运行的应用程序,以及创建或修改单个Kubernetes资源(例如deployment,job,daemonset等)。例如,您可以使用部署向导扩展部署,启动滚动更新,重新启动Pod或部署新应用程序。首先部署master02等其他master节点(master01节点的配置文件(私钥文件、执行文件、服务文件)拷贝到master02 节点)

2024-05-15 21:50:10 723

原创 【kubernetes】二进制部署k8s集群之cni网络插件flannel和calico工作原理(中)

部署网络组件部署 flannel。

2024-05-14 21:53:38 764

原创 二进制部署k8s集群之master节点和etcd数据库集群

​ kubelet 首次启动通过加载 bootstrap.kubeconfig 中的用户 Token 和 apiserver CA 证书发起首次 CSR 请求,这个 Token 被预先内置在 apiserver 节点的 token.csv 中,其身份为 kubelet-bootstrap 用户和 system:kubelet-bootstrap 用户组;,自动完成到 kube-apiserver 的注册,在 node 节点量较大或者后期自动扩容时非常有用。

2024-05-14 17:54:31 693

原创 Kubernetes 核心概念

在K8S的集群里,虽然每个Pod会被分配一个单独的IP地址,但由于Pod是有生命周期的(它们可以被创建,而且销毁之后不会再启动),随时可能会因为业务的变更,导致这个 IP 地址也会随着 Pod 的销毁而消失。注释值则没有字符长度限制。K8S 中的 Service 并不是我们常说的“服务”的含义,而更像是网关层,可以看作一组提供相同服务的Pod的对外访问接口、流量均衡器。Ingress 是 K8S 集群里工作在 OSI 网络参考模型下,第7层的应用,对外暴露的接囗,典型的访问方式是 http/https。

2024-05-12 23:54:15 694

原创 Kubernetes——基础认识

一、简介1.Kubernetes是什么Kubernetes 是一个全新的基于容器技术的分布式架构解决方案,是 Google 开源的一个容器集群管理系统,Kubernetes 简称 K8S。Kubernetes 是一个一站式的完备的分布式系统开发和支撑平台,更是一个开放平台,对现有的编程语言、编程框架、中间件没有任何侵入性。Kubernetes 提供了完善的管理工具,这些工具涵盖了开发、部署测试、运维监控在内的各个环节。

2024-05-09 18:45:45 672

原创 Ansible-Playbook——部署LNMP架构

【代码】Ansible-Playbook——部署LNMP架构。

2024-05-09 18:34:12 323

原创 Ansible 的脚本 --- playbook 剧本

vars: #定义变量- groupname: mysql #格式为 key: valuetasks:group: name={{groupname}} system=yes gid=306 #使用 {{key}} 引用变量的值copy: content="{{ansible_default_ipv4}}" dest=/opt/vars.txt #在setup模块中可以获取facts变量信息。

2024-05-08 08:56:50 1167

原创 ansible------inventory 主机清单

3)[all:vars]举例说明:[webservers:vars] 将web组里面的ip中ssh免交密登录删除4 5 6 三台机器同时删除公匙随后,去ansible检测,都报错随后,去修改ansible中hosts的配置文件再去ansible检测,又可以连接 表示不用免密交互,使用组变量(组里面很多个主机 一个个去修改很麻烦,所以使用组变量更快即可,这些组成员都能享受组变量。

2024-05-07 15:13:33 1077 1

原创 认识ansible 了解常用模块

比如执行 systemctl stop xxx 命令来停止服务,当发现要停止的目标服务已经处于停止状态,它什么也不会做, 所以多次停止的结果仍然是停止,不会改变结果,它是幂等的,而 systemctl restart xxx 是非幂等的。,会通过预定好的规则将playbook拆解为play,再组织成ansible可以识别的任务,调用模块和插件,指的是无论执行多少次同样的运算,结果都是相同的,即一条命令,任意多次执行所产生的影响均与一次执行的影响相同。被管理端: 192.168.88.6。

2024-05-06 23:03:34 1093 1

原创 Docker本地私有仓库、Docker--harbor私有仓库部署与管理

Docker本地仓库,存放镜像,本地的机器上传和下载,pull或者push1、基于角色控制:用户和仓库都是基于项目进行组织的,而用户在项目中可以拥有不同的权限。2、基于镜像的复制策略:镜像可以在多个Harbor实例之间进行复制(同步)。3、支持 LDAP/AD:Harbor 可以集成企业内部已有的 AD/LDAP(类似数据库的一张表),用于对已经存在的用户认证和管理。4、镜像删除和垃圾回收:镜像可以被删除,也可以回收镜像占用的空间。5、图形化用户界面。

2024-05-05 22:41:40 967

原创 Consul

服务注册与发现是微服务架构中不可或缺的重要组件。起初服务都是单节点的,不保障高可用性,也不考虑服务的压力承载,服务之间调用单纯的通过接口访问。直到后来出现了多个节点的分布式架构,起初的解决手段是在服务前端负载均衡,这样前端必须要知道所有后端服务的网络位置,并配置在配置文件中。这里就会有几个问题:●如果需要调用后端服务A-N,就需要配置N个服务的网络位置,配置很麻烦●后端服务的网络位置变化,都需要改变每个调用者的配置既然有这些问题,那么服务注册与发现就是解决这些问题的。

2024-04-30 08:40:30 884

原创 Docker-compose

知道使用一个Dockerfile模板文件可以定义一个单独的应用容器,如果需要定义多个容器就需要服务编排。服务编排有很多种技术方案,今天给大家介绍 Docker 官方产品 Docker Compose。docker swarm(管理跨节点)Dockerfile可以让用户管理一个单独的应用容器;而Compose则允许用户在一个模板(YAML格式)中定义一组相关联的应用容器(被称为一个 project,即项目),例如一个 Web 服务容器再加上后端的数据库服务容器等。

2024-04-29 22:56:45 871 1

原创 Docker容器与虚拟化技术:Dockerfile部署LNMP

(点字符): 表示Dockerfile所在的当前目录。Docker将会在当前目录下查找名为Dockerfile的文件,该文件包含了构建镜像所需的所有指令,比如基础镜像的选择、环境变量设置、文件复制、运行安装命令等。综上所述,该命令的作用是从当前目录下的Dockerfile开始,根据其中定义的步骤和指令,构建一个名为nginx:lnmp的新Docker镜像。Dockerfile配置目录主要存放Dockerfile构建脚本和一些配置文件,lnmp运行目录主要存放程序运行产生的一些数据,比如mysql数据等。

2024-04-29 13:51:56 580

原创 Docker 的数据管理 端口映射 容器互联 镜像的创建

如果需要在容器之间共享一些数据,最简单的方法就是使用数据卷容器。数据卷容器是一个普通的容器,专门提供数据卷给其他容器挂载使用。

2024-04-25 17:49:34 509 2

原创 Docker 网络和资源控制

容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用宿主机的IP和端口。Container:创建的容器不会创建自己的网卡,配置自己的IP,而是和一个指定的容器共享IP、端口范围。None该模式关闭了容器的网络功能。Bridge默认为该模式,此模式会为每一个容器分配、设置IP等,并将容器连接到一个docker0虚拟网桥,通过docker0网桥以及iptables nat 表配置与宿主机通信。自定义网络直接使用bridge模式,是无法支持指定IP运行docker的,例如执行以下命令就会报错。

2024-04-24 19:54:53 789

原创 Docker 基本管理

Docker是一个开源的应用容器引擎,基于go语言开发并遵循了apache2.0协议开源。Docker是在Linux容器里运行应用的开源工具,是一种轻量级的“虚拟机”。Docker 的容器技术可以在一台主机上轻松为任何应用创建一个轻量级的、可移植的、自给自足的容器。Docker的Logo设计为蓝色鲸鱼,拖着许多集装箱。鲸鱼可看作为宿主机,集装箱可理解为相互隔离的容器,每个集装箱中都包含自己的应用程序。Docker的设计宗旨。

2024-04-22 23:36:32 884 1

原创 zabbix 自动发现与自动注册 部署 zabbix 代理服务器

缺点是可能因为配置文件配置错误或者网络不通等原因导致 zabbix agent2 可能找不到 zabbix server。abbix agent2 会主动上报自己的信息,发给 zabbix server。点击左边菜单栏【配置】中的【主机】,勾选原有的客户端主机,点击 删除。点击左边菜单栏【配置】中的【主机】,勾选原有的客户端主机,点击 删除。点击左边菜单栏规则,点击 禁用【配置】中的【自动发现】,勾选发现。.确保客户端上的 zabbix-agent2 服务状态正常。随后,再去配置中主机查看,客户端出现了。

2024-04-16 23:52:20 383

原创 zabbix解析以及安装

zabbix agent安装在被监控的主机上,zabbix agent负责定期收集客户端本地各项数据,并发送至 zabbix server 端,zabbix server 收到数据后,将数据存储到数据库中,用户基于 Zabbix WEB 可以看到数据在前端展现图像。●zabbix server:zabbix 服务端守护进程,其中 zabbix_agent、zabbix_get、zabbix_sender、zabbix_proxy 的数据最终都提交给 zabbix server;

2024-04-15 23:10:33 918

原创 kafka的概念以及Zookeeper集群 + Kafka集群 +elfk集群

此时表明当定下leader之后,即使出现了比leader大的mysid 也不会改变leader的地位,就比如node3 的mysid为3,node2的mysid为2,即使3大于2,当定下node2为leader时,node3依然是追随者。/配置 Zookeeper 启动脚本 在zookeeper-3.5.7的bin下面。node3 192.168.68.7配置 配置不需要修改,唯一要改的也是myid。这边的配置不需要改,都是一样的,唯一要改的myid。写一个启动脚本 node1 2 3 都要同时操作。

2024-04-12 17:37:58 477

原创 zookeeper解析

Zookeeper是一个开源的分布式的,为分布式框架提供协调服务的Apache项目。

2024-04-11 22:16:28 892

原创 ELK企业级日志分析系统以及多种部署

ELK平台是一套完整的日志集中处理解决方案,将 ElasticSearch、Logstash 和 Kiabana 三个开源工具配合使用, 完成更强大的用户对日志的查询、排序、统计需求。●ElasticSearch:是基于Lucene(一个全文检索引擎的架构)开发的分布式存储检索引擎,用来存储各类日志。Elasticsearch 是用 Java 开发的,可通过 RESTful Web 接口,让用户可以通过浏览器与 Elasticsearch 通信。一款强大的数据处理工具。

2024-04-10 18:55:04 759

原创 GFS 分布式文件系统

GlusterFS 是一个开源的分布式文件系统。由存储服务器、客户端以及NFS/Samba 存储网关(可选,根据需要选择使用)组成。没有元数据服务器组件,这有助于提升整个系统的性能、可靠性和稳定性。MFS传统的分布式文件系统大多通过元服务器来存储元数据,元数据包含存储节点上的目录信息、目录结构等。这样的设计在浏览目录时效率高,但是也存在一些缺陷,例如单点故障。一旦元数据服务器出现故障,即使节点具备再高的冗余性,整个存储系统也将崩溃。

2024-04-08 22:59:00 776

原创 rsync 远程同步

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

2024-04-07 22:29:28 633

原创 redis群集有三种模式

简要说明:第一次slave会发送一个sync(同步)的命令给master,同步之后,master会执行bgsave命令进行持久化,生成rdb文件,在生成rdb持久化期间,如有新的写操作命令,则会记录在缓冲区里面(增量备份),持久化完毕之后,会将rdb文件发送给slave,随后slave会发送一个psync的命令告诉master已经加载完rdb文件,并要求把缓冲区里面的命令再发给slave,随后master会将缓冲区里面的命令更新给slave,此时此刻,master与slave数据同步。

2024-04-03 17:38:57 936

原创 redis之穿透、击穿、雪崩

读取数据时,先从redis读取数据,如果redis中没有,再从mysql中读取数据,并将读取到的数据同步到redis缓存中。更新数据时,先更新mysql数据库,再更新redis缓存删除数据时,先删除redis缓存,再删除mysql数据库对于一些关键数据,可以使用mysql的触发器来实现同步更新redis缓存、可可以使用定时任务,定时自动进行缓存预热,来定期同步mysql和redis的数据。

2024-04-03 15:21:34 934 1

原创 redis持久化管理

●内存碎片率超过1.5,说明Redis消耗了实际需要物理内存的150%,其中50%是内存碎片率。●内存碎片率低于1的,说明Redis内存分配超出了物理内存,操作系统正在进行内存交换。●内存碎片率稍大于1是合理的,这个值表示内存碎片率比较低,也说明 Redis 没有发生内存交换。redis实例的内存使用率超过可用最大内存,操作系统将开始进行内存与swap空间交换。当达到设置的最大阀值时,需选择一种key的回收策略,默认情况下回收策略是禁止删除。内存清理策略,保证合理分配redis有限的内存资源。

2024-04-03 14:24:01 307

原创 redis持久化

Redis载入AOF文件时,会对AOF文件进行校验,如果文件损坏,则日志中会打印错误,Redis启动失败。但如果是AOF文件结尾不完整(机器突然宕机等容易导致文件尾部不完整),且aof-load-truncated参数开启,则日志中会输出警告,Redis忽略掉AOF文件的尾部,启动成功。当下次Redis重启时,利用持久化文件实现数据恢复。缺点:RDB文件的致命缺点在于其数据快照的持久化方式决定了必然做不到实时持久化,而在数据越来越重要的今天,数据的大量丢失很多时候是无法接受的,因此AOF持久化成为主流。

2024-04-02 23:14:26 763

原创 NoSQL之 Redis配置

Redis(远程字典服务器) 是一个开源的、使用 C 语言编写的 NoSQL 数据库。Redis 基于内存运行并支持持久化,采用key-value(键值对)的存储形式,是目前分布式架构中不可或缺的一环。Redis服务器程序是单进程模型,也就是在一台服务器上可以同时启动多个Redis进程,Redis的实际处理速度则是完全依靠于主进程的执行效率。若在服务器上只运行一个Redis进程,当多个客户端同时访问时,服务器的处理能力是会有一定程度的下降;

2024-04-01 23:11:14 1260

原创 mysql故障及解决分析

问题分析:由于 mysql 数据库的参数:max_connect_errors,其默认值是 10。问题分析:如果 MySQL 主机查询 DNS 很慢或是有很多客户端主机时会导致连接很慢. 由于开发机器是不能够连接外网的,在进行 MySQL 连接时,DNS 解析是不可能完成的, 从而也就明白了为什么连接那么慢了。解决方法:修改 my.cnf 配置文件,在[mysqld]下添加 innodb_force_recovery=4, 启动数据库后备份数据文件,然后去掉该参数,利用备份文件恢复数据。

2024-04-01 16:02:09 948

原创 mysql优化

目录1.硬件方面(1)关于 CPU(2)关于内存(3)关于磁盘MySQL 配置文件 (1)default-time-zone=+8:00(2)interactive_timeout = 120(3)wait_timeout = 120(4)open_files_limit = 10240(5)group_concat_max_len = 102400(6)user=mysql(7)character-set-server=utf8、init_connect='SET NAMES utf8'(8)back_l

2024-04-01 15:40:39 963

原创 数据库性能相关

mysql> select * from sys.x$host_summary;mysql> select * from sys.x$io_global_by_file_by_bytes;mysql> select * from sys.x$user_summary;mysql> select * from sys.x$memory_global_total;mysql> select host, current_connections, statements from sys.x$host_summary

2024-04-01 14:03:52 799

原创 MySQL MHA高可用配置以及故障切换

MHA(MasterHigh Availability)是一套优秀的MySQL高可用环境下故障切换和主从复制的软件。MHA 的出现就是解决MySQL 单点的问题。解决主从架构中的主服务器的单点问题MySQL故障切换过程中,MHA能做到0-30秒内自动完成故障切换操作。MHA能在故障切换的过程中最大程度上保证数据的一致性,以达到真正意义上的高可用。

2024-03-31 22:56:23 916 1

原创 mysql主从复制和读写分离

(3)同时Master节点为每个I/O线程启动一个dump线程,用于向其发送二进制事件,并保存至Slave节点本地的中继日志(Relay log)中,Slave节点将启动SQL线程从中继日志中读取二进制日志,在本地重放,即解析成 sql 语句逐一执行,使得其数据和 Master节点的保持一致,最后I/O线程和SQL线程将进入睡眠状态,等待下一次被唤醒。在服务器上执行sql语句,在从服务器上执行同样的语句,mysql默认采用基于语句的复制,执行效率高。把改变的内容复制过去,而不是把命令在从服务器上执行一遍。

2024-03-28 18:30:10 830

原创 mysql高阶之(视图)

创建一个表,里面写入数据如何通过视图,去删除这两个多余的数据。

2024-03-28 00:16:52 904

原创 mysql高阶语句(二)

通常在 FROM 子句中使用关键字 INNER JOIN 来连接多张表,并使用 ON 子句设置连接条件,内连接是系统默认的表连接,所以在 FROM 子句后可以省略 INNER 关键字,只使用 关键字 JOIN。左连接以左侧表为基础表,接收左表的所有行,并用这些行与右侧参 考表中的记录进行匹配,也就是说匹配左表中的所有行以及右表中符合条件的行。MySQL 的连接查询,通常都是将来自两个或多个表的记录行结合起来,基于这些表之间的 共同字段,进行数据的拼接。使用较多的连接查询包括:内连接、左连接和右连接。

2024-03-27 18:50:23 978

原创 mysql进阶查询

使用 SELECT 语句可以将需要的数据从 MySQL 数据库中查询出来,如果对查询的结果进行排序,可以使用 ORDER BY 语句来对语句实现排序,并最终将排序后的结果返回给用户。这个语句的排序不光可以针对某一个字段,也可以针对多个字段。ORDER BY 语句也可以使用多个字段来进行排序,当排序的第一个字段相同的记录有多条的情况下,这些多条的记录再按照第二个字段进行排序,ORDER BY 后面跟多个字段时,字段之间使用英文逗号隔开,优先级是按先后顺序而定。的,是默认的排序方式,即 ASC 可以省略。

2024-03-26 13:45:31 406

原创 mysql增量备份与修复

发生错误节点之前的一个节点,上一次正确操作的位置点停止。2.接收flush logs 命令重新建立新的日志文件。数据库在某一时间点可能既有错误的操作也有正确的操作。1.设置max_binlog_size所设置的大小。在错误时间点停止,在下一个正确时间点开始。跳过某个发生错误的时间点实现数据恢复。mysql的增量备份第一步是完全备份。将所有备份的二进制日志内容全部恢复。可以基于精准的位置跳过错误的操作。

2024-03-26 10:02:02 188

空空如也

空空如也

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

TA关注的人

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