# bash-deploy-wlan-k8s **Repository Path**: daitape/kube-flannel ## Basic Information - **Project Name**: bash-deploy-wlan-k8s - **Description**: 一键将公网服务器(有公网IP)部署为K8s的master节点, 其他的node节点可以为无公网IP的本地机器,大大节省开销。 换句话说,就是组建非局域网,即,公网范围的K8s集群。 自己踩了非常多的坑,但一个程序员的操守让我坚持了下来, 并且把一步步的命令整合到了一起! - **Primary Language**: Shell - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-07-26 - **Last Updated**: 2024-02-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: Kubernetes, k8, Docker, 公网部署, 公网局域网混合部署 ## README # kube-flannel ## 介绍 网上关于K8s的部署材料大都是本地局域网部署, 然而大部分人本地局域网是没有公网IP的,即使部署好了也只能本地用(外网ping不到的)。 如果去云服务商租用多台机器用来搭建,必然需要大量开支。 从而我想着只租一台云服务器(有公网IP的), 以它作为对外master,将本地没有公网IP的自己的机器加入进去。 所以就有了这个项目: 一键将公网服务器部署为K8s的master节点, 然后其他node节点可以为本地机器(当然也可以是其他云服务器),大大节省开销。 换句话说,就是组建非局域网,即,公网范围的K8s集群。 自己踩了非常多的坑,但一个程序员的操守让我坚持了下来, 并且把一步步的命令整合到了一起! 适用系统为Ubuntu,测试通过版本为22.04.2 LTS。 当然可以通过主要修改apt(apt-get)的安装方式为yum实现在CentOS上运行。 ## 安装教程 ### master节点安装有2种方式,最后会命令窗口会打印出加入的命令“kubeadm join 一串参数” - **方式1** 直接用curl下载并运行,执行以下命令就行了 ``` curl -o $HOME/wlan-k8s-master.sh https://gitee.com/huhucs/kube-flannel/raw/master/wlan-k8s-master.sh chmod 777 $HOME/wlan-k8s-master.sh sudo bash $HOME/wlan-k8s-master.sh ``` - **方式2** 手动下载运行,步骤为 1. 将wlan-k8s-master.sh文件下载并上传到要做mater的云服务器上 2. 修改wlan-k8s-master.sh的权限“chmod 777 文件路径” 3. 以sudo模式运行该脚本即可“sudo bash 文件路径” ### node节点安装有2种方式,按以下完成后,复制master最后打印出的命令“kubeadm join 一串参数”,将该命令在node节点上运行即可 - **方式1** 直接用curl下载并运行,执行以下命令就行了 ``` curl -o $HOME/wlan-lan-node-no-public-ip.sh https://gitee.com/huhucs/kube-flannel/raw/master/wlan-lan-node-no-public-ip.sh chmod 777 $HOME/wlan-lan-node-no-public-ip.sh sudo bash $HOME/wlan-lan-node-no-public-ip.sh ``` - **方式2** 手动下载运行,步骤为 1. 将wlan-lan-node-no-public-ip.sh文件下载并上传到要做node的云服务器上 2. 修改wlan-lan-node-no-public-ip.sh的权限“chmod 777 文件路径” 3. 以sudo模式运行该脚本即可“sudo bash 文件路径” ## 使用说明 1. mater部署完成后会打印出加入的命令 2. 在执行node安装,完成后,手动用该命令加入集群即可