Administering/Troubleshooting FCC & Use of Proxy Servers
- 1Understanding FMS Client Cache (FCC)
- 2Use of Proxy Server with FCC contained in TCCS
- 2.1Forward Proxy
- 2.2Reverse Proxy
- 2.3Access to Servers through Security Services
- 3TCCS & Its Container Applications
- 3.1Teamcenter Server Proxy(TSP)
- 3.2Teamcenter Model Event Manager(TcMEM)
- 3.3FMS Client Cache(FCC)
- 4Starting FCC
- 5Stopping FCC
- 5.1Safest Method to Stop FCC
- 5.2Second Method to Stop FCC
- 5.3When NO Response to Pipe commands
- 5.4When No Other Method works
- 6Reconfiguring FCC
- 6.1Automatic Reconfiguration
- 6.2Manual Reconfiguration
- 6.3Restart of FCC
- 7Troubleshooting FCC
- 7.1Fixing Issues Due to Inappropriate Shutdown of FCC
- 7.2Troubleshooting Errors Occurring after Removing Cache Files
Understanding FMS Client Cache (FCC)
FMS Client Cache is a FMS Process that runs on client host. FCC accepts client request over secured pipe connections and submits them to appropriate FMS Server Cache (FSC) process in order to upload or download files. To improve the performance of recently accessed or frequently accessed files, FCC also provides high performance cache (write cache/read cache) on client host (private user-level cache). Write cache contains files uploaded to teamcenter volume. Read cache contains files downloaded from teamcenter volume.
To monitor the local FMS Client Cache (FCC), fccstat utility is used. When fccstat utility is used with status argument, it provides details on running status of FCC process that may be required to troubleshoot an issue. It provides all the details on FCC’s currently active and assigned FSC, offline FSC connections, number of files uploaded and downloaded, number of files in cache, number of client request processed etc. This utility can also be used if there is a need to clear cache (-clear), or if there are changes made to FCC configuration files that needs to be updated to running FCC process (-reconfig) or if the FCC configuration needs to be reloaded completely (-restart).
Few of the frequently used commands are listed below for fccstat utility:
Sometimes, FCC will not start or not respond to pipe connection requests. It can get locked due to not following the best practices to stop FCC. All these issues need to be addressed and troubleshot to bring back FCC process to working condition.
Before discussing this further, it is important to understand FCC as container application of TCCS.
Use of Proxy Server with FCC contained in TCCS
Teamcenter Client Communication System (TCCS) is a centralized tool that provides features of forward proxy and reverse proxy to manage communication for supported clients, hence adhering to security policies of the company.
Forward Proxy
A forward proxy service is provided to client(s) in an internal network. If a client makes a file transfer request to FMS Server Cache (FSC) on internet, its requests have to pass through the forward proxy first. Depending on the forward proxy’s settings (controls access of client), a request can be allowed or denied by the proxy server. If allowed, then the request is forwarded to the firewall and then to the FMS Server Cache (FSC). From the point of view of FSC, it is the proxy server that issued the request, not the client. So, FSC addresses its response to the proxy. When the forward proxy receives the response, it sends that response to the client that made the request.
This proxy is the single point of access and control hence making it easier to enforce security policies on client’s computers in the internal network.
Reverse Proxy
While forward proxy sends requests and accepts response on behalf of clients in internal network, reverse proxy accepts requests from remote clients on behalf of servers in the internal network. So to the remote clients it is reverse proxy that is providing the file transfer service and not the FMS Server Cache behind the proxy. Forward proxy hides the identity of client, but reverse proxy hides the identity of servers.
An Internet-based attacker would find it much more difficult to acquire data in the servers, because he will have to deal with a reverse proxy first (form-based challenge authentication).
Access to Servers through Security Services
Login Service component and Identity Service component of Teamcenter Security Services are installed as web application .For authentication, Login Service interacts with teamcenter client applications and prompts user to log in. The credential from user is collected and after authentication, application token (client cookie) is generated for client applications. This will make sure that for active session, user can send the client cookie and does not need to re-authenticate through login prompt.
Identity Service component will use the application token/client cookie submitted by Login Service to validate it against underlying identity provider (e.g. LDAP directory) in order to access the server.
Using Reverse Proxy with Security Services to Access Servers
A reverse proxy server takes requests from the internet and forwards them to servers existing in an internal network. Reverse proxy is used with Security Services and the reverse proxy URL is provided in Security Services, so that communication with Login Service can occur. Reverse proxy challenges and cookie storage is managed by Security Services.
When client requests for a server, Security Services launches a web browser, which initiates an authentication challenge (HTML login form) from the reverse proxy instead of login prompt. The end user responds directly to this authentication challenge. For authenticated user, client cookie (for the session) is provided to Security Services, which is shared to access requesting application. This mechanism of providing authentication challenge type by reverse proxy (e.g. WebSEAL) allows tight integration and control over how different clients can authenticate to reverse proxy. Each authentication type can be qualified with a set of rules.
TCCS & Its Container Applications
Teamcenter Client Communication System (TCCS) contains following teamcenter applications:
Teamcenter Server Proxy(TSP)
When client makes a request for the teamcenter server, TCServerProxy manages HTTP communication by accepting client request over secured pipes and submitting request to web tier over HTTP. TSP will use forward proxy configurations to support forward proxy server.
TSP also uses TCProxyClient component to support reverse proxy server. Form-based challenges sent by reverse proxy server are detected by this TCProxyClient.
Teamcenter Model Event Manager(TcMEM)
TcMEM is used to manage event synchronization when different SOA clients share same teamcenter server instance.
FMS Client Cache(FCC)
To access files in a secured manner from FMS Server Cache (FSC) over the internet and to send requested files securely from FMS Server Cache (FSC) to remote clients ,forward and reverse proxy configuration will be required. To support the proxy configurations, FCC is contained in Teamcenter Client Communication System. FCC accepts client requests over secure pipe connection and submits them to appropriate FMS Server Cache (FSC). It uses forward proxy configuration to support forward proxy server. It also uses TCProxyClient component to support reverse proxy server. Form-based challenges sent by reverse proxy server are detected by this TCProxyClient.
So, basically TCCS manages communications and file transfers between teamcenter clients and servers (supporting proxy configurations). TCCS and all its container applications (TSP, TcMEM & FCC) run simultaneously. Starting TCCS will start all its container applications. Stopping any container application will stop other applications too.
Starting FCC
Setting the initialize parameter of the FMSClientCache element to true in the tccs.xml file (of TCCS configuration directory) enables FCC functionality when TCCS starts. This is the default value. If the FCC is not already started, fccstat utility can be used to start FCC by running the command:
FMS_HOME\bin\fccstat -start
Stopping FCC
FCC may be required to be shut down when it is no longer needed. FCC will be stopped and started again to update configuration information. TCCS/FCC should be shut down in an appropriate manner. Not following the recommended methods to shut down FCC can cause TCCS/FCC errors, corrupting the cache or creating a stuck lock file and FCC may fail to start again. Before stopping FCC, all client applications should be closed and then wait for 10 seconds. Stopping an FCC also stops TCServerProxy and TcMEM process of TCCS.
Safest Method to Stop FCC
Run the command:
FMS_HOME\bin\fccstat –stop
This method will stop FCC only when all the client applications are closed. If non-idle clients are connected to FCC or to any other TCCS application (TCServerProxy or TcMEM application) FCC will not stop. Client applications should be closed and then wait for 10 seconds before retrying.
Second Method to Stop FCC
Run the command:
FMS_HOME\bin\fccstat –kill
This method will stop FCC even if client applications are not closed. If FCC is responding to pipe connection attempts (i.e. if FCC pipe connection can accept requests from client and submit request to FSC), this method will stop FCC. Any ongoing transaction at the time of stopping FCC may fail.
When NO Response to Pipe commands
When TCCS/FCC process is not responding to pipe commands (i.e. if FCC pipe connection cannot accept requests from client or cannot submit request to FSC), it may report FCC Offline, even when FCC process is still running. Command fccstat –start will not be able to start the FCC. Using startfcc.bat file may report that the FCC cache is locked.
If restart of FCC does not work, other container applications (TCServerProxy or TcMEM) of TCCS need to be stopped to stop FCC. Use tspstat or tcmemstat utility to stop the shared TCCS process (FCC). FCC can be started thereafter.
When No Other Method works
Click on End Process by selecting user’s FCC process in Task Manager. This performs hard stop on the FCC. FCC Cache is lost and sometimes FCC lock file becomes stuck.
Reconfiguring FCC
Based on different changes made in master configuration file (fmsmaster.xml) or FCC configuration file (fcc.xml), FCC can be reconfigured in three different ways to apply changes to FCC process.
Automatic Reconfiguration
Many changes to FCC elements are automatically propagated to FCC process when:
- Changes are made to master configuration file(fmsmaster_fscid.xml)
- And, the master FSC is reconfigured.
Few changes made in the master configuration file that are automatically detected by FCC without interrupting client application:
- FCCDefault parameters
- FCC_EnableDirectFSCRouting
- parentfsc
- assignment
- assignedfsc elements within the clientmap element
- FCC_TransientFileFSCSource
- FCCDefaultssite
Manual Reconfiguration
When changes are made to local fcc.xml file and FCC is processing commands for client applications, manual reconfiguration will attempt to apply the changes to running FCC process without any loss of service to client applications connected to FCC. Running the fccstat utility with reconfig argument will apply changes from local fcc.xml and from its parentfsc configurations
FMS_HOME\bin\fccstat –reconfig
Restart of FCC
Any change made to the FCC properties file (fcc.properties) requires a manual restart of the FCC.
When a parameter, that generally remains unchanged overtime (e.g. cache size) changes in the fmsmaster_fscid.xml file or the fcc.xml file, FCC needs to be restarted. Few other changes, for which FCC must be restarted to read the new settings, are as follows:
- FCC_ProxyPipeName
- FCC_CacheLocation
- Changes to logging elements (FCC_LogFile, FCC_LogLevel, FCC_TraceLevel)
- Changes to cache elements (e.g. FCC_MaxWriteCacheSize, FCC_MaxReadCacheSize etc.)
Â
Troubleshooting FCC
Fixing Issues Due to Inappropriate Shutdown of FCC
Sometimes, after stopping the FCC, it may not properly restart. This may happen due to inappropriately shutting down the FCC and not following the recommended methods. After closing client applications, FCC may have been immediately stopped (without waiting for 10 seconds) when FCC pipe connection was still open. Also, FCC cache may have been locked or FCC lock files may have got stuck. In order to fix the issue and restart the FCC, following steps can be followed:
- Restart the operating system on single user’s machine
- Log Off and log back in on multi-user machine (If necessary, warn other users and reboot the operating system).
- Delete the following files from user’s FCCCache location. These files may have got corrupted:
- fcc.lck
- fms.hsh
- fms.mf
- fms.seg
- All files beginning with fms.ext
- Delete the TCCS lock file (by default, Teamcenter.lck file) stored in Users\.user-name_lock_host-name directory. The file name is TCCS_CONFIG.lck. By default, the TCCS_CONFIG environment variable is set to Teamcenter.
e.g. C:\Users\anjalisi\.anjalisi_lock_pun01\Teamcenter.lck
Troubleshooting Errors Occurring after Removing Cache Files
If cache files are removed, cache is empty when FCC restarts. New cache files may not get created and cause errors. This may happen due to following reasons:
Permission or Disk Space Issues
Due to local hard disk permission settings or due to lack of disk space, new cache files may not get created. Fixing the cause of issue should resolve any FCC error.
Network Issues
When FMS system from which data originated is not accessible on network, repopulating the cache from FMS system will fail. Fixing the network access issues should resolve any FCC error. If data is no longer available from the specified volumes, finding another source of data should fix the error.
Also Read:
Administering FSC & Troubleshooting FSC Failure-to-Start
FMS Configuration for Remote Clients
Â
Mam please write blogs for itk programming it will help us for fresher in teamcenter