Foundry 워커와 에이전트 워커의 차이 및 전환
Foundry 워커(Foundry worker)는 연결 기능을 Foundry의 컨테이너에서 실행합니다. 에이전트 워커(Agent worker)는 고객이 관리하는 에이전트 호스트에서 실행하는 기존 방식입니다. 에이전트 워커는 기존 기능 유지 단계(Legacy)이며 기존 소스에 대한 지원은 계속 제공하지만, 모든 소스의 권장 실행 방식은 Foundry 워커입니다.
사설 네트워크에 접근할 때 사용하는 에이전트 프록시는 에이전트 워커와 다릅니다. 프록시 방식에서는 에이전트가 네트워크 경로를 제공하고 연산은 Foundry에서 수행합니다.
실행과 운영의 차이
확장성과 격리
Foundry 워커는 연결 기능마다 작업에 맞는 크기의 컨테이너를 사용합니다. 여러 작업이 에이전트의 하나뿐인 JVM 힙을 두고 경쟁하지 않으며, 오래 실행되는 동기화가 짧은 작업의 병렬 실행을 막지 않습니다. 연산 규모를 단일 에이전트 호스트의 자원 한도 대신 개별 작업에 맞추어 확장할 수 있습니다.
업데이트와 안정성
Foundry 워커는 플랫폼의 관리형 연산 환경에서 실행되고 플랫폼과 함께 지속적으로 업데이트됩니다.
에이전트 워커는 고객이 관리하는 호스트에서 실행되며 설정된 업그레이드 시간대에만 갱신할 수 있습니다. 이 시간대는 일반적으로 주 1회이므로 버그 수정과 개선이 도달하는 데 더 오래 걸릴 수 있습니다. 자원 고갈, 운영체제나 JVM의 문제, 호스트의 예정된 중단에도 영향을 받습니다.
Foundry 워커는 연결 기능을 실행하는 경로에서 고객 관리 런타임을 제거하여 이러한 운영 부담을 줄입니다. 프록시 에이전트를 사용하는 경우에도 그 에이전트는 연산 호스트가 아니라 네트워크 프록시로 관리합니다.
기능 지원
가상 테이블, 가상 미디어, 외부 연결 변환과 외부 연결 함수 및 Compute modules에서 소스를 사용하는 기능 등은 에이전트 워커에서 실행하지 않습니다. 새 연결 기능과 지속적인 기능 개발은 Foundry 워커를 대상으로 합니다.
인증 정보의 수명
Foundry 워커는 소스의 인증 정보를 중앙에서 관리합니다. 에이전트를 재할당할 때 비밀 정보를 다시 입력할 필요가 없으며, 에이전트 호스트를 다시 준비해도 인증 정보가 무효화되지 않습니다.
에이전트 워커에서는 인증 정보의 암호화 키가 에이전트 호스트의 디스크에 있고, Foundry 워커에서는 Foundry가 키를 관리합니다. 두 방식 모두 인증 정보를 저장하고 전송할 때 암호화합니다.
네트워크 경로는 어떻게 달라지는가
에이전트 프록시를 사용하는 Foundry 워커에서는 에이전트가 조직 네트워크 안에서 Foundry로 외부 방향 WebSocket 연결을 시작합니다. 원천 시스템으로 들어오는 요청도 조직 내부의 에이전트에서 시작합니다.
따라서 기존 에이전트 워커에서 프록시 방식으로 전환할 때 조직 네트워크에 새 인바운드 경로를 열 필요는 없습니다. 연결 기능의 연산은 Foundry의 작업별 컨테이너로 옮겨집니다.
전환 전 준비
기존 에이전트 기반 소스는 대상 시스템의 위치에 따라 직접 연결 또는 에이전트 프록시를 사용하는 Foundry 워커로 전환할 수 있습니다. 전환 후 문제가 생기면 30일 안에 이전 설정으로 되돌릴 수 있습니다.
시작하기 전에 다음 조건을 확인합니다.
- 소스에 정상 상태의 에이전트가 최소 하나 지정되어 있어야 합니다. 해당 에이전트에서 비밀 정보, 인증서와 필요한 JDBC 드라이버를 가져옵니다.
- 외부 통신 정책을 생성할 권한이 있어야 합니다. Control Panel의 Manage network egress configuration 작업에 접근할 수 있어야 하며, 이 권한은 Information Security Officer 역할에 부여됩니다.
안내 절차로 전환하기
1. 전환 화면 열기
소스의 Connection settings → Connection details에서 Compute: Agent worker를 선택합니다. 열린 창에서 Migrate to Foundry worker를 선택합니다.
2. 전환 개요 확인
전환 단계와 되돌리기 가능 여부를 확인한 뒤 Continue를 선택합니다.
3. 기준 에이전트 선택
현재 소스에 지정된 정상 에이전트를 선택합니다. 이 에이전트는 비밀 정보와 인증서를 Foundry로 복사하고, 현재 구성에 맞는 외부 통신 설정을 제안하는 데 사용됩니다.
선택한 에이전트의 비밀 정보가 Foundry에 저장된다는 확인 항목에 동의해야 합니다.
4. 인증서 복사
Foundry 워커에서는 인증서를 에이전트가 아니라 소스에 직접 적용합니다. 기준 에이전트에서 소스로 옮길 인증서를 선택합니다. 에이전트에 인증서가 없다면 이 단계를 건너뛸 수 있습니다.
5. JDBC 드라이버 선택
소스 유형에 JDBC 드라이버가 필요하다면 기준 에이전트에서 사용할 드라이버를 선택합니다.
6. 외부 통신 정책 지정
Foundry 워커가 대상 시스템에 도달할 수 있도록 직접 연결 또는 에이전트 프록시 외부 통신 정책을 구성합니다.
7. 실행 중인 작업과 되돌리기 조건 확인
전환을 완료하기 전에 다음 영향을 확인해야 합니다.
- 실행 중인 모든 작업이 종료됩니다. 동기화, 내보내기와 Tasks가 포함됩니다.
- 예약된 작업은 다음 예약 시각에 Foundry에서 실행됩니다.
- 예약되지 않은 작업은 수동으로 다시 시작해야 합니다.
- 이전 설정으로 되돌릴 수 있는 기간은 전환 후 30일입니다.
확인을 마친 뒤 Migrate를 선택합니다.
수동 전환
안내 절차 대신 전환 창에서 Switch to Foundry worker manually를 선택할 수도 있습니다. 이 방법은 에이전트의 비밀 정보를 자동으로 옮기지 않으므로 인증 정보를 다시 입력해야 합니다.
30일 안에 에이전트 워커로 되돌리기
- 전환한 소스의 Connection settings → Connection details로 이동합니다.
- Compute 드롭다운에서 Agent worker → Revert를 선택합니다.
- Revert source to Agent worker 창에서 복원에 따른 영향을 확인합니다.
- Revert migration을 선택합니다.
복원하면 인증 정보를 포함한 모든 연결 설정이 전환 전 상태로 돌아갑니다. 전환 이후 설정에 가한 변경은 사라집니다.
예약되지 않은 동기화, 내보내기와 Tasks는 수동으로 다시 시작해야 합니다. 예약된 작업은 다음 실행에서 전환 전 연결 설정을 사용합니다. 단, 전환 이후 성공적으로 시작된 작업은 완료될 때까지 전환된 설정으로 계속 실행합니다.
이전 설정을 복원하는 대신 에이전트 워커 연결을 직접 새로 구성하려면 Switch to connect via Agent worker manually를 선택할 수 있습니다.
전환 중 오류 확인
| 오류 | 확인할 내용 |
|---|---|
Could not resolve type id as a subtype of 'com.palantir.magritte.api.Source' | 필요한 의존성을 찾지 못한 경우입니다. 해당 소스에 필요한 인증서, 프록시와 드라이버를 모두 구성했는지 확인한 뒤 전환을 다시 시도합니다. |
UnknownHostException | 소스에 올바른 외부 통신 정책을 지정했는지, Foundry가 오류에 표시된 엔드포인트에 접근할 수 있는지 확인합니다. |
Driver class not found | JDBC 소스에 올바른 드라이버를 업로드했는지 확인합니다. |
PKIX path building failed | 소스에 올바른 인증서를 추가했는지 확인합니다. |