Добавлено редактирование сервера, правил. ДОбавлена проверка на наличие утилиты rac при запуске
This commit is contained in:
parent
59d808f5a1
commit
aa357b45c3
|
@ -337,10 +337,10 @@ profile Режим управления профилями безопас
|
||||||
Команды:
|
Команды:
|
||||||
|
|
||||||
info
|
info
|
||||||
получение информации о менеджере
|
получение информации о менеджере
|
||||||
|
|
||||||
--manager=<uuid>
|
--manager=<uuid>
|
||||||
(обязательный) идентификатор менеджера кластера серверов
|
(обязательный) идентификатор менеджера кластера серверов
|
||||||
|
|
||||||
list
|
list
|
||||||
получение списка информации о менеджерах
|
получение списка информации о менеджерах
|
||||||
|
@ -378,76 +378,76 @@ server
|
||||||
имя администратора кластера
|
имя администратора кластера
|
||||||
|
|
||||||
--cluster-pwd=<pwd>
|
--cluster-pwd=<pwd>
|
||||||
пароль администратора кластера
|
пароль администратора кластера
|
||||||
|
|
||||||
Команды:
|
Команды:
|
||||||
|
|
||||||
info
|
info
|
||||||
получение информации о рабочем сервере
|
получение информации о рабочем сервере
|
||||||
|
|
||||||
--server=<uuid>
|
--server=<uuid>
|
||||||
(обязательный) идентификатор рабочего сервера кластера серверов
|
(обязательный) идентификатор рабочего сервера кластера серверов
|
||||||
|
|
||||||
list
|
list
|
||||||
получение списка информации о рабочих серверах
|
получение списка информации о рабочих серверах
|
||||||
|
|
||||||
insert
|
insert
|
||||||
регистрация рабочего сервера
|
регистрация рабочего сервера
|
||||||
|
|
||||||
--agent-host=<host>
|
--agent-host=<host>
|
||||||
(обязательный) имя хоста или IP-адрес агента сервера
|
(обязательный) имя хоста или IP-адрес агента сервера
|
||||||
|
|
||||||
--agent-port=<port>
|
--agent-port=<port>
|
||||||
(обязательный) основной порт агента сервера
|
(обязательный) основной порт агента сервера
|
||||||
|
|
||||||
--port-range=<min>:<max>
|
--port-range=<min>:<max>
|
||||||
(обязательный) диапазон IP портов для динамического распределения,
|
(обязательный) диапазон IP портов для динамического распределения,
|
||||||
возможно указание нескольких диапазонов
|
возможно указание нескольких диапазонов
|
||||||
|
|
||||||
--name=<name>
|
--name=<name>
|
||||||
наименование рабочего сервера
|
наименование рабочего сервера
|
||||||
|
|
||||||
--using=main|normal
|
--using=main|normal
|
||||||
вариант использования рабочего сервера
|
вариант использования рабочего сервера
|
||||||
main - в качестве центрального сервера
|
main - в качестве центрального сервера
|
||||||
normal - в качестве обычного сервера
|
normal - в качестве обычного сервера
|
||||||
|
|
||||||
--infobases-limit=<count>
|
--infobases-limit=<count>
|
||||||
максимальное количество информационных баз на рабочий процесс
|
максимальное количество информационных баз на рабочий процесс
|
||||||
|
|
||||||
--memory-limit=<Kb>
|
--memory-limit=<Kb>
|
||||||
предел использования памяти рабочими процессами
|
предел использования памяти рабочими процессами
|
||||||
|
|
||||||
--connections-limit=<count>
|
--connections-limit=<count>
|
||||||
максимальное количество соединения на рабочий процесс
|
максимальное количество соединения на рабочий процесс
|
||||||
|
|
||||||
--cluster-port=<port>
|
--cluster-port=<port>
|
||||||
номер порта главного менеджера кластера
|
номер порта главного менеджера кластера
|
||||||
|
|
||||||
--dedicate-managers=all|none
|
--dedicate-managers=all|none
|
||||||
вариант размещения менеджеров сервисов
|
вариант размещения менеджеров сервисов
|
||||||
all - размещать все сервисы в отдельных менеджерах
|
all - размещать все сервисы в отдельных менеджерах
|
||||||
none - размещать все сервисы в одном менеджере
|
none - размещать все сервисы в одном менеджере
|
||||||
|
|
||||||
--safe-working-processes-memory-limit=<bytes>
|
--safe-working-processes-memory-limit=<bytes>
|
||||||
максимальный объем памяти рабочих процессов на сервере
|
максимальный объем памяти рабочих процессов на сервере
|
||||||
|
|
||||||
--safe-call-memory-limit=<bytes>
|
--safe-call-memory-limit=<bytes>
|
||||||
безопасный расход памяти за один вызов в байтах
|
безопасный расход памяти за один вызов в байтах
|
||||||
|
|
||||||
update
|
update
|
||||||
изменение параметров рабочего сервера
|
изменение параметров рабочего сервера
|
||||||
|
|
||||||
--server=<uuid>
|
--server=<uuid>
|
||||||
(обязательный) идентификатор рабочего сервера кластера серверов
|
(обязательный) идентификатор рабочего сервера кластера серверов
|
||||||
|
|
||||||
--port-range=<min>:<max>
|
--port-range=<min>:<max>
|
||||||
диапазон IP портов для динамического распределения,
|
диапазон IP портов для динамического распределения,
|
||||||
возможно указание нескольких диапазонов
|
возможно указание нескольких диапазонов
|
||||||
|
|
||||||
--using=main|normal
|
--using=main|normal
|
||||||
вариант использования рабочего сервера
|
вариант использования рабочего сервера
|
||||||
main - в качестве центрального сервера
|
main - в качестве центрального сервера
|
||||||
normal - в качестве обычного сервера
|
normal - в качестве обычного сервера
|
||||||
|
|
||||||
--infobases-limit=<count>
|
--infobases-limit=<count>
|
||||||
|
@ -464,10 +464,10 @@ server
|
||||||
all - размещать все сервисы в отдельных менеджерах
|
all - размещать все сервисы в отдельных менеджерах
|
||||||
none - размещать все сервисы в одном менеджере
|
none - размещать все сервисы в одном менеджере
|
||||||
|
|
||||||
--safe-working-processes-memory-limit=<bytes>
|
--safe-working-processes-memory-limit=<bytes>
|
||||||
максимальный объем памяти рабочих процессов на сервере
|
максимальный объем памяти рабочих процессов на сервере
|
||||||
|
|
||||||
--safe-call-memory-limit=<bytes>
|
--safe-call-memory-limit=<bytes>
|
||||||
безопасный расход памяти за один вызов в байтах
|
безопасный расход памяти за один вызов в байтах
|
||||||
|
|
||||||
remove
|
remove
|
||||||
|
@ -1010,7 +1010,7 @@ profile Режим управления профилями безопас
|
||||||
|
|
||||||
Использование:
|
Использование:
|
||||||
|
|
||||||
rac rule [command] [options] [arguments]
|
rac rule [command] [options] [arguments]
|
||||||
|
|
||||||
Общие параметры:
|
Общие параметры:
|
||||||
|
|
||||||
|
@ -1035,8 +1035,8 @@ profile Режим управления профилями безопас
|
||||||
--cluster=<uuid>
|
--cluster=<uuid>
|
||||||
(обязательный) идентификатор кластера серверов
|
(обязательный) идентификатор кластера серверов
|
||||||
|
|
||||||
--cluster-user=<name>
|
--cluster-user=<name>
|
||||||
имя администратора кластера
|
имя администратора кластера
|
||||||
|
|
||||||
--cluster-pwd=<pwd>
|
--cluster-pwd=<pwd>
|
||||||
пароль администратора кластера
|
пароль администратора кластера
|
||||||
|
@ -1072,19 +1072,15 @@ profile Режим управления профилями безопас
|
||||||
|
|
||||||
--server=<uuid>
|
--server=<uuid>
|
||||||
(обязательный) идентификатор рабочего сервера кластера серверов
|
(обязательный) идентификатор рабочего сервера кластера серверов
|
||||||
|
--position=<num>
|
||||||
--position=<num>
|
|
||||||
(обязательный) позиция в списке требований (начиная с 0)
|
(обязательный) позиция в списке требований (начиная с 0)
|
||||||
|
--object-type=<id>
|
||||||
--object-type=<id>
|
|
||||||
идентификатор объекта требования
|
идентификатор объекта требования
|
||||||
|
--infobase-name=<name>
|
||||||
--infobase-name=<name>
|
|
||||||
наименование информационной базы,
|
наименование информационной базы,
|
||||||
если параметр не указан - требование распространяется на все
|
если параметр не указан - требование распространяется на все
|
||||||
информационные базы
|
информационные базы
|
||||||
|
--rule-type=auto|always|never
|
||||||
--rule-type=auto|always|never
|
|
||||||
тип правила распределения:
|
тип правила распределения:
|
||||||
auto - отсутствие правила (по-умолчанию)
|
auto - отсутствие правила (по-умолчанию)
|
||||||
always - распределять только на данный сервер
|
always - распределять только на данный сервер
|
||||||
|
@ -1437,3 +1433,4 @@ profile Режим управления профилями безопас
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
362
lib/function.tcl
362
lib/function.tcl
|
@ -352,21 +352,6 @@ proc InsertWorkServerItems {tree id} {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
proc DebugInfo {widget f} {
|
|
||||||
if {[eof $f]} {
|
|
||||||
catch [close $f] msg
|
|
||||||
if {$msg != ""} {
|
|
||||||
puts $msg
|
|
||||||
} else {
|
|
||||||
puts $msg
|
|
||||||
}
|
|
||||||
}
|
|
||||||
while {[gets $f line]>=0} {
|
|
||||||
puts "$line"
|
|
||||||
$widget insert {} end -text "$line" -values "$line"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
proc Del {} {
|
proc Del {} {
|
||||||
global active_cluster host
|
global active_cluster host
|
||||||
set tree .frm_tree.tree
|
set tree .frm_tree.tree
|
||||||
|
@ -540,6 +525,9 @@ proc Del::rule {tree host values} {
|
||||||
}
|
}
|
||||||
incr i
|
incr i
|
||||||
}
|
}
|
||||||
|
if {[info exists rule_id] == 0 || $rule_id eq ""} {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
set answer [tk_messageBox -message "Удалить требование $rule_id?" \
|
set answer [tk_messageBox -message "Удалить требование $rule_id?" \
|
||||||
-icon question -type yesno ]
|
-icon question -type yesno ]
|
||||||
|
@ -640,91 +628,92 @@ proc Add::server {} {
|
||||||
return $frm
|
return $frm
|
||||||
}
|
}
|
||||||
proc Add::servers {tree host values} {
|
proc Add::servers {tree host values} {
|
||||||
global default dedicate_manager using_central_server
|
global default dedicate_managers using
|
||||||
set dedicate_manager "none"
|
set dedicate_manager "none"
|
||||||
set using_central_server "normal"
|
set using_central_server "normal"
|
||||||
#set active_cluster $values
|
#set active_cluster $values
|
||||||
set frm [AddToplevel "Добавление рабочего сервера" server_grey_64]
|
set frm [AddToplevel "Добавление рабочего сервера" server_grey_64]
|
||||||
|
|
||||||
label $frm.lbl_server_desc -text "Описание сервера"
|
label $frm.lbl_name -text "Описание сервера"
|
||||||
entry $frm.ent_server_desc
|
entry $frm.ent_name
|
||||||
label $frm.lbl_host -text "Адрес сервера"
|
label $frm.lbl_agent_host -text "Адрес сервера"
|
||||||
entry $frm.ent_host
|
entry $frm.ent_agent_host
|
||||||
label $frm.lbl_port -text "Порт"
|
label $frm.lbl_agent_port -text "Порт"
|
||||||
entry $frm.ent_port
|
entry $frm.ent_agent_port
|
||||||
$frm.ent_port insert end $default(port)
|
$frm.ent_agent_port insert end $default(port)
|
||||||
label $frm.lbl_ports_range -text "Диапазон портов"
|
label $frm.lbl_port_range -text "Диапазон портов"
|
||||||
entry $frm.ent_ports_range
|
entry $frm.ent_port_range
|
||||||
$frm.ent_ports_range insert end $default(ports_range)
|
$frm.ent_port_range insert end $default(port_range)
|
||||||
label $frm.lbl_ram_max -text "Максимальный объём памяти раб. процессов"
|
label $frm.lbl_safe_working_processes_memory_limit -text "Максимальный объём памяти раб. процессов"
|
||||||
entry $frm.ent_ram_max
|
entry $frm.ent_safe_working_processes_memory_limit
|
||||||
$frm.ent_ram_max insert end $default(ram_max)
|
$frm.ent_safe_working_processes_memory_limit insert end $default(safe_working_processes_memory_limit)
|
||||||
label $frm.lbl_ram_sec -text "Безопасный расход памяти за вызов"
|
label $frm.lbl_safe_call_memory_limit -text "Безопасный расход памяти за вызов"
|
||||||
entry $frm.ent_ram_sec
|
entry $frm.ent_safe_call_memory_limit
|
||||||
$frm.ent_ram_sec insert end $default(ram_sec)
|
$frm.ent_safe_call_memory_limit insert end $default(safe_call_memory_limit)
|
||||||
label $frm.lbl_ram_work -text "Объём памяти рабочих процессов"
|
label $frm.lbl_memory_limit -text "Объём памяти рабочих процессов"
|
||||||
entry $frm.ent_ram_work
|
entry $frm.ent_memory_limit
|
||||||
$frm.ent_ram_work insert end $default(ram_work)
|
$frm.ent_memory_limit insert end $default(ram_work)
|
||||||
label $frm.lbl_base_on_process -text "Количество ИБ на процесс"
|
label $frm.lbl_infobases_limit -text "Количество ИБ на процесс"
|
||||||
entry $frm.ent_base_on_process
|
entry $frm.ent_infobases_limit
|
||||||
$frm.ent_base_on_process insert end $default(base_on_process)
|
$frm.ent_infobases_limit insert end $default(infobases_limit)
|
||||||
label $frm.lbl_connection_on_process -text "Количество соединений на процесс"
|
label $frm.lbl_connections_limit -text "Количество соединений на процесс"
|
||||||
entry $frm.ent_connection_on_process
|
entry $frm.ent_connections_limit
|
||||||
$frm.ent_connection_on_process insert end $default(connection_on_process)
|
$frm.ent_connections_limit insert end $default(connections_limit)
|
||||||
label $frm.lbl_manager_port -text "Порт главного менеджера кластера"
|
label $frm.lbl_cluster_port -text "Порт главного менеджера кластера"
|
||||||
entry $frm.ent_manager_port
|
entry $frm.ent_cluster_port
|
||||||
$frm.ent_manager_port insert end $default(port)
|
$frm.ent_cluster_port insert end $default(port)
|
||||||
label $frm.lbl_manager_each_service -text "Менеджер под каждый сервис"
|
label $frm.lbl_dedicate_managers -text "Менеджер под каждый сервис"
|
||||||
checkbutton $frm.ent_manager_each_service -variable dedicate_manager -onvalue all -offvalue none
|
checkbutton $frm.check_dedicate_managers -variable dedicate_managers -onvalue all -offvalue none
|
||||||
label $frm.lbl_central_server -text "Центральный сервер"
|
label $frm.lbl_using -text "Центральный сервер"
|
||||||
checkbutton $frm.ent_central_server -variable using_central_server -onvalue main -offvalue normal
|
checkbutton $frm.check_using -variable using -onvalue main -offvalue normal
|
||||||
|
|
||||||
grid $frm.lbl_server_desc -row 0 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_name -row 0 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.ent_server_desc -row 0 -column 1 -sticky nsew -padx 5 -pady 5
|
grid $frm.ent_name -row 0 -column 1 -sticky nsew -padx 5 -pady 5
|
||||||
grid $frm.lbl_host -row 1 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_agent_host -row 1 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.ent_host -row 1 -column 1 -sticky nsew -padx 5 -pady 5
|
grid $frm.ent_agent_host -row 1 -column 1 -sticky nsew -padx 5 -pady 5
|
||||||
grid $frm.lbl_port -row 2 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_agent_port -row 2 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.ent_port -row 2 -column 1 -sticky nsew -padx 5 -pady 5
|
grid $frm.ent_agent_port -row 2 -column 1 -sticky nsew -padx 5 -pady 5
|
||||||
grid $frm.lbl_ports_range -row 3 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_port_range -row 3 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.ent_ports_range -row 3 -column 1 -sticky nsew -padx 5 -pady 5
|
grid $frm.ent_port_range -row 3 -column 1 -sticky nsew -padx 5 -pady 5
|
||||||
grid $frm.lbl_ram_max -row 4 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_safe_working_processes_memory_limit -row 4 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.ent_ram_max -row 4 -column 1 -sticky nsew -padx 5 -pady 5
|
grid $frm.ent_safe_working_processes_memory_limit -row 4 -column 1 -sticky nsew -padx 5 -pady 5
|
||||||
grid $frm.lbl_ram_sec -row 5 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_safe_call_memory_limit -row 5 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.ent_ram_sec -row 5 -column 1 -sticky nsew -padx 5 -pady 5
|
grid $frm.ent_safe_call_memory_limit -row 5 -column 1 -sticky nsew -padx 5 -pady 5
|
||||||
grid $frm.lbl_ram_work -row 6 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_memory_limit -row 6 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.ent_ram_work -row 6 -column 1 -sticky nsew -padx 5 -pady 5
|
grid $frm.ent_memory_limit -row 6 -column 1 -sticky nsew -padx 5 -pady 5
|
||||||
grid $frm.lbl_base_on_process -row 7 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_infobases_limit -row 7 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.ent_base_on_process -row 7 -column 1 -sticky nsew -padx 5 -pady 5
|
grid $frm.ent_infobases_limit -row 7 -column 1 -sticky nsew -padx 5 -pady 5
|
||||||
grid $frm.lbl_connection_on_process -row 8 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_connections_limit -row 8 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.ent_connection_on_process -row 8 -column 1 -sticky nsew -padx 5 -pady 5
|
grid $frm.ent_connections_limit -row 8 -column 1 -sticky nsew -padx 5 -pady 5
|
||||||
grid $frm.lbl_manager_port -row 9 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_cluster_port -row 9 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.ent_manager_port -row 9 -column 1 -sticky nsew -padx 5 -pady 5
|
grid $frm.ent_cluster_port -row 9 -column 1 -sticky nsew -padx 5 -pady 5
|
||||||
grid $frm.lbl_manager_each_service -row 10 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_dedicate_managers -row 10 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.ent_manager_each_service -row 10 -column 1 -sticky nw -padx 5 -pady 5
|
grid $frm.check_dedicate_managers -row 10 -column 1 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.lbl_central_server -row 11 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_using -row 11 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.ent_central_server -row 11 -column 1 -sticky nw -padx 5 -pady 5
|
grid $frm.check_using -row 11 -column 1 -sticky nw -padx 5 -pady 5
|
||||||
|
|
||||||
.add.frm_btn.btn_ok configure -command {
|
.add.frm_btn.btn_ok configure -command {
|
||||||
RunCommand "" "server insert \
|
RunCommand "" "server insert \
|
||||||
--agent-host=[.add.frm.ent_host get] \
|
--agent-host=[.add.frm.ent_agent_host get] \
|
||||||
--agent-port=[.add.frm.ent_port get] \
|
--agent-port=[.add.frm.ent_agent_port get] \
|
||||||
--port-range=[.add.frm.ent_ports_range get] \
|
--port-range=[.add.frm.ent_port_range get] \
|
||||||
--name=[.add.frm.ent_server_desc get] \
|
--name=[.add.frm.ent_name get] \
|
||||||
--using=$using_central_server \
|
--using=$using \
|
||||||
--infobases-limit=[.add.frm.ent_base_on_process get] \
|
--infobases-limit=[.add.frm.ent_infobases_limit get] \
|
||||||
--memory-limit=[.add.frm.ent_ram_work get] \
|
--memory-limit=[.add.frm.ent_memory_limit get] \
|
||||||
--connections-limit=[.add.frm.ent_connection_on_process get] \
|
--connections-limit=[.add.frm.ent_connections_limit get] \
|
||||||
--cluster-port=[.add.frm.ent_manager_port get] \
|
--cluster-port=[.add.frm.ent_cluster_port get] \
|
||||||
--dedicate-managers=$dedicate_manager \
|
--dedicate-managers=$dedicate_manager \
|
||||||
--safe-working-processes-memory-limit=[.add.frm.ent_ram_max get] \
|
--safe-working-processes-memory-limit=[.add.frm.ent_safe_working_processes_memory_limit get] \
|
||||||
--safe-call-memory-limit=[.add.frm.ent_ram_sec get] \
|
--safe-call-memory-limit=[.add.frm.ent_safe_call_memory_limit get] \
|
||||||
--cluster=$active_cluster $host"
|
--cluster=$active_cluster $host"
|
||||||
Run::servers $tree $host $active_cluster
|
Run::servers $tree $host $active_cluster
|
||||||
destroy .add
|
destroy .add
|
||||||
}
|
}
|
||||||
|
return $frm
|
||||||
}
|
}
|
||||||
proc Add::work_server {tree host values} {
|
proc Add::work_server {tree host values} {
|
||||||
Add::servers $tree $host $values
|
return [Add::servers $tree $host $values]
|
||||||
}
|
}
|
||||||
proc Add::infobase {tree host values} {
|
proc Add::infobase {tree host values} {
|
||||||
Add::infobases $tree $host $values
|
Add::infobases $tree $host $values
|
||||||
|
@ -923,37 +912,39 @@ proc Add::cluster {tree host values} {
|
||||||
}
|
}
|
||||||
|
|
||||||
proc Add::rule {tree host values} {
|
proc Add::rule {tree host values} {
|
||||||
global default active_cluster object infobase type server
|
global default active_cluster object infobase object_type server infobase_name rule_type
|
||||||
set server $values
|
set server $values
|
||||||
|
|
||||||
set frm [AddToplevel "Требование назначения функциональности" functional_grey_64]
|
set frm [AddToplevel "Требование назначения функциональности" functional_grey_64]
|
||||||
|
|
||||||
set type [lindex $default(type) 0]
|
#set type [lindex $default(obtype) 0]
|
||||||
|
|
||||||
label $frm.lbl_object -text "Объект требования"
|
label $frm.lbl_object_type -text "Объект требования"
|
||||||
set combo_object [ttk::combobox $frm.cb_object \
|
ttk::combobox $frm.cb_object_type -textvariable object_type \
|
||||||
-textvariable object -values $default(object)]
|
-values $default(object_type)]
|
||||||
label $frm.lbl_type -text "Тип требования"
|
|
||||||
set combo_type [ttk::combobox $frm.cb_type \
|
|
||||||
-textvariable type -values $default(type)]
|
|
||||||
label $frm.lbl_infobase -text "Имя ИБ"
|
|
||||||
set combo_infobase [ttk::combobox $frm.cb_infobase \
|
|
||||||
-textvariable infobase -values [GetInfobases $active_cluster $host]]
|
|
||||||
|
|
||||||
label $frm.lbl_par -text "Значение доп. параметра"
|
label $frm.lbl_rule_type -text "Тип требования"
|
||||||
entry $frm.ent_par
|
ttk::combobox $frm.cb_rule_type -textvariable rule_type \
|
||||||
|
-values $default(rule_type)]
|
||||||
|
|
||||||
|
label $frm.lbl_infobase_name -text "Имя ИБ"
|
||||||
|
ttk::combobox $frm.cb_infobase_name -textvariable infobase_name \
|
||||||
|
-values [GetInfobases $active_cluster $host]]
|
||||||
|
|
||||||
|
label $frm.lbl_application_ext -text "Значение доп. параметра"
|
||||||
|
entry $frm.ent_application_ext
|
||||||
label $frm.lbl_priority -text "Приоритет"
|
label $frm.lbl_priority -text "Приоритет"
|
||||||
entry $frm.ent_priority
|
entry $frm.ent_priority
|
||||||
$frm.ent_priority insert end $default(priority)
|
$frm.ent_priority insert end $default(priority)
|
||||||
|
|
||||||
grid $frm.lbl_object -row 0 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_object_type -row 0 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.cb_object -row 0 -column 1 -sticky nsew -padx 5 -pady 5
|
grid $frm.cb_object_type -row 0 -column 1 -sticky nsew -padx 5 -pady 5
|
||||||
grid $frm.lbl_type -row 1 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_rule_type -row 1 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.cb_type -row 1 -column 1 -sticky nsew -padx 5 -pady 5
|
grid $frm.cb_rule_type -row 1 -column 1 -sticky nsew -padx 5 -pady 5
|
||||||
grid $frm.lbl_infobase -row 2 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_infobase_name -row 2 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.cb_infobase -row 2 -column 1 -sticky nsew -padx 5 -pady 5
|
grid $frm.cb_infobase_name -row 2 -column 1 -sticky nsew -padx 5 -pady 5
|
||||||
grid $frm.lbl_par -row 3 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_application_ext -row 3 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.ent_par -row 3 -column 1 -sticky nsew -padx 5 -pady 5
|
grid $frm.ent_application_ext -row 3 -column 1 -sticky nsew -padx 5 -pady 5
|
||||||
grid $frm.lbl_priority -row 4 -column 0 -sticky nw -padx 5 -pady 5
|
grid $frm.lbl_priority -row 4 -column 0 -sticky nw -padx 5 -pady 5
|
||||||
grid $frm.ent_priority -row 4 -column 1 -sticky nsew -padx 5 -pady 5
|
grid $frm.ent_priority -row 4 -column 1 -sticky nsew -padx 5 -pady 5
|
||||||
|
|
||||||
|
@ -962,14 +953,15 @@ proc Add::rule {tree host values} {
|
||||||
--cluster=$active_cluster \
|
--cluster=$active_cluster \
|
||||||
--server=$server \
|
--server=$server \
|
||||||
--position=0 \
|
--position=0 \
|
||||||
--object-type=$object \
|
--object-type=$object_type \
|
||||||
--infobase-name=$infobase \
|
--infobase-name=$infobase_name \
|
||||||
--rule-type=$type \
|
--rule-type=$rule_type \
|
||||||
--application-ext=[.add.frm.ent_par get] \
|
--application-ext=[.add.frm.ent_application_ext get] \
|
||||||
--priority=[.add.frm.ent_priority get] $host"
|
--priority=[.add.frm.ent_priority get] $host"
|
||||||
Run::rule $tree $host $server
|
Run::rule $tree $host $server
|
||||||
destroy .add
|
destroy .add
|
||||||
}
|
}
|
||||||
|
return $frm
|
||||||
}
|
}
|
||||||
|
|
||||||
proc GetInfobases {cluster host} {
|
proc GetInfobases {cluster host} {
|
||||||
|
@ -1035,7 +1027,7 @@ proc Edit::server {tree host value} {
|
||||||
close $file
|
close $file
|
||||||
close $orig_file
|
close $orig_file
|
||||||
#return "$host:$port"
|
#return "$host:$port"
|
||||||
file delete [file join $dir(work) 1c_srv.cfg.bak]
|
file delete [file join $dir(work) rac_gui .cfg.bak]
|
||||||
destroy .add
|
destroy .add
|
||||||
return $host
|
return $host
|
||||||
}
|
}
|
||||||
|
@ -1092,8 +1084,28 @@ proc Edit::cluster {tree host values} {
|
||||||
destroy .add
|
destroy .add
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
proc Edit::infobases {tree host values} {
|
||||||
|
set work_tree_id [.frm_work.tree_work selection]
|
||||||
|
set work_tree_values [.frm_work.tree_work item $work_tree_id -values]
|
||||||
|
set id [.frm_tree.tree selection]
|
||||||
|
#set values [.frm_tree.tree item $id -values]
|
||||||
|
set key [lindex [split $id "::"] 0]
|
||||||
|
set column_list [.frm_work.tree_work cget -columns]
|
||||||
|
set i 0
|
||||||
|
# проверка соответсвия колонки в таблице и ключа в дереве
|
||||||
|
foreach l $column_list {
|
||||||
|
if {$l eq "infobase" } {
|
||||||
|
set infobase [lindex $work_tree_values $i]
|
||||||
|
}
|
||||||
|
incr i
|
||||||
|
}
|
||||||
|
if {[info exists infobase] == 0 || $infobase eq ""} {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
Edit::infobase $tree $host $infobase
|
||||||
|
}
|
||||||
proc Edit::infobase {tree host values} {
|
proc Edit::infobase {tree host values} {
|
||||||
global default active_cluster infobase
|
global default active_cluster infobase
|
||||||
global security_level dbms scheduled_jobs_deny license_distribution date_offset
|
global security_level dbms scheduled_jobs_deny license_distribution date_offset
|
||||||
global sessions_deny
|
global sessions_deny
|
||||||
set infobase $values
|
set infobase $values
|
||||||
|
@ -1174,6 +1186,8 @@ proc Edit::infobase {tree host values} {
|
||||||
set $entry_name no
|
set $entry_name no
|
||||||
} elseif {$value eq "1"} {
|
} elseif {$value eq "1"} {
|
||||||
set $entry_name yes
|
set $entry_name yes
|
||||||
|
} else {
|
||||||
|
set $entry_name $value
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1207,3 +1221,129 @@ proc Edit::infobase {tree host values} {
|
||||||
destroy .add
|
destroy .add
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
proc Edit::servers {tree host values} {
|
||||||
|
set work_tree_id [.frm_work.tree_work selection]
|
||||||
|
set work_tree_values [.frm_work.tree_work item $work_tree_id -values]
|
||||||
|
set id [.frm_tree.tree selection]
|
||||||
|
#set values [.frm_tree.tree item $id -values]
|
||||||
|
set key [lindex [split $id "::"] 0]
|
||||||
|
set column_list [.frm_work.tree_work cget -columns]
|
||||||
|
set i 0
|
||||||
|
# проверка соответсвия колонки в таблице и ключа в дереве
|
||||||
|
foreach l $column_list {
|
||||||
|
if {$l eq "server" } {
|
||||||
|
set work_server [lindex $work_tree_values $i]
|
||||||
|
}
|
||||||
|
incr i
|
||||||
|
}
|
||||||
|
if {[info exists work_server] == 0 || $work_server eq ""} {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
Edit::work_server $tree $host $work_server
|
||||||
|
}
|
||||||
|
|
||||||
|
proc Edit::work_server {tree host values} {
|
||||||
|
global default active_cluster
|
||||||
|
global default dedicate_managers using
|
||||||
|
set server $values
|
||||||
|
set frm [Add::work_server $tree $host $values]
|
||||||
|
$frm configure -text "Редактирование рабочего сервера"
|
||||||
|
|
||||||
|
set lst [RunCommand cluster::$values "server info --cluster=$active_cluster --server=$server $host"]
|
||||||
|
foreach i [lindex $lst 0] {
|
||||||
|
if [regexp -nocase -all -- {(\D+)(\s*?|)(:)(\s*?|)(.*)} $i match param v2 v3 v4 value] {
|
||||||
|
regsub -all -- "-" [string trim $param] "_" entry_name
|
||||||
|
if [winfo exists .add.frm.ent_$entry_name] {
|
||||||
|
.add.frm.ent_$entry_name delete 0 end
|
||||||
|
.add.frm.ent_$entry_name insert end [string trim $value "\""]
|
||||||
|
}
|
||||||
|
if [winfo exists .add.frm.cb_$entry_name] {
|
||||||
|
set $entry_name [string trim $value "\""]
|
||||||
|
}
|
||||||
|
if [winfo exists .add.frm.check_$entry_name] {
|
||||||
|
set $entry_name $value
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.add.frm.lbl_agent_port configure -state disable
|
||||||
|
.add.frm.ent_agent_port configure -state disable
|
||||||
|
.add.frm.lbl_port_range configure -state disable
|
||||||
|
.add.frm.ent_port_range configure -state disable
|
||||||
|
.add.frm.lbl_name configure -state disable
|
||||||
|
.add.frm.ent_name configure -state disable
|
||||||
|
.add.frm.lbl_cluster_port configure -state disable
|
||||||
|
.add.frm.ent_cluster_port configure -state disable
|
||||||
|
|
||||||
|
.add.frm_btn.btn_ok configure -command {
|
||||||
|
RunCommand "" "server update \
|
||||||
|
--server=$server \
|
||||||
|
--using=$using \
|
||||||
|
--infobases-limit=[.add.frm.ent_infobases_limit get] \
|
||||||
|
--memory-limit=[.add.frm.ent_memory_limit get] \
|
||||||
|
--connections-limit=[.add.frm.ent_connections_limit get] \
|
||||||
|
--dedicate-managers=$dedicate_managers \
|
||||||
|
--safe-working-processes-memory-limit=[.add.frm.ent_safe_working_processes_memory_limit get] \
|
||||||
|
--safe-call-memory-limit=[.add.frm.ent_safe_call_memory_limit get] \
|
||||||
|
--cluster=$active_cluster $host"
|
||||||
|
Run::servers $tree $host $active_cluster
|
||||||
|
destroy .add
|
||||||
|
}
|
||||||
|
}
|
||||||
|
proc Edit::rule {tree host values} {
|
||||||
|
global default active_cluster object_type infobase_name object_type server infobase_name rule_type rule
|
||||||
|
set work_tree_id [.frm_work.tree_work selection]
|
||||||
|
set work_tree_values [.frm_work.tree_work item $work_tree_id -values]
|
||||||
|
set id [.frm_tree.tree selection]
|
||||||
|
#set values [.frm_tree.tree item $id -values]
|
||||||
|
set key [lindex [split $id "::"] 0]
|
||||||
|
set column_list [.frm_work.tree_work cget -columns]
|
||||||
|
set i 0
|
||||||
|
# проверка соответсвия колонки в таблице и ключа в дереве
|
||||||
|
foreach l $column_list {
|
||||||
|
if {$l eq "rule" } {
|
||||||
|
set rule [lindex $work_tree_values $i]
|
||||||
|
}
|
||||||
|
incr i
|
||||||
|
}
|
||||||
|
if {[info exists rule] == 0 || $rule eq ""} {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
set frm [Add::rule $tree $host $server]
|
||||||
|
$frm configure -text "Редактирование требования назначения функциональности"
|
||||||
|
|
||||||
|
puts "cluster = $active_cluster\nserver=$server\nrule=$rule"
|
||||||
|
|
||||||
|
set lst [RunCommand "" "rule info --cluster=$active_cluster --server=$server --rule=$rule $host"]
|
||||||
|
|
||||||
|
foreach i [lindex $lst 0] {
|
||||||
|
if [regexp -nocase -all -- {(\D+)(\s*?|)(:)(\s*?|)(.*)} $i match param v2 v3 v4 value] {
|
||||||
|
regsub -all -- "-" [string trim $param] "_" entry_name
|
||||||
|
if [winfo exists .add.frm.ent_$entry_name] {
|
||||||
|
.add.frm.ent_$entry_name delete 0 end
|
||||||
|
.add.frm.ent_$entry_name insert end [string trim $value "\""]
|
||||||
|
}
|
||||||
|
if [winfo exists .add.frm.cb_$entry_name] {
|
||||||
|
set $entry_name [string trim $value "\""]
|
||||||
|
}
|
||||||
|
if [winfo exists .add.frm.check_$entry_name] {
|
||||||
|
set $entry_name $value
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.add.frm_btn.btn_ok configure -command {
|
||||||
|
RunCommand "" "rule update \
|
||||||
|
--cluster=$active_cluster \
|
||||||
|
--server=$server \
|
||||||
|
--rule=$rule \
|
||||||
|
--position=0 \
|
||||||
|
--object-type=$object_type \
|
||||||
|
--infobase-name=$infobase_name \
|
||||||
|
--rule-type=$rule_type \
|
||||||
|
--application-ext=[.add.frm.ent_application_ext get] \
|
||||||
|
--priority=[.add.frm.ent_priority get] $host"
|
||||||
|
Run::rule $tree $host $server
|
||||||
|
destroy .add
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
17
rac_gui.cfg
17
rac_gui.cfg
|
@ -16,15 +16,15 @@ set default(locale) "ru"
|
||||||
# Порт RAS
|
# Порт RAS
|
||||||
set default(port) 1540
|
set default(port) 1540
|
||||||
# Диапазон портов
|
# Диапазон портов
|
||||||
set default(ports_range) 1560:1591
|
set default(port_range) 1560:1591
|
||||||
# Количество инф. баз на процесс
|
# Количество инф. баз на процесс
|
||||||
set default(base_on_process) 8
|
set default(infobases_limit) 8
|
||||||
# Количество соединений на процесс
|
# Количество соединений на процесс
|
||||||
set default(connection_on_process) 128
|
set default(connections_limit) 128
|
||||||
# Максимальный объём памяти раб. процессов
|
# Максимальный объём памяти раб. процессов
|
||||||
set default(ram_max) 0
|
set default(safe_working_processes_memory_limit) 0
|
||||||
# Безопасный расход памяти за вызов
|
# Безопасный расход памяти за вызов
|
||||||
set default(ram_sec) 0
|
set default(safe_call_memory_limit) 0
|
||||||
# Объём памяти рабочих процессов, до которого сервер считается производительным
|
# Объём памяти рабочих процессов, до которого сервер считается производительным
|
||||||
set default(ram_work) 0
|
set default(ram_work) 0
|
||||||
set default(dbms) {
|
set default(dbms) {
|
||||||
|
@ -40,7 +40,7 @@ set default(dbms) {
|
||||||
set default(secure_level) [list 0 1 2]
|
set default(secure_level) [list 0 1 2]
|
||||||
set default(date_offset) [list 0 2000]
|
set default(date_offset) [list 0 2000]
|
||||||
# Объект требования
|
# Объект требования
|
||||||
set default(object) {
|
set default(object_type) {
|
||||||
LicenseService
|
LicenseService
|
||||||
EventLogService
|
EventLogService
|
||||||
OpenID2ProviderContextService
|
OpenID2ProviderContextService
|
||||||
|
@ -69,7 +69,7 @@ set default(object) {
|
||||||
# auto - отсутствие правила (по-умолчанию)
|
# auto - отсутствие правила (по-умолчанию)
|
||||||
# always - распределять только на данный сервер
|
# always - распределять только на данный сервер
|
||||||
# never - не распределять на данный сервер
|
# never - не распределять на данный сервер
|
||||||
set default(type) {
|
set default(rule_type) {
|
||||||
auto
|
auto
|
||||||
always
|
always
|
||||||
never
|
never
|
||||||
|
@ -107,6 +107,3 @@ set default(load_balancing_mode) {
|
||||||
# цвета строк в таблице
|
# цвета строк в таблице
|
||||||
set color(dark_table_bg) "#e2e2e2"
|
set color(dark_table_bg) "#e2e2e2"
|
||||||
set color(light_table_bg) "#ffffff"
|
set color(light_table_bg) "#ffffff"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
29
rac_gui.tcl
29
rac_gui.tcl
|
@ -9,14 +9,14 @@ exec wish "$0" -- "$@"
|
||||||
# Home page: https://bitbucket.org/svk28/rac-gui
|
# Home page: https://bitbucket.org/svk28/rac-gui
|
||||||
######################################################
|
######################################################
|
||||||
|
|
||||||
#source [file join [pwd] 1c_srv.cfg]
|
|
||||||
|
|
||||||
set dir(root) [pwd]
|
set dir(root) [pwd]
|
||||||
|
|
||||||
set dir(work) [file join $env(HOME) .rac_gui]
|
set dir(work) [file join $env(HOME) .rac_gui]
|
||||||
if {[file exists $dir(work)] == 0 } {
|
if {[file exists $dir(work)] == 0 } {
|
||||||
file mkdir $dir(work)
|
file mkdir $dir(work)
|
||||||
}
|
}
|
||||||
|
set dir(msg) "[file join $dir(root) msgs]"
|
||||||
|
set dir(lib) "[file join $dir(root) lib]"
|
||||||
|
|
||||||
if {[file exists [file join $dir(work) rac_gui.cfg]] ==0} {
|
if {[file exists [file join $dir(work) rac_gui.cfg]] ==0} {
|
||||||
file copy [file join [pwd] rac_gui.cfg] [file join $dir(work) rac_gui.cfg]
|
file copy [file join [pwd] rac_gui.cfg] [file join $dir(work) rac_gui.cfg]
|
||||||
|
@ -24,6 +24,27 @@ if {[file exists [file join $dir(work) rac_gui.cfg]] ==0} {
|
||||||
|
|
||||||
source [file join $dir(work) rac_gui.cfg]
|
source [file join $dir(work) rac_gui.cfg]
|
||||||
|
|
||||||
|
if {[file exists $rac_cmd] == 0} {
|
||||||
|
set rac_cmd [tk_getOpenFile -initialdir $env(HOME) -parent . -title "Укажите путь до rac" -initialfile rac]
|
||||||
|
file copy [file join $dir(work) rac_gui.cfg] [file join $dir(work) rac_gui.cfg.bak]
|
||||||
|
set orig_file [open [file join $dir(work) rac_gui.cfg.bak] "r"]
|
||||||
|
set file [open [file join $dir(work) rac_gui.cfg] "w"]
|
||||||
|
while {[gets $orig_file line] >=0 } {
|
||||||
|
if {[string match "set rac_cmd*" $line]} {
|
||||||
|
puts $file "set rac_cmd $rac_cmd"
|
||||||
|
} else {
|
||||||
|
puts $file $line
|
||||||
|
}
|
||||||
|
}
|
||||||
|
close $file
|
||||||
|
close $orig_file
|
||||||
|
#return "$host:$port"
|
||||||
|
file delete [file join $dir(work) 1c_srv.cfg.bak]
|
||||||
|
|
||||||
|
} else {
|
||||||
|
puts "Found $rac_cmd"
|
||||||
|
}
|
||||||
|
|
||||||
set dir(msg) "[file join $dir(root) msgs]"
|
set dir(msg) "[file join $dir(root) msgs]"
|
||||||
set dir(lib) "[file join $dir(root) lib]"
|
set dir(lib) "[file join $dir(root) lib]"
|
||||||
|
|
||||||
|
@ -46,8 +67,6 @@ foreach modFile [lsort [glob -nocomplain [file join $dir(lib) *.tcl]]] {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
source [file join $dir(lib) gui.tcl]
|
source [file join $dir(lib) gui.tcl]
|
||||||
|
|
||||||
puts "$rac_cmd $dir(lib)"
|
|
||||||
source [file join $dir(work) rac_gui.cfg]
|
source [file join $dir(work) rac_gui.cfg]
|
||||||
|
|
||||||
if [file exists [file join $dir(work) 1c_srv.cfg]] {
|
if [file exists [file join $dir(work) 1c_srv.cfg]] {
|
||||||
|
@ -75,5 +94,3 @@ if [file exists [file join $dir(work) 1c_srv.cfg]] {
|
||||||
# #option add *Frame.Background $editor(bg) interactive
|
# #option add *Frame.Background $editor(bg) interactive
|
||||||
# option add *ScrollableFrame.Background $editor(bg) interactive
|
# option add *ScrollableFrame.Background $editor(bg) interactive
|
||||||
# option add *ScrolledWindow.Background $editor(bg) interactive
|
# option add *ScrolledWindow.Background $editor(bg) interactive
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user