Articles of services

在EFS Moodledata

我正在AWS上设置moodle。 我对将moodledata目录放在哪里感到困惑,因为我需要从多个EC2实例读取/写入这个目录。 我看到EFS是最好的select,但也读得很慢。 有更好的select吗?

aws ec2 public ip不能从某些互联网访问

我正在使用aws ec2 ubuntu 16.04,实例types为t2.micro。 但问题是,我无法访问某些Internetnetworking上的公共IP,如在我的办公室互联网networking,它是正常工作,但在我家的互联网networking,它不工作,但重点是在我家的互联网有三个设备连接(使用WiFi)两台笔记本电脑和一个移动(安卓)公共IP不能通过使用笔记本电脑,但它是在移动(取出SIM卡)工作。 在AWS安全组中 入站: HTTP TCP 80 0.0.0.0/0 HTTP TCP 80 ::/0 SSH TCP 22 0.0.0.0/0 在服务器上,当我使用这个netstat -ntlp | grep LISTEN netstat -ntlp | grep LISTEN显示 tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 1075/mysqld tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1028/sshd tcp6 0 0 :::80 :::* LISTEN 1209/apache2 tcp6 0 0 :::22 :::* […]

Apache如何加载重复的configuration选项?

我在我的服务器上安装了Apache(由Elastic Beanstalk使用的AWS EC2实例)。 主要的configuration文件httpd.conf包含两个configuration属性: Timeout 60 KeepAliveTimeout 60 我需要更改这些参数,但是在每个应用程序部署完成后,这个主configuration文件会被覆盖。 因此,一段时间后我的任何更改都会丢失(然后会恢复默认值)。 我发现我可以添加另一个configuration文件,并把它放在conf.d目录下,这样Apache也会加载这个文件。 所以我想创build这样的文件(让我们说conf.d/custom.conf ),并把这两个参数,但改变了值: Timeout 180 KeepAliveTimeout 180 主httpd.conf文件也包含以下几行: Include conf.d/*.conf Include conf.d/elasticbeanstalk/*.conf 这些行放在Timeout和KeepAliveTimeout选项之后。 所以,问题是: 来自自定义conf文件的选项是否会覆盖主文件中的选项? 所以我想要Timeout=180 , KeepAliveTimeout=180 。

Apache虚拟主机不匹配子域

我有在AWS EC2上运行的apache。 我已经将我的域名指向Amazon Route 53进行DNSpipe理,并为主域名(www.domain.co.uk)和一个子域名(api.domain.co.uk)创build了Alogging,这两个logging都指向我的公有IP EC2实例。 我创build了一个虚拟主机configuration来尝试将www和api指向不同的文件夹 – <VirtualHost *:80> ServerName www.domain.co.uk ServerAlias domain.co.uk DocumentRoot /var/www/html/www <Directory /var/www/html/www> AllowOverride All </Directory> </VirtualHost> <VirtualHost *:80> ServerName api.domain.co.uk ServerAlias api.domain.co.uk DocumentRoot /var/www/html/api <Directory /var/www/html/api> AllowOverride All </Directory> </VirtualHost> <VirtualHost *:80> ServerName default:80 DocumentRoot /var/www/html </VirtualHost> 当我在浏览器中访问www.domain.co.uk时,它提供了正确的内容。 但是,当我访问api.domain.co.uk它返回的内容从www.domain.co.uk 。 我已经在虚拟主机文件和ServerName和ServerAlias不同变体中尝试了不同的序列,但是它始终返回文件中的第一个条目(将api条目切换到顶部将返回两个url的api内容)。 任何build议将不胜感激!

Aws Redis集群会话pipe理不起作用

我们在aws ELB中使用nginx运行php7,并在AWS集群redis中处理会话,但是会话没有存储在AWS redis集群中。有时可以使用,但大部分时间不起作用。 在php.ini中已更改为session.save_handler = redis和session.save_path =“tcp:// redis configuration endpoint:6379” 请在此帮助。

EC2实例终止删除EFS卷文件夹

我有一个WordPress站点的Elastic Beanstalk环境,configuration为使用上传文件夹的EFS卷,挂载并链接到实例创build(按照本指南进行设置)。 但是,当实例向上/向下扩展时,它会以某种方式删除EFS卷上的上传文件夹,这使我可以恢复预先制作的备份( 这个 – 未答复 -似乎是相关的)。 我的efs.config文件如下所示: packages: yum: nfs-utils: [] jq: [] files: "/tmp/mount-efs.sh" : mode: "000755" content: | #!/usr/bin/env bash mkdir -p /mnt/efs EFS_NAME=$(/opt/elasticbeanstalk/bin/get-config environment | jq -r '.EFS_NAME') mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2 $EFS_NAME:/ /mnt/efs || true mkdir -p /mnt/efs/uploads chown webapp:webapp /mnt/efs/uploads commands: 01_mount: command: "/tmp/mount-efs.sh" container_commands: 00-mv-wp-content-uploads: command: rsync […]

通过AWS CLI部署新版本所需的ElasticBeanstalk权限

我有一个IAM策略设置,我认为它提供了将新版本部署到Elastic Beanstalk应用程序的正确权限。 我仍然得到InsufficientPrivilegesException ,特别是: aws elasticbeanstalk update-environment –environment-name LearnTfsBff –version-label LearnTfsBff-30 调用UpdateEnvironment操作时发生错误(InsufficientPrivilegesException):访问被拒绝 这是为部署用户设置的策略: { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "autoscaling:*", "cloudformation:GetTemplate", "cloudformation:DescribeStackResource", "cloudformation:DescribeStackResources", "autoscaling:*", "cloudfront:CreateInvalidation", "ec2:describeVpcs", "ec2:DescribeImages", "elasticbeanstalk:CreateApplicationVersion", "elasticbeanstalk:DescribeApplications", "elasticbeanstalk:DescribeApplicationVersions", "elasticbeanstalk:DescribeEnvironments", "elasticbeanstalk:UpdateEnvironment", "elasticloadbalancing:DeregisterInstancesFromLoadBalancer", "elasticloadbalancing:DescribeInstanceHealth", "elasticloadbalancing:RegisterInstancesWithLoadBalancer", "s3:ListAllMyBuckets", ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation" ], "Resource": "arn:aws:s3:::learn-tfs-builds" }, […]

ASP.NET禁用AWS IAMangular色

我启动了一个新的Windows Server 2016 EC2实例,并分配了S3完全pipe理IAMangular色。 我在EC2上安装了CLI。 我可以做“ aws s3 ls ”而不指定凭证。 都好。 但是,一旦我到服务器pipe理器,“添加angular色或function”,并启用ASP.NET,.NET 4.6和其他function需要在此服务器上运行ASP.NET MVC ,S3完整pipe理IAMangular色将停止运行。 如果我要“运行s3 ls ”,如果要求我运行configure并提供AWS凭据。 有趣的是,即使我卸载了所有ASP.NET和.NET 4.6以及我安装的所有其他function,并重新启动了实例,但IAMangular色仍然不起作用。 东西已经被永久损坏了。 有谁知道发生了什么? 哪个IISfunction导致IAMangular色停止工作?

EC2 – 网卡没有显示

我环顾四周,发现了一些线程,但没有什么帮助。 我对AWS上的EC2实例没有任何兴趣。 我有3个弹性IP,直到今天,他们都工作得很好。 我已经做了一些yum更新和什么。 我不知道什么时候开始,但其中一个是不会来的。 使用ifconfig或ip link show,我只能看到3个设备:回环,和我的两个私有IP。 我得到的唯一线索是当我在重新启动后查看/ var / log / messages时,ntpd似乎认为这个IP存在,但是在与另一个IP相同的接口上。 (IP地址为简单起见而改变) ntpd Listen normally on 1 lo 127.0.0.1 UDP 123 ntpd Listen normally on 2 eth0 192.168.0.1 UDP 123 ntpd Listen normally on 3 eth0 192.168.0.2 UDP 123 另一位负责人:当我进入我的EC2实例时,丢失的IP响应ping。 我已经离开了系统pipe理员的游戏很久了,所以我已经忘记了很多技巧。 我甚至不知道将弹性IP连接到私有IP的机制是什么。 编辑:我真的得到节点运行…不知道如何。 节点首先绑定到ifconfig中没有显示的IP。

如何从AWS EC2和Docker容器检索日志无法validation?

目前,我们有以下设置: 多台AWS EC2机器,其中一些运行Docker Container,一些则无docker。 为了检索Syslog,Web服务器日志(Apache)和应用程序日志,我们有一个在EC2实例上运行的Fluentd代理(td-agent)。 这些将错误日志消息转发到集中的Fluentd服务器(日志聚合器),然后将其发送到Graylog。 对于访问日志,实例上的所有td-agent将其直接转发给AWS Kinesis Firehose,后者每隔5分钟(缓冲)将其存储在S3上,并由AWS Athena进行search。 Docker容器上的访问日志被写入stdout和错误日志到stderr。 正在使用fluentd的docker日志驱动程序将它们转发到安装在相应主机上的td-agent。 现在,这个设置有一些问题: 访问日志不能实时查看(例如,开发人员为了debugging目的) td-agent的高速caching/caching可能会成为高负载的问题 当日志聚合器或td代理停止服务时,td代理或Docker容器的caching/缓冲可能成为问题 由于价格和其他原因,我们没有使用CloudWatch Logs。 使用真正的日志文件也意味着,我们需要定期轮换它们,注意磁盘空间等。最后一点可能是通过使用RAM磁盘或单独的驱动器来解决。 但是这并不能解决实际的问题,即拥有一个固定大小的caching/缓冲区,这个缓冲区可能会变满并且阻塞传入的日志 在这个问题上有什么更好的方法? 有关于loggingDocker容器的最佳实践吗?