N 次跳票后,Fedora 27 正式版终于发布了
,支持基本包覆盖。 Cockpit 也更新到了最新版本。 Fedora Server Fedora Server 尚未正式发布,是由于正在进行模块化重组。这将允许 Fedora Server 用户体验更加模块化的操作系统,最终版本计划在一个月后发布。 Fedora Workstation 目录...阅读全文
,支持基本包覆盖。 Cockpit 也更新到了最新版本。 Fedora Server Fedora Server 尚未正式发布,是由于正在进行模块化重组。这将允许 Fedora Server 用户体验更加模块化的操作系统,最终版本计划在一个月后发布。 Fedora Workstation 目录...阅读全文
Istio 1.2.0 已发布,距上一个重要版本 1.1 发布过去刚好三个月。更新的内容主要有以下这些。 General 添加了 traffic.sidecar.istio.io/includeInboundPorts 注解以消除服务所有者在部署 yaml 文件中声明 containerPort 的需要。这将成为未来版本的默认设置。为 Kubernetes 集群添加了对 IPv6 的实验性支持 Traffic Management 在多集群环境中改进基于 基于位置的路由改进 ALLOW_ANY 模式 下的出站流量策略。现有端口上未知的 HTTP/HTTPS 主机流量将按 原样转发 。Envoy 访问日志将记录未知流量。添加了对上游服务设置 HTTP 空闲超时的支持改进了对 NONE 模式...阅读全文
Kubernetes代码库的前提下开发自己的解决方案。 由于1.9版本中提供的功能尚处于alpha测试阶段,因此用户必须额外加以启用,且我们不建议您将其应用于实际生产。但该版本的出现,意味着Kubernetes存储生态系统正朝着更加可扩展且基于标准的方向迈进。 其它功能 定制化资源定义(简称CRD)验证版目前已经开始beta测试,其默认启用,可帮助CRD作者们针对无效对象得出清晰且即时的反馈。 SIG Node硬件加速器目前进入alpha测试阶段,可利用GPU资源实现机器学习以及其它高性能工作负载。 CoreDNS alpha版本允许用户利用标准工具安装CoreDNS。 IPVS mode for kube-proxy进入beta版本,可为大型集群提供更出色的可扩展性与性能表现。 社区中的每个特别兴趣小组(简...阅读全文
simsun.ttc放在这个目录 cp simsun.ttc /home/your_username/.wine/drive_c/windows/Fonts/ 有其他文章建议把simfang.ttf simkai.ttf timesbd.ttf timesi.ttf simhei.ttf simsun.ttc timesbi.ttf times.ttf这几个字体都放进这目录,或者更多字体。 这样wine安装程序时应该能够看清楚中文了,但wine安装的程序还会出现中文方块。因此还要修改注册表。先写注册表字体修改文件font.reg如下(引用了文章wine中文乱码的解决方法一个比较直接的办法): REGEDIT4 [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT...阅读全文
中的经典挑战是减少从运行 git clone 到在设备上执行二进制文件的时间。对于生产嵌入式项目,往往通常需要一整套工具。而 Pigweed 能够通过虚拟环境提供简化设置的工具,具体来说,Pigweed 的 pw_env_setup 模块中的引导脚本可设置当前的 shell 以访问一组标准化工具——包括 Python 3.8、clang 格式以及 ARM 编译器。所有这些都是在虚拟环境中完成的,因此无需修改系统的默认环境。 在典型的嵌入式开发中,即使添加很小的更改也需要一些额外的手动步骤。而 Pigweed 的 pw_watch 模块直接解决了这种效率低下的问题,它提供了一个监视者(watcher),该监视者可以在保存文件时自动调用构建,还可以运行受代码更改影响的特定测试。这大大缩短了更改的...阅读全文
我们知道Windows 10 中的 WSL正式版已发布,我们可以直接在 Windows 商店中安装和卸载Debian GNU/Linux 操作系统。如果我们忘记了 WSL 中的 Linux 系统的密码,应该如何恢复?本文将详细介绍。 最新修改方式更新如下(2018.4): 在Windows上用管理员权限打开 CMD 或者 PowerShell(Win+x,A) 修改默认登录用户为 root : lxrun /setdefaultuser root 现在登录打开 WSL 直接就是 root 登录,并不需要密码 找到自己的普通账号名,使用 passwd 命令修改用户密码 passwd username 将默认登录用户由 root 修改回普通用户 lxrun /setdefaultuser...阅读全文
Debian和Ubuntu都有一组官方授予的针对贡献者的成员角色,他们可以以参加选举或其他官方决策等方式参与到项目的治理中,同时这也是给贡献者分配工作的一种手段,大部分贡献者对他们获得的身份都感到很自豪。 在一个发行版的发展过程中,成员结构扮演中重要的角色:它定义了受项目欢迎的贡献者类型,以及项目对贡献者的期望和贡献者拥有的权利。最后,这种方式形成了项目招募新贡献者的吸引力,而只有不断吸收新贡献者才能使项目保持活力。 本文将以Debian和Ubuntu对比为例,介绍不同背景的社区成员是如何进行贡献以及官方认可的。 简介 在具体介绍开始之前,先为大家简单的介绍一下Debian和Ubuntu这两个项目。 Debian是由各种开源协议下的自由软体组成的作业系统,由“Debian计划”组织维护...阅读全文
AMD即将推出第二代Ryzen 2000系列处理器,各方面全面提升,从最近泄露的规格和性能看十分值得期待。Ryzen二代基于12nm新工艺和Zen+新架构,频率平均提升400MHz,并支持更高级的动态加速技术,超频空间也更大,同时改进了缓存、内存性能。 权威评测软件SiSoftware不小心泄露了一份Ryzen 7 2700X、Ryzen 5 2600的评测报告,虽然很快被撤下还是有网友保留了下来。这份评测都是考察SiSoftware的理论性能项目,没有实际应用和游戏测试,但是Ryzen二代的架构提升已经十分明显。 首先来看一下这两款新品的主要规格和 SiSoftware 的评价: 内存频率: 2400MHz提高到2933MHz,可以大大改进内存性能,就是现在高频内存太贵了。 核心线程...阅读全文
gRPC是一个高性能、开源、通用的RPC框架,面向移动和HTTP/2设计,是由谷歌发布的首款基于Protocol Buffers的RPC框架。 gRPC基于HTTP/2标准设计,带来诸如双向流、流控、头部压缩、单TCP连接上的多复用请求等特性。这些特性使得其在移动设备上表现更好,更省电且节省空间占用。gRPC 1.0版本是2015年面世以后的第一次版本发布,开发者可以把该版本用于生产。API现在也是很稳定的。 Bugsnag(注:一家云端bug监控服务商)每天处理数以亿计的错误信息,为了处理这些数据,考虑优先构建一个可扩展,性能强大的后端系统,并从中学到很多有挑战性的技术。最近,我们推出了新版本的仪表板,这个项目要求扩展系统,来处理服务呼叫的显著增加,这些呼叫是跟踪用户发布和会话所需的...阅读全文
/apt/sources.list 2、删除原文件所有内容,buster 系统用以下内容取代: deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib 注:网址末尾的raspbian重复两次是必须的。因为Raspbian的仓库中除了APT软件源还包含其他代码。APT软件源不在仓库的根目录,而在raspbian/子目录下。 stretch 系统用以下内容取代: deb http...阅读全文
签名的证书。 我习惯把视图调整为目录视图。 左上角有个下拉框,Folder View. 这里系统是安装完了,但是还需要一些配置. 设置网络Datacenter - Nodes - node System - Network 现在服务器是通过具体的硬件网卡来获取 IP 地址接入互联网。 如图: 但是我们需要新建一个桥接网卡,VM 会通过这个桥接网卡来配置 IP 地址,类比桌面环境下用 VMWare 开虚拟机,通过桥接上网之类的。 这里需要先删掉 Network Device 上面的 IP 地址,因为 IP 地址不能同时分配到两张网卡上,所以记下你的 IP 地址和网关,当然,你的服务器后台也应该有这些。 那么,问题来了,删掉后,IP 地址没有配置到网卡上,我们是不是无法访问到这台服务器了呢?会立...阅读全文
得自己在技术委员会的工作对整个项目没什么帮助。之前另一位Debian的systemd维护团队成员也宣布了辞职。 systemd项目看起来让Debian社区产生了分裂。技术委员会主席Bdale Garbee宣布启动寻找新成员的工作。...阅读全文
引言:众所周知,Nginx 服务器是一个高性能的 Web 和反向代理服务器。Nginx 在激烈的 Web 服务器竞争中依旧保持良好的发展势头,一度成为 Web 服务器市场的后期之秀,这一切跟 Nginx 的架构设计是分不开的。 一. Nginx 模块化设计 高度模块化的设计是 Nginx 的架构基础。Nginx 服务器被分解为多个模块,每个模块就是一个功能模块,只负责自身的功能,模块之间严格遵循“高内聚,低耦合”的原则。 核心模块 核心模块是 Nginx 服务器正常运行必不可少的模块,提供错误日志记录、配置文件解析、事件驱动机制、进程管理等核心功能。 标准 HTTP 模块 标准 HTTP 模块提供 HTTP 协议解析相关的功能,如:端口配置、网页编码设置、HTTP 响应头设置等。 可选...阅读全文
-bin、Sysv-rc-conf、Disper、Smbclient、Syslinux-utils、Fcitx、Ibus、Pidgin-Otr Kodachi 的安装使用: 方式一(推荐):下载 ISO 文件,并使用免费刻录工具(如 Rufus 或 Linux Live)将其刻录到 U 盘,然后通过插入 PC 来启动。你需按 F12键(不同电脑类型按键可能不同)进入引导菜单,并更改 BIOS 从 USB 启动。 方式二:下载 ISO 文件,并使用免费刻录工具(如 DAEMON Tools)将其刻录到 DVD 上,然后通过 PC 的光盘启动。 方式三:下载 ISO 文件,使用 Vmware 或 Virtualbox 虚拟机来启动。 提示: 以普通用户身份登录系统: Username: kodachi...阅读全文
接口。以这种方式合并多个接口的数据: $ vnstat -i wlan0+eth0+eth1 你可以通过以下几种方式过滤显示: -h 以小时显示统计数据。 -d 以天数显示统计数据。 -w 和 -m 按周和月显示统计数据。 使用 -l 选项查看实时更新。 此命令删除 wlan1 的数据库,并停止监控它: $ vnstat -i wlan1 --delete 此命令为网络接口创建别名。此例使用 Ubuntu 16.04 中的一个奇怪的接口名称: $ vnstat -u -i enp0s25 --nick eth0 默认情况下,vnstat 监视 eth0。你可以在 /etc/vnstat.conf 中更改此内容,或在主目录中创建自己的个人配置文件。请参见 man vnstat 以获得完整的参考...阅读全文
服务监控系统 Prometheus 2.0 已发布,Prometheus 是一个 Go 语言开发的开源的服务监控系统和时间序列数据库。 Prometheus 2.0 有一个简单而强大的运营模式。然而,基础设施领域也没有停滞不前,像 Kubernetes 和 Mesos 这样的项目正在迅速改变软件的部署和管理方式。受监控的环境变得越来越活跃。 存储 Prometheus 2.0 有性能显着提高,几乎在所有方面都有所改进。查询延迟更加一致,特别是在高系列流失的情况下,它的规模更大。在不同的现实世界生产情景下测量的资源消耗也显着下降: 与 Prometheus1.8 相比,CPU 使用率 降低了 20% – 40% 与普 Prometheus1.8 相比, 磁盘空间使用率 降低了 33...阅读全文
在 Linux 5.2 发布一周后,第一个修订版本 5.2.1 也已经发布了,用来处理各种错误/回归。需要注意的是5.2并非长期支持(LTS)分支,推荐注重稳定的用户还是使用当前的LTS内核。 5.2.1版只是修改一些小小的问题,主要有以下方面: 修复 Perf减少 RTL 8712 驱动程序的堆栈使用fscrapt 将不再为 dead 目录设置策略还有一个新的文档部分,详细说明了 Spectre 的 CPU 漏洞 完整列表查看发布说明。 Linux Kernel 5.2的亮点包括Sound Open Firmware,这是一个支持DSP音频设备的开源固件。此外还新增了用于挂载文件系统的新挂载API,面向ARM Mail设备的全新开源GPU驱动,在EXT4文件系统中支持不区分大小写,以及对...阅读全文
Debian 的 Bug 日志记录显示,目前 Debian 已经完全删除了与 Python 2 相关的软件包。2022 年 12 月 27 日,一名维护者发表邮件称要删除 Debian 中 “残留” 的 Python 2 相关软件包,但这需要强制执行:gnat-gps (Fix coming when GNAT 12 is complete: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1015974#10)python-defaults (earlier RM bug)现在,这项工作已顺利完成,意味着 Debian 终于完全删除了 Python 2。许多开发者也感叹来之不易。Python 2 早在 2020 年就已正式结束支持,而...阅读全文
windows_security_products 详情请见发布说明:https://github.com/osquery/osquery/releases/tag/4.1.0 New Features / Under the Hood improvements Build Bug Fixes 目录...阅读全文
最近腾讯云活动不断,双十一智慧上云服务器的优惠力度非常的大,可以说是前所未有的历史低价了。赶紧行动吧, 2核4GB内存50GB硬盘,3Mbps带宽的国内主机,三年只需要688元,1核2GB内存50GB硬盘,1Mbps带宽的国内主机三年也只要268块,1核1GB内存50GB硬盘,1Mbps带宽的香港主机,三年只要428块。 需要特别提醒的一句是,如果你的账号之前就已注册,但是没有购买记录,也是可以参加的。活动页面也是很炫的,如果不想买国内主机,还有免备案的香港主机可选,价格都很良心, 相比此前的方案,优惠力度绝对是杠杠的, 活动地址(已更新): 1核1GB 1Mbps 只要88/年:直达链接2核4GB 3Mbps 带宽 仅688元/三年:直达链接 目前活动优惠力度历史新低,建议大家尽快下单...阅读全文
用 docker,则打包过程就交由 docker build 完成。Deploy:用 Bake 中创建的镜像部署成一台虚拟机。Jenkins: 执行一个 Jenkins 的 job。Manual Judgment : 暂停,等待用户的许可后再继续。Pipeline : 执行另外一个 pipeline。Script :执行任意的脚本。Wait : 等待一段时间。 从 pipeline 的定义看,Spinnaker 和 Jenkins 有几分相似,不过两者的设计出发点的不同,stackoverflow上有相关的讨论。总结来看,jenkins 偏向 CI,产出物是软件包;Spinnaker 是 CD,将软件包分发到服务器/虚拟机上,保持软件正常运行,它的目标只是让“部署”的过程更容易更可扩展。有一...阅读全文
2012 年宣布的 GNU Guix 包管理器项目正式释出了 1.0.0 版本。在过去七年中,260 名开发者递交了超过 4 万个 commits,此外还有文档、翻译、设计等方面的大量工作。 GNU Guix 是事务性包管理器,可以安装在 GNU/Linux 发行版上,也可以作为 i686、x86_64、ARMv7 和 AArch64 机器的独立操作系统发行版。 用户可使用 Guix 安装应用程序并保持程序在最新状态,软件开发者可以产生一次性的软件环境,系统管理员可以更容易的部署复杂服务。 感兴趣的用户可以使用虚拟机镜像体验 Guix。...阅读全文
Uyuni 4.0.2, 发布了,新版本基于 openSUSE Leap 15.1 但同时支持 Leap 15.1, CentOS, Ubuntu 和其他客户端。Debian 的支持目前还在体验阶段。此外新版本使用 Salt 2019.2, Grafana 6.2.5, Cobbler 3.0 和 Python 3.6 。详细说明请看这里 。 Uyuni 是一种解决方案,适用于需要对其服务器上的维护和软件包部署进行绝对控制的组织。 通过自动化软件管理,资产管理和系统配置,Uyuni 使您能够管理大型 Linux 系统并使其保持最新。 Uyuni 允许您在有效管理系统生命周期要求的同时保持高级别的安全性。 Uyuni 使用 Salt 来提供事件驱动的配置和管理控制。 Salt-master...阅读全文
PIM存内计算是近年来的热门领域,与传统诺伊曼体系面临着越来越严重的存储贷款瓶颈不同,PIM直接在存储芯片上集成了计算功能,而不是CPU、内存数据分离,这样就能极大地提高带宽,在AI人工智能领域这个更重要。得益于这一突破,三星首发的HBM-PIM技术实现了2倍的性能,同时功耗还降低了70%,还能兼容目前的HBM接口,便于客户通过HBM-PIM来构建自己的AI加速器。三星计划今年上半年推出HBM-PIN芯片完成客户验证工作,何时量产、商用还没信息。...阅读全文
Linkerd 是一个提供弹性云端原生应用服务网格(service mesh)的开源项目,也是面向微服务的开源 RPC 代理。Linkerd(发音 "linker-DEE")是一个透明的服务网格,旨在通过透明地将服务发现、负载均衡、故障处理,插桩(instrumentation)和路由添加到所有的服务间通信中,使现代应用程序安全可靠,而无需侵入应用内部本身的实现。 linkerd 作为一个透明的 HTTP/gRPC/thrift/ 等代理,通常可以以最少的配置被加入到现有的应用程序中,不管这些应用程序采用什么语言编写。linkerd 能与许多通用协议和服务发现后端运行,包括 Mesos 和 Kubernetes 等预定好的环境。 Linkerd 基于 Netty 和...阅读全文
- 设置工作区目录和Ansible清单文件 在本节中,您将在本地计算机上创建一个用作工作区的目录。 您将在本地配置Ansible,以便它可以与远程服务器上的命令通信并执行命令。 完成后,您将创建一个包含库存信息的hosts文件,例如服务器的IP地址和每个服务器所属的组。 在三台服务器中,一台服务器将成为主服务器,其IP显示为master_ip 。 其他两个服务器将是worker,并且将具有IP worker_1_ip和worker_2_ip 。 在本地计算机的主目录中创建一个名为~/kube-cluster的目录并将其cd入其中: mkdir ~/kube-cluster cd ~/kube-cluster 该目录将成为本教程其余部分的工作区,并包含所有Ansible Playbook。 它也将...阅读全文
树莓派基金会发布了一款别具一格的新品单板计算机:Raspberry Pi 400。这部新款树莓派的外观看起来就是一块小键盘,开发板集成在键盘内部。官方表示其性能比此前发布的 Raspberry Pi 4 略高。 据 Phoronix 的评测介绍,树莓派 400 是一个非常漂亮的小设备,外形小巧,采用大铝块冷却的方式作为键盘内的散热器。常用的线路接口设置在键盘的后方。 树莓派 400 配置的是与树莓派 4 相同的 Broadcom SoC,采用 Cortex-A72 四核设计,主频为1.8GHz,比树莓派 4 Model B 的 1.5GHz 略高。起步价为 70 美元。关于树莓派 400 的更多测试信息可查看 Phoronix。...阅读全文
状态图标等。 LMDE 3 中缺少的某些功能也从 Linux Mint 移植而来。LMDE 4 还将支持 Btrfs 子模块和主目录加密: 引导菜单中的 NVIDIA 驱动 一直以来在某些 NVIDIA 卡上存在 Nouveau(开源驱动程序)兼容性问题,在大多数情况下,人们不得不使用 nomodeset,但是当 Nouveau 根本无法识别芯片组时,完全没有图形显示。LMDE 4 中,在启动菜单中添加了一个新条目,该条目可即时安装 NVIDIA 驱动程序,实时会话和已安装的 OS 均可立即使用: Cinnamon 4.6 显示设置 下一版本的 Cinnamon 将允许选择显示器的频率,这是一个呼声很高的功能。 同时 Cinnamon 4.6 还将引入分数缩放功能。目前,缩放比为 100...阅读全文
态。这时如果我们要查看或更改集群,需要登录到集群的主节点 kmaster 上用 kubectl 操作,这有些麻烦。因此我们会将 kubectl 放到 PC 上使用。首先,在主节点上获取一些必要的配置信息,在 kmaster 上执行: sudo cat /etc/rancher/k3s/k3s.yaml 复制上面命令的输出,然后在本地PC上创建 ~/.kube 目录,在其中创建配置文件 config,并将上面复制的内容写入。随后我们需要编辑这个配置文件 ~/.kube/config ,更新server的地址为网络地址。 找到记录 server: https://localhost:6443,修改为, server: https://192.168.0.50:6443 如果 PC 上还没有安装...阅读全文
-versions #### API kubectl get events #### 查看事件 kubectl get nodes //获取全部节点 kubectl delete node k8s2 //删除节点 kubectl rollout status deploy nginx-test 创建 kubectl create -f ./nginx.yaml #### 创建资源 kubectl create -f . #### 创建当前目录下的所有yaml资源 kubectl create -f ./nginx1.yaml -f ./mysql2.yaml #### 使用多个文件创建资源 kubectl create -f ./dir #### 使用目录下的所有清单文件来创建资源 kubectl...阅读全文
最近发现网站跑了这么久,搜索页的搜索的功能还有问题,应该是一直都不能用。 就开了一贴记录网站后台更新的 changelog,和现存的 bug、feature 需求等。记录为主,大部分 Bug 也不会第一时间修复。...阅读全文
的新功能。 第二个安全功能是拦截tab-under(“页签下”)行为的一种新机制。Tab-under是一种比较新的概念,它说明的是网页在新页签下打开链接后将旧页签重定向至新URL。 不止是恶意广告商、普通广告商也在使用tab-under,主要原因是它们绕过Chrome的内置弹出消息拦截器,从而让广告商打开推送恶意产品、服务或站点的多个页签。 这个功能将会在Chrome65中发布,该版本定于在2018年3月初发布。谷歌通过上述两个安全功能拦截恶意(内嵌框架或tab-under)重定向,并在页面地面展示工具栏,详细说明被拦截行为的详情。 拦截重定向用户的误导性UI元素 谷歌新增的第三个安全功能是“滥用体验报告”,是以网站黑名单的形式出现的。这些网站使用误导性的UI元素,在未经用户同意的情况下重定...阅读全文
Google搜索时你遇到的各种提示(记得也搜索一下Google groups),这样很可能直接就找到了解决问题的文档或讨论组的相关线索。即使没有结果,在论坛或讨论小组寻求帮助时提一句「我在Google中搜过下列句子,但没有找到什么有用的东西」也是件好事,至少它表明了搜索引擎暂时还不能提供哪些帮助。另外,将搜索关键词与你的问题及可能的解决方案联系起来,还有助于引导其他有类似问题的人。 耐心一点,不要指望Google搜索几秒钟就能解决一个复杂的问题。读一下与产品或项目相关的常见问题解答。在向专家提问之前,先稍微放松一下,再深入地思考一下问题。相信我们,他们能从你的提问之中看得出你做了多少阅读与思考的准备功课,如果你是有备而来,专家们很有可能会为你解答。如果你第一次搜索没有结果(或者结果太多),也不要抛出一...阅读全文
hostapd软件: 2.1 进入http://w1.fi/hostapd/网站下载hostapd-2.5.tar.gz文件 2.2 执行命令tar -zxvf hostapd-2.5.tar.gz对hostapd-2.5.tar.gz进行解压,当前目录下将生成hostapd-2.5文件夹,使用cd hostapd-2.5进入该文件夹,并执行cp defconfig .config命令,使用vi .config命令对该文件进行修改,修改内容如下: # Use libnl v2.0 (or 3.0) libraries. CONFIG_LIBNL20=y # Use libnl 3.2 libraries (if this is selected, CONFIG_LIBNL20 is ignored...阅读全文
/etc/apt/sources.list 和 /etc/apt/sources.list.d/ 目录下的 .list 文件定义的。 $ sudo apt-get upgrade #更新系统所有已安装软件包,只更新包会忽略依赖关系 $ sudo apt upgrade $ sudo apt-get upgrade -u #-u 列出可升级软件列表 $ sudo apt-get upgrade -s #模拟升级 $ sudo apt-get dist-upgrade #根据依赖关系更新系统所有已安装软件包 $ sudo apt-get --reinstall install pkgname #只升级指定的软件包 $ sudo apt-get source pkgname #只下载源码包 $ sudo...阅读全文
namespaces为你的系统网络协议栈提供了自己的视图。这个协议栈包括你的本地主机(localhost)。确认你在目录crosbymichael/make-containers下,并运行 ip a查看所有运行在你的主机上的网络接口。 > ip a root@development:/containers# ip a 1: lo:
近日,Facebook 开源了一套解决重要计算集群管理问题的 Linux 内核组件和相关工具,这些项目覆盖了资源控制、资源利用、工作负载隔离、负载均衡、测量和监控等方面:BPF、Btrfs、Netconsd、Cgroup2、PSI、Oomd。 Facebook 表示这些项目现在已大规模用于其所有基础设施生产环境中,并用于其它许多企业组织的环境中。 BPF:https://facebookmicrosites.github.io/bpf/ BPF 是 Linux 内核中一种高度灵活、高效率的代码执行引擎,可以让字节码在各个 hook 点运行,以使用自定义代码。虽然 BPF 已广泛用于数据包过滤,但是 BPF 的指令集具有很强的通用性和灵活性,足以支持和允许除网络之外的众多使用场合,比如跟踪和...阅读全文
齐全的API都是设计良好的API,虽然这个感觉并不完全正确,但这两者确实是强相关的,所以在很多人眼里,文档的完善度也成为衡量一个产品专业度的指标。 - 避免被重复的问题打扰: 有些问题你只需要写在文档里,这样有人来问你的时候你就可以让他直接去看文档了,而不是又给他解释一遍。 ## 为什么大多数人都不喜欢写文档?## 关于文档的重要性,每个技术人或多或少都知道一些,但很多人还是没有写文档的习惯,为什么? 除了上文中提到的文档的收益滞后性外,还有以下几点原因: - 很多工程师习惯将写代码和写作割裂开,不仅仅是在工作上,而且在思想上就认为它们是完全不相关的两项工作,这就导致好多人重代码不重文档。 - 也有很多工程师认为自己不善写作,索性就不写了。 这实际是个偷懒的借口,写文档不需要华丽的辞藻、生动...阅读全文
cgroup 的性能 pids:控制可创建的进程总数 Cgroup 子系统运行在内核态,不能直接和用户交互,因此,需要通过文件系统提供和终端用户的接口。在 Linux 中,表现为 Cgroup 子系统挂载的文件系统目录,用户操作这些文件就可以直接和内核中的 Cgroup 对象交互。 不同的子系统对应的文件系统目录包含不同的文件,但以下文件是所有子系统都有的: cgroup.clone_children cgroup.procs notify_on_release tasks cgroup.clone_children 控制子 cgroup 是否继承父 cgroup 的配置,只对 cpuset 子系统有效[4],并且在 cgroup V2 中已经移除[5]。 cgroup.procs 位于当前...阅读全文
在真正的生产环境中,如何合理的分配服务器资源、提高利用率、让整个集群运行的更加稳定使得 k8s-scheduler 这个角色在集群中的地位愈发重要。 kube-scheduler的预选(过滤)和精选(打分) api-server会将创建pod的请求发送给kube-scheduler,并且将pod信息记录在etcd数据库中。之后kube-scheduler会根据预选(过滤)规则,首先过滤掉一部分node节点中的pod,没有被过滤掉的pod可以看做是可以被调度的pod,之后再通过更加严格的规则给剩下的pod打分,这一步也叫作优选。打分最高的pod可以看做被优先分配到pod任务。 调度流程简介 创建pod的命令被api-server的api接口接收到。api-server将pod信息存储在...阅读全文
(对于大中型机,甚至重启都是一种奢侈的)。所以,在当时不可变基础设施的设想是难以实现的,开发人员总是需要在服务器上对运行环境做一下持续的更改,如:系统升级,配置修改,补丁等。在许多手动修改之后,服务器的不同配置的重要性或必要性变得不清楚,因此更新或更改任何配置可能会产生意想不到的副作用(这就导致了 Martin Fowler所说的snowflake server “Phoenix Server”,2012)。可变基础设施通常会导致以下问题。在灾难发生的时候,难以重新构建服务。持续过多的手工操作,缺乏记录,会导致很难由标准初始化后的服务器来重新构建起等效的服务。在服务运行过程中,持续的修改服务器,就犹如程序中的可变变量的值发生变化而引入的状态不一致的并发风险。这些对于服务器的修改,同样会引入中间...阅读全文
最近的互联网线上事故发生比较频繁,9月19日网上爆料出顺丰近期发生了一起线上删库事件,在这里就不介绍了。 这里分享一下最近发生在我公司的事故,以及如何避免,并且如何处理优化。 该宕机的直接原因是使用 Redis 的 keys * 命令引起的,一共造成了某个服务化项目的两次宕机。 间接原因还有很多,技术跟不上业务的发展,由每日百万量到千万级是一个大的跨进,公司对于系统优化的处理优先级不高,技术开发人手的短缺。 第一次宕机 2018年9月13日的某个点,公司某服务化项目的 RDS 数据库实例连接飙升,CPU 升到 100%,拒绝了其他应用的所有请求服务。 整个过程如下: 监控报警,显示RDS的CPU使用率达到80%以上,DBA介入,准备KILL慢SQL 1分钟内,没有发现明显阻塞的SQL...阅读全文
美元),则要便宜,可能这就是 Intel 要切入的试产定位。 据悉,二代可扩展至强每颗处理器支持 6 通道内存,最多 12 条插槽,而傲腾内存条容量目前提供 128GB、256GB、512GB,插上六条那就是 3TB,而在一套八路系统里,傲腾+DDR4 内存混合使用,总容量最高可以达到惊人的 36TB。 性能方面,傲腾 DC 内存无论是延迟还是带宽速度都会比 DDR4 差一些,可胜在便宜,且关机或重启时不会丢失数据 (非易失性),系统恢复后可立即重新载入,大大减少下线时间,将服务器重启时间从分钟级别缩短到秒级别。...阅读全文
拟constexpr 向量和字符串计时:日历、时区支持std::formatstd::spanstd::jthread 详细变化查看 cppreference.com, open-std.org 和 Wikipedia。 像 Concepts/Ranges/Modules/Coroutines 这些新特性将会对开发者及 C++ 生态产生不小的影响,也为这门“高龄”编程语言增添不少魅力。 工具方面,GCC 10 编译器对 C++20 标准已基本支持,在更早的 GCC 8/9 中,目前尚待完成的是对 modules 的支持。GCC Wiki 页面概述了目前正在进行的工作。此外,Clang C++ 状态报告页面显示已完成了对大部分特性的支持,待完成的包括 concepts, immediate...阅读全文
器容灾稳定性等非专业逻辑的开发。这些服务器的运维和开发知识、经验极大地限制了开发者进行业务开发的效率。设想一下,如果开发者直接租用服务或者开发服务而无须关注如何在服务器中运行部署服务,是否可以极大地提升开发效率和产品质量?这种去服务器而直接使用服务的架构,我们称之为 Serverless 架构(无服务器架构)。 Serverless 架构的问世 2014 年,云厂商 AWS 推出了“无服务器”的范式服务。其实,最初“无服务器”意在帮助开发者摆脱运行后端应用程序所需的服务器设备的设置和管理工作。这项技术的目标并不是为了实现真正意义上的“无服务器”,而是指由第三方供应商负责后端基础结构的维护,以服务的方式为开发者提供所需功能,例如数据库、消息,以及身份验证等。这种服务基础结构通常可以叫做后端即服...阅读全文
这些年,机械硬盘容量的提升速度十分缓慢,大有被SSD全面赶超的趋势,不过每个季度,希捷、西部数据都会更新路线图,展望机械硬盘在技术、容量上的发展趋势,尤其是希捷。近日,希捷更是公布了详细的未来技术路线图,计划在2026年左右达到50TB左右,2030年则可以超过120TB。机械硬盘最近几年普遍基于PMR(垂直存储技术),但即便经过各种优化加强,也已经逼近极限,新的存储技术、机械结构迫在眉睫。比如希捷研发近20年的HAMR(热辅助磁记录),终于已经开花落地,去年底交付了20TB HAMR硬盘,同时新的多传动器(Muti-Actuator)结构也已经基本成熟,二者结合可让机械硬盘的容量跨上新台阶,2026年达到50TB就靠它们了。类似未来的半导体工艺制程,要想实现更进一步的突破,全新的存储介质...阅读全文
MX Linux 是基于 Debian 稳定分支的面向桌面的 Linux 发行,它是 antiX 及早先的 MEPIS Linux 社区合作的产物。它采用 Xfce 作为缺省桌面,是一份中量级操作系统,并被设计为优雅而高效的桌面与如下特性的结合:配置简单、高度稳定、性能可靠、占用空间不大也不小。 MX-17 Beta 1 镜像现在可供下载和测试。 Beta 1 具有以下功能: antiX 项目的最新实时系统更改和修复; Debian(Stretch)的最新更新; 4.9.0-4 内核(alphas 特性 4.9.0-3); 32 位 ISO 有 PAE 内核,而非 PAE; 更新软件包,包括 LibreOffice 5.4.1 的更新和 mx-apps; mx-tweak 替换了 mx...阅读全文
SK海力士日前宣布推出新一代企业级SSD硬盘,不过官方并没有公布SSD硬盘的名称,只知道是NVMe标准的,基于72层堆栈的3D TLC闪存,M.2版容量最大4TB,U.2容量可达8TB。 性能方面,SK海力士表示新一代企业级硬盘的连续速度可达3200MB/s,随机性能可达160K IOPS,与2018年FMS展会上推出的72层堆栈闪存硬盘相比,新一代企业级SSD的顺序读写性能提升30%,随机写入提升了70%,同时支持读取敏感型及混合型应用,包括数据中心、AI、ML机器学习及VDI虚拟桌面架构等。 值得一提的是,SK海力士的新一代企业级SSD具备极低的功耗,正常应用低于14W,这在企业级SSD中是很低的水平了。 此外,SK海力士还表示将在今年底推出容量更大的企业级SSD硬盘,闪存会从目前的...阅读全文
发现了一个开源项目,其中有一系列管理 NVMe 驱动器的工具。它被称为 nvme-cli。安装 nvme-cli你可以从你的发行版的包管理器中安装 nvme-cli。例如,在 Fedora、CentOS 或类似系统上:$ sudo dnf install nvme-cli在 Debian、Mint、Elementary 和类似系统上:$ sudo apt install nvme-cli探索 NVMe 驱动器在安装 nvme-cli 后,我想探索我的驱动器。nvme-cli 没有手册页,但你可以通过输入 nvme help 获得很多帮助:$ nvme helpnvme-1.14usage: nvme
。 RBD import 和 copy命令现在可以检测稀疏并保留稀疏区域。 快照可以包含创建时间戳。 为RBD客户端指定了用户授权功能简化。 使用RBD功能配置文件的一般语法是“mon’profile rbd’osd’profile rbd [-read-only] [pool = {pool-name} [,…]]’”。 CephFS 多MDS已经稳定,主MDS数量可以根据需求进行调整。 CephFS目录分片已经稳定的,默认情况下在新的文件系统上启用。 要使其在现有的文件系统上启动,要使用“ceph fs set