十个增加 Linux Shell 脚本趣味的小工具
详细的使用方式。...阅读全文
详细的使用方式。...阅读全文
: thanos receive组件需要部署N个进程组成集群,prometheus可以remote write写入数据到任意receive节点,收到写入请求的receive节点根据metrics label做哈希后计算出负责存储该部分数据的receive节点,并将数据转发过去; 同时,receive可以配置replica数量,这样的话receive会根据哈希结果将数据复制给多个receive做冗余,应该说是非常简单粗暴的复制方案吧,因为监控场景没那么严谨所以基本可用即可,查询去重和归拢则全部依靠querier组件反向查询所有Receive组件搞定。 我们的选择 让prometheus直接配置remote write的方式看起来更好一些,我们只需要在启动一套thanos receive集群,然后让...阅读全文
带动了以X86为基础的处理器的飞速发展。就在PC从企业级市场走向民用市场的同时,半导体行业也在酝酿着一场变革。从英特尔身上折射出来的市场对处理器的需求,让半导体厂商们看到了红利。于是,在此期间,各大厂商都开始着手于处理器架构的研究,2017 年图灵奖获得者John Hennessy 和 David Patterson 在其所著的《计算机架构的新黄金时代》一文中曾提到,20 世纪 80 年代我们做的研究(在计算机领域)能为我们带来回报,能改善成本、能源、安全以及性能。在巨大的回报之下,处理器架构也迎来了百家争鸣的时代。从公开的消息显示,20世纪80年代期间诞生的处理器架构不仅包括我们耳熟能详的ARM以及MIPS,SPARC、DEC Alpha、PA-RISC和其他一些产品也在同一时期出现,这些...阅读全文
很多编程初学者至今还在给我写信请教,问我该学习什么程序语言,怎么学习。由于我知道如何掌握“所有”的程序语言,总是感觉这种该学“一种”什么语言的问题比较低级,所以一直没来得及回复他们 可是逐渐的,我发现原来不只是小白们有这个问题,就连美国大公司的很多资深工程师,其实也没搞明白。 今天我有动力了,想来统一回答一下这个搁置已久的“初级问题”。类似的话题貌似曾经写过,然而现在我想把它重新写一遍。因为在跟很多人交流之后,我对自己头脑中的(未转化为语言的)想法,有了更精准的表达。 如果你存在以下的种种困惑,那么这篇文章也许会对你有所帮助: 你是编程初学者,不知道该选择什么程序语言来入门。 你是资深的程序员或者团队领导,对新出现的种种语言感到困惑,不知道该“投资”哪种语言。 你的团队为使用哪种程序语言争...阅读全文
说明 文件随机读写 不支持 21.8336 无 互斥锁性能 0.0231s 0.0186s 1.24倍 Debain 9 文件系统采用了三星与华为合力开发的f2fs,针对mmc和emmc还有tf存储进行了优化,除了大大提升了性能之外,还增加了TF卡的使用寿命,提供了意外断电文件系统的保护,大大避免意外断电导致的文件系统崩溃的情况。 其中由于TF卡的细微差异,导致文件连续读写出现了反转,实际上通过测试文件连续读写的性能方面,f2fs更加优化,超越ext4很多倍。 总体上,64位的系统提供了更好的使用体验,曾经抱怨树莓派跑opencv性能不佳的朋友应该是看到希望了! 以上测试并非使用官方系统,但能够让大家看到软硬件匹配64位之后,树莓派性能上的提升潜力。作为树莓派爱好者,一起期待官方发布64位系...阅读全文
GitHub的高级技术副总裁Jason Warner在2018的技术趋势中挑出了数据、工作流集成(workflow integration)以及开源工具,他认为这些是一个公司在2018年能够取得成功的关键。 Warner写道,数据将成为2018年全球增长的最重要因素: 现如今,所有的公司都是数据公司,不论他们是否意识到这个情况。在2018年,只要团队知道如何使用数据,数据就会成为他们最大的资产。 数据的重要性日益增长,也标志着云服务平台从分布式云计算平台转型成为数据处理的云平台,其中还包括数据分析和机器学习。这将重点反映到三个关键领域: Warner说,许多重要的系统目前都很脆弱,尽管它们的规模越来越大。为了应对在2018年变得更加频繁的攻击,将会有更多的财力和开发资源分配到改进安全性上...阅读全文
多独特的安全功能。它还使用可读的配置语法,可以在不需要 HTTP 或 CGI 专业知识的情况下使用。 Hiawatha 的优势在于其体积小巧,安全性高,易于安装。它非常适合寻求轻量级替代 Apache 的用户,他们将安全可用性,速度和性能优先于高级功能。 Cherokee Cherokee 是我们这些服务器中第三个取自美洲原住民部落的名字。这个由 Akamai Technologies 工程总监 Alvaro Lopez Ortega 于 2001 年创建,他想将模块化和轻量化设计的速度和功能结合起来。 Cherokee 已经成为一个可扩展,高性能,用户友好的 Web 服务器,具有较低的内存占用空间和负载平衡设施。其中包括一个称为 cherokee-admin 的基于 Web 的管理界面...阅读全文
, namespace) / sum(container_spec_memory_limit_bytes{image!=""}) by(pod_name, namespace) * 100 != +inf Pod 文件系统使用量 sum(container_fs_usage_bytes{image!=""}) by(pod_name, namespace) / 1024 / 1024 / 1024 Pod 的网络使用情况 一分钟内发送的字节量: sum(rate(container_network_transmit_bytes_total{image!=""}[1m])) by (pod_name) 一分钟内接受的字节量: sum(rate...阅读全文
引入的新的仲裁控制器确保元数据在整个仲裁中可以被准确复制。活动控制器将元数据存储在事件源日志主题中,仲裁中的其他控制器对活动控制器创建的事件做出响应。事件日志定期进行快照,确保日志不会无限增长。与基于 ZooKeeper 的控制器不同,如果出现了问题,仲裁控制器不需要从 ZooKeeper 加载状态,因为集群的内部状态已经分布在元数据主题中。这大大减少了不可用时间窗口,缩短了系统最坏情况恢复时间。下图显示了使用新的仲裁控制器比使用 ZooKeeper 更快地关闭具有 200 万个分区的 Kafka 集群。新的 KRaft 共识算法和仲裁控制器使得 Kafka 集群可以扩展到数百万个分区,不仅提升了稳定性,让 Kafka 变得更容易监控、管理和支持,而且让整个系统可以有一个单一的安全模型,使...阅读全文
近日,OSCHINA 和 Gitee 联合发布了《2022 中国开源开发者报告》。其中,云原生社区创始人宋净超在报告中对开源云原生服务网格领域进行了深入解读,以下为主要观点。2022 云原生服务网格五大趋势2022 年,云原生展露了一些趋势。因我更多地关注服务网格领域,在此就该方向谈谈我的观点,欢迎其他专家交流。一是 零信任的云原生安全备受关注。CNCF 在《云原生安全白皮书》中指出,“我们需要在应用安全生命周期中采用更自动化和安全的架构设计(如零信任)”,这表明云原生安全越来越受重视。零信任安全意味着默认情况下,网络内外都不信任任何人,并且要对试图访问网络资源的每一个人进行验证。部署服务网格有助于缩小云原生部署的攻击面,并为构建零信任应用网络提供关键框架。二是 API 网关与服务网格融合...阅读全文
Ubuntu 19.10 生命周期将在今年 7 月结束,之后一段时间内最大的版本则是 Ubuntu 20.04 LTS,其重大更新和改进将在 2030 年前终止。20.04 是 Ubuntu 的第 8 个 LTS 版本,计划于今年 4 月 23 日发布。前两天我们报导过 Ubuntu 20.04 LTS 的版本更新时间表,描述了各个时间节点的发布情况,今天来看看 20.04 会带来什么亮点。 首先是主题变化,Yaru 会有一个从亮到暗的主题变化可选,该主题下的复选框、单选按钮以及滑块和进度条等,都不再呈蓝色或绿色,而以紫色取代之。从绿色切换到紫色,整体上减少了纷杂的色彩,同时也不破坏 Ubuntu 本身的和谐。 其次,Ubuntu 社区的另一个期待已久的需求也将得到满足,系统将删除预装的...阅读全文
在漏洞,这件事也显得很诡异。 国外权威硬件媒体AnandTech在报道此事的时候,也首先提出了一系列质疑: CTS-Labs只给了AMD 24小时的时间知晓问题所在,而行业标准都是在漏洞发现后,提前联系涉事公司,并且要等90天才会对外公开,以便修复解决,而且初期不会披露漏洞技术细节。 在告知AMD和公开之前,CTS-Labs首先联系了一些媒体,向他们通报情况。 CTS-Labs 2017年才刚刚成立,资质尚浅,这只是他们的第一份公开安全报告,也未公开自己的任何客户。 CTS-Labs并没有自己的官方网站,公布此次漏洞却专门建立了一个名为AMDFlaws.com的网站,还是2月22日刚刚注册的。 从网站布局看,很像是已经提前准备了很久,并未考虑AMD的回应。 CTS-Labs还雇佣了一个公关公...阅读全文
Ryzen 9 3950X 系统上,任何版本的速度均未达到 OpenJDK 8 的速度。 结论: 当对所有执行的 Java 基准测试结果取几何平均值时,OpenJDK 8 毫无疑问是最快的 Java 版本。业界经常听到有关 OpenJDK 8 仍可提供最佳性能的消息,以及为什么英特尔的 Clear Linux 在有众多选择的情况下仍坚持该版本的原因。从本文的测试结果来看,这不足为奇。 好消息是,从这种几何意义上来看,OpenJDK 14 是经过测试的发行版中第二快的版本。与之前的版本相比,其领先优势虽然很小,但整体来看毕竟是在保持进步。...阅读全文
随着 Raspberry Pi 4 主板的问世,了解如何使用Raspbian Buster设置您的操作系统。你的新Pi 4到了邮箱,你已经设置了办公桌,您已准备好安装操作系统。 对于初学者来说,Raspbian为Pi制造商提供了出色的桌面体验。最重要的是,Raspbian Buster是专为树莓派 4创建的。考虑到这些情况,我们将在 microSD卡上载入这个操作系统,用其启动树莓派。 下载 Raspbian Buster 首先,访问 Raspbian 下载页面,下载最新版 Raspbian Buster 的图像文件。第一个链接 “桌面+推荐软件版” 附带了处理日常需求所需的大部分软件,建议初学者使用。如果你计划在命令行下使用你的Pi,桌面就不需要了,可以选择第三个 Lite 的选项。 下...阅读全文
作为"开放源码定义"的管理者,Open Source Initiative(OSI)20多年来一直将许可证指定为"Open Source"。这些许可证是开源软件生态系统的基础,确保每个人都能使用、改进和共享软件。当一个许可证被批准时,是因为 OSI 相信该许可证促进了合作和共享,使参与生态系统的每个人都受益。 在过去的 20 年里,世界已经发生了翻天覆地的变化,软件现在以新的方式甚至是难以想象的方式被使用。OSI 已经看到,以前被人们所熟悉的开源许可证并不总是能适合这些新的情况。因此,OSI 作为许可证管理员站了出来,为更广泛的用途提交了几个新的许可证。OSI 面临的挑战是评估这些新的许可证概念是否会继续推动共享和协作,是否值得被称为"开源"许可证。最终 OSI 批准了一些用于特殊领域的新...阅读全文
docker/engine#260现在允许设置 buildkit 输出 docker/cli#1766查找 Dockerfile 特定的 dockerignore 文件 (例如,Dockerfile.dockerignore) 以查找被忽略的路径 docker/engine#215自动检测 x86、ARM 和 ARM 64 二进制文件是否可以执行进程 docker/engine#215更新 buildkit 到 1f89ec1 docker/engine#260默认情况下使用 Dockerfile 版本 docker/dockerfile:1.1 docker/engine#215不再依赖外部映像进行复制/添加操作 docker/engine#215 Client 在 docker update 中添...阅读全文
作为约束(constraints)使用时,可被允许包含类型列表。在旧版的设计草案中,类型列表属于 contracts 的功能。更复杂的情况将使用参数化的 interface 类型. 为了帮助决定如何进一步完善设计草案,团队还发布了翻译工具。此工具可用于类型检查,以及运行使用设计草案中描述的泛型版本编写的代码。它通过将泛型代码翻译为普通的 Go 代码来工作。此翻译过程有一定的局限性,不过团队主要是希望借此让大家对 Go 泛型的整体有所了解。如果泛型最终被吸纳,它们的实际实现可能会有所不同。 此工具已在 Go playground 的变体上提供,这个 playground 的工作方式与常见的 Go playground 相同,不过前者支持泛型代码。团队希望此工具能为 Go 用户提供尝试使用泛型的...阅读全文
,FreeOffice 已经扩展到支持早期的 Microsoft 格式 DOC、XLS 和 PPT 以及标准化文档格式 OpenDocument Text(ODT)。 但是 FreeOffice 并不是开源的软件,Jack 认为这便是 Manjaro 的大胆之处。 虽然有人会认为 Linux 上应该使用开源项目,并且开发者需要能够查看到 FreeOffice 的源码,并且在出问题时能够自行调试代码解决,但是这样影响办公效率的事情实际上很少会发生。“Linux 上拥有另一种选择的想法,尤其是使与 MS Office 的无缝协作更加现实的想法,应该被视为 Linux 桌面的巨大胜利。” Jack 分享了他在 Linux 上文档协作方面的困苦,后来其实也是到了需要求助于 Google Docs 之类的线上工具的地步...阅读全文
在使用 Docker 时,我们可以使用 docker restart container_id 来非常方便的重启容器,但是在 kubernetes 中并没有重启 pod 的命令。有时 Pod 意外终止时,我们希望重启 pod,来进行排障或者尝试恢复服务。这时我们会发现蛋有点疼,没有一个很直观的方式来重启 pod。 这里我总结了几种重启 Pod 的方式,分两种情况讨论如何重启 K8S 中的 Pod,希望对大家有所帮助。 第一种方式:Deployment方式下重启Pod 大多数生产环境,使用的是 Deployment 方式部署应用。这种场景下,我们可以直接删除对应的 Pod,让k8s去完成 pod 重建,命令: kubectl delete pod {podname} -n...阅读全文
文件的默认值32768,与早期内核的PID范围相同。 在32位系统中,32768是pid_max的最大值。64位系统,pid_max最大可达2^22。(PID_MAX_LIMIT,约4亿)。 到达极限的情况: 1、当 PID 达到上限后,内核会从 0 重新开始寻找可用的 PID 并分配。 2、而所有 PID 均已被占用的话,则将抛出 fork failed: Resource temporarily unavailable 提问者所说的最大值应该只是发行版设置( CentOS 8.0 64 位上为 400w 左右)。通过上述Linux手册中的说明,我们也可以通过修改 /proc/sys/kernel/pid_max 的值来调整 pid 取值范围。 在 Debian 10 的机器上,这个文件的...阅读全文
。Pi Zero W 简化了所有一切,增加的售价大体上符合添加 WiFi(或蓝牙)的成本。Pi Zero W 的另一个优点是使用了瑞典公司 Proant 授权的印刷电路板(PCB)谐振空腔天线,相比传统的 USB 加密锁能提供更好的性能。 Pi Zero 的最初型号自 2015 年 11 月发布以来,就一直受着供货问题的困扰。在封面上免费赠送 Pi Zero 的《The MagPi》纸质版杂志立刻在英国一售而空。看上去 Pi Zero 一直是供不应求的状态。因此当有库存后,开始限制每个用户只能下一个订单。这导致了一个不好的情况,就是对原本十分便宜的计算机额外地增加了一大笔快递费用。截止本文撰写时,Pi Zero W 在英国供应商处尚有库存,依然限制每个客户只能提交一个订单。据报道,Pi Zero...阅读全文
管理仍然是不容易,我们必须创建自己的工具来管理,如果可以在Docker Swarm中本地完成,这将是非常好的一次改进。 多主机联网目前使用情况还不错,但我仍然发现了一些小问题。不过,最近很多SDN供应商正在将自己的网络堆栈作为Docker插件实施,这对于使用者来说是件好事。 问:关于Docker生态系统的演变,您如何评价Docker决定 向CNCF 捐赠 containerd runtime ? Chanwit Kaewkasi:我认为这是个非常棒的举动,Docker背后真正的引擎基本上是Containerd,标准化的 container runtime 将会使所有的人都受益。 多集群管理依然不容易。 问:您希望在下一个Docker发行版中看到什么功能? Chanwit Kaewkasi...阅读全文
个包含最新版本的开发版本,且仅支持TLS1.2。这种非主流操作真的很少见——目前只有Mozilla的“Modern”配置设置才推荐使用TLS 1.2。 保持OpenSSL库的长期Debian开发人员Kurt Roeckx写道:“我希望Buster发布对TLS 1.2的支持将足够高,不需要再次启用[TLS 1.0和1.1]。 ” Buster是Debian 10的代号,它是Linux发行版的下一个主要版本。没有宣布发布日期,但距离上一个版本的发布已经超过一年了。 对于只想使用旧版本的人,Roeckx并不留情,他说:“强烈建议你添加对TLS1.2的支持,或让对方添加支持。” 或许等到Buster发布的那天,仅支持TLS1.2不再是骚操作或大胆的配置。但熟悉SSL / TLS和Web PKI的人士...阅读全文
负责任的选项。 在每个操作系统使用周期内,谷歌还面临软件包重大版本升级的挑战,因为这可能需要对软件配置进行重大改变。为了让这个过程自动化,谷歌工程师编写了一个无人值守的升级工具来处理很多常见的问题。这种“自动化升级”意味着大多数谷歌员工无需通过重新安装机器,并重新创建所有配置来手动升级。不过为了实现这一点,谷歌需要对升级过程进行全面测试,并检查所有已更改的主要软件包是否继续运行(在 Ubuntu 中,主要版本之间的升级可能多达数千个软件包)。有时,在发生软件包弃用且工程师必须决定如何推进的情况下,很难提供自动化。 据称,谷歌完成所有 Goobuntu 的升级通常要花费一年的时间,整个过程对于团队来说是一个巨大的压力。而且很多时候他们遇到的一些 bug 已经在上游被修复了,但这些改进却从未被合...阅读全文
器交付给OpenShift 将控制接口暴露给Ansible 将数据接口暴露给Insights Paul Cormier在主题演讲上对目前红帽各个产品线所处的位置和相互关系进行了梳理,可参考文末附录部分的演讲截图。 其他:跨领域开源 从两年前开始,红帽成立了一个名为Open Source Stories的制片项目,平均每半年制作一个讲述跨领域开源案例的记录短片,至今已经发布了五个短片,分别涉及教育、义肢制作、脑肿瘤治疗、城市庆典活动组织、以及一套关于AI发展的系列。在本次峰会,红帽也邀请了新加坡GovTech创新实验室、开源硬件组织OSHWA.org、以及MIT开放农业实验室(Media Lab下的OpenAg项目)等不同领域的负责人到现场分享。 与传统企业数字转型的目标类似,跨领域开源的目标...阅读全文
-offline get apt-offline.sig --threads 5 --bundle apt-offline-bundle.zip 在这里的 -threads 5 代表着(并发连接的) APT 仓库的数目。如果你想要从更多的仓库下载软件包,你可以增加这里的数值。然后 -bundle apt-offline-bundle.zip 选项表示所有的软件包将会打包到一个叫做 apt-offline-bundle.zip 的单独存档中。这个存档文件将会被保存在你的当前工作目录中(LCTT 译注:即 tmp 目录)。 上面的命令将会按照之前在离线系统上生成的签名文件下载数据。根据你的网络状况,这个操作将会花费几分钟左右的时间。请记住,apt-offline 是跨平台的,所以你可以在任何操作系统上使用它下...阅读全文
的软件原来根本就没有。该仓库正因此而设,但欠官方维护,且可能在系统正式发布之后过一段时间才有内容。此仓库处于第二优先顺序,而上述几个仓库处于第一优先顺序。安装第二优先顺序的包必须特别指明,见 apt-get(8) aptitude(8) 的 --target-release 选项。 提示:并非所有版本都设有上述全部仓库,请打开源中 dists 目录查看。 后续字段,指示包许可类型。 后续字段排名不分先后,最终结果取其并集。按包本身的许可及所直接依赖的包的许可划分。打开某仓库,可见几个子目录。 Debian 最多有三种 「main」,本身是自由软件,且所有依赖的包也都是自由软件,此类可称纯自由软件,见 https://www.debian.org/distrib/packages《Debian...阅读全文
) right_metric其他常用的比较运算符:==、!=、>、<、>=、≤。 直方图分位数过去5分钟内,每个标签维度请求延迟的90%分位数: histogram_quantile(0.9, rate(my_request_durations_seconds_bucket[5m]))只针对 method 和 path 维度的90%分位数: histogram_quantile( 0.9, sum by(le, path, method) ( rate(my_request_durations_seconds_bucket[5m]) ) ) Gauges 的变化过去一小时内的绝对值变化: delta(my_gauge[1h])基于过去4小时的数据来预测1小时后的数据: predict_linear(my_gauge...阅读全文
enable mysql 配置MariaDB 默认情况下,MariaDB不安全。 您可以使用以下命令来保护它: mysql_secure_installation 回答所有问题如下: set root password? [Y/n] n Remove anonymous users? [Y/n] y Disallow root login remotely? [Y/n] y Remove test database and access to it? [Y/n] y Reload privilege tables now? [Y/n] y 一旦MariaDB得到保护,您将需要为Observium创建一个数据库和用户。 首先,使用以下命令登录到MySQL shell: mysql -u root -p...阅读全文
/src:fcitx) | 修正Flatpaks中的输入法支持 | | [file](https://packages.debian.org/src:file) | 默认情况下,将名称递归深度增加到50 | | [geoclue-2.0](https://packages.debian.org/src:geoclue-2.0) | 检查最大允许的准确度水平,即使是对系统应用程序也是如此;使Mozilla API密钥可配置,默认使用Debian特定的密钥;修复使用指示器的显示 | | [gnutls28](https://packages.debian.org/src:gnutls28) | 修复证书过期导致的测试套件错误 | | [grub2](https://packages.debian.org...阅读全文
:#influxdb部分配置文件 #描述:内存快照的冷冻写入周期,默认10m #场景: 当创建新的shard分片开始接受数据之后,上个shard分片进入冷冻期, #冷冻期的shard分片不再接收写入的请求,10分钟之后,会将内存里冷冻shard的cache进行落盘操作 #应用: 本文设置为30分钟。个人认为时间越短,会越快释放上个shard的内存cache cache-snapshot-write-cold-duration = "30m" #描述: 使用全量策略压缩冷冻期分片的周期,默认4h #场景: 当shard进入冷冻期后,会经过4h,开始进行全量压缩策略,进一步减少shard落盘数据占用的空间 #与cache-snapshot-write-cold-duration配合使用 #可以从日志中看到,新分片...阅读全文
于断言的语法。 缺点: 多数情况下,它需要一个测试运行器(如 Karma )。 难以异步测试。 如果你正在寻找一个统一的(客户端 - 服务器)单元测试解决方案,Jasmin 可能会非常适合。 7. Mocha Mocha 是一个 JavaScript 单元测试框架,它在 NodeJs 上运行测试,主要与 ReactJS 配对使用。 优点: 内置测试运行器。 支持异步测试。 使用灵活,可使用任何符合需求的断言库(Chai、expect.js、Must.js 等)作为 Node 标准“断言” 功能的替代品。 缺点: 相对较新 (起始于 2012 年),意味着有许多的未知性和可变性,在某些方面或缺乏用户基础和支持。 仅提供基本的测试结构,因此需要额外的设置和配置(对于一些可能是有利的)。 如果你正...阅读全文
。” Jonathan Carter 的演讲报告幻灯片,“问题永无止境” 社区的文化是不花费不必要的钱。Carter 说,“Debian 人不喜欢花钱,对此有负罪感”。在 Register 看来,这导致社区依赖于少量中坚开发人员承担所有的工作。 官方给出了为 Debian 项目添砖加瓦的开发人员统计情况。目前上传代码的开发人员有 975 人,项目维护者有 223 人。在 Carter 看来,这远远不够,因为 Debian 项目正在不断增长。 在 2009 年,当时的发行版 Lenny 的 i386 架构中有近 2.2 万个二进制软件包。目前的 Bullseye 发行版中,amd64 架构中就有超过 6.1 万个二进制软件包。Carter 指出,“规模很快就会突破 10 万个软件包”。因此,规模扩张是项目面对的燃...阅读全文
DevOps解决方案营销副总裁Aruna Ravichandran预测道。她说,“鉴于攻击者强度和复杂度的提高,以及安全问题快速公诸于众对品牌带来潜在不可挽回的损害,代码本身必须考虑安全问题,并且部署在牢固的安全架构中。” Ravichandran认为,随着微服务框架和SDK的引入,开发人员为了避免影响用户体验,应该从一开始就考虑安全功能。当到了测试和部署阶段,安全验证应该被视为特殊情况处理。她提到“安全相关代码需求测试要求是非常特殊和动态的,这个过程非常有可能需要专家和用户的介入,这不是传统DevOps流程的一部分。” 更加注重安全的时期 按照Tufin首席技术管兼联合创始人Reuven Harrison的说法,DevOps可能是企业的最新漏洞。2017年,他期望能够看见安全相关流程能够融入到...阅读全文
在以前,很多从其他语言转过来 Go 语言的同学会问到,或是踩到一个坑。就是以为 Go 语言所打包的二进制文件中会包含配置文件的联同编译和打包。 结果往往一把二进制文件挪来挪去,就无法把应用程序运行起来了。因为无法读取到静态文件的资源。 无法将静态资源编译打包进二进制文件的话,通常会有两种解决方法: 第一种是识别这类静态资源,是否需要跟着程序走。第二种就是考虑将其打包进二进制文件中。 第二种情况的话,Go 以前是不支持的,大家就会去借助各种花式的开源库,例如:go-bindata/go-bindata 来实现。 但从在 Go1.16 起,Go 语言自身正式支持了该项特性,今天我们将通过这篇文章快速了解和学习这项特性。 基本使用 演示代码: import _ "embed...阅读全文
。其结果应该是,那些比较传统的公司的开发人员可以获得与其他公司使用云原生方法的开发人员一样的好处。希望这些实施方案能够帮助开发人员提高生产力,并且他们乐意留在这些公司,而不是转到其他岗位。 基于云的机器数据分析公司 Sumo Logic 的首席产品经理兼开源大使 Frank Reno 认为,开发人员是开源快速增长的因素之一。开发人员都希望在一个社区中与他人一起工作,与更大的团队合作,为更大的项目做出贡献。“特别是在 COVID-19 期间,我们不像以前那样紧密。因此,我们所能做的任何事情都是为了培养更好的体验,无论是对个人开发者还是一群开发者,都有很大的帮助。每个供应商和每个客户都应该认识到开发人员的重要性。” 为了达到这一目的,DataStax 战略副总裁 Bryan Kirschner 则...阅读全文
ExpiringCache 缓存策略扩展 Bug修复及优化 负载均衡策略优化,包括 ConsitentHash(#2190) 、LeastActive(#2171)、Random(#2597) 、RoundRobin(#2586) (#2650)升级第三方依赖:默认通信框架为 netty 4、默认 ZK 客户端为 Curator、Jetty 9k增加地址读取时对 IPV6 的支持 (#2079)性能优化,链接关闭的情况下使得 Consumer 快速返回 (#2185)修复 Jdk 原生类型在 kryo 中的序列化问题 (#2178)修复 Provider 端反序列化失败后,没有及早通知 Consumer 端的问题 (#1903) 升级与兼容性 此次版本发布我们遵循了保持和老版本兼容的原则,尤其是在一些可能会破坏...阅读全文
-masquerade-agent)(RFC-1918),使用户可以在私有IP范围内创建集群并访问资源;服务可通过内部负载均衡(Internal Load Balancers)暴露,这是以Beta版提供的,允许Kubernetes和非Kubernetes服务在私有网络上相互访问(虽然当前通过Cloud VPN访问内部负载均衡的功能依然处于Alpha版);GKE现在支持在Alpha Clusters中运行NVIDIA K80 GPUs,该特性使得用户可以实验机器学习算法;自动修复,当前是Beta版。它通过对不健康节点进行主动监控,并在无需用户参与的情况下对节点做自动修复,保持了集群的健康运行;一些GCP优化的改进,用于简化集群从底层架构层上做自动扩展。 在Kubernetes博客及GitHub的...阅读全文
过多,以至于无法持续。 这个 CD 系统的关键组件是一种控制方法,即谁将接收变更,以及用于部署和测量的自动化工具。在第一步中,经过一系列自动化测试后,变更就从内部推送到 Facebook 员工。在这一阶段发现的任何回归,都会被认为这一进程受阻或者停止。下一步涉及到“ canary deployment ”(金丝雀部署),只推送至生产环境的 2% 。依靠连续的监测来检测问题。如果一切顺利,这些变更将 100% 部署到生产环境中。名为 Flytrap 的工具收集用户报告,并发送任何异常情况的告警。 Facebook 中的 Web 和移动产品遵循两条不同的路径,原生移动变更的部署频率低于 Web 。这两个都由名为 Gatekeeper 的系统控制。除此之外,Gatekeeper 还分离出了部署和发...阅读全文
,HTTP(S)\SOCKS5\SPS 代理支持客户端用入口 IP 连接过来的, 就用入口 IP 作为出口 IP 访问目标网站的功能。如果入口 IP 是内网 IP,出口 IP 不会使用入口 IP 支持限速,HTTP(S)\SOCKS5\SPS 代理支持限速. SOCKS5 代理支持级联认证. 证书参数使用 base64 数据, 默认情况下-C,-K 参数是 crt 证书和 key 文件的路径, 如果是 base64://开头, 那么就认为后面的数据是 base64 编码的, 会解码后使用. 下载地址: Gitee GitHUB...阅读全文
做文字输入,按ESC键可回到命令模式。 3) 底行模式(last line mode) 将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号。 不过一般我们在使用时把vi简化成两个模式,就是将底行模式也算入命令模式。 一、打开文件、保存、关闭文件(vi命令模式下使用) vi filename //打开filename文件 :w //保存文件 :w debian.cn //保存为当前目录下的文件"debian.cn" :q //退出编辑器,如果文件已修改请使用下面的命令 :q! //退出编辑器,且不保存 :wq //退出编辑器,且保存文件 :x! //退出编辑器,且保存文件,忽略是否对文件具有写权限 二、插入文本或行(vi命令模式下使用,执行下面命令后将进入插入模式,按ESC键可退...阅读全文
称SIG)都在继续立足所在层面交付用户们最为需要的功能。感兴趣的朋友可以点击说明[7]查看发行版说明中的完整功能列表。 发布时间 Kubernetes 1.9目前已经可通过GitHub[8]下载。若需要马上开始使用Kubernetes,请参阅相关交互教程[9]。 发行团队 此次发行版的推出,源自数百名技术与非技术参与者们的共同努力。这里特别感谢谷歌公司软件工程师Anthony Yeh领导的发行团队。该发行团队中的14名成员一直在努力协调发行工作中的方方面面,包括说明文档、测试、验证以及功能完整性等等。 随着Kubernetes社区的不断发展,我们的发行流程也已经成为开源软件开发合作领域的一大标志性产物。Kubernetes继续以惊人的速度吸引到更多新用户的参与。这种增长创造出更为积极的反馈周...阅读全文
Terraform Terraform 的安装非常简单,直接把官方提供的二进制可执行文件保存到本地就可以了。比如笔者习惯性的把它保存到 /usr/local/bin/ 目录下,当然这个目录会被添加到 PATH 环境变量中。完成后检查一下版本号: 通过 -h 选项我们可以看到 terraform 支持的所有命令: 在 Azure 上创建一个 Resource Group 要让 Terraform 访问 Azure 订阅中的资源,需要先创建 Azure service principal,Azure service principa 允许你的 Terraform 脚本在 Azure 订阅中配置资源。请参考这里创建 Azure service principal。 配置 Terraform 环境变量 若要配置...阅读全文
、家庭路由器以及大量单板计算机(SBC)。大量的软件包Debian 拥有大量的软件包(当前的稳定版本:59000 个软件包) ,使用 deb 格式。不同的发布版本除了我们的稳定版本外,您还可以通过安装测试版或不稳定版本来获得更新版本的软件。公开的错误跟踪系统我们的 Debian 错误跟踪系统(BTS)向所有人公开,任何人都可通过浏览器访问。我们不会隐藏我们的软件错误,您可以轻松提交新的错误报告或参与讨论。Debian 政策和开发人员工具Debian 提供高质量的软件包。欲了解我们的质量标准,请阅读我们的政策,它规定了每个被发行版接受的软件包所必须满足的技术需求。我们的持续集成策略包括 Autopkgtest(对软件包进行测试),Piuparts(测试安装、升级和删除),以及 Lintian(检...阅读全文
和使用 sudo 为默认 – >使用当前密码 – >OK ->使用当前密码 ->OK。 完成以上操作后,接着我们来重启系统,此时它将从你的硬盘驱动器启动。 注意: 我们不建议在任何电脑上永久安装 Kodachi Linux,因为它会将所有的设置保存在硬盘上,这就违背了该系统反取证的初衷!了解更多关于取证内容,请点击 这里 。 Kodachi 是一个基于 Debian 的实时 DVD / USB 操作系统,因此所有软件包,也都基于纯 Debian 存储库。 Kodachi 是 Apache License 2.0 下的开源项目,所有在系统上使用的代码都是纯文本 bash 脚本,并且包含在 ISO 包中,没有编译过的二进制代码, 也没有隐藏的 Kodachi 代码,这些代码都可在 GitHub...阅读全文
志(Audit log),现在定制化和可扩展性更强,支持事件过滤和 webhook。它们同时为系统审计提供了更丰富的数据。 状态化工作负载: StatefulSet Update 是1.7中一个新的 beta 状态的特性,能允许有状态应用如 Kafka,Zookeeper 和 etcd 的更新自动化。它使用了各种升级策略,包括滚动更新。 对于无顺序要求的应用,通过 Pod 管理策略(Pod Management Policy),StatefulSet 现在支持更快的伸缩和启动。这可以大大提升性能。 本地存储( alpha状态 )是有状态应用一个最常被请求添加的特性。用户现在可以通过标准的PVC/PV接口和StatefulSet中的StorageClass来访问本地存储卷。 DaemonSet...阅读全文
, LABEL, EXPOSE, ENV, ADD, COPY, ENTRYPOINT, VOLUME, USER, WORKDIR, ARG, ONBUILD, SHELL等指令,这里只选择常用的几个进行讲解,可结合上面的示例进行理解。其它的请自行查阅官方文档。 3.1 FROM FROM 指令用于指定要操作的基础镜像,因为在我们构建我们自己的镜像的时候需要一个基础镜像。 语法: FROM
v1.20之后的版本加入了zstd压缩算法,需要用到cgo,在Windows平台编译时会提示类似如下错误: github.com/DataDog/zstd exec: "gcc":executable file not found in %PATH% 所以在Windows平台请使用v1.19版本的sarama。(如果不会版本控制请查看博客里面的go module章节) 3.1.3. 连接kafka发送消息 package main import ( "fmt" "github.com/Shopify/sarama" ) // 基于sarama第三方库开发的kafka client func main() { config := sarama.NewConfig...阅读全文
% 的 Elasticsearch 启用了验证插件,另外有 2% 则关闭了 Elasticsearch。2018 年 11 月份,美国还曾发生一起 ElasticSearch 服务器在没有密码的开放状态下泄露了将近 5700 万美国民众个人信息的事件。当时共泄漏超过 73GB 数据,并且几个数据库被缓存在服务器内存中,其中一个数据库包含的个人信息就达到了 56,934,021 份。2018 年 12 月份,巴西最大的订阅电视服务之一的 Sky Brasil 在没有密码的情况下将 ElasticSearch 服务器暴露在互联网上,其 3200 万客户数据在网上暴露了很长时间,存储数据包括客户姓名、电子邮件地址、密码、付费电视包数据、客户端 IP 地址、个人地址、付款方式、设备型号等。 根据...阅读全文
-certificate-exporter监控集群所有node的 /etc/kubernetes/pki 和 /var/lib/kubelet 下的证书以及 kubeconfig 文件 优势: 可以监控所有 node, 所有 kubeconfig 文件, 以及 所有 tls 格式的 secret 证书, 如果要监控 Kubernetes 集群以外的证书, 也可以如法炮制; 范围广而全; 需要额外安装: x509-certificate-exporter, 对应有 1 个 Deployment 和 多个 DaemonSet, 对 Kubernetes 集群的资源消耗不少. 可以根据您的实际情况灵活进行选择. 🎉🎉🎉 📚️参考文档 如何使用 Blackbox Exporter 监控 URL? - 东风微鸣技术...阅读全文