Tagged: kt

a voice of the costomer


비용을 지불하고 사용하는 서비스임에도 불구하고 VOC가, 대기업 특성상, 아주 더럽게(?) 사용될 수도 있다는 생각에 차마 SEND 버튼을 누르지는 못하였다. 아직 충분히 늙지 않았나보다.

고객센터에서 전화 응대를 받는 사람들은 문제가 없는데,

장애가 발생 문의 후 전화하는 새끼들은 싸가지가 장난이 아니다. 이건 뭐… 같은 회사 옆 부서 새끼가 툭툭대면서 전화하는 것 같다.

장애를 고치고도 (뭐 빨리 해 줄 필요도 없었는데) 우리가 마음이 좋아서 고쳐줬다.
확인해 보시든가…. 뭐 이런 자세다.

애시당초 “고쳐는 드릴께..!” 뭐 이런 느낌?

=====================================================================
두 가지를 문의드렸었습니다.

하나는 Cloud Console 에서 reseller 용 사용자 관리메뉴를 여쭤봤고
두번째는 uc????s????e-sdk에서 어떤 API를 사용하면 될지를 여쭤봤습니다.

언급하신 PDF의 해당 위치에 제가 문의드린 사항에 대한 설명이 있나요?

아래처럼 대답을 주셔야 하는 거 아닌가요?

현재 리셀러들을 위한 UI는 별도로 준비되어 있지 않습니다.
또한 uc??????-sdk 에도 해당 서비스에 대한 client API 가 준비되어 있지 않습니다.
API 를 이용한 연동방법은 아래 메뉴얼의 “제 7 장 Reseller service.” 를 참고하시기 바랍니다.

https://uc????b??.ol???.com/manual/????.pdf

문의하기 답변 제목 : Re: 리셀러 서비스에서 사용자(user)를 추가/갱신/삭제 할 수 있는 메뉴는 어디에 있나요
K? uc???? ????er를 사용해 주셔서 감사합니다.
문의하신 내용에 대한 답변을 드립니다.
[답변내용]
아래 메뉴얼의 “제 7 장 Reseller service.” 를 참고 부탁 드립니다.
https://uc????b.ol???.com/???/???.pdf
추가적인 문의 사항이 있으시면 재문의 주시기 바랍니다.
감사합니다.
답변 내용 이외의 응대에 대한 불만족 사항은 uc????b-??c@k?.?으로 보내주시기 바랍니다.

kt ucloud storage api 문제점


kt ucloud storage api를 위한 클라이언트를 하나 만들던 중 발견한 문제점들을 기록해 둔다.

X-Auth-(User|Key)

‘X-Storage-User’는 ‘X-Auth-User’로 대체 사용이 가능하며, ‘X-Storage-Pass’ 역시
‘X-Auth-Key’ 대체 사용이 가능하며 이들간의 혼용도 가능하다.

500 에러 난다. 해결된 듯 하다.

HEAD 메서드에 Accept 가 필요하다?

아무래도 HEAD 기능을 따로 만들지 않고 GET 으로 대체하는 듯 하다.
(없어도 된다는) ?format= 을 명시적으로 붙이면 잘 되는지 모르겠지만 Accept: text/plain 으로 사용하였다. wildcard(*/*)도 되는 듯 하다.

header capitalization

“HTTP header 는 case-insensitive하니까 정상임!”. 뭐 이따구 응답밖에 없다.
제공되는 SDK로 때려봐도 사용자측에서 정상적으로 사용할 수 없다.

updating meta: {aA=A, bb=b}
retrieved meta: {Aa=A, Bb=b}

asynchronous processing?

서버측에서 asynchronous 하게 처리되는 듯 하다. 예를 들어, container에서 단 하나 뿐인 object를 삭제한 후(204) 곧바로 container를 삭제하면 때때로 409가 날라온다.

auth token!!!

이건 가장 짜증나고 어려운 문제이다.

you’re expired!!!

왜 token에 expiration을 두었는지는 대충 이해가 간다. 매번 새로운 token 을 생성해 주고 계속 쌓이는 놈들 삭제하기 귀찮았거나 token을 저장해 두고 계속 사용하는 사람들 때문에 삭제 루틴이 귀찮아서였겠지.
하지만 이 시점에, 누군지, 매우 병신같은 해결책을 만들었다. 24시간 이후 expire되는 토큰을 재사용하는 것은 상관 없는데 (클라이언트쪽에서는 상관할 바가 아닌데), 한 계정에서 다수의 토큰을 (X-Auth-New-Token 헤더를 사용해서) 생성할 수 없다. X-Auth-New-Token을 사용하는 순간 기존토큰을 사용하는 세션들은 좆된다. 이 기존 세션들이 또 다시 X-Auth-New-Token을 사용하는 순간 또 다는 세션들이 좆된다.
X-Auth-New-Token 헤더를 사용하지 않고 서버에서 주는대로 사용한다 하더라로 24시간이 되는 그 시점이 어떤 행동을 할 지 명시되지 않았다. 24-t 에 토큰을 받고 24+t 시점에 사용을 하게 될 경우 (t is minimum) 어떻게 동작하는지 의문스럽다.

use reseller?

리셀러 서비스를 사용하는 것도 동일한 문제점이 있다. 특정 사용자를 생성하고, 권한을 부여한 후, 사용한다고 해도 토큰이 expire되는 순간 어떻게 동작할 지 의문이다.

what now?

현재 가능한 시나리오는 매번 random 한 reseller user를 생성한 후 그 user에 특정 container에 대한 접근 권한(read/write)를 부여 한 후 작업을 수행한 후 그 user를 삭제하는 것이다. 이런 썅…

DIY

리셀러 서비스와 관련된 user및 권한 관리 메뉴는 없다. 제공되는 sdk에도 없다. 문의해 보면 ‘…pdf 어디어디를 참고해주세요’라는 답변만 돌아온다.

리셀러 서비스

최초 생성한 유저(admin) 계정으로 자기 자신을 삭제할 수 있다. 리셀러 서비스 날라가는 것은 물론이거니와 UI 도 먹통이 된다. 헐…… 이걸 도대체…..이렇게 만들기도 힘들겠다.

고객 문의

문의를 넣어보는 것 자체가 시간 낭비다.

i’m paying for myself!!!

이런걸 돈을 내고 사용할 수 밖에 없는 현실이 싫다. kt에 그 많은 Ph.D. 들은 뭐하고 사는지 궁금하다.

olleh ucloud biz ubuntu data disk


references

fdisk

host:~$ ls -l /dev/xvd*
brw-rw---- 1 root disk 202,  0 2012-09-18 12:15 /dev/xvda
brw-rw---- 1 root disk 202,  1 2012-09-18 12:15 /dev/xvda1
brw-rw---- 1 root disk 202,  2 2012-09-18 12:15 /dev/xvda2
brw-rw---- 1 root disk 202, 16 2012-09-18 12:15 /dev/xvdb
host:~$ sudo fdisk /dev/xvdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0xec499834.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-10443, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-10443, default 10443):
Using default value 10443

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
host:~$

mkfs

host:~$ sudo mkfs /dev/xvdb1 -t ext4
host:~$

/etc/fstab

host:~$ sudo mkdir /data
host:~$ mount /dev/xvdb1 /data -t ext4
host:~$ cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid -o value -s UUID' to print the universally unique identifier
# for a device; this may be used with UUID= as a more robust way to name
# devices that works even if disks are added and removed. See fstab(5).
#
# <file system>                           <mount point>   <type>  <options>           <dump>  <pass>
proc                                      /proc           proc    nodev,noexec,nosuid 0       0
# / was on /dev/xvda1 during installation
UUID=blar blar blar                       /               ext3    errors=remount-ro   0       1
# swap was on /dev/xvda2 during installation
UUID=blar blar blar                       none            swap    sw                  0       0

/dev/xvdb1                                /data           ext4    defaults            0       0
host:~$ shutdown -r now
host:~$

olleh ucloud biz ubuntu account


KT olleh ucloud biz 서버를 구매하면 기본으로 root 계정을 사용하게끔 되어 있는 것 같다.

add new adminsudo user

root@xxx:~$ useradd <username> -m -s /bin/bash
root@xxx:~$ passwd <username>
Password:
Retype new password:
passwd: password updated successfully
root@xxx:~$ adduser <username> sudo
Adding user `<username>' to group 'sudo' ...
Adding user <username> to group sudo
Done.
root@xxx:~$

disable root account

username@host:~$ sudo passwd -l root
passwd: password expiry information changed.
username@host:~$