Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Ubuntu 8.10 (iptables) + Mysql Proxy  (Прочитано 1622 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн kio

  • Автор темы
  • Любитель
  • *
  • Сообщений: 73
    • Просмотр профиля
Ubuntu 8.10 (iptables) + Mysql Proxy
« : 09 Октября 2009, 09:24:12 »
Всем доброго утра.
Прошу помочь разобраться с задачкой.
Есть VPS(VDS) с установленной Ubuntu 8.10. На нем необходимо поднять Mysql Proxy, который будет выступать в роли Mysql failover.
Есть две проблемы.
1. Mysql Proxy по умолчанию работает на порте 4040. В iptables добавляю правило вида
iptables -A INPUT -m tcp -p tcp --dport 4040 -j ACCEPTПосле чего проверяю
telnet IP_site 4040в результате достучаться не может((( Что делаю не так ? Поиском и манами пользовался, т.к. не первый год женат  :) .
2. Ну и сам Mysql Proxy. Запускаю командой
mysql-proxy --proxy-lua-script=failover.lua --proxy-backend-addresses=backend1:port --proxy-backend-addresses=backend2:portНу и содержимое lua скрипта следующее
function connect_server()
  for i = 1, #proxy.backends do
    local s = proxy.backends[i]

    if s.state ~= proxy.BACKEND_STATE_DOWN then
      proxy.connection.backend_ndx = i
--      print ("connecting to " .. i)
      return
    end
  end
end

function read_query(packet)
  for i = 1, #proxy.backends do
    local s = proxy.backends[i]

    if s.state ~= proxy.BACKEND_STATE_DOWN then
      proxy.connection.backend_ndx = i
--      print ("connecting to " .. i)
      return
    end
  end
end
который по идее должен перекидывать на первый попавшийся живой mysql сервер. Но он постоянно долбится только в 1-ый backend, даже если тот мертв.
Может кто сталкивался с таким ? Хотя это может из-за того, что криво настроен iptables.
Жду помощи.
Заранее всем спасибо.

Оффлайн terrible_user

  • Активист
  • *
  • Сообщений: 438
    • Просмотр профиля
Re: Ubuntu 8.10 (iptables) + Mysql Proxy
« Ответ #1 : 09 Октября 2009, 13:16:54 »
VDS ..
первое что можно посмотреть - а точно ли доходят пакеты на порт 4040 до тебя
посмотри
iptables -L -v
Бери больше, кидай дальше

Оффлайн kio

  • Автор темы
  • Любитель
  • *
  • Сообщений: 73
    • Просмотр профиля
Re: Ubuntu 8.10 (iptables) + Mysql Proxy
« Ответ #2 : 09 Октября 2009, 14:09:14 »
Вот результат выполнения команды
iptables -L -vChain INPUT (policy ACCEPT 17684 packets, 18M bytes)
 pkts bytes target     prot opt in     out     source               destination         
    9   400 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:4040

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 47476 packets, 22M bytes)
 pkts bytes target     prot opt in     out     source               destination 

Оффлайн terrible_user

  • Активист
  • *
  • Сообщений: 438
    • Просмотр профиля
Re: Ubuntu 8.10 (iptables) + Mysql Proxy
« Ответ #3 : 09 Октября 2009, 15:10:43 »
так у тебя и так везде ACCEPT,
и судя по всему ты и коннектишся правильно на 4040
хз но это не иптаблесы
Бери больше, кидай дальше

Оффлайн kio

  • Автор темы
  • Любитель
  • *
  • Сообщений: 73
    • Просмотр профиля
Re: Ubuntu 8.10 (iptables) + Mysql Proxy
« Ответ #4 : 09 Октября 2009, 15:48:50 »
Спасибо
Значит дело в mysql-proxy (
Кто-нибудь имел опыт работы с этой штуковиной ?
Или может есть другие решения для организации mysql failover ?

 

Страница сгенерирована за 0.017 секунд. Запросов: 20.