From aa4df18a05f1b988e2128c9a75733b910a4d38c8 Mon Sep 17 00:00:00 2001 From: beetlejesss Date: Tue, 8 Dec 2020 14:16:16 -0500 Subject: [PATCH 1/7] updated jee-container and properties files from 7.2.0 release also added service start/stop/tail files for using --- conf/jee-container-ssl.xml | 13 ++++++++++++- conf/jee-container.xml | 11 +++++++++++ conf/red5-ssl.properties | 12 ++++++------ conf/red5.properties | 12 ++++++------ conf/startred5pro.sh | 3 +++ conf/stopred5pro.sh | 2 ++ conf/tail.sh | 2 ++ 7 files changed, 42 insertions(+), 13 deletions(-) create mode 100755 conf/startred5pro.sh create mode 100755 conf/stopred5pro.sh create mode 100755 conf/tail.sh diff --git a/conf/jee-container-ssl.xml b/conf/jee-container-ssl.xml index 21a32c4..0adf537 100644 --- a/conf/jee-container-ssl.xml +++ b/conf/jee-container-ssl.xml @@ -14,7 +14,7 @@ - - +--> - + - @@ -104,55 +100,17 @@ + - - - - - - - - - - - - - - - - - TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 - TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 - TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 - TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 - TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA - TLS_RSA_WITH_AES_128_GCM_SHA256 - TLS_RSA_WITH_AES_128_CBC_SHA256 - TLS_RSA_WITH_AES_128_CBC_SHA - - - - - TLSv1.2 - - - - - - - ${wss.host}:${wss.port} - - diff --git a/conf/deprecated/red5-ssl.properties b/conf/deprecated/red5-ssl.properties index 2443847..9af6ee2 100644 --- a/conf/deprecated/red5-ssl.properties +++ b/conf/deprecated/red5-ssl.properties @@ -9,9 +9,9 @@ https.port=443 http.URIEncoding=UTF-8 http.max_headers_size=8192 http.max_keep_alive_requests=-1 -http.max_threads=20 -http.acceptor_thread_count=10 -http.processor_cache=20 +http.max_threads=2000 +http.acceptor_thread_count=100 +http.processor_cache=200 # RTMP rtmp.host=0.0.0.0 @@ -42,12 +42,12 @@ rtmp.default_acceptor=true # socket i/o pool sizes used when default acceptor is disabled rtmp.initial_pool_size=0 rtmp.max_pool_size=2 -rtmp.max_processor_pool_size=16 +rtmp.max_processor_pool_size=8 rtmp.executor_keepalive_time=60000 mina.logfilter.enable=false # scheduler configs (per application) -rtmp.scheduler.pool_size=16 -rtmp.deadlockguard.sheduler.pool_size=16 +rtmp.scheduler.pool_size=8 +rtmp.deadlockguard.sheduler.pool_size=8 # message executor configs (per application) - adjust these as needed if you get tasks rejected rtmp.executor.core_pool_size=4 rtmp.executor.max_pool_size=32 @@ -74,10 +74,9 @@ rtmps.port=8443 rtmps.ping_interval=5000 rtmps.max_inactivity=60000 rtmps.max_keep_alive_requests=-1 -rtmps.max_threads=20 +rtmps.max_threads=8 rtmps.acceptor_thread_count=2 rtmps.processor_cache=20 - # RTMPS Key and Trust store parameters rtmps.keystorepass=password rtmps.keystorefile=conf/keystore.jks @@ -91,7 +90,7 @@ rtmpt.ping_interval=5000 rtmpt.max_inactivity=60000 rtmpt.max_handshake_time=5000 rtmpt.max_keep_alive_requests=-1 -rtmpt.max_threads=20 +rtmpt.max_threads=8 rtmpt.acceptor_thread_count=2 rtmpt.processor_cache=20 rtmpt.encoder_base_tolerance=5000 @@ -107,12 +106,6 @@ rtmpt.max_queue_offer_time=125 # max offer attempts rtmpt.max_queue_offer_attempts=4 -# WebSocket -ws.host=0.0.0.0 -ws.port=8081 -wss.host=0.0.0.0 -wss.port=8083 - # Debug proxy (needs to be activated in red5-core.xml) proxy.source_host=127.0.0.1 proxy.source_port=1936 @@ -127,15 +120,15 @@ jmx.rmi.port.remoteobjects= jmx.keystorepass=password jmx.mina.monitor.enable=false jmx.mina.poll.interval=1000 -# Whether to always create the registry in-process, not attempting to +# Whether to always create the registry in-process, not attempting to # locate an existing registry at the specified port. Set to "true" in order # to avoid the overhead of locating an existing registry when you always intend # to create a new registry in any case. jmx.registry.create=true -# Whether or not the MBeanServerFactoryBean should attempt to locate a running +# Whether or not the MBeanServerFactoryBean should attempt to locate a running # MBeanServer before creating one jmx.reuse.existing.server=true -# Whether to register the MBeanServer with the MBeanServerFactory, making it +# Whether to register the MBeanServer with the MBeanServerFactory, making it # available through MBeanServerFactory.findMBeanServer() jmx.register.factory=true # Whether any threads started for the JMXConnectorServer should be started as daemon threads From 8dc209c54d9c653401946259decf7d2ffd646322 Mon Sep 17 00:00:00 2001 From: beetlejesss Date: Wed, 10 Feb 2021 13:43:59 -0500 Subject: [PATCH 3/7] updated service file --- red5proInstaller.sh | 56 ++++++++++++++++++++++----------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/red5proInstaller.sh b/red5proInstaller.sh index 956d091..7d797ec 100755 --- a/red5proInstaller.sh +++ b/red5proInstaller.sh @@ -2010,39 +2010,39 @@ register_rpro_service_v2() ####################################################### -service_script="[Unit] + service_script="[Unit] Description=Red5 Pro After=syslog.target network.target [Service] Type=forking -Environment=PID=$PID -Environment=JAVA_HOME=$JAVA_ENV -LimitNOFILE=65536 -Environment=RED5_HOME=$DEFAULT_RPRO_PATH -WorkingDirectory=$DEFAULT_RPRO_PATH -ExecStart=/usr/bin/jsvc -debug \\ - -home \${JAVA_HOME} \\ - -cwd \${RED5_HOME} \\ - -cp \${RED5_HOME}/commons-daemon-1.1.0.jar:\${RED5_HOME}/red5-service.jar:\${RED5_HOME}/conf \\ - -Dred5.root=\${RED5_HOME} \\ - -Djava.library.path=\${RED5_HOME}/lib/amd64-Linux-gpp/jni \\ - -Djava.security.debug=failure -Djava.security.egd=file:/dev/./urandom \\ - -Dcatalina.home=\${RED5_HOME} -Dcatalina.useNaming=true \\ - -Dorg.terracotta.quartz.skipUpdateCheck=true \\ - $JVM_MEMORY_ALLOC_MIN $JVM_MEMORY_ALLOC -Xverify:none \\ - -XX:+TieredCompilation -XX:+UseBiasedLocking \\ - -XX:MaxMetaspaceSize=128m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC \\ - -XX:InitialCodeCacheSize=8m -XX:ReservedCodeCacheSize=32m \\ - -XX:CMSInitiatingOccupancyFraction=60 \\ - -outfile \${RED5_HOME}/log/jsvc-service.log -errfile \${RED5_HOME}/log/jsvc-error.log \\ - -wait 60 \\ - -umask 011 \\ - -pidfile \${PID} org.red5.daemon.EngineLauncher 9999 -ExecStop=/usr/bin/jsvc -stop -pidfile \${PID} org.red5.daemon.EngineLauncher 9999 - -[Install] -WantedBy=multi-user.target +Environment=PID=/var/run/red5pro.pid +Environment=JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 +LimitNOFILE=1000000 +# for Centos: +# Environment=JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk +Environment=RED5_HOME=/usr/local/red5pro +WorkingDirectory=/usr/local/red5pro +ExecStart=/usr/bin/jsvc -debug \ + -home ${JAVA_HOME} \ + -cwd ${RED5_HOME} \ + -cp ${RED5_HOME}/commons-daemon-1.1.0.jar:${RED5_HOME}/red5-service.jar:${RED5_HOME}/conf \ + -Dred5.root=${RED5_HOME} \ + -Djava.library.path=${RED5_HOME}/lib/amd64-Linux-gpp/jni \ + -Djava.security.debug=failure -Djava.security.egd=file:/dev/./urandom \ + -Dcatalina.home=${RED5_HOME} -Dcatalina.useNaming=true \ + -Dorg.terracotta.quartz.skipUpdateCheck=true \ + -Xms2g -Xmx2g -Xverify:none \ + -XX:+TieredCompilation -XX:+UseBiasedLocking \ + -XX:MaxMetaspaceSize=128m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC \ + -XX:InitialCodeCacheSize=8m -XX:ReservedCodeCacheSize=32m \ + -XX:CMSInitiatingOccupancyFraction=60 \ + -outfile /dev/null -errfile /dev/null \ + -wait 60 \ + -umask 011 \ + -pidfile ${PID} org.red5.daemon.EngineLauncher 9999 + +ExecStop=/usr/bin/jsvc -stop -pidfile ${PID} org.red5.daemon.EngineLauncher 9999 " ####################################################### From eb77fddb4e74e4f87cb9898155b40ac8710f78e9 Mon Sep 17 00:00:00 2001 From: beetlejesss Date: Wed, 10 Feb 2021 16:03:08 -0500 Subject: [PATCH 4/7] script updates modified the warn message for system with 3-4G memory to make it less dire added copying the start/stop/tail scripts to user home directory --- red5proInstaller.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/red5proInstaller.sh b/red5proInstaller.sh index 7d797ec..8e879b0 100755 --- a/red5proInstaller.sh +++ b/red5proInstaller.sh @@ -1168,7 +1168,7 @@ eval_memory_to_allocate() else if [[ "$alloc_phymem_rounded" -eq 2 ]]; then - low_mem_message="WARNING!: System memory is is barely enough for running this software" + low_mem_message="WARNING: System memory is the base minimum required for running Red5 Pro, and may not support a production environment." fi fi @@ -1475,6 +1475,7 @@ register_rpro_as_service() then pause fi + } # Public @@ -1766,6 +1767,11 @@ register_rpro_service() else register_rpro_service_v2 fi + + lecho "Copying utility scripts." + sleep 1 + cp $CURRENT_DIRECTORY/conf/*.sh ~/ + } # Public From 8f5c68c1930f2a9be67a170ed18dfb1fa0462096 Mon Sep 17 00:00:00 2001 From: beetlejesss Date: Wed, 31 Mar 2021 10:47:22 -0400 Subject: [PATCH 5/7] fixing service file --- red5proInstaller.sh | 55 +++++++++++++++++++++------------------------ 1 file changed, 26 insertions(+), 29 deletions(-) diff --git a/red5proInstaller.sh b/red5proInstaller.sh index 8e879b0..463894c 100755 --- a/red5proInstaller.sh +++ b/red5proInstaller.sh @@ -2019,38 +2019,35 @@ register_rpro_service_v2() service_script="[Unit] Description=Red5 Pro After=syslog.target network.target - [Service] Type=forking -Environment=PID=/var/run/red5pro.pid -Environment=JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 -LimitNOFILE=1000000 -# for Centos: -# Environment=JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk -Environment=RED5_HOME=/usr/local/red5pro -WorkingDirectory=/usr/local/red5pro -ExecStart=/usr/bin/jsvc -debug \ - -home ${JAVA_HOME} \ - -cwd ${RED5_HOME} \ - -cp ${RED5_HOME}/commons-daemon-1.1.0.jar:${RED5_HOME}/red5-service.jar:${RED5_HOME}/conf \ - -Dred5.root=${RED5_HOME} \ - -Djava.library.path=${RED5_HOME}/lib/amd64-Linux-gpp/jni \ - -Djava.security.debug=failure -Djava.security.egd=file:/dev/./urandom \ - -Dcatalina.home=${RED5_HOME} -Dcatalina.useNaming=true \ - -Dorg.terracotta.quartz.skipUpdateCheck=true \ - -Xms2g -Xmx2g -Xverify:none \ - -XX:+TieredCompilation -XX:+UseBiasedLocking \ - -XX:MaxMetaspaceSize=128m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC \ - -XX:InitialCodeCacheSize=8m -XX:ReservedCodeCacheSize=32m \ - -XX:CMSInitiatingOccupancyFraction=60 \ - -outfile /dev/null -errfile /dev/null \ - -wait 60 \ - -umask 011 \ - -pidfile ${PID} org.red5.daemon.EngineLauncher 9999 - -ExecStop=/usr/bin/jsvc -stop -pidfile ${PID} org.red5.daemon.EngineLauncher 9999 +Environment=PID=$PID +Environment=JAVA_HOME=$JAVA_ENV +LimitNOFILE=65536 +Environment=RED5_HOME=$DEFAULT_RPRO_PATH +WorkingDirectory=$DEFAULT_RPRO_PATH +ExecStart=/usr/bin/jsvc -debug \\ + -home \${JAVA_HOME} \\ + -cwd \${RED5_HOME} \\ + -cp \${RED5_HOME}/commons-daemon-1.1.0.jar:\${RED5_HOME}/red5-service.jar:\${RED5_HOME}/conf \\ + -Dred5.root=\${RED5_HOME} \\ + -Djava.library.path=\${RED5_HOME}/lib/amd64-Linux-gpp/jni \\ + -Djava.security.debug=failure -Djava.security.egd=file:/dev/./urandom \\ + -Dcatalina.home=\${RED5_HOME} -Dcatalina.useNaming=true \\ + -Dorg.terracotta.quartz.skipUpdateCheck=true \\ + $JVM_MEMORY_ALLOC_MIN $JVM_MEMORY_ALLOC -Xverify:none \\ + -XX:+TieredCompilation -XX:+UseBiasedLocking \\ + -XX:MaxMetaspaceSize=128m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC \\ + -XX:InitialCodeCacheSize=8m -XX:ReservedCodeCacheSize=32m \\ + -XX:CMSInitiatingOccupancyFraction=60 \\ + -outfile \${RED5_HOME}/log/jsvc-service.log -errfile \${RED5_HOME}/log/jsvc-error.log \\ + -wait 60 \\ + -umask 011 \\ + -pidfile \${PID} org.red5.daemon.EngineLauncher 9999 +ExecStop=/usr/bin/jsvc -stop -pidfile \${PID} org.red5.daemon.EngineLauncher 9999 +[Install] +WantedBy=multi-user.target " - ####################################################### From 69db97c2b9c9c2c640538cc3165beb87b63c41e1 Mon Sep 17 00:00:00 2001 From: beetlejesss Date: Wed, 31 Mar 2021 10:50:46 -0400 Subject: [PATCH 6/7] upped nofile limit in service --- red5proInstaller.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/red5proInstaller.sh b/red5proInstaller.sh index 463894c..f63b4c1 100755 --- a/red5proInstaller.sh +++ b/red5proInstaller.sh @@ -2023,7 +2023,7 @@ After=syslog.target network.target Type=forking Environment=PID=$PID Environment=JAVA_HOME=$JAVA_ENV -LimitNOFILE=65536 +LimitNOFILE=1000000 Environment=RED5_HOME=$DEFAULT_RPRO_PATH WorkingDirectory=$DEFAULT_RPRO_PATH ExecStart=/usr/bin/jsvc -debug \\ From 3a3320fba3c55a628d3c4814956ebb8a64121153 Mon Sep 17 00:00:00 2001 From: beetlejesss Date: Wed, 31 Mar 2021 10:52:26 -0400 Subject: [PATCH 7/7] removed jsvc logging from service script --- red5proInstaller.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/red5proInstaller.sh b/red5proInstaller.sh index f63b4c1..2601ec3 100755 --- a/red5proInstaller.sh +++ b/red5proInstaller.sh @@ -2040,7 +2040,7 @@ ExecStart=/usr/bin/jsvc -debug \\ -XX:MaxMetaspaceSize=128m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC \\ -XX:InitialCodeCacheSize=8m -XX:ReservedCodeCacheSize=32m \\ -XX:CMSInitiatingOccupancyFraction=60 \\ - -outfile \${RED5_HOME}/log/jsvc-service.log -errfile \${RED5_HOME}/log/jsvc-error.log \\ + -outfile /dev/null -errfile /dev/null \\ -wait 60 \\ -umask 011 \\ -pidfile \${PID} org.red5.daemon.EngineLauncher 9999