k8s 集群部署springcloud 多应用
2018-02-14 15:48
731 查看
注:应用源码地址 https://github.com/passionday/spring-cloud-vue
目录
用[TOC]来生成目录:k8s 集群部署springcloud 多应用目录
修改配置文件及打jar包1 修改配置文件
2 打jar包
build docker 镜像
k8s集群部署
1. 修改配置文件及打jar包
2. build docker 镜像
3. k8s集群部署
1. 修改配置文件及打jar包
1.1 修改配置文件
修改springcloud的配置文件中的eureka 和 config 的server地址 改为 k8s 中部署的app name如下 :
其中 cloud-config-server cloud-eureka-server 用来作为app name
k8s dns 会根据app name 解析成对应的ip
server.port=8081 server.context-path=/ spring.cloud.config.profile=dev spring.cloud.config.uri=http://${cofig.host:cloud-config-server}:${config.port:1111} spring.cloud.config.name=cloud-config #${config.profile:dev} eureka.instance.hostname=cloud-eureka-server #service discovery url eureka.client.serviceUrl.defaultZone=http\://${eureka.host:cloud-eureka-server}\:${eureka.port:8888}/eureka/ 将eureka改为Ip和端口注册服务 #使用IP注册服务 eureka.instance.prefer-ip-address=true eureka.instance.instance-id=${spring.cloud.client.ipAddress}:${server.port}1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
1.2 打jar包
mvn install2. build docker 镜像
在master 或者 node上build都可以 只要能push 到私库即可。创建 /root/apps/目录 ,并在该目录下 创建 config eureka simple zipkin 文件夹 用来存放不同的应用,将打好的jar包放入对应的文件夹,并在每个文件夹内创建Dockerfile,已经build 脚本,文件目录如下:
[root@master ~]# tree apps/ -L 3 apps/ ├── build_all.sh ├── config │ ├── build.sh │ ├── cloud-config-server-1.0.0.jar │ ├── Dockerfile │ └── start_docker.sh ├── eureka │ ├── build.sh │ ├── cloud-eureka-server-1.0.0.jar │ └── Dockerfile ├── simple │ ├── build.sh │ ├── cloud-simple-service-1.0.0.jar │ └── Dockerfile └── zipkin ├── build.sh ├── cloud-zipkin-ui-1.0.0.jar └── Dockerfile 4 directories, 14 files1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
每个目录的Dockerfile内容都是相同的,不同的是build.sh
[root@master config]# cat Dockerfile FROM java:8 VOLUME /tmp ADD *.jar app.jar RUN sh -c 'touch /app.jar' ENV JAVA_OPTS="" CMD exec java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar1
2
3
4
5
6
7
8
9
10
11
12
[root@master config]# cat /root/apps/config/build.sh docker build -t docker.hbg.io/cdchen/config:1.0.0 /root/apps/config/ && docker push docker.hbg.io/cdchen/config:1.0.0 [root@master eureka]# cat /root/apps/eureka/build.sh docker build -t docker.hbg.io/cdchen/eureka:1.0.0 /root/apps/eureka && docker push docker.hbg.io/cdchen/eureka:1.0.0 [root@master eureka]# cat /root/apps/simple/build.sh docker build -t docker.hbg.io/cdchen/simple:1.0.0 /root/apps/simple && docker push docker.hbg.io/cdchen/simple:1.0.0 [root@master eureka]# cat /root/apps/zipkin/build.sh docker build -t docker.hbg.io/cdchen/zipkin:1.0.0 /root/apps/zipkin && docker push docker.hbg.io/cdchen/zipkin:1.0.0 [root@master apps]# cat /root/apps/build_all.sh ./config/build.sh && ./eureka/build.sh && ./simple/build.sh && ./zipkin/build.sh1
2
3
4
5
6
7
8
9
10
执行 build_all.sh
3. k8s集群部署
app name | 镜像 | port | TargetPort |
---|---|---|---|
cloud-eureka-server | docker.hbg.io/cdchen/eureka:1.0.0 | 8888 | 8888 |
cloud-config-server | docker.hbg.io/cdchen/config:1.0.0 | 1111 | 1111 |
cloud-simple-server | docker.hbg.io/cdchen/simple:1.0.0 | 8081 | 8081 |
cloud-zipkin-server | docker.hbg.io/cdchen/zipkin:1.0.0 | 9012 | 9012 |
相关文章推荐
- k8s集群部署springcloud 单应用
- 搭建及使用K8s集群 <k8s集群部署springcloud 单应用>
- 搭建及使用K8s集群 <k8s 集群部署springcloud 多应用>
- 解决spring-cloud应用无法部署在同一个容器中的问题
- Spring Cloud Eureka集群部署注意事项
- 搭建及使用K8s集群 <使用ingress 暴露springcloud服务>
- 如何部署同一个Spring boot web 应用到不同的环境
- Spring-cloud Eureka 集群
- SolrCloud集群部署
- Java + Redis3.0.2集群的应用(二)——Spring集成Jedis
- Tomcat集群应用部署的实现机制
- idea+Spring Boot的第一个应用,以及热部署的配置
- Spring Cloud应用进行服务追踪分析(Zipkin和spring cloud Sleuth)
- 【微服务架构】SpringCloud之Eureka(注册中心集群篇)(三)
- 疯狂Spring Cloud连载(5)Eureka集群搭建
- spring cloud与K8S
- 使用Docker部署 spring-boot maven应用
- 润乾报表Weblogic集群配置__部署润乾应用
- spring cloud eureka 集群 服务集群 测试
- Spring Cloud Spring Boot mybatis分布式微服务云架构(十一)Web应用的统一异常处理