奇妙的 Linux 世界

种一棵树最好的时间是十年前,其次是现在。

初识 Istio

如果你比较关注新兴技术的话,那么很可能在不同的地方听说过 Istio,并且知道它和 Service Mesh 有着牵扯。这篇文章可以作为了解 Istio 的入门介绍。通过本文你可以了解什么是 Istio,Istio 为什么最近这么火,以及 Istio 能够我们带来什么好处。 什么是 Istio? 官方对 Istio 的介绍浓缩成了一句话: An open platform to conne......

使用 IPVS 实现 Kubernetes 入口流量负载均衡

新搭建的 Kubernetes 集群如何承接外部访问的流量,是刚上手 Kubernetes 时常常会遇到的问题。 在公有云上,官方给出了比较直接的答案,使用 LoadBalancer 类型的 Service,利用公有云提供的负载均衡服务来承接流量,同时在多台服务器之间进行负载均衡。 而在私有环境中,如何正确的将外部流量引入到集群内部,却暂时没有标准的做法。 本文将介绍一种基于 IPVS 来承......

浅谈 Kubernetes 数据持久化方案

Kubernetes Volume 相关概念 缺省情况下,一个运行中的容器对文件系统的写入都是发生在其分层文件系统的可写层。一旦容器运行结束,所有写入都会被丢弃。如果数据需要长期存储,那就需要对容器数据做持久化支持。 Kubernetes 和 Docker 类似,也是通过 Volume 的方式提供对存储的支持。Volume 被定义在 Pod 上,可以被 Pod 里的多个容器挂载到相同或不......

浅谈 DDoS 攻击与防御

什么是 DDoS DDoS 是英文 Distributed Denial of Service 的缩写,中文译作分布式拒绝服务。那什么又是拒绝服务(Denial of Service)呢?凡是能导致合法用户不能够正常访问网络服务的行为都算是拒绝服务攻击。也就是说拒绝服务攻击的目的非常明确,就是要阻止合法用户对正常网络资源的访问,从而达成攻击者不可告人的目的。 分布式拒绝服务攻击一旦被实施,攻......

Kubernetes 资源管理概述

Kubernetes 从创建之初的核心模块之一就是资源调度。想要在生产环境使用好 Kubernetes,必须对它的资源模型以及资源管理非常了解。这篇文章算是对散布在网络上的 Kubernetes 资源管理内容的一个总结。干货文章,强列推荐一读。 Kubernetes 资源简介 什么是资源? 在 Kubernetes 中,有两个基础但是非常重要的概念:Node 和 Pod。Node 翻译成节点......

利用 Helm 快速部署 Ingress

Ingress 是一种 Kubernetes 资源,也是将 Kubernetes 集群内服务暴露到外部的一种方式。本文将讲一讲如何用 Helm 在 Kubernetes 集群中部署 Ingress,并部署两个应用来演示 Ingress 的具体使用。 阅读本文前你需要先掌握 Helm 和一些 Kubernetes 服务暴露的相关知识点,如果你还不了解可以先读一读我之前写的 「Helm 入门指南......

推荐一款比 Find 快 10 倍的搜索工具 FD

fd 是基于 Rust 开发的一个速度超快的命令行搜索工具,fd 旨在成为 Linux / Unix 下 find 命令的替代品。 fd 虽然不能提供现在 find 命令所有的强大功能,但它也提供了足够强大的功能来满足你日常需要。比如:简洁的语法、彩色的终端输出、超快的查询速度、智能大小写、支持正则表达式以及可并行执行命令等特性。 项目地址:https://github.com/sharkd......

Helm 入门指南

Helm 是 Kubernetes 生态系统中的一个软件包管理工具。本文将介绍 Helm 中的相关概念和基本工作原理,并通过一个具体的示例学习如何使用 Helm 打包、分发、安装、升级及回退 Kubernetes 应用。 Kubernetes 应用部署的挑战 Kubernetes 是一个提供了基于容器的应用集群管理解决方案,Kubernetes 为容器化应用提供了部署运行、资源调度、服务发现......

从 Kubectl run 开始揭开 Kubernetes 的神迷面纱

想象一下,如果我想将 Nginx 部署到 Kubernetes 集群,我可能会在终端中输入类似这样的命令: 1$ kubectl run --image=nginx --replicas=3 然后回车。几秒钟后,你就会看到三个 Nginx Pod 分布在所有的工作节点上。这一切就像变魔术一样,但你并不知道这一切的背后究竟发生了什么事情。 Kubernetes 的神奇之处在......

如何 10 步 Docker 化一个应用

本文将讲解如何将应用 Docker 化的一些很实用的技巧和准则,推荐一读。 一、选择基础镜像 每种对应技术几乎都有自己的基础镜像,例如: https://hub.docker.com/_/java/ https://hub.docker.com/_/python/ https://hub.docker.com/_/nginx/ 如果不能直接使用这些镜像,我们就需要从基础操作系统镜像开始......