전체 글

개요쉘 스크립트 또는 명령어를 수행할 때 나오는 출력 결과를 변형해야할 일이 있다. 그런 경우 사용하면 좋은 명령어들을 정리해보고자 한다.명령어tr지정한 문자를 변환하거나 삭제하는 명령어이다.tr [OPTION]... SET1 [SET2]# 주요 옵션-d : SET1 에서 지정한 문자를 삭제합니다.-s : SET2 에서 반복되는 문자를 삭제합니다.-t : SET1을 SET2의 길이로 자릅니다.-c : SET1을 제외한 나머지를 SET2로 치환한다.# SET에 들어갈 수 있는 문자a-za 부터 z 까지의 문자를 변형하고 싶다면 이렇게 사용해도 된다.[:class:]특정 class를 이용해서 특수한 형태를 지정할 수 있음. class는 아래와 같음[:alnum:] : 알파벳 + 숫..
개요Github를 이용하려고 하던 찰나 Window 환경에서 gh 명령어를 사용해서 Pull Request를 날릴수 있게 github cli를 설치해보고자 한다. 자세한 과정은 공식 repository에 있다. 설치 과정윈도우의 경우 "gh is available via WinGet, scoop, Chocolatey, Conda, Webi, and as downloadable MSI." 이와 같다고 한다.그래서 이전에 설치 해보았던 chocolatey 패키지 매니저를 설치해 gh를 설치하는 방법 한가지와 msi 파일을 직접 받아와 실행 시키는 방법을 정리해보겠다. Chocolatey 이용한 설치 과정윈도우에 chocolatey는 기본적으로 설치되지 않는 것으로 알고 있다. Chocolatey 설치 과정은..
· CS 지식
개요SPA는 CloudFront와 S3를 이용해서 프론트엔드를 구성할 때 처음 접해본 용어이다. 개념이 확립되지 않아서 정리해보고자 한다. SPA란?SPA(Single-Page application) 이란 단일 페이지 애플리케이션을 의미하고 단일 웹 문서(HTML, CSS, JavaScript)만 로드한 다음 다른 콘텐츠의 경우 XMLHttpRequest 및 Fetch와 같은 JavaScript API를 통해 해당 단일 문서의 본문 콘텐츠를 업데이트하는 웹 앱 구현체이다.결국 필요한 데이터만 비동기로 가져와 웹 브라우저가 동적으로 현재 화면에 다시 렌더링하는 방식을 의미한다. 사용자가 변경사항을 받아올 때 전체 HTML을 받아오는 방식이 아니라 화면 렌더링을 로컬 PC에서 즉시 생성해 더 빠르게 화면 전..
· Network
개요트러블 슈팅을 진행하거나 도메인 관련 설정을 할 때 에러가 발생한 적이 있는데 명확히 파악하지를 못했다. 원인이 무엇인지 관련된 증상이 발생했을 시 어떤 것을 확인하면 좋을 지 정리해보고자 한다. NXDOMAIN위는 아무 도메인에 접속한 결과이다.위와 같이 NXDOMAIN 관련된 에러가 발생하면 아래와 같은 항목을 확인하는 것이 좋다.도메인을 올바르게 입력했는지 확인하기다른 기기, 브라우저, 네트워크 또는 캐시를 날리고 접속해보기크롬에서 캐시를 지우기 위해서는 chrome://net-internals/#dns 로 접속해 "Clear host cache"를 선택하면 된다.개발자 모드에서 캐시를 지워도 된다.방화벽, VPN 등 소프트웨어가 막고 있는 것은 아닌지 확인하기DNS 설정이 최근에 변경된 경우 ..
개요EKS의 HPA를 찾아보는 과정에서 Karpenter라는 키워드를 많이 듣기도 했고, 여러 세션에서 Karpenter에 대한 설명도 조금씩은 들었었다. 그래서 정리해보고자 한다. 기존의 Autoscaling기존에 EKS에서 오토 스케일링을 위해서는 Cluster Autoscaler(CA) 를 이용한 것으로 보인다. Cluster Autoscaler(CA)란?Cluster Autoscaler(CA)란 Kubernetes 클러스터가 워크로드에 따라 용량을 자동으로 조절하는 기능을 하는 도구이다. 개발자가 Pod를 많이 배포하거나 HPA 과정에서 새로 생성된 Pod가 Node의 리소스 부족으로 인해 Pending 상태에 빠지게 되면 Node를 Scale Out 해 Pod를 배치하는 방식이다.CA의 작동방식..
· Network
개요보통 서버에서 다른 서버로 통신을 하거나 Load Balancing 할 때 우리는 Downstream이라고 표현하는 것을 알 수 있다. 근데 Nginx 에서는 Upstream이라고 하는 것을 확인하고 무슨 의미인지 궁금해 정리하게 되었다.미리 알려주자면 링크 에서 자세히 확인 가능하다. 그래서 무엇인가?Downstream은 직역하면 하류이다. 물이 산에서 강으로 흐르는듯이 상류에서 하류로 메시지가 흐른다고 생각하면 될 것이다. 우리가 보통 NLB, ALB를 생각할 때 Downstream이라고 하는 것은 LB에서 EC2 서버로 메시지가 전송되니 하류(Downstream)로 메시지가 흐른다고 생각하면 된다.근데 Nginx에서는 다르다. Nginx는 HTTP의 데이터 전송을 위함이다. 결국 HTTP는 응답..
· CS 지식
개요Keep alive는 ELB 또는 ALB 등 네트워크 통신에서 많이 봤던 키워드이다. 정리해보고자 한다. 선행 지식먼저 Keep alive를 이해하기 위해서 HTTP의 통신에 대한 특성을 알아볼 필요가 있다.기본적으로 HTTP는 TCP Connection을 유지하지 않는다. 무슨 의미냐면 Connection을 Handshake를 통해 맺고 일정 시간이 지나면 Connection이 끊기기 때문에 여러 파일을 송/수신할 때 등의 상황에서 Connection을 끊고 다시 맺어야할 수도 있다는 의미이다.간략히 Keep alive가 있고 없고의 차이는 아래 그림과 같을 것이다. 그래서 왜 사용하는가?우리가 Connection을 유지하지 않고 통신을 하고자 한다면 과정이 매우 길어질 것이고, 자원도 소모될 것이..
개요오늘은 네트워크를 확인하거나 트러블 슈팅할 때 사용하는 명령어 또는 프로그램을 정리해보고자 한다.리눅스에서 네트워크를 확인하거나 트러블 슈팅할 때 내가 중요하게 느꼈던 점은 일단 내 네트워크의 상태가 어떤지 먼저 확인하고 대상 서버의 상태를 확인하는 것이다. 그래서 아래에는 내 네트워크의 상태가 어떤지 확인하는 명령어와 내 네트워크의 상태를 기준으로 대상 서버의 상태를 확인하는 명령어가 있다.명령어 또는 프로그램은 사실 굉장히 많으나 사용해봤거나 검색을 통해 나온 대중적인 명령어만 작성했음을 인지해주면 좋을 것 같다. 각종 확인 명령어netstatnetstat [-a] [-b] [-e] [-n] [-o] [-p ] [-r] [-s] [] netstat 명령어는 네트워크 연결 상태, 라우팅 테이블, 인..
· Cloud/AWS
개요오늘은 네트워크 전송 비용에 대해서 정리해보고자 한다. 좋은 레퍼런스를 가진 다이어그램을 토대로 정리해보고자 한다.아래 다이어그램은 us-east-1 기준으로 알고 있으나 글 작성 내용은 ap-northeast-2 기준으로 작성할 것이니 다이어그램에 있는 숫자는 무시하고 글 내용 기준으로 가격을 확인해주시면 됩니다.모든 비용에 대한 검색은 AWS 비용 계산기에서 검색 했으니 확인 부탁 드리며, 틀린 부분이 있다면 댓글로 정정 부탁 드립니다. 전송 비용 정리0. AWS로 들어오는 거의 모든 트래픽은 Free이다. IGW를 통과해 EC2에 들어오거나, Direct Connect를 통해 VPC 내부로 들어오는 트래픽 등등이 Free이다.1. 직접적으로 데이터가 AWS 내부에서 AWS 외부로 전송되는 데이터..
Nowon9159
Nowon의 블로그