Сквид может легко сделать это с url_rewrite_program
и location_rewrite_program
параметры.
Например, создайте сценарий Perl как
#!/usr/bin/perl -w
$!=1;
while (<>) {
s@foo@bar@g;
print;
}
и сохраните это как/usr/local/bin/mysquidrewriter. Вышеупомянутый сценарий заменил бы все случаи нечто в URL как панель. Поскольку фактический SQL наполняет Вас, конечно, должен изменить этот сценарий.:-)
Затем добавьте к squid.conf строку как
url_rewrite_program /usr/local/bin/mysquidrewriter
То, когда Вы перезапускаете Сквид, он запускается, несколько mysquidrewriter обрабатывает фон, и каждый Сквид URL должен служить, будет массажироваться через них. Я много раз делал это, и это работает просто отлично.
Ошибки кажутся довольно очевидными ... похоже, что сценарии запуска hadoop
используют ssh
для подключения (возможно, от имени другого пользователя) и запуска вещи вверх:
localhost: ssh: connect to host localhost port 22: Connection refused
И если вы посмотрите на запуск, вы увидите, что sshd
запускается после hadoop
:
starting namenode, logging to /home/hadoop/hadoop/hadoop-0.20.2/bin/../logs/hadoop--namenode-localhost.localdomain.out
starting jobtracker, logging to /home/hadoop/hadoop/hadoop-0.20.2/bin/../logs/hadoop--jobtracker-
Starting sshd: [ OK ]
Решение состоит в том, чтобы убедиться, что sshd
запускается первым (хотя откровенно говоря, использование ssh для локального хоста для запуска службы кажется плохой идеей). Вы можете изменить порядок запуска вещей, просмотрев каталог соответствующего уровня выполнения (например, /etc/rc.d/rc3.d
) и изменив номер после S
(как в S55sshd
). Убедитесь, что порядок выключения правильный (то есть убедитесь, что hadoop
настроен на остановку перед sshd
).