본문 바로가기

error31

[k8s] Failed to contact API server when waiting for CSINode publishing: Get https://1.1.1.1:6443/apis/storage.k8s.io/v1/csinodes/k8s-server: x509: certificate has expired or is not yet valid 오류 처리 방법 k8s 서버의 노드 상태가 NotReady 가 되어서 원인을 확인해 보니 kubelet 에서 오류가 발생하고 있었습니다. k8s 서버에서 다음과 같은 오류가 발생하면 k8s 서버가 사용하는 인증서를 갱신해 주어야 합니다. Failed to contact API server when waiting for CSINode publishing: Get https://1.1.1.1:6443/apis/storage.k8s.io/v1/csinodes/k8s-server: x509: certificate has expired or is not yet valid 인증서의 위치는 /etc/kubernetes/pki 입니다. 이 위치에 있는 인증서를 최신버전으로 변경해 주면 됩니다. - 인증서 위치: /etc/kuberne.. 2023. 2. 16.
[yarn] 커버로스 적용된 nodemanager에서 Linux Container Executor reached unrecoverable exception 오류 노드매니저가 Linux Container Executor reached unrecoverable exception 오류를 출력하면서 UNHEALTHY 상태로 들어가는 경우가 있습니다. 이 경우 실행된 컨테이너가 35번 오류를 출력하면서 종료 되었을 때 발생합니다. 다음과 같이 오류일 가능성이 있으므로 지속적으로 발생한다면 패치를 하거나, 버전을 올려야 합니다. 우선은 간단하게 캐쉬 파일 위치를 삭제하고, 재부팅하는 것으로 문제를 해결할 수 있습니다. https://issues.apache.org/jira/browse/YARN-9833 [YARN-9833] Race condition when DirectoryCollection.checkDirs() runs during container launch - A.. 2022. 11. 16.
[yarn] InvalidResourceRequestException: Invalid resource request, requested memory < 0, or requested memory > max configured, requestedMemory=-1, maxMemory=102400 에러 하둡에서 mapreduce를 이용해서 작업을 진행할 때 다음과 같은 오류가 발생하면서 작업이 진행되지 않을 때가 있습니다. 2022-11-07 17:55:58,250 INFO [RMCommunicator Allocator] org.apache.hadoop.mapreduce.v2.app.rm.RMContainerAllocator: Before Scheduling: PendingReds:0 ScheduledMaps:12 ScheduledReds:0 AssignedMaps:0 AssignedReds:0 CompletedMaps:0 CompletedReds:0 ContAlloc:0 ContRel:0 HostLocal:0 RackLocal:0 2022-11-07 17:55:58,270 ERROR [RMCommun.. 2022. 11. 9.
[hadoop] ha 하둡 실행 시 java.lang.IllegalStateException: Could not determine own NN ID in namespace 'ha-hadoop'. Please ensure that this node is one of the machines listed as an NN RPC address, or configure dfs.ha.namenode.id 오류 처리 HA 하둡에서 네임노드 실행시 다음과 같은 오류가 발생하는 경우가 있습니다. 22/08/20 12:11:24 INFO namenode.NameNode: registered UNIX signal handlers for [TERM, HUP, INT] 22/08/20 12:11:24 INFO namenode.NameNode: createNameNode [-bootstrapStandby, -force] 22/08/20 12:11:24 ERROR namenode.NameNode: Failed to start namenode. java.io.IOException: java.lang.IllegalStateException: Could not determine own NN ID in namespace 'ha-hadoo.. 2022. 8. 21.
[hive] 하이브 3.1.3 버전에서 java.lang.ClassCastException: org.apache.hadoop.hive.metastore.api.StringColumnStatsData cannot be cast to org.apache.hadoop.hive.metastore.columnstats.cache.StringColumnStatsDataInspector 오류 Hive 3.1.3 테이블에 데이터를 쓰고, 칼럼 stat 을 계산할 때 다음과 같은 오류가 발생하였습니다. 2022-08-16T16:25:52,536 ERROR [pool-9-thread-44] metastore.RetryingHMSHandler: java.lang.ClassCastException: org.apache.hadoop.hive.metastore.api.StringColumnStatsData cannot be cast to org.apache.hadoop.hive.metastore.columnstats.cache.StringColumnStatsDataInspector at org.apache.hadoop.hive.metastore.columnstats.merge.StringColumnSta.. 2022. 8. 19.
[hive] hive standalone metastore 에서 Drop Partition 처리시 Caused by: java.lang.UnsupportedOperationException 오류가 발생하는 경우 하이브 스탠드얼론 메타스토어(apache-hive-metastore-3.1.2-bin) 에서 파티션 DROP 시점에 다음과 같은 오류가 발생하였습니다. Caused by: java.lang.UnsupportedOperationException at org.apache.hadoop.hive.metastore.DefaultPartitionExpressionProxy.convertExprToFilter(DefaultPartitionExpressionProxy.java:34) at org.apache.hadoop.hive.metastore.PartFilterExprUtil.makeExpressionTree(PartFilterExprUtil.java:50) at org.apache.hadoop.hive.metas.. 2022. 8. 2.
[hdfs] 하둡 2.10.0 버전에서 데이터 노드를 재시작할 때 발생하는 java.io.IOException: Failed to start sub tasks to add replica in replica map :java.lang.ArithmeticException 오류 해결 방법 하둡 2.10.0 버전에서 데이터 노드를 재시작할 때 다음과 같은 오류가 발생하였습니다. 여러 대의 노드에서 동일한 작업을 진행하였는데 하나의 노드에서만 이런 문제가 발생하였습니다. 2022-07-05 15:15:19,119 INFO org.apache.hadoop.hdfs.server.datanode.fsdataset.impl.FsDatasetImpl (Thread-83): Caught exception while adding replicas from /hadoop/hdfs/data/current. Will throw later. java.io.IOException: Failed to start sub tasks to add replica in replica map :java.lang.Arithmeti.. 2022. 7. 6.
[openstack] 오픈스택 VM 생성 중 unexpected state 'ERROR', wanted target 'ACTIVE'. last error: %!s(<nil>) 오픈스택 VM 생성 중에 이런 오류가 발생해서 VM 생성이 안되는 경우 서버의 오류 메세지를 확인하여 원인을 확인할 수 있습니다. 아래의 "No valid host was found. There are not enough hosts available" 경우 VM을 생성할 수 있는 자원이 부족하여 발생하였습니다. 에러의 원인을 파악하여 문제를 해결후 VM을 다시 생성하면 됩니다. $ openstack server show [VM ID] +-----------------------------+--------------------------------------------------------------------------------------------------------------------------.. 2021. 12. 18.
[hive] hive3의 mr 엔진에서 java.lang.IncompatibleClassChangeError 오류 처리 하이브3에서 mr 엔진을 이용할 때 java.lang.IncompatibleClassChangeError 오류가 발생할 수 있습니다. 라이브러리가 맞지 않아서 발생하는 문제입니다. jersey-json-1.19.jar 라이브러리를 하이브 홈으로 복사합니다. jersey-json 라이브러리를 확인 {HADOOP_HOME}/share/hadoop/common/lib/jersey-json-1.19.jar {HIVE_HOME}/lib 로 복사 hive (default)> show databases; FAILED: Hive Internal Error: java.lang.IncompatibleClassChangeError(com.sun.jersey.json.impl.provider.entity.JSONRootEle.. 2021. 5. 27.
[hive] hive3에서 TEZ 연동시 java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument 오류 처리 하둡3, 하이브3에서 TEZ를 연동할 때 라이브러리가 맞지않아서 NoSuchMethodError 가 발생합니다. 하둡3는 guava가 27버전이고, 하이브3는 guava가 19버전이라서 발생합니다. 따라서 라이브러리를 맞춰주면 문제가 해결됩니다. hadoop 3.2.1 guava-27.0 hive 3.1.2 guava-19.0 해결방법 {HIVE_HOME}/lib/guava-19.0.jar 삭제 {HADOOP_HOME}/share/hadoop/common/lib/guava-27.0-jre.jar 를 {HIVE_HOME}/lib/ 에 복사 2021. 5. 27.
[hadoop] distcp 중 Failed to renew token: Kind: SWEBHDFS delegation 오류 해결 방법 하둡 distcp 에서 이런 오류가 발생하면 다음의 설정을 추가합니다. 커버러스 적용된 하둡 클러스터간에 위임 토큰을 처리하지 못해서 발생하는 오류입니다. -Dmapreduce.job.hdfs-servers.token-renewal.exclude=server 21/03/04 18:17:19 ERROR tools.DistCp: Exception encountered java.io.IOException: org.apache.hadoop.yarn.exceptions.YarnException: Failed to submit application_1609849426446_23330 to YARN : Failed to renew token: Kind: SWEBHDFS delegation, Service: 10.0... 2021. 3. 7.
[hive] Caused by: org.apache.hive.com.esotericsoftware.kryo.KryoException: Unable to find class: column_name 오류 해결 방법 문제 하이브 작업중 다음과 같은 오류가 발생하였습니다. 하이브 테이블의 파티션 정보를 읽어오는 중에 문제가 발생한 것으로 생각되는데 클래스를 보면 kyro.util 관련 클래스를 사용하고 있습니다. 이는 spark에서 사용하는 클래스로 버그로 인해서 문제가 발생하고 있고, 하이브 작업에서 단독으로 작업을 할 때는 필요하지 않습니다. Serialization trace: partSpec (org.apache.hadoop.hive.ql.plan.PartitionDesc) aliasToPartnInfo (org.apache.hadoop.hive.ql.plan.MapWork) at org.apache.hadoop.hive.ql.exec.Utilities.getBaseWork(Utilities.java:463) .. 2020. 10. 12.
[GCP] 구글 클라우드 스토리지 AccessDeniedException: 403 Insufficient Permission GCP에서 구글 스토리지에 파일을 복사할 때 아래와 같이 권한 부족으로 파일 복사가 되지 않을 때가 있습니다. 이 경우 해당 서버에 설정된 구글 클라우드 계정에 해당 버켓의 권한이 없기 때문입니다. $ gsutil cp ./sample.file gs://sample-raw-bucket/sample.file Copying file://./sample.file [Content-Type=application/octet-stream]... AccessDeniedException: 403 Insufficient Permission 현재 서버의 계정 확인 현재 서버에 설정된 계정은 gcloud auth list 명령으로 확인할 수 있습니다. 저의 경우는 계정이 설정되어 있지 않아서 오류가 발생하였습니다. 계정이 설.. 2020. 7. 24.
[gcp] gsutil에서 AuthorizationHeaderMalformed 오류 해결 방법 gsutil을 이용하여 s3에 접근할 때 다음의 AuthorizationHeaderMalformed 오류가 발생하는 경우가 있습니다. REST API를 이용한 호출에서 HTTP헤더의 정보에 오류가 있을 때 발생합니다. 아래의 오류는 S3의 region을 확인하지 못해서 발생하는 오류입니다. us-east-2에 접근해야 하는데 us-east-1에 접근하여 해당 오류가 발생하였습니다. $ gsutil ls s3://sample-bucket/ BadRequestException: 400 AuthorizationHeaderMalformed AuthorizationHeaderMalformedThe authorization header is malformed; the region 'us-east-1' is wron.. 2020. 7. 15.
[oozie] E0701: XML schema error, cvc-complex-type.2.4.c 오류 해결 방법 우지에서 워크플로우를 실행할 때 다음의 오류가 발생하는 경우가 있습니다. Because E0701 : E0701: XML schema error, cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'hive'. 원인 이는 워크플로우 XML이 스키마에 맞게 정상작으로 생성되지 않은 경우에 발생합니다. 우지 버전과 xml의 네임스페이스에 선언한 액션의 버전에 따라 사용할 수 있는 엘리먼트가 정해져 있기 때문에 우지의 버전에 따라 스키마를 잘 선택해야 합니다. 워크플로우에 적용한 스키마 버전과 현재 작성한 XML의 내용을 확인하여 수정해야 합니다. 2019. 12. 11.
[spark] Exception in thread "main" java.sql.SQLException: No suitable driver 오류 해결 방법 스파크 SQL에서는 JDBC 드라이버를 이용해서 데이터베이스에 접근할 때 다음과 같은 오류가 발생하는 경우가 있습니다. 에러 로그 19/11/12 03:07:36 INFO StateStoreCoordinatorRef: Registered StateStoreCoordinator endpoint Exception in thread "main" java.sql.SQLException: No suitable driver at java.sql.DriverManager.getDriver(DriverManager.java:315) at org.apache.spark.sql.execution.datasources.jdbc.JDBCOptions$$anonfun$6.apply(JDBCOptions.scala:105) at.. 2019. 11. 13.
[oozie][hive][log4j] ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console. 오류 해결 방법 우지를 이용해서 액션을 실행할 때 다음과 같이 log4j 설정 정보를 찾지 못해서 기본설정으로 작업하여 에러로그만 출력하는 경우가 있습니다. 이때는 로그설정 파일을 우지 액션에서 함께 전달하면 됩니다. SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/mnt/yarn/filecache/56/log4j-slf4j-impl-2.6.2.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/usr/lib/hadoop/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLogger.. 2019. 10. 31.
[spark] AWS EMR에서 Caused by: java.lang.ClassNotFoundException: org.apache.kafka.common.serialization.ByteArrayDeserializer 오류 발생시 해결 방법 AWS-EMR 에서 카프카와 스파크를 연동할 때 다음의 오류가 발생하면 kafka-client jar 파일을 추가해 주면 됩니다. scala> val query = df.writeStream.outputMode("append").format("console").start() java.lang.NoClassDefFoundError: org/apache/kafka/common/serialization/ByteArrayDeserializer at org.apache.spark.sql.kafka010.KafkaSourceProvider.createSource(KafkaSourceProvider.scala:74) at org.apache.spark.sql.execution.datasources.DataSource.. 2019. 10. 14.
[spark] <console>:23: error: overloaded method value option with alternatives: 오류 스파크를 스파크 쉘(spark-shell)을 이용하여 처리할 때 카프카와 연동할 때 다음의 오류가 발생하는 경우가 있습니다. scala> val df = spark.readStream.format("kafka").option("kafka.bootstrap.servers=localhost:9092").option("subscribe=test").load() :23: error: overloaded method value option with alternatives: (key: String,value: Double)org.apache.spark.sql.streaming.DataStreamReader (key: String,value: Long)org.apache.spark.sql.streaming.DataS.. 2019. 10. 14.
[error] error: command 'gcc' failed with exit status 1 오류 파이썬으로 airflow 설치중 다음과 같은 오류가 발생하였습니다. gcc는 GNU Compiler Collection으로 프로그램을 설치할 때 빌드를 위해서 필요합니다. 오류 L_LINUX=1 -DPSUTIL_ETHTOOL_MISSING_TYPES=1 -I/usr/include/python3.6m -c psutil/_psutil_common.c -o build/temp.linux-x86_64-3.6/psutil/_psutil_common.o unable to execute 'gcc': No such file or directory error: command 'gcc' failed with exit status 1 해결방법 yum -y install gcc 2019. 9. 10.
[hive] 쿼리 실행중 MetaException 발생시 오류 처리 쿼리 실행중 MetaException이 발생하는 경우가 있습니다. 메타스토어에서 쿼리상의 테이블 정보를 조회하는 과정에서 오류가 발생하여 출력됩니다. 이때 hive CLI 상에서는 MetaException의 쿼리만 확인이 가능하기 때문에 확인이 힘든 경우가 많습니다. 따라서 이경우에는 메타스토어의 로그를 확인하면 정확한 오류을 확인할 수 있습니다. 이번에 발생한 오류는 다음과 같았습니다. 2018-11-30T05:19:09,495 ERROR [main([])]: ql.Driver (SessionState.java:printError(1097)) - FAILED: SemanticException MetaException(message:Exception thrown when executing query : .. 2018. 12. 4.
[hive] rank() 함수 처리중 Caused by: org.apache.hive.com.esotericsoftware.kryo.KryoException: java.lang.IndexOutOfBoundsException hive 쿼리중 rank() 함수를 이용하였는데 다음과 같은 오류가 발생하였다. json을 UDTF를 이용하여 변환하는 함수 였는데 오류가 발생하였다. 그래서 cbo를 false 로 설정했더니 처리 되었다. explain 으로 확인결과 Reduce 단계가 하나 빠진것이 해결된 것 같다. 정확한 원인은 알 수 없으나 검색결과는 bug 일 가능성도 있는 것 같다. 혹시 모르니 cbo 를 false 로 설정해보길 권한다. set hive.cbo.enable=false; Caused by: java.lang.RuntimeException: Failed to load plan:org.apache.hive.com.esotericsoftware.kryo.KryoException: java.lang.IndexOutOf.. 2018. 4. 9.
[oozie] 워크플로우의 액션에 오류가 발생하면 retry 하게 설정 하기 우지의 워크플로우 액션에서 오류가 발생하면 자동으로 재작업 하게 하는 기능은 다음과 같이 retry-max, retry-interval을 이용하여 설정한다. runDate=${runDate} 워크플로우의 태그에서는 어디에서나 동작하지만 oozie-site.xml 에 설정된 오류에 대해서만 동작한다. (oozie-default.xml 참고) oozie.service.LiteWorkflowStoreService.user.retry.error.code = JA008, JA009, JA017, JA018, JA019, FS009, FS008 따라서 액션 내부적으로 발생하는 오류에 대해서는 동작하지 않을 수도 있다. 이럴때는 다음의 설정에 오류코드를 추가하면 우지가 자동으로 retry 를 수행한다. oozie.s.. 2017. 12. 22.
[hive][error] hive로 MR 작업중 Illegal mix of collations A and B for operation '=' ... 오류 하이브 처리중 다음과 같은 오류가 발생할 때가 있다. Caused by: org.mariadb.jdbc.internal.util.dao.QueryException: Illegal mix of collations (latin1_bin,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation '='at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.getResult(AbstractQueryProtocol.java:479)at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.executePreparedQuery(AbstractQueryProtocol.ja.. 2017. 4. 11.
[python][error] PermissionError: [Errno 13] Permission denied: ... PermissionError: [Errno 13] Permission denied: 파이썬에서 파일을 오픈하려고 할때 위와 같은 오류가 발생할 때가 있다. 이오류는 다음의 경우에 발생한다. - 파일을 오픈할 수 있는 권한이 없을때.- 파일이 아니라 폴더를 지정했을 때.- 파일이 없을때 경험상 폴더를 지정하는 경우가 많았던것 같다. 경로를 확인해보자. 2017. 1. 23.
[hive][error] SemanticException Column "칼럼명" Found in more than One Tables/Subqueries SemanticException Column "칼럼명" Found in more than One Tables/Subqueries 하이브에서 다음과 같은 오류가 발생하는 원인은 조인 테이블이나 서브쿼리의 테이블에 동일한 이름의 칼럼이 있기 때문이다. 이럴때는 테이블의 얼라이어스를 이용하여 어느 테이블의 칼럼인지 명확하게 제시해 주어야 한다. SELECT a.column1, b.column1 FROM aTable a LEFT OUTER JOIN bTable b ON a.column1 = b.column1; 2017. 1. 6.
[hive][error] msck repair table 처리시 오류 수정 하이브에서 EXTERNAL 설정으로 생성한 테이블에 디렉토리에 파일을 추가하고 테이블의 파티션 추가를 위해서 "repair table" 명령을 사용하여 처리할 수 있다. 그런데 Hive 1.3 버전 이상에서는 파티션에 허용되지 않는 문자가 있는 디렉토리에 한해서 예외를 반환할 수도 있다. 이럴 때는 다음의 설정을 추가하고 호출하면 된다. set hive.msck.path.validation=ignore;MSCK REPAIR TABLE table_name; 스택오버플로우 - http://stackoverflow.com/questions/40043986/hdinsight-hive-msck-repair-table-table-name-throwing-error하이브문서(Recover Partition 참조) -.. 2016. 12. 20.
[hive][error] java.io.IOException: Not a file 하이브에서 다음과 같이 지정한 경로에 파일이 존재하지 않으면 다음과 같은 오류가 발생한다. Launching Job 1 out of 1Number of reduce tasks is set to 0 since there's no reduce operatorjava.io.IOException: Not a file: hdfs://경로at org.apache.hadoop.mapred.FileInputFormat.getSplits(FileInputFormat.java:286) 이럴때는 지정한 경로 하위의 디렉토리까지 읽을 수 있게 지정하면 된다. 다음의 프로퍼티를 설정하면 된다. SET mapred.input.dir.recursive=TRUE; 2016. 12. 1.
bash 스크립트의 set -e 옵션 이용시 주의 사항 배쉬 스크립트를 사용할 때 set -e 옵션을 이용하여 스크립트 실행 중 오류가 발생하면 종료하게 설정이 가능하다. #!/bin/bash set -e 위와 같이 설정하여 사용한다. 에러가 나면 종료된다고 해서 잘쓰고 있었는데 사용에 주의해야 할 점이 하나있다. * 그리고 외국사이트를 검색해보니 사용을 추천하지 않더라. set -e의 경우 명령어를 실행한 리턴코드가 0이 아니면 프로그램을 종료하게 된다. 따라서 grep 같은 경우에 반환하는 값이 없으면 오류가 발생한 것이 되서 프로그램이 종료된다. 프로그램이 어떻게 실행되었는지 확인하기 위해서 grep 을 사용하여 단순 로그를 출력하는 프로그램을 작성했는데grep의 반환결과가 없어서 프로그램이 종료되어 버렸다. set -e 옵션을 이용하여 프로그램의 에러.. 2016. 1. 25.
[하둡/AWS/오류] 우지와 하둡 연동중 발생하는 Could not find or load main class 오류 AWS에서 우지와 하둡 연동중 다음과 같은 오류가 발생할 경우 Error: Could not find or load main class org.apache.hadoop.mapreduce.v2.app.MRAppMaster 이는 우지에서 지정한 클래스패스와 하둡이 사용하는 클래스패스의 경로가 달라서 그렇다. 따라서 EMR의 하둡에 설정된 yarn-site.xml 의 내용에서 yarn.application.classpath 를 복사하여 우지의 설정에서 하둡으로 전달하는 yarn-site.xml 을 수정한다. source(emr) : hadoop/conf/yarn-site.xml target(oozie) : oozie/conf/hadoop-conf/yarn-site.xml 참고 2015. 8. 21.