본문 바로가기

분류 전체보기155

AWS : Route 53 요금 및 비용 산정 Route 53 사용 시 요금 발생 문제 AWS에서 Free Tier 요금을 사용하던 중에 Route53을 사용할 일이 생겼습니다. 분명히 Free Tier로 사용하고 있는데 Route53에서 비용이 청구되는 것을 확인하여서, Route53 요금에 대해서 궁금증을 가지게 되었습니다. 요금 발생 내용은 아래와 같습니다. Route53 요금 발생 상황 요금이 발생한 상황을 분석해보니 제가 구매한 도메인을 Route 53에 연결했기 때문에 비용이 발생한 것이었습니다. Route53에 도메인 연결만 해두어도 돈이 나가는 것은 몰라서 이번에 알게 된 것 같습니다. Route53 과금 방식 좀 더 살펴보니 Route 53은 호스팅 영역을 등록 할때마다 과금을 하는 방식이었습니다. 여기서 호스팅영역이란 쉽게 말해서 .. 2021. 4. 6.
Docker : 리눅스에 도커 설치하기 (Ubuntu 18.04) 개발을 하다가 EC2 (Ubuntu 18.04) 에 도커를 설치할 일이 생겼습니다. 다음에 또 설치해야될때 알수 있도록 간단하게 정리해두었습니다. 도커 설치하기 sudo apt-get update sudo apt install docker.io sudo systemctl start docker sudo systemctl enable docker 만약 기존에 도커가 설치되어있다면 sudo apt-get remove docker docker-engine docker.io 위와 같이 apt-get install docker.io 이전에 위의 명령어로 도커를 지운 다음 설치해주시면 됩니다. Tips 위와 같이 설치하면 항상 sudo docker [명령어] 형식으로 사용해야 한다는 불편한 점이 있습니다. sudo.. 2021. 3. 26.
개발 용어 : 캐리지 리턴(CR), 라인 피드 (LF) 알아보기 캐리지 리턴(CR)과 라인 피드(LF)란? 프로그래밍을 하다보면 \n으로 되어있는 문자를 만나게 됩니다. 보통 줄내림이라는 뜻인데 윈도우에서 이것저것 하다보면 \n이 아닌 \r\n도 만날 때가 있습니다. 각각의 의미를 살펴보겠습니다. \r Carriage Return(CR) 라는 의미를 가지며 일반적으로는 맨앞으로 이동하라는 뜻입니다. \n Line Feed(LF) 라는 의미를 가지며 일반적으로는 New Line, 즉 새로운 라인이라는 뜻입니다. 캐리지 리턴(CR)과 라인 피드(LF)의 어원 살펴보기 캐리지 리턴은 아래와 같은 타자기(typewriter)에서 따온 단어입니다. https://youtu.be/FkUXn5bOwzk 캐리지 리턴의 영문 뜻은 다음과 같습니다. Carrage: 운반, 또는 수송이.. 2021. 3. 23.
AWS : HTTP에서 HTTPS로 redirection 설정하기 (http_x_forwarded_proto + EC2 +ELB) redirection 문제 회사에서 데모를 위한 웹서버를 띄우기 위해 AWS 인프라를 구축할 일이 생겼습니다. 기본적으로 AWS의 ELB와 EC2 그리고 Nginx만을 이용한 간단한 웹 서버를 구축하였는데, 이때 HTTPS 인증서를 로드벨런서(ELB)에 붙이고, 타겟그룹을 만들어서 EC2 Nginx로 전달하였습니다. 이때 아래와 같은 문제가 발생하였습니다. https://example.com/ => HTTPS로 동작 http://example.com/ => HTTP로 동작 https://example.com/folder => HTTP로 동작 (http://example.com/folder/ 으로 이동) 저는 HTTP로 접속이 되더라도 HTTPS로 동작하는 웹서버를 구축해야 했습니다. 저희 회사 SDK를 .. 2021. 3. 19.
리눅스 : 용량 부족할때, 커널 삭제로 용량 확보하기 Linux를 사용하다보면 가끔 용량이 부족할 때가 있습니다. No space left on device (28) ... 용량이 없어서 오류가 날때는 보통 위와 같은 에러를 같이 보여줍니다. 이럴때 하드디스크나 SSD 볼륨 용량을 확장하거나, 필요없는 파일을 지우는 방법이 있지만 그전에 리눅스의 오래된 커널이 남아있을 수 있기때문에 용량부족의 원인일 수 있기 때문에 한번 확인해보시는 것이 좋습니다. 저의경우에 EC2리눅스를 쓰다가 용량이 부족해서 서버로 파일 업로드가 되지 않는 문제가 발생하였습니다. 그런데 해당 서버에는 볼륨의 용량을 다 쓸정도로 큰 파일이 없기 때문에 다른 이유를 찾던 도중 오래된 커널의 용량이 문제라는것을 확인할 수 있었습니다. 커널의 용량 확인 보통 커널들을 저장해놓는 경로는 /us.. 2021. 3. 15.
Sequelizer : Sequelize-cli의 migration 기능으로 운영중 테이블 스키마 변경하기. sequelize 운영 중 테이블 스키마 변경 문제 개발을 하다 보면 sequelize의 테이블을 추가하거나 스키마를 변경해야 할 때가 있습니다.. 보통 이런 작업을 할 때는 sequlize-cli를 설치하여서 사용합니다. 스키마를 변경하기 위해서는 보통 sequelize.drop을 통해 테이블을 제거한 뒤에 sequelize.sync()를 수행해여야 하는데 drop을 수행하게 되면 테이블에 있던 데이터가 모두 삭제가 됩니다. 만약 운영 중이었다면 소중한 데이터가 백업하지 못하고 날아가게 되기 때문에 무척 치명적일 수 있습니다. 테이블을 안 날리고 데이터베이스의 스키마와 컬럼을 바꿀 수 있을까 찾아보니 sequelize cli의 migration 기능을 이용하면 쉽게 해결되는 것을 알게 되었습니다. 아래.. 2021. 3. 2.
리눅스 : 메모리 확인 / 캐시 삭제 리눅스의 캐시와 메모리 리눅스에서 free 명령어를 사용하다 보면 buffer/cache라는 것이 존재합니다. 이 부분은 직접 사용하고 있는 메모리가 아닌 버퍼와 캐시에 사용된 메모리를 말합니다. 버퍼와 캐시에 저장된 메모리 말고 Swap 메모리도 있는데 해당 메모리는 메모리의 사용량이 늘어남에 따라서 디스크의 일부를 Ram처럼 사용할 수 있게 해주는 영영을 의미합니다. (커널에서 실제 메모리에 올라와 있지 않는 블록중 쓰이지 않는 것을 디스크에 저장하여 사용 가능한 메모리 영역을 늘림) 여기서는 버퍼와, 캐시에 사용된 메모리를 해제하는 법에 대해 알아보겠습니다. 버퍼와 캐시에 사용된 메모리를 지워줘야 하는 이유 일반적으로 캐시는 느린 장치의 데이터를 빠른 장치에 임시로 보관해두고 사용하여 성능을 올리는.. 2021. 2. 21.
AWS - EC2 Backup 방법 (snapshot) AWS에서 EC2 인스턴스를 백업하는 방법에 대해 조사해보았습니다. EC2 인스턴스를 실무에서는 따로 백업할 일은 지금까지는 없었지만 혹시 나중을 위해서 알아놓는 것이 좋을 것 같다고 생각이 들어서 한번 알아보겠습니다. AWS EC2의 백업 EC2의 인스턴스는 사용하지 않더라고 계속 켜놓으면 요금이 발생합니다. 따라서 이때 사용하지 않는 인스턴스는 중지하고 제거하면 되는데요, 하지만 언제 다시 사용할지 모르거나, 데이터가 많이 쌓여있는 DB인스턴스의 경우에는 백업을 해두는 것이 좋습니다. EC2는 대부분 root볼륨을 가지고 있고 추가로 EBS볼륨을 인스턴스에 붙이는 구조인데 create image를 통해 AMI를 생성하고 각각의 EBS볼륨에 대해서도 스냅샷을 떠야 합니다. AMI, EBS AMI란 Am.. 2021. 2. 12.
Vue.js : vue-loader / webpack watch/ webpack-dev-server/ style scoped /data와 computed : [강좌 4강 정리] 인프런 무료강좌중 Vue에대한 기본 강좌가 있어서 공부하면서 정리해봤습니다. 참고용으로 보시면 좋을것 같습니다. 설명도 매우좋고, 초반에 Vue에 대한 개념을 잡을 때 좋은 강좌인것 같아서 추천드립니다. ~ 사이트 주소 : https://www.inflearn.com/course/web-game-vue/# Webpack을 이용하여 npm과 webpack을 통해 Vue 인스턴스를 사용하기 위한 기본 구조를 잡는 방법을 알아봅니다. 4-1) Vue-loader webpack config 설정 webpack.config.js파일에 있는 module의 Loader를 통해 빌드시 JS파일이 아닌 파일(ex .vue)파일을 Javascript 파일로 변환해 줄 수 있다. module의 Loader는 꼭 Javasc.. 2021. 1. 18.
Jenkins : Jenkens를 활용한 실무 강좌 정리 (1강) - CI/CD, Jenkins Pipeline 등 SKplanet Tacademy 유튜브 채널에서 토크온 세미나로 Jenkins에 대한 내용을 설명해서 쭉 정주행을 해보았다. 평소 CI/CD에 대해서 많이 들어봤지만 무엇인지 제대로 알지 못하고, 개념이 잡혀있지 않아서 많은 도움이 된 세미나 였던 것 같다. 추후 Jenkins에 대한 파이프라인을 직접 회사에서 구축해보고 공부할 수 있는 기회가 생기면 좋을 것 같다는 생각을 하였다. 아래는 SKPlanet 토크온 세미나 영상 주소이다. www.youtube.com/watch?v=JPDKLgX5bRg JenKens와 CICD / Jenkins를 활용한 실무 CICD (1강) 1. 강의 목표 CI/CD 파이프라인의 기본 개념의 이해 기본적인 운영환경(DEV, QA, PROD)이 어떻게 구성되고 운영되는지 이.. 2021. 1. 17.