阿里云Kuberneters微服务部署案例

3. 如何安装Docker Desktop for Mac
如何安装Docker Desktop for Mac
4. SpringCloud微服务应用
SpringCloud微服务应用
5. Kubernetes基本概念和应用
Kubernetes基本概念和应用
6. 阿里云Kuberneters微服务部署案例
阿里云Kuberneters微服务部署案例
7. Kubernetes高级概念和应用
Kubernetes高级概念和应用
8. Kubernetes和微服务监控体系
Kubernetes和微服务监控体系
9 Kubernetes和微服务CI/CD
Kubernetes和微服务CI/CD
10. 深入理解Kubernetes网络
深入理解Kubernetes网络

非 Java 程序员可以直接从5开始

1.  将petclinic重构为微服务架构

阿里云Kuberneters微服务部署案例_第1张图片 

阿里云Kuberneters微服务部署案例_第2张图片

 阿里云Kuberneters微服务部署案例_第3张图片

阿里云Kuberneters微服务部署案例_第4张图片

2. 将Petclinic微服务部署到K8S 本地环境中

阿里云Kuberneters微服务部署案例_第5张图片 

阿里云Kuberneters微服务部署案例_第6张图片阿里云Kuberneters微服务部署案例_第7张图片 阿里云Kuberneters微服务部署案例_第8张图片

 

 

安装dashboard阿里云Kuberneters微服务部署案例_第9张图片

 

 发布所有的服务。。。

阿里云Kuberneters微服务部署案例_第10张图片

3. Petclinic微服务的阿里云K8S部署架构

阿里云Kuberneters微服务部署案例_第11张图片 

阿里云Kuberneters微服务部署案例_第12张图片

阿里云Kuberneters微服务部署案例_第13张图片 

CIDR:IP地址空间

阿里云Kuberneters微服务部署案例_第14张图片 

NAT:通过NAT,管理员可以ssh到work或者master节点上面 做一些运维管理工作 

同时,通过NAT,VPC内部的网络也可以访问外部的网络 【如:拉去docker hub上面的镜像】

 应用端:当应用被部署到k8s集群  也需要前置的SLB【通过动态文件动态创建 serviceType是LoadBlancer】

1. 申请一个Aliyun VPC【virtual private cloud】

2. 在里面创建虚拟交换机、申请Aliyun k8s集群 、申请Aliyun RDS。其中k8s集群、rds都在VPC里面

3. 启用rds数据库【Aliyun 版本的mysql数据库】,会创建数据的账号、数据库、表以及填充种子数据

4. 其中vets-svc、visits-svc、customers-svc都会启用mysql模式。运行的时候链接rds数据库

5. 所有的petclinic微服务内部都暴露8080端口。K8s集群内有私有的网络,不同服务可以使用相同的端口

6. 每个微服务部署的时候都是由两部分组成【Service+Pod】

7. 网关getway会启用LoaderBalancer的Service类型 ,发布以后Aliyun会自动为网关创建SLB【所暴露的端口也是8080.   SLB会绑定到公网可以访问的ip】这样我们就可以通过公网ip+8080端口来访问petclinic微服务应用了。

4. Petclinic微服务的阿里云K8S发布文件

1. 我们的微服务有5个,其他他们都是有一些公共的配置的

2. 比如:后端的三个服务【vets-svc、visits-svc、customer-svc】都会连接Aliyun RDS数据库。都有对应的数据库连接字符串

3.  网关和web都会调用后端的三个服务 【会配置后端微服务的端点】

所以需要将共性的东西提取出来。配置在ConfigMap里面 

阿里云Kuberneters微服务部署案例_第15张图片阿里云Kuberneters微服务部署案例_第16张图片 

阿里云Kuberneters微服务部署案例_第17张图片 阿里云Kuberneters微服务部署案例_第18张图片

阿里云Kuberneters微服务部署案例_第19张图片

阿里云Kuberneters微服务部署案例_第20张图片

5. 阿里云K8S环境创建

阿里云Kuberneters微服务部署案例_第21张图片

阿里云Kuberneters微服务部署案例_第22张图片

共享版意思是:Master是共享的

更新$HOME/.kube/config是为了能够让本地的kubectl可以连接aliyun k8s集群 

1. 创建VPC+交换机

阿里云Kuberneters微服务部署案例_第23张图片

阿里云Kuberneters微服务部署案例_第24张图片

2. 创建RDS数据库

阿里云Kuberneters微服务部署案例_第25张图片

白名单的意思是:有哪些ip可以来访问RDS数据库【我们这里k8s集群要来访问】

阿里云Kuberneters微服务部署案例_第26张图片

阿里云Kuberneters微服务部署案例_第27张图片 更新访问的rds的内网地址

阿里云Kuberneters微服务部署案例_第28张图片

创建root账户

创建数据库。记得跟ConfigMap里面的信息保持一致.就是在数据库petclinic下 

阿里云Kuberneters微服务部署案例_第29张图片

创建k8s共享版集群

阿里云Kuberneters微服务部署案例_第30张图片 阿里云Kuberneters微服务部署案例_第31张图片

更新$HOME/.kube/config【备份旧版。】

阿里云Kuberneters微服务部署案例_第32张图片

阿里云Kuberneters微服务部署案例_第33张图片 验证集群工作位置是否正确。

阿里云Kuberneters微服务部署案例_第34张图片 

6. 将Petclinic微服务部署到阿里云K8S环境

阿里云Kuberneters微服务部署案例_第35张图片 

阿里云Kuberneters微服务部署案例_第36张图片

阿里云Kuberneters微服务部署案例_第37张图片

确认ConfigMap数据没有问题。同时保证本地kubectl可以访问到Aliyun K8S集群

阿里云Kuberneters微服务部署案例_第38张图片阿里云Kuberneters微服务部署案例_第39张图片 发布配置项,并通过aliyun配置项进行查看

发布其他服务【ContainerCreating创建中,因为第一次需要拉取容器】阿里云Kuberneters微服务部署案例_第40张图片

 通过aliyun可以看到状态 

阿里云Kuberneters微服务部署案例_第41张图片

阿里云Kuberneters微服务部署案例_第42张图片 说明是可以通过公网进行正常访问的。。。

添加一条数据

阿里云Kuberneters微服务部署案例_第43张图片阿里云Kuberneters微服务部署案例_第44张图片

接下来研究下扩容/缩容。

 可以看到每一个服务都是两个

假如:现在看到customer的cpu利用率比较高呢?【需要扩容】

阿里云Kuberneters微服务部署案例_第45张图片阿里云Kuberneters微服务部署案例_第46张图片

如上:就可以达到目的了【同理可以进行扩容和缩容了,哈哈哈哈哈,开心】 

7. 删除Aliyun相关环境

阿里云Kuberneters微服务部署案例_第47张图片阿里云Kuberneters微服务部署案例_第48张图片

 删除K8S集群【等待删除完成后再进行后续操作吧】 

阿里云Kuberneters微服务部署案例_第49张图片

释放RDS实例

阿里云Kuberneters微服务部署案例_第50张图片 VPC不能直接删除,因为里面有设备

阿里云Kuberneters微服务部署案例_第51张图片

阿里云Kuberneters微服务部署案例_第52张图片

阿里云Kuberneters微服务部署案例_第53张图片 如上:VPC绑定了交换机,交换机绑定了路由表

阿里云Kuberneters微服务部署案例_第54张图片

 

你可能感兴趣的:(K8S,java,kubernetes,开发语言)