自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Kason_iWiki

记录点滴、、、

  • 博客(421)
  • 资源 (11)
  • 收藏
  • 关注

原创 个人收录传送门-Technology blog

程序员导航栏搜索快人一步720云-全景平台阿里巴巴云原生阿里云开发阿里巴巴开源镜像站RancherLabsElastic 中国社区官方博客Elastic咨询师美团技术团队Go语言学习之路架构师波波阳明k8s技术博客k8s官方中文社区

2019-10-31 10:00:18 1039

原创 k8s官方镜像代理加速

k8s官方镜像地址代理加速

2023-12-06 22:57:09 2436 2

原创 Go利用反射实现一个ini文件的解析器程序

【代码】Go利用反射实现一个ini文件的解析器程序。

2023-11-13 16:25:00 451

原创 Go语言~反射

isNil()和isValid()

2023-11-07 23:45:26 480 1

原创 【GitOps系列】如何解决 GitOps 的秘钥存储问题?

在实际的业务场景下,出于安全需要,Git 仓库往往会包含下面这些机密信息。镜像拉取凭据的 Secret 对象,它可以为集群提供拉取镜像的权限。外部数据库连接信息。外部中间件如 MQ 连接信息。第三方服务的 API KEY,例如云厂商和短信服务商。在 GitOps 工作流中,这些机密信息都会通过 Kubernetes 对象存放在 Git 仓库,在大部分情况下它们是 Configmap 或 Secret 对象。

2023-08-14 17:22:18 439 2

原创 【GitOps系列】使用 ArgoCD ApplicationSet 来实现多环境管理

开发环境测试环境预发布环境生产环境为了让不同职责的人员在不同的环境下独立工作,我们一般会将不同环境隔离。通常,开发环境主要用于开发人员的日常开发,测试环境则是为测试团队而准备的,预发布是正式发布到生产环境之前的最后一道防线,除了数据以外,应该尽量和生产环境保持一致。当然,对有些团队来说,他们可能还希望开发人员之间相互隔离,也就是为每一个开发者分配一个独立的开发环境,使他们互不干扰。在非云原生技术架构体系下,环境一般是由特定的团队人工维护的。

2023-08-05 11:20:20 580

原创 【GitOps系列】如何实施自动化渐进式交付?

在实施金丝雀发布的过程中,我们通过 Argo Rollout 的金丝雀策略将发布过程分成了 3 个阶段,每个阶段金丝雀的流量比例都不同,经过一段时间之后,金丝雀环境变成了新的生产环境。实际上,这也是一种渐进式的交付方式,它通过延长发布时间来保护生产环境,降低了发生生产事故的概率。不过,这种渐进式的交付方式存在一个明显的缺点:无法自动判断金丝雀环境是否出错?这可能会导致一种情况,当金丝雀环境在接收生产流量之后,它产生了大量的请求错误,在缺少人工介入的情况下,发布仍然按照计划进行,最终导致生产环境故障。

2023-08-03 22:49:27 772

原创 【GitOps系列】如何实施金丝雀发布?

蓝绿发布是一种通过资源冗余来换取回滚效率的发布方式,结合 Argo Rollout ,能够很方便地实现自动化的流量切换。但是它的缺点也是比较明显的:当新环境准备好之后,流量将进行全量切换, 无法对新环境进行小规模的流量验证。为了更好地了解新环境的性能和潜在的问题,最好的办法是让新的环境接收一小部分生产流量。通常,我们会把一定比例的生产流量转发到新的环境,以此来验证新环境的表现。这种发布方式就叫做金丝雀发布,又叫做灰度发布。

2023-07-31 23:05:31 495

原创 【GitOps系列】在 GitOps 工作流中实现蓝绿发布

借助于Argo Rollout 工具实现自动化蓝绿发布。和手动修改 Ingress 策略来实现的蓝绿发布不同的是:它主要是通过自动修改 Service 的选择器来对流量进行切换的。这种方式将蓝绿发布的过程变成了更新镜像的操作,极大降低了蓝绿发布的门槛。

2023-07-30 15:20:28 361

原创 【GitOps系列】监听镜像版本变化触发 GitOps工作流

通过引入 ArgoCD Image Updater,我们可以让 ArgoCD 具备自动监控镜像仓库的更新情况能力,一旦工作负载的镜像版本有更新,ArgoCD 就会自动化将工作负载升级为新的镜像版本,并且还可以自动将镜像的版本号回写到 Helm Chart 仓库中,保持应用定义和集群状态的一致性。

2023-07-29 00:05:49 525

原创 【GitOps系列】使用 ArgoCD 快速打造GitOps工作流

Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes.

2023-07-27 15:50:48 791

原创 【GitOps系列】使用Kustomize和Helm定义应用配置

使用云原生相关组件Kustomize和Helm定义应用配置

2023-07-20 22:37:24 592

原创 harobr 登录异常‘lookup core.harbor.domain: no such host‘

Harbor is an open source registry that secures artifacts with policies and role-based access control, ensures images are scanned and free from vulnerabilities, and signs images as trusted. Harbor, a CNCF Graduated project, delivers compliance, performance,

2023-07-15 14:12:36 644

原创 【GitOps系列】自动化构建Image

自动构建镜像的自托管方案:使用 Tekton 来自动构建镜像。Tekton 是一款基于 Kubernetes 的 CI/CD 开源产品,如果已经有一个 Kubernetes 集群,那么利用 Tekton 直接在 Kubernetes 上构建镜像是一个不错的选择。

2023-07-14 16:53:43 291

原创 【GitOps系列】K8s极简实战

【GitOps系列】K8s极简实战-基础篇

2023-07-14 00:26:13 588

原创 【GitOps系列】从零上手GitOps

通过构建 GitOps 工作流,打造高可用、高并发、自动自愈、可观测的弹性应用架构体系,同时实现环境即代码(Environment as Code)的秒级发布和回滚。让我们开始从零上手 GitOps,感受云原生工程实践之美吧!

2023-07-13 20:05:47 577 1

原创 nginx `error:2006D080:BIO routines:BIO_new_file:no such file error`

nginx: [emerg] SSL_CTX_load_verify_locations("/opt/nginx/conf/none") failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/opt/nginx/conf/none','r') error:2006D080:BIO routines:BIO_new_file:no such file error:0B084002:x509 cert

2023-07-12 19:05:24 1444

原创 Zadig v1.16.0升级到v1.17.0

Zadig v1.16.0升级到v1.17.0

2023-06-26 18:07:19 507

原创 Mongo复制集节点状态都处于SECONDARY,如何手动切换选主?

Mongo复制集节点状态都处于SECONDARY,如何手动切换选主? 恢复rs复制集架构,正常提供业务读写。

2023-06-05 22:20:34 337

原创 Kube-OVN组件

Kube-OVN, a CNCF Sandbox Project, bridges the SDN into Cloud Native. It offers an advanced Container Network Fabric for Enterprises with the most functions, extreme performance and the easiest operation.

2023-05-01 12:03:31 1123 1

原创 Vector 高性能日志收集工具

Vector 是一种高性能的可观察性数据管道,可让组织控制其可观察性数据。收集、转换并将所有日志、指标和跟踪路由到SRE团队想展示或者存储的任何地方。由于 Vector 用 Rust 编写,提供了内存安全和效率保证,使其在其他现有工具中独树一帜。Vector 引入了单元测试框架,可以更轻松地维护复杂的日志收集工具拓扑。属于一款新型开源产品,比所有替代方案快 10 倍(引用官方话语)。

2023-04-13 19:55:49 2604

原创 Kubernetes 部署 StarRocks 集群

StarRocks 是新一代极速全场景 MPP (Massively Parallel Processing) 数据库。StarRocks 的愿景是能够让用户的数据分析变得更加简单和敏捷。用户无需经过复杂的预处理,就可以用 StarRocks 来支持多种数据分析场景的极速分析。

2023-04-11 19:58:03 1505 4

原创 Golang开发批量目录压缩工具-dirTools

Linux系统某个服务的日志生成很有规则性,期望将服务程序生成的目录文件按照日期进行压缩,例如 “0309目录压缩为0309.tar.gz 0310目录压缩为0310.tar.gz”3、实际需处理的日期目录可根据实际环境进行正则匹配[0-9]组合而成的4位数字。按天进行压缩可以在程序中加入时间判断的逻辑,只压缩当天日期的目录即可。2、处理的对象上一级目录不能被固化,可根据用户实际需求选择。5、用户可根据实际情况选择性删除源目录或者不删除等等。4、压缩过程及处理的目录个数、大小统计输出。

2023-03-28 17:33:25 220

原创 k8s迁移节点kubelet数据存储目录

默认k8s节点kubelet数据目录在,如果在部署前没有做好规划,其实默认就存储在系统盘/分区下了,这样会导致一个问题,如果数据量过大会导致kubelet服务异常,其次,系统盘下有一些系统服务引用,没有形成解耦,包括后期的容量扩容也会带来影响。所以一般数据存储目录在k8s层面,一定要提前做相关规划,至少要具备可灵活扩展性等。本文主要记录在前期没有做好规划之后,目前容量存储即将到一定的瓶颈期,需要快速进行迁移扩容工作。

2023-03-24 15:10:00 979

原创 Python 开发重命名文件小工具-RenFtools

批量重命名文件(有一定的规则属性)

2023-03-22 19:54:34 123

原创 ETCD_v3 RESTful API调用

etcd v3 api 调用示例

2023-03-19 23:31:15 439

原创 Traefik v2.9-IngressRoute

The Kubernetes Ingress Controller, The Custom Resource Way.In early versions, Traefik supported Kubernetes only through the Kubernetes Ingress provider, which is a Kubernetes Ingress controller in the strict sense of the term.However, as the community expr

2023-03-07 21:26:06 694

原创 Kafka 概述

目前企业中比较常见的消息队列产品主要有 Kafka、ActiveMQ 、RabbitMQ 、RocketMQ 等。在大数据场景主要采用 Kafka 作为消息队列。

2023-02-27 17:50:11 725

原创 Mongodb ‘Unauthorized not authorized on admin to execute command‘

AuthenticationFailed It is not possible to authenticate as the __system user on servers started without a --keyFile parameter

2023-02-27 15:21:48 890

原创 k8s 调整Node节点 Max_Pods

k8s 设置node最大pod数量 kubelet_max_pods

2023-02-20 15:19:33 837

原创 Mongodb WT_PANIC: WiredTiger library panic

WT_SESSION.open_cursor: the process must exit and restart: WT_PANIC: WiredTiger library panic

2023-02-18 14:17:38 965

原创 k8s默认StorageClass,解决pvc一直处于“Pending”

K8S 中动态(StorageClass)创建 PVC 时 SelfLink 问题解决

2023-02-12 22:44:21 2693

原创 Linux安全审计配置

在Linux操作系统中,将所有用户的操作指令记录在日志文件中供审计。

2023-01-06 11:28:46 895

原创 自定义开发node_exporter脚本实现监控

早年在使用Zabbix监控时,可以自己写自定义脚本来监控指标。随着时代的变革,在使用Promethues的时候,有很多的exporter,但是有一些特殊的情况是没法实现的,比如,我需要监控统计每个idc的nginx error日志,计算最近1分钟的错误率,这时只能通过自定义开发脚本来实现一些特殊的需求。3)添加启动参数,node_exporter采集数据(采集频率为定时任务的频率)(3)监控Linux系统是否开启bbr,若没开启则触发告警。(1)监控统计指定目录下的文件数,若超过50触发告警。

2023-01-05 17:04:04 1610 1

原创 kafka日志清理策略

删除逻辑是:首先计算日志段总大小与retention.bytes之间的差值(diff),得到需要删除的日志总大小,然后从第一个日志段开始查找,若diff与该日志段字节之差不小于0,则将该日志段加入到待删除集合中,以此类推,直到diff与查找的日志段大小之差小于0,查找结束,迭代待删除的日志段文件,进行物理删除。每个分区的日志文件存储的时候又会分成一个个的segment,默认日志段(segment)的大小是1GB,segment是日志清理的基本单元,当前正在使用的segment是不会被清理的。

2022-12-30 11:41:04 2136

原创 Hadoop datanode启动异常 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode

发现这两个id不一致,经查阅相关资料,id不一致会导致Initialization failed for Block pool。线上收到hadoop集群datanode掉线告警。然后再次尝试启动datanode进程。发现未存在datanode进程。

2022-11-25 17:10:57 2366

原创 Mongo rs集群 RECOVERING 故障恢复

删除处于RECOVERING的从节点所有数据,MongoDB将自动从主节点同步数据至此从节点。对于数据量非常大的情况下,可以选择拷贝一个正常提供服务的集群副本集的节点的所有数据到需要恢复的节点上(注意备份需要恢复节点的历史数据,万一出问题可回退)。参考2:https://blog.csdn.net/feinifi/article/details/80654328。从节点一直处于RECOVERING无法恢复,从节点日志提示数据太老了,无法从主节点同步。本次同步数据量约350GB左右。

2022-11-18 15:32:34 335

原创 解决 Ubuntu 16.04.4普通用户无法监听udp 443

linux对于非root权限用户不能使用1024以下的端口,对于一些服务,过高的权限,会带来一定的风险。(例如80、443)方案:设置port_startlinux 允许非 root 用户默认只能使用 1024 以上端口,sysctl 可以修改该起始端口。

2022-09-14 20:37:45 2145

原创 解决error: C compiler cannot create executables

【代码】解决error: C compiler cannot create executables。

2022-09-07 22:39:47 5899

原创 oncall 实践中解决问题的艺术

oncall 实践中解决问题的艺术

2022-08-22 22:55:13 271

cri-containerd-1.6.6

containerd物料包

2022-08-13

helm-diff-linux

helm diff插件

2022-08-13

helm-v3.9.2

helm

2022-08-13

helmfile_linux

helmfile工具

2022-08-13

kubecolor-0.0.20-linux

kubectl酷炫工具

2022-08-13

nerdctl-0.21.0-linux

containerd命令操作工具

2022-08-13

coredns_v1.8.0.tar.gz

coredns镜像文件,适用于k8s v1.21.2

2021-07-13

elasticsearch-7.9.2-x86_64.rpm

elasticsearch-7.9.2-x86_64.rpm

2020-11-21

process-exporter-0.7.5.linux-amd64.tar.gz

process-exporter-0.7.5.linux-amd64.tar.gz

2020-11-21

grafana-7.3.3-1.x86_64.rpm

grafana-7.3.3-1.x86_64.rpm

2020-11-21

grafana-7.3.2-1.x86_64.rpm

grafana-7.3.2-1.x86_64.rpm

2020-11-21

etcd-v3.4.13-linux-amd64.tar.gz

etcd-v3.4.13-linux-amd64.tar.gz

2020-11-21

etcdkeeper-v0.7.6-linux_x86_64.zip

etcdkeeper-v0.7.6-linux_x86_64.zip

2020-11-21

apache-tomcat-9.0.40.tar.gz

apache-tomcat-9.0.40.tar.gz

2020-11-21

Tomcat-8.5.60

Tomcat-8.5.60

2020-11-21

default-config.yaml

default-config.yaml

2020-09-08

get-docker.sh

此docker安装脚本为官方提供的,可以从网上下载,此处直接上传。安装docker客户端,get-docker.sh

2020-08-08

空空如也

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

TA关注的人

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