안녕하세요. 미들웨어 입니다.

 

이번 시간에는 지난 번에 이어서 쿠버네티스 신규 VM생성 및 kubectl설치에 대해 진행해보겠습니다.

oke 환경에서 cloudshell 로 접속하지 않고 로컬 액세서로 접속할때 필요한 신규 VM을 구성해보겠습니다

 

cloudshell 과는 다르게 서버에서 원격 접속을 할 수 있습니다. 

 

 

1. 신규 라우팅테이블 생성 (rt-public)

신규 클러스터(oke) 에서 vcn으로 들어갑니다.

 

라우팅테이블 이름은 rt-public 로 하겠습니다 

 

 

 

아래와 같이 규칙 추가 후 생성 

 

 

2. 신규 보안그룹 추가 (sl-public)

신규 보안그룹 이름은 sl-public 로 하겠습니다.

아래와 같이 규칙 추가 후 생성

 

- 수신 규칙 추가

 

- 송신 규칙 추가

 

 

3. 신규 서브넷 생성 (sn-public)

신규 서브넷그룹 이름은 sn-public 로 하겠습니다.

아래와 같이 규칙 추가 후 생성

 

- 여기서 중요한 것은 신규 생성한 라우팅테이블(rt-public)과, 보안그룹(sl-public) 을 서브넷에 포함시켜 주셔야 합니다.

아래 붉은 표시한 부분을 동일하게 설정하세요

 

 

4. 신규 VM 생성 (kubectl-public)

신규 VM이름은 kubectl-public 로 하겠습니다.

 

- 여기선 여지것 생성했던 네트워크를 지정해줘야 합니다.

- VM 신규 생성시 필히 공용키를 미리 준비해서 붙여넣기 해주세요.. VM생성 후 ssh 키 등록해도 인식이 안되네요. (버그인가..?)

 

컴퓨터 -> 인스턴스 -> 신규vm 생성

 

 

- 네트워킹은 위에서 생성한 것을 선택


 

 

 


5. 신규 VM서버에 kubectl 설치 

oci-cli 통해 kubectl 설치 및 구성을 진행합니다.

여기서 ocid 값은 개인 설정별 다르고 아래 참고해서 정보 기록해두세요.

경로 : oracle cloud 접속 후 왼쪽 MENU -> Identity(ID&보안) -> Users(사용자) 로 정보 확인 가능

 

- oci, python 설치버전 확인
python --version
Python 2.7.5


oci -v
2.26.3


- oci 정보입력
oci setup config


Enter a location for your config [/home/opc/.oci/config]:
Enter a user OCID: ocid1.user.oc1..aaaaaaaaga4kqvsdj47xy7rrv42ch6v5z77lyq5e2iskfrmky5.......xxx
Enter a tenancy OCID: ocid1.tenancy.oc1..aaaaaaaa6ma7kq3bsif76uzqidv22cajs3fpesgpqmm......xxx
...
31: us-sanjose-1): us-ashburn-1
Do you want to generate a new API Signing RSA key pair? (If you decline you will be asked to supply the path to an existing key.) [Y/n]: y
Enter ...




- kubectl 바이너리다운
curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -L -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl"
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 44.7M  100 44.7M    0     0  18.0M      0  0:00:02  0:00:02 --:--:-- 18.0M


- kubectl 설치
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
 
- api 토큰 추가 
cd .oci
cat oci_api_key_public.pem


- 키 복사 해두기

 

 

6. OCI 사용자에 API 키 추가 

- 사용자 -> 사용자설정 -> api추가 

- 복사한 키 붙여넣기 

 

 

7. 클러스터(OKE) 로컬 엑세스 

신규 생성한 VM에 putty로 접속하신뒤 로컬 엑세스에 명시되있는 순서대로 복사 후 붙여넣기 해주세요.


 

 

모니터에 나온내용을 복사후 붙여넣기 진행한뒤 kubectl 명령어 입력시 정보를 가지고 오면 성공!

 

- 콘솔에서 oci-cli 명령어로 kubectl 명령어 입력



- oke cli 명령어로 접속되는지 정보 확인
[opc@kubectl-public-45806 .oci]$ oci os ns get
{
  "data": "apackrsct01"
}


- 내 클러스터에 엑세스
[opc@kubectl-public-45806 ~]$ export KUBECONFIG=$HOME/.kube/config


- kubectl get 으로 nodes 정보 확인
[opc@kubectl-public-45806 ~]$ kubectl get nodes
NAME          STATUS   ROLES   AGE    VERSION
10.0.10.169   Ready    node    127m   v1.20.8
10.0.10.18    Ready    node    127m   v1.20.8
10.0.10.55    Ready    node    127m   v1.20.8

 

이렇게 설정하면 원격 서버에서 쿠버네티스 접속이 가능합니다.

+ Recent posts