3 source /var/onap/functions
7 # install_hadoop() - Function that installs Hadoop
8 function install_hadoop {
11 local filename=$release-$version-hadoop1
12 local dest_folder=/opt/hadoop/current
14 if [ ! -d $dest_folder ]; then
15 curl http://s3.thinkaurelius.com/downloads/$release/$filename.zip -o /tmp/${filename}.zip
18 unzip /tmp/${filename}.zip -d $dest_folder
19 pushd $dest_folder/${filename}
20 # Change commitlog_directory and data_file_directories values (https://stackoverflow.com/a/26856246/1707651)
21 sed -i "s|db/cassandra/data|/tmp/data|g" conf/cassandra/cassandra.yaml
22 sed -i "s|db/cassandra/commitlog|/tmp/commitlog|g" conf/cassandra/cassandra.yaml
30 # install_haproxy() - Function that install HAProxy
31 function install_haproxy {
32 if is_package_installed haproxy; then
35 install_package software-properties-common
36 add-apt-repository -y ppa:vbernat/haproxy-1.7
37 install_package haproxy
38 cp /var/onap/files/haproxy.cfg /etc/haproxy/
39 cp /var/onap/files/aai.pem /etc/ssl/private/
40 chmod 640 /etc/ssl/private/aai.pem
41 chown root:ssl-cert /etc/ssl/private/aai.pem
42 mkdir /usr/local/etc/haproxy
43 #echo "127.0.0.1 localhost aai-traversal.api.simpledemo.openecomp.org aai-resources.api.simpledemo.openecomp.org" >> /etc/hosts
45 service haproxy restart
49 # compile_aai_repos() - Function that compiles AAI source repo.
50 function compile_aai_repos {
51 local repos="aai/aai-common aai/resources aai/logging-service aai/traversal"
52 if [[ "$compile_repo" == "True" ]]; then
56 for repo in ${repos[@]}; do
57 compile_src $aai_src_folder${repo#*aai}
61 # setup_titan() - Function that configures AAI services to connect to Hadoop Titan
62 function setup_titan {
63 local subdirectory="bundleconfig-local/etc/appprops"
64 install_python_package crudini
66 for dirc in resources/aai-resources traversal/aai-traversal; do
67 for file in titan-cached.properties titan-realtime.properties; do
68 crudini --set "$aai_src_folder/$dirc/$subdirectory/$file" "" "storage.backend" "cassandra"
69 crudini --set "$aai_src_folder/$dirc/$subdirectory/$file" "" "storage.hostname" "localhost"
73 # Add the schema to the local isntance
74 compile_src $aai_src_folder/resources/aai-resources/
75 uninstall_packages default-jre openjdk-7-jdk openjdk-7-jre openjdk-7-jre-headless
77 java -DAJSC_HOME=$aai_src_folder/resources/aai-resources -DBUNDLECONFIG_DIR="bundleconfig-local" -cp aai-common/aai-core/target/aai-core-1.1.0-SNAPSHOT.jar:resources/aai-resources/target/aai-resources.jar:resources/aai-resources/target/userjars/* org.openecomp.aai.dbgen.GenTester
81 # start_aai_microservices() - Function that starts AAI microservices
82 function start_aai_microservices {
84 export MAVEN_OPTS="-Xms1024m -Xmx5120m -XX:PermSize=2024m -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=9446,server=y,suspend=n"
85 for svc in resources traversal; do
86 pushd $aai_src_folder/resources
92 # install_hbase() - Install HBase Service
93 function install_hbase {
95 docker_openecomp_login
96 docker pull $nexus_docker_repo/aaidocker/aai-hbase-${hbase_version}
97 run_docker_image -d --net=host --name="hbase" $nexus_docker_repo/aaidocker/aai-hbase-${hbase_version}
100 # install_ajsc() - Install ASJC Java service container
101 function install_ajsc_aai {
102 cat <<EOL > /etc/ajsc-aai.conf
104 AAI_CHEF_ENV=simpledemo
105 AAI_CHEF_LOC=/var/chef/aai-data/environments
106 docker_gitbranch=master
108 docker rm -f aai-service
109 if [[ "$build_image" == "True" ]]; then
110 build_docker_image $aai_src_folder/aai-service/ajsc-aai
112 pull_openecomp_image ajsc-aai
115 run_docker_image --env-file /etc/ajsc-aai.conf --name=aai-service --net=host -v /etc/ssl/certs/ca-certificates.crt:/etc/ssl/certs/ca-certificates.crt -it -d $nexus_docker_repo/openecomp/ajsc-aai:$docker_version
118 # install_model_loader() Install Model Loader
119 function install_model_loader {
120 cat <<EOL > /etc/model-loader.conf
121 DISTR_CLIENT_ASDC_ADDRESS=${SDC_ADDRESS:-c2.vm1.sdc.simpledemo.openecomp.org:8443}
122 DISTR_CLIENT_CONSUMER_GROUP=${UEB_CONSUMER_GROUP:-SDCGroup}
123 DISTR_CLIENT_CONSUMER_ID=${UEB_CONSUMER_GROUP_ID:-UEB}
124 DISTR_CLIENT_ENVIRONMENT_NAME=${dmaap_topic}
125 DISTR_CLIENT_PASSWORD=${SDC_PASSWORD:-OBF:1ks51l8d1o3i1pcc1r2r1e211r391kls1pyj1z7u1njf1lx51go21hnj1y0k1mli1sop1k8o1j651vu91mxw1vun1mze1vv11j8x1k5i1sp11mjc1y161hlr1gm41m111nkj1z781pw31kku1r4p1e391r571pbm1o741l4x1ksp}
126 DISTR_CLIENT_USER=${SDC_USER:-aai}
128 APP_SERVER_BASE_URL=${APP_SERVER_URL:-https://c1.vm1.aai.simpledemo.openecomp.org:8443}
129 APP_SERVER_AUTH_USER=${APP_USER:-ModelLoader}
130 APP_SERVER_KEYSTORE_PASSWORD=OBF:1i9a1u2a1unz1lr61wn51wn11lss1unz1u301i6o
131 APP_SERVER_AUTH_PASSWORD=${APP_PASSWORD:-OBF:1qvu1v2h1sov1sar1wfw1j7j1wg21saj1sov1v1x1qxw}
136 docker rm -f model-loader-service
137 if [[ "$build_image" == "True" ]]; then
138 build_docker_image $aai_src_folder/model-loader/
139 ARGS+="--env-file /etc/model-loader.conf model-loader"
141 pull_openecomp_image model-loader
142 ARGS+="--name=model-loader-service -it -d --env-file /etc/model-loader.conf $nexus_docker_repo/openecomp/model-loader:$docker_version"
144 run_docker_image ${ARGS}
147 # _wait_for_sdc() - Function that determines if SDC is up and running
148 function _wait_for_sdc {
149 if [[ -s "/opt/config/sdc_ip_addr.txt" ]]; then
150 SDC_IP_ADDR=$(cat /opt/config/sdc_ip_addr.txt)
152 SDC_IP_ADDR="10.0.3.1"
155 # Run Health Check against SDC and verify that all five components are up
156 RES=$(curl http://$SDC_IP_ADDR:8181/sdc1/rest/healthCheck | grep -c "OK")
157 while [[ $RES -lt 5 ]]; do
158 RES=$(curl http://$SDC_IP_ADDR:8181/sdc1/rest/healthCheck | grep -c "OK")
162 # init_aai() - Function that initialize AAI services
167 if [[ "$clone_repo" == "True" ]]; then
169 if [[ "$compile_repo" == "True" ]]; then
175 #start_aai_microservices
177 mkdir -p /opt/openecomp/aai/logs
178 mkdir -p /opt/openecomp/aai/data
182 # Wait 3 minutes before instantiating the A&AI container
187 if [[ "$skip_install" == "False" ]]; then