1616// under the License.
1717package com .cloud .consoleproxy ;
1818
19+ import java .util .Arrays ;
1920import java .util .Map ;
21+ import java .util .stream .Collectors ;
2022
2123import org .apache .cloudstack .framework .config .ConfigKey ;
2224
@@ -45,15 +47,52 @@ public interface ConsoleProxyManager extends Manager, ConsoleProxyService {
4547 String ALERT_SUBJECT = "proxy-alert" ;
4648 String CERTIFICATE_NAME = "CPVMCertificate" ;
4749
48- ConfigKey <Boolean > ConsoleProxySslEnabled = new ConfigKey <>(ConfigKey . CATEGORY_ADVANCED , Boolean .class , "consoleproxy.sslEnabled" , "false" ,
49- "Enable SSL for console proxy" , false );
50+ ConfigKey <Boolean > ConsoleProxySslEnabled = new ConfigKey <>(Boolean .class , "consoleproxy.sslEnabled" , ConfigKey . CATEGORY_ADVANCED , "false" ,
51+ "Enable SSL for console proxy" , false , ConfigKey . Scope . Zone , null );
5052
51- ConfigKey <Boolean > NoVncConsoleDefault = new ConfigKey <>(ConfigKey . CATEGORY_ADVANCED , Boolean .class , "novnc.console.default" , "true" ,
52- "If true, noVNC console will be default console for virtual machines" , true );
53+ ConfigKey <Boolean > NoVncConsoleDefault = new ConfigKey <>(Boolean .class , "novnc.console.default" , ConfigKey . CATEGORY_ADVANCED , "true" ,
54+ "If true, noVNC console will be default console for virtual machines" , false , ConfigKey . Scope . Zone , null );
5355
5456 ConfigKey <Boolean > NoVncConsoleSourceIpCheckEnabled = new ConfigKey <>(ConfigKey .CATEGORY_ADVANCED , Boolean .class , "novnc.console.sourceip.check.enabled" , "false" ,
5557 "If true, The source IP to access novnc console must be same as the IP in request to management server for console URL. Needs to reconnect CPVM to management server when this changes (via restart CPVM, or management server, or cloud service in CPVM)" , false );
5658
59+ ConfigKey <String > ConsoleProxyServiceOffering = new ConfigKey <>(String .class , "consoleproxy.service.offering" , "Console Proxy" , null ,
60+ "Uuid of the service offering used by console proxy; if NULL - system offering will be used" , true , ConfigKey .Scope .Zone , null );
61+
62+ ConfigKey <String > ConsoleProxyCapacityStandby = new ConfigKey <>(String .class , "consoleproxy.capacity.standby" , "Console Proxy" , String .valueOf (DEFAULT_STANDBY_CAPACITY ),
63+ "The minimal number of console proxy viewer sessions that system is able to serve immediately(standby capacity)" , false , ConfigKey .Scope .Zone , null );
64+
65+ ConfigKey <String > ConsoleProxyCapacityScanInterval = new ConfigKey <>(String .class , "consoleproxy.capacityscan.interval" , "Console Proxy" , "30000" ,
66+ "The time interval(in millisecond) to scan whether or not system needs more console proxy to ensure minimal standby capacity" , false , null );
67+
68+ ConfigKey <Integer > ConsoleProxyCmdPort = new ConfigKey <>(Integer .class , "consoleproxy.cmd.port" , "Console Proxy" , String .valueOf (DEFAULT_PROXY_CMD_PORT ),
69+ "Console proxy command port that is used to communicate with management server" , false , ConfigKey .Scope .Zone , null );
70+
71+ ConfigKey <Boolean > ConsoleProxyRestart = new ConfigKey <>(Boolean .class , "consoleproxy.restart" , "Console Proxy" , "true" ,
72+ "Console proxy restart flag, defaults to true" , true , ConfigKey .Scope .Zone , null );
73+
74+ ConfigKey <String > ConsoleProxyUrlDomain = new ConfigKey <>(String .class , "consoleproxy.url.domain" , "Console Proxy" , "" ,
75+ "Console proxy url domain - domainName,privateip" , false , ConfigKey .Scope .Zone , null );
76+
77+ ConfigKey <Integer > ConsoleProxySessionMax = new ConfigKey <>(Integer .class , "consoleproxy.session.max" , "Console Proxy" , String .valueOf (DEFAULT_PROXY_CAPACITY ),
78+ "The max number of viewer sessions console proxy is configured to serve for" , true , ConfigKey .Scope .Zone , null );
79+
80+ ConfigKey <Integer > ConsoleProxySessionTimeout = new ConfigKey <>(Integer .class , "consoleproxy.session.timeout" , "Console Proxy" , String .valueOf (DEFAULT_PROXY_SESSION_TIMEOUT ),
81+ "Timeout(in milliseconds) that console proxy tries to maintain a viewer session before it times out the session for no activity" , true , ConfigKey .Scope .Zone , null );
82+
83+ ConfigKey <Boolean > ConsoleProxyDisableRpFilter = new ConfigKey <>(Boolean .class , "consoleproxy.disable.rpfilter" , "Console Proxy" , "true" ,
84+ "disable rp_filter on console proxy VM public interface" , true , ConfigKey .Scope .Zone , null );
85+
86+ ConfigKey <Integer > ConsoleProxyLaunchMax = new ConfigKey <>(Integer .class , "consoleproxy.launch.max" , "Console Proxy" , "10" ,
87+ "maximum number of console proxy instances per zone can be launched" , false , ConfigKey .Scope .Zone , null );
88+
89+ String consoleProxyManagementStates = Arrays .stream (com .cloud .consoleproxy .ConsoleProxyManagementState .values ()).map (Enum ::name ).collect (Collectors .joining ("," ));
90+ ConfigKey <String > ConsoleProxyServiceManagementState = new ConfigKey <String >(ConfigKey .CATEGORY_ADVANCED , String .class , "consoleproxy.management.state" , com .cloud .consoleproxy .ConsoleProxyManagementState .Auto .toString (),
91+ "console proxy service management state" , false , ConfigKey .Kind .Select , consoleProxyManagementStates );
92+
93+ ConfigKey <String > ConsoleProxyManagementLastState = new ConfigKey <String >(ConfigKey .CATEGORY_ADVANCED , String .class , "consoleproxy.management.state.last" , com .cloud .consoleproxy .ConsoleProxyManagementState .Auto .toString (),
94+ "last console proxy service management state" , false , ConfigKey .Kind .Select , consoleProxyManagementStates );
95+
5796 void setManagementState (ConsoleProxyManagementState state );
5897
5998 ConsoleProxyManagementState getManagementState ();
@@ -72,6 +111,6 @@ void startProxyForHA(VirtualMachine vm, Map<VirtualMachineProfile.Param, Object>
72111
73112 boolean destroyProxy (long proxyVmId );
74113
75- int getVncPort ();
114+ int getVncPort (Long dataCenterId );
76115
77116}
0 commit comments