ablecloud-team / ablestack-monitor

ABLESTACK HCI 및 Baremetal 환경의 인프라에 대한 모니터링 플랫폼을 개발하기 위한 리파지터리
Apache License 2.0
0 stars 3 forks source link

[버그] 모니터링 구성 전 Netdive 실행되는 문제 #93

Closed stardom3645 closed 9 months ago

stardom3645 commented 1 year ago

이슈 타입

컴포넌트 이름

ABLESTACK 버전

ABLESTACK-Cerato

구성

OS / 환경

CentOS 8.5 2111

이슈 내용

netdive agent service를 enable하는 단계를 삭제하고 모니터링을 구성하는 단계에서 하도록 합니다.

현재 monitor 소스에서는 config_netdive.py 파일에서 netdive agent service를 enable하는 명령어를 추가합니다.

재현 과정

소스 변경 예제
```
def SendCommandToHost(cube):
    netdive_yml_path = '/usr/share/ablestack/ablestack-netdive/'
    result_code_list = []
    # 오류 발생할 경우, 3번 재시도 합니다.
    tries = 3
    for j in range(tries):
        for i in range(len(cube)):
            stringCube = ''.join(cubeServiceConfig(cube)[i])
            rc_one = call(["scp -q -o StrictHostKeyChecking=no " + netdive_yml_path + "netdive.yml root@" + stringCube + ":" + netdive_yml_path], universal_newlines=True, shell=True, env=env, stdout=subprocess.DEVNULL, stderr=subprocess.STDOUT)
            rc_two = call(["ssh -o StrictHostKeyChecking=no root@" + stringCube + " 'systemctl restart netdive-agent.service'"], universal_newlines=True, shell=True, env=env, stdout=subprocess.DEVNULL, stderr=subprocess.STDOUT)
            rc_three = call(["ssh -o StrictHostKeyChecking=no root@" + stringCube + " 'systemctl enable netdive-agent.service'"], universal_newlines=True, shell=True, env=env, stdout=subprocess.DEVNULL, stderr=subprocess.STDOUT)
            result_code_list.append(rc_one)
            result_code_list.append(rc_two)
            result_code_list.append(rc_three)
        if all(0 == x for x in result_code_list):
            result = 200
        else:
            result = 500
        if result == 500:
            if j < tries - 1:
                continue
            else:
                raise
        break
    return result
```

기대한 결과

모니터링 구성단계에서 최초 netdive 서비스 시작

실제 결과

`systemctl enable netdive-agent` -> 추가