标签: aws-ec2

什么是pagecache,dentries,inodes?

刚刚从https://unix.stackexchange.com/questions/87908/how-do-you-empty-the-buffers-and-cache-on-a-linux-system学习了这三种新技术:


要释放pagecache:

# echo 1 > /proc/sys/vm/drop_caches
Run Code Online (Sandbox Code Playgroud)

要释放dentries和inode:

# echo 2 > /proc/sys/vm/drop_caches
Run Code Online (Sandbox Code Playgroud)

要释放pagecache,dentries和inode:

# echo 3 > /proc/sys/vm/drop_caches
Run Code Online (Sandbox Code Playgroud)

我试图了解究竟是什么页面缓冲,dentries和inode.究竟是什么?

释放它们还会删除有用的memcached和/或redis缓存吗?

-

我为什么问这个问题?我的亚马逊EC2服务器RAM在这些日子里被填满 - 在7天内从6%上升到95%.我不得不运行每两周一次的cronjob来删除这些缓存.然后内存使用率再次降至6%.

memory memcached caching redis aws-ec2

16
推荐指数
2
解决办法
1万
查看次数

使用BOTO3检索EC2实例的公共DNS

我正在使用ipython来了解Boto3并与EC2实例进行交互.这是我用来创建实例的代码:

import boto3

ec2 = boto3.resource('ec2')
client = boto3.client('ec2')


new_instance = ec2.create_instances(
    ImageId='ami-d05e75b8',
    MinCount=1,
    MaxCount=1,
    InstanceType='t2.micro',
    KeyName=<name_of_my_key>,
    SecurityGroups=['<security_group_name>'],
    DryRun = False
    )
Run Code Online (Sandbox Code Playgroud)

这启动了EC2实例,我可以从AWS控制台获取公共DNS名称,IP和其他信息.但是,当我尝试使用Boto获取公共DNS时,通过这样做:

new_instance[0].public_dns_name
Run Code Online (Sandbox Code Playgroud)

返回空白引号.然而,其他实例细节,例如:

new_instance[0].instance_type
Run Code Online (Sandbox Code Playgroud)

返回正确的信息.

有任何想法吗?谢谢.

编辑:

所以,如果我这样做:

def get_name(inst):
    client = boto3.client('ec2')
    response = client.describe_instances(InstanceIds = [inst[0].instance_id])
    foo = response['Reservations'][0]['Instances'][0]['NetworkInterfaces'][0]['Association']['PublicDnsName']
    return foo


foo = get_name(new_instance)
print foo
Run Code Online (Sandbox Code Playgroud)

然后它将返回公共DNS.但对我来说,为什么我需要做所有这些都没有意义.

python dns amazon-web-services boto3 aws-ec2

12
推荐指数
1
解决办法
6472
查看次数

设置EB CLI - 错误非类型get_frozen_credentials

Select a default region
1) us-east-1 : US East (N. Virginia)
2) us-west-1 : US West (N. California)
3) us-west-2 : US West (Oregon)
4) eu-west-1 : EU (Ireland)
5) eu-central-1 : EU (Frankfurt)
6) ap-southeast-1 : Asia Pacific (Singapore)
7) ap-southeast-2 : Asia Pacific (Sydney)
8) ap-northeast-1 : Asia Pacific (Tokyo)
9) ap-northeast-2 : Asia Pacific (Seoul)
10) sa-east-1 : South America (Sao Paulo)
11) cn-north-1 : China (Beijing)
(default is 3):5
Run Code Online (Sandbox Code Playgroud)

当我选择一个数字或只是留空时出现以下错误:

错误:AttributeError ::'NoneType'对象没有属性'get_frozen_credentials'

在运行eb init之后--debug:

回溯(最近调用最后一次):文件"/ usr/local/bin/eb",第11行,在sys.exit(main())文件"/Library/Python/2.7/site-packages/ebcli/core/ebcore …

python command-line-interface amazon-web-services aws-ec2 osx-elcapitan

12
推荐指数
1
解决办法
4978
查看次数

如何在aws上创建Kubernetes负载均衡器

Kubernetes为每项服务创建一个负载均衡器; 自动在GCE中.如何在AWS上管理类似的东西?

Kubernetes服务基本上使用kubeproxy来处理内部流量.但是那个kubeproxy ip它无法访问外部网络.

有一种方法可以实现这一目标吗?

kubernetes aws-ec2

11
推荐指数
2
解决办法
7334
查看次数

我可以在aws安全组中添加dns名称吗?

我必须将我的动态IP(每次更改)连接到AWS EC2计算机.
为此我将我的公共IP映射到域名(xyz.com),现在我正在尝试将其添加到安全组.
但AWS安全组不允许添加DNS名称.这是正确的过程吗,如果不是,请建议我.

amazon-ec2 amazon-web-services aws-ec2 aws-security-group

11
推荐指数
3
解决办法
2万
查看次数

实例退休:实例停止

我们最近收到了以下关于我们的一个实例的通知:

退休:此实例计划于2015年12月14日UTC-5 PM下午7:00:00退休.

计划退休的实例将在指定日期后关闭.我们建议您启动替换实例并开始迁移到它们.

Availability Zone: us-east-1c
Event type: instance-stop
Event status: Scheduled
Description: The instance is running on degraded hardware
Start time: December 14, 2015 at 7:00:00 PM UTC-5
Run Code Online (Sandbox Code Playgroud)

进一步的细节显示事件类型是实例停止.根据文件:

实例停止:实例将停止并开始将其迁移到新的主机.仅适用于Amazon EBS支持的实例.

实例报废:实例将被终止.

重新启动:实例将重新启动(实例重新启动)或实例的主机将重新启动(系统重新启动).

系统维护:实例可能会暂时受到网络维护或电源维护的影响.

实例停止.这是否意味着我们不需要做任何事情?如果没有,我们需要做些什么来避免服务中断?

amazon-ec2 amazon-web-services aws-ec2

11
推荐指数
1
解决办法
5601
查看次数

msg:没有处理程序准备好进行身份验证.检查了1名处理程序.['HmacAuthV4Handler']检查您的凭据

所以我试图在aws上的ec2实例上运行ansible,这是第一次在一个新的实例上,但每次我尝试运行一个游戏我都无法解决这个错误信息:

PLAY [localhost]
**************************************************************

TASK: [make one instance]
***************************************************** 
failed: [localhost] => {"failed": true} msg: No handler was ready to
authenticate. 1 handlers were checked. ['HmacAuthV4Handler'] Check
your credentials

FATAL: all hosts have already failed -- aborting

PLAY RECAP
********************************************************************
   to retry, use: --limit @/home/ubuntu/ans_test.retry

localhost                  : ok=0    changed=0    unreachable=0   
failed=1
Run Code Online (Sandbox Code Playgroud)

我认为我的IAM用户和组中的权限可能有问题.我已经给了我的IAM用户和组ReadOnlyAccess,AdministratorAccess和PowerUserAccess.我有一个访问ID和秘密访问密钥,我使用命令设置为环境变量:

   export AWS_ACCESS_KEY_ID='AK123'
   export AWS_SECRET_ACCESS_KEY='abc123'
Run Code Online (Sandbox Code Playgroud)

用'AK123'和'abc123'替换为我的实际id和键值.为了让ansible ec2任务有效,我还需要做些什么?

更新:
我解决了问题,我想我并没有真正了解环境变量是什么.我通过在ec2任务中设置我的aws_access_key和aws_secret_key来修复它,下面是我的工作剧本

- hosts: localhost  
  connection: local  
  gather_facts: False  

  tasks:  
    #this task creates 5 ec2 instances that are all named demo and …
Run Code Online (Sandbox Code Playgroud)

amazon-ec2 amazon-web-services ec2-ami ansible aws-ec2

10
推荐指数
2
解决办法
1万
查看次数

问题设置Elastic Beanstalk实例 - 无法连接到服务器

我一直在试图建立一个网站,在AWS上运行后eb init,并eb create与无我遇到了以下错误的任何问题,我选择的设置:

错误:[实例:i-f8e3c005模块:AWSEBAutoScalingGroup ConfigSet:null]实例上的命令失败.返回码:1输出:(TRUNCATED)... conn = _connect(dsn,connection_factory = connection_factory,async = async)django.db.utils.OperationalError:无法连接到服务器:连接被拒绝服务器是否在主机上运行"localhost "(127.0.0.1)并接受端口5432上的TCP/IP连接?

我不确定为什么拒绝连接,但我怀疑它与我的安全设置有关.我知道这有点模糊,但是之前有没有人遇到过这个问题,你是怎么设法最终解决的?

完整输出如下:

INFO: createEnvironment is starting.
INFO: Using elasticbeanstalk-us-east-1-671186898336 as Amazon S3 storage bucket for environment data.
INFO: Created security group named: sg-96efb5f2
INFO: Created load balancer named: awseb-e-v-AWSEBLoa-12ABLMPELT72Q
INFO: Created security group named: awseb-e-v6mwzkkgjw-stack-AWSEBSecurityGroup-JEYPGZP3YJJG
INFO: Created Auto Scaling launch configuration named: awseb-e-v6mwzkkgjw-stack-AWSEBAutoScalingLaunchConfiguration-17DLMC0THMKW
INFO: Created Auto Scaling group named: awseb-e-v6mwzkkgjw-stack-AWSEBAutoScalingGroup-FBCJ1LFH8U38
INFO: Waiting for EC2 instances to launch. This may take a few minutes. …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services amazon-elastic-beanstalk aws-ec2

9
推荐指数
1
解决办法
2225
查看次数

当作为角色运行的Ec2尝试在AWS中获取会话令牌时出错

我正在使用具有权限的角色在EC2上运行应用程序:

"sts:GetSessionToken",
"sts:AssumeRole"
Run Code Online (Sandbox Code Playgroud)

当我尝试使用该角色获取临时凭证时,我收到错误:

Cannot call GetSessionToken with session credentials (Service: AWSSecurityTokenService; Status Code: 403; Error Code: AccessDenied;
Run Code Online (Sandbox Code Playgroud)

我是否缺少一个或多个角色权限才能获得临时会话凭据?

amazon-ec2 amazon-web-services amazon-iam aws-ec2

9
推荐指数
1
解决办法
2625
查看次数

如何在aws CLI中引导期间将弹性IP附加到EC2实例?

我可以用follwoing命令创建一个instace

aws ec2 run-instances --image-id $ AMI_ID --count 1 --instance-type $ {INSTANCE_TYPE} --key-name KEY_NAME --region us-east-1 --security-groups MYSECURITY_GROUP

但我没有找到任何附加弹性IP地址的选项.是否可以在引导期间附加弹性IP?或者发布自举?

amazon-ec2 amazon-web-services aws-cli aws-ec2

7
推荐指数
1
解决办法
1873
查看次数