Debian 爱好者社区 为您找到相关结果 725

三个技巧 大幅减少 Docker 镜像体积

因为如果攻击者利用你的应用程序获得对容器的访问权限将无法像访问 shell 那样造成太多破坏。换句话说,更少的二进制文件意味着更小的体积和更高的安全性,不过这是以痛苦的调试为代价的。 或许你不应在生产中 attach 和调试容器,而应该使用日志和监控。 但如果你确实需要调试,又想保持小体积该怎么办? 3. 小体积的 Alpine 基础镜像 你可以使用 Alpine 基础镜像替换 distroless 基础镜像。 Alpine Linux 是: 一个基于 musl libc 和 busybox 的面向安全的轻量级 Linux 发行版。 换句话说,它是一个体积更小也更安全的 Linux 发行版。不过你不应该理所当然地认为他们声称的就一定是事实,让我们来看看它的镜像是否更小。 先修改...阅读全文

博文 2018-09-06 10:50:29 debian.cn

Kali Linux 2019.1 发布,Metasploit 更新到 5.0

v5.0.2-dev ] + -- --=[ 1852 exploits - 1046 auxiliary - 325 post ] + -- --=[ 541 payloads - 44 encoders - 10 nops ] + -- --=[ 2 evasion ] + -- --=[ ** This is Metasploit 5 development branch ** ] msf5 > Metasploit 5.0 是一个大规模的更新,包括据库和自动化 API、新的防毒功能以及整个可用性改进等内容,具体可以查看 之前的报导 。 此外,2019.1 Kali ARM 版本提供了 Banana Pi 和 Banana Pro 的回归,两者都使用 4.19 内核。Veyron 已经转移到...阅读全文

博文 2019-02-19 09:28:30 debian.cn

Linux 5.10 LTS维护期限将持续到2026年年底

Linux 5.10作为最新的长期支持版本在宣布时只打算维护到2022年底,但在足够多的公司加紧帮助测试之后,Linux 5.10 LTS现在已经确认可以被维护到2026年底。Linux 5.10 LTS原本只是要维护到明年年底,但是之前的内核如Linux 5.4 LTS被维护到2024年,甚至Linux 4.19 LTS和4.14 LTS也会进入2024年,这就让人觉得比较奇怪。 Linux 5.10 LTS的生命周期很短是因为帮助测试与发布候选程序和/或承诺使用这个内核LTS系列的资源的开发者/组织的量有限。但是现在有足够的与者致力于此,这就使得Greg Kroah-Hartman有信心确认他和Sasha Levin将维护内核到2026年12月。 此次改动之后,将使Linux...阅读全文

博文 2021-05-10 08:47:55 joseph

Debian 26 岁生日快乐!Happy DebianDay!

美国当地时间 8 月 16 日(即今天),Debian 在官网发文庆祝诞生26周年。文中说到,26 年前的今天,Ian Murdock 在 comp.os.linux.development 新闻组中宣布完成了一个全新的 Linux 发行版,将其称为"Debian"。 从那天起,Debian 产生了超过 1,288,688,830 行代码,生成了超过 300 个衍生版本,增加了 6155 个已知贡献者,并提交了 975,619 个bug报告。 Debian 在全球拥有千个用户社区,大家聚集在一起主办 Debian 开发者年度大会,每年在不同的国家举办一次 Debian 开发者年度大会 DebConf,当然,今天在世界各地举办了许多 Debianday 庆祝活动。 现在就去开展一个即兴的...阅读全文

博文 2019-08-16 11:27:02 debian.cn

Gitlab CI 配置文件 .gitlab

可用于复制/继承属性,并且是使用hidden keys来提供模版的完美示例。 下面这个例子使用了anchors和map merging。它将会创建两个jobs,test1和test2,该jobs将集成.job_template的,每个job都自定义脚本: .job_template: &job_definition # Hidden key that defines an anchor named 'job_definition' image: ruby:2.1 services: - postgres - redis test1: <<: *job_definition # Merge the contents of the 'job_definition' alias script...阅读全文

博文 2018-12-12 21:09:02 ci.yaml 详解(下)

influxdb内存消耗分析及性能优化【探索篇】

=tsm1_compact_group op_event=start ... #省略 ... #第四次全量压缩结束 ts=2021-01-05T10:44:13.931365Z lvl=info msg="TSM compaction (end)" log_id=0RVRbtjl000 engine=tsm1 tsm1_strategy=full tsm1_optimize=false trace_id=0RWXOKGG000 op_name=tsm1_compact_group op_event=end op_elapsed=851881.724ms ... ...此时influxdb进行分片据的第四次的全量压缩,会进行大量的磁盘io及cpu压缩计算,导致服务的压力增大,所以调用方队列出现据堆积,相关见配置文件...阅读全文

博文 2021-10-27 16:06:30 知乎

Java Annotations详解

注释,后面的Entity表示该注释的名称。 注释的元素 一个注释可以包含多个可以被赋值的元素。一个元素就像是一个属性或者。下面是一个包含一个元素的注释 @Entity(tableName = "vehicles") 元素紧跟在注释之后,并放置在圆括号中,没有元素的注释,不需要圆括号。注释可以包含多个元素,当只包含一个元素时,可以省略元素名,只提供元素值既可,如下: @InsertNew("yes") 注释的位置 你可以将注释放置到类、接口、方法、方法、成员变量、局部变量之前。下面是一个将注释放到类之前的例子: @Entity public class Vehicle { } 下面是一个更大的例子,演示了在类、成员变量、方法、以及局部变量之前添加注释。仅作演示之用,并没有什么特别的...阅读全文

博文 2013-03-02 08:04:55 CSDN博客

Debian 10.8 发布:包括多项安全更新和错误修复

Debian 项目团队宣布其稳定发行版 Debian 10 (代号 "buster")的第八次更新。本次更新主要是对安全问题进行了修正,同时也对一些严重的问题进行了调整。安全公告已经单独发布,并在可用的地方进行了考。 需要注意的是,这个点发行版(point release)并不构成 Debian 10 的新版本,只是更新了其中的一些软件包。没有必要扔掉旧的 "buster "介质。安装后,可以使用最新的Debian镜像将软件包升级到当前版本。 那些经常从 security.debian.org 安装更新的人不会需要更新很多软件包,大多这样的更新都包含在点发布中。新的安装镜像很快就会在常规位置提供。 将现有的安装升级到这个版本可以通过将软件包管理系统指向Debian的许多HTTP镜像之一...阅读全文

博文 2021-02-07 10:57:22 joseph

钉钉发送报警消息的Python实现

): msg_type = 'link' msg = { "messageUrl": url, "picUrl": "https://gw.alicdn.com/tps/TB1FN16LFXXXXXJXpXXXXXXXXXX-256-130.png", "title": title, "text": text } return msg_type, msg 其中_send_msg_to_users方法见前面的代码,picUrl字段设置的是钉钉官方的图片,这里用于测试。 发送文件 def send_file_to_users(access_token, users, file_name): media_id = upload_file(access_token, file_name) if media_id...阅读全文

博文 2018-04-27 08:51:33 debian.cn

DPDK Graph Pipeline 框架简介与实现原理

libgraph 的照对象。因为 VPP 项目整体是一个非常全面的解决方案,从中剥离核心的设计框架为其它轻量级项目所用就变得很有意义。这也是 Libgraph 的产生背景。虽然它目前还是DPDK 中相对比较新的 lib,但是其优秀的设计思想还是值得学习考。 下面将首先介绍 libgraph 架构的核心概念:标量和向量包处理(scalar vs vector packet processing)以及它们之间的区别。然后再介绍 libgraph 中的核心组件,以及它们之间的联系和交互方式。最后,我们将介绍 libgraph 的具体用例以及优缺点。 背景 DPDK libgraph 是一个向量包处理的框架。与传统的标量包处理模型(一系列函负责处理一个据包,重复直到所有据包处理完毕)相比,向量据包处理...阅读全文

博文 2023-02-09 07:13:55 掘金

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

Go 团队近日在博客介绍了 Go 泛型的最新进展。 Go 团队表示他们一直在完善泛型的设计草案,并为此编写了一个类型检查器——可按照设计草案中的说明,解析使用泛型的 Go 代码并报告任何类型的错误。为了收集社区的反馈,他们还编写了示例代码并在草案中提供。 根据收集的反馈和了解的信息,Go 团队发布了更新后的泛型设计草案。 "The design is fully backward compatible with Go 1",完全兼容 Go 1 新版草案最大的变化是放弃了关于 contracts 的想法。因为团队认为 contracts 和 interface 类型之间的区别会令人感到困扰,所以他们正在消除这种区别。类型现在受 interface 类型约束,当 interface 类型仅...阅读全文

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

五种绕过 Linux 命令别名的方法

或显示关于命令的信息。它带运行命令,会阻止 shell 函查询或者别名,或者显示有关给定命令的信息。 方法 5 - 使用 unalias 命令的说明 要从当前会话的已定义别名列表中移除别名,请使用 unalias 命令: unalias mount 要从当前 bash 会话中删除所有别名定义: unalias -a 如果要永久删除定义的别名,则必须删除别名的定义语句,确保你更新你的 ~/.bashrc 或 $HOME/.bash_aliases : vi ~/.bashrc #或者执行 vi $HOME/.bash_aliases 想了解更多信息,考这里的在线手册,或者输入下面的命令查看: man bash help command help unalias help alias...阅读全文

博文 2018-03-08 13:33:02 debian.cn

Linux 系统 vim 编辑器使用简明教程

做文字输入,按ESC键可回到命令模式。 3) 底行模式(last line mode) 将文件保存或退出vi,也可以设置编辑,如寻找字符串、列出行号。 不过一般我们在使用时把vi简化成两个模式,就是将底行模式也算入命令模式。 一、打开文件、保存、关闭文件(vi命令模式下使用) vi filename //打开filename文件 :w //保存文件 :w debian.cn //保存为当前目录下的文件"debian.cn" :q //退出编辑器,如果文件已修改请使用下面的命令 :q! //退出编辑器,且不保存 :wq //退出编辑器,且保存文件 :x! //退出编辑器,且保存文件,忽略是否对文件具有写权限 二、插入文本或行(vi命令模式下使用,执行下面命令后将进入插入模式,按ESC键可退...阅读全文

博文 2015-07-25 16:33:04 debian.cn

开源社区纠纷不断:20 年的 Debian 开发者被排挤出项目

近日,据外媒报道,一位在 Debian 项目中服务超过 20 年的开发者 Norbert Preining 在去年 12 月被降级为维护者,这一行为导致他决定离开该项目。Preining 称,Debian 客户经理团队认为他“多年来一直在欺负项目成员”、“不能与社区团队沟通”。在接受采访时,Preining 表示他现在已经加入了 Arch Linux 项目,将在以后的博文中进行更多的解释。Debian 是一款为极少的纯社区驱动的 Linux 发行版,而不是由商业公司或者政府机构所掌控。虽然 Debian 采用了 Linux Kernel (操作系统的核心),但是大部分基础的操作系统工具都来自于 GNU 工程, 因此又称为 Debian GNU/Linux。DAM 认为 Preining...阅读全文

ISTIO 1.1 正式版今日发布

global.outboundTrafficPolicy.mode ,用于定制 Egress 通信的缺省行为,目前的缺省值为 ALLOW_ANY,即允许全部 Egress 通信。 新增 Sidecar 资源 目前版本中,Sidecar 会包含整个网格内的服务信息,在 1.1 中,新建了 Sidecar 资源,通过对这一 CRD 的配置,不但能够限制 Sidecar 的相关服务的量,从而降低资源占用,提高传播效率;还能方便的对 Sidecar 的代理行为做出更多的精细控制——例如对 Ingress 场景中的被代理端点的配置能力。 ExportTo 多个路由管理对象加入了这一字段,用于指定该资源的生效范围。 路由的区域感知能力 新增了对 AZ/Region 等的区域感知能力,降低跨区请求造成的性能损耗。 对 TCP 服务提供鉴权支持 在既有的 HTTP...阅读全文

博文 2019-03-20 12:55:59 debian.cn

Debian 9 使用kubeadm创建 k8s 集群(上)

become: yes tasks: - name: install kubectl apt: name: kubectl=1.14.0-00 state: present force: yes 剧本中的第一部戏剧如下: 添加依赖项以添加,验证和安装远程存储库中的包。添加Docker APT存储库的apt-key以进行密钥验证。安装Docker,容器运行时。添加Kubernetes APT存储库的apt-key进行密钥验证。将Kubernetes APT存储库添加到远程服务器的APT源列表中。安装kubelet和kubeadm 。 第二个游戏包含一个在主节点上安装kubectl任务。 注意:虽然Kubernetes文档建议您为您的使用最新的Kubernetes稳定版本,但本教程使用特定版本。 这将...阅读全文

博文 2019-05-13 22:47:39 debian.cn

HTTP状态码详解

择。但是,规范中并没有定义任何作出此类自动选择的标准。 407 与401响应类似,只不过客户端必须在代理服务器上进行身份验证。代理服务器必须返回一个 Proxy-Authenticate 用以进行身份询问。客户端可以返回一个 Proxy-Authorization 信息头用以验证。见RFC 2617。 408 请求超时。客户端没有在服务器预备等待的时间内完成一个请求的发送。客户端可以随时再次提交这一请求而无需进行任何更改。 409 由于和被请求的资源的当前状态之间存在冲突,请求无法完成。这个代码只允许用在这样的情况下才能被使用:用户被认为能够解决冲突,并且会重新提交新的请求。该响应应当包含足够的信息以便用户发现冲突的源头。 冲突通常发生于对 PUT 请求的处理中。例如,在采用版本检查的...阅读全文

博文 2021-01-28 17:50:11 debian.cn

成为Debian社区维护人需要做好的准备

Bug、回应用户请求),来使你的 sponsor 相信你已经有能力来处理好某个特定软件包,这样他们才会在接下来的申请流程中推荐你。 一些 sponsor 会在他们觉得合适时向你提议申请 DM,另外一些不会,作为新维护人员要在自己觉得差不多合适的情况下和 sponsor 进行沟通,听取他的意见看是否可以申请。 6. 申请 DM 前要让至少一位你 sponsor 之外的 DD 对你的 GPG 密钥进行字签名,且密钥本身至少要 2048 RSA 或更强。签署密钥不需要对技能的考察,其目的是确认每个密钥的控制者确实是他本人,从而构建 Web of Trust,因而任何人都可以与到密钥签名活动当中。签名时一般需要双方在现实生活中见面,互相检查身份证或护照确认无误后,交换事先打印好的 GPG key...阅读全文

2016年Linux领域的十条大新闻,你关注了吗?

企业所重视,并吸引到甲骨文、高通以及德州仪器等厂商的加入。 项目经理Dan Cauchy指出,“汽车行业需要一套标准的开放式操作系统及框架,允许汽车制造商及供应商快速向其中添加类似于智能手机的功能。”目前项目各与厂商正致力于构建一套通用平台,用以控制车辆运作。 8.高人气Linux发行版Mythbuntu项目被叫停 Mythbuntu项目开发者决定停止相关开发工作。项目与者Thomas Mashos指出,这主要是由于与开发者量严重不足。该团队的成员量已经由原本的10名减少到如今的2名,这意味着Mythbuntu将无法及时完成更新与发布。 不过相关项目MythTV仍将继续存在。它的核心软件仍然可用,且Mythbuntu团队建议用户转而使用Xubuntu等替代性方案。用户可以利用...阅读全文

博文 2021-01-28 17:50:18 debian.cn

Go 1.9 的新特性介绍

可能有问题。自go 1.6之后, 并发地读写map会报错,这在一些知名的开源库中都存在这个问题,所以go 1.9之前的解决方案是额外绑定一个锁,封装成一个新的struct或者单独使用锁都可以。 群众的呼声是响亮的,并发map在项目中大量使用,所以Go 1.9中在包sync加入了新的map, 查询、存储和删除都是平均常时间,可以并发访问。 Monotonic Time 先前的time包的实现都是基于wall time的,但是当机器的时钟调整后会有问题。 比如在计算duration的时候,如果时钟往回拨,可能导致end时间比start时间还早。 所以Go 1.9使用monotonic Time来实现大部分的time中的函,在计算duration的时候不会出现因为时钟调整出现的误差了。 设计文...阅读全文

博文 2021-01-28 17:50:34 debian.cn

nsenter 及 Linux命名空间 简介

, argv[1]); setns clone用于创建新的命令空间,而setns则用来让当前线程(单线程即进程)加入一个命名空间。语法: #define _GNU_SOURCE /* See feature_test_macros(7) */ #include int setns(int fd, int nstype); fd是一个指向一个命名空间的文件描述符,位于/proc/PID/ns/目录。nstype指定了允许进入的命名空间,一般可设置为0,表示允许进入所有命名空间。 因此,往往该函的用法为: 调用setns函:指定该线程的命名空间。调用execvp函:执行指定路径的程序,创建子进程并替换父进程。 这样,就可以指定命名空间运行新的程序了。代码示例: #define...阅读全文

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

Golang 操作 Kafka 样例

partition,又没有设置key,则会采用轮询⽅式,即每次取一小段时间的据写入某 个partition,下一小段的时间写入下一个partition 复制代码 2.1.4. ACK应答机制 producer在向kafka写入消息的时候,可以设置来确定是否确认kafka接收到据,这个可设置 的值为 0,1,all 0代表producer往集群发送据不需要等到集群的返回,不确保消息发送成功。安全性最低但是效 率最高。 1代表producer往集群发送据只要leader应答就可以发送下一条,只确保leader发送成功。 all代表producer往集群发送据需要所有的follower都完成从leader的同步才会发送下一条,确保 leader发送成功和所有的副本都完成备份。安全性最⾼高,但是效...阅读全文

博文 2023-01-10 13:46:09 掘金

基于thanos搭建分布式prometheus

: path: /data/thanos-receive-data type: DirectoryOrCreate - name: thanos-receive-config configMap: name: thanos-receive-config 细节大家可以自己慢慢看,我讲一下关键: 用statefulset部署集群,因为这是一个有状态的存储集群,不能随便漂移。 因为是分布式存储集群,要通过POD亲和性避免2个POD跑到1个Node上。 核心配置是声明receive集群的地址列表,这里利用headless service可以直接拿到每个POD的dns name,是有规则的。 每个thanos receive实例的启动中指定replica标签唯一标识它。 thanos-receive集群的...阅读全文

博文 2021-03-01 13:02:46 鱼儿的博客

如何更改 Linux 的 I/O 调度器

盘名称是 /dev/sdc: # cat /sys/block/sdc/queue/schedulernoop anticipatory deadline [cfq] 如何改变硬盘设备 I/O 调度器 使用如下指令: # echo {SCHEDULER-NAME} > /sys/block//queue/scheduler 比如设置 noop 调度器: # echo noop > /sys/block/sdc/queue/scheduler 以上设置重启后会失效,要想重启后配置仍生效,需要在内核启动中将 elevator=noop 写入 /boot/grub/menu.lst: 1. 备份 menu.lst 文件 cp -p /boot/grub/menu.lst /boot/grub...阅读全文

博文 2021-01-28 17:50:25 debian.cn

Linux基金会推出ACT项目 帮助开发者遵守开源许可证

的资助和支持。” 据悉,目前已确定将成为 ACT 的一部分的四个项目为: FOSSology:开源许可证合规性软件系统和工具包,允许用户从命令行运行许可证,版权和导出控制扫描。 QMSTR:该工具创建了一个集成的开源工具链,可实现许可证合规性管理的行业最佳实践。QMSTR 集成到构建系统中,以了解软件产品及其来源和依赖性。开发者可在本地运行 QMSTR 以验证结果,查看问题并生成合规性报告。 SPDX Tools:软件包据交换(SPDX)是用于传达软件物料清单信息的开放标准,包括组件、许可证、版权和安全考。 Tern: 这是一款检查工具,用于查找容器映像中安装的软件包的元据。它可以更深入地了解容器的物料清单,从而可以更好地决定基于容器的基础架构、集成和部署策略。...阅读全文

博文 2018-12-09 13:32:56 debian.cn

IDC:亚马逊2018年IT支出超136亿美元全球居首 谷歌第二

(Jeremy King)上周日在纽约加美国全国零售联合会大会时表示,公司一直在大力投资技术以改善供应链、电商以及物流服务。沃尔玛还将在今年增大投入,扩大机器人在仓库和门店的使用等。 他表示,沃尔玛在2018年扩大了技术团队,增加了大约1700名技术人员,并预计还会在今年增加2000名技术人员。 拉特斯曼表示,亚马逊不断扩大的云服务需要越来越多的计算机服务器。亚马逊在公用云服务市场占据领先,谷歌和微软公司正在努力追赶。“他们投入巨资在全世界建立计算平台,”他表示。 银行也是大型IT支出机构,其中包括摩根大通、美国银行以及富国银行。拉斯特曼认为,网络安全和字银行工具是银行最明显的投资领域。...阅读全文

博文 2019-01-18 09:58:17 debian.cn

Go 1.8 正式发布 标准库有显著变化和性能提升

务器现在还支持正常关机了,允许服务器通过在服务所有正在运行的请求之后关闭,而最小化停机时间。 上下文(添加到Go 1.7中的标准库)提供了取消和超时机制。Go 1.8在标准库中添加了更多对上下文的支持,包括据库/ sql和net包以及net / http包中的Server.Shutdown。 现在使用新添加的Slice函在排序包中对切片进行排序更简单。例如,要通过“名称”字段对结构体片段进行排序: sort.Slice(s,func(i,j int)bool {return s [i] .Name 更多新版本的添加、改进和修复内容,以及上面列出的改进的详细信息请查看Go 1.8发行说明。 为了庆祝发布,世界各地的Go用户组都在本周举办发布会,这已经成为Go社区的一个传统,所以如果你错过了...阅读全文

博文 2021-01-28 17:50:22 debian.cn

Golang 应用集成 Prometheus 统计数据支持

基本概念 Prometheus 所有采集的监控据均以指标(metric)的形式保存在内置的时间序列据库当中(TSDB):属于同一指标名称,同一标签集合的、有时间戳标记的据流。除了存储的时间序列,Prometheus 还可以根据查询请求产生临时的、衍生的时间序列作为返回结果。 样本在时间序列中的每一个点称为一个样本(sample),样本由以下三部分组成: 指标(metric):指标名称和描述当前样本特征的 labelsets; 时间戳(timestamp):一个精确到毫秒的时间戳; 样本值(value): 一个 folat64 的浮点型据表示当前样本的值。 {

博文 2022-11-24 10:33:09 CSDN博客

为什么 Django 能持续统治 Python 开发世界

码的困结束,从而实现更快的开发。 简而言之,Web框架可以简化Web开发。 如果您想深入了解Web框架及其优点,请点击此处。 为什么Django是Python开发者的最佳选择 Django是一个Python编写的,高级的,MVC风格的开源库。 Django也被称为“完美主义者的最终框架”,它最初是为新闻网站设计的,因为它允许开发人员编写据库驱动的Web应用程序,而无需从头开始编码。 除了更快完成常见的Web开发任务,Django还可以保持设计干净且实用。 Django是Python Web开发新人的最佳选择,因为官方文档和教程是几个(同类)软件开发框架中最好的。 技术市场充斥着一系列网络框架,但Django在最受欢迎的服务器端Web框架里处于顶峰位置。设计Django背后的座右铭很简单...阅读全文

博文 2017-07-21 14:15:11 debian.cn

为何说微软不会基于Linux内核重构Windows

周前,开源软件爱好者 Eric S Raymond 提出的观点引发热议,他认为微软应该在 Linux 内核基础上重构 Windows。他认为目前个人电脑业务持续下滑,Windows 早已不再是微软的支柱业务,通过重构能够实现利润最大化。不过,曾与 Windows Subsystem for Linux 的 Ubuntu 移植开发的 Hayden Barnes 对此持反对观点,认为微软不会基于 Linux 重构 Windows。 Hayden Barnes 是游走在微软和 Linux 社区之间的知名开发者,曾帮助 Windows Subsystem for Linux(WSL)上推进 Ubuntu 开发工作。因此他能够和很多 Linux 开发人员、开源项目人员、社区成员和微软员工进行交流...阅读全文

博文 2020-10-15 14:59:58 debian.cn

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

Prometheus 常用 PromQL 语句样例

, "-", "label1", "label2")提取标签的一部分并将其存储在新标签中: label_replace(my_metric, "dest-label", "$1", "source-label", "(.*):.*")关于 PromQL 更多的使用方法,可以考 PromQL 官方文档: 基础:https://prometheus.io/docs/prometheus/latest/querying/basics/ 操作符:https://prometheus.io/docs/prometheus/latest/querying/operators/ 函:https://prometheus.io/docs/prometheus/latest/querying/functions/ 示例:https...阅读全文

博文 2021-02-09 11:07:15 51CTO博客

Cortex: 高可用和水平扩展Prometheus监控系统

Querier–查询器处理PromQL的求值。如果是最近的据,则从大块存储和或内部获取样本其他组件:Ruler–处理alertmanager产生的警报Alertmanager –评估警报规则ConfigsAPI –在Postgres中存储Ruler和Alertmanager的配置Table Manager–负责在选定的块chunk/索引index存储后端中创建表Consul –存储分发服务器distributor生成的一致的哈希(hash ring)。分发服务器在发送指标时使用散列值来选择ingester。与其他选项的异同ThanosThanos和Cortex具有非常相似的目标:聚合指标,将其存储在块存储中,并为所有度量使用一块single pane。因此,两个项目重用大量Prometheus代码也...阅读全文

博文 2021-10-09 17:00:22 知乎

系统分析工具 Sysdig 详解

Sysdig 是 Sysdig Cloud 开发的主要基于Lua语言的一个开源系统分析工具。Sysdig 能从运行的系统中,获取系统状态和行为,做过滤分析,功能上超同类开源工具。Sysdig 可以看做是 strace + tcpdump + lsof + htop + iftop 以及其他系统分析工具的合集 。 此外 Sysdig 还能对容器(如docker、coreOS、LXC)进行监控。 Sysdig 也支持windows平台和mac平台。下面我们以 Linux系统为例,举例说明 Sysdig 的用法,你也可以考官方原文。 网络 查看占用网络带宽最多的进程:sysdig -c topprocs_net显示主机192.168.0.1的网络传输据 as binary:sysdig...阅读全文

博文 2020-08-09 14:09:05 debian.cn

Golang Context 探究

&valueCtx{parent, key, val} } // context.valueCtx 中存储的键值对与 context.valueCtx.Value 方法中传入的不匹配 // 就会从父上下文中查找该键对应的值直到在某个父上下文中返回 nil 或者查找到对应的值 func (c *valueCtx) Value(key interface{}) interface{} { if c.key == key { return c.val } return c.Context.Value(key) } 在 context 传递据的场景一般很有限,比较常见的使用场景是传递请求对应用户 token 以及用于进行分布式追踪的 trace id。不建议用来传递请求。 我用下面这种图来展示...阅读全文

博文 2021-02-25 09:27:27 lxkaka

高性能缓存服务器 Nuster

Nuster 是一个基于 HAProxy 的高性能缓存服务器。Nuster 完全兼容 HAProxy,并且利用 HAProxy 的 ACL 功能来提供非常细致的缓存规则,比如 请求地址为某某时缓存 请求中的 X 为 Y 时缓存 响应头中的 X 为 Y 时缓存 请求速率超过多少时缓存 等等 Nuster 性能评测 非常快, 单进程模式下是 nginx 的 3 倍,多进程下 nginx 的 2 倍,varnish 的 3 倍。详见benchmark 安装 Nuster git clone https://github.com/jiangwenyuan/nuster.git cd nuster make TARGET=linux2628 make install 详情请照 HAProxy...阅读全文

博文 2017-12-15 22:17:31 debian.cn

技术部门的 SEO 规范

为客户提供SEO顾问服务的时候,经常遇到一些作为外部顾问不方便全程与的情况。比如有的公司要新建网站,或者现有网站推到重来,问我能否从一开始就与,提供SEO建议。 网站规划设计阶段就考虑SEO当然是好事,但作为一个远在异国的顾问,与到这种需要大量深度讨论、沟通、协调的过程中,实在是不好操作,内部SEO人员更适合这种工作。 有的客户公司规模比较大,技术开发、内容、SEO等各部门是分开的,SEO部门的很多需求是要提交给技术、运营等部门实施的。反过来,其它部门的需求也由技术部门实施,但可就不一定经过SEO部门同意了。这个过程中就可能产生对SEO的不良影响。 也有的公司人员流动频繁,即使原先的开发人员都经过SEO培训,也还是会有完全不了解SEO的新人加入团队。 这些情况都需要有一个技术部门必须...阅读全文

博文 2019-03-28 13:58:51 debian.cn

企业制定开源战略的免费指南

大多使用开源的公司都了解其商业价值,但他们可能缺乏战略性地实施开源计划和获得全部回报的工具。根据 The New Stack 最近的一项调查,“开源计划的三大好处是 1)提高了对开源的认识,2)提高了开发周期的速度和灵活性,以及 3)更好的许可证合规性。” 开源指南 运作一个开源计划办公室涉及到创建策略来帮助你定义和实施你的方法,并衡量你的进度。由 Linux 基金会与 TODO Group 合作开发的 企业开源指南基于多年的经验和实践提供了专业开源知识。 最新的指南中, 设置开源战略详细介绍了制定战略和确保成功之路的基本步骤。根据该指南,“你的开源战略将管理、与和创建开源软件的计划与计划所服务的业务目标联系起来。这可以开辟许多机会并促进创新。”该指南涵盖以下主题: 为什么制定战略?你...阅读全文

博文 2018-12-17 13:05:32 debian.cn

取代TCP:工程师宣布QUIC协议已完成RFC 9000发布

IETF 和互联网生态系统而言,这都是一件大喜事。近年来,QUIC 一直是 IETF 最引人瞩目的活动之一。作为搜索巨头 Google 发起的一项实验,其已经历了五年时间的发展,期间举办了 26 场面对面会议、商议了 1749 次问题、以及成千上万封的邮件沟通。在 IETF 标准的开发协作与迭代流程指导下,QUIC 协议跨越了传统上孤立的传输、安全和应用程序空间,且在审议期间引发了热烈的讨论,最终顺利过渡并达成了广泛的共识。考虑到互联网传输生态系统已经僵化了几十年,而 QUIC 将能够通过加密、版本控制、后续可建立的更丰富的技术、以及高性能服务来摆脱这种尴尬的僵化局面。QUIC 已经做好了引领下一代互联网创新的准备,且开始通过不可靠据报之类的扩展,为实时媒体和其它不需要完全可靠传输服务的应用程序...阅读全文

Kubernetes v1.21 新特性预览

Beta 阶段,并默认开启。注意,使用该特性需要 CSI 驱动程序实现对应的接口。TTL 控制器 BetaTTL 控制器用来自动清理已经结束的 Pod,如处于 Complete 或 Failed 状态的 Job。Pod 停止之后的 TTL 可以通过 .spec.ttlSecondsAfterFinished 来设置。注意,该特性要求集群中各节点(包括控制节点)的时间一致,比如在所有节点中运行 NTP 服务。GenericEphemeralVolume Beta通用临时卷(GenericEphemeralVolume)类似于 emptyDir 卷,但它更加灵活:存储可以是本地的,也可以是网络存储。卷可以有固定的大小,Pod 不能超量使用。卷可能有一些初始据,这取决于驱动程序和。当驱动程序支持...阅读全文

博文 2021-03-30 20:24:36 mp.weixin.qq.com

DNS SRV:使用DNS服务器做服务发现

型代码为 33。SRV的记录格式为: _Service._Proto.Name TTL Class SRV Priority Weight Port Target Service: 服务名称,前缀“_”是为防止与DNS Label(普通域名)冲突。 Proto: 服务使用的通信协议,_TCP、_UDP、其它标准协议或者自定义的协议。 Name: 提供服务的域名。 TTL: 缓存有效时间。 CLASS: 类别 Priority: 该记录的优先级,值越小表示优先级越高,范围0-65535。 Weight: 该记录的权重,值越高权重越高,范围0-65535。 Port: 服务端口号,0-65535。 Target: host 地址。 客户端查询到多条记录的时候,使用优先级最高的记录。对相同优先...阅读全文

博文 2019-03-05 09:35:34 debian.cn

Debian 包维护者不满 Debian 开发流程 宣布退出

昨日,一位名为 Michael Stapelberg 的 Debian 包维护者在其个人博客发表了一篇长文,宣布将逐渐减少与 Debian 的维护和相关活动,以及解释为何这样做的原因。 Stapelberg 提到了几个星期前加 Debian 聚会时的感受,他表示这次聚会讨论的主题和几年前基本一样,这使得他开始反思自己是否仍适合留在 Debian 继续与维护。最后 Stapelberg 宣布了一个他自认为早已应该做出的决定:退出 Debian 的维护。 Stapelberg 表示他在 Debian 上投入了十年以上的时间,刚开始是以学生的身份加入,因此拥有大量的业余时间。此后,在 Debian 开发团队做了五年的全职工作也学到了很多知识,包括大型软件工程项目的工作原理以及个人喜欢的计算...阅读全文

博文 2019-03-14 11:01:04 debian.cn

Apache Flink 1.14 新特性预览 - OSCHINA

就能够达到比较好的性能上的提升。 3. 支持 LoopBack 模式 在以往本地执行实际是在 Python 的进程中去运行客户端程序,提交 Java 进程启动一个迷你集群去执行 Java 部分代码。Java 部分代码也会和生产部分的一样,去启动一个新的 Python 进程去执行对应的 Python UDF,从图下可以看出新的进程其实在本地调试中是没有必要存在的。 所以支持 lookback 模式后可以让 Java 的 opt 直接把 UDF 运行在之前 Python client 所运行的相同的进程内,通过这种方式: 首先是避免了启动额外进程所带来的开销; 最重要的是在本地调试中,我们可以在同一个进程内能够更好利用一些工具进行 debug,这个是对开发者体验上的一个提升。 六、总结 本文...阅读全文

博文 2021-09-05 07:26:58 中文开源技术交流社区

Python 社区有了新治理模式

随着 Python 之父 Guido van Rossum 逐步卸任 BDFL,Python(CPython)的未来之路牵动了万千开发者的心。没了首领,Python 今后的发展会怎么样?社区将如何运作?谁来领导 Python 这门语言和社区呢?这些问题不得不解决,而用什么样的方式解决,这就需要先由社区讨论并最终决定。 前两天我们分析过目前 Python 社区已经提出的 7 种正在进行投票的治理方案,而最新消息是,目前投票节已经结束,最终 PEP 8016 当选了新时代的 Python 社区治理方案。 PEP 8016 治理方案采用指导委员会模式,其特点是引导治理的迭代,该方案由 Nathaniel J. Smith 和 Donald Stufft 提出。 PEP 8016 中提出了不信任...阅读全文

红帽 2017 峰会 第三天回顾:自动化的未来

器交付给OpenShift 将控制接口暴露给Ansible 将据接口暴露给Insights Paul Cormier在主题演讲上对目前红帽各个产品线所处的位置和相互关系进行了梳理,可考文末附录部分的演讲截图。 其他:跨领域开源 从两年前开始,红帽成立了一个名为Open Source Stories的制片项目,平均每半年制作一个讲述跨领域开源案例的记录短片,至今已经发布了五个短片,分别涉及教育、义肢制作、脑肿瘤治疗、城市庆典活动组织、以及一套关于AI发展的系列。在本次峰会,红帽也邀请了新加坡GovTech创新实验室、开源硬件组织OSHWA.org、以及MIT开放农业实验室(Media Lab下的OpenAg项目)等不同领域的负责人到现场分享。 与传统企业字转型的目标类似,跨领域开源的目标...阅读全文

博文 2021-01-28 17:50:29 debian.cn

2017 热门开源自动化测试框架优缺点对比

。 优点: 启动和测试执行速度快。 自带断言和注释。 支持并行测试。 支持测试驱动开发(TDD)。 缺点: 非跨平台,仅适用于 .Net 语言。 未集成到 Visual Studio echo 系统中,意味着使用它需要更多的维护。 一个很好的 C#开源单元测试框架,历史悠久,口碑较高。 不过,如果你正准备使用 .NET 语言,也可以考虑 MSTest 。 5. TestNG TestNG 是一个 Java 自动化测试框架,受 JUnit 和 NUnit 的启发,但又改进和新增了一些功能。旨在涵盖所有自动化测试类别:单元测试、功能测试、端到端、集成测试等。 优点: 容易整合到 maven 循中。 使开发人员能够编写灵活而强大的测试。 支持据驱动测试(DDT)。 注释很容易理解。 测试用例可以轻...阅读全文

博文 2017-11-15 08:52:47 debian.cn

协议介绍之深入了解 gRPC

。发送请求的时候,只要指定 field 在静态 table 里面的索引,双方就知道要发送的 field 是什么了。 对于动态 table,初始化为空,如果两边交互之后,发现有新的 field,就添加到动态 table 上面,这样后面的请求就可以跟静态 table 一样,只需要带上相关的 index 就可以了。 同时,为了减少据传输的大小,使用 Huffman 进行编码。这里就不再详细说明 HPACK 和 Huffman 如何编码了。 小结 上面只是大概列举了一些 HTTP/2 的特性,还有一些,譬如 push,以及不同的 frame 定义等都没有提及,大家感兴趣,可以自行考 HTTP/2 RFC 文档。 Hello gRPC gRPC 是 Google 基于 HTTP/2 以及...阅读全文

博文 2017-06-22 11:08:48 debian.cn