Commit bc78522d authored by JooHan Hong's avatar JooHan Hong

Kafka Producer 배포 시 Ansible pause module 적용

parent c1452ba6
Pipeline #5744 passed with stages
in 1 minute and 5 seconds
......@@ -6,7 +6,7 @@ Kafka에서의 `Producer는 메시지를 생산하는 주체`로서, 일반적
# Telegraf Producer 구성
Overview에서 명시했지만, 일반적으로 Producer 개발을 통해 생산해야 하지만, Telegraf에서는 이 Producer를 Plugin 형태로 기본 제공한다.
Overview에서 명시했지만, 일반적으로 Producer 개발을 통해 생산해야 하지만, Telegraf에서는 이 Producer를 Plugin 형태로 기본 제공 한다.
1. Telegraf의 플러그인 지원 확인
......@@ -49,3 +49,61 @@ Overview에서 명시했지만, 일반적으로 Producer 개발을 통해 생산
상기와 같이 정상적으로 생산되는 것을 확인할 수 있다.
# Telegraf Ansible 배포 이슈
현재 모니터링 시스템의 데이터 수집은 다음과 같다.
* 단일 시스템에 대한 리소스를 수집 한다.
* 특정 `Farm` (또는 `Group`)에 대한 `집계`도 수행 한다.
따라서 Ansible의 **병렬 host 수행 동작**(`Telegraf 재기동`)에 대한 대량의 작업 시 Fram 또는 Group의 리소스가 순차적으로 누락되는 이슈가 발생된다. 따라서 시간이 좀 소요되더라도, 리소스 수집에 대한 누락이 발생되면 안되기 때문에 다음과 같이 **pause 모듈**을 통해 이를 개선 한다.
* Telegraf 설정 변경에 대한 Task의 내용 이다.
```python
---
- name: Get telegraf version
yum: list=telegraf
register: telegraf_info
- name: set telegraf version
set_fact:
telegraf_version: "{{ telegraf_info|json_query(jsonquery)|first }}"
vars:
jsonquery: "results[?yumstate=='installed'].version"
- debug:
var: telegraf_version
- name: Set base config
template :
src: "telegraf.conf.j2"
dest: "{{ telegraf_config_file }}"
owner: "{{ telegraf_owner }}"
group: "{{ telegraf_group }}"
- name: Set dynamic tags
template:
src: "telegraf_env.conf.j2"
dest: /etc/default/telegraf
owner: root
group: root
mode: 0644
notify:
- Restarted telegraf
- name: Pause for 5 minutes to Ansible Host
pause:
minutes: 5
```
아래의 Task가 바로 호스트 별로 5분 간 멈춤을 의미 한다.
```plain
pause:
minutes: 5
```
위의 Playbook의 적용 결과, **리소스에 대한 누락이 발생되지 않았다**.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment