Расширяющаяся Марионетка (вероятно, с augeas) для формата пользовательской конфигурации

Если Вы входите в свой лес, свойства, глобальные свойства, вкладку встреч, входите в один из профилей. Максимальный размер встречи непосредственно набрасывается на макс. людей, которые могут быть в многопартийном IM в то же время, что и хорошо. Это набросилось на инициатора сессии также... поэтому, который запустил IM (независимо от того, что его политика установлена на), определяет, сколько людей может ввести многопартийный IM.

У меня была проблема, потому что я первоначально установил ее на 10, потому что я думал, что эта установка была связана для Проживания, Встретившись только. Живая Встреча использует больше пропускной способности, и у нас нет тонны, таким образом, я ограничил ее. Люди, где, затем имея проблемы, отправляющие IM's в списки рассылки. После тестирования и после того как я понял это, я должен был увеличить число.

Это число также только играет роль, когда пользователи соединены...... поэтому, если я restict к 15 и у меня есть 20 человек в моем DL, но 7 в режиме офлайн, я действительно только собираюсь соединиться с 13...., который находится под 15 максимальными размерами встречи.

2
задан 2 May 2013 в 16:45
2 ответа

Да, линза Shellvars_list должна иметь возможность анализировать ваш файл как:

{ "SUPERACCESS"
  { "quote" = """ }
  { "value" = "127.0.0.1" }
  { "value" = "192.168.11.0/24" }
}
{ "SERVICES"
  { "quote" = """ }
  { "value" = "ping" }
  { "value" = "80/tcp" }
  { "value" = "443/tcp" }
  { "value" = "22/tcp" }
}
{ "FORWARDING"
  { "quote" = "" }
  { "value" = "1" }
}

Примечание: вы можете проверить это с помощью augcheck :

augcheck /etc/firewall/config Shellvars_list

Теперь проблема заключается в следующем: «Как перейти от этого дерева к вашему определению?», То есть:

firewall::superaccess { "LAN" :
         target => "192.168.11.0/24",
          ensure=> "present",
}

где вы хотите обеспечить наличие одного элемента в списке.

Вы могли бы сделать:

define firewall::superaccess (
  $target,
  $ensure = 'present',
) {
  case $ensure {
    'present': {
      $changes = "set SUPERACCESS/value[.='${target}'] '${target}'"
    }

    'absent': {
      $changes = "rm SUPERACCESS/value[.='${target}']"
    }

    default: { fail "Wrong value for ensure: '${ensure}'" }
  }

  augeas { "Set target ${target} in /etc/firewall/config":
    lens    => 'Shellvars_list.lns',
    incl    => '/etc/firewall/config',
    changes => $changes,
  }
}
3
ответ дан 3 December 2019 в 10:50

Что я, вероятно, сделал бы, так это изменил ваш скрипт так, чтобы переменные поступали из внешнего файла, такого как / etc / sysconfig / firewall-info или чего-то подобного (скажем, коробки redhat или подобного) . Тогда вам вообще не нужно изменять или управлять сценарием, только файлом конфигурации и позволить сценарию считывать переменные из файла конфигурации. Затем вы можете легко управлять файлом конфигурации с помощью объектива augeas shellvars или даже создать собственного поставщика.

0
ответ дан 3 December 2019 в 10:50

Теги

Похожие вопросы