- 博客(130)
- 收藏
- 关注
原创 Python-Flask:编写自动化连接demo脚本:v1.0.0
弄个公共的nfs,平常一些脚本和包会放到这个nfs里,脚本或包自动从nfs里拉,然后执行脚本,即可部署,包括多机部署。目前只是远程连接+文件上传,后续会继续优化。
2023-10-01 00:42:38 1770
原创 vue-element-admin踩坑合集+完整包(项目源码 +依赖)
在部署安装使用vue-element-admin开源项目的时候,会遇到各种各样的问题。这里是本人遇到的一些坑。。。。。。
2023-05-06 10:38:30 1763
原创 Seaweedfs部署
大体步骤是这样,seaweedfs起码是要一主两从的结构,这里我部署在一台服务器中改变了端口,实际在面对对存储要求很高的场景中,需要多机部署,但是实际上只需要更改volume中的masterIP的地址就可以了。seaweedfs手动启动。
2023-04-03 10:06:23 391
原创 Python:使用xlrd过滤execl表中数据
的新版本2.0.1版本移除了对.xlsx格式的支持,只支持.xls格式。解决方法:将xlrd版本回退到1.2.0版本,使用旧版本支持.xlsx格式。2.1、python读取excel中单元格的内容返回的有5种类型。然后我们就可以开始愉快的写代码了。这有一张表,我们要取F列。
2023-01-20 11:07:06 1801
原创 K8S 三种探针ReadinessProbe、LivenessProbe和StartupProbe 之探索
K8S提供了三种探针通过对三种探针的探索,我们能够得到一句话的总结:理解底层结构,能够最大程度在可用性、安全性,持续性等方面让 Pod 达到最佳工作状态。凡事没有“银弹”,尤其对重要的业务需要一个案例一个解决方案,希望这次的分析能提供给大家开启一个思路之门。
2023-01-17 15:06:16 1625
原创 分析解释selenium:DeprecationWarning: executable_path has been deprecated, please pass in 和打开浏览器闪退问题
我们在解决chrom版本和驱动版本的问题后(这是因为在之前版本executable_path是我们Selenium驱动的存放路径,只有使用executable_path指定出该路径,Selenium才能正常工作,但是Selenium经过版本更新之后,在使用如上写法时,系统就会报错executable_path has been deprecated, please pass in a Service object,如下所示:所有我们需要添加一个模块并修改一下代码。
2022-12-28 05:31:43 15330 7
原创 Python:对文件的操作
通过文件操作,我们可以将字符写入到一个本地文件,但是,如果是一个对象(例如列表,字典,元组等),就无法直接写入到一个文件里,需要对这个对象进行序列化,然后才能写入到文件里。就会显示出里面的内容,需要注意的是read是按字符,readline是按行来读,效率更高,但是只能读一行,readlines可以读多行,但是是以列表的形式去返回值,需要注意。设计一套协议,按照某种规则,把内存中的数据转化为字节序列,保存到文件,这就是序列化,反之,从文件的字符序列回复到内存中,就是反序列化。这里我读取桌面的一个脚本文件。
2022-12-18 23:55:37 1226
原创 [云原生k8s] k8s之持久化存储PV、PVC
查看PV的定义方式FIELDS:metadata: #由于 PV 是集群级别的资源,即 PV 可以跨 namespace 使用,所以 PV 的 metadata 中不用配置 namespacename:spec查看PV定义的规格spec:nfs:(定义存储类型)path:(定义挂载卷路径)server:(定义服务器名称)accessModes:(定义访问模型,有以下三种访问模型,以列表的方式存在,也就是说可以定义多个访问模式)
2022-11-09 22:51:52 1779
原创 [云原生k8s] k8s资源限制以及探针检查
健康检查又称为探针(Probe),是由kubelet对容器执行的定期诊断。2.2、探针的三种规则以上三种规则可同时定义。在readinessProbe检测成功之前,Pod的running状态是不会变成ready状态的。探针分为3种livenessProbe(存活探针)∶判断容器是否正常运行,如果失败则杀掉容器(不是pod),再根据重启策略是否重启容器。
2022-11-07 17:31:30 1773
原创 [云原生k8s] Pod基础概念
Pod也是最小化运行容器化应用的资源对象。。kubernetes中其他大多数组件都是围绕着Pod来进行支撑和扩展Pod功能的,例如用于管理Pod运行的StatefuSet和Deployment等控制器对象,用于暴露Pod应用的Service和Ingress对象,为Pod提供存储的PersistenVolume存储资源对象等。
2022-11-05 17:36:21 1114
原创 [云原生K8S] Yaml文件详解
表示试运行,不真正执行命令(测试命令是否正确),即并不会真的创建出 pod 和 deployment 实例,去掉该参数后即可真正执行命令。kubernetes支持YAML和JSON文件格式管理资源对象。
2022-11-05 01:25:15 873
原创 [云原生K8S] k8s亲和、反亲和、污点、容忍
设置了污点的Node将根据taint的effect:NoSchedule、PreferNoSchedule、NoExecute和Pod之间产生互斥的关系,Pod将在一定程度上不会被Node上,但我们可以在Pod上设置容忍(Toleration),意思是。使用kubectl taint命令可以给某个Node节点设置污点,Node被设置上污点之后就和Pod之间存在了一种相斥的关系,可以让Node拒绝Pod的调度执行,甚至将Node已经存在的Pod驱逐出去。
2022-11-04 17:40:49 894
原创 [云原生k8s] k8s管理工具kubectl详解(二)
Kubectl是管理k8s集群的命令行工具,通过生成的json格式传递给apiserver进行创建、查看、管理的操作。
2022-11-03 23:53:07 1361
原创 [云原生k8s] k8s管理工具kubectl详解(一)
resource可以是具体资源名称,如“pod nhinx-xxx”;也可以是资源类型,如“pod,node,svc,deploy”多种资源使用逗号间隔;或者all(仅显示包含app标签,并不完整)由于default为缺省空间,当不指定命名空间时默认查看default命名空间。获取资源的相关信息,-n指定命名空间,-o指定输出格式。
2022-11-01 15:32:26 2221
原创 [云原生k8s] k8s的CA证书创建和使用
目前生产部署Kubernetes集群主要有两种方式:(1)kubeadmKubeadm 是一个 K8s 部署工具,提供 kubeadm init 和 kubeadm join,用于快速部 署 Kubernetes 集群。官方地址:https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm/(2)二进制包从 github 下载发行版的二进制包,手动部署每个组件,组成 Kubernetes 集群。
2022-11-01 02:19:45 3053
原创 [云原生k8s] Kubeadm搭建K8S集群
在所有节点上安装Dcoker和kubeadm部署Kubernetes Master部署Kubernetes Node,将节点加入Kubernetes集群中部署Dashboard Web页面,可视化查看Kubernetes资源。
2022-10-31 15:49:14 1355
原创 [云原生之k8s] Kubernetes核心组件
无状态服务:就是没有特殊状态的服务,各个请求对于服务器来说统一无差别处理,请求自身携带了所有服务端所需要的所有参数(服务端自身不存储跟请求相关的任何数据,不包括数据库存储信息)。有状态服务:与之相反,有状态服务在服务端保留之前请求的信息,用以处理当前请求,比如session等。简单版有状态:需要持久化,多次请求之间需要共享一些信息无状态:一次性,不需要持久化的特殊状态,每次请求都是一条新的数据。
2022-10-31 03:00:49 1308
原创 [云原生之k8s] Kubernetes原理
单机容器编排:docker-compose容器集群编排:docker swarm、mesos+marathon、kubernetes应用编排:ansible。
2022-10-28 14:30:20 1269 1
原创 Prometheus+Grafana+onealert---实现报警
Prometheus和grafana如何搭建前面一篇博客也已经写过了,这里主要实现,当内存、cpu等其他资源在冲高情况下,实现报警。
2022-10-26 19:40:47 1268 2
原创 Promethues原理详解
Prometheus是一个开源的服务监控系统和时序数据库,其提供了通用的数据模型和快捷数据采集、存储和查询接口。它的核心组件Prometheus server会定期从静态配置的监控目标或者基于服务发现自己配置的目标中进行拉取数据,当新拉取到的数据大于配置的内存缓存区时,数据就会持久化到存储存储设备当中。
2022-10-25 19:57:10 2067
原创 ELK+Filebeat+zookeeper+Kafka原理和搭建
Zookpper是一种为分布式应用所设计的高可用、高性能且一致的开源协调服务,它提供了一项基本服务:分布式锁服务。分布式应用开源基于它实现更高级的服务,实现诸如同步服务、配置维护和集群管理或者命名的服务。Zookeeper服务自身组成一个集群,2n+1个(奇数)服务允许n个失效,集群内一半以上机器可用,Zookeeper就可用。假设3台机器组成的集群,可用有允许一台失效,如果有2台失效,这个集群就不可用,1
2022-10-24 08:31:53 2331
原创 Docker容器-----Consul部署
template 模板(更新)registrator(自动发现)后端每构建出一个容器,会向registrator进行注册,控制consul 完成更新操作,consul会触发consul template模板进行热更新核心机制:consul :自动发现、自动更新,为容器提供服务(添加、删除、生命周期)
2022-10-23 23:44:20 1198
原创 Docker容器-----harbor私有仓库部署与管理
Harbor是VMware公司开源的企业级Docker Registry项目,其目标是帮助用户迅速搭建一个企业级的Docker Registry服务。Harbor以Docker 公司开源的Registry 为基础,提供了图形管理UI、基于角色的访问控制(Role Based AccessControl)、AD/LDAI们成以心宙计日志(Auditlogging)等企业用户需求的功能,同时还原生支持中文。
2022-10-23 20:49:17 766
原创 Docker容器------compose容器集群的快速编排
Docker-compose项目是基于Python开发的Docker官方开源项目,负责实现对Docker容器集群的快速编排Docker-compose将所管理的容器分为三层,分别是工程(project),服务(service)以及容器(container)。Docker-Compose运行目录下的所有文件(docker-compose.yml,extends文件或环境变量文件等)组成一个工程,若无特殊指定工程名即为当前目录名。一个工程当中可包含多个服务,每个服务中定义了容器运行的镜像、参数、依赖。
2022-10-21 01:17:27 443
原创 [docker]-----cgroups资源限制
cgroups是一个非常强大的Linux内核工具,他不仅可以限制被namespace隔离起来的资源,还可以为资源设置权重,计算使用量,控制进程启停等等,所以cgroups(control groups)实现了对资源的配额和度量。
2022-10-19 23:24:43 552
原创 [Docker]-----dockerfile构建镜像
要想了解cmd和entrypoint的区别,首选必须了解exec模式和shell模式的区别。
2022-10-18 17:38:51 1708
原创 Docker容器------数据卷和数据卷容器
本文介绍了通过数据卷和数据卷容器对容器内数据进行共享、备份和恢复等操作,通过这些机制,即使容器在运行中出现故障,用户也不必担心数据发生丢失,只需要快速地重新创建容器即可。在生成容器的同时,加上-v选项,指定把当前服务器的目录映射到容器中。命令 说明docker run -v 数据卷 创建数据卷docker run -v 宿主机目录:数据卷 挂载宿主机目录docker run --volumes-from 数据卷容器 挂载数据卷容器(挂载点路径不变)
2022-10-17 23:49:09 794
原创 Docker容器-----网络模式
docker网桥是宿主机虚拟出来的,并不是真实存在的网络设备,外部网络是无法寻址到的,这也意味着外部网络无法直接通过Container-IP访问到容器。如果容器希望外部能够访问到,可以通过映射容器端口到宿主机(端口映射),即docker run创建容器的时候,通过-p或者-P参数来启用。访问容器的时候,就通过[宿主机IP]:[容器端口]访问容器但是如果启动容器的时候使用host模式,那么这个容器不会获得一个独立的Network Namespace,而是和宿主机公钥一个Network Namespace。容器
2022-10-17 17:22:32 892
原创 Docker的基础命令
docker容器默认会把容器内部第一个进程,也就是pid=1的程序作为docker容器是否正在运行的一句,如果docker容器中pid=1的进程挂了。用户可以将任何一个Docker容器从一台机器迁移得到另一台机器,再迁移的过程中,可以使用docker export 命令将已经创建号的容器导出为文件,无论这个容器是处于运行状态还是停止状态均可导出。注意:容器是一个与其中运行的shell命令共存亡的终端,命令运行容器运行,命令结束容器结束。Hub官方的公共仓库,需要注册使用公共仓库的账号,
2022-10-17 00:09:34 991
原创 Docker容器------安装+镜像加速
本质就是宿主机的一个进程,docker是通过namespace(命名空间)实现资源隔离,通过cgroup实现资源限制,通过写时复制技术(copy-on-write)实现了高效的文件操作(类似虚拟机的磁盘比如分配500g并不是实际占用物理磁盘500g)。
2022-10-12 19:34:36 1557 1
原创 虚拟化+docker概念基本介绍
通过虚拟化技术将一台计算机虚拟为多台逻辑计算机,在一台计算机上同时运行多个逻辑计算机,同时每个 逻辑计算机可运行不同的操作系统,应用程序都可以在相互独立的空间内运行而互相不影响,从而提高计算机的工作效率。在一台操作系统中(win10)模拟多个操作系统(centos、ubuntu等),同时每个操作系统可以跑不同服务(nginx+tomcat),从而实现一台宿主机搭建一个集群(整体)。
2022-10-12 19:12:49 858
原创 [ELFK]日志分析系统搭建---Filebeat
Filebeat适用于转发和集中数据的轻量级传送工具,Filebeat监视 了指定的日志文件或位置,收集日志事件,并将他们转发到Elasticsearch或Logstash进行索引Filebeat的工作方式:启动Filebeat时,它将启动一个或者多个输入,这些输入将在为日志数据指定的位置中查找,对于FIlebeat所找到的每个日志,Filebeat都会启动收集器。每个收集器都读取单个日志数据发送到libbeat,libbeat将聚集事件,并将聚集的数据发送到位Filebeat配置的输出。
2022-10-11 23:53:17 1904
原创 ELK日志分析(二)之ELK搭建部署
输入采用标准输入,输出采用标准输出(类似管道)指定数据输入端口,默认为9600~9700Logstash 配置文件基本由三部分组成(根据需要选择使用)input:表示从数据源采集数据,常见的数据源如Kafka、日志文件等filter:表示数据处理层,包括对数据进行格式化处理、数据类型转换、数据过滤等,支持正则表达式output:表示将Logstash收集的数据经由过滤器处理之后输出到Elasticsearch。
2022-10-10 20:17:40 1284
原创 ELK日志分析系统(一)之ELK原理
ELK是三个开源软件的统称,即ElasticSearch、Logstash和Kibana三个开源软件的缩写。这三款软件都是开源软件,通常配合使用,并且都先后归于Elastic.co企业名下,故被简称为ELK协议栈。ELK主要用于部署在企业架构中,手机多台设备上多个服务的日组织信息,并将其统一整合后提供给用户。它可以从任何来源、任何格式进行日志搜索、分析与可视化展示。ELK官网网址如下:https://www.elastic.co/cn/。提供了一个分布式多用户能力的全文搜索引擎。
2022-10-10 16:13:33 1712
原创 GFS分布式文件系统
目录引言一、文件系统的作用1.1、文件系统的挂载使用二、GlusterFS简介三、GlusterFS特点3.1、扩展性和高性能3.2、高可用性3.3、全局同一命名空间3.4、弹性卷管理3.5、基于标准协议四、GlusterFS术语五、GlusterFS构成六、GlusterFS的工作流程理解:七、弹性HASH算法弹性HASH算法优点八、GFS支持七种卷8.1、分布式卷(Distribute volume)分布式卷具有以下特点8.
2022-10-10 02:13:09 2018
原创 Rsync远程同步+inotify监控
可以监控文件系统的变动情况,并作出通知响应调整inotifu内核参数(优化)vim /etc/sysctl.conf(内核参数文件)max_queue_events #监控事件队列大小max_user_instances #最多监控实例数max_user_watches #每个实例最多监控文件数sysctl -p #让修改的参数生效#命令工具inotifywait #用于持续监控,时实输出结果inotifywatch #用于短期监控,任务完成后再输出结果常用选项选项功能-m。
2022-10-07 23:19:23 714
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人