본문 바로가기

Database

(69)
AWS RDS SSL/TLS 인증서 교체 ( CA ) 문제점 ( 2015 -> 2019 ) 관련 AWS Blog : https://aws.amazon.com/ko/blogs/database/amazon-rds-customers-update-your-ssl-tls-certificates-by-february-5-2020/ 관련 Blog를 맨 앞으로 빼 놓은 이유는 AWS가 발생시킨 이벤트라서 그렇습니다. 많은 분들이 아시는 내용이겠지만 간단히 정리하자면, 1. 2020년 1월 14일 이후에 생성된 새로운 인스턴스들은 2019 CA로 적용됩니다. 이전까지 생성된 건 2015 CA 입니다.(default) 2. 2020년 2월 4일, 이때까지 CA 인증서를 갱신하지 않았다면 강제로 적용되기 시작하는 시점입니다. 3. 2020년 3월 5일, update 최종 기한입니다. 만약 CA를 어떤 식으로든 적..
pt-online-schema-change(pt-OSC)의 chunk_size_limit 함정 pt-osc를 많은 케이스에 쓰리라 생각이 됩니다. 저도 한때 많이 썼구요. 다만, pt-osc의 옵션에서 잘 못 알고 있는 케이스가 있어서 여기서 말하고자 합니다. pt-osc의 큰 이점 중 하나는 alter를 실행시켰을때 progress가 나오면서 진행도를 알 수 있다는 것입니다. 제가 이 글에서 언급하려는 옵션을 잘 못 사용하게 되면 progress를 볼 수 없습니다. where 조건을 제대로 사용하지 못하기 때문이죠. where 조건을 사용하지 않으면 select를 한번에 해서 insert할때 문제가 되며 마지막 시점에 commit이 밀리는 등 application에 문제를 일으킬 수 있습니다. 실제로 대량의 트랜잭션이 있을 때, 15초까지 commit이 밀렸습니다. 예제 pt-osc comman..
PostgreSQL 입문기! 이직을 하게 되면서 postgresql을 처음으로 쓰게 됐습니다. 이 서두가 어언 1년전이네요 벌써 ㅎㅎ 맨처음에 MySQL, Oracle과는 또 다른 성격의 DBMS라 너무 적응하기 싫고 사용하기 싫었지만 Main DB가 PostgreSQL여서 어쩔 수 없이 쓰게 되었습니다. 하지만 지금은 postgreSQL만의 장점이 분명이 있다고 생각하고 특정 부분에서는 postgresql을 쓰는게 더 유용할 수도 있겠다!? 라는 생각도 들기 시작했습니다. 이 카테고리가 앞으로 어떻게 나아갈지 모르겠지만 제 생각대로 쓰게 될 것이고 뭔가 책처럼 순차적으로 나아가는 방향은 아닐 것 같네요. 설치, 아키텍쳐, 쿼리, 파라미터 등등등 뭐... 이런게 책의 내용이겠죠!???ㅎ 저렇게 쓸수도 있겠지만 뭐 생각나는대로~ 정해..
첫 낙서장 또 블로그 쓴지 1년이 넘었는데 많은 일들이 있었네요. 이직한지 일년이 지났고 새로운 환경에서 DB를 운영하다보니 또 새로운 기술 스택이 정리 안된채로 쌓이는 듯한 느낌이 계속 계속 쌓이네요. 새롭게 사용하기 시작한 기술 스택이 - PostgreSQL - RDS PostgreSQL - Aurora PostgreSQL - pgbouncer - pgbarman - Terraform - salt-stack - consul - etcd - sensu - Datadog - boto3(cli 대신) python SDK - HAProxy DBA의 역할과 DevOps 중간에 있다는 느낌이 계속 있고 그 방향이 틀린 방향이라고 생각되진 않슴다. 오히려 좋은 방향이 아닐까 생각이 들구요. 서비스적인 측면의 지원과 인프라 ..
Influxdata의 Telegraf란? Influxdata 카테고리도 오랜만에 쓰는 것 같습니다. 이번 글에선 Influxdata의 components 중에 수집기인 Telegarf에 대해 말해보려고 합니다. config에 대한것은 따로 말하도록 하겠습니다. Telegraf란?Teleagraf는 Go 언어로 쓰여진 agent입니다. 주로 수집, 처리, 종합처리, 메트릭에 쓰기위해 사용됩니다. 이 agent의 목표는 작은 메모리를 사용하면서 개발자들이 메트릭을 수집해서 쉽게 지원하는 것을 지향합니다. 로컬 또는 원격의 config까지 반영시킬 수 있습니다. Telegarf는 plugin 방식을 사용하며 4가지 플러그인 컨셉을 가지고 있습니다. 1. Input Plugin : 시스템, 서비스, 써드파티 API로부터 메트릭 수집2. Processo..
AWS Aurora - Aurora의 Storage 특징 Aurora와 RDS MySQL의 차이를 한번 기입했었는데요. 여기에서는 좀더 Aurora의 내부적인 아키텍쳐와 그로인한 문제점을 써보려고 합니다. 이전에 썼던것처럼 Aurora의 가장 큰 특징은 스토리지입니다. 단일 스토리지가 아니라 Shared Storage를 사용합니다.이 그림은 AWS 공식 Blog의 https://aws.amazon.com/ko/blogs/korea/amazon-aurora-under-the-hood-quorum-and-correlated-failure/ 에서 가져왔습니다. Aurora 스토리지 내부 아키텍쳐를 이해하기 위해서는 쿼럼(Quorum)방식을 이해해야합니다. 여기서 쿼럼이란 무엇일까요?제가 처음 Quorum이라는 용어를 들은 것은 Cassandra에서 였습니다. Cas..
RDS MySQL의 몇가지 문제점 이전에 RDS MySQL과 Aurora의 차이점을 간단히 살펴봤습니다.이번 글에서는 RDS MySQL의 몇가지 문제점에 대해서 써보려고 합니다! AWS를 사용하면서 정말 많은 문제점들이 있지요.. 왜 써야하는지 의문이 들때도 있습니다. RDS MySQL의 구조를 한번 더 보도록 할까요? Aurora와는 다르게 각각의 Instance에게 Disk가 할당되어 있고 그것을 가지고 서비스를 하게 됩니다. 이로 인함 문제점들이 여러가지 발생할 수 있습니다.1. Replication Delay- 가장 먼저 생각나는게 Replication Delay입니다. MySQL을 운영해보신분들이라면 다들 아시겠지만 MySQL의 경우 Replication이라는 것을 이용해서 Master-Slave 구성을 합니다. 이 방식을 통해..
AWS Aurora란? [1탄 - RDS MySQL과 AWS Aurora의 큰 차이점] 항상 시작만 하고 제대로 끝마무리를 짓지 못한 상태로 티스토리를 이어가는 것 같습니다. 또 오랜만의 글인데요. 이번에는 Aurora에 대한 글입니다. AWS 상에서 Aurora를 구성하고 또 운영하시는 분들이 한국내에는 그렇게 많지 않은 것으로 알고 있습니다. 현재 저희회사는 굉장히 많이 쓰고 있습니다. 저의 경우에는 Seoul 리전에서 Aurora를 운영한지 2년이 다 되어 가는 것 같습니다. 1.12부터 6월에 나온 1.17.3 까지 많은 이슈를 다루어 봤는데요. 차근차근 하나씩 이야기를 풀어보려고 합니다. 맨 처음! Aurora는 무엇인가? 부터 시작하겠습니다. 제 사견이 많이 들어간 글임을 참고해주시기 바랍니다. 또한 MySQL에 맞춰서 글이 쓰여져 있습니다. AWS Aurora란? - AWS가 ..