У нас есть кластер CEPH (Ubuntu 18.04, Luminous) для образов и томов Openstack. Когда я запускал его в производство, я обнаружил много проблем с производительностью, медленными экранными меню и низкой пропускной способностью; это оказалось из-за правил iptables.
Как правило, одним из первых правил является разрешение трафика от СВЯЗАННЫХ или УСТАНОВЛЕННЫХ подключений. Также разрешены НОВЫЕ подключения к любому из диапазона прослушивающих портов CEPH. Остальной трафик сбрасывается (здесь есть еще несколько деталей, но это суть).
Добавив правило LOG перед DROP, я обнаружил, что иногда пакеты отбрасывались, которые следовало пропустить, потому что netstat -tanp
сообщает об установленном соединении.
Средством было изменение правил, касающихся НОВЫХ подключений; это правило теперь разрешает любой трафик в диапазоне портов CEPH для порта источника или порта назначения.
Но несоответствие между соединениями согласно netstat и отслеживаемыми соединениями согласно conntrack -L
меня беспокоит. Я написал маленький сценарий чтобы сравнить два.
Если у кого-нибудь есть дополнительная информация о том, что может происходить, дайте мне знать. Кроме того, если вы попробуете мой сценарий на ваш Кластер CEPH, дайте мне знать.