kubernetes微服务学习之阿里云k8s部署

目录

学习内容

  • 将Petclinic单体解耦拆分为微服务架构
  • 在阿里云部署发布微服务

将Petclinic单体解耦拆分为微服务架构

petclinic微服务架构

image

image

image

DeckerFile文件描述

FROM openjdk:8-
使用openJdk

ARG AARTIFACT_NAME  EXPOSED_PORT
传递参数 artifact_name exposed_port

ADD ${ARTIFACT_NAME}.jar /usr/share/app.jar 
把springboot构建出的jar 文件添加到镜像的 /usr/share/app.jar  

EXPOSE ${EXPOSED_PORT}
文档的作用

ENTRPOINT 
指定镜像要启动哪一个命令

springcloud gateway 微服务yaml

springcloud gateway 主要作用是反向路由、转发 找到后台的微服务做调用。

image

K8s部署配置文件

image

image

image

image

image

image

进入dashboard页面

image

image

kubectl get ns (查看所有的namespace)
kubectl get secret -n kubernetes-dashboard (查看指定namespace下所有的secret)
kubectl describe secret kubernetes-dashboard-token-qsbwf -n kubernetes-dashboard (查看指定namespace下指定secret的执行详情)
kubectl proxy (启动k8s 代理)

Petclinic微服务的阿里云K8S发布

部署架构

image

VPC: Virtual Private Cloud 虚拟专有云 阿里云K8S集群要求部署在VPC中。

CIDR: IP地址空间

SLB:Server LoadBalancer 在管理端Master节点一般由多个节点组成高可用的集群,为了让管理员能够通过kubectl 命令行工具 以高可用的方式访问APIServer 因为ApiServer肯定是有多台的,
所以前置一般都会有 SLB 负载均衡设备,通过SLB就可以高可用和负载均衡的方式访问ApiServer

NAT: 为了让外部的网络和VPC能够互通,一般需要部署 NAT(网络地址转换设备),
通过NAT管理员可以SSH到Master节点或者Worker节点上,做一些运维管理的操作,
另外通过NAT VPC内部的节点也可以访问外部的网络,比如拉取docker镜像。

应用端SLB: 在应用端,当应用被部署到K8S集群,一般也需要部署前置的SLB负载均衡设备,
这样外部的流量才可以访问到K8S内部的应用,同时实现高可用和负载均衡调用,应用端SLB一般可以通过发布文件动态创建,发布时,serviceType是LoadBalancer。

image

Petclinic微服务配置

image

image

image

image

image

image

阿里云环境配置

image

image

image

image

image

image

image

配置本地kubectl 连接k8s集群

image

部署configMap

image

image

扩容缩容: 修改发布文件,达到扩容缩容 kubectl edit deployment 修改配置文件

打赏一个呗

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦