自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Docker 单主机网络

Redis 在3.0版本前只支持单实例模式,虽然支持主从模式、哨兵模式部署来解决单点故障,但是现在互联网企业动辄大几百G的数据,可完全是没法满足业务的需求,所以,Redis 在 3.0 版本以后就推出了集群模式。默认的网络模式,有点类型VM-NAT,dockerd进程启动时会创建一个docker0网桥(相当于VMnet8),容器内的数据通过这个网卡设备与宿主机进行数据传输;容器启动时默认的网络名称是bridge,它的模式是bridge(桥接模式),未作定义网络时,所有的容器都运行在一个网络中。

2025-05-13 11:31:26 916

原创 Docker容器数据持久化存储机制

由于物理机或虚拟机本身就拥有大容量的磁盘,所以可以直接把数据存储在物理机或虚拟机本地文件系统中,也可以通过使用额外的存储系统(NFS、GlusterFS、Ceph等)来完成数据持久化存储。由于Docker容器是由容器镜像生成的,所以一般容器镜像中包含什么文件或目录,在容器启动后,我们依旧可以看到相同的文件或目录。运行web1容器,把/opt/web1root目录挂载到/usr/share/nginx/html目录中。运行web2容器,挂载未创建的本地目录,启动容器时将自动创建本地目录。

2025-05-13 11:28:11 1018

原创 轻量级或工业级容器管理工具 Containerd

2016年Docker公司推出了Docker Swarm,意在一统Docker生态,让Docker既可以实现容器应用管理,也可以实现大规模容器编排,经过近1年左右时间的市场验证后,发现在容器编排方面无法独立抗衡kubernetes,所以Docker公司于2017年正式宣布原生支持Kubernetes,至此,Docker在大规模容器编排应用市场败下阵来,但是Docker依然不甘心失败,把Docker核心依赖Containerd捐给了CNCF,以此说明Docker依旧是一个PaaS平台。

2025-05-13 11:18:56 622

原创 如何通过kube-vip实现K8S集群高可用及Service LB

与传统高可用+负载均衡机制相比较(如nginx/haproxy+keepalived) ,它属于云原生的高可用以及负载均衡机制,运行在群集之内,配置也更简单。当 kube-vip 启动后,将在所有匹配类型为 loadBalancer 的服务上启用一个名为 watcher 的监听器。此时可验证,群集master中的leader故障时(如关机),集群地址vip漂移到其他master节点,群集仍可用。注:如果有节点未加入群集,可修改如下参数,重新启动(以master03为例),

2025-05-13 11:16:25 990

原创 基于Rocky Linux使用kubeadm部署

rocky9.2安装虚拟机,克隆生成的虚拟机可能会缺失openssh-server组件,导致远程登录或复制文件到虚拟机失败,可dnf -y install openssh-server或独立安装三台虚拟机。为了兼容yum的使用习惯,系统为yum创建了一个dnf的软连接(查看ls -l /usr/bin/yum)因容器镜像下载较慢,可能会导致报错,主要错误为没有准备好cni(集群网络插件),如有网络,请耐心等待即可。设置kubelet为开机自启动即可,由于没有生成配置文件,集群初始化后自动启动。

2025-05-13 11:14:36 1072

原创 Ubuntu 22.04部署K8S集群

在使用docker作为容器运行时,/var/log/pod和/var/lib/containerd的日志会链接到/var/lib/docker下,crictl task exec --exec-id 0 -t 容器名 sh (id随便写但需要全局唯一)containerd的数据目录在/var/lib/containerd目录下,通常,这些文件位于/etc/netplan/目录中。这是一个提示,告诉你输入要重启的服务名称或者序号,中间用空格分隔。可以使用原文件修改网络配置,也可以对原文件改名后修改内容。

2025-05-13 11:09:36 731

原创 阿里云容器服务ACK

国内知名云厂商及产品:国内知名云厂商及产品:华为云容器引擎(CCE)、阿里云Kubernetes容器服务(ACK)和腾讯云Kubernetes引擎(TKE)配置专有网络vpcVPC虚拟私有云( Virtual Private Cloud )虚拟私有云(Virtual Private Cloud)是一套为云服务器、云容器、云数据库等云上资源构建的逻辑隔离的、由用户自主配置和管理的虚拟网络环境,旨在提升用户资源的安全性,简化用户的网络部署用户可以灵活定义VPC内主机的IP地址、路由策略等。

2025-05-13 11:01:09 917

原创 K8s中间件上云部署 kafka

如果多个外卖小哥同属一个团队(同一个消费者组),他们会分摊订单(比如小哥1送1-5单,小哥2送6-10单)。- 如果是不同团队(不同消费者组),每个团队都会收到全部订单(比如美团和饿了么各自独立配送同样的订单)。- 订单默认保存7天(可配置),超过时间自动清理,但重要订单可以永久保存(比如VIP客户的订单)。: 这是同步副本列表(In-Sync Replicas,简称 ISR),包含当前与领导者同步的副本。- 订单柜台的每类订单都有 备份副本(比如副本放在后厨),即使柜台被砸了,数据也不丢。

2025-05-13 10:47:33 699

原创 mysql备份还原(2)

该命令会将周一的增量备份数据合并到全量备份数据上,且保持可继续应用后续增量备份的状态(因为使用了--apply-log-only选项)。在恢复备份时,这个文件可以作为MySQL的配置文件使用,确保恢复后的环境与备份时一致。3. 在恢复时,xbk会调用InnoDB引擎的CSR过程,将数据和redo的LSN追平,然后进行一致性恢复.InnoDB的共享表空间文件,包含了系统表空间的数据,是MySQL数据库的核心组成部分。模拟了CSR的全过程,在恢复之前,将数据的LSN号和redo LSN号追平。

2025-05-09 08:50:11 934

原创 mysql备份还原(1)

-max_allowed_packet=128M 控制的是备份时传输数据包的大小.(默认max_allowed_packet变量为16MB)2. 针对InnoDB表,立即触发CKPT,copy所有InnoDB表相关的文件(ibdata1,ibd,frm).3. 在恢复时,xbk会调用InnoDB引擎的CSR过程,将数据和redo的LSN追平,然后进行一致性恢复.1. 针对非InnoDB,进行锁表备份,copy所有的非innoDB表文件。并且将备份过程中产生,新的数据变化的部分redo一起备份走。

2025-05-09 08:46:58 817

原创 SQL基础应用(增删改查)

ALTER TABLE stu ADD qq VARCHAR(20) NOT NULL COMMENT 'qq号';sname VARCHAR(64) NOT NULL COMMENT '姓名';#显示创表语法、存储引擎、字符集。从源表拷贝数据到新表,拷贝过程中源表通过触发器把新的DML操作更新到新表中。在源表创建三个触发器分别对应insert、update、delete操作。rename源表到old表中,把新表rename为源表,默认最后删除源表。

2025-05-09 08:40:22 613

原创 mysql主从复制

5.7 版本中,有了增强的GTID,增加了seq_no,增加了新型的并发SQL线程模式(logical_clock),MTS技术(多版本并发技术)4. 从库 IO_T,读取master.info文件中的信息,获取到IP,PORT,User,Pass,binlog的位置信息(联系主库)6. IO_T根据binlog的位置信息(mysql-bin.000004 , 444),请求主库新的binlog。一旦主从复制构建成功,主库当中发生了新的变化,都会通过dump_T发送信号给IO_T,增强了主从复制的实时性.

2025-05-09 08:39:25 755

原创 Prometheus告警媒介 钉钉

注意:群里至少三人SEC9c58d5b834b6fd89d77a182cd7be0ab1cb48c196e105b25510ae26d77f178ebdWebhook:https://oapi.dingtalk.com/robot/send?access_token=2f6e406fc5e6e2139e4680de63bfac6f8717a63842d11997e63df2975fd6f898192.168.10.14[root@alertmanager ~]# wget https://github.co

2025-05-09 08:35:10 519

原创 DevOps-java项目部署(war)

- 选择Filter branches by name --在include填写master -- 点击generate生成令牌 -- 复制令牌和触发器顶部url路径-- save保存。点击左上角logo--回到主页面--选择新项目“New Item”--填写项目名dev1--选择项目类型“Freestyle project”--save保存。选择项目dev1--左侧选择“build now”--下面构建历史出现蓝色标志--选择蓝色标志下拉列表--console output--输出执行过程。

2025-05-07 14:32:34 815

原创 DevOps-jenkins-gitlab-web

项目web1 -- configure -- build steps -- (Add build step)Execute shell -- sh /scripts/web1.sh。web1项目 -- settings -- integrations -- 把复制的令牌和url粘贴过来 -- add webhook。web1项目-- configure -- build triggers -- 勾选最长选项 -- 点击高级advanced。第43行: 移动能效管理平台v1。3、更改代码文件,重新上传测试。

2025-05-07 14:28:13 541

原创 DevOps-jenkins-gitlab

选择项目--左侧选择“build now”--下面构建历史出现蓝色标志--选择蓝色标志下拉列表--console output--输出执行过程。--回到主页面--选择新项目“New Item”--填写项目名--选择项目类型“Freestyle project”--save保存。Manage Jenkins--Plugins--Available plugins--搜索插件名称--选定插件后,右上角--admin点击下拉三角--Configure--Password字段--修改密码--save保存。

2025-05-07 14:24:14 659

原创 DevOps-gitlab(ci/cd持续集成部署)

登录gitlab--admin area(顶部菜单栏小扳手图标)--左侧面板settings--Sign-up Restrictions--去除勾选sign-up enabled --下拉选save保存。登录gitlab--admin area--new user--添加用户名、邮箱--create--保存,edit--修改密码。登录gitlab--admin area--Appearance--填写管理员联系方式和logo--save。Lkw登录:右上角--用户--settings--SSH Keys。

2025-05-07 14:23:15 1026

原创 DevOps-git

区别于主分支,创建出来用于新增功能或模块的分支库,仅用户自己有权访问,(1)合并分支 (以管理员身份可以直接合并,合并过程不太明显)1、git:分布式版本控制系统,是当前最流行的版本控制软件。#通过git log 的版本号回滚,仅写前7位即可。(3)查看版本状态,比对工作区和版本库的异同,并提示。代码提交流程:工作区--->暂存区--->版本库。修改后合并,一般用于更新版本或添加补丁。gitee.com 国内--码云。#初始化当前目录为版本库。1、创建版本库目录,并初始化。#查看.git版本库目录。

2025-05-07 14:22:15 746

原创 基于Docker容器的DevOps项目规划

jenkins-server 192.168.10.13 2G内存 编译代码、打包镜像、项目发布 jenkins、docker、git、maven。harbor-server 192.168.10.14 2G内存 存储容器镜像 harbor、docker。3 jenkins 用于利用插件完成业务代码编译、构建、推送至Harbor容器镜像仓库及项目部署。6 harbor 用于存储业务代码构建的容器镜像存储。1 git 用于提交业务代码或克隆业务代码仓库。四、企业业务代码发布系统环境部署。

2025-05-07 14:21:28 308

原创 CICD与Devops的区别

计划---代码---构建---测试---发布---部署---运维---监控---反馈---计划。工具:Jenkins、GitLab CI/CD、Travis CI、CircleCI 等。CI/CD是持续集成和持续交付的简称,聚焦于软件开发的一部分流程,主要包括自动化的构建。涵盖了软件开发周期的全过程,包括开发、测试、部署、监控等,强调开发和运维团队的紧密合作。在持续集成的基础上,将代码部署到类生产环境中进行更多测试,确保随时可交付。内容:开发人员频繁地将代码合并到主分支,并通过自动化工具进行编译、测试。

2025-05-07 14:17:23 566

原创 k8s存储动态供给storageclass

RECLAIMPOLICY pv回收策略,pod或pvc被删除后,pv是否删除还是保留,,主要是不等待相关Pod调度完成,不关心其运行节点,直接完成绑定。# 删除数据时是否存档,false表示不存档,true表示存档。kubernetes持久化存储卷-StorageClass。2. 使用NFS文件系统创建存储动态供给。StorageClass(存储类)# 名称,要使用就需要调用此名称。delete表示删除,但数据保留。2. pv与pvc之间的关系。1. 认识pv与pvc。1. 什么是动态供给。

2025-05-07 14:14:37 790

原创 配置与密钥管理ConfigMap&Secret

Secret的主要作用是保管私密数据,如密码、Auth Tokens、SSH Keys 等信息。Opaque(不透明的) ,用来存储密码、密钥、敏感信息、证书等,base64编码格式的Secret,符合这种需求的都可以使用。Opaque 是最常见的 Secret 类型,它通常用于存储任意的键值对,这些键值对可以是配置信息、密码、令牌等。Secret与ConfigMap类似,主要区别是ConfigMap存储的是明文,而secret存储的是密文。

2025-05-07 14:11:32 607

原创 StatefulSet控制器

/从上述结果中,我们知道,storageclass为我们自动创建了PV,volumeClaimTemplate为我们自动创建PVC,但是否能够满足我们所说的,每一个Pod都有自己独有的数据持久化目录,也就是说,每一个Pod内的数据都是不一样的。在用Deployment时,每一个Pod名称是没有顺序的,是随机字符串,因此是Pod名称是无序的,但是在statefulset中要求必须是有序 ,每一个pod不能被随意取代,pod重建后pod名称还是一样的。每一个请求都像首次执行一样,不会依赖之前的数据。

2025-05-07 14:08:27 705

原创 Pod健康检查

pod像是花生里面的红胖子,壳是谁呢?白胖子又是谁?

2025-05-07 14:06:15 795

原创 用yaml清单文件配置资源

kubectl apply -f deploy1.yaml --record # --record记录版本信息的选项。- name: nginx #定义一个容器名,一个 - name: 定义一个容器。deployment控制器------>创建RS---->创建pod--->发布服务service。- containerPort: 80 #定义容器的对外端口。- name: pod-nginx # 一个名为pod-nginx的容器。

2025-05-07 14:03:58 765

原创 命令行工具kubectl

Service与其后端POD副本集群之间则是通过Label Selector实现无缝对接的,Deployment实际上用于保证Service的服务能力和服务质量始终符合预期标准。Service定义了一个服务访问的入口地址,前端应用通过这个入口地址访问其背后的一组由POD副本组成的集群实例(容器)。kubectl get #显示一个或多个资源,默认查看当前名称空间的资源。指定资源的名称,名称也是大小写敏感的。指定资源类型,资源类型是大小写敏感的,开发者能够以单数,复数和缩略的形式。

2025-05-07 14:01:45 536

原创 k8s架构、基本概念

从port和nodePort两个端口过来的数据都需要经过反向代理kube-proxy,流入后端pod的targetPort上,最后到达pod内的容器端口。的端口,从port或nodePort来的流量经过kube-proxy 反向代理负载均衡转发到后端Pod的targetPort上,最后进入容器。RS新一代的无状态的Pod应用控制器,它与RC的不同之处在于支持的标签选择器不同,RC只支持等值选择器,RS还额外支持基于集合的选择器。如需在运行的Pod中生成新的容器,可在pod定义文件中修改,端口不能相同。

2025-05-07 13:59:53 857

原创 kubeadm部署k8s-1.28.2集群

主要是实现了k8s的具体分布流程,以及怎么样实现部署

2025-05-07 13:57:23 952

原创 Kubernetes配置与密钥管理

root@master ~]# echo "test-test" > nginx.conf #产生测试用的nginx.conf文件。Opaque(不透明的) ,用来存储密码、密钥、敏感信息、证书等,base64编码格式的Secret,符合这种需求的都可以使用。root@pod-mysql-secret1:/# mysql -uroot -p123 #进入pod,使用传递的密码登录。- name: vol-secret # 定义挂载的卷,对应下面定义的卷名。

2025-05-06 23:22:29 895 1

原创 StatefulSet控制器

/从上述结果中,我们知道,storageclass为我们自动创建了PV,volumeClaimTemplate为我们自动创建PVC,但是否能够满足我们所说的,每一个Pod都有自己独有的数据持久化目录,也就是说,每一个Pod内的数据都是不一样的。在用Deployment时,每一个Pod名称是没有顺序的,是随机字符串,因此是Pod名称是无序的,但是在statefulset中要求必须是有序 ,每一个pod不能被随意取代,pod重建后pod名称还是一样的。每一个请求都像首次执行一样,不会依赖之前的数据。

2025-05-06 23:21:37 915

CICD自动化方案.pdf

CICD自动化方案.pdf

2025-05-06

S3选择题汇总111111111111111111.txt

S3选择题汇总111111111111111111.txt

2024-12-03

空空如也

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

TA关注的人

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