IT/Cloud Architect

openstack API

송시 2024. 6. 6. 01:14
728x90

맡고 있는 고객사는 KT 클라우드를 사용하고 있다.

 

DB 서버의 핫백업이 완료되면 1.9TB 가 NAS에 백업이 된다.

 

그런데 데이터의 안전성을 위해 반드시 2차로 백업을 해야하는 요건이 있는 고객이다.

 

HDD인 NAS에서 1.9TB 의 약 50개의 파일(다행이도 잔파일은 아님)을 백업솔루션을 네트워크로 전송되는데

 

1주일 하고도 몇일이 더 지났지만 끝나지 않았다.

 

NAS 의 용량 문제로 1차 백업(DB 핫백업을 통해 NAS 로 저장하는)을 1주일에 1회 하기로 했는데 2차 백업이 2주일 쯤이 되야 한번 백업이 된다면 1차 2차 백업에 대해서 모두 꼬이겠다는 생각이 들었다.

 

그러던 중 KT Cloud 에도 open api 를 제공하고 있다는 것을 알게 되어 KT cloud 에서 제공해주는 메뉴얼을 참고해보았다.

 

KT cloud 는 크게 cloudstack 을 사용하고 있는 G존과

 

openstack 을 사용하고 있는 D존이 존재하고 고객은 D존에 있었기에 D 존의 메뉴얼을 참고했다.

(https://cloud.kt.com/docs/open-api-guide/d/guide/how-to-use)

 

그런데 크게 2가지 문제가 있었다.

 

1. 해당 가이드는 민간존에서 사용가능한 메뉴얼이였고 공공존에서는 해당 메뉴얼을 제공하고 있지 않았다.

2. KT cloud 의 메뉴얼은 "친절함", "현행화", "신뢰성" 존재하지 않는다는 것이다.

 

1번은 다행이도 KT cloud 의 문의하기를 통해서 아주 빠르게 답변을 얻을 수 있었다.

KT cloud 의 open api 의 BASE_URL 이라고 할 수 있는 부분이 https://api.ucloudbiz.olleh.com/d1 인데

공공존은 URL 의 d1 을 gd1 으로 바꾸기만 하면 되었다.

 

2번은 KT cloud 문의하기 와의 3년간의 경험을 통해 얻게된 내 경험으로

 

메뉴얼 마찬가지로 한단계 나아가서 "친절함", "신뢰성", "현행화", "고민과 생각이 없는 답변" 으로 대응해주었기에 더 이상 진행하지 않고 빠르게 포기했다.

 

예를 들어 이런 일이 있었다.

문의: KTC 에서 제공하는 open api 의 NAS 부분에 snapshot을 생성하는 내용이 없습니다. 없는 것인지 메뉴얼이 현행화가 안된 것인지 궁금합니다.

답변:

https://cloud.kt.com/docs/open-api-guide/d/computing/image-snapshot 에 있으니 확인해보시면 됩니다.

속마음: 그거 보고 없다고 하는데 KT Cloud 답변은 또돌이를 하는구나, 3년간의 경험을 통해 나의 혈압을 높이지 않는 것을 선택하자. (현재 24년 6월 6일 해당 문서에는 없다. 나중에 누군가가 저 URL 을 눌렀을때 "있는데 글 작성자는 왜 날리부르스?" 라고 내가 욕먹는 날이 빨리 왔으면 좋겠다.)

 

그렇게 포기하고 다른 방법을 고민하던 차에 정말 우연하게도 "아 몰랑 그냥 그럴 싸한 단어 찍어보자" 라고 하고 주소에다 삽질을 이어가던 중에 몇개가 얻어걸리는 것이였다.

 

그러던 중 그러한 삽질의 결과로 "이거 혹시 openstack에서 제공하는 api 와 유사할 수 도 있는거 아냐?" 라는 생각이 전두엽을 지나갔다.

 

그렇게 openstack 에서 제공하는 api 를 찾게 되었고 (https://docs.openstack.org/ko_KR/api-quick-start/) 이곳에서 추가로 많은 힌트를 얻었다.

 

여러 우여곡절을 통해서 NAS 의 snapshot 을 1주일에 1번씩 자동 수행하고, 2주가 지난 snapshot 은 삭제하는 python code 를 작성해보았다.

 

NCP 에서 제공하는 cloud function 용으로 만들었으니 참고해서 필요할 때 활용하면 좋지 않을까?

https://github.com/songsi22/ktcloudnasapi/

 

GitHub - songsi22/ktcloudnasapi

Contribute to songsi22/ktcloudnasapi development by creating an account on GitHub.

github.com

 

*KT cloud 에도 code run 이라고 NCP 의 cloud function 과 같은게 있다.

 

출시한지도 얼마 안되고 했지만 역시나 KTC 의 메뉴얼은 앞서 설명한 삼가지와 사가지가 없어서 code run 으로 배포해도 되었겠지만 빠르게 포기 하고 cloud function 에 cron 으로 등록해두어 잘 쓰고 있다.

 

그렇게 만들고 고객에게 보고하려던 찰나에 문득 이런 고민이 되었다.

 

"NAS snapshot 이 2차 백업으로써의 가치가 있는거야?"

 

728x90