Introduzione alla configurazione di Ansible
Quando si usa SAP Deployment Automation Framework, è possibile eseguire una distribuzione automatizzata dell'infrastruttura. È anche possibile eseguire le configurazioni del sistema operativo necessarie e installare SAP usando i playbook Ansible forniti nel repository. Questi playbook si trovano nel repository del framework di automazione nella /sap-automation/deploy/ansible
cartella .
Filename | Descrizione |
---|---|
playbook_01_os_base_config.yaml |
Configurazione del sistema operativo di base |
playbook_02_os_sap_specific_config.yaml |
Configurazione del sistema operativo specifico di SAP |
playbook_03_bom_processing.yaml |
Elaborazione di materiali fattura SAP |
playbook_04_00_00_hana_db_install |
Installazione del database SAP HANA |
playbook_05_00_00_sap_scs_install.yaml |
Installazione dei servizi centrali SAP |
playbook_05_01_sap_dbload.yaml |
Caricatore di database |
playbook_04_00_01_hana_hsr.yaml |
Configurazione a disponibilità elevata di SAP HANA |
playbook_05_02_sap_pas_install.yaml |
Installazione del server applicazioni primario SAP |
playbook_05_03_sap_app_install.yaml |
Installazione del server applicazioni SAP |
playbook_05_04_sap_web_install.yaml |
Installazione di SAP Web Dispatcher |
Prerequisiti
I playbook Ansible richiedono i sap-parameters.yaml
file e SID_host.yaml
nella directory corrente.
File di configurazione
Il sap-parameters.yaml
file contiene informazioni usate da Ansible per la configurazione dell'infrastruttura SAP.
---
# bom_base_name is the name of the SAP Application Bill of Materials file
bom_base_name: S41909SPS03_v0010ms
# Set to true to instruct Ansible to update all the packages on the virtual machines
upgrade_packages: false
# TERRAFORM CREATED
sap_fqdn: sap.contoso.net
# kv_name is the name of the key vault containing the system credentials
kv_name: LABSECESAP01user###
# secret_prefix is the prefix for the name of the secret stored in key vault
secret_prefix: LAB-SECE-SAP01
# sap_sid is the application SID
sap_sid: L00
# scs_high_availability is a boolean flag indicating
# if the SAP Central Services are deployed using high availability
scs_high_availability: false
# SCS Instance Number
scs_instance_number: "00"
# scs_lb_ip is the SCS IP address of the load balancer in
# front of the SAP Central Services virtual machines
scs_lb_ip: 10.110.32.26
# ERS Instance Number
ers_instance_number: "02"
# ecs_lb_ip is the ERS IP address of the load balancer in
# front of the SAP Central Services virtual machines
ers_lb_ip:
# sap_sid is the database SID
db_sid: XDB
# platform
platform: HANA
# db_high_availability is a boolean flag indicating if the
# SAP database servers are deployed using high availability
db_high_availability: false
# db_lb_ip is the IP address of the load balancer in front of the database virtual machines
db_lb_ip: 10.110.96.13
disks:
- { host: 'l00dxdb00l0538', LUN: 0, type: 'sap' }
- { host: 'l00dxdb00l0538', LUN: 10, type: 'data' }
- { host: 'l00dxdb00l0538', LUN: 11, type: 'data' }
- { host: 'l00dxdb00l0538', LUN: 12, type: 'data' }
- { host: 'l00dxdb00l0538', LUN: 13, type: 'data' }
- { host: 'l00dxdb00l0538', LUN: 20, type: 'log' }
- { host: 'l00dxdb00l0538', LUN: 21, type: 'log' }
- { host: 'l00dxdb00l0538', LUN: 22, type: 'log' }
- { host: 'l00dxdb00l0538', LUN: 2, type: 'backup' }
- { host: 'l00app00l538', LUN: 0, type: 'sap' }
- { host: 'l00app01l538', LUN: 0, type: 'sap' }
- { host: 'l00scs00l538', LUN: 0, type: 'sap' }
...
Il L00_hosts.yaml
file è il file di inventario usato da Ansible per la configurazione dell'infrastruttura SAP. L'etichetta L00
potrebbe essere diversa per le distribuzioni.
L00_DB:
hosts:
l00dxdb00l0538:
ansible_host : 10.110.96.12
ansible_user : azureadm
ansible_connection : ssh
connection_type : key
vars:
node_tier : hana
L00_SCS:
hosts:
l00scs00l538:
ansible_host : 10.110.32.25
ansible_user : azureadm
ansible_connection : ssh
connection_type : key
vars:
node_tier : scs
L00_ERS:
hosts:
vars:
node_tier : ers
L00_PAS:
hosts:
l00app00l538:
ansible_host : 10.110.32.24
ansible_user : azureadm
ansible_connection : ssh
connection_type : key
vars:
node_tier : pas
L00_APP:
hosts:
l00app01l538:
ansible_host : 10.110.32.15
ansible_user : azureadm
ansible_connection : ssh
connection_type : key
vars:
node_tier : app
L00_WEB:
hosts:
vars:
node_tier : web
Eseguire un playbook
Prima di eseguire questo passaggio, assicurarsi di scaricare il software SAP nell'ambiente Azure.
Un modo per eseguire i playbook consiste nell'usare il menu di configurazione.
Eseguire lo script configuration_menu
.
${HOME}/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/configuration_menu.sh
Per eseguire un playbook o più playbook, usare il comando seguente ansible-playbook
. In questo esempio viene eseguito il playbook di configurazione del sistema operativo.
sap_params_file=sap-parameters.yaml
if [[ ! -e "${sap_params_file}" ]]; then
echo "Error: '${sap_params_file}' file not found!"
exit 1
fi
# Extract the sap_sid from the sap_params_file, so that we can determine
# the inventory file name to use.
sap_sid="$(awk '$1 == "sap_sid:" {print $2}' ${sap_params_file})"
kv_name="$(awk '$1 == "kv_name:" {print $2}' ${sap_params_file})"
prefix="$(awk '$1 == "secret_prefix:" {print $2}' ${sap_params_file})"
password_secret_name=$prefix-sid-password
password_secret=$(az keyvault secret show --vault-name ${kv_name} --name ${password_secret_name} --query value --output table )
export ANSIBLE_PASSWORD=$password_secret
export ANSIBLE_INVENTORY="${sap_sid}_hosts.yaml"
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
export ANSIBLE_COLLECTIONS_PATHS=/opt/ansible/collections${ANSIBLE_COLLECTIONS_PATHS:+${ANSIBLE_COLLECTIONS_PATHS}}
export ANSIBLE_REMOTE_USER=azureadm
export ANSIBLE_PYTHON_INTERPRETER=auto_silent
# Set of options that will be passed to the ansible-playbook command
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars="@${sap_params_file}"
-e ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
"${@}"
)
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_01_os_base_config.yaml
Configurazione del sistema operativo
Il playbook di configurazione del sistema operativo viene usato per configurare il sistema operativo delle macchine virtuali SAP. Il playbook esegue le attività seguenti.
È possibile eseguire il playbook usando:
- La pipeline
Configuration and SAP installation
DevOps scegliendoCore Operating System Configuration
. - Script del menu
configuration_menu.sh
di configurazione . - Riga di comando.
Le attività seguenti vengono eseguite in macchine virtuali Linux:
- Abilitare la registrazione per
sudo
le operazioni. - Assicurarsi che l'agente di macchine virtuali di Azure sia configurato correttamente.
- Assicurarsi che tutti i repository siano registrati e abilitati.
- Assicurarsi che tutti i pacchetti siano installati.
- Creare gruppi di volumi e volumi logici.
- Configurare i parametri del kernel.
- Configurare il routing per più interfacce di rete (se necessario).
- Creare gli account utente e i gruppi.
- Configurare i banner visualizzati al momento dell'accesso.
- Configurare i servizi necessari.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to perform the Operating System configuration
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_01_os_base_config.yaml
Configurazione del sistema operativo specifico di SAP
Il playbook di configurazione del sistema operativo specifico di SAP viene usato per configurare il sistema operativo delle macchine virtuali SAP. Il playbook esegue le attività seguenti.
Le attività seguenti vengono eseguite in macchine virtuali Linux:
- Configurare il file hosts.
- Assicurarsi che tutti i repository specifici di SAP siano registrati e abilitati.
- Assicurarsi che siano installati tutti i pacchetti specifici di SAP.
- Eseguire le operazioni di montaggio del disco.
- Configurare i servizi specifici di SAP.
- Implementare le configurazioni definite nelle note SAP pertinenti.
È possibile eseguire il playbook usando:
- La pipeline
Configuration and SAP installation
DevOps scegliendoSAP Operating System Configuration
. - Script del menu
configuration_menu.sh
di configurazione . - Riga di comando.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to perform the SAP Specific Operating System configuration
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_02_os_sap_specific_config.yaml
Download del software locale
Questo playbook scarica il supporto di installazione dal piano di controllo all'origine multimediale di installazione. Il supporto di installazione può essere condiviso dall'istanza dei servizi centrali o da File di Azure o Da Azure NetApp Files.
È possibile eseguire il playbook usando:
- La pipeline
Configuration and SAP installation
DevOps scegliendoLocal software download
. - Script del menu
configuration_menu.sh
di configurazione . - Riga di comando.
Le attività seguenti vengono eseguite nella macchina virtuale dell'istanza dei servizi centrali:
- Scaricare il software dall'account di archiviazione e renderlo disponibile per le altre macchine virtuali.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_03_bom_processing.yaml
SAP Central Services e configurazione a disponibilità elevata
Questo playbook esegue l'installazione di Central Services. Per gli scenari a disponibilità elevata, il playbook configura anche il cluster Pacemaker necessario per SAP Central Services per la disponibilità elevata in Linux e Windows Failover Clustering per Windows.
È possibile eseguire il playbook usando:
- La pipeline
Configuration and SAP installation
DevOps scegliendoSCS Installation & High Availability Configuration
. - Script del menu
configuration_menu.sh
di configurazione . - Riga di comando.
Il playbook esegue le attività seguenti:
- Installazione di Central Services
- Configurazione del cluster Pacemaker
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_05_00_00_sap_scs_install.yaml
Installazione del database
Questo playbook esegue l'installazione del server di database.
È possibile eseguire il playbook usando:
- La pipeline
Configuration and SAP installation
DevOps scegliendoDatabase installation
. - Script del menu
configuration_menu.sh
di configurazione . - Riga di comando.
Il playbook esegue l'attività seguente:
- Installazione dell'istanza del database
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_04_00_00_db_install.yaml
Caricamento del database
Questo playbook esegue il caricamento del database.
È possibile eseguire il playbook usando:
- La pipeline
Configuration and SAP installation
DevOps scegliendoDatabase Load
. - Script del menu
configuration_menu.sh
di configurazione . - Riga di comando.
Il playbook esegue l'attività seguente:
- Caricamento del database
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_05_01_sap_dbload.yaml
Configurazione a disponibilità elevata del database
Questo playbook esegue la configurazione a disponibilità elevata del server di database.
È possibile eseguire il playbook usando:
- La pipeline
Configuration and SAP installation
DevOps scegliendoDatabase High Availability Configuration
. - Script del menu
configuration_menu.sh
di configurazione . - Riga di comando.
Il playbook esegue le attività seguenti:
- Configurazione a disponibilità elevata del database.
- Per HANA, il playbook configura anche il cluster Pacemaker necessario per SAP HANA per la disponibilità elevata in Linux e configura la replica di sistema HANA.
- Per Oracle, il playbook configura anche Oracle Data Guard.
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_04_00_01_db_ha.yaml
Installazione del server applicazioni primaria
Questo playbook esegue l'installazione del server applicazioni primario.
È possibile eseguire il playbook usando:
- La pipeline
Configuration and SAP installation
DevOps scegliendoPrimary Application Server Installation
. - Script del menu
configuration_menu.sh
di configurazione . - Riga di comando.
Il playbook esegue l'attività seguente:
- Installazione del server applicazioni primaria
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_05_02_sap_pas_install.yaml
Installazione aggiuntiva del server applicazioni
Questo playbook esegue l'installazione dei server applicazioni.
È possibile eseguire il playbook usando:
- La pipeline
Configuration and SAP installation
DevOps scegliendoApplication Server Installation
. - Script del menu
configuration_menu.sh
di configurazione . - Riga di comando.
Il playbook esegue l'attività seguente:
- Installazione del server applicazioni
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_05_02_sap_app_install.yaml
Installazione di Web Dispatcher
Questo playbook esegue l'installazione dei Dispatcher Web.
È possibile eseguire il playbook usando:
- La pipeline
Configuration and SAP installation
DevOps scegliendoWeb Dispatcher Installation
. - Script del menu
configuration_menu.sh
di configurazione . - Riga di comando.
Il playbook esegue l'attività seguente:
- Installazione di Web Dispatcher
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_05_04_sap_web_install.yaml
Registrazione ACSS
Questo playbook esegue la registrazione di Azure Center for SAP Solutions (ACSS).
È possibile eseguire il playbook usando:
- La pipeline
Configuration and SAP installation
DevOps scegliendoRegister System in ACSS
. - Script del menu
configuration_menu.sh
di configurazione . - Riga di comando.
Il playbook esegue l'attività seguente:
- Registrazione ACSS
cd ${HOME}/Azure_SAP_Automated_Deployment/WORKSPACES/SYSTEM/LAB-SECE-SAP04-L00/
export sap_sid=L00
export ANSIBLE_PRIVATE_KEY_FILE=sshkey
playbook_options=(
--inventory-file="${sap_sid}_hosts.yaml"
--private-key=${ANSIBLE_PRIVATE_KEY_FILE}
--extra-vars="_workspace_directory=`pwd`"
--extra-vars ansible_ssh_pass='{{ lookup("env", "ANSIBLE_PASSWORD") }}'
--extra-vars="@sap-parameters.yaml"
"${@}"
)
# Run the playbook to retrieve the ssh key from the Azure key vault
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/pb_get-sshkey.yaml
# Run the playbook to download the software from the SAP Library
ansible-playbook "${playbook_options[@]}" ~/Azure_SAP_Automated_Deployment/sap-automation/deploy/ansible/playbook_06_00_acss_registration.yaml
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per