바이오해커스넷 모인모인 위키를 10년 이상 쓰고 있던 2014년 당시, 나는 장고로 개인 블로그 겸 위키 파프리카를 만들고 있었다. 블로그를 시작으로 점차 위키로 확장하던 즈음, Ecogwiki라는 놀라운 위키엔진을 보고는 파프리카 개발 의욕을 접고, Ecogwiki로 넘어가기로 했다. 10여년 지난 지금 생각하면 안타까운 결정이긴 했다. 그사이 구글앱엔진에서만 구동되던 Ecogwiki는 개발이 중단되었고, 어쩔 수 없이 구글앱엔진, 구글 클라우드 플랫폼 (Google Cloud Platform, GCP)을 계속 써야만 했다.
GCP 위에서 구동되는 Ecogwiki for Biohackers 사이트는 거의 개인위키로만 쓰였는데, 점차 요금이 증가하면서 감당하기 어려워졌다. 2019년에는 과다 요금에 대해 보상받기도 했다. 하지만 보상은 잠깐. 계속된 요금 증가에 결국 방화벽 설정으로 국외 접속을 차단하기로 했다. 국내만 접속 가능하도록 하는 방화벽 설정은 쉽지 않더라. 암튼 현재 설정은 국내라고 모두 접속 가능하지 않고, 내 주변만 가능한 상태다. 하여 윗문단의 e.biohackers.net 링크가 동작 안할 수 있다.
그러다 잠시동안 방화벽을 열어둬야 할 일이 있어 열었다가... 불특정 IP로 부터 과도한 접속, 요금 폭탄을 맞았다.
개인위키라 거의 접속 없는 사이트에 2월 14일 오후 8시부터 초당 200건이 넘는 요청이 다음날 오후 12시까지 계속 되었다. 아침 6시에 구글 클라우드에서 10만원 결제되었다는 문자가 왔고, 뭐지? 알아본다고 오전 12시경 들어갔다가, 이거 뭐야 하고는 방화벽 차단으로 막았다.
이날 잠깐 사이의 요청은 총 147,742,143회 발생했으며, 이로 인한 요금은 ₩211,747 이라고. 음냐;
이걸 내고 그냥 가만있자니 너무 억울하다. 내가 접속한 것도 아닌데, 그리고 분명 구글앱엔진에는 요금 상한을 정해두고 이를 넘어서면 서비스를 중지하는 기능이 있었다. 오래되긴 했지만, 분명 그 기능을 켜두었는데 이런 요금은 정말이지 부당하다. 하여 요금 환불받기 작전 시작.
GCP 고객센터 연결을 열심히 찾아보았다. 그런데 왠걸, 고객센터 링크가 안보인다. 계속해서 GCP 메뉴얼로만 연결되고, 나의 문제를 문의할 곳은 보이지 않았다. "Google Cloud Billing 지원" 링크를 타고 들어가면, 결제 도우미라고 자동 챗봇이 뜨기만 하고, 내 문제를 이해시킬 수 없었다.
찾다보니, 이런 페이지도 보인다. 고객지원을 받으려면 "Customer Care" 서비스에 가입해야 하고, 유료라고?
답답한 마음에 GPT-4o에게 물어본다. 도움이 안된다. 아, 실시간 검색 기반은 퍼플렉시티가 좋다고 했던가?
오, 아까 봤던 결제 도우미 AI 채팅을 계속 하다보면 상담사와 연결되는거구나! 이런 사실을 AI에 물어봐야만 알 수 있다니. 나도 참.
다시 "Google Cloud Billing 지원 --> 결제 도우미 챗봇"을 통해 계속 나의 문제를 말한다. 결국은 사전 준비된 항목만으로는 내 질문에 만족을 줄 수 없다고 보고는 특정 입력 폼이 나오면서 나의 문제를 입력받는다. 여기에 나의 상황을 꼼꼼히 기록하고 전송. 그리고 약 3일 후에 "Google Cloud Billing Support" 로 부터 답장을 받았다.
... (생략) ...
일단 결론을 먼저 전달드리자면, 고객님의 App에서 사용량이 발생된 것이 맞다- 는 점입니다.
전체적인 내용을 정리해 드리자면 다음과 같은 내용이 확인되었습니다.1) 2월 14일 전후 1달(스크린샷 1번 - 스크린샷 2번) : 2월 14일에만 엄청난 양의 Read가 발생한 것을 확인했습니다. 해당 내용은 당연하게도 App을 통해 App engine의 사용량을 유발한 것으로 사료됩니다.
... (생략) ...
상기의 내용이 147,742,143회나 발생했다고 합니다. 이 내용을 바탕으로 설명을 드리자면, 해당 내용이 Wiki에서 Root를 요청했고, 모두 응답을 받았으며 이로인해 Firestore에서 그 때마다 Read를 해야했습니다. 이에 따라 현재와 같은 비용이 발생했습니다.
비용 발생이후, 방화벽이 요청에 대해 거부하도록 동작하는 내용을 확인할 수 있었습니다. 이는 3번 스크린샷을 보시면 내용을 확인할 수 있을 것입니다. 그러나 Billing issue를 담당하는 Engineer들 또한 누가 그랬는 지 명확한 답변을 드릴 권한이 존재하지 않아 해당 부분을 조사할 수는 없었습니다. 상기의 조사와 더불어 다음의 내용을 전달해왔습니다. : Firestore 팀으로서 전달 드릴 수 있는 내용은 “App engine으로 당신의 App에서부터 엄청난 양의 읽기 요청이 들어왔습니다.” 입니다.
...(생략)...
메일의 내용은 나의 App에서 발생한 사용량이므로, 과금은 정당하다는 것. 이후, 나는 몇번의 메일을 추가로 보내서 내가 요청한 것이 아니며, 개인 용도의 소규모 웹사이트가 이 요청에 모두 응답하고, 비용을 청구하는 것은 부당하다고 얘기했다. 그리고, 예전에 할당량을 통해 요금이 과도하면 자동으로 서비스를 중단하는 기능을 설정했음을 강조했다.
(나의 답장)
...(생략)...
저는 할당량을 정해 두고, 한도를 넘어서면 중지 혹은 알림 설정을 해 두었으나, 받지 못했습니다. 이 부분도 부당합니다. 저와 같이 소규모로 구글 클라우드를 사용하는 사용자에게 이런 예상치 못한 상황에 대해 비용을 지불하게 하는 것은 매우 억울한 일입니다.
본 과도한 접속 요청은 누가봐도 비정상적인 요청인데, 이를 감지하고 차단할 수 있어야 좋은 서비스라고 생각합니다. 비정상적 트래픽임에도 비용을 청구하는 것은 부당합니다. 다시한번 본 청구에 대한 철회와 결제된 금액에 대한 환불을 요청합니다.
본 이슈의 원만한 해결을 희망합니다. 만일의 경우, 한국소비자원 및 다양한 방법을 통해 억울함을 호소하고자 합니다.
이후, 다음과 같은 메일을 받았고,
...(생략)...
고객님께서 말씀해 주신 내용과 겪으신 불편함에 대해 이를 경감해 드릴 수 있도록, 조정 절차를 진행해 보고자 합니다. 현재까지 저희가 조사를 해온 부분, 그리고 고객님께서 말씀해 주신 상황들을 전부 종합하여, 조정 신청을 할 것입니다. 그러면 기록된 내용을 바탕으로 심사가 이뤄지며, 이에 따라, 고객님께서 부담하실(하신) 금액에 대해 전/일부를 경감해 드릴 수 있습니다.
...(생략)...
최종적으로, 50%의 비용을 환불받기로 했다. 일부 경감받긴 했지만, 결국 10만원 넘는 돈은 내야만 했다. 아쉽고 억울함에 한국소비자원 연락을 고려했다가, 그래도 마지막까지 친절하게 나의 문제를 상담해준 구글 클라우드 결제 지원팀 담당자분께 감사한 마음에 여기까지만 하기로 했다.
클라우드 서비스 요금은 정말이지 정신 잘 차리고 들여다 봐야 한다. 문제의 Ecogwiki for Biohackers 사이트는 현재 내 주변 일부를 제외하곤 방화벽 설정되어 있고, 다른곳으로 옮겨 갈 것이다. (현재 옵시디언 고려중)
여기까지, 과다한 비용 환불 요청기. 다음 글은 옵시디언으로 옮겨 간 이야기가 될 듯!