Software Table of Contents Topic Table of Contents Considering Terminal services Considering Citrix on Terminal srvices Considering Equipment Installing the Application MiTek.ini Considerations Setting up the MiTek.ini Appendix A- Files that may be used as an exception Appendix B Easy setup of the Configuration Editor Typical Terminal Services setup Definitions Page 1 2 3 4 6 7 8 9 13 15 16 Page 1
Software Why should I use Terminal Services/Citrix 1. Thin client PC s are less expensive 2. Use the PC s that you already own at minimum capacity until they are no longer useful Many large companies have started the migration to a Terminal Services environment. Once an operation reaches a certain size it begins to make sense for many reasons. Listed are some reasons MiTek has collected from its customers Old Computers, when used as thin client, function at minimum capacity and can live well past the point that they might if the full working load were placed on them. Many different kinds of hardware, regardless of operating system, can interact with Terminal services. 3. Everyone uses the same setup and version, streamlining the support process. Upgrades, hardware and software, are executed in one location, and all at one time. software hot fixes can be administered to all users from one location. Travel expenses for computer support staff are greatly reduced. Backups and disaster recovery plans can be standardized and easily verified. 4. Remote designers, offices and plants can share jobs, data and clients without the need for manually transferring the information and syncing the data. All of the transactions are real time. 5. Backups and disaster recovery plans can be standardized and easily verified. IT expertise can be concentrated in a central location instead of being spread out over many sites. For more information on Terminal services visit: http://www.microsoft.com/windowsserver2003/technologies/terminalservices/ Page 2
Software Do I Need Citrix The answer to this is a matter of preference on which platform you wish to support. Both products work well, one offers additional features which comes with an additional price. Listed here are a few reasons that you may want to run Citric. 1. Citrix produces client software that can run on many different devices, including hand held devices and computers that do no run Windows applications 2. Citrix allows you to run Published applications. This means that the user can click an icon on the desktop of a PC and run a Terminal Services session that will appear to be just another program. 3. Citrix makes it easy to build a server farm with robust load balancing capabilities. 4. Citrix allows you to control band width priority for different types of applications. 5. Citrix provides tools that can greatly assist with upgrading software on a server farm. 6. Citrix Enterprise supports dual monitors. 7. Citrix has enhanced print stream compression. For more information about Citrix you can visit their website at: http://www.citrix.com Page 3
Software What kind of equipment do I need for this project (cont) There are many variables involved in the selection of equipment and the equipments specifications. These will range from what MiTek software is run on, what other applications are being run, how many users are on the system and, most importantly, how you are running the software. We have tested our software applications and can offer some general advice. One thing we recommend is that you have at least three servers. One Application Server for running the Terminal services session, one File Server for housing shared data and jobs and one Print Server to handle all print calls. The File Server and the Application Server should be connected by the best and fastest equipment currently available. MiTek also suggests that if it is critical to your business to have a user connected via Terminal Services/Citrix that you build redundandt high speed communication channels such as DSL or T1 or the best and fastest currently available Memory Usage: (tested for MiTek 6.2) Launching any of the MiTek applications, and loading a typical job, consumes between 20 45 megs of ram. Adding another user, to the process in the Terminal Services environment, consumes another 15%-25%. The one exception to this is CyberSort which, as an executable, consumes a normal amount of memory. When a job with 160 trusses was opened, it consumed an additional 200 megs. It is important to plan for the number of CyberSort users. Processor Usage: (tested for MiTek 6.2) MiTek tested processor usage on a single server with dual 3.2 GB processors and 2 GB s of ram. We tested each application individually and then tested with eight users, functioning like a truss plant across different applications at different times. The duration of the test was 1.5 hours. During this time we were running monitoring tools on the server. We noticed that there were spikes in the usage when designers were batch running/printing and when CyberSort was printing. All users noticed a momentary slow down during these heavy traffic periods. This could not be attributed to processing. See below. The number of users per processor will vary. In our test, we had 2-3 people in eframe, 3-4 people batching in engineering and 1 person in CyberSort. We did not tax the dual processors we were using. Page 4
Software What kind of equipment do I need for this project Network Usage: Analyzing the data from the test, it appears that the processor had only maxed out a couple of times and only for a short moment. Most of the slow downs were caused by lack of bandwidth. The traffic from all eight users was running through a single one hundred meg connection and the connection was frequently using it s entire bandwidth. A single user connecting at 100 MB/S will experience the same problem. It is important that any user connecting via the internet have a highspeed connection. Dial-Up is not practical. Applications can be run successfully in this environment, using wireless technology, but one should exercise extreme caution in the scaling and reliability of a wireless system. Only the most reliable equipment should be used. Printing: During our test projects we did not encounter any problems worth mentioning while printing. Our tests were run from Phoenix, AZ to Chesterfield, MO. We did not use any print compression. It does take longer to print across this distance than it does to print across a building, but not terminally so. It took about 1 1/2-2 minutes to print a large cutting job (approximately 160 trusses) across this distance. Keep in mind, this was just one user printing. On the whole, printing will be amongst the largest portions of data crossing your network in this environment. For this reason we suggest that you use some kind of compression. If you elect to use Citrix, you can use the printing compression tools included with that software. If not, there are many third party applications that can capture and compress the Terminal Services print stream. Page 5
Software Installing the Application This section is to assist in the setup of the MiTek software suite in the Windows Terminal Server/Citrix environment. The initial install is done with the server being placed in install mode, then the install being performed as usual for each Application Server. The application is stored on the Application Server, or server farm, and the shared data is stored on a separate File Server. It is recommended, by Microsoft, Citrix and MiTek, that the shared data and printing function should never be stored on the Application Servers. For best results, we recommend that applications, printing and shared files are all stored on separate units. The next step is to set up a mitek.ini file for each user s profile. The mitek.ini file is the configuration file for the entire MiTek suite of programs. This file is found by the MiTek programs along the system path. Normally it is placed in the directory of origin, C:\MiTek\programs. In a Terminal Services environment this directory is shared so we will place it in the user s profile windows directory, which is also along the system path. This way, no one user can change the settings for another user if they make changes to their MiTek system. NOTE: The user s windows directory will be automatically moved to the home directory if the Admin is using the home directory feature. Page 6
Software mitek.ini Considerations Several considerations must be made when setting up the mitek.ini file. Each of the MiTek programs has user level support files that can be edited by the user to enhance their working environment. These files need to be located in the users profile and the mitek.ini needs to direct the programs to find them there. Deciding which files to include depends on the programs being run by the user. Once evaluated, the pertinent files need to be moved from the local Mitek\Data directory to the users windows directory. The users window directory may be located in C:\documents and settings\current user\windows or, if home directories are being used, it may be located in the home directory behind a mapped drive. either way, you are going to want a mapped drive inside this location. So if the drive letter is H: then the path to one of the support files would be H:\windows\support file. You will want each user to have this mapped drive each time they log in. The Subst or Net Use commands can be used to establish these drives. You can use the environment variable %UserName% to map inside an unknown user name, so the path would literally look like: C:\Documents and Settings\ %USERNAME%\ Windows\. If home directories are being used then this drive letter will be established by that feature. Use appendix A to determine which files should be stored in the user s windows directory. Appendix B contains a typical terminal services profile for the configuration editor. Advanced users may skip the next section and use appendix B to quickly set up the configuration editor. Other files need to be shared by the users and should be stored in the shared data folder. You will need to map a drive to the shared data on the File Server, so if the drive letter is M then the path would look like M:\Data\. All users will need this mapped drive when they log in. On a new install you can begin by copying the MiTek\data folder from an Application Server to this drive, on an existing server you will want to use the existing shared data. Typically the following files are included: Mba.ini Mba:Info Inventory:Info Splice32.bin Bc2000.ini For a complete list of user support files that need to be considered, see appendix A. Page 7
Software Setup of the mitek.ini 1. Move the desired.ini files into the current active user account windows directory. 2. To set up the MiTek.ini, start by opening the MiTek Configuration Editor which is generally found in the start menu at Start All Programs MiTek 2020 Version X.X Support Programs Configuration Editor 3. Once opened, click the advanced button. 4. Then click the Add/Edit button next to exceptions. 5. Use the dialog to add each of the desired support files to the list. 6. Set the network data path to the data on the File Server and set the Default Location toggles for the Man.var and DB-Act to network as shown below. Set the jobs folder to the shared jobs on the File Server. Set the local program folder and data folder to the local folders seen by each Application Server. 7. Once this is complete cut the MiTek.ini from the C:\MiTek\programs directory and place it in each User Profile\windows\ directory. Then remove the MiTek.ini from programs directory on any additional Application Servers The updated mitek.ini is moved into the user accounts and removed from the programs folder on the Application Servers Page 8
Software Appendix A (cont) Files that may be used as an exception Program File Paths for consideration Status MBA: Mba.ini (Point to Network Data Folder) Required Mba:Info (Point to Network Data Folder) Required Inventory:Info (Point to Network Data Folder) Required Bldbatch.ini (Point to Network Data Folder) Recommended (Application Server Data Folder) Engineering: Man.Var (Point to Network Data Folder) Recommended (Application Server Data Folder) (Users Windows Folder) Use the toggle in the configuration editor to point to the network unless you have a reason to except this to the user profile. Splice32.Bin (Point to Network Data Folder) Recommended (Application Server Data Folder) (Users Windows Folder) Mi2000.ini (Users Windows Folder) Recommended Note: The following files will follow the Mi2000.ini file around, i.e.: new files will be created in the same directory as the Mi2000.ini file. If desired, established files may be copied to this location. Eng_Bars.ini Eng_Bars.bin Eng_ui_layout.ini Page 9
Software Appendix A (cont) Program File Paths for consideration Status Tmod.ini (Application Server Data Folder) Default (Network Drive) (Users Windows Folder) Tmod Directory (Application Server Data Folder) Default (Network Drive) (Users Windows Folder) Add a Tmod folder exception into the MiTek.ini file. Double Directory (Application Server Data Folder) Default (Network Drive) (Users Windows folder) Add a Double folder exception in the MiTek.ini file Notes.txt (Application Server Data Folder) Default (Network Drive) (Users Windows folder) Add a Notes.txt exception in the MiTek.ini file 4.2 Layout: Eframe: Miteklay.ini (Users Windows Folder) Recommended Flag.def (Users Windows Folder) Recommended Of.ini (Users Windows Folder) Recommended Oftb.ini (Users Windows Folder) Recommended Deflocs.ini (Shared Data Directory) Page 10
Software Appendix A (cont) Program File Paths for consideration Status These files should be placed inside the users profile windows directory. An exception should be added to the configuration editor of each file placed in this location. The following are generally stored in the local Data\OF directory and are available for exception in version eframe 2.17 and above. We recommend the following locations be used in an initial setup. AutoDim.ini Colours.ini DimLabels.ini DXFOut.ini EndCuts.ini EngDefs.ini Fonts.ini General.ini LabelTrs.ini LastSave.ini ModFrm.ini Warnings.ini These files should be placed in the OF directory located in the shared data directory. The deflocs toggle in the configuration editor should be set to network. In Eframe, under Setup-Network Configuration all categories should be moved to networked. AutCStud.ini AutoBrk.ini AutoFram.ini AutoProf.ini BoxDefs.ini BraceRF.ini Cutting.ini DsgnDefs.ini FillGaps.ini FRMArea.ini HngDefs.ini IntRules.ini JobInfo.ini JobSolns.ini Page 11
Software Appendix A Program File Paths for consideration Status The following are generally stored in the local Data\OF directory and are available for exception in version eframe 2.17 and above. We recommend the following locations be used in an initial setup. Junction.ini Levels.ini LoadDefs.ini MatNames.ini Measure.ini MiscLabels.ini OmniMiz.ini OpenDefs.ini OpenMats.ini ProgramSolns.ini Reports.ini RoofItem.ini SpanTrim.ini Stacking.ini TrussData.ini WallPan.ini OptiFrameCAD: (Available in Version 2.18 and above) Ofcad.ini (Users Windows Folder) Recommended _def32.bar (Users Windows Folder) Recommended Cybersort: Bc2000.ini (Users Windows Folder) (Network Data Folder) Recommended Link: miilink.ini (Users Windows Folder) Recommended Page 12
Software Appendix B (cont) Easy Setup of the Configuration Editor The Configuration Editor is a tool to help you set the paths required by the MiTek software to find all of the necessary components. In reality the configuration editor is just a graphic interface to help you maintain a file called the mitek.ini. you can open the mitek.ini in any simple text editor such as notepad and manipulate the data manually. Listed below is a section of the mitek.ini file that can save a lot of time. This is an example of what the terminal services profile in this document should look like. If you have an electronic copy of this document, you can cut and paste any or all of this section into your mitek.ini file then make some adjustments to the paths rather than inputting all of this for yourself. If you do not have an electronic copy of this document, you can request from MitekSupport@mii.com or call the Mitek help desk at (866) 648-3587 Start out by placing the line below at the end of the first section in the mitek.ini which is entitled [Configurations]. TermServ =Terminal Services Profile Then copy and paste the content between the lines below to the end of the mitek.ini. Use the search and replace tools to make any changes to the paths. Begin ---------------------------------------------- [TermServ] Internal units=0 External units=1 Data=C:\Mitek\data DataN=M:\data Jobs=M:\jobs Programs=C:\Mitek\Programs DataDef=Loc Man.var=Net Mi2000.ini=Loc DB:Act=Net DB:Arch=Loc DB:Temp=Loc DB:Tran=Loc DB:Rep=Loc DefLocs.ini=Net DSNType= DSNName= mba.ini=m:\data\mba.ini mba:info=m:\data inventory:info=m:\data BldBatch.ini=M:\data\bldbatch.ini Splice32.bin=M:\data\splice32.bin Double=M:\Programs\Double Page 13
Software Appendix B (cont) Miteklay.in=H:\Windows\miteklay.ini Flag.def=H:\Windows\flag.def OF.ini=H:\Windows\of.ini OFTB.ini=H:\Windows\oftb.ini AutoDim.ini=H:\Windows\autodim.ini Colours.ini=H:\Windows\colours.ini DimLabels.ini=H:\Windows\dimlabels.ini DXFOut.ini=H:\Windows\dxfout.ini EndCuts.ini=H:\Windows\endcuts.ini EngDefs.ini=H:\Windows\engdefs.ini Fonts.ini=H:\Windows\fonts.ini General.ini=H:\Windows\general.ini LabelTrs.ini=H:\Windows\labeltrs.ini LastSave.ini=H:\Windows\lastsave.ini ModFrm.ini=H:\Windows\ModFrm.ini Warnings.ini=H:\Windows\Warnings.ini OfCad.ini=H:\Windows\ofcad.ini _Def32.bar=H:\Windows\_def32.bar BC2000.ini=M:\data\bc2000.ini miilink.ini=h:\windows\miilink.ini UseFIE=0 ---------------------------------------------- End Once you have completed this you will need to make sure that the corresponding files from the list above are in those locations. Page 14
Software Typical Terminal Services Setup Page 15
Software Definitions (cont) APPLICATION SERVER: A server in a client-server network which runs one or more applications that can be shared by client stations and which also shares the data processing burden with client stations. This shared application and shared data processing model contrasts with the model used for other servers, such as file servers, that simply send, receive, and store files, requiring client stations to run all applications and process all data. CITRIX: is a remote access/application publishing product built on the Independent Computing Architecture (ICA), Citrix Systems' thin client protocol. The Microsoft Remote Desktop Protocol, part of Microsoft's Terminal Services, is based on Citrix technology and was licensed from Citrix in 1997. Unlike traditional frame buffered protocols like VNC, ICA transmits high-level window display information as opposed to purely graphical information. Clients are available for several operating systems, including Microsoft Windows (both 16-bit and 32-bit platforms), Mac OS, Linux, other Unix-like systems and hand held devices. FILE SERVER: A networked computer used to store files for access by other client computers on the network. PERSONAL COMPUTER (PC): Usually referring to a Windows-compatible computer. PRINT SERVER: A computer and/or software to provide users or a network with access to a central printer. The print server acts as a buffer, holding the information to be printed out in memory until the printer is free. REMOTE USER: A user that is accessing the computer network from an outside source, such as a phone line or an internet connection. Page 16
Software Definitions (cont) ROAMING PROFILE: The user profile is copied to the Application Server from a stored location and the session is launched. When the session is finished the profile is removed from the applications server and stored until needed again. Any changes that were made to the profile during the session are recorded and made available for the next session. SERVER FARM: Also referred to as server cluster, computer farm or ranch. A server farm is a group of networked servers that are housed in one location. A server farm streamlines internal processes by distributing the workload between the individual components of the farm and expedites computing processes by harnessing the power of multiple servers. TERMINAL SERVICES: A component of Microsoft Windows operating systems (both client and server versions) that allows a user to access applications or data stored on a remote computer over a network connection. THIN CLIENT: A network computer without a hard disk drive, which, in client/server applications, is designed to be especially small so that the bulk of the data processing occurs on the server. Page 17