Date post: | 23-Dec-2015 |
Category: |
Documents |
Upload: | daisy-hardy |
View: | 232 times |
Download: | 1 times |
AWIPS II Thin Client DevelopmentJebb Stewart
NOAA/ESRL/GSDAffiliated with Colorado State University
Cooperative Institute for Research in the Atmosphere (CIRA)September 29th
Earth System Research LaboratoryGlobal Systems Division
Technology Outreach Branch
Project Overview
Thin Client OSIP Documents at Gate Three
AWIPS II Thin Client Analysis and Evaluation
GSD AWIPS II Thin Client Development - 2
Development Objectives
• Extend CAVE to support: Center Weather Service Units (CWSUs) Weather Service Offices (WSOs) Incident Support Specialists (ISS) including
Incident Meteorologists (IMETs) NCEP Centers to partially support Continuity of
Operations Planning (COOP) River Forecast Centers (RFCs)
GSD AWIPS II Thin Client Development - 3
Development Objectives (Continued)
• To enable Common AWIPS Visualization Environment (CAVE) to work outside local area network.
• Add Windows OS Compatibility
• Low bandwidth and capability to work on any type of internet access (satellite/BGAN, wireless, local network) requirements.
• Many base requirements have been pulled from FX-Net program.
• Thin Client Requirements document contains many more.
GSD AWIPS II Thin Client Development - 4
Results From Analysis
• Analysis was performed on new versions of CAVE as they were released. Last in depth analysis was R1G1-3.
• Basically Functionality (ie Weather “Browsing”) works.
• Some Missing Requirements.
• Performance Problems within Windows Environment need to be resolved.
GSD AWIPS II Thin Client Development - 5
AWIPS II Remote Mode
• AWIPS II has built in capability to run in “Remote” Mode
• “Remote” mode no longer requires HDF5 file mount and accesses all data through HTTP
• To enable “Remote” mode. – Add or uncomment line “awips.mode=client“ – In regular CAVE installation
{CAVE_INSTALLATION_PATH}/configuration/config.ini– In ADE
com.raytheon.viz.product.awips -> config.ini
GSD AWIPS II Thin Client Development - 6
AWIPS II Remote Mode Ports Required
Service Name Port Number Capability
Localization Service 9581 This service is used to load localization configuration during startup and requests for data. (Required)
Messaging Service (AMQP)
5672 This service feeds product meta information such as product inventory and new product notification.
Remote Access Gained using either SSH Tunnels or VPN connection
GSD AWIPS II Thin Client Development - 7
Possible Client Types Explored
AWIPS 2 Built and optimized on Linux. How do we provide a multiple OS solution?
Virtual Desktop• A remote desktop capability using NoMachine (NX) technology
where CAVE runs on a remote server and user views the screen as it changes (similar to a streaming movie).
Virtual Machine• On client hardware, A virtual machine is running an instance of
Linux operating system using VirtualBox software. CAVE runs natively on Linux OS within Virtual Machine and is viewed on client.
Native Windows• CAVE runs natively on Windows operating system
GSD AWIPS II Thin Client Development - 8
Pros Cons Risks Proposed Action
•CAVE running in Linux native mode. (No porting necessary)
•One well-known TCP/IP port (SSH).
•Simple X-Windows client interface.
•Minimal systems administration support required.
•Efficient bandwidth utilization.
• Perceived performance is highly dependent upon network availability.
• Hardware must scale with number of connected clients.
• Requires high network availability.
• Requires additional hardware cost on server side.
• Video driver compatibility (low risk).
• Evaluate single client instance load/demand running on one server.
• Evaluate multiple client instances running on one server.
• Evaluate other scalability options (cloud, etc.).
• Evaluate NX web client.
• Verify proper video drivers.
Virtual Client
GSD AWIPS II Thin Client Development - 9
Pros Cons Risks Proposed Action
• CAVE running in Linux native mode. (No porting necessary)
• Available on multiple operating systems
• Some line offices already use this solution for AWIPS 1 - D/2D with effective results and minimal logistical impact.
• Unknown additional security requirements for two operating systems running on one machine.
• OpenGL support minimal in Virtual Machine software.
• Poorest performance of all offered solutions.
• Security may restrict access to one or both TCP/IP ports.
• Undefined security policy for virtual machine on Windows.
• Users’ need administration expertise for virtual machine
• Assess TCP/IP port hardening issues.
• Determine NWS security policies.
• Feasibility evaluation.
• Monitor Open GL development in Virtual Machine software.
Virtual Machine
GSD AWIPS II Thin Client Development - 10
Pros Cons Risks Proposed Action
• Native binaries mean best performance of all evaluated options.
• No Linux system administration needed on client-side.
• Modifications and optimization required to run in Windows Environment.
• Each new version of CAVE needs to be modified to support Windows OS Environment.
• Third party tools / APIs may need porting/testing.
• All Test Cases may need to be re-ran in Windows Environment
• Assess TCP/IP port hardening issues.
• Gather requirements for third-party tools.
Native Windows
GSD AWIPS II Thin Client Development - 11
Client Type Security Impact Failure Impacts CWSU Use Case (High Availability/High
Speed)
WSO Use Case(High
Availability/Moderate Speed)
IMET Use Case(Moderate-Low
Availability/Moderate-Low Speed)
Virtual Client Low Moderate (3 points of failure):-Virtual Client.-CAVE client.-EDEX Server.
No Yes No
Virtual Machine Moderate High (4 points of failure):-Virtual Machine.-Platform – VM interface.-CAVE client.-EDEX server.
Yes Yes No
Native Windows Moderate Low (2 points of failure):-CAVE client-EDEX server
Yes Yes Yes
Use Case Matrix
GSD AWIPS II Thin Client Development - 12
Porting To WindowsItems Required
• Need proper Eclipse environment. 3.4.1
• Setup Python 2.6 – Including additional support libraries (NUMPY, SCIPY, etc…)
– Verify libraries available in site-packages on Linux
• Setup JAVA, 1.6 Plus Additional Libraries– Java Imaging, Java imaging IO, JAVA 3D.
• Modifications to code– Path Problems (“C:\\users\jstewart”) incorrectly appended to all file paths– Newer JEP version slightly different API.– Script Template Path Problems
• Native Library Support – libmeteolib (Contouring), JEP (Python interaction).
– Used Cygwin to recompile missing native libraries
GSD AWIPS II Thin Client Development - 13
Porting to WindowsIssues
• OpenGL/Graphics Card interaction messy, refreshing canvas problems.
• Delay problems. Items behind the scenes take longer than on Linux and using client without waiting results in errors.
• UI (Creating widgets, alerts) needs additional work.
GSD AWIPS II Thin Client Development - 14
Porting to WindowsFuture Items
• As new releases are created, need to verify portability of changes.
• Any extensions created may require additional porting if not 100% java.
• Only Basic Functionality has been tested on Windows OS, Other tools (ie GFE …) require further testing
GSD AWIPS II Thin Client Development - 15
Other Thin Client Development
• Improve bandwidth utilization by using compression on Thrift objects.
• Google Earth Export.
• Other Missing Requirements.
GSD AWIPS II Thin Client Development - 16