



<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  
  <title>Traffic Ops - Configuring &mdash; Traffic Control 2.2-dev documentation </title>
  

  
  
    <link rel="shortcut icon" href="../../_static/favicon.ico"/>
  

  

  
  
    

  

  
  
    <link rel="stylesheet" href="../../_static/css/theme.css" type="text/css" />
  

  
    <link rel="stylesheet" href="../../_static/theme_overrides.css" type="text/css" />
  

  
        <link rel="index" title="Index"
              href="../../genindex.html"/>
        <link rel="search" title="Search" href="../../search.html"/>
    <link rel="top" title="Traffic Control 2.2-dev documentation" href="../../index.html"/>
        <link rel="up" title="Administrator’s Guide" href="../index.html"/>
        <link rel="next" title="Traffic Ops - Using" href="using.html"/>
        <link rel="prev" title="Traffic Ops - Migrating from 2.0 to 2.2" href="migration_from_20_to_22.html"/> 

  
  <script src="_static/js/modernizr.min.js"></script>

</head>

<body class="wy-body-for-nav" role="document">

  <div class="wy-grid-for-nav">

    
    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
      <div class="wy-side-nav-search">
        

        
          <a href="/" class="icon icon-home"> Traffic Control
        

        
          
          <img src="../../_static/tc_logo_c_only.png" class="logo" />
        
        </a>

        
<div role="search">
  <form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
    <input type="text" name="q" placeholder="Search docs" />
    <input type="hidden" name="check_keywords" value="yes" />
    <input type="hidden" name="area" value="default" />
  </form>
</div>

        
      </div>

      <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
        
          
          
              <ul>
<li class="toctree-l1"><a class="reference internal" href="../../basics/index.html">CDN Basics</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../basics/content_delivery_networks.html">Content Delivery Networks</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../basics/http_11.html">HTTP 1.1</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../basics/caching_proxies.html">Caching Proxies</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../basics/cache_revalidation.html">Cache Control Headers and Revalidation</a></li>
</ul>
</li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../overview/index.html">Traffic Control Overview</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../overview/introduction.html">Introduction</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../overview/traffic_ops.html">Traffic Ops</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../overview/traffic_portal.html">Traffic Portal</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../overview/traffic_router.html">Traffic Router</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../overview/traffic_monitor.html">Traffic Monitor</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../overview/traffic_stats.html">Traffic Stats</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../overview/traffic_vault.html">Traffic Vault</a></li>
</ul>
</li>
</ul>
<ul class="current">
<li class="toctree-l1 current"><a class="reference internal" href="../index.html">Administrator’s Guide</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="installation.html">Traffic Ops - Installing</a></li>
<li class="toctree-l2"><a class="reference internal" href="default_profiles.html">Traffic Ops - Default Profiles</a></li>
<li class="toctree-l2"><a class="reference internal" href="migration_from_10_to_20.html">Traffic Ops - Migrating from 1.x to 2.x</a></li>
<li class="toctree-l2"><a class="reference internal" href="migration_from_20_to_22.html">Traffic Ops - Migrating from 2.0 to 2.2</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">Traffic Ops - Configuring</a></li>
<li class="toctree-l2"><a class="reference internal" href="using.html">Traffic Ops - Using</a></li>
<li class="toctree-l2"><a class="reference internal" href="extensions.html">Managing Traffic Ops Extensions</a></li>
<li class="toctree-l2"><a class="reference internal" href="../traffic_portal/installation.html">Traffic Portal Administration</a></li>
<li class="toctree-l2"><a class="reference internal" href="../traffic_portal/usingtrafficportal.html">Traffic Portal - Using</a></li>
<li class="toctree-l2"><a class="reference internal" href="../traffic_monitor.html">Traffic Monitor Administration (Legacy)</a></li>
<li class="toctree-l2"><a class="reference internal" href="../traffic_monitor_golang.html">Traffic Monitor Administration</a></li>
<li class="toctree-l2"><a class="reference internal" href="../traffic_router.html">Traffic Router Administration</a></li>
<li class="toctree-l2"><a class="reference internal" href="../traffic_stats.html">Traffic Stats Administration</a></li>
<li class="toctree-l2"><a class="reference internal" href="../traffic_server.html">Traffic Server Administration</a></li>
<li class="toctree-l2"><a class="reference internal" href="../traffic_vault.html">Traffic Vault Administration</a></li>
<li class="toctree-l2"><a class="reference internal" href="../quick_howto/index.html">Quick How To Guides</a></li>
</ul>
</li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../development/index.html">Developer’s Guide</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../development/building.html">Building Traffic Control</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../development/traffic_ops.html">Traffic Ops</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../development/traffic_portal.html">Traffic Portal</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../development/traffic_router.html">Traffic Router</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../development/traffic_monitor.html">Traffic Monitor Golang</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../development/traffic_stats.html">Traffic Stats</a></li>
</ul>
</li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../api/index.html">APIs</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../api/traffic_ops_api.html">API Overview</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../api/routes.html">API Routes</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../api/v11/index.html">API 1.1 Reference</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../api/v12/index.html">API 1.2 Reference</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../api/v13/index.html">API 1.3 Reference</a></li>
</ul>
</li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../faq/index.html">FAQ</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../faq/general.html">General</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../faq/development.html">Development</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../faq/administration.html">Running a Traffic Control CDN</a></li>
</ul>
</li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../glossary.html">Glossary</a></li>
</ul>

          
        
      </div>
      &nbsp;
    </nav>

    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">

      
      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
        <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
        <a href="../../index.html">Traffic Control</a>
      </nav>


      
      <div class="wy-nav-content">
        <div class="rst-content">
          <div role="navigation" aria-label="breadcrumbs navigation">
  <ul class="wy-breadcrumbs">
    <li><a href="../../index.html">Traffic Control 2.2-dev</a> &raquo;</li>
      
          <li><a href="../index.html">Administrator’s Guide</a> &raquo;</li>
      
    <li>Traffic Ops - Configuring</li>
      <li class="wy-breadcrumbs-aside">
        
          <a href="../../_sources/admin/traffic_ops/configuration.rst.txt" rel="nofollow"> View page source</a>
        
      </li>
  </ul>
  <hr/>
</div>
 		  
    		  <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
      		  
        		  <a href="using.html" class="btn btn-neutral float-right" title="Traffic Ops - Using">Next <span class="fa fa-arrow-circle-right"></span></a>
      		  
      		  
        		  <a href="migration_from_20_to_22.html" class="btn btn-neutral" title="Traffic Ops - Migrating from 2.0 to 2.2"><span class="fa fa-arrow-circle-left"></span> Previous</a>
      		  
    		  </div>
  		  
          <div role="main" class="document">
            
  <div class="section" id="traffic-ops-configuring">
<h1>Traffic Ops - Configuring<a class="headerlink" href="#traffic-ops-configuring" title="Permalink to this headline">¶</a></h1>
<p>Follow the steps below to configure the newly installed Traffic Ops Instance.</p>
<div class="section" id="installing-the-ssl-cert">
<h2>Installing the SSL Cert<a class="headerlink" href="#installing-the-ssl-cert" title="Permalink to this headline">¶</a></h2>
<p>By default, Traffic Ops runs as an SSL web server, and a certificate needs to be installed.</p>
<div class="section" id="self-signed-certificate-development">
<h3>Self-signed Certificate (Development)<a class="headerlink" href="#self-signed-certificate-development" title="Permalink to this headline">¶</a></h3>
<blockquote>
<div><p>Example Procedure:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>$ openssl genrsa -des3 -passout pass:x -out localhost.pass.key 2048
Generating RSA private key, 2048 bit long modulus
...
$ openssl rsa -passin pass:x -in localhost.pass.key -out localhost.key
writing RSA key
$ rm localhost.pass.key

$ openssl req -new -key localhost.key -out localhost.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter &#39;.&#39;, the field will be left blank.
-----
Country Name (2 letter code) [XX]:US&lt;enter&gt;
State or Province Name (full name) []:CO&lt;enter&gt;
Locality Name (eg, city) [Default City]:Denver&lt;enter&gt;
Organization Name (eg, company) [Default Company Ltd]: &lt;enter&gt;
Organizational Unit Name (eg, section) []: &lt;enter&gt;
Common Name (eg, your name or your server&#39;s hostname) []: &lt;enter&gt;
Email Address []: &lt;enter&gt;

Please enter the following &#39;extra&#39; attributes
to be sent with your certificate request
A challenge password []: pass&lt;enter&gt;
An optional company name []: &lt;enter&gt;
$ openssl x509 -req -sha256 -days 365 -in localhost.csr -signkey localhost.key -out localhost.crt
Signature ok
subject=/C=US/ST=CO/L=Denver/O=Default Company Ltd
Getting Private key
$ sudo cp localhost.crt /etc/pki/tls/certs
$ sudo cp localhost.key /etc/pki/tls/private
$ sudo chown trafops:trafops /etc/pki/tls/certs/localhost.crt
$ sudo chown trafops:trafops /etc/pki/tls/private/localhost.key
</pre></div>
</div>
</div></blockquote>
</div>
<div class="section" id="certificate-from-certificate-authority-production">
<h3>Certificate from Certificate Authority (Production)<a class="headerlink" href="#certificate-from-certificate-authority-production" title="Permalink to this headline">¶</a></h3>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">You will need to know the appropriate answers when generating the certificate request file <cite>trafficopss.csr</cite> below.</p>
</div>
<p>Example Procedure:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>$ openssl genrsa -des3 -passout pass:x -out trafficops.pass.key 2048
Generating RSA private key, 2048 bit long modulus
...
$ openssl rsa -passin pass:x -in trafficops.pass.key -out trafficops.key
writing RSA key
$ rm localhost.pass.key

Generate the Certificate Signing Request (CSR) file needed for Certificate Authority (CA) request.

$ openssl req -new -key trafficops.key -out trafficops.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter &#39;.&#39;, the field will be left blank.
-----
Country Name (2 letter code) [XX]: &lt;enter country code&gt;
State or Province Name (full name) []: &lt;enter state or province&gt;
Locality Name (eg, city) [Default City]: &lt;enter locality name&gt;
Organization Name (eg, company) [Default Company Ltd]: &lt;enter organization name&gt;
Organizational Unit Name (eg, section) []: &lt;enter organizational unit name&gt;
Common Name (eg, your name or your server&#39;s hostname) []: &lt;enter server&#39;s hostname name&gt;
Email Address []: &lt;enter e-mail address&gt;

Please enter the following &#39;extra&#39; attributes
to be sent with your certificate request
A challenge password []: &lt;enter challenge password&gt;
An optional company name []: &lt;enter&gt;
$ sudo cp trafficops.key /etc/pki/tls/private
$ sudo chown trafops:trafops /etc/pki/tls/private/trafficops.key

You must then take the output file trafficops.csr and submit a request to your Certificate Authority (CA).
Once you get approved and receive your trafficops.crt file:

$ sudo cp trafficops.crt /etc/pki/tls/certs
$ sudo chown trafops:trafops /etc/pki/tls/certs/trafficops.crt

If necessary, install the CA certificates .pem and .crt in /etc/pki/tls/certs.

You will need to update the file /opt/traffic_ops/app/conf/cdn.conf with the following changes:
      ...
      e.g. given trafficops.crt and trafficops.key
      &#39;hypnotoad&#39; =&gt; ...
          &#39;listen&#39; =&gt; &#39;https://[::]:443?cert=/etc/pki/tls/certs/trafficops.crt&amp;key=/etc/pki/tls/private/trafficops.key&amp;ca=/etc/pki/tls/certs/localhost.ca&amp;verify=0x00&amp;ciphers=AES128-GCM-SHA256:HIGH:!RC4:!MD5:!aNULL:!EDH:!ED&#39;
       ...
</pre></div>
</div>
</div>
</div>
<div class="section" id="content-delivery-networks">
<h2>Content Delivery Networks<a class="headerlink" href="#content-delivery-networks" title="Permalink to this headline">¶</a></h2>
</div>
<div class="section" id="profile-parameters">
<span id="rl-param-prof"></span><h2>Profile Parameters<a class="headerlink" href="#profile-parameters" title="Permalink to this headline">¶</a></h2>
<p>Many of the settings for the different servers in a Traffic Control CDN are controlled by parameters in the parameter view of Traffic Ops. Parameters are grouped in profiles and profiles are assigned to a server or a deliveryservice. For a typical cache there are hundreds of configuration settings to apply. The Traffic Ops parameter view contains the defined settings. To make life easier, Traffic Ops allows for duplication, comparison, import and export of Profiles. Traffic Ops also has a “Global profile” - the parameters in this profile are going to be applied to all servers in the Traffic Ops instance, or apply to Traffic Ops themselves. These parameters are:</p>
<table border="1" class="docutils" id="index-0">
<colgroup>
<col width="15%" />
<col width="9%" />
<col width="77%" />
</colgroup>
<thead valign="bottom">
<tr class="row-odd"><th class="head">Name</th>
<th class="head">Config file</th>
<th class="head">Value</th>
</tr>
</thead>
<tbody valign="top">
<tr class="row-even"><td>tm.url</td>
<td>global</td>
<td>The URL where this Traffic Ops instance is being served from.</td>
</tr>
<tr class="row-odd"><td>tm.rev_proxy.url</td>
<td>global</td>
<td>Not required. The URL where the Traffic Ops Config file cache instance is being served from.  Requires Traffic Ops ORT 2.1 and above.
When configured, ORT will request configuration files via this fqdn, which should be setup as a reverse proxy to the Traffic Ops host
or hosts.  Suggested cache lifetime for these files is ~3 minutes or less.  This setting allows for greater scaleability of a CDN
maintained by Traffic Ops by caching configuration files of profile and cdn scope.</td>
</tr>
<tr class="row-even"><td>tm.toolname</td>
<td>global</td>
<td>The name of the Traffic Ops tool. Usually “Traffic Ops”. Used in the About screen and in the comments headers of the files generated.</td>
</tr>
<tr class="row-odd"><td>tm.infourl</td>
<td>global</td>
<td>This is the “for more information go here” URL, which is visible in the About page.</td>
</tr>
<tr class="row-even"><td>tm.logourl</td>
<td>global</td>
<td>This is the URL of the logo for Traffic Ops and can be relative if the logo is under traffic_ops/app/public.</td>
</tr>
<tr class="row-odd"><td>tm.instance_name</td>
<td>global</td>
<td>The name of the Traffic Ops instance. Can be used when multiple instances are active. Visible in the About page.</td>
</tr>
<tr class="row-even"><td>tm.traffic_mon_fwd_proxy</td>
<td>global</td>
<td>When collecting stats from Traffic Monitor, Traffic Ops uses this forward proxy to pull the stats through.
This can be any of the MID tier caches, or a forward cache specifically deployed for this purpose. Setting
this variable can significantly lighten the load on the Traffic Monitor system and it is recommended to
set this parameter on a production system.</td>
</tr>
<tr class="row-odd"><td>geolocation.polling.url</td>
<td>CRConfig.json</td>
<td>The location to get the GeoLiteCity database from.</td>
</tr>
<tr class="row-even"><td>geolocation6.polling.url</td>
<td>CRConfig.json</td>
<td>The location to get the IPv6 GeoLiteCity database from.</td>
</tr>
<tr class="row-odd"><td>maxmind.default.override</td>
<td>CRConfig.json</td>
<td>The destination geo coordinates to use for client location when maxmind returns a default location that matches the country code.
This parameter can be specified multiple times with different values to support default overrides for multiple countries.
Format: &lt;CountryCode&gt;;&lt;Lat&gt;,&lt;Long&gt;   Ex: US;37.751,-97.822</td>
</tr>
</tbody>
</table>
<p>These parameters should be set to reflect the local environment.</p>
<p>After running the postinstall script, Traffic Ops has the following profiles pre-loaded:</p>
<table border="1" class="docutils">
<colgroup>
<col width="9%" />
<col width="91%" />
</colgroup>
<thead valign="bottom">
<tr class="row-odd"><th class="head">Name</th>
<th class="head">Description</th>
</tr>
</thead>
<tbody valign="top">
<tr class="row-even"><td>EDGE1</td>
<td>The profile to be applied to the latest supported version of ATS, when running as an EDGE cache</td>
</tr>
<tr class="row-odd"><td>TR1</td>
<td>The profile to be applied to the latest version of Traffic Router</td>
</tr>
<tr class="row-even"><td>TM1</td>
<td>The profile to be applied to the latest version of Traffic Monitor</td>
</tr>
<tr class="row-odd"><td>MID1</td>
<td>The profile to be applied to the latest supported version of ATS, when running as an MID cache</td>
</tr>
<tr class="row-even"><td>RIAK_ALL</td>
<td>Riak profile for all CDNs to be applied to the Traffic Vault servers</td>
</tr>
</tbody>
</table>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">The Traffic Server profiles contain some information that is specific to the hardware being used (most notably the disk configuration), so some parameters will have to be changed to reflect your configuration. Future releases of Traffic Control will separate the hardware and software profiles so it is easier to “mix-and-match” different hardware configurations.</p>
</div>
<p>Below is a list of cache parameters that are likely to need changes from the default profiles shipped with Traffic Ops:</p>
<table border="1" class="docutils">
<colgroup>
<col width="16%" />
<col width="11%" />
<col width="73%" />
</colgroup>
<thead valign="bottom">
<tr class="row-odd"><th class="head">Name</th>
<th class="head">Config file</th>
<th class="head">Description</th>
</tr>
</thead>
<tbody valign="top">
<tr class="row-even"><td>allow_ip</td>
<td>astats.config</td>
<td>This is a comma separated  list of IPv4 CIDR blocks that will have access to the astats statistics on the caches.
The Traffic Monitor IP addresses have to be included in this, if they are using IPv4 to monitor the caches.</td>
</tr>
<tr class="row-odd"><td>allow_ip6</td>
<td>astats.config</td>
<td>This is a comma separated  list of IPv6 CIDR blocks that will have access to the astats statistics on the caches.
The Traffic Monitor IP addresses have to be included in this, if they are using IPv6 to monitor the caches.</td>
</tr>
<tr class="row-even"><td>Drive_Prefix</td>
<td>storage.config</td>
<td>The device path start of the disks. For example, if you have <code class="docutils literal notranslate"><span class="pre">/dev/sda</span></code> through <code class="docutils literal notranslate"><span class="pre">/dev/sdf</span></code> set this to <code class="docutils literal notranslate"><span class="pre">/dev/sd</span></code></td>
</tr>
<tr class="row-odd"><td>Drive_Letters</td>
<td>storage.config</td>
<td>The letter part of the disks, in the same example as above set this to <code class="docutils literal notranslate"><span class="pre">a,b,c,d,e,f</span></code></td>
</tr>
<tr class="row-even"><td>purge_allow_ip</td>
<td>ip_allow.config</td>
<td>The IP address range that is allowed to execute the PURGE method on the caches (not related to <a class="reference internal" href="using.html#rl-purge"><span class="std std-ref">Invalidate Content</span></a>)</td>
</tr>
<tr class="row-odd"><td>coalesce_masklen_v4</td>
<td>ip_allow.config</td>
<td>The masklen to use when coalescing v4 networks into one line using <a class="reference external" href="http://search.cpan.org/~miker/NetAddr-IP-4.078/IP.pm">http://search.cpan.org/~miker/NetAddr-IP-4.078/IP.pm</a></td>
</tr>
<tr class="row-even"><td>coalesce_number_v4</td>
<td>ip_allow.config</td>
<td>The number to use when coalescing v4 networks into one line using <a class="reference external" href="http://search.cpan.org/~miker/NetAddr-IP-4.078/IP.pm">http://search.cpan.org/~miker/NetAddr-IP-4.078/IP.pm</a></td>
</tr>
<tr class="row-odd"><td>coalesce_masklen_v6</td>
<td>ip_allow.config</td>
<td>The masklen to use when coalescing v6 networks into one line using <a class="reference external" href="http://search.cpan.org/~miker/NetAddr-IP-4.078/IP.pm">http://search.cpan.org/~miker/NetAddr-IP-4.078/IP.pm</a></td>
</tr>
<tr class="row-even"><td>coalesce_masklen_v6</td>
<td>ip_allow.config</td>
<td>The masklen to use when coalescing v6 networks into one line using <a class="reference external" href="http://search.cpan.org/~miker/NetAddr-IP-4.078/IP.pm">http://search.cpan.org/~miker/NetAddr-IP-4.078/IP.pm</a></td>
</tr>
<tr class="row-odd"><td>health.threshold.loadavg</td>
<td>rascal.properties</td>
<td>The Unix load average at which Traffic Router will stop sending traffic to this cache</td>
</tr>
<tr class="row-even"><td>health.threshold.\
availableBandwidthInKbps</td>
<td>rascal.properties</td>
<td>The amount of bandwidth that Traffic Router will try to keep available on the cache.
For example: “”&gt;1500000” means stop sending new traffic to this cache when traffic is at 8.5Gbps on a 10Gbps interface.</td>
</tr>
</tbody>
</table>
<p>Below is a list of Traffic Server plugins that need to be configured in the parameter table:</p>
<table border="1" class="docutils">
<colgroup>
<col width="9%" />
<col width="8%" />
<col width="28%" />
<col width="55%" />
</colgroup>
<thead valign="bottom">
<tr class="row-odd"><th class="head">Name</th>
<th class="head">Config file</th>
<th class="head">Description</th>
<th class="head">Details</th>
</tr>
</thead>
<tbody valign="top">
<tr class="row-even"><td>astats_over_http</td>
<td>package</td>
<td>The package version for the astats_over_http plugin.</td>
<td><a class="reference external" href="http://trafficcontrol.apache.org/downloads/index.html">astats_over_http</a></td>
</tr>
<tr class="row-odd"><td>trafficserver</td>
<td>package</td>
<td>The package version for the trafficserver plugin.</td>
<td><a class="reference external" href="http://trafficcontrol.apache.org/downloads/index.html">trafficserver</a></td>
</tr>
<tr class="row-even"><td>regex_revalidate</td>
<td>plugin.config</td>
<td>The config to be used for regex_revalidate.
For example: –config regex_revalidate.config</td>
<td><a class="reference external" href="https://docs.trafficserver.apache.org/en/5.3.x/reference/plugins/regex_remap.en.html">regex_revalidate</a></td>
</tr>
<tr class="row-odd"><td>remap_stats</td>
<td>plugin.config</td>
<td>The config to be used for remap_stats.
Value is left blank.</td>
<td><a class="reference external" href="https://github.com/apache/trafficserver/tree/master/plugins/experimental/remap_stats">remap_stats</a></td>
</tr>
</tbody>
</table>
<p>Below is a list of cache parameters for special configuration, which are unlikely to need changes, but may be useful in particular circumstances:</p>
<table border="1" class="docutils">
<colgroup>
<col width="16%" />
<col width="11%" />
<col width="73%" />
</colgroup>
<thead valign="bottom">
<tr class="row-odd"><th class="head">Name</th>
<th class="head">Config file</th>
<th class="head">Description</th>
</tr>
</thead>
<tbody valign="top">
<tr class="row-even"><td>not_a_parent</td>
<td>parent.config</td>
<td>This is a boolean flag and is considered true if it exists and has any value except ‘false’.
This prevents servers with this parameter in their profile from being inserted into the parent.config generated for
servers with this server’s cachegroup as a parent of their cachegroup. This is primarily useful for when edge caches
are configured to have a cachegroup of other edge caches as parents (a highly unusual configuration), and it is
necessary to exclude some, but not all, edges in the parent cachegroup from the parent.config (for example, because they
lack necessary capabilities), but still have all edges in the same cachegroup in order to take traffic from ordinary
delivery services at that cachegroup’s geo location. Once again, this is a highly unusual scenario, and under ordinary
circumstances this parameter should not exist.</td>
</tr>
</tbody>
</table>
</div>
<div class="section" id="regions-locations-and-cache-groups">
<h2>Regions, Locations and Cache Groups<a class="headerlink" href="#regions-locations-and-cache-groups" title="Permalink to this headline">¶</a></h2>
<p>All servers have to have a <cite>location</cite>, which is their physical location. Each location is part of a <cite>region</cite>, and each region is part of a <cite>division</cite>. For Example, <code class="docutils literal notranslate"><span class="pre">Denver</span></code> could be a location in the <code class="docutils literal notranslate"><span class="pre">Mile</span> <span class="pre">High</span></code> region and that region could be part of the <code class="docutils literal notranslate"><span class="pre">West</span></code> division. Enter your divisions first in  <cite>Misc-&gt;Divisions</cite>, then enter the regions in <cite>Misc-&gt;Regions</cite>, referencing the divisions entered, and finally, enter the physical locations in <cite>Misc-&gt;Locations</cite>, referencing the regions entered.</p>
<p>All servers also have to be part of a <cite>cache group</cite>. A cache group is a logical grouping of caches, that don’t have to be in the same physical location (in fact, usually a cache group is spread across minimally 2 physical Locations for redundancy purposes), but share geo coordinates for content routing purposes. JvD to add more.</p>
</div>
<div class="section" id="configuring-content-purge">
<h2>Configuring Content Purge<a class="headerlink" href="#configuring-content-purge" title="Permalink to this headline">¶</a></h2>
<p>Content purge using ATS is not simple; there is no file system to delete files/directories from, and in large caches it can be hard to delete a simple regular expression from the cache. This is why Traffic Control uses the <a class="reference external" href="https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/regex_revalidate.en.html">Regex Revalidate Plugin</a> to purge content from the system. We don’t actually remove the content, we have a check that gets run before each request on each cache to see if this request matches a list of regular expressions, and if it does, we force a revalidation to the origin, making the original content inaccessible. The regex_revalidate plugin will monitor it’s config file, and will pick up changes to it without a <cite>traffic_line -x</cite> signal to ATS. Changes to this file need to be distributed to the highest tier (MID) caches in the CDN before they are distributed to the lower tiers, to prevent filling the lower tiers with the content that should be purged from the higher tiers without hitting the origin. This is why the ort script (see <a class="reference internal" href="../traffic_server.html#reference-traffic-ops-ort"><span class="std std-ref">Configuring Traffic Server</span></a>) will by default push out config changes to MID first, confirm that they have all been updated, and then push out the changes to the lower tiers. In large CDNs, this can make the distribution and time to activation of the purge too long, and because of that there is the option to not distribute the <cite>regex_revalidate.config</cite> file using the ort script, but to do this using other means. By default, Traffic Ops will use ort to distribute the <cite>regex_revalidate.config</cite> file.</p>
<p>Content Purge is controlled by the following parameters in the profile of the cache:</p>
<table border="1" class="docutils">
<colgroup>
<col width="9%" />
<col width="10%" />
<col width="20%" />
<col width="61%" />
</colgroup>
<thead valign="bottom">
<tr class="row-odd"><th class="head">Name</th>
<th class="head">Config file</th>
<th class="head">Description</th>
<th class="head">Details</th>
</tr>
</thead>
<tbody valign="top">
<tr class="row-even"><td>location</td>
<td>regex_revalidate.config</td>
<td>What location the file should be in on the cache</td>
<td>The presence of this parameter tells ort to distribute this file; delete this parameter from the profile if this file is distributed using other means.</td>
</tr>
<tr class="row-odd"><td>maxRevalDurationDays</td>
<td>regex_revalidate.config</td>
<td>The maximum time a purge can be active</td>
<td>To prevent a build up of many checks before each request, this is longest time the system will allow</td>
</tr>
<tr class="row-even"><td>regex_revalidate</td>
<td>plugin.config</td>
<td>The config to be used for regex_revalidate.
For example: –config regex_revalidate.config</td>
<td><a class="reference external" href="https://docs.trafficserver.apache.org/en/5.3.x/reference/plugins/regex_remap.en.html">regex_revalidate</a></td>
</tr>
<tr class="row-odd"><td>use_reval_pending</td>
<td>global</td>
<td>Configures Traffic Ops to use separate
reval_pending flag for each cache.</td>
<td>When this flag is in use ORT will check for a new regex_revalidate.config every 60 seconds in syncds mode during the dispersal timer. This will
also allow ORT to be run in revalidate mode, which will check for and clear the reval_pending flag.  This can be set to run via cron task.
Enable with a value of 1.  Use of this feature requires Traffic Ops 2.1 and above. Parameter should be assigned to the GLOBAL profile.</td>
</tr>
</tbody>
</table>
<p>Note that the TTL the adminstrator enters in the purge request should be longer than the TTL of the content to ensure the bad content will not be used. If the CDN is serving content of unknown, or unlimited TTL, the administrator should consider using <a class="reference external" href="https://docs.trafficserver.apache.org/en/latest/admin-guide/files/records.config.en.html#proxy-config-http-cache-guaranteed-min-lifetime">proxy-config-http-cache-guaranteed-min-lifetime</a> to limit the maximum time an object can be in the cache before it is considered stale, and set that to the same value as <cite>maxRevalDurationDays</cite> (Note that the former is in seconds and the latter is in days, so convert appropriately).</p>
<div class="section" id="creating-the-centos-kickstart-file">
<span id="creating-centos-kickstart"></span><h3>Creating the CentOS Kickstart File<a class="headerlink" href="#creating-the-centos-kickstart-file" title="Permalink to this headline">¶</a></h3>
<p>The kickstart file is a text file, containing a list of items, each identified by a keyword. You can create it by using the Kickstart Configurator application, or writing it from scratch. The Red Hat Enterprise Linux installation program also creates a sample kickstart file based on the options that you selected during installation. It is written to the file <code class="docutils literal notranslate"><span class="pre">/root/anaconda-ks.cfg</span></code>. This file is editable using most text editors that can save files as ASCII text.</p>
<p>To generate ISO, the CentOS Kickstart is necessary:</p>
<ol class="arabic simple">
<li>Create a kickstart file.</li>
<li>Create a boot media with the kickstart file or make the kickstart file available on the network.</li>
<li>Make the installation tree available.</li>
<li>Start the kickstart installation.</li>
</ol>
<p>Create a ks.src file in the root of the selection location. See the example below:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">mkdir</span> <span class="n">newdir</span>
<span class="n">cd</span> <span class="n">newdir</span><span class="o">/</span>
<span class="n">cp</span> <span class="o">-</span><span class="n">r</span> <span class="o">../</span><span class="n">centos65</span><span class="o">/*</span> <span class="o">.</span>
<span class="n">vim</span> <span class="n">ks</span><span class="o">.</span><span class="n">src</span>
<span class="n">vim</span> <span class="n">isolinux</span><span class="o">/</span><span class="n">isolinux</span><span class="o">.</span><span class="n">cfg</span>
<span class="n">cd</span> <span class="n">vim</span> <span class="n">osversions</span><span class="o">.</span><span class="n">cfg</span>
<span class="n">vim</span> <span class="n">osversions</span><span class="o">.</span><span class="n">cfg</span>
</pre></div>
</div>
<p>This is a standard kickstart formatted file that the generate ISO process uses to create the kickstart (ks.cfg) file for the install. The generate ISO process uses the ks.src, overwriting any information set in the Generate ISO tab in Traffic Ops, creating ks.cfg.</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">Streamline your install folder for under 1GB, which assists in creating a CD.</p>
</div>
<div class="admonition seealso">
<p class="first admonition-title">See also</p>
<p class="last">For in-depth instructions, please see <a class="reference external" href="https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Installation_Guide/s1-kickstart2-howuse.html">Kickstart Installation</a></p>
</div>
</div>
</div>
<div class="section" id="configuring-the-go-application">
<h2>Configuring the Go Application<a class="headerlink" href="#configuring-the-go-application" title="Permalink to this headline">¶</a></h2>
<p>Traffic Ops is in the process of migrating from Perl to Go, and currently runs as two applications. The Go application serves all endpoints which have been rewritten in the Go language, and transparently proxies all other requests to the old Perl application. Both applications are installed by the RPM, and both run as a single service. When the project has fully migrated to Go, the Perl application will be removed, and the RPM and service will consist solely of the Go application.</p>
<p>By default, the postinstall script configures the Go application to behave and transparently serve as the old Perl Traffic Ops did in previous versions. This includes reading the old <code class="docutils literal notranslate"><span class="pre">cdn.conf</span></code> and <code class="docutils literal notranslate"><span class="pre">database.conf</span></code> config files, and logging to the old <code class="docutils literal notranslate"><span class="pre">access.log</span></code> location. However, if you wish to customize the Go Traffic Ops application, you can do so by running it with the <code class="docutils literal notranslate"><span class="pre">-oldcfg=false</span></code> argument. By default, it will then look for a config file in <code class="docutils literal notranslate"><span class="pre">/opt/traffic_ops/conf/traffic_ops_golang.config</span></code>. The new config file location may also be customized via the <code class="docutils literal notranslate"><span class="pre">-cfg</span></code> flag. A sample config file is installed by the RPM at <code class="docutils literal notranslate"><span class="pre">/opt/traffic_ops/conf/traffic_ops_golang.config</span></code>. If you wish to run the new Go Traffic Ops application as a service with a new config file, the <code class="docutils literal notranslate"><span class="pre">-oldcfg=false</span></code> and  <code class="docutils literal notranslate"><span class="pre">-cfg</span></code> flags may be added to the <code class="docutils literal notranslate"><span class="pre">start</span></code> function in the service file, located by default at <code class="docutils literal notranslate"><span class="pre">etc/init.d/traffic_ops</span></code>.</p>
</div>
</div>


          </div>
          <footer>
  
    <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
      
        <a href="using.html" class="btn btn-neutral float-right" title="Traffic Ops - Using">Next <span class="fa fa-arrow-circle-right"></span></a>
      
      
        <a href="migration_from_20_to_22.html" class="btn btn-neutral" title="Traffic Ops - Migrating from 2.0 to 2.2"><span class="fa fa-arrow-circle-left"></span> Previous</a>
      
    </div>
  

  <hr/>

  <div role="contentinfo">
    <p>
    </p>
  </div>
  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.

</footer>

        </div>
      </div>

    </section>

  </div>
  


  <div class="rst-versions" data-toggle="rst-versions" role="note" aria-label="versions">
    <span class="rst-current-version" data-toggle="rst-current-version">
      <span class="fa fa-book">Apache Traffic Control (Incubating)</span>
      v: 
      <span class="fa fa-caret-down"></span>
    </span>
    <div class="rst-other-versions">
      <dl>
        <dt>Versions</dt>
        <dd><a href="/docs/master/">latest</a></dd>
        <dd><a href="/docs/2.0/">2.0</a></dd>
        <dd><a href="/docs/1.8.1/">1.8</a></dd>
        <dd><a href="/docs/1.7.0/">1.7</a></dd>
      </dl>
      <hr/>
      Free document hosting provided by <a href="http://www.readthedocs.org">Read the Docs</a>.

    </div>
  </div>

  

    <script type="text/javascript">
        var DOCUMENTATION_OPTIONS = {
            URL_ROOT:'../../',
            VERSION:'2.2-dev',
            COLLAPSE_INDEX:false,
            FILE_SUFFIX:'.html',
            HAS_SOURCE:  true,
            SOURCELINK_SUFFIX: '.txt'
        };
    </script>
      <script type="text/javascript" src="../../_static/jquery.js"></script>
      <script type="text/javascript" src="../../_static/underscore.js"></script>
      <script type="text/javascript" src="../../_static/doctools.js"></script>

  

  
  
    <script type="text/javascript" src="../../_static/js/theme.js"></script>
  

  
  
  <script type="text/javascript">
      jQuery(function () {
          SphinxRtdTheme.StickyNav.enable();
      });
  </script>
   

</body>
</html>