After creating VMs here, power them on, so they boot from Metal Cloud over PXE. They will be registered in Metal Cloud (BSI). After an automatic power off, they should show up as available in the Servers admin page.
If the servers showed up as registering, retry by powering them on. Or start debugging.
This application needs to be always running, as Metal Cloud (bsi.vmware.local) powers virtual machines on and off through a JSONRPC API exported by this application.
Make sure the ssh agent is running (Pageant on Windows, ssh-agent on Unixes) and has your private key loaded. These scripts make use of SSH key forwarding.
On Windows, these scripts also try to load %USERPROFILE%\.ssh\id_rsa.ppk
automatically. WinSCP needs to be installed in the default folder, C:\Program Files (x86)\WinSCP
. The WinSCP assembly is a Putty wrapper which can load Pageant exported private keys.
Installs development tools (see shortcuts on desktop), generates SSH keys using OpenSSH method (ssh-keygen), and configure Pageant to autoload keys at start to be used by SSH key forwarding capable clients.
Install development tools
The ExportVHosts folder may contain folders with local subdomains as names. Each automatically becomes an Apache2 vhost document root.
The development VM's Apache is configured to route requested domain names to corresponding vhost root subdirectories of the ExportVHosts directory automatically (no need to reconfigure Apache when adding new directories named as a subdomain).
For example, the document root C:\ExportVHosts\bsi.vmware.local
(or /ExportVHosts/bsi.vmware.local
) is served as http://bsi.vmware.local
.
If you have additional custom subdomains, make sure to point them to 192.168.137.2 (the development VM IP address, where Apache is listening).
For example in /etc/hosts
or %system32%\drivers\etc\hosts
:192.168.137.2 something-of-my-own.vmware.local
Get the share password from /etc/auto.smbshares
. To find out what could be preventing the share from auto-mounting, run this in the VM's shell: smbclient -L physicalhost -U bigstepdevel
. If it correctly lists all the shares, the list includes ExportVHosts and there's an error code which complains some resource is unavailable, reboot the VM.
The development VM needs internet and visibility from the host machine.
The workstation with the physicalhost
custom DNS subdomain (do not name your machine physicalhost), will have the IP address 192.168.137.3/21
.
The NAT gateway is 192.168.137.1.
The development VM must have the vm
hostname and the 192.168.137.2/21
IP address.
When doing things manually, make sure you do not expose the VM to your physical networks or VPNs.
Instead, give it internet through through NAT on a private virtual network.
DO NOT forward any ports to the outside world.
The development VM loads and executes all of the Metal Cloud server applications, in a production-like environment with similar OS flavor & version, support libraries and installed services.
The developer workstation and its installed applications have to stay completely isolated from the development VM,
which must remain as close as possible to a known to work common context which reduces the likelyhood of missing or failing dependencies, or unexpected behaviour when releasing updated software to other environments (other development VM setups, or the integration or production environments).
Most of the Bigstep code is loaded inside the VM through the ExportVHosts shared directory on the host workstation, so the developer may locally go through thousands of source code files with his IDE of choice, without protocol, network or disk latency (for searching, git operations, etc.).
Wait for decompression to finish.
Power on the VM.
Power on the virtual machine after you are sure you have the complete CentOS-7.iso file in /VM.
Install CentOS 7.
Configure the following during setup (don't skip anything):
After the VM has booted and the login prompt is showing, press this button to have the setup script automatically copied into the VM:
Copy setup_centos7.sh to the VM's / directoryGo to the VM's console and login using the username root
and the password setup
Run setup_centos7.sh
through SSH or the console using bash /setup_centos7.sh 2>&1 | tee /var/log/setup_centos7.log
Watch the progress: tail -F /var/log/**/*log
The virtual machine you have created MUST continue to reside on a private virtual network,
accessible only from your physical computer, and no other computers on the network (only give it internet through NAT, without any port mappings).
It has minimum to no security (root login without password for SSH, MySQL, Samba), to blend as much as possible into the host OS and make development easy and fast.
The default username and password in http://bsiadmin.vmware.local are both your email address.
If logging-in doesn't work, its time to start troubleshooting! Reboot the VM first.
It is likely bsidev.dev_env_create_vmware()
is failing for some reason (it is hooked to run automatically). Try to run it manually from the console.
If you have storage problems, don't how to fix them and you can't find anyone to help, as a last option, destroy de VM and reinstall it.
If you are a Billing & Order developer, only enable Billing integration after logging in successfully in bsiadmin.vmware.local.
In the development VM shell run these:
cd /mnt/autofs/ExportVHosts/billing.vmware.local/SQL
sh billing_integrate.sh
The local repository is always updated on the fly from http://repointegration.bigstepcloud.com using a HTTP-proxy cache. Files which differ from the real repo are automatically deleted and a fresh copy is served instead.