[英]AWS DMS can not start migration
我已經為AWS DMS創建了一個堆棧,並為兩個測試Postgres dbs創建了一個堆棧AWS::RDS::DBInstance
,使用cfn-sphere兩個堆棧均已成功創建,並且能夠在源數據庫中創建表並將數據加載到它。
我嘗試使用boto3啟動復制任務 :
client = boto3.client('dms')
response = client.start_replication_task(
ReplicationTaskArn=replication_task_arn,
StartReplicationTaskType='start-replication'
)
但這沒有用,我得到了錯誤:
botocore.errorfactory.InvalidResourceStateFault:調用StartReplicationTask操作時發生錯誤(InvalidResourceStateFault):復制實例(url)的測試連接應成功啟動復制任務
我試圖從網站上觸發它,但出現錯誤消息:
AWSDatabaseMigrationService:復制實例和端點的測試連接應成功啟動復制任務
不幸的是,復制實例和目標點之間的連接在網站上無法正常工作(我的帳戶具有完全訪問權限)。 但是它從我的命令行使用boto3 dms客戶端test_connection起作用。
我的安全組規則是:
SecurityGroupIngress:
Type: 'AWS::EC2::SecurityGroupIngress'
Properties:
GroupId: !Ref dbSecurityGroup
IpProtocol: tcp
FromPort: '5432'
ToPort: '5432'
CidrIp: //my public ip
誰能指導我在哪里看以及如何修復它? (這是我的第一個AWS任務)
1)確保復制實例和目標端點在同一vpc中。 否則,您必須執行vpc對等。 兩者也應位於同一區域。
2)將復制實例的安全組添加到目標數據庫安全組的入站規則。
Type: AWS::EC2::SecurityGroup
Properties:
GroupName: "target-endpoint-sg"
GroupDescription: "security group of target db server"
VpcId: <provide your vpc id>
SecurityGroupIngress:
- IpProtocol: tcp
FromPort: '5432'
ToPort: '5432'
SourceSecurityGroupId: <sec-grp of ReplicationInstance>
3)如果已經創建了目標數據庫,則在創建數據庫時,請正確提供完整的服務器名稱(例如: target-database-name.xxxxxxxxxxx.us-east-1.rds.amazonaws.com ),用戶名和密碼值。 目標端點 。 在aws控制台中,轉到DMS -> Endpoints -> Select your endpoint checkbox -> Test connection
以驗證連接。
如果成功,則在boto3客戶端配置中使用相同的用戶角色,並使用test_connection
方法進行測試。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.