Version Differences for Cloning an AnthillPro Instance

Line 12:
  ## Directory: Directory where you would like the server installed on the new machine    ## Directory: Directory where you would like the server installed on the new machine 
  ## Confirmation: Type ‘y’ if this was the correct directory to install to. Typing ‘n’ will fail the program out.    ## Confirmation: Type ‘y’ if this was the correct directory to install to. Typing ‘n’ will fail the program out. 
- * JDK: Home directory of the JDK   + ## JDK: Home directory of the JDK  
- * Host: The hostname of the AnthillPro server (the agents will use this to connect to the server)   + ## Host: The hostname of the AnthillPro server (the agents will use this to connect to the server)  
- * JMS: The port that the agents will be using for communication (Default is 7915)   + ## JMS: The port that the agents will be using for communication (Default is 7915)  
- * Devilfish/Remoting: The port that will be used for remoting connections (Default is 4567)   + ## Devilfish/Remoting: The port that will be used for remoting connections (Default is 4567)  
- * IP Address: Also known as the ‘Bind-IP’. This is the address the server will bind to (default is all [0.0.0.0]).   + ## IP Address: Also known as the ‘Bind-IP’. This is the address the server will bind to (default is all [0.0.0.0]).  
- - HTTPS (optional): Type ‘y’ if you want to use HTTPS protocol to connect to the WebUI, else type ‘n’.   + *** HTTPS (optional): Type ‘y’ if you want to use HTTPS protocol to connect to the WebUI, else type ‘n’.  
- - HTTPS Port (optional): Input the secure port that you want the WebUI to listen on (Default is 8443).   + *** HTTPS Port (optional): Input the secure port that you want the WebUI to listen on (Default is 8443).  
- - HTTP Port: Input the port that you want the WebUI to listen on (Default is 8080).   + *** HTTP Port: Input the port that you want the WebUI to listen on (Default is 8080).  
- - SSL (optional): Type ‘y’ if you want to use SSL between Server ? Agents. Else type ‘n’.   + *** SSL (optional): Type ‘y’ if you want to use SSL between Server ? Agents. Else type ‘n’.  
- - Mutual Authentication (optional): Type ‘y’ if you want to use mutual authentication. This will require a manual key exchange between server and each agent that will connect to it.   + *** Mutual Authentication (optional): Type ‘y’ if you want to use mutual authentication. This will require a manual key exchange between server and each agent that will connect to it.  
- 6. When prompted for database type, specify derby or just press enter as we want to do a default Derby install.   + # When prompted for database type, specify derby or just press enter as we want to do a default Derby install.  
- 7. Press enter twice to accept defaults (anthill3/password) as the username/password combination.   + # Press enter twice to accept defaults (anthill3/password) as the username/password combination.  
- 8. Once file system installation finishes, select ‘N’ for the Windows Service install (this can always installed manually later).   + # Once file system installation finishes, select ‘N’ for the Windows Service install (this can always installed manually later).  
- 9. Once the database installation finishes, press enter a couple of times to exit the installer.   + # Once the database installation finishes, press enter a couple of times to exit the installer.  
- 10. Now that the server is installed, navigate to the server’s lib directory, and create a subdirectory called ‘ext’.   + # Now that the server is installed, navigate to the server’s lib directory, and create a subdirectory called ‘ext’.  
- 11. Place your database driver JAR file in this ext directory.   + # Place your database driver JAR file in this ext directory.  
- 12. Ensure that your cloned database (or old database) is running, and you can connect to it.   + # Ensure that your cloned database (or old database) is running, and you can connect to it.  
- 13. Navigate to the server’s conf\server directory and modify the following files:   + # Navigate to the server’s conf\server directory and modify the following files:  
- a. Installed.properties   + ## Installed.properties  
- i. Install.db.type should get the type of database you are going to (for example, mysql for MySQL, oracle for Oracle, sqlserver for SQL Server)   + ### Install.db.type should get the type of database you are going to (for example, mysql for MySQL, oracle for Oracle, sqlserver for SQL Server)  
- ii. Install.db.url should get the connection string for your database (for example, one for Oracle might look like jdbc:oracle:thin:@oraclebox:1521/ORCL )   + ### Install.db.url should get the connection string for your database (for example, one for Oracle might look like jdbc:oracle:thin:@oraclebox:1521/ORCL )  
- iii. Install.db.password should be replaced with the plaintext password of the database user.   + ### Install.db.password should be replaced with the plaintext password of the database user.  
- iv. Install.db.driver needs the class name of the driver (for example, Oracle’s is oracle.jdbc.driver.OracleDriver if using ojdbc6.jar)   + ### Install.db.driver needs the class name of the driver (for example, Oracle’s is oracle.jdbc.driver.OracleDriver if using ojdbc6.jar)  
- v. Install.db.user should be replaced with the database user’s username.   + ### Install.db.user should be replaced with the database user’s username.  
- b. Spy.properties   + ## Spy.properties  
- i. Find line 42 (should say realdriver=org…) and change the class name of the driver to match with what you specified in the install.db.driver line in installed.properties file.   + ### Find line 42 (should say realdriver=org…) and change the class name of the driver to match with what you specified in the install.db.driver line in installed.properties file.  
- 14. Navigate to the server’s conf\server\spring-server directory and modify the following files:   + # Navigate to the server’s conf\server\spring-server directory and modify the following files:  
- a. Base.xml   + ## Base.xml  
- i. url should get changed to the connection string specified in installed.properties   + ### url should get changed to the connection string specified in installed.properties  
- ii. username should get changed to the database user’s username specified in installed.properties   + ### username should get changed to the database user’s username specified in installed.properties  
- iii. password should get changed to the plaintext database user’s password specified in installed.properties   + ### password should get changed to the plaintext database user’s password specified in installed.properties  
- 15. Finally, ensuring that all the correct values are specified, you should be able to start your server and have it connect to the cloned database (or old database depending if you cloned the database or not).   + # Finally, ensuring that all the correct values are specified, you should be able to start your server and have it connect to the cloned database (or old database depending if you cloned the database or not).  
       
  An alternative method (as found http://documentation.urbancode.com/anthill3-help-3.8/html/CloneAnthillpro.html) is available as well:    An alternative method (as found http://documentation.urbancode.com/anthill3-help-3.8/html/CloneAnthillpro.html) is available as well: 
- 1. Install the new AnthillPro server and instruct it to connect to a new empty database created specifically for the instance.   + # Install the new AnthillPro server and instruct it to connect to a new empty database created specifically for the instance.  
- 2. Modify the production server to ensure that it is configured to bind to the address: 0.0.0.0 on startup. Go to System > Server Settings, and set the Bind to IP setting to 0.0.0.0.   + # Modify the production server to ensure that it is configured to bind to the address: 0.0.0.0 on startup. Go to System > Server Settings, and set the Bind to IP setting to 0.0.0.0.  
- 3. Shutdown the AnthillPro production server.   + # Shutdown the AnthillPro production server.  
- 4. Clone the AnthillPro database. The procedure varies depending on the underlying database. Your database vendor should have documentation on cloning.   + # Clone the AnthillPro database. The procedure varies depending on the underlying database. Your database vendor should have documentation on cloning.  
- 5. Start the production AnthillPro server. If need be, reset the Bind to IP setting. This may require you to restart the server to take effect.   + # Start the production AnthillPro server. If need be, reset the Bind to IP setting. This may require you to restart the server to take effect.  
- 6. Copy the cloned database over the top of the clean database schema which was created in Item 1.   + # Copy the cloned database over the top of the clean database schema which was created in Item 1.  
- 7. Cleanup the cloned database before installing it in the new instance. The first two statements (see below) remove the production license from the new server to prevent license conflicts. If you do not run these statements, starting the new server may disable your production server. The third statement instructs the new instance to ignore all production agents, preventing accidental upgrades.   + # Cleanup the cloned database before installing it in the new instance. The first two statements (see below) remove the production license from the new server to prevent license conflicts. If you do not run these statements, starting the new server may disable your production server. The third statement instructs the new instance to ignore all production agents, preventing accidental upgrades.  
- a. DELETE FROM ANTHILL_LICENSE;   + DELETE FROM ANTHILL_LICENSE;  
- b. DELETE FROM REPOSITORY_USERS;   + DELETE FROM REPOSITORY_USERS;  
- c. UPDATE AGENT SET ISIGNORED = 1;   + UPDATE AGENT SET ISIGNORED = 1;  
- 8. Moving SSL certificates. If your production server is using SSL, you will need to copy over all the *.keystore files into the new instance. Do not remove the files from the production server.   + # Moving SSL certificates. If your production server is using SSL, you will need to copy over all the *.keystore files into the new instance. Do not remove the files from the production server.  
- 9. Start the new AnthillPro instance and enter your evaluation license. In order to use the server, you will have to connect it to at least one agent. There are a number of options you can choose: the simplest is to install some new agents and bind them to the new server.   + # Start the new AnthillPro instance and enter your evaluation license. In order to use the server, you will have to connect it to at least one agent. There are a number of options you can choose: the simplest is to install some new agents and bind them to the new server.  
- a. Note that if you have any production agents come online (e.g., you restart an agent) while the new instance is running and still set to bind to 0.0.0.0, that agent may bind to the new instance and not the production instance. To prevent accidental binding and/or upgrade, you can give the AnthillPro new instance a unique IP address and then tell its agents only to bind to that IP.   + ## Note that if you have any production agents come online (e.g., you restart an agent) while the new instance is running and still set to bind to 0.0.0.0, that agent may bind to the new instance and not the production instance. To prevent accidental binding and/or upgrade, you can give the AnthillPro new instance a unique IP address and then tell its agents only to bind to that IP.  
       
  Either way, after the clone is complete, you are free to copy over the \var\ directory from the server to the new server’s \var\ directory. This will copy over all old artifacts, job logs, published reports, etc.    Either way, after the clone is complete, you are free to copy over the \var\ directory from the server to the new server’s \var\ directory. This will copy over all old artifacts, job logs, published reports, etc.