Metering 설치 가이드

Table of Contents

1. 문서 개요

2. Abacus 배포

3. API 호출

Deprecated

※ 본 문서는 PaaS-TA 5.0 이하의 버전까지 지원한다.

1. 문서 개요

본 문서(node.js API 서비스 미터링 애플리케이션 개발 가이드)는 파스-타 플랫폼 프로젝트의 미터링 플러그인과 Node.js API 애플리케이션과 연동하여 API 서비스를 미터링하는 방법에 대해 기술 하였다.

1.1 범위

본 문서의 범위는 파스-타 플랫폼 프로젝트의 Node.js API 서비스 애플리케이션 개발과 CF-Abacus 연동에 대한 내용으로 한정되어 있다. (CF-Abacus 1.1.5 작성됨)

2. Abacus 배포

2.1 배포 전제 조건

이 가이드는 ubuntu16.04 및 로컬 설치를 기준으로 작성되어 있다.

  • Paas-TA가 로컬에 설치 되어 있어야 한다.

  • CF가 로컬에 설치 되어 있어야 한다.

  • CF-Cli 가 로컬에 설치 되어 있어야 한다.

  • 설치 패키지가 로컬에 설치 되어 있어야 한다.

2.2 필수 프로그램 설치

</br>

  • Node.js와 npm은 같이 설치된다

  • CF-Abacus 1.1.5 기준으로 node =>8.1.0 이상

이름

버전

NPM

8.10.0 이상, 9.0.0 이하

Node.js

5.0.0 이하

Yarn

1.2.1 이상

</br>

2.3 Cf-Abacus 다운로드

2.4 Node.js 설치 순서

2.3 MongoDB,RabbitMQ 설치

※ abacus 데이터 저장소로 MongoDB를 사용하며, RabbitMQ를 통하여, 메시지 분산처리를 지원한다. ※ abacus 데모를 실행하기 위해서는 MongoDB, RabbitMQ를 설치 해야 한다. ※ CF-Abacus 1.1.5부터는 Docker를 사용하여, 별도의 설정없이 MongoDB, RabbitMQ 설치를 지원한다.

Docker 설치

MongoDB , RabbitMQ 실행

2.4 UAA 계정 등록

CF 설치한 abacus에서 CF의 앱 사용량 정보를 수집하기 위해서 CF 접근을 위한 계정 및 토큰을발급 받아야 한다. 또한 보안 모드로 abacus를 배포한 경우, abacus 컴포넌트간의 데이터 전송을 위한 계정을 등록해야 한다.

UAA 클라이언트 설치

CF-Abacus 설치를 위한 Token 추출

CF-Abacus 설치를 위한 UAA 클라이언트

2.5. Abacus 배포를 위한 조직 및 영역 설정

2.6. cf-abacus 배포

Abacus 기능 개요

형상

설명

abacus-usage-collector

CF 앱 사용량 수집기

abacus-usage-reporting

Abacus가 수집/집계한 미터링 정보에 사용자의 요청에 맞게 보고한다.

abacus-usage-meter

수집한 CF 앱 사용량의 집계를 위해 미터링 정보를 가공한다.

abacus-usage-accumulator

수집한 CF 앱 사용량 정보를 계정/조직/영역/앱 별로 누적한다.

abacus-usage-aggregator

누적한 CF 앱 사용량 정보를 계정/조직/영역/앱 별로 집계한다.

abacus-service-bridge

CF와 연동하여 서비스 사용량 정보를 수집한다.

abacus-application-bridge

CF와 연동하여 앱의Container 사용량 정보를 수집한다.

abacus-provisioning-plugin

Abacus의 각 기능에서 수집/누적/집계에 필요한 메타 정보를 제공한다.

abacus-account-plugin

앱의 계정 정보 조회 및 유효성 체크를 수행한다.

abacus-eureka-plugin

Netflix의 Eureka 시스템과 연동하여 Abacus 앱의 분산 처리 서비스를 제공한다.

abacus-cf-renewer

수집된 데이터를 날짜 유형으로 데이터를 이관한다.

abacus-broker

수집/누적/집계에 필요한 메타 정보를 입력할 수 UI 서비스를 제공하는 브로커이다.

abacus-services-dashboard

수집/누적/집계에 필요한 메타 정보를 입력할 수 UI 서비스이다.

abacus-healthchecker

Abacus 서비스들의 상태를 체크한다.

abacus-housekeeper

Abacus 서비스들의 상태를 관리한다.

wget을 통해 CF-Abacus를 다운 받는다.

Abacus와 연동할 DB 및 Secure 정보 설정

Abacus 빌드

Abacus 배포 전 불필요 서비스 설치 제한

Abacus 배포

3. API 호출

설치된 CF-ABACUS에 대한 데이터 호출 방법을 설명한다.

3.1 Token 생성

3.2 paasta-usage-repoting 데이터 추출

추가적인 정보를 취득하기 위해서는, 참조 : https://github.com/cloudfoundry-incubator/cf-abacus API : https://github.com/cloudfoundry-incubator/cf-abacus/blob/master/doc/api.md

Last updated

Was this helpful?