InfraPub 为您找到相关结果 340

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

Bootstrap 4正式发布 带来新的示例和新的主题

Bootstrap 4.0.0 正式版现已发布,更新内容方面,相对于之前的测试版,正式版没有重大的改变,但做出了一些关键的改进,并解决了一些棘手的错误。 新的示 几乎每个示都经过稳定的 v4 版本的重大修改,其中删除了一些过时的示,添加了一些新的示,并且彻底改变了其他一些示。 当然,稳定版中依然有一些已知的问题尚未修复,预计在下一个小版本更新时会修复,如 Input groups, validation, 和 rounded corners。 主题方面,Bootstrap 的主题今年将得到重大更新,官方表示将会推出十个全新的主题。当前的目标是第一季度推出的主题都建立在 Bootstrap 4 上(都没有 v3 版本的)。 Bootstrap 4 的示和迁移说明。 详情请查看发布...阅读全文

博文 2018-02-16 13:01:27 debian.cn

在TKE上使用Kubecost进行成本管理

## 概述 Kubernetes 作为 IaaS 和 PaaS 的中间层,当前对于资源的计费依托于 IaaS 层的资源计费。一个 Kubernetes 的集群,按照其购买的节点实 CVM 计费。而用户则使用的是 Pod,在实际场景中,通常需要面临这些问题,一个 Pod 如何承担成本、如何评估集群的成本、如何进行成本预测和优化建议。针对上述问题,我们推荐用户使用 Kubecost 进行解决。 Kubecost 是一款成本分析工具,可以为集群成本提供洞察、分析、推荐和建议。作为您优化集群成本的财务分析师,Kubecost 可以为您提供全面的成本分析报告。本文将介绍 Kubecost 使用场景、优化建议、详细的功能说明以及如何安装使用。 ## 使用场景 ### 评估每种资源消耗的成本 成本支出...阅读全文

Cortex: 高可用和水平扩展Prometheus监控系统

Prometheus已成为cloud-native世界中的默认监控应用程序和系统。对于真是使用案,Prometheus应该是高可用的,这是有挑战的。一旦在高可用性模式下运行Prometheus,就会遇到很多问题,如数据重复,为重复数据实现single pane等。为了解决此问题,Cortex诞生了。Cortex是一个CNCF sandbox project,旨在为使用Prometheus 收集的指标提供长期存储和全局指标视图。首先让我们看一下Cortex的主要目标,然后看一下它为Prometheus解决的一些问题。水平可伸缩性– Cortex可以分成多个微服务,每个微服务都可以独立地水平伸缩。如,如果许多Prometheus实正在向Cortex发送数据,则可以扩展Ingester微...阅读全文

博文 2021-10-09 17:00:22 知乎

ChaosMesh 的基本功能有哪些

Chaos Mesh 的基本功能,包括故障注入、混沌实验场景、可视化操作、安全保障。故障注入​故障注入是混沌实验的核心。Chaos Mesh 充分考虑分布式系统可能出现的故障,提供全面、细粒度的故障类型,分为基础资源类型故障、平台类型故障和应用层故障三大类。基础资源类型故障:PodChaos:模拟 Pod 故障,如 Pod 节点重启、Pod 持续不可用,以及特定 Pod 中的某些容器故障。NetworkChaos:模拟网络故障,如网络延迟、网络丢包、包乱序、各类网络分区。DNSChaos:模拟 DNS 故障,如 DNS 域名解析失败、返回错误 IP 地址。HTTPChaos:模拟 HTTP 通信故障,如 HTTP 通信延迟。StressChaos:模拟 CPU 抢占或内存抢占场景...阅读全文

如何查看当前 Debian 系统的版本

有多种方式查看当前 Debian系统 的版本信息,这里我们会分别介绍。最简单的查看方法,是查看 /etc/issue 这个文件,样如下; root@debian:~# cat /etc/issue Debian GNU/Linux 9 \n \l 上面的命令有个小问题,它没有显示 Debian 的小版本号。要获取 Debian 的小版本号 Point Release 信息,我们可以使用以下这几个命令。 joseph@debian:~$ cat /etc/debian_version 9.9 /etc/debian_version 提供了完整的版本信息。另一个文件,则会提供更详细的版本信息,文件名是 /etc/os-release,样如下; joseph@debian:~$ cat...阅读全文

博文 2019-04-20 13:06:36 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

EC2关机后 AWS还会计费吗

AWS 在 EC2 关机后,不会再对计算资源计费;其他资源 比如EBS、Elastic IP 这些还会产生费用。如果你使用了预留实,还需要考虑预留实对计费方式的影响,会按照预留实的计费标准计费。 这种灵活的计费方式,是 AWS EC2 默认就支持的,相比之下,国内绝大多数云主机厂商是不支持的。在开机、关机时(即主机状态发送转变时),AWS 会收取最少一分钟的计费费用。 如果你关机过程用了20秒,AWS会按照一分钟来收费;如果你关机过程用时 1分30秒,则AWS会按照1分30秒收取费用。很良心吧,很灵活吧。 AWS的文档还是要多看的,计费方式和九年前的AWS变化很大。最新版的文档可以从这里下载: https://docs.aws.amazon.com/AWSEC2/latest...阅读全文

博文 2019-02-27 17:02:32 debian.cn

TurnKey Linux 16.0 稳定版发布

、Revision Control、StatusNet、Apache Tomcat、Torrent Server、Trac、TWiki、vtiger、WordPress、Zimra 及其他。 此版本的重要变更体现在底层,主要变化则是在软件层面,可能用户对大部分改变不能明显感知。如在某些情况下,团队已经将自己的软件 fork (如,Casper for live ISO 功能) 迁移至 Debian 的默认值 (‘live-boot’和’live-tools’)。又如定制软件则被移植到使用较新的语言版本。根据官方的说法,使用 Python 编写的大多数自定义软件(如 Confconsole,Inithooks,DI-live 和各种库)已从 Python2 移植到 Python3。 TurnKey...阅读全文

博文 2020-05-07 09:49:42 debian.cn

Gitlab CI 配置文件 .gitlab

types 已废除,将会在10.0中移除。用stages替代。 与stages同义 variables GitLab Runner V0.5.0. 开始引入 GItLab CI 允许在.gitlab-ci.yml文件中添加变量,并在job环境中起作用。因为这些配置是存储在git仓库中,所以最好是存储项目的非敏感配置,如: variables: DATABASE_URL:"postgres://postgres@postgres/my_database" 这些变量可以被后续的命令和脚本使用。服务容器也可以使用YAML中定义的变量,因此我们可以很好的调控服务容器。变量也可以定义成job level。 除了用户自定义的变量外,Runner也可以定义它自己的变量...阅读全文

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

Memcache UDP反射放大攻击技术分析

本篇技术blog,由360信息安全部0kee Team、360网络安全研究院、360-CERT共同发布。Memcache UDP 反射放大攻击(以下简称 Memcache DRDoS)在最近的一周里吸引了安全社区的较多注意。以下介绍我们对该类型攻击观察到的情况。 在PoC 2017 会议上的原始报告 Memcache DRDoS,由360信息安全部0kee Team在2017-06 附近首先发现,并于 2017-11 在 PoC 2017 会议上做了公开报告。会议报告在 这里,其中详细介绍了攻击的原理和潜在危害。 在这份文档中,作者指出这种攻击的特点: memcache 放大倍数超高,至少可以超过50k; memcache 服务器(案中的反射点)数量较多,2017-11时估算全球约有...阅读全文

博文 2018-03-02 09:20:52 debian.cn

十个增加 Linux Shell 脚本趣味的小工具

很多人误以为shell脚本只能在命令行下使用。其实shell也可以调用一些GUI组件,如菜单,警告框,进度条等等。你可以控制最终的输出,光标位置还有各种输出效果。下面我将介绍一些工具,帮助你创建强大的,互动的,用户友好的 Unix/Linux shell脚本。我在FreeBSD和Linux下测试过这些工具,不过其他UNIX系列的操作系统应该都支持的。 1. notify-send 命令 这个命令可以让你通过通知进程发送一个桌面通知给用户。这可以用来向用户发送提示,或者显示一些信息而不用打断用户工作。你需要安装如下软件包: $ sudo apt-get install libnotify-bin 下面这个子展示了如何从命令行向桌面发送一个简单的消息: notify-send...阅读全文

博文 2018-04-09 09:38:50 debian.cn

Debian、Ubuntu安装源配置文件说明

源列表主文件 /etc/apt/sources.list,兼取 /etc/apt/sources.list.d/*,结果以并集论。 源列表文件以行为单位,每行分多个字段,字段间以空白符分隔。井号(#)开头为注释行。样如下: 安装源配置样(Debian 8 jessie): deb http://ftp.tw.debian.org/debian/ jessie main contrib non-free deb http://ftp.tw.debian.org/debian/ jessie-updates main contrib non-free deb http://ftp.tw.debian.org/debian/ jessie-backports main contrib non...阅读全文

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

Monit:开源服务器监控工具

件,如/etc/monit.d/nginx。配置变写完毕,使用下列,命令检测是否正确: monit -t 3.启动monit: monit 4.启动所有服务或者单个服务: monit start all 5.若修改了配置文件,重载配置: monit reload 6.使用下面命令查看监控状态: monit status 控制台输出: $ monit status The Monit daemon 5.17.1 uptime: 4d 15h 45m Process 'nginx' status Running monitoring status Monitored pid 20563 parent pid 1 uid 0 effective uid 0 gid 0 uptime 3d 22h...阅读全文

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

Python Web 框架 Flask 1.0 正式发布

Flask 是一个微型的 Python 开发的 Web 框架,最初构建于 2010 年,至今已发展 8 年。Flask 1.0 近日已正式发布。 Flask 示代码: from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "Hello World!" if __name__ == "__main__": app.run() 1.0 版更新亮点: 不再支持 Python 2.6 和 3.3 。 CLI 更加灵活。 如果安装了 python-dotenv,flask CLI 将从 .flaskenv 和 .env 文件加载环境变量,而不必在每个新终端中导出它们。 开发服务器默认情况下...阅读全文

博文 2018-04-27 23:21:17 debian.cn

Gitlab CI 配置文件 .gitlab

。 默认情况下,job artifacts 只正对成功的jobs收集。 artifacts用于指定成功后应附加到job的文件和目录的列表。只能使用项目工作间内的文件或目录路径。如果想要在不通的job之间传递artifacts,请查阅依赖关系。以下是一些子: 发送binaries和.config中的所有文件: artifacts: paths: - binaries/ - .config 发送所有没有被Git跟踪的文件: artifacts: untracked: true 发送没有被Git跟踪和binaries中的所有文件: artifacts: untracked: true paths: - binaries/ 定义一个空的dependencies可以禁用artifact传递: job...阅读全文

博文 2018-12-12 21:09:02 ci.yaml 详解(下)

为何 Kubernetes 如此受欢迎?

Google 开发的这个容器管理系统很快成为开源历史上最成功的案之一。Kubernetes 是一个在过去几年中快速流行起来的开源容器管理平台。它被众多大企业用于关键任务,已成为开源方面最成功的案之一。这是怎么发生的?该如何解释 Kubernetes 的广泛流行呢? Kubernetes 的背景:起源于 Google 的 Borg 系统 随着计算世界变得更加分布式、更加基于网络、以及更多的云计算,我们看到了单个大型的应用慢慢地转化为多个敏捷微服务。这些微服务能让用户单独缩放应用程序的关键功能,以处理数百万客户。除此之外,我们还看到像 Docker 这样的容器等技术出现在企业中,为用户快速构建这些微服务创造了一致的、可移植的、便捷的方式。 随着 Docker 继续蓬勃发展,管理这些微服务器...阅读全文

博文 2017-11-07 23:58:26 debian.cn

Golang 操作 Kafka 样例

)、consumer(消息消费者)都可以是分布式的。 在消息的生产时可以使用一个标识topic来区分,且可以进行分区;每一个分区都是一个顺序的、不可变的消息队列, 并且可以持续的添加。 同时为发布和订阅提供高吞吐量。据了解,Kafka每秒可以生产约25万消息(50 MB),每秒处理55万消息(110 MB)。 消息被处理的状态是在consumer端维护,而不是由server端维护。当失败时能自动平衡 1.1.3. 常用的场景 监控:主机通过Kafka发送与系统和应用程序健康相关的指标,然后这些信息会被收集和处理从而创建监控仪表盘并发送警告。 消息队列: 应用程度使用Kafka作为传统的消息系统实现标准的队列和消息的发布—订阅,如搜索和内容提要(Content Feed)。比起大多数的消息系统来说,Kafka...阅读全文

博文 2023-01-10 13:46:09 掘金

3300 万 Authy 用户手机号泄漏

站里每次讨论 2FA 的相关话题,总会有很多朋友说他自己在用 Authy 。它通过手机号注册,而且可以多终端同步。因为看到站里有多微软验证器丢失验证信息的案,我曾经也考虑使用 Authy 作为第二个篮子,但因为拖延症一直没有行动。没想到 Authy 出个这么个事故。 原因是有一个没有鉴权的 API 接口,攻击者通过这个接口批量验证手机号是否用于注册 Authy 。攻击者最终收集了 33M 个注册了 Authy 的手机号。 ![3300 万 Authy 用户手机号泄漏](https://www.bleepstatic.com/images/news/security/attacks/a/authy/unsecured-api/shinyhunters-twilio.jpg...阅读全文

WebAssembly:无需容器的 Docker (下)

本文翻译自 Wasm Labs @ VMware OCTO 的 blog: WebAssembly: Docker without container。这是 Wasm Labs 在 2022 年 12 月 15 日在冬季 Docker Community All Hands 7 的关于 Docker+WebAssembly 的演讲的文字版。作者:Asen Alexandrov,Wasm Labs 工程师。文中的我们均指作者或 Wasm Labs。本篇文章将更具实践性,将以 PHP 为带领大家实践 Docker + Wasm。上篇文章我们了解了服务端 Wasm 为什么有着重要的作用、什么是 WasmEdge 以及如何让解释型语言编写的程序在 Wasm 里运行,这篇文章,我们将通过动手示了...阅读全文

博文 2023-01-03 06:39:46 spider

Docker 快速入门之 Dockerfile

在容器环境中,我们可以通过容器创建一个我们自定义过的镜像,那么我们是否可以直接通过基础的镜像直接自定义镜像呢?答案当然是可以的,在 Docker 中我们可以从名为 Dockerfile 的文件中读取指令并且自动构建镜像。在本文中,将介绍 Dockerfile 的基本语法以及基本知识。 1 Dockerfile 是什么? Dockerfile 其实是一份文本文档,里面包含了用户可以用来操作镜像的一些指令。通过顺序执行这些指令,最后得到一个自定义的镜像,这有点类似于我们的 shell script。 2 Dockerfile 示 接下来先看一个 Dockerfile 示: FROM centos LABEL maintainer="Locez " ENV...阅读全文

博文 2017-12-16 13:50:31 debian.cn

Python的闭包和装饰器

定一个参数,传入的就是@dobi下面修饰的函数,也就是 qinfeng() 3.dobi() 函数执行,调用 qinfeng(),qinfeng() 打印“dobi” 什么是闭包? 首先还得从基本概念说起,什么是闭包呢?来看下维基上的解释: 在计算机科学中,闭包(Closure)是词法闭包(Lexical Closure)的简称,是引用了自由变量的函数。这个被引用的自由变量将和这个函数一同存在,即使已经离开了创造它的环境也不外。所以,有另一种说法认为闭包是由函数和与其相关的引用环境组合而成的实体。闭包在运行时可以有多个实,不同的引用环境和相同的函数组合可以产生不同的实。 .... 上面提到了两个关键的地方: 自由变量 和 函数, 这两个关键稍后再说。还是得在赘述下“闭包”的意思,望文知...阅读全文

博文 2014-07-23 17:06:38 debian.cn

最全 MongoDB 基础教程

会自动覆盖最早的文档。当该值为 true 时,必须指定 size 参数。 autoIndexId 布尔 (可选)如为 true,自动在 _id 字段创建索引。默认为 false。 size 数值 (可选)为固定集合指定一个最大值,以千字节计(KB)。如果 capped 为 true,也需要指定该字段。 max 数值 (可选)指定固定集合中包含文档的最大数量。 在插入文档时,MongoDB 首先检查固定集合的 size 字段,然后检查 max 字段 实 # 在test数据库中创建ruochen 集合 use test db.createCollection('ruochen') # 查看已有集合 show collections db.createCollection('test...阅读全文

博文 2021-02-22 07:45:45 OSChina

如何为 k8s 节点增加污点,或者移除污点?

设置taint ``` kubectl taint node [node] key=value[effect] 其中[effect] 可取值: [ NoSchedule | PreferNoSchedule | NoExecute ] NoSchedule: 一定不能被调度 PreferNoSchedule: 尽量不要调度 NoExecute: 不仅不会调度, 还会驱逐Node上已有的Pod ``` 示: ``` kubectl taint node node1 key1=value1:NoSchedule kubectl taint node node1 key1=value1:NoExecute...阅读全文

Chrome 64发布:已打CPU补丁提升安全等级

今天,Google开始面向Windows、Mac和Linux平台推送Chrome 64稳定版更新,预计将会在未来几天/几周内完成。本次版本更新最值得关注的就是修复了Meltdown和Spectre两处CPU漏洞,阻止黑客利用这两个漏洞入侵用户设备。 Chrome 64改进了弹出阻止器,Google声称将阻止有恶意倾向的网站打开新的标签页或者窗口。如果你曾经被透明覆盖的网站、故意让你点击播放的按钮等方式所欺诈过,那么这项功能会让你感到满意。 正如此前所报道的,自Chrome 64开始自动视频播放默认情况下会处于关闭状态,不过自然也有一些外的情况。如已经静音或者没有声音的视频可以自动播放,或者用户表现出对这个视频内容的足够兴趣。 在安全方面,Google升级了Chrome的V8...阅读全文

博文 2018-01-25 13:30:24 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

WebRTC 成为 W3C 和 IETF 正式标准 - OSCHINA

新春现金红包与免费Linux基金会培训&认证,等你来领!>>> 2021年1月26日,W3C(万维网联盟)和 IETF (互联网工程任务组)同时宣布 WebRTC(Web Real-Time Communications,Web 实时通信)现发布为正式标准,将音视频通信带到 Web 上任何地方。 WebRTC 由用于 Web 实时通信的 JavaScript API 和一组通信协议构成,支持网络上的任何已连接设备成为 Web 上潜在的通信端点。WebRTC 已成为线上通信及协作服务的基石。 目前全球都面临着 COVID-19 疫情,WebRTC 让数十亿人无论其设备或地域如何,在 COVID-19 疫情期间也能保持联络。WebRTC 的使用已经超越了最初的核心设计,即在浏览器和其他生态(...阅读全文

博文 2021-02-03 22:22:47 开源技术交流社区

Redis 官网宕机:错误提示无法连接 Redis

Redis 官网 redis.io 昨日罕见地宕机了一段时间。宕机原本不是什么新鲜事,但戏剧性的是网站的报错信息居然是连接不上 Redis。 Redis::CannotConnectError at / Error connecting to Redis on 127.0.0.1:6379 (Errno::ECONNREFUSED) ▲ 看到这,忍不住刷一句:禁止套娃! Redis 作者 Antirez 很快修复了问题,并解释了宕机的原因。原来是因为他最近在运行 redis.io 的实上安装了 Try Redis(用于在线体验 Redis 数据库),可能是未能对 session key 进行良好的垃圾回收,从而导致内存累积,最终因为内存溢出(OOM )引发宕机。对此,Antirez 表示...阅读全文

博文 2020-03-13 13:17:06 debian.cn

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

,筛选 COOKIE,选择 Yes。​iTerm2 Enable ITERM2_COOKIE进度条配置可选1:使用文本进度条text 进度条示​using trzsz in iTerm2 with text progress bar升级 iTerm2 到 Build 3.5.20220503-nightly 以上的版本。Trigger 的 Parameters 配置增加 -p text 参数。/usr/local/bin/trzsz-iterm2 -p text \1 注意 /usr/local/bin/trzsz-iterm2 要替换成真实的 trzsz-iterm2 绝对路径。可选2:使用 zenity 进度条zenity 进度条示​using trzsz in iTerm2 with...阅读全文

Greg Kroah

Windows Vista还贵的收费服务。) 由于Ubuntu直接抄袭Debian的特色内容,所以有的网友称Ubuntu为“番茄花园版的Debian”。这个系列的发行版以标新立异为荣,轻率修改关键代码,对用户极不负责。如对随机数发生器的非官方修改导致openssl密钥容易重复,直到现在Ubuntu还在不断追加black list,让其用户苦受倒悬之危。 Ubuntu区别于其它大多数发行版的另一显著特征就是临近版本之间改动极大。经常有人抱怨:“我的Ubuntu升级后不能启动了。”(如7.04版升级到7.10时,很多用户无法进入X Window.) 同时Ubuntu为了进一步增加用户的麻烦,用dash取代了bash,带来繁多的兼容问题。不幸的是,在其自身的论坛上,Ubuntu被证实在一些只兼容dash的...阅读全文

博文 2021-01-28 17:50:09 Hartman批评Ubuntu发行版

Ruby 2.5.0 稳定版发布

Ruby 2.5 系列第一个稳定版本发布,新版包括了一系列新的特性和性能改进。主要变化包括:rescue/else/ensure 允许直接与 do/end 块使用,yield 增加 yield_self,Struct.new 能创建接受关键字参数的类,最高级常量查询不再可用,移除所有 trace 指令提升 5-10% 性能,SecureRandom 将更偏向使用操作系统提供的 SSL 库等。 此版本包括数个新特性和性能提升,如: 新特性 允许在 do/end 中直接使用 rescue/else/ensure。[功能 #12906] 新增 yield_self 来使用当前上下文 yield 代码块。不同于 tap,此方法会返回代码块的运行结果。[功能 #6721] 支持测量分支代码覆盖和方...阅读全文

博文 2017-12-25 21:59:41 debian.cn

如何在 Nginx 中配置 gRPC 的代理

gRPC服务。 nginx是使用http服务器监听gRPC的请求。示如下: http { server { listen 80 http2; access_log logs/access.log main; location / { # The 'grpc://' prefix is optional; unencrypted gRPC is the default grpc_pass grpc://localhost:50051; } } } 指令grpc_pass用来指定代理的gRPC服务器地址,前缀协议有两种: grpc://:与gRPC服务器端交互是以明文的方式 grpcs://:与gRPC服务器端交互式以TLS加密方式 gRPC服务器地址的前缀“grpc://”是可以忽略,默认就是明文...阅读全文

博文 2018-04-20 11:03:39 debian.cn

五种绕过 Linux 命令别名的方法

意一种方法来运行被 bash shell 别名绕过的命令。让我们先定义一个别名,用于本文的测试样: alias mount='mount | column -t' 运行 mount 命令,输出样如下: sysfs on /sys type sysfs (rw,relatime) proc on /proc type proc (rw,relatime) udev on /dev type devtmpfs (rw,nosuid,relatime,size=949632k,nr_inodes=237408,mode=755) devpts on /dev/pts type devpts (rw,relatime,gid=5,mode=620,ptmxmode=000) tmpfs on...阅读全文

博文 2018-03-08 13:33:02 debian.cn

大起底:揭开亚马逊云计算丰厚利润的秘密 - 电子商务

品的单独利润率,而在今年第一季度,官方公布的云计算运营利润率则是31%。一般来说,毛利润并没有计入研究、开发和市场营销的成本。美国另外一家小型云计算提供商“数字海洋”(DigitalOcean)的报告显示,二季度获得了58%的毛利润率,该公司主要收入来自于虚拟机,相当于亚马逊EC2的计算资源产品。数字海洋公司发言人介绍说,公司九成的收入来自于计算、存储和网络服务。目前,亚马逊云计算客户可以为未来预定EC2计算实,从而降低成本。AWS官方网站介绍说,预定的计算实要比按需提出便宜四分之三。企业的另外一个选项是使用EC2现货竞价计算实,这其实是亚马逊临时空闲出来的计算资源。亚马逊官方广告称,现货计算实要比按需实最多便宜九成。依托亚马逊云计算服务,企业客户可以方便运营自己的应用软件,另外可...阅读全文

博文 2021-09-07 11:41:54 cnBeta.COM

HTML 5.1 — 14 项新增特性及使用案例

。 < ahref="#" target="_blank" rel="noopener"> The link won't make trouble anymore 13. 灵活处理图片标题

标签表示与
元素关联的标题或图,通常作为如图片、图表、插图等视觉元素的容器。在早期的 HTML 版本中,
只能用作第一个或最后一个
的子标签。HTML5.1 已放宽此限制,现在您可以在
容器中的任何位置使用

The Headline of todays news

阅读全文

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

互联网协议正在发生变化

。 现在,核心互联网协议的重要改变已经开始了。虽然它们意图与互联网大部分兼容(因为,如果不兼容的话,它们不会被采纳),但是它们可能会破坏那些在协议中没有规定的地方,或者根本就假设那些地方不存在变化。 为什么我们需要去改变互联网 有大量的因素推动这些变化。 首先,核心互联网协议的局限性越来越明显,尤其是考虑到性能的时候。由于在应用和传输协议方面的结构性问题,网络没有得到高效使用,导致终端用户认为性能不能满足要求(特别是,网络延迟)。 这就意味着人们有强烈的动机来演进或者替换这些协议,因为有 大量的经验表明,即便是很小的性能改善也会产生影响。 其次,演进互联网协议的能力 —— 无论在任何层面上 —— 会随着时间的推移变得更加困难,这主要是因为上面所讨论的对网络的非预期使用。如,尝试去压缩响应的...阅读全文

译:Kubernetes 最佳实践

束使用 Deployment、DaemonSet、ReplicaSet 或者 StatefulSet 跨节点部署 Pod使用多节点使用基于角色的访问控制(RBAC)在外部托管Kubernetes集群(使用云服务)升级Kubernetes版本监控集群资源和审计策略日志使用版本控制系统使用基于Git的工作流程(GitOps)缩小容器的大小用标签整理对象(译者注:或理解为资源)使用网络策略使用防火墙使用命名空间K8s 中的命名空间对于组织对象、在集群中创建逻辑分区以及安全方面的考虑至关重要。 默认情况下,K8s 集群中有 3 个命名空间,default、kube-public 和 kube-system。RBAC 可用于控制对特定命名空间的访问,以限制组的访问以控制可能发生的任何错误的爆炸半径,...阅读全文

博文 2022-09-13 19:32:21 atbug.com

Git 免用户名密码访问代码库

在使用 git 时,如果不是使用ssh 和 key 验证的方式,则每次提交都会让输入用户名和密码,会显得比较麻烦,在服务器上配置时也无法做到自动同步更新代码。那么如何解决这个问题呢?我们这里介绍除 ssh + key 以外的免密码登录方式。在全局中存储用户的账号密码 以 Windows 环境为,在 %HOME% 目录中,一般为C:\Users\username(也可以是你自己创建的系统用户名目录)目录下,创建.git-credentials 文件。 文件内容为一行,样如下: https://username:password@git.example.com 注:username对应的 git 服务器的用户名,password 为密码。然后再进入 git bash 中执行, git...阅读全文

博文 2018-11-28 12:55:36 debian.cn

如何使用 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

容器镜像仓库 Harbor 发布 2.0 版

Harbor 2.0 现已发布,此版本使 Harbor 成为第一个符合OCI(Open Container Initiative,开放容器倡议)标准的开源注册表,能够存储大量云原生工件,如 container images、Helm 图表、OPAs、Singularity 等等。 Harbor 团队在博客中表示,“尽管 Harbor 现在符合OCI,但现有用户不必担心;Harbor 的所有熟悉的操作和主要优点都可以很好地转化为 OCI。您可以像处理图像一样 push、pull、delete、retag、copy、scan、以及 sign indexes。漏洞扫描和项目策略(用于加强安全性和合规性的关键要素)已经过改进,可以与 OCI 工件一起使用。我们还提供了一项新的关键功能:现在,您可...阅读全文

博文 2020-05-14 12:58:04 debian.cn

我要彻底放弃 Debian 操作系统!-Michael Stapelberg

。 这是什么意思? 在接下来的几周内,我将: 将包转交给相应的维护团队从其他维护者的包的Uploaders字段中删除自己的名字对于那些只有我在维护的包,那就任其自生自灭吧 我将尽最大努力维护manpages.debian.org服务(https://manpages.debian.org/)和codesearch.debian.net服务(https://codesearch.debian.net/),但是随时欢迎别人来帮忙。 请所有人都当我永远休假去了。我会尽力解决管理的问题(如许可转移等),如果有人直接向我提问,而且问题很容易回答的话,我也会尽力回答。 为什么? 当年加入Debian的时候,我还是一名学生,所以我有大量的业余时间。现在,经过5年多的全职工作,我从日常的工作中学到了很多知识...阅读全文

博文 2019-03-22 17:01:23 Michael Stapelberg

HAProxy用法详解 最详细中文文档

开的最大文件描述符数目,默认情况下其会自动进行计算,因此不推荐修改此选项;Linux默认单进程打开文件数为1024个 – user:同uid,但使用的是用户名; – stats:用户访问统计数据的接口 – node:定义当前节点的名称,用于HA场景中多haproxy进程共享同一个IP地址时; – description:当前实的描述信息; * 性能调整相关的参数 – maxconn :设定每个haproxy进程所接受的最大并发连接数,其等同于命令行选项“-n”;“ulimit -n”自动计算的结果正是参照此参数设定的; – maxpipes :haproxy使用pipe完成基于内核的tcp报文重组,此选项则用于设定每进程所允许使用的最大pipe个数;每个...阅读全文

博文 2014-05-10 17:14:46 debian.cn

使用 setfacl 管理文件的访问控制列表ACL

如果你是在一个大型组织,你运行了 NFS 或者 Samba 服务给不同的用户,你将会需要灵活的挑选并设置很多复杂的配置和权限去满足你的组织不同的需求。Linux(以及其他Unix等POSIX兼容的操作系统)有一个被称为访问控制列表(ACL)的权限控制方法,它是一种权限分配之外的普遍范式。如,默认情况下你需要维护3个权限组:owner、group和other。 使用ACL后,你可以设置权限给其他用户或组,而不单只是简单的"other"。可以允许指定的用户A、B、C拥有写权限而不再是让他们整个组拥有写权限。 ACL支持多种Linux文件系统,包括ext2, ext3, ext4, XFS, Btrfs等。如果你不确定你的文件系统是否支持ACL,请参考文档。 首先我们需要安装工具来管理ACL...阅读全文

Stackstorm 入门介绍

一句话概况:stackstorm是一个事件驱动的自动化引擎。StackStorm 是一坨功能强大的开源自动化平台,可将通过使用插件封装API的方式,将所有应用程序,服务和工作流程连接起来。这里的所有包括了目前我们常用Gitlab、Zabbix、ELK、AWS 等服务。 Stackstorm 具有很好的可扩展性,灵活性,完美支持 ChatOps 和全操作的API实现。通过Stackstorm 可以将您现有的基础架构和应用程序环境联系在一起,以便您可以更轻松地自动化操作该环境。它特别专注于针对事件采取行动。 便利的故障排除 - 触发由Nagios,Sensu,New Relic和其他监控系统捕获的系统故障,在物理节点、OpenStack或Amazon实和应用程序组件上运行一系列诊断检查,并将...阅读全文

AWS IAM 基本概念介绍

ComplianceIntegrated with many AWS servicesEventually ConsistentFree to use 基本概念 User 您可以在账户中创建与组织中的用户对应的各 IAM 用户,而不是与他人共享您的根账户凭证。IAM 用户不是单独的账户;它们是您账户中的用户。每个用户都可以有自己的密码以用于访问 AWS 管理控制台。您还可以为每个用户创建单独的访问密钥,以便用户可以发出编程请求以使用账户中的资源。 Group IAM中,组是 IAM 用户的集合。利用组,可为多个用户指定权限,以便更轻松地管理这些用户的权限。如,您可能有一个名为 Admins 的组,并向该组授予管理员通常需要的权限类型。该组中的任何用户均自动具有分配给该组的权限。如果有新用户加入您的组织,并且需要管理员权限,则可...阅读全文

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

Rust 1.37.0 稳定版发布

Rust 1.37.0 stable 有什么?Rust 1.37.0 的亮点包括通过类型别名引用枚举变量、内置 cargo vendor、对宏使用未命名的 const、配置文件引导的优化、Cargo 中的 default-run 和枚举上的 #[repr(align(N))] 。 通过类型别名引用枚举变量 在 Rust 1.37.0,可以通过类型别名引用枚举变量。如: type ByteOption = Option; fn increment_or_zero(x: ByteOption) -> u8 { match x { ByteOption::Some(y) => y + 1, ByteOption::None => 0, } } 要实现它,Self 充当类型别名。在 Rust...阅读全文

博文 2019-08-17 21:17:23 debian.cn