Validação do sistema operacional convidado no vSphere usando Ansible
Começando
Pré -requisitos
- Instale o Ansible em sua máquina de controle, consulte a instalação do Ansible
- Instale o mecanismo OCR de código aberto TESSERACT para extrair texto das capturas de tela, consulte a instalação do TESSERACT
- Instale as bibliotecas Python necessárias em requisitos.txt
$ pip install -r requirements.txt
- Instale as coleções Ansible necessárias com a versão mais recente em requisitos.yml
$ ansible-galaxy install -r requirements.yml
- Faça login na máquina de controle local como raiz ou um usuário em sudoers, que deve ativar o NOPASSWD para todos os comandos
Etapas para iniciar o teste
- Projeto Git Clone do GitHub ao seu espaço de trabalho na máquina de controle.
- Defina os parâmetros necessários para o teste neste arquivo:
vars/test.yml . - Modifique os casos de teste no arquivo da lista de casos de teste no caminho padrão abaixo.
- Para testes Linux:
linux/gosv_testcase_list.yml - Para testes do Windows:
windows/gosv_testcase_list.yml
- Inicie o teste usando os comandos abaixo do mesmo caminho do
main.yml .
# For Linux testing:
# you can use below command to use the default variables file "vars/test.yml",
# and default test case list file "linux/gosv_testcase_list.yml"
$ ansible-playbook main.yml
# For Linux or Windows testing:
# you can use below command to set the path of a customized variables file and
# test case list file
$ ansible-playbook main.yml -e "testing_vars_file=/path_to/test.yml testing_testcase_file=/path_to/gosv_testcase_list.yml"
- Uma nova pasta de log será criada para a execução atual do teste, que incluirá arquivos de log e arquivos coletados nos casos de teste, por exemplo,
logs/test-vm/2021-07-06-09-27-51/ . Você pode encontrar arquivos de log:
-
results.log que contém informações de teste, informações da VM e resultados do caso de teste -
full_debug.log , que contém troncos de depuração de teste -
failed_tasks.log , que contém logs de tarefas com falha -
known_issues.log , que lista os problemas conhecidos que se encontram na execução de teste atual
Catálogo
- Main.yml: Playbook principal para teste de validação do sistema operacional convidado
- ANSIBLE.CFG: Arquivo de configuração Ansible personalizado do usuário
- AutoInstall: Pasta para convidado Sistema Operacional de Instalação de Instalar Arquivos de Configuração
- Comum: Pasta para tarefas comuns chamadas em casos de teste
- Docos: Pasta para Guia Arquivo e Problemas Conhecidos
- Env_setup: pasta para manuais ou tarefas para preparar ou limpar o ambiente de teste
- Linux: Pasta para Playbooks para testar o Linux Guest Operating System
- Windows: pasta para playbooks para testar o sistema operacional Windows Guest System
- Plug -in: pasta para scripts de plug -in
- Ferramentas: Pasta para ferramentas de terceiros usados em casos de teste
- VARS: pasta para arquivos variáveis usados no teste
- Changelogs: Pasta para Changelog de cada versão
Cenários de teste suportados
Este projeto suporta cenários abaixo para testes de validação do sistema operacional de ponta a ponta
- Implante a VM e instale o sistema operacional convidado na imagem ISO
- Implante VM de um modelo de óvulos
- VM existente com o sistema operacional de convidado instalado, que deve atender aos requisitos abaixo.
- A VM possui apenas um adaptador de rede e o adaptador de rede está conectado.
- SSH e Python estão instalados e ativados.
- A variável vm_python em vars/test.yml deve ser definida com o caminho correto do python. Ou o usuário pode definir o caminho em /etc /ambiente no sistema operacional convidado para incluir o caminho do diretório binário para o Python.
- O usuário raiz deve ser ativado e permitido fazer login através do sistema operacional SSH no Linux.
- Execute ConfigureRemOtingForansible.ps1 Script no sistema operacional Windows Guest com antecedência.
Sistemas operacionais compatíveis com convidados
| Sistemas operacionais convidados | Instalação automática da imagem ISO | Implantar do modelo de óvulos | VM existente com o sistema operacional convidado instalado |
|---|
| Red Hat Enterprise Linux 7.x, 8.x, 9.x | ✔️ | | ✔️ |
| CentOS 7.x, 8.x. | ✔️ | | ✔️ |
| CentOS Stream 8, 9, 10 | ✔️ | | ✔️ |
| Oracle Linux 7.x, 8.x, 9.x | ✔️ | | ✔️ |
| Rocky Linux 8.x, 9.x | ✔️ | | ✔️ |
| Almalinux 8.x, 9.x. | ✔️ | | ✔️ |
| SUSE Linux Enterprise 15 SP3 e mais tarde | ✔️ | | ✔️ |
| VMware Photon OS 3.0, 4.0, 5.0 | ✔️ | ✔️ | ✔️ |
| Ubuntu 20.04 e mais tarde | ✔️ | ✔️ | ✔️ |
| Flatcar 2592.0.0 e mais tarde | | ✔️ | ✔️ |
| Debian 10.10 e mais tarde, 11.x, 12.x | ✔️ | | ✔️ |
| Windows 10, 11 | ✔️ | | ✔️ |
| Windows Server 2019, 2022, 2025 | ✔️ | | ✔️ |
| UnionTech OS Server 20 1050A | ✔️ | | ✔️ |
| Fedora 36 Server, Workstation e mais tarde | ✔️ | | ✔️ |
| Prolinux Server 7.9, 8.5 | ✔️ | | ✔️ |
| FreeBSD 13 e mais tarde | ✔️ | | ✔️ |
| Pardus 21.2 Server, XFCE Desktop e mais tarde | ✔️ | | ✔️ |
| Pardus 23.x Server, XFCE Desktop | ✔️ | | ✔️ |
| OpenSuse salto 15.3 e mais tarde | ✔️ | | ✔️ |
| Bclinux 8.x. | ✔️ | | ✔️ |
| Bclinux-for-Ouler 21.10 | ✔️ | | ✔️ |
| Red Hat Enterprise Linux Coreos (RHCOS) 4.13 e mais tarde | | ✔️ | ✔️ |
| Fusionos 22 e 23 | ✔️ | | ✔️ |
| Miracle Linux 8.x, 9.x | ✔️ | | ✔️ |
| Kylin Linux Advanced Server V10 | ✔️ | | ✔️ |
Notas Esta lista de sistemas operacionais de convidados compatíveis é usada apenas para este projeto. Para o status de suporte do sistema operacional de convidado no ESXi, consulte o VMware Compatibility Guide.
Imagens do Docker
- Mais recente (Release v3.2):
- Projects.packages.broadcom.com/gos_cert/ansible-vsphere-gos-validation:latest
- Liberação v3.2:
- Projects.packages.broadcom.com/gos_cert/ansible-vsphere-gos-validation:v3.2
Iniciar testes usando a imagem do Docker
- Execute os comandos abaixo em sua máquina
$ docker pull projects.packages.broadcom.com/gos_cert/ansible-vsphere-gos-validation:latest
$ docker run -it --privileged projects.packages.broadcom.com/gos_cert/ansible-vsphere-gos-validation:latest
- Inicie os testes no contêiner iniciado após as etapas nesta seção etapas para iniciar o teste