To run the equoid system, be certain you have access to a cluster and are logged in, you then can use the start.sh
script as follows:
start.sh <PROJECT_NAME>
for purposes of this document PROJECT_NAME will be equoid.
If interested in the system setup steps, the following instructions can be followed:
- Make certain you have oc client in version
3.7
:
oc version
# oc v3.7.0+7ed6862
- (Local only) start the local cluster:
oc cluster up
- Log in to your cluster. For this example we'll log in as developer:
oc login -u developer
- Create a new project:
oc new-project equoid
- Create the JBoss image streams needed for AMQ-P and publisher:
oc create -f https://raw.githubusercontent.com/jboss-openshift/application-templates/master/openjdk/openjdk18-image-stream.json
oc create -f https://raw.githubusercontent.com/jboss-openshift/application-templates/master/amq/amq63-image-stream.json
- Create the AMQ-P template:
oc create -n openshift -f \
https://raw.githubusercontent.com/jboss-openshift/application-templates/master/amq/amq63-basic.json
- Instantiate the AMQ-P template:
oc new-app --template=amq63-basic \
-p MQ_PROTOCOL=amqp \
-p MQ_QUEUES=salesq \
-p MQ_USERNAME=daikon \
-p MQ_PASSWORD=daikon \
-p IMAGE_STREAM_NAMESPACE=equoid
- Create radanalytics.io resources:
oc create -f https://radanalytics.io/resources.yaml
- Create the Infinispan template:
oc create -f https://raw.githubusercontent.com/infinispan/infinispan-openshift-templates/master/templates/infinispan-ephemeral.json
- Instantiate the Infinispan template:
oc new-app --template=infinispan-ephemeral \
-l app=datagrid \
-p APPLICATION_NAME=datagrid \
-p NAMESPACE=equoid \
-p APPLICATION_USER=daikon \
-p APPLICATION_PASSWORD=daikon \
-p MANAGEMENT_USER=daikon \
-p MANAGEMENT_PASSWORD=daikon
- Create the data handler app (consumer of the events):
oc new-app --template=oshinko-scala-spark-build-dc \
-l app=handler \
-p SBT_ARGS=assembly \
-p OSHINKO_CLUSTER_NAME=sparky \
-p APPLICATION_NAME=equoid-data-handler \
-p GIT_URI=https://github.com/eldritchjs/equoid-data-handler \
-p APP_MAIN_CLASS=io.radanalytics.equoid.dataHandler \
-p jdgHost=datagrid-hotrod \
-p jdgPort=11222 \
-p SPARK_OPTIONS='--driver-java-options=-Dvertx.cacheDirBase=/tmp'
- Create the data publisher app (producer of the events):
oc new-app --allow-missing-imagestream-tags \
-l app=publisher \
--image-stream=equoid/redhat-openjdk18-openshift:1.3 \
https://github.com/eldritchjs/equoid-data-publisher
- (Optional) create infinispan-dump app for periodic dumping of the contents of the Infinispan cache:
oc new-app --allow-missing-imagestream-tags \
-l app=infinispan-dump \
--image-stream=equoid/redhat-openjdk18.openshift:1.3 \
https://github.com/eldritchjs/infinispan-dump