IBM® Informix® 12.10

Format i przykłady pliku konfiguracyjnego menedżera połączeń

W celu skonfigurowania menedżera połączeń należy utworzyć jego plik konfiguracyjny.

Większość opcji menedżera połączeń jest określona w pliku konfiguracyjnym. Plik konfiguracyjny składa się z dwóch części:
  • Nagłówek zawiera opcje konfiguracji menedżera połączeń określające nazwę instancji i inne opcjonalne parametry.
  • Treść zawiera co najmniej jedną sekcję jednostki połączeń. Te sekcje definiują typ i nazwę jednostki połączeń, umowy SLA, konfigurację przełączania awaryjnego i program do obsługi alarmów dotyczących przełączania awaryjnego.
Następujący blok kodu przedstawia format pliku konfiguracyjnego menedżera połączeń:
# *** NAGŁÓWEK ***
NAME nazwa_instancji_managera_połączeń

# Parametry opcjonalne
MACRO nazwa_1=lista_serwerów_1
MACRO nazwa_2=lista_serwerów_2
MACRO nazwa_n=lista_serwerów_n
.
.
.
LOCAL_IP lista_adresów_ipLOG wartość
LOGFILE ścieżka_i_nazwa_pliku
DEBUG wartość
CM_TIMEOUT sekundy
EVENT_TIMEOUT sekundy
SECONDARY_EVENT_TIMEOUT sekundy
SQLHOSTS wartość

# *** TREŚĆ ***
# Jednostka połączeń 1
typ_jednostki nazwa_jednostki_1
{
   INFORMIXSERVER lista_serwerów
   SLA nazwa_umowy_sla_1 DBSERVERS=wartość \
   \
                \# Atrybuty opcjonalne umowy SLA
                  MODE=wartość \
                  USEALIASES=wartość \
                  POLICY=wartość \
                  WORKERS=liczba_wątków \
                  HOST=nazwa_hosta \
                  NETTYPE=protokół_sieciowy \
                  SERVICE=nazwa_usługi \
                  SQLHOSTSOPT=opcje
   SLA nazwa_umowy_sla_2 DBSERVERS=wartość ...
   SLA nazwa_umowy_sla_n DBSERVERS=wartość ...
.
.
.
   # Opcjonalne parametry i atrybuty przełączania awaryjnego
   FOC ORDER=wartość \
       PRIORITY=wartość \
       TIMEOUT=sekundy \
       RETRY=próby

   # Opcjonalny parametr alarmu dotyczącego przełączania awaryjnego
   CMALARMPROGRAM ścieżka_i_nazwa_pliku
}

# Jednostka połączeń 2
typ_jednostki nazwa_jednostki_2
{
   INFORMIXSERVER lista_serwerów
   SLA nazwa_umowy_sla_1 DBSERVERS=wartość ...
   SLA nazwa_umowy_sla_2 DBSERVERS=wartość ...
   SLA nazwa_umowy_sla_n DBSERVERS=wartość ...
   FOC ORDER=wartość ...
   CMALARMPROGRAM ścieżka_i_nazwa_pliku
}
.
.
.
# Jednostka połączeń n
typ_jednostki nazwa_jednostki_n
{
   INFORMIXSERVER lista_serwerów
   SLA nazwa_umowy_sla_1 DBSERVERS=wartość ...
   SLA nazwa_umowy_sla_2 DBSERVERS=wartość ...
   SLA nazwa_umowy_sla_n DBSERVERS=wartość ...
   FOC ORDER=wartość ...
   CMALARMPROGRAM ścieżka_i_nazwa_pliku
}
Wskazówka: Dla lepszej czytelności można złamać długie wiersze pliku konfiguracyjnego, posługując się odwrotnym ukośnikiem ( \ ) jako znakiem kontynuacji wiersza. Następujący przykład przedstawia makrodefinicję rozdzieloną na cztery wiersze:
MACRO listasrw=wezel1,wezel2,wezel3,wezel4, \
              wezel5,wezel6,wezel7,wezel8, \
              wezel9,wezel10,wezel11,wezel12, \
              wezel13,wezel14,wezel15

Parametry pliku konfiguracyjnego menedżera połączeń

Następująca tabela zawiera parametry, których można użyć w poszczególnych sekcjach pliku konfiguracyjnego menedżera połączeń. Więcej informacji na temat każdego parametru można uzyskać przy użyciu odsyłacza umieszczonego w tabeli.
Tabela 1. Parametry pliku konfiguracyjnego menedżera połączeń
Część pliku konfiguracyjnego Parametry wymagane Parametry opcjonalne
Parametry nagłówka pliku konfiguracyjnego
Treść dotycząca klastra o wysokiej dostępności
Treść dotycząca struktury grid, zestawu replikacji lub zestawu serwerów

Przykład 1: prosty plik konfiguracji klastra o wysokiej dostępności

NAME      cm1
LOG       1
LOGFILE   ${INFORMIXDIR}/tmp/cm1.log

CLUSTER zachod
{
   INFORMIXSERVER  ids_w1,ids_w2
   SLA  oltp    DBSERVERS=primary
   SLA raport DBSERVERS=HDR,SDS
   FOC ORDER=ENABLED \
       TIMEOUT=5 \
       RETRY=2
   CMALARMPROGRAM ${INFORMIXDIR}/etc/CMALARMPROGRAM.sh
}

Ten przykład przedstawia konfigurację menedżera połączeń na potrzeby klastra o wysokiej dostępności i definicje dwóch umów dotyczących poziomu usług.

W nagłówku pliku konfiguracyjnego są zdefiniowane:
  • cm1 jako nazwa instancji menedżera połączeń,
  • rejestrowanie jako włączone,
  • cm1.log jako nazwa pliku dziennika,
  • $INFORMIXDIR/tmp jako katalog dziennika.
W treści pliku konfiguracyjnego są zdefiniowane dwie umowy SLA, parametry przełączania awaryjnego oraz program wywoływany w przypadku niepowodzenia przetwarzania przełączenia awaryjnego:
  • Żądania połączeń CONNECT TO @oltp są kierowane do serwera głównego.
  • Żądania połączeń CONNECT TO @raport są kierowane do serwera pomocniczego HDR. Jeśli serwer pomocniczy HDR nie jest dostępny, żądania połączeń CONNECT TO @raport są kierowane do dowolnego dostępnego serwera pomocniczego dysku współużytkowanego.
  • Wartość parametru konfiguracyjnego HA_FOC_ORDER serwera głównego jest używana jako reguła przełączania awaryjnego.
  • Menedżer połączeń czeka dodatkowe 5 sekund na zdarzenia w jednostce połączeń, zanim rozpocznie przetwarzanie przełączenia awaryjnego serwera głównego.
  • Menedżer połączeń przechodzi dwa razy przez kolejne elementy listy określonej w parametrze konfiguracyjnym serwera głównego HA_FOC_ORDER, a następnie przerywa automatyczne przełączenie awaryjne i generuje alarm.
  • W przypadku błędu przetwarzania przełączenia awaryjnego jest wywoływany program $INFORMIXDIR/etc/CMALARMPROGRAM.sh.
Ten plik konfiguracyjny nie zawiera niektórych parametrów i atrybutów, a domyślne zachowanie menedżera połączeń jest następujące:
  • Parametr DEBUG nie jest ustawiony, więc debugowanie jest wyłączone.
  • Parametr EVENT_TIMEOUT nie jest ustawiony, więc menedżer połączeń czeka 60 sekund na zdarzenia z serwera głównego przed rozpoczęciem przetwarzania przełączenia awaryjnego.
  • Parametr SECONDARY_EVENT_TIMEOUT nie jest ustawiony, więc menedżer połączeń czeka 60 sekund na zdarzenia z serwera pomocniczego przed rozłączeniem z tym serwerem pomocniczym.
  • Parametr CM_TIMEOUT nie jest ustawiony, więc serwer bazy danych czeka 60 sekund na zdarzenia z menedżera połączeń będącego arbitrem przełączania awaryjnego, zanim kolejny dostępny menedżer połączeń zostanie arbitrem przełączania awaryjnego.
  • Parametr SQLHOSTS nie jest ustawiony, więc menedżer połączeń sprawdza plik lokalny sqlhosts, a następnie zdalne pliki sqlhosts instancji ids_w1 i ids_w2.
  • Atrybuty MODE parametrów umów SLA nie są ustawione, więc menedżer połączeń przekierowuje żądania połączeń z umowami oltp i raport i nie działa jako serwer proxy.
  • Atrybuty POLICY umowy SLA raport nie są ustawione, więc menedżer połączeń kieruje żądania połączeń do najmniej obciążonego serwera pomocniczego.
  • Atrybuty WORKERS parametrów umów SLA nie są ustawione, więc do każdej umowy SLA zostają przydzielone cztery wątki robocze.
  • Atrybuty HOST, NETTYPE, SERVICE i SQLHOSTSOPT parametrów SLA nie są ustawione, więc menedżer połączeń używa wartości z plików sqlhosts na serwerach ids_w1 i ids_w2.

Przykład 2: złożony plik konfiguracyjny z wieloma typami jednostek połączeń

NAME cm2
MACRO NY=(ny1,ny2,ny3)
MACRO CA=(ca1,ca2,ca3)
LOG       1
LOGFILE ${INFORMIXDIR}/tmp/cm2.log

CLUSTER zachod
{
   INFORMIXSERVER ids_w1,ids_w2
   SLA oltpw DBSERVERS=primary
   SLA raportw DBSERVERS=(HDR,SDS)
   FOC ORDER=ENABLED \
       TIMEOUT=5 \
       RETRY=1
   CMALARMPROGRAM /etc/CMALARMPROGRAM.sh
}

CLUSTER wschod
{
   INFORMIXSERVER ids_e1,ids_e2
   SLA oltpe DBSERVERS=primary
   SLA raporte DBSERVERS=RSS,HDR
   FOC ORDER=ENABLED \
       TIMEOUT=5 \
       RETRY=1
   CMALARMPROGRAM ${INFORMIXDIR}/etc/CMALARMPROGRAM.sh
}

REPLSET erset
{
   INFORMIXSERVER g_er1,g_er2
   SLA repl1_dowolny DBSERVERS=ANY
   SLA repl1_ca DBSERVERS=${CA} \
                POLICY=WORKLOAD
   SLA repl1_ny DBSERVERS=${NY}
}

GRID grid1
{
   INFORMIXSERVER wezel1,wezel2,wezel3
   SLA grid1_dowolny DBSERVERS=ANY \
                 POLICY=LATENCY
   SLA grid1_dostepny DBSERVERS=${NY},${CA}
}

GRID grid2
{
   INFORMIXSERVER wezel4,wezel5
   SLA grid2_dowolny DBSERVERS=ANY \
                 POLICY=LATENCY
   SLA grid2_dostepny DBSERVERS=${CA},${NY}
}

SERVERSET ss
{
   INFORMIXSERVER ids1,ids2,ids3
   SLA ssdostepny DBSERVERS=ids1,ids2,ids3 \
               HOST=apollo \
               SERVICE=9600 \
               NETTYPE=onsoctcp
   SLA ssdowolny DBSERVERS=(ids1,ids2,ids3) \
             HOST=apollo \
             SERVICE=9610 \
             NETTYPE=onsoctcp
}

Menedżer połączeń jest tu konfigurowany do obsługi dwóch klastrów o wysokiej dostępności, zestawu replikacji, dwóch struktur grid i jednego zestawu serwerów.

W nagłówku pliku konfiguracyjnego są zdefiniowane:
  • cm2 jako nazwa instancji menedżera połączeń,
  • dwie makrodefinicje
    • NY, złożona z serwerów ny1, ny2 i ny3,
    • CA, złożona z serwerów ca1, ca2 i ca3,
  • rejestrowanie jako włączone,
  • cm2.log jako nazwa pliku dziennika,
  • $INFORMIXDIR/tmp jako katalog dziennika.

Treść pliku konfiguracyjnego definiuje umowy dotyczące poziomu usług i opcje przetwarzania przełączenia awaryjnego dla sześciu jednostek połączeń. Niektóre umowy SLA korzystają z makrodefinicji z nagłówka pliku konfiguracyjnego.

Ten plik konfiguracyjny nie zawiera niektórych parametrów i atrybutów, a domyślne zachowanie menedżera połączeń jest następujące:
  • Parametr DEBUG nie jest ustawiony, więc debugowanie jest wyłączone.
  • Parametr EVENT_TIMEOUT nie jest ustawiony, więc menedżer połączeń czeka 60 sekund na zdarzenia z serwera głównego przed rozpoczęciem przetwarzania przełączenia awaryjnego.
  • Parametr SECONDARY_EVENT_TIMEOUT nie jest ustawiony, więc menedżer połączeń czeka 60 sekund na zdarzenia z serwera pomocniczego przed rozłączeniem z tym serwerem pomocniczym.
  • Parametr CM_TIMEOUT nie jest ustawiony, więc serwer bazy danych czeka 60 sekund na zdarzenia z menedżera połączeń będącego arbitrem przełączania awaryjnego, zanim kolejny dostępny menedżer połączeń zostanie arbitrem przełączania awaryjnego.
  • Parametr SQLHOSTS nie jest ustawiony, więc menedżer połączeń sprawdza najpierw lokalny plik sqlhosts, a następnie zdalne pliki sqlhosts instancji serwera bazy danych.


Opinia | Wymiana przykładów | Rozwiązywanie problemów

Plik PDF można znaleźć na stronie zawierającej publikacje dotyczące rodziny produktów IBM Informix 12.10.
Uwagi do wydania, uwagi dotyczące dokumentacji i/lub uwagi dotyczące komputera znajdują się na stronie Uwagi do wydania
datownik Wersja: marzec 2013