MINOR: update AWS test setup guide

Author: Matthias J. Sax <matthias@confluent.io>

Reviewers: Joseph Rea <jrea@users.noreply.github.com>, Ewen Cheslack-Postava <ewen@confluent.io>

Closes #2575 from mjsax/minor-update-system-test-readme
This commit is contained in:
Matthias J. Sax 2017-06-22 16:42:55 -07:00 committed by Ewen Cheslack-Postava
parent b62cccd078
commit ac53979647
2 changed files with 21 additions and 8 deletions

View File

@ -385,7 +385,7 @@ Preparation
In these steps, we will create an IAM role which has permission to create and destroy EC2 instances, In these steps, we will create an IAM role which has permission to create and destroy EC2 instances,
set up a keypair used for ssh access to the test driver and worker machines, and create a security group to allow the test driver and workers to all communicate via TCP. set up a keypair used for ssh access to the test driver and worker machines, and create a security group to allow the test driver and workers to all communicate via TCP.
* [Create an IAM role](http://docs.aws.amazon.com/IAM/latest/UserGuide/Using_SettingUpUser.html#Using_CreateUser_console). We'll give this role the ability to launch or kill additional EC2 machines. * [Create an IAM role](http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html). We'll give this role the ability to launch or kill additional EC2 machines.
- Create role "kafkatest-master" - Create role "kafkatest-master"
- Role type: Amazon EC2 - Role type: Amazon EC2
- Attach policy: AmazonEC2FullAccess (this will allow our test-driver to create and destroy EC2 instances) - Attach policy: AmazonEC2FullAccess (this will allow our test-driver to create and destroy EC2 instances)
@ -393,7 +393,7 @@ set up a keypair used for ssh access to the test driver and worker machines, and
* If you haven't already, [set up a keypair to use for SSH access](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html). For the purpose * If you haven't already, [set up a keypair to use for SSH access](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html). For the purpose
of this quickstart, let's say the keypair name is kafkatest, and you've saved the private key in kafktest.pem of this quickstart, let's say the keypair name is kafkatest, and you've saved the private key in kafktest.pem
* Next, create a security group called "kafkatest". * Next, create a EC2 security group called "kafkatest".
- After creating the group, inbound rules: allow SSH on port 22 from anywhere; also, allow access on all ports (0-65535) from other machines in the kafkatest group. - After creating the group, inbound rules: allow SSH on port 22 from anywhere; also, allow access on all ports (0-65535) from other machines in the kafkatest group.
Create the Test Driver Create the Test Driver
@ -423,7 +423,7 @@ the test driver machine.
* Start by making sure you're up to date, and install git and ducktape: * Start by making sure you're up to date, and install git and ducktape:
$ sudo apt-get update && sudo apt-get -y upgrade && sudo apt-get install -y git $ sudo apt-get update && sudo apt-get -y upgrade && sudo apt-get install -y python-pip git
$ pip install ducktape $ pip install ducktape
* Get Kafka: * Get Kafka:
@ -469,6 +469,13 @@ the test driver machine.
$ cd kafka/tests $ cd kafka/tests
$ ducktape kafkatest/tests $ ducktape kafkatest/tests
* Update Worker VM
If you change code in a branch on your driver VM, you need to update your worker VM to pick up this change:
$ ./gradlew systemTestLibs
$ vagrant rsync
* To halt your workers without destroying persistent state, run `vagrant halt`. Run `vagrant destroy -f` to destroy all traces of your workers. * To halt your workers without destroying persistent state, run `vagrant halt`. Run `vagrant destroy -f` to destroy all traces of your workers.
Unit Tests Unit Tests

View File

@ -18,16 +18,22 @@
# or bring up your mini Kafka cluster. # or bring up your mini Kafka cluster.
# Install dependencies # Install dependencies
sudo apt-get install -y maven openjdk-6-jdk build-essential \ sudo apt-get install -y \
ruby-dev zlib1g-dev realpath python-setuptools maven \
openjdk-8-jdk-headless \
build-essential \
ruby-dev \
zlib1g-dev \
realpath \
python-setuptools
base_dir=`dirname $0`/../.. base_dir=`dirname $0`/../..
if [ -z `which vagrant` ]; then if [ -z `which vagrant` ]; then
echo "Installing vagrant..." echo "Installing vagrant..."
wget https://releases.hashicorp.com/vagrant/1.7.2/vagrant_1.7.2_x86_64.deb wget https://releases.hashicorp.com/vagrant/1.9.3/vagrant_1.9.3_x86_64.deb
sudo dpkg -i vagrant_1.7.2_x86_64.deb sudo dpkg -i vagrant_1.9.3_x86_64.deb
rm -f vagrant_1.7.2_x86_64.deb rm -f vagrant_1.9.3_x86_64.deb
fi fi
# Install necessary vagrant plugins # Install necessary vagrant plugins