InfraPub 为您找到相关结果 599

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

我司使用钉钉作为主要的内部通讯工具,基本上大家在电脑和手机上都开着,消息可以第一时间查看,报警消息的即时要求比较高,我们计划使用钉钉来发送报警通知。本文将简要介绍发送消息的API使用样例。钉钉的API接口文档,请查阅钉钉开放平台。 介绍如何用 Python 实现钉钉自动发送消息,你可以用来和报警平台整合,或者做ChatOps。 获取 access token 要使用钉钉发送消息,首先需要获取access token,代码如下: def get_access_token(): url = 'https://oapi.dingtalk.com/gettoken?corpid=%s&corpsecret=%s' % (corp_id, corp_secret) request...阅读全文

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

基于Inception & Yearning做SQL审核的实践

./configure make && make install 安装Yearning 2.1 用pip3安装依赖包(txt文件在src目录中) pip3 install -r requirements.txt 2.2 创建数据库实例yearning 2.3 将该数据库实例的连接信息写入develop.conf。升级请注意:1.0.0发布后,该文件增加了两个属:ldap_type=1和smtp_port=,如果是cp原有的配置文件覆盖新下载的,要加上这两个配置 2.4 初始化数据库 python3 manage.py makemigrations && python3 manage.py migrate 2.5 添加初始化用户 echo "from core.models import Account...阅读全文

博文 2018-08-13 17:39:45 debian.cn

GitHub 发布10月21日系统故障分析报告

GitHub 刚刚通过官方博客发布了 21 日“挂掉”的事件分析。GitHub 指出此次事件发生的原因是在 10 月 21 日 22:52 UTC 进行日常维护——更换发生故障的 100G 光学设备时导致美国东海岸网络中心与美国东海岸数据中心之间的连接断开。 更具体地,GitHub 分析,虽然两地的连接在 43 秒内恢复,但这次短暂的中断引发了一系列事件,这才导致了长达 24 小时 11 分钟的服务降级。 为了大规模提高能,GitHub 的应用程序将直接写入每个群集的相关主数据库,但在绝大多数情况下将读取请求委派给副本服务器的子集。GitHub 使用 Orchestrator 来管理 MySQL 集群拓扑并处理自动故障转移,Orchestrator 在此过程中考虑了许多变量,并在...阅读全文

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),电信基础设...阅读全文

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

来对 Harbor 项目的支持和贡献。新的一年,Harbor项目组将继续携手社区进一步完善Harbor的功能特,共同将Harbor打造成云原生领域的最佳容器镜像管理软件!让我们一起祝愿2019年,Harbor项目百尺竿头,更进一步! 欢迎下载使用Harbor v1.7: https://github.com/goharbor/harbor/releases/tag/v1.7.0...阅读全文

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

HTTPS 证书有效期被提议缩短至13个月

的证书颁发机构带来巨大压力。 Hollebeek 称: 将证书寿命迅速缩短到一年,甚至更少,对于许多依赖数字证书保护系统的公司来说,这将带来巨大的成本。这些费用不会换来更加安全的改进,并且这项提案对从事非法活动或冒充合法公司的非法分子不会有任何影响。最主要的一点是,减少证书寿命的任何好处都是属于理论的,在短期内要付诸实际的话,产生的风险和成本也将难以预测。 该提案于今年早些时候在谷歌员工 Ryan Sleevi 的一次会议上提出,目前仍处于草案阶段,还没有关于何时进行表决的消息。...阅读全文

博文 2019-08-14 14:13:58 debian.cn

谷歌开源 Pigweed:用于提升嵌入式开发效率

编辑——编译——刷新——测试(edit-compile-flash-test)周期。 这些测试都是自动完成的,用户无需离开自己的代码编辑器。此外,还可以使用 pw_target_runner 模块在多个设备上并行运行测试,从而节省更多时间。 团队开发代码需要强调一致,然而,设置 lint、配置代码格式以及添加自动的提交前检查等通常会使这项工作无限期延迟。这时,Pigweed 的 pw_presubmit 模块可派上用场。它会基于用户可能已经使用的工具提供现成的 Lint 集成套件,并预先配置好,可以立即供微控制器开发人员使用。 至于该项目为什么取名为 “Pigweed”,谷歌给出了解释:“Pigweed,又称 amaranth ,是一种营养丰富的谷物和绿叶沙拉菜,也是一种快速生长的杂草...阅读全文

博文 2020-03-22 08:35:14 debian.cn

以太网技术联盟宣布800千兆以太网规格

的大目标是制定800Gbase-R规范(base-R表示当前媒体上的当前标准系列,base-T和base-C表示前几代)。 与以前的以太网迭代一样,许多技术将被重用和开发。800Bbase-R规范(或800gbe)需要对媒体访问控制(MAC)和物理编码子层(pc)进行新的定义。这些将从 IEEE 802.3bs 标准中 400GbE 的现有规范中重新定义,重新定义为在8条 106gbps 信道上工作。为了兼容,规范中的其他部分(如前向错误控制)保持不变。 RobStone等技术工作组主席说:“这项工作的目的是尽可能重新利用标准的400GbE逻辑,以创建一个800GbE的MAC和PC规范,从而为实施多速率以太网端口的用户提供最低的开销成本。”...阅读全文

博文 2020-04-12 15:10:55 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

内网穿透利器frp部署配置指南

frp是一个使用go语言开发的反向代理服务,可用于内网穿透,支持tcp, udp协议,为http和https协议提供了额外的能力,且尝试支持了点对点穿透。 由于ngrok 2.x已经闭源,ngrok 1.x已不再维护,所以这里尝试使用frp替代ngrok作为个人的内网穿透工具。 0.前提条件 一台Linux云主机(这里是CentOS 7),并要求具有固定公网IP暴露这台云主机指定端口的能力 有一个域名解析到这个公网IP,如frp.frognew.com和*.frp.frognew.com解析到这个公网IP 1. 下载frp服务端frps和客户端frpc可执行文件 分别在服务器和个人本地机器上,从[https://github.com/fatedier/frp/releases]下载对应平...阅读全文

博文 2021-02-18 14:42:16 青蛙小白

Rust的模块化系统: 包Packages, 箱Crates, 和模块Modules

::Ordering, io}; use std::io::{self, Write}; // 引入 std::io 和 std::io::Write 引入模块下所有共有元素, 需谨慎使用, 一般在测试时或预加载时使用use std::collections::*; re-exporting names with pub use (暂且跳过)使用外部包(External Packages)在文件Cargo.toml中添加依赖[dependencies], Cargo从crates.io下载所需要的依赖包.[dependencies] rand = "0.5.5"引入rand中的Rng特(trait)use rand::Rng; fn main() { let secret_number = rand...阅读全文

博文 2021-02-20 08:49:51 知乎

Open Source Initiative 批准四个新的开源许可证

许可证。 四个新的许可证 首先是 Cryptographic Autonomy License(CAL)。这个许可证是为分布式密码学应用而设计的。现有的开源许可证无法保证开放,因为如果没有义务与其他对等体共享数据,那么一个对等体就有可能损害网络的运行。所以,CAL 除了是一个强大的版权许可以外,还包括向第三方提供独立使用和修改软件所需的权限和材料,而不使第三方有数据或功能的损失。 随着分布式密码学在加密结构的点对点共享中越来越多的使用,如果更多的开发者发现自己需要一个像 CAL 这样的法律工具,也就不足为奇了。我们希望由此产生的许可证是清晰易懂的,并希望开源从业者会发现它大有用处。 在我们之前的报道中曾提到,欧洲核子研究组织 CERN 提交的 CERN Open Hardware...阅读全文

博文 2021-03-01 10:44:35 OSChina

ChaosMesh 的基本功能有哪些

Mesh 通过 Kubernetes 原生的 RBAC(基于角色的权限控制)功能对权限进行管理。用户可以根据实际的权限需求自由地创建多种 Role,然后绑定到用户名 Service Account 上,最后生成 Service Account 对应的 Token。用户使用该 Token 登陆 Dashboard,只能在该 Service Account 允许的权限范围内进行 Chaos 实验。此外 Chaos Mesh 还支持通过设置 Namespace Annotation 的方式开启特定 Namespace 下混沌实验的权限,进一步保障混沌实验的可控。​​​​​​​...阅读全文

Linux Systemd被爆远程漏洞 CVE-2017

在 Systemd (linux 操作系统流行的 init 系统和服务管理器) 中发现了一个关键漏洞, 这使得远程攻击者有可能触发缓冲区溢出, 从而通过 dns 响应在目标计算机上执行恶意代码。 Systemd是什么 systemd 是一种系统初始化程序。和 sysVinit 以及 upstart 一样,systemd 会成为系统开机时启动的第一个进程(至少 PID 是 1),由它掌管计算机接下来要做的事情,例如读取 fstab 挂载磁盘和按照 runlevel 的设定启动各种服务。其安全的重要不言而喻。 Systemd远程代码执行漏洞 CVE-2017-9445 该漏洞编号 CVE-2017-9445 ,实际上驻留在 " systemd-resolved " 的...阅读全文

博文 2017-07-02 09:39:36 9445 影响多种Linux系统

LXD 3.8 发布,下一代容器管理器

LXD 服务器必须配置为监听单个 IPv4 或 IPv6 地址,同时内部集群流量和常规客户端流量都使用相同的地址。LXD 3.8 引入新的 cluster.https_address 选项作出改变,write-once 写入密钥保存用于集群通信的地址,并且无法在不必从集群中删除节点的情况下进行更改。有了这个单独的密钥,现在可以将集群节点上的常规 core.https_address 更改为任何地址,包括通配符模式,如 :8443。 集群镜像复制 集群中引入了自动镜像复制, 在 LXD 3.8 之前,镜像只会被复制到其它集群成员,虽然有利于能、带宽和磁盘使用,但这有一个明显的缺点,即如果镜像仅出现在单个系统上并且系统脱机,那么在系统恢复之前将无法使用该镜像。 此版本通过在至少 3 个系统上复制所...阅读全文

博文 2018-12-14 10:29:14 debian.cn

Debian Linux下LNMP环境配置

-mysql php5-memcache php5-curl 如上命令安装了php5-memcache的扩展,因此继续安装Memcached: apt-get install memcached 安装完成之后,可以使用“php5-fpm -v”查看PHP的版本。 4.安装Nginx 我在安装的时候直接安装了Nginx的全部扩展功能(nginx-full),后边可能会有功能的增强,所以在安装的时候直接全部安装了: apt-get install -y nginx-full 然后启动Nginx: service nginx start 放问地址http://ip,如果看到如下所示,就说明你的Nginx安装正常。 接下来配置Nginx,Nginx的配置文件在“/etc/nginx/sites...阅读全文

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

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

级的记录,按照权重选择,记录的权重越高,被选择的可能越高。 选择的时候,将所有记录的权重值累加,得到一个选择区间[0,sum],每个记录在[0,sum]中占据一段连续的、长度为自身权重值区间。然后生成一个[0,sum]中的随机数,随机数落在的区间所属的记录就是被选择的记录。 注意事项 在使用DNS SRV的时候,要注意DNS Client是否按照预期的方式处理收到的SRV记录。当前DNS SRV只能够负责提供服务地址列表,对这个列表如何解读,完全取决于Client的实现。rfc-1035中规定,通过UDP协议传输DNS响应时,UDP报文的负载不能超过512字节,在添加 SRV 记录的时候,要特别注意。通过TCP传输时没有512字节的限制。当一个服务地址有多个相同优先级的SRV记录的时候...阅读全文

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

提问的智慧 – 全文

堆问题,专家们更喜欢有针对的提问。 认真地思考,准备好你的问题。草率的提问只能得到草率的回答,甚至得不到回答。在提问时,你越是表现出在此前做过思考与努力去解决自己的问题,你越有可能得到真正的帮助。 注意别提问错误的问题。如果提问基于错误的假设,某黑客多半会一边想「这真是一个愚蠢的问题」,一边按将错就错地敷衍你,并且希望这个结果能够给你一个教训:如果提问的方式不对,你就得不到正确的答案。 永远不要假设你有资格得到解答。你没有这种资格,毕竟你没有为此服务付费。如果你能够提出有内容、有趣和激励思考的问题,你将通过自己的努力「挣到」答案,因为这种提问能够向社区贡献经验,而不仅仅是消极无止境地索取。 另一方面,展现你的能力,并且表明你乐意参与解决问题,这是个很好的开始。「有没有人能指个方向?」,「我...阅读全文

博文 2009-10-01 13:18:00 debian.cn

Golang 中的 channel 通道详解

channel通道golang的并发模型是序列通信处理CSP(communicating sequential process)——使用通信来共享内存 ,避免goroutine因竞争共享内存频繁加锁产生的能问题。基本数据结构golang中提供了一个特殊的类型channel实现goroutine之间的通信。channel类似于队列,先进先出。channel数据结构源码在src/runtime/chan.go下。chan 使用 hchan 表示,它的传参与赋值始终都是指针形式,每个 hchan 对象代表着一个 chan。hchan 中包含一个缓冲区 buf,它表示已经发送但是还未被接收的数据缓存。buf 的大小由创建 chan 时的参数来决定。qcount 表示当前缓冲区中有效数据的总量...阅读全文

Linux下多线程程序为什么消耗大量虚拟内存

nasty issues for obvious reasons. Setting MALLOC_ARENA_MAX to a low number will restrict the number of memory arenas and bound the virtual memory, with no noticeable downside in performance – we’ve been recommending MALLOC_ARENA_MAX=4. We should set this in hadoop-env.sh to avoid this issue as RHEL6 becomes more and more common. 总结一下,glibc为了分配内存的能的问题...阅读全文

博文 2015-01-28 10:35:39 debian.cn

Linux系统诊断-内存基础

数。从而达到“写资源”合理利用的效果。然而,free命令所展示的buffer和cache 有点狭义的意思——free展示的buffer表示 块设备所占用的缓存 、free展示的cache表示普通文件占用的the page cache(缓存页) 。总之,buffer和cache使用的内存都是用来加速Linux读写能,如果有新的进程需要内存,系统会将buffer和cache占用的内存回收,并重新分配给进程使用。2.4 其他内存概念RSS & VSZ & PSS & USSRSS(Resident Set Size):进程实际使用的物理内存大小,包括sharedMem。VSZ(Virtual Memory Size):进程所有能够访问到的内存大小,包括因为缺页中断,被swap出去的内存大小,以及...阅读全文

博文 2021-02-11 14:22:42 SegmentFault 思否

基于thanos搭建分布式prometheus

querier会根据label自动去重,确保返回给grafana的数据不会重复,这个特很关键。 有了thanos querier组件,我们可以很简单的解决单点故障问题: 部署N个prometheus同时抓取数据,然后thanos querier代理它们,这样prometheus挂了一台也不影响服务,数据在其他prometheus上还有。 方案1:thanos sidecar + thanos querier 实际上,querier不能直接反向代理prometheus,而是需要在prometheus的POD内部署一个thanos sidecar组件,querier反向代理至sidecar,再由sidecar查询POD内的prometheus。 querier和sidecar之间走GRPC协议,POD内的...阅读全文

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

一位五年工作经验架构师的感悟

写给五年陈的自己 写周报,写的兴起,编写周报,还边用虎跑泉,泡铁观音喝。自己写周报的**惯还是要改一改,自己是个情中人,写个周报也透露了太多情感在周报里。有很多人肯定觉得不好,也许以后我也会改,改的越来越干练,掏心的话少说。 兴奋了,喝了茶,睡不着了。灵感闪动,本周是个值得纪念的日子,写个文章纪念下过去。 回想这一路路走来,还是很感恩收获的一切,我渐渐从一名菜鸟,成长为一位架构师,记得毕业的时候我给自己定的目标是:五年要成为一方面的专家。虽然,实际的成长比这个慢了两年,但是我还是庆幸自己当初果断的裸辞,然后进入支付宝。 每个架构师都是独立无二的,每个架构师都应该有自己的情怀,这些情怀是你的世界观。 我是如何成长为一个架构师的,我姑且给自己定的 title 就是架构师,不要认为有架构师的...阅读全文

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

Monit:开源服务器监控工具

monit status # 查看所有服务状态 monit status nginx # 查看nginx服务状态 monit stop all # 停止所有服务 monit stop nginx # 停止nginx服务 monit start all # 启动所有服务 monit start nginx # 启动nginx服务 monit -V # 查看版本 配置文件 使用yum安装默认配置文件在: /etc/monitrc # 主配置文件 /etc/monit.d/ # 单独配置各项服务 为了保护控制文件和密码的安全,monitrc必须具有读写权限不超过0700(u=xrw,g=,o=)。 主配置文件主要配置全局:/etc/monitrc ## Global section set daemon...阅读全文

博文 2023-04-12 15:21:43 阿里云开发者社区

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

->A4};……; {A1,A2,...,Ai}->Ai+1. 这种方式就是第二数学归纳法。对于Ai+1需要前面的所有前序状态才能完成推理过程。我们将这一模型称为高阶马尔科夫模型。对应的推理过程叫做“动态规划法”。 上述两种状态转移图如下图所示: 能用动规解决的问题的特点 能采用动态规划求解的问题的一般要具有3个质: (1) 最优化原理:如果问题的最优解所包含的子问题的解也是最优的,就称该问题具有最优子结构,即满足最优化原理。 (2) 无后效:即某阶段状态一旦确定,就不受这个状态以后决策的影响。也就是说,某状态以后的过程不会影响以前的状态,只与当前状态有关。 (3)有重叠子问题:即子问题之间是不独立的,一个子问题在下一阶段决策中可能被多次使用到。(该质并不是动态规划适用的必要条件,但是如果没...阅读全文

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

Twitter确认接受440亿美元收购提议 埃隆·马斯克将完全控制该公司

的9.2%的被动股份。这一披露促使这家社交媒体巨头的首席执行官帕拉格-阿格拉瓦(Parag Agrawal)向马斯克提供了一个Twitter董事会席位。然而,马斯克拒绝成为Twitter董事会的一员,因为该提议有一个条件,即阻止特斯拉CEO将其在Twitter的股份增加到15%以上,可以预见的是,这引起了人们的猜测,即马斯克正在对整个公司发起恶意收购。 就在这些戏剧事件发生几天后,马斯克正式公布了他以每股54.2美元的价格将Twitter私有化的提议,相当于超过430亿美元的价格。马斯克还写了一封致Twitter董事会的公开信,指出。 "我投资Twitter是因为我相信它有可能成为全球自由言论的平台,我相信言论自由是一个正常的民主社会所必需的。然而,自从投资以来,我现在意识到...阅读全文

Systemd 及 Service 文件含义解析

Systemd 是 Linux下的一款系统和服务管理器,兼容 SysV 和 LSB 的启动脚本。Systemd 的特有:支持并行化任务;同时采用socket式 与 D-Bus 总线式激活服务;按需启动守护进程(daemon);利用 Linux 的 cgroups 监视进程;支持快照和系统恢复;维护挂载点和自动挂载点;各服务间基于依赖关系进行精密控制。 其中的监视和控制功能的主要命令就是systemctl。 Systemd 有很多不同类型的使用单元,主要包括:系统服务(.service)、挂载点(.mount)、sockets(.sockets)、系统设备(.device)、交换分区(.swap)、文件路径(.path)、启动目标(.target)。一般我们常用的是其中的系统服务。 对于系...阅读全文

博文 2021-02-17 10:02:50 joseph

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

我们将介绍,如何在三个树莓派上,创建出一套 Kubernetes 集群并正常使用。在这种场景下,主节点的内存和 CPU 资源较有限,执行 Kubernetes 任务时能会有折扣,想做升级也不容易。 在开始之前,我们先介绍 K3s 这个项目。K3s 被誉为是最轻量级的 Kubernetes 发行版,它针对低配的 x86 和 ARM 处理器优化,可以让 Kubernetes 在树莓派上运行得更好。 基于 Raspbian 的 kubernetes 集群 本文我们将介绍如何使用 K3s 在树莓派上创建 Kubernetes 集群。系统我们用的是树莓派最流行的 Raspbian。 准备工作 在开始创建 Kubernetes 集群之前,我们需要准备, 至少一个树莓派,包括 SD 卡和电源网线,普通...阅读全文

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

nsenter 及 Linux命名空间 简介

,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether 56:7b:98:07:30:bc brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet 192.168.134.93/27 brd 192.168.134.95 scope global eth0 valid_lft forever preferred_lft forever 通过内网 IP 地址,我们得知已成功进入容器内部。 原理 namespace namespace 是 Linux 中一些进程的属的作用域,使用命名空间,可以隔离不同的进程。 Linux在不断的添加命名空间,目前有: mount:挂载命名空间,使...阅读全文

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

kubelet 绑核与不绑核的性能差别

同一台主机,同样的workload,kubelet 中配置CPU绑定后的能变化: 绑核的配置放在 /etc/kubernetes/kubelet 中的这两行: ``` FEATURE_GATES="--feature-gates=CPUManager=true" CPU_MANAGER_POLICY="--cpu-manager-policy=static" ``` 绑核前: ``` procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in...阅读全文

玩转 AWS 的必备工具

一个根据make的Map-Reduce解决构架和一个轻巧的分布式存储。小编迄今依然仍在应用GXP开展日常的管理方法和规模数据处理方法实际操作这些,有感兴趣的大家能够到GXP首页查询:qnu/gxp。 SaltStackSaltStackautomationforCloudOps,ITOps&DevOpsatscale SaltStack也是根据Python的一种系统软件布署管理系统软件。和Ansible相近,SaltStack也是根据ssh和服务项目上的SaltStack过程(minions)通讯并根据YAML叙述环境变量。可是有别于Ansible,SaltStack选用的是主从关系式的多级别系统架构,因而必须在服务端事先安裝一个SaltStackminion软件包。 系统架构图自动...阅读全文

玩转 AWS 的必备工具

个轻巧的分布式存储。小编迄今依然仍在应用GXP开展日常的管理方法和规模数据处理方法实际操作这些,有感兴趣的大家能够到GXP首页查询:qnu/gxp。 SaltStackSaltStackautomationforCloudOps,ITOps&DevOpsatscale SaltStack也是根据Python的一种系统软件布署管理系统软件。和Ansible相近,SaltStack也是根据ssh和服务项目上的SaltStack过程(minions)通讯并根据YAML叙述环境变量。可是有别于Ansible,SaltStack选用的是主从关系式的多级别系统架构,因而必须在服务端事先安裝一个SaltStackminion软件包。 系统架构图自动生成可视化工具...阅读全文

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

ATOM feeds 使用 Django,你可以通过创建一个简单的Python类来快速创建 RSS 和 ATOM feeds。 在数据库中自动创建表 如果你的数据库中缺失了某一个表,你可以通过执行 Django 的迁移命令来自动创建它。 容易的数据迁移 数据迁移是 Django 中最有用的功能之一。通过使用 Django 的迁移方法,你可以在短时间内改变一个数据库模式。同样也容易就能跟踪你的数据库模式和相关的改变。为数据迁移所做的命名能够帮助你进行版本控制,还有很多选项可以用来合并版本和进行修改。 安全 Django非常安全,该框架默认情况下可以防止 XSS 攻击、CSRF 攻击,SQL 语句注入、点击劫持、用户管理、cookies、邮件标头注入、密码攻击、目录遍历攻击等等。 Django有一个...阅读全文

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

监控Kubernetes集群证书过期时间的三种方案 - OSCHINA

。Blackbox Exporter 最重要的功能之一是测量 Endpoint 的可用。 当然, Blackbox Exporter 探测 HTTPS 后就可以获取到证书的相关信息, 就是利用这种方式实现对 Kubernetes apiserver 证书过期时间的监控. 配置步骤 调整 Blackbox Exporter 的配置, 增加 insecure_tls_verify: true, 如下: 重启 blackbox exporter: kubectl rollout restart deploy ... 增加对 Kubernetes APIServer 内部端点https://kubernetes.default.svc.cluster.local/readyz的监控. 如果你没有使用...阅读全文

博文 2022-12-10 06:49:43 中文开源技术交流社区

深入学习golang — channel

Channel 1. 概述 “网络,并发”是Go语言的两大feature。Go语言号称“互联网的C语言”,与使用传统的C语言相比,写一个Server所使用的代码更少,也更简单。写一个Server除了网络,另外就是并发,相对python等其它语言,Go对并发支持使得它有更好的能。 Goroutine和channel是Go在“并发”方面两个核心feature。 Channel是goroutine之间进行通信的一种方式,它与Unix中的管道类似。 Channel声明: ChannelType = ( "chan" | "chan" "<-" | "<-" "chan" ) ElementType . 例如: var ch chan int var ch1 chan<- int //ch1只能写...阅读全文

博文 2021-01-25 12:39:17 博客园

如何在 Debian服务器 上启用双因子身份验证

双因子身份验证就是指,需要两种身份验证才能完成账号有效的验证,可以是密码、SSH 密钥,也可以是第三方服务,比如 Google Authenticator。这意味着单个验证方式的缺陷,不会影响账号的安全。本文我们将介绍如何在 Debian 服务器上启用双因子验证。 请注意,本文涉及到多次修改 SSH 配置,当你修改配置时,请确保有至少两个到服务器终端的连接。打开的终端将一直保持,即便 SSH 服务重启。第二终端意味着你可以修复你在SSH配置的错误。 密钥和密码验证的SSH SSH 支持对登录要求不止一个身份验证方法,我们首先启用密钥和密码验证。 在 /etc/sh/sshd_config 中的 SSH 服务器配置文件中的 AuthenticationMethods 选项中设置了身份验证方...阅读全文

博文 2018-12-05 11:44:56 debian.cn

欧洲核子研究组织(CERN)是如何使用 Linux 和开源的 - 云+社区

解决方案的可扩展时,我们也从中受益,也可以扩大规模。“解决现实问题2012 年左右,CERN 正在研究如何为大型强子对撞机扩展计算能力,但难点是人员而不是技术。CERN 雇用的员工人数是固定的。“我们必须找到一种方法来扩展计算能力,而不需要大量额外的人来管理。”Bell 说,“OpenStack 为我们提供了一个自动的 API 驱动和软件定义的基础架构。”OpenStack 还帮助 CERN 检查与服务交付相关的问题,然后使其自动化,而无需增加员工。“我们目前在日内瓦和布达佩斯的两个数据中心运行大约 280000 个处理器核心和 7000 台服务器。我们正在使用软件定义的基础架构使一切自动化,这使我们能够在保持员工数量不变的同时继续添加更多的服务器。“Bell 说。随着时间的推移,CERN...阅读全文

博文 2021-11-29 13:20:55 腾讯云

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

influxdb在内存中引入了大量文件,在内存充足时,会占用较多的空间,用于提高程序读取能。5.SMP与NUMA?cpu硬件体系架构可以分为:SMP(Symmetric Multi-Processor)/UMA(Uniform Memory Access)模式SMP架构,所有的CPU争用一个总线来访问所有内存,优点是资源共享,而缺点是总线争用激烈。 实验证明,SMP服务器CPU利用率最好的情况是2至4个CPUNUMA(Non-Uniform Memory Access)模式NUMA架构引入了node和distance的概念。对于CPU和内存这两种最宝贵的硬件资源, NUMA用近乎严格的方式划分了所属的资源组(node),而每个资源组内的CPU和内存是几乎相等。在influxdb服务器上,查看当前cpu及...阅读全文

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

深入了解Docker背后的namespace技术

,这是系列博客的第一篇,深入探讨Docker对namespace技术的应用。 Namespaces 在第一部分,我会在文章中讨论Docker在使用Linux namespace时,如何创建Linux namespace。在之后的博客中我们会讨论namespace如何与其它特如cgroups和隔离的文件系统相结合,去实现更多有用的功能。 从根本上说,namespace是Linux系统的底层概念,有一些不同类型的命名空间被部署在核内。跟踪docker run -it --privileged --net host crosbymichael/make-containers这段代码,我们就可以深入到每个不同的namespace。开始会有一些预加载文件和配置。尽管我们也会在用Docker为我们运行的...阅读全文

博文 2015-05-17 10:03:00 debian.cn

什么是线程安全,以及并发需要知道的几个概念

。比如它的线程优先级太低,而高优先级的线程不断抢占它所需的资源,导致低优先级资源无法工作。 3、活锁的情况是线程一种非常有趣的情况,在生活中我们可能会碰到这样的情况,那就是出门的时候可能会遇到有人要进门,你打算让他先进门,他又打算让你先出门,结果,两个人都互相退后了,然后你打算先出门时对方也向前一步,来来回回就一直卡在门口。当然,这种事情正常人很快就能解决,但如果是线程碰到就没那么幸运了。 如果两个线程占用着公共的资源,并且秉承着 “谦让” 的原则,主动把资源让给他人使用,你让我也让,这样就造成资源在两个线程间不断跳动但线程之间都拿不到资源的情况,这样的情况就是活锁了。 线程安全 线程安全指的是多线程的安全。如果一段程序可以保证被多线程访问后仍能保持正确,那么程序就是线程安全的。一般来说,线...阅读全文

博文 2018-12-31 20:44:06 debian.cn

Java Annotations详解

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

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

百度运维工程师挖矿实录:四个月用155台服务器挖矿赚10万判3年

某最后一次部署挖矿脚本后,百度通过安全管理监控系统发现大量服务器运行异常,占用公司服务器的运算资源执行了挖矿程序,经过一番排查,最终确定了幕后的操盘手“安某”。 为此,百度还花费 2.7 万元请北京耐特网科技公司提供了应急服务,具体项目包括样本提取、样本分析、服务器日志提取并分析、追踪溯源、报告编写等。 2018 年 7 月,百度正式起诉“安某”,认为其犯有非法控制计算机信息系统罪。经法院的进一步核实,被告人“安某”虽对其行为质提出辩解,但其到案后及在庭审过程中对其实施的作案过程均能如实交代,故应认定其具有如实供述的情节,同时结合其能退缴涉案违法所得,故可对其从轻处罚。 据此判决: 一、被告人安邦犯非法控制计算机信息系统罪,判处有期徒刑三年,罚金人民币一万一千元。 二、在案扣押的人民币十一...阅读全文

博文 2020-03-17 20:42:41 debian.cn

开源社区的运作模式:Debian Vs. Ubuntu

Canonical员工;社区委员会总共也只有8人,其中2人是Canonical员工;技术委员会的6个成员全部是Canonical员工,这6名成员全部由Mark Shuttleworth亲自任命,社区对此没有任何话语权,在确认投票时只能选择同意。很明显,作为Ubuntu的创始人,Mark Shuttleworth希望牢牢控制该项目的发展方向,也只有他是社区委员会和技术委员会永久成员。 Debian和Ubuntu身份对比 下表列出了这两个项目给开发者授予的权利对比。 权利 Debian Ubuntu DM DD UM PPU/UD MOTU UCD 通过监督进行包维护 有 无需监督 有 有 有 无需监督 官方的Email邮件别名 – 有 有 有 有 有 参与成员投票 – 有 有 有 有 有 参与开发者投票...阅读全文

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

Kubernetes 使用 PodPreset 注入信息到 Pods_哎_小羊的博客

HOSTNAME=nginx-test-2 DB_PORT=6379 HOME=/root PKG_RELEASE=1~stretch TERM=xterm KUBERNETES_PORT_443_TCP_ADDR=10.96.0.1 NGINX_VERSION=1.17.1 ...... PWD=/ TZ=Asia/Shanghai # date Sun Jul 7 12:17:26 CST 2019 可以看到,该 Namespace 下的两个 Pod 都成功注入了配置信息,时区也改过来了,是不是很方便了。不过,如果想指定该 Namespace 下某个 Pod 不使用该 PodPreset 该如何配置呢?毕竟有些个化的 Pod 不使用通用配置。我们可以配置...阅读全文

博文 2021-01-27 18:47:00 CSDN博客

Gitlab CI 配置文件 .gitlab

内容,请查阅GitLab Runner。 缓存key GitLab Runner v1.0.0 开始引入。 key指令允许我们定义缓存的作用域(亲和),可以是所有jobs的单个缓存,也可以是每个job,也可以是每个分支或者是任何你认为合适的地方。 它也可以让你很好的调整缓存,允许你设置不同jobs的缓存,甚至是不同分支的缓存。 cache:key可以使用任何的预定义变量。 默认key是默认设置的这个项目缓存,因此默认情况下,每个pipelines和jobs中可以共享一切,从GitLab 9.0开始。 配置示例 缓存每个job: cache: key: "$CI_JOB_NAME" untracked: true 缓存每个分支: cache: key...阅读全文

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

Docker 核心原理

cgroup 节点可以包含零或多个子节点,子节点继承父节点的属。整个系统可以有多个hierarchy。 配置示例 docker run -d --cpus=0.1 --memory=100MB busybox 1 2 3 4 5 root@lxkaka-server:/sys/fs/cgroup/cpu/docker/ee43bb16af9947ed9e8498ad42c859318e001365043e4cda410f68b4a0d79378# cat cpu.cfs_quota_us 10000 root@lxkaka-server:/sys/fs/cgroup/memory/docker...阅读全文

博文 2021-02-25 09:14:23 lxkaka

Debian 往事: 与已故创始人 Ian Murdock 的昔日访谈

豪地说,这方面我们做的真不错。 Linux>Hurd 热心群众帮忙开发系统的意思并不是热情的黑客在 Murdock 宣布 Debian 的时候主动联系了他提出要帮忙。 我宣布 Debian 项目之后,Free Software Foundation(FSF)的 Richard Stallman 第一时间联系到了我。FSF 的热情回应给了我莫大的信心,不过也让我再一次认真地考虑了这个方法的合理,毕竟我觉得在那个年代每个人都有比改进电脑系统更重要的事情要做。 GNU/Linux 是因为 Debian 才开始真正走进人们视线中的。Stallman 也基本上是参与了 Debian 项目以后才对 Linux 有所了解。Debian 在塑造 FSF 对 GNU/Linux 的系统方面起到了至关重要的作...阅读全文

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