전체 글
-
Package 'python-virtualenv' has no installation candidate 오류GCP/error 2023. 7. 28. 12:52
필자는 ubuntu(20.04)에서 파이썬 가상 환경을 설치하다가 많은 오류를 만났었다. 이에 대한 대처 방안에 대하여 기록하려고 한다. 1. python-virtualenv 가 설치 후보군에 없다고 나올 때, (Package python-virtualenv is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source E: Package 'python-virtualenv' has no installation candidate ) 이때는 먼저, sudo apt-get update &..
-
32bit 와 64bit의 차이점Computer Science 2023. 7. 26. 13:09
필자는 32bit 와 64bit의 차이점에 대해 자세히 알지 못했다. 그저 bit 라는 것이 2진수? 라는 생각과 bit를 수용할 수 있는 용량이 더 커지는 것의 차이라고 생각하여 메모리 차이라고 했다. -> 정말 정말 광범위하게 보면 맞을 수도 있지만 정확하게 맞지는 않았다. 그래서 이 궁금증을 해소하고자 찾아보았다. 1. bit의 정의 bit = binary digit의 약자, binary 즉 0과1로만 표기하는 이진수를 의미, digit 는 자릿수를 의미 결과적으로 비트의 나열로 모든 것을 표현한다. 1byte = 8bit bit== 최소 단위 기억! 2. 32bit와 64bit의 차이점 32bit, 64bit는 컴퓨터의 프로세서, 즉 cpu가 정보를 처리하는 방식을 나타낸다. 다시 말해서 64bi..
-
CS (computer science) 가 중요한 이유 - feat.비전공자를 위해Computer Science 2023. 7. 21. 20:07
필자는 우연한 경험으로 CS의 중요성에 대해 알게 되었다. 물론 정보처리기사 = CS 지식이라고 생각했으나, 비전공자로써 부족한 점이 많다는 것을 깨달았다. 개발을 시작함에 있어서 가장 기초 지식에 대하여, 오늘부터 하나씩 기록하려고 한다. 오늘의 주제는 int형 즉 정수형의 범위는 어디까지 일까? 그리고 int형의 범위를 아는 것이 왜 중요할까? 에 대해서 알아보자. 그렇다면, int형은 어디에 사용되는 것일까? 바로 돈이란 연관되어 있다. 금융 및 블록체인? 전자상거래 등등 대부분에 사용될 것이다. int형의 범위 : -2,147,483,648 ~ 2,147,483,647 (=2**31 -1) 범위는 위와 같고, 만약 저 범위를 벗어나면 오버플로우가 된다. 그렇다면 정수 오버플로우란? 정수값이 증가하..
-
쿠버네티스 - init container만들기Kubernetes/kubectl 시작 2023. 7. 13. 20:58
이번에는 init container에 대해 알아보자 init container란? → init container가 성공 하면 main container를 실행함! init container란? 앱 컨테이너 실행 전에 미리 동작 시킬 컨테이너 본 container가 실행되기 전에 사전 작업이 필요할 경우 사용 초기화 컨테이너가 모두 실행된 후에 앱 컨테이너를 실행 초기화 컨테이너와 일반 컨테이너 차이점! 초기화 컨테이너는 항상 완료를 목표로 실행됨 각 초기화 컨테이너는 다음 초기화 컨테이너가 시작되기 전에 성공적으로 완료되어야 함. → 만약 파드의 초기화 컨테이너가 실패 → kubelet은 초기화 컨테이너가 성공할 때 까지 반복적으로 재시작함 아래 도메인을 이용하여 컨테이너 예시를 사용해보자! https:..
-
쿠버네티스 self-healing-pod 실제 구현하기Kubernetes/kubectl 시작 2023. 7. 13. 10:41
이 전에는 self-healing-pod에 대한 개념에 대해 정의해보았다. 실제로 pod를 생성할 때, self-healing 조건을 기입하고, 작동하는지 알아 보자 1. webserver-pod.yaml (nginx) 파일을 복사한다. 대신에 이름에 liveness 넣어서 새로 만들어 준다. 2. pod-nginx-liveness.yaml 파일을 수정함 - liveness 조건을 추가 3. 헷갈리지 않게 기존의 pod가 필요 없다면 kubectl delete pod —all 을 통해 모두 제거함 -> 제거하지 않을 경우, 이름이 같아서 create에서 오류 발생 가능성 높음 4. kubectl create -f pod-nginx-liveness.yaml → 로 실행함 → 여기서 필자의 경우 오류가 났음..
-
쿠버네티스 - self-healing pod 만들기Kubernetes/kubectl 시작 2023. 7. 12. 22:27
조금 늦게 올리는 쿠버네티스 ㅠ7ㅠ livenessprobe를 이용해 self-healing pod 만들기! pod 가 계속 시행할 수 있음을 보장 pod의 spec에 정의 → web 서비스에 80 port로 / 에 주기적으로 접속 → 응답이 잘 나오면, 잘 실행되고 있음을 확인(running 확인) [liveness probe의 매커니즘 ] - 3가지 방법 1. httpGet probe : 지정한 ip주소, port, HTTP에 GET 요청을 보내, 해당 컨테이너가 응답하는 지를 확인한다. 변환 코드가 200이 아닌 값이 나오면 오류, 컨테이너를 다시 시작함 livenessProbe: httpGet: path: / port: 80 → nginx 서버에서 http—:80 로 접속하여 주기적으로 / (ro..
-
fatal: detected dubious ownership in repository at '/home/project/~~' 오류가 발생할 때Backend/형상관리 2023. 7. 7. 10:53
필자는 GCP VM에 github에 올려두었던 batch 소스 파일을 clone 하였다. 배포는 잘 되었지만, 다시 git pull을 할 때 아래와 같은 오류가 발생하였다. 이것을 해결 하기 위해 구글링을 하였고, 해결 방법으로는 git config --global --add safe.directory [프로젝트 경로] 위와 같이 경로 설정을 해주어야 한다!!! 필자의 경우 오류 마지막 부분을 보녕 config ~~ 이렇게 하라는 명령어를 볼 수 있다. -> 고대로 복사해서 입력한 뒤, git pull을 한다. 완전하게 git pull이 잘 된 것을 볼 수 있다!
-
Github - repository에 로컬 소스 코드 연결하기Backend/형상관리 2023. 7. 5. 11:45
필자는 앞전에 access token을 발행 했다. 이를 이용하여, 로컬에서 개발한 batch 소스 코드를 원격 저장소에 연결하도록 하겠다. 1. 먼저 github에서 repositroy를 먼저 생성한다. -> 이것은 개인이 하고 싶은 대로 생성하면 된다. 2. 로컬 소스 코드로 가서 git init 명령어를 기입한다. 만약 README.md가 미리 있다면, git add README.md 도 기입한다. 3. 만약 git config의 유저가 본인의 계정으로 등록되어 있지 않다면 등록해준다 관련 명령어는 github 공식 홈페이지에서 확인 가능하다. https://docs.github.com/ko/get-started/getting-started-with-git/setting-your-username-i..