分享好友 资讯首页 频道列表

云原生初体验:在K8s上部署Springboot应用

2021-08-13 12:005460

你会不会对“云原生”很有兴趣,却不知道从何入手?

本文会在window环境下,构建一套基于k8s的istio环境,并且通过skaffold完成镜像的构建和项目部署到集群环境。其实对于实验环境有限的朋友们,完全可以在某里云上,按量付费搞3台”突发性能实例“,玩一晚,也就是杯咖啡钱。

好吧,让我开始吧!

执行流程

整体流程的话,如下图所示,通过 Skaffold+jib 将开发的应用打包成镜像,提交到本地仓库,并且将应用部署到集群中。k8s中部署2个pod,模拟应用不同的版本,并且配置访问权重20%:80%。

政府采购

环境选择

我之前有文章详细介绍过minikube。本次实验,开始的时候,我就一直沉溺在使用kind的便捷上,而且直接可以在docker上部署集群,可以说非常方便。但是由于我对K8S的理解并不足够,导致后面遇到了很多问题,所以,在这里建议新上手的小伙伴,还是使用minikube吧。k3s和RKE都需要多台虚拟机,碍于机器性能,这种方案暂时不考虑了。

下面表格,对比了minikube、kind、k3s 部署环境,以及支持情况,方便大家选择。

  minikube kind k3s runtime VM container native supported architectures AMD64 AMD64 AMD64, ARMv7, ARM64 supported container runtimes Docker,CRI-O,containerd,gvisor Docker Docker, containerd startup time initial/following 5:19 / 3:15 2:48 / 1:06 0:15 / 0:15 memory requirements 2GB 8GB (Windows, MacOS) 512 MB requires root? no no yes (rootless is experimental) multi-cluster support yes yes no (can be achieved using containers) multi-node support no yes yes project page https://minikube.sigs.k8s.io/ https://kind.sigs.k8s.io/

[1] 表格引用自:http://jiagoushi.pro/minikube-vs-kind-vs-k3s-what-should-i-use

docker desktop 没有特殊要求。其他的自己用的顺手就好,还是需要特别说一下minikube,别用最新的coredns一直都拉不下来,除非你的魔法,可以完全搞定,否则,还是用阿里编译的minikube版本吧,别跟自己较劲,别问我为什么...

我用的版本罗列在下面了:

➜ ~ istioctl version client version: 1.10.2 control plane version: 1.10.2 data plane version: 1.10.2 (10 proxies)  ➜ ~ minikube version minikube version: v1.18.1 commit: 511aca80987826051cf1c6527c3da706925f7909  ➜ ~ skaffold version v1.29.0  环境搭建 使用minikube创建集群

使用 hyperv 作为引擎 , 内存 8192M cup 4核,不能再少了,否则拉不起来 istio

➜ ~ minikube start  --image-mirror-country='cn' --registry-mirror=https://hq0igpc0.mirror.aliyuncs.com --vm-driver="hyperv" --memory=8192 --cpus=4 --hyperv-virtual-switch="minikubeSwitch" --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers 

还要在 hyperv里创建一个虚拟路由,这里我构建了一个内部网络,这样可以通过设置网卡的ip,将内部网络的网段固定下来,否则,每次重启都会变化ip

政府采购

配置让内部网络,共享访问互联网

政府采购

启动成功

➜ istio-1.10.2 minikube start 

反对 0
举报 0
收藏 0
打赏 0
评论 0
云安全日报220322:IBM云原生数据和AI平台发现执行任意代码漏洞,需要尽快升级
IBM Watson Knowledge Catalog in Cloud Pak for Data是美国IBM公司的一个云原生数据和AI平台。通过IBM Cloud Pak

0评论2022-03-22562

实现Kubernetes安全加固的六个建议
随着更多的组织开始拥抱云原生技术,Kubernetes已成为容器编排领域的行业标准。向 Kubernetes转变的

0评论2022-02-15501

Veeam张弘:云原生是沃土,数据保护不可缺
Veeam张弘:云原生是沃土,数据保护不可缺 作者:任新勃 【原创】 2021-09-28 15:19:59关键字: Veeam 数据保护 云原生那么云原生架构和应用发展过程中,数据保护方面主要面临那些挑战?面对数据安全等挑战,Veeam

0评论2021-10-14471

英方软件CTO周华: 云原生架构和应用不具备预防勒索软件攻击的能力
英方软件CTO周华: 云原生架构和应用不具备预防勒索软件攻击的能力 作者:任新勃 【原创】 2021-09-28 15:24:04关键字: CDP 英方软件 云原生近日,针对云原生的数据保护,IT采购网采访了英方软件CTO周华,他认为,云

0评论2021-10-14542

现代化应用需要一个怎样的云原生平台,来看看华为云的答卷!
现代化应用需要一个怎样的云原生平台,来看看华为云的答卷! 作者:任新勃 【原创】 2021-09-24 19:24:49关键字: 云原生 华为云那么云原生如何加速企业数字化转型,华为云原生2.0战略之后,又有哪些新的进展?华为云PaaS服

0评论2021-10-14488

戴尔科技:云原生应用的开发和交付需要新的云基础技术架构
戴尔科技:云原生应用的开发和交付需要新的云基础技术架构 作者:任新勃 【原创】 2021-09-28 15:31:25关键字: 云原生移动互联时代,企业业务上云已经成为趋势,但是企业在云化转型过程是“牵一发而动全身”, 那么企业云化转型面

0评论2021-10-14498