本地CentOS安装轻量级容器PaaS平台KubeSphere并实现无公网IP远程访问

简介: 本地CentOS安装轻量级容器PaaS平台KubeSphere并实现无公网IP远程访问

本文主要介绍如何在Linux CentOS搭建Kubernetes并结合Cpolar内网穿透工具,实现远程访问,根据官网的安装方式,在Linux 上以All-in-One模式安装KubeSphere,设备需要提前安装好Docker并运行。


KubeSphere是一个基于Kubernetes的开源容器平台,它提供了全栈的IT自动化运维能力,简化了企业的DevOps工作流。KubeSphere采用前后端分离的架构,可以运行在任何Kubernetes、私有云、公有云、VM或物理环境之上。KubeSphere提供了运维友好的向导式操作界面,帮助企业快速构建一个强大和功能丰富的容器云平台。


远程访问的好处是可以方便地管理和监控 Kubernetes 集群,无需在本地安装Kubernetes 环境。通过远程访问 KubeSphere,用户可以在任何地方使用Web界面或命令行工具来管理和监控 Kubernetes 集群,包括查看节点和 Pod 的资源使用情况、部署应用程序、监控应用程序性能等。此外,KubeSphere还提供了多租户功能,可以帮助用户更好地管理多个团队和项目。



1. 部署KubeSphere

下载 KubeKey,KubeKey 是用 Go 语言开发的一款全新的安装工具,代替了以前基于 ansible 的安装程序。KubeKey 为用户提供了灵活的安装选择,可以分别安装 KubeSphere 和 Kubernetes 或二者同时安装,既方便又高效。


先执行以下命令以确保您从正确的区域下载 KubeKey。


export KKZONE=cn

1

执行以下命令下载 KubeKey


curl -sfL https://get-kk.kubesphere.io | VERSION=v3.0.7 sh -

1

为 kk 添加可执行权限


chmod +x kk

1

安装依赖 (这里是centos系统,使用的是yum 安装,如其他系统,可以自行修改)


yum install socat conntrack -y

1

开始安装Kubernetes,执行后等待安装完成


./kk create cluster --with-kubernetes v1.22.12 --with-kubesphere v3.3.2

1

安装完成后我们可以看到提示的本地访问地址和登录的用户名密码



2. 本地测试访问

在浏览器输入上面安装完成后显示的访问地址,即可成功访问到了KubeSphere Web UI 界面,这样本地部署安装测试访问就成功了



输入账号密码即可登录成功,下面安装cpolar 内网穿透软件,实现远程访问!



3. Linux 安装Cpolar

上面在本地Linux中成功部署了KubeSphere,并局域网访问成功,下面我们在Linux安装cpolar内网穿透工具,通过cpolar 转发本地端口映射的http公网地址,我们可以很容易实现远程访问,而无需自己注册域名购买云服务器。下面是安装cpolar步骤:


cpolar官网地址: https://www.cpolar.com


使用一键脚本安装命令

curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash

1

向系统添加服务

sudo systemctl enable cpolar

1

启动cpolar服务

sudo systemctl start cpolar

1

cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可



4. 配置KubeSphere公网访问地址

点击左侧仪表盘的隧道管理——创建隧道,创建一个KubeSphere Web UI 的公网地址隧道!


隧道名称:可自定义命名,注意不要与已有的隧道名称重复

协议:选择http

本地地址:局域网IP:30880 (注意这里填写完整的本地访问时的局域网IP和端口)

域名类型:免费选择随机域名

地区:选择China

点击创建



隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https



5. 公网远程访问KubeSphere

使用上面的cpolar https公网地址,在任意设备的浏览器进行访问,即可成功看到我们KubeSphere Web UI界面,这样一个公网地址且可以远程访问就创建好了,使用了cpolar的公网域名,无需自己购买云服务器,即可发布到公网进行远程访问 !(新地址访问,可能需要重新登陆)



6. 固定KubeSphere公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】


注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】


登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称



保留成功后复制保留成功的二级子域名的名称



返回登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑




修改隧道信息,将保留成功的二级子域名配置到隧道中


域名类型:选择二级子域名

Sub Domain:填写保留成功的二级子域名

点击更新(注意,点击一次更新即可,不需要重复提交)



更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名



最后,我们使用固定的公网地址访问,可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了,随时随地都可以远程访问KubeSphere Web UI界面!!

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
应用服务中间件 nginx Docker
外部访问容器
外部访问容器
306 1
|
Unix Linux Docker
CentOS停更沉寂,RHEL巨变限制源代:Docker容器化技术的兴起助力操作系统新格局
操作系统是计算机系统的核心软件,管理和控制硬件与软件资源,为用户和应用程序提供高效、安全的运行环境。Linux作为开源、跨平台的操作系统,具有高度可定制性、稳定性和安全性,广泛应用于服务器、云计算、物联网等领域。其发展得益于庞大的社区支持,多种发行版如Ubuntu、Debian、Fedora等满足不同需求。
723 5
|
开发框架 安全 开发者
Docker 是一种容器化技术,支持开发者将应用及其依赖打包成容器,在不同平台运行而无需修改。
Docker 是一种容器化技术,支持开发者将应用及其依赖打包成容器,在不同平台运行而无需修改。本文探讨了 Docker 在多平台应用构建与部署中的作用,包括环境一致性、依赖管理、快速构建等优势,以及部署流程和注意事项,展示了 Docker 如何简化开发与部署过程,提高效率和可移植性。
486 4
|
Linux pouch 容器
CentOS7部署阿里巴巴开源的pouch容器管理工具实战
关于如何在CentOS 7.6操作系统上安装和使用阿里巴巴开源的Pouch容器管理工具的实战教程。
519 2
CentOS7部署阿里巴巴开源的pouch容器管理工具实战
|
存储 运维 Kubernetes
云端迁移:备份中心助力企业跨云迁移K8s容器服务平台
本文将简要介绍阿里云容器服务ACK的备份中心,并以某科技公司在其实际的迁移过程中遇到具体挑战为例,阐述如何有效地利用备份中心来助力企业的容器服务平台迁移项目。
|
网络协议 Ubuntu 前端开发
好好的容器突然起不来,经定位是容器内无法访问外网了?测试又说没改网络配置,该如何定位网络问题
本文记录了一次解决前端应用集成到主应用后出现502错误的问题。通过与测试人员的沟通,最终发现是DNS配置问题导致的。文章详细描述了问题的背景、沟通过程、解决方案,并总结了相关知识点和经验教训,帮助读者学习如何分析和定位网络问题。
1130 1
|
Shell Docker 容器
docker给容器分配固定ip
docker给容器分配固定ip
3085 3
|
消息中间件 Kubernetes 容器
在K8S中,同⼀个Pod的不同容器互相可以访问是怎么做到的?
在K8S中,同⼀个Pod的不同容器互相可以访问是怎么做到的?
|
Kubernetes 负载均衡 安全
【技术揭秘】阿里云容器服务Ingress高级玩法:如何轻松实现客户端原始IP透传,提升应用安全性与用户体验!
【8月更文挑战第17天】本文介绍如何在阿里云容器服务中配置Ingress以透传客户端原始IP地址。通过Ingress可实现HTTP负载均衡等功能。需在Ingress定义文件中添加特定注解,如`nginx.ingress.kubernetes.io/real-ip-header: X-Real-IP`。创建并应用Ingress配置后,后端服务可通过读取`X-Real-IP`头获取真实IP。此举有助于安全审计及流量分析。
917 2
|
域名解析 Kubernetes 负载均衡
在K8S中,外部访问容器服务,比如说提供了一个域名,链路怎么走?数据经过哪些组件?
在K8S中,外部访问容器服务,比如说提供了一个域名,链路怎么走?数据经过哪些组件?