- 博客(65)
- 资源 (2)
- 收藏
- 关注
原创 DevOps系统设计和技术选型
上图列出了我主要使用的东西,并不是全部,前端web开发采用低代码平台和简单的UI库,API服务则采用Python开发,使用Flask框架,一些后台服务则采用Go和Python来开发,哪个合适哪个来,系统运行日志采集用Grafana Loki + Promtail,早期用ELK,系统指标采集用Promethus, Grafana用来简单看看,目前并不是主要的web系统,要做一个满足自己喜好的web界面功能,还得自己动手来。新系统的目标是什么,这个要搞清楚,不能为了开发而开发,运维而运维。
2024-12-06 22:27:36
720
原创 云原生之API网关Traefik
Traefik是一个采用Go语言开发的高性能、易用的微服务API网关,支持多种后端服务,如Docker、Kubernetes等,它有4个主要组件EntryPoints、Routers、Middlewares和Services, 提供路由、服务发现、负载均衡和大量好用的中间件功能。
2024-02-21 09:02:52
1847
原创 云原生之容器管理工具Portainer
Portainer是一款开源的容器管理工具系统,通过提供一个直观的Web界面,帮助我们轻松地创建、管理和维护容器,同时也提供实用工具供我们自动化操作使用,还提供API接口供我们进行二次开发管理。
2024-02-19 08:22:18
1876
原创 云原生之Docker镜像仓库
Docker镜像仓库是Docker镜像文件集中存储和管理的系统,我们发布的镜像文件可以很方便地push进镜像仓库,而容器集群任何节点都可以很方便地pull镜像仓库里的镜像文件下来进行部署。如果你的系统环境很小很简单,使用Docker registry就足够了,不然则使用Harbor吧。
2024-02-16 18:47:05
1292
原创 不关电脑不仅仅是因为懒
程序员为什么不喜欢关电脑?不管用台式机,还是笔记本,总有一批程序员下班后从不关闭电脑,台式机按掉屏幕电源,笔记本直接合上休眠就是了。这种现象说明这些程序员懒吗?还是有其它原因?从我自身的角度分析一下。
2024-02-15 11:25:45
394
原创 云原生之容器编排-Docker Swarm
Docker Swarm 是 Docker 官方推出的容器编排工具,不同于Docker Compose 是一个在单个服务器或主机上创建多个容器的工具,Docker Swarm 是在多个服务器或主机上创建容器集群服务,对于微服务的部署,自然Docker Swarm 才是解决之道。
2024-02-15 06:06:03
1609
原创 云原生之基石-Docker Compose
Docker Compose是一个定义和运行多容器应用程序的工具,用一个YAML配置文件来管理服务的一切,对系统部署按工程、服务、容器进行管理,让我们很方便地对一批服务进行高效地部署和管理。
2024-02-13 10:16:54
1463
1
原创 Hadoop伪分布式集群安装
平时我们学习Hadoop技术时,可不一直沉溺于理论学习,一定要理论和实践相结合,所以就必须有一个Hadoop环境,我们能在这个Hadoop环境里进行各种操作,来验证我们在书本上学到的知识。最小的环境,至少要具有一台Linux服务器吧,部署一个最简单的单节点环境,我们可以来部署一个伪分布式集群。
2023-12-18 21:49:26
652
原创 采用xlrd和openpyxl库读取excel文件
当前的高版本库,xlrd只支持xls格式文件,而openpyxl则支持xlsx文件,于是做了一个兼容,程序支持两种格式的excel文件读取
2023-12-17 11:25:23
183
原创 Python运维监控系统之架构设计
DataOps系统是侧重于指标数据要多要强大,而使用的技术越简单越好,希望能用Python全部解决,不需要用Go、Java、C/C++等比较难的语言来实现。DataOps也需要和Promethues、Loki、ELK对接,那些现成的基础通用的数据指标采集,用这些开源组件实现就好了,比如CPU、内存、磁盘和网络等,没必要自己用Python写一通,我们写各种beat主要是针对业务系统指标,对业务数据进行统计分析采集,业务数据监控其实比基础资源数据更重要。
2023-11-19 19:32:19
294
原创 大数据笔记-大数据处理流程
3)数据清洗和预处理:收集到的数据可能包含噪声、缺失值和异常值,在入库之前,需要对数据进行清洗和预处理,以确保数据的质量和准确性。前端采集设备常常以最小数据字段集来传输数据包,特别是采取无线网络传输的,尽量让数据包小一些,当数据到了数据网关之后,可能我们会补齐一些字段,比如从设备ID映射出设备所在地址、区域、厂商等等,这些字段补齐之后去入库,方便之后数据查询分析。同时,还需要遵守相关的法律法规,保护用户的隐私权益。数据采集面对的数据类型是多种多样的,有文本数据、结构化数据、图片数据、语音数据、视频数据等。
2023-10-12 01:49:14
1178
1
原创 闲话Python编程-字典dict
字典dict是一个映射的类型, 它也是一个容器,容器里面是一个个key和value的映射对象,比如:{100: 'aaaa', 200: 'bbb'} 或者 {'Tom': 20, 'Jack': 21}。字典dict的key需要是一个可Hashable的对象,这需要去了解Hash是什么:Hash,一般翻译做散列、杂凑,或音译为哈希,是把任意长度的输入通过散列算法变换成固定长度的输出,该输出就是散列值。
2023-10-03 18:17:38
198
原创 闲话Python编程-循环
continue语句让执行流程直接跳到for循环下一步,break语句直接从for循环终止,而else比较有意思,是当for循环不是break终止而结束的,则流程会执行到else代码块。Python循环控制语法提供了for和while,基本和C/C++/Java差不多,但是细节上有区别,比如for循环对序列对象进行迭代,for循环支持else,这个是特有的。其它语言是没有for-else的,要实现这个else非得加一个布尔变量来判断,Python搞了一点语法糖,让开发人员稍微方便了一点。
2023-10-01 09:05:40
167
原创 闲话Python编程-数组
大学数学有一门基础课叫线性代数,其中有一个基础知识点就是:矩阵。最简单理解就是一堆有关联的数值,我们可以对其进行某种运算,如加减乘除等。高中数学有数列这个知识点,就是按照一定次序排序的一列数;还有排列和组合,都是讲一堆数,怎么去发现其关联关系,怎么对它施加各种运算。计算机既然来源于数学,解决数学中一些计算问题,对上面讲的知识点也就有一个解决的知识点,那就是数组。C,C++,Java等语言里是直接有数组这个数据结构的,而且是语言直接原生支持。
2023-09-30 16:11:12
121
原创 闲话Python编程-if选择
、is、is not,前面6个和数学中理解一样的,最后两个是Python特有的,其它语法就不支持,如C/C++/Java就没有这2个。这些知识点都不难,编程是一个随时可以验证的活动,当你对某个知识点没有把握的时候,你应该快速写一个小单元测试来验证的自己的想法,把一个个小知识点稳固起来。x and y: x和y都为True的时候为True,否认为False, 也就是只要其中一个为False。x or y: x和y都为False的时候为False, 否则为True, 也就是只要其中一个为True。
2023-09-29 20:08:12
192
原创 闲话Python编程-字符串
计算机首先是欧美人发明的,他们就是怎么干的,到底字母A用多少数字表达,需要一个统一的标准,美国人就搞了一个标准:ASCII (American Standard Code for Information Interchange):美国信息交换标准代码,所以英文中的字母、数字和符号的表达和存储问题就解决了。后来计算机推广到其它国家,碰到了不同语言文字,比如中文、日文、韩文等等,ASCII就不够用了,于是各种编码标准就诞生了:GB2312、Unicode、UTF-8、UTF-16、UTF-32等。
2023-09-28 01:46:26
98
VIM常用命令集锦
2014-04-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人