summaryrefslogtreecommitdiffstats
path: root/book-enea-nfv-core-installation-guide/doc/mixed_arch.xml
blob: d0666d88793f800030e393e15bc4569b39d5d248 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?xml version="1.0" encoding="ISO-8859-1"?>
<chapter id="mixed_arch">
  <title>Mixed Arch Deployment</title>

  <para>Mixed Arch deployment support allows a user to install Enea NFV Core
  on a cluster containing a mixture of servers, with x86_64 and aarch64 CPU
  families. The recommended topologies consist of deploying x86 Controllers
  and aarch64 Compute nodes, or mixed x86_64 and aarch64 Compute nodes.</para>

  <section id="launch_multiarch_env">
    <title>Launching Instances in a Mixed Arch environment</title>

    <para>Before launching an instance, the user needs to ensure certain
    prerequisites are present:</para>

    <itemizedlist>
      <listitem>
        <para>Have OpenStack images installed for both architectures:</para>

        <programlisting>#image for x86
glance image-create --name dpdk-image-x86 --visibility public --disk-format raw \
--container-format bare --file dpdk-image-x86-compiled
#image for ARM
glance image-create --name dpdk-image-arm --visibility public --disk-format raw \
--container-format bare --file dpdk-image-arm-compiled
glance image-update [ID] --property hw_firmware_type=uefi</programlisting>
      </listitem>

      <listitem>
        <para>Have Openstack configured with per-arch scheduling information.
        The following is an example configuration:</para>

        <orderedlist>
          <listitem>
            <para>Create a host aggregate:</para>

            <programlisting>nova aggregate-create x86_64
nova aggregate-set-metadata x86_64 arch=x86_64
nova aggregate-add-host x86_64 node-6.domain.tld</programlisting>
          </listitem>

          <listitem>
            <para>Create a flavor and tie it to the aggregate:</para>

            <programlisting>openstack flavor create --ram 4096 --disk 4 --vcpus 4 dpdk-x86
nova flavor-key dpdk-x86 set aggregate_instance_extra_specs:arch=x86_64
nova flavor-key dpdk-x86 set hw:mem_page_size=any
openstack flavor set --property hw:cpu_policy=dedicated dpdk-x86</programlisting>
          </listitem>
        </orderedlist>
      </listitem>

      <listitem>
        <para>Launch the VM:</para>

        <programlisting>nova boot --image dpdk-image-x86 --flavor dpdk-x86 pktgen-x86</programlisting>

        <para>It will be placed on the x86 hypervisor from node-6.</para>
      </listitem>
    </itemizedlist>
  </section>
</chapter>