List of usage examples for com.amazonaws.services.rds AmazonRDSClient createDBInstance
@Override
public DBInstance createDBInstance(CreateDBInstanceRequest request)
Creates a new DB instance.
From source file:beanstalk.BeansDatabase.java
License:Apache License
public DatabaseObject createDatabase(String AWSKeyId, String AWSSecretKey, String dbname, String dbType, String dbIdentifier, String dbClass, int dbSize, String dbUser, String dbPassword) {//throws Exception { DatabaseObject dbobj = new DatabaseObject(); String endpoint_str = ""; BasicAWSCredentials basic_credentials = new BasicAWSCredentials(AWSKeyId, AWSSecretKey); AmazonRDSClient rDSClient = new AmazonRDSClient(basic_credentials); //Minimum size per db type, as described in API Reference if (dbType != null && dbType.equalsIgnoreCase("MySQL") && dbSize < 5) { dbSize = 5;/* w ww . j a v a2 s . c o m*/ } if (dbType != null && (dbType.equalsIgnoreCase("oracle-se1") || dbType.equalsIgnoreCase("oracle-se") || dbType.equalsIgnoreCase("oracle-ee")) && dbSize < 10) { dbSize = 10; } CreateDBInstanceRequest create_dbinstance = new CreateDBInstanceRequest(); create_dbinstance.setDBName(dbname); create_dbinstance.setEngine(dbType); create_dbinstance.setMasterUsername(dbUser); create_dbinstance.setMasterUserPassword(dbPassword); create_dbinstance.setDBInstanceIdentifier(dbIdentifier); create_dbinstance.setAllocatedStorage(dbSize);//min size =5GB for mysql,10gb for oracle create_dbinstance.setDBInstanceClass("db.m1.small");//db.m1.small//db.m1.large//db.m1.xlarge//db.m2.xlarge//db.m2.2xlarge//db.m2.4xlarge.... String group = "c4sallowallipgroup"; Vector sec_groups = new Vector(); sec_groups.add(group); create_dbinstance.setDBSecurityGroups(sec_groups); DBInstance dbInstance_create = new DBInstance(); System.out.println("will call createDBInstance"); try { dbInstance_create = rDSClient.createDBInstance(create_dbinstance); } catch (AmazonClientException amazonClientException) { System.out.println("Error in Database Creation."); } System.out.println("called createDBInstance"); String status = ""; System.out.println("called createDBInstance"); //wait 5 minutes for the first time int busyWaitingTime = 3000;//3sec //int busyWaitingTime=300000; //int busyWaitingTime=40000; while (!status.equalsIgnoreCase("available")) { System.out.println("just got inside while"); try { System.out.println("preparing for sleep"); Thread.sleep(busyWaitingTime); System.out.println("woke up"); } catch (InterruptedException ex) { Logger.getLogger(BeansDatabase.class.getName()).log(Level.SEVERE, null, ex); } DescribeDBInstancesRequest describeDBInstancesRequest = new DescribeDBInstancesRequest(); describeDBInstancesRequest.setDBInstanceIdentifier(dbname + "cloud4soaid"); //describeDBInstancesRequest.setDBInstanceIdentifier("c4sdb2cloud4soaid"); DBInstance dbInstance = new DBInstance(); System.out.println("will call describeDBInstances"); DescribeDBInstancesResult describeDBInstances = rDSClient .describeDBInstances(describeDBInstancesRequest); System.out.println("called describeDBInstances"); List<DBInstance> dbInstances = describeDBInstances.getDBInstances(); System.out.println("size--->" + dbInstances.size()); System.out.println("status--->" + dbInstances.get(0).getDBInstanceStatus()); System.out.println("dbname--->" + dbInstances.get(0).getDBName()); dbobj.setDbhost(dbInstances.get(0).getDBInstanceStatus()); if (dbInstances.get(0).getEndpoint() != null) { System.out.println("endpoint--->" + dbInstances.get(0).getEndpoint().getAddress()); System.out.println("port--->" + dbInstances.get(0).getEndpoint().getPort()); System.out.println("all--->" + dbInstances.get(0).toString()); dbobj.setDbhost(dbInstances.get(0).getEndpoint().getAddress()); dbobj.setDbname(dbInstances.get(0).getDBName()); dbobj.setPort(dbInstances.get(0).getEndpoint().getPort()); status = dbInstances.get(0).getDBInstanceStatus(); //after the first 5 minutes test every minute busyWaitingTime = 60000; } } System.out.println("just got outside while"); System.out.println( "just got outside while and endpoint is :" + dbobj.getDbhost() + ", name is " + dbobj.getDbname()); /* * * DescribeDBInstancesRequest describeDBInstancesRequest = new * DescribeDBInstancesRequest(); * * describeDBInstancesRequest.setDBInstanceIdentifier(dbname + * "cloud4soaid"); * //describeDBInstancesRequest.setDBInstanceIdentifier("c4sdb2cloud4soaid"); * DBInstance dbInstance = new DBInstance(); * * System.out.println("will call describeDBInstances"); * DescribeDBInstancesResult describeDBInstances = * rDSClient.describeDBInstances(describeDBInstancesRequest); * System.out.println("called describeDBInstances"); * * List<DBInstance> dbInstances = describeDBInstances.getDBInstances(); * * System.out.println("size--->" + dbInstances.size()); * System.out.println("status--->" + * dbInstances.get(0).getDBInstanceStatus()); * System.out.println("dbname--->" + dbInstances.get(0).getDBName()); * dbobj.setDbhost(dbInstances.get(0).getDBInstanceStatus()); * * * if(dbInstances.get(0).getEndpoint()!=null){ * * * System.out.println("endpoint--->" + * dbInstances.get(0).getEndpoint().getAddress()); * System.out.println("port--->" + * dbInstances.get(0).getEndpoint().getPort()); * System.out.println("all--->" + dbInstances.get(0).toString()); * * dbobj.setDbhost(dbInstances.get(0).getEndpoint().getAddress()); * dbobj.setDbname(dbInstances.get(0).getDBName()); * dbobj.setPort(dbInstances.get(0).getEndpoint().getPort()); } */ return dbobj; }
From source file:rollsPOC2.util.AWSHelper.java
public static DBInstance createOrFindRDSInstance(String instanceName) throws Exception { DBInstance instance = findRDSInstance(instanceName); if (instance == null) { AmazonRDSClient client = AppServices.getRDSClient(); CreateDBInstanceRequest request = new CreateDBInstanceRequest().withDBName(instanceName) .withLicenseModel("postgresql-license").withEngine("Postgres").withEngineVersion("9.5.2") .withDBInstanceClass("db.t2.small").withMultiAZ(false).withAllocatedStorage(5) // .withStorageType("Magnetic") .withDBInstanceIdentifier(instanceName).withMasterUsername("postgres") .withMasterUserPassword("postgres").withStorageEncrypted(false) // .withDBSecurityGroups("IPAASDemo") ;/* w ww .j a va 2 s. com*/ instance = client.createDBInstance(request); } return instance; }