github.com/hhrutter/nomad@v0.6.0-rc2.0.20170723054333-80c4b03f0705/terraform/shared/scripts/client.sh (about)

     1  #!/bin/bash
     2  
     3  set -e
     4  
     5  CONFIGDIR=/ops/shared/config
     6  
     7  CONSULCONFIGDIR=/etc/consul.d
     8  NOMADCONFIGDIR=/etc/nomad.d
     9  HADOOP_VERSION=hadoop-2.7.3
    10  HADOOPCONFIGDIR=/usr/local/$HADOOP_VERSION/etc/hadoop
    11  HOME_DIR=ubuntu
    12  
    13  # Wait for network
    14  sleep 15
    15  
    16  IP_ADDRESS=$(curl http://instance-data/latest/meta-data/local-ipv4)
    17  DOCKER_BRIDGE_IP_ADDRESS=(`ifconfig docker0 2>/dev/null|awk '/inet addr:/ {print $2}'|sed 's/addr://'`)
    18  REGION=$1
    19  CLUSTER_TAG_VALUE=$2
    20  
    21  # Consul
    22  sed -i "s/IP_ADDRESS/$IP_ADDRESS/g" $CONFIGDIR/consul_client.json
    23  sed -i "s/REGION/$REGION/g" $CONFIGDIR/consul_client.json
    24  sed -i "s/CLUSTER_TAG_VALUE/$CLUSTER_TAG_VALUE/g" $CONFIGDIR/consul_client.json
    25  sudo cp $CONFIGDIR/consul_client.json $CONSULCONFIGDIR/consul.json
    26  sudo cp $CONFIGDIR/consul_upstart.conf /etc/init/consul.conf
    27  
    28  sudo service consul start
    29  sleep 10
    30  
    31  # Nomad
    32  sed -i "s/IP_ADDRESS/$IP_ADDRESS/g" $CONFIGDIR/nomad_client.hcl
    33  sudo cp $CONFIGDIR/nomad_client.hcl $NOMADCONFIGDIR/nomad.hcl
    34  sudo cp $CONFIGDIR/nomad_upstart.conf /etc/init/nomad.conf
    35  
    36  sudo service nomad start
    37  sleep 10
    38  export NOMAD_ADDR=http://$IP_ADDRESS:4646
    39  
    40  # Add hostname to /etc/hosts
    41  echo "127.0.0.1 $(hostname)" | sudo tee --append /etc/hosts
    42  
    43  # Add Docker bridge network IP to /etc/resolv.conf (at the top)
    44  echo "nameserver $DOCKER_BRIDGE_IP_ADDRESS" | sudo tee /etc/resolv.conf.new
    45  cat /etc/resolv.conf | sudo tee --append /etc/resolv.conf.new
    46  sudo mv /etc/resolv.conf.new /etc/resolv.conf
    47  
    48  # Hadoop config file to enable HDFS CLI
    49  sudo cp $CONFIGDIR/core-site.xml $HADOOPCONFIGDIR
    50  
    51  # Move examples directory to $HOME
    52  sudo mv /ops/examples /home/$HOME_DIR
    53  sudo chown -R $HOME_DIR:$HOME_DIR /home/$HOME_DIR/examples
    54  sudo chmod -R 775 /home/$HOME_DIR/examples
    55  
    56  # Set env vars for tool CLIs
    57  echo "export VAULT_ADDR=http://$IP_ADDRESS:8200" | sudo tee --append /home/$HOME_DIR/.bashrc
    58  echo "export NOMAD_ADDR=http://$IP_ADDRESS:4646" | sudo tee --append /home/$HOME_DIR/.bashrc
    59  echo "export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre"  | sudo tee --append /home/$HOME_DIR/.bashrc
    60  
    61  # Update PATH
    62  echo "export PATH=$PATH:/usr/local/bin/spark/bin:/usr/local/$HADOOP_VERSION/bin" | sudo tee --append /home/$HOME_DIR/.bashrc
    63  
    64