AppLogic 2.4 Documentation The latest production release is AppLogic 2.8.9
Windows Appliance Notes
In order to use Windows-based appliances in AppLogic you must have the 3tera Windows enhancement hotfix installed on your grid.
Overview
AppLogic 2.4.x supports appliances running Windows Server 2003. These appliances can be fully managed by AppLogic through the inclusion of the Windows APK, which is installed by all of the Windows msi installers included with AppLogic.
This reference details important operational characteristics of Windows appliances which use the Windows APK.
Instructions for creating Windows appliances under AppLogic are available here.
Please review the AppLogic release notes for a list of the known bugs/issues when running Microsoft Windows on AppLogic.
Notes/Limitations
Paging
Page files are supported in Windows on AppLogic. 3Tera does not recommend to enable them by default (and as such all 3Tera provided windows appliance build instructions tell the user to disable the page file), because swap files do slow down performance as compared to using RAM. Especially for performance-critical applications, it is better to give the appliance more memory instead of giving it a swap file -- for example, if you run a database, swapping out to disk (whether an AppLogic-type disk or any other) will slow things down. A swap file simply emulates RAM using disk when enough real RAM cannot be provided. Note that even when the swap file is disabled, Windows still uses paging to free memory pages that contain unused program code -- which is the majority of the normal swapping that occurs on balanced systems. If you are running a 24x7 server-type appliance, everything that is in memory will be in use and swapping it out to disk will cause performance degradation (this is not specific to AppLogic).
Modifying a Windows appliance boundary may require user interaction on the appliance's first boot
Before adding/removing terminals in your Windows appliance, please make sure that you know the Administrator password so you may login to the graphic console of the appliance. This is required in cases where manual user interaction is needed.
If new terminals/disks are added to a Windows appliance, user interaction may be needed on the next boot of the appliance. Modifications to the terminals/disks may trigger the invocation of the Windows hardware setup wizard in cases where Windows PV drivers are used (Novell, Halsign, etc). In this case the user must login to the appliance's graphical console and click-through the hardware setup wizard in order to enable the terminals/disks to function properly in the appliance. This may also require an appliance reboot or Windows re-activation depending upon the change. This only needs to be done once on the first boot after the modification to the appliance's terminals/disks (the hardware wizard should not pop-up on subsequent appliance boots).
This problem should only appear if new terminals/disks are added to the appliance. If the hardware wizard is encountered upon any other modification other than to the appliance's terminals/disks, please contact 3tera technical support.
This issue is avoidable by following the windows installation instructions.
Volume Auto-mount Limitations
This limitation does not apply if you are using AppLogic 2.4.7+.
The AppLogic Appliance Kit (APK) supports auto-mounting of volumes that are attached to an appliance (for all OSes). This allows the appliance creator to specify a path under which a particular volume should appear after an appliance has booted (e.g., volume myvol should be mounted under C:\data). For Windows appliances, auto-mounting is supported with the following limitations:
- Windows-based appliances cannot have empty placeholder volumes. If a Windows appliance uses placeholder volumes, those volumes must be assigned valid volumes (non-empty). If the user attempts to boot a Windows appliance with empty placeholder volumes, the appliance may fail to boot or not operate correctly. This is a limitation of the Windows-based APK supplied with AppLogic 2.4.5 and is fixed in AppLogic 2.4.7+.
- If an appliance needs access to an ISO image after boot on any volume other than the boot volume (
C:), the auto-mounting feature is not supported and must be entirely disabled in the appliance (which means the APK will not auto-mount any volumes in the appliance except for the boot volume). In order to disable the auto-mount feature, please see the APK configuration for Windows. This is a limitation of the Windows-based APK supplied with AppLogic 2.4.5 and is fixed in AppLogic 2.4.7+.
Computer SID
When an instance of a Windows appliance is created from a catalog class (or by copying any Windows boot volume), the resulting OS has the same computer security identifier (SID) as the original. Ordinarily, this should cause no difficulty.
It should be noted, though, that individual local accounts are assigned a SID comprised of the computer SID and an appended relative identifier. It is possible for user accounts on two different appliances to be created with the same SID if the computer SID's are identical. This is not an issue in domain based environments where domain accounts are based on the domain SID; however, in workgroup environments security is based on local account SID's.
To change the computer SID on an appliance, please use the wincfg utility supplied in AppLogic 2.4.7+ which allows a user to change various settings of their Windows appliances (SID, computer name, Administrator password, etc). This utility also properly updates the Cygwin environment to reflect the change in the computer SID.
Computer Name
The computer name of a Windows appliance is automatically changed by AppLogic whenever the appliance instance name is changed. The instance name can be changed by the user using the AppLogic GUI or when a new appliance instance from a catalog is added to an application. The computer name change is handled by the AppLogic Windows APK that runs in all windows appliances.
On appliance start, the Windows APK compares the computer name to the appliance name. If they differ, the APK:
- changes the computer name to match the appliance instance name
- puts the appliance into maintenance mode
- reboots the appliance
From the standpoint of a user who is starting a windows appliance where the computer name needs to be updated, the appliance start process takes longer than normal (a few extra minutes). This is because of the extra appliance reboot that is needed for the computer name change. During the time the appliance is rebooting the following message is displayed to the console during the app/comp start: "compname entered maintenance state" (where compname is the name of the Windows component).
To prevent the APK from renaming an appliance, create a text file C:\cygwin\etc\sysconfig\applogic_init which contains a line with this contents: APK_HOSTNAME_UPDATE=no. Both the Windows VDS msi and Windows Filer msi create this file (the VDS computer name is specified through a property; for the filer the computer name is not relevant). The Windows Server msi does not create this file.
To change the computer name of your appliance, you can either use the Windows GUI or you can login into your appliance and run the following command from the login shell (assuming the APK computer name change has been disabled as described above):
-
wmic computersystem where name="%COMPUTERNAME%" rename name="newname"
- replace
newname above with the computer name
Note: AppLogic 2.4.7+ includes the wincfg utility which allows a user to change various settings of their Windows appliances (SID, computer name, Administrator password, etc).
Administrator Password
If you need access to the graphical console and you do not know the Administrator password, it is possible to change the password through the login shell using the following command: net user Administrator admin-new-password (where admin-new-password is the new password for the Administrator).
Note that the Windows Server appliances (WIN03X) and Windows filer by default use a random Administrator password for security purposes. If this is not desired, change the password as described above.
Note that the Windows Server appliances generate a new random password whenever the appliance class name changes. If you wish to disable this behavior, open a Cygwin bash shell on the running appliance and edit the script /appliance/appliance.sh and insert a line exit 0 after the initial comment block.
Note: AppLogic 2.4.7+ includes the wincfg utility which allows a user to change various settings of their Windows appliances (SID, computer name, Administrator password, etc).
Login Shell
The Windows msi installers include Cygwin, a compact Linux-like environment which runs under Windows. The Cygwin ssh server provides ssh access to Windows appliances. The login shell is bash. The Cygwin bash shell supports nearly all of the commands available under the Windows command shell, as well as the usual bash commands.
The cygwin shell uses / as a directory delimiter rather than \. To access the root of a drive use, for example, cd c: or cd c:/ You can also use the cygpath utility to convert between the Cygwin POSIX style pathnames and the Windows native filenames; man cygpath for more information.
The security context in the publickey-authenticated ssh login is almost but not exactly the same as the Administrator login. The current user SID is that of Administrator but name lookup for the SID returns sshd_service instead of Administrator.
A few commands, such as diskpart, do not work from the login shell.
Services
The Windows msi installers disable both the Windows Automatic Update Service and the Windows Firewall Service. These services can be re-enabled manually after installation if needed.
NTFS volumes
The Windows msi installers disable the Microsoft Windows volume auto-mounting feature. This feature is superceded by the APK auto-mounting feature.
Before using the Windows Filer to operate on an NTFS volume, please read the NTFS implementation specifics in the Filer Data Sheet.
Shutdown
Managed windows appliances are shutdown using a shutdown event generated by the APK (the 3tera appliance kit). On occasion, Windows can block this event if it is waiting for a user interaction, e.g. in the GUI. In this case, issuing app stop or comp stop causes the appliance stop to time out in 15 minutes at which point the appliance is abruptly stopped and not gracefully shutdown. To perform a graceful shutdown in such an event, log in to the graphic console of the appliance and shut it down through the GUI after initiating app stop or comp stop.
In addition, you can manually disable the shutdown GUI from popping up which will prevent this problem from occuring. Please see the windows installation instructions on how to do this.
-- StephenQ - 29 Aug 2008
Copyright © 2005-2010 3tera, Inc. All Rights Reserved.