Skip to content
This repository has been archived by the owner on Nov 26, 2020. It is now read-only.

This is my attempt to preserve what I learned in my attempt to get the GPDB BOSH release working, including getting the Director running.

License

Notifications You must be signed in to change notification settings

vmware-archive/bosh-gpdb-lessons-learned

Repository files navigation

VMware has ended active development of this project, this repository will no longer be updated.


# bosh-gpdb-lessons-learned

This is my attempt to preserve what I learned in my attempt to get the GPDB BOSH release working, including getting the Director running.

Quick Overview

  • It was not easy or intuitive for me
  • Each time I attempted bosh-init deploy ./bosh.yml, it failed with the same error: Post https://mbus:mbus-password@52.204.81.118:6868/agent: dial tcp 52.204.81.118:6868: i/o timeout
  • It did, eventually, work, and I was able to use this in a demo in Reston, VA on June 9, 2016
  • The above would not have been possible without the helpful assistance of Todd Ritchie, via the #big-data-services Slack channel
  • It is not possible to deploy GPDB using BOSH lite due to its lack of support for Power DNS
  • I am a huge fan of the differentiating power of cloud agnosticism, which BOSH provides

Resources

  1. The IaaS Account & Consolidated Bill Request form got me started with an AWS account. This is accessible via the PA Wiki
  2. The GPDB BOSH release code
  3. The README.md contained within the above archive
  4. Deploying ... with BOSH: this link appears within the README.md
  5. Initializing BOSH environment on AWS, which is linked from item 4
  6. The bosh.yml I used to deploy the BOSH Director
  7. A diff showing the mods I made within the greenplum-0.11.4-artifacts.tgz material
  8. A dump of Bash history from the Ubuntu Trusty node I deployed into EC2 and ran all of this on

These Steps Were Run from a Mac Laptop

  1. Install AWS CLI tools: pip install awscli

  2. Configure this CLI, based on details of your AWS account (just hit ENTER to preserve existing values):

    [airmike:example-tile-docs-resources]$ aws configure
    AWS Access Key ID [****************ZDDA]:
    AWS Secret Access Key [****************ciqx]:
    Default region name [us-east]: us-east-1
    Default output format [json]:
    
  3. Refer to Step 1: Prepare an Environment, here, and perform 1 through 6, but change ExampleKeyPair to bosh throughout, since a later phase will assume the existence of a key pair called bosh.

  4. At this point, you will want to check your security group to ensure you have it configured per the figure below. sg-00cb477b is the security group resulting from the actions carried out above. Security Group Details

  5. I also found it useful to go into the VPC Dashboard and modify the subnet for my VPC so that it would automatically assign a public IP to any VM deployed there (see below). Auto assign public IP

  6. The next part is to launch an Ubuntu Trusty VM. I did this using the Vagrant bosh-lite setup, but the result was I had the AMI ami-ffa94192 running on an m3.xlarge VM, in the subnet created earlier. For now, I will omit the details on this, but can add them later if this is useful. I used the same key pair, bosh, for this VM.

  7. SSH into this VM: ssh -i ./bosh.pem ubuntu@52.91.102.63 (replace 52.91.102.63 with your public IP)

The Following Steps Were Run from the VM, via the SSH Connection

  1. Refer to my Bash history if you need clarification

  2. Install bosh-init:

    curl -O https://s3.amazonaws.com/bosh-init-artifacts/bosh-init-0.0.92-linux-amd64
    chmod +x ./bosh-init-0.0.92-linux-amd64
    ln -s ./bosh-init-0.0.92-linux-amd64 ./bosh-init
  3. Edit the BOSH deployment manifest to suit your environment. Look for <--- Replace

  4. Deploy the BOSH Director: ./bosh-init deploy ./bosh.yml

  5. Install BOSH CLI: sudo gem install bosh_cli

  6. Target this BOSH Director: bosh target 192.168.1.6. Then you are prompted to enter a user name and password, use admin for each of them.

  7. Download, extract GPDB BOSH release: curl https://s3.amazonaws.com/bds-ci/gpdb-bosh-release/greenplum-0.11.4-artifacts.tgz | tar xzvf -

  8. Change into the new directory: cd greenplum-0.11.4/

  9. Refer to the README.md there, starting with step 2 (though, you already performed step 5). You may find it useful to also refer to the diff showing my mods and that Bash history.

Caveats

  • I have tried to avoid duplicating all the steps outlined within references cited here, but it could be that having a single, concise (and correct, though I am not the authority) reference, is simpler than one containing multiple links to external resources.
  • It has been a few days since I walked through all of this, so I need to attempt it again, following these steps, and update this document to correct any inaccuracies or omissions.

About

This is my attempt to preserve what I learned in my attempt to get the GPDB BOSH release working, including getting the Director running.

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published