10 g RAC on Red Hat Enterprise Linux Advanced Server 3, SAN.

lilya huff
Дата: 29.07.2005 17:40:58
Картина хлебом. имеем: американская контора. поднимают систему на новом продакшене. старый - ms sql cluster (мой), порядка 30 легаси систем (зверинец, слава богу не мой). Данные пойдут со всех систем на новые ораклы, через 3 недели вместо ноября - это меня вчера обрадовали, потому как миграция вся на мне времени на эксперименты с кластерами на оракле у меня ... хотелось бы больше...
Теперь "почему":
На этой неделе наняли oracle guru как продакшен dba. Поговорила с гуру и оказалось что, он 10g, unix, RAC,oracle applications,application server, report server и diccovery - все в 0, ни с чем не работал что ему делать, сидит трясется. Короче тебя вообще кто нанял-то мужик.., чей-то там знакомый что-ли. Пришел в контору поучиться.... на продакшене. Мой бос в ауте был, я тоже.
Я никогда сама 10g cluster на redhat не поднимала. Новый dba меня спрашивает можно ли мне вопросы задавать... Проблему с установкой oracle надо решать быстро. Посмотрела доку, кукбук на linux нашла(http://www.puschitz.com/InstallingOracle10gRAC.shtml). Вопросов больше чем ответов. Нужна стабильная конфигурация на линухе. Похоже на то, что их инсталятор как обычно с багами дружит успешно, есть их там...

Имеем 2 идентичных набора железа. Оба физически стоят в data center, там шкафы арендуются, кусок SAN и NAS. В каждом наборе 3 x64 сервера dell 2600. Конфигурация для 10g сертифицирована, просмотрела на металинке. Надо поставить сластера с лоадбалансинг. db должна лечь на SAN, backup на NAS. ms sql сейчас в такой позе у меня работает, oracle storage заказывается из того же места где мой продакшен живет, хосты нам просто выдают lun и куски их хранилища.

У кого-то есть такая конфигурация как у меня на SAN? Отзовитесь. Поделитесь конфигами если можно.

Вопрос сколько кусков отдельных на san заказывать, чтоб жить было хорошо. новый гуру в SAN тоже как свин в апельсинах.
RAC будет тащить базы 10g (от самописного аппсервера - oltp, dss в одной базе), oracle application server, oracle applications (financial и что-то еще, что не знаю, не мой департмент... но поддерживать нам), oracle reports, oracle discover (оба на тоже db где oltp живет ... индусы так написали).

На каком ядре куврфе лучше поднять кластер на 3-м или 4-й просить побыстрому.

Какое ядро RAC стабильно на redhate? 10.1.0 или пробовать 10.2? фикспаки?

Какие фикспаки надо приложить на redhat?

Ставить на ASM, raw(сама не хочу...), OCFS? Вот этот кукбук http://www.puschitz.com/InstallingOracle10gRAC.shtml описывает OCFS но прямо говорит, что он ее не использует на продакшенах. Народ с dell агитирует за ASM.

Они явно захотят grid. Какие меня ждут грабли на этом пути?

Делать общение между 2-мя кластерами как я понимаю надо делать средствами самого san-а.

Если вырубается по каким-то диким причинам кластер номер 1 полностью, надо чтоб все ушло на кластер номер 2 тихо и красиво. Кластера не должены терять open transactions (потому и oracle. ms sql cluster 2000 этого не умеет). Для начала надо поднять хотя один кластер в продакшен, второй будет тестовым, в январе тестовый становится вторым продакшен, резервным кластером работать будет. Это мысли головного руководства.
Внутри одного кластера при отказе одной ноды оракл подсхватит соединения на живой ноде, когда все падает с первого кластера на второй - то все аппсерверы пересоединяются по новой, подругому никак. Поправьте, если я ошибаюсь.

Сейчас у них их самописанный индусами на яве аппсервер заточен на один ip арес куда он смотрит, я это я знаю 100%, потому как 2 недели назад клонировала ms sql продакшен, их апсервер с ума сошел, одни подняли второй аппсервер, он не смог прийти на отдельно предоставленную ему базу на том же sql cluster, передрался со старым апсервером, нагадил и отвалился, пришлось вычищать и выставить клона, теперь у меня девелопмент идет без теста на продакшен... зло, как они такое чудо написали - не знаю... тот же самый слегка доработанный апсервер на оракла через jdbc. Поведение такое же на тему ip, оно хочет только один ip. В 10g мы имеем 3 virtual IP в случае 3-х нодового кластера. C ms sql тот аппсервер живет потому что у меня наружу один виртуальный ip торчит на 2-х нодовом 2000 server. Вопрос: можно ли RAC поставить так, чтоб он наружу выставлял один ip. Или в морг и переписывайте свой кривой апсервер? Вопрос дикий, понимаю, но это последствия разработки софта индусами... никто этот софт на rac никогда не портировал.

На кластере будут висеть:
Дополнительно ко всему хотят поставить на голову оракла timesTen (http://www.oracle.com/timesten/index.html) - in memory cache db. Это потому что их приложение написанное индусами имеет дикую базу... у них 20 join-ов на oltp - хотят пофиксить производительность этим внешним кэшем, это идея новго гуру dba.
Тут кто-то с этим timesTen работал?

Вот как длинно получилось... Если у кого-то что-то похожее есть на продакшене, отзовитесь в в форум или на li@org.vrn.ru. С благодарностью принимается любая помощь.

Спасибо, Лиля.
.dba
Дата: 29.07.2005 18:23:07
автор
У кого-то есть такая конфигурация как у меня на SAN? Отзовитесь.
У нас EMC CX300, но все диски в каждой из двух групп объединены в raid5 - такого мнения придерживается главный админ - "больше дисков в группе - больше скорость". Опровергнуть это не хватает фактов, да и возможностей (переконфигурировать уже невозможно т.к. все в продакшине)

автор
Вопрос сколько кусков отдельных на san заказывать, чтоб жить было хорошо.
Как минимум 4 (OC, ORACLE_HOME, датафайлы, логфайлы). Но крепитесь - вам сейчас тут расскажут, что надо 24 LUN на 24-х отдельных raid10 группах.

автор
На каком ядре куврфе лучше поднять кластер на 3-м или 4-й просить побыстрому.
ИМХО надо брать rhel 3 update 5

автор
Народ с dell агитирует за ASM.
Они явно захотят grid. Какие меня ждут грабли на этом пути?
У меня нет 10-ки, но если бы была я бы наверное тоже ставил на ASM и ни в коем случае не на ocfs. Но насколько я понимаю с ASM не так все и просто - все равно понадобится парочку raw device для кластер-менеджера, а также остается проблема где хранить архив-логи.
Кроме того надо умно назначить группы дисков для ASM, чтоб он в свою очередь рапределял свои группы по разным шпинделям.

автор
Делать общение между 2-мя кластерами как я понимаю надо делать средствами самого san-а.
Тут я не совсем понял о каком общении идет речь - если второй кластер резервный, то тогда наверное standby.

автор
Если вырубается по каким-то диким причинам кластер номер 1 полностью, надо чтоб все ушло на кластер номер 2 тихо и красиво. Кластера не должены терять open transactions (потому и oracle. ms sql cluster 2000 этого не умеет). ...
... Внутри одного кластера при отказе одной ноды оракл подсхватит соединения на живой ноде, когда все падает с первого кластера на второй - то все аппсерверы пересоединяются по новой, подругому никак. Поправьте, если я ошибаюсь.
Не знаю как в 10-ке, но в 9-ке TAF не распостраняется на транзакции, т.е. все открытые транзакции будут откатаны.

автор
Вопрос: можно ли RAC поставить так, чтоб он наружу выставлял один ip.
Можно поставить RedHat ClusterSuite и создать плавающий ip адрес, который будет ссылаться на один из Листенеров RAC'а, а этот Листенер в свою очередь будет осуществлять load balancing между узлами. В случае если эта нода умрет - плавающий ip сам переползет на другую. Единственное - если умрет только Листенер на той ноде на которую ссылается этот плавающий ip, то будет плохо, но это можно постоянно проверять скриптом (подключается в ClusterSuite).

автор
у них 20 join-ов на oltp - хотят пофиксить производительность этим внешним
А в чем проблема 20-и джоинов на OLTP? У нас разработчики тоже верили (пока я им не объяснил), что таблицы сначала соединяются, а потом селектируются данные :)
lilya huff
Дата: 29.07.2005 19:33:33
.dba

автор
Вопрос сколько кусков отдельных на san заказывать, чтоб жить было хорошо.
Как минимум 4 (OC, ORACLE_HOME, датафайлы, логфайлы). Но крепитесь - вам сейчас тут расскажут, что надо 24 LUN на 24-х отдельных raid10 группах.

у дядек деньги есть. они купили много чего им не надо, а вот например чего-нибудь на тему toad, change management, spotlight и т.п. - нема, пришлось сломать powerdesigner 9 чтоб их базу в какие-то диаграммы перевести, в их зверинце мне было не понятно куда что грузить с ms sql...
.dba

автор
Народ с dell агитирует за ASM.
Они явно захотят grid. Какие меня ждут грабли на этом пути?
У меня нет 10-ки, но если бы была я бы наверное тоже ставил на ASM и ни в коем случае не на ocfs. Но насколько я понимаю с ASM не так все и просто - все равно понадобится парочку raw device для кластер-менеджера, а также остается проблема где хранить архив-логи.
Кроме того надо умно назначить группы дисков для ASM, чтоб он в свою очередь рапределял свои группы по разным шпинделям.

так к с ASM я не работала как тут вы уже поняли, можно поподробнее на эту тему.
.dba

автор
Делать общение между 2-мя кластерами как я понимаю надо делать средствами самого san-а.
Тут я не совсем понял о каком общении идет речь - если второй кластер резервный, то тогда наверное standby.

речь идет о том, что база реплицируется самим SAN, между 2-мя SAN-ами кладется стекло, они между собой общаются. Народ с SAN-а говорит, что могут, платите бабки. Бизнес хочет полную прозрачность в случае физического разрушения датацентра с нулевой потерей данных.Чтобы них потеря транзакцый в случае физического вылета первого кластера была улевая. У их есть теории отправить второй кластер в другой датацентр для сохранности. В прошлом году у них был датацентр во флориде, их там ураган накрыл, все переехало в колорадо, вернее не все, но почти. Только в пятницу отправила сервер на ms sql во флориду как резервный. За каналы платить не хотели, поэтому там сервер не hot standby. Просто если что, подимается с бэкапа.Заглушка, аж говорить про такое противно. Если я на таких каналах поставлю лог шипинг, то у меня логи теряются когда сеть улеглать на первом сервере, а он что-то там не отправил. Второй сервер поднялся, работает. Первый оживает, и в этот момент они хотят чтоб все перешло на первый сервер, второй хотят чтоб ушел из картинки... оно вообще-то так сделать можно? Недоставленные во время трапа первого сервера логи фактически рассинхронизовывают базу насколько я понимаю. То, что не успело доехать в момент когда произошел обрыв сети. Лечится только синхронной репликацией, но сделать ее а таком расстоянии между серверами насколько я понимаю не реально. Народ говорит что синхронность кончается на 25км между серверами. У меня неправильное понимае процесса?
.dba

Не знаю как в 10-ке, но в 9-ке TAF не распостраняется на транзакции, т.е. все открытые транзакции будут откатаны.

Это я помню. 10-ка утверждает, что все сделано типа, только я не знаю, работает ли, гуру наш на эту тему само собой сказать ничего не может.
.dba

автор
Вопрос: можно ли RAC поставить так, чтоб он наружу выставлял один ip.
Можно поставить RedHat ClusterSuite и создать плавающий ip адрес, который будет ссылаться на один из Листенеров RAC'а, а этот Листенер в свою очередь будет осуществлять load balancing между узлами. В случае если эта нода умрет - плавающий ip сам переползет на другую. Единственное - если умрет только Листенер на той ноде на которую ссылается этот плавающий ip, то будет плохо, но это можно постоянно проверять скриптом (подключается в ClusterSuite).

поподробнее можно? может где у кого есть how-to?
.dba

А в чем проблема 20-и джоинов на OLTP? У нас разработчики тоже верили (пока я им не объяснил), что таблицы сначала соединяются, а потом селектируются данные :)


да проблема в голове у архитектора главного и у менеджеров, которые индусов наняли. индусы поют песню, менеджеры слушают, что выросло то выросло, а зверинец поддерживать нам. Гуру считает что 20join работают медленно на 10п RAC которого он само собой в глаза не видел, тестов само собой у него нет, он производительность видел не понятно на каком задохлом линксовом тестовом сервере с конфигурацией базы по дефаулту, ну и выводы оттуда пошли. рациональность мышления под вопросом...

icq или что-то похожее у тебя есть?
Ааз
Дата: 30.07.2005 17:23:42
Привет

Про 10gR2 пока забудьте, ибо нет такой в природе ;-). Да и не советовал бы... Свежак, однако. Правда, rolling updates наконец-то появились. Внушаить (с) Хрюн

Поддерживаю .dba насчет ASM. Те же raw, но без ручного гемора. Типа, еще один LVM, тока родной ораклиный. Избавлен от кластерных кривостей некоторых LVM, возникающих, например, при добавлении тома, диска, изменении размера тома и т.п., когда не все узлы видять обновленную конфигурацию.

Про архивлоги он погорячился - их тоже можно пихать на ASM, как и FLASHBACK и прочую лабуду. Тюк

В долгой боевой эксплуатации ASM не видел (маловато рисковых парней с крутыми системами на новье - aka 10g - ползет ;-) ), но одна довольно большая ERP-система (на Axapta) в тестовом режиме проблем не выявила (разве что statspack некорректно выдавал ASM'ные ожидания как значимые, а не idle; в AWR+ADDM не знаю, не смотрел).

Про ocfs лучше Алексея Руднева поспрошать, когда появится. Он этим плотно занимается. Скорее всего, будет нахваливать ;-). Но и про проблемы не умолчит.

SAN/NAS - без разницы. Что ASM/raw, что ocfs - ложатся поверху. Если нужен zero data loss, синхронное аппаратное зеркалирование SAN для redo может здорово помочь. Если ASM/ocfs - их конфигурации тоже синхронно обновлять. М.б. archivelog'и тоже. Остальное дотянется/довосстановится. DataGuard в MAXIMIUM PROTECTION тоже можно, но тогда сетевые каналы должны быть 100% неубойными. Иначе недоступность резервной (всех узлов) тормознет продакшн. Про SLA и время недоступности в случае катастроф - считать надо. DataGuard быстрее всех, я думаю. А для полного кайфа еще и DataGuard Manager/Broker или как он там еще обзывается. Рулить с ним проще, особенно плановые переключения или полуживой продакшн (Switchover). А вот савсэм дохлий продакшн рулить плехо (Failover). Особо жалко RESETLOGS делать, если redo зеркалятся синхронно по SAN'у.

lilya huff
.dba
Не знаю как в 10-ке, но в 9-ке TAF не распостраняется на транзакции, т.е. все открытые транзакции будут откатаны.
Это я помню. 10-ка утверждает, что все сделано типа, только я не знаю, работает ли, гуру наш на эту тему само собой сказать ничего не может.
То же самое гуно упаковано в более красивую коробочку и запрятано подальше от пытливых мозгов.

Оговорюсь - имею в виду только failover для транзакций, которого не было, нет и не надо. То бишь - если тебе надо, заведи журнал в приложении. Тебя уведомят, что транзакция сорвалась. Все. Подход не изменился, и нафинг не надо лишнее в базу пихать. Вроде как, задачка для мониторов транзакций.

Oracle® Database JDBC Developer's Guide and Reference
10g Release 1 (10.1)

Part Number B10979-02
8 Fast Connection Failover

8.3.1 What The Application Sees

When a RAC service failure is propagated to the JDBC application, the database has already rolled back the local transaction. The cache manager then cleans up all invalid connections. When an application holding an invalid connection tries to do work through that connection, it receives a SQLException ORA-17008, Closed Connection.

When an application receives a Closed Connection error message, it should:

1. Retry the connection request. This is essential, because the old connection is no longer open.
2. Replay the transaction. All work done before the connection was closed has been lost.


В 10gR2 ONS (типа, notification services) переименовали в FAN (fast application notification), failover'а для транзакций как не было, так и нет.

Тут, например:
TAF can restart a query after failover has completed but for other types of transactions, such as INSERT, UPDATE, or DELETE, the application must rollback the failed transaction and resubmit the transaction.


Этот раздел длинный получился. Уточните у своих индусов, на что они расчитывают в плане TAF'а. Ключевой вопрос - как они закодили в своем аппсервере обработку сбоя экземпляра БД. Глядишь, сроки ввода сдвинутся ))) А там и договорчик заключим, раз парням бабло девать некуда.

Всего
.dba
Дата: 01.08.2005 11:13:47
автор
.dba
автор
Народ с dell агитирует за ASM.
Они явно захотят grid. Какие меня ждут грабли на этом пути?
У меня нет 10-ки, но если бы была я бы наверное тоже ставил на ASM и ни в коем случае не на ocfs. Но насколько я понимаю с ASM не так все и просто - все равно понадобится парочку raw device для кластер-менеджера, а также остается проблема где хранить архив-логи.
Кроме того надо умно назначить группы дисков для ASM, чтоб он в свою очередь рапределял свои группы по разным шпинделям.

так к с ASM я не работала как тут вы уже поняли, можно поподробнее на эту тему.
Я тоже не работал, но вот есть интересная статья, правда немного схематичная, но как мне кажется полезная.

автор
.dba

автор
Вопрос: можно ли RAC поставить так, чтоб он наружу выставлял один ip.
Можно поставить RedHat ClusterSuite и создать плавающий ip адрес, который будет ссылаться на один из Листенеров RAC'а, а этот Листенер в свою очередь будет осуществлять load balancing между узлами. В случае если эта нода умрет - плавающий ip сам переползет на другую. Единственное - если умрет только Листенер на той ноде на которую ссылается этот плавающий ip, то будет плохо, но это можно постоянно проверять скриптом (подключается в ClusterSuite).

поподробнее можно? может где у кого есть how-to?
Вот тут все написано. Всех делов - проинсталлировать кластер сюите и создать кластерный ip, который указываешь в tnsnames для аппликейшин серевера.

автор
icq или что-то похожее у тебя есть?
Нет, аськи нет, кину тебе меил.
lilya huff
Дата: 02.08.2005 12:07:29
автор
icq или что-то похожее у тебя есть?
Нет, аськи нет, кину тебе меил.[/quot]
кинт pls. на li@org.vrn.ru. этот лучше, у меня дома русский есть, на работе нет русского.
Alex Roudnev
Дата: 04.08.2005 23:37:39
Я вообще то вожусь с RAC на SLES9, не на RedHat (см для справки инструкции на http://ftp.portera.com/Linux/).

Но в целом, советы:
- бери RHEL3 с последними апдейтами (так как ты не линукс гуру),
- бери 10.1.0.4 для i386
- бери OCFSv1
- ставь все СТРОГО по инструкциям из того места, где ты все нашла. НЕ ЭКСПЕРИМЕНТИРУЙ. RAC очень не любит экспериментов, то бишь сломать просто, а разобраться что наломала - не особо.
- гоните вашего DBA в три шеи.

Для оракла - важно не так сильно, сколько взять LUN-ов, сколько важно, чтобы эти LUNы были выданы с разных групп дисков. МИнимум возьми 3 группы - большую под таблицы, небольшую под REDO, большую но можно на NAS под архивные логи.

А в целом - поздравляю, вы попали. Делай все КАК МОЖНО СТАНДАРТНЕЕ.
Тогда заработает. А иначе готовься к граблям.

Обрати особое внимание на конфигурирование архивлогов в RAC кластере.
Alex Roudnev
Дата: 04.08.2005 23:40:54
И еще - ASM это удобно, НО
- не в коем случае не ставь на него archive logs, умучаешься потом чистить
- там есть заморочки со стартом ASM.

В общем, МНЭэээ, нэ советую если нет возможности погонять в тестах или взять консультантов.

И посмотри все про RAC в нашем форуме, я писал несколько ответов 2 недели назад (был в отпуске с тех пор).
Alex Roudnev
Дата: 04.08.2005 23:44:48
Так. Поехали дальше.

(1) TAF не прозрачен, не надейтесь. Приложение может получить ответ _обломились, повтори_. Если у вас там индусы накатали без ума - может и позависать все на хрен.

(2) Реальные базы с ASM есть и МНОГО. На удивление. Но вот архивлоги в ASM я бы не совал ни за какие коврижки - уже накушался по самые уши. Главное - делать все ТОЧНО так, как это делают в самом Оракле, иначе наступите на грабли (в лучшем случае).

(3) 10.2 это здорово, но пока еще есть только development release.
lilya huff
Дата: 16.08.2005 20:23:29
Alex Roudnev
Так. Поехали дальше.

pishu s raboty. russkogo net :).
Ya tut s ETL dyla zanyata. vot razgrebla malost'. Poidu posprashivauy narod. Ne nravitsya mne kak oledb gruzit s ms sql->oracle v DTS ms-skom. bolee nikakih etl tool nema u nih, poetomo rabotayu s chem est...


(1) TAF не прозрачен, не надейтесь. Приложение может получить ответ _обломились, повтори_. Если у вас там индусы накатали без ума - может и позависать все на хрен.


na taf ne nadeyalas chto rabotat budet :). na takoe kak podhvat open transaction na vtoroi node clustera ya zabila posle zazhty disera po advancad transaction processin na onyx clusterah , realizovat to mozhno, tolko poka delo do kemerzii doidet... i vse ravno polnogo chastya net... No sprosit ne vlom. Daby znat, chto ne ohibaus. Potomu kak tam guru nash vse eche cluster stavit, narod rugaetsya... poetomu poka zhdems kak okonchatelno oblazhaetsya. Vobzhem ya gotovlos kaku vygrebat... muzhik voobzhe ne uhom ni rulom... ne v kurse kak s sqlplus oracle startovat. eto uzhe klinika no moi vzglad...


(2) Реальные базы с ASM есть и МНОГО. На удивление. Но вот архивлоги в ASM я бы не совал ни за какие коврижки - уже накушался по самые уши. Главное - делать все ТОЧНО так, как это делают в самом Оракле, иначе наступите на грабли (в лучшем случае).

a v chem grabli byli na ASM?


(3) 10.2 это здорово, но пока еще есть только development release.


dyk ponyatno :). nach guru togo samogo hot steaming crup stavit... hai emu.
ya ne lublu na cluster stavit novoe. 6 mes dlya ne cluster, 9-12 dlya cluster chtob oni hot kak to bagi vychesali.