Loading

추출 새로 고침 오류 - "Failed to Upload Extract Folder to File Store: No More Writable Hosts"(추출 폴더를 파일 저장소에 업로드하지 못함: 쓰기 가능한 호스트 더 없음)

게시 일자: Dec 9, 2022
상세 설명

Tableau Server에서 추출을 새로 고칠 때 다음 오류가 발생할 수 있습니다.

File Store: no more writeable hosts.(파일 저장소: 쓰기 가능한 호스트가 더 이상 없습니다.)

Cause

제한적인 리소스와 보안 정책 때문에 작업자 노드의 프로세스가 주 노드의 폴더에 쓸 수 없습니다.

세 번째 원인은 파일 저장소가 사용하는 포트와 다른 포트를 사용하여 백그라운더가 파일 저장소에 연결하려고 하기 때문입니다.
솔루션

옵션 1

파일 저장소 프로세스를 백그라운더 노드에 추가합니다. Logshark와 배포 토폴로지의 디스크 I/O 분석을 검토합니다. 높은 디스크 대기열 길이가 관찰되는 경우, 환경에 파일 저장소 프로세스가 더 필요합니다. 

예: 
사용자가 추가한 이미지

옵션 2

IT 팀과 함께 작업하여 폴더 권한 설정, 방화벽 또는 검사 소프트웨어를 Tableau Server 프로세스가 차단되고 있지 않는지 확인합니다.

옵션 3

다음 절차를 수행하여 사용 중인 포트를 업데이트합니다.
1. 새 포트가 이미 사용 중인지 확인합니다(Linux 예):
     
      sudo netstat -anp | grep 8999

2. 포트가 사용 중이 아니면 파일 저장소 포트를 업데이트합니다.
     
    tsm topology set-ports --node-name node1 --port-name filestore:primary --port-value 8999


 
추가 자원
포트 조정이 필요한지 확인할 수 있게 다음 예를 검토합니다.
백그라운더 로그에서:

2021-04-15 19:13:08.166 +0530 (Default,,,FF27DA817E92483A83261683FD7646AD-1:1,545240,:refresh_extracts,18b6ca0c-cffd-44d5-9311-349faf55bb9b) pool-12-thread-1 backgrounder: ERROR com.tableausoftware.tdfs.client.FileStoreServiceProvider - Failed connection attempt to localhost(2021-04-15 19:13:08.166 +0530 (Default,,,FF27DA817E92483A83261683FD7646AD-1:1,545240,:refresh_extracts,18b6ca0c-cffd-44d5-9311-349faf55bb9b) pool-12-thread-1 backgrounder: ERROR com.tableausoftware.tdfs.client.FileStoreServiceProvider - localhost 연결 시도 실패)
org.apache.thrift.transport.TTransportException: Could not connect to the required filestore.(org.apache.thrift.transport.TTransportException: 필요한 파일 저장소에 연결할 수 없습니다.)
    at com.tableausoftware.tdfs.client.FileStoreServiceProvider.connect(FileStoreServiceProvider.java:224)
    at com.tableausoftware.tdfs.client.FileStoreServiceProvider.lambda$connectWithRetry$1(FileStoreServiceProvider.java:179)
...
Caused by: org.apache.thrift.transport.TTransportException: Could not get a resource from the pool, hostAndPort=localhost:8691(원인: org.apache.thrift.transport.TTransportException: 풀에서 리소스를 가져올 수 없습니다. hostAndPort=localhost:8691)
    at com.tableausoftware.tdfs.client.FileStoreClientPool.getResource(FileStoreClientPool.java:60)
    at com.tableausoftware.tdfs.client.FileStoreServiceProvider.connectToHost(FileStoreServiceProvider.java:444)
    at com.tableausoftware.tdfs.client.FileStoreServiceProvider.connect(FileStoreServiceProvider.java:222)
    ... 65개 더
Caused by: org.apache.thrift.transport.TTransportException: java.net.ConnectException: Connection refused (Connection refused)(원인: org.apache.thrift.transport.TTransportException: java.net.ConnectException: 연결 거부됨(연결 거부됨))
    at org.apache.thrift.transport.TSocket.open(TSocket.java:226)
    at com.tableausoftware.service.thrift.TSocketWithRetry.open(TSocketWithRetry.java:106)
    at com.tableausoftware.tdfs.client.FileStoreClientFactory.makeObject(FileStoreClientFactory.java:42)
    at com.tableausoftware.tdfs.client.FileStoreClientFactory.makeObject(FileStoreClientFactory.java:32)
    at org.apache.commons.pool2.impl.GenericKeyedObjectPool.create(GenericKeyedObjectPool.java:1041)
    at org.apache.commons.pool2.impl.GenericKeyedObjectPool.borrowObject(GenericKeyedObjectPool.java:357)
    at org.apache.commons.pool2.impl.GenericKeyedObjectPool.borrowObject(GenericKeyedObjectPool.java:279)
    at com.tableausoftware.tdfs.client.FileStoreClientPool.getResource(FileStoreClientPool.java:57)
    ... 67개 더
Caused by: java.net.ConnectException: Connection refused (Connection refused)(원인: java.net.ConnectException: 연결 거부됨(연결 거부됨))
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:607)
    at org.apache.thrift.transport.TSocket.open(TSocket.java:221)
    ... 74개 더

2021-04-15 19:13:08.370 +0530 (Default,,,,545240,:refresh_extracts,18b6ca0c-cffd-44d5-9311-349faf55bb9b) pool-12-thread-1 backgrounder: WARN  com.tableausoftware.model.workgroup.workers.RefreshExtractsWorker - |status=ExtractTimingFailure|jobId=545240|jobLuid=18b6ca0c-cffd-44d5-9311-349faf55bb9b|siteName="Default"|workbookName="Digital Showroom Live Data Tracking"|refreshedAt="2021-04-15T11:33:54.702Z"|sessionId=FF27DA817E92483A83261683FD7646AD-1:1|scheduleName="DS Live Data Schedule"|scheduleType="FullRefresh"|jobName="Refresh Extracts"|jobType="RefreshExtracts"|totalTimeSeconds=778|runTimeSeconds=774|queuedTime="2021-04-15T13:30:09.940Z"|startedTime="2021-04-15T13:30:13.541Z"|endTime="2021-04-15T13:43:08.368Z"|correlationId=127|priority=1|serialId=716557653|extractsSizeBytes=0|jobNotes="java.lang.Exception: Failed to upload extract folder '/var/opt/tableau/tableau_server/data/tabsvc/temp/backgrounder_1.20201.20.0220.1252/tdfs7208069647451346869/{FC59A67E-6548-4122-8569-AF424449AF6B}' to File Store: no more writable hosts"(2021-04-15 19:13:08.370 +0530 (Default,,,,545240,:refresh_extracts,18b6ca0c-cffd-44d5-9311-349faf55bb9b) pool-12-thread-1 백그라운더: WARN  com.tableausoftware.model.workgroup.workers.RefreshExtractsWorker - |status=ExtractTimingFailure|jobId=545240|jobLuid=18b6ca0c-cffd-44d5-9311-349faf55bb9b|siteName="기본"|workbookName="디지털 쇼룸 라이브 데이터 추적"|refreshedAt="2021-04-15T11:33:54.702Z"|sessionId=FF27DA817E92483A83261683FD7646AD-1:1|scheduleName="DS 라이브 데이터 일정"|scheduleType="FullRefresh"|jobName="추출 새로 고침"|jobType="RefreshExtracts"|totalTimeSeconds=778|runTimeSeconds=774|queuedTime="2021-04-15T13:30:09.940Z"|startedTime="2021-04-15T13:30:13.541Z"|endTime="2021-04-15T13:43:08.368Z"|correlationId=127|priority=1|serialId=716557653|extractsSizeBytes=0|jobNotes="java.lang.Exception: Failed to upload extract folder '/var/opt/tableau/tableau_server/data/tabsvc/temp/backgrounder_1.20201.20.0220.1252/tdfs7208069647451346869/{FC59A67E-6548-4122-8569-AF424449AF6B}' 추출 폴더를 파일 저장소에 업로드하지 못했습니다. 쓰기 가능한 호스트가 더 이상 없습니다.")
java.lang.RuntimeException: java.lang.Exception: Failed to upload extract folder(java.lang.RuntimeException: java.lang.Exception: 추출 폴더 업로드 실패) 


workgroup.yml 파일 저장소에서 포트 8478이 사용됩니다. tsm topology list-ports | findstr filestore
filestore.port: 8478을 통해 이를 확인할 수도 있습니다.
Knowledge 기사 번호

001534189

 
로드 중
Salesforce Help | Article