티스토리 뷰

반응형

파일 저장소 마이그레이션 후기

사연

사실 이 이야기는 내가 입사하기전 22년 초부터 나온 이야기 일듯하다.
본래 우리 회사의 CDN관리를 한 기업에서 전담하여 관리해 왔고 해당 기업은 주로 FTP 방식으로 관리해온듯 하다.

그러나 뉴스회사가 그렇듯 방대한 이미지 데이터와 영상관리에 우리가 가용할 수 있는용량이 부족해지자 해당 기업은 2가지 선택지는 주었는데
하나는 비용 업그레이드이며 다른 하나는 Object Storage S3로 변경하여 관리하는 것이였다.

사실 이 두가지는 모두 사용해본 경험으로서는 S3가 다양한 이점을 가져다 주고
이러한 이점 때문인지 회사 또한 선택지에 대한 고민은 없었다고 했다.

변경 목적

첫 번째

가장 우선 순위는 Object storage가 가진 저장소의 특성일 것이다.
데이터를 객체 단위로 저장하기 때문에 기존 블록 단위 저장방식과 달리
데이터 자체를 포함한다는 점은 검색 및 관리 측면에서 큰 이점을 가져온다.

두 번째

개발 과정에서 느낀 이 둘의 차이점은 단순함 일듯 하다.

FTP는 TCP/IP 프로토콜을 바탕으로 세션을 다루어 데이터를 옯기는데
** 세션연결 -> 요청 및 결과 반환 -> 세션 해제** 의 과정으로 데이터가 저장되며
매 요청마다 연결과 해제를 반복해 주어야한다는 것이 단점이였다.
또한 ASCII 파일과 Binary 파일을 구분하기 때문에 저장 방식이 달라진다.

반대로 Object Storage는 API 방식을 사용하여
계정정보과 요청 사항을 함수로 전달하면 되기 때문에 전 과정보다 훨씬 단순해 진다.
또한 저장 방식에도 구분이 없어 더욱 편리해 졌다.

세 번째

FTP 보안에 대해 많은 것을 신경써야 했다.

FTP로 전송되는 데이터는 암호화가 되지 않아 MITM 공격에 당할 경우 그래도 노출될 수 있으며 계정정보에 사용될 패스워드의 경우 평문 암호화를 사용하기 때문에 쉽게 노출될 가능성이 있다.

이러한 보안이슈로 FTP에 SSL 혹은 SSH를 합하여 사용하는 암호화 프로토콜 방식을 사용하거나 VPN을 사용하는 등 많은 것을 고려해야하는 번거로움이 따른다.

Object Storage

Object Storage는 대용량의 비정형 데이터를 저장하는 데 사용되는 데이터 스토리지 방식 중 하나입니다. 객체는 고유한 식별자와 데이터로 구성되며, 전체 객체 단위로 저장됩니다. 객체는 파일이나 블록 형식이 아니라 데이터 자체를 포함하고 있기 때문에 검색 및 관리가 용이하며, 대규모 데이터를 더 효율적으로 관리할 수 있습니다.

FTP(File Transfer Protocol)

TCP/IP 프로토콜을 기반으로 하는 파일 전송 프로토콜이며 응용계층에서 동작한다.

FTP는 클라이언트-서버 모델을 기반으로 동작하며, 클라이언트와 서버 간에 제어 및 데이터 연결을 설정후 파일 전송을 수행한다.

후기

회사 내부의 모서비스를 Object Storage 방식으로 변경하는데에는 2달 정도 소요된듯 하다.

코드 변경 및 테스트 -> CND 데이터 이전 -> 최종 적으로 서비스 적용

3단계에 이르는 과정이지만 CDN기업과 협업으로 작업이 이루어지기 때문에 일처리가 쉽지많은 않았다.
또한 메인 서비스와 계열사 까지 총 6가지 정도의 서버를 변경하고 서비스 도메인의 코드 수정까지 많은 번거로움까지 뒤따랐다.

덕분에 작업을 거치며 우리 회사의 서비스 과정과 CDN 처리 방식 그리고 서비스와 서버 연결 상태 등 전체적인 관계를 이해할 수 있었던 좋은 기회이며 PHP로 S3 API를 구현하는 작업이 있어 실력 향상에 도움이 되었다.

반응형
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함