运维之美

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

巧用 Nginx 快速实现 HTTPS 双向认证

研究 HTTPS 的双向认证实现与原理,踩了不少坑,终于整个流程都跑通了,现在总结出一篇文档来,把一些心得,特别是容易踩坑的地方记录下来。 1.原理 双向认证,顾名思义,客户端和服务器端都需要验证对方的身份,在建立 HTTPS 连接的过程中,握手的流程比单向认证多了几步。单向认证的过程,客户端从服务器端下载服务器端公钥证书进行验证,然后建立安全通信通道。双向通信流程,客户端除了需要从服务器端......

两个助你高效编写 Kubernetes YAML 文件的神技

我们在编写 Kubernetes 资源清单的时候可能会经常会忘记要创建的资源名称,即使知道了可能也不记得该资源对象有哪些属性可以使用了,特别是对于那些名称很长的资源或者属性,即使死记硬背下来隔一段时间又会忘记了。 比如现在我们要创建一个 validating 的 admission webhook,我们就需要定义一个 ValidatingWebhookConfiguration 的资源对象,......

再见 ELK,是时候拥抱下一代日志系统 Loki 了

最近,在对公司容器云的日志方案进行设计的时候,发现主流的 ELK 或者 EFK 比较重,再加上现阶段对于 ES 复杂的搜索功能很多都用不上,最终选择了 Grafana 开源的 Loki 日志系统。下面我们来介绍下 Loki 的一些基本概念和架构。 Loki 是 Grafana Labs 团队最新的开源项目,是一个水平可扩展,高可用性,多租户的日志聚合系统。它的设计非常经济高效且易于操作,因......

推荐几款快速管理 Kubernetes 多集群环境的神器

Kubernetes 生态在很多企业广泛应用的当下,相信很多运维和开发人员都会同时管理和维护多个 Kubernetes 集群,比如:开发环境、测试环境、预发布环境、生产环境等等。 为了方便管理多个环境的集群,通常都是在本地环境通过 Kubernetes 的客户端工具 kubectl 来管理多个 Kubernetes 集群的。这时你就需要用到各个集群的 kubeconfig 文件,你是不是首先......

推荐 3 款超好用的 Docker 图形化管理工具

Docker 是一项非常流行的容器技术,现在在各行各业有着广泛的使用。不过如何管理 Docker 容器是一个问题,所以我今天向大家介绍 3 款 Docker 可视化工具,希望对大家有所帮助。 Portainer Portainer 是一款 Docker 可视化管理工具,允许我们在网页中方便的查看和管理 Docker 容器。 项目地址:https://www.portainer.io/ 要使......

SSH 证书登录教程

SSH 是服务器登录工具,提供密码登录和密钥登录。 但是,SSH 还有第三种登录方法,那就是证书登录。很多情况下,它是更合理、更安全的登录方法,本文就介绍这种登录方法。 一、非证书登录的缺点 密码登录和密钥登录,都有各自的缺点。 密码登录需要输入服务器密码,这非常麻烦,也不安全,存在被暴力破解的风险。 密钥登录需要服务器保存用户的公钥,也需要用户保存服务器公钥的指纹。这对于多用户、多服务器的......

手把手教会你解决 Chrome 访问非受信证书页面时,提示「您的连接不是私密连接」错误的方法

在较新版本的 Chrome 中访问一些未受信任的 HTTPS 页面时,会提示类似 NET::ERR_CERT_INVALID 的错误。以往旧版本中,我们可以选择跳过得以继续访问,但是新版本的 Chrome 中并不允许继续,且提示以下错误: 经过很多种尝试后,目前发现只有两种比较有效的方法可以解决。 方法一 你可以在 Chrome 启动时加上 --ignore-certificate-e......

分享一个解决 sudo 命令找不到环境变量的小技巧

如何解决 sudo 命令找不到环境变量的问题 在通过 sudo 运行命令时,系统会默认重置环境变量为安全的环境变量,也就是说,先前设置的变量都会失效,只有少数配置文件中指定的环境变量能够保存下来。 sudo 的配置文件是 /etc/sudoers,需要 root 权限才能读取,运行以下命令: 1$ sudo sed '/^#/d;/^$/d&#......

手把手教你解决 Chrome、IE 等浏览器无法正常访问 Kubernetes Dashboard 的问题

一般情况下,正常安装部署完 Kubernetes Dashboard 后,通过大多数主流浏览器(Chrome、IE、Safari)是不能正常访问的,唯有 Firefox 才能解忧。 使用火狐浏览器打开后,会有一个安全风险提示。 接受安全风险后,还是可以正常访问的。 该问题是由于部署 Kubernetes Dashboard 时默认生成的证书有问题导致的。在这篇文章中,我们就来教你如何快......

手把手教你定制一个专属的个性化终端登陆界面

在我们登入 macOS 的终端后,终端往往会弹出一段欢迎信息,显示登录主机、主机供应商提示等信息。但每次看到的都是同样的信息难免有些厌倦。 通过修改 Motd 文件,我们可以给 SSH 加点料,让它更加好看和有趣。 默认提示 原理 在类 Unix 系统中,/etc/motd 是一个包含「今日消息(Message of the day)」的文件。比起电子邮件,使用 Motd 给所有用户发送......