Chúng tôi có thể sử dụng AWS::CloudFormation::Init để thực thi lệnh và tải tệp lên sau khi bắt đầu một phiên bản. Nhưng không ai biết nội bộ của hoạt động này (từ phía Amazon) là gì?AWS :: CloudFormation :: Init nó hoạt động như thế nào?
Khi chúng tôi chuyển mẫu vào, các tệp hoặc lệnh được truyền tới máy ảo ở điểm nào? Đây có phải là tính năng Xen (thông qua đường ống đặc biệt) hay qua mạng không?
"Resources": {
"MyInstance": {
"Type": "AWS::EC2::Instance",
"Metadata" : {
"AWS::CloudFormation::Init" : {
"config" : {
"packages" : {
:
},
"sources" : {
:
},
"commands" : {
:
},
"files" : {
:
},
"services" : {
:
},
"users" : {
:
},
"groups" : {
:
}
}
}
},
"Properties": {
:
}
}
}
Cảm ơn bạn, đây thực sự là thông tin hữu ích. Nhưng tôi vẫn muốn biết, làm thế nào nó hoạt động phía sau cfn-init (làm thế nào những lệnh và các tập tin truyền đến VM, thông qua mạng hoặc các thiết bị ảo khác?) – SoYoung
cfn-init thực hiện một yêu cầu HTTP đến một địa chỉ Amazon để tìm nạp dữ liệu trong tài nguyên. Sau đó, nó thực hiện các hành động được chỉ định trong mẫu. Mẫu ở đâu? Một nơi nào đó trên máy chủ được kiểm soát của Amazon. –
Vì vậy, tất cả những hành động đó đều dựa trên mạng? Nghe có vẻ hợp lý, nhưng vẫn có một số tình huống bất tiện. Nếu tôi không muốn mở SecurityGroup ra khỏi lý do bảo mật (chỉ có 22 cổng), nó sẽ là một vấn đề để triển khai ứng dụng của tôi một cách tự động. Thành thật mà nói, tôi hy vọng họ được truyền bằng đường ống đặc biệt hoặc thiết bị (trong xen). Bất kỳ cách nào, cảm ơn sự giúp đỡ của bạn! – SoYoung