Opscenter备份到S3位置失败

时间:2015-03-31 14:38:57

标签: datastax datastax-enterprise opscenter

在AWS中使用OpsCenter 5.1.1,Datastax Enterprise 4.5.1,3节点群集。我将计划备份设置为本地服务器,也设置为S3中的存储区。 On Server备份在所有3个节点上成功完成。 S3备份运行缓慢,并且在所有3个节点上都失败。

备份了一些密钥空间,在S3存储桶中创建了文件。似乎并非所有表都备份。查看/var/log/opscenter/opscenterd.log,我看到一个OOM错误。当本地备份成功时,为什么在写入S3时会出现内存不足错误?

编辑: 数据大约是6GB,我正在备份所有的密钥空间。总共不到100张桌子。我已经将备份设置为每天一次。

以下是日志中的一个片段:

2015-03-31 14:30:34+0000 []  WARN: Marking request 15ae726b-abf6-42b6-94b6-e87e6b0cb592 as failed: {'sstables': {'solr_admin': {u'solr_resources': {'total_size': 186626, 'total
_files': 18, 'done_files': 18, 'errors': []}}, 'stage_scheduler': {u'schedule_servers': {'total_size': 468839, 'total_files': 12, 'done_files': 12, 'errors': []}, u'lock_flags'
: {'total_size': 207313249, 'total_files': 30, 'done_files': 25, 'errors': [u'java.lang.OutOfMemoryError: Java heap space', u'java.lang.OutOfMemoryError: Java heap space', u'ja
va.lang.OutOfMemoryError: Java heap space', u'java.lang.OutOfMemoryError: Java heap space', u'java.lang.OutOfMemoryError: Java heap space']}, u'scheduled_tasks': {'total_size':
 3763468, 'total_files': 18, 'done_files': 18, 'errors': []}

1 个答案:

答案 0 :(得分:1)

增加分配给OpsCenter的datastax-agent的内存:

一种选择是尝试增加分配给opscenter agent的Java堆的大小以避免OOM:

在您的群集周围查找datastax-agent-env.sh文件并修改以下属性:

-Xmx128M
-Djclouds.mpu.parts.size=16777216

-Xmx设置控制代理的堆大小。上传到S3时,-Djclouds设置控制文件的块大小。由于S3支持最多10,000个部分的多部分文件上载,因此块大小控制我们可以上传的文件的大小。增加块大小还需要在代理上使用更多内存,因此还需要增加代理堆大小。 以下是允许加载250 GB SSTable的示例设置:

-Xmx256M
-Djclouds.mpu.parts.size=32000000

这些设置将块大小增加到32MB,堆大小增加到256MB,并允许更大的SSTable大小。

请在帖子中添加以下信息:

1)您要备份多少个表,每个节点有多大?

2)您配置备份的频率是多少?