InfraPub 为您找到相关结果 385

Apollo 分布式配置中心详解

Apollo(阿波罗)是携程框架部门研发的分布式置中心,能够集中化管理应用不同环境、不同集群的置,置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务置管理场景。 本文简单从功能特点做介绍,更详细的说明请参考Apollo置中心介绍。本地快速部署可以参考这里。线上的演示环境从这里可以访问到: 106.54.227.205 (账号/密码: apollo/admin) Apollo 置中心产生背景 大多情况下程序随着功能的复杂,程序的置也会增多:包括各种功能开关、参数置、服务地址信息置等,同时开发人员对程序置的期望值也越来越高:置修改后实时生效,灰度发布,分环境、分集群的管理置、权限控制、审核机制等。 在这样的大环境下,传统的通过置文件、数据库...阅读全文

博文 2020-04-12 12:16:26 debian.cn

Apollo 配置中心简单介绍

本章将介绍如何在Apollo置中心中删除已经发布的项目。 专栏目录: 携程 Apollo 置中心 | 学习笔记 序章 欢迎关注个人公众号: Coder编程 欢迎关注个人网站:https://coder-programming.cn/ 一、前言 之前一直学习SpringCloud, 对于置中心,一直也是采用的Spring Cloud Config,但是用久了,发现很多地方满足不了要求,同时也感觉很low(个人看法勿喷)。在学习Spring cloud config 的时候也有听到过携程的apollo,但一直没时间去弄。直到昨天看了一张图,如下:使我下定决心去看看携程的apollo置中心。 这张图也算是综合对比了spring cloud config,netflix archaius...阅读全文

博文 2021-04-09 17:53:51 CSDN

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

文章目录 1、PodPreset 介绍2、环境、软件准备3、K8s 启用 PodPreset 置4、PodPreset 注入信息示例4.1、匹指定 Pod 加载置4.2、匹某个 Namespace 下所有 Pod 加载置 1、PodPreset 介绍 PodPreset 是一种 K8s API 资源,用于在创建 Pod 时注入其他运行时需要的信息,这些信息包括 secrets、volume mounts、environment variables 等,我们可以使用标签选择器来指定某个或某些 Pod,来将 PodPreset 预设信息应用上去。使用 PodPreset 的好处就是我们可以将一些常用 Pod 预设信息置为模板,这样就不需要显式为每个 Pod 提供所有信息,简化...阅读全文

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

Debian中如何设置静态IP地址 网关 DNS

新安装的Debian系统,默认一般使用DHCP获取IP地址,除非在安装过程中,使用了指定的IP地址。本文将介绍如何在Debian系统中,置使用静态IP地址,置网关,以及设置DNS服务器。 这些置通过修改置文件,很容易实现。在 Redhat 系列的 Linux 环境中,我们一般修改网卡的网络置文件,对应的文件名为 /etc/sysconfig/network-scripts/ifcfg-eXX,其中eXX即为网络设备名。网络设备的列表可以他通过 ifconfig 命令获取。同样的,在 Debian 环境下,我们只需要修改网络的置文件便可以了。相比之下,置过程要比 Redhat 更为方便,只需要修改 /etc/network/interfaces 文件。 Debian 系统设置静...阅读全文

Debian 系统如何配置 iptables

iptables在Linux发行版本如Centos、Debian、Ubuntu、Redhat等的置内容基本一致,但是置方式有所不同。由于工作日常用的是Centos 6.x,它的置较简单。下面对Debian上置iptables做一个说明。 置步骤 使用用户名/密码登录系统 root@localhost:~# 安装iptables root@localhost:~# apt-get install iptables 安装成功后查看iptables端口开放情况 root@localhost:~# iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy...阅读全文

博文 2018-08-08 16:35:38 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

Debian 环境中安装git服务器 Gogs(下)

在本教程中,我们将使用 Gogs 在 Debian 9 上按步骤指导您安装和置您的私有 Git 服务器。这篇教程中涵盖了如何在 Debian Stretch 上安装 Go 语言、PostgreSQL 和安装并且置 Nginx 网页服务器作为 Go 应用的反向代理的细节内容。 步骤 4 - 使用 Gogs 安装 Git 服务 使用 git 用户登录并且使用 go 命令从 GitHub 下载 Gogs, su - git go get -u github.com/gogits/gogs 此命令将在 $GOPATH/src 目录下载 Gogs 的所有源代码。 切换至 $GOPATH/src/github.com/gogits/gogs 目录,并且使用下列命令搭建 Gogs。 cd...阅读全文

博文 2018-03-10 09:52:28 debian.cn

Dubbo 2.7.0发布 分布式RPC服务框架

Dubbo 2.7.0 发布。Dubbo 是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring 框架无缝集成。 据开源中国对 Dubbo 的项目负责人北纬的采访 Dubbo 重启维护一年多,现在还活着吗?,新版本的更新亮点有: Dubbo 2.7.0 添加了社区呼声很高的 异步化支持 、以及 注册中心与置中心分离 这两个特性。与 2.6 及以前的版本相比, 异步化支持 不再局限于基于 Future 接口的异步,也不再仅仅局限于只能在客户端异步。具体来说,Dubbo 2.7.0 版本全面拥抱 JDK8,在客户端开始支持基于 CompletableFuture 的异步编程范式,在服务端支持基于 AsyncContext...阅读全文

博文 2019-01-18 09:43:16 debian.cn

Rancher 2.3 发布:支持Windows容器 集成Istio

Istio的集成,极大简化了Istio的安装和置,Rancher中现已内置支持: 用于流量和遥测可视化的Kiali仪表板用于追踪的Jaeger用于监控和可观察性的Prometheus和Grafana Rancher 2.3还正式支持了Kubernetes v1.15.x和Docker 19.03。 增强Kubernetes安全性 Rancher 2.3引入了“集群模板”功能,它可以让企业在整个基础架构中实施一致的集群置,进而帮助企业降低安全风险。具体而言,通过使用集群模板: 运维人员可以在其所有集群部署中创建、保存并放心使用经过良好测试的Kubernetes置。管理员可以启用置强制实施,从而抑制置漂移或不当的置错误。如果创建更多的集群,这些置不当可能会带来安全风险。...阅读全文

博文 2019-10-10 11:44:14 debian.cn

AWS省钱攻略:预留实例怎么玩

AWS的预留实例(Reserved Instance)是一种计费方式,并不是一种计算实例,简单讲是一个“包年包月”的优惠方式。购买RI后,可以获得30%以上,至最高 75% 的优惠。你可能会说:“这些我都知道,并且RI我已经在用了。” 你真的熟悉 RI 吗? 我们知道预留实例(RI)分为两种: 标准RI与可转换RI(CRI),可转换RI的价格往往较高而不容易被接受,而我们又经常遇到需要调整RI,那么我们购买的标准RI能不能进行适当的转换呢?答案是没问题的,AWS为满足客户的需求,提供了很灵活性的设定。 今天主要介绍一下RI的三个灵活属性:大小灵活性匹,合并拆分,可转换(CRI),我们暂且这么称呼,三者适用于不同的场景,是互相补充的关系。 大小灵活性匹 场景:区域范围RI 、相同实例类型...阅读全文

博文 2019-08-18 18:26:19 debian.cn

Vagrant 2.0 正式发布,支持更多的虚拟化平台

Vagrant 是一个基于 Ruby 的工具,用于创建和部署虚拟化开发环境。Vagrant 2.0 已正式发布。 Vagrant 2.0 支持在 VirtualBox, VMware, Hyper-V, Docker, AWS, GCP 等平台上置开发环境,它可以虚拟化 Windows, macOS 和其他十多种新的操作系统。Vagrant 2.0 可与 Vagrant Cloud 合使用,用于查找和使用“盒子”。 完整更改列表请 查看更新日志 ,Vagrant 的 发布主页 和 下载地址 。 Vagrant 是一款用于构建及置虚拟开发环境的软件,基于 Ruby,主要以命令行的方式运行。 主要使用 Oracle 的开源 VirtualBox 虚拟化系统,与 Chef,Salt...阅读全文

博文 2017-10-09 10:12:31 debian.cn

如何在 Debian 下配置邮件服务器

本教程将讨论如何在Debian(或Ubuntu)置一个可工作的邮件服务器。我们知道在邮件服务器使用的主要协议有SMTP、POP和IMAP。在本教程中,SMTP协议使用postfix,POP/IMAP协议使用dovecot。两者都是开源的、稳定的和高度可定制的。本教程中不会介绍邮件服务器的安全性,这超出了本文的范围。 1.先决条件 每个域必须有一个DNS服务器。建议不要使用Live域用于测试目的。在本教程中,将在实验室环境中使用测试域example.tst。在这个假设域名的DNS服务器应该在至少以下记录。 example.tst的forward zone置: IN MX 10 mail.example.tst. mail.example.tst. IN A 192.168.10.1...阅读全文

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

如何在docker pull时,配置使用代理服务?

实测有效的一个方案,通过给docker 置 http_proxy 的方式,置代理,置方式如下: 建立空目录: `mkdir /etc/systemd/system/docker.service.d` 创建文件,内容如下:`vi /etc/systemd/system/docker.service.d/http-proxy.conf` ``` Environment="HTTP_PROXY=http://proxy.example.com:80/" Environment="HTTPS_PROXY=http://proxy.example.com:80/" Environment="NO_PROXY=localhost,127.0.0.0/8,docker...阅读全文

配置 Debian Stretch 的安装源

采用最小化方式安装的 Debian,在没有接入网络的情况下,默认是没有置 apt 安装源,也没有安装远程管理用的 SSH 服务的,这个时候就无法使用 apt-get install 在线安装软件的,为使用带来不便。以下为大家提供几个 Debian Stretch 的 apt-get 源置,详细有不好爱好者在使用 Stretch 时会遇到这个问题。 置apt-get源 在开始置新的 apt 源之前,可以先备份原有的安装文件,命令如下: cp /etc/apt/sources.list /etc/apt/sources.list.backup 更新 apt 源置文件 使用以下命令,重写整个置文件即可: cat > /etc/apt/sources.list <阅读全文

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

Let’s Encrypt :2018年1月发布通配证书

Let’s Encrypt 将于 2018 年 1 月开始发放通证书。通证书是一个经常需要的功能,并且我们知道在一些情况下它可以使 HTTPS 部署更简单。我们希望提供通证书有助于加速网络向 100% HTTPS 进展。 Let’s Encrypt 目前通过我们的全自动 DV 证书颁发和管理 API 保护了 4700 万个域名。自从 Let's Encrypt 的服务于 2015 年 12 月发布以来,它已经将加密网页的数量从 40% 大大地提高到了 58%。如果你对通证书的可用性以及我们达成 100% 的加密网页的使命感兴趣,我们请求你为我们的夏季筹款活动(LCTT 译注:之前的夏季活动,原文发布于今年夏季)做出贡献。 通符证书可以保护基本域的任何数量的子域名(例如...阅读全文

博文 2017-11-28 13:23:29 debian.cn

Kubernetes 部署 Nacos 1.4 集群 · 小豆丁

!版权声明:本博客内容均均为原创,每篇博文作为知识积累,写博不易,转载请注明出处。 目录[-] 参考地址: Nacos 官方文档 系统环境: Nacos 版本:1.4.1 Mysql 版本:8.0.19 Kubernetes 版本:1.20.1 项目示例地址: Kubernetes 中部署 Nacos 的部署文件 Kubernetes 中部署 Mysql 数据库部署文件 如果该文章对你有帮助,别忘了 Github 帮忙点颗星哦~ 一、什么是 Nacos Nacos 是阿里开源的服务注册中心与置中心组件,能够帮助开发人员快速实现动态服务发现、服务置、服务元数据及流量管理。同时能够与 SpringCloud、Kubernetes、Dubbo 等开源生态无缝集成。 Nacos 支持如下核心特...阅读全文

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

Debian 如何修改默认网卡为 eth0

Debian 系统安装以后,可能会遇到网卡设备名不是常见的 eth0 的情况。我们有没有办法统一网卡设备名称呢? 在服务器环境中,统一网卡设备名是很有必要的。标准化的置会节省我们大量的时间,这些时间可能会花在排障、监控的置、状态收集脚本的调整等。 这里我们介绍如何把 Debian 系统中的网卡从非 eth0,调整为 eth0,这个设备名是各 Linux 系统中比较通用的网卡设备名。下面我们以设备名 ens3 为例,介绍在Debian 系统中,如何修改网卡设备名为 eth0 的具体步骤。 首选,我们需要编辑 grub 的置文件,修改启动参数。使用编辑器打开 /etc/default/grub, 查找: GRUB_CMDLINE_LINUX="" 找到这行,并修改为...阅读全文

博文 2019-07-12 13:59:08 debian.cn

AWS EKS 添加IAM用户角色 - SRE运维博客

> 作者:[SRE运维博客](https://www.cnsre.cn/) > > 博客地址: [https://www.cnsre.cn/](https://www.cnsre.cn/) > > 文章地址:[https://www.cnsre.cn/posts/211203931498/](https://www.cnsre.cn/posts/211203931498/) > > 相关话题:[https://www.cnsre.cn/tags/aws/](https://www.cnsre.cn/tags/aws/) 因为创建 Amazon EKS 集群时,IAM 用户或角色会自动在集群的 RBAC 置中被授予 system:masters 权限。例如,IAM 用户或角色可以是创建集群...阅读全文

博文 2022-12-19 21:15:27 博客园

Debian下安装配置 Hadoop 3.1.3 集群

在这篇文章里,我将在 VMWare 里面虚拟四台 Debian 虚拟机,一个做master,三个slave。这四台主机的 hostname 分别是 master、slave1、slave2、slave3。下面的 JDK 和 Hadoop 安装置操作都是使用普通用户 hadoop 来执行,并非 root。 集群环境准备 1. 静态网络的置 编辑/etc/network/interfaces文件,注释自动获取IP,并添加下面内容 # static IP address auto ens33 iface ens33 inet static address 192.168.20.101 netmask 255.255.255.0 gateway 192.168.20.2 dns...阅读全文

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

Debian 环境下安装配置 Gitlab

GitLab是一个利用Ruby on Rails开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。 它拥有与GitHub类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。 前言 公司目前的开发架构中,使用了gitlab来统一管理上线发布代码的操作。鉴于是之前的前辈搭建的,所以打算自己手动安装一次,来熟悉相关的置。 安装 中文版gitlab网站:https://www.gitlab.com.cn/installation/ 英文版gitlab网站:https://about.gitlab.com/downloads/ 选择对应的操作系统 我这里选择 Debian 9 版本,因为...阅读全文

博文 2017-12-22 19:42:42 debian.cn

Harbor 1.9 发布:新增多项企业级功能

Harbor 1.9 发布了,此版本新功能众多,包括 tag 保留和额、可与 CI/CD 工具集成的 Webhook 通知、数据复制、Syslog 集成以及 CVE 例外策略等安全功能。 Webhook 如果您是项目管理员,可以通过 Webhook 的通知机制,将 Harbor 的项目与您技术栈的其余部分连接在一起。简言之,如果您置了 Webhook,Harbor 会就把该项目中发生的某些事件(包括推送、拉取、删除镜像和 Helm Charts、镜像扫描及 CVEanqu 漏洞发现)向 Webhook 端点发出通知。通过这些事件,您可以将 Harbor 与其他系统集成在一起,以简化持续集成和开发过程。理想情况下,获得 Webhook 的端点应具有一个操作侦听器,用于解释 JSON 格式...阅读全文

博文 2019-10-09 12:12:04 debian.cn

Apache Kafka发布 3.0 正式版

昨天,Apache Kafka 3.0 版本正式发布,这是一个涉及多方面的大版本。在这个版本中,Apache Kafka 3.0 引入了各种新功能、突破性的 API 更改以及对 KRaft 的改进:Apache Kafka 的内置共识机制将取代 Apache ZooKeeper™。虽然 KRaft 尚未被推荐用于生产(已知差距列表),但我们对 KRaft 元数据和 API 进行了许多改进。Exactly-once 和分区重新分支持值得强调,我们鼓励开发者查看 KRaft 的新功能并在开发环境中试用它。并且,从 Apache Kafka 3.0 开始,生产者默认启用最强的交付保证 ( acks=all, enable.idempotence=true),这意味着用户现在默认获得排序和持久性...阅读全文

博文 2021-09-26 14:13:03 joseph

SpringCloud 之外的选择:国产JBoot v1.7.1 发布

JBoot 是一个基于 JFinal 和 Undertow 开发的微服务框架。提供了 AOP、RPC、分布式缓存、限流、降级、熔断、统一置中心、Opentracing 数据追踪、metrics 数据监控、分布式 session、代码生成器、shiro 和 jwt 安全控制、swagger api 自动生成等功能。 Jboot v1.7.1 主要更新如下: 新增:redis 添加自定义序列化置的功能 新增:Jboot.java 添加方法 service(Class clazz, JbootrpcServiceConfig config) 方便获取 rpc service 新增:JbootController 添加 getRawObject() 方便获取 api 传过来的 json 数据...阅读全文

博文 2018-10-24 13:19:05 debian.cn

开源堡垒机 Jumpserver 1.4.7 发布

开源堡垒机 Jumpserver v1.4.7 已发布 , 修改了置文件的格式,使用yaml方式置。本版本主要更新的内容如下: 支持 radius 认证统一生成 coco 的 host key,这样部署多个 coco 也不需要再复制 Host key权限列表增加详细过滤更改置文件类型为 yml 格式修改心跳方式优化任务执行的日志记录方式修复节点右击测试连接资产为节点下所有资产,而不是直接资产sftp 支持修改 home 目录, 支持不显示隐藏文件修复 luna 隐藏侧边栏的 bugluna 支持直接登录到某个资产 更新说明 Jumpserver 是全球首款完全开源的堡垒机,使用 GNU GPL v2.0 开源协议,是符合 4A 的专业运维审计系统。Jumpserver 使用...阅读全文

博文 2019-02-02 10:36:34 debian.cn

多达 95% 的 HTTPS 链接能被黑客劫持

HSTS 是一个被当前大多数 Web 浏览器所支持的 Web 安全策略,它可以帮助 Web 管理员保护他们的服务器和用户避免遭到 HTTPS 降级、中间人攻击和 Cookie 劫持等 HTTPS 攻击的危害。由于服务器管理员没能正确设置 HTTP Strict Transport Security (HSTS),现今大量的 HTTPS 流量都能被轻松劫持。 95% 的 HTTPS 连接处于风险中 据最近的 Netcraft study 报告数据显示,当前多达 95% 的服务器所运行的 HTTPS 没有正确地设置 HSTS 或其它置,以至于将 HTTPS 连接暴露于上述攻击风险之中。 更值得注意的是,Netcraft 在三年前进行的同样扫描,不正确置的 HSTS 比例仍同现在一样。这表明...阅读全文

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

Debian 8 使用 Apache 部署 Ruby on Rails

/sbin:/usr/bin:/sbin:/bin:/usr/games:/var/lib/gems/VERSION/bin" 6.在您的网站的公共文件夹中启动一个新的rails项目,以确保一切正常置。 替换为你的应用程序名称: sudo rails new /var/www/html/example.com/public_html/application 置Apache以使用Passenger 1.打开置文件,调整DocumentRoot /etc/apache2/sites-available/example.com.conf: DocumentRoot /var/www/html/example.com/application/public 2.重启Apache sudo...阅读全文

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

Kubernetes v1.21 新特性预览

Kubernetes v1.21 下个月就要发布了(v1.21.0 将于 4 月 8 日发布),本文梳理该版本带来的新特性,以便你为下个月的升级做好准备。PodSecurityPolicy 弃用PodSecurityPolicy(PSP)是 Kubernetes 1.8 开始就支持的 Beta 特性,大量应用于容器的安全策略控制。但由于其 API 不够灵活、认证模型不够完善且置更新繁琐等缺陷,PodSecurityPolicy 将在 v1.21 正式弃用[1],并将在 v1.25 中从代码库中删除。已经使用 PodSecurityPolicy 的用户建议迁移到 Gatekeeper[2]。不可变 ConfigMap/Secret 进入稳定版当集群包含大量 ConfigMap 和...阅读全文

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

Linux内存buffer和cache的区别

在Linux的内存分机制中,优先使用物理内存,当物理内存还有空闲时(还够用),不会释放其占用内存,就算占用内存的程序已经被关闭了,该程序所占用的内存用来做缓存使用,对于开启过的程序、或是读取刚存取过得数据会比较快。 一. 内存使用说明 Free 命令相对于top 提供了更简洁的查看系统内存使用情况: [root@debian ~]$ free total used free shared buffers cached Mem: 1035108 1008984 26124 0 124212 413000 -/+ buffers/cache: 471772 563336 Swap: 2096472 842320 1254152 这里显示的单位是KB。 在Linux的内存分机制中,优先使用物...阅读全文

Terraform 学习总结 — Terraform 简介

前言 在 DevOps 实践中,基础设施即代码如何落地是一个绕不开的话题。像 Chef,Puppet 等成熟的置管理工具,都能够满足一定程度的需求,但有没有更友好的工具能够满足我们绝大多数的需求?笔者认为 Terraform 是一个很有潜力的工具,目前各大云平台也都支持的不错,尤其是使用起来简单明了。本文会简单的介绍一下 Terraform 相关的概念,然后通过一个小 demo 带大家一起进入 Terraform 的世界。说明:本文的演示环境为 ubuntu 16.04。 Terraform 是什么? Terraform 是一种安全有效地构建、更改和版本控制基础设施的工具(基础架构自动化的编排工具)。它的目标是 "Write, Plan, and create...阅读全文

Debian 使用VSFtpd安装配置架设FTP服务器

Vsftpd的安装: aptitude update //更新数据源列表 aptitude install vsftpd //安装vsftpd Vsftpd的文件结构: /usr/sbin/vsftpd —- VSFTPD的主程序 /etc/init.d/vsftpd —- 启动脚本 /etc/vsftpd.conf —- 主置文件 /etc/pam.d/vsftpd —- PAM认证文件 /etc/ftpusers —-记录不允许访问FTP服务器的用户名单 /home/ftp —-Vsftpd的根目录 此外VSFTPD的日志文件为/var/log/vsftpd.log。 Vsftpd的管理控制。 /etc/init.d/vsftpd start //启动vsftpd /etc...阅读全文

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

Prometheus 常用 PromQL 语句样例

选给定标签的序列: my_metric_name{label1="value1", label2="value2"}更复杂的标签匹器: my_metric_name{label1!="value1", label2=~"regex1", label3!~"regex2"}匹器: =: 等于 !=: 不等于 =~: 正则匹 !~: 正则不匹 Counter 的增长速率过去5分钟每秒平均增长速率: rate(http_requests_total[5m])1分钟时间窗口中最后两个样本计算的每秒增长速率: irate(http_requests_total[1m]过去1小时增加的绝对数值: increase(http_requests_total[1h])多个序列聚合对所有序列进行求和...阅读全文

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

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

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

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

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

最近游戏已上线运营,进行服务器内存优化,发现一个非常奇妙的问题,我们的认证服务器(AuthServer)负责跟第三方渠道SDK打交道(登陆和充值),由于采用了curl阻塞的方式,所以这里开了128个线程,奇怪的是每次刚启动的时候占用的虚拟内存在2.3G,然后每次处理消息就增加64M,增加到4.4G就不再增加了,由于我们采用预分的方式,在线程内部根本没有大块分内存,那么这些内存到底是从哪来的呢?让人百思不得其解。 探索 一开始首先排除掉内存泄露,不可能每次都泄露64M内存这么巧合,为了证明我的观点,首先,我使用了valgrind。 valgrind --leak-check=full --track-fds=yes --log-file=./AuthServer.vlog & 然后启动测试...阅读全文

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

iTerm2 如何保持连接?

使用 Linux 进行命令行操作时,一不留神 SSH 客户端就断开了连接,如何置 SSH 客户端保持连接? 第一种:修改置文件 /etc/ssh/ssh_config 在文件末尾添加: ``` TCPKeepAlive yes ServerAliveInterval 300 ``` 第二种 在 iTerm2 的 Perferences > Profiles > session 中设置找到选项, 勾选 When idel, send ASCII code就可以了 ``` ☑️ When idle, send ASCII code 0 every 60 seconds ``` ASCII和时间间隔可自定义。通过这个置,可以达到保持 SSH 连接的目...阅读全文

Monit:开源服务器监控工具

.tar.gz 注意:Monit是一个开源工具,但M/Monit是收费的。 安装 yum install monit 当然也可以下载源码安装。 当前使用版本: # monit -V This is Monit version 5.17.1 Built with ssl, with pam and with large files Copyright (C) 2001-2016 Tildeslash Ltd. All Rights Reserved. 常用命令 monit -t # 置文件检测 monit # 启动monit daemon monit -c /var/monit/monitrc # 启动monit daemon时指定置文件 monit reload # 当更新了置文件需要重载...阅读全文

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

Consul 1.6 GA 发布

Consul 1.6.0 已于近日 发布 GA 版本 ,Consul 是 HashiCorp 公司推出的开源工具,也是主流的用于实现分布式系统服务发现与置的方案。HashiCorp 对 Consul 的介绍是一个多云服务网络平台,用于在跨任何运行时平台和公共云或私有云的场景连接和保护服务。 本次更新主要集中在 Consul Connect(为其增加了一些主要新特性)和 Consul 的服务网格解决方案方面,此外还有一些改进和错误修复。 Consul 1.6 新特性 支持对 L7 层的流量管理 。1.6 使用了新的置条目类型,可为服务到服务(service-to-service)的请求启用高级流量管理模式。其他置条目类型如服务解析器、服务隔离器以及服务路由器通过高级服务故障转移和部署模...阅读全文

如何使用 ipset 将单个国家的所有IP加入黑名单

ipset 是 iptables 的扩展,它允许你创建匹整个地址集合的规则,而不像普通的 iptables 链只能单IP或单网段匹。 ipset 规则中的IP地址集合存储在带索引的数据结构中,这种结构即时集合比较大也可以进行高效的查找,从而减少系统资源占用或网络拥塞。IPset 也具备一些新防火墙设计方法,并简化了置。ipset 的官网:http://ipset.netfilter.org 下面我们以一个实际场景为样例,介绍如何在Debian系统中,使用 ipset 将单个国家的左右 IP段 加入黑名单。 #### 准备工作:安装 ipset、或者网段列表 sudo apt-get -y install ipset wget -P . http://www.ipdeny.com...阅读全文

博文 2021-02-06 16:43:47 joseph

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

台的frp服务端frps和客户端frpc可执行文件。 这里下载的0.29版本。 服务端: 1 2 3 4 5 6 wget https://github.com/fatedier/frp/releases/download/v0.29.0/frp_0.29.0_linux_amd64.tar.gz tar -zxvf frp_0.29.0_linux_amd64.tar.gz cd frp_0.29.0_linux_amd64 mkdir /usr/local/frp cp frps /usr/local/frp cp frps.ini /usr/local/frp 2. 置启动服务端frps 编写frps的Systemd置文件/etc/systemd/system...阅读全文

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

Debian及衍生版自动安装系统更新

在本篇文章中,我们将介绍如何在 Debian 和其衍生版上,置系统自动安装更新,并通过邮件通知系统管理员,每次升级的变更内容。本文中提到的多数命令,由于是系统层面的置,需要用 root 来执行。 在置系统更新前,我们需要安装这两个安装包,安装命令如下: # apt update && aptitude install unattended-upgrades apt-listchanges -y unattended-upgrades 是一个可以让系统保持自动更新的包。这些更新包含了安全更新和 Bugfix 等。启用 unattended-upgrades 后,我们还需要知道每次改动的内容,apt-listchanges 解决了这个问题,它将会邮件通知我们升级过程中发生的改变。 依赖包...阅读全文

博文 2019-06-04 12:23:56 debian.cn

服务器文件上传下载利器 trzsz + iTerm2 配置指南

trzsz ( trz / tsz ) 是一个兼容 tmux 的文件传输工具,和 lrzsz ( rz / sz ) 类似,并且有进度条和支持目录传输。trzsz-iterm2 是 trzsz 在 iTerm2 上使用的客户端。GitHub: https://github.com/trzsz/trzsz安装指南用 Python3 安装sudo python3 -m pip install --upgrade trzsz-iterm2 用 Homebrew 安装brew update brew install trzsz 置指南找出 trzsz-iterm2 安装的绝对路径 ( 可以是软链,但不支持相对路径 )。which trzsz-iterm2 下文中的 /usr/local/bin...阅读全文

Debian Stretch 安装配置 Jenkins

本文将简单介绍 Debian 环境下,Jenkins 服务的安装与置。通常Jenkins有两种方式安装,一种是通过官方提供的 Deb 包安装,另一种是用 tomcat 作为容器来运行 jenkins。这里我们使用Deb包方式,部署简单、后期的更新维护也很方便;这也是我们选择 Debian 部署 Jenkins 的原因。 安装 Jenkins 第一步:添加 jenkins 安装源 # wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add - # vim /etc/apt/sources.list deb http://pkg.jenkins.io/debian-stable binary 第...阅读全文

博文 2019-11-29 14:39:43 debian.cn

从 Debian 安装 Proxmox VE,并配置网络和双硬盘

本文记录如何从 Debian 安装 Proxmox VE,以及置 IPv4 和 IPv6 网卡,为硬盘分区。 预置系统装好后,从 NOCIX 后台面板取得 登陆用户名 和 密码。 用户名是 customer密码是一串随机生成的字符串 使用 su 切换到 root 还需要输入密码,这样频繁操作比较麻烦。 免密登陆 root安装 sudo 实现免密 su 12apt updateapt install -y sudo 修改 /etc/sudoers 文件注意:只能用 visudo 交互式来修改 sudoers 文件 这是为了防止被脚本修改,就别想用 echo 来改了 visudo 会验证置的格式,如果不验证,而你写的置有问题,那么你无法切换到 root,而只有 root 用户才能修改...阅读全文

博文 2021-03-01 20:20:31 驱蚊器喵的插座

Debian下编译安装Golang

拉下来,非常耗时;在GitHub连接不稳定时,也可能会失败。这属于网络问题,读者也需自行解决。 按时间顺序,这里记录了一些相关的坑。如果想直接按照正确的步骤完成编译,可以跳到环境置小节。 首次编译错误 Go不支持在根目录下编译,必须到src目录去。 $ cd src $ ./all.bash ##### Building Go bootstrap tool. cmd/dist ERROR: Cannot find ~/go1.4/bin/go. Set $GOROOT_BOOTSTRAP to a working Go tree >= Go 1.4. 我本来就是因为只有Go1.3,才要从源码安装新版本的。现在找我要Go1.4,这可如何是好? 自举 Go从1.5版本开始实现“自举...阅读全文

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

如何在 Debian Stretch 中安装使用 PHP5

在 Debian Stretch 中,系统自带的 PHP 版本已经默认为 PHP 7.0。我们如何在 Debian 9 中,把 PHP 的版本降为 Php 5 呢?本文提供了一种多个 PHP 版本共存的方案,我们以安装置 PHP-5.6 为例,并且支持在多个 PHP 的版本中切换。 首选,我们需要置一个新的安装源,以便安装 php 5.6 的包,这里我们选择 deb.sury.org , 打开终端,运行以下命令, apt-get install apt-transport-https lsb-release ca-certificates 然后下载安装对应的GPG key 文件,使用命令, wget -O /etc/apt/trusted.gpg.d/php.gpg https...阅读全文

博文 2017-12-11 23:05:21 debian.cn

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

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

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

Debian 9 Stretch 安装配置 Caddy Server

Caddy 是一个用 Golang 开发的高效 Web Server,相比 Nginx,它的置和使用要简单很多,能自动开启 HTTPS、并且支持 HTTP/2 和 QUIC。 下载安装 Caddy 首先去 Download Caddy 选择你需要的插件,然后复制下方的 One-step installer script (bash),例如我的是 $ curl https://getcaddy.com | bash -s http.cache,http.cors,http.expires,http.filemanager,http.git,http.ipfilter,http.minify,http.nobots,http.ratelimit,http.realip...阅读全文

博文 2017-12-24 10:18:33 debian.cn

高性能日志采集工具 logpipe 简单介绍

在集群化环境里,日志采集是重要基础设施。本文结合最新的 1.0.9 版,对 logpipe 做一个简单的介绍。开源主流解决方案是基于 flume-ng,但在实际使用中发现 flume-ng 存在诸多问题。 比如 flume-ng 的 spoolDir 采集器只能对文件名转档后的大小不能变化的最终日志文件进行采集,不能满足采集时效性要求,如果要采集正在被不断追加的日志文件,只能用 exec 采集器搭 tail -F 命令,但 tail -F 命令又不能通目标目录中将来新增的未知文件名。其它解决方案如 logstash 由于是 JAVA 开发,内存占用和性能都不能达到最优。 作为一个日志采集的本地代理,内存占用应该小而受控,性能应该高效,耗费 CPU 低对应用影响尽可能小,要能异步实时追踪...阅读全文

Debian软件包常用管理命令整理

在Debian及其衍生的系统中,我们需要经常使用的软件包管理命令,对系统进行管理,以便系统达到预期的状态。Debian系统中,常用的软件包命令有 apt、apt-get、dpkg、apt-cache等,这里我们着重列举常见的一些用法。 软件包查询(不需要sudo权限) $ apt-cache search pkg_keyword #列出匹关键字的软件包 $ apt search pkg_keyword #列出匹关键字的软件包,包括了版本信息 $ apt list pkgname #查找该软件包,会显示版本信息 $ apt-cache show pkgname #查询软件包详细信息 $ apt show pkgname #查询软件包详细信息 $ apt-cache depends...阅读全文

Kubernetes调度算法浅析

在真正的生产环境中,如何合理的分服务器资源、提高利用率、让整个集群运行的更加稳定使得 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信息存储在...阅读全文

博文 2020-12-20 11:01:10 debian.cn

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

SQL审核是保证数据库 DDL 和 DML 安全使用、SQL变更可追溯、降低线上数据事故概率的重要手段。去哪儿网开源的 Inception 工具有较大的使用基础,提供了相对完善的 API 接口,结合一些外层的操作界面,可以实现SQL审核、执行、备份和恢复功能,为DBA操作利器。本文详细介绍如何置 Inception 和 Yearning 的整合。 Inception Inception是一个自动化运维工具,在Mysql前做一个审核和操作的屏障。跟Inception的交互是程序级别的,即通过Python或其他程序编程实现对Inception的命令调用,并解析结果。 Inception的文档地址:http://mysql-inception.github.io/inception...阅读全文

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