본문 바로가기
VMware

[빌링자동화] rvtools merge

by 도경다경 2023. 1. 3.
반응형

업무가 바빠서 여기에 얼마나 시간을 쏟을 지는 모르겠다.

 

회사 환경이 테스트하기 어려워서 집에서 묵히고 있던 서버를 꺼냈다.

2core 16GB라는 허접한 스팩이지만 테스트 환경으로 돌릴거니까 노상관.

(디스크는 거의 12TB 정도라 빵빵하다. 심지어 Mirror 구성)

 

외부에서 접속하기 위해 port forwading 구성하려고 했는데, 초장부터 막힌다.

Gateway 모드 통신사 모뎀과 개인 공유기에 중복해서 port forwarding 하면 동작하지 않는다.

 

외부 회선 - 통신사 모뎀 - 개인 공유기 - OS

                           |

                    셋톱박스

 

보통 이런식으로 구성할 건데

통신사 모뎀이 bridge 모드가 아닐 경우 개인공유기는 사설 IP를 갖게 된다.

개인공유기에서는 DDNS 설정이 안...ㅠㅠ

 

외부 회선에 개인 공유기를 물리고 통신사 모뎀을 제외하면...

아마 셋톱박스가 안될거다 아마도...

 

중간에 bridge 모드 스위치를 한개 두면 해결된다고 하는데

일단 스위치가 있는지 물어보는게 먼저 아니냐...

 

쉬운 방법은 서버에 Chrome Remote Desktop, Teamviewer 같은걸 설치하면 되는데

이렇게 하면 방법은 쉬울 수 있으나, GUI로 접근하는 거라 끊기거나 불편함이 발생한다.

 

뭔가를 시도하다가 막히니까 도전정신이?! 이걸?!

 

vCenter와 ESXi 정보만 한군데에서 취합하면 일거리가 대폭 줄어든다.

 

다행히 지금도 rvtools 로 작업을 단순히 하고는 있는데

개별 vCenter 정보, ESXi 정보를 xlsx로 저장해서 수작업으로 합치고 있다.

(버근지 모르겠지만 vCenter 별로 동일한 스크립트로 수집해도 컬럼 위치가 변경돼서 뭔가 스마트한 방법이 필요하다.)

 

스크립트는 다음과 같다.

 

================================================================================

set YEAR=%date:~0,4%

set MONTH=%date:~5,2%

set DAY=%date:~8,2%

set TODAY=%YEAR%%MONTH%%DAY%

 

set RVTOOLS_PATH="c:\progrom files(x86) ~~~~"

set TARGET_VCENTER=x.x.x.x

set ID=hello

set PASSWORD=world

set LOG_DIR="d:\imsi"

set LOG_FILE=LOG_%TODAY%.xlsx

 

%RVTOOS_PATH%\rvtools.exe -s %TARGET_VCENTER% -u %ID% -p %PASSWORD% -c ExportALL2xlsx -d %LOG_DIR% -f %LOG_FILE%

================================================================================

 

여기서 -c 옵션을 변경하면 csv로도 받을 수 있으나, csv 로 받으면 로그 파일명과 관계 없이 각 항목들이 개별 csv 파일로 다운되므로 가급적 xlsx로 다운받는다.

 

귀찮으니 하나로  merge 할 수 있는 방법을 찾았다.

 

rvtools는 3.11 버전부터 RVtoolsMergeExcelFiles.exe 라는 Merge 툴을 제공한다.

사용법은 다음과 같다.

 

RVToolsMergeExcelFiles.exe   -input file_a;file_b;file_c   -output file_x   [-template file_t] [-overwrite] [-verbose]

-input                  full path to input xlsx file(s)

-output                full path to output xlsx file

-template            full path to template xlsx file

-overwrite           overwrite output file if it exists

-verbose             display informational messages

 

이렇게만 해도 작업 시간을 매월 2시간 이상은 줄인 것 같다.

이제 이렇게 만든 xlsx 파일을 postgresql로 저장하는 방법을 찾아 봐야한다.

 

 

 

반응형

댓글