在 EC2 实例和 EFS 之间存在安全组的限制,导致连接到 EFS 超时。需要更改安全组配置,允许 EC2 实例连接到 EFS。具体步骤如下:
以下是一个可以添加入站规则的 Python 脚本示例:
import boto3
# 指定 AWS 的访问密钥 ID 和秘钥
access_key = 'your-access-key'
secret_key = 'your-secret-key'
ec2_client = boto3.client('ec2', aws_access_key_id=access_key, aws_secret_access_key=secret_key)
efs_security_group_id = 'sg-0123456789abcdef' # 替换成对应 EFS 安全组的 ID
# 添加允许入站规则
ec2_client.authorize_security_group_ingress(
GroupId=efs_security_group_id,
IpPermissions=[{
'IpProtocol': 'tcp',
'FromPort': 2049,
'ToPort': 2049,
'IpRanges': [{
'CidrIp': '0.0.0.0/0'
}]
}]
)
print('Security group ingress rule added.')
注意:在使用上述脚本时,请替换 access_key
、secret_key
和 efs_security_group_id
的值。