# K8S极简史介绍

## 1. 概述
K8S(Kubernetes)是一个开源的容器编排引擎,用于自动化部署、扩展和管理容器化应用程序。K8S最初由Google开发,现在由云原生计算基金会(CNCF)维护。本文将向你介绍K8S的发展史,并指导你如何搭建一个简单的K8S集群。

## 2. K8S极简史
K8S的发展史如下:

| 时间 | 事件 |
|------------|----------------------------------------------|
| 2014年 | Google 开源了 Borg 的一部分作为 Kubernetes |
| 2015年 | Kubernetes 成为 CNCF 的第一个全新项目 |
| 2017年 | Kubernetes 1.0 发布,成为生产就绪 |
| 2019年 | Kubernetes 1.14 发布,引入了 Windows 节点支持|

## 3. 搭建K8S集群
接下来,我们将学习如何搭建一个简单的K8S集群。首先,你需要在一台物理机或虚拟机上安装Docker、kubeadm、kubelet和kubectl。

### 步骤1:安装Docker
```bash
sudo apt-get update
sudo apt-get install docker.io
```
这里使用apt-get包管理工具安装Docker。

### 步骤2:安装kubeadm、kubelet和kubectl
```bash
sudo apt-get update && sudo apt-get install -y apt-transport-https curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
cat <deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
```
这里通过添加kubernetes的源,安装kubeadm、kubelet和kubectl。

### 步骤3:初始化K8S集群
```bash
sudo kubeadm init
```
这里使用kubeadm初始化K8S集群。

### 步骤4:设置kubectl配置
```bash
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
```
这里将kubernetes的配置文件复制到用户的kube目录下。

### 步骤5:安装网络插件
```bash
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
```
这里安装calico网络插件,用于集群内部通信。

## 4. 结语
通过以上步骤,你已经搭建起一个简单的K8S集群。K8S的发展史充分展示了它在容器编排领域的地位和影响力。希望本文对你有所帮助,让你更加了解K8S的历史和基本搭建流程。如果你有任何疑问或意见,欢迎留言讨论!