脱机memsql 5.5安装失败,出现“空间不足”错误

时间:2016-11-22 08:47:15

标签: lxc memsql

我尝试在LXC容器环境中离线部署memsql 5.5。 memsql-ops的安装成功。当我运行以下命令添加memsql脱机媒体“memsqlbin_amd64.tar.gz”时,命令失败,并显示有关“空间不足”的错误消息。

以下是完整的错误消息:

# memsql-ops file-add -t memsql memsqlbin_amd64.tar.gz            
Traceback (most recent call last):
  File "/usr/local/updated-openssl/lib/python3.4/site-packages/cx_Freeze/initscripts/Console.py", line 27, in <module>
  File "/memsql_platform/bin/memsql-ops", line 18, in <module>
  File "/memsql_platform/memsql_platform/agent/cli/client.py", line 210, in parse
  File "/memsql_platform/memsql_platform/agent/cli/command_file_add.py", line 27, in run
  File "/memsql_platform/memsql_platform/agent/cli/file_add_mixin.py", line 61, in add_file
  File "/memsql_platform/memsql_platform/network/api_client.py", line 126, in call
  File "/memsql_platform/memsql_platform/network/api_client.py", line 92, in _call
memsql_platform.api.exceptions.DeviceOutOfDisk: The API is currently disabled because the disk that MemSQL Ops is installed on is out of space.

运行df -h可以看到主机端或容器内的磁盘空间都不是问题。

# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sdc        559G  3.2G  554G   1% /
none            492K     0  492K   0% /dev
/dev/sdc        559G  3.2G  554G   1% /software
cgroup_root      10M     0   10M   0% /sys/fs/cgroup
tmpfs            63G     0   63G   0% /dev/shm
tmpfs            63G  8.1M   63G   1% /run
tmpfs            13G     0   13G   0% /run/user/0

我怀疑LXC容器可能从主机端继承一些系统目录,并阻止应用程序写入这些目录。但是在互联网上搜索让我相信LXC容器没有这样的限制。

在Google上搜索相同的错误消息不会给我什么。我希望这个问题可以解决,但我也想知道为什么这会在容器中发生。据我所知,memsql正式成功部署到docker中。我很想知道如何实现这一目标。

1 个答案:

答案 0 :(得分:0)

我假设cgroup_root是您的LXC容器的装载 - 看起来您只有10M可用于该容器。

MemSQL Ops在主机系统上至少需要50M的可用空间,如果没有,它将进入休眠状态并避免对系统做任何事情。这显然不是您想要的,但对于生产工作负载接近磁盘容量的系统来说,它是一种安全措施。

您需要为LXC容器分配更多空间。请记住,MemSQL Ops也会将MemSQL安装到此文件系统上,因此您需要为二进制文件和共享库以及MemSQL中的数据分配足够的空间。