提速 30 倍!OCI 容器启动优化的历程

2023-03-28
阅读 10 分钟
1.1k
当我开始研究 crun ([链接]) 时,我正在寻找一种通过改进 OCI 运行时来更快地启动和停止容器的方法,OCI 运行时是 OCI 堆栈中负责最终与内核交互并设置容器所在环境的组件。

Kubernetes 优雅终止 pod

2023-03-28
阅读 2 分钟
1.6k
当你执行 kubectl delete pod 时,pod 被删除, endpoint 控制器从 service 和 etcd 中删除该 pod 的 IP 地址和端口。

Kubernetes EKS 集群中的 IP 地址分配问题

2023-03-28
阅读 3 分钟
1.5k
文本翻译自: [链接]运行 EKS 集群时,你可能会遇到两个问题:分配给 pod 的 IP 地址用完了。每个节点的 pod 数量少(由于 ENI 限制)。在本文中,你将学习如何克服这些问题。在我们开始之前,这里有一些关于节点内网络如何在 Kubernetes 中工作的背景知识。创建节点时,kubelet 委托:创建容器到容器运行时。将容器连接...

Kubernetes 节点的预留资源

2023-03-25
阅读 3 分钟
1.3k
文本翻译自: [链接]在 Kubernetes 中,运行多个集群节点是否存在隐形成本?是的,因为并非 Kubernetes 节点中的所有 CPU 和内存都可用于运行 Pod。在一个 Kubernetes 节点中,CPU 和内存分为:操作系统Kubelet、CNI、CRI、CSI(+ 系统 daemons)Pods驱逐阈值这些预留的资源取决于实例的大小,并且可能会增加相当大的开销...

使用 Kubernetes API

2023-03-23
阅读 3 分钟
1.2k
文本翻译自: [链接]Kubernetes 公开了一个强大的 API,可让您控制集群的各个方面。大多数时候,它隐藏在 kubectl 后面,但没有人会阻止您直接使用它。在本文中,您将学习如何使用 curl 或者您喜欢的编程语言向 Kubernetes API 发出请求。但首先,让我们回顾一下 Kubernetes API 的工作原理。当您键入命令时,kubectl:客...

谈谈 Kubernetes 的匿名访问

2023-03-22
阅读 2 分钟
1.4k
本周有一些关于 Dero Cryptojacking operation 的文章,其中关于攻击者所实施的细节之一引起了我的注意。有人提到他们正在攻击允许匿名访问 Kubernetes API 的集群。究竟如何以及为什么可以匿名访问 Kubernetes 是一个有趣的话题,涉及几个不同的领域,所以我想我会写一些关于它的内容。

Kubernetes snapshots 快照是什么以及如何使用快照?

2023-03-21
阅读 5 分钟
2k
API 是通用的且独立于供应商,这对于 Kubernetes 来说是典型的,因此我们可以探索它而无需深入了解特定实现的细节。让我们仔细看看快照,看看它们如何使 Kubernetes 用户受益。

Kubernetes 的 secret 并不是真正的 secret

2023-03-20
阅读 10 分钟
2.3k
Kubernetes 已经成为现代软件基础设施中不可或缺的一部分。因此,管理 Kubernetes 上的敏感数据也是现代软件工程的一个重要方面,这样您就可以将安全性重新置于 DevSecOps 中。Kubernetes 提供了一种使用 Secret 对象存储敏感数据的方法。虽然总比没有好,但它并不是真正的加密,因为它只是 base64 编码的字符串,任何有...

Elasticsearch 向量搜索

2022-04-15
阅读 3 分钟
8.1k
Elasticsearch 向量搜索本文将会介绍 Elasticsearch 向量搜索的两种方式。向量搜索提到向量搜索,我想你一定想知道:向量搜索是什么?向量搜索的应用场景有哪些?向量搜索与全文搜索有何不同?ES 的全文搜索简而言之就是将文本进行分词,然后基于词通过 BM25 算法计算相关性得分,从而找到与搜索语句相似的文本,其本质...

Terraform: 基础设施即代码

2022-03-27
阅读 2 分钟
2k
Terraform: 基础设施即代码问题现如今有很多 IT 系统的基础设施直接使用了云厂商提供的服务,假设我们需要构建以下基础设施:VPC 网络虚拟主机负载均衡器数据库文件存储...那么在公有云的环境中,我们一般怎么做?在云厂商提供的前端管理页面上手动操作吗?这也太费劲了吧,尤其是当基础设施越来越多、越来越复杂、以及...

加速 Kubernetes 镜像拉取

2022-03-13
阅读 1 分钟
2.9k
Kubernetes pod 启动时会拉取用户指定的镜像,一旦这个过程耗时太久就会导致 pod 长时间处于 pending 的状态,从而无法快速提供服务。

Web Security 之 Server-side template injection

2021-03-10
阅读 6 分钟
2.4k
模板引擎被设计成通过结合固定模板和可变数据来生成网页。当用户输入直接拼接到模板中,而不是作为数据传入时,可能会发生服务端模板注入攻击。这使得攻击者能够注入任意模板指令来操纵模板引擎,从而能够完全控制服务器。顾名思义,服务端模板注入有效负载是在服务端交付和执行的,这可能使它们比典型的客户端模板注入...

Web 安全 之 CSRF

2021-03-09
阅读 8 分钟
5.6k
在成功的 CSRF 攻击中,攻击者会使受害用户无意中执行某个操作。例如,这可能是更改他们帐户上的电子邮件地址、更改密码或进行资金转账。根据操作的性质,攻击者可能能够完全控制用户的帐户。如果受害用户在应用程序中具有特权角色,则攻击者可能能够完全控制应用程序的所有数据和功能。

Web 安全 之 Insecure deserialization

2021-03-08
阅读 9 分钟
7.7k
在本节中,我们将介绍什么是不安全的反序列化,并描述它是如何使网站遭受高危害性攻击的。我们将重点介绍典型的场景,并演示一些 PHP、Ruby 和 Java 反序列化的具体示例。最后也会介绍一些避免不安全的反序列化漏洞的方法。

Web 安全 之 DOM-based vulnerabilities

2021-03-07
阅读 5 分钟
4.2k
Document Object Model(DOM)文档对象模型是 web 浏览器对页面上元素的层次表示。网站可以使用 JavaScript 来操作 DOM 的节点和对象,以及它们的属性。DOM 操作本身不是问题,事实上,它也是现代网站中不可或缺的一部分。然而,不安全地处理数据的 JavaScript 可能会引发各种攻击。当网站包含的 JavaScript 接受攻击者...

Web 安全 之 Clickjacking

2021-03-05
阅读 4 分钟
5.3k
例如:某个用户被诱导访问了一个钓鱼网站(可能是点击了电子邮件中的链接),然后点击了一个赢取大奖的按钮。实际情况则是,攻击者在这个赢取大奖的按钮下面隐藏了另一个网站上向其他账户进行支付的按钮,而结果就是用户被诱骗进行了支付。这就是一个点击劫持攻击的例子。这项技术实际上就是通过 iframe 合并两个页面,...

Web 安全 之 HTTP request smuggling

2021-03-04
阅读 12 分钟
5.3k
HTTP 请求走私是一种干扰网站处理多个 HTTP 请求序列的技术。请求走私漏洞危害很大,它使攻击者可以绕过安全控制,未经授权访问敏感数据并直接危害其他应用程序用户。

Web 安全 之 OS command injection

2021-03-03
阅读 3 分钟
4.5k
在本节中,我们将解释什么是操作系统命令注入,描述如何检测和利用此漏洞,为不同的操作系统阐明一些有用的命令和技术,并总结如何防止操作系统命令注入。

Web 安全 之 Server-side request forgery

2021-03-01
阅读 5 分钟
6.3k
在本节中,我们将解释 server-side request forgery(服务端请求伪造)是什么,并描述一些常见的示例,以及解释如何发现和利用各种 SSRF 漏洞。

Web 安全 之 Directory traversal

2021-03-01
阅读 2 分钟
5.5k
目录遍历(也称为文件路径遍历)是一个 web 安全漏洞,此漏洞使攻击者能够读取运行应用程序的服务器上的任意文件。这可能包括应用程序代码和数据、后端系统的凭据以及操作系统相关敏感文件。在某些情况下,攻击者可能能够对服务器上的任意文件进行写入,从而允许他们修改应用程序数据或行为,并最终完全控制服务器。

Web 安全 之 CORS

2021-02-28
阅读 9 分钟
7.6k
CORS(跨域资源共享)是一种浏览器机制,它允许对位于当前访问域之外的资源进行受控访问。它扩展并增加了同源策略的灵活性。然而,如果一个网站的 CORS 策略配置和实现不当,它也可能导致基于跨域的攻击。CORS 不是针对跨源攻击(例如跨站请求伪造 CSRF)的保护。

OAuth 2.0 之 Authorization code 与 Implicit

2021-01-28
阅读 4 分钟
4.2k
OAuth 2.0 是用于授权的行业标准协议。我们常见的比如第三方登录、授权第三方应用获取保存在其它服务商的个人数据,这种都是 OAuth 2.0 的应用场景。

解读 MySQL Client/Server Protocol: Connection & Replication

2020-12-20
阅读 8 分钟
7.1k
MySQL 客户端与服务器之间的通信基于特定的 TCP 协议,本文将会详解其中的 Connection 和 Replication 部分,这两个部分分别对应的是客户端与服务器建立连接、完成认证鉴权,以及客户端注册成为一个 slave 并获取 master 的 binlog 日志。

同步 MySQL 数据至 Elasticsearch/Redis/MQ 等的五种方式

2020-11-30
阅读 2 分钟
5.1k
在实际应用中,我们经常需要把 MySQL 的数据同步至其它数据源,也就是在对 MySQL 的数据进行了新增、修改、删除等操作后,把该数据相关的业务逻辑变更也应用到其它数据源,例如:

ES 分布式搜索的运行机制

2020-11-17
阅读 2 分钟
3.8k
ES 分布式搜索的运行机制ES 有两种 search_type 即搜索类型:query_then_fetch (默认)dfs_query_then_fetchquery_then_fetch用户发起搜索,请求到集群中的某个节点。query 会被发送到所有相关的 shard 分片上。每个 shard 分片独立执行 query 搜索文档并进行排序分页等,打分时使用的是分片本身的 Local Term/Document...

ES Search Template

2020-11-16
阅读 8 分钟
2.6k
ES Search Template所谓 search template 搜索模板其实就是:预先定义好查询语句 DSL 的结构并预留参数搜索的时再传入参数值渲染出完整的 DSL ,最后进行搜索使用搜索模板可以将 DSL 从应用程序中解耦出来,并且可以更加灵活的更改查询语句。例如: {代码...} 构造出来的 DSL 就是: {代码...} 在模板中通过 {{ }} 的方...

构造请求日志分析系统

2020-11-07
阅读 3 分钟
3.5k
请求日志记录哪些数据time_local : 请求的时间remote_addr : 客户端的 IP 地址request_method : 请求方法request_schema : 请求协议,常见的 http 和 httpsrequest_host : 请求的域名request_path : 请求的 path 路径request_query : 请求的 query 参数request_size : 请求的大小referer : 请求来源地址,假设你在 a.com...

ES 自定义打分 Function score query

2020-11-02
阅读 7 分钟
12.2k
ES 会为 query 的每个文档计算一个相关度得分 score ,并默认按照 score 从高到低的顺序返回搜索结果。在很多场景下,我们不仅需要搜索到匹配的结果,还需要能够按照某种方式对搜索结果重新打分排序。例如:

数据管道 Logstash 入门

2020-11-01
阅读 8 分钟
5.4k
Logstash 入门Logstash 是什么Logstash 就是一个开源的数据流工具,它会做三件事:从数据源拉取数据对数据进行过滤、转换等处理将处理后的数据写入目标地例如:监听某个目录下的日志文件,读取文件内容,处理数据,写入 influxdb 。从 kafka 中消费消息,处理数据,写入 elasticsearch 。为什么要用 Logstash ?方便省事...

又拍图片管家亿级图像之搜图系统的两代演进及底层原理

2020-06-04
阅读 4 分钟
4.9k
又拍图片管家当前服务了千万级用户,管理了百亿级图片。当用户的图库变得越来越庞大时,业务上急切的需要一种方案能够快速定位图像,即直接输入图像,然后根据输入的图像内容来找到图库中的原图及相似图,而以图搜图服务就是为了解决这个问题。