본문 바로가기

주피터 노트북에서 conda 가상환경 커널 등록하기 자주 안 쓰니 기록. 뽀인트는 가상환경을 activate한 다음에 ipython을 이용해 kernel 설치를 해야 한다. $ conda activate test (test) $ conda install ipykernel (test) $ ipython kernel install --user --name= (test) $ conda deactivate
220428목 - 맥 M1 에서 오라클 클라이언트 설치하기 맥 ㅋㅋㅋ 이쯤되면 터미널밖에 편한 게 없다.ㅋㅋㅋㅋ 익숙해져가긴 하는데 그래도 윈도우 그리워 ㅋ CPU 칩에 따라 뭐가 또 안 되고 이놈의 맥왕국.. 참조의 첫번째 링크를 따라서 설정했다. rosetta2 를 설치한다 rosetta 터미널 세팅 오라클 클라이언트 다운로드 오라클 폴더 정리 + 환경변수 설정 1. Rosetta 2 설치 터미널에서 다음을 실행 # 라이센스 자동 동의 /usr/sbin/softwareupdate –install-rosetta –agree-to-license 설치가 successful 하다고 뜨는 라인 전에 무슨 에러 문구 같은 게 뜨는데 무시하면 된다. 그거보고 설치 제대로 안 된줄 알고 사방팔방 찾고 난리도 아니었는데..ㅜㅜ 2. rosetta 터미널 세팅 finder 오..
220403일 -JAVA 동작 #1 DevOps 쪽이 Java로 많이 이루어져있다보니 자바 동작원리나 언어를 다시 좀 봐야겠다는 생각이 들었다. JVM OS에 종속받지 않고 CPU가 Java를 인식, 실행할 수 있게 하는 가상 컴퓨터 java 소스코드는 JVM을 통해 어떤 OS든 상관없이 실행할 수 있도록 해줌. java 소스코드(.java) → (JVM이 이해할 수 있는) 자바 바이트코드로 변환(.class) → 이진코드(기계어)로 컴파일 java코드 → (자바 컴파일러=javac.exe) → .class → (JIT) → 기계어 JIT (just-in-time compiler) 프로그램을 실제 실행하는 시점에 기계어로 번역하는 컴파일러 인터프리터 방식 단점을 보완하기 위해 도입. 인터프리터 방식으로 실행하다가 적절한 시점에 바이트 코드..
220403일 - spark numpy import 에러 사실 패키지야 설치하면 그만인데, 진짜 문제는 리눅스 패키지 의존성과 SPARK pandas와 pandas의 구분이었던 것 같다. zeppelin에서 코드를 짜는데 pandas를 발견할 수 없다고 한다. 엥? 싶어서 import pandas를 해봤더니 패키지가 없다네.. 안이..분명히 저번에는 된 걸로 기억하는데 이게 무슨일;-,- spark dataframe에서 pandas 데이터 프레임으로 변환하는 코드. pyspark에 들어가면 pandas 폴더가 있는데 이건 spark dataframe용으로 사용되나보다. %spark.pyspark # create DataFrame from python list. It can infer schema for you. df1 = spark.createDataFrame..
220330수 - airflow 의 시간 관련 설정 그렇지. 배치 스케줄러인데 시간이 중요하지.. 툴의 목적과 그에 따른 중요한 설정이 무엇일까 다시한번 생각하자. logical_date (execution_date) batch 처리를 할 때 윈도우 시작 시간. 배치처리를 할 때 스케줄 간격이 1시간이고 00분에 시작된다고 하면 오후 2:00에 execution_date(logical_date)는 오후 1:00이다. Airflow 시간은 UTC에 맞춰져 있다. 로그 볼 때도 시간대가 UTC였다. 다른 시간대이면 타임존을 넣어서 그 지역의 시간으로 볼 수 있게 해두었다. Airflow는 내부적으로 UTC로 정보를 기록한다. 만약 airflow 시간을 UTC가 아닌 시스템이나 IANA 타임존으로 세팅하면 모든 워커 노드들도 시간세팅을 같이 맞춰줘야 한다.(아..
220327일 - S3에 ES snapshot 올리기 클러스터에서 플러그인 설치 elasticsearch-plugin install repository-s3 -> Installing repository-s3 -> Downloading repository-s3 from elastic [=================================================] 100%?? @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: plugin requires additional permissions @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ * java.lang.RuntimePermission accessDec..
220326토 - 카프카, 주키퍼 설정 “카프카 데이터 플랫폼의 최강자“ 책 참조 주키퍼 주키퍼는 과반수 방식으로 운영되서 홀수로 서버를 구성해야 함 지노드 스냅샷, 트랜잭션 로그, myid 저장 폴더 주키퍼는 별도의 데이터 디렉토리에 지노드의 복사본인 스냅샷과 트랜잭션 로그들을 저장한다. 지노드에 변경사항이 발생하면, 이러한 변경사항은 트랜잭션 로그에 추가됨. 로그가 어느 정도 커지면, 현재 모든 지노드의 상태 스냅샷이 파일시스템에 저장되는 중요한 디렉토리이기 때문에 설치 경로와는 다른 경로로 설정하는 것이 바람직함. ( * 현재 주키퍼 docker 설정도 보면 보통 data 폴더에 로그를 생성하는 것 같다.) 주키퍼 클러스터를 구성할 때, 이 data 폴더에 주키퍼 노드를 구분하기 위한 ID를 생성해야 한다. (myid 라고 부름) zoo..
220327일 - minikube 설치 컨테이너를 많이 올려서 그런지 os(우분투)가 심하게 느려져서 컨테이너와 이미지를 모두 정리했다. 인터넷, 피씨 성능, 방화벽문제인가 두루두루 살펴보다가 대부분 도커작업을 하고 있어서 도커때문에가 싶어서 정리했더니 다시 상태가 좋아졌다. 모니터링할 때 메모리나 CPU 용량에는 크게 문제가 없었는데.. 잘 살다가 갑자기 느려지니 당황스러움. 처음부터 느리던가 그럼..ㅜ 시스템 커멘드 반응은 겁나 느린데 컨테이너에서는 커멘드 반응이 아주 멀쩡한게 왜이런지 궁금했다. (+ 컨테이너를 살펴보는데 metricbeat 때문인 것 같다. 여러 로그를 모니터링하면서 es에 끊임없이 밀어넣고 있는데 metricbeat를 멈추니 커멘드 반응도 정상으로 돌아왔다. 로그용 ES는 따로 서버를 빼는 게 맞구나..) 이미지참조:..