App-V

advertisement
Install an application, how do?
Goals:
Reduce total average mouse clicks per day (MC/D)
Maximize free time to troll fb/slack off
Isaac Overcast
overcasi@evergreen.edu
Academic Computing
The Evergreen State College
TESC Imaging
• 4500 Students
• ~350 Dual boot linux/Win7 in 12 labs and public
spaces across 2 sites
• 2x base images
– 32bit vanilla and 64bit kitchensink
• FOG + post-flight config
• Keyserver & DeepFreeze
• Significant use of GP
Demo
• ev_client and ev_server
• AD Structure and Group Policy
Overture
So, say somebody needs you to install an
application to a set of machines tomorrow bcz
they forgot to tell you about it at the beginning of
the quarter when they were supposed to.
Assumptions:
* You have full control of the machines
* This is real windows-y
* You actually prefer free/open software or you are
just broke
How do?
Considerations / Tradeoffs
•
•
•
•
•
•
•
Time allotted
# machines
Complexity of the install
Licensing
Image size/stability
Expected duration of need
Other priorities
Introducing Oc
A notation for the amount of work generated by
any install as the number of computers you
support tends towards a particular value of
infinity.
The amount of time you spend on any task will
inevitably rise as the number of machines you
support goes up, but the question is “How steep
is the incline?”
Bad Oc
LINEAR!
TIME
EXPONENTIAL!
# of CPUs
Good Oc
LOGARITHMIC!
CONSTANT!
Not ideal ways to do it
•
•
•
•
One-off install
Scripted mass install
Other misc hax
Update image and push
One-offs
Oc strict linear
+ You know it'll work
+ Keeps your student employees busy
- takes tons of time
- chance that you can screw it up on one or more,
which sucks
- requires doing the same thing over and over,
which is a mortal sin
- makes you feel bad because you can't / won't
learn to automate
Scripted mass install
Oc non-deterministic
Like where you have a script on your server
that reaches out and runs the installer on
x,y and z machines
+ It is fast
+ Congratulations, you can automate it!
+/- It “sometimes” works
- Complicated and often homebrew (o_0)
- Difficult to maintain
- It's a one off and it's not scalable
Misc Hax
Oc log + high admin penalty
• WPKG
http://wpkg.org/
• Win-get
http://windows-get.sourceforge.net/
• GetIT
http://puchisoft.com/GetIt/
+
+
-
Congratulations, you’re using tools!
Better than nothing
Needlessly complicated
Narrow focus/limited app set
Hackish
Update and deploy a new image
Oc constant + admin penalty
+ You know how to do it, it's easy and reliable
+ Easily control the default user experience (start menu
items, pesterboxes, registration, etc)
- It's Slow (esp. w/ audit mode win7)
- App installs EVERYWHERE!
(unless you only have 1 image per classroom/department/area, in which case you have bigger
problems than this)
- If the app yr pushing has licensing restrictions then that
could be a problem
for ex, what if you have an app that has 5 seat licenses and the lab size is 25? Just
image 5 of them? Too weird.
- Unnecessarily complicates/crusts the image
Normally to be avoided, just for the sake of simplicity
Smart(er) ways to do it
• A cheat: VM + Remote Desktop
• Reconceived Application Installation
– Silent Installers
– Custom MSI packages
– Virtual applications
• Reconceived App Deployment
– GP Runonce/startup script
– GP Assigned Applications
– Virtualized App on the "Desktop"
VM + Remote Desktop
Oc Linear + resource overhead
1) Make VM
2) Install your app
3) Remote Desktop
4) ???
5) Profit
+ Easy
+ Good for <5 installs
- Not scalable
- Resource intensive
- Annoying
App Hax: Silent Installers
Provided by vendor!: LoggerPro
http://www.vernier.com/til/1681/
Simple manuals: Firefox
https://wiki.mozilla.org/Installer:Command_Line_Argume
nts
Complicated manuals: Dragon NaturallySpeaking
AdminGuide: http://bit.ly/LWecRW
+ Much faster than one-offs
- Post-flight config is trickier or impossible
App Hax: Custom msi packages
Creation: AppDeploy Repackager
http://bit.ly/Kwx75F
Customization:
InstEd - http://www.instedit.com/
Orca – http://bit.ly/LEAI5g
+ More flexibility/customizability
App Hax: Virtualized Apps
Cameyo - http://www.cameyo.com/
Thinapp (Useful but $$) - http://bit.ly/11GMib
App-V ($$ & complicated) - Http://bit.ly/wbVVYB
+ Image agnostic
+ Instant deployment
+ Get creative
* Flash Drives
* Email
* Moodle site
- Config is tricky (GP?)
Demo
• Silent Installer
• Custom MSI & Config
• Virtual Apps
We have our apps, now what do
we do with them?
GP Runonce/startup script
Oc Logarithmic
CPU/Policies/Windows Settings/Scripts/Startup
+ Our first 'real' way to do it, something you can
feel good about
+ Better for complicated installs or if you still need
to hack a bit (DeepFreeze)
+/- Permanently alters the system
- Requires a reboot
- Moderately hackish
GP Assigned Applications
Oc Logarithmic
CPU/Policies/Software Settings/Software Installation
• CPU vs User GP
• Published vs Assigned
+ Maximum flexibility
+ Publish tons of apps and let users choose
what they want
- Sometimes requires a reboot or logoff
- Tricky for licensed apps
Virtualized App on the "Desktop“
Oc Constant!
Shared Desktops:
User/Policies/Windows Settings/Folder Redirection/Desktop
+ Great for small/medium apps that can abide
virtualizing
+ Super fast and flexible
+ You can use it to manage licensed apps
- Not ideal for tricky/huge apps (Adobe CS /
ArcGIS / Dragon)
- Requires a little set up on the backend and you
have to stay on top of your computer accounts in
your OUs (which you should be doing anyway!)
Demo
• Assigned Apps
• Published Apps
• Virtual App on Desktop
Wrap-up
• What does it mean to ‘install’ an
application?
• Deploying an app means getting it in the
hands of the user, however that may look.
– Remote Desktop
– Runonce installers
– Assigned/published applications
– Virtual apps
Q&A
Isaac Overcast
The Evergreen State College
overcasi@evergreen.edu
Download