从零开始入门 Kubernetes

从零开始入门 Kubernetes

策划: 田晓旭

Kubernetes 是一个开源的工业级容器编排平台,其目标是让部署容器化的应用简单且高效。Kubernetes 提供了应用部署、规划、更新、维护的一种机制,核心特点是能够自主管理容器,以保证云平台中的容器是按照用户期望的状态在运行着。

2018 年 3 月 7 日,CNCF 宣布 Kubernetes 正式毕业,随后Kubernetes 获得了多个云端平台的青睐,多家云厂商推出了Kubernetes 托管服务。如今,Kubernetes 已经成为云原生领域的“当红炸子鸡”。本系列文章将从0到1讲解 Kubernetes 的核心原理和重要实践,帮助开发者顺利入门 Kubernetes。

从零开始入门 K8s:详解 K8s 容器基本概念
从零开始入门 K8s:详解 K8s 容器基本概念

容器是什么?镜像又是什么?容器的生命周期是怎么样的?与 VM 相比,容器的优劣势分别是什么?…本文将为大家一一解答这些问题。

从零开始入门 K8s:详解 K8s 核心概念
从零开始入门 K8s:详解 K8s 核心概念

Kubernetes,从官方网站上可以看到,它是一个工业级的容器编排平台。Kubernetes 这个单词是希腊语,它的中文翻译是“舵手”或者“飞行员”。在一些常见的资料中也会看到“ks”这个词,也就是“K8s”,它是通过将 8 个字母“ubernete ”替换为“8”而导致的一个缩写。

从零开始入门 K8s:详解 Pod 及容器设计模式
从零开始入门 K8s:详解 Pod 及容器设计模式

容器的本质实际上是一个进程,是一个视图被隔离,资源受限的进程。

从零开始入门 K8s:K8s 的应用编排与管理
从零开始入门 K8s:K8s 的应用编排与管理

我们知道,Kubernetes 的资源对象组成:主要包括了 Spec、Status 两部分。其中 Spec 部分用来描述期望的状态,Status 部分用来描述观测到的状态。

从零开始入门 K8s:应用编排与管理
从零开始入门 K8s:应用编排与管理

Deployment 是 Kubernetes 中常见的一种 Workload,支持部署管理多版本的 Pod;Deployment 管理多版本的方式,是针对每个版本的 template 创建一个 ReplicaSet,由 ReplicaSet 维护一定数量的 Pod 副本,而 Deployment 只需要关心不同版本的 ReplicaSet 里要指定多少数量的 Pod;

从零开始入门 K8s:应用编排与管理:Job & DaemonSet
从零开始入门 K8s:应用编排与管理:Job & DaemonSet

本文详细介绍了 Job 和 CronJob 的概念,并通过两个实际的例子介绍了 Job 和 CronJob 的使用,对于 Job 和 CronJob 内的各种功能便签都进行了详细的演示。

从零开始入门 K8s:应用配置管理
从零开始入门 K8s:应用配置管理

本文主要介绍 ConfigMap 和 Secret 的创建方法和使用场景、Pod 身份认证、容器资源和安全、InitContainer。

从零开始入门 K8s:应用存储和持久化数据卷的核心知识
从零开始入门 K8s:应用存储和持久化数据卷的核心知识

本文主要介绍 K8s Volume 的使用场景以及本身局限性。

从零开始入门 K8s:应用存储和持久化数据卷:存储快照与拓扑调度
从零开始入门 K8s:应用存储和持久化数据卷:存储快照与拓扑调度

本文通过对比 PVC&PV 体系讲解了存储快照的相关 K8s 资源对象以及使用方法

从零开始入门 K8s:监控与日志的可观测性
从零开始入门 K8s:监控与日志的可观测性

监控和日志是大型分布式系统的重要基础设施,监控可以帮助开发者查看系统的运行状态,而日志可以协助问题的排查和诊断。

从零开始入门 K8s:可观测性,你的应用健康吗?
从零开始入门 K8s:可观测性,你的应用健康吗?

当把应用迁移到 Kubernetes 之后,要如何去保障应用的健康与稳定呢?提高应用的可观测性就是一个很实用的方法。

从零开始入门 K8s:Kubernetes 网络概念及策略控制
从零开始入门 K8s:Kubernetes 网络概念及策略控制

本文主要介绍 Kubernetes 的网络模型。

从零开始入门 K8s:Kubernetes 中的服务发现与负载均衡
从零开始入门 K8s:Kubernetes 中的服务发现与负载均衡

与传统的应用在给定机器上部署不同, K8s 集群中的应用是通过 pod 部署的, 且 pod 生命周期是短暂的,因此会引发很多之前没有遇到过的问题。

从零开始入门 K8s:深入剖析 Linux 容器
从零开始入门 K8s:深入剖析 Linux 容器

Linux 容器是一种轻量级的虚拟化技术,在共享内核的基础上,基于 namespace 和 cgroup 技术做到进程的资源隔离和限制。本文将会以 docker 为例,介绍容器镜像和容器引擎的基本知识。

从零开始入门 K8s:手把手带你理解 etcd
从零开始入门 K8s:手把手带你理解 etcd

etcd 是用于共享配置和服务发现的分布式、一致性的 KV 存储系统。本文从 etcd 项目发展所经历的几个重要时刻开始,为大家介绍了 etcd 的总体架构及其设计中的基本原理。希望能够帮助大家更好的理解和使用 etcd。

从零开始入门 K8s:etcd 性能优化实践
从零开始入门 K8s:etcd 性能优化实践

本文从 etcd 性能背景出发,详细讲解了 etcd server 端性能优化及 etcd client 使用最佳实践。

没有更多了