mirror of https://github.com/easzlab/kubeasz.git
更新版本说明
parent
249850e896
commit
712c01be5c
|
@ -1,6 +1,7 @@
|
||||||
down/*
|
down/*
|
||||||
!down/download.sh
|
!down/download.sh
|
||||||
bin/
|
bin/*
|
||||||
|
!bin/VERSION.md
|
||||||
hosts
|
hosts
|
||||||
*.crt
|
*.crt
|
||||||
*.pem
|
*.pem
|
||||||
|
|
25
README.md
25
README.md
|
@ -2,27 +2,24 @@
|
||||||
|
|
||||||
![docker](./pics/docker.jpg) ![kube](./pics/kube.jpg) ![ansible](./pics/ansible.jpg)
|
![docker](./pics/docker.jpg) ![kube](./pics/kube.jpg) ![ansible](./pics/ansible.jpg)
|
||||||
|
|
||||||
本文档记录自己实践部署高可用k8s集群的过程,利用ansible-playbook简化二进制方式部署过程。
|
本系列文档致力于提供快速部署高可用`k8s`集群的工具,并且也努力成为`k8s`实践、使用的参考书;基于二进制方式部署和利用`ansible-playbook`实现自动化:既提供一键安装脚本,也可以分步执行安装各个组件,同时讲解每一步主要参数配置和注意事项。**二进制方式部署优势:有助于理解系统各组件的交互原理和熟悉组件启动参数,有助于快速排查解决实际问题**
|
||||||
|
|
||||||
网上有很多类似shell脚本和ansible部署版本,要不看得太复杂,或者久未更新,所以这里自己造轮子吧。
|
集群特性:`TLS` 双向认证、`RBAC` 授权、多`Master`高可用、支持`Network Policy`
|
||||||
|
|
||||||
二进制方式手动部署,将有助于理解系统各组件的交互原理和熟悉组建启动参数,进而能快速解决实际问题。
|
文档基于`Ubuntu 16.04`,其他系统如`CentOS 7`需要读者自行替换部分命令;由于使用`ansible`经验有限和简化`ansible-playbook`脚本考虑,已经尽量避免高级特性和复杂逻辑。
|
||||||
|
|
||||||
1. 建议阅读 [feisky.gitbooks](https://feisky.gitbooks.io/kubernetes/) 原理和部署章节。
|
## 组件版本
|
||||||
1. 建议阅读 [opsnull教程](https://github.com/opsnull/follow-me-install-kubernetes-cluster) 二进制手工部署。
|
|
||||||
|
|
||||||
本文是按照上述文档,更新组件实践修饰而成,修改了部分安全特性。
|
1. kubernetes v1.8.4
|
||||||
|
1. etcd v3.2.10
|
||||||
## 特性
|
1. docker 17.09.0-ce
|
||||||
|
1. calico/node v2.6.2
|
||||||
1. 截至2017-10-4 最新组件版本,参见[down版本](./down/download.sh) 文件。
|
|
||||||
1. 因本人部署节点IP属于同一网段,使用flannel新后端[host-gw](https://github.com/coreos/flannel/blob/master/Documentation/backends.md) 提升部分性能。
|
|
||||||
|
|
||||||
## 快速指南
|
## 快速指南
|
||||||
|
|
||||||
以下为快速体验k8s集群的测试、开发环境--AllinOne部署,觉得比官方的minikube方便、简单很多。
|
以下为快速体验k8s集群的测试、开发环境--AllinOne部署,觉得比官方的minikube方便、简单很多。
|
||||||
|
|
||||||
### 1.准备一台虚机(推荐内存3G,CPU 2,硬盘 30G以上),安装Ubuntu16.04,配置基础网络、更新源、SSH登陆等。
|
### 1.准备一台虚机(推荐内存3G,硬盘20G以上),安装Ubuntu16.04,配置基础网络、更新源、SSH登陆等。
|
||||||
### 2.安装python2/git/python-pip/ansible
|
### 2.安装python2/git/python-pip/ansible
|
||||||
``` bash
|
``` bash
|
||||||
# 更新
|
# 更新
|
||||||
|
@ -80,3 +77,7 @@ kubectl get svc --all-namespaces # 可以查看所有集群服务状态
|
||||||
1. 规划集群节点,完成ansible inventory文件[参考](hosts)
|
1. 规划集群节点,完成ansible inventory文件[参考](hosts)
|
||||||
1. 其他安装步骤同单节点安装
|
1. 其他安装步骤同单节点安装
|
||||||
|
|
||||||
|
1. 建议阅读 [feisky.gitbooks](https://feisky.gitbooks.io/kubernetes/) 原理和部署章节。
|
||||||
|
1. 建议阅读 [opsnull教程](https://github.com/opsnull/follow-me-install-kubernetes-cluster) 二进制手工部署。
|
||||||
|
|
||||||
|
[ansible超快入门](http://weiweidefeng.blog.51cto.com/1957995/1895261)
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
# 主要组件版本
|
||||||
|
kubernetes v1.8.4
|
||||||
|
etcd v3.2.10
|
||||||
|
docker 17.09.0-ce
|
||||||
|
calico/node v2.6.2
|
|
@ -1,9 +1,9 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#主要组件版本如下
|
#主要组件版本如下
|
||||||
export K8S_VER=v1.7.6
|
export K8S_VER=v1.8.4
|
||||||
export ETCD_VER=v3.2.8
|
export ETCD_VER=v3.2.10
|
||||||
export DOCKER_VER=17.09.0-ce
|
export DOCKER_VER=17.09.0-ce
|
||||||
export CALICO_VER=v1.6.2
|
export CALICO_VER=v2.6.2
|
||||||
|
|
||||||
echo "\n----download k8s binary at:"
|
echo "\n----download k8s binary at:"
|
||||||
echo https://dl.k8s.io/${K8S_VER}/kubernetes-server-linux-amd64.tar.gz
|
echo https://dl.k8s.io/${K8S_VER}/kubernetes-server-linux-amd64.tar.gz
|
||||||
|
@ -12,9 +12,6 @@ echo "\n----download etcd binary at:"
|
||||||
echo https://github.com/coreos/etcd/releases/download/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz
|
echo https://github.com/coreos/etcd/releases/download/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz
|
||||||
echo https://storage.googleapis.com/etcd/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz
|
echo https://storage.googleapis.com/etcd/${ETCD_VER}/etcd-${ETCD_VER}-linux-amd64.tar.gz
|
||||||
|
|
||||||
echo "\n----download calicoctl binary at:"
|
|
||||||
echo https://github.com/projectcalico/calicoctl/releases/download/${CALICO_VER}/calicoctl
|
|
||||||
|
|
||||||
echo "\n----download docker binary at:"
|
echo "\n----download docker binary at:"
|
||||||
echo https://download.docker.com/linux/static/stable/x86_64/docker-${DOCKER_VER}.tgz
|
echo https://download.docker.com/linux/static/stable/x86_64/docker-${DOCKER_VER}.tgz
|
||||||
|
|
||||||
|
@ -30,7 +27,6 @@ echo "-rw-r--r-- 1 root root 2277873 Mar 30 2016 cfssljson_linux-amd64"
|
||||||
echo "-rw-r--r-- 1 root root 10376657 Mar 30 2016 cfssl_linux-amd64"
|
echo "-rw-r--r-- 1 root root 10376657 Mar 30 2016 cfssl_linux-amd64"
|
||||||
echo "-rwxr--r-- 1 root root 29699281 Aug 24 17:09 docker-17.06.1-ce.tgz*"
|
echo "-rwxr--r-- 1 root root 29699281 Aug 24 17:09 docker-17.06.1-ce.tgz*"
|
||||||
echo "-rwxr--r-- 1 root root 10176124 Aug 24 17:09 etcd-v3.2.6-linux-amd64.tar.gz*"
|
echo "-rwxr--r-- 1 root root 10176124 Aug 24 17:09 etcd-v3.2.6-linux-amd64.tar.gz*"
|
||||||
echo "-rwxr--r-- 1 root root 9090192 Aug 24 17:09 flannel-v0.8.0-linux-amd64.tar.gz*"
|
|
||||||
echo "-rwxr--r-- 1 root root 437406487 Aug 24 17:09 kubernetes-server-linux-amd64.tar.gz*"
|
echo "-rwxr--r-- 1 root root 437406487 Aug 24 17:09 kubernetes-server-linux-amd64.tar.gz*"
|
||||||
|
|
||||||
echo "\n注意2:如果还没有手工下载tar包,请Ctrl-c结束此脚本\nsleep 60"
|
echo "\n注意2:如果还没有手工下载tar包,请Ctrl-c结束此脚本\nsleep 60"
|
||||||
|
@ -65,16 +61,8 @@ else
|
||||||
echo 请先下载etcd-${ETCD_VER}-linux-amd64.tar.gz
|
echo 请先下载etcd-${ETCD_VER}-linux-amd64.tar.gz
|
||||||
fi
|
fi
|
||||||
|
|
||||||
### 准备flannel程序
|
### 准备calico程序
|
||||||
echo "\n准备flannel二进制程序..."
|
echo "\n下载calico/node镜像\ndocker pull calico/node:2.6.2"
|
||||||
if [ -f "flannel-${FLANNEL_VER}-linux-amd64.tar.gz" ]; then
|
|
||||||
echo "\nextracting flannel binaries..."
|
|
||||||
tar zxf flannel-${FLANNEL_VER}-linux-amd64.tar.gz
|
|
||||||
mv flanneld mk-docker-opts.sh ../bin
|
|
||||||
rm README.md
|
|
||||||
else
|
|
||||||
echo 请先下载flannel-${FLANNEL_VER}-linux-amd64.tar.gz
|
|
||||||
fi
|
|
||||||
|
|
||||||
### 准备kubernetes程序
|
### 准备kubernetes程序
|
||||||
echo "\n准备kubernetes二进制程序..."
|
echo "\n准备kubernetes二进制程序..."
|
||||||
|
|
Loading…
Reference in New Issue