自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(152)
  • 资源 (2)
  • 收藏
  • 关注

原创 openstack rocky版详细搭建

openstack R版搭建文章目录openstack R版搭建作者:40kuai博客:http://www.cnblogs.com/40kuai/个人博客 :http://www.heleicool.cn/有疑问可以加本人QQ:948793841实验环境环境设置安装openstack包数据库安装安装消息队列目前为止端口信息如下开始安装openstack服务keystone服务安装安装配置key...

2018-10-30 16:09:00 15331 19

原创 Python 入门的前十八节课

Python 基础课程 Python【第一课】 Python简介和基础 Python【第二课】 字符串,列表,字典,集合,文件操作 Python【第三课】 函数基础 Python【第四课】 模块 and 包 Python【第四课】 装饰器 Python【第五课】迭代器,生成器,数据序列化 Python【第五课】常用模块学习(待完善) Python【第六课】面向对象...

2017-02-21 09:39:00 336

原创 Linux系统磁盘动态扩容

在日常使用ECS中,时常会遇到有状态服务随着运行时间越来越长,导致数据日积月累越来越多, 磁盘空间也随之紧张,这种情况下对于磁盘容量的动态扩容就显得尤为重要了,尤其来有状态服务运行的情况下。所以当磁盘分区方案为MBR,且磁盘大小需要升级到2TB以上时,就需要先对分区格式进行切换后,对磁盘大小进行无损扩容。使用growpart和resize2fs工具完成Linux系统盘分区扩容及文件系统扩展的操作指导。MBR分区方案支持2TB或更小的磁盘,当磁盘容量超过2T就需要切换为GPT分区表来支持。

2024-03-22 15:10:20 174

原创 ElasticSearch容器化从0到1实践(三)

上一节说到了ECK落地的26个关键问题,这一节将对这26个关键点的实施进行详细的说明,并给出符合业务的合理建议。另外如果你认真看了上一节提到的26个关键问题,并且也对这些关键点表示认同的话,本节一定要细细品鉴,我自认为可以让你收获巨大。

2023-11-03 16:23:49 217

原创 Chaos Mesh网络延迟原理探索

到这里可以发现Chaos Mesh通过 iptables + tc的方式, 对流量进行拦截后处理。实现网络故障的目录, 其他网络类型故障也是基于该原理实现。参考文档:故障注入源码:https://github.com/chaos-mesh/chaos-mesh/blob/master/pkg/chaosdaemon/tc_server.go#L112。

2023-10-19 17:20:03 242

原创 ElasticSearch容器化从0到1实践(问题汇总)

Elasticsearch容器化过程中遇到的一些坑。

2023-10-19 17:17:56 409

原创 ElasticSearch容器化从0到1实践(二)

上一节说明了容器化的背景及各组件版本的依赖关系,大体了解了Elsticsearch容器化的方案,这一节就开始对基础环境进行部署,以及需要注意的关键点。

2023-10-12 10:59:38 189

原创 ElasticSearch容器化从0到1实践(一)

Kubernetes Operator 是一种特定的应用控制器,通过 CRD(Custom Resource Definitions,自定义资源定义)扩展 Kubernetes API 的功能,可以用它来创建、配置和管理特定的有状态应用,而不需要直接去使用 Kubernetes 中最原始的一些资源对象。

2023-10-11 17:42:36 159

原创 Chaos Mesh网络延迟故障注入原理探索

Chaos Mesh通过 iptables + tc的方式, 对流量进行拦截后处理。实现网络故障的目录, 其他网络类型故障也是基于该原理实现。

2023-08-08 16:18:38 258

原创 java程序负载异常排查思路

java程序负载异常通用排查思路

2023-01-04 17:36:14 170

原创 flannel

wu

2022-08-19 09:05:40 109

原创 Calico 网络通信原理揭秘

Calico 是一个纯三层的数据中心网络方案,而且无缝集成像 OpenStack 这种 Iaas 云架构,能够提供可控的 VM、容器、裸机之间的 IP 通信。为什么说它是纯三层呢?因为所有的数据包都是通过路由的形式找到对应的主机和容器的,然后通过 BGP 协议来将所有路由同步到所有的机器或数据中心,从而完成整个网络的互联。简单来说,Calico 在主机上创建了一堆的 veth pair,其中一端在主机上,另一端在容器的网络命名空间里,然后在容器和主机中分别设置几条路由,来完成网络的互联。Calico

2022-07-26 11:41:05 627

原创 proemthues 服务发现配置

apiVersion: monitoring.coreos.com/v1kind: ServiceMonitormetadata: labels: chart: ack-prometheus-operator-5.7.0 heritage: Tiller name: jvm-export release: ack-prometheus-operator name: jvm-export namespace: sh-app-globalspec: endp

2022-07-26 11:39:59 212

原创 k8s集群监控维度

关于 CPU 的 limit 合理性指标。查出最近5分钟,超过25%的 CPU 执行周期受到限制的容器。表达式:sum(increase(container_cpu_cfs_throttled_periods_total{container!="", }[5m])) by (container, pod, namespace) / sum(increase(container_cpu_cfs_periods_total{}[5m])) by (container, pod, namespace) &g.

2022-07-26 11:38:03 591

原创 第一节 zadig 入门

最近看公众号,发现之前没有接触过的持续集成工具zadig,于是乎在自己的测试环境跑一边流程,检验下zadig的优劣势。Zadig 是 KodeRover 公司基于 Kubernetes 自主设计、研发的开源分布式持续交付 (Continuous Delivery) 产品,为开发者提供云原生运行环境,支持开发者本地联调、微服务并行构建和部署、集成测试等。Zadig 内置了面向 Kubernetes、Helm、云主机/物理机、大体量微服务等复杂业务场景的最佳实践,为工程师一键生成自动化工作流 (workflo

2022-07-26 11:36:59 1167

原创 python argo rollout api

class ArgoRollout(): def __init__(self, namespace, app_name, image_name, port=8080): self.k8s_api = client.ApiClient() self.app_name = app_name self.namespace = namespace self.image_name = image_name self.port =

2022-05-06 21:08:19 1284

转载 Linux系统启动引导流程

启动第一步--加载BIOS当你打开计算机电源,计算机会首先加载BIOS信息,这是因为BIOS中包含了CPU的相关信息、设备启动顺序信息、硬盘信息、内存信息、时钟信息、PnP特性等等。在此之后,计算机心里就有谱了,知道应该去读取哪个硬件设备了,而这一切都与操作系统无关。启动第二步--读取MBR众所周知,硬盘上第0磁道第一个扇区被称为MBR,也就是Master Boot Record,即主引导记录,它的大小是512字节,别看地方不大,可里面却存放了预启动信息、分区表信息。系统找到BIOS所指定的硬盘的

2021-08-31 11:56:21 1007

原创 open-falcon api

import jsonimport loggingimport requestsfrom urllib import parsefmt = "%(asctime)s - %(levelname)s - %(filename)s - %(module)s - %(funcName)s - %(lineno)d - %(message)s"logging.basicConfig(level=logging.INFO, format=fmt)FALCON_BASE_URL = "FALCON_BA

2021-08-31 11:54:42 202

原创 k8s LimitRange ResourceQuota 使用场景

默认情况下, Kubernetes 集群上的容器运行使用的计算资源没有限制。 使用资源配额,集群管理员可以以名字空间为单位,限制其资源的使用与创建。 在命名空间中,一个 Pod 或 Container 最多能够使用命名空间的资源配额所定义的 CPU 和内存用量。 有人担心,一个 Pod 或 Container 会垄断所有可用的资源。 LimitRange 是在命名空间内限制资源分配(给多个 Pod 或 Container)的策略对象。一个 LimitRange(限制范围) 对象提供的限制能够做到:在一

2021-08-12 21:01:55 221

原创 GPU驱动、cuda、cudnn版本依赖

CUDA工具包及其驱动版本CUDA ToolkitToolkit Driver VersionLinux x86_64 Driver VersionWindows x86_64 Driver VersionCUDA 11.4.0 GA>=470.42.01>=471.11CUDA 11.3.1 Update 1>=465.19.01>=465.89CUDA 11.3.0 GA>=465.19.01>=465.89

2021-07-08 21:08:00 488

原创 log-pilot日志收集到es7.x

使用log-pilot官方使用方式:https://help.aliyun.com/document_detail/86552.html问题默认阿里云仓库只支持7.x以下版本es的数据写入,使用如下插件可以实现。git地址:https://github.com/40kuai/log-pilot/tree/filebeat7.xdockerhub:heleicool/log-pilot:7.x-filebeat...

2021-05-31 20:49:59 1151

原创 zookeeper ui部署

github地址:https://github.com/DeemOpen/zkui

2021-05-17 14:37:22 131

原创 docker HEALTHCHECK

FROM harbor.soulapp-inc.cn/soul-ops/elasticsearch:6.4.3# -1: PID大于1的所有进程均接收信号。HEALTHCHECK --interval=5s --timeout=2s --retries=12 \ CMD curl --silent --fail localhost:9200/_cluster/health || bash -c 'kill -s 15 -1 && (sleep 10; kill -s 9 -1)'

2021-05-13 15:21:02 181

原创 Pycharm设置.py文件头部模板

在File—settings—Editor—File and Code Templates—Python script 脚本里添加:#!/usr/bin/env python#-*- coding:utf-8 -*-"""@File : ${NAME}.py@Time : ${DATE} ${TIME}@Author : 40kuai@Email : [email protected]@Software: ${PRODUCT_NAME}"""...

2021-05-10 15:06:30 104

原创 Kubernetes taints 配置

【代码】Kubernetes taints 配置。

2021-04-27 18:00:59 189

原创 jenkins 运行守护进程

如果您的构建想要让守护程序在后面运行…实现此目的的便捷方法是更改​​Jenkins的ProcessTreeKiller正在寻找的环境变量BUILD_ID。这将使Jenkins假定您的守护进程不是由Jenkins构建生成的。例如:BUILD_ID=dontKillMe /usr/apache/bin/httpd如果是Jenkins Pipeline,请使用JENKINS_NODE_COOKIE代替BUILD_ID...

2021-04-11 17:37:36 564

原创 kubernetes 节点负载均衡

kubernetes 节点负载均衡:https://github.com/kubernetes-sigs/descheduler

2021-03-17 20:32:19 360 2

转载 Calico 网络通信原理揭秘

Calico 是一个纯三层的数据中心网络方案,而且无缝集成像 OpenStack 这种 Iaas 云架构,能够提供可控的 VM、容器、裸机之间的 IP 通信。为什么说它是纯三层呢?因为所有的数据包都是通过路由的形式找到对应的主机和容器的,然后通过 BGP 协议来将所有路由同步到所有的机器或数据中心,从而完成整个网络的互联。简单来说,Calico 在主机上创建了一堆的 veth pair,其中一端在主机上,另一端在容器的网络命名空间里,然后在容器和主机中分别设置几条路由,来完成网络的互联。1. Cal

2021-03-10 18:31:34 676

原创 open-falcon-agent部署

目前监控同时使用了阿里云云监控(基础监控)、prometheus(应用监控),监控系统比较混乱,接入方式以及查询入口、报警配置及报警方式不统一,所以使用open-falcon来做统一。使用open-falcon对比prometheus主要是考虑一下几个方面:open-falcon相较prometheus方式有更好的性能。open-falcon各个组件基本都是实现很好的横向扩展。open-falcon对比prometheus可以通过hostgroup和template更好的管理应用、host、报警规

2021-03-03 17:48:02 404 1

原创 open-falcon judge扩容

背景说明judge用于判断的相关数据保存在内存中,由transfer通过调用 RPC Send方法上传得到。LinkedList.go中的PushFrontAndMaintain方法的实现决定了不能通过手工调用 Send 方法上传过往数据点来补齐历史数据。另外 open-falcon 本身是 push 模型,即 agent 将数据点 push 到 transfer,然后 transfer 将数据点 push 到 judge 里,这种设计决定了 judge 重启后,是无法像 pull 模型一样重新加载历史

2021-03-02 15:39:44 132

原创 open-falcon graph扩容、缩容

方案原理从修改Transfer开始,流量会按新的哈希规则进入到原始集群和扩容集群;此时扩容集群发现,migrate开关是打开状态;于是,扩容集群接收到流量之后,并没有很着急的去落盘,而是先按照旧的哈希规则从原始集群拉取历史数据(本质上就是一个rrd文件),拉取成功则将整个rrd文件写入本地,若拉取超时(默认1s),则将此次接收到的数据发送给旧的集群,下一个周期会再次重复此过程。同样的,Query的查询,也是按照新的哈希规则。当查询的流量到达扩容集群,如果Graph发现,本地已有RRD文件,则直接查询返回

2021-02-23 16:49:08 288

原创 手动部署kubernetes集群(未完)

文章目录kubernetes简介kubernetes 部署准备Binaries 文件准备环境说明节点信息环境要求内核升级时间同步内核参数配置集群部署kubelet服务部署为了了解k8s相关组成及运行原理,通过手动部署集群方式描述k8s相关细节kubernetes简介他是全新的基于容器技术的分布式架构领先方案(一般也称为容器编排工具),基于容器技术,目的是实现资源管理的自动化,以及跨多个数据中心的资源利用率的最大化。Kubemetes 是一个完备的分布式系统支撑平台。Kubemetes 具有完备的集

2021-02-18 11:55:43 169

原创 etc web管理界面部署

etc v3 uietcdkeeper页面友好,功能齐全,支持v3.wget https://github.com/evildecay/etcdkeeper/releases/download/v0.7.6/etcdkeeper-v0.7.6-linux_x86_64.zipunzip etcdkeeper-v0.7.6-linux_x86_64.zipcd etcdkeeperchmod +x etcdkeeper./etcdkeeper -cacert /etc/kubernetes/pk

2021-02-07 10:31:06 436

原创 kubeadm快速部署k8s集群

# 配置关闭selinuxsetenforce 0sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config# 配置内核参数cat <<EOF > /etc/sysctl.d/k8s.confnet.bridge.bridge-nf-call-ip6tables = 1net.bridge.bridge-nf-call-iptables = 1EOFsysctl --system# 配置k

2021-02-05 20:38:39 141

原创 kubeadm部署k8s集群问题汇总

集群部署过程中未使用负载的apiserver地址背景在使用kubeadm进行集群初始化过程中,本应该使用域名地址(域名方式负载多个apiserver服务),但是使用了单个节点的IP。使得后期该节点当即后,集群异常。处理办法首先集群使用上暂时没有问题(不严谨),但是kubectl服务无法连接管理集群,以及kubelet无法调度pod部署。由于证书文件是共享的,所以只需要修改kubectl配置文件中apiserver的地址即可通过kubectl服务连接管理集群。# 修改 $HOME/.kube/co

2021-02-04 22:05:00 515

原创 kubernetes pod启动问题排查流程

查看集群状态#主要确认集群是否有异常, 查看节点状态是否为Readykubectl get node# 查看节点资源使用情况,如果有节点的资源使用率获取不到一般是因为收集kubectl top node定位异常pod# 过滤当前集群所有异常podkubectl get pod -A -o wide | grep -v Running# 查看异常pod event 信息,根据展示的event信息定位问题kubectl describe pod terway-b4mgn -n kube-sy

2021-01-29 20:57:41 466

原创 etcd管理平台部署

git clone https://github.com/henszey/etcd-browser.gitexport AUTH_USER=rootexport AUTH_PASS=123export ETCD_HOST=<ECTD_HOST>export ETCD_PORT=12379export SERVER_PORT=8000export ETCDCTL_CA_FILE=/etc/etcd/pki/ca.pemexport ETCDCTL_KEY_FILE=/etc/etc

2021-01-21 10:59:18 413

原创 etcd集群部署

文章目录ectd介绍证书配置新建ETCD CA证书配置文件ca-config.json新建ETCD CA证书凭证签发配置文件ca-csr.json生成CA证书和私钥生成服务器证书etcd服务配置启动服务ectd介绍正式的ectd端口是 2379 用于客户端连接,而 2380 用于伙伴通讯。etcd 端口可以设置为接受 TLS 通讯,non-TLS 通讯,或者同时有 TLS 和 non-TLS 通讯。启动etcd集群有三种机制:静态(我们使用这种方式部署)etcd 发现DNS 发现证书配置

2021-01-21 10:57:53 410 1

原创 kubernetes node节点下线流程

kubernetes集群节点分为两种类型,master和node。而node节点又可以根据角色的不同进行划分为服务节点和ingress边缘节点等。在实际使用中,master节点一般不会进行频繁的操作,一般都是对node节点进行扩容或下线操作。node节点下线操作流程如下:node节点配置pod不可调度到该节点上。node节点上的服务驱逐。node节点下线。首先,为了避免在驱逐该节点上的pod资源重复调度到该节点,对需要下线的节点配置不可调度。# 配置节点不可调度kubectl cordo

2021-01-04 18:24:08 3049 1

原创 kubectl批量获取template配置参数

通过kubectl命令批量获取pod参数配置情况kubectl get pod -n soul-tech-platformarch \-o go-template \--template='{{range .items}}{{range .spec.containers}}{{printf "%s\n" .resources}}{{end}}{{end}}'

2020-11-20 17:25:51 760

x-pack-core-6.4.3.jar 破解 下载

x-pack-core-6.4.3.jar 破解文件,下载替换后可以直接使用。 需要替换的文件由于安装方式可能会不同, 一般在/usr/share/elasticsearch/modules/x-pack-core/下。

2018-12-02

java 聊天室

雏形,做的不太好 大家见谅,第一次

2013-11-18

空空如也

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

TA关注的人

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