Provisionando Fedora CoreOS no OpenStack
Esse guia mostra como provisionar novos nós Fedora CoreOS (FCOS) em um ambiente de Nuvem OpenStack, seja este privado ou público (como VEXXHOST).
Os passos abaixo foram testados na relase "Victoria' do OpenStack.
Pré-requisitos
Antes de provisionar uma máquina FCOS, você deve ter um arquivo de configuração do Ignition contendo suas personalizações. Se você não tiver um, consulte Produzindo um arquivo de Ignition.
Fedora CoreOS tem um usuário padrão core que pode ser usado para explorar o sistema operacional. Se você quiser usá-lo, finalize sua configuração fornecendo, por exemplo, uma chave SSH.
|
Se você não quiser usar o Ignition para começar, você pode usar o suporte ao Afterburn.
Você também deve ter acesso a um ambiente OpenStack e a uma CLI openstack
funcional. Tipicamente, você irá configurar o cliente usando um arquivo clouds.yaml
ou via variáveis de ambiente. Se você está começando do 0, esse ambiente deve precisar de redes, pares de chave SSH, grupos de segurança, etc… configure. Por favor consulte a Documentação do OpenStack para aprender mais.
Baixando uma imagem OpenStack
Fedora CoreOS é designado para ser atualizado automaticamente, com diferentes rotinas por fluxo. Uma vez que você tenha escolhido o fluxo relevante, faça o download, verifique e descomprima a última imagem OpenStack:
Para mais informações sobre ofertas de Fluxos FCOS veja Fluxo de atualizações. |
STREAM='stable'
coreos-installer download --decompress -s $STREAM -p openstack -f qcow2.xz
Alternativamente, você pode baixar manualmente uma imagem OpenStack da página de downloads. Verificar o download, seguindo as instruções nessa página, e descomprimir.
Realizando o upload da imagem para o OpenStack
FILE=fedora-coreos-XX.XXXXXXXX.X.X-openstack.x86_64.qcow2
IMAGE=${FILE:0:-6} # pull off .qcow2
openstack image create --disk-format=qcow2 --min-disk=10 --min-ram=2 --progress --file=$FILE $IMAGE
If you’re uploading an aarch64 disk image then add --property architecture=aarch64 .
|
openstack image list --name=$IMAGE
Once the image is listed as active
, it’s ready to be used.
Iniciando uma instância de VM
Agora que você tem uma imagem criada na sua conta você pode lançar uma instância de VM. Você terá que especificar vários detalhes de informação no comando, como a versão da instância, informação de rede, chave SSH, etc…
Você também precisará da configuração Ignition que você criou anteriormente. Aqui está representado no comando de exemplo como ./example.ign
, que indica um arquivo no diretório corrente nomeado example.ign
.
OPENSTACK_NETWORK=private
OPENSTACK_KEYPAIR=mykeypair # optional
OPENSTACK_FLAVOR=v1-standard-2
INSTANCE_NAME=myinstance # choose a name
openstack server create \
--key-name=$OPENSTACK_KEYPAIR \
--network=$OPENSTACK_NETWORK \
--flavor=$OPENSTACK_FLAVOR \
--image=$IMAGE \
--user-data ./example.ign \
$INSTANCE_NAME
Especificar --key-name é opcional se você prover uma chave SSH na sua configuração Ignition.
|
Monitor progress of the instance creation with openstack server show $INSTANCE_NAME . You can also use the --wait parameter when calling openstack server create to block until the instance is active.
|
Next, if the instance’s network isn’t externally facing and you’d like to SSH into it from outside the OpenStack environment, you will have to assign a public IP to the instance:
OPENSTACK_NETWORK=public
openstack floating ip create $OPENSTACK_NETWORK
FLOATING_IP=1.1.1.1 # do ip flutuante recém-criado
openstack server add floating ip $INSTANCE_NAME $FLOATING_IP
You now should be able to SSH into the instance using the floating IP address.
ssh core@<endereço ip>
Want to help? Learn how to contribute to Fedora Docs ›