InfraPub 为您找到相关结果 815

K8S中Pod的四个阶段及状态分析

Kubernetes 中, pod 从创建到成功运行会分别处于不同的阶段,每个阶段又分为不同的状态,本文将简单介绍这个环节。 在 K8S 源码中,使用了 PodPhase 这个变量定义这几个阶段信息,如下图所示: 运行中(PodRunning):该 Pod 已经绑定到了一个节点,Pod 中所有的容器都已被创建。至少有一个容器正在运行,或者正处于启动或重启状态。等待中(PodPending): 创建 Pod 的请求已被 Kubernetes 系统接受,但有一个或者多个容器镜像尚未创建。可能的原因有,写数据到etcd,调度,pull镜像,启动容器这四个阶段中的任何一个阶段,pending 伴随的事件通常会有:ADDED, Modified这两个事件的产生。等待时间包括调度 Pod 的时间和下...阅读全文

博文 2020-07-15 13:11:45 debian.cn

[图]Linux内核发现3个提权漏洞 已存在15年之久

这些漏洞(被追踪为 CVE-2021-27363、CVE-2021-27364 和 CVE-2021-27365)存在于内核的 iSCSI 模块中。虽然在默认情况下该模块是没有被加载的,但是 Linux 内核对模块按需加载的支持意味着它可以很容易地被调用到行动中。安全专家在 Red Hat 所有已测试版本和其他发行版本中均存在这些漏洞。在 GRIMM 博客,安全研究员 Adam Nichols 表示:“我们在 Linux mainline 内核的一个被遗忘的角落里发现了 3 个BUG,这些 BUG 已经有 15 年的历史了。与我们发现的大多数积满灰尘的东西不同,这些 BUG 依然存在影响,其中一个原来可以作为本地权限升级(LPE)在多个 Linux 环境中使用”。这些漏洞存在于无法远程访...阅读全文

博文 2021-03-15 07:43:35 cnBeta.COM

Kubernetes 1.14 发布,31 项功能增强

。Kubernetes 管理员的一个问题是在 Linux 主机分配进程 ID(PID)。以往没有什么可以阻止容器内的进程创建 PID。如果 PID 的系统资源耗尽,即使其它资源不受约束,也可能导致主机不稳定。管理员现在可以为每个 pod 的 PID 数设置默认值,并在 pod 中为每个节点保留多个可分配的 PID。 Pod 优先级和抢占支持 现在可以为 pod 分配优先级,以便 Kubernetes 控制器可以在集群资源不足时做出更好的决策。可以删除不太重要的 pod,为更重要的 pod 创建空间。 Discovery API 从 RBAC 基础架构中删除 默认情况下,有一组 API 允许未经身份验证的访问。在 v1.14 中,已从该​​集中删除了 Discovery API,以提高隐私和安全性...阅读全文

Ubuntu发布重要更新将修复九个漏洞

17.04为Raspberry Pi 2为linux-image-raspi2 4.10.0.1023.24。 此外,Ubuntu 16.04 LTS用户需要将其内核更新到64位和32位机器的linux-image 4.4.0.103.108, 将 Raspberry Pi 2 用户的 Ubuntu 16.04 LTS 更新到 linux-image-raspi2 4.4.0.1079.79,和 Ubuntu 14.04 LTS 的用户到 linux-image-3.13.0-137-generic 3.13.0-137.186。 Ubuntu 16.04.3 LTS,Ubuntu 14.04.5 LTS 和 Ubuntu 12.04 ESM 用户也可以使用更新的HWE内核。...阅读全文

博文 2017-12-20 11:31:08 debian.cn

Ruby 2.5.0 稳定版发布

Ruby 2.5 系列第一个稳定版本发布,新版包括了一系列新的特性和性能改进。主要变化包括:rescue/else/ensure 允许直接与 do/end 块使用,yield 增加 yield_self,Struct.new 能创建接受关键字参数的类,最高级常量查询不再可用,移除所有 trace 指令提升 5-10% 性能,SecureRandom 将更偏向使用操作系统提供的 SSL 库等。 此版本包括数个新特性和性能提升,例如: 新特性 允许在 do/end 中直接使用 rescue/else/ensure。[功能 #12906] 新增 yield_self 来使用当前下文 yield 代码块。不同于 tap,此方法会返回代码块的运行结果。[功能 #6721] 支持测量分支代码覆盖和方...阅读全文

博文 2017-12-25 21:59:41 debian.cn

如何在 Nginx 中配置 gRPC 的代理

交互方式。 此示例里nginx以明文的方式在80端口发布gRPC,其中代理的gRPC在后端也是以明文的方式交互。 注意:Nginx是不支持在明文的端口同时支持http1和http2的(想一想为什么?)。如果要支持这两种的http协议,需要设置为不同的端口。 以 TLS 加密方式发布 gRPC 服务 在生成环境建议使用Nginx是以加密的方式发布gRPC。这种情景需要在Nginx添加一个加密层。 在开发/测试环境可以使用自签名证书,关于自签名证书本文不做介绍。配置示例如下: server { listen 1443 ssl http2; ssl_certificate ssl/cert.pem; ssl_certificate_key ssl/key.pem; location...阅读全文

博文 2018-04-20 11:03:39 debian.cn

Saltstack极高危漏洞: 可获取master权限

Salt的安全设置 1. 订阅salt官方的通告,以便接收最新的通知 2. 使用salt acl系统来限制salt-minion的root权限 3. 使用salt acl系统来限制salt-minion可以执行哪些命令 4. 使用外部的pillar管理工具来替代登录到系统中修改文件的方式 5. 将sls文件通过版本控制工具管理起来,并经过评审后在生产环境中执行 6. 如果要将salt-master暴露给外部服务,要用salt-api\ssl并通过验证 7. salt-minion通过event系统和reactor来向master通信,而不是直接访问salt-master 8. salt-master运行在非root用户下 9. 禁用部分模块加载到minion,例如cmd模块 10. 阅读完所有的...阅读全文

博文 2020-05-05 18:32:44 debian.cn

Go 泛型草案更新,明年8月Go 1.17引入

作为约束(constraints)使用时,可被允许包含类型列表。在旧版的设计草案中,类型列表属于 contracts 的功能。更复杂的情况将使用参数化的 interface 类型. 为了帮助决定如何进一步完善设计草案,团队还发布了翻译工具。此工具可用于类型检查,以及运行使用设计草案中描述的泛型版本编写的代码。它通过将泛型代码翻译为普通的 Go 代码来工作。此翻译过程有一定的局限性,不过团队主要是希望借此让大家对 Go 泛型的整体有所了解。如果泛型最终被吸纳,它们的实际实现可能会有所不同。 此工具已在 Go playground 的变体提供,这个 playground 的工作方式与常见的 Go playground 相同,不过前者支持泛型代码。团队希望此工具能为 Go 用户提供尝试使用泛型的...阅读全文

博文 2020-06-23 07:40:34 debian.cn

Kubernetes调度算法浅析

给每个节点和待分配的pod进行打分。1.首先可用的node和pod会被打分函数进行打分,分数在0-10分之间。并且每个打分函数还有一个权重值。那么一个可用的node节点最后的总分就是:Σ函数打分*函数的权重值。 node节点总分 =(函数1的打分 * 函数1权重值)+......+(函数n的打分 * 函数n的权重值) 2.打分函数即优先级函数的种类: 这里只介绍了一部分的优先级函数算法,还有许多算法在这里未解释有兴趣的小伙伴可以网查一下哦。 小结 kube-scheduler组件将整个集群资源调配变得很科学。比如该如何分配pod的副本到其他的node节点中,或者如何分配pod使得集群运转的更加高效。此外kube-scheduler还支持第三方的调度器进行扩展,所以是一种插件化的实现。...阅读全文

博文 2020-12-20 11:01:10 debian.cn

Redis 6 将采用全新协议RESP3 提供客户端缓存功能

获取数据时的延迟。此功能在大规模的应用程序十分重要,因为数据离应用程序越近,程序就能更快获取到数据。 antirez 受 Ben Malec 演讲的启发,他想到可以将大部分需要频繁存和取的数据直接放在服务器的内存中,以便让 Redis 为客户端完成部分工作,并使客户端缓存更简单、更有效。这个就是 Client side caching(客户端缓存)的概念。 不过这个思路有一个需要解决的问题是,如何控制数据的有效时间?在程序允许的情况下,虽然可以直接设置数据的有效时间,让数据在一段时间后失效。但 antirez 表示,大多数的应用程序无法接受提供过时的数据的风险,因此必须找到更理想的方案来控制数据的失效时间。 所以 antirez 决定开发新的协议 RESP3,在协议中加入新特性来支持客户端...阅读全文

三大亮点带你看 Linux 内核 5.6

版中,硬件支持也将继续提升。而支持新式无线外设的计划也同样是优先的。 新内核中将增加对 MX Master 3 鼠标以及罗技其他无线产品的支持。 除了罗技的产品外,你还可以期待获得许多不同硬件的支持(包括对 AMD GPU、NVIDIA GPU 和 Intel Tiger Lake 芯片组的支持)。 6、其他更新 此外,Linux 5.6 中除了述主要的新增功能或支持外,下一个内核版本也将进行其他一些改进: 改进 AMD Zen 的温度/功率报告修复华硕飞行堡垒系列笔记本中 AMD CPU 过热开源支持 NVIDIA RTX 2000 图灵系列显卡内建 FSCRYPT 加密 Phoronix 跟踪了 Linux 5.6 带来的许多技术性更改。因此,如果你好奇 Linux 5.6 所涉及的全...阅读全文

博文 2020-02-07 11:13:09 debian.cn

提问的智慧(精简版)

用替换一幅图片的色码(color table)成自己选定的色码,我现在知道的唯一方法是编辑每个色码区块(table slot), 但却无法从某绘图程序的颜色选择器取得十六进制的 RGB 值。问题解决后,加个简短的补充说明补充说明不必很长或是很深入。简单的一句 你好,原来是网线出了问题!谢谢大家。 比什么也不说要来的好。事实,除非结论真的很有技术含量,一句话就够了:说明问题是怎样解决的,但大可不必将解决问题的过程复述一遍。对于有深度的问题,张贴调试记录的摘要是有帮助的。但请记住,先描述问题的最终状态,说明是什么解决了问题,在此之后才指明踩坑的地方。在即时聊天软件里问问题为了避免重复答疑,你应该在群里询问常见问题。由于部分聊天软件没有话题串的功能(或着实现很差),同时群里还可能有多个同时讨论的...阅读全文

博文 2023-10-07 15:02:42 infras

nsenter 及 Linux命名空间 简介

); /* Get file descriptor for namespace */ if (fd == -1) errExit("open"); if (setns(fd, 0) == -1) /* Join that namespace */ errExit("setns"); execvp(argv[2], &argv[2]); /* Execute a command in namespace */ errExit("execvp"); } 使用示例: ./ns_exec /proc/3550/ns/uts /bin/bash nsenter 那么,最后就是nsenter了,nsenter相当于在setns的示例程序之做了一层封装,使我们无需指定命名空间的文件描述符,而是指定进程号即可。 指定进程...阅读全文

博文 2020-12-15 11:22:44 debian.cn

Kubernetes常用命令大全(持续更新)

nginx RC 创建服务,启用本地 80 端口连接到容器的 8000 端口 kubectl expose rc nginx --port=80 --target-port=8000 更新单容器 pod 的镜像版本(tag)到 v4 kubectl get pod nginx-pod -o yaml | sed 's/(image: myimage):.*$/\1:v4/' | kubectl replace -f - kubectl label pods nginx-pod new-label=awesome #### 添加标签 kubectl annotate pods nginx-pod icon-url=http://goo.gl/XXBTWq #### 添加注解 kubectl...阅读全文

博文 2020-03-13 12:35:13 debian.cn