사용자 지정 AWS 엔드포인트 URL에 연결하는 방법 | Mendix

메인 컨텐츠로 가기

사용자 지정 AWS Endpoint URL에 연결하는 방법

헤더 이미지

Mendix 기술의 민주화에 관한 것입니다. 이 메시지는 기조연설의 핵심이었습니다. Siemens 올해 라스베이거스에서 열린 가전제품박람회(CES)에 참석한 AG CEO 롤랜드 부시.

Roland는 생성 AI가 어떻게 훨씬 더 광범위하게 접근 가능해지고 있습니다 덕분에 아마존 베드록 커넥터. 커넥터는 다음에서 태어났습니다. AWS와의 전략적 제휴 Mendix, 다양한 서비스의 다양한 기초 모델에 대한 액세스를 제공합니다.

하지만 이제 생성 AI만 사용하기 쉬운 것은 아닙니다. Mendix 응용 프로그램. 다양한 범위가 있습니다 커넥터 AWS에서 사용 가능한 서비스에 대해 Mendix 온라인마켓.

이 커넥터는 다음에 의존합니다. AWS 인증 커넥터 (최근에 버전 3.0.0으로 업그레이드). 여러 AWS 커넥터가 동일한 종속성을 공유하고 유사한 요청 구조에 의존하기 때문에 이러한 기능은 이제 사용 편의성을 위해 중앙 집중화되었습니다. 수반되는 아키텍처 변경 사항을 통해 엔드포인트 URL(AWS API를 사용하는 데 사용됨)을 편집할 수도 있습니다.

일반적으로 엔드포인트 URL은 서비스 및 지역별 기본값으로 자동 설정됩니다. 하지만 온프레미스에서 애플리케이션을 배포하려는 경우 다른 엔드포인트에 연결해야 할 수 있습니다. 로컬 또는 Virtual Private Cloud 엔드포인트에 연결하는 것을 선호하는 경우가 더 많습니다.

http 엔드포인트 URL을 변경하는 이유는 무엇입니까?

엔드포인트 URL을 변경하면 4가지 주요 이점이 있습니다.

1. 보안 강화

배포하기로 결정했다고 가정해 보겠습니다. Mendix 온프레미스 애플리케이션이고 애플리케이션에서 사용되는 Amazon 웹 서비스가 동일한 보안 정책을 준수해야 합니다. 엔드포인트 URL을 변경하면 더 이상 AWS 클라우드에 배포된 서비스에 제한되지 않습니다. 대신 원하는 엔드포인트에 연결할 수 있습니다.

2. 비용 감소

AWS 서버에 호스팅되지 않은 서비스에 연결하면 서버 사용료를 지불하지 않습니다. 예를 들어, 로컬 서비스를 테스트에 사용하고 클라우드 서비스의 모든 이점이 필요하지 않은 경우 이는 실제로 비용을 절감할 수 있습니다.

3. 테스트 환경에 대한 더 나은 제어

테스트를 위해 로컬 서비스를 사용하면 환경을 완벽하게 제어할 수 있습니다. 또한 더 빠른 반복(그렇지 않으면 애플리케이션을 배포해야 하는 경우), 즉각적인 피드백 및 더 효율적인 디버깅이 가능합니다.

4. 인터넷이 필요하지 않습니다

로컬 엔드포인트에 연결하려면 인터넷 연결이 필요하지 않습니다. 로컬 엔드포인트를 사용하는 경우 네트워크 연결도 필요하지 않으며, 이동 중에 애플리케이션을 테스트하려는 경우 유용할 수 있습니다.

(로컬 및 웹 서비스 인스턴스 간에는 상충 관계가 있습니다. 다음 Amazon DynamoDB 예에서 로컬 데이터베이스는 공유되지 않습니다. 결과적으로 설계당 모든 프로덕션 시나리오를 로컬로 미러링할 수 없습니다. 로컬 및 웹 서비스 인스턴스 간에는 읽을 수 있는 다른 차이점이 있습니다. 여기에서 확인하세요..)

이제 엔드포인트 URL을 변경해야 하는 이유를 알았으니, Amazon DynamoDB를 예로 들어 그 방법을 알려드리겠습니다.

http 엔드포인트 URL을 어떻게 변경하나요?

이 튜토리얼을 따르려면 다음이 필요합니다. Mendix 가지고 있는 응용 프로그램 AWS 인증 v3.0.0 (또는 나중에) 그리고 아마존 DynamoDB 문서화된 대로 구현됨 여기에서 확인하세요..

또한 DynamoDB의 로컬 인스턴스가 실행 중이어야 합니다. AWS 설명서 DynamoDB를 .jar 파일이나 Docker 컨테이너로 로컬에 배포하는 방법에 대한 지침을 제공합니다. 원하는 접근 방식을 선택하고 다음을 따르기만 하면 됩니다. 문서 로컬 인스턴스를 생성합니다.

어느 쪽이든 DynamoDB가 성공적으로 설치되면 아래 설명된 대로 AWS CLI를 사용하여 데이터베이스에 액세스할 수 있습니다.

1. AWS CLI를 사용하여 DynamoDB에 액세스

AWS CLI를 사용하여 연결할 필요는 없습니다. Mendix 로컬 DynamoDB 인스턴스에 대한 애플리케이션입니다. 그러나 AWS CLI는 명령 프롬프트 창을 사용하여 데이터베이스를 검사하고(데이터베이스가 실행 중이고 의도한 대로 보이는지 확인하는) 좋은 방법입니다.

아직 AWS CLI가 설치되어 있지 않으면 다운로드할 수 있습니다. 여기에서 확인하세요..

데이터베이스에 있는 모든 기존 테이블을 나열하려면 다음 프롬프트를 사용해보세요.

aws dynamodb list-tables --endpoint-url https://localhost:8000

DynamoDB는 포트 8000을 사용합니다(예를 들어 Docker compose 파일에서 다르게 지정하지 않은 경우). 데이터베이스가 여전히 비어 있으면 다음과 같은 내용이 표시됩니다.

{
    "TableNames": []
}

예를 들어, 다음 명령을 사용하여 '음악'이라는 새 테이블을 추가할 수 있습니다(Windows의 경우):

aws dynamodb create-table --table-name Music --attribute-definitions        AttributeName=Artist,AttributeType=S         AttributeName=SongTitle,AttributeType=S --key-schema         AttributeName=Artist,KeyType=HASH         AttributeName=SongTitle,KeyType=RANGE --provisioned-throughput         ReadCapacityUnits=5,WriteCapacityUnits=5 --table-class STANDARD --endpoint-url https://localhost:8000

CLI를 사용하여 테이블을 만드는 방법에 대한 설명서를 찾을 수 있습니다. 여기에서 확인하세요..

다시 데이터베이스에 있는 모든 테이블을 나열하면 'Music'이라는 이름의 새 테이블이 추가되어야 합니다.

{
    "TableNames": [
        "Music"
    ]
}

원하는 경우 CLI를 사용하여 로컬 데이터베이스를 가지고 놀아보세요. 더 많은 명령을 찾을 수 있습니다. 여기에서 확인하세요.로컬 데이터베이스에 액세스할 수 있도록 항상 '–endpoint-url' 매개변수를 추가해야 합니다.

수동으로 데이터를 추가하는 대신 원격 DynamoDB의 백업을 만들고 이를 사용하여 설명한 대로 로컬 데이터베이스를 복원할 수도 있습니다. 여기에서 확인하세요.. 이 접근 방식을 사용하면 원격 인스턴스의 성능에 대한 대략적인 아이디어를 얻을 수도 있습니다.

2. 로컬 데이터베이스를 다음과 연결합니다. Mendix 앱

정적 또는 세션 자격 증명으로 애플리케이션에서 AWS 인증 커넥터를 구성했으면 사용할 준비가 된 것입니다. 로컬 및 원격 데이터베이스 간에 전환하고 나중에 인증을 설정하지 않으려는 경우가 아니면 유효한 자격 증명을 사용할 필요가 없습니다.

커넥터의 모든 요청 엔터티는 AbstractRequest 엔터티에서 상속되므로 AWS 인증 커넥터 3.0.0 릴리스부터 엔드포인트 URL을 재정의할 수 있습니다. 올바른 엔드포인트 URL 값으로 BasicClientConfig 객체를 만들고 요청과 연결하기만 하면 됩니다.

AWS 인증 커넥터의 도메인 모델에서 두 엔터티가 어떻게 보이는지 살펴보겠습니다.

AWS 인증 커넥터의 도메인 모델

 

아래는 작업에 대한 기본 http 엔드포인트를 변경하는 방법에 대한 세 가지 마이크로플로우 예입니다. 적합한 요청을 만드는 방법을 잘 모르겠다면 다음을 참조하십시오. Amazon DynamoDB 커넥터아마존 다이나모 DB 자세한 내용은 설명서를 참조하십시오.

예 1: '테이블 목록'
예 1: '테이블 목록'

 

예제 1: BasicClientConfig 세부 정보 만들기
예제 1: BasicClientConfig 세부 정보 만들기

 

예 2: 항목 넣기
예 2: 항목 넣기

 

예 3: 스캔
예 3: 스캔

기본값과 다른 엔드포인트를 처리하려는 모든 커넥터에서 모든 작업에 동일한 방법이 적용됩니다.

다운로드한 폴더에서 .jar 파일을 실행하든 Docker 컨테이너를 사용하든 Mendix 이제 애플리케이션이 로컬 데이터베이스에 연결되었습니다. 재미있게 테스트해보세요!

애플리케이션이 로컬에서 작동하는 방식에 만족하는 경우 BasicClientConfig 객체를 제거하거나 속성 값을 삭제하기만 하면 됩니다. 대신 애플리케이션이 원격 인스턴스에 원활하게 연결됩니다. (설정에서 AWS 자격 증명을 구성하는 것을 잊지 마세요! 😊)

맺음말

새로운 인증 커넥터 기능을 사용하면 더 이상 기본 엔드포인트에 국한되지 않습니다. 온프레미스 프라이빗 클라우드 또는 로컬 엔드포인트에 연결하도록 선택할 수 있으며 타협할 필요가 없습니다. 다른 엔드포인트에 연결하면 비용 측면에서 프로젝트를 더욱 개선할 수 있으며 제어되고 서버와 독립적인 테스트 환경을 제공할 수 있습니다.

마지막으로, 커넥터를 사용하면 엔드포인트를 정말 쉽게 변경할 수 있습니다!

언어를 선택하세요