This README is based on the released stable version (1.2.0). If you are looking for other releases, see More Information.
The Azure Management Libraries for Java is a higher-level, object-oriented API for managing Azure resources. If you are looking for Java client libraries for Azure services, please see Azure libraries for Java - this page will be maintained regularly to ensure that it is up to date.
Note: This page will be maintained regularly to ensure that it is up to date.
Feature Availability and Road Map as of Version 1.2.0 Service | feature Available as GA Available as Preview Coming soon Compute Virtual machines and VM extensionsPreview features are marked with the @Beta annotation at the class or interface or method level in libraries. These features are subject to change. They can be modified in any way, or even removed, in the future.
The Azure
class is the simplest entry point for creating and interacting with Azure resources.
Azure azure = Azure.authenticate(credFile).withDefaultSubscription();
You can create a Cosmos DB account by using a define() … create()
method chain.
CosmosAccount cosmosDBAccount = azure.cosmosDBs().define(cosmosDBName) .withRegion(Region.US_EAST) .withNewResourceGroup(rgName) .withKind(DatabaseAccountKind.GLOBAL_DOCUMENT_DB) .withSessionConsistency() .withWriteReplication(Region.US_WEST) .withReadReplication(Region.US_CENTRAL) .create()
You can create a virtual machine instance by using a define() … create()
method chain.
System.out.println("Creating a Linux VM"); VirtualMachine linuxVM = azure.virtualMachines().define("myLinuxVM") .withRegion(Region.US_EAST) .withNewResourceGroup(rgName) .withNewPrimaryNetwork("10.0.0.0/28") .withPrimaryPrivateIPAddressDynamic() .withNewPrimaryPublicIPAddress("mylinuxvmdns") .withPopularLinuxImage(KnownLinuxVirtualMachineImage.UBUNTU_SERVER_16_04_LTS) .withRootUsername("tirekicker") .withSsh(sshKey) .withSize(VirtualMachineSizeTypes.STANDARD_D3_V2) .create(); System.out.println("Created a Linux VM: " + linuxVM.id());
You can update a virtual machine instance by using an update() … apply()
method chain.
linuxVM.update() .withNewDataDisk(20, lun, CachingTypes.READ_WRITE) .apply();Create a Virtual Machine Scale Set
You can create a virtual machine scale set instance by using another define() … create()
method chain.
VirtualMachineScaleSet virtualMachineScaleSet = azure.virtualMachineScaleSets() .define(vmssName) .withRegion(Region.US_EAST) .withExistingResourceGroup(rgName) .withSku(VirtualMachineScaleSetSkuTypes.STANDARD_D3_V2) .withExistingPrimaryNetworkSubnet(network, "Front-end") .withPrimaryInternetFacingLoadBalancer(loadBalancer1) .withPrimaryInternetFacingLoadBalancerBackends(backendPoolName1, backendPoolName2) .withPrimaryInternetFacingLoadBalancerInboundNatPools(natPool50XXto22, natPool60XXto23) .withoutPrimaryInternalLoadBalancer() .withPopularLinuxImage(KnownLinuxVirtualMachineImage.UBUNTU_SERVER_16_04_LTS) .withRootUsername(userName) .withSsh(sshKey) .withNewDataDisk(100) .withNewDataDisk(100, 1, CachingTypes.READ_WRITE) .withNewDataDisk(100, 2, CachingTypes.READ_WRITE, StorageAccountTypes.STANDARD_LRS) .withCapacity(3) .create();Create a Network Security Group
You can create a network security group instance by using another define() … create()
method chain.
NetworkSecurityGroup frontEndNSG = azure.networkSecurityGroups().define(frontEndNSGName) .withRegion(Region.US_EAST) .withNewResourceGroup(rgName) .defineRule("ALLOW-SSH") .allowInbound() .fromAnyAddress() .fromAnyPort() .toAnyAddress() .toPort(22) .withProtocol(SecurityRuleProtocol.TCP) .withPriority(100) .withDescription("Allow SSH") .attach() .defineRule("ALLOW-HTTP") .allowInbound() .fromAnyAddress() .fromAnyPort() .toAnyAddress() .toPort(80) .withProtocol(SecurityRuleProtocol.TCP) .withPriority(101) .withDescription("Allow HTTP") .attach() .create();Create an Application Gateway
You can create a application gateway instance by using another define() … create()
method chain.
ApplicationGateway applicationGateway = azure.applicationGateways().define("myFirstAppGateway") .withRegion(Region.US_EAST) .withExistingResourceGroup(resourceGroup) // Request routing rule for HTTP from public 80 to public 8080 .defineRequestRoutingRule("HTTP-80-to-8080") .fromPublicFrontend() .fromFrontendHttpPort(80) .toBackendHttpPort(8080) .toBackendIPAddress("11.1.1.1") .toBackendIPAddress("11.1.1.2") .toBackendIPAddress("11.1.1.3") .toBackendIPAddress("11.1.1.4") .attach() .withExistingPublicIPAddress(publicIpAddress) .create();
You can create a Web App instance by using another define() … create()
method chain.
WebApp webApp = azure.webApps() .define(appName) .withRegion(Region.US_WEST) .withNewResourceGroup(rgName) .withNewWindowsPlan(PricingTier.STANDARD_S1) .create();
You can create a SQL server instance by using another define() … create()
method chain.
SqlServer sqlServer = azure.sqlServers().define(sqlServerName) .withRegion(Region.US_EAST) .withNewResourceGroup(rgName) .withAdministratorLogin("adminlogin123") .withAdministratorPassword("myS3cureP@ssword") .withNewFirewallRule("10.0.0.1") .withNewFirewallRule("10.2.0.1", "10.2.0.10") .create();
Then, you can create a SQL database instance by using another define() … create()
method chain.
SqlDatabase database = sqlServer.databases().define("myNewDatabase") .create();
You can find plenty of sample code that illustrates management scenarios (80+ end-to-end scenarios) for Azure Virtual Machines, Virtual Machine Scale Sets, Managed Disks, Active Directory Azure Container Service and Registry, Storage, Networking, Resource Manager, SQL Database, Cosmos DB, App Service (Web Apps on Windows and Linux), Functions, Service Bus, Key Vault, Redis, CDN and Batch …
1.2.0
If you are using released builds from 1.2.0, add the following to your POM file:
<dependency> <groupId>com.microsoft.azure</groupId> <artifactId>azure</artifactId> <version>1.2.1</version> </dependency>
Latest snapshots
If you are using snapshots builds for this repo, add the following repository and dependency to your POM file:
<repositories> <repository> <id>ossrh</id> <name>Sonatype Snapshots</name> <url>https://oss.sonatype.org/content/repositories/snapshots/</url> <layout>default</layout> <snapshots> <enabled>true</enabled> <updatePolicy>always</updatePolicy> </snapshots> </repository> </repositories>
<dependency> <groupId>com.microsoft.azure</groupId> <artifactId>azure</artifactId> <version>1.2.2-SNAPSHOT</version> </dependency> <dependency> <groupId>com.microsoft.azure</groupId> <artifactId>azure-client-runtime</artifactId> <version>1.1.1-SNAPSHOT</version> </dependency> <dependency> <groupId>com.microsoft.azure</groupId> <artifactId>azure-client-authentication</artifactId> <version>1.1.1-SNAPSHOT</version> </dependency> <dependency> <groupId>com.microsoft.rest</groupId> <artifactId>client-runtime</artifactId> <version>1.1.1-SNAPSHOT</version> </dependency>
If you are migrating your code to 1.2.0, you can use these notes for preparing your code for 1.2.0 from 1.1.0.
If you encounter any bugs with these libraries, please file issues via Issues or checkout StackOverflow for Azure Java SDK.
If you would like to become an active contributor to this project please follow the instructions provided in Microsoft Azure Projects Contribution Guidelines.
git checkout -b my-new-feature
)git commit -am 'Add some feature'
)git push origin my-new-feature
)This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4