frankcqy_coding
码龄9年
关注
提问 私信
  • 博客:152,835
    社区:780
    问答:2,045
    155,660
    总访问量
  • 38
    原创
  • 237,990
    排名
  • 92
    粉丝
  • 0
    铁粉
  • 学习成就

个人简介:SRE / AI-sys / 云计算 / 云网络 / 云原生 / 虚拟化

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 目前就职: 百度
  • 加入CSDN时间: 2015-08-27
博客简介:

7B_Geek的博客

博客描述:
搬砖极客
查看详细资料
  • 原力等级
    成就
    当前等级
    2
    当前总分
    177
    当月
    0
个人成就
  • 获得114次点赞
  • 内容获得21次评论
  • 获得354次收藏
  • 代码片获得562次分享
创作历程
  • 3篇
    2024年
  • 15篇
    2023年
  • 2篇
    2020年
  • 9篇
    2019年
  • 13篇
    2018年
  • 1篇
    2015年
成就勋章
TA的专栏
  • Devops
    4篇
  • Linux内核
    2篇
  • Python
    3篇
  • 数据库
    5篇
  • 虚拟化
    4篇
  • 云原生
    11篇
  • 自动化运维
    2篇
兴趣领域 设置
  • 运维
    容器jenkinsdevops自动化kubernetes系统架构网络运维开发graylogelk
  • 网络空间安全
    安全
  • 服务器
    linuxcentos
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

344人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

GPU架构历史回顾

1999 年,英伟达发明了 GPU(graphics processing unit),本节将介绍英伟达 GPU 从 Fermi 到 Blackwell 共 9 代架构,时间跨度从 2010 年至 2024 年,具体包括费米(Feimi)、开普勒(Kepler)、麦克斯韦(Maxwell)、帕斯卡(Pashcal)、伏特(Volt)、图灵(Turing)、安培(Ampere)和赫柏(Hopper)和布莱克韦尔(Blackwell)架构。
转载
发布博客 2024.09.27 ·
621 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Kubernetes Operator开发实践

打开源文件,需要我们根据我们的需求去自定义结构体 AppServiceSpec,我们最上面预定义的资源清单中就有 replicas、image、ports 这些属性,所有我们需要用到的属性都需要在这个结构体中进行定义:代码中会涉及到一些包名的导入,由于包名较多,所以我们会使用一些别名进行区分,主要的包含下面几个:import (这里的 resources、envs、ports 的定义都是直接引用的。
原创
发布博客 2024.03.07 ·
821 阅读 ·
22 点赞 ·
0 评论 ·
26 收藏

Operator开发

如上,展示的是 kube-builder 的内部原理,包含了 kube-builder 以及 infomer 机制的部分代码,可以明显的看到,这里存在一个事件队列,一旦存在事件队列就意味着缓存已经产生,我们每次处理的都是当前能看到的资源状态,并非真实的状态,因为有可能还有其他的事件在后面排队等待处理。但是经常我们又需要多个控制器协同作业,那么,暴露的越少越好。同样,还是k8s的资源变更机制导致,可能会导致重复的推送某一个资源的变更到reconciler,如果处理逻辑或者接口不幂等,那么处理一定是有问题的。
原创
发布博客 2024.03.06 ·
1095 阅读 ·
20 点赞 ·
0 评论 ·
11 收藏

k8s搭建EFK日志系统

前面大家介绍了 Kubernetes 集群中的几种日志收集方案,Kubernetes 中比较流行的日志收集解决方案是 Elasticsearch、Fluentd 和 Kibana(EFK)技术栈,也是官方现在比较推荐的一种方案。是一个实时的、分布式的可扩展的搜索引擎,允许进行全文、结构化搜索,它通常用于索引和搜索大量日志数据,也可用于搜索许多不同类型的文档。Elasticsearch 通常与Kibana。
原创
发布博客 2023.09.30 ·
2139 阅读 ·
1 点赞 ·
0 评论 ·
4 收藏

基于Zookeeper搭建Kafka高可用集群(实践可用)

这里解释一下 kafka 安装包的命名规则:以 kafka_2.12-2.2.0.tgz 为例,前面的 2.12 代表 Scala 的版本号(Kafka 采用 Scala 语言进行开发),后面的 2.2.0 则代表 Kafka 的版本号。这里需要说明的是 log.dirs 指的是数据日志的存储位置,确切的说,就是分区数据的存储位置,而不是程序运行日志的位置。拷贝三份 zookeeper 安装包。为保证集群高可用,Zookeeper 集群的节点数最好是奇数,最少有三个节点,所以这里搭建一个三个节点的集群。
原创
发布博客 2023.09.06 ·
810 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Kafka详解

Apache Kafka 是一个分布式发布 - 订阅消息系统和一个强大的队列,可以处理大量的数据,并使你能够将消息从一个端点传递到另一个端点。Kafka 适合离线和在线消息消费。Kafka 消息保留在磁盘上,并在群集内复制以防止数据丢失。Kafka 构建在 ZooKeeper 同步服务之上。它与 Apache Storm 和 Spark 非常好地集成,用于实时流式数据分析。Kafka 是一个分布式消息队列,具有高性能、持久化、多副本备份、横向扩展能力。
原创
发布博客 2023.09.06 ·
1146 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

ETCD集群搭建(实践可用)

概述etcd 是兼具一致性和高可用性的键值数据库,可以作为保存 Kubernetes 所有集群数据的后台数据库。- 官方网址:准备cfssl证书生成工具cfssl是一个开源的证书管理工具,使用json文件生成证书.在任意一台服务器上操作,这里选择k8s01创建etcd相关目录创建证书。
原创
发布博客 2023.09.06 ·
624 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

ETCD详解

首先,Raft是一种“算法”;其次,Raft 是一种为了管理“复制日志”算法;最后,Raft 是一种为了管理复制日志“一致性”算法。那么问题来了,什么是一致性?一致性是分布式系统容错的基本问题。一组机器像一个整体一样工作,即使其中小半部分机器(不大于N/2)出现故障也能够继续工作下去, 一旦他们就状态做出决定,该决定就是最终决定。例如,即使2台服务器发生故障,5台服务器的集群也可以继续运行。如果更多服务器失败,它们将停止进展(但永远不会返回错误的结果)
原创
发布博客 2023.09.06 ·
4588 阅读 ·
2 点赞 ·
0 评论 ·
30 收藏

ELK集群搭建流程(实践可用)

ELK 是一个由三个开源软件工具组成的数据处理和可视化平台,包括 Elasticsearch、Logstash 和 Kibana。这些工具都是由 Elastic 公司创建和维护的。Elasticsearch 是一个分布式的搜索和分析引擎,可以将大量数据存储在一个或多个节点上,支持实时搜索、分析和聚合,提供高性能的全文搜索、复杂查询和分析能力。Logstash 是一个数据采集和处理工具,可以将来自各种数据源的日志数据收集、转换、过滤和存储到 Elasticsearch 中,从而实现对数据的集中管理和分析。
原创
发布博客 2023.09.06 ·
1090 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

ElasticSearch详解

在 flush 过程中,内存中的缓冲将被清除,内容被写入一个新的 Segment,Segment 的 fsync 将创建一个新的提交点( Commit Point),并将内容刷新到磁盘,旧的translog将被删除并开始一个新的translog,flush 触发的时机是定时触发(默认30分钟)或者 translog 变得太大(默认512M)时。取决于你的文档的大小,分片的数量和你使用的硬件,给 10,000 到 50,000 的结果文档深分页( 1,000 到 5,000 页)是完全可行的。
原创
发布博客 2023.09.06 ·
14311 阅读 ·
23 点赞 ·
0 评论 ·
130 收藏

Kubernetes 集群部署

部署kubernetes集群,使用containerd作为runtime
原创
发布博客 2023.07.12 ·
137 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Raft协议

当前业界有很多分布式一致性复制协议,比如Paxos,Zab,Viewstamped Replication等,其中Lamport提出的Paxos被认为是分布式一致性复制协议的根本,其他的一致性复制协议都是其变种。但是Paxos论文中只给出了单个提案的过程,并没有给出复制状态机中需要的MultiPaxos的相关细节描述。Zab协议被应用在Zookeeper中,业界使用广泛,但是没有抽象成通用library。Viewstamped Replication虽然出来的比较早,但是一直没有流行起来,也没有几个实现。
原创
发布博客 2023.05.17 ·
150 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Ceph技术

Ceph是在2006年由Sage Weil作为博士论文中的项目开发的,随着近些年OpenStack将其作为默认的块存储后端,逐渐流行起来并称为开源社区中的明星项目。Ceph是一个统一的存储系统,既支持传统的块存储和文件存储协议,也支持新兴的对象存储协议,这使得Ceph能够满足当下绝大部分的存储场景需求。
原创
发布博客 2023.05.15 ·
354 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux内核参数调优

每个系列,不同版本的内核可调节的参数可能略有不同,主流的3.10的内核可调节的内核参数多达2500个。其中kernel的调节参数占大头73%(~1800),接着就是网络21%(~550),vm和file各有50左右。下面的参数总结我们针对不同的参数类型,用不同的颜色进行标注。配置项目颜色标注描述蓝色百度内部内核暴露出的独有参数粉色需要重点关注的参数设置由于可调节的内核参数过多,大部分可能我们现阶段可能用不到,所以,我们只总结当前可能用到的参数。
原创
发布博客 2023.05.10 ·
190 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

如何快速定位程序core

当我们打开core文件时,首先关注的就是程序崩溃时的函数调用栈状态,为了方便理解后续定位core的一些技巧,首先简单介绍一下函数栈。目前生产环境都为64位机,这里只介绍64位机的寄存器,如下:对于x86-64架构,共有16个64位寄存器,每个寄存器的用途并不单一,如%rax通常保存函数返回结果,但也应用于imul和idiv指令。这里我们重点关注%rsp(栈顶指针寄存器)、%rbp(栈底指针寄存器)、%rdi、%rsi、%rdx、%rcx、%r8、%r9(分别对应第1~6函数参数)。
原创
发布博客 2023.05.10 ·
173 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

VirtIO

Linux 作为 Guest OS 已经被多个虚拟化系统支持,比如Xen、KVM、VMWare、Lguest等。为了提升虚拟化的性能,CPU和内存的虚拟化已经从全虚拟化发展到使用VT-x、EPT等硬件辅助虚拟化技术,但是IO外设的虚拟化进展并不快,目前业界使用Guest有感的半虚拟化技术。但是每一个虚拟化平台都想要有自己的半虚拟化网络、块设备、console 驱动程序,这些驱动程序大都功能重复且很多没有很好的优化,这带来了较大的维护代价。
原创
发布博客 2023.05.10 ·
364 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

KVM虚拟化

虚拟化是提供虚拟机的技术,非常有必要在讨论虚拟化技术之前对x86体系架构进行一些简单的回顾。当前计算机的体系机构与1945年提出的冯诺依曼结构并没有太大的变化,主要包含三个部分:中央处理器单元CPU:主要负责运算和逻辑控制,按照程序中的指令进行计算,根据程序指令进行跳转或者是顺序执行存储器Memory:负责存储程序的指令和数据,来保存程序执行的中间结果和最终结果。现代计算机中通常包括寄存器、CPU缓存、内存等。输入输出IO:负责与外部交互,从外部获得输入,并将结果进行输出。
原创
发布博客 2023.04.28 ·
77 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

kubernetes容器网络-全面详解

Kubernetes最初源于谷歌内部的Borg,提供了面向应用的容器集群部署和管理系统。Kubernetes 具备完善的集群管理能力,包括多层次的安全防护和准入机制、多租户应用支撑能力、透明的服务注册和服务发现机制、内建负载均衡器、故障发现和自我修复能力、服务滚动升级和在线扩容、可扩展的资源自动调度机制、多粒度的资源配额管理能力。Kubernetes 还提供完善的管理工具,涵盖开发、部署测试、运维监控等各个环节。
原创
发布博客 2023.04.24 ·
855 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

CPU虚拟化技术

基本概念:物理CPU数量:实际服务器插槽上的CPU个数; 核:一块CPU上面能处理数据的芯片组的数量; 超线程:在一个实体芯片组中提供两个逻辑线程; 逻辑CPU数量:物理CPU数量*核*超线程(若支持超线程,该值为2); vCPU:虚机分配的CPU,一个服务器或集群可分配的vCPU数量为为 (逻辑CPU数量 - (控制台需要的逻辑cpu数量))× 虚拟化比例因子(考虑过载,预估为1.2~1.5)1. 为什么需要 CPU 虚拟化X86 操作系统是设计在直接运行在裸硬件设备上的,因此它们自动
原创
发布博客 2020.11.06 ·
3935 阅读 ·
5 点赞 ·
0 评论 ·
10 收藏

Python多线程抓取网页图片地址

import requestsfrom lxml import etreeimport randomimport threadingfrom time import sleepfrom queue import Queueclass ImageSpider(): def __init__(self): self.urls = 'http://www.xxxx/{}' self.detail = 'http://www.xxx.com/xxx/{...
原创
发布博客 2020.11.03 ·
1212 阅读 ·
0 点赞 ·
2 评论 ·
5 收藏
加载更多