RAC DD4D 22-23 октября, Москва, гостиница Катерина

Наш семинар RAC DD4D завершился сегодня. Программа семинара. Материалы семинара (только для слушателей, архиватор winrar 3.80 for windows, размер архива 23 Mb).

На фотографии - 2 Сергея Данилова, с разницей в 5 лет, 2 версии Oracle Database и 1 зуб мурости, но все с той же темой доклада - Oracle RAC.

Еще несколько фотографий (ч/б). Все фотографии (только для участников семинара, 25 Mb, Winrar 3.80 for Windows).














Судя по реакции слушателей семинар им очень понравился. Приведу несколько отзывов:

  • "Был на многих мероприятиях Oracle - это лучшее из всех", ЗАО РНТ
  • "Отличное содержание семинара. Крайне полезная информация, которую тяжело получить из public источников", CBOSS
  • "Очень понравились уровень подготовки докладчиков, выступления заказчиков", RSTYLE
  • "Интересный живой семинар, очень высокий уровень подготовки докладчиков, много примеров и best practice", ПЕТЕР-СЕРВИС
  • "Хорошо подготовленные выступления, ораторы - профессионалы своего дела, много информации, но не нудно, а иногда и весело", IBS
Со своей стороны хочу отметить очень грамотные и полные технических деталей выступления наших заказчиков, уже внедривших у себя RAC. Ребята нашли время для оформления своих достижений в презентации, нашли время приехать и выступить. Большое спасибо ! Эти презентации будут в открытом доступе после нашего TechForum.

Как всегда были на выстоте выступления Eвгения Горбоконенко и Андрей Криушина (RDTEX) и демострации Игоря Мельникова, что также отмечено в анкетах наших слушателей.

Были заданы достаточно интересные вопросы, на которые так просто во время выступления и не ответишь.



Первый из них связан с особенностями работы streams в RAC. Пока могу отослать к уже известному мне материалу в этом блоге. Второй связан с поддержкой RAC Weblogic'ом. Пока ответа, я не знаю, опубликую его здесь.

UPDATE 1.
В комментариях Timur приводит полезные ссылки на документацию Weblogic.

Попробую добавить также своих ссылок:
http://www.oracle.com/technology/products/database/clustering/pdf/bestpracticesforxaandrac.pdf
На странице 6 начинается раздел "BEA WebLogic Server 8.1 SP4 MultiPool Patch and Oracle RAC 10g" со слов "WebLogic Server 8.1 SP4 now provides a patch.." после которых ясно, что имеет смысл уточнить версию Weblogic. Далее из note 220970.1
"
The key item here is whether or not they are using XA. If they are using XA (Tuxedo for example), then they should use the DTP service with 10g Release 2. Have the customer review the Best Practices for using XA with RAC on OTN .
If it is not XA then services and Net Service Connection Load Balancing should work fine. They can tune aspects of the recovery such as instance recovery time. Using BEA, they do not get the advanced features such as Fast Connection Failover (FCF) and Runtime Connection Load Balancing
"
И далее цитата нашего product manager "Weblogic would recommend creating multi-pools with a pool for each instance and they will load balance/failover connections across the pools. However you will have to have workload static to an instance, you will not be able to take advantage of running a service on a subset of instances and failover to other instances. At this point, you are probably better off using the Weblogic multi-pools when using weblogic.
"
Еще цитата - "Weblogic не принимает FAN сообщений"

Продолжаю искать информацию....

UPDATE 2.
Презентация по perfomance tuning Streams 11g с OpenWorld. Упомянаются советы изменить commit_serialization, сделать buffered_queue. В деталях описан процесс мониторинга для 10g & 11g, а также как определить события ожидания (вы помните я рассказывал про них ?) для streams конфигурции.
Крайне рекомендуется к прочтению.

UPDATE 3.
Для слушателей выложены материалы семинара. См. Выше по тексту. Если Вы забыли логин/пароль напиши мне с email адреса, который указали при регистрации.


Читать дальше...

RAC DD4D news

Следующий семинар RAC DD4D будет проходить 22-23 октября в Москве, в отеле Катерина. Осталось несколько дней. Этот семинар для партнеров. В этот раз, прежде всего мы стараемся выполнить обещание перед теми, кому отказали в прошлые разы, и в первую очередь пригласили их. Есть шанс, что кто-то отказался и осталось еще несколько мест, я не знаю. Знает Виктория Бессонова (victoriya.bessonova), +7 495 641 1400.

Если вы можете объяснить почему мы должны пригласить именно Вас, можете написать мне (dmitry.volkov). У нас есть еще несколько свободных стульев в президиуме. Оттуда отлично все видно и слышно, кстати :))

Update 1.
Начало события в 10:00 оба дня. Мы всегда начинаем вовремя :)
Проезд: Москва, м. Павелецкая, Шлюзовая набережная д6/1, гостиница Катерина. Внимание, у нас будет зал Цельсиус ! Необходимо войти в гостиницу, пройти мимо лифтов, выйти в дверь на улицу и войти в дверь в здании напротив. Последняя агенда (subject to last minute change).


Читать дальше...

11.1.0.7

Выход патча 11.1.0.7 уже не новость, но лично для меня пока не очевидно, что он приносит нам нового. Пока я знаю 2 новости:

- Выход Universal Connection Pool for Java ( including JDBC, JNDI, LDAP, JCA, etc).
Attached a deprecation notice of the existing implicit connection cache, to
be included in Oracle Database 11g R2 Readme.

Oracle Database 11g UCP Downloads

Один из разработчиков на нашем семинаре жаловался на то, что существующий pool не удобен, что есть реализации удобнее. Видимо не он один это заметил, и вот ответ.

- в 11.1.0.7 уже включены необходимые патчи для использования SPA при upgrade с более ранних релизов (10.2.x.x., 9.2.0.8).



Обратите внимание, как можно использовать Database 11g при обновлениях с 9i на 10gR2. Replay Driver отправляет на выполнение запросы в 10g, а результат анализируется с помощью SPA на 11g. На систему 10g нужно ставить патчи, или иметь версию 10.2.0.4, на систему 11g нужно ставить патчи, или иметь версию 11.1.0.7



Metalink Notes:
560977.1
562899.1

На Oracle TechForum эту тему подробно раскроет Марк Ривкин (Mark.Rivkin).


Читать дальше...

Пакет UTL_FILE в RAC

Недавно один из партнеров-разработчиков задал мне вопрос относительно работы с пакетом UTL_FILE в среде RAC.
Действительно: вопрос интересный. Давайте разберемся.



В качестве тестового стенда я буду использовать наш RAC 11g VMWare Image.
Итак, для начала, мы создаем каталог на локальном диске первого узла:

   rac1-> mkdir /u01/app/oracle/admin/racdb/log_dir
rac1->


Затем создаем объект-директорию (directory) в СУБД:
  rac1-> sqlplus / as sysdba

SQL*Plus: Release 11.1.0.7.0 - Production on Sun Oct 12 12:18:06 2008

Copyright (c) 1982, 2008, Oracle. All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - Production
With the Partitioning, Real Application Clusters and Real Application Testing options

SQL> create directory log_dir as '/u01/app/oracle/admin/racdb/log_dir';

Directory created.

SQL> grant read, write on directory log_dir to rscott;

Grant succeeded.

SQL> exit;


Теперь, подключившись к первому узлу, попробуем записать файл в наш каталог log_dir:
  C:\>sqlplus rscott/rtiger@rac1

SQL*Plus: Release 11.1.0.7.0 - Production on Sun Oct 12 12:22:33 2008

Copyright (c) 1982, 2007, Oracle. All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - Production
With the Partitioning, Real Application Clusters and Real Application Testing options

SQL>
SQL> declare
2 v_xFile utl_file.file_type;
3 v_xLine varchar2(32) := 'Hello World!';
4 begin
5 v_xFile := utl_file.fopen('LOG_DIR', 'test.log' , 'a');
6
7 utl_file.put_line(v_xFile,v_xLine);
8
9 utl_file.fflush(v_xFile);
10 utl_file.fclose(v_xFile);
11 end;
12 /

PL/SQL procedure successfully completed.

SQL> exit


Проверим наш файл на файловой системе первого узла:

rac1-> more /u01/app/oracle/admin/racdb/log_dir/test.log
Hello World!
rac1->
как видите: пока никаких проблем!

Давайте попробуем записать в этот каталог файл с второго узла (здесь и далее вывод утилиты SQL+ сокращен для удобства восприятия):

C:\>sqlplus rscott/rtiger@rac2

SQL>
SQL> declare
2 v_xFile utl_file.file_type;
3 v_xLine varchar2(32) := 'Hello World!';
4 begin
5 v_xFile := utl_file.fopen('LOG_DIR', 'test.log' , 'a');
6
7 utl_file.put_line(v_xFile,v_xLine);
8
9 utl_file.fflush(v_xFile);
10 utl_file.fclose(v_xFile);
11 end;
12 /
declare
*
ERROR at line 1:
ORA-29283: invalid file operation
ORA-06512: at "SYS.UTL_FILE", line 41
ORA-06512: at "SYS.UTL_FILE", line 512
ORA-29283: invalid file operation
ORA-06512: at line 5
Мы получаем ошибку: на втором узле нет такого каталога в операционной системе.

Вывод: в RAC необходимо создавать каталоги на разделе файловой системе который виден сразу всем узлам кластера!
Вы можете возразить: "но ведь я могу создать одинаковые каталоги на всех узлах". Да, - можете, но для того, чтобы найти ваш файл, нужно будет обойти все узлы кластера, и поэтому работа с файлами сильно усложниться.

В нашем случае: создадим каталог в разделе который примонтирован к всем узлам; в качестве файловой системе используется OCFS:

rac1-> mkdir /ocfs/log_dir
rac1->

Переопределим нашу директорию LOG_DIR, чтобы она указывала на новый каталог

rac1-> sqlplus / as sysdba

SQL> create or replace directory log_dir as '/ocfs/log_dir';

Directory created.

И теперь снова попытаемся записать в этот каталог с второго узла:

C:\>sqlplus rscott/rtiger@rac2

SQL>
SQL> declare
2 v_xFile utl_file.file_type;
3 v_xLine varchar2(32) := 'Hello World!';
4 begin
5 v_xFile := utl_file.fopen('LOG_DIR', 'test.log' , 'a');
6
7 utl_file.put_line(v_xFile,v_xLine);
8
9 utl_file.fflush(v_xFile);
10 utl_file.fclose(v_xFile);
11 end;
12 /

PL/SQL procedure successfully completed.



Проверим наличие нашего файла с первого узла:

rac1-> more /ocfs/log_dir/test.log
Hello World!
rac1->
Все замечательно работает!

Но как быть, если в моем кластере нет разделяемого тома с кластерной файловой системой ?

Эту ситуацию мы рассмотрим в следующей серии (т.е. посте). :-)
Выход есть, и он не требует покупки и установки дополнительного софта !



Читать дальше...

LoadBalance for RAC

Спешу сообщить, что выпущена новая версия утилиты для тестирования балансировки нагрузки в момент соединения в среде RAC - LoadBalance.
Номер этой версии - 11.1.0.6 :-).

C:\>LoadBalance.exe help=y
 



LoadBalance: Release 11.1.0.6 - Production on 11.10.2008 11:15:36
 
Utility for check of Oracle RAC load balancing mode
Copyright (c) 2004,2008, Igor Melnikov. All rights reserved.
 
Format: LoadBalance.exe parameter1=value1 [parameterN=valueN]
 
Example: LoadBalance.exe userid=system/manager@rac count=20
LoadBalance.exe userid=system/manager@rac1 count=20
 
Keyword Description (Default)
--------------------------------------------------
COUNT Session count
HELP print this message: Y/N (N)
TIMEOUT Timeout between connections, in sec. (0)
ORACLEHOME Using "OracleHome" for connection
LOGFILE Save output to this
PARFILE Parameter filename
THREADS Parallel degree (for sessions storm) (1)
USERID Connection string
 Вот перечень новых возможностей:
  • появилась возможность задавать многопоточный (multithread) режим открытия сессий, - это позволяет производить "шторм" сессий на листенер и, соответственно, проверять его устойчивость к повышенным нагрузкам;
  • теперь параметры можно задавать через конфигурационный файл, а не только через командную строку;
  • опционально можно сохранять вывод утилиты в текстовый лог-файл;
  • утилита сейчас умеет работать через OCI 11g (в том числе и через Instant Client 11g);

Пока утилита рабоает только на 32-х разрядных ОС MS Windows. В принципе ее можно использовать и для тестирования Single-Node или одноузлового кластера (когда доступен только один узел).

И, в заключение, небольшой RoadMap:
  • Y2008Q4 - версия 11.1.0.7
    • вывод полной диагностики подключений (среднее время открытия сессии на каждом узле, политика балансировки сервиса, основные и резервные узлы сервиса и т.д.);
    • опциональная возможность закрытия сессии сразу после открытия соединения;
    • возможность задания в качестве количества сессий бесконечного числа - для проверки максимального числа соединений, которое выдерживает СУБД;

  • Y2009Q1 - версия 11.2.0.1
    • возможность задания нагрузки после открытия соединения в виде sql-скрипта;
    • возможность опционально указать start и stop sql-скрипты, которые запускаются, соответственно, перед началом и после теста;
    • вывод сообщений от нагрузочных sql-скриптов (вызовы dbms_output) в выходной поток утилиты LoadBalance;

  • Y2009Q2 - версия 11.2.0.2
    • поддержка балансировки через пул соединений (т.н. runtime-балансировка);
    • указание параметров пула соединений для runtime-балансировки;
    • опциональная возможность вывода FAN-сообщений от Load Balancing Advisor в случае runtime-балансировки.



Читать дальше...

RAC DD4D LAB Edition

На следующей неделе стартует первый семинар RAC DD4D LAB Edition. Из названия, надеюсь понятно, что это уже известный Вам RAC DD4D, но с лабораторными работами. Продолжительность курса 3 дня. Лабораторные работы проводятся на настоящем "железе", каждому слушателю выделяется отдельный 2-х узловой кластер и раздел на дисковом массиве NetApp. В лабораторных работах используется тот же образ, что и на семинаре.

На сколько я знаю, это первый в России практический семинар по 11g RAC ! Oracle University еще не успел обновить свой курс.


Существуют 2 особеннности этого события, которые я хотел бы отметить:

1. Ни на одном известном мне курсе по RAC Вам не предоставляется возможности забрать кластер с собой. Здесь Вы можете это сделать
2. Ведут семинар сразу два OCM Мастера Евгений Горбоконенко & Андрей Криушин (RDTEX).


Семинар проводится в рамках Партнерской Академии, а значит курс платный и проводится для партнеров.

Настоящее железо, курс читают два Oracle Master'a, Вы еще не бросились в партнерский отдел Oracle, чтобы попасть на этот курс ? :)

Подсказка: Бросаться надо к ногам Ольги Бородиной (olga.borodina@oracle.com), тел. +7 495 641 14 00


Читать дальше...

Moscow | Oracle Develop | The Premier Developer Event

И не говорите, что не видели вот этого анонса:
Moscow | Oracle Develop | The Premier Developer Event


Читать дальше...

Oracle RAC under Oracle VM

Я уже писал ранее, что 10.2.0.4 с некоторыми ограничениями сертифицирован под Oracle VM. А вот и свежая статья как именно стоит его устанавливать. Тут же Вам наверняка будет интересно, как Использовать Clusterware для защиты Oracle VM Manager.

И поскольку Oracle VM - это бесплатный продукт, мы совершенно не получаем денег за его рекламу :). Просто этот вариант сертифицирован, а значит идеально подходит для разработки и тестирования. С другой стороны, Oracle VM ставится на "голое железо", что может быть не очень удобно для первого ознакомления. Именно поэтому, Игорь Мельников (igor.melnikov) всегда поддерживает параллельно и образы наших машин для VMware.

Семинар по Oracle VM пока отложен - нужно время, чтобы переварить полученные новости.

Update 08.10.2008
Поправлена ссылка на статью. Извините за очепятки.


Читать дальше...

OracleVM 2.1.2 released

На днях вышла новая версия Oracle VM - 2.1.2

В номере версии изменилась лишь третья цифра, но перечень новых возможностей довольно значителен:

  • Secure Live Migration Насколько я понял речь идет о runtime-миграции с одной хост-машины OVM на другую и при этом трафик шифруется;

  • Guest VM HA - автоматический рестарт виртуальных машин в случае падения ВМ или отказа сервера для HA-кластеров OVM;

  • Увеличено число типов поддерживаемых сетевых интерфейсов, также теперь возможно указывать приоритет виртуального диска ВМ в очереди обращений к физическому диску хост-машины OVM, а также можно указывать приоритет и параметы входящего и исходящего трафика ВМ;

  • VMWare V2V - в OVM добавлена утилита конвертации образов виртуальных машин VMWare в формат Oracle VM, раньше для этого приходилось вручную выполнять несколько шагов;

  • P2V - при загрузке с CD-диска OVM появилась возможность автоматически создать образ виртуальной машины соответствующий физическому серверу (т.е. скопировать реальный сервер в виртуальную машину);

  • Появилась официальная сертификация RAC для Oracle VM, и Oracle VM добавлен в матрицу сертификации;


Напоминаю, что Oracle VM, является бесплатным продуктом, и новую версию вы можете сказать по адресу: http://edelivery.oracle.com/oraclevm
Вы можете свободно использовать OVM, дистрибутив не требует никаких лицезионных ключей, не включает никаких ограничений (по числу CPU, по функциональности и т.д.). В случае необходимости Вы платите только за поддержку.


Читать дальше...