<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Dell Technologies – Examples</title>
    <link>https://dell.github.io/terraform-docs/v1.8.1/storage/platforms/powerscale/product_guide/examples/</link>
    <description>Recent content in Examples on Dell Technologies</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    
	  <atom:link href="https://dell.github.io/terraform-docs/v1.8.1/storage/platforms/powerscale/product_guide/examples/index.xml" rel="self" type="application/rss+xml" />
    
    
      
        
      
    
    
    <item>
      <title>V1.8.1: Adding Asynchronous Operations</title>
      <link>https://dell.github.io/terraform-docs/v1.8.1/storage/platforms/powerscale/product_guide/examples/aync_resource_info/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://dell.github.io/terraform-docs/v1.8.1/storage/platforms/powerscale/product_guide/examples/aync_resource_info/</guid>
      <description>
        
        
        &lt;h1 id=&#34;terraform-internal-behaviour&#34;&gt;Terraform Internal Behaviour&lt;/h1&gt;
&lt;p&gt;Terraform&amp;rsquo;s concurrent execution capabilities allow multiple operations to run in parallel, each thread responsible for managing the lifecycle of a resource. However, even with this parallel execution, each individual thread must still execute its operations in a synchronous manner. By default, Terraform&amp;rsquo;s create, update, and delete operations wait for a resource to reach its expected lifecycle state before proceeding with the next step.&lt;/p&gt;
&lt;p&gt;For instance, when a resource is in the creation phase, Terraform will not advance to the subsequent step until the resource has successfully reached the completion phase. In scenarios where platform operations are performed asynchronously, which can result in extended creation times, Terraform will wait for the resource to reach the completion phase before proceeding, thereby introducing a delay in the overall workflow.&lt;/p&gt;
&lt;h1 id=&#34;consideration-for-asynchronous-operations-in-terraform&#34;&gt;Consideration for Asynchronous Operations In Terraform&lt;/h1&gt;
&lt;p&gt;When utilizing Terraform, it is essential to consider the implications of asynchronous operations of the platform. To ensure seamless automation, this guide provides recommendations for resources that support asynchronous operations, enabling users to effectively integrate these features into their infrastructure provisioning workflows.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The state file doesn&amp;rsquo;t have the full information of the resource because the resource is not yet created.&lt;/li&gt;
&lt;li&gt;The resource&amp;rsquo;s stage must be refreshed to get its full information, including whether the resource failed to be created.&lt;/li&gt;
&lt;li&gt;Terraform does not check the stage of a resource again after initiating its creation or deletion. Failed operations are only shown in subsequent refreshes of the resource.&lt;/li&gt;
&lt;li&gt;The asynchronous resource must have no dependencies, because the resource is not fully created before another operation begins.&lt;/li&gt;
&lt;/ol&gt;
&lt;h1 id=&#34;list-of-asynchronous-resources&#34;&gt;List of Asynchronous Resources&lt;/h1&gt;
&lt;ol&gt;
&lt;li&gt;SyncIQ replication Job&lt;/li&gt;
&lt;li&gt;Snapshot Restore (Only SnapRevert Operation)&lt;/li&gt;
&lt;/ol&gt;

      </description>
    </item>
    
    <item>
      <title>V1.8.1: SyncIQ Workflow</title>
      <link>https://dell.github.io/terraform-docs/v1.8.1/storage/platforms/powerscale/product_guide/examples/synciq_workflow/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://dell.github.io/terraform-docs/v1.8.1/storage/platforms/powerscale/product_guide/examples/synciq_workflow/</guid>
      <description>
        
        
        &lt;p&gt;SyncIQ Workflow Explanation&lt;/p&gt;
&lt;p&gt;SyncIQ is a data management solution that helps manage data movement between different locations. The workflow involves enabling the SyncIQ service, creating a SyncIQ policy, creating a replication job from the policy, and monitoring the job&amp;rsquo;s status using a replication report.&lt;/p&gt;
&lt;p&gt;Step 1: Enable SyncIQ Service&lt;/p&gt;
&lt;p&gt;To begin, the SyncIQ service needs to be enabled. This is done using the powerscale_synciq_global_settings resource in Terraform. The service parameter is set to &amp;ldquo;on&amp;rdquo; to enable the service.&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;### Make sure SyncIQ service is enabled

resource &amp;#34;powerscale_synciq_global_settings&amp;#34; &amp;#34;enable_synciq&amp;#34; {
  service                 = &amp;#34;on&amp;#34;
}
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Step 2: Create SyncIQ Policy&lt;/p&gt;
&lt;p&gt;Next, a SyncIQ policy needs to be created. A policy defines the rules for data movement, such as the source and target locations, and the action to take (e.g., sync). In this example, a policy named policy1 is created with the following settings:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;action is set to &amp;ldquo;sync&amp;rdquo; to synchronize data between the source and target locations.&lt;/li&gt;
&lt;li&gt;source_root_path is set to &amp;ldquo;/ifs&amp;rdquo; to specify the source location.&lt;/li&gt;
&lt;li&gt;target_host is set to &amp;ldquo;10.10.10.10&amp;rdquo; to specify the target location.&lt;/li&gt;
&lt;li&gt;target_path is set to &amp;ldquo;/ifs/policy1Sink&amp;rdquo; to specify the target path.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;### Create SyncIQ policy with action sync

resource &amp;#34;powerscale_synciq_policy&amp;#34; &amp;#34;policy1&amp;#34; {
  name             = &amp;#34;policy1&amp;#34;
  action           = &amp;#34;sync&amp;#34; # action can be sync or copy
  source_root_path = &amp;#34;/ifs/Source&amp;#34;
  target_host      = &amp;#34;10.10.10.10&amp;#34;
  target_path      = &amp;#34;/ifs/policy1Sink&amp;#34;
}
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Step 3: Create Replication Job&lt;/p&gt;
&lt;p&gt;A replication job is created from the SyncIQ policy using the powerscale_synciq_replication_job resource. The job is configured to run the policy (identified by the id parameter) and is not paused (i.e., is_paused is set to false).&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;### Create replication job from SyncIQ policy

resource &amp;#34;powerscale_synciq_replication_job&amp;#34; &amp;#34;job1&amp;#34; {
  action    = &amp;#34;run&amp;#34; # action can be run, test, resync_prep, allow_write or allow_write_revert
  id        = &amp;#34;policy1&amp;#34;
  is_paused = false
}
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Step 4: Monitor Replication Job Status&lt;/p&gt;
&lt;p&gt;To monitor the status of the replication job, a replication report can be used. The powerscale_synciq_replication_report resource is used to filter the report to show only the replication job with the name Policy1.&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;### Use replication report to view the status of the job

data &amp;#34;powerscale_synciq_replication_report&amp;#34; &amp;#34;filtering&amp;#34; {
  filter {
    policy_name        = &amp;#34;Policy1&amp;#34;
  }
}
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;By following these steps, SyncIQ can be used to manage data movement between different locations and monitor the status of the replication jobs.&lt;/p&gt;

      </description>
    </item>
    
  </channel>
</rss>
