自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(121)
  • 资源 (3)
  • 收藏
  • 关注

原创 k8s + springcloud 微服务开发调试工具kt Connect的使用

KtConnect(全称Kubernetes Toolkit Connect)是一款基于Kubernetes环境用于提高本地测试联调效率的小工具。

2024-04-02 15:59:29 769 1

原创 nginx + keepalived 搭建教程

【代码】nginx + keepalived 搭建教程。

2024-04-02 14:45:14 196

原创 自建SSL证书(兼容ios)

于SSL/TLS服务器证书,特别是那些用于HTTPS网站的证书,有几个关键的扩展和属性是必要的,以确保证书可以被客户端(如浏览器)正确识别和信任。这些细节对于确保加密连接的安全性至关重要。以下是一些关键的证书详情和扩展:主题备用名称 (Subject Alternative Name, SAN)SAN字段允许证书指定多个资源名称(比如,多个域名或IP地址)。对于现代的浏览器和客户端,此字段几乎是必需的,因为它们会检查访问的域名是否包含在证书的SAN中。密钥用途 (Key Usage, KU)

2024-04-01 18:21:30 867

原创 k8s集群pod和node状态监控

修改namespace为dev(default也行,但是后面的metricbeat安装也需要修改namespace为default)。

2024-04-01 17:50:47 691

原创 filebeat作为daemonSet

【代码】filebeat作为daemonSet。

2024-03-29 14:49:03 115

原创 Elasticsearch升级白金版(破解)

启动需要非root用户为用户授权es文件操作权限启动步骤。

2024-03-29 14:46:36 878

原创 redis慢查询设置和查看

慢查询,顾名思义就是比较慢的查询。在慢查询的定义中,统计比较慢的时间段指的是命令执行这个步骤。没有慢查询,并不表示客户端没有超时问题,有可能网络传输有延迟,也有可能排队的命令比较多。因为Redis中命令执行的排队机制,慢查询会导致其他命令的级联阻塞,所以当客户端出现请求超时的时候,需要检查该时间点是否有慢查询,从而分析出由于慢查询导致的命令级联阻塞。

2024-03-02 10:51:04 521

原创 mysql冷备

(3)若磁盘空间有限,只能拷贝到移动硬盘灯其他外部存储设备上,拷贝速度会很慢。(2)在实施备份的全过程中,数据库不能做其他用处,只能处于关闭状态。(1)单独使用时,只能提供到“某一时间点”上的恢复。冷备份:在数据库停止服务的情况下进行备份。(4)不能按表或按用户恢复,只能整体恢复。热备份:在数据库处于运行状态下进行备份。温备份:不可写但可读的情况下进行备份。恢复时,把数据目录指到备分的目录。

2024-03-01 17:27:51 578

原创 k8s挂载configmap到容器目录

ConfigMap是k8s的一个配置管理组件,可以将配置以key-value的形式传递,通常用来保存不需要加密的配置信息,加密信息则需用到Secret,主要用来应对以下场景:生成为容器内的环境变量;设置容器启动命令的启动参数(需设置为环境变量)以Volume的形式挂载为容器内部的文件或目录。

2024-03-01 15:29:22 83

原创 k8s组件证书续期

K8S 各个组件需要与 api-server 进行通信,通信使用的证书都存放在 /etc/kubernetes/pki 路径下,由 kubeadm 生成的客户端证书在 1 年后到期,因此需要定时更新证书,否则证书到期会导致整个集群不可用。

2024-02-20 14:51:08 254

原创 Mongodb7 分片集群的搭建

mongo版本:7.0.5操作系统:centos8 stream。

2024-02-20 14:16:31 1079

原创 k8s版本升级到1.24.x

每个版本升级都有对应的文档,以1.23升级到1.24为例。可以查看栏目的k8s安装文档。

2024-02-04 15:48:37 468

原创 k8s集群资源(pod、镜像等)自动回收

垃圾收集是 Kubernetes 用于清理集群资源的各种机制的统称。自动回收机制可以避免随着时间推移,系统中的镜像等越来越多,导致硬盘等资源不足。

2024-02-03 18:04:50 423

原创 mysql升级到8.x

mysql下载地址: https://dev.mysql.com/downloads/mysql/5.5.html?应该下载这个类似版本 mysql-8.0.36-linux-glibc2.17-x86_64-minimal.tar.xz。

2024-02-03 16:18:52 409

原创 mysql数据库使用mysqlbinlog命令查看数据操作、主从数据同步记录

使用 mysqlbinlog 命令可以解释binlog文件,查询mysql数据库所有数据包括表和字段的操作记录。此时需要查看end_log_pos对应的是什么数据操作,就需要把binlog二进制文件解释成可读的文件。找到错误信息里对应的end_log_pos,即可找到具体的sql。mysqlbinlog命令保存的mysql的bin目录中。binlog文件保存在mysql的data目录中。进入mysql/bin目录,执行。

2024-02-02 16:22:14 752

原创 搭建k8s集群实战(四)k8s node 资源管理、避免系统无响应

cgroup(control group)是一个内核特性,用于限制、统计、隔离一组进程的资源(CPU、内存、磁盘、网络等),首字母不要大写。单数形式(cgroup)指所有特性,也可以作为“cgroup controllers”的修饰。复数形式(cgroups)指多个 cgroup。

2024-02-02 14:30:37 390

原创 搭建k8s集群实战(三)安装配置containerd、kubelet、kubeadm、kubectl

k8s在1.24之后,使用containerd代码docker提供容器服务。下面说明如果安装containerd,并设置镜像仓库。

2024-01-25 14:27:12 433

原创 搭建k8s集群实战(二)安装keepalived和haproxy

keepalived介绍: 是集群管理中保证集群高可用的一个服务软件,其功能类似于heartbeat,用来防止单点故障Keepalived作用: 为haproxy提供vip(10.208.1.190)在三个haproxy实例之间提供主备,降低当其中一个haproxy失效的时对服务的影响。

2024-01-25 14:04:33 390

原创 搭建k8s集群实战(一)系统设置

Kubernetes作为容器集群系统,通过健康检查+重启策略实现了Pod故障自我修复能力,通过调度算法实现将Pod分布式部署,并保持预期副本数,根据Node失效状态自动在其他Node拉起Pod,实现了应用层的高可用性。针对Kubernetes集群,高可用性还应包含以下两个层面的考虑:Etcd数据库的高可用性和Kubernetes Master组件的高可用性。Master节点扮演着总控中心的角色,通过不断与工作节点上的Kubelet进行通信来维护整个集群的健康工作状态。

2024-01-23 16:08:07 527

原创 android 和 opencv 开发环境搭建

本文详细说明给android项目添加opencv库的详细步骤,并通过实现图片灰度化来查看配置是否成功。

2024-01-18 22:54:02 701

原创 Navicat Premium保存密码失败:Failed to save password Error code: -34018

即在编辑数据库连接并输入密码保存后,会弹出“保存密码失败”的提示。之前的版本没有卸载干净,会出现这个错误。再次安装新版本即可解决。

2024-01-15 17:04:36 1461 2

转载 深入 ProtoBuf - 编码

https://www.jianshu.com/p/73c9ed3a4877Springboot集成ProtoBufhttps://blog.csdn.net/xrq0508/article/details/89704159

2021-09-10 18:05:32 1298

原创 Java并发编程:线程池的使用

ThreadPoolExecutor类java.uitl.concurrent.ThreadPoolExecutor类是线程池中最核心的一个类,因此如果要透彻地了解Java中的线程池,必须先了解这个类。下面我们来看一下ThreadPoolExecutor类的具体实现源码。在ThreadPoolExecutor类中提供了四个构造方法:public class ThreadPoolExecutor extends AbstractExecutorService { ..... public

2021-09-08 18:27:28 1076

原创 kotlin data class json 解释

使用data class 接收参数时,由于没有默认构造器,会报以下错误:Exception in thread "main" com.fasterxml.jackson.databind.exc.InvalidDefinitionException:Cannot construct instance of `Person` (no Creators, like default constructor, exist):cannot deserialize from Object value ...

2021-08-31 18:08:16 672

转载 UML类图中箭头和线条的含义和用法

UML中关系本节向大家学习一下UML箭头、线条代表的意义,UML中关系主要有依赖,聚合,合成,泛化和实现等,下面就让我们来看一下这些关系如何用UML箭头和线条来实现。关系后面的例子将针对某个具体目的来独立地展示各种关系。虽然语法无误,但这些例子可进一步精炼,在它们的有效范围内包括更多的语义。依赖(Dependency)实体之间一个“使用”关系暗示一个实体的规范发生变化后,可能影响依赖于它的其他实例(图D)。更具体地说,它可转换为对不在实例作用域内的一个类或对象的任何类型的引用。其中包括一个局部变量

2021-08-27 14:06:05 3340

原创 CentOS下minicom连接交换机的配置使用方法

1、查看安装minicom用指令”rpm -qa | grep minicom”来确认是否安装了minicom,回车后会显示minicom 的版本信息.如果没有安装,直接yum install minicom即可。2、配置minicom第一次 启动时:如果直接输入minicom,会报错。所以需要执行:minicom -s命令,对minicom进行设置。I、出现配置菜单:选serial port setup进入串口配置I-1、输入A配置串口驱动为/dev/ttyS0 #注,可以通过:dmes

2021-08-14 11:44:34 1703

原创 k8s 删除master和etcd节点并重新加入

目前master集群有3个master节点,其中一个要更换。删除主节点在master1上执行如下命令# kubectl drain master2 --delete-local-data --force --ignore-daemonsetsnode/master2 already cordonedWARNING: ignoring DaemonSet-managed Pods: kube-system/calico-node-xcqp8, kube-system/kube-proxy-spclw

2021-03-22 17:04:27 7065 1

原创 centos 7.5 升级GLIBCXX_3.4.21和glibc-2.18

升级GLIBCXX有些so库提示找不到GLIBCXX_3.4.21。执行:sudo find / -name "libstdc++.so*"我们将最新的动态库替换上去,sudo cp /var/lib/docker/overlay2/35378f47e4e0b5d5d03d1369c260c4c13db292626b211437100f682d1c56c59f/merged/usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/lib64/libstdc

2021-03-04 17:31:41 3194 1

原创 SpringCloud 升级到2020记录

升级springbootspringboot升级到2.4.1以上<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.4.3</version> <type>pom</type>&

2021-03-02 11:06:10 2318

原创 RxJava2更新说明

NullsRxJava 2.x 不再支持null值,以下写法会抛出NullPointerException:Observable.just(null);Single.just(null);Observable.fromCallable(() -> null) .subscribe(System.out::println, Throwable::printStackTrace);Observable.just(1).map(v -> null) .subscrib

2021-02-20 17:13:50 396

转载 RxJava使用说明5-组合操作符

这一章我们接着介绍组合操作符,这类operators可以同时处理多个Observable来创建我们所需要的Observable。组合操作符主要包含: Merge,StartWith,Concat,Zip,CombineLatest,SwitchOnNext,Join等等。Mergemerge(Observable, Observable)将两个Observable发射的事件序列组合并成一个事件序列,就像是一个Observable发射的一样。你可以简单的将它理解为两个Obsrvable合并成了一个Obse

2021-02-18 15:03:57 220

转载 RxJava使用说明4-过滤操作符

前面一篇文章中我们介绍了转换类操作符,那么这一章我们就来介绍下过滤类的操作符。顾名思义,这类operators主要用于对事件数据的筛选过滤,只返回满足我们条件的数据。过滤类操作符主要包含: Filter, Take, TakeLast, TakeUntilSkip, SkipLast, ElementAt, Debounce, Distinct, DistinctUntilChanged, First, Last等等。Filterfilter(Func1)用来过滤观测序列中我们不想要的值,只返回满足条件

2021-02-18 13:58:18 204

转载 RxJava使用说明3-转换操作符

前面两篇文章中我们介绍了RxJava的一些基本概念和RxJava最简单的用法。从这一章开始,我们开始聊聊RxJava中的操作符(Operators),RxJava中的操作符主要分成了三类:转换类操作符(map flatMap concatMap flatMapIterable switchMap scan groupBy…);过滤类操作符(fileter take takeLast takeUntil distinct distinctUntilChanged skip skipLast …);组合

2021-02-17 21:46:01 202

转载 RxJava使用说明2-基本概念及使用介绍

前言上一篇的示例代码中大家一定发现了Observable这个类。从纯Java的观点看,Observable类源自于经典的观察者模式。RxJava的异步实现正是基于观察者模式来实现的,而且是一种扩展的观察者模式。观察者模式观察者模式基于Subject这个概念,Subject是一种特殊对象,又叫做主题或者被观察者。当它改变时那些由它保存的一系列对象将会得到通知,而这一系列对象被称作Observer(观察者)。它们会对外暴漏了一个通知方法(比方说update之类的),当Subject状态发生变化时会调用的这

2021-02-17 18:52:24 338

转载 RxJava使用说明1-简介

响应式编程在介绍RxJava前,我们先聊聊响应式编程。那么什么是响应式编程呢?响应式编程是一种基于异步数据流概念的编程模式。数据流就像一条河:它可以被观测,被过滤,被操作,或者为新的消费者与另外一条流合并为一条新的流。响应式编程的一个关键概念是事件。事件可以被等待,可以触发过程,也可以触发其它事件。事件是唯一的以合适的方式将我们的现实世界映射到我们的软件中:如果屋里太热了我们就打开一扇窗户。同样的,当我们的天气app从服务端获取到新的天气数据后,我们需要更新app上展示天气信息的UI;汽车上的车道偏移系

2021-02-17 15:37:24 205 2

原创 SpringCloud Config(配置中心) 配置服务自动刷新

概述配置中心负责统一保存微服务的配置文件(yml或properties文件),配置文件一般是从git库(或其它后端)中拉取。微服务启动时,会从配置中心拉取配置文件。如果配置中心有对应的配置文件,则会覆盖服务本地的配置文件中对应的属性。当git库有新的提交时,通过webhook通知配置中心。webhook会带上修改的内容,配置中心找到此次修改的配置文件,通过Spring Cloud Bus通知对应的服务刷新配置。架构Config Server端配置依赖<!-- config-serve

2021-02-07 14:01:00 2624

原创 ios 国际化语言编码对照表

ios系统对100多个地区做了本地化,支持40多种语言。下面是官方支持的语言,但是在app开发中,可以添加任何语言,包括不被系统支持的语言。 iOS Language .lproj Language code (ISO-639) iPhone/iPad App Store English (U.S.) en English (UK) en-GB English (Australian) en-AU...

2021-02-04 16:16:27 3744

原创 SpringCloud 中使用HikariPool 报错Possibly consider using a shorter maxLifetime value

SpringCloud 或 SpringBoot 使用HikariPool遇到:com.zaxxer.hikari.pool.PoolBase : HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@115a8473 (No operations allowed after connection closed.). Possibly consider using a shorter

2021-02-03 15:09:06 18463 5

原创 ELK日志监控告警 elastalert 部署及配置

环境centos7.6ELK:日志收集框架,elastalert 从其中的es查询告警。python3.6:或以上,一般系统都自带了安装elastalert下载git clone https://github.com/Yelp/elastalert.git安装cd elastalert/pip install -r requirements.txtpython setup.py install -i https://pypi.tuna.tsinghua.edu.cn/simpleln

2021-02-01 16:17:01 1388

转载 android LiveData 详细说明

概述LiveData 是一种可观察的数据存储器类。与常规的可观察类不同,LiveData 具有生命周期感知能力,意指它遵循其他应用组件(如 Activity、Fragment 或 Service)的生命周期。这种感知能力可确保 LiveData 仅更新处于活跃生命周期状态的应用组件观察者。如果观察者(由 Observer 类表示)的生命周期处于 STARTED 或 RESUMED 状态,则 LiveData 会认为该观察者处于活跃状态。LiveData 只会将更新通知给活跃的观察者。为观察 LiveDa

2021-01-30 16:20:00 711

鸿蒙应用开发例子程序

鸿蒙应用开发例子程序,一个简单的入门例子,通过xml布局,java代码开发。详细说明请看https://blog.csdn.net/xgw1010/article/details/109107834

2020-10-18

spring security oauth 2.0 例子

OAuth 2.0 客户端模式的例子,client_id保存在数据库,而不是写死在配置文件中,支持多个client_id

2020-08-28

vp suite 4.1 license

vp suite 4.1 license

2010-12-07

空空如也

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

TA关注的人

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