标签: aws-ebs

如何在Kubernete中使用Aws EBS安装postgresql卷

  1. 我首先创建了持久卷(EBS 10G)和相应的持久卷声明.但是当我尝试部署postgresql pods时(yaml文件):

测试postgresql.yaml

从pod接收错误:

initdb:目录"/ var/lib/postgresql/data"存在但不是空它包含一个lost + found目录,可能是因为它是一个挂载点.建议不要直接使用挂载点作为数据目录.在挂载点下创建一个子目录.

为什么pod无法使用此路径?我在minikube上尝试过相同的测试.我没有遇到任何问题.

  1. 我试图将卷安装目录路径更改为"/ var/lib/test/data",pod可以正在运行.我创建了一个新表和一些数据,然后杀了这个pod.Kubernete创造了一个新的吊舱.但是新的没有保留以前的数据和表格.

那么在Kubernete中使用Aws EBS正确安装postgresql卷的方法是什么,允许重新创建的pod可以重用存储在EBS中的初始数据库?

postgresql docker kubernetes persistent-volumes aws-ebs

20
推荐指数
2
解决办法
3393
查看次数

How to fix "End of stream on null" network issue?

Some users of my Android application are frequently running into a network error with the following error message: "Unexpected end of stream on null".

I didn't find any clear way to solve it by looking at other similar question. I haven't been able to reproduce the network error on my end.

1) I have unsuccessfully appended Connection=close to the requests headers as this answer suggests

2) I have unsucessflly added .retryOnConnectionFailure(true) as this answer suggests

3) I have unsuccessfully searched …

android retrofit okhttp amazon-elastic-beanstalk aws-ebs

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

在AWS上使用ReadWriteMany的Kubernetes PVC

我想在AWS上设置PVC,在此我需要将其ReadWriteMany作为访问模式。不幸的是,EBS仅支持ReadWriteOnce

我该如何解决?

  • 我已经看到有一个AWS EFS的beta提供程序支持ReadWriteMany,但是如上所述,它仍然是beta,并且其安装看起来有些不稳定。
  • 我可以使用节点亲和力将所有依赖EBS卷的Pod强制为单个节点,并保持为ReadWriteOnce,但这会限制可伸缩性。

还有其他解决方法吗?基本上,我需要的是一种持久存储数据的方法,以便在彼此独立的pod之间共享数据。

kubernetes persistent-volumes aws-ebs

8
推荐指数
2
解决办法
3121
查看次数

手动从OS磁盘EBS卷创建AMI所需的更改

我有一个VMware VM其OS原始磁盘备份到AWS S3.我可以AMI从OS盘创建使用import-image.我不能import-image每次都使用,因为它非常慢,因为我正在创建一个应用程序,您可以将VM备份到AWS云,其中第一个备份将是FULL备份,这需要更长时间,但后续INCREMENTAL备份应该花费更少的时间(取决于数据量已更改).我在每次备份期间创建AMI,即FULL或INCREMENTAL备份.

因此,可以解释的是,FULL备份需要时间,但对于INCREMENTAL,它应该花费更少的时间.

问题是,在增量备份期间从RAW数据创建AMI时,AWS不知道在FULL备份期间已经创建了AMI(以及相应的EBS快照),应该使用(或比较)最新数据来查找数据更改因此,应仅从更改的数据中创建AMI,这将花费更少的时间.

所以,我有以下选择:

1)import-snapshotAPI =将原始操作系统磁盘转换为EBS snapshot文件.

2)复制OS磁盘数据=创建EBS volume并将其附加到正在运行的磁盘上EC2 instance.然后将所有OS磁盘原始数据复制到卷.然后从中创建快照EBS volume.从EBS snapshot,我们可以创造AMI.

我尝试了两种选择,但每次尝试从中启动EC2 instanceAMI,都会出现以下错误:

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,0)
Run Code Online (Sandbox Code Playgroud)

通过各种论坛会后,我才知道,如果有错配出现上述错误AKI,并ARI同时从快照创建AMI.正确的AKI和ARI是从创建快照的源EC2实例中获取的(因为这是AWS所期望的).

就我而言,我没有从正在运行EC2 instance但从VMWare VM OS磁盘创建快照.

我发现import-imageAPI在创建AMI时也会创建快照.因此,我比较了import-image创建的快照和我使用option-1和option-2创建的快照.

我比较了文件列表 …

bootable amazon-ec2 amazon-web-services aws-ebs amazon-ami

7
推荐指数
0
解决办法
241
查看次数

如何使用AWS Cli启动具有自定义根卷ebs大小(大于8GB)的ec2实例

我正在尝试使用AWS CLI启动ec2实例,但默认根卷仅为8GB。如何使用具有100GB根卷的CLI使用CLI启动ec2实例?

我正在尝试此命令,

aws ec2 run-instances --image-id ami-xxxxx --count 1 --instance-type t2.micro \
--subnet-id xxxxxxx \
--key-name my-key \
--security-group-ids sg-xxxxxx \
--no-associate-public-ip-address \
--user-data file://test.sh \
--tag-specifications 'ResourceType=instance,Tags=[{Key=Name,Value=test-server}]'
Run Code Online (Sandbox Code Playgroud)

我尝试添加以下参数,但无法正常工作。

  • --block-device-mapping DeviceName=/dev/sda1,Ebs={VolumeSize=100}
  • --block-device-mapping /dev/sda1=:100:false
  • --block-device-mappings <value> (将辅助EBS卷添加到实例)。

amazon-ec2 amazon-web-services aws-ebs

6
推荐指数
1
解决办法
1027
查看次数

根设备和块设备的区别

有人可以帮助我了解 EC2 实例的根设备和块设备之间的区别。你可以看到我在下面发布的快照。

在此处输入图片说明

我试图实现的是:

  1. 我创建了 EC2 附加卷的快照。

  2. 从实例分离卷。

  3. 删除了卷。
  4. 从快照创建了一个新卷。
  5. 将新创建的卷重新附加到实例。

但它只附加到块设备而不是根设备。并导致无法启动实例。 在此处输入图片说明

如果我的问题有误,我深表歉意。等待您的回复。

提前致谢。

amazon-ec2 amazon-web-services aws-ebs

5
推荐指数
1
解决办法
1798
查看次数

加密 EBS:有哪些缺点?

我想知道对 EBS 存储进行加密的缺点。为什么这个选项不是默认选项?我加密了当前的 EBS,一切似乎都工作正常,性能方面我也没有遇到任何减速。

amazon-ec2 amazon-web-services aws-ebs

5
推荐指数
1
解决办法
492
查看次数

需要有关kubernetes的卷装入问题的帮助

我使用kops版本1.8.0-beta.1创建了RBAC启用的kubernetes集群,我正在尝试运行一个nginx pod,它应该附加预先创建的EBS卷并且pod应该启动.但即使我是管理员用户,也要获得未经授权的问题.任何帮助将受到高度赞赏.

kubectl version Client Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.3", GitCommit:"f0efb3cb883751c5ffdbe6d515f3cb4fbe7b7acd", GitTreeState:"clean", BuildDate:"2017-11-09T07:27:47Z", GoVersion:"go1.9.2", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.3", GitCommit:"f0efb3cb883751c5ffdbe6d515f3cb4fbe7b7acd", GitTreeState:"clean", BuildDate:"2017-11-08T18:27:48Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"}

namespace:default
Run Code Online (Sandbox Code Playgroud)

cat test-ebs.yml

apiVersion: v1
kind: Pod
metadata:
  name: test-ebs
spec:
  containers:
  - image: nginx
    name: nginx
    volumeMounts:
    - mountPath: /test-ebs
      name: test-volume
  volumes:
  - name: test-volume
    awsElasticBlockStore:
      volumeID: <vol-IDhere>
      fsType: ext4
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Warning  FailedMount            8m               attachdetach                                        AttachVolume.Attach failed for volume "test-volume" : Error attaching EBS volume "<vol-ID>" to instance …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services kubernetes kops aws-ebs

4
推荐指数
1
解决办法
1341
查看次数

AWS - 通过 EBS 实现跨可用区冗余的任何方式

我正在为 EBS 寻找冗余解决方案。理想情况下,我们在每个可用区都有一个 EBS 卷——类似于主从配置。在主 EBS 卷发生故障时,所有读/写都将定向到辅助卷。

该卷用于存储应用程序的用户数据,没有操作系统或应用程序文件或类似的东西。

将挂载此卷的 EC2 实例正在运行 centos,我还没有研究过任何类型的 linux 解决方案。如果没有任何亚马逊解决方案,也许有一个您知道的 linux 解决方案?

如果我们被困在单个可用区中的关键 EBS 卷,那么进行多可用区部署对我来说是没有意义的。

谢谢!!

amazon-ec2 amazon-ebs amazon-web-services aws-ebs

4
推荐指数
1
解决办法
3459
查看次数

Datadog AWS EBS 监控 - 驱动器空间 - 排除 /dev/loop* 设备

好的,这是我的设置:

  • 平台:AWS
  • 监控:DataDog
  • 指标:system.disk.in_use

问题:我正在运行 Ubuntu 18.04LTS 实例,随着时间的推移,它似乎会定期生成其他设备:

设备:/dev/loop1、/dev/loop2等。

当我第一次启动这些实例时,只有 3 个 /dev/loop(1-3) 设备,但是,随着时间的推移,一个 /dev/loop4 出现了,我们的驱动器空间警报给我传呼,因为这些设备在创建时已 100% 使用。

因此,我必须进入每个监视器(每个环境一个)并为新的 /dev/loop4 添加排除项,但在至少一个受监视实例创建该排除项之前我无法设置该排除项。

DataDog 中有没有一种方法可以让您添加一揽子排除项,例如:

设备:/dev/loop*?

我一直在梳理文档并没有找到任何东西,所以我想我会在这里问。

ubuntu amazon-web-services datadog aws-ebs ubuntu-18.04

4
推荐指数
1
解决办法
2037
查看次数