전체 글(355)
-
[AWS] EC2 HTTPS 및 로드밸런서 적용
HTTPS 는 암호화된 HTTP 프로토콜로서 안정화된 데이터 통신을 가능하게 합니다. 따라서 현재 계정을 사용하거나 민감한 정보들을 다루는 모든 웹 들은 전부 HTTPS 프로토콜을 사용하고 있다고 보면 될 것입니다. 기본적인 HTTP 프로토콜에 SSL 이라고 하는 인증서를 발급하여 암호화된 서버를 운영할 수 있도록 해줍니다. AWS 는 클라우드 서비스를 제공하는 가장 큰 기업이기 때문에 도메인을 발급받고 HTTPS 적용을 한 곳에서 할 수 있어 편리합니다. 로드밸런서는 간단히 말하자면 클라이언트의 요청으로 인한 서버의 과부하 혹은 트래픽을 분산시켜줌으로서 속도 면에서나 서버의 가용성, 부하적인 측면에서 도움을 줄 수 있는 기술입니다. AWS에서 HTTPS 를 적용하게 되면 이 로드밸런서는 거의 필수적으로..
2023.05.27 -
[AWS] EC2 환경 AWS DNS 적용
EC2 환경에 배포한 서버에 도메인을 적용해야할 때 기존에는 가격면에서 부담이 없는 가비아를 이용하여 도메인을 적용하였습니다. 하지만, 매번 가비아 도메인을 이용할 때마다 이후에 HTTPS를 적용해야될 때 AWS 도메인 서비스를 사용하는 것이 아니기 때문에 인증서 발급을 다시 또 nginx 와 같은 프록시 서버를 이용하여 인증서를 발급받거나 해야했습니다. 이 과정에서 매번 인증서 발급이 정상적으로 진행될 때도 있지만 그만큼 원인모를 이슈로 인해 인증서 발급이 안되는 문제도 비일비재했습니다. 더군다나, nginx 를 이용해 인증서 발급을 수행하기 위해서는 보통 certbot을 통해 인증서를 발급받곤 하는데 이 cerbot이 매번 버전이 바뀔 때마다 설정값들을 새로 파악하고 바꿔줘야 하기 때문에 이런 부분에..
2023.05.27 -
[AWS] 가비아 도메인 설정 및 EC2 에 해당 도메인 적용
EC2 서버를 배포하면 기본적으로 ip주소로 입력하여 요청하거나 호출해야 합니다. 하지만 보통 일반적인 사이트들을 보면 ip주소로 접근하지 않고 도메인을 입력하여 접속합니다. 따라서 도메인을 적용시켜 봅시다. 적용시키기 전에, AWS 에서도 도메인 서비스를 지원해준다고 알고있지만 저는 가비아를 사용하기로 했습니다. 도메인 가격도 싸고, 설정도 쉬워서 가비아를 선택했습니다. 우선 가비아 사이트에 들어가서 가장 싼 가격대를 보이는 SHOP 에 들어가줍니다. SHOP이 가장 싼 이유는 실제로 가비아 서비스를 사용하고 있는 기업들이 사용하는 주소 중 가장 덜 사용되고 있어서 입니다. SHOP 으로 들어오면 자신이 생각해두었던 도메인 명을 입력해줍니다. 원하는 도메인 명으로 사용가능한 도메인들이 나오게 되는데 가..
2023.05.25 -
[에러] Unable to connect to Redis: nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to localhost ~ (feat. EC2 환경 에러)
[Reason] EC2 에 서버를 배포하고 실행하는 단계에서 발생된 Redis 관련 에러이다. 발생된 원인은 해당 서버가 가지고 있는 기능에 Redis가 포함되어있는데, 배포한 EC2 환경에 Redis가 설치되어있지 않아 실행했을 때 Redis를 찾을 수 없어 발생된 에러이다. [Solution] 원인이 명확한만큼 해결책도 명확하다. 바로 EC2 에 Redis를 설치해주면 된다. Git Bash 에서 Redis를 설치하면 해결! 방법
2023.05.24 -
[Redis] EC2 환경에 Redis 설치
EC2 환경에 배포한 서버에 Redis를 포함하고 있다면, 정상적으로 운용하려면 EC2 환경에도 Redis를 설치해주어야 합니다. 따라서 EC2 환경에 Redis를 설치하는 작업을 정리해보려고 합니다. git bash 에서 ubuntu EC2 서버에 접속하여 sudo apt-get update 명령어를 입력하여 최신으로 업데이트 해줍니다. sudo wget http://download.redis.io/redis-stable.tar.gz sudo tar xvzf redis-stable.tar.gz 명령어들을 입력하여 Redis를 설치해줍니다. 설치되어 생성된 redis-stable 폴더로 진입합니다. sudo apt install make 명령어를 입력하여 make 패키지를 설치해줍니다. 그 다음 make..
2023.05.24 -
Apache JMeter 를 사용한 서버 테스트
백엔드 서버를 개발하고 부하 테스트를 위해 JMeter를 사용하여 테스트 해보기로 했습니다. JMeter는 Java 기반으로 이루어진 프로그램이라 Java와 Spring 프레임워크로 개발한 서버를 테스트하기에도 아주 적합하다고 생각합니다. 부하를 테스트하는 도구들은 여러가지가 있습니다. Ngrinder 라든지... Apache Benchmark 라든지.... Gatling 이라든지... 우선 JMeter 의 특징을 살펴보자면, 다양한 프로토콜(HTTP, HTTPS 등) 및 서버를 테스트할 수 있고, REST 웹 서비스를 테스트 하기에도 좋으며, 데이터베이스나 FTP 도 지원한다고 합니다. 또한, CLI를 지원하여 CI / CD 연동도 편리합니다. 다양한 외부 플러그인을 사용하여 기능 확장도 가능합니다. ..
2023.05.22