We're looking to configure HTTPS for our web servers, and I've been reviewing the documentation listed here:
It all seems to mostly make sense, we're waiting on our IT to make the certificates available.
One question I had is how to specify the JVM options. We run off UNIX, so within the <webserver>/bin/setenv.sh file I expected to see the settings described in the administration guide step 16, however I don't see anything related. My setenv.sh script looks like this:
JRE_HOME=/sas/sashome/SASPrivateJavaRuntimeEnvironment/9.4/jre JAVA_HOME=/sas/sashome/SASPrivateJavaRuntimeEnvironment/9.4/jre AGENT_PATHS="" JAVA_AGENTS="" JAVA_LIBRARY_PATH="" JVM_OPTS="-Xmx4096m -Xss256k -Xms2048m -XX:PermSize=1024m -XX:MaxPermSize=1024m$ JAVA_OPTS="$JVM_OPTS $AGENT_PATHS $JAVA_AGENTS $JAVA_LIBRARY_PATH" CLASSPATH="$CATALINA_BASE/lib/log4j.jar:$CATALINA_BASE/lib:$CATALINA_BASE/conf:$ CATALINA_OUT="$CATALINA_BASE/logs/catalina.out" LOGGING_CONFIG="-Dnop"
Could anyone tell me where and how I should specify the JVM options described in step 16?
There are a few setenv.sh files around the SAS config directory. You are looking for the one for the SAS Web App Server instance that runs the SAS Content Server. For me that is /opt/sas94m5/config/Lev1/Web/WebAppServer/SASServer1_1/bin/setenv.sh
If you need help finding the SAS Content Server directory have a look in the Instructions.html file created when SAS was installed. It's a map of where everything is in your installation.
That makes sense, my instructions point to the same location, but my setenv.sh is only what displays in my original post. Is that how it should be?
The setenv.sh for the SAS Web App Server instance that hosts the WIP and SAS Content Server will have many JVM optjons. This is what mine looks like:
JRE_HOME=/opt/sas94m5/sashome/SASPrivateJavaRuntimeEnvironment/9.4/jre
JAVA_HOME=/opt/sas94m5/sashome/SASPrivateJavaRuntimeEnvironment/9.4/jre
AGENT_PATHS=""
JAVA_AGENTS=""
JAVA_LIBRARY_PATH=""
JVM_OPTS="-Xmx3072m -Xss256k -Xms1024m -XX:PermSize=384m -XX:MaxPermSize=1024m -d64 -XX:NewRatio=8 -XX:+UseConcMarkSweepGC -XX:+UseTLAB -XX:+DisableExplicitGC -XX:+CMSIncrementalMode -XX:+CMSClassUnloadingEnabled -XX:+UseCompressedOops -XX:ReservedCodeCacheSize=96m -Djava.awt.headless=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Dcom.sas.services.logging.disableRemoteList=true -Dcom.sas.services.logging.disableRemoteLogging=true -Dcom.sas.log.config.ignoreContextClassLoader=true -Dsas.jms.authentication.decorator=false -Dspring.security.strategy=MODE_INHERITABLETHREADLOCAL -Dcom.sas.log.config.url=file:////opt/sas94m5/config/Lev1/Web/Common/LogConfig -Dmulticast_udp_ip_ttl=0 -Djava.net.preferIPv4Stack=false -Djava.net.preferIPv6Addresses=false -Dmulticast.address=239.168.99.99 -Dmulticast.port=8561 -Dsas.scs.host=sas94m5.example.com -Dsas.scs.repository.dir=/opt/sas94m5/config/Lev1/AppData/SASContentServer/Repository -Dcom.sas.server.isclustered=false -Dsas.scs.cas.host=sas94m5.example.com -Dsas.scs.cas.port=8343 -Dsas.scs.cas.scheme=https -Dsas.scs.svc.host=sas94m5.example.com -Dsas.scs.svc.port=8343 -Dsas.scs.svc.scheme=https -Dsas.scs.scheme=http -Dsas.auto.publish.protocol=http -Dsas.container.identifier=vfabrictcsvr -Dsas.cache.locators=sas94m5.example.com[41415] -Dgemfire.conserve-sockets=false -Dspring.profiles.active=locators -Dsas.ttfontsvert.install.dir=/opt/sas94m5/sashome/ReportFontsforClients/9.4 -Dsas.scs.port=8080 -Dnet.sf.ehcache.skipUpdateCheck=true -Dorg.terracotta.quartz.skipUpdateCheck=true -Dsas.auto.publish.host=sas94m5.example.com -Dsas.auto.publish.port=8080 -Dsas.appserver.instance.id=SASServer1_1_sas94m5.example.com -Dconfig.lev.web.appserver.logs.dir=/opt/sas94m5/config/Lev1/Web/Logs/SASServer1_1 -Djava.security.auth.login.config=/opt/sas94m5/config/Lev1/Web/WebAppServer/SASServer1_1/conf/jaas.config -Dsas.metadata.use.cluster.properties=true -Dsas.deploy.dir=/opt/sas94m5/config/Lev1/Web/WebAppServer/SASServer1_1/sas_webapps -Dorg.apache.activemq.SERIALIZABLE_PACKAGES=java.lang,java.util,java.net,java.sql,java.math,org.apache.activemq,org.fusesource.hawtbuf,org.springframework.remoting,org.springframework.security,com.thoughtworks.xstream.mapper,com.sas,org.apache.commons.logging,org.jasig.cas.client.validation,org.jasig.cas.client.authentication,org.jasig.cas.client.proxy -Dsas.deployment.agent.client.config=/opt/sas94m5/sashome/SASRemoteDeploymentAgentClient/2.1/config/deployagtclt.properties -Dsas.app.repository.path=/opt/sas94m5/sashome/SASVersionedJarRepository/eclipse"
JAVA_OPTS="$JVM_OPTS $AGENT_PATHS $JAVA_AGENTS $JAVA_LIBRARY_PATH"
CLASSPATH="$CATALINA_BASE/lib/log4j.jar:$CATALINA_BASE/lib:$CATALINA_BASE/conf:$JRE_HOME/../lib/tools.jar"
CATALINA_OUT="$CATALINA_BASE/logs/catalina.out"
LOGGING_CONFIG="-Dnop"
The one you posted looks truncated. Is that what it really looks like or did you truncate the long lines for posting here?
Upon closer inspection you're right, my full JVM_OPTS is very long and the missing settings are there.
Thank you, I'm going to try now since my team has left for the day.
The SAS Users Group for Administrators (SUGA) is open to all SAS administrators and architects who install, update, manage or maintain a SAS deployment.
SAS technical trainer Erin Winters shows you how to explore assets, create new data discovery agents, schedule data discovery agents, and much more.
Find more tutorials on the SAS Users YouTube channel.