InfraPub 为您找到相关结果 733

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

Kubernetes源码探疑:Pod IP泄露排查及解决方法

和流程。 kubelet是kubernetes集群中Node节点的工作进程。当一个Pod被kube-sheduler成功调度到Node节点上后, kubelet负责将这个Pod出来,并把它所定义的各个容器启起来。kubelet也是按照控制器模式工作的,它的工作核心是一个控制循环,源码中称之为syncLoop,这个循环关注并处理以下事件: Pod更新事件,源自API Server;Pod生命周期(PLEG)变化, 源自Pod本身容器状变化, 例如容器的,开始运行,和结束运行;kubelet本身设置的周期同步(Sync)任务;Pod存活探测(LivenessProbe)失败事件;定时的清理事件(HouseKeeping)。 在上文描述的CronJob任务中, 每次运行Job任务都会...阅读全文

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

taint nodes foo dedicated=special-user:NoSchedule 查看所有namespace的pods运行情况 查看具体pods,记得后边跟namespace名字哦 查看pods具体信息 查看集群健康状 获取所有deployment 列出该 namespace 中的所有 pod 包括未初始化的 查看deployment() 查看rc和servers 查看pods结构信息(重点,通过这个看日志分析错误)对控制器和服务,node同样有效 其他控制器类似吧,就是kubectl get 控制器 控制器具体名称 查看pod日志 查看pod变量 更新 编辑资源 伸缩pod 删除 交互 调度配置 如果该键和影响的污点(taint)已存在,则使用指定的值替换 目录...阅读全文

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

Kubernetes 部署 Nacos 1.4 集群 · 小豆丁

: name: datadir spec: storageClassName: nfs-storage accessModes: ["ReadWriteMany"] resources: requests: storage: 5Gi - metadata: name: logdir spec: storageClassName: nfs-storage accessModes: ["ReadWriteMany"] resources: requests: storage: 5Gi selector: matchLabels: app: nacos 上面配置中使用的是 StatefulSet 资源的 Nacos,所以需要存储驱支持 StorageClass 来 PVC,这里使用的 NFS...阅读全文

博文 2021-02-24 10:10:29 www.mydlq.club

kubectl 创建 Pod 背后到底发生了什么?—探寻 Kubectl 创建 Pod 的原理

Pod 启失败时(例如,由于资源配额),可以减轻 kube-apiserver 被大量不必要的 HTTP 请求吞没的风险。如果失败,最好能够优雅地失败,并且对其他的系统组件造成的影响最小! Kubernetes 通过 Owner References(在子级资源的某个字段中引用其父级资源的 ID) 来构造严格的资源对象层级结构。这确保了一旦 Controller 管理的资源被删除(级联删除),子资源就会被垃圾收集器删除,同时还为父级资源提供了一种有效的方式来避免他们竞争同一个子级资源(想象两对父母都认为他们拥有同一个孩子的场景)。 Owner References 的另一个好处是:它是有状的。如果有任何 Controller 重启了,那么由于资源对象的拓扑关系与 Controller 无...阅读全文

博文 2022-04-18 16:18:04 CSDN

Debian下安装配置 Hadoop 3.1.3 集群

"slave1" # slave2 ssh-keygen -t rsa -C "slave2" # slave3 ssh-keygen -t rsa -C "slave3" 5. 免密码登录 在每台主机上执行: ssh-copy-id -i ~/.ssh/id_rsa.pub master ssh-copy-id -i ~/.ssh/id_rsa.pub slave1 ssh-copy-id -i ~/.ssh/id_rsa.pub slave2 ssh-copy-id -i ~/.ssh/id_rsa.pub slave3 6. 用户和用户组 在每台主机上执行: useradd -m -s /bin/bash hadoop JDK 安装与配置 1. 手安装JDK 解压jdk安装包到/usr...阅读全文

博文 2019-11-27 23:04:39 debian.cn

六大算法之三:动态规划【转载】

){ //如果是第一列,直接跟他上面数字相加 dp[i][j] = dp[i-1][j] + n[i][j]; }else{ //如果不是第一列,比较他上面跟上面左面数字谁大,谁大就跟谁相加,放到这个位置 dp[i][j] = Math.max(dp[i-1][j-1], dp[i-1][j]) + n[i][j]; } max = Math.max(dp[i][j], max); } } return max; } 优化:规划中每一个需要一个二维数组的解法,都可以换成只一个一维数组的滚数组解法,依据的规则是一般二维数组中存放的是所有的结果,但是一般我们需要的结果实在二维数组的最后一行的某个值,前面几行的值都是为了得到最后一行的值而需要的,所以可以开始就跟二维数组最后一行一样大的一维...阅读全文

博文 2021-07-31 07:18:53 CSDN博客

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

对于 Python 开发者来说,web 开发框架真可谓玲琅满目。然而 Django , 毋庸置疑的成为最受青睐的 web 框架。通过本篇博客,我来为大家讲解下为什么相比 Flask、Pyramid、Tornado、Bottle、Diesel、Pecan、Falcon 这些流行的 Python web 框架,Python 开发者更倾向于选择 Django。 再大肆宣扬Django之前,让我们简单了解一下web框架 Web框架是一个代码库,使开发人员更容易构网站、Web应用程序和Web服务。 众所周知的是,每个网站都有一些通用的功能(如处理会话,数据验证等等),一些您每次网站时都需要编写的功能。 这使开发任务平淡乏味。 然而,使用Web框架可以让您每次网站都需要重新编写通用功能代...阅读全文

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

AMD 为 RHEL/CentOS 替代品 AlmaLinux 提供支持

AlmaLinux OS Foundation 宣布了四名新成员的加入,包括 Sine Nomine Associates、BlackHOST、Knownhost 以及最引人注目的 AMD。新成员对 AlmaLinux 的发展方向有发言权,可以投票支持其他成员并被其他成员投票选入董事会。“新成员提供的资源使 AlmaLinux 更接近于与红帽企业 Linux(RHEL)完全持平。”AlmaLinux 是开放源码的、社区驱的项目,它从红帽企业 Linux (RHEL) 的源码编译而来。AlmaLinux 跟 RHEL 8 完全在二进制上兼容,由 CloudLinux OS 的者打造。AlmaLinux OS Foundation是一个非营利组织,旨在为 AlmaLinux OS 社区的...阅读全文

Rancher 2.2.2 发布:优化 Kubernetes 集群运维

生成证书的有效期为 1 年。这意味着如果您在大约 1 年前了 Rancher 配置集群,那么 1 年后需要轮换证书,否则证书过期后集群将进入错误状。现在,2.2.2 的用户在 UI 上即可完成轮换工作,再也无需过去繁复的操作了。 Rancher 研发团队也将尽快为 Rancher 2.0 和 2.1 用户提供后端端口解决方案,这样 2.0 和 2.1 的用户也可以在现有集群上轮换证书了。 对 Kubernetes v1.14.1 的实验性支持 Rancher v2.2.2 中实现了对 Kubernetes v1.14.1 的实验性支持。这也为我们在后期更新版本中对 Windows 的支持提供了途径。上个月 Kubernetes 的最新版本 v1.14 发布,是第一个对...阅读全文

博文 2019-04-22 13:49:38 debian.cn

Terraform 学习总结 — Terraform 简介

)。Terraform 生成一个执行计划,描述它将做什么来达到所需的状,然后执行它来构所描述的基础结构。随着配置的变化,Terraform 能够确定发生了什么变化,并可应用的增量执行计划。 Terraform 是用 Go 语言开发的开源项目,你可以在 github 上访问到它的源代码。 Terraform 核心功能 基础架构即代码(Infrastructure as Code)执行计划(Execution Plans)资源图(Resource Graph)自化变更(Change Automation) 基础架构即代码(Infrastructure as Code) 使用高级配置语法来描述基础架构,这样就可以对数据中心的蓝图进行版本控制,就像对待其他代码一样对待它。 执行计划(Execution...阅读全文

Facebook 以最高级别身份加入Linux基金会及其董事会

项目使电信运营商可以轻松地在难以到达的区域部署移网络,从而降低了设和维护电信网络的成本。Facebook 的 “Data for Good” 计划用于共享地理数据,以解决一些世界范围内的人道主义问题,包括在 COVID-19 疫情期间发挥作用。并维护 PyTorch 开源生系统,为在计算机视觉、自然语言处理和其他学科中利用人工智能和机器学习贡献了很大一份力量;React.js 也由 Facebook ,它为世界上一些最受欢迎的网站提供支持,并且由于其简单性和灵活性而成为前端 Web 开发标准。 Linux 基金会会员分为银级、金级和白金级三种不同等级,白金级即最高等级,每年需缴纳会费 50 万美元,同时拥有董事会席位。AT&T、谷歌、华为、IBM、英特尔、微软、Oracle、腾...阅读全文

Ceph 12.2.0 正式版本发布, 代号 Luminous

Ceph 是一个可扩展的分布式存储系统,性能卓越,安全可靠。 Ceph 12.2.0 正式版已发布。这是Luminous v12.2.x长期稳定版本的第一个版本。在Kraken(v11.2.z)和 Jewel(v10.2.z)后我们做了很多重大修改,而且升级过程并不简单哦。请仔细阅读版本说明。 在 Kraken(v11.2.z)版本上进行的重要修改 通用 Ceph现在有一个内置的简易DarshBoard,用于监控集群状。 RADOS Bluestore ceph-osd的新后端存储BlueStore已经稳定,是新的OSD的默认设置。 BlueStore通过直接管理物理HDD或SSD而不使用诸如XFS的中间文件系统,来管理每个OSD存储的数据,这提供了更大的性能和功能...阅读全文

博文 2017-08-31 13:36:49 debian.cn

在 Mac OS X 上安装 Nessus 10

launchctl load -w /Library/LaunchDaemons/com.tenablesecurity.nessusd.plist 停止服务:sudo launchctl unload -w /Library/LaunchDaemons/com.tenablesecurity.nessusd.plist (2)使用浏览器访问:https://:8834,注意忽略证书警告 (3)选择 “Managed Scanner” (4)选择 Tenable.sc (5)管理员帐号和密码 (6)编译插件(新安装编译过程很快) (7)自登录,安装成功 此时只有 “Setting”(没有 “Scans”)且显示未注册。 四、 安装插件和配置文件 此时下面两个配置文件都是空白的 /Library...阅读全文

Gitlab CI 配置文件 .gitlab

/$CI_COMMIT_REF_NAME url: https://$CI_ENVIRONMENT_SLUG.example.com/ 当$CI_COMMIT_REF_NAME 被Runner设置为environment variable时,deply as review appjob将会被指定部署到revuew/$CI_COMMIT_REF_NAME的环境中。$CI_ENVIRONMENT_SLUG变量是基于环境名称的,最终组合成完整的URLs。在这种情况下,如果deploy as review appjob是运行在名称为pow的分支下,那么可以通过URLhttps"//review-pw.example.com/来访问这个环境。 这当然意味着托管应用程序的底层服务器已经正确配置。 常见的做法是为分支环境,并讲...阅读全文

博文 2018-12-12 21:01:19 ci.yaml 详解(上)

AD:为什么说 CoinEx 是一家很有潜力的数字货币交易所?

** 90后业者杨海坡微比特集团,打造CoinEx ** 微比特集团始人杨海坡是一位90后业者。2016年3月,杨海坡投入比特币矿池的开发,一人独立完成了 ViaBTC (Viabtc Technology Limited) 矿池全部代码,并在 两个月后成功上线,这个矿池是全球第一家挖出 BCH 区块的矿池。当前,ViaBTC 不仅是全球第一大 BCH 矿池,也是全球前五大的比特币矿池。 很快杨海坡发现,交易所也是为行业提供资产发行和价值发现的重要角色,是加密行业的核心,于是他决定加入到数字货币交易所的竞争中。 2017年12月,杨海坡成立了 [CoinEx](http://cet.im)。[CoinEx](http://cet.im) 成立不久就以势不可挡之力迅猛发展,2018...阅读全文

不可变基础设施 (immutable infrastructure) - 云原生定义解析

云原生技术的不断发展,2018年,CNCF扩展了云原生技术的定义,以下是云原生技术的新定义:“云原生技术有利于各组织在公有云、私有云和混合云等新型环境中,构和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式API。这些技术能够构容错性好、易于管理和便于观察的松耦合系统。结合可靠的自化手段,云原生技术使工程师们能够轻松地对系统作出频繁和可预测的重大变更。”其中,像容器,微服务等概念早已深入人心,而很多开发人员都对此次提及的“不可变基础设施”这个概念有不少疑惑,下文将对这个概念进行解析。其实不可变基础设施这个概念由来已久,并在不同的场合被很多技术专家已不同的形式提出并讨论过, 例如:“Trash Your Servers and Burn...阅读全文

谷歌公开了内部管理Infra层的两个工具的Paper

随着企业的逐步成熟,他们会开发更多工具。在Google,我们持续新的外部和内部服务,以及支持这些服务的基础架构。 从2013年起,我们开始放弃之前用来更新和维护服务的简单的自化工作流。每个服务都要求复杂的更新逻辑,并且还需要适应基础架构的变化,经常性的集群的启关闭等等。配置多个,互相交互的服务的工作流变得难以维护。 我们需要一种全新的方案来适应业务的增长以及所涉及到的配置的复杂性。为此,我们开发了声明式的自化系统,作为统一的控制层,并且取代了工作流。这个系统包括两个主要的工具:Podspec,描述服务基础架构的工具,和Annealing,更新生产环境来匹配Prodspec输出的工具。本文讨论我们解决过的问题,以及我们所选择的架构。 Prodspec和Annealing有一个根本共...阅读全文

博文 2023-01-08 11:23:20 CSDN博客

Kubernetes 1.7:安全加固、有状态应用更新等

,每一个节点上一个 Pod 已经有了一个更新特性,在1.7中添加了更加机智的回滚和历史回溯能力。 一个新的 StorageOS 卷插件能从本地的和连接的节点存储中提供高可用的、集群范围的持久性卷。 可扩展性: 运行时的 API 聚合是这次发布中最强大的特性,可以让高级用户向集群中添加预先构的、第三方的或者用户自制的具有Kubernetes风格的API。 容器运行时接口(CRI)通过新的从运行时获取容器指标的 RPC 调用得到增强。CRI 的验证测试已经发布,和containerd 1.0的整合处于 alpha 状,现在支持基本的 Pod 生命周期和镜像管理。可以阅读我们之前深入介绍 CRI 的文章。 其他特性: 引入了对于外部的准入控制器的支持,现在处于 alpha 状,提供了两种选...阅读全文

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

Kotlin 一统天下?Kotlin/Native 支持 iOS 和 Web 开发

Kotlin 使用 React.js 现代 Web 应用。 使用 create-react-kotlin-app,可让开发者无需费心于项目设置和配置构这些工作,能专注于快速开始客户端应用开发,同时体会到静类型语言的优势以及由 JavaScript 生系统带来的强大配套资源。详情点此了解。 未来的发展方向 Kotlin 语言的未来发展方向主要是在 Kotlin 支持的平台之间实现更好、更广泛的代码重用。官方表示计划通过使用同一 API 以扩展全部平台上的可用库资源集合,其中涵盖 I/O、网络、序列化以及日期处理等。 编译器方面,1.3 版本仍集中关注内部层面的变更,而不是外部可见的语言特性。内部的改变能提高性能、改进类型推断、为所有目标平台生成更高效的代码,以及带来更好的 IDE 插件响应能力...阅读全文

博文 2017-11-05 19:28:14 debian.cn

Harbor项目发布v1.7 2018圆满收官

目最佳用户,贡献者和合作伙伴颁发社区成就奖。 12月,Harbor 首次登陆 KubeCon 北美大会,项目成员发表了数场演讲,吸引了世界各地的粉丝前来交流。目前,Harbor 项目组每月定期举行社区电话例会,讨论发展路线图,并与国内外的企业及个人立了广泛的合作关系,社区生发展得如火如荼。 年近岁末, 经过 Harbor 社区三个多月的不懈努力,Harbor v1.7版本正式发布!新版本带来诸多新功能: · 镜像构历史 - 用户可查看容器镜像的构历史和内容; · 镜像复制(retagging)- 提供了在镜像上传至Harbor后重新镜像tag的能力。此功能在CI流水线中提升镜像到生产状或者通过编程方式重新tag镜像,亦或将特定镜像重新tag或者移到其它仓库或者项目等场景中特别...阅读全文

博文 2018-12-30 09:35:15 debian.cn

WSL2 将普遍可用,Linux 内核提供方式改变

微软博客宣布,WSL2 将在 Windows 10 2004 版中正式进入普遍可用(GA,Generally Available)状。 WSL 2 是去年微软在 Build 2019 上宣布推出的,相比第一代,新的 WSL 重新设计了架构,使用真正的 Linux 内核,可以在 Windows 上运行 ELF64 Linux 二进制文件。 Linux 二进制文件使用系统调用来执行许多功能,例如访问文件、请求内存与进程等。WSL 1 了一个转换层,对这些系统调用进行翻译,以允许它们在 Windows NT 内核上工作。但是,实现所有这些系统调用很有挑战性,导致某些应用程序无法在 WSL 1 中运行。现在 WSL 2 包含自己的 Linux 内核,它具有完整的系统调用兼容性,这引入了一...阅读全文

博文 2020-03-15 10:53:59 debian.cn

Debian 9.3上安装和配置 Observium 监控平台

rewrite phpenmod mcrypt 最后,使用以下命令重新启Apache Web服务器: systemctl restart apache2 接下来,使用以下命令您的第一个管理员用户: /var/www/html/observium/adduser.php admin yourpassword 10 如果一切正常,您应该看到以下输出: Observium CE 0.17.7.8697 Add User User admin added successfully. 访问Observium Web界面 在访问Observium之前,您需要通过UFW防火墙允许端口80。 默认情况下,UFW没有安装在Debian 9上,所以你需要先安装它。 apt-get install ufw -y 一旦安...阅读全文

博文 2017-12-30 11:35:21 debian.cn

聊聊很重要的内核技术eBPF

eBPF 的程序。编写C代码,将LLVM编译成驻留在ELF文件中的eBPF字节码。将程序加载到内核中,并必要的 eBPF-maps。eBPF 具有用作 socket filter,kprobe 处理器,流量控制调度,流量控制操作,tracepoint 处理,eXpress Data Path(XDP),性能监测,cgroup 限制,轻量级tunnel的程序类型。将加载的程序attach到系统中。根据不同的程序类型attach到不同的内核系统中。程序运行的时候,启并且开始过滤,分析或者捕获信息。 2016年10月的NetDev 1.2大会上,Netronome的Jakub Kicinski和Nic Viljoen发表了标题为“eBPF / XDP硬件卸载到SmartNIC”。 Nic...阅读全文

博文 2020-08-16 11:08:44 debian.cn

如何在 Debian 上安装 TensorFlow

TensorFlow 是一个端到端开源机器学习平台。它拥有一个包含各种工具、库和社区资源的全面灵活生系统,可以让研究人员推机器学习领域的先进技术的发展,并让开发者轻松地构和部署由机器学习提供支持的应用。 TensorFlow可以在系统范围内,Python虚拟环境中,作为Docker容器或与Anaconda一起安装。在本教程中,我们将讲解如何在Debian 10的Python虚拟环境中安装TensorFlow。 虚拟环境使你可以在一台计算机上拥有多个不同的隔离Python环境,并在每个项目的基础上安装模块的特定版本,而不必担心会影响其他项目。 以下内容提供了如何在Debian 10上的Python虚拟环境中安装 TensorFlow。 1、安装Python 3 venv 首先我们要验证...阅读全文

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

在前一篇文章中,我们介绍了 Debian Stretch 环境下,Kubernetes 集群安装的准备工作。本文我们将继续介绍 k8s集群 的安装配置工作。 第4步 - 设置主节点 在本节中,您将设置主节点。 但是,在任何Playbooks之前,值得介绍一些概念,例如Pod和Pod网络插件 ,因为您的群集将同时包含这两个概念。 pod是运行一个或多个容器的原子单元。 这些容器共享资源,例如文件卷和网络接口。 Pod是Kubernetes中的基本调度单元:pod中的所有容器都保证在调度pod的同一节点上运行。 每个pod都有自己的IP地址,一个节点上的pod应该能够使用pod的IP访问另一个节点上的pod。 单个节点上的容器可以通过本地接口轻松进行通信。 然而,pod之间的通信更复杂,并...阅读全文

博文 2019-05-13 22:57:41 debian.cn

AWS IAM 基本概念介绍

通过将此用户添加到组来分配相应的权限。同样,如果您的组织中有人更换工作,则不必编辑该用户的权限,只需从旧组中将其删除,然后将其添加到合适的新组即可。 Role IAM 角色 类似于用户,因为它是一个 AWS 实体,该实体具有确定其在 AWS 中可执行和不可执行的操作的权限策略。但是,角色旨在让需要它的任何人代入,而不是唯一地与某个人员关联。此外,角色没有任何关联的凭证(密码或访问密钥)。相反,如果将某个用户分配给角色,则将访问密钥并将该密钥提供给用户。 Temporary Security Credentials 您可以使用 AWS Security Token Service (AWS STS) 可控制对您的 AWS 资源的访问的临时安全凭证,并将这些凭证提供给可信用户。 典型...阅读全文

博文 2019-06-04 20:22:31 debian.cn

Arch Linux 2018.01.01 发布,使用 Linux 4.14 LTS

进行完整的依赖性维护。Arch 可以从光盘镜像或者从 FTP 服务器安装,它以一份连续演化的、的系统形式运作。缺省的安装提供一份坚实的 基础,用户可再进行定制安装。此外,Arch Build System(ABS)能支持简便新软件包,修改原先软件包的配置,以及通过 Arch Linux User Repository 来将这些软件包与其他人共享。 下载地址:https://www.archlinux.org/download/...阅读全文

博文 2018-01-03 08:50:10 debian.cn

Kubernetes 1.7 发布,安全强化、StatefulSet 更新及可扩展特性

-masquerade-agent)(RFC-1918),使用户可以在私有IP范围内集群并访问资源;服务可通过内部负载均衡(Internal Load Balancers)暴露,这是以Beta版提供的,允许Kubernetes和非Kubernetes服务在私有网络上相互访问(虽然当前通过Cloud VPN访问内部负载均衡的功能依然处于Alpha版);GKE现在支持在Alpha Clusters中运行NVIDIA K80 GPUs,该特性使得用户可以实验机器学习算法;自修复,当前是Beta版。它通过对不健康节点进行主监控,并在无需用户参与的情况下对节点做自修复,保持了集群的健康运行;一些GCP优化的改进,用于简化集群从底层架构层上做自扩展。 在Kubernetes博客及GitHub的...阅读全文

博文 2017-07-19 12:23:15 debian.cn

细数k8s支持的4种类型的container - 侃豺小哥

始化容器不会被开始执行。因此,如果启任务很长,则可以考虑将其分为多个步骤,每个步骤都由一个初始化容器处理,以便您知道哪些步骤失败。 如果任何初始化容器失败,则将重新启整个Pod(除非您将restartPolicy设置为Never)。重新启Pod意味着再次重新执行所有容器,包括任何初始化容器。因此,您可能需要确保启逻辑允许多次执行而不会导致重复。例如,如果数据库迁移已经完成,则应仅忽略再次执行迁移命令。 初始化容器是延迟应用程序初始化直到一个或多个依赖项可用的很好的选择。例如,如果您的应用程序依赖于施加API请求速率限制的API,则您可能需要等待一段时间才能接收来自该API的响应。在应用程序容器中实现此逻辑可能很复杂;因为它需要与健康和就绪状探测器结合使用。一种更简单的方法是一个...阅读全文

博文 2021-08-20 11:45:32 博客园

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

1. Robot Framework Robot Framework(RF)是用于验收测试和验收测试驱开发(ATDD)的自化测试框架。 基于 Python 编写,但也可以在 Jython(Java)和 IronPython(.NET) 上运行,提供跨平台支持(Windows、Linux 或 MacOS )。 优点: 通过使用关键字驱测试(KDT)方法简化了自化测试过程,方便测试人员易读的测试。 测试数据语法简单易用。 生系统丰富。由各种通用测试库和工具组成,这些工具都是作为独立项目开发的。 具有高度可扩展性。 可通过 pabot 或 Selenium Grid 执行并行测试。 缺点: 自定义 HTML 报告较为麻烦。 如果是针对大范围的库和扩展的 KDT 自化测试,议使用...阅读全文

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

最全的 DevOps 工具集合

Manager 是一项基础架构管理服务,可轻松、部署和管理 Google Cloud Platform 资源。 云平台 云平台主要是为了自化、观察软件的运行时,目前业内常用的云平台包括 Amazon Web Services、Microsoft Azure、Google Cloud Platform、Pivotal Cloud Foundry、Heroku 和 Container Schedulers。 Amazon Web Services Amazon Web Services(AWS)是一个安全的云服务平台,提供计算能力、数据库存储、内容交付等功能,以帮助业务扩展和成长。 简单来说,AWS 允许你进行以下操作: 在云中运行 Web 和应用程序服务器以托管网站 将所有文件安全地存储在云中...阅读全文

博文 2021-05-26 14:35:21 博客园

ChaosMesh 的基本功能有哪些

混沌实验场景,以及方便地将已有的混沌实验场景复用到其他应用混沌实验中,大大降低了混沌实验的成本。目前混沌实验场景提供的功能有:编排串行混沌实验编排并行混沌实验支持状检查步骤支持中途暂停混沌实验支持使用 YAML 文件定义和管理混沌实验场景支持通过 Web UI 定义和管理混沌实验场景具体的实验场景配置,参考具体 Chaos Mesh Workflow。可视化操作​Chaos Mesh 为用户提供了单独的 Chaos Dashboard 组件,即可视化支持。Chaos Dashboard 极大地简化了混沌实验,用户可以直接通过可视化界面来管理和监控混沌实验,仅需点一点鼠标就能够定义混沌实验的范围、指定混沌注入的类型、定义调度规则,以及在界面上获取到混沌实验的结果等。​安全保障​Chaos...阅读全文

VS Code 公布 2018 路线图:生态改进 快乐编码

Visual Studio Code 刚刚公布了其 2018 发展路线图。开发团队表示,他们通常会先制定目标,然后将工作分解在后续的 6-12 个月时间内。在当前的规划中,主要会从以下三个角度进行改进: Happy Coding: 为新用户和现有用户提供更愉快的编码体验。 Node、JavaScript 和 TypeScript: 为各种语言和框架实现卓越的端到端体验。 A Rich Extension Ecosystem: 提供更丰富的扩展功能,构良好的生系统。 各项大致内容(仅供参考) Happy Coding 计划针对以下方面进行改进: Fundamentals:提高启性能、减少资源/内存消耗、提高可访问性、支持社区贡献的翻译语言包、改善更新体验、提高可维护性等...阅读全文

博文 2017-11-02 11:50:40 debian.cn

Kafka 3.3 使用 KRaft 共识协议替代 ZooKeeper

引入的新的仲裁控制器确保元数据在整个仲裁中可以被准确复制。活控制器将元数据存储在事件源日志主题中,仲裁中的其他控制器对活控制器的事件做出响应。事件日志定期进行快照,确保日志不会无限增长。与基于 ZooKeeper 的控制器不同,如果出现了问题,仲裁控制器不需要从 ZooKeeper 加载状,因为集群的内部状已经分布在元数据主题中。这大大减少了不可用时间窗口,缩短了系统最坏情况恢复时间。下图显示了使用新的仲裁控制器比使用 ZooKeeper 更快地关闭具有 200 万个分区的 Kafka 集群。​新的 KRaft 共识算法和仲裁控制器使得 Kafka 集群可以扩展到数百万个分区,不仅提升了稳定性,让 Kafka 变得更容易监控、管理和支持,而且让整个系统可以有一个单一的安全模型,使...阅读全文

Proxmox VE 6.2发布 开源虚拟机平台

容视图中,管理员现在可以使用新列“日期”过滤存储的数据,例如,该列可以简化从特定日期开始搜索备份的过程。可以无缝更改 Web 界面的语言,而无需重新启会话。添加了阿拉伯语翻译,因此 Proxmox VE 总共支持 20 种语言。 Linux 容器: 集成容器技术已更新为 LXC 4.0.2 和 lxcfs 4.0.3。Proxmox VE 6.2 现在允许在基于目录的存储上为容器模板。适用于 Ubuntu 20.04、Fedora 32、CentOS 8.1、Alpine Linux 和 Arch Linux 的新 LXC 模板。 Zstandard用于备份/还原: 集成的备份管理器支持快速高效的无损数据压缩算法 Zstandard(zstd)。 用户和权限管理: Proxmox...阅读全文

博文 2020-05-18 19:18:30 debian.cn

Kubernetes v1.21 新特性预览

Secret 时,大量的 watch 事件会急剧增加 kube-apiserver 的负载,并会导致错误配置过快传播到整个集群。在这种情况中,给不需要经常修改的 ConfigMap 和 Secret 设置 immutable: true 就可以避免类似的问题。注意,设置 immutable: true 之后,ConfigMap 和 Secret 内容更新时需要删除并重新,且使用它们的 Pod 也需要删除重。IPv4/IPv6 双栈支持 BetaIPv4/IPv6 双栈支持在 v1.20 的时候进行了重构,并将于 v1.21 中进入 Beta 版本(默认开启),kubeadm 也已经支持 IPv4/IPv6 双栈集群。该特性开启后,Kubernetes Service 和 Pod 会同时分配...阅读全文

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

kubelet 中垃圾回收机制的设计与实现

!= nil { errors = append(errors, err) } return utilerrors.NewAggregate(errors) }cgc.evictContainers在 cgc.evictContainers 方法中会回收所有可被回收的容器,其主要逻辑为:1、首先调用 cgc.evictableContainers 获取可被回收的容器作为 evictUnits,可被回收的容器指非 running 状时间超过 MinAge,evictUnits 数组中包含 pod 与 container 的对应关系;2、回收 deleted 状以及 terminated 状的 pod,遍历 evictUnits,若 pod 是否处于 deleted 或者 terminated...阅读全文

博文 2021-02-05 17:48:22 知乎

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

)。 Fedora 25选择Wayland的作法受到用户的热烈好评。有人将此事件誉为Linux在使用systemd之后最重大的一次变革,且这一转换的无缝化效果又远优于systemd。Wayland支持下的GNOME得到显著改进,容器打开速度更快且桌面的稳定性也得到提升。 3. 微软拥抱Linux 过去几年来,微软公司一改积极打击Linux及开源运度,转而公开向这位曾经不共戴天的敌人示好。而在2016年中,微软更是以一系列举震惊世人——微软作为白金会员加入Linux基金会。另外,PowerShell与SQL Server 2016如今也开始支持Linux,而Windows 10则支持bash shell。 这些举措在得到群众欢迎的同时,也引发了质疑之声。有人认为微软的平台将能够更好地与Linux及开源...阅读全文

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

在树莓派上搭建 Raspbian 系统下的 Kubernetes 集群

。这时如果我们要查看或更改集群,需要登录到集群的主节点 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 上还没有安装...阅读全文

博文 2020-04-12 16:30:23 debian.cn

为什么使用 JavaScript 开发物联网?

较于PHP、Python、Java来说,JavaScript是最有可能在物联网大行其道的解释性语言。 JavaScript在浏览器没有对手,nodejs在服务器端也在不停的攻城拔寨,积累了大量的资源,构了一个完整的应用开发生环境。 JavaScript语言本身特点适合互联网,事件驱,异步使单线程处理网络事件得心应手。 JavaScript已经跨界到物联网,受到了行业巨头的关注,各种项目发展的如火如荼。 未来的物联网开发 如果JavaScript在物联网获得成功,那么物联网的开发将会发生巨大的变化。 底层驱由C实现,应用开发者不需要关注硬件,大量的互联网、移互联网应用开发者加入物联网开发。 传统的交叉编译、烧写、调试的开发方式使用范围将急剧缩小 所见即所得,上位机和下位机的架构由C...阅读全文

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

如何在 Debian 中安装 DHCP 服务器

主机配置协议(DHCP)是一种用于使主机能够从服务器自分配 IP 地址和相关的网络配置的网络协议。DHCP 服务器分配给 DHCP 客户端的 IP 地址处于“租用”状,租用时间通常取决于客户端计算机要求连接的时间或 DHCP 服务器配置的时间。 DHCP 如何工作? 以下是 DHCP 实际工作原理的简要说明: 一旦客户端(配置为使用 DHCP 的机器)连接到网络后,它会向 DHCP 服务器发送DHCPDISCOVER数据包。 当 DHCP 服务器收到DHCPDISCOVER请求报文后会使用DHCPOFFER包进行回复。 然后客户端获取到DHCPOFFER数据包,并向服务器发送一个DHCPREQUEST包,表示它已准备好接收DHCPOFFER包中提供的网络配置信息。 最后,DHCP...阅读全文

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

分布式运行时 Dapr 知多少

bindings and triggers (资源绑定及事件触发) Dapr的Bindings与Azure Functions很类似,其是立在事件驱架构的基础之上的。通过立触发器与资源的绑定,可以从任何外部源(例如数据库,队列,文件系统等)接收和发送事件,而无需借助消息队列,即可实现灵活的业务场景。Dapr的Bindings分为两种: Input Bindings(输入绑定):当外部资源的事件发生时,借助输入绑定,你的应用即可通过特定的API:POST http://localhost:/收到外部资源的事件,用于处理特定逻辑。Output Bindings(输出绑定):输出绑定允许你调用外部资源。比如,在订单处理场景中,在订单成功后,可以将订单信息通过Dapr的绑定...阅读全文

SVN切换分支用法汇总

一、SVN切换分支操作介绍SVN(Subversion,下文简称SVN)是一种版本控制系统,它提供了一系列的命令行工具来管理源代码。在代码的开发过程中,可能会需要更改当前工作目录下所处的分支。SVN提供了switch命令供用户进行分支切换操作,该命令只修改当前工作目录下原本的模块链接并不会真的修改目标URL中的版本库。在SVN中,一个版本库可能会有多个分支,我们可以通过checkout命令来这些分支,也可以使用branches工具来进行分支的删除、移、查看等,这些工具都是由SVN提供的。SVN提供了非常完善的分支管理机制,让我们可以方便地在开发过程中,随时随地地更换所处的分支。二、SVN切换分支常用命令及其参数介绍切换分支是SVN的基本操作之一,下面是一些常用的命令及其参数。大家可以...阅读全文

博文 2023-06-09 14:22:35 infras

Hadoop 核心 - HDFS 分布式文件系统详解

(NameSpace) HDFS 支持传统的层次型文件组织结构。用户或者应用程序可以目录,然后将文件保存在这些目录里。文件系统名字空间的层次结构和大多数现有的文件系统类似:用户可以、删除、移或重命名文件。 Namenode 负责维护文件系统的名字空间,任何对文件系统名字空间或属性的修改都将被 Namenode 记录下来。 HDFS 会给客户端提供一个统一的抽象目录树,客户端通过路径来访问文件,形如:hdfs://namenode:port/dir-a/dir-b/dir-c/file.data。 4. NameNode 元数据管理 我们把目录结构及文件分块位置信息叫做元数据。NameNode 负责维护整个 HDFS 文件系统的目录树结构,以及每一个文件所对应的 block 块信息(block 的...阅读全文

开源简史基础:Linux基金会

在当前以容器化和微服务推的技术中,需要了解的一个重要组织就是Linux基金会,在全世界范围内,Linux基金会通过提供开放源码所需要的统一资源和服务,从而促进和保护Linux的发展,推Linux的标准化。 2000年,开源发展实验室OSDL(Open Source Development Labs)作为一个全球性的非盈利组织正式立以促进Linux企业级计算的发展2007年1月22日,另外一个致力于推GPL的全球性的非盈利组织,自由标准组织FSG(Free Standards Group)和OSDL联合成立了Linux基金会。 Linux基金会是做什么的 拉赞助 Linux基金会致力于围绕开源可持续的生系统,从而加速技术的发展和商业化的推进。而实现这一主要目的的方式之一就是为...阅读全文

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

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

说透IO多路复用模型_京东云开发者的博客

作者:京东零售 石朝阳 在说IO多路复用模型之前,我们先来大致了解下Linux文件系统。在Linux系统中,不论是你的鼠标,键盘,还是打印机,甚至于连接到本机的socket client端,都是以文件描述符的形式存在于系统中,诸如此类,等等等等,所以可以这么说,一切皆文件。来看一下系统定义的文件描述符说明: 从上面的列表可以看到,文件描述符0,1,2都已经被系统占用了,当系统启的时候,这三个描述符就存在了。其中0代表标准输入,1代表标准输出,2代表错误输出。当我们新的文件描述符的时候,就会在2的基础上进行递增。可以这么说,文件描述符是为了管理被打开的文件而的系统索引,他代表了文件的身份ID。对标windows的话,你可以认为和句柄类似,这样就更容易理解一些。 由于网上对linux...阅读全文

博文 2023-01-01 15:13:50 CSDN博客

Git 介绍与使用详解

的 Git 仓库。 3.1在现有目录中初始化仓库 如果你打算使用 Git 来对现有的项目进行管理,你只需要进入该项目目录并输入。 $git init //初始化项目,将一个名为 .git 的子目录,这个子目录含有你初始化的 Git 仓库中所有的必须文件 $git add . //将所有文件添加到暂存区,或者git add * $git commit -m "first commit" //提交到本地仓库 $git remote add origin [email protected]:lingdianguole/spring-boot-practice.git //将本地仓库关联到远程 $git push -u origin master //提交到远程master 3.2克隆远程仓库...阅读全文

博文 2017-02-25 09:00:27 程序员

Ceph 基金会正式成立 接受 Linux 基金会的管理

(SARAO),加州大学圣克鲁兹分校开放源码软件研究中心(CROSS)等。 Linux基金会执行董事Jim Zemlin说:"Ceph在帮助企业有效管理高增长和扩展数据存储需求方面有非常丰富的经验,在Linux基金会下,Ceph基金会将能够利用更多资源来帮助完善Ceph生系统设。" Ceph联合始人&Red Hat Ceph首席架构师 Sage Weil说:"Ceph基金会的成立证明了一个多元化的开源社区的力量所在,各方共同联合起来致力于解决数据存储和数据服务的爆炸性增长。" Ceph被世界各地的云提供商和企业使用,包括金融机构(Bloomberg,Fidelity),云服务提供商(Rackspace,Linode),学术和政府机构(Massachusetts Open Cloud),电信基础设...阅读全文