Teamcenter Best Practices Guide

Prev Next

Teamcenter is Siemens’ leading Product Lifecycle Management (PLM) platform. It helps manufacturers and engineering organizations manage the full lifecycle of a product, from initial design and engineering through manufacturing, service, and retirement. It is widely used in industries like automotive, aerospace, industrial machinery, and consumer products where complex engineering data and global collaboration are critical.

In traditional Teamcenter environments, replication is often required to keep distributed sites synchronized, especially where multiple global teams must access large CAD datasets, assemblies, or engineering files. Maintaining these replicated file vaults increases complexity, consumes storage, and creates potential data consistency challenges.

Nasuni fundamentally removes this requirement. Its cloud-native global file system provides a single authoritative data set stored in object storage, accessible securely from any location. Instead of replicating data across multiple Teamcenter sites, Nasuni Edge Appliances cache only active files locally, while all metadata and version history are synchronized globally in real time. This ensures that every Teamcenter user, regardless of location,  is working from the same up-to-date dataset, without the overhead of replication.

Prerequisites

This document assumes that the customer has the following in place:

  • Nasuni Edge Appliance.

  • The Teamcenter environment runs either on-premise or in the cloud.

    • For cloud deployment

      • Ensure there is connectivity to your Teamcenter cloud resources.  

  • For 4-Tier Deployment Configuration

    • Teamcenter File Server Cache.

    • Teamcenter File Client Cache.

Architecture

Teamcenter is a multi-tier application that can be deployed in either a 2-tier or 4-tier configuration based on an organization’s requirements. A 4-tier architecture consists of a client tier, web tier, enterprise tier, and resource tier. The client tier can include either a thin client or a rich client. The web tier comprises one or more application servers. The enterprise tier contains the Teamcenter Server Manager, which oversees the web tier, along with Teamcenter servers that interface with a database and volumes, forming the resource tier. In a 2-tier setup, the web, enterprise, and resource tiers are combined into a single tier.

The File Management System (FMS) in Teamcenter handles file storage and distribution within the environment. The FMS includes at least one FMS Server Cache (FSC) and one FMC Client Cache (FCC). The FSC manages files at the server level and can connect to a local volume or to other FSCs. The FCC is a single-user cache installed on a client machine, improving the user experience when working with files. It communicates with one or more FSCs to synchronize and manage file access.

Configuration

Teamcenter File Management System Configuration with Nasuni

FMS Master

When a new Teamcenter environment is deployed, it automatically creates a fmsmaster_FSC_*_teamcenter.xml configuration file. Note that some of the required values in the example XML configuration below are populated automatically. The customer is responsible for ensuring that the XML configuration file reflects the required FSC settings (For more information, see Filestore Group).

The FMS structure is specified in the FMS master file located on the Teamcenter FMS Master server.
C:\<FSM Root Directory>\fsc\fmsmaster_FSC_<TeamcenterMasterServer>_teamcenter.xml

Tip: When a FSC starts up, this retrieves this configuration file from the FMS master.

Tip: When using Nasuni as the target volume with Teamcenter, you must define the required FSC Groups (For example, see Filestore Group).

File Server Cache Group

The example below illustrates the required XML configuration within the customer Teamcenter master server.

This example illustrates two FSC Group IDs: CORP and LBV.

  • CORP group: Default volume repository TeamcenterMasterServer

    <fscgroup id="CORP">
             <fsc id="FSC_<TeamcenterMasterServer>_teamcenter" address="http://<TeamcenterMasterServer>:4544" ismaster="true">
                <volume id="<DefaultVolume_id>" enterpriseid="-<Enterprise_id>" root="C:\<FSM Root Directory>\volumes\DEFAUL~1" priority="0" />
                <transientvolume id="<Transientvolume_id>" enterpriseid="-<Enterprise_id>" root="c:\temp\transientVolume" priority="0" />
             </fsc>
             <clientmap cidr="0.0.0.0/0">
                <assignedfsc fscid="FSC_<TeamcenterMasterServer>_teamcenter" priority="0" />
             </clientmap>
             <clientmap cidr="0::0/0">
                <assignedfsc fscid="FSC_<TeamcenterMasterServer>_teamcenter" priority="0" />
             </clientmap>
             <exitfsc fscid="FSC_<TeamcenterMasterServer>_teamcenter" populatetargetids="default,all" priority="0" />
             <entryfsc fscid="FSC_<TeamcenterMasterServer>_teamcenter" priority="0" />
          </fscgroup>
  • LBV group: Nasuni volume repository NasuniFiler

    Note: The below example illustrates a Teamcenter environment with more than 1 File Server Cache server deployed and the required FSC settings.

    <fscgroup id="LBV">
             <filestoregroup id="fsgroup1">
                <volume id="DefaultVolume_id" enterpriseid="-<Enterprise_id>" root="\\NasuniFiler\LBV\data" priority="0" />
             </filestoregroup>
             <fsc id="FSC_<TeamcenterFileServerCache1>_teamcenter" address="http://<TeamcenterFileServerCache1>:4544" ismaster="false">
                <filestore groupid="fsgroup1" priority="0" />
             </fsc>
             <fsc id="FSC_<TeamcenterFileServerCache2>_teamcenter" address="http://<TeamcenterFileServerCache2>:4544" ismaster="false">
                <filestore groupid="fsgroup1" priority="0" />
             </fsc>
             <clientmap cidr="<Client_IPAddress/32>">
                <assignedfsc fscid="FSC_<TeamcenterFileServerCache1>_teamcenter" priority="0" />
             </clientmap>
             <clientmap cidr="<Client_IPAddress/32>">
                <assignedfsc fscid="FSC_<TeamcenterFileServerCache2>_teamcenter" priority="0" />
             </clientmap>
          </fscgroup>

Client Mapping

Clients are assigned to their corresponding FSC using a CIDR clientmap rule.

For more information on alternative methods for mapping clients to FSC groups, contact Teamcenter support.

The following illustrates the client mapping configuration.

<clientmap cidr="<Client_IPAddress/32>">
            <assignedfsc fscid="FSC_<TeamcenterFileServerCache1>_teamcenter" priority="0" />
         </clientmap>
         <clientmap cidr="<Client_IPAddress/32>">
            <assignedfsc fscid="FSC_<TeamcenterFileServerCache2>_teamcenter" priority="0" />
         </clientmap>

Expected XML Configuration Output

The following XML configuration output is based on Teamcenter version 2412, the current GA at the time of documenting this process.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE fmsworld SYSTEM "fmsmasterconfig.dtd">
<fmsworld>
   <fmsenterprise id="-1234567890" volumestate="normal">
      <ticketdigest value="SHA-256" />
      <ticket version="F100" keystorealias="-1234567890" />
      <ticket version="M050" keystorealias="-1234567890" />
      <ticket version="N050" keystorealias="-1234567890" />
      <ticket version="T100" keystorealias="-1234567890" />
      <ticket version="Z100" keystorealias="-1234567890" />
      <ticket version="v100" keystorealias="-1234567890" />
      <fccdefaults>
         <property name="FCC_CacheLocation" value="$HOME\FCCCache|/tmp/$USER/FCCCache" overridable="true" />
         <property name="FCC_HashBlockPages" value="6144" overridable="true" />
         <property name="FCC_LogFile" value="$HOME/fcc.log|/tmp/$USER/fcc.log" overridable="true" />
         <property name="FCC_MaxExtentFileSizeMegabytes" value="256" overridable="true" />
         <property name="FCC_MaxExtentFiles" value="11" overridable="true" />
         <property name="FCC_MaxReadCacheSize" value="1000M" overridable="true" />
         <property name="FCC_MaxWriteCacheSize" value="1000M" overridable="true" />
         <property name="FCC_MaximumNumberOfFilePages" value="28672" overridable="true" />
         <property name="FCC_MaximumNumberOfSegments" value="10688" overridable="true" />
      </fccdefaults>
     <fscgroup id="CORP">
         <fsc id="FSC_<TeamcenterMasterServer>_teamcenter" address="http://<TeamcenterMasterServer>:4544" ismaster="true">
            <volume id="<DefaultVolume_id>" enterpriseid="-<Enterprise_id>" root="C:\<FSM Root Directory>\volumes\DEFAUL~1" priority="0" />
            <transientvolume id="<Transientvolume_id>" enterpriseid="-<Enterprise_id>" root="c:\temp\transientVolume" priority="0" />
         </fsc>
         <clientmap cidr="0.0.0.0/0">
            <assignedfsc fscid="FSC_<TeamcenterMasterServer>_teamcenter" priority="0" />
         </clientmap>
         <clientmap cidr="0::0/0">
            <assignedfsc fscid="FSC_<TeamcenterMasterServer>_teamcenter" priority="0" />
         </clientmap>
         <exitfsc fscid="FSC_<TeamcenterMasterServer>_teamcenter" populatetargetids="default,all" priority="0" />
         <entryfsc fscid="FSC_<TeamcenterMasterServer>_teamcenter" priority="0" />
      </fscgroup>
      <fscgroup id="LBV">
         <filestoregroup id="fsgroup1">
            <volume id="DefaultVolume_id" enterpriseid="-<Enterprise_id>" root="\\NasuniFiler\LBV\data" priority="0" />
         </filestoregroup>
         <fsc id="FSC_<TeamcenterFileServerCache1>_teamcenter" address="http://<TeamcenterFileServerCache1>:4544" ismaster="false">
            <filestore groupid="fsgroup1" priority="0" />
         </fsc>
         <fsc id="FSC_<TeamcenterFileServerCache2>_teamcenter" address="http://<TeamcenterFileServerCache2>:4544" ismaster="false">
            <filestore groupid="fsgroup1" priority="0" />
         </fsc>
         <clientmap cidr="<Client_IPAddress/32>">
            <assignedfsc fscid="FSC_<TeamcenterFileServerCache1>_teamcenter" priority="0" />
         </clientmap>
         <clientmap cidr="<Client_IPAddress/32>">
            <assignedfsc fscid="FSC_<TeamcenterFileServerCache2>_teamcenter" priority="0" />
         </clientmap>
      </fscgroup>
      <linkparameters fromgroup="CORP" togroup="LBV" transport="wan" maxpipes="8" compression="gzip" />
      <linkparameters fromgroup="LBV" togroup="CORP" transport="wan" maxpipes="8" compression="gzip" />
   </fmsenterprise>
</fmsworld>

File Server Cache

Customers can deploy multiple FSC servers depending on the organization’s requirements.

Contact Teamcenter and Nasuni Support for deployment and recommendation guidelines.

The local configuration file is typically located at: C:\Program Files\Siemens\Teamcenter2412\fsc\FSC_TeamcenterFileServerCache_teamcenter.xml

Note: Where FSC_TeamcenterFileServerCache corresponds to the FSC’s unique ID.

This local configuration file specifies the location and options for the Whole File Cache, which is stored on a Nasuni volume.

Whole File Cache Configuration

<property name="FSC_WholeFileCacheLocation" value="\\\\NasuniFiler\\TCWFC\\FSCCache\\wholefile|/tmp/FSCCache" overridable="true" />    

<property name="FSC_FilesPerWholeFileCacheDir" value="10240" overridable="true" />    

<property name="FSC_DiskPercentFreeGoal" value="10" overridable="true" />    

<property name="FSC_WholeFilePurgePeriodMinutes" value="240" overridable="true" />

Note: Where NasuniFiler corresponds to the hostname of target Nasuni Edge Appliance and directroy.

Tip: It is feasible to have multiple FSC deployed and configured. For more information, contact Nasuni support.

Create a Nasuni Volume in Teamcenter

Using Nasuni as a target storage

In Teamcenter, a volume is a storage location for files, represented as a directory within the operating system. Files within a volume are typically generated by CAD software or other third-party applications.

  1. Select the Volumes node from the Organization tree.

  2. Enter a unique descriptive character string in the Volume Name box.

  3. Enter the name of the network node that physically contains the new volume in the Node Name box.

    Tip: This is the hostname of the Teamcenter master server.

  4. Select the machine type on which the volume resides: Unix or Windows.

  5. Depending on the machine type, type the full UNIX or Windows path of the new volume in either the UNIX Path Name box or the Windows Path Name box.

    Note: The Windows Path Name is the UNC path to the Nasuni share.

  6. Select the ID type (FSC, Filestore Group, Load Balancer) to indicate the element in the FMS master configuration to which the new volume element is to be added, and type the ID in the ID box.

    Tip: The following are examples of each ID type: (FSC, Filestore Group, Load Balancer).
    Note: In a typical 4-tier deployment, the most common setting is to use Filestore Group (fsgroup ID is defined in the fmsmaster_FSC_*_teamcenter.xml configuration file).

    Note: The value you enter into the ID box varies depending upon where the new volume is to be added in the FMS master configuration. That location in the configuration is determined by the ID type selection.

    Tip: FMS Configuration function
                 
    Reload - Makes an FMS configuration the current and active configuration. This is useful for updating the configuration with any manual changes that are made.

                    Report - Displays the master and slave FSCs currently configured and the status of each.

                    Display - Displays the contents of the FMS master configuration file. It can be useful for determining what to add to a volume, for example, an FSC ID or filestore group.

  7. Grant users or groups access to the volume, as described in Grant volume access.

  8. Click Create.

    Tip: After creating the Teamcenter volume, the FMS XML configuration updates to reflect the newly created volume.

Global File Lock Recommendation

You should only use the Asynchronous mode of Global File Lock with Teamcenter. Global File Lock Asynchronous mode was designed and engineered for use with Teamcenter.

For more information, see https://docs.nasuni.com/docs/global-file-locking#global-file-lock-and-teamcenter.

Volume Optimization on Nasuni volumes

Teamcenter provides administrative controls that define how files are organized and distributed within storage volumes. Administrators can specify the maximum number of files permitted in a directory. Once this threshold is reached, Teamcenter automatically creates a new directory to maintain balanced file distribution.

If file distribution parameters are modified, a Teamcenter utility is available to rebalance existing volumes to align with the updated configuration.

The following preferences and utilities can be used to manage file organization within volumes:

  • TC_Volume_Max_Files_Per_Dir
    Defines the maximum number of files that can be stored in a single subdirectory within a volume.

  • TC_Volume_FilesPerDir_Check_Interval
    Specifies the interval at which Teamcenter checks each subdirectory to determine if it has reached the configured file limit.

  • move_volume_files

    Utility redistributes existing files within a volume when the file count in one or more subdirectories exceeds the defined limit.

These controls help maintain optimal performance and scalability in environments where volumes contain large quantities of files generated by multiple users and groups. By effectively managing file distribution, administrators can prevent subdirectories from exceeding file system limits and ensure consistent access performance across the Teamcenter environment.

For more information, contact Teamcenter Support.