DevOps, Infra
Mac Sequoia - multipass timed out waiting for response 해결법
Mac Sequoia - multipass timed out waiting for response 해결법
2024.10.14Mac Sequoia부터 오류가 나기 시작한 multipass 고치기최신 MacOS 15 Sequoia 사용자 주목!최신 Mac OS 15 Sequoia를 사용하고 있으면 현재(24년 10월 기준) 최신 릴리즈인 1.14.0 버전은 문제가 있어서 사용하지 못합니다.multipass lauch를 해도 "timed out waiting for response"라고 뜨며 실패할 것이고 예전에 실행한 인스턴스의 State도 전부 unknown으로 뜰 겁니다.원인원래는 인스턴스들의 IP를 가져오기 위해서 /var/db/dhcpd_leases 파일을 읽을 때 문제가 발생한다고 합니다. 저는 실제로 열어보니 잘 열렸는데 예전에 생성한 인스턴스 정보랑 최근에 생성되며 오류난 인스턴스 정보의 길이부터가 차이나는 것을 확..
실리콘 Mac에서 Local K8S 구축하기 #K3S #Multipass
실리콘 Mac에서 Local K8S 구축하기 #K3S #Multipass
2024.10.14실습용 K8S 환경 구축선택지1. Minikube장점명령어 한방으로 addon을 깔거나 실습 환경이 초기화되는 것은 편했다.따로 환경 구축에 관해 신경 쓰지 않고 바로 기본적인 명령어나 개념을 익힐 수 있는 것도 큰 장점이다.단점미니큐브는 싱글 노드 클러스터라 아무래도 실제 환경과는 다르다 보니 완전한 실습이 어렵다.컨테이너로 실행되어서 별도로 포트-포워딩도 한번 더해야 해서 불편했다2. 무료 쿠버네티스웹상으로 접속해서 무료로 실습할 수 있는 사이트들이 있는데 너무 느리고 시간대를 잘 공략해야 접속할 수 있어서 포기했다.오늘의 글그래서 공부용이면 차라리 가상머신 instance 3개 띄우고 K3S로 경량 쿠버네티스를 구축해서 실습하고는 한다. 오늘은 이 방법을 공유해보고자 한다.K3S로 쿠버네티스를 띄워..
Redis 운용하기
Redis 운용하기
2024.08.19Redis 운용하기스터디에서 Redis를 영구 저장하도록 save 설정을 켜두면 사용한다면 겪게 될 문제들에 관한 얘기를 나눠보았다. 나눈 얘기에 대한 요약본이다.영구적으로 컴퓨터를 껐다 켜도 복원되도록 사용하면 주의해야 할 점이 몇 가지 있다.용어Redis간단하게 Redis는 in-memory, single thread, key-value database이다.in-memory이기에 디스크 저장하는 기능을 꺼두면 기본적으로 껐다켰을 때 올라간 메모리가 휘발되어 데이터가 비어있다.재시작해도 데이터가 유지가 됐다면 영구적으로 하드에 백업되고 있다는 말이다. (기본값)Save(snapshot을 생성)할 때 동작Redis에서 RDB(기본값), 혹은 AOF persistence를 켜두면 fork를 사용해서 백업을..
[Oracle Cloud] 리소스 사용량 Limit 걸기
[Oracle Cloud] 리소스 사용량 Limit 걸기
2024.07.05무제한으로 사용 가능한 리소스에 Limit을 다른 팀원도 볼 수 있도록 걸어 놓는 법!1. Limits, Quotas and Usage으로 이동하여 Limit을 확인Limit을 확인 가능한 곳 페이지로 이동https://cloud.oracle.com/limits https://cloud.oracle.com/limits cloud.oracle.com여기서 Service와 Scope과 Compartment를 적절하게 설정하여 Limit을 걸고 싶은 자원을 찾는다.원하는 항목의 우측 메뉴를 클릭한다.Create Quota Policy Stub을 클릭한다.다음의 텍스트를 복사한다.2. Quotas로 이동하여 제한을 건다Quotas으로 이동한다.https://cloud.oracle.com/quotas https:..
[AWS] 2월부터 늘어난 VPC 비용 - In-use Public IPv4 Address
[AWS] 2월부터 늘어난 VPC 비용 - In-use Public IPv4 Address
2024.03.03오늘 2월 Invoice를 받아보니 VPC 비용이 갑자기 애매하게 증가한 사실을 알 수 있었습니다... 상황에 따라 몇 만원이 초과할 수 있어서, 예산 알림을 20$로 정해두어서 알림을 받지 못해서 인보이스를 받고서야 알아차렸습니다. 흑.. 아래의 공지를 보면 비용이 증가 이유를 알 수 있습니다. 바로 새로 적용된 IPv4 요금 때문!! 자동 할당된 것도! 서버스에서 사용 중인 것도! 모두 요금 부과의 대상이됐습니다. 공지 – AWS Public IPv4 주소 요금 변경 및 Public IP Insights 기능 출시 | Amazon Web Services AWS에서 퍼블릭(Public) IPv4 주소에 대한 새로운 요금이 도입됩니다. 2024년 2월 1일부터 서비스 연결 여부에 관계없이 모든 퍼블릭 I..
[AWS] AWS 비용 절감하기 :: 0. Free Tier가 끝나며 흥미로워진 AWS 비용
[AWS] AWS 비용 절감하기 :: 0. Free Tier가 끝나며 흥미로워진 AWS 비용
2023.08.16AWS Free Tier가 만료되기 직전이 되자 그동안 편하게 쓰고 있던 Free Tier RDS나 Elastic Load Balancer의 가격이 무섭게 느껴지기 시작했습니다. Free Tier의 무료 서비스로 쓰고 있던 것을 대체하며 서비스를 유지하기 위해 최대한 Low 스펙 인스턴스 안에 욱여넣는 경험을 공유합니다. AWS Free Tier가 만료되며 최근 Modoco 서비스를 위해 쓰던 AWS 요금이 예상했던 것보다 많이 들어서 급하게 PR 하나를 날렸습니다. ➡️ https://github.com/SWM-FIRE/modoco-backend/pull/56 new feature: https without loadbalancer👍 by IamGroooooot · Pull Request #56 · SW..
[AWS] Route53 Domain 다른 AWS 계정으로 이전하기
[AWS] Route53 Domain 다른 AWS 계정으로 이전하기
2022.11.20소마 연수 기간이 끝나갑니다. 발표가 끝나면 해당 기관에서 발급해준 AWS 계정을 사용할 수가 없어서 다른 AWS 계정으로 이전해야 했습니다. 지원받은 AWS 계정의 Route53에서 산 도메인을 다른 AWS 계정으로 이전하며 겪은 것을 공유해보고자 합니다. Route53의 도메인을 다른 계정으로 이전해보자 Route53에서 구매한 도메인은 3가지 방법으로 이전할 수 있습니다. AWS에 직접 연락해서 이전하기 AWS SDK를 사용해서 코드로 이전하기 AWS CLI로 이전하기 저는 AWS CLI로 옮겨보았습니다. 문서가 잘 없네용.. 준비물 Route53에서 구매한 도메인을 가진 계정 도메인을 받아올 계정 AWS CLI 2 AWS CLI 2로 도메인 이전하는 법 A계정의 Route53에서 구매한 Domai..
[AWS] Elastic Beanstalk graceful shutdown (feat. AutoScaling Lifecycle Hook - TERMINATING)
[AWS] Elastic Beanstalk graceful shutdown (feat. AutoScaling Lifecycle Hook - TERMINATING)
2022.11.10대상 서버가 종료될 때 미리 사전 작업을 해주고 싶은 분들에게 도움이 되는 글입니다. 제가 겪은 문제의 상황 백엔드 앱을 배포할 때마다 사용 중인 접속자가 튕기는 문제가 발생했습니다.. 왜냐하면 Websocket은 TCP 연결을 계속 유지하기 때문에 Stateful 했습니다. TCP connection이 맺어진 서버가 블루-그린 배포이든 롤링 배포이든 다운이 되는 순간 모든 클라이언트가 튕겼습니다. HTTP만 썼으면 세션을 외부에(Redis, PostgresSQL 등) 저장해 두거나 해서 이런 현상을 막을 수 있었겠지만 WebSocket은 애초에 stateful 해서 항상 튕겼습니다. 특히, 클라이언트에서는 현재 WebSocket 연결이 끊기면 main 페이지로 튕기게 되어있어서 기존 유저들이 불편함을 ..
리눅스에서 호스팅 중인 서비스가 외부로부터 접속이 안 될 때 문제 확인 방법
리눅스에서 호스팅 중인 서비스가 외부로부터 접속이 안 될 때 문제 확인 방법
2022.11.04친구가 호스팅 한 주피터 노트북이 로컬에서는 접속이 되는데 인터넷 공인 IP로는 접속이 안 됐습니다. 친구를 도와주면서 제시한 절차를 한번 공유봅니닷. 내가 제시한 진단 방법은 다음과 같다. 1. tcpdump로 패킷이 들어오고 나가는지 확인한다 tcpdump를 실행한채로 외부에서 접속해본다. 어떤 포트로 패킷이 들어오고 나가는지 캡처하려면 sudo tcpdump port 포트 명령어로 실행한채로 기다리고 있으면 된다. 캡처한 파일을 내보내서 와이어샤크에서 확인할 수도 있다. 참고. 내 기억으로 tcpdump가 인바운드는 iptable보다 우선이고 아웃바운드는 아니였다 - https://serverfault.com/questions/233302/will-tcpdump-see-packets-that-are..
[AWS] AWS SES API를 사용해서 메일 보내기 (feat. NodeJS)
[AWS] AWS SES API를 사용해서 메일 보내기 (feat. NodeJS)
2022.10.09이 글에서 사용하는 것 AWS SDK - AWS SES API NestJS 시작하기 전에 AWS SES는 두 가지 방법으로 사용할 수 있습니다. SMTP 인터페이스를 사용하거나 SES API를 사용해야 합니다. 저는 NestJS 애플리케이션 상에서 메일을 보내고 싶었습니다. 이 글에서는 API 방식을 설명해보겠습니닷. API를 사용한다면 크게 3가지 방식으로 메일을 보낼 수 있습니다. 1. Simple SES 객체의 Simple Email 보내는 함수 sendEmail(args: SendEmailCommandInput, options?: __HttpHandlerOptions): Promise; sendEmail(args: SendEmailCommandInput, cb: (err: any, data?: S..
[AWS] VPC의 NAT 비용을 줄여보자 :: Ubuntu로 NAT 인스턴스 만들기
[AWS] VPC의 NAT 비용을 줄여보자 :: Ubuntu로 NAT 인스턴스 만들기
2022.09.25두 배가 되어버린 AWS 비용.. 1달 전에는 테스트용으로 그냥 Public IP로 다 통신하도록 하고 최저 사양으로 다 올렸었다. 하지만 보안이나 비용적인 측면, 나중에 할 부하 테스트를 생각해서 Amazon EC2 리소스가 인터넷에 노출되는 방식을 제어하기 위해 싹다 갈아엎었다. 이 글(https://coding-groot.tistory.com/165)처럼 VPC를 구성해서 AWS 리소스를 재배치했다. 글 요약 VPC를 구성해서 Private, Public Subnet을 만들었다. 외부 인터넷에 노출되지 않아도 되는 인스턴스들은 Public IP를 할당하지도 않았고 Private Subnet으로 격리시켜서 Internet Gateway와의 직접적인 접점을 없앴다. Private Subnet에 있는 친..
[AWS] S3를 통해 정적인 Asset 호스팅하기
[AWS] S3를 통해 정적인 Asset 호스팅하기
2022.08.22S3를 사용해서 정적인 Asset을 호스팅해보자 S3는 99.99%의 가용성을 제공해줍니다. 단순히 Asset을 업로드하는 용도로 쓸 수도 있고 웹사이트를 호스팅할 수도 있고 다양한 용도로 사용할 수 있습니다. Storage 요금(요청 요금은 별도)은 1TB 당 25달러 정도라 저렴합니다. 이번 글에서는 S3를 통해 정적인 Asset을 배포해봅시다. 다음 글에서는 AWS의 CDN 서비스인 CloudFront랑 S3 bucket을 연동해서 CloudFront로 배포되도록 설정하는 것을 적어보겠습니다. 주의 이미지, 폰트처럼 변하지 않는 정적 Asset 배포용 방법입니다. 개발하면서 변하는 마크업 파일이나 정적 사이트 호스팅은 조금 다른 설정을 가져가셔야 합니다. 준비물 S3와 CloudFront의 권한을 ..