- 博客(145)
- 收藏
- 关注
原创 etcd的备份与恢复
客户端(Client)层:客户端(Client)层包括客户端v2和v3两个大版本API(API)客户端库,提供了简洁易用的API,同时支持负载均衡、节点间故障自动转移,可极大降低业务使用etcd复杂度,提升开发效率、服务可用性。·Ratt(Raft)算法层:Raft(Raft)算法层实现了领导者(Leader)选举、日志复制、阅读指数(Readindex)等核心算法特性,用于保障eicd多个节点间的数据一致性、提升服务可用性等,是ejcd的基石和亮点。
2024-07-12 15:03:52
418
原创 高阶K8S积累问答
自定义资源定义(Custom Resource Definitions,简称 CRDs)是Kubernetes 提供的一种核心扩展机制,它允许用户在 Kubernetes API 中定义新的资源类型,这些资源类型并非 Kubernetes 原生内置的(比如Pods、Services、Deployments等)。通过 CRDs,用户能够根据自己的应用场景创建符合特定需求的资源对象,从而扩展 Kubernetes 的功能和适用范围,使之更加灵活和强大。定义 CRD。
2024-07-07 14:31:08
1022
原创 SCCM探索之旅(一)----什么是SCCM?
大部分features看看意思也能估摸着什么功能,对SCCM的简单介绍先就这么多,以后会随着学习的深入以及经验,将逐步介绍SCCM2010各features的功能和使用方法,以来促进自己的研究,另一方面形成一个东西share给感兴趣的人,共同学习。4、创建新的虚拟磁盘:在Hyper-V管理器中,右键单击要扩容的虚拟机,选择“设置”,然后单击“添加硬件”>“虚拟硬盘”。5、扩容虚拟机存储:打开虚拟机,在“设置”下选择“存储”,然后单击“控制器0”下的“虚拟硬盘”以展开其详细信息。
2024-07-06 10:59:12
1260
原创 云桌面运维工程师
应用程序兼容性:验证云桌面环境是否能够正常运行组织所需的应用程序,并确保应用程序在云桌面中的性能和功能与传统桌面环境相当。部署和配置:设置云桌面基础设施,包括虚拟化平台、云桌面管理软件和相关组件。用户体验:测试用户登录、桌面启动、应用程序访问、文件传输等常见操作,以评估云桌面的性能和响应时间。安全性和访问控制:评估云桌面解决方案的安全性,包括身份验证、数据加密、访问控制和漏洞管理等方面。管理和维护:评估云桌面管理工具的功能和易用性,包括用户管理、桌面分配、资源监控和故障排除等方面。
2024-07-04 21:46:31
759
原创 Docker面试题
Docker是一个容器化平台,它以容器的形式将你的应用程序及所有的依赖项打包在一起,以确保你的应 用程序在任何环境中无缝运行。Docker镜像是Docker容器的源代码,Docker镜像用于闯将容器,使用Build命令创建镜像。Docker容器包括应用程序及所有的依赖项,作为操作系统的独立进程运行。Docker Swarm是docker的本地群集。它将docker主机池转变为单个虚拟docker主机。
2024-06-30 09:30:53
490
原创 Prometheus 有哪些组成指标
histogram的扩展类型,它是直接由监控端自行聚合计算出分位数,同时 将计算结果响应给prometheus server的样本采集请求,因而,其分位数计算是由监控端完成① 基本含义指标大概的含义指的是具体的一个监控项,比如CPU使用率、内存使用率,为了表示具体的、唯一的一个资源或者一组资源,使用比如instance(实例)等于某个节点IP,CPU等于某个CPU标签"core=1",这是标签和标签值,最后通过过滤得到的CPU使用率的值,这就是样本②、示例比如 node1节点CPU负载的需求中。
2024-06-15 22:33:42
757
原创 积累问答题
首先1.20+ 版本才会摒弃docker,同时,摒弃的不是docker的所有生态圈,而是部分功能,核心功能中的runt ime. 运行时环境对应的功能还是有的,其次我们公司之前使用的时1.15-1.18. 1.20+的包不是很好找,现在想使用1.20版本+的话需要自己去拉源,软件包这些的话得去国外去捞,国内还未必有,国内有的话你也未必敢用,你确定那是官方渠道出来的么?Request能够保证Pod有足够的资源来运行,而Limit则是防止某个Pod无限制地使用资源,导致其他Pod崩溃。
2024-06-15 22:20:57
788
原创 K8s试题积累
1、镜像拉取失败比如,镜像地址配置错误、拉取不了国外镜像源(gcr.io)、私有镜像密钥配置错误、镜像太大导致拉取超时 (可以适当调整 kubelet 的 --image-pull-progress-deadline 和 --runtime-request-timeout 选项)等。在排查问题时,你可以使用各种网络诊断工具,例如ping、traceroute、netstat等,这些工具可以帮助你确定问题的位置。同时,你也可以查看你的系统和应用日志,这些日志可能包含有关问题的更多信息。
2024-06-15 20:51:29
1010
原创 积累问答题
添加一个自定义监控的步骤如下:1、创建一个ServiceMonitor对象,用于Prometheus添加监控项2、为ServiceMonitor对象关联metrics数据接口的Service对象3、确保Services对象可以正确获取到metrics数据29、Prometheus告警策略做过吗30、ELK是什么31、你用的es是集群还是单机32、有想过用集群es单机的elasticsearch做数据存储,必然面临两个问题:海量数据存储问题、单点故障问题。
2024-06-15 20:30:14
1080
原创 PromQL
PromQL(Prometheus Query Language)是 Prometheus 内置的数据查询语言。支持用户进行实时的数据查询及聚合操作。●指标名称代表着监控目标上某类可测量属性的基本特征标识●标签则是这个基本特征上再次细分的多个可测量维度◆仅给定指标名称,或在标签名称上使用了空值的标签选择器:返回给定的指标下的所有时间序列各自的即时样本。
2024-06-15 08:54:07
1051
原创 prometheus relabel_configs 标签重写
replace: 根据 regex 的配置匹配 source_labels 标签的值(注意:多个 source_label 的值会按照 separator 进行拼接),并且将匹配到的值写入到 target_label 当中,如果有多个匹配组,则可以使用 ${1}, ${2} 确定写入的内容。drop: 丢弃 source_labels 的值中匹配到 regex 正则表达式内容的 Target 实例。hashmod: 将 target_label 设置为关联的 source_label 的哈希模块。
2024-06-15 07:29:15
340
原创 Prometheus 之钉钉报警
Prometheus 对指标的收集、存储与告警能力分属于 Prometheus Server 和 AlertManager 两个独立的组件,前者仅负责定义告警规则生成告警通知, 具体的告警操作则由后者完成。Alertmanager 负责处理由 Prometheus Server 发来的告警通知,Alertmanager对告警通知进行分组、去重后,根据路由规则将其路由到不同的receiver,如:Email、钉钉或企业微信等。
2024-06-14 15:15:44
856
原创 Prometheus 监控系统的概念与系统搭建
首先可以肯定zabbix和Prometheus都是非常优秀的监控系统,但从选择上,可以根据实际需求来确定合适的监控系统。zabbix产生时间更为长,基于c语言开发,Zabbix上手难度要低很多,对于传统的服务器、系统、网络等都有优秀的监控能力,并且可以根据自定义模板监控加上告警监控机制,,适合对于监控方面要求不高、整体技术能力较弱的传统企业使用。但是zabbix在云原生的部署上发展时间已经适配程度都不如Prometheus,对于云原生的来讲,zabbix的运用和效率都没那么理想。
2024-06-12 15:44:11
673
原创 云计算的三种服务模式:IaaS、PaaS和SaaS
基础设施即服务 (IaaS): Infrastructure as a Service基础设施即服务有时缩写为 IaaS,包含云 IT 的基本构建块,通常提供对联网功能、计算机(虚拟或专用硬件)以及数据存储空间的访问。基础设施即服务提供最高等级的灵活性和对 IT 资源的管理控制,其机制与现今众多 IT 部门和开发人员所熟悉的现有 IT 资源最为接近。
2024-06-12 00:11:29
499
原创 Rancher 管理 Kubernetes 集群
Rancher 是一个开源的企业级多集群 Kubernetes 管理平台,实现了 Kubernetes 集群在混合云+本地数据中心的集中部署与管理, 以确保集群的安全性,加速企业数字化转型。超过 40000 家企业每天使用 Rancher 快速创新。官网:https://docs.rancher.cn/
2024-06-12 00:07:41
559
原创 部署 HPA
(1)HPA 基于 Master 上的 kube-controller-manager 服务启动参数 horizontal-pod-autoscaler- sync-period 定义的时长(默认为30秒),周期性的检测 Pod 的 CPU 使用率。原理:追踪控制器管理的pod 负载情况…来根据设置的阀值动态的调整的pod的副本数量metrics- server 收集k8s中的node、pod等资源使用情况,.kubectl.topnode/pod。
2024-06-11 23:33:46
658
原创 K8s之Helm
charts 除了可以在 repo 中下载,还可以自己自定义,创建完成后通过 helm 部署到 k8s。#在 templates 目录下 yaml 文件模板中的变量(go template语法)的值默认是在 nginx/values.yaml 中定义的,只需要修改 nginx/values.yaml 的内容,也就完成了 templates 目录下 yaml 文件的配置。
2024-06-06 21:08:21
1246
原创 K8s之安全机制(认证、授权、准入控制)
Kubernetes 作为一个分布式集群的管理工具,保证集群的安全性是其一个重要的任务。API Server 是集群内部各个组件通信的中介, 也是外部控制的入口。所以 Kubernetes 的安全机制基本就是围绕保护 API Server 来设计的。kubectl 如果想向 API Server 请求资源,需要过三关,只有通过这三关才可能会被 K8S 创建资源。
2024-06-05 19:22:42
1035
原创 Traefik Ingress Controller
traefik 本身设计的就能够实时跟 kubernetes api 交互,感知后端 service,pod 等的变化,自动更 新配置并重载。traefik 是一个前端负载均衡器,对于微服务架构尤其是 kubernetes 等编排工具具有良好的支持;Traefik 是一个为了让部署微服务更加便捷而诞生的现代 HTTP 反向代理、负载均衡工具。同 nginx 等相比,traefik 能够自动感知后端容器变化,从而实现自动服务发现。从国内的gitee下载yaml,启用RBAC。
2024-06-05 15:51:24
372
原创 ingress规则
service的作用体现在两个方面?① 对集群内部,它不断跟踪pod的变化,更新endpoint中对应pod的对象,提供了ip不断变化的pod的服务发现机制;② 对集群外部,他类似负载均衡器,可以在集群内外部对pod进行访问。在Kubernetes中,Pod的IP地址和service的ClusterIP仅可以在集群网络内部使用,对于集群外的应用是不可见的。ingress是k8s集群的请求入口,可以理解为对多个service的再次抽象。
2024-06-05 15:50:48
987
原创 pod控制器
FIELDS:FIELDS:podManagementPolicy #Pod管理策略replicas #副本数量revisionHistoryLimit #历史版本限制selector -required- #选择器,必选项serviceName -required- #服务名称,必选项template -required- #模板,必选项。
2024-05-31 00:06:07
565
原创 集群调度--Schedule、亲和性、污点/容忍、驱逐
(12)kubelet 是在 Node 上面运行的进程,它也通过 List-Watch 的方式监听(Watch,通过https的6443端口)APIServer 发送的 Pod 更新的事件。由于指定 Pod 所在的 node01 节点上具有带有键 kgc 和标签值 a 的标签,node02 也有这个kgc=a的标签,所以 node01 和 node02 是在一个拓扑域中,反亲和要求新 Pod 与指定 Pod 不在同一拓扑域,所以新 Pod 没有可用的 node 节点,即为 Pending 状态。
2024-05-28 21:25:05
918
原创 K8s资源限制和三种探针
① Pod 中有几种容器init 初始化 ,阻塞主容器运行,初始化后方可运行主容器pause 基础容器: 提供network 的 namespace 和 共享存储业务容器: 跑Pod 主应用(POD中跑什么:微服务、数据库、监控、日志分析、mq、业务网关-类似Nginx的功能 SDK WSGI CGI等接口或协议的支持)② Pod内网络环境共享形式,类似于docker-container 模式 通过localhost 通讯。
2024-05-24 21:33:04
1112
原创 pod容器基础概念
每个Pod都有一个特殊的被称为“基础容器”的Pause容器。Pause容器对应的镜像属于Kubernetes平台的一部分,除了Pause容器,每个Pod还包含一个或者多个紧密相关的用户应用容器。
2024-05-24 00:48:27
852
原创 k8s集群的声明式管理资源
targetPort 是 Pod 的端口,从 port 或 nodePort 来的流量经过 kube-proxy 反向代理负载均衡转发到后端 Pod 的 targetPort 上,最后进入容器。kubectl edit -n ,然后手动复制资源配置,粘贴到yaml文件中。kubectl get -n -o yaml > XXX.yaml。资源配置清单文件有两种格式:yaml(人性化,易读),json(易于api接口解析)
2024-05-23 00:32:34
589
原创 kubectl--的陈述式资源管理
为deployment的nginx创建service,并通过Service的80端口转发至容器的80端口上,Service的名称为nginx-service,kubectl scale deployment nginx-wl --replicas=1 -n kube-public # 缩容,没必要,钱不压身。grace-period表示过渡存活期,默认30s,在删除pod之前允许POD慢慢终止其上的容器进程,从而优雅退出,0表示立即终止pod。Deployment:无状态应用部署。
2024-05-19 10:05:20
627
原创 kubeadm安装+Harbor 仓库部署
master2C/2Gdocker、kubeadm、kubelet、kubectl、flannel、node012C/2Gdocker、kubeadm、kubelet、kubectl、flannel、node012C/2Gdocker、kubeadm、kubelet、kubectl、flannel、harbor docker、docker-compose、harbor-office-v1.2.2 注意:四台机器同时安装,可能会遇见网路问题;要杀死进程;下载不下来,多下载几次;改一下DNS
2024-05-18 07:08:30
725
原创 安全堡垒机
跳板机就是一台服务器,具备公网和内网,我们的开发人员或者运维 人员,要想维护内部集群服务时,需要先统一登陆到跳板机这台服务 器,然后在通过跳板机的内网登陆目标集群服务器umpServer 是由 FIT2CLOUD(飞致远)公司旗下一款开源的堡垒机, 这款也是全球首款开源的堡垒机,使用 GNU GPL v2.0 开源协议,是 符合 4A 规范的运维安全审计系统,使用 Python 开发,遵循Web 2.0 规范,配备了业界领先的 Web Terminal 方案,交互界面美观、 用户体验好,
2024-05-15 14:53:01
444
原创 K8s二进制部署--中篇
通常会采用VXLAN模式,用的是叠加网络(二层和三层网络)、IP隧道方式传输数据,由于要进行封装和解封装,对性能有一定的影响。Flannel产品成熟,依赖性较少,易于安装,功能简单,配置方便,利于管理。但是不具备复杂的网络策略配置能力。同时不具备策略的配置能力。
2024-05-14 23:22:36
768
原创 K8s 二进制部署 上篇
etcd是CoreOS团队于2013年6月发起的开源项目,它的目标是构建一个高可用的分布式键值(key-value)数据库。Kubeadmin也是一个工具,提供kubeadm init和kubeadm join,用于快速部署K8S集群,相对简。荐使用二进制包部署Kubernetes集群,虽然手动部署麻烦点,期间可以学习很多工作原理,也利于。生产首选,从官方下载发行版的二进制包,手动部署每个组件和自签TLS证书,组成K8S集群,新。简单:安装配置简单,而且提供了HTTP API进行交互,使用也很简单。
2024-05-14 15:37:38
985
1
原创 docker容器实现https访问
【云原生】docker容器实现https访问_docker ssl访问-CSDN博客①key 私钥 = 明文--自己生成(genrsa )②csr 公钥 = 由私钥生成③crt 证书 = 公钥 + 签名(自签名或者由CA签名)④证书:server.crt文件就是证书⑤签名:使用私钥key与公钥csr进行证书server.crt生成的过程称为签名。
2024-05-12 20:26:50
901
2
原创 kubernate 基本概念
在 Kubernetes 集群中,在每个 Node(又称 Worker Node)上都会启动一个 kubelet 服务进程。该进程用于处理 Master 下发到本节点的任务,管理 Pod 及 Pod 中的容器。每个 kubelet 进程都会在 API Server 上注册节点自身的信息,定期向 Master 汇报节点资源的使用情况,并通过 cAdvisor监控容器和节点资源。
2024-05-09 18:37:08
959
原创 Ansible--Templates 模块 Tags模块 Roles模块
①Jinja是基于Python的模板引擎。Template类是Jinja的一个重要组件,可看作一个编译过的模板文件,用来产生目标文本,传递Python的变量给模板去替换模板中的标记。②在配置文件中,会有一些数据(如:ip 地址、主机名、端口、用户、页面路径等)会动态的改变,需要使用变量来表示;③template 模块就是将变量和动态文件结合起来,最终生成一个配置文件(需要动态改变)。文件使用 jinjia2 模块语言来编写,结尾(后缀)一定是 j2(xxx.j2)。2 修改主机清单文件
2024-05-08 23:35:20
883
原创 Ansible --- playbook 脚本+inventory 主机清单
Inventory支持对主机进行分组,每个组内可以定义多个主机,每个主机都可以定义在任何一个或多个主机组内。 inventory 中变量 环境准备: 连接对方端口号 检测一下:2 示例:常用属性: 编辑剧本: 注意:每一个名字就是一个模块运行playbook错误分析: 主机检测一下: hosts: dbserversremote_user: zhangsanbeco
2024-05-07 22:56:56
1246
原创 自动化运维工具---Ansible
4 Ansible其中一个比较鲜明的特性是Agentless,即无Agent的存在,它就像普通命令一样,并非C/S。操作的是Ansible的模块, 比如copy模块用于拷贝文件到远程主机上,service模块用于管理服务的。3 Ansible是基于模块工作的,它只是提供了一种运行框架,它本身没有完成任务的能力,真正执行。是停止,不会改变结果,它是幂等的,而 systemctl restart xxx 是非幂等的。服务,当发现要停止的目标服务已经处于停止状态, 它什么也不会做,所以多次停止的结果仍然。
2024-05-06 20:41:50
1358
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人