RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
XConf is usually installed on several VM's in production. The number of VM's for the Data Service depends on the number of devices that will be calling it. For the Admin UI, only a few VM's are required since there are usually only a few users making changes each day.
These instructions assume that the XConf artifacts have already been built. The artifacts required are the Data Service and Admin UI war files.
If it's not already installed, install Java.
sudo yum install java-1.8.0-openjdk-devel
java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-b04)
OpenJDK 64-Bit Server VM (build 25.212-b04, mixed mode)
sudo yum install wget
This creates the xconfserver directory and installs the Jetty files.
cd /opt
mkdir xconfserver
cd xconfserver
mkdir tmp
cd tmp
wget https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-distribution/9.1.0.v20131115/jetty-distribution-9.1.0.v20131115.tar.gz
gzip -d jetty-distribution-9.1.0.v20131115.tar.gz
cd /opt/xconfserver
tar -xf tmp/jetty-distribution-9.1.0.v20131115.tar --strip=1
The xconf-dataservice.war file should be copied to the VM. It must be renamed to root.war.
cp xconf-dataservice.war /opt/xconfserver/tmp/.
cd /opt/xconfserver/tmp
mv xconf-dataservice.war root.war
The service.properties file configures XConf with various settings, such as the Cassandra seed hosts and other Cassandra properties.
In the /opt/xconfserver directory, create a file, service.properties, and add the following lines.
connectionPools.SharedConnectionPool.maxConnsPerHost=15
connectionPools.SharedConnectionPool.localDatacenter=<name of Cassandra data center>
connectionPools.SharedConnectionPool.seeds=<IP addresses or resolvable hostnames of Cassandra seed nodes>
connectionPools.SharedConnectionPool.nodeDiscoveryType=RING_DESCRIBE
connectionPools.SharedConnectionPool.readConsistencyLevel=CL_LOCAL_QUORUM
connectionPools.SharedConnectionPool.useConnectionPoolMonitor=true
connectionPools.SharedConnectionPool.writeConsistencyLevel=CL_LOCAL_QUORUM
connectionPools.SharedConnectionPool.autoDiscoverHosts=true
XConf Data Service is started as a separate process.
cd /opt/xconfserver
nohup java -DappConfig=/opt/xconfserver/service.properties -DserviceName=xconfDataService -verbose:gc -XX:+PrintGCDateStamps -XX:+PrintGCDetails -Xloggc:/opt/xconfserver/logs/gc.log -Xms2048m -Xmx2048m -XX:NewSize=512m -XX:MaxNewSize=512m -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8081 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.rmi.port=8081 -Djetty.logs=/opt/xconfserver/logs -Djetty.home=/opt/xconfserver -Djetty.base=/opt/xconfserver -Djava.io.tmpdir=/opt/xconfserver/tmp -DENABLE_OBIEE_SCP_URL_PROP=false -Dtheplatform.log.dir=/opt/xconfserver/logs -Djava.library.path=/opt/xconfserver/lib/ext -DSTOP.PORT=8083 -Djetty.port=8080 -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/xconfserver/logs/xconfDataService.heapDump -XX:OnOutOfMemoryError=/opt/xconfserver/bin/OOM.rb -jar start.jar jetty.port=8080 > /opt/xconfserver/logs/xconfDataService.stdout.log 2> /opt/xconfserver/logs/xconfDataService.stderr.log &
curl http://127.0.0.1:8080/version