我试图创build一个运行Apache的实例,似乎一切正常,但Web服务器没有启动。 它手动启动罚款。 如果我重新启动实例,它不会自动启动Web服务器。 我的资源部分包含: "Resources" : { "CfnUser" : { "Type" : "AWS::IAM::User", "Properties" : { "Path": "/", "Policies": [{ "PolicyName": "root", "PolicyDocument": { "Statement":[{ "Effect":"Allow", "Action":"cloudformation:DescribeStackResource", "Resource":"*" }]} }] } }, "HostKeys" : { "Type" : "AWS::IAM::AccessKey", "Properties" : { "UserName" : {"Ref": "CfnUser"} } }, "testInstance" : { "Type" : "AWS::EC2::Instance", "Metadata" : […]
所以从理论上讲,如果一个人需要Amazon服务器的有效凭证,而不是在他们的访问密钥/密码中进行硬编码,那么可以调用169.254.169.254作为凭证来访问某些资源,例如: js = '' open('http://169.254.169.254/latest/meta-data/iam/security-credentials/<role>') { |f| f.each_line {|line| js += line} } credentials = JSON.load(js) ndnode[:s3_access_key_id] = credentials['AccessKeyId'] ndnode[:s3_secret_access_key] = credentials['SecretAccessKey'] 然后在这里使用访问的东西: conn = AWS::EC2::Base.new(:access_key_id => ndnode[:s3_access_key_id], :secret_access_key => ndnode[:s3_secret_access_key]) # THIS ALWAYS FAILS result = conn.describe_instances(:instance_id => instance_id) 我不喜欢将我的访问密钥和密码硬编码到源代码的想法,我想要一个解决方法。 1)我和我的老板纠正这是一种解决方法吗? 2)如果对1,是这样做的正确方法是什么? 如果不是1,有没有办法避免检查凭证到源(在这里或在configuration文件),它是什么? 3)为了回应@ Edwin的回应,我在AWS gem API中放置了安全令牌? Boto已经被报告让我连接我给的凭据,这意味着分离一个进程,并设置一些环境variables,以便Ruby可以使用Boto连接请求信息。
我目前有以下设置: 运行使用Elastic Beanstalk的API(Node.JS),目前只运行一个EC2实例 运行在独立EC2实例上的MongoDB实例 目前,我有两个安全组,一个用于DB,我们称之为sg-db ,另一个由Elastic Beanstalk生成,称为awseb-e-wwbtetapaa-stack-AWSEBSecurityGroup-xx 。 在sg-db上 ,我把端口27017打开到0.0.0.0/0。 我试图closures端口,以便只有我的Elastic Beanstalk应用程序可以访问它。 我已经尝试打开27017为awseb-e-wwbtetapaa-stack-AWSEBSecurityGroup-xx ,但它没有工作,我仍然无法访问它。 出于testing目的,我尝试连接运行API的EC2实例,然后尝试打开我的数据库实例上的端口22,我尝试打开awseb-e-wwbtetapaa-stack-AWSEBSecurityGroup-xx上的端口22并在亚马逊 -elb上-sg 。 两者都没有工作。 任何人有关于如何closuresMongoDB端口的想法? 这是一个相当大的安全缺陷,现在打开到0.0.0.0/0。 编辑 我想出了正在发生的问题。 显然,在指定Elastic Beanstalk应用程序的安全组时,您不能使用公共IP。 使用私有IP似乎工作得很好。 所以现在我只需要find一个方法来设置一个“静态”私人IP或类似的解决scheme。 编辑2 似乎使用公共DNS在EC2实例中使用它时返回私有IP。
在AWS EC2 API中有一个名为ec2-register或ec2reg的命令,其中有一个用于快照ID的参数-s。 您可以从快照创build图像。 我希望能够在Python(目前使用boto)中做到这一点,但它看起来并不像boto中的function。 是否还有一种方法使用boto从快照ID创build图像? 还假设,架构,内核和其他属性是可用的,如果需要的话可以使用S3访问。 谢谢。
我创build了一个Windows Server 2012 EC2实例,并将弹性IP地址绑定到服务器。 问题是,在IIS 8中没有显示IP地址,如果手动inputIP地址,我似乎无法让网站响应。 我怎样才能让IIS识别IP地址并作出响应? 我即将通过弹性IP通过RDP连接到服务器,所以我知道它绑定到服务器。
我正在pipe理一个(现在)ec2实例,它将为我们的用户提供一些工具。 我正在使用Ansible来pipe理它。 我已经创build了使用Cron-job和Ansible混合的用户(通过创build一个用户列表并且有一个剧本确保它们存在)。 我的主要问题是这个; 我试图为每个用户(新的和旧的)创build一个方法,以便能够使用他们上传到EC2 AWS的密钥访问实例。 我一直在我的想法在这方面的死胡同..有没有办法打电话给AWS的API将返回每个公钥的文本(因为他们是公开的,我不明白为什么这应该不存在..?),以便我可以确保它的副本存在于其各自的“〜/ .ssh / authorized_keys”文件中? 除此之外,我认为将密钥上传到S3存储桶可以让Ansible读取它们。 唯一的问题是用户不得不将密钥上传到S3。 任何反馈意见, 如果我正在攻击这个错误的方式,请让我知道。
目前,我的数据库位于专用EC2实例中托pipe的MySQL服务器上,并计划将数据库迁移到RDS支持的MySQL服务器。 现在我遇到的问题是将数据从EC2迁移到RDS。 该数据库接近185 GB,此时我不担心停机时间或数据与生产同步。 我现在需要的只是基本上把一个转储和导入到RDS。 这是我迄今为止所尝试的, 我采取了在EC2上运行的数据库的MySQL转储 从相同的EC2实例访问RDS实例 使用MySQL的source命令将数据转储导入RDS 将近35Gb的时间需要将近一天的时间才能导入,而从未完全导入数据库。 欣赏是否有人可以告诉我如何做到这一点。
在AWS的EC2服务中的Amazon Linux上,它使用非常短的DHCP租约时间,这意味着/var/log/messages从dhclient和ec2net服务每隔几分钟就会获取一行。 我怎样才能排除这些日志logging,所以任何重要的日志消息都不会在噪声中丢失(虽然这不是太多的磁盘空间,但这看起来像是浪费,而且额外的logging到Cloudwatch日志中我并不真正需要)。 据推测,如果我得到IP地址时遇到麻烦,我可以打开日志logging(如果我可以回到盒子上)。 这些消息是每隔几分钟重复的消息: Jun 8 09:14:49 server-name dhclient[2206]: PRC: Renewing lease on eth0. Jun 8 09:14:49 server-name dhclient[2206]: XMT: Renew on eth0, interval 9900ms. Jun 8 09:14:49 server-name dhclient[2206]: RCV: Reply message on eth0 from fe80::my:link:locl:addr. Jun 8 09:14:49 server-name ec2net: [get_meta] Trying to get http://169.254.169.254/latest/meta-data/network/interfaces/macs/0a:91:b3:my:mac:addr/local-ipv4s Jun 8 09:14:49 server-name ec2net: [rewrite_aliases] Rewriting […]
WordPress的网站目前在美国托pipe,这是我们目标受众的40%。 其余的游客来自中东,澳大利亚,俄罗斯,中国,新加坡,英国,瑞士,哈萨克斯坦……遍布地图。 随着所有的caching(不是CDN),它在亚洲/大洋洲仍然不足,而且在欧洲也有速度问题。 我可以简单地设置多个服务器,并创build多个Alogging,指向不同地区的不同服务器,并假设来自澳大利亚的访问者将从澳大利亚服务器提供服务? 有小费吗?
上传证书到iam后,当我访问https://www.mywebsite.com我得到这个错误 The identity of this website has not been verified. • Server's certificate does not match the URL. • Server's certificate is not trusted. 如果我点击证书信息,一切都是错误的 www.example.com Self-signed root certificate Expires: Friday 27 September 2024 …….. 如果我查询我上传的证书 aws iam get-server-certificate –server-certificate-name certificate_mycertificate 我明白了 "ServerCertificateMetadata": { "ServerCertificateId": "XXX", "ServerCertificateName": "certificate_mycertificate", "Expiration": "2015-11-21T23:59:59Z", "Path": "/", "Arn": "arn:aws:iam::XXX:server-certificate/certificate_mycertificate", "UploadDate": […]