우주먼지
article thumbnail
EC2 Instance Memory Swaping
Ops/AWS 2023. 1. 24. 02:37

💡 Memory Swaping 보통 Swap의 용량은 ram의 2배라고 알려져있고 t2.micro의 ram은 1gb, 스와핑용량 +2gb를 더해서, 총 3gb의 메모리로 증설이 가능하다 EC2 인스턴스 내부 # 스왑 파일 생성 $ sudo dd if=/dev/zero of=/swapfile bs=128M count=16 # bs는 블록 크기이며, count는 블록 수이므로 128mb x 16 = 2048mb 크기의 스왑 파일을 생성한다는 뜻이다. # 스왑 파일에 대한 권한 변경 $ sudo chmod 600 /swapfile # Linux 스왑 영역 설정 $ sudo mkswap /swapfile # 스왑 파일을 즉시 사용하도록 변경 $ sudo swapon /swapfile # 성공 확인 $ sudo ..

article thumbnail
ElasticCache for Redis with Spring Boot
Ops/AWS 2023. 1. 10. 06:41

💡 ElasticCache for Redis Redis를 캐싱서버로 사용하는 이유 서버에 Refresh Token을 저장해야하는데 영구적으로 필요한 데이터도 아니고, 리소스 절약하기 위해 사용 구현체 Lettuce, Jedis 중 Lettuce 사용 Lecttue - 비동기 처리, 성능up, 추가적인 의존성 필요X, 별도의 설정없이 Redis에 명령 가능 Jedis - Deprecated된 방법, 별도의 추가 의전송필요, None Thread-Safe 💡 사전 준비 Elasticache Redis Cluster 생성 EC2 Instance에 gcc설치후 redis-cli 컴파일 yum -y install gcc wget http://download.redis.io/redis-stable.tar.gz &&..

article thumbnail
[CI/CD with AWS] - Automated Deployment
Ops/AWS 2022. 12. 6. 15:36

💡 Automated Deployment 배포 파이프라인을 구성하는 단계(stage)와 작업(actions) Source단계 : 원격 저장소에 관리되고 있는 소스 코드에 변경이 생길 경우, 감지하고 다음 단계로 전달 Build단계 : 소스단계에서 받은 코드 컴파일 빌드 테스트 -> 가공 -> 결과물 전달 Deploy단계 : 전달받은 결과물을 실제 서비스에 반영 * 실제 단계와 과정은 상황에 따라 세분화 & 간소화 AWS Development Tool CodeCommit Source단계 구성 시 사용하며, 버전 관리 도구이다 보안에 강점 FreeTier이상 사용시 과금 CodeBuild Build 단계 구성 시 사용하며, 유닛 테스트 & 컴파일 & 빌드 작업을 CLI를 통해 실행 CodeDeploy Dep..

article thumbnail
[CI/CD with AWS] - ELB 생성 & ACM Cert발급 & Route53 설정
Ops/AWS 2022. 12. 5. 10:23

💡 ELB 생성 EC2 - Application LoadBalancer 생성 도메인 요청 후, Route 53에서 Record 요청 인증서 발급 완료 후 LoadBalancer에 적용 Default VPC 사용X, Custom VPC 생성 로드밸런스 그룹 이름 지정 고급 상태 검사 설정 - Success Code(201) 설정 인스턴스 지정 생성 완료 로드밸런서가 적용된 도메인으로 접속 테스트 💡 호스팅 영역에 Alias Record 생성 Route53 콘솔 이동 DNS 관리 - 호스팅 영역 레코드 생성 - 별칭 ON (Application/Classic LoadBalancer) 리전 지정 로드밸런서 지정 생성 완료 도메인 구입 & TLS 적용 AWS - S3, CloudFront, Route53을 이용..

article thumbnail
[CI/CD with AWS] - Create & Connect RDS
Ops/AWS 2022. 12. 5. 08:49

💡 RDS 생성 ✅ RDS Console 💡 RDS 연결 RDS 연결 시, DB인스턴스의 ID,PW & 포트 & 엔드포인트 주소가 필요함 ✅ 연결 로컬 서버 -> mysql -u [Master_Name] --host [Endpoint] -P [Port] -p 접속이 안될 시, RDS 인스턴스의 보안그룹 인바운드 포트 오픈 💡 Main 서버 설정 ✅ application.properties 수정 후 ./gradlew clean && ./gradlew build 실행 서버 실행 S3 Bucket Endpoint 접속

article thumbnail
[CI/CD with AWS] - Deploy Client to S3 Bucket
Ops/AWS 2022. 12. 2. 13:33

💡 클라이언트 배포 준비사항 1. S3 버킷 생성 2. (로컬) npm install S3 버킷 생성 Public Access 차단 해제 & ACL비활성화 -> 생성 npm 설치 (로컬환경) 가지고있는 nvm스크립트 실행 환경변수 설정 mv .env.example .env 인스턴스 ip + port 작성 nvm run build S3 설정 변경 정적 웹 사이트 호스팅 On 버킷에 파일 업로드 Public Access 차단 해제 버킷 정책 생성 ARN = arn:aws:s3:::[Bucket_name]/* 후 생성된 json 형태의 정책 삽입

article thumbnail
[CI/CD with AWS] - Deploy Server
Ops/AWS 2022. 12. 2. 13:28

💡 AWS 환경이 아닐경우 & AWS 환경일 경우 AWS 환경이 아닐 경우 jdk11.tar.gz 다운 tar xvfz openjdk-11+28_linux-x64_bin.tar.gz vi /etc/profile (환경변수 잡아주기) source /etc/profile # java exportJAVA_HOME=/JAVA 설치경로/jdk-11 export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=.:$JAVA_HOME/lib/tools.jar AWS CLI 환경일 경우 curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip import gpg key curl -sSL https://get.rvm.io | bash -..

검색 태그