cb-spider icon indicating copy to clipboard operation
cb-spider copied to clipboard

[Tencent] Something wrong when creating cb-user and more...

Open powerkimhub opened this issue 2 years ago • 3 comments

@choryang @dogfootman @dev4unet

  • 증상: I/O Rule 검증 시험이 All Pass하다 Fail 나다가 불안정함

  • 분석 결과 Key 관련 2가지 이슈와 연관 이슈 1가지가 존재합니다.

    • 확인 부탁드립니다.
  • [Issue-I] 이전 Test 완료 후 clear 시 Key가 안지워진 경우

    • VM 삭제 후 key 삭제 시에 보통 한동안 사용 중인 VM 존재 오류 발생합니다.
    • 이 경우를 위해서 검증 시험에서는 보통 30번(약 30sec) 시도로 거의 삭제 되었습니다.
    • Tencent 경우 반복 시험을 여러번 해보니, 30회 이상 시도에도 삭제되지 않고 버티는 경우가 종종 발생했습니다.
    • 이 경우 이미 동일 Key가 존재하기 때문에 Key 생성시에 local에 저장하는 private 키가 받아지지 않으며,
    • 이후 ssh 명령 실행 오류로 Rule 검증 시험 일부 Fail 상태
    • Test Scriipt 내 삭제를 120회 시도로 늘려서 해결 (이 껀은 이슈 요청 보다는 현황 공유입니다.)
  • [Issue-2] VM 내부 cb-user Key 설정 이슈

    • tencent는 cloud-init을 이용하여 다음 스크립트를 태워서 cb-user 계정을 추가하고 있습니다.
      • cb-spider/cloud-driver-libs/.cloud-init-tencent
      • 이중 VM 내부에서 다음 명령 실행이 성공하거나 못하거나에 따라
        • 외부에서 cb-user 계정 접근이 가능했다 못했다 하는 현상이 발생하고 있습니다.
        • curl -s http://169.254.0.23/latest/meta-data/public-keys/0/openssh-key > /home/cb-user/.ssh/authorized_keys
      • 문제가 발생할때 VM 내부 현황(cb-user 계정 로그인 불가능, ubuntu 계정으로 로그인 후 확인)
          cat /home/cb-user/.ssh/authorized_keys
        
          <html>
            <head>
              <title> 404 - Not Found </title>
              <body>
                    <h1> 404 - Not Found </h1>
              </body>
            </head>
          </html>
        
    • 추정: cloud-init meta 정보 서버가 올라오기 전에 culr fetch가 요청되는 걸로 보입니다.
      • 동일 VM에 들어가서 curl fetch를 실행해보면 해당 Key를 잘 가져 옵니다.
    • 관련 사항 확인 및 보완 부탁드립니다.
  • [Issue-3] VM 반환 정보 중 Key Systme ID 공백

    • 다음과 같이 VM 생성시 반환되는 VM 정보에 Key에 대한 SystemId가 없이 올라오는 경우가 많습니다.
    • Issue-2와 연관된 이슈일 수도 있겠습니다. 점검 부탁드립니다.
    ...
    
    SecurityGroupIIds:
    - NameId: SG-Rules-Test-SG01
      SystemId: sg-nln0ezar
    KeyPairIId:
      NameId: SG-Rules-Test-keypair-01
      SystemId: ""   <============================= ???
    ...
    

powerkimhub avatar May 16 '22 04:05 powerkimhub

1번항목을 위해 VM 삭제 상태확인과 관련 리소스 삭제를 체크할 수 있는지 확인해보도록 하겠습니다.

2번항목은 우선 key 가져오기 전 2~3초정도 delay를 주어 호출해 보는 것은 어떨까요? 접속할 cb-user를 추가하는 방법을 tencent에 물어보았습니다. 답변오는대로 가능한 방안을 공유해 드리겠습니다.

3번항목의 경우에도 2번항목과 연관이 있어보이는데 우선 상황을 재현해 보도록 하겠습니다.

dogfootman avatar May 17 '22 02:05 dogfootman

@dogfootman

  • 2번 항목의 경우 가급적 sleep 보다는 cloud-init 구문을 이용하여
  • cloud-init meta server 상태 체크나, curl 반환 값 check 등을 이용하는 게 좋을 것 같습니다.
  • 아시는 바와 같이, 부하에 따라 delay는 보장할 수 없기 때문입니다.

powerkimhub avatar May 17 '22 02:05 powerkimhub

@choryang @dogfootman @dev4unet

[Issue-2] VM 내부 cb-user Key 설정 이슈 재연 관련

  • 관련 Slack 문의: https://cloud-barista.slack.com/archives/CLFCLNFTJ/p1652943247872819

  • SG 시험관련 부분을 제외시키고
  • 순수한 VM 생성만 시험해보았습니다.

  • Sequential 여러 VM 생성 시험: 관련 증상 없음

    • 순차 5개: 1~2회
    • 순차 10개 등: 수회
  • Parallel 여러 VM 생성 시행: 관련 증상 없음

    • 동시 10개 : 2~3회
    • 동시 20개: 2~ 3회
    • 동시 50개: 1회
    • 동시 생성 요청시 이슈: RequestLimitExceeded(초당 10회 요청 처리 제약)
      • 이 이슈는 타 CSP들도 가지고 있는 안정화 정책이므로,
      • 추후 별도 이슈로 열 예정입니다.
      • 현재는 동시 10개 요청하고 3초 쉬었다고 동시 10개 요청하는 식으로...

  • 둘 중 하나인 듯합니다.

    • (1) 공교럽게 Tencent 유지보수 등과 겹쳤거나, 일시적인 현상
    • (2) SG 검증 시험 패턴에 의한 영향
  • (1)은 좀더 지켜보는 수 밖에 없을 것 같습니다.

  • (2)의 경우는 제가 좀 더 시간을 두고 제가 다시 확인해보도록 하겠습니다.

    • 그래도, Tencent에 문의하셨던 계정 추가 방법에 대한 답이 온다면,
    • 공식 추천 방법으로 변경하는 것은 고려해볼만 하겠습니다.

[Issue-3] VM 반환 정보 중 Key Systme ID 공백

  • 이 부분은 정상적인 상태에서도 안 올라오고 있습니다.
  • 확인 부탁드립니다.

powerkimhub avatar May 19 '22 23:05 powerkimhub