1. Aria AutomationOrchestrator Workflow
Orchestrator의 기능인 Workflow/Action을 이용하면 Aria automation에서 관리되는 리소스를 조작하는 작업을 수행할 수 있습니다. 일종의 Function처럼 특정 기능을 정의하고, 리소스가 배포되기 전, 후 등 적절한 위치에 배치시켜 실행 시 킬 수 있습니다. 다음과 같이 설치 시 기본적으로 내장되어 있는 Workflow를 볼 수 있습니다. 하지만 모든 workflow가 바로 실행시킬 수 있는 것은 아니고, 실행되기 위한 플러그인이나, 패키지 설치 등이 필요할 수 있습니다.
저는 Workflow를 이용하여 가상머신에 설치 된 DB에 접근해, 쿼리를 동작시키기 위해 JDBC 태그로 저장되어 있는 Workflow를 사용하려 했지만, 다음과 같이 Connection에서 드라이버 설치가 안되어있다고 오류가 발생하였습니다.
하지만 동일한 Workflow에서 접속 정보를 PostgreSQL로 변경 시 정상 동작하는 것을 확인 하였습니다. 향후 디버깅 하며 생각하는 것은, Aria Automation에서 DB로 PostgreSQL를 사용하고 있어 JDBC가 기본적으로 설치되어있기 때문에 동작하는 것으로 생각됩니다.
2. JDBC 추가
JDBC 추가하는 방법은 공식 Docs에도 해당 내용이 존재하고, 작업이 크게 어려워 보이지 않습니다.
하지만 해당 방법은 Orchestrator가 Stand Alone 모드로 설치 되었을 경우의 가이드기 때문에 vCenter로 Aria Stack을 구성한 경우는 해당 방법을 사용하기 어렵습니다. 저는 다음과 같은 방법으로 JDBC를 추가하였습니다.
2-1 JDBC 다운
우선 추가하기 위한 JDBC를 다운 받습니다. 저는 Mysql을 추가하기 위해 Oracle에서 Jar파일을 다운로드하였습니다. 공식 홈페이지에서 Platform Independent
를 선택 후 압축을 풀면 Jar 파일이 다운로드 됩니다.
2-2 Aria Server 접속
Aria Stack이 설치되어 있는 서버로 접속합니다. vCenter에서 접속한 경우 쿠버네티스 위에서 설치되기 때문에 다음과 같이 Aria 관련 파드가 떠있는 것을 확인할 수 있습니다.
해당 파드 중 Orchestrator 관련 파드는 vco-app으로 kubectl get po - l app=vco-app -n prelude
커맨드를 통해 확인 할 수 있습니다.
해당 파드를 조회하면 다음과 같이 HostPath 볼륨으로 Orchestrator 관련 데이터를 저장하고 있는 것을 확인 할 수 있습니다.
설치된 쿠버네티스 클러스터의 경우 minikube나 kind와 같은 단일 클러스터로 보입니다. 해당 서버에서 볼륨 위치로 이동시 데이터를 확인 할 수 있습니다. 저는 해당 경로에 데이터를 설치된 Jar 파일을 /data/vco/usr/lib/vco/plugins
경로에 넣었습니다.
이후 /data/vco/usr/lib/vco/app-server/conf/vmo.properties
파일에 다음 내용을 추가해 connector 파일을 인식할 수 있도록 설정합니다.
o11n.plugin.SQL.classpath=/usr/lib/vco/plugins/SQL/lib/mysql-connector-j-8.2.0.jar
다만 중요한 점은 해당 경로는 파드 내 에서의 경로이기 때문에 서버에 저장된 경로와 잘 구분해서 작성해야 됩니다.
2-3 재시작 및 확인
설정 후 Rollout을 통해 파드를 재기동하면 설정이 완료됩니다.
재기동이 완료된 후 Workflow를 실행시키면 정상적으로 MySQL과 통신할 수 있는 것을 확인할 수 있습니다.
'Cloud' 카테고리의 다른 글
AWS API Gateway Custom domain 설정 (0) | 2023.12.13 |
---|---|
AWS API Gateway - Lambda 통합 (0) | 2023.12.13 |
Aria Automation에서 쿠버네티스 관리 (1) | 2023.11.02 |