ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

k8s学习笔记(2)- Rancher2.x部署springboot应用及高可用、扩容

2021-10-17 22:33:43  阅读:207  来源: 互联网

标签:springbootapp 负载 springboot Rancher2 部署 rancher pod k8s 节点


前言:上一篇介绍基于k3s环境,使用kubectl部署springboot简单项目应用,本篇介绍基于rancher2.x部署应用程序

1、上篇已部署一个springboot应用,我们可以通过rancher查看工作负载状态

  • 说明:我们没有通过rancher添加主机管理部署K8s集群,所以我们这里直接用rancher在k3s上操作
  • 登录rancher,查看集群工作负载
    image
  • 点击负载名称,查看负载信息
    image
  • 可以看到springboot部署在了ubuntunode2节点上,ip地址192.168.231.132,所以我们可以通过http://192.168.231.132:30000/hello访问应用
    image
  • 重启k3s服务器,3个节点,只启动其中2个,且不启动昨天做的springbootapp所部署的那台server,ubuntunode2
    image
  • 输入命令,查看pod:springbootapp的状态
      sudo kubectl describe pod/springbootapp -n default
    
    说明: -n default 命名空间 default
    image
  • pod处于terminating状态,我们可以输入命令强制删除pod,重新部署
    格式:
      sudo kubectl delete pod 【podname】 --force --grace-period=0 -n 【命名空间】
    
    命令:
      sudo kubectl delete pod spingbootapp --force --grace-period=0 -n default
    

2、通过rancher2.x部署应用

  • 进入rancher工作负载界面
    image
  • 点击部署应用,填写参数信息,名称,镜像,命名空间,负载类型选择2个pod
    image
  • 点击启动
    image
  • 等待一段时间后,工作负载创建完成
    image

3、创建负载均衡ingress,提供对外访问springbootapp的pod

  • 进入负载均衡界面,点击-添加规则
    image
  • 填写相关参数,域名springbootapp.com,命名空间,选择对应的服务/工作负载
    image
    image
  • 保存后,启动一个负载均衡器
    image

4、通过域名:springbootapp.com,访问springbootapp应用的pod,由于没有DNS服务器,我们这里通过修改hosts文件,添加域名ip映射进行访问

  • 修改hosts文件,添加域名映射,ip地址可以是springbootapp部署的任一节点的ip地址
    image
  • 保存hosts文件,通过域名访问springbootapp服务
    image

5、模拟pod挂掉,重新部署应用

  • 强制删除一个节点,rancher会重新启动一个pod,保证2个副本工作
    image
  • 系统会很快帮我们重新构建一个pod
    image
  • 如果一台机器挂掉,pod处于Terminating状态,我们可以重新部署应用,rancher会中心创建2个pod提供服务
    image
  • 点击重新部署,会出现多个pod
    image
  • 这样不会使springbootapp服务中断,待新pod创建完成之后,会剔除老的pod
    image

6、服务扩容、缩容

  • 扩容
    在工作负载springbootapp中,点击增加pod节点
    image
    我们发现新增了一个pod节点提供服务
    image
  • 缩容
    在工作负载springbootapp中,点击减少pod节点
    image
    我们发现rancher帮我们减少了一个pod节点提供服务,释放了资源
    image

标签:springbootapp,负载,springboot,Rancher2,部署,rancher,pod,k8s,节点
来源: https://www.cnblogs.com/kunwn/p/15414191.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有