AWS ElastiCache Redis Troubleshooting

이번에는 ElastiCache Redis를 운영하면서 발생했던 이슈와 해결했던 경험들을 공유해보려고 합니다. ElastiCache Clustered Redis 다중 키 작업 문제 클러스터로 구성하면서 다중 키를 작업하면 아래와 같은 에러가 발생할 수 있습니다. 해당 에러는 다중 키 작업시 키가 동일한 해시 슬롯에 있지 않아서 발생하는 문제입니다. 해결 방법은 2가지가 있습니다. 첫번째 방법은 Redis 클러스터를 지원하는 Redis 클라이언트 라이브러리를 사용하는 것입니다.…

Continue reading AWS ElastiCache Redis Troubleshooting

AWS ElastiCache Redis 구성 팁

ElastiCache Redis을 실제로 사용했을 때, 유용하게 사용할 법한 팁들을 공유해보려고 합니다. ElastiCache Redis Cluster Automatic Failover 복제본 개수가 1개 이상일 경우 다중 AZ를 꼭 활성화해서 생성해야 장애시 자동 장애조치를 수행할 수 있습니다. 실제로 자동장애조치가 잘 동작하는지 보고 싶으면, ElastiCache Redis 노드 관리 화면에서 작업-기본 장애 조치를 수행하여 볼 수 있습니다. Optional Cache 캐시 기능을 ON/OFF…

Continue reading AWS ElastiCache Redis 구성 팁

AWS ElastiCache 캐싱 전략

대표적인 캐싱 전략 ElastiCache를 이용해서 캐싱하는 전략에는 대표적으로 2가지가 있습니다. Lazy loading Write-through Lazy loading은 말 그대로 지연 로딩으로, 데이터 요청이 있을 때만 캐싱됩니다. 즉, 최소 1번은 데이터를 조회해야만 캐싱이 되고, 최초 조회시 DB에 직접 요청하므로 느리다는 점이 단점입니다. 반면에, 데이터가 갱신되었을 때 기존에 캐싱된 데이터만 무효화 시키면 되는 점은 장점입니다. Write-through 방식은 데이터 갱신시…

Continue reading AWS ElastiCache 캐싱 전략

OpsNow 개발자들의 제주 한달 살기 생활기 (3)

안녕하세요? 제주도에서의 생활기 3번째 포스팅을 시작합니다. 우선 저희가 제주도 한달살기를 준비하면서 이것만은 꼭 해보자고 생각한 일들이 몇가지 있었습니다. 성산일출봉 일출보기, 한라산 올라가기, 스쿠버 다이빙하기, 천문대 가보기, ATV 타기 등등 여러가지를 해보자고 다짐을 했었죠. 그 중에 개발자로서 해보고 싶었던 허세(?)가 있었는데 바로 ‘카페에서 브런치 먹으면서 일 하기’ 이었습니다. 부지런하지 못한관계로 차일피일 미루다 결국 마지막 날에 ‘우리…

Continue reading OpsNow 개발자들의 제주 한달 살기 생활기 (3)

OpsNow 개발자들의 제주 한달 살기 생활기 (2)

안녕하세요? 두번째 포스팅을 한번 작성해보려고 합니다. 이번엔 제주도의 먹거리를 함께 소개를 해보려고 해요. 역시 열심히 일하고 먹는 음식은 항상 맛있는 법이죠. 한번 제주도에서 저희가 영접한 먹거리가 어떤것이있는지 또 무슨 일을 하고 있었는지 한번 같이 확인해 보실까요? 무거버거 햄버거는 항상 옳다! 처음으로 소개드릴 음식은 햄버거 입니다. 이미 아실분들은 잘 아시는 제주도 유명 버거집이 저희가 머무는 숙소와…

Continue reading OpsNow 개발자들의 제주 한달 살기 생활기 (2)

AWS SES BounceRate 관리하기

AWS의 SES (Simple Email Service) 서비스는 별도의 SMTP 서버 구축 없이 Outbound 이메일을 전송할 수 있는 서비스입니다. 저렴한 비용으로 대량의 이메일을 전송할 수 있으며, 발송한 이메일의 수에 따라(데이터 전송 비용 별도) 요금이 부과되므로 적은 부담으로 서비스를 이용할 수 있습니다. BounceRate란? AWS SES는 BounceRate라는 수치를 관리하고 있습니다. BounceRate는 단어 그대로 반송률을 의미하는 것으로 전체 전송되는 메일…

Continue reading AWS SES BounceRate 관리하기

AWS WAF 설정 및 접근 제한하기

OpsNow에서는 파트너사에게 별도의 도메인을 이용한 브랜드 사이트를 제공하고 있는데, 최근에 이를 관리하기 용이하게 개선하면서 ALB에 여러 서브 도메인들을 하나로 모으게 되었습니다. 호기롭게 시작한 작업이었으나, 곧바로 난관에 봉착했습니다. 바로 특정 호스트에 대한 접근 제어였습니다. ALB에서는 보안 그룹을 이용할 수 있었습니다. 그래서 곧바로 AWS WAF (Web Application Firewall) 를 알아보기 시작했고, 약간의 시행착오 끝에 원하는 목표를 달성할…

Continue reading AWS WAF 설정 및 접근 제한하기

EBS 프로비저닝된 io 볼륨의 새로운 변화

EBS는 EC2에 연결할 수 있는 스토리지 볼륨으로써 HDD와 SSD이 있습니다. OpsNow의 경우에는 SSD를 주로 사용하는데 이 중에는 gp와 io 타입이 있습니다. gp 타입은 범용적인 반면에 io 타입은 높은 IOPS가 필요시 사용합니다. 사실 2020년에는 io 타입에 여러 업그레이드가 있었습니다. io1에 비해 성능이 한층 업그레이드된 io2가 정식 출시되었기도 했지만 12월 Re:Invent에서 io2에 또 하나의 큰 변화가 있었습니다. 계층화된…

Continue reading EBS 프로비저닝된 io 볼륨의 새로운 변화

AWS ElastiCache를 써도 될까요?

AWS ElastiCache가 무엇인가요? AWS ElastiCache는 AWS에서 제공하는 Redis, Memcached와 호환되는 완전관리형 인메모리 데이터 스토어입니다. 도입시 체크 리스트 아래 체크리스트 중 해당 되는 사항이 몇 개나 되는지 확인해보고, 2개 이상 해당되는 사항이 있다면 적극 도입을 검토해 보는 것이 좋습니다. 항목 Example 데이터 쓰기보다는 조회가 주가 되는 서비스이다 대시보드 실시간으로 처리되는 데이터가 아니고, 처리/갱신되는 주기가 비교적 길다…

Continue reading AWS ElastiCache를 써도 될까요?

AWS Support Plan 비용 절감을 위한 방법

어플리케이션을 AWS에서 개발하다가 보면 필연적으로 기술과 관련한 이슈들을 경험하게 됩니다. 이러한 기술적인 이슈들에 대해서 AWS의 지원을 받으려면 AWS Support Plan을 등록하면 됩니다. 그러면 보다 빠르고 안정적인 지원을 받을 수 있습니다. 물론, Support Plan에 대한 비용이 발생하게 되는데, 그 비용은 AWS 사용 요금을 기반으로 결정됩니다. 보시는바와 같이 지원 속도나 범위에 따라서 요금이 다르게 책정되어 있습니다. 월…

Continue reading AWS Support Plan 비용 절감을 위한 방법