Spring Cloud [스카이워킹 서비스 환경 구축, 마이크로서비스 접근 스카이워킹 프로브, 도커, 엘라스틱서치 환경 구축] (14)

 

목차

분산 요청 링크 추적_스카이워킹 서비스 환경 구축

분산 요청 링크 추적_마이크로서비스 액세스 스카이워킹 프로브

분산 요청 링크 추적_Docker는 Elasticsearch 환경을 구축합니다. 

분산 요청 링크 추적_SkyWalking은 지속성을 위해 Elasticsearch를 사용합니다. 

분산 요청 링크 추적_SkyWalking 사용자 지정 링크 추적


분산 요청 링크 추적_스카이워킹 서비스 환경 구축

스카이워킹 패키지 다운로드 

SkyWalking 패키지 압축 해제 

tar -zxvf apache-skywalking-apm-es7-8.5.0.tar.gz -C /usr/local/

스카이워킹 패키지 디렉토리 소개

소개하다:

1. webapp: Ul 프런트 엔드의 jar 패키지 및 구성 파일(웹 모니터링 페이지)

2. oap-libs: 백그라운드 애플리케이션의 jar 패키지 및 종속 jar 패키지

3. config: 사용되는 다양한 구성인 백그라운드 애플리케이션을 시작하기 위한 구성 파일

4. bin: 다양한 시작 스크립트, 일반적으로 스크립트 startup.*을 사용하여 웹 페이지 및 해당 백그라운드 응용 프로그램을 시작합니다.

5. 에이전트: 에이전트 서비스 jar 패키지 

포트 번호 수정 

vim /usr/local/apache-skywalking-apm-bin-es7/webapp/webapp.yml 

서비스 시작 

알아채다:

성공적으로 시작되면 skywalking-oap-server와 skywalking-web-ui:8868 두 개의 서비스가 시작됩니다. skywalkng-oap-server 서비스가 시작된 후 두 개의 포트 11800과 12800이 노출되며, 모니터링 데이터 수집을 위한 포트 11800과 프런트 엔드 요청 수락을 위한 포트 12800입니다. 포트를 수정하여 config/applicaiton.yml을 수정할 수 있습니다. 

테스트 서비스

요청 http://192.168.66.100:8068 

 

실시간 효과 피드백

1. 분산 링크 추적 SkyWalking은 UI 서비스 포트 번호를 어떻게 수정합니까_____.

앱케이션.yml

B webapp.yml

C 앱.yml

위의 D는 모두 잘못되었습니다.

2. SkyWalking 분산 링크 추적은 ___ 파일에서 지속 모드를 구성합니다.

케이션.yml

B webapp.yml

C 앱.yml

위의 D는 모두 잘못되었습니다. 

분산 요청 링크 추적_마이크로서비스 액세스 스카이워킹 프로브

데이터를 수집하고 수집기로 보내는 데 사용되는 프로브.

공식 프로브 다운로드 

URL https://skywalking.apache.org/downloads/

 

프로브 파일을 프로젝트에 복사 

프로젝트의 VM 실행 매개변수 수정 

메뉴 표시줄에서 Run -> EditConfigurations ...를 클릭합니다. 여기서는 cloud-gateway-gateway9527 프로젝트를 예로 들어 매개변수를 다음과 같이 수정합니다.

 

매개변수 추가 

java -
javaagent:C:\Users\wangc\IdeaProjects\cloud\agent\skywalking-agent.jar
-DSW_AGENT_NAME=consumer-order
-
DSW_AGENT_COLLECTOR_BACKEND_SERVICES=192.168.66.101:11800

 매개변수:

1. -javaagent: 프로브 경로를 지정하는 데 사용됩니다.

2. -DSW_AGENT_NAME: 서비스 이름

3. -DSW_AGENT_COLLECTOR_BACKEND_SERVICES: 연결 주소

Java 명령줄 시작 방법 

java -javaagent:/path/to/skywalkingagent/skywalking-agent.jar -
DSW_AGENT_NAME=nacos-provider -
DSW_AGENT_COLLECTOR_BACKEND_SERVICES=localhost:11800 -jar yourApp.jar

테스트 모니터링

 

실시간 효과 피드백

1. 마이크로서비스는 ____ 매개변수를 통해 Skywalking 프로브에 액세스합니다.

A -자바패스

B 에이전트

C - 자바에이전트

D-항아리

2. 마이크로서비스는 ____ 매개변수를 통해 Skywalking 서버의 주소를 지정합니다.

A -COLLECTOR_BACKEND_SERVICES 

B -DSW_AGENT__서비스

C -DSW_COLLECTOR_BACKEND_SERVICES

D -DSW_AGENT_COLLECTOR_BACKEND_SERVICES

분산 요청 링크 추적_Docker는 Elasticsearch 환경을 구축합니다. 

이미지 가져오기 

docker pull docker.elastic.co/elasticsearch/elasticsearch:7.1.1

컨테이너 시작

docker run -d --name es -p 9200:9200 -p 9300:9300 -e ES_JAVA_OPTS="-Xms512m -Xmx512m"
-e "discovery.type=single-node"
docker.elastic.co/elasticsearch/elasticsearch:7.1.1

매개변수:

1. -d: 실행 중인 데몬

2. ES_JAVA_OPTS: 힙 메모리 설정

3. discovery.type: 단일 노드 시작 설정

시험

접속주소 : http://192.168.66.101:9200 

분산 요청 링크 추적_SkyWalking은 지속성을 위해 Elasticsearch를 사용합니다. 

config 디렉토리에서 application.yml 수정 

/usr/local/apache-skywalking-apm-bin-es7/config

 

네임스페이스 수정 

ES 데이터 연결 주소 수정 

서비스 재시작 

[root@localhost bin]# ./startup.sh SkyWalking OAP가 성공적으로 시작되었습니다! SkyWalking 웹 애플리케이션이 성공적으로 시작되었습니다!

 

실시간 효과 피드백

1. 분산 링크 추적 Skywalking은 공식적으로 _______ 데이터베이스를 권장합니다.

엘라스틱 서치

비 MySQL

C H2

디 티드 

분산 요청 링크 추적_SkyWalking 사용자 지정 링크 추적

프로젝트의 일부 중요한 메서드가 링크에 추가되지 않았지만 필요한 경우 사용자 지정 링크 추적 범위를 추가할 수 있습니다. 

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.49</version>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.5.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.skywalking</groupId>
            <artifactId>apm-toolkit-trace</artifactId>
            <version>8.5.0</version>
        </dependency>
        <!--数据库连接池 HikariCP-->
        <dependency>
            <groupId>com.zaxxer</groupId>
            <artifactId>HikariCP</artifactId>
            <version>2.7.8</version>
        </dependency>

 구성을 추가할 YML 파일

eureka:
 client:
    # 表示是否将自己注册到Eureka Server
   register-with-eureka: true
    # 示是否从Eureka Server获取注册的服务信息
   fetch-registry: true
    # Eureka Server地址
   service-url:
     defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka
 instance:
   instance-id: payment8003
   prefer-ip-address: true
spring:
 application:
    # 设置应用名词
   name: cloud-payment-provider
  # 数据库配置
 datasource:
   name: sonice1024
   driver-class-name: com.mysql.jdbc.Driver
   url:
jdbc:mysql://192.168.66.101:3306/test?useSSL=false&useUnicode=true&characterEncoding=utf8&useSSL=false&useTimezone=true&serverTimezone=GMT%2B8
   username: root
   password: 123456
   type: com.zaxxer.hikari.HikariDataSource
   hikari:
     minimum-idle: 3
     auto-commit: true
     idle-timeout: 10000
     max-lifetime: 1800000
     connection-timeout: 30000
     connection-test-query: SELECT 1
server:
 port: 8003

기본 시작 클래스 작성

/**
* 主启动类
*/
@EnableEurekaClient
@MapperScan("com.tong.mapper")
@SpringBootApplication
@Slf4j
public class PaymentMain8003 {
    public static void main(String[] args) {
      SpringApplication.run(PaymentMain8003.class,args);
        log.info("********* 服务提供者启动成功******");
   }
}

엔터티 클래스 작성

@Data
public class User {
        private Long id;
        private String name;
        private Integer age;
        private String email;
        
}

UserMapper 쓰기

public interface UserMapper extends BaseMapper<User> {}

UserService 인터페이스 작성

public interface UserService {
    List<User> findByAllUser();
}

인터페이스 구현 클래스 작성

@Service
public class UserServiceImpl implements UserService {
    @Autowired
    private UserMapper userMapper;
    @Trace
    @Override
    public List<User> findByAllUser() {
        return  userMapper.selectList(null);
   }
}

사용자 컨트롤 레이어 작성

@RequestMapping("user")
@RestController
public class UserController {
   @Autowired
   private UserService userService;
   @GetMapping("findByAll")
   public List<User> findByAll(){
       return userService.findByAllUser();
   }
}

테스트 http://localhost:8003/user/findByAll

 

추천

출처blog.csdn.net/m0_58719994/article/details/131926669