<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Guides on Documentation</title>
    <link>/docs/openstack-iaas/guides/</link>
    <description>Recent content in Guides on Documentation</description>
    <generator>Hugo</generator>
    <language>en</language>
    <atom:link href="/docs/openstack-iaas/guides/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Affinity Policy</title>
      <link>/docs/openstack-iaas/guides/affinity/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>/docs/openstack-iaas/guides/affinity/</guid>
      <description>&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;/h2&gt;&#xA;&lt;p&gt;Here is how to avoid that groups of instances run on the same compute node. This can be relevant when configuring resilience.&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Create an anti affinity group. &lt;br&gt;&#xA;Take note of the group UUID that is displayed when created. It is needed when deploying the instance.&lt;br&gt;&#xA;&lt;code&gt;openstack server group create --policy anti-affinity testgroup&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://docs.openstack.org/python-openstackclient/yoga/cli/command-objects/server-group.html&#34;&gt;https://docs.openstack.org/python-openstackclient/yoga/cli/command-objects/server-group.html&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;(Optional) Read out the affinity policies.&lt;br&gt;&#xA;&lt;code&gt;openstack server group list | grep -Ei &amp;quot;Policies|affinity&amp;quot;&lt;/code&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Add the instance to the group when deploying.&lt;br&gt;&#xA;&lt;code&gt;openstack server create --image ubuntu-20.04-server-latest --flavor v1-small-1 --hint group=&amp;lt;server_group_uuid&amp;gt; test-instance&lt;/code&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>API access</title>
      <link>/docs/openstack-iaas/guides/api_access/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>/docs/openstack-iaas/guides/api_access/</guid>
      <description>&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;&#xA;&lt;p&gt;OpenStack provides REST APIs for programmatic interaction with the various services (compute, object storage, etc.).&#xA;These APIs are used by automation tools such as&#xA;&lt;a href=&#34;https://registry.terraform.io/providers/terraform-provider-openstack/openstack/latest/docs&#34;&gt;HashiCorp Terraform&lt;/a&gt; and&#xA;the &lt;a href=&#34;https://docs.openstack.org/python-openstackclient/latest/&#34;&gt;OpenStack CLI utility&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;For advanced programmatic usage, there exist freely available&#xA;&lt;a href=&#34;https://wiki.openstack.org/wiki/SDKs&#34;&gt;SDKs and software libraries for several languages&lt;/a&gt; which are maintained by the&#xA;OpenStack project or community members.&lt;/p&gt;&#xA;&lt;p&gt;This guides describes the initial steps required for manual usage of the OpenStack REST APIs.&lt;/p&gt;&#xA;&lt;h2 id=&#34;authentication&#34;&gt;Authentication&lt;/h2&gt;&#xA;&lt;p&gt;Usage of an &lt;a href=&#34;../ac/application_credentials/&#34;&gt;application credential&lt;/a&gt; for API authentication is recommend due to their&#xA;security and operational benefits.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Barbican</title>
      <link>/docs/openstack-iaas/guides/barbican/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>/docs/openstack-iaas/guides/barbican/</guid>
      <description>&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;/h2&gt;&#xA;&lt;p&gt;&lt;em&gt;OpenStack Barbican&lt;/em&gt; is a key management service for storing highly sensitive data like private keys for certificates and passwords which needs to be available for applications during runtime.&lt;/p&gt;&#xA;&lt;p&gt;ELASTX Barbican service is backed by physical HSM appliances to ensure that all data is securely stored.&lt;/p&gt;&#xA;&lt;p&gt;REST API reference can be found &lt;a href=&#34;https://docs.openstack.org/barbican/yoga/api/index.html&#34;&gt;here&lt;/a&gt;&lt;br&gt;&#xA;OpenStack Barbican client can be found &lt;a href=&#34;https://docs.openstack.org/python-barbicanclient/latest/cli/cli_usage.html&#34;&gt;here&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Secrets in Barbican have a special design with regards to ID, they are always referenced by a &amp;ldquo;secret href&amp;rdquo; instead of a UUID! (This will change in a later release!)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Billing</title>
      <link>/docs/openstack-iaas/guides/billing/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>/docs/openstack-iaas/guides/billing/</guid>
      <description>&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;/h2&gt;&#xA;&lt;p&gt;We use &lt;em&gt;OpenStack CloudKitty&lt;/em&gt; for billing purposes and with it&amp;rsquo;s open API it is possible to get detailed information about the cost of resources.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;em&gt;&lt;strong&gt;NOTE:&lt;/strong&gt;&lt;/em&gt; The billing data engine is ALWAYS 4 hours behind so it is only possible to retrieve rating data up until 4 hours ago! This is to ensure that all billing data is in place before calculating costs.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;h2 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h2&gt;&#xA;&lt;p&gt;To fetch data from cloudkitty using the OpenStack CLI it is neccessary to install the openstack python client and the openstack cloudkitty python client.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Detach &amp; Attach interface on a Ubuntu instance</title>
      <link>/docs/openstack-iaas/guides/ubuntu_detach_attach_interface/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>/docs/openstack-iaas/guides/ubuntu_detach_attach_interface/</guid>
      <description>&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;/h2&gt;&#xA;&lt;p&gt;If you need to change interface on a Ubuntu instance, then this is the procedure to use.&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Run the following command in the instance.&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt; sudo cloud-init clean&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Shut down the instance&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Detach / Attach the network interface&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Start the instance&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Reassociate Floating IP with the instance&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;</description>
    </item>
    <item>
      <title>EC2 Credentials</title>
      <link>/docs/openstack-iaas/guides/ec2_credentials/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>/docs/openstack-iaas/guides/ec2_credentials/</guid>
      <description>&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;/h2&gt;&#xA;&lt;p&gt;For using the OpenStack S3 API:s you need to generate an additional set of credentials. These can then be used to store data in the Swift Object store for applications that don&amp;rsquo;t have native Swift support but do support the S3 interfaces.&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;NOTE: If the application does support Swift natively, using Swift will provide superior performance and generally a better experience.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;create-and-fetch-credentials-using-openstack-cli&#34;&gt;Create and fetch credentials using openstack cli&lt;/h2&gt;&#xA;&lt;p&gt;Make sure you have installed the openstack python client.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Octavia</title>
      <link>/docs/openstack-iaas/guides/octavia/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>/docs/openstack-iaas/guides/octavia/</guid>
      <description>&lt;p&gt;This is an example of a minimal setup that includes a basic HTTP loadbalancer.&#xA;Here is a short explanation of a minimal (configuration) setup from GUI (Horizon).&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Network -&amp;gt; Loadbalancer -&amp;gt; Create loadbalancer&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Load Balancer Details:&#xA;Subnet: Where your webservers live&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Listener Details:&#xA;Select HTTP, port 80.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Pool Details:&#xA;This is your &amp;ldquo;pool of webservers&amp;rdquo;.&#xA;Select Algoritm of preference.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Pool members:&#xA;Select your webservers.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Finally, proceed to &amp;ldquo;Create Loadbalancer&amp;rdquo;.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Note, the loadbalancer will not show up in the Network Topology graph. This is expected.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Terraform Backend</title>
      <link>/docs/openstack-iaas/guides/terraform_backend/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>/docs/openstack-iaas/guides/terraform_backend/</guid>
      <description>&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;/h2&gt;&#xA;&lt;p&gt;Swift is accessable with the s3 backend. To get the access and secret key follow this guide. &lt;a href=&#34;../ec2_credentials/&#34;&gt;EC2 credentials&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;example-configuration&#34;&gt;Example configuration&lt;/h2&gt;&#xA;&lt;p&gt;This is what you need to get the s3 backend to work with swift.&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;backend &amp;#34;s3&amp;#34; {&#xA;  bucket = &amp;#34;&amp;lt;The bucket you want to use&amp;gt;&amp;#34;&#xA;  key    = &amp;#34;&amp;lt;Path and name to tf state file&amp;gt;&amp;#34;&#xA;  endpoint   = &amp;#34;https://swift.elastx.cloud&amp;#34;&#xA;  sts_endpoint = &amp;#34;https://swift.elastx.cloud&amp;#34;&#xA;  access_key = &amp;#34;&amp;lt;Puth your access key here&amp;gt;&amp;#34;&#xA;  secret_key = &amp;#34;&amp;lt;Put your secret key here&amp;gt;&amp;#34;&#xA;  region = &amp;#34;us-east-1&amp;#34;&#xA;  force_path_style = &amp;#34;true&amp;#34;&#xA;  skip_credentials_validation = &amp;#34;true&amp;#34;&#xA;}&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;key variable example: &amp;ldquo;path/to/tf-state-file&amp;rdquo;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>User Management</title>
      <link>/docs/openstack-iaas/guides/user_management/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>/docs/openstack-iaas/guides/user_management/</guid>
      <description>&lt;h2 id=&#34;overview&#34;&gt;Overview&lt;/h2&gt;&#xA;&lt;p&gt;User management is no longer available in Horizon, OpenStacks UI. To add or manage users in your project, you can now use the Elastx cloud console instead. See &lt;a href=&#34;/docs/ecc/&#34;&gt;here&lt;/a&gt; for more information on how to get started.&lt;/p&gt;&#xA;&lt;h2 id=&#34;user-management&#34;&gt;User management&lt;/h2&gt;&#xA;&lt;p&gt;There are a couple of roles that can be assigned to users inside of a project:&lt;/p&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th&gt;Role&lt;/th&gt;&#xA;          &lt;th&gt;Description&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;load-balancer_member&lt;/td&gt;&#xA;          &lt;td&gt;Allow access to manage load balancers (Octavia).&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;swiftoperator&lt;/td&gt;&#xA;          &lt;td&gt;Allow access to manage objects in object store (Swift).&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;heat_stack_owner&lt;/td&gt;&#xA;          &lt;td&gt;Allow access to manage orchestration templates (Heat).&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;_member_&lt;/td&gt;&#xA;          &lt;td&gt;Allow access to core services such as compute (Nova), network (Neutron) and volume (Cinder).&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;creator&lt;/td&gt;&#xA;          &lt;td&gt;Allow access to manage objects inside of secret store (Barbican).&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;</description>
    </item>
  </channel>
</rss>
