我已在我们的实验室安装了50个节点的Kubernetes集群,并开始测试它。我面临的问题是我无法找到一种方法来传递在Kubernetes中运行docker容器所需的docker选项。我看过kubectl以及GUI。以下是docker run命令行的示例:
sudo docker run -it --mac-address=$MAC_ADDRESS \
-e DISPLAY=$DISPLAY -e UID=$UID -e XAUTHORITY=$XAUTHORITY \
-e XDG_RUNTIME_DIR=$XDG_RUNTIME_DIR \
-v /tmp/.X11-unix:/tmp/.X11-unix:ro \
-v /mnt/lab:/mnt/lab -v /mnt/stor01:/mnt/stor01 \
-v /mnt/stor02:/mnt/stor02 -v /mnt/stor03:/mnt/stor03 \
-v /mnt/scratch01:/mnt/scratch01 \
-v /mnt/scratch02:/mnt/scratch02 \
-v /mnt/scratch03:/mnt/scratch03 \
matlabpipeline $ARGS`
我的第一个问题是我们是否可以通过这些码头工具选项?如果有办法通过这些选项,我该怎么做?
...谢谢
答案 0 :(得分:0)
我也对此进行了调查,从听起来来看,这是Kubernetes不受支持的用例。将特定的MAC地址应用于docker容器似乎与轻松启动副本实例的总体设计目标相冲突。 this Reddit thread上建议了一些解决方法。特别是,OP最终决定了以下决定...
我最终添加了NET_ADMIN功能,并在entrypoint.sh中将MAC更改为带有“ ip link”的环境变量。