전체 글 77

[vscode]ec2 인스턴스 내부 vscode로 컨트롤하기

ec2 인스턴스를 만들고 접속하게되면 ssh 로 로컬 터미널에서 접속 하게된다. 기본적으로 cli 환경에 익숙해져야 하는 큰 이유 중 하나. 그러든 말았든 나는 파일을 여러개 왔다갔다 편집해야하니까 햇병아리에겐 어렵다. vscode는 gui로 편집할 수 있는 점이 장점. 터미널 작업해야하는 윈도우 유저는 개빡치는데.. 인스턴스 접속 퍼블릭 IPv4 DNS 주소를 복사 vscode 접속 VS code내에서 remote -SSH 확장자를 설치한다. 설치완료하면 왼쪽 밑에 파란 바람개비가 나온다 바람개비를 누르고 connect current window to Host를 누르면 이런 화면이 뜬다. host Name 에 아까 인스턴스에서 복사했던 PUBLIC ip4 dns 를 붙여넣고, user ubuntu id..

그 외 메모 2022.05.15

[AWS][EC2] 초기설정 명령어

EC2 인스턴스는 가장 처음 생성하면 당연히 깡통 있는 것 git 하나 뿐이다. 그럼 작업을 하기위한 설정들이 조금 필요하다. 순서대로 복붙! node & npm 설치 과정 $ sudo apt-get install build-essential libssl-dev $ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash $ source ~/.bashrc $ nvm install 16.15.0 #이건 내가 글을 쓰는 시점에서 그냥 최신 각자 알아서 curl 설치 과정 $ sudo apt install curl $ curl -sL https://deb.nodesource.com/setup_14.x | sudo -..

Infra & DevOps/AWS 2022.05.15

[Linux] 시스템 모니터링

1. 시스템 모니터링 리눅스로 기본적인 로컬의 상태들을 확인하고 컨트롤 할 수 있어야 한다. 1-1) 명령어 uname 시스템과 커널의 정보를 확인 -a 옵션을 사용하면 커널 이름, 노드 이름, 커널 릴리즈, 커널 버전, 프로세서, 하드웨어 플랫폼, 운영 체제 정보 출력 top 전체 프로세스가 OS에 대해서 리소스를 어느정도 차지하고 있는가 출력 요약 영역에 나타나는 대표적인 내용은 시간, 유저, 로드 애버리지(Load Average), CPU가 수행하는 작업의 양을 순서대로 1분, 5분, 15분 간격의 평균값으로 표시 태스크(Tasks), ==process, 현재 프로세스들의 상태를 나타내주는 영역 CPU, CPU가 어떻게 사용되고 있는지 그 사용률, 유저 영역, 커널 여역, 우선순위 설정 등, 각 영..

CS/운영체제 2022.05.13

[Linux]환경변수&bash 스크립트

1. 환경변수 환경변수란, 프로세스가 컴퓨터에서 동작하는 방식에 영향을 미치는, 동적인 값들의 모임. 출처는 위키백과 이름 그대로 변수는 변수인데, os가 프로세스들을 생성할 때 참조하는 변수다. 더 쉽게 프로그램을 실행시킬 때 필요한 변수. export 이미 설정된 환경변수 확인 export [변수명]="[값]" 등호 표시 앞뒤로 공백 x 특히 path 설정시 중요 단, 이렇게 export로 줘버리면 시스템 재부팅, 로그아웃시 환경변수 값이 사라짐. 매번 다시 할당 필요 1-1) 환경변수의 영구 적용 ~/.bashrc 파일을 열어서 마지막줄에 원하는 동작을 추가 vscode 를 사용한다는 가정하에, 편집기 열어서 수정하는 명령어 code ~/.bashrc 해당 변수명의 값을 알려줌 echo $[값을 알..

CS/운영체제 2022.05.13

[Linux]nohup

1. nohup no hang up 리눅스, 유닉스에서 .sh 파일을 데몬형태로 실행시키는 프로그램 ✨ nohup으로 실행시키면 nohup.log 생성 데몬(daemon) 이란 서비스의 요청에 대해 응답하기 위해 오랫동안 실행중인 백그라운드(background) 프로세스. 유닉스(리눅스 포함) 운영체제에서 이름이 "d"로 끝나는 프로세스들이 대표적인데 inetd, httpd, nfsd, sshd, named와 lpd, containerd 등이 있다. d가 데몬을 뜻함. 2. 명령어 $nohup [실행하고싶은 프로그램 명령어] 단, nohup으로 실행시킬 파일은 반드시 chmod 755 how to redirection $nohup [실행하고싶은 프로그램 명령어] > [표준 출력을 쓰고싶은 파일명] 리다이..

CS/운영체제 2022.05.13

[Prometheus]모니터링 방식

질문정리 Q1. 모니터링 시스템에는 메트릭 수집을 위한 두가지 방식의 메커니즘이 존재합니다. 바로 Pull 방식과 Push 방식입니다. 프로메테우스는 어떤 방식의 메커니즘을 사용하나요? 또한 Pull 방식과 Push 방식은 어떻게 다르며, 장단점은 무엇인지, 또한 해당 방식을 사용하는 모니터링 도구는 어떤 것들이 있는지 연구해보세요. A. 모니터링 시스템의 메트릭 수집이란, 서비스를 운영함에 따라 발생하는 여러 상황들에 대해 특정 지표를 수집하여 상황을 통제, 예측, 관측 하기 위한 행위이다. 여기서 말하는 특정 지표를 메트릭이라고 한다. 보통 성능을 알고싶다면 메모리, 서버를 알고싶다면 cpu, db를 알고싶다면 캐시 히트율, 페이지 기대수명 등등 다양하다. 이러한 정보를 알아오는 방식에는 크게 두 가..

[python]언더스코어

아휴 스크립트 언어 짱싫다 했는데 어쩌다보니 하고있네... 언더 스코어(_) 기본적으로 언더 스코어는 여타 다른 언어에서 스네이크 방식의 변수 및 함수를 선언할 때 이름에 쓰였다. 그런데 파이썬에서는 조금 특별한 위치를 가진다. 인터프리터에서 마지막 값을 저장 값을 무시하고싶을 때 변수나 함수명에 특별한 의미, 기능부여 숫자 리터럴값의 자릿수 구분용 인터프리터에서 인터프리터, 그러니까 대충 터미널 켰을때 인터프리터는 대화형 실행을 하기 때문에 마지막 값을 볼 수 있다. 그 마지막 값을 받아 오는 _ >> 1+1 2 >> _+1 3 이런느낌 값을 무시하고싶을 때 일단 이 용도의 _는 python 3.x 에서만 사용 가능하다. # 언패킹시 특정값을 무시 x, _, y = (1, 2, 3) # x = 1, y..

language/python 2022.05.10

[Kubernetes] http 에러 검증, 파드, pv

질문정리 애플리케이션에 HTTP 500과 같은 에러가 발생한 경우, 컨테이너를 다시 실행해야 할 것 입니다. HTTP 에러가 발생했다는 것을 어떻게 알 수 있을까요? 어떻게 해야 쿠버네티스가 에러가 발생한 컨테이너를 자동으로 재시작하게 만들 수 있을까요? (힌트: liveness probe 키워드를 검색하세요) 질문 재정의 : 컨테이너를 굉장히 많이 띄워보려한다. 한 백만번 띄웠는데 그 중에 300번 쯤 실패했다는 로그를 봤다. 그 때 마다 직접 새로 컨테이너를 띄울 수는 없다. 자동화를 하자. 어떻게 할까 1) 어떤 에러로 실패했는지 알아내야한다. 2) 어떻게 일일이 살피지 않고 자동으로 컨테이너를 재시작 할 수 있을까. 1) 어떤 에러로 실패했는지 알아내야한다. 컨테이너의 라이프 사이클 : pendi..

[Terraform] 테라폼 동작방식

1. 가변적(mutable) 인프라와 불변적(immutable) 인프라의 차이 가변적 인프라 수정사항이 발생 > 서버를 수정 후 배포 불변적 인프라 서버를 배포한 후 수정하지 않는 방식 서버 변경이 필요 > 폐기 후 새로 구성 이 과정에서 수정사항이 적용된 서버에 대한 테스트 후 새로 배포하는 방식. 2. Terraform의 선언적 방식으로 작성된 코드는 항상 인프라의 최신 상태를 의미합니다. Terraform은 어떤 방식으로 인프라를 최신 상태로 유지할 수 있는 걸까요? 테라폼의 선언적 방식이란, 선언적으로 리소스릉 정의하고 관리할 수 있다는 것이다.이를 설명하기 위해서는 선언형에 대한 설명을 우선해야하는데, 선언형 프로그래밍으로 예를 들어보자.선언형이란 how가 아니라 what에 집중하는 방식이다.어..

0414(목)

내 멘탈 와장창 와장창 와장창... 사실 이거 쓸 시간에 하나라도 더 해야하는데 솔직히 너무 지쳤다. 멘탈부터 잡아보려면 어디든 쏟아내야하지않을까 싶어서 쓰는글... 푸념중... 나 혼자 못하는 것도 화나지만 나때문에 나를 도와주려는 사람들까지 힘드니까 정말 딱 다 도망치고싶다. 저번 프로젝트기간이 끝나고 멘탈 아그작 나있었는데 그 와중에 안 좋은 일도 생기고, aws lambda로 좀 더 현업에서 쓰이는 aws 기능들을 공부하려고하는데 진짜 이틀동안 놋북 끄면 눈감고 눈뜨면 켰다. 가능한 에러는 다 본것 같다. 그간 안일하게 git bash나 powershell 정도면 될 꺼라고 생각했다. 내가 지금 공부하려는게 정말 눈에 보이지 않는 gui 그 밑의 일들인데 왜인지 붕 뜬 마음으로 임해왔다. 단순히 ..

Day Review 2022.04.14