Client Management Suite

 View Only

ImageInvoker (version 0.3) for Client Initiated Imaging 

Jul 07, 2010 01:33 PM

 Please note that this version of ImageInvoker has now been superceeded.  Please take a
look at version 1.0
 to download the latest version 

 

What is ImageInvoker?

ImageInvoker is a handy Deployment Server(DS) add-on designed to reduce the TCO of using DS in your environment. It provides a self-service imaging interface in automation, a deployment portal if you will, so that desk-side IT staff can schedule the immediate deployment of images without requiring the assistance of a DS administrator. 
 

For those familiar with DS, liken it to Initial Deployment turned on its head, and given a hefty dose of steroids.

ImageInvoker not only makes IT staff more efficient by accelerating the imaging process, but it also removes the need train Deployment Server administrators just to facilitate day-to-day tasks like computer builds, rebuilds and rollouts. A further benefit of using the interface is deployment accuracy. With Deployment Server's drag'n'drop capability, a computer can be incorrectly targeted when scheduling imaging tasks. With ImageInvoker,  the imaging interface is accessed desk-side at the PC, removing completely the risk of imaging the wrong computer.

I created this tool to allow me (a Deployment Server administrator) to empower IT technicians so that they could safely take more control in computer deployments with minimal training. By giving them safe access to Altiris' deployment technology through a controlled portal, I've found that I've no longer need to be contacted at all for rollouts and rebuilds. This has had the knock on effect of leaving me more time  for maintenance, upgrades and new feature rollouts. The increased efficiency of the IT staff, also eases pressure on the helpdesk . A win-win all round.

ImageInvoker takes just 30 minutes to deploy and configure on your Deployment Server, and requires no additional hardware. Try it out, and see how ImageInvoker can lower the TCO of owning Altiris Deployment Server in your environment. 


The ImageInvoker add-on extends Deployment Server 6.9's imaging capability as follows,

  1. It removes the need to stage computers for Initial Deployment
    In DS, computers can be 'staged', which means that skeletal computer objects can be created in advance of their physical delivery to site. Once these computer objects are created, the DS admin can then schedule imaging jobs as appropriate so that once the machines are delivered to desk they can be imaged via  Altiris' Initial Deployment. Depending on how much information is provided to the DS admin in advance, 'Initial Deployment' can be either fully automatic, or manual. In the manual mode the IT technician can select the appropriate computer object from a list in automation, linking the physical hardware to the skeletal object in Deployment Server.
     
    Whilst Initial Deployment is useful, staging can be a major pain. ImageInvoker works by  providing IT technicians a list of image jobs instead of computer objects. Once the image job is selected, there is the facility to configure the computer's name. All this means new computers can be deployed without requiring the input of the DS admin at all.
     
  2. Allows computers to be imaged with either their existing name, or a new name
    One niggle with Deployment Server, is that there is no process equivalent to Initial Deployment  for existing machines. This native feature only applies to new computers.  With ImageInvoker however, there is little difference between the treatment of new and existing computers. Existing machines can be deployed just as simply through the ImageInvoker interface as new ones.
     
    ImageInvoker therefore delivers a single portal for dealing with the deployment of both new and existing computers.
     
  3. Allows either single jobs or entire folders of jobs to be instantly scheduled
    The Deployment Server administrator can present either single jobs or whole folders of jobs as single menu items in the portal. This is done simply by using a tag string in the name of the job, which takes the Deployment Server administrator just seconds. The portal names can also be tailored to be technician friendly, allowing a less detailed descriptions to be presented through the portal. 
     
  4. Accessible from both the Linux and WinPE automation environments
    With version 0.3 of ImageInvoker, both LinPE and WinPE automation environments are supported, providing for more flexibility in your environment.

I'm pleased to say that with this 0.3 release of ImageInvoker, we are losing the beta tag. It has been used now across enough institutions over the last 18 months for me to happlily declare the engine stable.  Before installing ImageInvoker though, I do still highly recommend that you take a full backup of your current setup. If you are using VMWare, now would be a prudent time to take that snapshot too. This is just a general precaution, and simply good practice for installing anything on your servers.
 
The topics covered in this download are,

 

1. Basic Installation and Configuration of ImageInvoker

In what follows you'll see how to install ImageInvoker and see how to configure it to image a computer. Once the installation is complete, we'll take you step-by-step through the three basic configuration tasks which are required to get ImageInvoker up and running. These tasks are,

  1. Regenerate the Linux and WinPE automation environments (to put in place our  ImageInvoker links)
  2. Tag jobs for the portal in the deployment console with the (MI) string
  3. Commit the menu items.
So let's proceed now to the ImageInvoker install.

1.1 Installation Requirements

The only installation requirement for ImageInvoker is that Deployment Server 6.9 is installed. The resource requirement for the ImageInvoker service is very minimal -the service only consumes about 10MB of RAM.  As long as the server is capable of running Deployment Server, it's capable of running imageinvoker too.

At this time, DS6.9 and all service packs are supported by ImageInvoker. DS7.x is not supported at this time.
 

1.2 Installing ImageInvoker (User Attended)

Installing ImageInvoker is a breeze, and should take just a couple of minutes. Just follow the following steps,
  1. Download the ImageInvoker_v0.3.0.0.zip  (the zip of the Microsoft Installer file attached to this article) to your Deployment Server
     
  2. Extract the MSI from the zip folder
     
  3. Execute the MSI on your Altiris Deployment Server. It may take about 10 seconds for the following screen to appear because of some custom actions and prerequisites which fire off in the background. Be patient.

    II2-Install.JPG

    Click Next to proceed

  4. On the next screen you should be presented with the destination folder as being the eXpress share. Click 'Next' to proceed. (If the custom actions have got this all wrong let me know but for now you can click 'Browse' to select the correct location)

    II-Install2.JPG

    Click Next to proceed.

  5. This is the  point where we need the credentials for the ImageInvoker service. These need to be the same as those used for the Deployment Server Services, so the account name is auto-populated for you. Just enter the password you use for the Altiris Services and click Next.

    II-Install3.JPG

    If you implement DS Console security, the service account you use for Deployment Server must be entered in as an account in the console with administrator rights. If you do not, the service won't have the necessary rights within the console to execute tasks selected from the menu.

  6. Now, to the point of no return. If you're happy -click Next to proceed

    II-Install4.JPG

  7. And that should be it -ImageInvoker is now installed. Click Finish to exit.

    II-Install5.JPG
          
  8. And that's it. The install has completed. If you are the curious type,  open up now your services control panel to confirm the service is installed and up and running,
    II2-service_check.JPG

1.3 Installing ImageInvoker (Silent Installation)

Silently installing the ImageInvoker MSI is straightforward. All you need to set on the command line is the  Deployment Server service account password -all the rest of the data needed by the installer will be discovered.

So, the command line is simply,

msiexec /i imageinvoker_v3.0.0.0.msi MYPASSWORD="password" /qn

 

1.4 Configuring PXE Automation Images

Now that the ImageInvoker service is up and running, the it's ready to accept requests from your automation environments. However, in order to put in place the automation startup scripts required by ImageInvoker, we need to regenerate our Linux and WinPE PXE automation images.

Regenerating your PXE images performs a complete rebuild of your automation environment, combining the most current automation files and drivers with your customisations. Specifically, the ImageInvoker installation has copied a shellscript called menu.sh into the Bootwiz linux folder hierarchy, and similarly a menu.bat into the Bootwiz WinPE folder hierachy.  The regeneration process will update the automation filesystems with these files. For Linux, this will be quick as the image is fairly small -about 15MB. However when  WinPE regenerates, you'll probably want to go for a coffee.

  1. Open the PXE Configuration Utility
  2. In the Boot Menu tab, locate the Regenerate Boot Images frame. Tick the automation environment you'd like to load up ImageInvoker in, and  click Regenerate. In the screenshot below shows both Linux and WinPE being made ImageInvoker 'aware'.

  3. Once the regeneration is complete, click Save. This will push the regenerated automation images down to the PXE Server(s). 

 

1.5 Tagging Jobs for the Automation Portal

Configuring jobs so that they can be accessed through the portal in the imaging menu is simple -just rename them so that they contain the  (MI) substring. This substring marks out the job as being destined for the portal as a  Menu Item. Using Deployment Server's own interface for the portal in this way means that anyone accessing the Deployment Console  is instantly aware should any of the jobs they are working on be exposed portal-side. 

The figure below shows an example of a job hierachy before and after this menu item tagging process.

II-Configure5.JPG

Above I have targeted three objects for the Image Menu,

  • The job DoD Disk Wipe
    This is an example of a single job being tagged for the portal. The (MI) string could be present anywhere in the name, but for clarity it's been appended to the job name. In the portal this will be exposed as "DoD Disk Wipe"
     
  • The folder Deploy Public Access Computer
    This is an example of tagging an entire folder of jobs for the portal. In the portal, this will be exposed by default as the single item "Deploy Public Access Computer"
     
  • The folder Deploy Staff Computer
    Another example of tagging an entire folder of jobs for the portal. In the portal this will be exposed by default as the single item "Deploy Staff Computer (MI)".

The important point to note is that when you tag folders as menu items, not only are all the jobs within the folder  processed, but subfolders are processed too. This means you don't need to change the way you organise your jobs in order to use the menu. Also, remember the tag (MI) can be anywhere in the folder or job name.
 

1.6 Committing Jobs To The Portal

To commit these jobs to the menu do the following,
  1. In the Deployment Console, from the menu-bar select Tools -> Altiris Tools
  2. Select  "ImageInvoker: Create Automation Client Menu" from the tools list
     
  3. To get the menu up and running click "Re-generate Client Menu". Note that the time to enter the Client Menu Wizard is set to 5 seconds.

    II2-ConfigUtil3.JPG

     

  4. A popup box should then appear detailing all the changes which are about to be saved to the menu,
    II2-ConfigUtil2.JPG

    Here we can see our three menu items (corresponding to the job hierachy example above). Two of the menu items are in fact folders of jobs, whilst the Wipe Disk item is a single job. Click 'Yes' to commit the menu.

As the Menu Creator tool writes a refreshed menu file for your clients, remember to run this each time you want your job and folder name changes with the (MI) tag to sync down to your clients. Menu Creator also accepts the silent switch (/S) which means that you could even schedule a daily task to automatically re-write the menu for the current job hierarchy if you wished. 

 

2. Imaging Computers With ImageInvoker

2.1 Imaging Computers already known to DS


To illustrate how ImageInvoker works, in what follows we'll  PXE boot a known computer into the Linux and WinPE automation environments so we can see how jobs are invoked.

 

  1. The 5 Second Countdown

    In both Linux and WinPE, the normal boot sequence is interrupted for 5 seconds while you are offered the option to activate ImageInvoker. After these 5 seconds have elapsed, the normal boot process will continue. However, if you press 'i' within these 5 seconds, the normal automation loading sequence will pause, and ImageInvoker loaded up. Figures (a) and (b)  below shows the how this on both Linux and WinPE respectively.

    Press 'i' before the countdown has finished to invoke the ImageInvoker's wizard.

  2. The Image Invoker Portal (aka the Client  Menu Wizard)

    Now you'll find yourself presented with the first screen of the wizard -"Select Deployment Option". Note that all the menu items have been named as the folder and job names, but excluding the (MI) tags we used to mark them as menu items. I fancy making this computer a public access machine. Figures (a) and (b)  below shows the how this on both Linux and WinPE respectively, where i've used the  arrow keys to move down to the  "Deploy Public Access Computer" option.


    Hit 'Enter' to select the highlighted menu item

  3. Computer Name Override

    This stage of the interface provides the opportunity to change the computer's name. This computer is currently known to Deployment Server as 'VMWARE-564D04FD' -a virtual machine. We can change this here, but for now let's just hit enter tomove to the next screen.


     

  4. The Job Scheduler
    After hitting enter here, behind the scenes the job(s) corresponding to the selected menu item will be scheduled. While the job scheduling is in progress, you'll see as per the screens below,


     

  5. Job Scheduler Complete
    After a few moments, if the job scheduling has been successful you'll be presented with the following screen. And after a few moments, the agent will load and imaging will begin. 


If you take a look in the console you'll now find the jobs scheduled just as if you had dragged'n'dropped them there  yourself. Well, almost. The one minor exception that they have been scheduled for the beginning of the day. This scheduling time is the only difference between scheduling jobs with ImageInvoker and performing the scheduling manually by drag'n'drop.


One feature of ImageInvoker to note, is that in order for these scheduled jobs to be instantly scheduled, ImageInvoker will delete any jobs pending. So if you find you've put on the wrong image job, don't panic. Just reload the menu, and select the correct menu item and the previously scheduled jobs will be magicked away..

 

2.2. Imaging Computers unknown to DS

As I mentioned above, there is little difference between imaging new and existing machines with ImageInvoker.  When new computers are booted into the portal and they are not known to DS,  the Computer Name Override screen is the only screen that changes, and this is just to emphasise that the computer isn't in the database. Example I show screenshots for the Computer Name Override screen in both Linux(a) and WinPE(b)

 

In this scenario, as the Deployment Console can't find the computer in the database,  ImageInvoker knows it must create a computer object for it. By default, the name of the computer object is set to the computer's serial number (to ensure uniqueness), but you can of course override this and generally should. The rest of the process is exactly the same as for deploying existing machines, as above in section 2.1

Deploying new computers has never been easier.

3. Securing ImageInvoker with a Password

The mechanism for delivering automation (and therefore ImageInvoker) in these focuses on PXE. There however are certainly scenarios where ImageInvoker would work very nicely on automation CDs and Flash Drives, and creating these directly with BootDisk Creator will works just fine.   One issue which emerges particularly in the PXE scenario, is that anyone who PXE boots will by default have access to the ImageInvoker client portal. 

If you don't want  curious users re-imaging their computers by mistake, its best to password protect ImageInvoker so that anyone interrupting the automation boot sequence, attempting to load ImageInvoker, is prompted to enter a password before being able to continue.

3.1 Setting a Menu-Protect Password

To enable the password lock do the following,

  1. In the Deployment Console, from the menu-bar select Tools -> Altiris Tools
  2. Select  "ImageInvoker: Create Automation Client Menu" from the tools list
     
  3. Enable the client menu password by clicking the check-box

    II2-ConfigUtil5.JPG

     

  4. A password dialog box will then appear. Enter in your password and click OK

    II2-password1.JPG



     
  5. Now click Re-generate Client Menu.  The pop-up box similar that below will appear. The important point to note is that the first option should now read "Client Menu password: Enabled (updated)"

    II2-password2.JPG



Once these changes are committed, all clients trying to use access ImageInvoker will be prompted for this password. Three login attempts are permitted before portal access it denied.

4. Timeout Options with ImageInvoker

As we've seen in section 1.6, there is an option within the ImageInvoker Configuration Utility  to configure a timeout window within which entering the Client portal is permitted. Once this time elapses without user interruption,  the automation boot process will simply continue as if ImageInvoker was not installed. This gives you the option of loading up ImageInvoker, should you wish it.

By default, a 5 second timeout window is configured. This means that the automation sequence is only delayed 5 seconds should you choose not to load ImageInvoker. This timeout can be tuned for your environment.

In some situations, it can also be useful to configure the client portal to load without a timeout,  and wait indefinently until the user to enters a password and/or select a deployment option. This is particularly useful when imaging using automation USB sticks and  CDs. If you are using these media the chances are you are intending to image a computer, and therefore the objective of loading automation will be to load ImageInvoker. When WinPE is being loaded in particular, the 5-second window can also often be missed, which is frustrating.
  
The way to resolve this is to set a timeout of zero. This can be done globally using the ImageInvoker Configuration Utility, or by using a local override on the command-line when calling ImageInvoker


.

4.1 Global Configuration of Timeout

To change the default timeout  do the following,

 

  1. In the Deployment Console, from the menu-bar select Tools -> Altiris Tools
  2. Select  "ImageInvoker: Create Automation Client Menu" from the tools list
     
  3. Set a new Timeout by selecting the timeout textbox, and entering your new value,



    In the above example, I've chosen to increase the timeout from the default value of 5, to 10.
     
  4. Click "Re-generate Client Menu", and click "Yes" to accept the changes.
     

4.2 Local Timeout Override

We can override the global 10 second timeout configured above on a case-by-case basis, by changing the command-line that calls the ImageInvoker client. This is useful for example when requiring a zero timeout for those  automation CDs and flash drives.  In some environments, you might even want to create specific PXE boot options which are only ever selected manually, and  force-load ImageInvoker.

4.2.1 Implementing Override in Linux


Here we will cover how to override the global defaults to timeouts under Linux. Specifically, we wlll in what follows set a timeout of 0 in a Linux PXE image so that when this Linux option is PXE booted, ImageInvoker will load and wait indefinently for user input.
  1. Load the Linux image in BootDisk Creator.
    If the Linux image is a PXE image, just select the option to "Edit Boot Image" in the PXE Configuration Utility. When you load up the image in Bootdisk Creator, you'll be taken straight to Step 8, which allows you to edit the configuration.

    In the left-hand pane which allows you to navigate through the files, browse to menu.sh under "Linux Additional Files -> startup" 



     

  2. Create a custom menu.sh in the Linux configuration Folder
    Right-Click menu.sh and select copy from the context menu. Right-Click the startup folder in you Linux configuration and select  paste. This will provides a local copy of menu.sh which we can then customise so that it is specific to this configuration.  This will override the 'global' version in the "Linux Additional Files" folder.

    In the right-hand pane which displays the contents of menu.sh, scroll all the way to the right, and add after the text "imaging_menu" the timeout override text "-t 0" as shown below. This will set a timeout of 0.
     

     
  3. Compile the automation environment
    Click 'Next' to begin compiling the Linux automation environment. When prompted to save changes to menu.sh, click "Yes". Note that when editing a PXE boot image, don't forget to save this down to the PXE server when returned to the PXE Configuration Utility.
     

4.2.2 Implementing the Override in WinPE

Here we will cover how to override the global defaults to timeouts under WinPE. Specifically, we wlll in what follows set a timeout of 0 in a WinPE PXE image so that when this WinE option is PXE booted, ImageInvoker will load and wait indefinently for user input.

  1. Load the WinPE Image in BootDisk Creator
    If the WinPE image is a PXE image, just select the option to "Edit Boot Image" in the PXE Configuration Utility When you load up the image in Bootdisk Creator, you'll be taken straight to Step 9, which allows you to edit the configuration.


    In the left-hand pane which allows you to navigate through the files, browse to menu.bat under "WinPE Additional Files -> startup" (it doesn't matter if you are using WinPE 1.6 or 2.1)

  2. Create a custom menu.bat in the WinPE configuration folder
    Right-Click menu.bat  from the context menu. Right-Click the startup folder in you WinPE configuration and select   This will provides a local copy of menu.bat which we can then customise to be specific to this configuration. This will override the 'global' version in the "WinPE Additional Files" folder.


    In the right-hand pane which displays the contents of menu.bat, scroll all the way to the right, and add after the text "WinPE_Client.exe" the timeout override text "/t 0" as shown below. This will set a timeout of 0.

  3. Compile the Automation Environment
    Click 'Next'  to begin compiling the WinPE automation environment. When prompted to save changes to menu.bat, click "Yes". Note that when editing a PXE boot image, don't forget to save this down to the PXE server when returned to the PXE Configuration Utility

5. Overriding Portal Menu Item Names

If you've got to here, ImageInvoker should be working well for you, but you've perhaps got a niggle. Sometimes, you don't want the job name in the portal to match the name given in the Deployment Console. Perhaps you have a very technical naming convention, which more suits your internal build process rather than human intuition. ImageInvoker has an menu text override option to cater for this.

5.1 Overriding Job Names

If you don't want to use the job name as the menu text for a job, the override is to set a description for the job. Once you've set a description, run the ImageInvoker Menu Creator from the Altiris Tools menu to refresh the client menu file.

 

II-Job2.JPG

Figure showing how menu item names can be overridden using the job description field

 

5.2 Overriding Job Folder Names

As there is no description field which can be added to folders, the mechanism to override job folder names is to create a dummy job to detail the override data.

  • Create a job with the name (MI) and place it in the root of the menu item folder
  • Put in the description field your menu item text
  • Add to the currently empty job a single run script task
  • In the Run This Script box, enter in the text REM MenuItem and ensure the job is configured to run in Windows
  • In the Script Run Location inset, configure the script to run on the Deployment Server, and uncheck the box to Run when the Agent is Connected

This job therefore does absolutely nothing, and will not impact on your deployments. Its sole purpose is to provide this mechanism to give you a menu item name. Re-run the ImageInvoker Menu Creator from the Altiris Tools menu to refresh the client menu file.

II-Job3.JPG
 

 

6. Troubleshooting ImageInvoker

If ImageInvoker is not behaving as expected, try some of the troubleshooting tips below. If these fail, drop me a line on connect and I'll see what I can do.

6.1 Checking the Installation

There will always be situations where the Installer hasn't behaved as I anticipated. If you have problems with the install, its likely that ImageInvoker will not have installed properly. The install does the following things,

  1. Locates the express share, and Deployment Server service account
  2. Creates the ImageInvoker folder .\express\ImageInvoker
  3. Copies  menu.sh to .\express\Bootwiz\Include\LINUX\SHARED\startup
  4. Copies  menu.bat to .\express\Bootwiz\Include\WinPE\SHARED\startup
  5. Copies menu.bat to .\express\Bootwiz\Include\WinPE2\SHARED\startup
  6. Installs and starts the ImageInvoker service
  7. Installs 2 custom SQL functions called  dbo.Custom_IsFolderwithinFolder & dbo.Custom_IsEventwithinFolder


So the first port of call is to check all the above is in place, and if it hasn't let me know.

Next I'd check that the regeneration of the automation environments has worked as planned. In Linux  automation confirm that the menu file /startup/menu.sh is present. For WinPE, this location is X:\startup\menu.bat. If these files aren't present, try regenerating your linux environment again.
 

6.2 The Log & Comms Files

For troubleshooting, ImageInvoker logs to three locations:

  1. C:\ImageInvoker.log
    This is for critical service errors such as failure to locate the deployment share
     

  2. .\eXpress\ImageInvoker\Logs
    Here you can find the runtime logs of  the ImageInvoker service and the Menu Configuration Utility. The log files are datestamped.

ImageInvoker Comms are stored under,

  1. .\eXpress\temp\ImageInvoker_In
    This is where the client-server comms files are written
     
  2. .\eXpress\temp\ImageInvoker_Good
    This is where successfully processed client communications are moved to
     
  3. .\eXpress\temp\ImageInvoker_In
    This is where client communications which failed to process are moved to
     

If you have problems, and want me to help you troubleshoot, zip up the logs above email them across to me.

6.3 Uninstalling ImageInvoker

ImageInvoker should uninstall cleanly using Add/Remove program. Uninstalling will remove the service, the files and ImageInvoker menu creation item from the Altiris Tools menu. The only items left on your system will be the logs, and two custom SQL functions in the eXpress database.


 

7. Version 0.3 Notes

 

7.1 Install Requirements

ImageInvoker's only software requirement is that Altiris Deployment Version 6.9 is installed. I've tested ImageInvoker on DS the following 6.9 Service Packs,

  • DS6.9 SP2
  • DS6.9 SP3
  • DS6.9 SP4

I see no reason why you couldn't use ImageInvoker with previous DS6.9 releases, but your mileage will vary. Feel free to respond on this connect thread with success stories for these earlier releases.

The footprint of ImageInvoker on the Deployment Server is designed to be very small,

  • Disk Utiliisation 4MB
  • RAM: 10MB
  • CPU -negligible

              

7.2 Enhancement Requests

I've received various enhancement requests since releasing the first prototype of ImageInvoker to Connect. As the amount of time I could spend developing ImageInvoker is limited (I have a day job!), I can't give any firm commitments as to timecales. I tend to prioritise by considering the enhancement usefulness and ease of implementation.

Pending Enhancements (in no particular order)

  1. Ability to narrow down menu-item scavenging to particular folder hierachies (actioned v0.2, but bug found)
  2. Factoring into ImageInvoker remote console usage
  3. Log-file cleanup options
  4. Auto-generation of unknown computer names
  5. Password protection through Active Directory 
  6. Make Menu wizard text user configurable
  7. Deployment Server 7.x support
  8. Ensure queries are case accurate for case-sensitive collations in SQL Server
  9. Implement mechanism for a sub menu system

 

History of Actioned Enhancements

  1. Password protection of the client menu interface (using MD5 checksums) (actioned for v0.2)
  2. Ability to change the menu timeout (actioned for v0.3)
  3. Ability to silently install the ImageInvoker MSI (actioned for v0.2)
  4. Automate the addition of the menu.sh shell script to Linux Automation (actioned for v0.2)
  5. Set log datestamping to ISO format (YYYY-MM-DD) (actioned for v0.3)
  6. WinPE Support (actioned for v0.3)

Note that DOS support is no longer being considered for ImageInvoker as Symantec are not moving forward with DOS automation the 7.x branch of Deployment Server.



7.3 Known Issues

13-01-2010
ImageInvoker has a SearchRoot bug. The Menu's are built taking the new scope into account, but the ImageInvoker ignores this parameter in this build. On rethinking the logic for searchroot, this needs a re-write rather than a patch. I'll work on this once the WinPE work is complete. Destined for a later version of 0.3.
 


7.4 FAQ

Q: I am worried that this product is free and doesn't have any official support. I don't want to rely on it now, and then find it will no longer be developed.
A: I use this too much myself now not to develop it. ;-)

Q: My automation images have the keyboard and mouse lock enabled. Can I still use imageinvoker?
A: Yes. The keyboard/mouse lock feature is only enforced once ImageInvoker exits.  This applies to ImageInvoker clients in both Linux and WinPE.
 
Q: I exclusively use DOS automation Why isnt this supported?
A: Unfortunately, DOS has been de-emphasised for some time now in Deployment Server 6.9, and its not even available as an automation option in the 7.x. Although I personally think DOS is great, it is not really supported any more, either by Microsoft of Symantec. I do not therefore intend on writing an ImageInvoker client for this OS.

Q: I've tried this on Deployment Server 7.1 and it does not work. Why not?
 A: The engine for Deployment Server 7 is  tied to Notification Server, and as such ImageInvoker requires a complete re-write to support it. This is a lot of work, and as Symantec are also working on various portals, I am also waiting to see what emerges on the Symantec's front. 
 
 

License:

Altiris EULA
By downloading this software, you agree to the terms and conditions in the Altiris End User License Agreement

 

Support:

 

User-contributed tools on the Connect are not supported by Altiris Technical Support. If you have questions about a tool, please communicate directly with the author by visiting their profile page and clicking the 'contact' tab.


 

Statistics
0 Favorited
0 Views
0 Files
0 Shares
0 Downloads

Tags and Keywords

Comments

Jun 06, 2011 10:08 AM

Thanks

Jun 06, 2011 10:01 AM

Is there a new download out or what do I need to do. I'm currently running version 0.3.0.1. Attached is a screenshot.

 

Jun 06, 2011 09:23 AM

Hi Morten,

Craig just flagged this up with me too. Will create a new MSI build and post to connect in a couple of days.

Kind Regards,
Ian./

 

[Edit] I should add for anyone who is confused that ImageInvoker is a customer contribution to Connect and is in no way supported by Symantec or the Connect Community. I added the client expiry to ensure people upgraded so I was only ever supporting one version.

This Linux expiry problem is in error -I intended for this v0.3 release to be the final one in this form and as such intended to release clients without expiry code paths. Obviously a mistake was made with the Linux client, and my apologies for that.

Jun 06, 2011 09:03 AM

Hi.

Running Linux Managed were getting a message that ImageInvoker 0.3 has expired and that we should download the latest version from Symantech Connect.  Is there a newer version or is there a workaround for this problem? I read that the previous version (0.2) would self-expire 6. June 2010, seems strange that the same thing happends with 0.3 just a year later.

In WinPe Managed were not getting the expired message. We would like to still be able to use Linux in many cases because its faster to load and uses less bandwith.

Best reggards

Morten

Jun 03, 2011 03:40 AM

Sorry.. a Private Message. Just click on my user link and send me an email. We can then take this offline and I'll get your logs and see what's up.

Kind Regards,
Ian./ 

Jun 03, 2011 02:28 AM

My apologies, what do you mean by PM?

Jun 03, 2011 01:44 AM

Looks like my gut feeling was wrong! Your collation is case insensitive (see below).

 

Could you zip up the ImageInvoker folder and drop me a PM?

Kind Regards,
Ian./

________________________________________________

Latin1_General_CI_AS
Latin1-General, case-insensitive, accent-sensitive, kanatype-insensitive, width-insensitive

SQL_Latin1_General_CP1_CI_AS
Latin1-General, case-insensitive,accent-sensitive, kanatype-insensitive, width-insensitive for Unicode Data, SQL Server Sort Order 52 on Code Page 1252 for non-Unicode Data

Jun 02, 2011 09:36 PM

As below

If so, how do I change this?

Thanks Ian

Jun 02, 2011 03:46 AM

Hi,

My gut feeling here is that you are running a SQL collation which is case sensitive. What collation are you using?

My collation is,

Jun 02, 2011 03:00 AM

I get the following error when I attempt to Re-generate Client Menu for the first time after the install

Running DS 6.9 SP5 / installing v 0.3.0.1

Found this http://support.microsoft.com/kb/222664 but am unable to apply MS resolution

Any suggestions?

Thanks!

May 13, 2011 01:16 PM

I am trying to reinstall this on a new 2008 R2 SP1 Server and am getting the message,

 

The Deployment Server Path cannot be found. 

 

64bit problem?

 

Also, I am trying to reinstall because randomly the ImageInvoker service isnt starting. no logs being created.

 

EDIT, digging through the Event Viewer brings up EventID 104 from ImageInvoker but no further information.

Further Edits:

5/13/2011 12:54:24 PM - ERROR: Cannot locate Deployment Server Install Dir from Registry. Exiting Image_Invoker

Third Edit: Keeping you in my trouble shooting loop ;)   I wasnt having any issues with imageinvoker prior and have had it installed for about  weeks, randomly this happeneed. Anyway created some dumm reg entries in HKLK\Software\Altiris\express for InstallDir and still get that error in the log. Any other registry entries it is looking for?

 

Final Edit: Looks like for some reason either there are no Registry entries or they never existed in the Wow6432Node, created the registry entries and everything looks good. Leave all my notes here in case anyone else has issues.

Apr 15, 2011 03:36 PM

I think we will be Ok with that number.

 

Thanks!

Apr 15, 2011 03:26 PM

I think in the 0.3 code the limit will be 255 due to the 8-bit integer used when indexing. Will that be a problem?

Apr 15, 2011 12:47 PM

Ian,

We are in the process of implementing ImageInvoker.  I was training one of our techs this morning, and he asked me "how many menu items will it handle?"

I looked through this post but couldn't find an answer.  Can you tell me what it might be?

Thanks,

Wolfgang

Mar 09, 2011 01:27 PM

Found the problem to my menu not loading correctly issue. It was caused by having the (MI) job in a folder used by a additional add-on solutioon called HIIS.

Well when I try to use the (MI) structure in other DS folders or the root, the menu system call during WINPE boot works correctly .

Thanks again and look forward to showing this to others,

 Anthony

Mar 09, 2011 01:21 PM

Hi Anthony,

Ahh... Colons are used as delimiters in the menu_options file. As you've got colons in your menu item names, this is throwing the parser.

Remove the colons from your folder and job names to resolve the issue.

I'll see if I can rectify this for the next version.

Kind Regards,
Ian./

Mar 09, 2011 10:48 AM

You are correct about the menu not loading correctly. I was looking at your screen shots and when I create the menu items using the imageinvoker configuration tool, I don't see the configured menu item drop down listing. You can see the menu ini file is created, but it doesn't seemed to be called on after that. Any ideas?

 

thanks,

 Anthony

Mar 09, 2011 09:34 AM

Here is the zipped imageinvoker file and just to let you know I did create a menu with two choices. The menu creation page seems to feel different then before which could be that I installed the older 2.0 version before the 3.0 version. Can't really be sure if I am right or not but I really apreciate the help.

thanks,

 Anthony

Mar 08, 2011 05:29 PM

Haven't seen that error. Could you zip up your imageinvoker folder and email it to me? And confirm that you actually have some menu-items in your menu...as the subscript out of range might be that you haven't got any menu items any more....

Mar 08, 2011 04:29 PM

Ok Ian one more question. Have you ever seen the "Run-time error '9'" Subscript out of range"  with the winpe_client? I am trying to get this to run again and eveytime with my current WinPE 3 build I am getting this message. The logs for the Winpe Client say this:

3/8/2011 1:15:19 PM - ParseMenuOptions(): In
3/8/2011 1:15:19 PM -   Found Timeout: 5
3/8/2011 1:15:19 PM - Parsed 3 lines in menu_options.ini
3/8/2011 1:15:19 PM - ParseMenuOptions(): Leaving ParseMenuOptions
3/8/2011 1:15:20 PM - Computer loading WinPE Client Menu Wizard,
3/8/2011 1:15:20 PM -   UUID: BFB6E660-5A06-11DB-822E-A0A8DFD6EA06
3/8/2011 1:15:20 PM -   Serial Number: 0037205126
3/8/2011 1:15:20 PM -   Mac Address: 001676AEBA99

3/8/2011 1:15:20 PM - FORM_LOAD: Going straight to Menu Form, as no password set and timeout is zero.
3/8/2011 1:15:21 PM - INFO: Populating listbox with menu items..

 

I am thinking it is something that is missing in my Winpe build which I did include the HTA option. So strange that I am having all this issues when the first time I tried this everything worked great. Note to self never fix other problems on the DS after this is working correctly. Thanks for any input on this issue. If nothing don't worry I will keep trying myself,

 Thanks,

 Anthony

Mar 03, 2011 12:34 PM

Awesome.  That is a great start.  Please don't think I am pointing to your program smiley as it is awesome for making the jobs a WHOLE BUNCH easier for our helpdesk people.   Awesome product!  I'd really like to see this more incorpated by Symantec themselves..Please keep up the good work..

Mar 03, 2011 12:21 PM

Hi Taz-man,

ImageInvoker is purely a portal for scheduling DS jobs. If works by assuming the target computer is the PC you are accessing the menu from, and then schedules the jobs as selected in the interface.

With that in mind, I suspect that if you replicated the process not using ImageInvoker, you'd get the same result. Does that make sense?

Verify for yourself that this is the case, and then fire off a message in the DS forums for help. Detail how you created the image, and how you are deploying it in the message to that others can see your process.

Kind Regards,
Ian./

Mar 03, 2011 12:09 PM

We are having an issue with Windows 7 when using Imageinvoker.  The problem is that when ANY machine after the first one is imaged and added to the domain users can't login...

Here is what we are doing::

We load the machine via pxe and it pops up with imageinvoker we input the new machine name and deploy the image to the machine (the image is a .gho image).

The machine reboots after the image is deployed

We then log into the machine (it is in a workgroup at this point) and verify it took the machine name. 

Once we see it has the correct machine name we add it to the domain...

We then start the next machine image...

Anything after the first machine that is imaged won't let users in the domain log into it.  (Error is: user profile service service failed to logon)

If we then just remove the machine from the domain and it it back it works fine......

This tells me it is the old SID problem (recall newsid or sidgen).  Can someone please tell me how to resolve the problem as I thought imageinvoker was basically running a newsid and/or sidgen after the machine is imaged.  Thanks!!

Feb 28, 2011 05:26 PM

I'd rather you didn't rebuild for that ;-)

I'll give you a PM and we'll take a deeper look.

Kind Regards,
Ian./

Feb 28, 2011 05:22 PM

You know I thought the same thing and looked at the connection which is there. I even tried a new connection with the exact name it was looking for. So maybe it is time to rebuild the entire DS then.

 

thanks for the fast reponse,

  Anthony

Feb 28, 2011 04:46 PM

Hi Anthony,

The installer will try to use the 'Altiris eXpress Database' ODBC connection -this means both on-box and off-box scenarios are taken care of. In the changes you made, was this connection name altered?

Kind Regards,
Ian./

Feb 28, 2011 04:04 PM

has anyone else had problems with the install not connecting to the SQL server to create the two sql functions? I have a off box SQL server and I was trying to repair an issue with the DS. So I uninstalled imageinvoker and noticed that it left behind some folders and the two SQL functions. After cleaning those folders and the two SQL functions , the imageinvoker  3.0.1 install won't add these two functions back. I am getting in error in the imageMenu_creator telling me that it failed to connect ot the Altiris Express Database.

 

2/28/2011 11:28:54 AM - OKBtnClick(): In
2/28/2011 11:28:54 AM - Create_Menu_ini: In Subroutine.
2/28/2011 11:28:54 AM -   Create_Menu_ini(): Deleted pre-existing menu-options.tmp
2/28/2011 11:28:54 AM -   Create_Menu_ini(): Opened filehandle to menu-options.tmp
2/28/2011 11:28:54 AM -   Create_Menu_ini(): Testing connection to Altiris eXpress Database
2/28/2011 11:28:54 AM -   Create_Menu_ini(): FAILED to connect to the Altiris Express database using connection name 'Altiris eXpress Database'
2/28/2011 11:28:55 AM - Create_Menu_ini: Leaving Subroutine.

Any help would be great!

 thanks,

 Anthony

Feb 24, 2011 03:02 PM

Hi Monger,

Zip up the ImageInvoker folder and drop me a PM.

Feb 24, 2011 11:55 AM

Having some issues and hoping someone could shed some light on this issue I am having.  I am running Image Invoker and when I type in my password and chose the image I want i keep getting this error:

Image Invoker Client Imaging Interface (Version 1.9, July 2010) by Ian

Server Error

ERR:  Unexpected Comms.  Please notify the Altiris Administrator.  In the meantime

Program will abort.  Press Enter to reboot.

                                               OK

 

Any help is greatly appreciated...

Feb 22, 2011 01:07 PM

Everything has been working great but just recently I have started to get an error.

ERR: Error in menu_options.ini -could not find the folder "Folder Name"

Nothing should have changed. I regenereated the menus and even tried to change the folder name and regenerate again. Still the same error. Is there a general log file? Are you using a sql query or the axsched?

 

EDIT: Looks like the other folders were still working just the one, I created a new one and copied all the jobs in and everything is working now. Could be a weird bug.

Feb 08, 2011 01:21 PM

Hi,

Yep -there have been some odd issues with the last installer. Unfortunately, due to my tight deadline for releasing the AD integrated piece, so I haven't had the time to fix the 0.3 MSI.

To your multicast argument -I don't think you are wrong at all. Your tasks all activate at about the same time, so the engine should trigger the imaging session as multicast.

Good luck for the rollout!

Feb 08, 2011 10:45 AM

Sir, I salute and generally bow down before you.

This is EXACTLY what DS has been missing, and will be a blummin' Godsend when we receive our 1000+ new PCs in the Summer - and it pretty much just works out of the box. Fabulous!!


In case anyone's remotely interested, I ran into a couple of tiny changes from your notes - presumably because I'm on a different SP from yourself.

I installed this on our DS 6.9 (build 177).

Like others, the MSI initially failed because of the missing InstallDir registry key. I populated that, and off it went.

The Tools\Altiris Tools option isn't showing on my DS Console (on the server), but I just ran the ImageMenu_Creator.exe from express\ImageInvoker, selected re-generate and Yes. I haven't rebooted the server or anything so perhaps it'll appear afterwards?

With regard to the change to the PE menu, although menu.bat was generated it wasn't running. I took this to be because our PE disks have an entry in the startup folder where we map a drive to our Package Servers on each site via a BAT stored on the express share. So I just edited that BAT with the syntax from the documentation (start /wait %ALTIRIS_SHARE%\ImageInvoker\WinPE\WinPE_Client.exe)

And that was pretty much it, to be honest.


I have one question - and I apologise for not being able to test this myself but I don't have 5 PCs to rebuild just now.

Say I get in 5 or more new PCs and I want to deploy an image to them via multicast (5 being our minimum number for Multicast)..

Presumably selecting an image job via ImageInvoker will just cause it to kick off right away using Unicast.

I'm assuming there isn't a way around this since the whole point is to kickstart a job right away.

Do you know if it would be feasible to have something like this:

[folder called New PC deploy] (MI)

New Job inside folder called 1.Pause it

Task = Run Script (run in WinPE), syntax = PAUSE

New Job inside folder called 2. Deploy Image

Task = (rest of job to deploy the image etc etc)


If I then made the folder the II "job" and ran that on the 5+ PCs, they would all sit at PAUSE. If I then walked back round and hit a key they'd move onto the next job which is the imaging one.

Does that sound feasible?


Or am I utterly wrong? :)

Feb 01, 2011 11:37 AM

That makes great sense.  Thanks!

   Sorry for all the questions.  I'll post another one in a few.

Feb 01, 2011 10:52 AM

This is by design.

For (MI) tagged jobs, the description field acts as a override for the name presented in the menu. This allows you to have a simple name presented in ImageInvoker, whilst retaining a more technical name in the console.

Feb 01, 2011 10:42 AM

Ok I took a couple of jobs and added the (MI) to them  then ran the ImageMenu_Creator and as you see via the enclosed it does not show the right jobs.  What could be the issue? This is now a brand new install of DS6.9 (sp4) and ImageInvoker.  I understand from above that this is supposed to work well with sp4.  I apologize ahead of time as this is new to our environment and the hope was to be able to use it for "primetime" for the desktop people. 

Feb 01, 2011 10:25 AM

Solved by Re-installing...

Jan 27, 2011 12:28 PM

Someone else reported this problem, and I think another regeneration of the PXE images resolved it. Before you try a regenerate, could you zip up the ImageInvoker folder and email it to me?

It would be interesting to see that the folder structure looks like, and how that tallies with the logs....

Drop me a PM? 

Jan 27, 2011 12:25 PM

Hi Wolfgang,

Glad you like it. Remember my reward for all this work comes from your virtual thumbs -so don't forget to use them. Using the "Thumbs Up" feature also helps PMs see what people are finding useful. This helps make the case for having this functionality native in future releases of NS7.

Kind Regards,
Ian./

Jan 27, 2011 07:59 AM

Installed Imageinvoker.

Regenerated the pxe's

created the menu "Tools, Altiris Tools, ImageInvoker.."

and now when I try to PXE (using winpe 2.1) I get an Active X Component error?

This is on DS 6.9 with SP4..Help, please?

Jan 26, 2011 07:47 PM

I'm certainly in my infancy with Server 2008.  They have had me locked in the Altiris closet for the past 2 years!  Out of 300 or so servers we now have about 15 of them, six of which are under my area of responsibility.

Yesterday, I was able to play around with ImageInvoker and test a number of different things.   Very nice utility!  I used both WinPE and Linux and must say that I got far enough to look further at Linux.  WinPE is just plain slow to load and you couldn't fill a thimble with what I know about Linux.  Since I have to get a new image done in the next 45 days, I am going to try to roll out a Linux preboot, ImageInvoker, and the new image at the same time.

I'll let you know what I find out about the registry entries, but definitely a nice tool.

Wolfgang

Jan 25, 2011 11:50 AM

Hi Wolfgang, that is interesting that your other servers were for some reason missing the wow6432node registry reflector. This key should be automatically generated when DS installs. My experience on x64 I admit is currently somewhat limited though.

If you ever figure this out, I'd be interested to hear what caused this.

Kind Regards,
Ian./

 

 

Jan 25, 2011 11:23 AM

Ian,

 

Interestingly enough, I installed DS on a server that has been untouched by any configuration, etc.  Everything worked fine!  So I went to the registry key you gave me and nothing was there.  Being curious as to how it would install without this key populated, I did a lot of digging and found HKLM\Software\wow6432node\altiris\express with all of the information in it.  So I went back to my test server, populated that key with everything and it installed!  Very strange indeed.

 

I'm going to have to put it through some rigourous testing to see if it is a viable product for our environment, but I do have it up and running.

 

Thanks,

Wolfgang

Jan 21, 2011 05:05 PM

I often tell people that if they will let me near the Hope Diamond for a moment, I will find the flaw in it!

 

Production is Windows 2008 Server 64 bit.

 

Symantec-Test is Windows 2003 Server 64 bit.

 

We have a VM box that I sent up for Historical Data when we moved servers around last September and it is Windows 2003 Standard Edition.  Oddly enough it has the registry keys that look the moste like yours (i.e. PXE Config) where the others aren't even close. 

 

None of the 3 have the entries under HKLM\Software\Altiris\Express that you have.

 

Very strange.

 

I have a major Backup Exec implementation looming over me next week, so it may be a few days before I get back on it, but wanted to get you the info on the servers.

 

Thanks!

Jan 21, 2011 04:29 PM

Ian has said he doesn't have access to the Hampton (codename for the ITMS 7.1) codebase and so can't develop anything for it till it's released.  So he's working on adding features to the 6.9 version, to work out the kinks there rather than in the 7.1 version.  He says this will make the ported version more useful, not to mention making the 6.9 version mroe useful for the folks who are staying with DS 6.9 (I almost want to after playing with 7.0 and 7.1 for a while now!)

Jan 21, 2011 04:04 PM

Ian,

How is the work going on the port to DS/ITMS 7.1. Will ImageInvoker be ready for the March 7 release?

Derik

Jan 21, 2011 09:27 AM

Hi,

Here's what this looks like on my DS 6.9SP4 box...

Sorry about the 90 Degree rotation. The picture embedding in Connect isn't too great and rotating the pic is the fastest way to get this up without cropping...

All my installs have this. You can workaround this by creating this key and value yourself,  but it does make wonder!

I did have another report of a user with this issue, but I think they had problems with their setup anyway and after a DS re-install it was fine. But from what you say you've tried the install a few times already, so not immediately sure how to move forward.

Can you think of anything that might be different from the defaults in your setup?

Jan 21, 2011 08:25 AM

Interesting!  That key is not populated.  Server is DS 6.9 SP4. 

Jan 20, 2011 01:08 PM

The installer looks in the registry key HKLM\Software\Altiris\express for the value InstallDir to determine the DS install path. What do you have here?

 

Kind Regards,
Ian./

Jan 20, 2011 12:28 PM

Tried to install it on a few different flavors of Windows Server.  Ultimately, if we get it working it will go a Windows 2008 64 bit server.  I dropped all of the way back to the 2003 svr that is in the attachement.  I looked into the MSI and it appears that the DSPath property isn't getting set, but that's guess a guess.

 

Thanks,

Wolfgang

Jan 20, 2011 11:36 AM

Hi,

Can you let me know a bit about your server, what's installed on it and exactly where you are getting this problem? A screenshot of the error would be great.

Kind Regards,
Ian./

Jan 20, 2011 11:03 AM

I tried to install ImageInvoker as the instructions indicate, but it tells me that it can't find the Deployment Server path cannot be found.

Oct 17, 2010 03:21 PM

Hi Dave,

I understand, but the bad news is this version is frozen. I just don't have the free time to push more into this version. There is so much work looming for the big port to DS7.1 and that occupies what little time I have.

I'll add this to the enhancement request list though, so with luck it will make it into the 7.1 port.

For those who have been wondering about a DS7.1 port of ImageInvoker, this is me saying that yep, it's on the cards now.  Symantec understand the need to expand Initial Deployment to encompass ImageInvoker like functionality, but getting resources attached to this will be tricky.

My aim is to have this ready for ITSM 7.1 when it's released next year.

Kind Regards,
Ian./

Sep 29, 2010 12:30 PM

Is it possible to resize this window..

 

I am going to have quite a few items and would like to resize the window so a user does not have to scroll..

 

Thanks


Dave

Aug 19, 2010 06:54 AM

The AD auth issue is tricky. There are two scenarios,
  1. Client-Side Scheduling
    User logs in with AD credentials into ImageInvoker, selects menu item and client initiates a remote execution of the tasks on the server
     
  2. Server-side Scheduling
    User logs in with AD credentials into ImageInvoker, selects the menu items and then the server schedules the tasks by impersonating the user for the duration of the scheduling.
Client-side scheduling is easier, but it requires a whole hosts of extra firewall ports opened which isn't ideal, and is tricky with Linux.  Server side scheduling is neater, but harder to implement.

With the .NET upgrade, the I think the AD auth will be resolved. But, as usual, no promises on timescales ;-)

Kind  Regards,
Ian./

Aug 18, 2010 03:35 PM

I havent played around with 2) yet but I figure I will just run my scripts after ImageInvoker runs and before the Dagent loads up. I havent tested it sooo I wasnt positive it would work but it sounds like it should in my head ince its just making calls.

3) ahh ya that makes sense, like i thought it wasnt an issue with the script and as on my side. Thats exactly the situation I have going now, so easy fix.

Ya Map drives work in PE but making a call directly to Active Directory using ADSI is supported in vanilla PE. If you try and run a default vbscript or HTA you wont make the connections. I currently have my login prompt Search for accounts in a certain OUs and if they arent it just exits out. As for the Console Security and this, that seems a bit complicated at least for me to see how it would be done but maybe ianatkin has an idea. I currently am tying into my login script and sending an email.

Aug 18, 2010 02:38 PM

I'm right there with ya on wanting custom text.  it's not an urgent need, but it would be nice to have some more stern text on the unknown computer one.  I don't even want to give them an option to leave it as the serial number - I want it named using our naming convention right from the start!  "This computer is unknown to the Altiris DS server.  Provide a name for this machine, using our standard naming convention of ... " and then leave the name field blank.  If ImageInvoker sees a blank name there, it should say so - "hey, i told you to enter a computername!"  :D I'm a nice guy but i hate cleaning up in AD and the DS because of a few lazy techs.

for item 2) above, can't you just hit enter on the hostname field and let your existing scripts do their thing with respect to naming?

for item 3) if your build job uses a different WinPE than the one you chose at the PXE menu (F8), then yes, it will reboot.  I only have one WinPE option at my PXE menu, and when I choose a WinPE job from the ImageInvoker menu, it schedules the job and starts my job within 10 seconds or so, without a reboot.   Same for my linux ones - I only have one Linux PXE option, and as long as I pick a Linux job from ImageInvoker, it will start that job right after ImageInvoker finishes scheduling it.

My existing WinPE environment is apparently already talking to AD just fine, as it's using the network service account to map drives before the agent loads.  I'd just like to be able to use AD credentials in ImageInvoker rather than a single password that, once "lost" or given out, ANYONE can use/abuse.  Also, having AD integration would make sure that even if a teacher or student (who does have valid AD credentials, but isn't in the OU to be allowed to use Altiris) couldn't bumble his/her way into this.  On top of that, it would eliminate the need for sevice account credentials in the ImageInvoker installer, --AND-- the DS console history would show who really assigned the job.  Right now, it's blank, as if "nobody" did it.  You know who "nobody" is - it's that ghost from the Family Circle comics... aka "Not Me" and "I Dunno".  ;)

Aug 18, 2010 10:42 AM

ianatkin, great great update! With the addition of WinPE a world of options have opened for me. I was working on a very tool for the PE enviornment but your server side job assignment takes alot of headache away.

Just some requests, because what kind of user would I be without asking for something!

1) I am definitely still all about customization of the text. Even if it was something along the lines of text files that the EXE pulled on when running, figuring you want to keep your code to you.

2) Not a big deal as I am going to wrap around it in PE but if there were the ability to add in custom scripts at a certain point to take care of some things. Your naming idea is great but if I was able to tie in my in house scripts to find the next available hostname, I could automate the whole process.

3) I havent looked into this at all so it could be something I can fix but if PE boots, schedules the jobs it will then REBOOT even if the deployment uses PE, opposed to if I drop the job in its initial state. Not THAT big of a deal but adds about 5-6 minutes of imaging time rebooting and starting back up.


GREAT GREAT GREAT work, thank you very much!


Gibson99: I have some HTA scripts now that I use to authenticate against AD but you will need to add in the ADSI extras into PE as it wont be able to talk to AD any other way. If you want them I could package them all up and put a link together for you.

ianatkin, I guess as a side note for that, unless theres a way to add in the ADSI files through the additional files in PE, AD authentication will have to rely on your backend WHICH actually might make it easier for you since all OS's can use the services on the server. Just have to find a way to encrypt the credentials.

Aug 12, 2010 06:50 AM

Hi Gibson99,

Good point -now added this to the FAQ, so explicitly says that locking automation (both Linux and WinPE) won't affect the ImageInvoker client.


Aug 12, 2010 01:56 AM

I forgot to ask - This works in WinPE even if you have the KB/Mouse locked, right?  You mentioned that it works in Linux because it loads before the point at which it would lock the keyboard, but no mention of this for the PE side.  I imagine it probably does work before the lock otherwise someone would have said something by now, but it might be worth adding to your release notes/docs in the first post, for slow folks like me.  ;)

Aug 11, 2010 06:02 PM

Hi Gibson99,

A/D integration is something I tried to implement from the outset, but I couldn't get Linux to play ball. So, this now awaits the next version along with text customisations which are also on my wish-list.

As for priorities at the moment top of the list is getting DS7support in the mix, as I suspect now the planned portals aren't going provide this type of imaging solution.

Kind Regards,
Ian./

Aug 11, 2010 01:07 PM

Also add me to the list of people who would like to be able to customize some of the text.  Specifically, I would want to change the text on the computer naming screen to include our naming conventions to help remind people and keep things consistent.  ie:

"Unknown computer: This computer is not currently known to the DS Server.  Please provide a computer name.  Standard desktop naming convention is CAMPUS-ROOM-PC#.  For example: DHS-C104-05 or MHS-X200-T.  Laptop naming convention is.........."

Perhaps these could be contained in an INI or a couple of TXT files which the main exe reads and displays. 

Aug 11, 2010 12:57 PM

This looks like a great tool, Ian!  I would absolutely be using the password protection function in our K-12 school environment.  I already use the DS job search tool you helped with, so I know you can produce quality stuff. 

Now that WinPE is supported, it's actually an option for us.  We used to use Linux automation, but since so many machines we buy simply don't provide Linux NIC drivers (ahem, MARVELL), and we don't feel like hacking them in ourselves, we have migrated to WinPE as of this spring.  Linux is still around for those antiques with less than 512mb of ram since WinPE doesn't behave very well on those, but since you still support Linux, I can still use your tool with those clunkers as well! 

The only thing making me hesitate to use your tool right now is lack of AD integration.  I'm guessing that if someone used this tool to image/wipe a machine, that the history (in ds console) would show that the service account scheduled the job.  That's probably fine for new deployments (new campus, additional machines added to existing campus), but for accountability purposes - especially on existing machines, it would sure be nice to be able to pin responsibility on a given technician.  This would also discourage them giving out user/pass to be able to get into ImageInvoker.  This is an especially big risk if a student got the password - he/she could just go around blowing away computers left and right, or even in the office areas if he found an unattended machine.  Can you imagine if he was able to get to the principal's computers?  Sure, we tell users to save stuff on their network drive or an external device, but not everyone does. 

I think MOST of our techs would probably be OK with just the one general password to get into ImgInv, but I would not be the least bit surprised if certain people on our help desk would just give out the password to users, which of course completely defeats the purpose of HAVING a password.  If it were tied to AD, these problems completely go away, and has the added benefit of adding responsibility/accountability to the process. 

I wish I could help by providing code or something, but I'm just one step above a script kiddie myself, so unfortunately I can't help in that regard.  I'd be more than willing to test a beta though.  My test server is running DS6.9 sp2, and I have a lab of machines I can image at will.

So... where does AD integration stand on your priority list?  I hate to sound like I'm making demands, especially considering the price you charge for this product, so please don't take it that way.  Think of it as an inquiry to see whether you might have time to work on it in the future, with maybe a ballpark estimate on when you think that might happen.  Our summer deployments are pretty much done, so there's no point in me rushing to get this tool installed and working (plus documentation and a little training) in time for the last few deployments, but next summer there will be yet another round of them, and of course maintenance and incremental rollouts during the school year as well.  And I honestly don't see us going to DS 7 any time soon, so your product will still be of value to us for some time to come.

Aug 09, 2010 01:40 PM

Thanks Ian,

I just wanted to make sure we could skip it, we're currently using an .hta script to make sure our techs are naming the machines according to our naming convention. I just wanted to make sure they wouldn't conflict. I'll be sure to let you know how it goes. Thanks for the great tool.

Steven

Aug 09, 2010 12:18 PM

@George: Let me have a think about the NS collection business...

@Steven: The computer name override is optional. You can just click next on this screen if you don't want to do anything. If you have sysprep files with computer names set to %COMPNAME% with a ReplaceTokens line, the option to change the name can however be valuable.

Kind Regards,
Ian./

Aug 09, 2010 11:19 AM

Is the computer name override optional? We have a job set up to name the computer and replace the sysprep.inf with newly named .inf file. Can it be skipped or removed altogether?

Steven King

Aug 09, 2010 11:04 AM


Minus 5 to me for missing it in the instructions! Thanks Ian.

Feature request for when you are bored: Add in a menu for the technician to add a computer to an NS collection. :) The list of available collections could be specified by the (MI) tag on the collection name. Maybe Screenbert's Collection Management Tool could be re-used in this capacity.

Meh, just an idea!

Aug 08, 2010 06:58 PM

HI George,

Sorry -been away from the forums for a bit, and yeah the clincher for this in section 1.2,
-----------------------------
If you implement DS Console security, the service account you use for Deployment Server must be entered in as an account in the console with administrator rights. If you do not, the service won't have the necessary rights within the console to execute tasks selected from the menu
-----------------------------

But worth adding this to the troubleshooting section I think! I'll get to that this week.

Kind Regards,
Ian./

Aug 06, 2010 01:54 PM


Hi Ian!

What do you think might be amiss if it won't complete the axsched to schedule the job on the computer? I was trying to find out more specifics on why it says "Problem scheduling JobID..." but wasn't sure where else to look. I looked in console.log and did not see an entry. I thought it might be a permissions error, but the service account would have full perms to the job and computer, right?

Update: If I run the axsched command manually in cmd, it works correctly...  E:\Program Files\Altiris\eXpress\Deployment Server\axsched.exe" ISSGEOINVOKE -jid 2006462 /t "2010-8-6 00:00"

Update 2: ... it was permissions, the service account was not a Deployment Console user. Once I added it as a user it scheduled correctly. Thank you for this wonderful utility Ian! I will leave this on here in case it benefits anybody else...

8/6/2010 10:10:55 AM - START: Located Ini file 002481CD3A7A.ini for processing...
8/6/2010 10:10:55 AM - INFO: Processing Ini file 002481CD3A7A.ini,
8/6/2010 10:10:55 AM - INFO:     MAC         :002481CD3A7A
8/6/2010 10:10:55 AM - INFO:     UUID        :C76EB298-C9B1-11DE-8CE6-6DB8CA9EA13E
8/6/2010 10:10:55 AM - INFO:     S/N         :MXL9450WGG
8/6/2010 10:10:55 AM - INFO:     NewHostName :ISSGEOINVOKE
8/6/2010 10:10:55 AM - INFO:     Name Request:no
8/6/2010 10:10:55 AM - INFO:     Folder      :_Standard
8/6/2010 10:10:55 AM - INFO:     Job         :Deploy WinXPSP3 Std HII (MI)
8/6/2010 10:10:55 AM - INFO: Could not locate any computers with MAC Address specified. Initial Deployment Assumed.
8/6/2010 10:10:55 AM - INFO: Successfully created computer.
8/6/2010 10:10:55 AM - INFO: Computer ISSGEOINVOKE found as match for MAC 002481CD3A7A
8/6/2010 10:10:55 AM - INFO: Checking that intended Computer Name is unique...
8/6/2010 10:10:55 AM - INFO: Indended Computer name of ISSGEOINVOKE will not clash
8/6/2010 10:10:55 AM - Single Job Mode: Executing query to find job
8/6/2010 10:10:55 AM - INFO: Changing computer name from ISSGEOINVOKE to ISSGEOINVOKE
8/6/2010 10:10:55 AM - INFO: Attempting to Schedule job: "E:\Program Files\Altiris\eXpress\Deployment Server\axsched.exe" ISSGEOINVOKE -jid 2006462 /t "2010-8-6 00:00"
8/6/2010 10:10:56 AM - Error: Problem Scheduling JobID 2006462.
8/6/2010 10:10:56 AM - INFO: Moved ini file to bad folder as rad67ED2.tmp

Aug 05, 2010 08:12 AM


Ian,

Thanks for the response...

After I posted, I started going through the help section...

I will send you the info, but maybe the following question will help.

I noticed one problem,   the SQL functions don't seem to be there.

Installs 2 custom SQL functions called  dbo.Custom_IsFolderwithinFolder & dbo.Custom_IsEventwithinFolder

SQL 2008   x64   (Not R2)

I looked in the Functions folder for the eXpress DB under programmability.

Wasn't sure where exactly they should be located, but didn't see them as I drilled down....

Aug 05, 2010 02:41 AM

Hi Dave,

Could you read the post I gave to Phyrant above, and PM me the logs?

Kind Regards,
Ian./

Aug 04, 2010 04:54 PM


Ian,

Not sure if you want questions posted here...    So here goes...

So I am pretty new to DS.

I have DS 6.9 SP4 installed with a remote pxe.

imageinvoker is installed..

I created a Job menu with a couple jobs in it..

Winpe boots up fine and I choose the job..

Give the computer a name..

The new name shows up on the DS console...

But the Status: just stays at        "Job scheduling in progress...."                  and the  blue bar fills up and starts over..  


I must be missing something..


Thanks

Dave

Aug 04, 2010 09:09 AM

It was the service. It kept crashing every time I restarted it. I reinstalled 3.0.1 and everything is good now.
Thanks for the help. ImageInvoker is amazing! Its totally changed how we image computers here.

Aug 04, 2010 05:23 AM

Sounds to me like the imageinvoker service is down. Go through the troubleshooting steps described in the article and then zip up all the logs (don't forget the log on the c:\ drive if it exists) and msg folders. Drop me a PM and then I'll take a look.

Might be worth having a glance at the event logs too.

Kind Regards,
Ian./

Aug 03, 2010 05:09 PM

I spoke too soon. Linux is doing the same thing now. Seems to have all started when I upgraded ImageInkover to the newest version.

Aug 03, 2010 03:30 PM

I've checked everything, regenerated the automation environment, even reinstalled ImageInvoker. Linux works fine. In WinPE no computer I've tested gets to the Computer Name Override screen. They all sit on the Select Deployment Option screen with a progress bar after I choose the image job I want to deploy. Any ideas?

Aug 02, 2010 12:48 PM


Nevermind my previous question :P I´ve read the FAQ :)

Aug 02, 2010 12:46 PM


Does that work in DS 7.1 under CMS?

Aug 02, 2010 10:13 AM

so good! I will bookmark this

Jul 28, 2010 08:39 AM

Very valuable contribution, as usual. Most of the time, we are using a default "pause" unknown machine initial deploy, with a delayed menu for 30 seconds, to select another job that are deploy, or capture, or anything else. So we do not use a specific script for that, because we see 3 cases in OS (re)deployment:


  1. we sequence number for the name of the machine (so we use a job with an auto naming incremental configuration)


  2. we re-serial number using the "serial, tag or existing Firm ID" extract (so we use a job using a token)


  3. we manual reuse a number for a machine, but often no idea which name is free without taking a look inside the console. But we know which image must be deployed: So the naming is done later on from the console.


Now with your tool, we can add a 4th option, reuse the name that is existing on the machine "sticker". Often already known on the DS, but not allways ;-)

Jul 27, 2010 09:23 PM

Damn


This is a schweet thing, great job

Jul 20, 2010 11:32 AM

This tool has honestly been amazing for our School District, and the way we image.

Jul 20, 2010 02:13 AM

Hi cosborne,

My hope is that DS will in the future incarnations of DS7 come with this type of imaging portal natively within its own workflows. I think this is what Kyle is referring to.

But, its a waiting game just now, and with so much pressure to get DS7 fully functional, I'm not sure ImageInvoker-type functionality will be high on the cards. We'll just have to wait and see.
 

Jul 20, 2010 01:53 AM

I laughed and laughed when I read this. Cheered me up no end after an all night stint hacking an AV installer. Thanks!

Jul 18, 2010 06:05 PM

This is definitely a creation from an Altiris master.

Jul 16, 2010 06:04 PM

I have not yet test your add-on, but after read the doc and and the "password protection option" I'm very happy to have this tool installed in our new CMS/DS environment in a university school ... we don't want the students mess with the PXE boot environments ;-)

Jul 12, 2010 11:34 AM

Myself and others that don't use workflow would say please continue.  I'm sure there are lots of us DS-only users!

Thanks for the writeup and the work you've put in this. 

Jul 09, 2010 12:38 PM

BootConsole looks good -damn a competitor ;-)

Have you got any links for work on the DS-workflow portals by any chance? I haven't seen anything yet, so I'm a bit in limbo over whether I need to do anything else with ImageInvoker. No point in rewriting the engine, if the workflow portals are going to do the job for me!

Kind Regards,
Ian./

Jul 09, 2010 12:00 PM

More excellent work, I'd give you two "thumbs up" if I could!  We actually purchased "BootConsole" from ExpressAbility to deliver technician-driven rebuilds, and are in the near future moving to a Workflow-driven portal for DS, but this is a very nice solution!

Jul 09, 2010 10:39 AM

Hi Matt,

Just treat the ImageInvoker service as if it were a pucker Altiris service. If you need to change the service account password for DS, just change it too for the ImageInvoker service in the services control panel.


Jul 09, 2010 09:58 AM

This would actually be a really awesome addition for a light touch rollout of Windows 7.  I'm going to have to load this up on my dev environment and try to script some stuff out.  Just one question: What happens if/when I need to change the password on my Service Account?

Related Entries and Links

No Related Resource entered.