Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Start up four AWS instances configured for clustering via the Puppet script
    1. Each server has the following configuration

      Code Block
      aws_region = us-east-1
      aws_ami = ami-e995e380
      aws_instance_type = m1.large
      aws_block_device_mapping = '/dev/sda1=:10::io1:100'
      aws_ebs_optimized = true

      System Properties

      Code Block
      JAVA_OPTS="-server -Xmx2048m -XX:MaxPermSize=256m -Djava.awt.headless=true -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled  -XX:+CMSPermGenSweepingEnabled"
      JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.modeshape.index.location=/opt/fcrepo4-data/mode/indexes"
      JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.ispn.CacheDirPath=/opt/fcrepo4-data/ispn"
      JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.ispn.alternative.CacheDirPath=/opt/fcrepo4-data/ispn-alt"
      JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.ispn.binary.CacheDirPath=/opt/fcrepo4-data/ispn-binary"
      JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.ispn.binary.alternative.CacheDirPath=/opt/fcrepo4-data/ispn-binary-alt"
      JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.activemq.dir=/opt/fcrepo4-data/active-mq"
      JAVA_OPTS="${JAVA_OPTS} -Dcom.arjuna.ats.arjuna.common.ObjectStoreEnvironmentBean.default.objectStoreDir=/opt/fcrepo4-data/object-store-default"
      JAVA_OPTS="${JAVA_OPTS} -Dcom.arjuna.ats.arjuna.objectstore.objectStoreDir=/opt/fcrepo4-data/object-store"
      JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.modeshape.configuration=classpath:/config/clustered/repository.json"
      
      ###
      # Clustering
      ###
      JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.infinispan.cache_configuration=config/infinispan/clustered/infinispan.xml"
      JAVA_OPTS="${JAVA_OPTS} -Djgroups.tcp.address=10.4.38.183<aws-private-ip>"
      JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.ispn.numOwners=2 -Djava.net.PreferIPv4Stack=true"
      
      # The jgroups-ec2.xml file is included in ispn's jars
      JAVA_OPTS="${JAVA_OPTS} -Dfcrepo.ispn.jgroups.configuration=jgroups-ec2.xml"
      
      # This property overwrites the S3 bucketname variable in jgroups-ec2.xml
      JAVA_OPTS="${JAVA_OPTS} -Djgroups.s3.bucket=fcrepo4-cluster-0"
    2. Note: The clustered servers must be started one at a time in order for the cluster to properly form.
  2. Once the cluster has been established, an Elastic Load Balancer was configured over the four instances.

...