uuuhhh
아주조코
uuuhhh
  • 전체 (68)
    • Cloud (22)
      • AWS (17)
      • NCP (4)
      • Tech (1)
    • Kubernetes (16)
    • Docker (1)
    • CI/CD (13)
    • Network (4)
    • OS (10)
      • Linux (9)
      • Concepts (1)
    • Language (0)
      • Golang (0)
    • Project (1)
      • Drone (1)
    • 요모조모 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • ⚠️ 2022/11/08 - 11/13 블로그 이관 작업 ⋯

인기 글

태그

  • CI
  • pod
  • EC2
  • build
  • ncp
  • LoadBalancer
  • kubernetes
  • docker
  • Jenkins
  • NodePort
  • network
  • NKS
  • Instance
  • 데이터베이스
  • AWS
  • argocd
  • Linux
  • minikube
  • service
  • Iam

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
uuuhhh

아주조코

K8s Service 인증
Cloud/NCP

K8s Service 인증

2022. 11. 13. 01:02
  • NCP K8s Service는 ncp-iam-authenticator를 통해서 IAM 인증을 제공한다.
  • IAM 인증을 통해서 kubectl을 사용하기 위해
    1. ncp-iam-authenticator를 설치하고
    2. kubectl 설정 파일을 수정하여
  • 이를 인증에 사용하도록 한다.

 

▪︎ ncp-iam-authenticator 설치 (for macOS)


1. Object Storage에서 ncp-iam-authenticator 바이너리를 다운로드

$ curl -o ncp-iam-authenticator <https://kr.object.ncloudstorage.com/nks-download/ncp-iam-authenticator/v1.0.5/darwin/amd64/ncp-iam-authenticator>

 

 

2. 바이너리에 실행 권한 추가

$ chmod +x ./ncp-iam-authenticator

 

 

3. $HOME/bin/ncp-iam-authenticator를 생성하고 $PATH에 추가

$ mkdir -p $HOME/bin && cp ./ncp-iam-authenticator $HOME/bin/ncp-iam-authenticator && export PATH=$PATH:$HOME/bin

 

 

4. Shell Profile에 PATH를 추가

  • 나는 zsh 를 쓰고 있으므로 ~
$ echo 'export PATH=$PATH:$HOME/bin' >> ~/.zshrc

 

 

5. ncp-iam-authenticator 바이너리가 정상 동작하는지 테스트

$ ncp-iam-authenticator help

 

▪︎ IAM 인증 kubeconfig 생성


  • 먼저 ncp-iam-authenticator를 사용하기 위해 API 인증키 값을 설정하는 두 가지 방법
    1. OS 환경변수 설정
    2. configure 파일 설정
    • OS 환경변수가 configure 파일보다 우선시 된다 !

 

 

1️⃣ OS 환경변수 확인


  • API 인증키 값 확인한다.
    • 마이페이지 → 계정 관리 → 인증키 관리

 

  • 확인한 API 인증키 값을 OS 환경변수로 설정한다.
$ export NCLOUD_ACCESS_KEY=[ACCESS_KEY_ID]
$ export NCLOUD_SECRET_KEY=[SECRET_ACCESS_KEY]
$ export NCLOUD_API_GW=https://ncloud.apigw.ntruss.com

 

  • 전체 환경변수 보기
$ printenv
  • 특정 환경변수 보기
$ echo $[value_name]
  • 환경변수 삭제
$ unset [value_name]

 

 

2️⃣ configure 파일 설정


  • 사용자 로컬 홈 디렉토리의 .ncloud 폴더에 configure 파일 생성 및 설정
    • 없으면 만든다 !
$ cat ~/.ncloud/configure
[DEFAULT]
ncloud_access_key_id = [ACCESS_KEY_ID]
ncloud_secret_access_key = [SECRET_ACCESS_KEY]
ncloud_api_url = <https://ncloud.apigw.ntruss.com>

 

 

➡️ kubeconfig 생성


  • ncp-iam-authenticator create-kubeconfig 으로 클러스터의 kubeconfig 생성한다.
$ ncp-iam-authenticator create-kubeconfig --region <region-code> --clusterUuid <cluster-uuid> --output kubeconfig.yaml
# 예시
$ ncp-iam-authenticator create-kubeconfig --region KR --clusterUuid 1234567890 --output kubeconfig.yaml
  • region-code
    • 클러스터의 리전 코드
    • e.g) KR, SGN
  • cluster-uuid
    • 클러스터의 UUID
  • --output
    • kubeconfig 파일이 저장될 path
    • 입력 안할 시 ./kubeconfig-<cluster-uuid>.yaml path로 파일 저장
  • kubeconfig.yaml 파일로 kubectl 명령 테스트 성공 !

 

 

⏸ kubectl 명령어 단축


  • 현재 kubectl 명령어를 사용하기 위해선 kubeconfig 환경 설정 파일까지 입력해야함
  • 너무 길어서 불편,,

 

  • 위에서 열심히 만들었던 kubeconfig.yaml 파일을 .kube/config 로 이름을 바꿔 이동하거나 복사한다.

 

  • 잘 동작하는 것을 확인할 수 있다 !

저작자표시 (새창열림)

'Cloud > NCP' 카테고리의 다른 글

RBAC 설정  (0) 2022.11.13
NKS Cluster 생성  (0) 2022.11.13
NKS 클러스터 구축을 위한 준비  (0) 2022.11.13
    'Cloud/NCP' 카테고리의 다른 글
    • RBAC 설정
    • NKS Cluster 생성
    • NKS 클러스터 구축을 위한 준비
    uuuhhh
    uuuhhh
    피땀눈물의 삽질기

    티스토리툴바