3.3. 为自动扩展准备独立部署

要在生产环境中测试自动扩展实例的堆栈部署,您可以使用独立部署部署堆栈。您可以使用此流程使用独立环境测试部署。在生产环境中,部署命令不同。

流程

  1. stack 用户身份登录您的环境。
  2. 设置 OS_CLOUD 环境变量:

    [stack@standalone ~]$ export OS_CLOUD=standalone
  3. 配置云,以允许部署使用带有附加的私有和公共网络接口的 Fedora 36 云平台的模拟站工作负载。这个示例是使用独立部署的工作配置:

    $ export GATEWAY=192.168.25.1
    $ export STANDALONE_HOST=192.168.25.2
    $ export PUBLIC_NETWORK_CIDR=192.168.25.0/24
    $ export PRIVATE_NETWORK_CIDR=192.168.100.0/24
    $ export PUBLIC_NET_START=192.168.25.3
    $ export PUBLIC_NET_END=192.168.25.254
    $ export DNS_SERVER=1.1.1.1
  4. 创建类别:

    $ openstack flavor create --ram 2048 --disk 10 --vcpu 2 --public m1.small
  5. 下载并导入 Fedora 36 x86_64 云镜像:

    $ curl -L 'https://download.fedoraproject.org/pub/fedora/linux/releases/36/Cloud/x86_64/images/Fedora-Cloud-Base-36-1.5.x86_64.qcow2' -o $HOME/fedora36.qcow2
    $ openstack image create fedora36 --container-format bare --disk-format qcow2 --public --file $HOME/fedora36.qcow2
  6. 生成并导入公钥:

    $ ssh-keygen -f $HOME/.ssh/id_rsa -q -N "" -t rsa -b 2048
    $ openstack keypair create --public-key $HOME/.ssh/id_rsa.pub default
  7. 创建允许 SSH、IC ICMP 和 DNS 协议 的基本 安全组:

    $ openstack security group create basic
    $ openstack security group rule create basic --protocol tcp --dst-port 22:22 --remote-ip 0.0.0.0/0
    $ openstack security group rule create --protocol icmp basic
    $ openstack security group rule create --protocol udp --dst-port 53:53 basic
  8. 创建外部网络(public):

    $ openstack network create --external --provider-physical-network datacentre --provider-network-type flat public
  9. 创建专用网络:

    $ openstack network create --internal private
    openstack subnet create public-net \
      --subnet-range $PUBLIC_NETWORK_CIDR \
      --no-dhcp \
      --gateway $GATEWAY \
      --allocation-pool start=$PUBLIC_NET_START,end=$PUBLIC_NET_END \
      --network public
    $ openstack subnet create private-net \
      --subnet-range $PRIVATE_NETWORK_CIDR \
      --network private
  10. 创建路由器:

    $ openstack router create vrouter
    $ openstack router set vrouter --external-gateway public
    $ openstack router add subnet vrouter private-net

其他资源