mirror of https://github.com/easzlab/kubeasz.git
更新版本说明
parent
249850e896
commit
712c01be5c
|
@ -1,6 +1,7 @@
|
|||
down/*
|
||||
!down/download.sh
|
||||
bin/
|
||||
bin/*
|
||||
!bin/VERSION.md
|
||||
hosts
|
||||
*.crt
|
||||
*.pem
|
||||
|
|
25
README.md
25
README.md
|
@ -2,27 +2,24 @@
|
|||
|
||||
![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. 截至2017-10-4 最新组件版本,参见[down版本](./down/download.sh) 文件。
|
||||
1. 因本人部署节点IP属于同一网段,使用flannel新后端[host-gw](https://github.com/coreos/flannel/blob/master/Documentation/backends.md) 提升部分性能。
|
||||
1. kubernetes v1.8.4
|
||||
1. etcd v3.2.10
|
||||
1. docker 17.09.0-ce
|
||||
1. calico/node v2.6.2
|
||||
|
||||
## 快速指南
|
||||
|
||||
以下为快速体验k8s集群的测试、开发环境--AllinOne部署,觉得比官方的minikube方便、简单很多。
|
||||
|
||||
### 1.准备一台虚机(推荐内存3G,CPU 2,硬盘 30G以上),安装Ubuntu16.04,配置基础网络、更新源、SSH登陆等。
|
||||
### 1.准备一台虚机(推荐内存3G,硬盘20G以上),安装Ubuntu16.04,配置基础网络、更新源、SSH登陆等。
|
||||
### 2.安装python2/git/python-pip/ansible
|
||||
``` bash
|
||||
# 更新
|
||||
|
@ -80,3 +77,7 @@ kubectl get svc --all-namespaces # 可以查看所有集群服务状态
|
|||
1. 规划集群节点,完成ansible inventory文件[参考](hosts)
|
||||
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
|
||||
#主要组件版本如下
|
||||
export K8S_VER=v1.7.6
|
||||
export ETCD_VER=v3.2.8
|
||||
export K8S_VER=v1.8.4
|
||||
export ETCD_VER=v3.2.10
|
||||
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 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://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 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 "-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 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 "\n注意2:如果还没有手工下载tar包,请Ctrl-c结束此脚本\nsleep 60"
|
||||
|
@ -65,16 +61,8 @@ else
|
|||
echo 请先下载etcd-${ETCD_VER}-linux-amd64.tar.gz
|
||||
fi
|
||||
|
||||
### 准备flannel程序
|
||||
echo "\n准备flannel二进制程序..."
|
||||
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
|
||||
### 准备calico程序
|
||||
echo "\n下载calico/node镜像\ndocker pull calico/node:2.6.2"
|
||||
|
||||
### 准备kubernetes程序
|
||||
echo "\n准备kubernetes二进制程序..."
|
||||
|
|
Loading…
Reference in New Issue