XOR
22-安全机制:Kubernete 如何保障集群安全?
(https://rancher.com/blog/2019/2019-01-17-101-more-kubernetes-security-best-practices/) 你好,我是正范。 Kubernetes 作为一个分布式集群的管理工具,提供了非常强大的可扩展能力,可以帮助你管理容器,实现业 ......
23-最后的防线:怎样对 Kubernete 集群进行灾备和恢复?
Kubernetes 隐藏了所有容器编排的复杂细节,让我们可以专注在应用本身,而无须过多关注如何去做部署和维护。此外,Kubernetes 还支持多副本,可以保证我们业务的高可用性。而对于集群本身而言,我们一样也要保证其高可用性,你可以参考官方文档:利用 Kubeadm 来创建高可用集群。 但是这些 ......
24-调度引擎:Kubernete 如何高效调度 Pod?
我们已经学会如何部署业务,发布 Pod。但是 Pod 创建好以后,Kubernetes 又如何调度这些 Pod 呢?如果我们希望把一个 Pod 跑在我们期望的节点上,该如何操作呢?如果我们希望把某些关联性强的 Pod 跑在特定的节点上,或者同一个节点上,又该怎么操作呢? 今天我们就来揭晓。 Kube ......
25-稳定基石:带你剖析容器运行时以及 CRI 原理.md
当一个 Pod 在 Kube-APIServer 中被创建出来以后,会被调度器调度,然后确定一个合适的节点,最终被这个节点上的 Kubelet 拉起,以容器状态运行。 那么 Kubelet 是如何跟容器打交道的呢,它是如何进行创建容器、获取容器状态等操作的呢? 今天我们就来了解一下。 容器运行时 ( ......
26-网络插件:Kubernete 搞定网络原来可以如此简单?
通过之前的学习,相信你对 Kubernetes 越来越熟悉了。理论上,Kubernetes 可以跑在任何环境中,比如公有云、私有云、物理机、虚拟机、树莓派,但是任何基础设施(Infrastructure)对网络的需求都是最基本的。网络同时也是 Kubernetes 中比较复杂的一部分。 我们今天就来 ......
27-K8 CRD:如何根据需求自定义你的 API?
随着使用的深入,你会发现 Kubernetes 中内置的对象定义,比如 Deployment、StatefulSet、Configmap,可能已经不能满足你的需求了。你很希望在 Kubernetes 定义一些自己的对象,一来可以通过 kube-apiserver 提供统一的访问入口,二来可以像其他内 ......
半小时搞定Yolov5安装配置及使用(详细过程)
之前在学习目标检测的时候,正值Yolov5发布,当时试用了下感觉还不错,最近有时间 使用最新的Yolov5源码,重新整理下安装配置到使用过程。。实践整个过程半小时即可搞定(前提已有Anaconda) 总体来看Yolov5的速度和效率较之前yolov4等系列都快,准确度更高。。 在下载配置Yolov5 ......
16-迎战流量峰值:Kubernete 怎样控制业务的资源水位?
通过前面的学习,相信你已经见识到了 Kubernetes 的强大能力,它能帮你轻松管理大规模的容器服务,尤其是面对复杂的环境时,比如节点异常、容器异常退出等,Kubernetes 内部的 Service、Deployment 会动态地进行调整,比如增加新的副本、关联新的 Pod 等。 当然 Kube ......
17-案例实战:教你快速搭建 Kubernete 监控平台
Prometheus 和 Grafana 可以说是 Kubernetes 监控解决方案中最知名的两个。Prometheus 负责收集、存储、查询数据,而 Grafana 负责将 Prometheus 中的数据进行可视化展示,当然 Grafana 还支持其他平台,比如 ElasticSearch、In ......
18-权限分析:Kubernete 集群权限管理那些事儿
你好,我是正范。 通过前面的课程学习,你已经学会了使用kubectl命令行,或者直接发送 REST 请求,以及使用各种语言的 client 库来跟 APIServer 进行交互。那么你是否知道在这其中Kubernetes 是如何对这些请求进行认证、授权的呢?这节课,我们就来一探究竟。 任何请求访问 ......
19-资源限制:如何保障你的 Kubernete 集群资源不会被打爆
前面的课时中,我们曾提到通过 HPA 控制业务的资源水位,通过 ClusterAutoscaler 自动扩充集群的资源。但如果集群资源本身就是受限的情况下,或者一时无法短时间内扩容,那么我们该如何控制集群的整体资源水位,保障集群资源不会被“打爆”? 今天我们就来看看 Kubernetes 中都有哪些 ......
20-资源优化:Kubernete 中有 GC(垃圾回收)吗?
Garbage Collector 即垃圾回收,通常简称 GC,和你之前在其他编程语言中了解到的 GC 基本上是一样的,用来清理一些不用的资源。Kubernetes 中有各种各样的资源,当然需要 GC啦,今天我们就一起来了解下 Kubernetes 中的 GC。 你可能最先想到的就是容器的清理,即 ......
21-优先级调度:你必须掌握的 Pod 抢占式资源调度
随着我们在 Kubernetes 集群中部署越来越多的业务,势必要考虑集群的资源利用率问题。尤其是当集群资源比较紧张的时候,如果此时还要部署一些比较重要的关键业务,那么该如何去提前“抢占”集群资源,从而使得关键业务在集群中跑起来呢? 这里一个最常见的做法就是采用优先级方案。通过给 Pod 设置高优先 ......
[转帖]从Linux源码看TIME_WAIT状态的持续时间
https://zhuanlan.zhihu.com/p/286537295 从Linux源码看TIME_WAIT状态的持续时间 前言 笔者一直以为在Linux下TIME_WAIT状态的Socket持续状态是60s左右。线上实际却存在TIME_WAIT超过100s的Socket。由于这牵涉到最近出现 ......
空中802.11帧的抓取
既然是在研究WiFi,那就不能仅分析仿真器给出的pcap文件结果,还要去研究在实际环境中的WiFi设备之间的数据交换。利用WiFi网卡直接抓取空中的802.11信标帧是研究实际数据交互的方案之一。 一般网卡都会有一个monitor模式(monitor mode),在该模式下网卡无法连接到AP,但是可 ......
13-服务守护进程:如何在 Kubernete 中运行 DaemonSet 守护进程?
通过前面课程的学习,我们对 Kubernetes 中一些常见工作负载已经有所了解。比如无状态工作负载 Dployment 可以帮助我们运行指定数目的服务副本,并维护其状态,而对于有状态服务来说,我们同样可以采用 StatefulSet 来做到这一点。 但是,在实际使用的时候,有些场景,比如监控各个节 ......
14-日志采集:如何在 Kubernete 中做日志收集与管理?
说到日志,你应该不陌生。日志中不仅记录了代码运行的实时轨迹,往往还包含着一些关键的数据、错误信息,等等。日志方便我们进行分析统计及监控告警,尤其是在后期问题排查的时候,我们通过日志可以很方便地定位问题、现场复现及问题修复。日志也是做可观测性(Observability)必不可少的一部分。 因此在使用 ......
15-Prometheu:Kubernete 怎样实现自动化服务监控告警?
通过之前的学习,我们已经对 Kubernetes 有了一定的理解,也知道如何在 Kubernetes 中部署自己的业务系统。 Kubernetes 强大的能力让我们非常方便地使用容器部署业务。Kubernetes 自带的副本保持能力,可以避免部署的业务系统出现单点故障,提高可用性。各种探针也可以帮助 ......
opengauss 数据库对表进行授权
opengauss数据库导入后,新增的用户没有权限,需要对schema下所有表进行批量授权,sql如下 #高斯对单表进行授权 GRANT Delete, Insert, References, Select, Trigger, Truncate, Update ON TABLE "db_test". ......
08-配置管理:Kubernete 管理业务配置方式有哪些?配置管理:Kubernete 管理业务配置方式有哪些?
通过前面几节课的学习,我们已经对 Kubernetes 中的 Pod 以及一些业务负载有所了解。你可以根据课程中提供的示例,自己动手尝试在集群中实践起来。 在使用过程中,我们常常需要对 Pod 进行一些配置管理,比如参数配置文件怎么使用,敏感数据怎么保存传递,等等。有些人可能会觉得,为什么不把这些配 ......
09-存储类型:如何挑选合适的存储插件?
在以前玩虚拟机的时代,大家比较少考虑存储的问题,因为在通过底层 IaaS 平台申请虚拟机的时候,大多数情况下,我们都会事先预估好需要的容量,方便虚拟机起来后可以稳定的使用这些存储资源。 但是容器与生俱来就是按照可以“运行在任何地方”(run anywhere)这一想法来设计的,对外部存储有着天然的诉 ......
10-存储管理:怎样对业务数据进行持久化存储
通过上一节课的学习,我们知道了如何在 Pod 中使用 Volume 来保存数据。Volume 跟 Pod 的生命周期是绑定的,当 Pod被删除后,Volume 中的数据有可能会一同被删除,具体需要看对应的 volume plugin 的使用要求,你可以看上节课的对比表格。 而这里我们还需要考虑如下几 ......
11-K8 Service:轻松搞定服务发现和负载均衡 (copy)
经过前面几节课的学习,我们已经可以发布高可用的业务了,通过 PV 持久化地保存数据,通过 Deployment或Statefulset 这类工作负载来管理多实例,从而保证服务的高可用。 想一想,这个时候如果有别的应用来访问我们的服务的话,该怎么办呢?直接访问后端的 Pod IP 吗?不,这里我们还需 ......
12-Helm Chart:如何在生产环境中释放部署
通过前面的课程,相信你对 Kubernetes 中的对象有了很多了解。Kubernetes 是一个强大的容器调度系统,你可以通过一些声明式的定义,很方便地在 Kubernetes 中部署业务。 现在你一定很想尝试在 Kubernetes 中部署一个稍微复杂的系统,比如下面这个典型的三层架构:前端、后 ......
07-有状态应用:Kubernete 如何通过 StatefulSet 支持有状态应用?
在上一节课中,我们学习了 Kubernetes 中的无状态工作负载,并上手实践了 Deployment 对象,相信现在你已经慢慢喜欢上 Kubernetes 了。 那么本节课,我们来一起看看Kubernetes 中的另外一种工作负载 StatefulSet。从名字就可以看出,这个工作负载主要用于有状 ......
Python Flask 返回函数 、带值的函数
前言全局说明 一、安装flask模块 官方源: pip3 install flask==2.3.2 国内源: pip3 install flask==2.3.2 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com 以上二选 ......
04-核心定义:Kubernete 是如何搞定“不可变基础设施”的?
在上一节课,我们已经了解了 Kubernetes 集群的搭建方式。从现在开始,我们就要跟 Kubernetes 集群打交道了。本节课我们会学习 Kubernetes 中最重要、也最核心的对象——Pod。 在了解 Pod 之前,我们先来看一下CNCF 官方是怎么定义云原生的。 云原生技术有利于各组织在 ......
05-K8 Pod:最小调度单元的使用进阶及实践
通过上一节课的学习,相信你已经知道了 Pod 是 Kubernetes 中原子化的部署单元,它可以包含一个或多个容器,而且容器之间可以共享网络、存储资源。在日常使用过程中,也应该尽量避免在一个 Pod 内运行多个不相关的容器,具体原因在上一节课中也已经详细阐述。 在实际生产使用的过程中,通过 kub ......