After Operating System Delivery blog, we move to Application delivery
Applications form the basis of user workflow. In a virtualized environment, the applications account for most of the complexity in the environment, Assessing application delivery in a Citrix environment involves an on-site evaluation of the technical infrastructure and business processes as they relate to successfully delivering applications. An architect should gather information related to application behavior and dependencies. When possible, an architect should categorize applications used in the environment for design and testing.
Applications form the basis of user workflow. In a virtualized environment, the applications account for most of the complexity in the environment, Assessing application delivery in a Citrix environment involves an on-site evaluation of the technical infrastructure and business processes as they relate to successfully delivering applications. An architect should gather information related to application behavior and dependencies. When possible, an architect should categorize applications used in the environment for design and testing.
Application Virtualization Strategy
Assessing the application
virtualization strategy for an organization involves documenting an analysis of
the current environment and identifying potential risks in the strategy and
supporting infrastructure. Organizations often request this documentation for
some or all of the following reasons:
- To evaluate to which degree the current environment
satisfies the goals of the organization
- To provide a clear understanding of the environment
through the observation of an outside party
- To identify underlying and overt technical issues
- To prepare for growth or major changes
- To document the current environment for legal purposes,
to validate compliance and to incorporate it into the final design
An architect can use the assessment
documentation to strategically offer solutions to business challenges related
to application virtualization.
Application
Types
The number, type and complexity of
the application sets will influence important considerations about the design
of the virtualized environment. During the assessment, architects assess the
different types of applications in the environment. Some of the common
application types and groups include: productivity suites, base applications
and special applications.
When assessing individual
applications or application sets, architects ask the following questions to
gather details:
- Does a XenApp infrastructure already exist?
- How frequently is the application updated?
- What is the purpose of the application?
- How many users--total and maximum concurrent--access
the application?
- How much disk space is available for this application?
How much space is required?
- What are the known dependencies of the application?
- How is this application maintained in regards to
existing desktop images?
Based on these factors, an architect
will determine the best application delivery method in the design phase of the
project.
Application Type Characteristics
·
Productivity: Productivity Suites
include common applications or application sets that all users may require,
such as Microsoft office to be productive.
·
Base Application: These are applications
that are required in environments such as utilities, dependent applications or
helper applications. Example, Java, or .Net. A best practice for assessment is
to look for application prerequisites such as virtual machines which require
different versions of java.
·
Special Applications: We need to
determine the relevant application challenges in an environment. Special
applications may require special considerations and treatment. Special
applications include
ü Mission Critical applications: mission-critical
systems were typically transactional applications such as airline reservation
systems and vital enterprise-level applications such as ERP. These
mission-critical applications were opened up to a far larger number of end
users, customers and citizens with increasing expectations for 24x7 access and
reliability
ü Resource intensive: Applications that require heavy
resources
ü Challenging: Applications that are technically challenging
to manage and support for example ERP applications
ü Custom: Home grown applications that may or may not follow
application development guidelines
Application
Categorization
The following table is an example of
the data an architect gathers on application and application sets, in order to
categorize them.
Application Name
|
Users
|
Database
|
Base Applications
|
16-bit only
|
CPU-intensive
|
Memory-intensive
|
Virtual IP Required
|
Other
|
MS Office
|
1000
|
No
|
None
|
No
|
No
|
No
|
No
|
|
SAP
|
200
|
Yes
|
Adobe Flash Shockwave
|
No
|
No
|
No
|
No
|
Architects should ask the following
questions:
- What are the application requirements?
- Which computing resource does the application use the
most? What is the bottleneck?
- Is the application available for offline use? Is
offline use a requirement?
- Is the application "Citrix Ready" Community
verified?
For more information, see the
http://community.citrix.com web site.
Categorizing applications assists
the architect with determining the best application delivery method in the
design phase. By breaking down the characteristics of each application or
application set, architects gain a better understanding of the resources
required in the environment and the most efficient way to provide them to
users.
Application
Testing
Application characteristics and
testing are significant topics for an assessment project. Questions architects
ask include the following:
- How are new applications handled?
- Is user acceptance testing performed?
- How are new applications integrated?
- What is the testing process?
- Is regression or system integration testing performed?
The following image is an excerpt of
an application testing process.
Application Integration Recommendations
·
Requirement Gathering: Capture all
application requirements , including napplication dependencies, location of backend
application data, storage requirements, installation media, documentation and
licensing etc.
·
Engineering and Testing: Verify if
applications can operate in Citrix environment by testing in Xenapp server.
Also test if several users can access and execute an application simultaneously.
Incorporate the application into an automated installation procedure for
testing purposes. Performance and scalability testing needs to be done using
system metrics such as CPU and memory usage to determine bottlenecks and system
behavior. Architect would also need to do regression testing to ensure that introduction
of new applications does not affect previous functionality
·
User Acceptance: Determine if the
performance meets user expectations
XenApp
Implementations
The environment being assessed may
already contain Citrix XenApp. In this situation, architects should ask the
following questions:
- How many XenApp farms exist?
- Where is the datacenter for each farm?
- What function does each farm serve?
- Do multiple zones exist in each farm? If so, how are
the zones configured and administered?
- Is zone preference and failover implemented?
- What is the current license server configuration?
- How many licenses does the organization currently have?
Assessing an existing XenApp
implementation will provide a Citrix virtualization architect the understanding
of the environment needed to recommend the best solution for application
delivery in the design phase.
Databases
Databases, particularly application
backend databases, are critical systems to take into account during an
application virtualization assessment. During the assessment, architects gather
data about the existing databases in the environment.
Architects should ask the following
questions:
- How are the databases hosted? Where are they located?
A general
recommendation in a XenApp implementation is to keep XenApp servers as close as
possible to databases while replicating the databases across slower WAN links.
This practice maintains a consistent farm configuration and state.
- Does redundancy exist?
- Are the databases on shared storage?
Using
shared storage for databases in a XenApp implementation is a best practice.
- Are the databases replicated?
- Who handles the administration of the databases?
- Does an audit process exist for database management?
- Are there plans to upgrade the databases, if necessary?
- If the organization is already using XenApp, which
database is used for the data store?
Database
Information
The information gathered about
databases helps the architect understand the foundation of the current
environment for application delivery. With this information, an architect can
later make progress in the design phase in determining whether a potential
update or optimizations to the current platform may address needs.
Terminal Services Profiles
In a multi-user or Citrix
environment, organizations are likely already using Terminal Services. An
examination of the Terminal Services profiles that are in place is a key part
of an application virtualization assessment because it enables the architect to
optimize the settings and facilitate simpler management of the environment.
Architects should ask the following
questions:
- Are roaming Terminal Services profiles being used?
- Is folder redirection being used? How is it configured?
Are Group Policy Objects (GPOs) used?
- Where are the Terminal Services profiles stored?
A best
practice is to store the profiles on clustered file servers with backup.
- Which is the Terminal Services home drive?
For more information, see Citrix
Knowledge Base articles CTX110351 and CTX19327 on the www.citrix.com web site.
Load Management
Assessing the load management
configuration and process is an essential task for application virtualization.
Whether it is load balancing user sessions or servers that host applications
and desktops, or determining whether an organization should be using the
default or custom load evaluator, Citrix architects should inspect load management
during the assessment project.
Relevant questions to ask about load
management include the following:
- What is used for load balancing? Is Citrix NetScaler
used?
- Is DNS round-robin used?
- If XenApp is implemented, which Load Evaluator is being
used? If the Custom Load Evaluator is being used, which rules have been
implemented?
In Citrix
environments, the Custom Load Evaluator is usually recommended, with specific
configurations.
Session Timeouts
Session timeouts in an application
virtualization environment are often inspected along with the applications for
security and performance-related factors.
Architects should ask the following
questions:
- What are the current timeout values for active,
disconnected and idle sessions?
- Is Screen Saver disabled?
Lengthy idle timeouts increase the
possibility of unauthorized users accessing applications and can also consume
server resources unnecessarily
Application Access
An architect must examine the
application access methods of an organization during an application
virtualization assessment. It is crucial that each user can access all of the
applications that they require, that these applications launch in a reasonable
amount of time and that the performance is acceptable to the users.
Architects should ask the following
questions:
- What is the client or plugin version being used to
access applications?
- Which clients and plugins (Mac, Java, Linux, and so on)
are currently supported?
- If applicable, where is the authentication point? At
the Web Interface? At the Access Gateway?
- Is two-factor authentication used?
- What is the level of administrator interaction, in
terms of installation and updates?
- How are user credentials handled?
- Is the Web interface used? If so, is it running on a
virtual server or physical?
- Is failover configured?
- Does the organization have multiple farms and
redundancy?
- Which ports are used?
- Do any special considerations for application access exist?
- The latest version of the Citrix XenApp plugin is
recommended.
- For large enterprise deployments, the Web Interface
should be run on dedicated web servers, with the most recent version of
the Web Interface installed.
Shadowing
If shadowing is used in the customer
environment, the architect should examine the configuration and administrator
permissions and assess them against best practices.
Architects should ask the following
questions:
- Is the organization required to follow HIPPA (in the
U.S.) or any other type of regulatory compliance that governs access to or
confidentiality of data that may affect the configuration of shadowing?
- Does the organization use the SOCKS protocol?
- Does the organization need to use shadowing? Which
other monitoring tools are used?
Architects should keep in mind the
following points when assessing shadowing configuration:
- In XenApp environments, it is a best practice to leave
shadowing on.
- Ensure that the organization is not required by any
regulations to prompt users before enabling shadowing.
- Assess whether the organization needs to record user
sessions.
Assessment Tools
During the data collection process
for an application delivery assessment, architects evaluate the requirements,
risks and optimal scenarios for application delivery.
Automated tools can help capture
workload information for further analysis, collect application data and provide
a snapshot of an organization's environment. Using this data, an architect can
review application types, the number of client-to-server applications and the
most-used applications. Examples of tools that can be used to gather this data
automatically include Citrix EdgeSight and Liquidware Labs Stratusphere.
Architects may not have access or
the ability to use automated tools. In this situation, the architect can
collect the data manually, create scripts or use specific solutions to collect
assessment data. The architect then must compile the manually-collected data
with reports that can be used to evaluate the application delivery environment.
Architects should ask the following
questions:
- Which tools are used for data collection?
- Are third-party tools being used? If so, which ones are
they?
- Who manages tools used for assessment and data
collection?
- Is a centralized monitoring tool used or is a
centralized management infrastructure in place?
- Is the organization deploying Citrix MFCOM scripts?

No comments:
Post a Comment