• 돌아가기
  • 아래로
  • 위로
  • 목록
  • 댓글
질문

오라클 클라우드(arm)와 AWS의 차이(?) - npm, portainer 관련

very 280

0

18

AWS 무료 티어 인스턴스에서

 

서버포럼 가이드 따라하며 npm, portainer 잘 이용하고 있었습니다.

 

 

오라클 클라우드 A1(arm) 인스턴스 만들고

 

AWS 인스턴스에서 했던 그대로 docker 설치하고 portainer, npm 설치한 후 와일드카드 도메인 인증서 만들고 npm으로 서브 도메인 연결하고 했는데

 

npm에 대한 도메인네임(예: npm.abc.com)으로 npm은 접속이 잘 되는데 portainer에 대한 도메인네임(p.abc.com)으로 portainer에 접속하면 502 bad gateway 에러가 뜨면서 제대로 접속이 되지 않습니다.

 

AWS 인스턴스에서 했던 그대로 오라클 클라우드에서도 한 건데 AWS에서는 문제 없이 잘 되고 오라클 클라우드에서는 안 됩니다.

 

AWS 인스턴스와 오라클 클라우드 사이에 결정적인 내부 네트워크(?) 구조 차이가 있을까요

 

아니면 두 인스턴스 사이의 ubuntu에서의 방화벽 설정, iptable 이런 설정 차이일까요

(오라클 클라우드 ubuntu는 방화벽 inactive 상태입니다)

 

AWS 인스턴스에서 했던 것 그대로 했는데 오라클 클라우드에서는 안 되니 약간 멘붕이 오네요. 

 

신고공유스크랩
18
profile image 1등
너굴맨봇 2024.03.23. 09:57
안녕하세요, very님.😊
 

좋은답변을 받기위해서는 좋은 질문이 필요합니다.

유의할점⚠️

  • 예의를 지켜주세요. 답변자는 답변을 할 의무는 없습니다.
  • 질문에 대한 대부분의 답은 검색으로 찾아보실 수 있습니다.
  • 답변자가 답변을 하면서 대개 많은 경우는 다시 질문을 하는 경우가 많이 있습니다.
    • (질문의 대한 정보가 부족합니다. ~일 경우 결과물이 어떻게 됩니까? 등등)

질문방법🙏

자신의 상황을 최대한 자세히 설명해주세요.

상황이 정확하고 많을 수록 답변의 정확도가 올라갑니다. 

ex) ex) 헤놀로지라면 메인보드 모델 칩셋정보, CPU, 사용한 DSM 버전, 모델, 부수적인 추가 컨트롤러 나 랜카드 등과 어떠한 로더의 이미지를 사용했는지.(arpl-i18n, mshell), 어떤 버전을 사용했는지, 문제가있다면 어떠한것인지 스크린샷을 동반하고 에러의 경우 에러로그를 출력해서 주시면 좋습니다.

*가능하면 최신버전 OS/SW를 이용해주세요

 

답변에대한 피드백을 주세요.

정보가 질문에 모두 담겨있지않다면 대부분의 답변이 다른정보를 요구합니다.

이러한 답변에 대해 명확한 피드백을 주시면 도움이 됩니다.

very 글쓴이 2024.03.23. 10:27
ljr10
네, AWS 인스턴스 npm에서 https로 했기 때문에 오라클 A1에서도 똑같이 했습니다 ;ㅂ;
profile image
ljr10 2024.03.23. 11:02
very

포트도 9443 으로 설정했고 Websockets support 켜시고 ssl 탭에서도 force ssl , http/2 support ,hsts 활성화 했나요?

very 글쓴이 2024.03.23. 11:13
ljr10

네, 그렇게 했는데 안 되네요.
npm에서 portainer에 대한 host/ip address 부분은  docker network bridge의 IPV4 IPAM Gateway 주소로 했습니다
(AWS, Oracle 모두 다, 그런데 AWS 에서는 잘 되고 Oracle에서는 안됩니다, 그래서 AWS, Oracle의 차이인가 생각 중인데...두 인스턴스 내 ubuntu setting이 좀 다를 수도 있어서 AWS, Oracle 의 차이가 아닐 수도 있나 라는 생각도 들구요)

3등
DarkAcid 2024.03.23. 13:46

근본적으로 도커 네트워크에서 차이는 없습니다. 구성요소가 바뀌면서 포트라던지 변화가 있었는데 반영이 안된게 아닐까합니다. npm와 portainer는 같은 도커호스트에 구성되어있나요?

very 글쓴이 2024.03.23. 15:54
DarkAcid
잘 동작하는 AWS 에서의
npm의 IP 주소는 172.21.0.2, portainer IP 주소는 172.17.0.2,

잘 동작하지 않는 OCI 에서의
npm의 IP 주소는 172.20.0.2, portainer IP 주소는 172.17.0.2

입니다(각 AWS, OCI 의 portainer 화면에서 확인한 결과).
DarkAcid 2024.03.23. 20:45
very

Npm에서 ip 부분은 어떻게 써넣으샸어요? 그리고 oci에 80번이랑 443 포트 열어 두셨을까요?

very 글쓴이 2024.03.23. 21:25
DarkAcid
oci 80, 443은 열었습니다. npm.abc.com은 접속이 되는데 p.abc.com(portainer)는 502 bad gateway error... portainer에 대한 npm ip는 172.17.0.1(bridge gateway 주소) port는 9443으로 했습니다(aws에서는 잘 동작하는 설정).
DarkAcid 2024.03.23. 22:06
very

아래 간단하게 의심되는 상황의 설정방법을 적어두었습니다.

 

스크린샷 2024-03-23 084859.png.jpg

 

스크린샷 2024-03-23 084911.png.jpg

스크린샷 2024-03-23 085151.png.jpg

제가 사용하는 두개의 컨테이너 입니다. 네트워크 설정을 통해 같은 대역때의 IP가 아니라면 두 컨테이너는 통신을 못하는게 맞습니다. 이런 상기의 이유 때문에 현재 npm에서 portainer로 접속을 못하고 있는 상황으로 보입니다. AWS에서는 어찌 해당 설정으로 작동되었는지 모르겠으나. 단순하게 네트워크 설정만 보았을 때는 NPM에서 Portainer로 502를 띄우는게 정상적으로 보입니다.

제가드리는 조언은 NPM 컨테이너의 네트워크를 portainer로 묶어 쓰시는 겁니다. 

모든 컨테이너를 네트워크 설정으로 NPM과 같은 네트워크에 연결되게 설정해주시거나

컴포즈(스택)에서 아래처럼 네트워크 설정으로 NPM과 같은 네트워크에 연결하셔서 쓰는겁니다. 

    networks:  
      - backnet  
      - frontnet 

만약 아니라면 노출되어있는 포트를 컨테이너의 IP가 아니라 호스트의 IP를 통하는거라면 아래 ip를 NPM에서 사용하시면 됩니다. 


very 글쓴이 2024.03.24. 08:36
DarkAcid
상세한 답변 매우 감사드립니다. AWS에서 잘 된 것이 일종의 독(?)이 된 거 같네요. AWS에서 잘 된 내용을 매뉴얼처럼 모두 다 기록해 두었고 그 내용 그대로 OCI에서도 한 건데 결과가 잘 안 나와서 이틀 간 정말 멘붕이었습니다.

정신 가다듬고(?) 알려주신 네트워크 묶는 방법으로 OCI에서 다시 시도해봐야겠습니다.
다시 시도해보고 후기 남기겠습니다.

감사합니다.
very 글쓴이 2024.03.24. 09:40
DarkAcid
다시 한 번 신경써주시고 상세 답변 주신 점 감사드립니다!
very 글쓴이 2024.03.24. 09:35

npm 컨테이너와 portainer 컨데이너를 같은 네트워크에 둠으로써 문제는 해결했습니다. AWS에서는 왜 잘 되었던거지 라는 의문이 드는데 의문 해결은 현재 제 능력 범위 밖이고 시간도 많이 소요될 거 같아서 의문은 잊어야 할 듯 합니다.

참고로 npm 제대로 동작하는 상태에서의
AWS와 OCI의 portainer 화면 공유합니다.


<AWS>

aws.png.jpg

 

<OCI>

oci.png.jpg

 

very 글쓴이 2024.03.24. 09:39
앞으로 npm을 통해 연결할, 새로 설치할 도커 컨테이너 모두를 aaa 라는 도커 네트워크에 묶어야 하는 일종의 제약(?)이 생기는 점이 다소 아쉽지만 제 능력 범위 밖에라 어쩔 수 없네요, 일단 동작하게 하는 방법을 찾았다는 게 중요하니까요.

추후라도 원인 또는 로직을 알았으면 하네요(AWS에서 잘 되던 것이 이상한 거였는지, OCI가 이상했던 건지?)
AWS에서는 위와 같은 제약(?)이 없어서 편하기도 하고 아직도 남아있는 궁금점은 어쩔 수.. ㅎ
DarkAcid 2024.03.24. 10:31
very

이렇게 하셨을 때 이점을 첨언드리리자면 NPM에서 ip가아니라 컨테이너 이름을 쓰셔도 NPM에서 정상적으로 라우팅이 가능합니다 ㅎㅎ포트도 expose또는 호스트로 매핑하지 않으셔도 가능합니다.

very 글쓴이 2024.03.24. 11:48
DarkAcid
네, 컨테이너 이름 입력해서 돌렸습니다. 감사합니다.
siane 2024.04.02. 09:18
보통 이런 경우엔.. portainer를 포함, 사용하는 서비스들을 docker-compose로 묶어두시는게 좋습니다.
환경이 바뀌어도 docker-compose up -d 한방이면 해결되니까요.

댓글 쓰기 권한이 없습니다. 로그인

취소 댓글 등록

cmt alert

신고

"님의 댓글"

이 댓글을 신고하시겠습니까?

댓글 삭제

"님의 댓글"

삭제하시겠습니까?


목록

공유

facebooktwitterpinterestbandkakao story
번호 분류 제목 글쓴이 날짜 조회 추천
가이드 Ubuntu 24.04 LTS Desktop 원격 접속 설정하기(SSH,RDP) 3 달소 1일 전18:33 87 +1
가이드 Ubuntu 24.04 LTS Server 설치해보기 달소 1일 전17:40 168 +2
잡담 Ubuntu 24 가 정식출시되었습니다~~ 8 달소 1일 전10:37 275 +2
1432 질문
image
무백 2시간 전21:45 38 0
1431 질문
normal
까칠한나그네 1일 전15:44 80 0
1430 질문
normal
감자칩 2일 전18:56 203 0
1429 질문
image
게르노 2일 전16:08 75 0
1428 질문
image
동도리군 2일 전12:14 94 0
1427 질문
normal
서버구축하자 3일 전13:09 428 0
1426 질문
image
미스터빈 4일 전20:09 232 0
1425 질문
image
초보나스 4일 전08:05 269 +1
1424 질문
normal
웹서버구축관심 5일 전02:22 336 0
1423 질문
normal
게르노 6일 전03:11 202 0
1422 질문
image
감자칩 24.04.20.20:04 298 0
1421 질문
normal
ljr10 24.04.20.19:45 213 0
1420 질문
image
TANG 24.04.20.11:33 248 0
1419 질문
normal
감자칩 24.04.19.18:55 157 0
1418 질문
normal
숲형 24.04.19.11:21 279 0
1417 질문
image
kmw_ 24.04.19.09:37 207 +1
1416 질문
normal
bass9030 24.04.19.00:43 145 +1
1415 질문
normal
늘맑음 24.04.18.15:10 254 +1
1414 질문
image
게르노 24.04.18.12:26 94 0
1413 질문
normal
angrynerd 24.04.17.14:11 533 0