自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(151)
  • 资源 (1)
  • 收藏
  • 关注

原创 MySQL双一参数&性能测试

innodb_flush_log_at_trx_commit是MySQL InnoDB存储引擎独有的参数,用于控制InnoDB的Redo log日志记录方式。通过调优该参数,可以提升数据库的性能和数据安全性。该参数的取值范围为0、1、2,不同的值代表MySQL数据库的Redo log不同的刷盘的方式。,这两个参数称之为双一参数,前者控制了redo log 的刷盘机制,后者控制了binlog 的刷盘机制。您可以按照您的业务场景,根据下表来选择最适合您的配置。MySQL 数据库中有两个非常重要的参数,一个是。

2024-03-23 21:47:57 723

原创 MySQL开启慢查询

开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。

2024-03-18 09:00:00 225

原创 MongoDB数据备份与迁移

mongoexport/mongoimport 导入/导出的是JSON格式或者CSV格式mongodump/mongorestore 导入/导出的是BSON格式JSON可读性强但体积较大,BSON则是二进制文件,体积小但对人类几乎没有可读性JSON虽然具有较好的跨版本通用性,但其只保留了数据部分,不保留索引(后边版本支持恢复时保留索引信息了,但是目前网络上主流的博客都说不支持,有点NT),账户等其他基础信息。使用时应该注意mongodumpusesformat。

2024-03-17 09:00:00 401

原创 ClickHouse副本节点数据损坏恢复

参考链接:https://kb.altinity.com/altinity-kb-setup-and-maintenance/suspiciously-many-broken-parts/参考链接:https://blog.csdn.net/qq_42082701/article/details/127771766。

2024-03-16 18:23:47 528

原创 Longhorn跨AZ实现存储高可用

使用longhorn的backup/restore功能,但是随着数据量的增加,RTO时间具体需要多久待测试,且由于backup是定时或某个时刻手动触发的,RPO大小取决于备份完成后到发生故障这段时间具体产生了多少数据。且用户是否能容忍丢失这个数据量?将k8s-node-3/k8s-node-2节点关机(longhorn基础组件功能及其作用这里就不做介绍了。通过上述测试我们可以发现。

2023-11-12 10:00:00 580

原创 Calico BGP通信分析

查看MAC地址信息,这个 MAC 地址应该是 Calico 硬塞进去的,而且还能响应 ARP。这个 IP 地址,拥有这个 IP 地址的设备会将自己的 MAC地址返回给对方。,而网关的 IP 地址不会出现在任何网络包头中。也就是说,没有人在乎这个 IP 地址究竟是什么,只要能找到对应的 MAC 地址,能响应 ARP 就行了。k8s-node-1 ens160物理抓包查看报文,可以发现和k8s-master-1 ens160发出来的数据报文一致。是容器的默认网关,但却找不到任何一张网卡对应这个 IP 地址。

2023-09-05 09:00:00 643

原创 Calico IP In IP模拟组网

​ 通过这个实验,我们可以很清晰地掌握 Calico 网络的数据转发流程,首先需要给所有的 ns 配置一条特殊的路由,并利用 veth 的代理 ARP 功能让 ns 出来的所有转发都变成三层路由转发,然后再利用主机的路由进行转发。这种方式不仅实现了同主机的二三层转发,也能实现跨主机的转发。

2023-09-04 14:51:00 1216

原创 K8S Calico IP In IP网络模式通信分析

代理 ARP 是 ARP 协议的一个变种,当 ARP 请求目标跨网段时,网关设备收到此 ARP 请求,会用自己的 MAC 地址返回给请求者,这便是代理 ARP(Proxy ARP)。下面这张图中,电脑发送 ARP 请求服务器8.8.8.8 的 MAC 地址,路由器(网关)收到这个请求时会进行判断,由于目标 8.8.8.8 不属于本网段(即跨网段),此时便返回自己的接口 MAC 地址给 PC,后续电脑访问服务器时,目标 MAC 直接封装为 MAC25。当一个数据包的目的地址不是本机时,就会查询路由表

2023-09-04 09:00:00 286

原创 Calico切换网络模式无效

Calico切换网络模式无效问题解决

2023-09-03 18:55:51 841

原创 Metrics Server部署

Metrics Server 是 Kubernetes 集群核心监控数据的聚合器(定时从Kubelet的Summary API 采集指标信息),可以通过 Metrics API 的形式获取 Metrics 数据,不过仅仅是获取指标的最新值,数据不做存储,且不负责将指标转发到第三方目标。Metrics Server 还可以与 Kubectl 工具结合使用,提供 Kubectl Top 命令来展示集群中的指标数据通俗地说,它存储了集群中各节点的监控数据,并且提供了API以供分析和使用。

2023-08-30 16:18:25 1200

原创 Docker&Pod信号处理机制与僵尸进程优化

但有些时候我们不得不启动多个进程,比如从传统部署迁移到 Kubernetes 的过渡期间,使用了富容器,即单个容器中需要启动多个业务进程,这时也只能通过 shell 启动,但无法使用上面的。如果我们父进程以bash/sh启动,能提供进程收割能力,防止容器出现僵尸进程,但是缺无法将终止信号传递给子进程,为此我们一般采用:dumb-init、tini作为父进程(提供进程接管能力、信号传递能力)简单而言,如果在容器中运行多个进程,PID1进程需要有能力接管“孤儿”进程并回收“僵尸”进程。:终止进程,杀死进程。

2023-08-15 09:57:26 612 1

原创 NFS高版本漏洞修复方法

由于centos8后,nfs相关的配置发送了变化,无法固定端口方式来做防火墙,由于一般导致漏洞的原因主要是由于showmount -e,所以我们这里采取的方式是nfs server端仅使用v4版本,禁止使用v3版本。但是,您还可以将 NFS 配置为只支持 NFS 版本 4.0 及更新的版本。这可最大限度地减少系统上打开的端口的数量和运行的服务,因为 NFSv4 不需要。正常情况下NFS可以使用firewalld进行规避,但是由于k8s默认底层会调用iptables,这里就不采用firewalld方式了。

2023-08-14 17:35:48 653

原创 SHELL IFS分隔符

IFS 是一种 set 变量,当 shell 处理"命令替换"和"参数替换"时,shell 根据 IFS 的值,默认是 space, tab, newline 来拆解读入的变量,然后对特殊字符进行处理,最后重新组合赋值给该变量

2023-04-22 17:20:04 723 1

原创 localhost与本机IP IPtables匹配顺序

localhost与本机IP IPtables匹配顺序。

2023-04-22 14:02:20 317

原创 Docker Remote API配置与使用

本文中,我们将使用命令行工具cURL来处理url相关操作。cURL可以发送请求、获取以及发送数据、检索信息。“unix:///var/run/docker.sock”:unix socket,本地客户端将通过这个来连接 Docker Daemon。“tcp://0.0.0.0:2375”:tcp socket,表示允许任何远程客户端通过 2375 端口连接 Docker Daemon。

2023-04-18 09:00:00 1404

原创 Docker In Docker

也就是说,容器内实际并未运行 docker server,但是能够通过宿主机执行docker任务,从而实现轻量级 docker in docker。在docker容器内启动一个docker daemon,对外提供服务,每个运行中的容器,都是一个进程,这个进程都托管在docker daemon中,优点在于镜像和容器都在一个隔离的环境,保持宿主机的环境。否则,建议使用第一种方法。docker dind方式有所不同,所有的docker操作真正在容器内部进行,包括创建的容器、拉取的镜像都保留在容器内部。

2023-04-17 09:00:00 770

原创 Istio Destinationrule规则定义后不生效(跨命名空间)

配置subset后无法正常访问nginx资源(default命名空间)将vs/gw/dr配置到默认的default空间后可以正常访问gw和vs配置如下。

2023-04-09 16:51:18 652

原创 Alpine镜像在K8S环境中DNS解析异常与DNS查询优化

公司生产环境alpine基础基础镜像在解析类似``servicename、servicename.namespace.svc.cluster.local。时并未按照/etc/resolv.conf 中规则进行dns search,导致上述二种dns无法被解析

2023-04-01 18:22:07 1633

原创 Istio Ingress-Gateway单双向https认证配置

Istio Ingress-Gateway配置单双向TLS

2023-03-26 16:40:57 517

原创 gitlab-ce 15部署

gitlab-ce 15 rpm部署

2023-02-13 22:05:17 1070

原创 Linux部署maven3.9

Linux部署maven3.9

2023-02-09 23:36:51 457

原创 基于Harbor管理helm仓库

基于Harbor管理helm仓库

2022-12-29 15:58:25 472

原创 kubernetes 挂载传播

挂载传播提供了共享卷挂载的能力, 它允许在同一个 Pod, 甚至同一个节点内, 在多个容器之间共享卷的挂载。kubernetes 中 卷的挂载传播由。kubernetes 的。

2022-12-17 22:55:22 1078

原创 k8s-v1.25.4+containerd部署

​ CA机构三套:apiserver一套,etcd一套,api聚合层一套(由于和apiserver共用一套CA会发生冲突这里单独使用一个CA),颁发机构分别为:ca-apiserver,ca-etcd,front-proxy-ca。Github yaml部署链接:https://github.com/flannel-io/flannel/blob/master/Documentation/kube-flannel.yml。注:token.csv后边用于给kubelet自动颁发证书所使用的。

2022-11-19 16:32:16 3838 1

原创 client-go批量删除异常pod与重启次数过多pod

当K8S集群内生成大量被驱逐的pod时,在master负载较高时使用kubectl批量删除异常pod速度很慢,故使用原生的client-go库优化删除速度

2022-11-07 22:51:43 710

原创 k8s限制Evicted数量防止集群异常

kube-controller-manager的eviction机制是粗粒度的,即驱赶一个节点上的所有pod,而kubelet则是细粒度的,它驱赶的是节点上的某些Pod,驱赶哪些Pod与Pod的Qos机制有关。驱逐会考虑Pod的优先级,资源使用和资源申请。Eviction,即驱逐的意思,意思是当节点出现异常时,为了保证工作负载的可用性,kubernetes将有相应的机制驱逐该节点上的Pod。

2022-10-16 21:35:26 620

原创 K8S Docker数据目录迁移与扩容

K8S Docker数据目录迁移与扩容。

2022-10-15 22:19:44 894

原创 Linux创建别名与辅助IP

​ IP alias 是由 ifconfig 程序来创建和维护的,而 secondary IP address 则是由 ip 程序来创建和维护的。ip addr add 创建的 secondary IP address 不能在 ifconfig -a 中看到,反过来,ifconfig 创建的 ethX:Y 却能在 ip addr show 中看到。实际上 ifconfig 只是取到第一个匹配的 IP 地址,而 ip addr show 却是完全取。

2022-09-03 16:53:14 586

原创 Linux 离线安装Python与Ansible

Linux 离线安装Python与Ansible。

2022-09-02 08:00:00 532

原创 k8s flannel vxlan流量抓包分析

于 Kubernetes 集群中的 Pod,由于容器内不便于抓包,通常视情况在 Pod 数据包经过的 veth 设备,docker0 网桥,CNI 插件设备(如 cni0,flannel.1 etc..)及 Pod 所在节点的网卡设备上指定 Pod IP 进行抓包

2022-08-27 15:47:04 1329

原创 k8s与docker关于CPU竞争测试

默认docker运行程序下,如果未设置绑核,应用程序存在多个进程,且多个进程存在优先级,那么在这种情况下,可能会导致主进程工作效率降低单进程显然竞争不过多进程容器内如果存在多个进程,会存在低优先级抢占CPU的情况,导致主进程工作效率下降(解决办法:进行绑核处理)在宿主机资源不紧张的情况下,k8s可以保证每个pod分配request资源,且能将资源限制在limit之下在宿主机资源紧张的情况下,容器进程多的能抢占到更多的CPU,即使他们request与limit相同,且此时。...

2022-08-07 11:01:19 916

原创 iptables实现网络限制下ntp自定义端口同步时间

iptables实现网络限制下ntp自定义端口同步时间

2022-08-03 23:10:28 955

原创 shell 实现harbor v1/v2的备份/恢复/迁移等功能

shell 实现harbor v1/v2的备份/恢复/迁移等功能

2022-07-25 08:00:00 943

原创 Promethues operate blackbox(http/tcp/dns/icmp探测)

Promethues operate blackbox(http/tcp/dns/icmp探测)部署参考

2022-07-03 17:00:25 1543

原创 k8s内利用kong实现外部流量负载均衡

k8s内利用kong实现外部流量负载均衡

2022-06-27 08:00:00 367

原创 k8s部署kong+konga+pgs

Kong是一个开源的网关,具有登录鉴权、熔断限流等功能,且其是基于Nginx和OpenResty开发的。同时,Kong也提供了和k8s高度融合的Kong Ingress Controller,可以直接作为k8s的原生网关使用

2022-06-26 16:13:50 702 1

原创 基于Consul实现Docker Vxlan网络浅析

基于虚拟网络设备抓包分析Docker vxlan网络流量转发

2022-06-18 21:51:42 352

原创 k8s ipvs模式下vip nodeport规则未创建原因分析

公司K8S集群内部某些节点安装了keepalived,但是在IPVS模式下,这些节点出现了VIP未创建ipvs 规则,导致无法通过VIP:PORT去访问服务

2022-06-18 21:12:48 796

原创 Docker Vxlan流量跨namespace与宿主机通信浅析

在Docker容器内,一般是通过veth-pair设备对实现了夸namespace流量传输,但是在Vxlan设备中,它如何实现从一个namespace封装数据包到宿主机的物理网卡呢?

2022-05-11 09:44:43 529

原创 k8s部署flannel时报failed to find plugin “portmap“ in path [/opt/cni/bin]]

k8s部署flannel时报failed to find plugin "portmap" in path [/opt/cni/bin]]

2022-05-10 14:40:22 3344

docker&docker-compose 19.03.14二进制安装

自动安装和卸载docker&docker-compose 19.03.14 支持x86_64、arm64

2021-10-14

空空如也

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

TA关注的人

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