PutSFTP 프로세서

PutSFTP 프로세서

PutSFTP는 FlowFile을 SFTP 서버로 보내는 OpenFlow 프로세서예요.

출처: Snowflake 문서

본문

이 프로세서는 일반 사용 가능(Generally Available) 상태예요. OpenFlow Snowflake 배포는 AWS, Azure, GCP 상용(Commercial) 리전의 모든 계정에서 사용할 수 있고, OpenFlow BYOC 배포는 AWS 상용 리전의 모든 계정에서 사용할 수 있어요. Bundle org.apache.nifi | nifi-standard-nar 설명 FlowFile을 SFTP 서버로 보내요. Tags archive, copy, egress, files, put, remote, sftp 입력 요구 사항 필수(REQUIRED) 민감 동적 속성 지원 아니요(false)

속성 (Properties)

속성 설명
Algorithm Negotiation SSH 알고리즘 협상의 구성 전략이에요.
Batch Size 단일 연결로 보낼 FlowFile의 최대 개수예요.
Ciphers Allowed SFTP 연결에 허용되는 암호(Cipher)의 쉼표로 구분된 목록이에요. 비워두면 모두 허용해요. 가능한 옵션: 3des-cbc, aes128-cbc, aes128-ctr, [email protected], aes192-cbc, aes192-ctr, aes256-cbc, aes256-ctr, [email protected], arcfour128, arcfour256, blowfish-cbc, [email protected], none.
Conflict Resolution 파일 이름 충돌 문제를 처리하는 방법을 결정해요.
Connection Timeout 연결을 만드는 동안 타임아웃되기까지 기다리는 시간이에요.
Create Directory 원격 디렉터리가 없을 때 만들어줄지 여부를 지정해요.
Data Timeout 로컬과 원격 시스템 사이에서 파일을 전송할 때 시스템 사이에 데이터가 전송되지 않은 채 허용되는 시간을 지정해요.
Disable Directory Listing 'true'로 설정하면 누락된 디렉터리를 만들기 전에 디렉터리 목록을 수행하지 않아요. 기본적으로 이 프로세서는 누락된 디렉터리를 만들기 전에 대상 디렉터리가 있는지 확인하기 위해 디렉터리 목록 명령을 실행해요. 하지만 다음과 같은 경우 디렉터리 목록을 비활성화해야 할 수도 있어요. 일부 권한 설정(예: chmod 100)에서는 디렉터리 목록이 실패할 수 있어요. 또한 다른 SFTP 클라이언트가 이 프로세서의 목록 수행 이후, 디렉터리 생성 요청 완료 전에 디렉터리를 만들었다면 디렉터리가 이미 존재하므로 오류가 반환돼요.
Dot Rename true면 보낸 파일의 이름 앞에 '.'을 붙였다가 파일이 완전히 전송된 후 원래 이름으로 되돌려요. 그렇지 않으면 이름 변경이 없어요. Temporary Filename 속성이 설정되면 이 속성은 무시돼요.
Host Key File 제공되면 해당 파일이 Host Key로 사용돼요. 그렇지 않고 'Strict Host Key Checking' 속성이 적용되면(true) ~/.ssh 디렉터리의 'known_hosts'와 'known_hosts2' 파일을 사용하고, 그 외에는 host key 파일이 사용되지 않아요.
Hostname 원격 시스템의 정규화된 호스트명 또는 IP 주소예요.
Key Algorithms Allowed SFTP 연결에 허용되는 키 알고리즘의 쉼표로 구분된 목록이에요. 비워두면 모두 허용해요. 가능한 옵션: ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521, rsa-sha2-256, rsa-sha2-512, ssh-dss, ssh-ed25519, ssh-rsa 등을 포함한 표준 키 알고리즘.
Key Exchange Algorithms Allowed SFTP 연결에 허용되는 키 교환 알고리즘의 쉼표로 구분된 목록이에요. 비워두면 모두 허용해요. curve25519-sha256, diffie-hellman-group-exchange-sha256, diffie-hellman-group14-sha256, ecdh-sha2-nistp256 등을 포함해요.
Last Modified Time 파일을 전송한 뒤 할당할 lastModifiedTime이에요. 설정하지 않으면 lastModifiedTime은 바뀌지 않아요. 형식은 yyyy-MM-dd'T'HH:mm:ssZ여야 해요. ${file.lastModifiedTime} 같은 Expression Language를 사용할 수도 있어요. 값이 유효하지 않아도 프로세서가 invalid가 되진 않지만 파일의 lastModifiedTime은 바뀌지 않아요.
Message Authentication Codes Allowed SFTP 연결에 허용되는 메시지 인증 코드(MAC)의 쉼표로 구분된 목록이에요. 비워두면 모두 허용해요. hmac-sha1, hmac-sha2-256, hmac-sha2-512 등을 포함해요.
Password 사용자 계정의 비밀번호예요.
Permissions 파일을 전송한 뒤 할당할 권한이에요. 형식은 거부된 권한 대신 '-'를 쓴 UNIX rwxrwxrwx(예: rw-r--r--) 또는 8진수(예: 644)여야 해요. 설정하지 않으면 권한은 바뀌지 않아요. ${file.permissions} 같은 Expression Language를 사용할 수도 있어요.
Port 파일 전송을 위해 원격 시스템이 수신 대기하는 포트예요.
Private Key Passphrase 개인 키의 비밀번호예요.
Private Key Path 개인 키 파일의 정규화된 경로예요.
Reject Zero-Byte Files 0바이트 파일을 전송 시도 없이 거부할지 여부를 결정해요.
Remote Group 파일을 전송한 뒤 파일에 설정할 Group ID를 나타내는 정수값이에요. 설정하지 않으면 그룹은 설정되지 않아요. ${file.group} 같은 Expression Language를 사용할 수도 있어요. 값이 유효하지 않아도 프로세서가 invalid가 되진 않지만 파일의 그룹은 바뀌지 않아요.
Remote Owner 파일을 전송한 뒤 파일에 설정할 User ID를 나타내는 정수값이에요. 설정하지 않으면 소유자는 설정되지 않아요. ${file.owner} 같은 Expression Language를 사용할 수도 있어요. 값이 유효하지 않아도 프로세서가 invalid가 되진 않지만 파일의 소유자는 바뀌지 않아요.
Remote Path 파일을 가져오거나 보낼 원격 시스템의 경로예요.
Send Keep Alive On Timeout 전체 25초 타임아웃을 위해 5초마다 최대 5회 Keep Alive 메시지를 보내요.
Strict Host Key Checking host 키의 엄격한 검증을 적용할지 여부를 나타내요.
Temporary Filename 설정하면 전송 중 보내는 파일의 이름은 지정한 값과 같고, 성공적으로 완료된 후 원래 파일 이름으로 바뀌어요. 이 값이 설정되면 Dot Rename 속성은 무시돼요.
Use Compression 파일을 전송할 때 ZLIB 압축을 사용할지 여부를 나타내요.
Username 사용자 이름이에요.
proxy-configuration-service 네트워크 요청을 프록시할 Proxy Configuration Controller Service를 지정해요.

관계 (Relationships)

이름 설명
failure 원격 시스템으로 보내지 못한 FlowFile이에요. 보통 failure는 이 프로세서로 다시 루프백돼요.
reject 대상 시스템이 거부한 FlowFile이에요.
success 성공적으로 보내진 FlowFile이 success로 라우팅돼요.

더 알아보기 (Learn more)