- 博客(110)
- 收藏
- 关注
原创 Linux下部署ElasticSearch集群
配置 /etc/sysctl.conf文件,修改vm.max_map_count参数,该参数设置进程可以适用的的VMA(虚拟内存区域)数量。新添加的节点需要配置cluster.initial_master_nodes,旧节点如果不重启不用修改,如果要重启旧节点,需要修改cluster.initial_master_nodes写入所有节点。修改进程的最大文件数,添加最大创建文件数(*不能去掉),配置/etc/security/limits.conf文件,在底部添加。只修改当前节点名称,其余配置和主节点一样。
2025-01-03 15:25:29
1195
原创 Linux下部署Redis集群 - 一主二从三哨兵模式
monitor mymaster 192.169.40.142 6379 2(主redis的ip 主redis的port 从节点个数)monitor mymaster 192.169.40.142 6379 2(主redis的ip 主redis的port 从节点个数)monitor mymaster 192.169.40.142 6379 2(主redis的ip 主redis的port 从节点个数)replicaof: 主redis服务器ip 主redis端口(配置为master的从)
2025-01-02 15:01:12
864
原创 Linux下部署MySQL8.0集群 - 一主两从模式(主从复制)
1、rpm -qa | grep mariadb 查找mariadb的版本名称(和MySQL冲突,会导致MySQL的3306端口监听不到):如果存在文件,使用rpm -e --nodeps 安装包 删除。2、编译配置文件my.cnf(这个文件一般是默认存在的,不需要自己手动创建,mysql在初始化是会去寻找这个配置文件,如果没有有则是默认的系统配置)注意:这里的文件是.xz文件,如果你下载的文件是**.tar.gz文件的话用 :tar -zxvf +文件命令。在mysql的安装目录下新建文件data。
2024-12-19 14:54:02
1032
原创 使用 kubekey 搭建 k8s 集群 及 kubeSphere
多租户容器管理平台,提供简单易用的操作界面以及向导式操作方式,在降 低用户使用容器调度平台学习成本的同时,极大降低开发、测试、运维的日常工作的复杂度。的配置,由于现在是最小安装,基本都是false,没有开启,这个可以根据需求自己选择保留开启。将桥接的IPv4流量传递到iptables的链。从上面可以看到kubekey ,依然还是使用。,您可以轻松、高效、灵活地单独或整体安装。第一次登陆会需要重置密码,填写后便进入了。设计的开源项目,在目前主流容器调度平台。一键部署 All-in-One。
2024-10-30 16:40:41
1215
原创 Docker搭建官方私有仓库registry及相关配置
(企业不推荐使用registry)在Docker中,当我们执行 docker pull xxx 的时候 ,它实际上是从这个地址去查找,这就是Docker公司为我们提供的公共仓库。在工作中,我们不可能把企业项目push到公有仓库进行管理。所以为了更好的管理镜像,Docker不仅提供了一个中央仓库,同时也允许我们搭建本地私有仓库。docker 官方提供的私有仓库 registry,用起来虽然简单 ,但在管理的功能上存在不足。Harbor。
2024-10-29 11:42:27
1302
原创 【CentOS7】yum 报错:Could not retrieve mirrorlist http://mirrorlist.centos.org
用yum install 命令去安装一些linux插件时报错,找了很久才解决,踩了很多坑,希望你们也不要踩,既不是大家搜索的网络问题,ping www.baidu.com可以通、DNS也设置了;一、报错如下。
2024-09-29 11:26:23
3990
9
原创 Java调用第三方HTTP接口的常用方式
【日常业务开发】Java调用第三方http接口的常用方式 概述Java调用第三方http接口的方式通过JDK网络类Java.net.HttpURLConnection通过apache common封装好的HttpClient通过Apache封装好的CloseableHttpClient通过OkHttp通过Spring的RestTemplate通过hutool的HttpUtil 总结 概述 在实际开发过程中,我们经常需要调用
2024-06-26 10:13:29
1112
原创 SpringSecurity + Oauth2 + jwt实现单点登录
在如今前后端分离架构越来越成为开发的主流模式,因此以前基于session的权限管理已经不适合前后端分离架构了,springsecurity oauth2 的出现帮我们解决了这个问题。本文采用oauth2 + jwt实现单点登录。
2024-04-26 17:44:21
3273
1
原创 线程池的使用
Runnable和Callable都可以理解为任务,里面封装着任务的具体逻辑,提交给线程池执行,区别在于Runnable任务执行没有返回值,且Runnable任务逻辑中不能通过throws抛出cheched异常(但是可以try catch),而Callable可以获取到任务的执行结果返回值且抛出checked异常。shutdownNow():立即关闭线程池(暴力),正在执行中的及队列中的任务会被中断,同时该方法会返回被中断的队列中的任务列表。
2024-04-26 16:52:07
583
原创 SpringBoot整合kafka
接下来,我们将创建一个 RESTful 端点,用于接收 POST 请求并将消息发送到 Kafka。现在,我们将创建一个 Kafka 生产者,用于发送消息到 Kafka 服务器。在这里,我们将创建一个 RESTful 端点,用于接收 POST 请求并将消息发送到 Kafka。现在,我们将创建一个 Kafka 消费者,用于从 Kafka 服务器接收消息。在这里,我们将创建一个消费者组,并将其配置为从 my-topic 主题读取消息。注解声明了一个消费者方法,用于接收从 my-topic 主题中读取的消息。
2024-04-26 11:52:05
1220
原创 分布式任务调度平台 XXL-JOB
任务调度某电商平台需要每天上午10点,下午3点,晚上8点发放一批优惠券某银行系统需要在信用卡到期还款日的前三天进行短信提醒某财务系统需要在每天凌晨0:10分结算前一天的财务数据,统计汇总以上场景就是任务调度所需要解决的问题任务调度是为了自动完成特定任务,在约定的特定时刻去执行任务的过程XXL-Job:是大众点评的分布式任务调度平台,是一个轻量级分布式任务调度平台, 其核心设计目标是开发迅速、学习简单、轻量级、易扩展大众点评目前已接入XXL-JOB,该系统在内部已调度约100万次,表现优异。
2024-04-26 11:46:22
1103
原创 Redis性能瓶颈:优化大key
Redis大key问题是指在Redis中出现了一个或多个非常大的key,这些key的大小超过了Redis所能处理的最大值,从而导致Redis性能下降甚至宕机的现象。通常情况下,Redis的key大小应该尽量保持在较小的范围内,因为Redis是一个基于内存的数据结构存储系统,大key会占用大量内存资源,导致Redis的性能受到严重影响。多大的数据量才算是大key,具体取决于Redis服务器的内存大小、可用内存空间、系统负载等因素。
2024-04-26 11:19:35
1122
原创 实现异步的8种方式
在编程中,有时候我们需要处理一些费时的操作,比如网络请求、文件读写、数据库操作等等,这些操作会阻塞线程,等待结果返回。为了避免阻塞线程、提高程序的并发处理能力,我们常常采用异步编程。异步编程是一种编程方式,它通过将任务提交给其他线程或者线程池来实现并发处理,从而提高程序的性能和响应速度。本文将介绍异步的八种实现方式,并详细阐述异步编程的概念、实现方式和优缺点等问题。在讲解异步编程之前,我们先来了解一下异步的概念。异步是指不需要等待当前操作完成,就能够进行其他操作。
2024-04-26 11:15:06
2397
原创 Windows环境安装Minio
(2)双击D:\minio\bin目录下的minio.bat文件,即可启动minio服务。(b) 教程中的9001是控制台端口,9000才是服务的端口。(1)在D:\minio\bin目录下新建一个minio.将前面下载的两个文件放到D:\minio\bin目录下。(a) 如果用不到客户端,可以不用安装;,用编辑器打开写入以下内容。(4)启动Minio服务。
2024-04-26 10:44:43
1004
原创 Mockito单元测试
这里是导入方法importFromExcel()里面调用了getAllBudgetReportCategories(Long annualId),我们只需要关心这个方法需要返回什么数据给importFromExcel()方法才算合理就行了,最后把这个合理数据模拟出来。
2024-04-15 11:55:05
2179
1
原创 Centos7安装K8S报错:[ERROR KubeletVersion]: the kubelet version is higher than the control plane version.
很显然,Kubelet版本问题。
2024-04-09 15:56:38
594
1
原创 Docker设置ustc的镜像源(镜像加速器:修改/etc/docker/daemon.json文件)
ustc是老牌的linux镜像服务提供者了,还在遥远的ubuntu5.04版本的时候就在用。ustc的docker镜像加速器速度很快。ustc docker mirror的优势之一就是不需要注册,是真正的公共服务。Docker 镜像使用帮助文档。
2024-04-09 15:49:53
1073
原创 常用网络&特殊符号大全(含彩色表情符号)
1、常用符号 ❤❥웃유♋☮✌☏☢☠✔☑♚▲♪✈✞÷↑↓◆◇⊙■□△▽¿─│♥❣♂♀☿Ⓐ✍✉☣☤✘☒♛▼♫⌘☪≈←→◈◎☉★☆⊿※¡━┃♡ღツ☼☁❅♒✎©®™Σ✪✯☭➳卐√↖↗●◐Θ◤◥︻〖〗┄┆℃℉°✿ϟ☃☂✄¢€£∞✫★½✡×↙↘○◑⊕◣◢︼【】┅┇☽☾✚〓▂▃▄▅▆▇█▉▊▋▌▍▎▏↔↕☽☾の•▸◂▴▾┈┊①②③④⑤⑥⑦⑧⑨⑩ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ㍿▓♨♛❖♓☪✙┉┋☹☺☻تヅツッシÜϡﭢ™℠℗©®♥❤❥❣❦❧♡۵웃유ღ♋♂♀☿☼☀☁☂☄☾☽❄☃☈⊙☉℃℉❅✺ϟ☇♤♧♡♢♠♣♥♦☜☞
2024-03-29 17:37:18
12621
原创 kubernetes(K8S)学习(九):K8S之日志监控
docker命令查看kubectl命令查看 1.1.2 Pod级别当然,kubectl describe除了能够查看pod的日志信息,还能查看比如Node、RC、Service、Namespace等信 息。 注意 :要是想查看指定命名空间之下的,可以-n=namespace比如kube-apiserver、kube-schedule、kubelet、kube-proxy、kube-controller-manager等可以使用journalctl进行查看 1.1.4 LogPilot + ES
2024-03-29 16:18:48
1715
原创 常见部署方案:普通部署、滚动部署、蓝绿部署、灰度发布(金丝雀发布)
AB test就是一种灰度发布方式,让一部分用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度,而我们平常所说的金丝雀部署也就是灰度发布的一种方式。蓝绿部署是不停老版本,部署新版本然后进行测试,确认OK,将流量切到新版本,然后老版本同时也升级到新版本。最早的部署方式:先停止旧的应用,然后再部署新的应用,这个过程服务是会间断的。蓝绿部署无需停机,并且风险较小。
2024-03-29 15:57:21
859
原创 kubernetes(K8S)学习(八):K8S之常见部署方案
maxUnavailable :滚动升级时允许的最大unavailable的pod数量。conclusion :发现新旧pod是会共存的,并且可以访问测试看一下。先停止旧的pod,然后再创建新的pod,这个过程服务是会间断的。修改rollingupdate.yaml文件,将镜像修改成v2.0。conclusion :发现pod是先停止,然后再创建新的。创建bluegreen-service.yaml。修改bluegreen-service.yaml。修改bluegreen-service.yaml。
2024-03-29 15:55:17
1125
原创 kubernetes(K8S)学习(七):K8S之系统核心组件
管理Pod及Pod中的容器,每个kubelet进程会在API Server上注册节点自身信息,定期向Master节点汇报节点资源的使用情况,并通过cAdvisor监控容器和节点资源。然后,目标节点上的kubelet通过API Server监听到Kubernetes Scheduler产生的Pod绑定事件,获取对应的Pod清单,下载Image镜像,并启动容器。单纯地调度pod,按照特定的调度算法和策略,将待调度Pod绑定到集群中某个适合的Node,并写入绑定信息,由对应节点的kubelet服务创建pod。
2024-03-29 15:46:28
1520
原创 kubernetes(K8S)学习(六):K8S之Dashboard图形界面
官网Dashboard是基于web的Kubernetes用户界面。您可以使用指示板将容器化的应用程序部署到Kubernetes集群,对容器化的应用程序进行故障排除,并管理集群资源。您可以使用Dashboard来获得运行在集群上的应用程序的概览,以及创建或修改单独的Kubernetes资源(例如部署、作业、守护进程集等)。例如,您可以扩展部署、发起滚动更新、重新启动pod或使用部署向导部署新的应用程序。
2024-03-29 15:35:41
3639
1
原创 kubernetes(K8S)学习(五):K8S进阶(Lifecycle......偏理论)
Horizontal Pod Autoscaling可以根据CPU使用率或应用自定义metrics自动扩展Pod数量(支持replication controller、deployment和replica set)01-控制管理器每隔30s查询metrics的资源使用情况02-通过kubectl创建一个horizontalPodAutoscaler对象,并存储到etcd中03-APIServer:负责接受创建hpa对象,然后存入etcd。
2024-03-29 15:28:06
2410
原创 Kubernetes(K8S)学习(四):K8S之Storage
在电脑中, volume(文件集)是一个可辨认的数据存储(storage)单元。Volume地址(1)容器崩溃时文件丢失。(2)Kubelet重新启动容器后为clean状态。在Pod中一起运行的容器之间共享文件时,会出现第二个问题。Kubernetes的Volume抽象地解决了这两个问题。官网有了PV,那Pod如何使用呢?为了方便使用,我们可以设计出一个PVC来绑定PV,然后把PVC交给Pod来使用即可,且听下面的分析。
2024-03-29 14:47:56
1437
原创 Kubernetes(K8S)学习(三):K8S实战案例
这里的user.yaml和order.yaml,不知道什么原因,在本地idea中启动测试可以正常注册到nacos(linux)中;这里的user.yaml和order.yaml,不知道什么原因,在本地idea中启动测试可以正常注册到nacos(linux)中;,这种配置下,不要求nacos和user、order的pod在同一k8s集群节点,依然可以注册到nacos中。,这种配置下,不要求nacos和user、order的pod在同一k8s集群节点,依然可以注册到nacos中。
2024-03-29 11:03:40
3638
原创 Kubernetes(K8S)学习(二):K8S常用组件
ReplicationController确保任何时期都在运行指定数量的Pod副本。换句话说,ReplicationController确保一个容器或一组相同的容器始终处于可用状态。Pod期待的副本数(replicas)用于筛选目标Pod的Label Selector当Pod的副本数量小于预期数量时,用于创建新Pod的Pod模板(template)也就是说通过RC实现了集群中Pod的高可用,减少了传统IT环境中手工运维的工作。(1)kind:表示要新建对象的类型。
2024-03-28 17:13:10
1092
原创 kubernetes(K8S)学习(一):K8S集群搭建(1 master 2 worker)
:使用kubeadm搭建一个3台机器组成的k8s集群,1台master节点,2台worker节点。由于k8s安装较麻烦,为防止出现其他异常,特此统一下安装的软件版本。 1.2、k8s环境系统要求 1.3、准备三台Centos7虚拟机(1)保证3台虚拟机的Mac地址唯一 需同时启动3台虚拟机,故应保证3台虚拟机的Mac地址唯一。可参考下图: 注意:()(2)安装依赖包 2.2、安装Docker注意:()在每一台机器上都安装好Docker,版本为18.09.0(1)安装必要的依赖
2024-03-28 16:12:15
2395
1
原创 Docker入门到入坑
挂载主机目录 (Bind mounts)-最常用 (docker run -v 宿主机目录:容器目录)数据卷(Volumes)Docker 中存在多个容器时,容器与容器之间经常需要进行通讯,例如nacos访问mysql,redis集群中各个节点之间的通讯。
2024-03-28 10:39:37
736
原创 Redis入门到入坑(二)
Redis是一种内存数据库,在断电时数据可能会丢失。比如你redis整个挂了,然后redis不可用了,如果没有持久化的话,redis就会丢失所有的数据,如果通过持久化将数据搞一份儿到磁盘上去,然后再定期同步到一些云存储服务上去,那么就可以保证一些数据不丢失,保证数据的可靠性。Rdb方式是通过手动(save-阻塞式,bgsave-异步)或周期性方式保存redis中key/value的一种机制,Rdb方式一般为redis的默认数据持久化方式.系统启动时会自动开启这种方式的持久化机制。
2024-03-21 15:36:56
2044
原创 Redis入门到入坑(一)
背景 我们现在的项目架构中,基本上是Web服务器(Tomcat)和数据库独立部署,独占服务器资源,随着用户数的增长,并发读写数据库,会加大数据库访问压力,导致性能的下降,严重时直接导致系统宕机,例如: 此时,我们可以在Tomcat同服务器上中增加本地缓存,并在外部增加分布式缓存,缓存热门数据。也就是通过缓存能把绝大多数请求在读写数据库前拦截掉,大大降低数据库压力。例如: 基于这样的一种架构设计,于是类似redis的一些分布式数据库就诞生了。 Redis 概述 Re
2024-03-21 14:31:16
504
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人