Jost Do It.

그냥 IT해.

반응형

서버 및 환경 60

[Docker] 스크립트 변경 내용이 컨테이너에 적용되지 않을 때

1. 개요도커 컴포즈를 통해 컨테이너를 실행하는 환경에서 일부 서비스의 스크립트 내용이 변경돼 컨테이너를 재실행하였다.docker compose downdocker compose up하지만 변경된 스크립트 내용들이 컨테이너에 반영되지 않고, 여전히 이전 스크립트 내용으로 실행되는걸 확인하였다. 아래 명령어로 이미지를 재빌드를 해도 변경된 스크립트 내용은 반영되지 않았다.docker compose build --no-cache 2. 원인도커는 이미지를 생성하고, 그 이미지를 통해 컨테이너를 실행한다.그리고 컨테이너를 재실행하면 기존 이미지를 재사용해 컨테이너를 다시 생성한다.도커의 이미지 목록은 다음 명령어로 확인할 수 있다.docker image ls  만약 기존 서비스 내용들에서 변경이 생긴다면 doc..

[Kafka] 클라이언트와 서버간 time zone 문제 (Negative message latency=-32376435 ms)

개요카프카에서 다음과 같은 로그내용이 작업간격마다 발생하는 문제가 발생했습니다.카프카에는 로그 cleaner가 동작해 해당 로그내용들이 일정주기마다 제거되고 있었지만, 도커 내부 컨테이너에서 해당 로그들이 따로 저장돼 문제가 발생했습니다.로그가 초마다 수백개씩 쌓여 하루에 GB단위의 로그가 축적되고 있었고, 발견했을 때는 디스크 용량을 거의 잠식한 상태였습니다 (TB단위).도커 log configuration을 수정해 쌓이는 로그 크기를 조절할 수도 있지만, 근본적으로 위 문제가 발생하는 원인을 파악하고 해결하는 것을 우선합니다.원인This is a log message indicating a warning about a negative message latency of -32389513 millisec..

[Ubuntu] apt 업데이트 후 ssh 접속이 안되는 문제 (No supported authentication methods available)

[상황]Ubuntu의 패키지 업데이트 후에 ssh 접속이 안되는 문제가 발생했다.ssh 접속 시 기존에는 계정과 비밀번호, OTP를 입력해 접속했었는데, 비밀번호 입력 전에 다음 에러 메시지가 발생했다. No supported authentication methods available (server sent: publickey)  [원인]우분투 패키지들을 업데이트 하면서 sshd 설정 파일 내용이 초기화 돼 있었다.  [해결 방법]기존 내용과 같이 설정 파일을 업데이트해주고 데몬을 재실행하면 된다.1. ssh 데몬 관련 파일을 오픈sudo vi /etc/ssh/sshd_config 2. 기존 로그인 옵션 파라미터 재설정PasswordAuthentication noPermitEmptyPassword noU..

[GPT] 배치작업 시 Validating 상태에서 stuck될 때

배치 작업이란?OpenAI에서는 컴퓨팅 리소스를 절감하기 위해서 실시간 응답이 필요하지 않은 고객들에게 배치작업을 제공한다.배치 작업은 보통 24시간 내에 응답이 오는 것을 보장하며, OpenAI에서 컴퓨팅 리소스가 여유로울 때 작업이 되는걸로 알려져 있다.응답이 늦는 대신 OpenAI에서는 배치작업을 이용하는 고객에게 API 이용비를 50% 깎아준다. 문제 상황보통 batch 작업을 하면 해당 배치 상태는 status 항목에서, 배치가 얼마나 작업되었는지 request_count를 통해 확인할 수 있다. 지금까지는 batch 사이즈(쓰레드 생성 수)와 상관없이 몇 분 내외로 status가 In progress 으로 변경되고, request_count를 통해 전체 작업량 대비 진행된 작업 현황을 파악할 ..

[gitlab] gitlab runner의 permission denied 문제

상황Ubuntu에서 정상적으로 동작하던 ci script가 CentOS 환경에서는 permission denied 가 발생했다.  원인 Ubuntu에서는 디렉터리 읽기 권한이 있어 해당 디렉터리에 접근이 가능했지만, CentOS에서는 권한이 없어 접근이 거부된 것이다.  확인 과정은 아래와 같다.우선 .gitlab-ci.yml 파일에 echo $(whoami) 명령어를 통해 해당 스크립트를 실행하는 주체가 누구인지 파악했다.gitlab-runner 라는 유저로 runner가 실행되는걸 확인할 수 있다.  gitlab-runner 유저의 정보를 확인해보자.gitlab-runner는 자기자신 외의 다른 그룹에는 속해있지 않다.  Ubuntu 환경에서는 cd가 문제없었기 때문에 각 경로의 권한 확인을 진행했다..

[FastAPI] 딕셔너리 내 null 값을 return 하는 법

상황사내 API에서는 요청 쿼리의 결과 값에 wrapper를 씌워서 아래와 같이 내부 정의 응답코드, 요청 url 쿼리, data 등을 출력한다.  즉, 실제 결과는 data 파라미터에 딕셔너리 형태로 출력되는데, 여기서 data에 null 출력을 위해 nan, None 값이 포함되면 다음 에러가 발생한다.Traceback (most recent call last): File "/home/mining/projects/finance_advisor/some_money/somemoney_api_server/somemoney_api_server/sub_noAuth.py", line 215, in api_middleware response = await call_next(request) File "/ho..

[gitlab] detected dubious ownership in repository at {경로} 문제 (git config --global 옵션으로 해결 안될 때)

상황gitlab runner 업그레이드 이후 ci/cd 과정에서 아래와 같은 에러가 발생했다.  커맨드와 스택오버플로우의 조언대로 아래 두 명령어를 사용해봤으나 동일한 에러가 계속 발생했다.git config --global --add safe.directory /home/mining/dockerfiles/clickhousegit config --global --add safe.directory '*'  소유권 에러 발생 원인우선 해당 에러는 git을 업데이트하면서 보안정책이 변경돼 발생한다.기존 git은 아래 두가지의 취약점이 존재했다.1. Window에서 git 사용 시 dll 확장자 파일이 git uninstall을 강제실행할 수 있는 문제2. 프로젝트들 경로 상위에 .git 폴더 생성 시 하위 프..

[gitlab] server certificate verification failed 해결 (SSL 인증 문제)

문제 상황사내 gitlab 서버를 이전하면서 git 관련 명령(fetch, pull 등)을 하면 아래와 같이 server의 인증서 검증에 실패했다는 메시지가 발생했다.git fetch>> fatal: unable to access 'https://gitlab.xxxx.com/financial_backend/us_stock_processing/': server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none  그리고 해당 도메인으로 POST 명령 시에도 Peer's Certificate issuer is not recognized. 에러 메시지가 발생한다.curl -v https://gitlab..

반응형