其他分享
首页 > 其他分享> > |NO.Z.00346|——————————|CloudNative|——|KuberNetes&运维.V63|--------------------------------------------

|NO.Z.00346|——————————|CloudNative|——|KuberNetes&运维.V63|--------------------------------------------

作者:互联网



[CloudNative:KuberNetes&运维.V63]                                                                      [Applications.KuberNetes][|DevOps|k8s|k8s运维|**3节点.V1**|Micrometer|Prometheus监控JVM|服务发现|]








一、服务发现:实验配置
### --- 服务发现说明

~~~     基于console去发现,自动监控JVM配置,启动2个euraka
~~~     一个euraka当做服务注册中心
~~~     另一个euraka当做业务应用的另一个模块
~~~     通过euraka的console服务发现自动配置监控项
二、启动一个eureka容器,console自动发现,监控JVM项目:
### --- 在euraka中配置console插件:添加全局服务发现dependency参数依赖配置:

[root@k8s-master01 spring-cloud-demo2]# docker run -ti --rm -v /opt/m2:/root/.m2 -v `pwd`:/opt/ -p 18761:8761 maven:3.5.3 bash
root@8340becce924:/opt/spring-cloud-eureka# vim pom.xml
    <dependency>
        <groupId>at.twinformatics</groupId>
        <artifactId>eureka-consul-adapter</artifactId>
        <version>1.1.0</version>
    </dependency>
        <!-- Micrometer Prometheus registry  -->    #  此行上面添加如上内容
### --- 重新编译Java项目

root@8340becce924:/opt/spring-cloud-eureka# mvn clean package -DskipTests
[INFO] Scanning for projects...
[INFO] ---------------------< com.zb:spring-cloud-eureka >---------------------
[INFO] Building spring-cloud-eureka 0.0.1-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] BUILD SUCCESS
### --- 启动第一个euraka:作为服务注册中心

~~~     一个euraka当做服务注册中心
~~~     另一个euraka当做业务应用的另一个模块;
~~~     然后注册到第一个euraka中,实现console监控JVM服务自动发现
root@8340becce924:/opt/spring-cloud-eureka# mv target/spring-cloud-eureka-0.0.1-SNAPSHOT.jar .
root@8340becce924:/opt/spring-cloud-eureka# java -jar spring-cloud-eureka-0.0.1-SNAPSHOT.jar
——>通过Chrome访问euraka注册中心:现在没有任何服务注册进来

三、启动第二个euraka;作为业务应用的另一个模块
### --- 在启动一个容器;运行spring-cloud-user项目

[root@k8s-master01 spring-cloud-demo2]# docker run -ti --rm -v /opt/m2:/root/.m2 -v `pwd`:/opt/ -p 28080:8080 maven:3.5.3 bash
root@9e3a56c9868e:/opt/spring-cloud-eureka#
### --- 添加服务注册

root@9e3a56c9868e:/opt/spring-cloud-eureka# vim src/main/resources/application.yml
server:
  port: 8080
 
eureka:
  client:
    serviceUrl:
      defaultZone: http://192.168.1.11:18761/eureka/
spring:
  application:
    name: cloud-user
management:
  endpoints:
    web:
      exposure:
        include: '*'
    shutdown:
      enable: false
  metrics:
    tags:
      application: "${spring.application.name}"
### --- 编译打包

root@9e3a56c9868e:/opt/spring-cloud-eureka# mvn clean package -DskipTests
[INFO] ---------------------< com.zb:spring-cloud-eureka >---------------------
[INFO] Building spring-cloud-eureka 0.0.1-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] BUILD SUCCESS
### --- 启动第二个容器,充当业务应用的另一个模块
~~~     --server.port=8080: 端口号更改为8080

root@9e3a56c9868e:/opt/spring-cloud-eureka# java -jar target/spring-cloud-eureka-0.0.1-SNAPSHOT.jar --server.port=8080          
——>通过Chrome访问euraka注册中心:查看注册是否注册进来
四、配置自动发现,验证是否可以自动监控上
### --- 配置自动发现,验证是否可以自动监控上

~~~     ——>http://krm.test.com/——>secrets——>Namespace:monitoring
~~~     ——>secrets:additional-scrape-configs——>编辑:添加如下内容——>Update——>END 
### --- namespace:monitoring——>secrets:additional-scrape-configs——>添加如下内容

### other configurations                   // 最上面添加如下内容
- job_name: 'jvm-discovery-prometheus'
  scheme: http
  metrics_path: '/actuator/prometheus'
  consul_sd_configs:                       // consul地址
    - server: '192.168.1.11:18761'         // eureka的地址      
      scheme: http
      services: []
#- job_name: 'jvm-prometheus'              // 这部分内容删除掉
#  scheme: http
#  metrics_path: '/actuator/prometheus'
#  static_configs:
#  - targets: ['192.168.1.11:18761']
五、查看服务secrets是否更新
### --- 查看服务secrets是否更新

~~~     ——>http://prom.test.com/——>Status——>Configuration——>配置参数已更新过来
六、查看服务发现注册是否监控到
### --- 查看服务发现注册是否监控到

~~~     ——>http://prom.test.com/——>Status——>Targets——>
~~~     ——>查看服务发现已经配置上,但是instance:172.17.0.3是docker的IP地址
~~~     ——>这个Prometheus和它是不通的,所以连接失败。这个是不影响的,console服务发现已经生效了
~~~     # 注:

~~~     此环境是使用docker去模拟的euraka的注册中心和业务应用模块,所以Prometheus和docker是不通的
~~~     若是euraka和springboot和这个应用是部署在容器中,就会使用pod的IP地址,就不会再报连接失败错误
~~~     若是裸机部署,裸机是宿主机的IP地址+端口号,若是将docker网络改成hosts,也可以注册上并连接通








===============================END===============================


Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart                                                                                                                                                   ——W.S.Landor



来自为知笔记(Wiz)

标签:v05,opt,KuberNetes,运维,spring,eureka,###,euraka,cloud
来源: https://www.cnblogs.com/yanqivip/p/16086441.html