[typescript] 타입스크립트를 사용하여 AWS SDK로 인프라 프로비저닝 및 구성 관리하기
AWS SDK를 사용하면 TypeScript로 쉽게 AWS 인프라를 프로비저닝하고 관리할 수 있습니다. 이번 블로그 포스트에서는 AWS SDK 및 타입스크립트를 사용하여 EC2, S3, 및 DynamoDB와 같은 AWS 리소스를 생성하고 구성하는 방법에 대해 소개하겠습니다.
목차
AWS SDK 설치
먼저, AWS SDK를 설치합니다. npm
을 사용하여 aws-sdk
를 설치합니다.
npm install aws-sdk
EC2 인스턴스 생성
이제 타입스크립트를 사용하여 AWS SDK를 초기화하고 EC2 인스턴스를 생성하는 예제 코드를 살펴보겠습니다.
import * as AWS from 'aws-sdk';
// AWS SDK 구성
AWS.config.update({ region: 'ap-northeast-2' });
// EC2 인스턴스 생성
const ec2 = new AWS.EC2();
const params = {
ImageId: 'ami-0ff8a91507f77f867',
InstanceType: 't2.micro',
KeyName: 'my-key-pair',
MinCount: 1,
MaxCount: 1,
};
ec2.runInstances(params, (err, data) => {
if (err) {
console.error("Error", err);
} else if (data) {
console.log("Success", data.Instances);
}
});
S3 버킷 생성
다음으로, 타입스크립트를 사용하여 AWS SDK를 통해 S3 버킷을 생성하는 방법을 살펴보겠습니다.
// S3 버킷 생성
const s3 = new AWS.S3();
const bucketParams = { Bucket: 'my-bucket' };
s3.createBucket(bucketParams, (err, data) => {
if (err) {
console.error("Error", err);
} else {
console.log("Success", data.Location);
}
});
DynamoDB 테이블 생성
마지막으로, 타입스크립트를 사용하여 AWS SDK를 이용해 DynamoDB 테이블을 생성하는 예제 코드를 살펴보겠습니다.
// DynamoDB 테이블 생성
const dynamodb = new AWS.DynamoDB();
const tableParams = {
TableName: 'my-table',
KeySchema: [
{ AttributeName: 'id', KeyType: 'HASH' }
],
AttributeDefinitions: [
{ AttributeName: 'id', AttributeType: 'S' }
],
ProvisionedThroughput: {
ReadCapacityUnits: 5,
WriteCapacityUnits: 5
}
};
dynamodb.createTable(tableParams, (err, data) => {
if (err) {
console.error("Error", err);
} else {
console.log("Table Created", data);
}
});
이제 타입스크립트를 사용하여 AWS SDK를 통해 AWS 인프라를 프로비저닝하고 구성할 수 있는 방법에 대해 알아보았습니다. AWS SDK의 다양한 기능과 타입스크립트의 장점을 활용하여 보다 안정적이고 유지보수하기 쉬운 인프라 관리 코드를 작성할 수 있습니다.