Git Product home page Git Product logo

kubei's Introduction

kubei

kubei (Kubernetes installer) 是一个go开发的用来部署Kubernetes高可用集群的命令行工具

kubei原理:通过ssh协议连接到集群服务器,进行容器引擎安装、kubernetes组件安装、主机初始化配置、高可用负载均衡器配置、调用kubeadm初始化集群master、调用kubeadm将主机节点加入集群

功能

  • 下载离线文件
  • 离线部署
  • 自定证书过期时间(kubei进行证书签发,而不需要kubeadm进行签发)
  • 可使用普通用户部署安装(sudo用户)
  • 可使用跳板机连接主机部署安装

版本支持

应用/系统 版本
Kubernetes 1.17.X、1.18.X、1.19.X、1.20.X
系统 Ubuntu16.04+、CentOS7.4+

k8s-ha

快速开始

主机 集群角色 系统版本
10.3.0.10 master Ubuntu 18.04 LTS
10.3.0.11 master Ubuntu 18.04 LTS
10.3.0.12 master Ubuntu 18.04 LTS
10.3.0.20 worker Ubuntu 18.04 LTS
10.3.0.21 worker Ubuntu 18.04 LTS

默认使用root用户和22端口,如果需要使用普通用户和其它ssh端口,请查看ssh用户参数说明

如果要用密码做ssh登录验证,请查看ssh用户参数说明

1、下载部署程序

https://github.com/yuyicai/kubei/releases

2、下载离线包:
离线包从阿里云镜像仓库下载提取,方便快速 若没有你需要的版本,可以参照这里的脚本制作离线包:https://github.com/yuyicai/kubebin

./kubei download

3、执行部署命令:

./kubei init \
 -k $HOME/.ssh/k8s.key \
 -m 10.3.0.10,10.3.0.11,10.3.0.12 \
 -n 10.3.0.20,10.3.0.21 \
 -f ./kube_v1.17.9-docker_v18.09.9-flannel_v0.11.0-amd64.tgz

asciicast

更多安装示例参数说明

感谢:

cobra: 命令框架采用cobra

kubeadm: 子命令工作流采用kubeadm workflow模块

kubespray: 高可用配置采用kubespray项目的配置

TODO

  • calico网络组件支持
  • 增加节点功能
  • 离线部署
  • 自定义证书过期时间

kubei's People

Contributors

yuyicai avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

kubei's Issues

拆分离线包

离线包拆分为:

  1. 容器引擎
  2. kube组件
  3. 镜像包

三大类、大类再细分小类,方便指定容器引擎和k8s版本

mac下安装:--kubernetes-version 未生效

安装命令:./kubei init -p root -m 192.168.1.10 --kubernetes-version 1.17.13 --image-repository registry.aliyuncs.com/google_containers --container-engine-version 18.09.9
安装成功是最新的版本
Snipaste_2020-10-17_21-09-26

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.