Utiliser le Kit de développement logiciel (SDK) Azure pour Java
Le Kit de développement logiciel (SDK) Azure open source pour Java simplifie l’approvisionnement, la gestion et l’utilisation de ressources Azure à partir du code d’application Java.
Détails importants
- Les bibliothèques Azure sont la façon dont vous communiquez avec les services Azure à partir du code Java que vous exécutez localement ou dans le cloud.
- Les bibliothèques prennent en charge Java 8 et versions ultérieures et sont testées par rapport à la base de référence Java 8 et à la dernière version de java « support à long terme ».
- Les bibliothèques incluent la prise en charge complète du module Java, ce qui signifie qu’elles sont entièrement conformes aux exigences d’un module Java et exportent tous les packages pertinents à utiliser.
- Le Kit de développement logiciel (SDK) Azure pour Java est composé uniquement de nombreuses bibliothèques Java individuelles qui concernent des services Azure spécifiques. Il n’existe aucun autre outil dans le « Kit de développement logiciel (SDK) ».
- Il existe des bibliothèques « gestion » et « client » distinctes (parfois appelées bibliothèques « plan de gestion » et « plan de données »). Chaque ensemble a des objectifs différents et est utilisé par différents types de code. Pour plus d’informations, consultez les sections suivantes plus loin dans cet article :
- Vous trouverez de la documentation sur les bibliothèques dans le Azure pour Java Reference organisé par le service Azure, ou le navigateur d’API Java organisé par nom de package.
Autres détails
- Le Kit de développement logiciel (SDK) Azure pour les bibliothèques Java s’appuie sur l’API REST Azure sous-jacente, ce qui vous permet d’utiliser ces API par le biais de paradigmes Java familiers. Toutefois, vous pouvez toujours utiliser l’API REST directement à partir du code Java, si vous préférez.
- Vous trouverez le code source des bibliothèques Azure dans le référentiel GitHub . En tant que projet open source, les contributions sont bienvenues !
- Nous mettons actuellement à jour le Kit de développement logiciel (SDK) Azure pour les bibliothèques Java pour partager des modèles cloud courants tels que les protocoles d’authentification, la journalisation, le suivi, les protocoles de transport, les réponses mises en mémoire tampon et les nouvelles tentatives.
- Cette fonctionnalité partagée est contenue dans la bibliothèque azure-core.
- Pour plus d’informations sur les instructions que nous appliquons aux bibliothèques, consultez les Instructions de conception du Kit de développement logiciel (SDK) Java Azure.
Plateformes prises en charge pour le Kit de développement logiciel (SDK) Azure pour Java
Le Kit de développement logiciel (SDK) Azure pour Java est fourni avec prise en charge de Java 8 et versions ultérieures, mais nous recommandons aux développeurs d’utiliser toujours la dernière version de support à long terme (LTS) Java dans le développement et lors de la publication en production. L’utilisation de la dernière version LTS garantit la disponibilité des dernières améliorations dans Java, notamment les correctifs de bogues, les améliorations des performances et les correctifs de sécurité. En outre, le Kit de développement logiciel (SDK) Azure pour Java inclut une prise en charge supplémentaire des versions ultérieures de Java. Cette prise en charge supplémentaire améliore les performances et inclut des améliorations spécifiques à JDK au-delà de la base de référence Java 8 prise en charge.
Le Kit de développement logiciel (SDK) Azure pour Java est testé et pris en charge sur Windows, Linux et macOS. Il n’est pas testé sur d’autres plateformes prises en charge par le JDK et ne prend pas en charge les déploiements Android. Pour les développeurs souhaitant développer des logiciels pour le déploiement sur des appareils Android et qui utilisent des services Azure, il existe des bibliothèques spécifiques à Android disponibles dans le kit de développement logiciel (SDK) Azure pour Android projet.
Se connecter aux ressources Azure et les utiliser avec des bibliothèques clientes
Les bibliothèques clientes (ou « plan de données ») vous aident à écrire du code d’application Java pour interagir avec les services déjà approvisionnés. Les bibliothèques clientes existent uniquement pour ces services qui prennent en charge une API cliente. Vous pouvez les identifier, car leur ID de groupe Maven est com.azure
.
Toutes les bibliothèques clientes Azure Java suivent le même modèle de conception d’API pour offrir une classe de générateur Java responsable de la création d’une instance d’un client. Ce modèle sépare la définition et l’instanciation du client de son opération, ce qui permet au client d’être immuable et donc plus facile à utiliser. En outre, toutes les bibliothèques clientes suivent quelques modèles importants :
Les bibliothèques clientes qui prennent en charge les API synchrones et asynchrones doivent offrir ces API dans des classes distinctes. Cela signifie que, dans ces cas, il y aurait, par exemple, un
KeyVaultClient
pour les API de synchronisation et unKeyVaultAsyncClient
pour les API asynchrones.Il existe une classe de générateur unique qui prend en charge la création des API de synchronisation et asynchrones. Le générateur est nommé de la même façon que la classe cliente de synchronisation, avec
Builder
inclus. Par exemple,KeyVaultClientBuilder
. Ce générateur a des méthodesbuildClient()
etbuildAsyncClient()
pour créer des instances clientes, le cas échéant.
En raison de ces conventions, toutes les classes se terminant par Client
sont immuables et fournissent des opérations pour interagir avec un service Azure. Toutes les classes qui se terminent par ClientBuilder
fournissent des opérations pour configurer et créer une instance d’un type client particulier.
Exemple de bibliothèques clientes
L’exemple de code suivant montre comment créer un coffre de clés synchrone KeyClient
:
KeyClient client = new KeyClientBuilder()
.endpoint(<your Key Vault URL>)
.credential(new DefaultAzureCredentialBuilder().build())
.buildClient();
L’exemple de code suivant montre comment créer un coffre de clés asynchrone KeyAsyncClient
:
KeyAsyncClient client = new KeyClientBuilder()
.endpoint(<your Key Vault URL>)
.credential(new DefaultAzureCredentialBuilder().build())
.buildAsyncClient();
Pour plus d’informations sur l’utilisation de chaque bibliothèque cliente, consultez le fichier README.md situé dans le répertoire du projet de la bibliothèque dans le dépôt GitHub du kit de développement logiciel (SDK) . Vous trouverez également d’autres extraits de code dans la documentation de référence et les exemples Azure .
Approvisionner et gérer des ressources Azure avec des bibliothèques de gestion
Les bibliothèques de gestion (ou « plan de gestion ») vous aident à créer, provisionner et gérer les ressources Azure à partir du code d’application Java. Vous trouverez ces bibliothèques dans l’ID de groupe Maven com.azure.resourcemanager
. Tous les services Azure ont des bibliothèques de gestion correspondantes.
Avec les bibliothèques de gestion, vous pouvez écrire des scripts de configuration et de déploiement pour effectuer les mêmes tâches que celles que vous pouvez effectuer via le portail Azure ou le Azure CLI.
Toutes les bibliothèques de gestion Java Azure fournissent une *Manager
classe en tant qu’API de service, par exemple, ComputeManager
pour le service de calcul Azure, ou AzureResourceManager
pour l’agrégation des services populaires.
Exemple de bibliothèques de gestion
L’exemple de code suivant montre comment créer un ComputeManager
:
ComputeManager computeManager = ComputeManager
.authenticate(
new DefaultAzureCredentialBuilder().build(),
new AzureProfile(AzureEnvironment.AZURE));
L’exemple de code suivant montre comment provisionner une nouvelle machine virtuelle :
VirtualMachine virtualMachine = computeManager.virtualMachines()
.define(<your virtual machine>)
.withRegion(Region.US_WEST)
.withExistingResourceGroup(<your resource group>)
.withNewPrimaryNetwork("10.0.0.0/28")
.withPrimaryPrivateIPAddressDynamic()
.withoutPrimaryPublicIPAddress()
.withPopularLinuxImage(KnownLinuxVirtualMachineImage.UBUNTU_SERVER_18_04_LTS)
.withRootUsername(<virtual-machine username>)
.withSsh(<virtual-machine SSH key>)
.create();
L’exemple de code suivant montre comment obtenir une machine virtuelle existante :
VirtualMachine virtualMachine = computeManager.virtualMachines()
.getByResourceGroup(<your resource group>, <your virtual machine>);
L’exemple de code suivant montre comment mettre à jour la machine virtuelle et ajouter un nouveau disque de données :
virtualMachine.update()
.withNewDataDisk(10)
.apply();
Pour plus d’informations sur l’utilisation de chaque bibliothèque de gestion, consultez le fichier README.md situé dans le répertoire du projet de la bibliothèque dans le dépôt GitHub du kit de développement logiciel (SDK) . Vous trouverez également d’autres extraits de code dans la documentation de référence et les exemples Azure .
Obtenir de l’aide et se connecter à l’équipe du Kit de développement logiciel (SDK)
- Consultez la Documentation du kit SDK Azure pour Java.
- Publiez des questions à la communauté sur Stack Overflow.
- Ouvrez des questions sur le SDK dans le Référentiel GitHub.
- Mentionnez @AzureSDK sur Twitter.
Étapes suivantes
Maintenant que vous comprenez ce que le Kit de développement logiciel (SDK) Azure pour Java est, vous pouvez approfondir la plupart des concepts croisés qui existent pour vous rendre productif lors de l’utilisation des bibliothèques. Les articles suivants fournissent de bons points de départ :