ncp cli로 쿠버네티스를 실행하려다 사용하던 linux_cli가 들어있는 폴더의 위치를 바꿨는데(Download -> <내가 원하는 폴더>) ncloud 파일 실행이 안되었습니다. 그 문제를 해결한 과정을 정리하였습니다.
cli_linux 폴더 안에 있는 ncloud 파일을 vim ncloud를 통해 열면 아래와 같이 설정되어 있습니다.
실행이 안된다면 아래와 같이 자바랑 .jar 파일 경로를 바꿔야합니다.
#!/bin/bash
/Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home/bin/java -jar /Users/ganghyeong-geun/Downloads/FIN_CLI_1.1.20_20240620/cli_linux/lib/ncloud-api-cli-1.1.20-SNAPSHOT-jar-with-dependencies.jar "$@"
-jar 기준으로 앞 부분은 자바 파일 위치이고 뒤 부분은 .jar 파일 위치입니다.
이 경로가 제대로 설정되어 있지 않는 경우 cli_linux 폴더에 있는 ncloud 파일이 잘 실행되지 않을 수 있습니다.
경로가 문제라면 1, 2번을 확인하시고 그래도 안되면 /usr/local/bin/ncloud 파일에 문제가 있을 수 있으니 3번으로 가보시면 됩니다.
1. "./jre8/bin/java: cannot execute binary file"이 출력될 때(자바 문제)
그 다음 ./ncloud
명령어로 실행하려고 하면 실행이 안됩니다.
cli_linux/jre8/bin/java에 들어있는 자바 버전을 실행할 수 없어서 문제가 발생합니다.
호환되는 자바 버전을 설치하여 ncloud 파일에 있는 자바 경로를 변경해주면 됩니다.
위의 사이트에서 자바를 다운 받을 수 있습니다. 24년 8월 기준 저는 17-LTS jdk를 다운받겠습니다.
17-LTS를 사용하는 이유?
최신 버전은 21-LTS입니다. LTS를 무조건 추천하며 네이버 클라우드에서 가장 최신버전은 문제가 생길 수 있다고 하니 한 단계 낮은 17버전을 선택해줍시다.
저는 애플 실리콘 맥을 사용하고 있기 때문에 "aarch64"를 선택했습니다. 만일 인텔맥을 사용하시는 분들은 "x64"를 선택해서 jdk를 다운받으시기 바랍니다.
다운받아서 설치해줍니다. 설치경로를 변경하지 않았다면 아마 이곳에 설치될 겁니다.
/Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
/Home/bin 안에 java 파일이 있을겁니다.
2. .jar 파일 경로 문제
경로를 하드코딩하지 않고 환경변수 설정으로 경로를 지정해주겠습니다.
echo $NCLOUD_CLI_JAR_PATH
아무것도 출력되지 않는다면 비어 있는 경우입니다.
저는 .jar 파일의 위치를 고정해 놓고 사용해서 발생했는데 환경변수를 알맞은 위치로 다시 수정해 주시면 됩니다.
export NCLOUD_CLI_JAR_PATH="/Users/ganghyeong-geun/Desktop/work/cloud/ncloud-study-0818/FIN_CLI_1.1.20_20240620/cli_linux/lib/ncloud-api-cli-1.1.20-SNAPSHOT-jar-with-dependencies.jar"
경로는 자신의 경로에 맞게 수정해주시면 됩니다.
잘 적용 됐는지 확인하기
echo $NCLOUD_CLI_JAR_PATH
1, 2번 지정한 후 ncloud 파일을 cat 명령어로 확인해보세요
#!/bin/bash
/Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home/bin/java -jar "$NCLOUD_CLI_JAR_PATH" "$@"
이런식으로 설정이 되었다면 ./ncloud를 다시 실행해보세요.
3. ncloud 스크립트가 다른 경로를 찾고 있는 경우
ncloud 명령어를 실행할 때 심볼릭 링크가 설정되어 있다면 시스템은 File: /usr/local/bin/ncloud 이 위치에 있는 파일을 참조한다고 합니다.
vim $(which ncloud)
실행해서 자바 파일과 jar 파일의 경로를 확인해보시기 바랍니다.
경로가 이상하다고 생각된다면 /usr/local/bin에 있는 ncloud 파일을 삭제하고, cli_linux에 있는 ncloud파일에 경로를 올바르게 설정한 다음, 다음 명령어를 이용해서 /usr/local/bin으로 파일을 복사하세요
sudo cp <cli_linux 폴더가 있는 경로>/cli_linux/ncloud /usr/local/bin/ncloud
이제 /usr/local/bin 폴더에 ncloud 파일이 복사되었습니다.
실행 권한도 부여해줍니다.
sudo chmod +x /usr/local/bin/ncloud
4. 확인
ncloud vserver getRegionList
'[Cloud] > [NCP]' 카테고리의 다른 글
[NCP] 테라폼으로 NCP에 쿠버네티스 설치 (4) | 2024.08.20 |
---|---|
[NCP] 쿠버네티스 콘솔로 생성(NKS) (0) | 2024.08.19 |
[NCP] NCP 로드밸런서 생성 및 연결 (0) | 2024.08.17 |
[NCP] NCP CLI로 VPC, 인스턴스 접근하기(macOS) (0) | 2024.08.16 |
[NCP] NCP Global DNS(도메인을 NCP 인스턴스와 연결하기) (0) | 2024.08.15 |