mirror of https://github.com/apache/cloudstack.git
Merge branch 'master' into ui-granular-settings
This commit is contained in:
commit
c1de600cb4
385
CHANGES
385
CHANGES
|
|
@ -1,7 +1,387 @@
|
|||
Apache CloudStack (Incubating) CHANGES
|
||||
Apache CloudStack CHANGES
|
||||
======================================
|
||||
|
||||
Full release notes for each release are located in the project's documentation website: http://cloudstack.apache.org/docs
|
||||
Full release notes for each release are located in the project's documentation website:
|
||||
http://cloudstack.apache.org/docs
|
||||
|
||||
Version 4.2.0
|
||||
------------------------
|
||||
|
||||
In progress
|
||||
|
||||
|
||||
|
||||
|
||||
Version 4.1.0
|
||||
------------------------
|
||||
|
||||
This is the second major release of CloudStack from within the Apache Software Foundation, and the
|
||||
first major release as a Top-Level Project (TLP).
|
||||
|
||||
Build Tool Changes:
|
||||
|
||||
* The project now uses Maven 3 exclusively to build.
|
||||
|
||||
New Features:
|
||||
* CLOUDSTACK-101: OVS support in KVM
|
||||
* CLOUDSTACK-132: Mash up marvin into an interactive auto-completing API shell for CloudStack
|
||||
* CLOUDSTACK-241: AWS Style Regions
|
||||
* CLOUDSTACK-297: Reset SSH Key to access VM (similar to reset password)
|
||||
* CLOUDSTACK-299: Egress firewall rules for guest network
|
||||
* CLOUDSTACK-306: Support SRX & F5 inline mode
|
||||
* CLOUDSTACK-618: API request throttling to avoid malicious attacks on MS per account through frequent API request.
|
||||
* CLOUDSTACK-637: AutoScale
|
||||
* CLOUDSTACK-644: Resize volumes feature
|
||||
* CLOUDSTACK-706: Persistent Networks without running a VM
|
||||
* CLOUDSTACK-726: Implement L3 Router functionality in Nicira Nvp Plugin
|
||||
* CLOUDSTACK-780: Additional VMX Settings
|
||||
* CLOUDSTACK-926: ApiDiscoverService: Implement a plugin mechanism that exposes the list of APIs through a discovery service on the management server
|
||||
|
||||
Bug Fixes:
|
||||
|
||||
* CLOUDSTACK-1600 Typo in dpkg-buildpackage command
|
||||
* CLOUDSTACK-1574 updateResourceCount API is failed saying to specify valida resource type even after parsing the valid resource type
|
||||
* CLOUDSTACK-1562 Replace the short-cut solution of supportting @DB with the formal one
|
||||
* CLOUDSTACK-1541 NPE while deleting snapshot :Unexpected exception while executing org.apache.cloudstack.api.command.user.snapshot.DeleteSnapshotCmd
|
||||
* CLOUDSTACK-1521 Redundant router: Services are not stopped when switch to BACKUP state
|
||||
* CLOUDSTACK-1509 Failed to implement network elements and resources while provisioning for persistent network(createVlanIpRange to an account]
|
||||
* CLOUDSTACK-1496 List API Performance: listAccounts failing with OOME for high values of pagesize (>1000 )
|
||||
* CLOUDSTACK-1487 cloudstack-setup-agent fails to set private.network.device on KVM host add
|
||||
* CLOUDSTACK-1485 Add Baremetal Provider back to 4.1 branch
|
||||
* CLOUDSTACK-1484 "API Throttling : api.throttling.enabled, Global setting missing"
|
||||
* CLOUDSTACK-1473 deleteDomain is failing with NPE
|
||||
* CLOUDSTACK-1470 unhandled exception executing api command: deployVirtualMachine
|
||||
* CLOUDSTACK-1469 kvm agent: agent service fails to start up
|
||||
* CLOUDSTACK-1465 List Zones returns null under create instance when logged is as user
|
||||
* CLOUDSTACK-1449 listAccounts and listProjectAccounts API lists all the users not account-specific users for each account returned
|
||||
* CLOUDSTACK-1447 [UI]Persistent Status is not displayed for VPC Tiers
|
||||
* CLOUDSTACK-1436 4.1 management server fails to start from RPM build artifacts
|
||||
* CLOUDSTACK-1429 single account is unable to use same vnet across multiple physical networks
|
||||
* CLOUDSTACK-1425 unhandled exception executing api command: migrateVirtualMachine & recoverVirtualMachine
|
||||
* CLOUDSTACK-1420 Ensure trademarks are properly attributed in publican brand.
|
||||
* CLOUDSTACK-1419 Apache-ify and apply trademark logos in the UI
|
||||
* CLOUDSTACK-1418 "As regular user , we are not allowed to deploy VM on a shared network."
|
||||
* CLOUDSTACK-1417 "When invalid values are passed to createNetwork() , error message does not indicate the parameter name that has invalid values."
|
||||
* CLOUDSTACK-1414 Redundant router: BACKUP switch cancelled due to lock timeout after a glitch in network
|
||||
* CLOUDSTACK-1403 Storage and console-proxy related error
|
||||
* CLOUDSTACK-1402 listRouters API response doesn't return linklocal IP and public IP details
|
||||
* CLOUDSTACK-1399 Unhandled exception executing api command: stopVirtualMachine
|
||||
* CLOUDSTACK-1397 Static Nat configuration is failing with NPE
|
||||
* CLOUDSTACK-1391 EventBus is not getting injected after javelin merge
|
||||
* CLOUDSTACK-1383 Deploying basic zone on 4.1 fails in NPE
|
||||
* CLOUDSTACK-1382 "vm deploy fails with Error ""cannot find DeployPlannerSelector for vm"""
|
||||
* CLOUDSTACK-1375 deploydb failing with acs master
|
||||
* CLOUDSTACK-1369 "Ipv6 - In dual Stack network , guest VM does not have the Ipv6 address of the router programmed in /etc/resolv.conf for DNS resolution."
|
||||
* CLOUDSTACK-1367 NPE noticed in logs while AgentMonitor is monitoring the host ping interval
|
||||
* CLOUDSTACK-1357 "Autoscale: Provisioned VMs from Netscaler not being added to lb vserver, provserver fails with provserver_err_asynctaskpoll"
|
||||
* CLOUDSTACK-1350 Management server Stop and start causes previously downloaded ISOs and templates to redownload & reinstall
|
||||
* CLOUDSTACK-1347 "Not able to delete network. Error - ""Unable to insert queue item into database, DB is full?"""
|
||||
* CLOUDSTACK-1346 "Check to see if external devices are used in the network, is hardcoded for specific devices"
|
||||
* CLOUDSTACK-1345 BigSwitch plugin introduces 'VNS' isolation in UI without backend implementation
|
||||
* CLOUDSTACK-1344 Typo in use.external.dns setting description
|
||||
* CLOUDSTACK-1343 Porting Baremetal related UI changes to ACS
|
||||
* CLOUDSTACK-1341 URL for the KEYs file is wrong in the installation guide
|
||||
* CLOUDSTACK-1339 ASF 4.1: Management server becomes unresponsive
|
||||
* CLOUDSTACK-1338 Deploy VM failed using ISO
|
||||
* CLOUDSTACK-1334 vmware.root.disk.controller doesn't work.
|
||||
* CLOUDSTACK-1332 IPV6 - Router and guest Vms should be able to use an IPV6 address for external DNS entry.
|
||||
* CLOUDSTACK-1331 Upgrade fails for a 2.2.14 Zone having multiple guest networks using network_tags and Public Vlan
|
||||
* CLOUDSTACK-1330 ec2-run-instances - When -n option is used to deploy multiple Vms API returns error even though few of the Vms have been deployed successfully.
|
||||
* CLOUDSTACK-1320 Routers naming convention is changed to hostname
|
||||
* CLOUDSTACK-1319 createCustomerVpnGateway response gives TypeError: json.createvpncustomergatewayresponse is undefined
|
||||
* CLOUDSTACK-1315 [F5-SRX-InlineMode] Network implement failed with Run time Exception during network upgrade from VR to SRX-F5
|
||||
* CLOUDSTACK-1313 Working with Volumes Section Is Missing
|
||||
* CLOUDSTACK-1312 "Fix rolling upgrades from 4.0 to 4.1 in 4.1 release, fix db schemas to be same as 4.0"
|
||||
* CLOUDSTACK-1307 Noticed NPE when we put host in maintenance mode in clustered management setup
|
||||
* CLOUDSTACK-1303 Ipv6 - java.lang.NullPointerException when executing listnetworks() and deployVirtualMachine() after extending the Ipv4 range of a dual stack network.
|
||||
* CLOUDSTACK-1300 section in wrong order in installation guide
|
||||
* CLOUDSTACK-1299 Errors in 4.5.5 section of installation guide
|
||||
* CLOUDSTACK-1295 NPE in usage parsers due to missing @Component inject
|
||||
* CLOUDSTACK-1289 [F5-SRX-InlineMode] Usage stats are not generated for Juniper SRX Firewall in inlinemode
|
||||
* CLOUDSTACK-1288 [F5-SRX-InlineMode] classCastException during network restart with cleanup option true
|
||||
* CLOUDSTACK-1277 ApiResponseHelper.createUserVmResponse failed to populate password field set from UserVm object
|
||||
* CLOUDSTACK-1272 Autoscale: createAutoScaleVmProfile fails due to unable to retrieve Service Offering id
|
||||
* CLOUDSTACK-1267 KVM's cloudstack-agent service doesn't log (log4j)
|
||||
* CLOUDSTACK-1265 logrotate dnsmasq configuration is wrong
|
||||
* CLOUDSTACK-1262 "Failed to Prepare Secondary Storage in VMware,"
|
||||
* CLOUDSTACK-1251 Baremetal zone doesn't need primary/secondary storage in UI wizard
|
||||
* CLOUDSTACK-1243 Failed to cleanup account :java.lang.NullPointerException
|
||||
* CLOUDSTACK-1242 [F5-SRX-InlineMode] Failed to create LB rule with F5-SRX inlinemode deployement
|
||||
* CLOUDSTACK-1241 Network apply rules logic is broken
|
||||
* CLOUDSTACK-1237 "Register Template fails with ""Cannot find template adapter for XenServer"""
|
||||
* CLOUDSTACK-1234 Unable to start KVM agent with 4.1 build
|
||||
* CLOUDSTACK-1233 Veewee configuration files are inappropriately identified as ASLv2 licensed files
|
||||
* CLOUDSTACK-1232 "Ipv6 - Guest Vms are not able to get Ipaddress when executing dhclient command when using ""/96"" network."
|
||||
* CLOUDSTACK-1226 Error while running Cloudstack-setup-databases
|
||||
* CLOUDSTACK-1223 Exception while starting jetty server: org.springframework.beans.factory.BeanCreationException Error creating bean with name 'apiServer':
|
||||
* CLOUDSTACK-1222 API rate limit configs: removed double quote in upgrade script
|
||||
* CLOUDSTACK-1220 Ipv6 - Better error message when deploy Vm fails to get a free Ip address.
|
||||
* CLOUDSTACK-1219 Ipv6 - Provide better error messages when deploying a Vm with Ip an address that is outside the network's ip range / if the ip address already is assigned to another Vm.
|
||||
* CLOUDSTACK-1216 UUID is null for admin and failed to register user key with 4.1
|
||||
* CLOUDSTACK-1210 Make all pluggable services return list of api cmd classes
|
||||
* CLOUDSTACK-1206 Failure in Copy of System templates
|
||||
* CLOUDSTACK-1205 Ipv6 - Ubuntu 12.10 guest Vms looses default route (after it expiration time ~ 30 mts) when ipv6.autoconfig parameters are disabled except for net.ipv6.conf.lo.autoconf which is enabled.
|
||||
* CLOUDSTACK-1204 Fail to create advance zone due to fail to add host
|
||||
* CLOUDSTACK-1201 "Failed to create ssh key for user ""cloud"" /var/lib/cloud/management/.ssh/id_rsa and failed to start management server"
|
||||
* CLOUDSTACK-1190 Make APIChecker interface throw a single sensible exception
|
||||
* CLOUDSTACK-1181 mvn deploy db failing with NPE
|
||||
* CLOUDSTACK-1176 Issue with snapshots(create/list)
|
||||
* CLOUDSTACK-1174 Snapshots related SQL error
|
||||
* CLOUDSTACK-1173 ConsoleProxyResource instantiation exception
|
||||
* CLOUDSTACK-1168 Create firewall rule broken
|
||||
* CLOUDSTACK-1163 Failed with NPE while creating firewall rule
|
||||
* CLOUDSTACK-1161 Differences between 4.1 and master in ongoing-config-of-external-firewalls-lb.xml
|
||||
* CLOUDSTACK-1154 Account/Users related API failed due to RegionService inject exception
|
||||
* CLOUDSTACK-1153 "Ipv6 - Vm deployment fails with ""n must be positive"" error."
|
||||
* CLOUDSTACK-1152 Missing tag in host-add.xml
|
||||
* CLOUDSTACK-1141 "Ipv6 - After network restart (and reboot router) , we do not see the existing vms dnsentries not being programmed in the router."
|
||||
* CLOUDSTACK-1138 "Providing invalid values for gateway, netmask etc in the zoneWizard blocks the VLAN container to load , throwing an error"
|
||||
* CLOUDSTACK-1123 ListStoragePools API broken by refactor
|
||||
* CLOUDSTACK-1113 "Ipv6 - Not able to deploy a new VM in this network because of ""Unable to allocate Unique Ipv6 address"""
|
||||
* CLOUDSTACK-1112 "Errors in ""Prepare the System VM Template"""
|
||||
* CLOUDSTACK-1111 Ipv6 - listRouters() does not return guestipaddress/
|
||||
* CLOUDSTACK-1109 "Ipv6 - Unable to expunge User Vms that are ""Destroyed""."
|
||||
* CLOUDSTACK-1108 Ipv6 - Not able to restart Networks.
|
||||
* CLOUDSTACK-1107 Ipv6 - Unable to extend Ip range for a Ipv6 network using craeteVlanIpRange() command - Error code 530 returned.
|
||||
* CLOUDSTACK-1105 "IpV6 - listVirtualMachines() does not return netmask ,gateway,ipaddress."
|
||||
* CLOUDSTACK-1104 Ipv6 - listVlanIpRanges() returns error 530.
|
||||
* CLOUDSTACK-1103 "IpV6 - listNetwork() command does not retrun gateway,netmask,cidr"
|
||||
* CLOUDSTACK-1095 Ipv6 - dhclient command needs to be run manually on the Vms to get the Ipv6 address.
|
||||
* CLOUDSTACK-1088 EnableStaticNat error will clear the data in database
|
||||
* CLOUDSTACK-1087 Update the Developer Guide for ASFCS 4.1 Release
|
||||
* CLOUDSTACK-1083 listUsageRecords api: removed project results in NPE
|
||||
* CLOUDSTACK-1082 UI doesn't throw any error message when trying to delete ip range from a network that is in use
|
||||
* CLOUDSTACK-1079 Deploying AWSAPI with mvn -pl :cloud-awsapi jetty:run fails
|
||||
* CLOUDSTACK-1070 javelin: NPE on executing registerIso API
|
||||
* CLOUDSTACK-1064 A type error occurs when trying to add account/register template....
|
||||
* CLOUDSTACK-1063 "SG Enabled Advanced Zone - ""Add Guest Networks"" - When user tries to add a guest Network with scope as ""Account"" , he should NOT be presented with ""Offering for shared security group enabled"""
|
||||
* CLOUDSTACK-1057 regression of changeServiceForVirtualMachine API - fails to find service offering by serviceOfferingId parameter
|
||||
* CLOUDSTACK-1056 S3 secondary storage fails to upload systemvm template due to KVMHA directory
|
||||
* CLOUDSTACK-1055 "The overlay still exists when the ""Recurring Snapshots"" dialog is canceled by pressing esc key."
|
||||
* CLOUDSTACK-1051 API dispatcher unable to find objectVO corresponding to DeleteTemplatecmd
|
||||
* CLOUDSTACK-1050 No Documentation on Adding a Load Balancer Rule
|
||||
* CLOUDSTACK-1037 "Make cloudmonkey awesome-er: Online help docs and api discovery, better colored output, parameter value autocompletion"
|
||||
* CLOUDSTACK-1029 Enter the token to specified project is malfunctioned
|
||||
* CLOUDSTACK-1027 """Update SSL certificate"" button should properly reflect it's functionality"
|
||||
* CLOUDSTACK-1024 Regression: Unable to add Xenserver host with latest build
|
||||
* CLOUDSTACK-1021 the vlan is not creat to right nic. when i creat multi guest network.
|
||||
* CLOUDSTACK-1016 Not able to deploy VM.
|
||||
* CLOUDSTACK-1014 Merge ManagementServer and ManagementServerExt
|
||||
* CLOUDSTACK-1013 running cloudstack overwrites default public/private ssh keys
|
||||
* CLOUDSTACK-1011 KVM host getting disconnected in cluster environment
|
||||
* CLOUDSTACK-1010 Host count and Secondary storage count always shows 1 in UI
|
||||
* CLOUDSTACK-1002 Not able to start VM.
|
||||
* CLOUDSTACK-995 Not able to add the KVM host.
|
||||
* CLOUDSTACK-993 """admin"" user is not getting created when management server is started."
|
||||
* CLOUDSTACK-987 Sections missing in Working With Snapshots
|
||||
* CLOUDSTACK-985 Different MAC address for RvR caused issue in short term network outrage
|
||||
* CLOUDSTACK-978 TypeError: instance.displayname is undefined while adding VM's to the LB rule.
|
||||
* CLOUDSTACK-968 marvin: vlan should be an attribute of the physical_network and not the zone
|
||||
* CLOUDSTACK-959 Missing sub-sections in document section System Service Offerings
|
||||
* CLOUDSTACK-938 s2s VPN trouble
|
||||
* CLOUDSTACK-928 [Simulator] Latency for Agent Commands - change unit of wait from seconds to milliseconds
|
||||
* CLOUDSTACK-863 Non-printable characters (ASCII control character) such as %00 or %0025 are getting stored in raw/non encoded form in the database.
|
||||
* CLOUDSTACK-819 Create Account/User API logging password in access logs
|
||||
* CLOUDSTACK-799 [Load Test] Check router statistics falls behind in gathering stats by more than 2 times the set value
|
||||
* CLOUDSTACK-798 Move usage related cmd classes from cloud-server to cloud-api
|
||||
* CLOUDSTACK-736 Integration smoke tests: Fix check for vm name for the deployvm smoke test
|
||||
* CLOUDSTACK-734 api_refactoring: CreateAccountCmd fails to send response due to NPE in service layer
|
||||
* CLOUDSTACK-725 UI: Error when the Egress rules tab is selected for a network
|
||||
* CLOUDSTACK-721 Bytes sent/received in user statistics is empty (CloudStack 4.0)
|
||||
* CLOUDSTACK-720 Fail to load a png image when accessing the web console
|
||||
* CLOUDSTACK-717 cloudmonkey fails to parse/print response
|
||||
* CLOUDSTACK-693 Adding a VPC virtual router to a NiciraNVP enabled network fails
|
||||
* CLOUDSTACK-691 A warning dialog box shows after reloading the welcome page
|
||||
* CLOUDSTACK-689 RVR: Stop pending flag is not cleared when user start the disconnected router from another host
|
||||
* CLOUDSTACK-683 Image Is Missing in the Accessing VM Section
|
||||
* CLOUDSTACK-660 Network Traffic Labels are not functional in Marvin
|
||||
* CLOUDSTACK-648 The normal users could change their own login password
|
||||
* CLOUDSTACK-639 API Refactoring: Adapters for ACL
|
||||
* CLOUDSTACK-617 Unable to edit a Sub domain
|
||||
* CLOUDSTACK-614 "ListTemplates API is not returning ""Enable SSH Key"" attribute for any given template"
|
||||
* CLOUDSTACK-606 Starting VM fails with 'ConcurrentOperationException' in a clustered MS scenario
|
||||
* CLOUDSTACK-605 Host physical CPU is incorrectly calculated for Vmware hosts
|
||||
* CLOUDSTACK-599 DhcpEntryCommand fails on Router VM on CS4.0 and vSphere5 with Advanced Network Zone
|
||||
* CLOUDSTACK-596 DeployVM command takes a lot of time to return job id
|
||||
* CLOUDSTACK-584 "typos in ""Apache_CloudStack-4.0.0-incubating-CloudStack_Nicira_NVP_Guide-en-US"""
|
||||
* CLOUDSTACK-573 "NPE at ""com.cloud.network.NetworkManagerImpl.networkOfferingIsConfiguredForExternalNetworking(NetworkManagerImpl.java:4345)"" when create network from the network offering having NULL provider for the service"
|
||||
* CLOUDSTACK-572 SG Enabled Advanced Zone - Not able to deploy a VM in an account specific shared network.
|
||||
* CLOUDSTACK-560 Usage server doesn't work in 4.0.0 due to missing db changes
|
||||
* CLOUDSTACK-556 Erratic window behavior in Quick View tooltip
|
||||
* CLOUDSTACK-553 "SRX - When adding SRX device make ""Public Network"" - default to ""untrusted"" and ""Private Network"" - default to ""trusted"" as un-editable fields."
|
||||
* CLOUDSTACK-552 ]Quick view details for a volume displays scroll bar in place of name of the volume when the name of the volume has more no of characters
|
||||
* CLOUDSTACK-539 Cropped Text in UI under Quick View
|
||||
* CLOUDSTACK-536 remove citrix cloudpatform from 4.0 build - CloudStack is ASF project
|
||||
* CLOUDSTACK-527 List API performance optimization by using DB views and removing UUID conversion.
|
||||
* CLOUDSTACK-522 Log requests in cloudmonkey's log file
|
||||
* CLOUDSTACK-520 Dependency jar names mismatch with install-non-oss.sh
|
||||
* CLOUDSTACK-518 API refactoring -- change @Parameter annotation and remove the @IdentityMapper annotation
|
||||
* CLOUDSTACK-514 Marvin and Cloudmonkey don't work when an API target uses https or an alternate path
|
||||
* CLOUDSTACK-510 Add button not visible when adding public IPs to physical network
|
||||
* CLOUDSTACK-508 CLVM copies template to primary storage unnecessarily
|
||||
* CLOUDSTACK-507 fix api docs for listSSHKeyPairs
|
||||
* CLOUDSTACK-504 Duplicate guest password scripts in codebase
|
||||
* CLOUDSTACK-501 Apidocs and marvin does not know how to handle Autoscaling docs
|
||||
* CLOUDSTACK-500 Passwd-server iptables rules are dropped on domr on fresh start or on reboot
|
||||
* CLOUDSTACK-499 cloudmonkey CLI can't accept complex parameters
|
||||
* CLOUDSTACK-493 2.2.x-3.0 DB upgrade support for Advance SG enabled networks
|
||||
* CLOUDSTACK-481 Installation Guide Doc Error
|
||||
* CLOUDSTACK-467 Developer's Guide points to cloud.com for API reference
|
||||
* CLOUDSTACK-465 French language file quotes are dropping javascript syntax errors
|
||||
* CLOUDSTACK-464 "Regression in AWSAPI docs, entire sections removed"
|
||||
* CLOUDSTACK-462 A few corrections to make to the 4.0.0 installation guide
|
||||
* CLOUDSTACK-459 [Optional Public IP assignment for EIP with Basic Zone] Associate IP Checkbox in Create Network Offering Dialog is Displayed When Elastic LB is Selected
|
||||
* CLOUDSTACK-456 License tag in SPEC isn't what RPM is expecting
|
||||
* CLOUDSTACK-448 SSVM bootstrap failure on XenServer hosts with E3 CPU
|
||||
* CLOUDSTACK-446 "Host going to alert state, if you are adding already added host"
|
||||
* CLOUDSTACK-441 Running mgmt server using jetty fails to start api server
|
||||
* CLOUDSTACK-435 Vmware network labels are ignored when creating a Zone using basic networking
|
||||
* CLOUDSTACK-427 Change hardcoded step number references to dynamic links
|
||||
* CLOUDSTACK-424 Updated userdata not propagating to the VR.
|
||||
* CLOUDSTACK-417 Handle password server securely to run on port 8080 on VR
|
||||
* CLOUDSTACK-416 XCP 1.6beta2 (61002c) - can't add a host
|
||||
* CLOUDSTACK-404 Update docs on the usage of cloud-setup-databases
|
||||
* CLOUDSTACK-398 Install Guide: Section 11.17.3 (Using VPN with Mac OSX): Not complete?
|
||||
* CLOUDSTACK-397 Install Guide: Section 11.1 (Guest Traffic): Diagram is the wrong diagram
|
||||
* CLOUDSTACK-390 Install Guide: Section 4.5.7 (Prepare the System VM Template): Links go to cloud.com
|
||||
* CLOUDSTACK-378 mavenize marvin on master
|
||||
* CLOUDSTACK-377 provide deployment config access to marvin's testcase
|
||||
* CLOUDSTACK-373 "static NAT and Firewall is not working on external firewall device SRX, it needs to be implemented"
|
||||
* CLOUDSTACK-369 ASF 4.0 - unable to support XenServer 6.1 host
|
||||
* CLOUDSTACK-364 Docs point to download.cloud.com for AWS API script
|
||||
* CLOUDSTACK-361 Wrong creation of guest networks on a KVM host in Multiple Physical Networks with guest traffic
|
||||
* CLOUDSTACK-359 PropagateResourceEventCommand failes in cluster configuration
|
||||
* CLOUDSTACK-357 "ISOs can be deleted while still attached to a running VM, and they subsequently cannot be detached from a running VM"
|
||||
* CLOUDSTACK-355 "Fix ""count"" in a bunch of API commands"
|
||||
* CLOUDSTACK-348 deleteNetwork does not clean up network resource count correctly
|
||||
* CLOUDSTACK-347 listNetworks API: return vlan information only when the caller is ROOT admin
|
||||
* CLOUDSTACK-346 Cannot add Vmware cluster with class loader conflict exception
|
||||
* CLOUDSTACK-335 KVM VPC load balancer not working
|
||||
* CLOUDSTACK-333 When Datacenter name in VCenter has spaces Primary Storage (VMFS) discovery will fail
|
||||
* CLOUDSTACK-332 """count"" property in list* API response should be equal to how many entries in database, not how many objects in API response"
|
||||
* CLOUDSTACK-318 Adding XenServer Host Fails - 6.0.2 fails with 4.0.0
|
||||
* CLOUDSTACK-304 Add synchronization for createSnapshot command per host basis
|
||||
* CLOUDSTACK-293 "We do awful, hacky things in our spec file for client"
|
||||
* CLOUDSTACK-290 3.0.0 template also needed for 2.2.14 to 3.0.5 direct upgrade.
|
||||
* CLOUDSTACK-284 listVirtualMachines does not return deleted machines when zone is specified
|
||||
* CLOUDSTACK-279 deleteProject fails when executed by the regular user (works fine for root/domain admin)
|
||||
* CLOUDSTACK-274 Two error codes mapped to same value in API
|
||||
* CLOUDSTACK-271 updatePhysicalNetwork dies with an NPE when the vlan range is empty
|
||||
* CLOUDSTACK-256 "vpn:As an admin user , not able to delete VPN user which is present in a regular user's network."
|
||||
* CLOUDSTACK-250 Incorrect description of maintenance mode in admin guide
|
||||
* CLOUDSTACK-249 Add host id to failed VM deploy alerts
|
||||
* CLOUDSTACK-235 Network rate can be set in 2 places. Clarify docs on how this works.
|
||||
* CLOUDSTACK-232 Zone infrastructure chart -- disable resource total display
|
||||
* CLOUDSTACK-228 UI provides an option to reconnect a disconnected host - ServerApiException is thrown on an attempt
|
||||
* CLOUDSTACK-227 ReconnectHostCmd: NullPointerException: Unable to get host Information for XenServer 6.0.2 host - on intentionally changing the traffic labels on the physical network
|
||||
* CLOUDSTACK-226 UpdatePhysicalNetworkcommand failed due to java.sql.BatchUpdateException ; Tried to extend the existing Guest VLAN Range of one physical network into the Guest VLAN range of the other physical network
|
||||
* CLOUDSTACK-225 API Docs: Request params repeated with different descriptions
|
||||
* CLOUDSTACK-222 Admin UI prompts to restart Management server with cancel edit operation
|
||||
* CLOUDSTACK-178 Expose name parameter of VM in list Vm view.
|
||||
* CLOUDSTACK-130 Clarify docs on tags parameter in API reference
|
||||
* CLOUDSTACK-119 Move Agent-Simulator in to the hypervisor plugin model
|
||||
* CLOUDSTACK-118 "Status of host resorce stuck in ""ErrorInMaintenance"""
|
||||
* CLOUDSTACK-95 IP address allocation not working when a user tries to allocate IP addresses in a Project.
|
||||
* CLOUDSTACK-70 Improve Network Restart Behaviour for Basic Zone: Restarting Network Fails
|
||||
* CLOUDSTACK-46 Remnants of mycloud remain
|
||||
|
||||
Security Fixes:
|
||||
|
||||
* CVE-2012-4501: Apache CloudStack configuration vulnerability
|
||||
|
||||
|
||||
Version 4.0.2
|
||||
------------------------
|
||||
|
||||
This is a maintenance release for the Apache CloudStack 4.0.x series, with no new features.
|
||||
|
||||
Issues fixed in this release:
|
||||
|
||||
* CLOUDSTACK-354: Display of storage statistics is wrong.
|
||||
* CLOUDSTACK-397: Install Guide: Section 11.1 (Guest Traffic): Diagram is the wrong diagram
|
||||
* CLOUDSTACK-398: Install Guide: Section 11.17.3 (Using VPN with Mac OSX): Not complete?
|
||||
* CLOUDSTACK-462: A few corrections to make to the 4.0.0 installation guide
|
||||
* CLOUDSTACK-524: http proxy used by ssvm (secstorage.proxy) NOT working
|
||||
* CLOUDSTACK-587: MEMORY_CONSTRAINT_VIOLATIONMemory limits must satisfy:
|
||||
* CLOUDSTACK-803: HA gets triggered even when the host investigator is unable to determine the state of the host
|
||||
* CLOUDSTACK-810: Make DirectAgent thread pool size configurable
|
||||
* CLOUDSTACK-976: unable to start cloudstack (error: "java.lang.NoSuchMethodError: org.apache.commons.codec.binary.Base64.encodeBase64URLSafeString([B)Ljava/lang/String;")
|
||||
* CLOUDSTACK-988: HV version must be updated in hypervisor_version column of host table
|
||||
* CLOUDSTACK-990: Documentation issue with libvirtd.conf tcp_port configuration
|
||||
* CLOUDSTACK-1088: EnableStaticNat error will clear the data in database
|
||||
* CLOUDSTACK-1106: Missing documentation for cloud-setup-databases
|
||||
* CLOUDSTACK-1110: Documentation missing "Management Server Load Balancing"
|
||||
* CLOUDSTACK-1112: Errors in "Prepare the System VM Template"
|
||||
* CLOUDSTACK-1137: Force reconnect of a disconnected state complains about the state of the host.
|
||||
* CLOUDSTACK-1150: Documentation for libvirt on Ubuntu 12.04
|
||||
* CLOUDSTACK-1151: vmware systemVm template upgrade is missing in 4.0 upgrade
|
||||
* CLOUDSTACK-1211: Network operations are Blocked for the Read-only file system of Virtual Router
|
||||
* CLOUDSTACK-1265: logrotate dnsmasq configuration is wrong
|
||||
* CLOUDSTACK-1291: duplicate arguments in commands.xml prevents cloudapis.py to run to completion
|
||||
* CLOUDSTACK-1298: typo in deb package setup
|
||||
* CLOUDSTACK-1299: Errors in 4.5.5 section of installation guide
|
||||
* CLOUDSTACK-1300: section in wrong order in installation guide
|
||||
* CLOUDSTACK-1341: URL for the KEYs file is wrong in the installation guide
|
||||
* CLOUDSTACK-1419: Apache-ify and apply trademark logos in the UI
|
||||
* CLOUDSTACK-1420: Ensure trademarks are properly attributed in publican brand.
|
||||
* CLOUDSTACK-1589: Ubuntu 4.0 packages depend on non-existent chkconfig
|
||||
* CLOUDSTACK-1629: Need to move location or conflict with antlr
|
||||
* CLOUDSTACK-1642: Add support CentOS 6.4
|
||||
* CLOUDSTACK-1648: Unable to add KVM host
|
||||
* CLOUDSTACK-1652: /etc/hosts error in virtual router when deploy instance with the name same to previous instances
|
||||
* CLOUDSTACK-1666: KVM VPC NetworkUsage doesnot work
|
||||
* CLOUDSTACK-1668: IP conflict in VPC tier
|
||||
* CLOUDSTACK-1761: Available local storage disk capacity incorrectly reported in KVM to manager.
|
||||
* CLOUDSTACK-1845: KVM - storage migration often fails
|
||||
* CLOUDSTACK-1846: KVM - storage pools can silently fail to be unregistered, leading to failure to register later
|
||||
* CLOUDSTACK-2003: Deleting domain while deleted account is cleaning up leaves VMs expunging forever due to 'Failed to update resource count'
|
||||
* CLOUDSTACK-2090: Upgrade from version 4.0.1 to version 4.0.2 triggers the 4.0.0 to 4.0.1.
|
||||
* CLOUDSTACK-2091: Error in API documentation for 4.0.x.
|
||||
|
||||
|
||||
Version 4.0.1-incubating
|
||||
------------------------
|
||||
|
||||
This is a bugfix release for Apache CloudStack 4.0.0-incubating, with no new features.
|
||||
|
||||
Security Fixes:
|
||||
|
||||
* CVE-2012-5616: Local Information Disclosure Vulnerability (See CLOUDSTACK-505)
|
||||
|
||||
Bugs fixed in this release:
|
||||
|
||||
* CLOUDSTACK-359: PropagateResourceEventCommand fails in cluster configuration
|
||||
* CLOUDSTACK-374: When running cloud-setup-databases, it auto chooses the highest priority nic (lowest number ie: eth0)
|
||||
* CLOUDSTACK-389: Install Guide: Section 4.5.5 (Prepare NFS Shares): Confusing statement about iSCSI
|
||||
* CLOUDSTACK-395: Primary Storage and Secondary Storage sections missing sub-sections
|
||||
* CLOUDSTACK-411: Add another step during kvm agent installation on Ubuntu machine
|
||||
* CLOUDSTACK-415: restartNetwork call causes VM to be unreachable when Nicira based SDN is used.
|
||||
* CLOUDSTACK-422: XSL files missing license header.
|
||||
* CLOUDSTACK-426: SetVPCStaticNatRules unimplemented for KVM.
|
||||
* CLOUDSTACK-448: SSVM bootstrap failure on XenServer hosts with E3 CPU.
|
||||
* CLOUDSTACK-465: French language file quotes are dropping javascript syntax errors.
|
||||
* CLOUDSTACK-473: API Doc for uploadCustomCertificate doesn't explain how to use the optional parameters well.
|
||||
* CLOUDSTACK-480: Installation Documentation error: Section 4.5.5.2 needs to mention nfs-kernel-server.
|
||||
* CLOUDSTACK-481: Installation Guide Doc Error
|
||||
* CLOUDSTACK-498: Missing dependency in RPM of KVM Agent.
|
||||
* CLOUDSTACK-502: VPC router needs to resolve its hostname.
|
||||
* CLOUDSTACK-505: cloudstack logs the private key in plaintext.
|
||||
* CLOUDSTACK-507: fix api docs for listSSHKeyPairs.
|
||||
* CLOUDSTACK-515: NVP installation.
|
||||
* CLOUDSTACK-536: remove citrix cloudpatform from 4.0 build - CloudStack is ASF project.
|
||||
* CLOUDSTACK-560: Usage server doesn't work in 4.0.0 due to missing db changes.
|
||||
* CLOUDSTACK-580: Packages are named with 4.0 with 4.0.1 build.
|
||||
* CLOUDSTACK-591: Wrong vnet in iptables on KVM hypervisors after VM reboot.
|
||||
* CLOUDSTACK-595: Recreate root volume scenarios doesn't work in VMware
|
||||
* CLOUDSTACK-603: Upgrade from 4.0 to 4.0.1 is not enabled.
|
||||
* CLOUDSTACK-605: Host physical CPU is incorrectly calculated for VMware host
|
||||
* CLOUDSTACK-622: In the add primary storage dialog in the ui the RBD fields don't disappear when changing from RBD to another protocol.
|
||||
* CLOUDSTACK-683: Image is missing in the Accessing VM Section
|
||||
* CLOUDSTACK-685: CloudStack 4.0 Network Usage is ZERO
|
||||
* CLOUDSTACK-938: s2s VPN trouble
|
||||
* CLOUDSTACK-961: Installation docs don't detail dependencies for building RPMs
|
||||
* CLOUDSTACK-995: Not able to add the KVM host
|
||||
|
||||
|
||||
Version 4.0.0-incubating
|
||||
------------------------
|
||||
|
|
@ -34,4 +414,3 @@ New Features:
|
|||
Security Fixes:
|
||||
|
||||
* CVE-2012-4501: Apache CloudStack configuration vulnerability
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
Apache CloudStack (Incubating) Version 4.0.0
|
||||
Apache CloudStack Version 4.2.0
|
||||
|
||||
# About Apache CloudStack (Incubating)
|
||||
# About Apache CloudStack
|
||||
|
||||
Apache CloudStack (Incubating) is software designed to deploy
|
||||
Apache CloudStack is software designed to deploy
|
||||
and manage large networks of virtual machines, as a highly
|
||||
available, highly scalable Infrastructure as a Service (IaaS)
|
||||
cloud computing platform. CloudStack is used by a number of
|
||||
|
|
|
|||
|
|
@ -78,7 +78,7 @@ domr.scripts.dir=scripts/network/domr/kvm
|
|||
# a sensible default will be selected based on the network.bridge.type but can
|
||||
# be overridden here.
|
||||
# native = com.cloud.hypervisor.kvm.resource.BridgeVifDriver
|
||||
# openvswitch = com.cloud.hypervisor.kvm.resource.OvsBridgeDriver
|
||||
# openvswitch = com.cloud.hypervisor.kvm.resource.OvsVifDriver
|
||||
#libvirt.vif.driver=com.cloud.hypervisor.kvm.resource.BridgeVifDriver
|
||||
|
||||
# set the hypervisor type, values are: kvm, lxc
|
||||
|
|
|
|||
|
|
@ -0,0 +1,39 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.agent.api;
|
||||
|
||||
import java.util.List;
|
||||
import com.cloud.agent.api.to.VolumeTO;
|
||||
|
||||
public class MigrateWithStorageAnswer extends Answer {
|
||||
|
||||
List<VolumeTO> volumeTos;
|
||||
|
||||
public MigrateWithStorageAnswer(MigrateWithStorageCommand cmd, Exception ex) {
|
||||
super(cmd, ex);
|
||||
volumeTos = null;
|
||||
}
|
||||
|
||||
public MigrateWithStorageAnswer(MigrateWithStorageCommand cmd, List<VolumeTO> volumeTos) {
|
||||
super(cmd, true, null);
|
||||
this.volumeTos = volumeTos;
|
||||
}
|
||||
|
||||
public List<VolumeTO> getVolumeTos() {
|
||||
return volumeTos;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.agent.api;
|
||||
|
||||
import java.util.Map;
|
||||
import com.cloud.agent.api.to.VirtualMachineTO;
|
||||
import com.cloud.agent.api.to.VolumeTO;
|
||||
import com.cloud.agent.api.to.StorageFilerTO;
|
||||
|
||||
public class MigrateWithStorageCommand extends Command {
|
||||
VirtualMachineTO vm;
|
||||
Map<VolumeTO, StorageFilerTO> volumeToFiler;
|
||||
|
||||
public MigrateWithStorageCommand(VirtualMachineTO vm, Map<VolumeTO, StorageFilerTO> volumeToFiler) {
|
||||
this.vm = vm;
|
||||
this.volumeToFiler = volumeToFiler;
|
||||
}
|
||||
|
||||
public VirtualMachineTO getVirtualMachine() {
|
||||
return vm;
|
||||
}
|
||||
|
||||
public Map<VolumeTO, StorageFilerTO> getVolumeToFiler() {
|
||||
return volumeToFiler;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean executeInSequence() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.agent.api;
|
||||
|
||||
import java.util.List;
|
||||
import com.cloud.agent.api.to.VolumeTO;
|
||||
|
||||
public class MigrateWithStorageCompleteAnswer extends Answer {
|
||||
List<VolumeTO> volumeTos;
|
||||
|
||||
public MigrateWithStorageCompleteAnswer(MigrateWithStorageCompleteCommand cmd, Exception ex) {
|
||||
super(cmd, ex);
|
||||
volumeTos = null;
|
||||
}
|
||||
|
||||
public MigrateWithStorageCompleteAnswer(MigrateWithStorageCompleteCommand cmd, List<VolumeTO> volumeTos) {
|
||||
super(cmd, true, null);
|
||||
this.volumeTos = volumeTos;
|
||||
}
|
||||
|
||||
public List<VolumeTO> getVolumeTos() {
|
||||
return volumeTos;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.agent.api;
|
||||
|
||||
import com.cloud.agent.api.to.VirtualMachineTO;
|
||||
|
||||
public class MigrateWithStorageCompleteCommand extends Command {
|
||||
VirtualMachineTO vm;
|
||||
|
||||
public MigrateWithStorageCompleteCommand(VirtualMachineTO vm) {
|
||||
this.vm = vm;
|
||||
}
|
||||
|
||||
public VirtualMachineTO getVirtualMachine() {
|
||||
return vm;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean executeInSequence() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,55 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.agent.api;
|
||||
|
||||
import java.util.Map;
|
||||
import com.cloud.agent.api.to.VolumeTO;
|
||||
import com.cloud.agent.api.to.NicTO;
|
||||
|
||||
public class MigrateWithStorageReceiveAnswer extends Answer {
|
||||
|
||||
Map<VolumeTO, Object> volumeToSr;
|
||||
Map<NicTO, Object> nicToNetwork;
|
||||
Map<String, String> token;
|
||||
|
||||
public MigrateWithStorageReceiveAnswer(MigrateWithStorageReceiveCommand cmd, Exception ex) {
|
||||
super(cmd, ex);
|
||||
volumeToSr = null;
|
||||
nicToNetwork = null;
|
||||
token = null;
|
||||
}
|
||||
|
||||
public MigrateWithStorageReceiveAnswer(MigrateWithStorageReceiveCommand cmd, Map<VolumeTO, Object> volumeToSr,
|
||||
Map<NicTO, Object> nicToNetwork, Map<String, String> token) {
|
||||
super(cmd, true, null);
|
||||
this.volumeToSr = volumeToSr;
|
||||
this.nicToNetwork = nicToNetwork;
|
||||
this.token = token;
|
||||
}
|
||||
|
||||
public Map<VolumeTO, Object> getVolumeToSr() {
|
||||
return volumeToSr;
|
||||
}
|
||||
|
||||
public Map<NicTO, Object> getNicToNetwork() {
|
||||
return nicToNetwork;
|
||||
}
|
||||
|
||||
public Map<String, String> getToken() {
|
||||
return token;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.agent.api;
|
||||
|
||||
import java.util.Map;
|
||||
import com.cloud.agent.api.to.VirtualMachineTO;
|
||||
import com.cloud.agent.api.to.VolumeTO;
|
||||
import com.cloud.agent.api.to.StorageFilerTO;
|
||||
|
||||
public class MigrateWithStorageReceiveCommand extends Command {
|
||||
VirtualMachineTO vm;
|
||||
Map<VolumeTO, StorageFilerTO> volumeToFiler;
|
||||
|
||||
public MigrateWithStorageReceiveCommand(VirtualMachineTO vm, Map<VolumeTO, StorageFilerTO> volumeToFiler) {
|
||||
this.vm = vm;
|
||||
this.volumeToFiler = volumeToFiler;
|
||||
}
|
||||
|
||||
public VirtualMachineTO getVirtualMachine() {
|
||||
return vm;
|
||||
}
|
||||
|
||||
public Map<VolumeTO, StorageFilerTO> getVolumeToFiler() {
|
||||
return volumeToFiler;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean executeInSequence() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.agent.api;
|
||||
|
||||
import java.util.Set;
|
||||
import com.cloud.agent.api.to.VolumeTO;
|
||||
|
||||
public class MigrateWithStorageSendAnswer extends Answer {
|
||||
|
||||
Set<VolumeTO> volumeToSet;
|
||||
|
||||
public MigrateWithStorageSendAnswer(MigrateWithStorageSendCommand cmd, Exception ex) {
|
||||
super(cmd, ex);
|
||||
volumeToSet = null;
|
||||
}
|
||||
|
||||
public MigrateWithStorageSendAnswer(MigrateWithStorageSendCommand cmd, Set<VolumeTO> volumeToSet) {
|
||||
super(cmd, true, null);
|
||||
this.volumeToSet = volumeToSet;
|
||||
}
|
||||
|
||||
public Set<VolumeTO> getVolumeToSet() {
|
||||
return volumeToSet;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.agent.api;
|
||||
|
||||
import java.util.Map;
|
||||
import com.cloud.agent.api.to.VirtualMachineTO;
|
||||
import com.cloud.agent.api.to.VolumeTO;
|
||||
import com.cloud.agent.api.to.NicTO;
|
||||
|
||||
public class MigrateWithStorageSendCommand extends Command {
|
||||
VirtualMachineTO vm;
|
||||
Map<VolumeTO, Object> volumeToSr;
|
||||
Map<NicTO, Object> nicToNetwork;
|
||||
Map<String, String> token;
|
||||
|
||||
public MigrateWithStorageSendCommand(VirtualMachineTO vm, Map<VolumeTO, Object> volumeToSr,
|
||||
Map<NicTO, Object> nicToNetwork, Map<String, String> token) {
|
||||
this.vm = vm;
|
||||
this.volumeToSr = volumeToSr;
|
||||
this.nicToNetwork = nicToNetwork;
|
||||
this.token = token;
|
||||
}
|
||||
|
||||
public VirtualMachineTO getVirtualMachine() {
|
||||
return vm;
|
||||
}
|
||||
|
||||
public Map<VolumeTO, Object> getVolumeToSr() {
|
||||
return volumeToSr;
|
||||
}
|
||||
|
||||
public Map<NicTO, Object> getNicToNetwork() {
|
||||
return nicToNetwork;
|
||||
}
|
||||
|
||||
public Map<String, String> getToken() {
|
||||
return token;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean executeInSequence() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.agent.api;
|
||||
|
||||
public class UnregisterVMCommand extends Command {
|
||||
String vmName;
|
||||
|
||||
public UnregisterVMCommand(String vmName){
|
||||
this.vmName = vmName;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean executeInSequence() {
|
||||
return false;
|
||||
}
|
||||
|
||||
public String getVmName() {
|
||||
return vmName;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.agent.api.storage;
|
||||
|
||||
import com.cloud.agent.api.Answer;
|
||||
import com.cloud.agent.api.Command;
|
||||
|
||||
public class MigrateVolumeAnswer extends Answer {
|
||||
private String volumePath;
|
||||
|
||||
public MigrateVolumeAnswer(Command command, boolean success, String details, String volumePath) {
|
||||
super(command, success, details);
|
||||
this.volumePath = volumePath;
|
||||
}
|
||||
|
||||
public MigrateVolumeAnswer(Command command) {
|
||||
super(command);
|
||||
this.volumePath = null;
|
||||
}
|
||||
|
||||
public String getVolumePath() {
|
||||
return volumePath;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package com.cloud.agent.api.storage;
|
||||
|
||||
import com.cloud.agent.api.Command;
|
||||
import com.cloud.agent.api.to.StorageFilerTO;
|
||||
import com.cloud.storage.StoragePool;
|
||||
|
||||
public class MigrateVolumeCommand extends Command {
|
||||
|
||||
long volumeId;
|
||||
String volumePath;
|
||||
StorageFilerTO pool;
|
||||
|
||||
public MigrateVolumeCommand(long volumeId, String volumePath, StoragePool pool) {
|
||||
this.volumeId = volumeId;
|
||||
this.volumePath = volumePath;
|
||||
this.pool = new StorageFilerTO(pool);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean executeInSequence() {
|
||||
return true;
|
||||
}
|
||||
|
||||
public String getVolumePath() {
|
||||
return volumePath;
|
||||
}
|
||||
|
||||
public long getVolumeId() {
|
||||
return volumeId;
|
||||
}
|
||||
|
||||
public StorageFilerTO getPool() {
|
||||
return pool;
|
||||
}
|
||||
}
|
||||
|
|
@ -20,6 +20,11 @@ import java.util.List;
|
|||
|
||||
import javax.naming.NamingException;
|
||||
|
||||
import com.cloud.exception.InvalidParameterValueException;
|
||||
import com.cloud.exception.InsufficientCapacityException;
|
||||
import com.cloud.exception.ConcurrentOperationException;
|
||||
import com.cloud.exception.ResourceUnavailableException;
|
||||
import com.cloud.exception.ResourceAllocationException;
|
||||
import org.apache.cloudstack.api.command.admin.config.UpdateCfgCmd;
|
||||
import org.apache.cloudstack.api.command.admin.ldap.LDAPConfigCmd;
|
||||
import org.apache.cloudstack.api.command.admin.ldap.LDAPRemoveCmd;
|
||||
|
|
@ -46,10 +51,6 @@ import org.apache.cloudstack.api.command.user.network.ListNetworkOfferingsCmd;
|
|||
import com.cloud.dc.DataCenter;
|
||||
import com.cloud.dc.Pod;
|
||||
import com.cloud.dc.Vlan;
|
||||
import com.cloud.exception.ConcurrentOperationException;
|
||||
import com.cloud.exception.InsufficientCapacityException;
|
||||
import com.cloud.exception.ResourceAllocationException;
|
||||
import com.cloud.exception.ResourceUnavailableException;
|
||||
import com.cloud.network.Networks.TrafficType;
|
||||
import com.cloud.offering.DiskOffering;
|
||||
import com.cloud.offering.NetworkOffering;
|
||||
|
|
@ -65,7 +66,7 @@ public interface ConfigurationService {
|
|||
* - the command wrapping name and value parameters
|
||||
* @return updated configuration object if successful
|
||||
*/
|
||||
Configuration updateConfiguration(UpdateCfgCmd cmd);
|
||||
Configuration updateConfiguration(UpdateCfgCmd cmd) throws InvalidParameterValueException;
|
||||
|
||||
/**
|
||||
* Create a service offering through the API
|
||||
|
|
@ -250,7 +251,7 @@ public interface ConfigurationService {
|
|||
|
||||
NetworkOffering getNetworkOffering(long id);
|
||||
|
||||
Integer getNetworkOfferingNetworkRate(long networkOfferingId);
|
||||
Integer getNetworkOfferingNetworkRate(long networkOfferingId, Long dataCenterId);
|
||||
|
||||
Account getVlanAccount(long vlanId);
|
||||
|
||||
|
|
@ -262,7 +263,7 @@ public interface ConfigurationService {
|
|||
|
||||
Long getDefaultPageSize();
|
||||
|
||||
Integer getServiceOfferingNetworkRate(long serviceOfferingId);
|
||||
Integer getServiceOfferingNetworkRate(long serviceOfferingId, Long dataCenterId);
|
||||
|
||||
DiskOffering getDiskOffering(long diskOfferingId);
|
||||
|
||||
|
|
|
|||
|
|
@ -52,4 +52,6 @@ public interface HypervisorCapabilities extends Identity, InternalIdentity{
|
|||
*/
|
||||
Integer getMaxHostsPerCluster();
|
||||
|
||||
boolean isStorageMotionSupported();
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,6 +16,8 @@
|
|||
// under the License.
|
||||
package com.cloud.hypervisor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.cloud.agent.api.Command;
|
||||
import com.cloud.agent.api.to.NicTO;
|
||||
import com.cloud.agent.api.to.VirtualMachineTO;
|
||||
|
|
@ -57,4 +59,11 @@ public interface HypervisorGuru extends Adapter {
|
|||
* @return
|
||||
*/
|
||||
NicTO toNicTO(NicProfile profile);
|
||||
|
||||
/**
|
||||
* Give hypervisor guru opportunity to decide if certain command needs to be done after expunge VM from DB
|
||||
* @param vm
|
||||
* @return a list of Commands
|
||||
*/
|
||||
List<Command> finalizeExpunge(VirtualMachine vm);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -78,16 +78,7 @@ public interface IpAddress extends ControlledEntity, Identity, InternalIdentity
|
|||
|
||||
boolean getSystem();
|
||||
|
||||
/**
|
||||
* @return
|
||||
*/
|
||||
Long getVpcId();
|
||||
|
||||
/**
|
||||
* @param vpcId
|
||||
*/
|
||||
void setVpcId(Long vpcId);
|
||||
String getVmIp();
|
||||
void setVmIp(String vmIp);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -181,7 +181,7 @@ public interface NetworkModel {
|
|||
/**
|
||||
* @return
|
||||
*/
|
||||
String getDefaultNetworkDomain();
|
||||
String getDefaultNetworkDomain(long zoneId);
|
||||
|
||||
/**
|
||||
* @param ntwkOffId
|
||||
|
|
|
|||
|
|
@ -79,7 +79,7 @@ public interface NetworkService {
|
|||
Long startIndex, Long pageSize, String name);
|
||||
|
||||
PhysicalNetwork updatePhysicalNetwork(Long id, String networkSpeed, List<String> tags,
|
||||
String newVnetRangeString, String state);
|
||||
String newVnetRangeString, String state, String removeVlan);
|
||||
|
||||
boolean deletePhysicalNetwork(Long id);
|
||||
|
||||
|
|
@ -158,7 +158,7 @@ public interface NetworkService {
|
|||
throws ResourceAllocationException, ConcurrentOperationException, InsufficientCapacityException;
|
||||
|
||||
/* Requests an IP address for the guest nic */
|
||||
String allocateSecondaryGuestIP(Account account, long zoneId, Long nicId,
|
||||
NicSecondaryIp allocateSecondaryGuestIP(Account account, long zoneId, Long nicId,
|
||||
Long networkId, String ipaddress) throws InsufficientAddressCapacityException;
|
||||
|
||||
boolean releaseSecondaryIpFromNic(long ipAddressId);
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@ package com.cloud.network;
|
|||
|
||||
import java.util.List;
|
||||
|
||||
import com.cloud.utils.Pair;
|
||||
import org.apache.cloudstack.api.Identity;
|
||||
import org.apache.cloudstack.api.InternalIdentity;
|
||||
|
||||
|
|
@ -59,7 +60,9 @@ public interface PhysicalNetwork extends Identity, InternalIdentity {
|
|||
|
||||
Long getDomainId();
|
||||
|
||||
String getVnet();
|
||||
List<Pair<Integer,Integer>> getVnet();
|
||||
|
||||
String getVnetString();
|
||||
|
||||
String getSpeed();
|
||||
|
||||
|
|
|
|||
|
|
@ -30,7 +30,4 @@ public interface PublicIpAddress extends ControlledEntity, IpAddress, Vlan, Inte
|
|||
public String getNetmask();
|
||||
|
||||
public String getGateway();
|
||||
|
||||
@Override
|
||||
public String getVlanTag();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,7 +28,11 @@ import com.cloud.utils.component.Adapter;
|
|||
|
||||
public interface IpDeployer extends Adapter{
|
||||
/**
|
||||
* Apply ip addresses to this network
|
||||
* Modify ip addresses on this network
|
||||
* Depending on the State of the ip addresses the element should take
|
||||
* appropriate action.
|
||||
* If state is Releasing the ip address should be de-allocated
|
||||
* If state is Allocating or Allocated the ip address should be provisioned
|
||||
* @param network
|
||||
* @param ipAddress
|
||||
* @return
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@
|
|||
|
||||
package com.cloud.region.ha;
|
||||
|
||||
import com.cloud.network.rules.LoadBalancer;
|
||||
import org.apache.cloudstack.api.command.user.region.ha.gslb.*;
|
||||
|
||||
import java.util.List;
|
||||
|
|
@ -44,4 +45,6 @@ public interface GlobalLoadBalancingRulesService {
|
|||
|
||||
List<GlobalLoadBalancerRule> listGlobalLoadBalancerRule(ListGlobalLoadBalancerRuleCmd listGslbCmd);
|
||||
|
||||
List<LoadBalancer> listSiteLoadBalancers(long gslbRuleId);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -75,9 +75,11 @@ import com.cloud.network.IpAddress;
|
|||
import com.cloud.org.Cluster;
|
||||
import com.cloud.storage.GuestOS;
|
||||
import com.cloud.storage.GuestOsCategory;
|
||||
import com.cloud.storage.StoragePool;
|
||||
import com.cloud.template.VirtualMachineTemplate;
|
||||
import com.cloud.user.SSHKeyPair;
|
||||
import com.cloud.utils.Pair;
|
||||
import com.cloud.utils.Ternary;
|
||||
import com.cloud.vm.InstanceGroup;
|
||||
import com.cloud.vm.VirtualMachine;
|
||||
import com.cloud.vm.VirtualMachine.Type;
|
||||
|
|
@ -388,10 +390,21 @@ public interface ManagementService {
|
|||
* @param Long
|
||||
* vmId
|
||||
* Id of The VM to migrate
|
||||
* @return Pair<List<? extends Host>, List<? extends Host>> List of all Hosts in VM's cluster and list of Hosts with
|
||||
* enough capacity
|
||||
* @return Ternary<List<? extends Host>, List<? extends Host>, Map<Host, Boolean>> List of all Hosts to which a VM
|
||||
* can be migrated, list of Hosts with enough capacity and hosts requiring storage motion for migration.
|
||||
*/
|
||||
Pair<Pair<List<? extends Host>, Integer>, List<? extends Host>> listHostsForMigrationOfVM(Long vmId, Long startIndex, Long pageSize);
|
||||
Ternary<Pair<List<? extends Host>, Integer>, List<? extends Host>, Map<Host, Boolean>> listHostsForMigrationOfVM(
|
||||
Long vmId, Long startIndex, Long pageSize);
|
||||
|
||||
/**
|
||||
* List storage pools for live migrating of a volume. The API returns list of all pools in the cluster to which the
|
||||
* volume can be migrated. Current pool is not included in the list.
|
||||
*
|
||||
* @param Long volumeId
|
||||
* @return Pair<List<? extends StoragePool>, List<? extends StoragePool>> List of storage pools in cluster and list
|
||||
* of pools with enough capacity.
|
||||
*/
|
||||
Pair<List<? extends StoragePool>, List<? extends StoragePool>> listStoragePoolsForMigrationOfVolume(Long volumeId);
|
||||
|
||||
String[] listEventTypes();
|
||||
|
||||
|
|
@ -407,6 +420,4 @@ public interface ManagementService {
|
|||
*/
|
||||
List<? extends Capacity> listTopConsumedResources(ListCapacityCmd cmd);
|
||||
|
||||
List<String> listDeploymentPlanners();
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@ import org.apache.cloudstack.acl.ControlledEntity;
|
|||
import org.apache.cloudstack.api.Identity;
|
||||
import org.apache.cloudstack.api.InternalIdentity;
|
||||
|
||||
|
||||
public interface Account extends ControlledEntity, InternalIdentity, Identity {
|
||||
public enum Type {
|
||||
Normal,
|
||||
|
|
@ -64,4 +65,7 @@ public interface Account extends ControlledEntity, InternalIdentity, Identity {
|
|||
public Long getDefaultZoneId();
|
||||
|
||||
public String getUuid();
|
||||
|
||||
boolean isDefault();
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -72,5 +72,7 @@ public interface User extends OwnedBy, InternalIdentity {
|
|||
String getRegistrationToken();
|
||||
|
||||
boolean isRegistered();
|
||||
|
||||
boolean isDefault();
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,9 +21,22 @@ import java.util.Map;
|
|||
|
||||
import javax.naming.InsufficientResourcesException;
|
||||
|
||||
import org.apache.cloudstack.api.BaseCmd.HTTPMethod;
|
||||
import org.apache.cloudstack.api.command.admin.vm.AssignVMCmd;
|
||||
import org.apache.cloudstack.api.command.admin.vm.RecoverVMCmd;
|
||||
import org.apache.cloudstack.api.command.user.vm.*;
|
||||
import org.apache.cloudstack.api.command.user.vm.AddNicToVMCmd;
|
||||
import org.apache.cloudstack.api.command.user.vm.DeployVMCmd;
|
||||
import org.apache.cloudstack.api.command.user.vm.DestroyVMCmd;
|
||||
import org.apache.cloudstack.api.command.user.vm.RebootVMCmd;
|
||||
import org.apache.cloudstack.api.command.user.vm.RemoveNicFromVMCmd;
|
||||
import org.apache.cloudstack.api.command.user.vm.ResetVMPasswordCmd;
|
||||
import org.apache.cloudstack.api.command.user.vm.ResetVMSSHKeyCmd;
|
||||
import org.apache.cloudstack.api.command.user.vm.RestoreVMCmd;
|
||||
import org.apache.cloudstack.api.command.user.vm.ScaleVMCmd;
|
||||
import org.apache.cloudstack.api.command.user.vm.StartVMCmd;
|
||||
import org.apache.cloudstack.api.command.user.vm.UpdateDefaultNicForVMCmd;
|
||||
import org.apache.cloudstack.api.command.user.vm.UpdateVMCmd;
|
||||
import org.apache.cloudstack.api.command.user.vm.UpgradeVMCmd;
|
||||
import org.apache.cloudstack.api.command.user.vmgroup.CreateVMGroupCmd;
|
||||
import org.apache.cloudstack.api.command.user.vmgroup.DeleteVMGroupCmd;
|
||||
import com.cloud.dc.DataCenter;
|
||||
|
|
@ -185,8 +198,8 @@ public interface UserVmService {
|
|||
*/
|
||||
UserVm createBasicSecurityGroupVirtualMachine(DataCenter zone, ServiceOffering serviceOffering, VirtualMachineTemplate template, List<Long> securityGroupIdList, Account owner, String hostName,
|
||||
String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor,
|
||||
String userData, String sshKeyPair, Map<Long, IpAddresses> requestedIps, IpAddresses defaultIp,
|
||||
String keyboard, List<Long> affinityGroupIdList)
|
||||
HTTPMethod httpmethod, String userData, String sshKeyPair, Map<Long, IpAddresses> requestedIps,
|
||||
IpAddresses defaultIp, String keyboard, List<Long> affinityGroupIdList)
|
||||
throws InsufficientCapacityException, ConcurrentOperationException, ResourceUnavailableException, StorageUnavailableException, ResourceAllocationException;
|
||||
|
||||
/**
|
||||
|
|
@ -257,8 +270,8 @@ public interface UserVmService {
|
|||
* @throws InsufficientResourcesException
|
||||
*/
|
||||
UserVm createAdvancedSecurityGroupVirtualMachine(DataCenter zone, ServiceOffering serviceOffering, VirtualMachineTemplate template, List<Long> networkIdList, List<Long> securityGroupIdList,
|
||||
Account owner, String hostName, String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, String userData, String sshKeyPair, Map<Long, IpAddresses> requestedIps,
|
||||
IpAddresses defaultIps, String keyboard, List<Long> affinityGroupIdList)
|
||||
Account owner, String hostName, String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, HTTPMethod httpmethod, String userData, String sshKeyPair,
|
||||
Map<Long, IpAddresses> requestedIps, IpAddresses defaultIps, String keyboard, List<Long> affinityGroupIdList)
|
||||
throws InsufficientCapacityException, ConcurrentOperationException, ResourceUnavailableException, StorageUnavailableException, ResourceAllocationException;
|
||||
|
||||
/**
|
||||
|
|
@ -327,8 +340,8 @@ public interface UserVmService {
|
|||
*/
|
||||
UserVm createAdvancedVirtualMachine(DataCenter zone, ServiceOffering serviceOffering, VirtualMachineTemplate template, List<Long> networkIdList, Account owner, String hostName,
|
||||
String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor,
|
||||
String userData, String sshKeyPair, Map<Long, IpAddresses> requestedIps, IpAddresses defaultIps,
|
||||
String keyboard, List<Long> affinityGroupIdList)
|
||||
HTTPMethod httpmethod, String userData, String sshKeyPair, Map<Long, IpAddresses> requestedIps,
|
||||
IpAddresses defaultIps, String keyboard, List<Long> affinityGroupIdList)
|
||||
throws InsufficientCapacityException, ConcurrentOperationException, ResourceUnavailableException, StorageUnavailableException, ResourceAllocationException;
|
||||
|
||||
/**
|
||||
|
|
@ -405,11 +418,38 @@ public interface UserVmService {
|
|||
*/
|
||||
VirtualMachine migrateVirtualMachine(Long vmId, Host destinationHost) throws ResourceUnavailableException, ConcurrentOperationException, ManagementServerException, VirtualMachineMigrationException;
|
||||
|
||||
/**
|
||||
* Migrate the given VM with its volumes to the destination host. The API returns the migrated VM if it succeeds.
|
||||
* Only root admin can migrate a VM.
|
||||
*
|
||||
* @param destinationStorage
|
||||
* TODO
|
||||
* @param Long
|
||||
* vmId of The VM to migrate
|
||||
* @param Host
|
||||
* destinationHost to migrate the VM
|
||||
* @param Map
|
||||
* A map of volume to which pool it should be migrated
|
||||
*
|
||||
* @return VirtualMachine migrated VM
|
||||
* @throws ManagementServerException
|
||||
* in case we get error finding the VM or host or access errors or other internal errors.
|
||||
* @throws ConcurrentOperationException
|
||||
* if there are multiple users working on the same VM.
|
||||
* @throws ResourceUnavailableException
|
||||
* if the destination host to migrate the VM is not currently available.
|
||||
* @throws VirtualMachineMigrationException
|
||||
* if the VM to be migrated is not in Running state
|
||||
*/
|
||||
VirtualMachine migrateVirtualMachineWithVolume(Long vmId, Host destinationHost, Map<String, String> volumeToPool)
|
||||
throws ResourceUnavailableException, ConcurrentOperationException, ManagementServerException,
|
||||
VirtualMachineMigrationException;
|
||||
|
||||
UserVm moveVMToUser(AssignVMCmd moveUserVMCmd) throws ResourceAllocationException, ConcurrentOperationException, ResourceUnavailableException, InsufficientCapacityException;
|
||||
|
||||
VirtualMachine vmStorageMigration(Long vmId, StoragePool destPool);
|
||||
|
||||
UserVm restoreVM(RestoreVMCmd cmd);
|
||||
UserVm restoreVM(RestoreVMCmd cmd) throws InsufficientCapacityException, ResourceUnavailableException;
|
||||
|
||||
UserVm upgradeVirtualMachine(ScaleVMCmd scaleVMCmd) throws ResourceUnavailableException, ConcurrentOperationException, ManagementServerException, VirtualMachineMigrationException;
|
||||
|
||||
|
|
|
|||
|
|
@ -64,7 +64,6 @@ public class AffinityGroupResponse extends BaseResponse implements ControlledVie
|
|||
private List<String> vmIdList;
|
||||
|
||||
public AffinityGroupResponse() {
|
||||
this.vmIdList = new ArrayList<String>();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -149,6 +148,10 @@ public class AffinityGroupResponse extends BaseResponse implements ControlledVie
|
|||
}
|
||||
|
||||
public void addVMId(String vmId) {
|
||||
if (this.vmIdList == null) {
|
||||
this.vmIdList = new ArrayList<String>();
|
||||
}
|
||||
|
||||
this.vmIdList.add(vmId);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -221,6 +221,7 @@ public class ApiConstants {
|
|||
public static final String VIRTUAL_MACHINE_ID = "virtualmachineid";
|
||||
public static final String VIRTUAL_MACHINE_IDS = "virtualmachineids";
|
||||
public static final String VLAN = "vlan";
|
||||
public static final String REMOVE_VLAN="removevlan";
|
||||
public static final String VLAN_ID = "vlanid";
|
||||
public static final String VM_AVAILABLE = "vmavailable";
|
||||
public static final String VM_LIMIT = "vmlimit";
|
||||
|
|
@ -230,6 +231,7 @@ public class ApiConstants {
|
|||
public static final String VOLUME_ID = "volumeid";
|
||||
public static final String ZONE_ID = "zoneid";
|
||||
public static final String ZONE_NAME = "zonename";
|
||||
public static final String ZONE_TYPE = "zonetype";
|
||||
public static final String NETWORK_TYPE = "networktype";
|
||||
public static final String PAGE = "page";
|
||||
public static final String PAGE_SIZE = "pagesize";
|
||||
|
|
@ -333,6 +335,7 @@ public class ApiConstants {
|
|||
public static final String LOAD_BALANCER_DEVICE_STATE = "lbdevicestate";
|
||||
public static final String LOAD_BALANCER_DEVICE_CAPACITY = "lbdevicecapacity";
|
||||
public static final String LOAD_BALANCER_DEVICE_DEDICATED = "lbdevicededicated";
|
||||
public static final String LOAD_BALANCER_RULE = "loadbalancerrule";
|
||||
public static final String LOAD_BALANCER_RULE_LIST = "loadbalancerrulelist";
|
||||
public static final String FIREWALL_DEVICE_ID = "fwdeviceid";
|
||||
public static final String FIREWALL_DEVICE_NAME = "fwdevicename";
|
||||
|
|
@ -364,6 +367,8 @@ public class ApiConstants {
|
|||
public static final String HA_HOST = "hahost";
|
||||
public static final String CUSTOM_DISK_OFF_MAX_SIZE = "customdiskofferingmaxsize";
|
||||
public static final String DEFAULT_ZONE_ID = "defaultzoneid";
|
||||
public static final String LIVE_MIGRATE = "livemigrate";
|
||||
public static final String MIGRATE_TO = "migrateto";
|
||||
public static final String GUID = "guid";
|
||||
public static final String VSWITCH_TYPE_GUEST_TRAFFIC = "guestvswitchtype";
|
||||
public static final String VSWITCH_TYPE_PUBLIC_TRAFFIC = "publicvswitchtype";
|
||||
|
|
@ -475,8 +480,8 @@ public class ApiConstants {
|
|||
public static final String HEALTHCHECK_PINGPATH = "pingpath";
|
||||
public static final String AFFINITY_GROUP_IDS = "affinitygroupids";
|
||||
public static final String AFFINITY_GROUP_NAMES = "affinitygroupnames";
|
||||
public static final String DEPLOYMENT_PLANNER = "deploymentplanner";
|
||||
public static final String ASA_INSIDE_PORT_PROFILE = "insideportprofile";
|
||||
public static final String AFFINITY_GROUP_ID = "affinitygroupid";
|
||||
|
||||
public enum HostDetails {
|
||||
all, capacity, events, stats, min;
|
||||
|
|
|
|||
|
|
@ -95,6 +95,11 @@ public abstract class BaseCmd {
|
|||
private Object _responseObject = null;
|
||||
private Map<String, String> fullUrlParams;
|
||||
|
||||
public enum HTTPMethod {
|
||||
GET, POST, PUT, DELETE
|
||||
}
|
||||
private HTTPMethod httpMethod;
|
||||
|
||||
@Parameter(name = "response", type = CommandType.STRING)
|
||||
private String responseType;
|
||||
|
||||
|
|
@ -140,6 +145,25 @@ public abstract class BaseCmd {
|
|||
public void configure() {
|
||||
}
|
||||
|
||||
public HTTPMethod getHttpMethod() {
|
||||
return httpMethod;
|
||||
}
|
||||
|
||||
public void setHttpMethod(String method) {
|
||||
if (method != null) {
|
||||
if (method.equalsIgnoreCase("GET"))
|
||||
httpMethod = HTTPMethod.GET;
|
||||
else if (method.equalsIgnoreCase("PUT"))
|
||||
httpMethod = HTTPMethod.PUT;
|
||||
else if (method.equalsIgnoreCase("POST"))
|
||||
httpMethod = HTTPMethod.POST;
|
||||
else if (method.equalsIgnoreCase("DELETE"))
|
||||
httpMethod = HTTPMethod.DELETE;
|
||||
} else {
|
||||
httpMethod = HTTPMethod.GET;
|
||||
}
|
||||
}
|
||||
|
||||
public String getResponseType() {
|
||||
if (responseType == null) {
|
||||
return RESPONSE_TYPE_XML;
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ import java.text.DecimalFormat;
|
|||
import java.util.EnumSet;
|
||||
import java.util.List;
|
||||
|
||||
import com.cloud.vm.NicSecondaryIp;
|
||||
import org.apache.cloudstack.affinity.AffinityGroup;
|
||||
import org.apache.cloudstack.affinity.AffinityGroupResponse;
|
||||
import org.apache.cloudstack.api.ApiConstants.HostDetails;
|
||||
|
|
@ -189,6 +190,10 @@ public interface ResponseGenerator {
|
|||
|
||||
HostResponse createHostResponse(Host host);
|
||||
|
||||
HostForMigrationResponse createHostForMigrationResponse(Host host);
|
||||
|
||||
HostForMigrationResponse createHostForMigrationResponse(Host host, EnumSet<HostDetails> details);
|
||||
|
||||
VlanIpRangeResponse createVlanIpRangeResponse(Vlan vlan);
|
||||
|
||||
IPAddressResponse createIPAddressResponse(IpAddress ipAddress);
|
||||
|
|
@ -216,6 +221,8 @@ public interface ResponseGenerator {
|
|||
|
||||
StoragePoolResponse createStoragePoolResponse(StoragePool pool);
|
||||
|
||||
StoragePoolForMigrationResponse createStoragePoolForMigrationResponse(StoragePool pool);
|
||||
|
||||
ClusterResponse createClusterResponse(Cluster cluster, Boolean showCapacities);
|
||||
|
||||
FirewallRuleResponse createPortForwardingRuleResponse(PortForwardingRule fwRule);
|
||||
|
|
@ -383,8 +390,7 @@ public interface ResponseGenerator {
|
|||
TrafficMonitorResponse createTrafficMonitorResponse(Host trafficMonitor);
|
||||
VMSnapshotResponse createVMSnapshotResponse(VMSnapshot vmSnapshot);
|
||||
|
||||
NicSecondaryIpResponse createSecondaryIPToNicResponse(String ip,
|
||||
Long nicId, Long networkId);
|
||||
NicSecondaryIpResponse createSecondaryIPToNicResponse(NicSecondaryIp result);
|
||||
public NicResponse createNicResponse(Nic result);
|
||||
|
||||
AffinityGroupResponse createAffinityGroupResponse(AffinityGroup group);
|
||||
|
|
|
|||
|
|
@ -16,9 +16,9 @@
|
|||
// under the License.
|
||||
package org.apache.cloudstack.api.command.admin.account;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Map;
|
||||
|
||||
import com.cloud.user.Account;
|
||||
import com.cloud.user.UserAccount;
|
||||
import com.cloud.user.UserContext;
|
||||
import org.apache.cloudstack.api.APICommand;
|
||||
import org.apache.cloudstack.api.ApiConstants;
|
||||
import org.apache.cloudstack.api.ApiErrorCode;
|
||||
|
|
@ -27,14 +27,12 @@ import org.apache.cloudstack.api.Parameter;
|
|||
import org.apache.cloudstack.api.ServerApiException;
|
||||
import org.apache.cloudstack.api.response.AccountResponse;
|
||||
import org.apache.cloudstack.api.response.DomainResponse;
|
||||
import org.apache.cloudstack.api.response.UserResponse;
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import com.cloud.user.Account;
|
||||
import com.cloud.user.UserAccount;
|
||||
import com.cloud.user.UserContext;
|
||||
import java.util.Collection;
|
||||
import java.util.Map;
|
||||
|
||||
@APICommand(name = "createAccount", description="Creates an account", responseObject=UserResponse.class)
|
||||
@APICommand(name = "createAccount", description="Creates an account", responseObject=AccountResponse.class)
|
||||
public class CreateAccountCmd extends BaseCmd {
|
||||
public static final Logger s_logger = Logger.getLogger(CreateAccountCmd.class.getName());
|
||||
|
||||
|
|
|
|||
|
|
@ -70,6 +70,9 @@ public class ListClustersCmd extends BaseListCmd {
|
|||
@Parameter(name=ApiConstants.MANAGED_STATE, type=CommandType.STRING, description="whether this cluster is managed by cloudstack")
|
||||
private String managedState;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_TYPE, type=CommandType.STRING, description="the network type of the zone that the virtual machine belongs to")
|
||||
private String zoneType;
|
||||
|
||||
@Parameter(name=ApiConstants.SHOW_CAPACITIES, type=CommandType.BOOLEAN, description="flag to display the capacity of the clusters")
|
||||
private Boolean showCapacities;
|
||||
|
||||
|
|
@ -114,7 +117,10 @@ public class ListClustersCmd extends BaseListCmd {
|
|||
this.managedState = managedstate;
|
||||
}
|
||||
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
public Boolean getShowCapacities() {
|
||||
return showCapacities;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -23,8 +23,7 @@ import org.apache.cloudstack.api.APICommand;
|
|||
import org.apache.cloudstack.api.ApiConstants;
|
||||
import org.apache.cloudstack.api.BaseListCmd;
|
||||
import org.apache.cloudstack.api.Parameter;
|
||||
import org.apache.cloudstack.api.response.ConfigurationResponse;
|
||||
import org.apache.cloudstack.api.response.ListResponse;
|
||||
import org.apache.cloudstack.api.response.*;
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import com.cloud.configuration.Configuration;
|
||||
|
|
@ -46,6 +45,19 @@ public class ListCfgsByCmd extends BaseListCmd {
|
|||
@Parameter(name = ApiConstants.NAME, type = CommandType.STRING, description = "lists configuration by name")
|
||||
private String configName;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_ID, type=CommandType.UUID, entityType=ZoneResponse.class, description="the ID of the Zone to update the parameter value for corresponding zone")
|
||||
private Long zone_id;
|
||||
|
||||
@Parameter(name=ApiConstants.CLUSTER_ID, type=CommandType.UUID, entityType=ClusterResponse.class, description="the ID of the Cluster to update the parameter value for corresponding cluster")
|
||||
private Long cluster_id;
|
||||
|
||||
@Parameter(name=ApiConstants.STORAGE_ID, type=CommandType.UUID, entityType=StoragePoolResponse.class, description="the ID of the Storage pool to update the parameter value for corresponding storage pool")
|
||||
private Long storagepool_id;
|
||||
|
||||
@Parameter(name=ApiConstants.ACCOUNT_ID, type=CommandType.UUID, entityType=AccountResponse.class, description="the ID of the Account to update the parameter value for corresponding account")
|
||||
private Long account_id;
|
||||
|
||||
|
||||
// ///////////////////////////////////////////////////
|
||||
// ///////////////// Accessors ///////////////////////
|
||||
// ///////////////////////////////////////////////////
|
||||
|
|
@ -58,6 +70,22 @@ public class ListCfgsByCmd extends BaseListCmd {
|
|||
return configName;
|
||||
}
|
||||
|
||||
public Long getZoneId() {
|
||||
return zone_id;
|
||||
}
|
||||
|
||||
public Long getClusterId() {
|
||||
return cluster_id;
|
||||
}
|
||||
|
||||
public Long getStoragepoolId() {
|
||||
return storagepool_id;
|
||||
}
|
||||
|
||||
public Long getAccountId() {
|
||||
return account_id;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Long getPageSizeVal() {
|
||||
Long pageSizeVal = 500L;
|
||||
|
|
@ -85,6 +113,18 @@ public class ListCfgsByCmd extends BaseListCmd {
|
|||
for (Configuration cfg : result.first()) {
|
||||
ConfigurationResponse cfgResponse = _responseGenerator.createConfigurationResponse(cfg);
|
||||
cfgResponse.setObjectName("configuration");
|
||||
if(getZoneId() != null) {
|
||||
cfgResponse.setScope("zone");
|
||||
}
|
||||
if(getClusterId() != null) {
|
||||
cfgResponse.setScope("cluster");
|
||||
}
|
||||
if(getStoragepoolId() != null) {
|
||||
cfgResponse.setScope("storagepool");
|
||||
}
|
||||
if(getAccountId() != null) {
|
||||
cfgResponse.setScope("account");
|
||||
}
|
||||
configResponses.add(cfgResponse);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,71 +0,0 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package org.apache.cloudstack.api.command.admin.config;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.cloudstack.api.APICommand;
|
||||
import org.apache.cloudstack.api.BaseListCmd;
|
||||
import org.apache.cloudstack.api.response.DeploymentPlannersResponse;
|
||||
import org.apache.cloudstack.api.response.ListResponse;
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
@APICommand(name = "listDeploymentPlanners", description = "Lists all DeploymentPlanners available.", responseObject = DeploymentPlannersResponse.class)
|
||||
public class ListDeploymentPlannersCmd extends BaseListCmd {
|
||||
public static final Logger s_logger = Logger.getLogger(ListDeploymentPlannersCmd.class.getName());
|
||||
|
||||
private static final String s_name = "listdeploymentplannersresponse";
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
//////////////// API parameters /////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////////// Accessors ///////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////// API Implementation///////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
||||
@Override
|
||||
public String getCommandName() {
|
||||
return s_name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(){
|
||||
List<String> planners = _mgr.listDeploymentPlanners();
|
||||
ListResponse<DeploymentPlannersResponse> response = new ListResponse<DeploymentPlannersResponse>();
|
||||
List<DeploymentPlannersResponse> plannerResponses = new ArrayList<DeploymentPlannersResponse>();
|
||||
|
||||
for (String planner : planners) {
|
||||
DeploymentPlannersResponse plannerResponse = new DeploymentPlannersResponse();
|
||||
plannerResponse.setName(planner);
|
||||
plannerResponse.setObjectName("deploymentPlanner");
|
||||
plannerResponses.add(plannerResponse);
|
||||
}
|
||||
|
||||
response.setResponses(plannerResponses);
|
||||
response.setResponseName(getCommandName());
|
||||
this.setResponseObject(response);
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -22,7 +22,7 @@ import org.apache.cloudstack.api.ApiErrorCode;
|
|||
import org.apache.cloudstack.api.BaseCmd;
|
||||
import org.apache.cloudstack.api.Parameter;
|
||||
import org.apache.cloudstack.api.ServerApiException;
|
||||
import org.apache.cloudstack.api.response.ConfigurationResponse;
|
||||
import org.apache.cloudstack.api.response.*;
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import com.cloud.configuration.Configuration;
|
||||
|
|
@ -43,6 +43,18 @@ public class UpdateCfgCmd extends BaseCmd {
|
|||
@Parameter(name=ApiConstants.VALUE, type=CommandType.STRING, description="the value of the configuration", length=4095)
|
||||
private String value;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_ID, type=CommandType.UUID, entityType=ZoneResponse.class, description="the ID of the Zone to update the parameter value for corresponding zone")
|
||||
private Long zone_id;
|
||||
|
||||
@Parameter(name=ApiConstants.CLUSTER_ID, type=CommandType.UUID, entityType=ClusterResponse.class, description="the ID of the Cluster to update the parameter value for corresponding cluster")
|
||||
private Long cluster_id;
|
||||
|
||||
@Parameter(name=ApiConstants.STORAGE_ID, type=CommandType.UUID, entityType=StoragePoolResponse.class, description="the ID of the Storage pool to update the parameter value for corresponding storage pool")
|
||||
private Long storagepool_id;
|
||||
|
||||
@Parameter(name=ApiConstants.ACCOUNT_ID, type=CommandType.UUID, entityType=AccountResponse.class, description="the ID of the Account to update the parameter value for corresponding account")
|
||||
private Long account_id;
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////////// Accessors ///////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
|
@ -55,6 +67,22 @@ public class UpdateCfgCmd extends BaseCmd {
|
|||
return value;
|
||||
}
|
||||
|
||||
public Long getZoneId() {
|
||||
return zone_id;
|
||||
}
|
||||
|
||||
public Long getClusterId() {
|
||||
return cluster_id;
|
||||
}
|
||||
|
||||
public Long getStoragepoolId() {
|
||||
return storagepool_id;
|
||||
}
|
||||
|
||||
public Long getAccountId() {
|
||||
return account_id;
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////// API Implementation///////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
|
@ -75,6 +103,19 @@ public class UpdateCfgCmd extends BaseCmd {
|
|||
if (cfg != null) {
|
||||
ConfigurationResponse response = _responseGenerator.createConfigurationResponse(cfg);
|
||||
response.setResponseName(getCommandName());
|
||||
if(getZoneId() != null) {
|
||||
response.setScope("zone");
|
||||
}
|
||||
if(getClusterId() != null) {
|
||||
response.setScope("cluster");
|
||||
}
|
||||
if(getStoragepoolId() != null) {
|
||||
response.setScope("storagepool");
|
||||
}
|
||||
if(getAccountId() != null) {
|
||||
response.setScope("account");
|
||||
}
|
||||
response.setValue(value);
|
||||
this.setResponseObject(response);
|
||||
} else {
|
||||
throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to update config");
|
||||
|
|
|
|||
|
|
@ -0,0 +1,107 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package org.apache.cloudstack.api.command.admin.host;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.cloudstack.api.APICommand;
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import org.apache.cloudstack.api.ApiConstants;
|
||||
import org.apache.cloudstack.api.BaseListCmd;
|
||||
import org.apache.cloudstack.api.Parameter;
|
||||
import org.apache.cloudstack.api.response.HostForMigrationResponse;
|
||||
import org.apache.cloudstack.api.response.ListResponse;
|
||||
import org.apache.cloudstack.api.response.UserVmResponse;
|
||||
import com.cloud.host.Host;
|
||||
import com.cloud.utils.Pair;
|
||||
import com.cloud.utils.Ternary;
|
||||
|
||||
@APICommand(name = "findHostsForMigration", description="Find hosts suitable for migrating a virtual machine.",
|
||||
responseObject=HostForMigrationResponse.class)
|
||||
public class FindHostsForMigrationCmd extends BaseListCmd {
|
||||
public static final Logger s_logger = Logger.getLogger(FindHostsForMigrationCmd.class.getName());
|
||||
|
||||
private static final String s_name = "findhostsformigrationresponse";
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
//////////////// API parameters /////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
||||
@Parameter(name=ApiConstants.VIRTUAL_MACHINE_ID, type=CommandType.UUID, entityType = UserVmResponse.class,
|
||||
required=false, description="find hosts to which this VM can be migrated and flag the hosts with enough " +
|
||||
"CPU/RAM to host the VM")
|
||||
private Long virtualMachineId;
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////////// Accessors ///////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
||||
public Long getVirtualMachineId() {
|
||||
return virtualMachineId;
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////// API Implementation///////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
||||
@Override
|
||||
public String getCommandName() {
|
||||
return s_name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute() {
|
||||
ListResponse<HostForMigrationResponse> response = null;
|
||||
Pair<List<? extends Host>,Integer> result;
|
||||
List<? extends Host> hostsWithCapacity = new ArrayList<Host>();
|
||||
Map<Host, Boolean> hostsRequiringStorageMotion;
|
||||
|
||||
Ternary<Pair<List<? extends Host>,Integer>, List<? extends Host>, Map<Host, Boolean>> hostsForMigration =
|
||||
_mgr.listHostsForMigrationOfVM(getVirtualMachineId(), this.getStartIndex(), this.getPageSizeVal());
|
||||
result = hostsForMigration.first();
|
||||
hostsWithCapacity = hostsForMigration.second();
|
||||
hostsRequiringStorageMotion = hostsForMigration.third();
|
||||
|
||||
response = new ListResponse<HostForMigrationResponse>();
|
||||
List<HostForMigrationResponse> hostResponses = new ArrayList<HostForMigrationResponse>();
|
||||
for (Host host : result.first()) {
|
||||
HostForMigrationResponse hostResponse = _responseGenerator.createHostForMigrationResponse(host);
|
||||
Boolean suitableForMigration = false;
|
||||
if (hostsWithCapacity.contains(host)) {
|
||||
suitableForMigration = true;
|
||||
}
|
||||
hostResponse.setSuitableForMigration(suitableForMigration);
|
||||
|
||||
Boolean requiresStorageMotion = hostsRequiringStorageMotion.get(host);
|
||||
if (requiresStorageMotion != null && requiresStorageMotion) {
|
||||
hostResponse.setRequiresStorageMotion(true);
|
||||
} else {
|
||||
hostResponse.setRequiresStorageMotion(false);
|
||||
}
|
||||
|
||||
hostResponse.setObjectName("host");
|
||||
hostResponses.add(hostResponse);
|
||||
}
|
||||
|
||||
response.setResponses(hostResponses, result.second());
|
||||
response.setResponseName(getCommandName());
|
||||
this.setResponseObject(response);
|
||||
}
|
||||
}
|
||||
|
|
@ -19,6 +19,7 @@ package org.apache.cloudstack.api.command.admin.host;
|
|||
import java.util.ArrayList;
|
||||
import java.util.EnumSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.cloudstack.api.APICommand;
|
||||
import org.apache.cloudstack.api.ApiConstants;
|
||||
|
|
@ -37,6 +38,7 @@ import com.cloud.async.AsyncJob;
|
|||
import com.cloud.exception.InvalidParameterValueException;
|
||||
import com.cloud.host.Host;
|
||||
import com.cloud.utils.Pair;
|
||||
import com.cloud.utils.Ternary;
|
||||
|
||||
@APICommand(name = "listHosts", description="Lists hosts.", responseObject=HostResponse.class)
|
||||
public class ListHostsCmd extends BaseListCmd {
|
||||
|
|
@ -73,6 +75,9 @@ public class ListHostsCmd extends BaseListCmd {
|
|||
description="the Zone ID for the host")
|
||||
private Long zoneId;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_TYPE, type=CommandType.STRING, description="the network type of the zone that the virtual machine belongs to")
|
||||
private String zoneType;
|
||||
|
||||
@Parameter(name=ApiConstants.VIRTUAL_MACHINE_ID, type=CommandType.UUID, entityType = UserVmResponse.class,
|
||||
required=false, description="lists hosts in the same cluster as this VM and flag hosts with enough CPU/RAm to host this VM")
|
||||
private Long virtualMachineId;
|
||||
|
|
@ -122,6 +127,10 @@ public class ListHostsCmd extends BaseListCmd {
|
|||
return zoneId;
|
||||
}
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
public Long getVirtualMachineId() {
|
||||
return virtualMachineId;
|
||||
}
|
||||
|
|
@ -170,8 +179,8 @@ public class ListHostsCmd extends BaseListCmd {
|
|||
} else {
|
||||
Pair<List<? extends Host>,Integer> result;
|
||||
List<? extends Host> hostsWithCapacity = new ArrayList<Host>();
|
||||
|
||||
Pair<Pair<List<? extends Host>,Integer>, List<? extends Host>> hostsForMigration = _mgr.listHostsForMigrationOfVM(getVirtualMachineId(), this.getStartIndex(), this.getPageSizeVal());
|
||||
Ternary<Pair<List<? extends Host>,Integer>, List<? extends Host>, Map<Host, Boolean>> hostsForMigration =
|
||||
_mgr.listHostsForMigrationOfVM(getVirtualMachineId(), this.getStartIndex(), this.getPageSizeVal());
|
||||
result = hostsForMigration.first();
|
||||
hostsWithCapacity = hostsForMigration.second();
|
||||
|
||||
|
|
@ -192,6 +201,5 @@ public class ListHostsCmd extends BaseListCmd {
|
|||
}
|
||||
response.setResponseName(getCommandName());
|
||||
this.setResponseObject(response);
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -54,6 +54,8 @@ public class UpdatePhysicalNetworkCmd extends BaseAsyncCmd {
|
|||
|
||||
@Parameter(name=ApiConstants.VLAN, type=CommandType.STRING, description="the VLAN for the physical network")
|
||||
private String vlan;
|
||||
@Parameter(name=ApiConstants.REMOVE_VLAN, type = CommandType.STRING, description ="The vlan range we want to remove")
|
||||
private String removevlan;
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////////// Accessors ///////////////////////
|
||||
|
|
@ -79,6 +81,10 @@ public class UpdatePhysicalNetworkCmd extends BaseAsyncCmd {
|
|||
return vlan;
|
||||
}
|
||||
|
||||
public String getRemoveVlan(){
|
||||
return removevlan;
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////// API Implementation///////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
|
@ -95,7 +101,7 @@ public class UpdatePhysicalNetworkCmd extends BaseAsyncCmd {
|
|||
|
||||
@Override
|
||||
public void execute(){
|
||||
PhysicalNetwork result = _networkService.updatePhysicalNetwork(getId(),getNetworkSpeed(), getTags(), getVlan(), getState());
|
||||
PhysicalNetwork result = _networkService.updatePhysicalNetwork(getId(),getNetworkSpeed(), getTags(), getVlan(), getState(), getRemoveVlan());
|
||||
PhysicalNetworkResponse response = _responseGenerator.createPhysicalNetworkResponse(result);
|
||||
response.setResponseName(getCommandName());
|
||||
this.setResponseObject(response);
|
||||
|
|
|
|||
|
|
@ -84,9 +84,6 @@ public class CreateServiceOfferingCmd extends BaseCmd {
|
|||
@Parameter(name=ApiConstants.NETWORKRATE, type=CommandType.INTEGER, description="data transfer rate in megabits per second allowed. Supported only for non-System offering and system offerings having \"domainrouter\" systemvmtype")
|
||||
private Integer networkRate;
|
||||
|
||||
@Parameter(name = ApiConstants.DEPLOYMENT_PLANNER, type = CommandType.STRING, description = "The deployment planner heuristics used to deploy a VM of this offering, default \"FirstFitPlanner\".")
|
||||
private String deploymentPlanner;
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////////// Accessors ///////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
|
@ -151,9 +148,6 @@ public class CreateServiceOfferingCmd extends BaseCmd {
|
|||
return networkRate;
|
||||
}
|
||||
|
||||
public String getDeploymentPlanner() {
|
||||
return deploymentPlanner;
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////// API Implementation///////////////////
|
||||
|
|
|
|||
|
|
@ -55,6 +55,9 @@ public class ListPodsByCmd extends BaseListCmd {
|
|||
@Parameter(name=ApiConstants.ALLOCATION_STATE, type=CommandType.STRING, description="list pods by allocation state")
|
||||
private String allocationState;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_TYPE, type=CommandType.STRING, description="the network type of the zone that the virtual machine belongs to")
|
||||
private String zoneType;
|
||||
|
||||
@Parameter(name=ApiConstants.SHOW_CAPACITIES, type=CommandType.BOOLEAN, description="flag to display the capacity of the pods")
|
||||
private Boolean showCapacities;
|
||||
|
||||
|
|
@ -78,6 +81,10 @@ public class ListPodsByCmd extends BaseListCmd {
|
|||
return allocationState;
|
||||
}
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
public Boolean getShowCapacities() {
|
||||
return showCapacities;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -64,6 +64,9 @@ public class ListRoutersCmd extends BaseListProjectAndAccountResourcesCmd {
|
|||
description="the Zone ID of the router")
|
||||
private Long zoneId;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_TYPE, type=CommandType.STRING, description="the network type of the zone that the virtual machine belongs to")
|
||||
private String zoneType;
|
||||
|
||||
@Parameter(name=ApiConstants.NETWORK_ID, type=CommandType.UUID, entityType=NetworkResponse.class,
|
||||
description="list by network id")
|
||||
private Long networkId;
|
||||
|
|
@ -103,6 +106,10 @@ public class ListRoutersCmd extends BaseListProjectAndAccountResourcesCmd {
|
|||
return zoneId;
|
||||
}
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
public Long getNetworkId() {
|
||||
return networkId;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,98 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package org.apache.cloudstack.api.command.admin.storage;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.cloudstack.api.APICommand;
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import org.apache.cloudstack.api.ApiConstants;
|
||||
import org.apache.cloudstack.api.BaseListCmd;
|
||||
import org.apache.cloudstack.api.Parameter;
|
||||
import org.apache.cloudstack.api.response.ListResponse;
|
||||
import org.apache.cloudstack.api.response.StoragePoolForMigrationResponse;
|
||||
import org.apache.cloudstack.api.response.VolumeResponse;
|
||||
import com.cloud.async.AsyncJob;
|
||||
import com.cloud.storage.StoragePool;
|
||||
import com.cloud.utils.Pair;
|
||||
|
||||
@APICommand(name = "findStoragePoolsForMigration", description="Lists storage pools available for migration of a volume.",
|
||||
responseObject=StoragePoolForMigrationResponse.class)
|
||||
public class FindStoragePoolsForMigrationCmd extends BaseListCmd {
|
||||
public static final Logger s_logger = Logger.getLogger(FindStoragePoolsForMigrationCmd.class.getName());
|
||||
|
||||
private static final String s_name = "findstoragepoolsformigrationresponse";
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
//////////////// API parameters /////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
||||
@Parameter(name=ApiConstants.ID, type=CommandType.UUID, entityType = VolumeResponse.class, required=true,
|
||||
description="the ID of the volume")
|
||||
private Long id;
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////////// Accessors ///////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
||||
public Long getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////// API Implementation///////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
||||
@Override
|
||||
public String getCommandName() {
|
||||
return s_name;
|
||||
}
|
||||
|
||||
public AsyncJob.Type getInstanceType() {
|
||||
return AsyncJob.Type.StoragePool;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute() {
|
||||
Pair<List<? extends StoragePool>, List<? extends StoragePool>> pools =
|
||||
_mgr.listStoragePoolsForMigrationOfVolume(getId());
|
||||
ListResponse<StoragePoolForMigrationResponse> response = new ListResponse<StoragePoolForMigrationResponse>();
|
||||
List<StoragePoolForMigrationResponse> poolResponses = new ArrayList<StoragePoolForMigrationResponse>();
|
||||
|
||||
List<? extends StoragePool> allPools = pools.first();
|
||||
List<? extends StoragePool> suitablePoolList = pools.second();
|
||||
for (StoragePool pool : allPools) {
|
||||
StoragePoolForMigrationResponse poolResponse = _responseGenerator.createStoragePoolForMigrationResponse(pool);
|
||||
Boolean suitableForMigration = false;
|
||||
for (StoragePool suitablePool : suitablePoolList) {
|
||||
if (suitablePool.getId() == pool.getId()) {
|
||||
suitableForMigration = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
poolResponse.setSuitableForMigration(suitableForMigration);
|
||||
poolResponse.setObjectName("storagepool");
|
||||
poolResponses.add(poolResponse);
|
||||
}
|
||||
|
||||
response.setResponses(poolResponses);
|
||||
response.setResponseName(getCommandName());
|
||||
this.setResponseObject(response);
|
||||
}
|
||||
}
|
||||
|
|
@ -60,6 +60,9 @@ public class ListStoragePoolsCmd extends BaseListCmd {
|
|||
description="the Zone ID for the storage pool")
|
||||
private Long zoneId;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_TYPE, type=CommandType.STRING, description="the network type of the zone that the virtual machine belongs to")
|
||||
private String zoneType;
|
||||
|
||||
@Parameter(name=ApiConstants.ID, type=CommandType.UUID, entityType = StoragePoolResponse.class,
|
||||
description="the ID of the storage pool")
|
||||
private Long id;
|
||||
|
|
@ -92,6 +95,10 @@ public class ListStoragePoolsCmd extends BaseListCmd {
|
|||
return zoneId;
|
||||
}
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
public Long getId() {
|
||||
return id;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -74,6 +74,9 @@ public class ListSystemVMsCmd extends BaseListCmd {
|
|||
description="the storage ID where vm's volumes belong to", since="3.0.1")
|
||||
private Long storageId;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_TYPE, type=CommandType.STRING, description="the network type of the zone that the virtual machine belongs to")
|
||||
private String zoneType;
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////////// Accessors ///////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
|
@ -110,6 +113,10 @@ public class ListSystemVMsCmd extends BaseListCmd {
|
|||
return storageId;
|
||||
}
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////// API Implementation///////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ public class MigrateVMCmd extends BaseAsyncCmd {
|
|||
required=true, description="the ID of the virtual machine")
|
||||
private Long virtualMachineId;
|
||||
|
||||
@Parameter(name=ApiConstants.STORAGE_ID, type=CommandType.LONG, entityType=StoragePoolResponse.class,
|
||||
@Parameter(name=ApiConstants.STORAGE_ID, type=CommandType.UUID, entityType=StoragePoolResponse.class,
|
||||
required=false, description="Destination storage pool ID to migrate VM volumes to. Required for migrating the root disk volume")
|
||||
private Long storageId;
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,160 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package org.apache.cloudstack.api.command.admin.vm;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.cloudstack.api.*;
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import org.apache.cloudstack.api.APICommand;
|
||||
|
||||
import org.apache.cloudstack.api.BaseCmd.CommandType;
|
||||
import org.apache.cloudstack.api.response.HostResponse;
|
||||
import org.apache.cloudstack.api.response.StoragePoolResponse;
|
||||
import org.apache.cloudstack.api.response.UserVmResponse;
|
||||
import com.cloud.event.EventTypes;
|
||||
import com.cloud.exception.ConcurrentOperationException;
|
||||
import com.cloud.exception.InvalidParameterValueException;
|
||||
import com.cloud.exception.ManagementServerException;
|
||||
import com.cloud.exception.ResourceUnavailableException;
|
||||
import com.cloud.exception.VirtualMachineMigrationException;
|
||||
import com.cloud.host.Host;
|
||||
import com.cloud.storage.StoragePool;
|
||||
import com.cloud.user.Account;
|
||||
import com.cloud.user.UserContext;
|
||||
import com.cloud.uservm.UserVm;
|
||||
import com.cloud.vm.VirtualMachine;
|
||||
|
||||
@APICommand(name = "migrateVirtualMachineWithVolume", description="Attempts Migration of a VM with its volumes to a different host", responseObject=UserVmResponse.class)
|
||||
public class MigrateVirtualMachineWithVolumeCmd extends BaseAsyncCmd {
|
||||
public static final Logger s_logger = Logger.getLogger(MigrateVMCmd.class.getName());
|
||||
|
||||
private static final String s_name = "migratevirtualmachinewithvolumeresponse";
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
//////////////// API parameters /////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
||||
@Parameter(name=ApiConstants.HOST_ID, type=CommandType.UUID, entityType=HostResponse.class,
|
||||
required=true, description="Destination Host ID to migrate VM to.")
|
||||
private Long hostId;
|
||||
|
||||
@Parameter(name=ApiConstants.VIRTUAL_MACHINE_ID, type=CommandType.UUID, entityType=UserVmResponse.class,
|
||||
required=true, description="the ID of the virtual machine")
|
||||
private Long virtualMachineId;
|
||||
|
||||
@Parameter(name = ApiConstants.MIGRATE_TO, type = CommandType.MAP, required=false,
|
||||
description = "Map of pool to which each volume should be migrated (volume/pool pair)")
|
||||
private Map migrateVolumeTo;
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////////// Accessors ///////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
||||
public Long getHostId() {
|
||||
return hostId;
|
||||
}
|
||||
|
||||
public Long getVirtualMachineId() {
|
||||
return virtualMachineId;
|
||||
}
|
||||
|
||||
public Map<String, String> getVolumeToPool() {
|
||||
Map<String, String> volumeToPoolMap = new HashMap<String, String>();
|
||||
if (migrateVolumeTo != null && !migrateVolumeTo.isEmpty()) {
|
||||
Collection<?> allValues = migrateVolumeTo.values();
|
||||
Iterator<?> iter = allValues.iterator();
|
||||
while (iter.hasNext()) {
|
||||
HashMap<String, String> volumeToPool = (HashMap<String, String>) iter.next();
|
||||
String volume = volumeToPool.get("volume");
|
||||
String pool = volumeToPool.get("pool");
|
||||
volumeToPoolMap.put(volume, pool);
|
||||
}
|
||||
}
|
||||
return volumeToPoolMap;
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////// API Implementation///////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
||||
@Override
|
||||
public String getCommandName() {
|
||||
return s_name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getEntityOwnerId() {
|
||||
UserVm userVm = _entityMgr.findById(UserVm.class, getVirtualMachineId());
|
||||
if (userVm != null) {
|
||||
return userVm.getAccountId();
|
||||
}
|
||||
|
||||
return Account.ACCOUNT_ID_SYSTEM;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getEventType() {
|
||||
return EventTypes.EVENT_VM_MIGRATE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getEventDescription() {
|
||||
return "Attempting to migrate VM Id: " + getVirtualMachineId() + " to host Id: "+ getHostId();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void execute(){
|
||||
UserVm userVm = _userVmService.getUserVm(getVirtualMachineId());
|
||||
if (userVm == null) {
|
||||
throw new InvalidParameterValueException("Unable to find the VM by id=" + getVirtualMachineId());
|
||||
}
|
||||
|
||||
Host destinationHost = _resourceService.getHost(getHostId());
|
||||
if (destinationHost == null) {
|
||||
throw new InvalidParameterValueException("Unable to find the host to migrate the VM, host id =" + getHostId());
|
||||
}
|
||||
|
||||
try{
|
||||
VirtualMachine migratedVm = _userVmService.migrateVirtualMachineWithVolume(getVirtualMachineId(),
|
||||
destinationHost, getVolumeToPool());
|
||||
if (migratedVm != null) {
|
||||
UserVmResponse response = _responseGenerator.createUserVmResponse("virtualmachine", (UserVm)migratedVm).get(0);
|
||||
response.setResponseName(getCommandName());
|
||||
this.setResponseObject(response);
|
||||
} else {
|
||||
throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to migrate vm");
|
||||
}
|
||||
} catch (ResourceUnavailableException ex) {
|
||||
s_logger.warn("Exception: ", ex);
|
||||
throw new ServerApiException(ApiErrorCode.RESOURCE_UNAVAILABLE_ERROR, ex.getMessage());
|
||||
} catch (ConcurrentOperationException e) {
|
||||
s_logger.warn("Exception: ", e);
|
||||
throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, e.getMessage());
|
||||
} catch (ManagementServerException e) {
|
||||
s_logger.warn("Exception: ", e);
|
||||
throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, e.getMessage());
|
||||
} catch (VirtualMachineMigrationException e) {
|
||||
s_logger.warn("Exception: ", e);
|
||||
throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, e.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -78,6 +78,9 @@ public class ListIsosCmd extends BaseListTaggedResourcesCmd {
|
|||
description="the ID of the zone")
|
||||
private Long zoneId;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_TYPE, type=CommandType.STRING, description="the network type of the zone that the virtual machine belongs to")
|
||||
private String zoneType;
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////////// Accessors ///////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
|
@ -115,6 +118,10 @@ public class ListIsosCmd extends BaseListTaggedResourcesCmd {
|
|||
return zoneId;
|
||||
}
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
public boolean listInReadyState() {
|
||||
Account account = UserContext.current().getCaller();
|
||||
// It is account specific if account is admin type and domainId and accountName are not null
|
||||
|
|
|
|||
|
|
@ -48,6 +48,9 @@ public class ListNetworksCmd extends BaseListTaggedResourcesCmd {
|
|||
description="the Zone ID of the network")
|
||||
private Long zoneId;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_TYPE, type=CommandType.STRING, description="the network type of the zone that the virtual machine belongs to")
|
||||
private String zoneType;
|
||||
|
||||
@Parameter(name=ApiConstants.TYPE, type=CommandType.STRING, description="the type of the network. Supported values are: Isolated and Shared")
|
||||
private String guestIpType;
|
||||
|
||||
|
|
@ -96,6 +99,10 @@ public class ListNetworksCmd extends BaseListTaggedResourcesCmd {
|
|||
return zoneId;
|
||||
}
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
public String getGuestIpType() {
|
||||
return guestIpType;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -58,6 +58,9 @@ public class ListSnapshotsCmd extends BaseListTaggedResourcesCmd {
|
|||
@Parameter(name=ApiConstants.VOLUME_ID, type=CommandType.UUID, entityType = VolumeResponse.class,
|
||||
description="the ID of the disk volume")
|
||||
private Long volumeId;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_TYPE, type=CommandType.STRING, description="the network type of the zone that the virtual machine belongs to")
|
||||
private String zoneType;
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////////// Accessors ///////////////////////
|
||||
|
|
@ -83,6 +86,10 @@ public class ListSnapshotsCmd extends BaseListTaggedResourcesCmd {
|
|||
return volumeId;
|
||||
}
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////// API Implementation///////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ import org.apache.log4j.Logger;
|
|||
import com.cloud.event.EventTypes;
|
||||
import com.cloud.server.ResourceTag;
|
||||
import com.cloud.server.ResourceTag.TaggedResourceType;
|
||||
@APICommand(name = "createTags", description = "Creates resource tag(s)", responseObject = SuccessResponse.class, since = "Burbank")
|
||||
@APICommand(name = "createTags", description = "Creates resource tag(s)", responseObject = SuccessResponse.class, since = "4.0.0")
|
||||
public class CreateTagsCmd extends BaseAsyncCmd{
|
||||
public static final Logger s_logger = Logger.getLogger(CreateTagsCmd.class.getName());
|
||||
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ import org.apache.log4j.Logger;
|
|||
|
||||
import com.cloud.event.EventTypes;
|
||||
import com.cloud.server.ResourceTag.TaggedResourceType;
|
||||
@APICommand(name = "deleteTags", description = "Deleting resource tag(s)", responseObject = SuccessResponse.class, since = "Burbank")
|
||||
@APICommand(name = "deleteTags", description = "Deleting resource tag(s)", responseObject = SuccessResponse.class, since = "4.0.0")
|
||||
public class DeleteTagsCmd extends BaseAsyncCmd{
|
||||
public static final Logger s_logger = Logger.getLogger(DeleteTagsCmd.class.getName());
|
||||
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ import org.apache.cloudstack.api.Parameter;
|
|||
import org.apache.cloudstack.api.response.ListResponse;
|
||||
import org.apache.cloudstack.api.response.ResourceTagResponse;
|
||||
|
||||
@APICommand(name = "listTags", description = "List resource tag(s)", responseObject = ResourceTagResponse.class, since = "Burbank")
|
||||
@APICommand(name = "listTags", description = "List resource tag(s)", responseObject = ResourceTagResponse.class, since = "4.0.0")
|
||||
public class ListTagsCmd extends BaseListProjectAndAccountResourcesCmd{
|
||||
private static final String s_name = "listtagsresponse";
|
||||
|
||||
|
|
|
|||
|
|
@ -68,6 +68,10 @@ public class ListTemplatesCmd extends BaseListTaggedResourcesCmd {
|
|||
@Parameter(name=ApiConstants.ZONE_ID, type=CommandType.UUID, entityType = ZoneResponse.class,
|
||||
description="list templates by zoneId")
|
||||
private Long zoneId;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_TYPE, type=CommandType.STRING, description="the network type of the zone that the virtual machine belongs to")
|
||||
private String zoneType;
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////////// Accessors ///////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
|
@ -92,6 +96,10 @@ public class ListTemplatesCmd extends BaseListTaggedResourcesCmd {
|
|||
return zoneId;
|
||||
}
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
public boolean listInReadyState() {
|
||||
|
||||
Account account = UserContext.current().getCaller();
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@
|
|||
// under the License.
|
||||
package org.apache.cloudstack.api.command.user.vm;
|
||||
|
||||
import com.cloud.vm.NicSecondaryIp;
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import org.apache.cloudstack.api.APICommand;
|
||||
|
|
@ -146,6 +147,7 @@ public class AddIpToVmNicCmd extends BaseAsyncCmd {
|
|||
|
||||
UserContext.current().setEventDetails("Nic Id: " + getNicId() );
|
||||
String ip;
|
||||
NicSecondaryIp result;
|
||||
String secondaryIp = null;
|
||||
if ((ip = getIpaddress()) != null) {
|
||||
if (!NetUtils.isValidIp(ip)) {
|
||||
|
|
@ -154,12 +156,13 @@ public class AddIpToVmNicCmd extends BaseAsyncCmd {
|
|||
}
|
||||
|
||||
try {
|
||||
secondaryIp = _networkService.allocateSecondaryGuestIP(_accountService.getAccount(getEntityOwnerId()), getZoneId(), getNicId(), getNetworkId(), getIpaddress());
|
||||
result = _networkService.allocateSecondaryGuestIP(_accountService.getAccount(getEntityOwnerId()), getZoneId(), getNicId(), getNetworkId(), getIpaddress());
|
||||
} catch (InsufficientAddressCapacityException e) {
|
||||
throw new InvalidParameterValueException("Allocating guest ip for nic failed");
|
||||
}
|
||||
|
||||
if (secondaryIp != null) {
|
||||
if (result != null) {
|
||||
secondaryIp = result.getIp4Address();
|
||||
if (getNetworkType() == NetworkType.Basic) {
|
||||
// add security group rules for the secondary ip addresses
|
||||
boolean success = false;
|
||||
|
|
@ -171,7 +174,7 @@ public class AddIpToVmNicCmd extends BaseAsyncCmd {
|
|||
|
||||
s_logger.info("Associated ip address to NIC : " + secondaryIp);
|
||||
NicSecondaryIpResponse response = new NicSecondaryIpResponse();
|
||||
response = _responseGenerator.createSecondaryIPToNicResponse(secondaryIp, getNicId(), getNetworkId());
|
||||
response = _responseGenerator.createSecondaryIPToNicResponse(result);
|
||||
response.setResponseName(getCommandName());
|
||||
this.setResponseObject(response);
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -128,7 +128,7 @@ public class DeployVMCmd extends BaseAsyncCreateCmd {
|
|||
@Parameter(name=ApiConstants.HYPERVISOR, type=CommandType.STRING, description="the hypervisor on which to deploy the virtual machine")
|
||||
private String hypervisor;
|
||||
|
||||
@Parameter(name=ApiConstants.USER_DATA, type=CommandType.STRING, description="an optional binary data that can be sent to the virtual machine upon a successful deployment. This binary data must be base64 encoded before adding it to the request. Currently only HTTP GET is supported. Using HTTP GET (via querystring), you can send up to 2KB of data after base64 encoding.", length=2048)
|
||||
@Parameter(name=ApiConstants.USER_DATA, type=CommandType.STRING, description="an optional binary data that can be sent to the virtual machine upon a successful deployment. This binary data must be base64 encoded before adding it to the request. Using HTTP GET (via querystring), you can send up to 2KB of data after base64 encoding. Using HTTP POST(via POST body), you can send up to 32K of data after base64 encoding.", length=32768)
|
||||
private String userData;
|
||||
|
||||
@Parameter(name=ApiConstants.SSH_KEYPAIR, type=CommandType.STRING, description="name of the ssh key pair used to login to the virtual machine")
|
||||
|
|
@ -230,7 +230,7 @@ public class DeployVMCmd extends BaseAsyncCreateCmd {
|
|||
for (String groupName : securityGroupNameList) {
|
||||
Long groupId = _responseGenerator.getSecurityGroupId(groupName, getEntityOwnerId());
|
||||
if (groupId == null) {
|
||||
throw new InvalidParameterValueException("Unable to find group by name " + groupName + " for account " + getEntityOwnerId());
|
||||
throw new InvalidParameterValueException("Unable to find group by name " + groupName);
|
||||
} else {
|
||||
securityGroupIds.add(groupId);
|
||||
}
|
||||
|
|
@ -312,8 +312,8 @@ public class DeployVMCmd extends BaseAsyncCreateCmd {
|
|||
throw new InvalidParameterValueException("Unable to translate and find entity with networkId: " + ips.get("networkid"));
|
||||
}
|
||||
}
|
||||
String requestedIp = (String) ips.get("ip");
|
||||
String requestedIpv6 = (String) ips.get("ipv6");
|
||||
String requestedIp = ips.get("ip");
|
||||
String requestedIpv6 = ips.get("ipv6");
|
||||
if (requestedIpv6 != null) {
|
||||
requestedIpv6 = requestedIpv6.toLowerCase();
|
||||
}
|
||||
|
|
@ -344,8 +344,7 @@ public class DeployVMCmd extends BaseAsyncCreateCmd {
|
|||
for (String groupName : affinityGroupNameList) {
|
||||
Long groupId = _responseGenerator.getAffinityGroupId(groupName, getEntityOwnerId());
|
||||
if (groupId == null) {
|
||||
throw new InvalidParameterValueException("Unable to find group by name " + groupName
|
||||
+ " for account " + getEntityOwnerId());
|
||||
throw new InvalidParameterValueException("Unable to find affinity group by name " + groupName);
|
||||
} else {
|
||||
affinityGroupIds.add(groupId);
|
||||
}
|
||||
|
|
@ -482,18 +481,18 @@ public class DeployVMCmd extends BaseAsyncCreateCmd {
|
|||
throw new InvalidParameterValueException("Can't specify network Ids in Basic zone");
|
||||
} else {
|
||||
vm = _userVmService.createBasicSecurityGroupVirtualMachine(zone, serviceOffering, template, getSecurityGroupIdList(), owner, name,
|
||||
displayName, diskOfferingId, size, group, getHypervisor(), userData, sshKeyPairName, getIpToNetworkMap(), addrs, keyboard, getAffinityGroupIdList());
|
||||
displayName, diskOfferingId, size, group, getHypervisor(), this.getHttpMethod(), userData, sshKeyPairName, getIpToNetworkMap(), addrs, keyboard, getAffinityGroupIdList());
|
||||
}
|
||||
} else {
|
||||
if (zone.isSecurityGroupEnabled()) {
|
||||
vm = _userVmService.createAdvancedSecurityGroupVirtualMachine(zone, serviceOffering, template, getNetworkIds(), getSecurityGroupIdList(),
|
||||
owner, name, displayName, diskOfferingId, size, group, getHypervisor(), userData, sshKeyPairName, getIpToNetworkMap(), addrs, keyboard, getAffinityGroupIdList());
|
||||
owner, name, displayName, diskOfferingId, size, group, getHypervisor(), this.getHttpMethod(), userData, sshKeyPairName, getIpToNetworkMap(), addrs, keyboard, getAffinityGroupIdList());
|
||||
} else {
|
||||
if (getSecurityGroupIdList() != null && !getSecurityGroupIdList().isEmpty()) {
|
||||
throw new InvalidParameterValueException("Can't create vm with security groups; security group feature is not enabled per zone");
|
||||
}
|
||||
vm = _userVmService.createAdvancedVirtualMachine(zone, serviceOffering, template, getNetworkIds(), owner, name, displayName,
|
||||
diskOfferingId, size, group, getHypervisor(), userData, sshKeyPairName, getIpToNetworkMap(), addrs, keyboard, getAffinityGroupIdList());
|
||||
diskOfferingId, size, group, getHypervisor(), this.getHttpMethod(), userData, sshKeyPairName, getIpToNetworkMap(), addrs, keyboard, getAffinityGroupIdList());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ import java.util.ArrayList;
|
|||
import java.util.EnumSet;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.cloudstack.affinity.AffinityGroupResponse;
|
||||
import org.apache.cloudstack.api.APICommand;
|
||||
import org.apache.cloudstack.api.ApiConstants;
|
||||
import org.apache.cloudstack.api.ApiConstants.VMDetails;
|
||||
|
|
@ -74,10 +75,12 @@ public class ListVMsCmd extends BaseListTaggedResourcesCmd {
|
|||
@Parameter(name=ApiConstants.STATE, type=CommandType.STRING, description="state of the virtual machine")
|
||||
private String state;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_ID, type=CommandType.UUID, entityType=ZoneResponse.class,
|
||||
description="the availability zone ID")
|
||||
@Parameter(name=ApiConstants.ZONE_ID, type=CommandType.UUID, entityType=ZoneResponse.class, description="the availability zone ID")
|
||||
private Long zoneId;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_TYPE, type=CommandType.STRING, description="the network type of the zone that the virtual machine belongs to")
|
||||
private String zoneType;
|
||||
|
||||
@Parameter(name=ApiConstants.FOR_VIRTUAL_NETWORK, type=CommandType.BOOLEAN,
|
||||
description="list by network type; true if need to list vms using Virtual Network, false otherwise")
|
||||
private Boolean forVirtualNetwork;
|
||||
|
|
@ -95,7 +98,7 @@ public class ListVMsCmd extends BaseListTaggedResourcesCmd {
|
|||
|
||||
@Parameter(name=ApiConstants.DETAILS, type=CommandType.LIST, collectionType=CommandType.STRING,
|
||||
description="comma separated list of host details requested, " +
|
||||
"value can be a list of [all, group, nics, stats, secgrp, tmpl, servoff, iso, volume, min]." +
|
||||
"value can be a list of [all, group, nics, stats, secgrp, tmpl, servoff, iso, volume, min, affgrp]." +
|
||||
" If no parameter is passed in, the details will be defaulted to all" )
|
||||
private List<String> viewDetails;
|
||||
|
||||
|
|
@ -110,6 +113,10 @@ public class ListVMsCmd extends BaseListTaggedResourcesCmd {
|
|||
@Parameter(name=ApiConstants.VPC_ID, type=CommandType.UUID, entityType=VpcResponse.class,
|
||||
description="list vms by vpc")
|
||||
private Long vpcId;
|
||||
|
||||
@Parameter(name = ApiConstants.AFFINITY_GROUP_ID, type = CommandType.UUID, entityType = AffinityGroupResponse.class, description = "list vms by affinity group")
|
||||
private Long affinityGroupId;
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////////// Accessors ///////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
|
@ -142,6 +149,10 @@ public class ListVMsCmd extends BaseListTaggedResourcesCmd {
|
|||
return zoneId;
|
||||
}
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
public Boolean getForVirtualNetwork() {
|
||||
return forVirtualNetwork;
|
||||
}
|
||||
|
|
@ -174,6 +185,10 @@ public class ListVMsCmd extends BaseListTaggedResourcesCmd {
|
|||
return vpcId;
|
||||
}
|
||||
|
||||
public Long getAffinityGroupId() {
|
||||
return affinityGroupId;
|
||||
}
|
||||
|
||||
public EnumSet<VMDetails> getDetails() throws InvalidParameterValueException {
|
||||
EnumSet<VMDetails> dv;
|
||||
if (viewDetails==null || viewDetails.size() <=0){
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@ public class UpdateVMCmd extends BaseCmd{
|
|||
description="the ID of the OS type that best represents this VM.")
|
||||
private Long osTypeId;
|
||||
|
||||
@Parameter(name=ApiConstants.USER_DATA, type=CommandType.STRING, description="an optional binary data that can be sent to the virtual machine upon a successful deployment. This binary data must be base64 encoded before adding it to the request. Currently only HTTP GET is supported. Using HTTP GET (via querystring), you can send up to 2KB of data after base64 encoding.", length=2048)
|
||||
@Parameter(name=ApiConstants.USER_DATA, type=CommandType.STRING, description="an optional binary data that can be sent to the virtual machine upon a successful deployment. This binary data must be base64 encoded before adding it to the request. Using HTTP GET (via querystring), you can send up to 2KB of data after base64 encoding. Using HTTP POST(via POST body), you can send up to 32K of data after base64 encoding.", length=32768)
|
||||
private String userData;
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -67,6 +67,9 @@ public class ListVolumesCmd extends BaseListTaggedResourcesCmd {
|
|||
description="the ID of the availability zone")
|
||||
private Long zoneId;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_TYPE, type=CommandType.STRING, description="the network type of the zone that the virtual machine belongs to")
|
||||
private String zoneType;
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////////// Accessors ///////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
|
@ -100,6 +103,10 @@ public class ListVolumesCmd extends BaseListTaggedResourcesCmd {
|
|||
return zoneId;
|
||||
}
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////// API Implementation///////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
|
|
|||
|
|
@ -47,6 +47,10 @@ public class MigrateVolumeCmd extends BaseAsyncCmd {
|
|||
required=true, description="destination storage pool ID to migrate the volume to")
|
||||
private Long storageId;
|
||||
|
||||
@Parameter(name=ApiConstants.LIVE_MIGRATE, type=CommandType.BOOLEAN, required=false,
|
||||
description="if the volume should be live migrated when it is attached to a running vm")
|
||||
private Boolean liveMigrate;
|
||||
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////////// Accessors ///////////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
|
@ -58,6 +62,10 @@ public class MigrateVolumeCmd extends BaseAsyncCmd {
|
|||
public Long getStoragePoolId() {
|
||||
return storageId;
|
||||
}
|
||||
|
||||
public boolean isLiveMigrate() {
|
||||
return (liveMigrate != null) ? liveMigrate : false;
|
||||
}
|
||||
/////////////////////////////////////////////////////
|
||||
/////////////// API Implementation///////////////////
|
||||
/////////////////////////////////////////////////////
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@ import org.apache.cloudstack.api.APICommand;
|
|||
import org.apache.cloudstack.api.ApiConstants;
|
||||
import org.apache.cloudstack.api.BaseListCmd;
|
||||
import org.apache.cloudstack.api.Parameter;
|
||||
import org.apache.cloudstack.api.BaseCmd.CommandType;
|
||||
import org.apache.cloudstack.api.response.DomainResponse;
|
||||
import org.apache.cloudstack.api.response.ListResponse;
|
||||
import org.apache.cloudstack.api.response.ServiceOfferingResponse;
|
||||
|
|
@ -56,6 +57,9 @@ public class ListZonesByCmd extends BaseListCmd {
|
|||
@Parameter(name=ApiConstants.NAME, type=CommandType.STRING, description="the name of the zone")
|
||||
private String name;
|
||||
|
||||
@Parameter(name=ApiConstants.ZONE_TYPE, type=CommandType.STRING, description="the network type of the zone that the virtual machine belongs to")
|
||||
private String zoneType;
|
||||
|
||||
@Parameter(name=ApiConstants.SHOW_CAPACITIES, type=CommandType.BOOLEAN, description="flag to display the capacity of the zones")
|
||||
private Boolean showCapacities;
|
||||
|
||||
|
|
@ -79,6 +83,10 @@ public class ListZonesByCmd extends BaseListCmd {
|
|||
return name;
|
||||
}
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
public Boolean getShowCapacities() {
|
||||
return showCapacities;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -183,6 +183,9 @@ public class AccountResponse extends BaseResponse {
|
|||
|
||||
@SerializedName(ApiConstants.ACCOUNT_DETAILS) @Param(description="details for the account")
|
||||
private Map<String, String> details;
|
||||
|
||||
@SerializedName(ApiConstants.IS_DEFAULT) @Param(description="true if account is default, false otherwise", since="4.2.0")
|
||||
private Boolean isDefault;
|
||||
|
||||
|
||||
@Override
|
||||
|
|
@ -381,4 +384,8 @@ public class AccountResponse extends BaseResponse {
|
|||
public void setDefaultZone(String defaultZoneId) {
|
||||
this.defaultZoneId = defaultZoneId;
|
||||
}
|
||||
|
||||
public void setIsDefault(Boolean isDefault) {
|
||||
this.isDefault = isDefault;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -46,7 +46,10 @@ public class ClusterResponse extends BaseResponse {
|
|||
|
||||
@SerializedName(ApiConstants.ZONE_NAME) @Param(description="the Zone name of the cluster")
|
||||
private String zoneName;
|
||||
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_TYPE) @Param(description = "network type of the availability zone")
|
||||
private String zoneType;
|
||||
|
||||
@SerializedName("hypervisortype") @Param(description="the hypervisor type of the cluster")
|
||||
private String hypervisorType;
|
||||
|
||||
|
|
@ -116,6 +119,10 @@ public class ClusterResponse extends BaseResponse {
|
|||
this.zoneName = zoneName;
|
||||
}
|
||||
|
||||
public void setZoneType(String zoneType) {
|
||||
this.zoneType = zoneType;
|
||||
}
|
||||
|
||||
public String getClusterType() {
|
||||
return clusterType;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,9 +32,16 @@ public class ConfigurationResponse extends BaseResponse {
|
|||
@SerializedName(ApiConstants.VALUE) @Param(description="the value of the configuration")
|
||||
private String value;
|
||||
|
||||
@SerializedName(ApiConstants.SCOPE) @Param(description="scope(zone/cluster/pool/account) of the parameter that needs to be updated")
|
||||
private String scope;
|
||||
|
||||
@SerializedName(ApiConstants.ID) @Param(description="the value of the configuration")
|
||||
private Long id;
|
||||
|
||||
@SerializedName(ApiConstants.DESCRIPTION) @Param(description="the description of the configuration")
|
||||
private String description;
|
||||
|
||||
|
||||
public String getCategory() {
|
||||
return category;
|
||||
}
|
||||
|
|
@ -66,4 +73,12 @@ public class ConfigurationResponse extends BaseResponse {
|
|||
public void setDescription(String description) {
|
||||
this.description = description;
|
||||
}
|
||||
|
||||
public String getScope() {
|
||||
return scope;
|
||||
}
|
||||
|
||||
public void setScope(String scope) {
|
||||
this.scope = scope;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -42,6 +42,9 @@ public class DomainRouterResponse extends BaseResponse implements ControlledView
|
|||
@SerializedName(ApiConstants.ZONE_NAME) @Param(description="the Zone name for the router")
|
||||
private String zoneName;
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_TYPE) @Param(description = "network type of the availability zone")
|
||||
private String zoneType;
|
||||
|
||||
@SerializedName(ApiConstants.DNS1) @Param(description="the first DNS for the router")
|
||||
private String dns1;
|
||||
|
||||
|
|
@ -186,6 +189,14 @@ public class DomainRouterResponse extends BaseResponse implements ControlledView
|
|||
this.zoneName = zoneName;
|
||||
}
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
public void setZoneType(String zoneType) {
|
||||
this.zoneType = zoneType;
|
||||
}
|
||||
|
||||
public void setDns1(String dns1) {
|
||||
this.dns1 = dns1;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -23,6 +23,8 @@ import org.apache.cloudstack.api.ApiConstants;
|
|||
import org.apache.cloudstack.api.BaseResponse;
|
||||
import org.apache.cloudstack.api.EntityReference;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@EntityReference(value= GlobalLoadBalancerRule.class)
|
||||
public class GlobalLoadBalancerResponse extends BaseResponse implements ControlledEntityResponse {
|
||||
|
||||
|
|
@ -76,6 +78,10 @@ public class GlobalLoadBalancerResponse extends BaseResponse implements Controll
|
|||
@Param(description = "the domain of the load balancer rule")
|
||||
private String domainName;
|
||||
|
||||
@SerializedName(ApiConstants.LOAD_BALANCER_RULE)
|
||||
@Param(description="List of load balancer rules that are part of GSLB rule", responseObject = LoadBalancerResponse.class)
|
||||
private List<LoadBalancerResponse> siteLoadBalancers;
|
||||
|
||||
public void setRegionIdId(Integer regionId) {
|
||||
this.regionId = regionId;
|
||||
}
|
||||
|
|
@ -130,4 +136,8 @@ public class GlobalLoadBalancerResponse extends BaseResponse implements Controll
|
|||
public void setDomainName(String domainName) {
|
||||
this.domainName = domainName;
|
||||
}
|
||||
|
||||
public void setSiteLoadBalancers(List<LoadBalancerResponse> siteLoadBalancers) {
|
||||
this.siteLoadBalancers = siteLoadBalancers;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,365 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package org.apache.cloudstack.api.response;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import org.apache.cloudstack.api.ApiConstants;
|
||||
import org.apache.cloudstack.api.BaseResponse;
|
||||
import org.apache.cloudstack.api.EntityReference;
|
||||
|
||||
import com.cloud.host.Host;
|
||||
import com.cloud.host.Status;
|
||||
import com.cloud.hypervisor.Hypervisor.HypervisorType;
|
||||
import com.cloud.serializer.Param;
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
|
||||
@EntityReference(value=Host.class)
|
||||
public class HostForMigrationResponse extends BaseResponse {
|
||||
@SerializedName(ApiConstants.ID) @Param(description="the ID of the host")
|
||||
private String id;
|
||||
|
||||
@SerializedName(ApiConstants.NAME) @Param(description="the name of the host")
|
||||
private String name;
|
||||
|
||||
@SerializedName(ApiConstants.STATE) @Param(description="the state of the host")
|
||||
private Status state;
|
||||
|
||||
@SerializedName("disconnected") @Param(description="true if the host is disconnected. False otherwise.")
|
||||
private Date disconnectedOn;
|
||||
|
||||
@SerializedName(ApiConstants.TYPE) @Param(description="the host type")
|
||||
private Host.Type hostType;
|
||||
|
||||
@SerializedName("oscategoryid") @Param(description="the OS category ID of the host")
|
||||
private String osCategoryId;
|
||||
|
||||
@SerializedName("oscategoryname") @Param(description="the OS category name of the host")
|
||||
private String osCategoryName;
|
||||
|
||||
@SerializedName(ApiConstants.IP_ADDRESS) @Param(description="the IP address of the host")
|
||||
private String ipAddress;
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_ID) @Param(description="the Zone ID of the host")
|
||||
private String zoneId;
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_NAME) @Param(description="the Zone name of the host")
|
||||
private String zoneName;
|
||||
|
||||
@SerializedName(ApiConstants.POD_ID) @Param(description="the Pod ID of the host")
|
||||
private String podId;
|
||||
|
||||
@SerializedName("podname") @Param(description="the Pod name of the host")
|
||||
private String podName;
|
||||
|
||||
@SerializedName("version") @Param(description="the host version")
|
||||
private String version;
|
||||
|
||||
@SerializedName(ApiConstants.HYPERVISOR) @Param(description="the host hypervisor")
|
||||
private HypervisorType hypervisor;
|
||||
|
||||
@SerializedName("cpunumber") @Param(description="the CPU number of the host")
|
||||
private Integer cpuNumber;
|
||||
|
||||
@SerializedName("cpuspeed") @Param(description="the CPU speed of the host")
|
||||
private Long cpuSpeed;
|
||||
|
||||
@SerializedName("cpuallocated") @Param(description="the amount of the host's CPU currently allocated")
|
||||
private String cpuAllocated;
|
||||
|
||||
@SerializedName("cpuused") @Param(description="the amount of the host's CPU currently used")
|
||||
private String cpuUsed;
|
||||
|
||||
@SerializedName("cpuwithoverprovisioning") @Param(description="the amount of the host's CPU after applying the cpu.overprovisioning.factor ")
|
||||
private String cpuWithOverprovisioning;
|
||||
|
||||
@SerializedName("averageload") @Param(description="the cpu average load on the host")
|
||||
private Long averageLoad;
|
||||
|
||||
@SerializedName("networkkbsread") @Param(description="the incoming network traffic on the host")
|
||||
private Long networkKbsRead;
|
||||
|
||||
@SerializedName("networkkbswrite") @Param(description="the outgoing network traffic on the host")
|
||||
private Long networkKbsWrite;
|
||||
|
||||
@SerializedName("memorytotal") @Param(description="the memory total of the host")
|
||||
private Long memoryTotal;
|
||||
|
||||
@SerializedName("memoryallocated") @Param(description="the amount of the host's memory currently allocated")
|
||||
private Long memoryAllocated;
|
||||
|
||||
@SerializedName("memoryused") @Param(description="the amount of the host's memory currently used")
|
||||
private Long memoryUsed;
|
||||
|
||||
@SerializedName("disksizetotal") @Param(description="the total disk size of the host")
|
||||
private Long diskSizeTotal;
|
||||
|
||||
@SerializedName("disksizeallocated") @Param(description="the host's currently allocated disk size")
|
||||
private Long diskSizeAllocated;
|
||||
|
||||
@SerializedName("capabilities") @Param(description="capabilities of the host")
|
||||
private String capabilities;
|
||||
|
||||
@SerializedName("lastpinged") @Param(description="the date and time the host was last pinged")
|
||||
private Date lastPinged;
|
||||
|
||||
@SerializedName("managementserverid") @Param(description="the management server ID of the host")
|
||||
private Long managementServerId;
|
||||
|
||||
@SerializedName("clusterid") @Param(description="the cluster ID of the host")
|
||||
private String clusterId;
|
||||
|
||||
@SerializedName("clustername") @Param(description="the cluster name of the host")
|
||||
private String clusterName;
|
||||
|
||||
@SerializedName("clustertype") @Param(description="the cluster type of the cluster that host belongs to")
|
||||
private String clusterType;
|
||||
|
||||
@SerializedName("islocalstorageactive") @Param(description="true if local storage is active, false otherwise")
|
||||
private Boolean localStorageActive;
|
||||
|
||||
@SerializedName(ApiConstants.CREATED) @Param(description="the date and time the host was created")
|
||||
private Date created;
|
||||
|
||||
@SerializedName("removed") @Param(description="the date and time the host was removed")
|
||||
private Date removed;
|
||||
|
||||
@SerializedName("events") @Param(description="events available for the host")
|
||||
private String events;
|
||||
|
||||
@SerializedName("hosttags") @Param(description="comma-separated list of tags for the host")
|
||||
private String hostTags;
|
||||
|
||||
@SerializedName("hasenoughcapacity") @Param(description="true if this host has enough CPU and RAM capacity to migrate a VM to it, false otherwise")
|
||||
private Boolean hasEnoughCapacity;
|
||||
|
||||
@SerializedName("suitableformigration") @Param(description="true if this host is suitable(has enough capacity and satisfies all conditions like hosttags, max guests vm limit etc) to migrate a VM to it , false otherwise")
|
||||
private Boolean suitableForMigration;
|
||||
|
||||
@SerializedName("requiresStorageMotion") @Param(description="true if migrating a vm to this host requires storage motion, false otherwise")
|
||||
private Boolean requiresStorageMotion;
|
||||
|
||||
@SerializedName("resourcestate") @Param(description="the resource state of the host")
|
||||
private String resourceState;
|
||||
|
||||
@SerializedName(ApiConstants.HYPERVISOR_VERSION) @Param(description="the hypervisor version")
|
||||
private String hypervisorVersion;
|
||||
|
||||
@SerializedName(ApiConstants.HA_HOST) @Param(description="true if the host is Ha host (dedicated to vms started by HA process; false otherwise")
|
||||
private Boolean haHost;
|
||||
|
||||
@Override
|
||||
public String getObjectId() {
|
||||
return this.getId();
|
||||
}
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(String id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public void setState(Status state) {
|
||||
this.state = state;
|
||||
}
|
||||
|
||||
public void setDisconnectedOn(Date disconnectedOn) {
|
||||
this.disconnectedOn = disconnectedOn;
|
||||
}
|
||||
|
||||
public void setHostType(Host.Type hostType) {
|
||||
this.hostType = hostType;
|
||||
}
|
||||
|
||||
public void setOsCategoryId(String osCategoryId) {
|
||||
this.osCategoryId = osCategoryId;
|
||||
}
|
||||
|
||||
public void setOsCategoryName(String osCategoryName) {
|
||||
this.osCategoryName = osCategoryName;
|
||||
}
|
||||
|
||||
public void setIpAddress(String ipAddress) {
|
||||
this.ipAddress = ipAddress;
|
||||
}
|
||||
|
||||
public void setZoneId(String zoneId) {
|
||||
this.zoneId = zoneId;
|
||||
}
|
||||
|
||||
public void setZoneName(String zoneName) {
|
||||
this.zoneName = zoneName;
|
||||
}
|
||||
|
||||
public void setPodId(String podId) {
|
||||
this.podId = podId;
|
||||
}
|
||||
|
||||
public void setPodName(String podName) {
|
||||
this.podName = podName;
|
||||
}
|
||||
|
||||
public void setVersion(String version) {
|
||||
this.version = version;
|
||||
}
|
||||
|
||||
public void setHypervisor(HypervisorType hypervisor) {
|
||||
this.hypervisor = hypervisor;
|
||||
}
|
||||
|
||||
public void setCpuNumber(Integer cpuNumber) {
|
||||
this.cpuNumber = cpuNumber;
|
||||
}
|
||||
|
||||
public void setCpuSpeed(Long cpuSpeed) {
|
||||
this.cpuSpeed = cpuSpeed;
|
||||
}
|
||||
|
||||
public String getCpuAllocated() {
|
||||
return cpuAllocated;
|
||||
}
|
||||
|
||||
public void setCpuAllocated(String cpuAllocated) {
|
||||
this.cpuAllocated = cpuAllocated;
|
||||
}
|
||||
|
||||
public void setCpuUsed(String cpuUsed) {
|
||||
this.cpuUsed = cpuUsed;
|
||||
}
|
||||
|
||||
public void setAverageLoad(Long averageLoad) {
|
||||
this.averageLoad = averageLoad;
|
||||
}
|
||||
|
||||
public void setNetworkKbsRead(Long networkKbsRead) {
|
||||
this.networkKbsRead = networkKbsRead;
|
||||
}
|
||||
|
||||
public void setNetworkKbsWrite(Long networkKbsWrite) {
|
||||
this.networkKbsWrite = networkKbsWrite;
|
||||
}
|
||||
|
||||
public void setMemoryTotal(Long memoryTotal) {
|
||||
this.memoryTotal = memoryTotal;
|
||||
}
|
||||
|
||||
public void setMemoryAllocated(Long memoryAllocated) {
|
||||
this.memoryAllocated = memoryAllocated;
|
||||
}
|
||||
|
||||
public void setMemoryUsed(Long memoryUsed) {
|
||||
this.memoryUsed = memoryUsed;
|
||||
}
|
||||
|
||||
public void setDiskSizeTotal(Long diskSizeTotal) {
|
||||
this.diskSizeTotal = diskSizeTotal;
|
||||
}
|
||||
|
||||
public void setDiskSizeAllocated(Long diskSizeAllocated) {
|
||||
this.diskSizeAllocated = diskSizeAllocated;
|
||||
}
|
||||
|
||||
public void setCapabilities(String capabilities) {
|
||||
this.capabilities = capabilities;
|
||||
}
|
||||
|
||||
public void setLastPinged(Date lastPinged) {
|
||||
this.lastPinged = lastPinged;
|
||||
}
|
||||
|
||||
public void setManagementServerId(Long managementServerId) {
|
||||
this.managementServerId = managementServerId;
|
||||
}
|
||||
|
||||
public void setClusterId(String clusterId) {
|
||||
this.clusterId = clusterId;
|
||||
}
|
||||
|
||||
public void setClusterName(String clusterName) {
|
||||
this.clusterName = clusterName;
|
||||
}
|
||||
|
||||
public void setClusterType(String clusterType) {
|
||||
this.clusterType = clusterType;
|
||||
}
|
||||
|
||||
public void setLocalStorageActive(Boolean localStorageActive) {
|
||||
this.localStorageActive = localStorageActive;
|
||||
}
|
||||
|
||||
public void setCreated(Date created) {
|
||||
this.created = created;
|
||||
}
|
||||
|
||||
public void setRemoved(Date removed) {
|
||||
this.removed = removed;
|
||||
}
|
||||
|
||||
public void setEvents(String events) {
|
||||
this.events = events;
|
||||
}
|
||||
|
||||
public String getHostTags() {
|
||||
return hostTags;
|
||||
}
|
||||
|
||||
public void setHostTags(String hostTags) {
|
||||
this.hostTags = hostTags;
|
||||
}
|
||||
|
||||
public void setHasEnoughCapacity(Boolean hasEnoughCapacity) {
|
||||
this.hasEnoughCapacity = hasEnoughCapacity;
|
||||
}
|
||||
|
||||
public void setSuitableForMigration(Boolean suitableForMigration) {
|
||||
this.suitableForMigration = suitableForMigration;
|
||||
}
|
||||
|
||||
public void setRequiresStorageMotion(Boolean requiresStorageMotion) {
|
||||
this.requiresStorageMotion = requiresStorageMotion;
|
||||
}
|
||||
|
||||
public String getResourceState() {
|
||||
return resourceState;
|
||||
}
|
||||
|
||||
public void setResourceState(String resourceState) {
|
||||
this.resourceState = resourceState;
|
||||
}
|
||||
|
||||
public String getCpuWithOverprovisioning() {
|
||||
return cpuWithOverprovisioning;
|
||||
}
|
||||
|
||||
public void setCpuWithOverprovisioning(String cpuWithOverprovisioning) {
|
||||
this.cpuWithOverprovisioning = cpuWithOverprovisioning;
|
||||
}
|
||||
|
||||
public void setHypervisorVersion(String hypervisorVersion) {
|
||||
this.hypervisorVersion = hypervisorVersion;
|
||||
}
|
||||
|
||||
public void setHaHost(Boolean haHost) {
|
||||
this.haHost = haHost;
|
||||
}
|
||||
}
|
||||
|
|
@ -59,7 +59,10 @@ public class HostResponse extends BaseResponse {
|
|||
|
||||
@SerializedName(ApiConstants.ZONE_NAME) @Param(description="the Zone name of the host")
|
||||
private String zoneName;
|
||||
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_TYPE) @Param(description = "network type of the availability zone")
|
||||
private String zoneType;
|
||||
|
||||
@SerializedName(ApiConstants.POD_ID) @Param(description="the Pod ID of the host")
|
||||
private String podId;
|
||||
|
||||
|
|
@ -209,6 +212,10 @@ public class HostResponse extends BaseResponse {
|
|||
this.zoneName = zoneName;
|
||||
}
|
||||
|
||||
public void setZoneType(String zoneType) {
|
||||
this.zoneType = zoneType;
|
||||
}
|
||||
|
||||
public void setPodId(String podId) {
|
||||
this.podId = podId;
|
||||
}
|
||||
|
|
@ -330,7 +337,6 @@ public class HostResponse extends BaseResponse {
|
|||
this.hasEnoughCapacity = hasEnoughCapacity;
|
||||
}
|
||||
|
||||
|
||||
public void setSuitableForMigration(Boolean suitableForMigration) {
|
||||
this.suitableForMigration = suitableForMigration;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -66,6 +66,9 @@ public class NetworkResponse extends BaseResponse implements ControlledEntityRes
|
|||
|
||||
@SerializedName(ApiConstants.ZONE_NAME) @Param(description="the name of the zone the network belongs to")
|
||||
private String zoneName;
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_TYPE) @Param(description="the networktype of the zone the network belongs to")
|
||||
private String zoneType;
|
||||
|
||||
@SerializedName("networkofferingid") @Param(description="network offering id the network is created from")
|
||||
private String networkOfferingId;
|
||||
|
|
@ -291,6 +294,10 @@ public class NetworkResponse extends BaseResponse implements ControlledEntityRes
|
|||
this.zoneName = zoneName;
|
||||
}
|
||||
|
||||
public void setZoneType(String zoneType) {
|
||||
this.zoneType = zoneType;
|
||||
}
|
||||
|
||||
public void setCidr(String cidr) {
|
||||
this.cidr = cidr;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -36,10 +36,13 @@ public class PodResponse extends BaseResponse {
|
|||
|
||||
@SerializedName("zoneid") @Param(description="the Zone ID of the Pod")
|
||||
private String zoneId;
|
||||
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_NAME) @Param(description="the Zone name of the Pod")
|
||||
private String zoneName;
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_TYPE) @Param(description = "network type of the availability zone")
|
||||
private String zoneType;
|
||||
|
||||
@SerializedName("gateway") @Param(description="the gateway of the Pod")
|
||||
private String gateway;
|
||||
|
||||
|
|
@ -86,6 +89,10 @@ public class PodResponse extends BaseResponse {
|
|||
return zoneName;
|
||||
}
|
||||
|
||||
public void setZoneType(String zoneType) {
|
||||
this.zoneType = zoneType;
|
||||
}
|
||||
|
||||
public void setZoneName(String zoneName) {
|
||||
this.zoneName = zoneName;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -93,6 +93,14 @@ public class SnapshotResponse extends BaseResponse implements ControlledEntityRe
|
|||
@Param(description = "the state of the snapshot. BackedUp means that snapshot is ready to be used; Creating - the snapshot is being allocated on the primary storage; BackingUp - the snapshot is being backed up on secondary storage")
|
||||
private Snapshot.State state;
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_NAME)
|
||||
@Param(description = "name of the availability zone")
|
||||
private String zoneName;
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_TYPE)
|
||||
@Param(description = "network type of the availability zone")
|
||||
private String zoneType;
|
||||
|
||||
@SerializedName(ApiConstants.TAGS) @Param(description="the list of resource tags associated with snapshot", responseObject = ResourceTagResponse.class)
|
||||
private List<ResourceTagResponse> tags;
|
||||
|
||||
|
|
@ -173,6 +181,14 @@ public class SnapshotResponse extends BaseResponse implements ControlledEntityRe
|
|||
this.projectName = projectName;
|
||||
}
|
||||
|
||||
public void setZoneName(String zoneName) {
|
||||
this.zoneName = zoneName;
|
||||
}
|
||||
|
||||
public void setZoneType(String zoneType) {
|
||||
this.zoneType = zoneType;
|
||||
}
|
||||
|
||||
public void setTags(List<ResourceTagResponse> tags) {
|
||||
this.tags = tags;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,248 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package org.apache.cloudstack.api.response;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import org.apache.cloudstack.api.ApiConstants;
|
||||
import org.apache.cloudstack.api.BaseResponse;
|
||||
import org.apache.cloudstack.api.EntityReference;
|
||||
|
||||
import com.cloud.serializer.Param;
|
||||
import com.cloud.storage.StoragePool;
|
||||
import com.cloud.storage.StoragePoolStatus;
|
||||
import com.google.gson.annotations.SerializedName;
|
||||
|
||||
@EntityReference(value=StoragePool.class)
|
||||
public class StoragePoolForMigrationResponse extends BaseResponse {
|
||||
@SerializedName("id") @Param(description="the ID of the storage pool")
|
||||
private String id;
|
||||
|
||||
@SerializedName("zoneid") @Param(description="the Zone ID of the storage pool")
|
||||
private String zoneId;
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_NAME) @Param(description="the Zone name of the storage pool")
|
||||
private String zoneName;
|
||||
|
||||
@SerializedName("podid") @Param(description="the Pod ID of the storage pool")
|
||||
private String podId;
|
||||
|
||||
@SerializedName("podname") @Param(description="the Pod name of the storage pool")
|
||||
private String podName;
|
||||
|
||||
@SerializedName("name") @Param(description="the name of the storage pool")
|
||||
private String name;
|
||||
|
||||
@SerializedName("ipaddress") @Param(description="the IP address of the storage pool")
|
||||
private String ipAddress;
|
||||
|
||||
@SerializedName("path") @Param(description="the storage pool path")
|
||||
private String path;
|
||||
|
||||
@SerializedName("created") @Param(description="the date and time the storage pool was created")
|
||||
private Date created;
|
||||
|
||||
@SerializedName("type") @Param(description="the storage pool type")
|
||||
private String type;
|
||||
|
||||
@SerializedName("clusterid") @Param(description="the ID of the cluster for the storage pool")
|
||||
private String clusterId;
|
||||
|
||||
@SerializedName("clustername") @Param(description="the name of the cluster for the storage pool")
|
||||
private String clusterName;
|
||||
|
||||
@SerializedName("disksizetotal") @Param(description="the total disk size of the storage pool")
|
||||
private Long diskSizeTotal;
|
||||
|
||||
@SerializedName("disksizeallocated") @Param(description="the host's currently allocated disk size")
|
||||
private Long diskSizeAllocated;
|
||||
|
||||
@SerializedName("disksizeused") @Param(description="the host's currently used disk size")
|
||||
private Long diskSizeUsed;
|
||||
|
||||
@SerializedName("tags") @Param(description="the tags for the storage pool")
|
||||
private String tags;
|
||||
|
||||
@SerializedName(ApiConstants.STATE) @Param(description="the state of the storage pool")
|
||||
private StoragePoolStatus state;
|
||||
|
||||
@SerializedName(ApiConstants.SCOPE) @Param(description="the scope of the storage pool")
|
||||
private String scope;
|
||||
|
||||
@SerializedName("suitableformigration") @Param(description="true if this pool is suitable to migrate a volume," +
|
||||
" false otherwise")
|
||||
private Boolean suitableForMigration;
|
||||
|
||||
/**
|
||||
* @return the scope
|
||||
*/
|
||||
public String getScope() {
|
||||
return scope;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param scope the scope to set
|
||||
*/
|
||||
public void setScope(String scope) {
|
||||
this.scope = scope;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getObjectId() {
|
||||
return this.getId();
|
||||
}
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(String id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getZoneId() {
|
||||
return zoneId;
|
||||
}
|
||||
|
||||
public void setZoneId(String zoneId) {
|
||||
this.zoneId = zoneId;
|
||||
}
|
||||
|
||||
public String getZoneName() {
|
||||
return zoneName;
|
||||
}
|
||||
|
||||
public void setZoneName(String zoneName) {
|
||||
this.zoneName = zoneName;
|
||||
}
|
||||
|
||||
public String getPodId() {
|
||||
return podId;
|
||||
}
|
||||
|
||||
public void setPodId(String podId) {
|
||||
this.podId = podId;
|
||||
}
|
||||
|
||||
public String getPodName() {
|
||||
return podName;
|
||||
}
|
||||
|
||||
public void setPodName(String podName) {
|
||||
this.podName = podName;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getIpAddress() {
|
||||
return ipAddress;
|
||||
}
|
||||
|
||||
public void setIpAddress(String ipAddress) {
|
||||
this.ipAddress = ipAddress;
|
||||
}
|
||||
|
||||
public String getPath() {
|
||||
return path;
|
||||
}
|
||||
|
||||
public void setPath(String path) {
|
||||
this.path = path;
|
||||
}
|
||||
|
||||
public Date getCreated() {
|
||||
return created;
|
||||
}
|
||||
|
||||
public void setCreated(Date created) {
|
||||
this.created = created;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public void setType(String type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
public String getClusterId() {
|
||||
return clusterId;
|
||||
}
|
||||
|
||||
public void setClusterId(String clusterId) {
|
||||
this.clusterId = clusterId;
|
||||
}
|
||||
|
||||
public String getClusterName() {
|
||||
return clusterName;
|
||||
}
|
||||
|
||||
public void setClusterName(String clusterName) {
|
||||
this.clusterName = clusterName;
|
||||
}
|
||||
|
||||
public Long getDiskSizeTotal() {
|
||||
return diskSizeTotal;
|
||||
}
|
||||
|
||||
public void setDiskSizeTotal(Long diskSizeTotal) {
|
||||
this.diskSizeTotal = diskSizeTotal;
|
||||
}
|
||||
|
||||
public Long getDiskSizeAllocated() {
|
||||
return diskSizeAllocated;
|
||||
}
|
||||
|
||||
public void setDiskSizeAllocated(Long diskSizeAllocated) {
|
||||
this.diskSizeAllocated = diskSizeAllocated;
|
||||
}
|
||||
|
||||
public Long getDiskSizeUsed() {
|
||||
return diskSizeUsed;
|
||||
}
|
||||
|
||||
public void setDiskSizeUsed(Long diskSizeUsed) {
|
||||
this.diskSizeUsed = diskSizeUsed;
|
||||
}
|
||||
|
||||
public String getTags() {
|
||||
return tags;
|
||||
}
|
||||
|
||||
public void setTags(String tags) {
|
||||
this.tags = tags;
|
||||
}
|
||||
|
||||
public StoragePoolStatus getState() {
|
||||
return state;
|
||||
}
|
||||
|
||||
public void setState(StoragePoolStatus state) {
|
||||
this.state = state;
|
||||
}
|
||||
|
||||
public void setSuitableForMigration(Boolean suitableForMigration) {
|
||||
this.suitableForMigration = suitableForMigration;
|
||||
}
|
||||
}
|
||||
|
|
@ -38,12 +38,15 @@ public class StoragePoolResponse extends BaseResponse {
|
|||
@SerializedName(ApiConstants.ZONE_NAME) @Param(description="the Zone name of the storage pool")
|
||||
private String zoneName;
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_TYPE) @Param(description = "network type of the availability zone")
|
||||
private String zoneType;
|
||||
|
||||
@SerializedName("podid") @Param(description="the Pod ID of the storage pool")
|
||||
private String podId;
|
||||
|
||||
@SerializedName("podname") @Param(description="the Pod name of the storage pool")
|
||||
private String podName;
|
||||
|
||||
private String podName;
|
||||
|
||||
@SerializedName("name") @Param(description="the name of the storage pool")
|
||||
private String name;
|
||||
|
||||
|
|
@ -83,8 +86,6 @@ public class StoragePoolResponse extends BaseResponse {
|
|||
@SerializedName(ApiConstants.SCOPE) @Param(description="the scope of the storage pool")
|
||||
private String scope;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @return the scope
|
||||
*/
|
||||
|
|
@ -128,6 +129,14 @@ public class StoragePoolResponse extends BaseResponse {
|
|||
this.zoneName = zoneName;
|
||||
}
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
public void setZoneType(String zoneType) {
|
||||
this.zoneType = zoneType;
|
||||
}
|
||||
|
||||
public String getPodId() {
|
||||
return podId;
|
||||
}
|
||||
|
|
@ -239,5 +248,4 @@ public class StoragePoolResponse extends BaseResponse {
|
|||
public void setState(StoragePoolStatus state) {
|
||||
this.state = state;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -46,6 +46,9 @@ public class SystemVmResponse extends BaseResponse {
|
|||
@SerializedName(ApiConstants.ZONE_NAME) @Param(description="the Zone name for the system VM")
|
||||
private String zoneName;
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_TYPE) @Param(description = "network type of the availability zone")
|
||||
private String zoneType;
|
||||
|
||||
@SerializedName("dns1") @Param(description="the first DNS for the system VM")
|
||||
private String dns1;
|
||||
|
||||
|
|
@ -150,7 +153,15 @@ public class SystemVmResponse extends BaseResponse {
|
|||
public void setZoneName(String zoneName) {
|
||||
this.zoneName = zoneName;
|
||||
}
|
||||
|
||||
public String getZoneType() {
|
||||
return zoneType;
|
||||
}
|
||||
|
||||
public void setZoneType(String zoneType) {
|
||||
this.zoneType = zoneType;
|
||||
}
|
||||
|
||||
public String getDns1() {
|
||||
return dns1;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -87,6 +87,9 @@ public class TemplateResponse extends BaseResponse implements ControlledEntityRe
|
|||
|
||||
@SerializedName(ApiConstants.ZONE_NAME) @Param(description="the name of the zone for this template")
|
||||
private String zoneName;
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_TYPE) @Param(description="the networktype of the zone for this template")
|
||||
private String zoneType;
|
||||
|
||||
@SerializedName(ApiConstants.STATUS) @Param(description="the status of the template")
|
||||
private String status;
|
||||
|
|
@ -156,6 +159,10 @@ public class TemplateResponse extends BaseResponse implements ControlledEntityRe
|
|||
this.zoneName = zoneName;
|
||||
}
|
||||
|
||||
public void setZoneType(String zoneType) {
|
||||
this.zoneType = zoneType;
|
||||
}
|
||||
|
||||
public void setAccountId(String accountId) {
|
||||
this.accountId = accountId;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@ package org.apache.cloudstack.api.response;
|
|||
|
||||
import java.util.Date;
|
||||
|
||||
import org.apache.cloudstack.api.ApiConstants;
|
||||
import org.apache.cloudstack.api.BaseResponse;
|
||||
import org.apache.cloudstack.api.EntityReference;
|
||||
|
||||
|
|
@ -74,6 +75,9 @@ public class UserResponse extends BaseResponse {
|
|||
|
||||
@SerializedName("iscallerchilddomain") @Param(description="the boolean value representing if the updating target is in caller's child domain")
|
||||
private boolean isCallerChildDomain;
|
||||
|
||||
@SerializedName(ApiConstants.IS_DEFAULT) @Param(description="true if user is default, false otherwise", since="4.2.0")
|
||||
private Boolean isDefault;
|
||||
|
||||
@Override
|
||||
public String getObjectId() {
|
||||
|
|
@ -206,4 +210,8 @@ public class UserResponse extends BaseResponse {
|
|||
public void setIsCallerChildDomain(boolean isCallerChildDomain) {
|
||||
this.isCallerChildDomain = isCallerChildDomain;
|
||||
}
|
||||
|
||||
public void setIsDefault(Boolean isDefault) {
|
||||
this.isDefault = isDefault;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -80,6 +80,9 @@ public class UserVmResponse extends BaseResponse implements ControlledEntityResp
|
|||
@SerializedName(ApiConstants.ZONE_NAME) @Param(description="the name of the availability zone for the virtual machine")
|
||||
private String zoneName;
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_TYPE) @Param(description="the network type of the availability zone for the virtual machine")
|
||||
private String zoneType;
|
||||
|
||||
@SerializedName(ApiConstants.HOST_ID) @Param(description="the ID of the host for the virtual machine")
|
||||
private String hostId;
|
||||
|
||||
|
|
@ -249,6 +252,10 @@ public class UserVmResponse extends BaseResponse implements ControlledEntityResp
|
|||
this.zoneName = zoneName;
|
||||
}
|
||||
|
||||
public void setZoneType(String zoneType) {
|
||||
this.zoneType = zoneType;
|
||||
}
|
||||
|
||||
public void setHostId(String hostId) {
|
||||
this.hostId = hostId;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -47,6 +47,10 @@ public class VolumeResponse extends BaseResponse implements ControlledViewEntity
|
|||
@SerializedName(ApiConstants.ZONE_NAME)
|
||||
@Param(description = "name of the availability zone")
|
||||
private String zoneName;
|
||||
|
||||
@SerializedName(ApiConstants.ZONE_TYPE)
|
||||
@Param(description = "network type of the availability zone")
|
||||
private String zoneType;
|
||||
|
||||
@SerializedName(ApiConstants.TYPE)
|
||||
@Param(description = "type of the disk volume (ROOT or DATADISK)")
|
||||
|
|
@ -198,6 +202,10 @@ public class VolumeResponse extends BaseResponse implements ControlledViewEntity
|
|||
this.zoneName = zoneName;
|
||||
}
|
||||
|
||||
public void setZoneType(String zoneType) {
|
||||
this.zoneType = zoneType;
|
||||
}
|
||||
|
||||
public void setVolumeType(String volumeType) {
|
||||
this.volumeType = volumeType;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@
|
|||
// under the License.
|
||||
package org.apache.cloudstack.api.command.test;
|
||||
|
||||
import com.cloud.vm.NicSecondaryIp;
|
||||
import junit.framework.Assert;
|
||||
import junit.framework.TestCase;
|
||||
|
||||
|
|
@ -64,15 +65,16 @@ public class AddIpToVmNicTest extends TestCase {
|
|||
|
||||
NetworkService networkService = Mockito.mock(NetworkService.class);
|
||||
AddIpToVmNicCmd ipTonicCmd = Mockito.mock(AddIpToVmNicCmd.class);
|
||||
NicSecondaryIp secIp = Mockito.mock(NicSecondaryIp.class);
|
||||
|
||||
Mockito.when(
|
||||
networkService.allocateSecondaryGuestIP(Mockito.any(Account.class), Mockito.anyLong(), Mockito.anyLong(), Mockito.anyLong(), Mockito.anyString())).thenReturn("10.1.1.2");
|
||||
networkService.allocateSecondaryGuestIP(Mockito.any(Account.class), Mockito.anyLong(), Mockito.anyLong(), Mockito.anyLong(), Mockito.anyString())).thenReturn(secIp);
|
||||
|
||||
ipTonicCmd._networkService = networkService;
|
||||
responseGenerator = Mockito.mock(ResponseGenerator.class);
|
||||
|
||||
NicSecondaryIpResponse ipres = Mockito.mock(NicSecondaryIpResponse.class);
|
||||
Mockito.when(responseGenerator.createSecondaryIPToNicResponse(Mockito.anyString(), Mockito.anyLong(), Mockito.anyLong())).thenReturn(ipres);
|
||||
Mockito.when(responseGenerator.createSecondaryIPToNicResponse(secIp)).thenReturn(ipres);
|
||||
|
||||
ipTonicCmd._responseGenerator = responseGenerator;
|
||||
ipTonicCmd.execute();
|
||||
|
|
|
|||
|
|
@ -0,0 +1,89 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package org.apache.cloudstack.api.command.test;
|
||||
|
||||
import com.cloud.configuration.Configuration;
|
||||
import com.cloud.configuration.ConfigurationService;
|
||||
import com.cloud.exception.InvalidParameterValueException;
|
||||
import com.cloud.resource.ResourceService;
|
||||
import com.cloud.server.ManagementService;
|
||||
import com.cloud.utils.Pair;
|
||||
import junit.framework.Assert;
|
||||
import junit.framework.TestCase;
|
||||
import org.apache.cloudstack.api.ResponseGenerator;
|
||||
import org.apache.cloudstack.api.ServerApiException;
|
||||
import org.apache.cloudstack.api.command.admin.config.ListCfgsByCmd;
|
||||
import org.apache.cloudstack.api.response.ConfigurationResponse;
|
||||
import org.apache.cloudstack.api.response.ListResponse;
|
||||
import org.junit.Before;
|
||||
import org.junit.Rule;
|
||||
import org.junit.Test;
|
||||
import org.junit.rules.ExpectedException;
|
||||
import org.mockito.Mockito;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class ListCfgCmdTest extends TestCase{
|
||||
|
||||
private ListCfgsByCmd listCfgsByCmd;
|
||||
private ManagementService mgr;
|
||||
private ResponseGenerator responseGenerator;
|
||||
|
||||
@Rule
|
||||
public ExpectedException expectedException = ExpectedException.none();
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
responseGenerator = Mockito.mock(ResponseGenerator.class);
|
||||
mgr = Mockito.mock(ManagementService.class);
|
||||
listCfgsByCmd = new ListCfgsByCmd();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCreateSuccess() {
|
||||
|
||||
Configuration cfg = Mockito.mock(Configuration.class);
|
||||
listCfgsByCmd._mgr = mgr;
|
||||
listCfgsByCmd._responseGenerator = responseGenerator;
|
||||
|
||||
|
||||
|
||||
List<Configuration> configList = new ArrayList<Configuration>();
|
||||
configList.add(cfg);
|
||||
|
||||
Pair<List<? extends Configuration>, Integer> result = new Pair<List<? extends Configuration>, Integer>(configList, 1);
|
||||
|
||||
try {
|
||||
Mockito.when(
|
||||
mgr.searchForConfigurations(listCfgsByCmd))
|
||||
.thenReturn(result);
|
||||
}catch (Exception e){
|
||||
Assert.fail("Received exception when success expected " + e.getMessage());
|
||||
}
|
||||
ConfigurationResponse cfgResponse = new ConfigurationResponse();
|
||||
cfgResponse.setName("Test case");
|
||||
Mockito.when(responseGenerator.createConfigurationResponse(cfg)).thenReturn(cfgResponse);
|
||||
|
||||
listCfgsByCmd.execute();
|
||||
Mockito.verify(responseGenerator).createConfigurationResponse(cfg);
|
||||
|
||||
ListResponse<ConfigurationResponse> actualResponse = (ListResponse<ConfigurationResponse>) listCfgsByCmd.getResponseObject();
|
||||
Assert.assertEquals(cfgResponse, actualResponse.getResponses().get(0));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,116 @@
|
|||
// Licensed to the Apache Software Foundation (ASF) under one
|
||||
// or more contributor license agreements. See the NOTICE file
|
||||
// distributed with this work for additional information
|
||||
// regarding copyright ownership. The ASF licenses this file
|
||||
// to you under the Apache License, Version 2.0 (the
|
||||
// "License"); you may not use this file except in compliance
|
||||
// with the License. You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing,
|
||||
// software distributed under the License is distributed on an
|
||||
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
// KIND, either express or implied. See the License for the
|
||||
// specific language governing permissions and limitations
|
||||
// under the License.
|
||||
package org.apache.cloudstack.api.command.test;
|
||||
|
||||
import com.cloud.configuration.Configuration;
|
||||
import com.cloud.configuration.ConfigurationService;
|
||||
import com.cloud.exception.InvalidParameterValueException;
|
||||
import com.cloud.resource.ResourceService;
|
||||
import junit.framework.Assert;
|
||||
import junit.framework.TestCase;
|
||||
import org.apache.cloudstack.api.ResponseGenerator;
|
||||
import org.apache.cloudstack.api.ServerApiException;
|
||||
import org.apache.cloudstack.api.command.admin.config.UpdateCfgCmd;
|
||||
import org.apache.cloudstack.api.response.ConfigurationResponse;
|
||||
import org.junit.Before;
|
||||
import org.junit.Rule;
|
||||
import org.junit.Test;
|
||||
import org.junit.rules.ExpectedException;
|
||||
import org.mockito.Mockito;
|
||||
|
||||
public class UpdateCfgCmdTest extends TestCase{
|
||||
|
||||
private UpdateCfgCmd updateCfgCmd;
|
||||
private ConfigurationService configService;
|
||||
private ResponseGenerator responseGenerator;
|
||||
|
||||
@Rule
|
||||
public ExpectedException expectedException = ExpectedException.none();
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
responseGenerator = Mockito.mock(ResponseGenerator.class);
|
||||
configService = Mockito.mock(ConfigurationService.class);
|
||||
updateCfgCmd = new UpdateCfgCmd();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testExecuteForEmptyResult() {
|
||||
updateCfgCmd._configService = configService;
|
||||
|
||||
try {
|
||||
updateCfgCmd.execute();
|
||||
} catch (ServerApiException exception) {
|
||||
Assert.assertEquals("Failed to update config",
|
||||
exception.getDescription());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testExecuteForNullResult() {
|
||||
|
||||
updateCfgCmd._configService = configService;
|
||||
|
||||
try {
|
||||
Mockito.when(
|
||||
configService.updateConfiguration(updateCfgCmd))
|
||||
.thenReturn(null);
|
||||
} catch (InvalidParameterValueException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (IllegalArgumentException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
try {
|
||||
updateCfgCmd.execute();
|
||||
} catch (ServerApiException exception) {
|
||||
Assert.assertEquals("Failed to update config",
|
||||
exception.getDescription());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void testCreateSuccess() {
|
||||
|
||||
Configuration cfg = Mockito.mock(Configuration.class);
|
||||
updateCfgCmd._configService = configService;
|
||||
updateCfgCmd._responseGenerator = responseGenerator;
|
||||
|
||||
try {
|
||||
Mockito.when(
|
||||
configService.updateConfiguration(updateCfgCmd))
|
||||
.thenReturn(cfg);
|
||||
}catch (Exception e){
|
||||
Assert.fail("Received exception when success expected " + e.getMessage());
|
||||
}
|
||||
|
||||
ConfigurationResponse response = new ConfigurationResponse();
|
||||
response.setName("Test case");
|
||||
Mockito.when(responseGenerator.createConfigurationResponse(cfg)).thenReturn(response);
|
||||
|
||||
updateCfgCmd.execute();
|
||||
Mockito.verify(responseGenerator).createConfigurationResponse(cfg);
|
||||
ConfigurationResponse actualResponse = (ConfigurationResponse) updateCfgCmd.getResponseObject();
|
||||
Assert.assertEquals(response, actualResponse);
|
||||
Assert.assertEquals("updateconfigurationresponse", response.getResponseName());
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -1126,7 +1126,7 @@ public class S3Engine {
|
|||
SBucketVO sbucket = bucketDao.getByName( bucketName );
|
||||
if (sbucket == null) {
|
||||
response.setResultCode(404);
|
||||
response.setResultDescription("<Code>Bucket dosen't exists</Code><Message>Bucket " + bucketName + " does not exist</Message>");
|
||||
response.setResultDescription("<Code>Bucket doesn't exists</Code><Message>Bucket " + bucketName + " does not exist</Message>");
|
||||
return response;
|
||||
}
|
||||
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,285 @@
|
|||
# Licensed to the Apache Software Foundation (ASF) under one
|
||||
# or more contributor license agreements. See the NOTICE file
|
||||
# distributed with this work for additional information
|
||||
# regarding copyright ownership. The ASF licenses this file
|
||||
# to you under the Apache License, Version 2.0 (the
|
||||
# "License"); you may not use this file except in compliance
|
||||
# with the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing,
|
||||
# software distributed under the License is distributed on an
|
||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
# KIND, either express or implied. See the License for the
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
|
||||
changed.item.properties=\u062a\u063a\u064a\u0631 \u062e\u0635\u0627\u0626\u0635 \u0627\u0644\u0639\u0646\u0635\u0631
|
||||
confirm.enable.s3=\u0641\u0636\u0644\u0627 \u0642\u0645 \u0628\u062a\u0639\u0628\u0626\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u0642\u0627\u062f\u0645\u0629 \u0644\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u062a\u062e\u0632\u064a\u0646 S3 \u0644\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u062b\u0627\u0646\u0648\u064a\u0629.
|
||||
instances.actions.reboot.label=\u0625\u0639\u0627\u062f\u0629 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u0646\u0645\u0648\u0630\u062c
|
||||
label.accept.project.invitation=\u0642\u0628\u0648\u0644 \u062f\u0639\u0648\u0629 \u0627\u0644\u0645\u0634\u0631\u0648\u0639
|
||||
label.action.delete.system.service.offering=\u062d\u0630\u0641 \u0646\u0638\u0627\u0645 \u062a\u0642\u062f\u064a\u0645 \u0627\u0644\u062e\u062f\u0645\u0629
|
||||
label.action.disable.physical.network=\u062a\u0639\u0637\u064a\u0644 \u0634\u0628\u0643\u0629 \u0641\u064a\u0632\u064a\u0627\u0626\u064a\u0629
|
||||
label.action.enable.physical.network=\u062a\u0645\u0643\u064a\u0646 \u0634\u0628\u0643\u0629 \u0641\u064a\u0632\u064a\u0627\u0626\u064a\u0629
|
||||
label.activate.project=\u062a\u0641\u0639\u064a\u0644 \u0627\u0644\u0645\u0634\u0631\u0648\u0639
|
||||
label.add.accounts.to=\u0625\u0636\u0627\u0641\u0629 \u062d\u0633\u0627\u0628\u0627\u062a \u0625\u0644\u0649
|
||||
label.add.accounts=\u0625\u0636\u0627\u0641\u0629 \u062d\u0633\u0627\u0628\u0627\u062a
|
||||
label.add.account.to.project=\u0625\u0636\u0627\u0641\u0629 \u062d\u0633\u0627\u0628 \u0644\u0644\u0645\u0634\u0631\u0648\u0639
|
||||
label.add.ACL=\u0625\u0636\u0627\u0641\u0629 ACL
|
||||
label.add.network.ACL=\u0625\u0636\u0627\u0641\u0629 \u0634\u0628\u0643\u0629 ACL
|
||||
label.add.new.gateway=\u0623\u0636\u0641 \u0628\u0648\u0627\u0628\u0629 \u062c\u062f\u064a\u062f\u0629
|
||||
label.add.new.tier=\u0625\u0636\u0627\u0641\u0629 \u0637\u0628\u0642\u0629 \u062c\u062f\u064a\u062f\u0629
|
||||
label.add.port.forwarding.rule=\u0625\u0636\u0627\u0641\u0629 \u0642\u0627\u0639\u062f\u0629 \u0645\u0646\u0641\u0630 \u0625\u0639\u0627\u062f\u0629 \u0627\u0644\u062a\u0648\u062c\u064a\u0647
|
||||
label.add.route=\u0625\u0636\u0627\u0641\u0629 \u0645\u0633\u0627\u0631
|
||||
label.add.rule=\u0625\u0636\u0627\u0641\u0629 \u0642\u0627\u0639\u062f\u0629
|
||||
label.add.static.route=\u0625\u0636\u0627\u0641\u0629 \u062a\u0648\u062c\u064a\u0647 \u062b\u0627\u0628\u062a
|
||||
label.add.to.group=\u0625\u0636\u0627\u0641\u0629 \u0625\u0644\u0649 \u0627\u0644\u0645\u062c\u0645\u0648\u0639\u0629
|
||||
label.add.VM.to.tier=\u0625\u0636\u0627\u0641\u0629 \u062c\u0647\u0627\u0632 \u0625\u0641\u062a\u0631\u0627\u0636\u064a \u0641\u064a \u0637\u0628\u0642\u0629
|
||||
label.add.vpc=\u0625\u0636\u0627\u0641\u0629 \u0633\u062d\u0627\u0628\u0629 \u0625\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u062e\u0627\u0635\u0629
|
||||
label.add.VPN.gateway=\u0623\u0636\u0641 \u0628\u0648\u0627\u0628\u0629 \u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0627\u0644\u0634\u062e\u0635\u064a\u0629
|
||||
label.allocated=\u062a\u062e\u0635\u064a\u0635
|
||||
label.apply=\u062a\u0637\u0628\u064a\u0642
|
||||
label.associated.network=\u0634\u0628\u0643\u0629 \u0645\u0631\u062a\u0628\u0637\u0629
|
||||
label.broadcast.uri=\u0628\u062b \u0627\u0644\u0631\u0627\u0628\u0637
|
||||
label.change.value=\u062a\u063a\u064a\u0631 \u0627\u0644\u0642\u064a\u0645\u0629
|
||||
label.CIDR.list=\u0642\u0627\u0626\u0645\u0629 CIDR
|
||||
label.CIDR.of.destination.network=CIDR \u0627\u0644\u062e\u0627\u0635 \u0628\u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0645\u0648\u062c\u0647\u0629.
|
||||
label.clean.up=\u062a\u0646\u0638\u064a\u0641
|
||||
label.clear.list=\u0645\u0633\u062d \u0627\u0644\u0642\u0627\u0626\u0645\u0629
|
||||
label.configuration=\u0627\u0644\u062a\u0643\u0648\u064a\u0646
|
||||
label.configure.network.ACLs=\u0636\u0628\u0637 \u0634\u0628\u0643\u0629 ACLs
|
||||
label.configure=\u0642\u0645 \u0628\u062a\u0643\u0648\u064a\u0646
|
||||
label.configure.vpc=\u062a\u0643\u0648\u064a\u0646 VPC
|
||||
label.corrections.saved=\u062a\u0645 \u062d\u0641\u0638 \u0627\u0644\u062a\u0635\u062d\u064a\u062d\u0627\u062a
|
||||
label.cpu.mhz=\u0648\u062d\u062f\u0629 \u0627\u0644\u0645\u0639\u0627\u0644\u062c\u0629 \u0627\u0644\u0645\u0631\u0643\u0632\u064a\u0629 (\u0628\u0627\u0644\u0645\u064a\u063a\u0627\u0647\u064a\u0631\u062a\u0632)
|
||||
label.cpu=\u00d9\u0088\u00d8\u00ad\u00d8\u00af\u00d8\u00a9 \u00d8\u00a7\u00d9\u0084\u00d9
|
||||
label.create.project=\u0623\u0646\u0634\u0626 \u0645\u0634\u0631\u0648\u0639
|
||||
label.create.VPN.connection=\u0625\u0646\u0634\u0627\u0621 \u0627\u062a\u0635\u0627\u0644 \u0628\u0648\u0627\u0628\u0629 \u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0627\u0644\u0634\u062e\u0635\u064a\u0629
|
||||
label.dead.peer.detection=\u0643\u0634\u0641 \u0627\u0644\u0642\u0631\u064a\u0646 \u0627\u0644\u0645\u0641\u0642\u0648\u062f
|
||||
label.decline.invitation=\u0631\u0641\u0636 \u0627\u0644\u062f\u0639\u0648\u0629
|
||||
label.default=\u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a
|
||||
label.default.view=\u0637\u0631\u064a\u0642\u0629 \u0627\u0644\u0639\u0631\u0636 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629
|
||||
label.delete.gateway=\u0627\u062d\u0630\u0641 \u0627\u0644\u0628\u0648\u0627\u0628\u0629
|
||||
label.delete.project=\u062d\u0630\u0641 \u0627\u0644\u0645\u0634\u0631\u0648\u0639
|
||||
label.delete.VPN.connection=\u0627\u062d\u0630\u0641 \u0628\u0648\u0627\u0628\u0629 \u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0627\u0644\u0634\u062e\u0635\u064a\u0629
|
||||
label.delete.VPN.customer.gateway=\u062d\u0630\u0641 \u0628\u0648\u0627\u0628\u0629 VPN \u0627\u0644\u0645\u062e\u0635\u0635\u0629
|
||||
label.delete.VPN.gateway=\u0627\u062d\u0630\u0641 \u0628\u0648\u0627\u0628\u0629 \u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0627\u0644\u0634\u062e\u0635\u064a\u0629
|
||||
label.destroy=\u0647\u062f\u0645
|
||||
label.devices=\u0627\u0644\u0623\u062c\u0647\u0632\u0629
|
||||
label.direct.ips=\u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0645\u0634\u062a\u0631\u0643\u0629 IPs
|
||||
label.display.name=\u0639\u0631\u0636 \u0627\u0644\u0627\u0633\u0645
|
||||
label.DNS.domain.for.guest.networks=\u0645\u062c\u0627\u0644 DNS \u0644\u0634\u0628\u0643\u0627\u062a \u0627\u0644\u0632\u0627\u0626\u0631
|
||||
label.dns=\u0646\u0638\u0627\u0645 \u062a\u0633\u0645\u064a\u0629 \u0627\u0644\u0645\u062c\u0627\u0644 DNS
|
||||
label.drag.new.position=\u0627\u0633\u062d\u0628 \u0644\u0645\u0648\u0642\u0641 \u062c\u062f\u064a\u062f
|
||||
label.edit.network.details=\u062a\u062d\u0631\u064a\u0631 \u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u0634\u0628\u0643\u0629
|
||||
label.edit.project.details=\u0627\u0636\u0627\u0641\u0629 \u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u0645\u0634\u0631\u0648\u0639
|
||||
label.edit.tags=\u062a\u0639\u062f\u064a\u0644 \u0627\u0644\u0639\u0644\u0627\u0645\u0627\u062a
|
||||
label.edit.vpc=\u062a\u0639\u062f\u064a\u0644 VPC
|
||||
label.egress.rules=\u0642\u0648\u0627\u0639\u062f \u0627\u0644\u062e\u0631\u0648\u062c
|
||||
label.elastic=\u0645\u0631\u0646
|
||||
label.enable.s3=\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u062a\u062e\u0632\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u0648\u064a S3
|
||||
label.endpoint=\u0646\u0642\u0637\u0629 \u0627\u0644\u0646\u0647\u0627\u064a\u0629
|
||||
label.error=\u062e\u0637\u0623
|
||||
label.ESP.lifetime=\u0639\u0645\u0631 ESP (\u062b\u0627\u0646\u064a\u0629)
|
||||
label.ESP.policy=\u0633\u064a\u0627\u0633\u0629 ESP
|
||||
label.filterBy=\u062a\u0635\u0641\u064a\u0629 \u062d\u0633\u0628
|
||||
label.full.path=\u0645\u0633\u0627\u0631 \u0643\u0627\u0645\u0644
|
||||
label.guest.type=\u0646\u0648\u0639 \u0627\u0644\u0636\u064a\u0641
|
||||
label.IKE.lifetime=\u0639\u0645\u0631 IKE (\u062b\u0627\u0646\u064a\u0629)
|
||||
label.IKE.policy=\u0633\u064a\u0627\u0633\u0629 IKE
|
||||
label.instances=\u0627\u0644\u062d\u0627\u0644\u0627\u062a
|
||||
label.invitations=\u062f\u0639\u0648\u0627\u062a
|
||||
label.invited.accounts=\u062f\u0639\u0648\u0629 \u062d\u0633\u0627\u0628\u0627\u062a
|
||||
label.invite.to=\u062f\u0639\u0648\u0629 \u0644\u0640
|
||||
label.IPsec.preshared.key=\u0645\u0641\u062a\u0627\u062d \u0623\u0645\u0646 \u0628\u0631\u0648\u062a\u0648\u0643\u0648\u0644 \u0627\u0644\u0625\u0646\u062a\u0631\u0646\u062a \u062a\u0645\u062a \u0645\u0634\u0627\u0631\u0643\u062a\u0647 \u0645\u0633\u0628\u0642\u0627
|
||||
label.isolation.uri=\u0639\u0632\u0644 \u0627\u0644\u0631\u0627\u0628\u0637
|
||||
label.keyboard.type=\u0646\u0648\u0639 \u0644\u0648\u062d\u0629 \u0627\u0644\u0645\u0641\u0627\u062a\u064a\u062d
|
||||
label.least.connections=\u0623\u0642\u0644 \u0627\u0644\u0625\u062a\u0635\u0627\u0644\u0627\u062a
|
||||
label.local.storage.enabled=\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u062a\u062e\u0632\u064a\u0646 \u0627\u0644\u0645\u062d\u0644\u064a
|
||||
label.make.project.owner=\u062c\u0639\u0644 \u0627\u0644\u062d\u0633\u0627\u0628 \u0645\u0627\u0644\u0643 \u0644\u0644\u0645\u0634\u0631\u0648\u0639
|
||||
label.max.guest.limit=\u0627\u0644\u062d\u062f \u0627\u0644\u0623\u0642\u0635\u0627\u0621 \u0644\u0636\u064a\u0641
|
||||
label.memory.mb=\u0627\u0644\u0630\u0627\u0643\u0631\u0629 ( \u0628\u0627\u0644\u0645\u064a\u062c\u0627\u0628\u0627\u064a\u0628\u062a)
|
||||
label.memory=\u0627\u0644\u0630\u0627\u0643\u0631\u0629
|
||||
label.menu.alerts=\u0627\u0644\u062a\u0646\u0628\u064a\u0647\u0627\u062a
|
||||
label.menu.all.accounts=\u062c\u0645\u064a\u0639 \u0627\u0644\u062d\u0633\u0627\u0628\u0627\u062a
|
||||
label.menu.all.instances=\u062c\u0645\u064a\u0639 \u0627\u0644\u062d\u0627\u0644\u0627\u062a
|
||||
label.menu.community.isos=\u0627\u0644\u062a\u0636\u0627\u0645\u0646 \u0627\u0644\u062f\u0648\u0644\u064a \u0627\u0644\u0645\u062c\u062a\u0645\u0639\u064a
|
||||
label.menu.community.templates=\u0642\u0648\u0627\u0644\u0628 \u0627\u0644\u0645\u062c\u062a\u0645\u0639
|
||||
label.menu.configuration=\u062a\u0631\u062a\u064a\u0628
|
||||
label.menu.dashboard=\u0644\u0648\u062d\u0629 \u0627\u0644\u0642\u064a\u0627\u062f\u0629
|
||||
label.menu.destroyed.instances=\u062d\u0627\u0644\u0627\u062a \u0627\u0644\u062a\u062f\u0645\u064a\u0631
|
||||
label.menu.disk.offerings=\u0639\u0631\u0648\u0636 \u0627\u0644\u0642\u0631\u0635
|
||||
label.menu.domains=\u0627\u0644\u0645\u062c\u0627\u0644\u0627\u062a
|
||||
label.menu.events=\u0623\u062d\u062f\u0627\u062b
|
||||
label.menu.featured.isos=\u0645\u0645\u064a\u0632\u0627\u062a \u0627\u0644\u062a\u0636\u0627\u0645\u0646 \u0627\u0644\u062f\u0648\u0644\u064a
|
||||
label.menu.featured.templates=\u0642\u0648\u0627\u0644\u0628 \u0645\u0645\u064a\u0632\u0629
|
||||
label.menu.global.settings=\u0627\u0644\u0625\u0639\u062f\u0627\u062f\u0627\u062a \u0627\u0644\u0639\u0645\u0648\u0645\u064a\u0629
|
||||
label.menu.instances=\u0627\u0644\u062d\u0627\u0644\u0627\u062a
|
||||
label.migrate.instance.to.host=\u0646\u0642\u0644 \u0627\u0644\u0642\u0627\u0644\u0628 \u0625\u0644\u0649 \u0645\u0636\u064a\u0641 \u0622\u062e\u0631
|
||||
label.migrate.instance.to.ps=\u0646\u0642\u0644 \u0627\u0644\u0642\u0627\u0644\u0628 \u0625\u0644\u0649 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0623\u0633\u0627\u0633\u064a\u0629
|
||||
label.migrate.to.host=\u0627\u0644\u062a\u062d\u0648\u0644 \u0625\u0644\u0649 \u0627\u0644\u0645\u0636\u064a\u0641
|
||||
label.migrate.to.storage=\u0627\u0644\u062a\u062d\u0648\u0644 \u0625\u0644\u0649 \u0627\u0644\u062a\u062e\u0632\u064a\u0646
|
||||
label.move.down.row=\u0627\u0644\u0627\u0646\u062a\u0642\u0627\u0644 \u0625\u0644\u0649 \u0627\u0644\u0623\u0633\u0641\u0644 \u0628\u0635\u0641 \u0648\u0627\u062d\u062f
|
||||
label.move.to.bottom=\u0627\u0644\u0627\u0646\u062a\u0642\u0627\u0644 \u0625\u0644\u0649 \u0627\u0644\u0623\u0633\u0641\u0644
|
||||
label.move.to.top=\u0627\u0646\u062a\u0642\u0627\u0644 \u0625\u0644\u0649 \u0623\u0639\u0644\u0649
|
||||
label.move.up.row=\u0627\u0644\u0627\u0646\u062a\u0642\u0627\u0644 \u0625\u0644\u0649 \u0627\u0644\u0623\u0639\u0644\u0649 \u0628\u0635\u0641 \u0648\u0627\u062d\u062f
|
||||
label.my.network=\u0634\u0628\u0643\u062a\u064a
|
||||
label.my.templates=\u0642\u0648\u0627\u0644\u0628\u064a
|
||||
label.network.ACLs=\u0634\u0628\u0643\u0629 ACLs
|
||||
label.network.ACL.total=\u0625\u062c\u0645\u0627\u0644 \u0634\u0628\u0643\u0629 ACL
|
||||
label.network.ACL=\u0634\u0628\u0643\u0629 ACL
|
||||
label.networks=\u0627\u0644\u0634\u0628\u0643\u0627\u062a
|
||||
label.new.project=\u0645\u0634\u0631\u0648\u0639 \u062c\u062f\u064a\u062f
|
||||
label.new=\u062c\u062f\u064a\u062f
|
||||
label.no.data=\u0644\u0627 \u064a\u0648\u062c\u062f \u0628\u064a\u0627\u0646\u0627\u062a \u0644\u0644\u0639\u0631\u0636
|
||||
label.no.thanks=\u0644\u0627\u061b \u0634\u0643\u0631\u0627\u064b
|
||||
label.notifications=\u0627\u0644\u062a\u0646\u0628\u064a\u0647\u0627\u062a
|
||||
label.ok=\u0645\u0648\u0627\u0641\u0642
|
||||
label.order=\u062a\u0631\u062a\u064a\u0628
|
||||
label.previous=\u0627\u0644\u0633\u0627\u0628\u0642
|
||||
label.private.Gateway=\u0645\u0646\u0641\u0630\\Gateway \u062e\u0627\u0635
|
||||
label.project.invite=\u062f\u0639\u0648\u0629 \u0625\u0644\u0649 \u0627\u0644\u0645\u0634\u0631\u0648\u0639
|
||||
label.project.name=\u0627\u0633\u0645 \u0627\u0644\u0645\u0634\u0631\u0648\u0639
|
||||
label.projects=\u0627\u0644\u0645\u0634\u0627\u0631\u064a\u0639
|
||||
label.project=\u0645\u0634\u0631\u0648\u0639
|
||||
label.project.view=\u0639\u0631\u0636 \u0627\u0644\u0645\u0634\u0631\u0648\u0639
|
||||
label.quickview=\u0646\u0638\u0631\u0629 \u0633\u0631\u064a\u0639\u0629
|
||||
label.reboot=\u0625\u0639\u0627\u062f\u0629 \u062a\u0634\u063a\u064a\u0644
|
||||
label.remind.later=\u0630\u0643\u0631\u0646\u064a \u0644\u0627\u062d\u0642\u0627\u064b
|
||||
label.remove.ACL=\u0625\u0632\u0627\u0644\u0629 ACL
|
||||
label.remove.static.route=\u0625\u0632\u0627\u0644\u0629 \u0627\u0644\u062a\u0648\u062c\u064a\u0647 \u062b\u0627\u0628\u062a
|
||||
label.remove.tier=\u0625\u0636\u0627\u0641\u0629 \u0637\u0628\u0642\u0629
|
||||
label.remove.vpc=\u0625\u0632\u0627\u0644\u0629 VPC
|
||||
label.reset.VPN.connection=\u0625\u0639\u0627\u062f\u0629 \u062a\u0639\u064a\u064a\u0646 \u0627\u062a\u0635\u0627\u0644 \u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0627\u0644\u0634\u062e\u0635\u064a\u0629
|
||||
label.restart.network=\u0625\u0639\u0627\u062f\u0629 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u0634\u0628\u0643\u0629
|
||||
label.restart.required=\u0645\u0637\u0644\u0648\u0628 \u0625\u0639\u0627\u062f\u0629 \u0627\u0644\u062a\u0634\u063a\u064a\u0644
|
||||
label.restart.vpc=\u0625\u0639\u062f\u0627\u0629 \u062a\u0634\u063a\u064a\u0644 VPC
|
||||
label.restore=\u0625\u0633\u062a\u0639\u0627\u062f\u0629
|
||||
label.review=\u0645\u0631\u0627\u062c\u0639\u0629
|
||||
label.revoke.project.invite=\u0625\u0644\u063a\u0627\u0621 \u0627\u0644\u062f\u0639\u0648\u0629
|
||||
label.s3.access_key=\u0645\u0641\u062a\u0627\u062d \u0627\u0644\u0648\u0635\u0648\u0644
|
||||
label.s3.bucket=\u062f\u0644\u0648
|
||||
label.s3.connection_timeout=\u0645\u0647\u0644\u0629 \u0627\u0644\u0627\u062a\u0635\u0627\u0644
|
||||
label.s3.endpoint=\u0646\u0642\u0637\u0629 \u0627\u0644\u0646\u0647\u0627\u064a\u0629
|
||||
label.s3.max_error_retry=\u0623\u0642\u0635\u0649 \u062e\u0637\u0623 \u0641\u064a \u0625\u0639\u0627\u062f\u0629 \u0627\u0644\u0645\u062d\u0627\u0648\u0644\u0629
|
||||
label.s3.secret_key=\u0627\u0644\u0645\u0641\u062a\u0627\u062d \u0627\u0644\u0633\u0631\u064a
|
||||
label.s3.socket_timeout=\u0645\u0647\u0644\u0629 \u0627\u0644\u0645\u0642\u0628\u0633
|
||||
label.s3.use_https=\u0627\u0633\u062a\u062e\u062f\u0645 HTTPS
|
||||
label.scope=\u0627\u0644\u0645\u062c\u0627\u0644
|
||||
label.search=\u0628\u062d\u062b
|
||||
label.secret.key=\u0627\u0644\u0645\u0641\u062a\u0627\u062d \u0627\u0644\u0633\u0631\u064a
|
||||
label.select.a.template=\u0627\u062e\u062a\u0631 \u0642\u0627\u0644\u0628
|
||||
label.select.project=\u062d\u062f\u062f \u0627\u0644\u0645\u0634\u0631\u0648\u0639
|
||||
label.select.tier=\u062d\u062f\u062f \u0637\u0628\u0642\u0629
|
||||
label.select-view=\u062d\u062f\u062f \u0637\u0631\u064a\u0642\u0629 \u0627\u0644\u0639\u0631\u0636
|
||||
label.service.capabilities=\u0642\u062f\u0631\u0627\u062a \u0627\u0644\u062e\u062f\u0645\u0629
|
||||
label.setup=\u0627\u0644\u062a\u062b\u0628\u064a\u062a
|
||||
label.site.to.site.VPN=\u0645\u0648\u0642\u0639 \u0625\u0644\u0649 \u0645\u0648\u0642\u0639-\u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0634\u062e\u0635\u064a\u0629 \u0627\u0644\u0638\u0627\u0647\u0631\u064a\u0629 VPN
|
||||
label.source=\u0645\u0635\u062f\u0631
|
||||
label.specify.IP.ranges=\u062a\u062d\u062f\u064a\u062f \u0646\u0637\u0627\u0642\u0627\u062a IP
|
||||
label.sticky.tablesize=\u062d\u062c\u0645 \u0627\u0644\u062c\u062f\u0648\u0644
|
||||
label.stop=\u062a\u0648\u0642\u0641
|
||||
label.super.cidr.for.guest.networks=CIDR \u0645\u0645\u062a\u0627\u0632 \u0644\u0634\u0628\u0643\u0627\u062a \u0627\u0644\u0636\u064a\u0641.
|
||||
label.supported.services=\t\u0627\u0644\u062e\u062f\u0645\u0627\u062a \u0627\u0644\u0645\u062f\u0639\u0648\u0645\u0629
|
||||
label.suspend.project=\u0625\u064a\u0642\u0627\u0641 \u0627\u0644\u0645\u0634\u0631\u0648\u0639
|
||||
label.tier.details=\u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u0637\u0628\u0642\u0629
|
||||
label.tier=\u0637\u0628\u0642\u0629
|
||||
label.upload=\u0631\u0641\u0639
|
||||
label.view.all=\u0639\u0631\u0636 \u0627\u0644\u0643\u0644
|
||||
label.viewing=\u0639\u0631\u0636
|
||||
label.view=\u0639\u0631\u0636
|
||||
label.vm.destroy=\u0647\u062f\u0645
|
||||
label.vm.reboot=\u0625\u0639\u0627\u062f\u0629 \u062a\u0634\u063a\u064a\u0644
|
||||
label.VMs.in.tier=\u0627\u0644\u0623\u062c\u0647\u0632\u0629 \u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0641\u064a \u0637\u0628\u0642\u0629
|
||||
label.vm.stop=\u062a\u0648\u0642\u0641
|
||||
label.volume.limits=\u062d\u062f\u0648\u062f \u0627\u0644\u0645\u0646\u0637\u0642\u0629
|
||||
label.vpc.id=\u0647\u0648\u064a\u0629 \u062e\u0627\u0635\u0629 \u0628\u0633\u062d\u0627\u0628\u0629 \u0625\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u062e\u0627\u0635\u0629
|
||||
label.VPC.router.details=\u062a\u0641\u0627\u0635\u064a\u0644 \u062c\u0647\u0627\u0632 \u0627\u0644\u062a\u0648\u062c\u064a\u0647 VPC
|
||||
label.vpc=\u0633\u062d\u0627\u0628\u0629 \u0625\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u062e\u0627\u0635\u0629 VPC
|
||||
label.VPN.connection=\u0625\u062a\u0635\u0627\u0644 \u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0627\u0644\u0634\u062e\u0635\u064a\u0629
|
||||
label.vpn.customer.gateway=\u0628\u0648\u0627\u0628\u0629 \u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0627\u0644\u0634\u062e\u0635\u064a\u0629 \u0644\u0644\u0639\u0645\u064a\u0644
|
||||
label.VPN.customer.gateway=\u0628\u0648\u0627\u0628\u0629 \u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0627\u0644\u0634\u062e\u0635\u064a\u0629 \u0644\u0644\u0639\u0645\u064a\u0644
|
||||
label.VPN.gateway=\u0628\u0648\u0627\u0628\u0629 \u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0627\u0644\u0634\u062e\u0635\u064a\u0629
|
||||
label.waiting=\u0642\u064a\u062f \u0627\u0644\u0625\u0646\u062a\u0638\u0627\u0631
|
||||
label.warn=\u062a\u062d\u0630\u064a\u0631
|
||||
label.wednesday=\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621
|
||||
label.weekly=\u0625\u0633\u0628\u0648\u0639\u064a
|
||||
label.welcome.cloud.console=\u0645\u0631\u062d\u0628\u0627 \u0628\u0643\u0645 \u0641\u064a \u0648\u062d\u062f\u0629 \u0627\u0644\u062a\u062d\u0643\u0645 \u0627\u0644\u0625\u0631\u0627\u062f\u064a\u0629
|
||||
label.welcome=\u0645\u0631\u062d\u0628\u0627
|
||||
label.yes=\u0646\u0639\u0645
|
||||
label.zone.details=\u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u0645\u0646\u0637\u0642\u0629
|
||||
label.zone.name=\u0627\u0633\u0645 \u0627\u0644\u0645\u0646\u0637\u0642\u0629
|
||||
label.zone.step.1.title=\u0627\u0644\u062e\u0637\u0648\u0629 1 \\\: \u0639\u0644\u0649 .<\u0642\u0648\u064a> \u0627\u062e\u062a\u0631 \u0634\u0628\u0643\u0629 </ \u0642\u0648\u064a>
|
||||
label.zone.step.2.title=\u0627\u0644\u062e\u0637\u0648\u0629 2 \\\: <\u0642\u0648\u064a> \u0625\u0636\u0627\u0641\u0629 \u0645\u0646\u0637\u0642\u0629 </ \u0642\u0648\u064a>
|
||||
label.zone.step.3.title=\u0627\u0644\u062e\u0637\u0648\u0629 3 \\\: \u0639\u0644\u0649 <\u0642\u0648\u064a> \u0625\u0636\u0627\u0641\u0629 \u0628\u0648\u062f </ \u0642\u0648\u064a>
|
||||
label.zone.step.4.title=\u0627\u0644\u062e\u0637\u0648\u0629 4 \\\: <\u0642\u0648\u064a> \u0625\u0636\u0627\u0641\u0629 \u0645\u062c\u0645\u0648\u0639\u0629 IP <\\\u0642\u0648\u064a>
|
||||
label.zone.wide=\u0645\u0646\u0637\u0642\u0629 \u0648\u0627\u0633\u0639\u0629
|
||||
label.zoneWizard.trafficType.guest=\u0627\u0644\u0636\u064a\u0641 \\\: \u0627\u0644\u062d\u0631\u0643\u0629 \u0628\u064a\u0646 \u0627\u0644\u0623\u062c\u0647\u0632\u0629 \u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0644\u0644\u0645\u0633\u062a\u062e\u062f\u0645 \u0627\u0644\u0646\u0647\u0627\u0626\u064a.
|
||||
label.zoneWizard.trafficType.public=\u0627\u0644\u0639\u0627\u0645\u0629 \\\: \u0627\u0644\u0645\u0631\u0648\u0631 \u0628\u064a\u0646 \u0627\u0644\u0625\u0646\u062a\u0631\u0646\u062a \u0648\u0627\u0644\u0623\u062c\u0647\u0632\u0629 \u0627\u0644\u0638\u0627\u0647\u0631\u064a\u0629 \u0641\u064a \u0627\u0644\u0633\u062d\u0627\u0628\u0629.
|
||||
label.zoneWizard.trafficType.storage=\u0627\u0644\u062a\u062e\u0632\u064a\u0646 \\\: \u0627\u0644\u0645\u0631\u0648\u0631 \u0628\u064a\u0646 \u0645\u0644\u0642\u0645\u0627\u062a \u0627\u0644\u062a\u062e\u0632\u064a\u0646 \u0627\u0644\u0627\u0628\u062a\u062f\u0627\u0626\u064a\u0629 \u0648\u0627\u0644\u062b\u0627\u0646\u0648\u064a\u0629\u060c \u0645\u062b\u0644 \u0642\u0648\u0627\u0644\u0628 VM \u0648\u0627\u0644\u0644\u0642\u0637\u0627\u062a
|
||||
message.acquire.new.ip.vpc=\u064a\u0631\u062c\u0649 \u0627\u0644\u062a\u0623\u0643\u064a\u062f \u0628\u0623\u0646\u0643 \u062a\u0631\u063a\u0628 \u0641\u064a \u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0628\u0648\u0631\u062a\u0648\u0643\u0648\u0644 \u0625\u0646\u062a\u0631\u0646\u062a \u062c\u062f\u064a\u062f \u0644\u0647\u0630\u0627 \u0627\u0644\u062d\u0627\u0633\u0648\u0628 \u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a.
|
||||
message.action.delete.system.service.offering=\u0627\u0644\u0631\u062c\u0627\u0621 \u062a\u0623\u0643\u064a\u062f \u0631\u063a\u0628\u062a\u0643 \u0641\u064a \u062d\u0630\u0641 \u062e\u062f\u0645\u0629 \u0627\u0644\u0646\u0638\u0627\u0645 \u0627\u0644\u0645\u0642\u062f\u0645\u0629.
|
||||
message.action.disable.physical.network=\u0641\u0636\u0644\u0627 \u060c \u0623\u0643\u0651\u062f \u0623\u0646\u0643 \u062a\u0631\u064a\u062f \u062a\u0639\u0637\u064a\u0644 \u0647\u0630\u0647 \u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0641\u064a\u0632\u064a\u0627\u0626\u064a\u0629
|
||||
message.action.enable.physical.network=\u0641\u0636\u0644\u0627 \u060c \u0623\u0643\u0651\u062f \u0623\u0646\u0643 \u062a\u0631\u064a\u062f \u062a\u0645\u0643\u064a\u0646 \u0647\u0630\u0647 \u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0641\u064a\u0632\u064a\u0627\u0626\u064a\u0629
|
||||
message.activate.project=\u0647\u0644 \u0623\u0646\u062a \u0645\u062a\u0623\u0643\u062f \u0645\u0646 \u0623\u0646\u0643 \u062a\u0631\u064a\u062f \u062a\u0641\u0639\u064a\u0644 \u0647\u0630\u0627 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 \u061f
|
||||
message.add.domain=\u064a\u0631\u062c\u0649 \u062a\u062d\u062f\u064a\u062f \u0627\u0644\u0645\u062c\u0627\u0644 \u0627\u0644\u0641\u0631\u0639\u064a \u0627\u0644\u0630\u064a \u062a\u0631\u064a\u062f \u0625\u0646\u0634\u0627\u0621 \u062a\u062d\u062a \u0647\u0630\u0627 \u0627\u0644\u0646\u0637\u0627\u0642
|
||||
message.add.new.gateway.to.vpc=\u0641\u0636\u0644\u0627 \u062d\u062f\u062f \u0627\u0644\u0645\u0639\u0644\u0648\u0645\u0627\u062a \u0644\u0625\u0636\u0627\u0641\u0629 \u0628\u0648\u0627\u0628\u0629 gateway \u0644\u0647\u0630\u0647 \u0627\u0644\u0633\u062d\u0627\u0628\u0629 \u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0627\u0644\u062e\u0627\u0635\u0629 VPC
|
||||
message.add.system.service.offering=\u0627\u0644\u0631\u062c\u0627\u0621 \u062a\u0639\u0628\u0626\u0629 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u062a\u0627\u0644\u064a\u0629 \u0644\u0625\u0636\u0627\u0641\u0629 \u0646\u0638\u0627\u0645 \u062c\u062f\u064a\u062f \u0644\u0637\u0631\u062d
|
||||
message.add.VPN.gateway=\u064a\u0631\u062c\u0649 \u062a\u0623\u0643\u064a\u062f \u0631\u063a\u0628\u062a\u0643 \u0641\u064a \u0625\u0636\u0627\u0641\u0629 \u0628\u0648\u0627\u0628\u0629 \u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0627\u0644\u0634\u062e\u0635\u064a\u0629 VPN
|
||||
message.after.enable.s3=\u062a\u0645 \u0625\u0639\u062f\u0627\u062f \u0627\u0644\u062a\u062e\u0632\u064a\u0646 S3 \u0644\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u062b\u0627\u0646\u0648\u064a\u0629. \u062a\u0646\u0648\u064a\u0647 \: \u0639\u0646\u062f \u0645\u063a\u0627\u062f\u0631\u062a\u0643 \u0644\u0647\u0630\u0647 \u0627\u0644\u0635\u0641\u062d\u0629 \u0644\u0646 \u064a\u0643\u0648\u0646 \u0628\u0625\u0645\u0643\u0627\u0646\u0643 \u0625\u0639\u0627\u062f\u0629 \u0636\u0628\u0637 S3 \u0645\u0631\u0629 \u0623\u062e\u0631\u0649.
|
||||
message.confirm.join.project=\u0646\u0631\u062c\u0648 \u062a\u0623\u0643\u064a\u062f \u0631\u063a\u0628\u062a\u0643 \u0641\u064a \u0627\u0644\u0645\u0634\u0627\u0631\u0643\u0629 \u0641\u064a \u0627\u0644\u0645\u0634\u0631\u0648\u0639
|
||||
message.decline.invitation=\u0647\u0644 \u0623\u0646\u062a \u0645\u062a\u0623\u0643\u062f \u0645\u0646 \u0623\u0646\u0643 \u062a\u0631\u064a\u062f \u0631\u0641\u0636 \u0647\u0630\u0647 \u0627\u0644\u062f\u0639\u0648\u0629 \u0627\u0644\u0645\u0634\u0631\u0648\u0639\u061f
|
||||
message.delete.gateway=\u064a\u0631\u062c\u0649 \u062a\u0623\u0643\u064a\u062f \u0631\u063a\u0628\u062a\u0643 \u0641\u064a \u062d\u0630\u0641 \u0627\u0644\u0628\u0648\u0627\u0628\u0629
|
||||
message.delete.project=\u0647\u0644 \u0623\u0646\u062a \u0645\u062a\u0623\u0643\u062f \u0645\u0646 \u0623\u0646\u0643 \u062a\u0631\u064a\u062f \u062d\u0630\u0641 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 \u061f
|
||||
message.delete.user=\u0627\u0644\u0631\u062c\u0627\u0621 \u0627\u0644\u062a\u0623\u0643\u064a\u062f \u0628\u0623\u0646\u0643 \u062a\u0631\u063a\u0628 \u0628\u062d\u0630\u0641 \u0647\u0630\u0627 \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645
|
||||
message.delete.VPN.connection=\u064a\u0631\u062c\u0649 \u062a\u0623\u0643\u064a\u062f \u0631\u063a\u0628\u062a\u0643 \u0641\u064a \u062d\u0630\u0641 \u0628\u0648\u0627\u0628\u0629 \u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0627\u0644\u0634\u062e\u0635\u064a\u0629 VPN
|
||||
message.delete.VPN.gateway=\u064a\u0631\u062c\u0649 \u062a\u0623\u0643\u064a\u062f \u0631\u063a\u0628\u062a\u0643 \u0641\u064a \u062d\u0630\u0641 \u0628\u0648\u0627\u0628\u0629 \u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0627\u0644\u0634\u062e\u0635\u064a\u0629
|
||||
message.detach.disk=\u0647\u0644 \u0623\u0646\u062a \u0645\u062a\u0623\u0643\u062f \u0645\u0646 \u0623\u0646\u0643 \u062a\u0631\u064a\u062f \u0641\u0635\u0644 \u0647\u0630\u0627 \u0627\u0644\u0642\u0631\u0635\u061f
|
||||
message.disable.user=\u0627\u0644\u0631\u062c\u0627\u0621 \u0627\u0644\u062a\u0623\u0643\u064a\u062f \u0628\u0623\u0646\u0643 \u062a\u0631\u063a\u0628 \u0628\u062a\u0639\u0637\u064a\u0644 \u0647\u0630\u0627 \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645
|
||||
message.enable.account=\u0627\u0644\u0631\u062c\u0627\u0621 \u062a\u0623\u0643\u064a\u062f \u0623\u0646\u0643 \u062a\u0631\u064a\u062f \u062a\u0645\u0643\u064a\u0646 \u0647\u0630\u0627 \u0627\u0644\u062d\u0633\u0627\u0628.
|
||||
message.enable.user=\u0627\u0644\u0631\u062c\u0627\u0621 \u0627\u0644\u062a\u0623\u0643\u064a\u062f \u0628\u0623\u0646\u0643 \u062a\u0631\u063a\u0628 \u0628\u062a\u0641\u0639\u064a\u0644 \u0647\u0630\u0627 \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645
|
||||
message.generate.keys=\u0627\u0644\u0631\u062c\u0627\u0621 \u0627\u0644\u062a\u0623\u0643\u064a\u062f \u0628\u0623\u0646\u0643 \u062a\u0631\u063a\u0628 \u0628\u0625\u0646\u0634\u0627\u0621 \u0645\u0641\u0627\u062a\u064a\u062d \u062c\u062f\u064a\u062f\u0629 \u0644\u0647\u0630\u0627 \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645
|
||||
message.instanceWizard.noTemplates=\u0644\u064a\u0633 \u0644\u062f\u064a\u0643 \u0623\u064a \u0642\u0648\u0627\u0644\u0628 \u0645\u062a\u0627\u062d\u0629\u061b \u064a\u0631\u062c\u0649 \u0625\u0636\u0627\u0641\u0629 \u0642\u0627\u0644\u0628 \u0645\u062a\u0648\u0627\u0641\u0642\u060c \u0648\u0625\u0639\u0627\u062f\u0629 \u0625\u0637\u0644\u0627\u0642 \u0627\u0644\u0645\u0639\u0627\u0644\u062c .
|
||||
message.join.project=\u0644\u0642\u062f \u0627\u0646\u0636\u0645\u0645\u062a \u0625\u0644\u0649 \u0627\u0644\u0645\u0634\u0631\u0648\u0639. \u064a\u0631\u062c\u0649 \u0627\u0644\u062a\u0628\u062f\u064a\u0644 \u0625\u0644\u0649 \u0637\u0631\u064a\u0642\u0629 \u0639\u0631\u0636 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 \u0644\u0631\u0624\u064a\u0629 \u0627\u0644\u0645\u0634\u0631\u0648\u0639
|
||||
message.migrate.instance.to.host=\u064a\u0631\u062c\u0649 \u062a\u0623\u0643\u064a\u062f \u0623\u0646\u0643 \u062a\u0631\u064a\u062f \u0646\u0642\u0644 \u0627\u0644\u0642\u0627\u0644\u0628 \u0625\u0644\u0649 \u0645\u0636\u064a\u0641 \u0622\u062e\u0631.
|
||||
message.migrate.instance.to.ps=\u064a\u0631\u062c\u0649 \u062a\u0623\u0643\u064a\u062f \u0623\u0646\u0643 \u062a\u0631\u064a\u062f \u0646\u0642\u0644 \u0627\u0644\u0642\u0627\u0644\u0628 \u0625\u0644\u0649 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0623\u0633\u0627\u0633\u064a\u0629.
|
||||
message.no.projects.adminOnly=\u0644\u064a\u0633 \u0644\u062f\u064a\u0643 \u0623\u064a \u0645\u0634\u0627\u0631\u064a\u0639. <br/> \u0627\u0644\u0631\u062c\u0627\u0621 \u0637\u0644\u0628 \u0645\u0646 \u0627\u0644\u0645\u0633\u0624\u0648\u0644 \u0625\u0646\u0634\u0627\u0621 \u0645\u0634\u0631\u0648\u0639 \u062c\u062f\u064a\u062f.
|
||||
message.no.projects=\u0644\u064a\u0633 \u0644\u062f\u064a\u0643 \u0623\u064a \u0645\u0634\u0627\u0631\u064a\u0639. <br/> \u064a\u0631\u062c\u0649 \u0625\u0646\u0634\u0627\u0621 \u0645\u0634\u0631\u0648\u0639 \u062c\u062f\u064a\u062f \u0645\u0646 \u0642\u0633\u0645 \u0627\u0644\u0645\u0634\u0627\u0631\u064a\u0639.
|
||||
message.pending.projects.1=\u0644\u062f\u064a\u0643 \u062f\u0639\u0648\u0627\u062a \u0645\u0634\u0631\u0648\u0639 \u0645\u0639\u0644\u0642\u0629/\:
|
||||
message.pending.projects.2=\u0644\u0639\u0631\u0636\u060c \u0627\u0644\u0631\u062c\u0627\u0621 \u0627\u0644\u0630\u0647\u0627\u0628 \u0625\u0644\u0649 \u0642\u0633\u0645 \u0627\u0644\u0645\u0634\u0627\u0631\u064a\u0639\u060c \u062b\u0645 \u062d\u062f\u062f \u062f\u0639\u0648\u0627\u062a \u0645\u0646 \u0627\u0644\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0645\u0646\u0633\u062f\u0644\u0629.
|
||||
message.please.select.networks=\u0627\u0644\u0631\u062c\u0627\u0621 \u0627\u062e\u062a\u064a\u0627\u0631 \u0627\u0644\u0634\u0628\u0643\u0627\u062a \u0644\u062c\u0647\u0627\u0632\u0643 \u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a
|
||||
message.project.invite.sent=\u062a\u0645 \u0625\u0631\u0633\u0627\u0644 \u0627\u0644\u062f\u0639\u0648\u0629 ; \u0633\u064a\u062a\u0645 \u0625\u0636\u0627\u0641\u062a\u0647\u0645 \u0625\u0644\u0649 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 \u0628\u0645\u062c\u0631\u062f \u0642\u0628\u0648\u0644 \u0627\u0644\u062f\u0639\u0648\u0629
|
||||
message.remove.vpc=\u064a\u0631\u062c\u0649 \u062a\u0623\u0643\u064a\u062f \u0631\u063a\u0628\u062a\u0643 \u0641\u064a \u062d\u0630\u0641 \u0627\u0644\u0640VPC
|
||||
message.reset.password.warning.notPasswordEnabled=\u0627\u0644\u0642\u0627\u0644\u0628 \u0644\u0647\u0630\u0627 \u0627\u0644\u0646\u0645\u0648\u0630\u062c \u062a\u0645 \u0627\u0646\u0634\u0627\u0626\u0647 \u0645\u0646 \u062f\u0648\u0646 \u0643\u0644\u0645\u0629 \u0645\u0631\u0648\u0631 \u0645\u0645\u0643\u0646\u0629
|
||||
message.reset.password.warning.notStopped=\u064a\u062c\u0628 \u0625\u064a\u0642\u0627\u0641 \u0627\u0644\u0646\u0645\u0648\u0630\u062c \u0627\u0644\u062e\u0627\u0635 \u0628\u0643 \u0642\u0628\u0644 \u0645\u062d\u0627\u0648\u0644\u0629 \u062a\u063a\u064a\u064a\u0631 \u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u0631\u0648\u0631 \u0627\u0644\u062d\u0627\u0644\u064a\u0629
|
||||
message.reset.VPN.connection=\u064a\u0631\u062c\u0649 \u062a\u0623\u0643\u064a\u062f \u0623\u0646\u0643 \u062a\u0631\u064a\u062f \u0625\u0639\u0627\u062f\u0629-\u0636\u0628\u0637 \u0625\u062a\u0635\u0627\u0644 \u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u0627\u0644\u0634\u062e\u0635\u064a\u0629 VPN
|
||||
message.restart.vpc=\u064a\u0631\u062c\u0649 \u062a\u0623\u0643\u064a\u062f \u0631\u063a\u0628\u062a\u0643 \u0641\u064a \u0625\u0639\u0627\u062f\u0629 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u0640VPN
|
||||
message.select.template=\u0627\u0644\u0631\u062c\u0627\u0621 \u0627\u062e\u062a\u064a\u0627\u0631 \u0642\u0627\u0644\u0628 \u0644\u0645\u062b\u0627\u0644\u0643 \u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a \u0627\u0644\u062c\u062f\u064a\u062f
|
||||
message.step.2.desc=
|
||||
message.step.3.desc=
|
||||
message.suspend.project=\u0647\u0644 \u0623\u0646\u062a \u0645\u062a\u0623\u0643\u062f \u0645\u0646 \u0623\u0646\u0643 \u062a\u0631\u064a\u062f \u0625\u064a\u0642\u0627\u0641 \u0647\u0630\u0627 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 \u061f
|
||||
message.update.resource.count=\u0627\u0644\u0631\u062c\u0627\u0621 \u0627\u0644\u062a\u0623\u0643\u064a\u062f \u0628\u0623\u0646\u0643 \u062a\u0631\u063a\u0628 \u0628\u062a\u062d\u062f\u064a\u062b \u0645\u0635\u0627\u062f\u0631 \u0627\u0644\u062d\u0633\u0627\u0628\u0627\u062a \u0644\u0647\u0630\u0627 \u0627\u0644\u062d\u0633\u0627\u0628
|
||||
message.vm.review.launch=\u064a\u0631\u062c\u0649 \u0645\u0631\u0627\u062c\u0639\u0629 \u0627\u0644\u0645\u0639\u0644\u0648\u0645\u0627\u062a \u0627\u0644\u062a\u0627\u0644\u064a\u0629 \u0648\u062a\u0623\u0643\u062f \u0623\u0646 \u0645\u062b\u0627\u0644\u0643 \u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a \u0635\u062d\u064a\u062d \u0642\u0628\u0644 \u0627\u0644\u0625\u0646\u0637\u0644\u0627\u0642
|
||||
message.zoneWizard.enable.local.storage=\u062a\u062d\u0630\u064a\u0631\\\: \u0625\u0630\u0627 \u0642\u0645\u062a \u0628\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0645\u062d\u0644\u064a\u0629 \u0644\u0647\u0630\u0627 \u0627\u0644\u0646\u0637\u0627\u0642 \u064a\u062c\u0628 \u0639\u0644\u064a\u0643 \u0639\u0645\u0644 \u0627\u0644\u0622\u062a\u064a \u060c \u0625\u0639\u062a\u0645\u0627\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0645\u0643\u0627\u0646 \u0627\u0644\u0630\u064a \u062a\u0631\u063a\u0628 \u0623\u0646 \u064a\u0646\u0637\u0644\u0642 \u0645\u0646\u0647 \u0646\u0638\u0627\u0645\u0643 \u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a \\\: </br><br/> 1.\u0625\u0630\u0627 \u0643\u0627\u0646 \u0646\u0638\u0627\u0645\u0643 \u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a \u064a\u062d\u062a\u0627\u062c \u0625\u0644\u0649 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u0625\u0628\u062a\u062f\u0627\u0626\u064a\u0629
|
||||
notification.reboot.instance=\u0625\u0639\u0627\u062f\u0629 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u0646\u0645\u0648\u0630\u062c
|
||||
notification.start.instance=\u0628\u062f\u0621 \u0627\u0644\u0646\u0645\u0648\u0630\u062c
|
||||
notification.stop.instance=\u0625\u064a\u0642\u0627\u0641 \u0627\u0644\u0646\u0645\u0648\u0630\u062c
|
||||
state.Accepted=\u062a\u0645 \u0627\u0644\u0642\u0628\u0648\u0644
|
||||
state.Active=\u0646\u0634\u0637
|
||||
state.Allocated=\u062a\u062e\u0635\u064a\u0635
|
||||
state.Completed=\u062a\u0645 \u0627\u0644\u0627\u0643\u0645\u0627\u0644
|
||||
state.Creating=\u0625\u0646\u0634\u0627\u0621
|
||||
state.Declined=\u062a\u0645 \u0627\u0644\u0631\u0641\u0636
|
||||
state.Destroyed=\u062f\u0645\u0631
|
||||
state.enabled=\u062a\u0645\u0643\u064a\u0646
|
||||
state.Enabled=\u062a\u0645\u0643\u064a\u0646
|
||||
state.Error=\u062e\u0637\u0623
|
||||
state.Expunging=\u0645\u062d\u0648
|
||||
state.Pending=\u0641\u064a \u0627\u0644\u0627\u0646\u062a\u0638\u0627\u0631
|
||||
state.ready=\u062c\u0627\u0647\u0632
|
||||
state.Ready=\u062c\u0627\u0647\u0632
|
||||
state.Stopped=\u062a\u0648\u0642\u0641
|
||||
state.Suspended=\u062a\u0645 \u0627\u0644\u0625\u064a\u0642\u0627\u0641
|
||||
ui.listView.filters.all=\u0627\u0644\u0643\u0644
|
||||
|
|
@ -0,0 +1,307 @@
|
|||
# Licensed to the Apache Software Foundation (ASF) under one
|
||||
# or more contributor license agreements. See the NOTICE file
|
||||
# distributed with this work for additional information
|
||||
# regarding copyright ownership. The ASF licenses this file
|
||||
# to you under the Apache License, Version 2.0 (the
|
||||
# "License"); you may not use this file except in compliance
|
||||
# with the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing,
|
||||
# software distributed under the License is distributed on an
|
||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
# KIND, either express or implied. See the License for the
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
|
||||
confirm.enable.swift=Si us plau ompliu la seg\u00fcent informaci\u00f3 per habilitar el suport per a Swift
|
||||
error.installWizard.message=Quelcom ha fallat, vost\u00e8 pot tornar enrere i corregir els errors detalls suggerime
|
||||
error.password.not.match=Els camps de contrasenya no coincideixen
|
||||
extractable=Es pot extreure
|
||||
inline=En l\u00ednia
|
||||
label.accept.project.invitation=Accpetar invitaci\u00f3 al projecte
|
||||
label.action.edit.host=Editar Host
|
||||
label.action.migrate.router=Migrar router
|
||||
label.action.migrate.router.processing=Migrant router...
|
||||
label.action.migrate.systemvm=Migrar MV de Sistema
|
||||
label.action.migrate.systemvm.processing=Migrant MV de Sistema...
|
||||
label.activate.project=Activar projecte
|
||||
label.add.accounts=Afegir comptes
|
||||
label.add.accounts.to=Afegir comptes a
|
||||
label.add.account.to.project=Afegir compte al projecte
|
||||
label.add.by=Afegir per
|
||||
label.add.egress.rule=Afegir regla de sortida
|
||||
label.add.new.F5=Afegir nou F5
|
||||
label.add.new.NetScaler=Afegir un nou NetScaler
|
||||
label.add.new.SRX=Afegir nou SRX
|
||||
label.add.physical.network=Afegir xarxa f\u00edsica
|
||||
label.add.rule=Afegir regla
|
||||
label.add.static.nat.rule=Afegir regla de NAT est\u00e0tic
|
||||
label.add.to.group=Afegir a grup
|
||||
label.add.vm=Afegir MV
|
||||
label.add.vms=Afegir MVs
|
||||
label.add.vms.to.lb=Afegir MV(s) a la regla de balanceig de c\u00e0rrega
|
||||
label.add.vpn.user=Afegir usuari VPN
|
||||
label.agree=D\\'acord
|
||||
label.apply=Aplicar
|
||||
label.bandwidth=Ample de banda
|
||||
label.broadcast.domain.range=Rang del domini de broadcast
|
||||
label.capacity=Capacitat
|
||||
label.change.service.offering=Canvia oferta de servei
|
||||
label.change.value=Canviar valor
|
||||
label.clear.list=Esborra llista
|
||||
label.community=Comunitat
|
||||
label.compute.and.storage=Computaci\u00f3 i Emmagatzematge
|
||||
label.compute=Computaci\u00f3
|
||||
label.configuration=Configuraci\u00f3
|
||||
label.configure=Configurar
|
||||
label.confirm.password=Confirmar contrasenya
|
||||
label.congratulations=Enorabona\!
|
||||
label.continue.basic.install=Continueu amb la instal\u00b7laci\u00f3 b\u00e0sica
|
||||
label.continue=Continuar
|
||||
label.corrections.saved=Correccions guardades
|
||||
label.create.project=Crear projecte
|
||||
label.decline.invitation=Declinar invitaci\u00f3
|
||||
label.dedicated=Dedicat
|
||||
label.default=Per defecte
|
||||
label.delete.F5=Esborrar F5
|
||||
label.delete.NetScaler=Esborrar NetScaler
|
||||
label.delete.project=Esborrar projecte
|
||||
label.delete.SRX=Esborar SRX
|
||||
label.delete.vpn.user=Esborrar usuari VPN
|
||||
label.destination.physical.network.id=ID de xarxa f\u00edsica de dest\u00ed
|
||||
label.destination.zone=Zona de dest\u00ed
|
||||
label.destroy.router=Destruir router
|
||||
label.dhcp=DHCP
|
||||
label.disabled=Deshabilitat
|
||||
label.disable.provider=Deshabilitar prove\u00efdor
|
||||
label.disable.vpn=Deshabilitar VPN
|
||||
label.drag.new.position=Arrosegar a la nova posici\u00f3
|
||||
label.edit.project.details=Editar detalls del projecte
|
||||
label.egress.rule=Regla de sortida
|
||||
label.elastic=El\u00e0stic
|
||||
label.enable.provider=Habilitar prove\u00efdor
|
||||
label.enable.swift=Habilitar Swift
|
||||
label.enable.vpn=Habilitar VPN
|
||||
label.end.vlan=VLAN fi
|
||||
label.f5=F5
|
||||
label.full.path=Cam\u00ed sencer
|
||||
label.guest.end.ip=Fi d\\'IP per a MV
|
||||
label.guest=MV
|
||||
label.guest.start.ip=Inici d\\'IP per a MV
|
||||
label.guest.traffic=Tr\u00e0fic de MV
|
||||
label.hints=Pistes
|
||||
label.installWizard.addClusterIntro.subtitle=Que \u00e9s un cluster?
|
||||
label.installWizard.addClusterIntro.title=Anem a afegir un cluster
|
||||
label.installWizard.addHostIntro.subtitle=Qu\u00e8 \u00e9s un amfitri\u00f3 "host"?
|
||||
label.installWizard.addHostIntro.title=Anem a afegir un amfitri\u00f3
|
||||
label.installWizard.addPodIntro.subtitle=Que \u00e9s un pod?
|
||||
label.installWizard.addPodIntro.title=Anem a afegir un pod
|
||||
label.installWizard.addPrimaryStorageIntro.subtitle=Qu\u00e8 \u00e9s l\\'emmagatzematge primari?
|
||||
label.installWizard.addPrimaryStorageIntro.title=Anem a afegir emmagatzematge primari
|
||||
label.installWizard.addSecondaryStorageIntro.subtitle=Qu\u00e8 \u00e9s el emmagatzematge secundari?
|
||||
label.installWizard.addSecondaryStorageIntro.title=Anem a afegir emmagatzematge secundari
|
||||
label.installWizard.addZoneIntro.subtitle=Que \u00e9s una zona?
|
||||
label.installWizard.addZoneIntro.title=Anem a afegir una zona
|
||||
label.installWizard.addZone.title=Afegir zona
|
||||
label.installWizard.click.launch=Feu clic al bot\u00f3 d\\'inici.
|
||||
label.installWizard.subtitle=Auqesta guia us ajudar\u00e0 a configurar la vostra instal\u00b7laci\u00f3 de CloudStack&\#8482
|
||||
label.installWizard.title=Hola i benvigut a CloudStack&\#8482
|
||||
label.introduction.to.cloudstack=Introducci\u00f3 a la CloudStack&\#8482
|
||||
label.invitations=Invitacions
|
||||
label.invite=Convidar
|
||||
label.invited.accounts=Comptes convidades
|
||||
label.invite.to=Convidar a
|
||||
label.ip.ranges=Rangs d\\'IPs
|
||||
label.item.listing=Llista d\\'articles
|
||||
label.keyboard.type=Tipus de teclat
|
||||
label.key=Clau
|
||||
label.launch=Iniciar
|
||||
label.launch.vm=Arrencar MV
|
||||
label.load.balancing=Balanceig de c\u00e0rrega
|
||||
label.load.balancing.policies=Pol\u00b7l\u00edtiques de balanceig de c\u00e0rrega
|
||||
label.local.storage=Emmagatzemament local
|
||||
label.make.project.owner=Feu la compta propiet\u00e0ria del projecte
|
||||
label.management=Administraci\u00f3
|
||||
label.manage.resources=Administrar Recursos
|
||||
label.max.public.ips=Max. IP p\u00fabliques
|
||||
label.max.snapshots=Max. instant\u00e0nies
|
||||
label.max.templates=Max. plantilles
|
||||
label.max.vms=Max. MV d\\'usuari
|
||||
label.max.volumes=Max. Volums
|
||||
label.may.continue=Ara pot continuar
|
||||
label.menu.configuration=Configuraci\u00f3
|
||||
label.migrate.instance.to.host=Migrar inst\u00e0ncia a un altre amfitri\u00f3 "Host"
|
||||
label.migrate.instance.to.ps=Migrar inst\u00e0ncia a un altra emmagatzematge primari
|
||||
label.migrate.router.to=Migrar router a
|
||||
label.migrate.systemvm.to=Migrar MV de sistema a\:
|
||||
label.move.down.row=Moure una fila cap a baix
|
||||
label.move.to.top=Moure a dalt
|
||||
label.move.up.row=Moure una fla cap a dalt
|
||||
label.my.network=La meva xarxa
|
||||
label.my.templates=Les meves plantilles
|
||||
label.netScaler=NetScaler
|
||||
label.networking.and.security=Xarxa i seguretat
|
||||
label.network.rate=Velocitat de xarxa
|
||||
label.networks=Xarxes
|
||||
label.new=Nou
|
||||
label.new.project=Nou projecte
|
||||
label.new.vm=Nova MV
|
||||
label.nic.adapter.type=Tipus de tarja de xarxa
|
||||
label.no.data=No hi ha dades
|
||||
label.no.thanks=No gr\u00e0cies
|
||||
label.number.of.clusters=Nombre de cl\u00fasters
|
||||
label.number.of.hosts=Nombre de Hosts
|
||||
label.number.of.pods=Nombre de racks
|
||||
label.number.of.zones=Nombre de zones
|
||||
label.ocfs2=OCFS2
|
||||
label.order=Ordre
|
||||
label.physical.network.ID=ID de xarxa f\u00edsica
|
||||
label.please.specify.netscaler.info=Si us plau doneu informaci\u00f3 del NetScaler
|
||||
label.pod.name=Nom de rack
|
||||
label.pods=Racks
|
||||
label.port.forwarding.policies=Pol\u00b7l\u00edtiques de reenviament de ports
|
||||
label.previous=Anterior
|
||||
label.private.network=Xarxa privada
|
||||
label.project.dashboard=Quadre de comandament del projecte
|
||||
label.project.id=ID de projecte
|
||||
label.project.invite=Convidar al projecte
|
||||
label.project.name=Nom del projecte
|
||||
label.project=Projecte
|
||||
label.projects=Projectes
|
||||
label.providers=Prove\u00efdors
|
||||
label.public.network=Xarxa p\u00fablica
|
||||
label.Pxe.server.type=Tipus de servidor PXE
|
||||
label.redundant.state=Estat redundant
|
||||
label.remind.later=Recordeu-m\\'ho despr\u00e9s
|
||||
label.remove.egress.rule=Esborrar regla de sortida
|
||||
label.remove.ingress.rule=Esborrar regla d\\'entrada
|
||||
label.remove.pf=Esborrar regla de reenviament de port
|
||||
label.remove.rule=Esborrar regla
|
||||
label.remove.static.nat.rule=Esborrar regla de NAT est\u00e0tic
|
||||
label.remove.vm.from.lb=Treure VM de la regla de balanceig de c\u00e0rrega
|
||||
label.removing=Esborrant
|
||||
label.reserved.system.gateway=Pasarel\u00b7la reservada del sistema
|
||||
label.reserved.system.netmask=M\u00e0scara reservada del sistema
|
||||
label.revoke.project.invite=Revocar invitaci\u00f3
|
||||
label.root.disk.controller=Controlador de disc arrel
|
||||
label.save.and.continue=Desa i continua
|
||||
label.select.a.template=Sel\u00b7leccioni una plantilla
|
||||
label.select.a.zone=Sel\u00b7leccioni una zona
|
||||
label.select.iso.or.template=Sel\u00b7leccioni ISO o plantilla
|
||||
label.select.project=Sel\u00b7leccionar projecte
|
||||
label.select-view=Sel\u00b7lecioni vista
|
||||
label.setup=Configuraci\u00f3
|
||||
label.shutdown.provider=Apagar prove\u00efdor
|
||||
label.skip.guide=Si heu utilitzat CloudStack abans, ometi aquesta guia
|
||||
label.srx=SRX
|
||||
label.start.vlan=VLAN inici
|
||||
label.static.nat.enabled=NAT est\u00e0tic habilitat
|
||||
label.stickiness=Tend\u00e8ncia
|
||||
label.sticky.mode=Mode
|
||||
label.storage.traffic=Tr\u00e0fic d\\'emmagatzemament
|
||||
label.subdomain.access=Acc\u00e9s de subdomini
|
||||
label.suspend.project=Suspendre projecte
|
||||
label.task.completed=Tasca complerta
|
||||
label.timeout=Timeout
|
||||
label.total.cpu=Total de CPU
|
||||
label.total.CPU=Total de CPU
|
||||
label.total.hosts=Total de hosts
|
||||
label.total.memory=Total de RAM
|
||||
label.total.of.ip=Total d\\'adre\u00e7es IP
|
||||
label.total.of.vm=Total de MV
|
||||
label.total.storage=Total d\\'emmagatzemament
|
||||
label.traffic.types=Tipus de tr\u00e0fics
|
||||
label.update.project.resources=Actualitzar recursos del projecte
|
||||
label.view.all=Veure tots
|
||||
label.view.console=Veure consola
|
||||
label.viewing=Veient
|
||||
label.view.more=Veure m\u00e9s
|
||||
label.view=Veure
|
||||
label.virtual.machines=M\u00e0quines virtuals
|
||||
label.virtual.router=Router virtual
|
||||
label.what.is.cloudstack=Que \u00e9s CloudStack&\#8482?
|
||||
label.zone.details=Detalls de la zona
|
||||
label.zones=Zones
|
||||
message.acquire.new.ip=Si us plau confirmeu que voleu adquirir una nova IP per aquesta xarxa.
|
||||
message.action.download.iso=Si us plau confirmeu que voleu descarregar aquesta ISO.
|
||||
message.action.download.template=Si us plau confirmeu que voleu descarregar aquesta plantilla.
|
||||
message.activate.project=Esteu segurs d\\'activar aquest projecte?
|
||||
message.add.domain=Si us plau especifiqueu el sub-domini que voleu crear sota aquest domini
|
||||
message.add.guest.network=Si us plau confirmeu que voleu afegir una xarxa per a MVs
|
||||
message.after.enable.swift=Swift configurat. Nota\: Quan abandoneu aquesta p\u00e0gina, no sereu capa\u00e7os de reconfigurar Swift de nou.
|
||||
message.alert.state.detected=Estat d\\'alerta detectat
|
||||
message.change.password=Si us plau, canvieu la contrasenya.
|
||||
message.confirm.delete.F5=Si us plau confirmeu que voleu esborrar l\\'F5
|
||||
message.confirm.delete.NetScaler=Si us plau confirmeu que voleu esborrar el NetScaler
|
||||
message.confirm.delete.SRX=Si us plau confirmeu que voleu esborrar l\\'SRX
|
||||
message.confirm.destroy.router=Si us plau confirmeu que voleu destruir aquest router
|
||||
message.confirm.disable.provider=Si us plau confirmeu que voleu deshabilitar aquest prove\u00efdor
|
||||
message.confirm.enable.provider=Si us plau confirmeu que voleu habilitar aquest prove\u00efdor
|
||||
message.confirm.join.project=Si us plau confirmeu que voleu unir-vos al projecte.
|
||||
message.confirm.shutdown.provider=Si us plau confirmeu que voleu apagar aquest prove\u00efdor
|
||||
message.decline.invitation=Esteu segurs de declinar aquesta invitaci\u00f3 per al projecte?
|
||||
message.delete.project=Esteu segurs d\\'eliminar el projecte?
|
||||
message.delete.user=Si us plau confirmeu que voleu esborrar aquest usuari.
|
||||
message.disable.user=Si us plao confirmeu que voleu deshabilitar aquest usuari.
|
||||
message.disable.vpn=\u00bfEsteu segurs de deshabilitar la VPN?
|
||||
message.edit.account=Editar ("-1" indica que no hi ha limit en la quantitat de recursos a crear)
|
||||
message.enable.user=Si us plau confirmeu que voleu habilitar aquest usuari.
|
||||
message.enable.vpn=Si us plau confirmeu que voleu habilitar l\\'acc\u00e9s VPN per aquesta adre\u00e7a IP
|
||||
message.generate.keys=Si us plau confirmeu que voleu generar noves claus per aquest usuari.
|
||||
message.installWizard.click.retry=Feu clic al bot\u00f3 per tornar a intentar l\\'inici.
|
||||
message.installWizard.copy.whatIsSecondaryStorage=L\\'emmagatzemament secundari s\\'associa amb una zona, i emmagatzema el seg\u00fcent\:<ul><li>Plantilles - Imatges de SO que es poden fer servir per arrencar MVs i poden incloure altra informaci\u00f3 de configuraci\u00f3, com ara aplicacions instal\u00b7lades</li><li>Imatges ISO - Imatges de SO que poden ser arrencables o no</li><li>Snapshots de disc - copies guardades de dades de MV que poden usar-se per recuperaci\u00f3 de dades o crear altres plantilles</ul>
|
||||
message.installWizard.tooltip.addCluster.name=Un nom per al cluster. Pot ser un text de la seva elecci\u00f3 i no utilitzat per CloudStack.
|
||||
message.installWizard.tooltip.addHost.hostname=El nom DNS o adre\u00e7a de l\\'amfitri\u00f3 "host".
|
||||
message.installWizard.tooltip.addHost.password=Aquesta \u00e9s la contrasenya per a l\\'usuari del d\\'amunt (des de la instal\u00b7laci\u00f3 de XenServer).
|
||||
message.installWizard.tooltip.addHost.username=Normalment root
|
||||
message.installWizard.tooltip.addPod.name=Un nom per al pod
|
||||
message.installWizard.tooltip.addPod.reservedSystemEndIp=Aquest \u00e9s el rang IP a la xarxa privada que el CloudStack fa servir per administrar MVs per al Secondary Storage i Proxy de consoles. Aquestes IP es prenen de la mateixa sub-xarxa que els servidors de virtualitzaci\u00f3.
|
||||
message.installWizard.tooltip.addPod.reservedSystemGateway=La passarel\u00b7la per als amfitrions en aquest pot.
|
||||
message.installWizard.tooltip.addPod.reservedSystemNetmask=La m\u00e0scara de xarxa en \u00fas en la subxarxa dels clients a utilitzar
|
||||
message.installWizard.tooltip.addPod.reservedSystemStartIp=Aquest \u00e9s el rang IP a la xarxa privada que el CloudStack fa servir per administrar MVs per al Secondary Storage i Proxy de consoles. Aquestes IP es prenen de la mateixa sub-xarxa que els servidors de virtualitzaci\u00f3.
|
||||
message.installWizard.tooltip.addPrimaryStorage.name=El nom per al dispositiu d\\'emmagatzematge
|
||||
message.installWizard.tooltip.addPrimaryStorage.path=(per a NFS) A NFS, aquest \u00e9s el cam\u00ed exportat des del servidor. Cam\u00ed (per SharedMountPoint). Amb KVM aquest \u00e9s el cam\u00ed a cada host on es munta el emmagatzemament primari. Per exemple, "/mnt/primary".
|
||||
message.installWizard.tooltip.addPrimaryStorage.server=(per NFS, iSCSI, o PreSetup) La adre\u00e7a IP o nom DNS del dispositiu d\\'emmagatzematge.
|
||||
message.installWizard.tooltip.addSecondaryStorage.nfsServer=L\\'adre\u00e7a IP del servidor NFS que allotja l\\'emmagatzematge secundari
|
||||
message.installWizard.tooltip.addSecondaryStorage.path=La ruta d\\'exportaci\u00f3, que es troba en el servidor que s\\'ha especificat anteriorment
|
||||
message.installWizard.tooltip.configureGuestTraffic.description=Una descripci\u00f3 de la xarxa
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestGateway=La passarel\u00b7la que els convidats han d\\'utilitzar
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestNetmask=La m\u00e0scara de xarxa en \u00fas en la subxarxa que els clients han d\\'utilitzar
|
||||
message.installWizard.tooltip.configureGuestTraffic.name=Un nom per a la teva xarxa
|
||||
message.instanceWizard.noTemplates=No teniu cap plantilla disponible; si us plau afegiu una plantilla disponible i torneu a usar l\\'assistent.
|
||||
message.join.project=Us heu unit a un projecte. Si us pla canvieu a vista de projecte per veure el projecte.
|
||||
message.migrate.instance.to.host=Si us plau, confirmi que vol migrar la inst\u00e0ncia a un altra amfitri\u00f3 "host"
|
||||
message.migrate.instance.to.ps=Si us plau, confirmi que vol migrar la inst\u00e0ncia a un altra emmagatzematge primari.
|
||||
message.migrate.router.confirm=Si us plau confirmeu que voleu migrar el router a\:
|
||||
message.migrate.systemvm.confirm=Si us plau confirmeu que voleu migrar la MV de sistema a\:
|
||||
message.no.projects.adminOnly=No teniu cap projecte.<br/>Si us plau demaneu a l\\'administrador que us en crei un.
|
||||
message.no.projects=No teniu cap projecte.<br/>Si us plau creeu-ne un des de la secci\u00f3 de projecte.
|
||||
message.pending.projects.1=Teniu invitacions pendents.
|
||||
message.pending.projects.2=Per veure, si us plau aneu a la secci\u00f3 de projectes, i sel\u00b7leccioneu invitacions al desplegable.
|
||||
message.project.invite.sent=Invitaci\u00f3 enviada a l\\'usuari; ser\u00e0 afegit al projecte quan accepti l\\'invitaci\u00f3
|
||||
message.select.item=Si us plau sel\u00b7leccioneu un article
|
||||
message.setup.successful=Instal\u00b7laci\u00f3 del cloud correcte\!
|
||||
message.step.2.desc=
|
||||
message.step.3.desc=
|
||||
message.suspend.project=Esteu segurs de suspendre aquest projecte?
|
||||
message.update.resource.count=Si us plau confirmeu que voleu actualitzar el comptatge de recursos per aquest compte.
|
||||
mode=Mode
|
||||
network.rate=Velocitat de xarxa
|
||||
side.by.side=Costat a costat
|
||||
state.Accepted=Acceptat
|
||||
state.Active=Actiu
|
||||
state.Completed=Complert
|
||||
state.Creating=Creant
|
||||
state.Declined=Declinat
|
||||
state.Disabled=Deshabilitat
|
||||
state.enabled=Habilitat
|
||||
state.Enabled=Habilitat
|
||||
state.Expunging=Esborrant
|
||||
state.Pending=Pendent
|
||||
state.ready=Preparat
|
||||
state.Ready=Preparat
|
||||
state.Starting=Arrencant
|
||||
state.Suspended=Susp\u00e9s
|
||||
|
|
@ -0,0 +1,748 @@
|
|||
# Licensed to the Apache Software Foundation (ASF) under one
|
||||
# or more contributor license agreements. See the NOTICE file
|
||||
# distributed with this work for additional information
|
||||
# regarding copyright ownership. The ASF licenses this file
|
||||
# to you under the Apache License, Version 2.0 (the
|
||||
# "License"); you may not use this file except in compliance
|
||||
# with the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing,
|
||||
# software distributed under the License is distributed on an
|
||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
# KIND, either express or implied. See the License for the
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
|
||||
error.installWizard.message=Ein Fehler ist aufgetreten; Sie k\u00f6nnen zur\u00fcckgehen und den Fehler korregieren
|
||||
error.login=Ihr Benutzername / Passwort stimmt nicht mit uneren unseren Aufzeichnungen \u00fcberein.
|
||||
error.session.expired=Ihre Sitzung ist abgelaufen.
|
||||
force.delete.domain.warning=Achtung\: Diese Auswahl f\u00fchrt zu einer L\u00f6schung aller untergeordneten Domains und aller angeschlossenen Konten sowie ihrer Quellen.
|
||||
force.delete=Erzwinge L\u00f6schung
|
||||
force.remove=Erzwinge Entfernung
|
||||
force.remove.host.warning=Achtung\: Diese Auswahl wird CloudStack zum sofortigen Anhalten der virtuellen Maschine f\u00fchren, bevor der Host vom Cluster entfernt wurde.
|
||||
force.stop=Erzwinge Abbruch
|
||||
ICMP.code=ICMP Code
|
||||
ICMP.type=ICMP-Typ
|
||||
image.directory=Bildverzeichnis
|
||||
label.account=Benutzerkonto
|
||||
label.account.id=Benutzerkonto-ID
|
||||
label.account.name=Benutzerkonto-Name
|
||||
label.accounts=Benutzerkonten
|
||||
label.account.specific=Besonderheiten des Benutzerkontos
|
||||
label.acquire.new.ip=Neue IP erwerben
|
||||
label.action.attach.disk=Festplatte hinzuf\u00fcgen
|
||||
label.action.attach.disk.processing=Hinzuf\u00fcgen einer Festplatte ....
|
||||
label.action.attach.iso=ISO hinzuf\u00fcgen
|
||||
label.action.attach.iso.processing=Hinzuf\u00fcgen einer ISO....
|
||||
label.action.cancel.maintenance.mode.processing=Abbruch des Wartungsmodus
|
||||
label.action.cancel.maintenance.mode=Wartungsmodus abbrechen
|
||||
label.action.change.password=Passwort \u00e4ndern
|
||||
label.action.change.service=Dienst \u00e4ndern
|
||||
label.action.change.service.processing=Wechseln des Dienstes ....
|
||||
label.action.copy.ISO=ISO kopieren
|
||||
label.action.copy.ISO.processing=Kopieren der ISO ....
|
||||
label.action.copy.template.processing=Kopieren der Vorlage ....
|
||||
label.action.copy.template=Vorlage kopieren
|
||||
label.action.create.template.from.vm=Erstelle Vorlage aus VM
|
||||
label.action.create.template.from.volume=Erstelle Vorlage vom Datentr\u00e4ger
|
||||
label.action.create.template.processing=Erstellen der Vorlage ....
|
||||
label.action.create.template=Vorlage erstellen
|
||||
label.action.create.vm=Erstelle VM
|
||||
label.action.create.vm.processing=Erstellung der VM....
|
||||
label.action.create.volume=Erstelle Volume
|
||||
label.action.create.volume.processing=Erstellen von Volume ....
|
||||
label.action.delete.account=Benutzerkonto l\u00f6schen
|
||||
label.action.delete.account.processing=L\u00f6schung des Benutzerkontos ....
|
||||
label.action.delete.cluster=L\u00f6schen des Clusters
|
||||
label.action.delete.cluster.processing=L\u00f6schung des Clusters ....
|
||||
label.action.delete.disk.offering=Festplatten-Angebot l\u00f6schen
|
||||
label.action.delete.disk.offering.processing=L\u00f6schen des Festplatten-Angebots ....
|
||||
label.action.delete.domain=L\u00f6schen der Domain
|
||||
label.action.delete.domain.processing=L\u00f6schung der Domain ....
|
||||
label.action.delete.firewall.processing=L\u00f6schung der Firewall ....
|
||||
label.action.delete.ingress.rule.processing=L\u00f6schen der Zutrittsregel ....
|
||||
label.action.delete.ingress.rule=Zutrittsregel l\u00f6schen
|
||||
label.action.delete.IP.range=IP-Bereich l\u00f6schen
|
||||
label.action.delete.IP.range.processing=L\u00f6schen von IP-Bereich ....
|
||||
label.action.delete.ISO=ISO l\u00f6schen
|
||||
label.action.delete.ISO.processing=L\u00f6schen der ISO ....
|
||||
label.action.delete.load.balancer.processing=Beendigung der Serverlastverteilung....
|
||||
label.action.delete.network=L\u00f6schen des Netzwerks
|
||||
label.action.delete.network.processing=L\u00f6schung des Netzwerks ....
|
||||
label.action.delete.pod=Pod l\u00f6schen
|
||||
label.action.delete.pod.processing=L\u00f6schen des Pod ....
|
||||
label.action.delete.primary.storage=Hauptspeicher l\u00f6schen
|
||||
label.action.delete.primary.storage.processing=L\u00f6schen des Hauptspeichers ....
|
||||
label.action.delete.secondary.storage.processing=L\u00f6schen des Sekund\u00e4rspeichers....
|
||||
label.action.delete.secondary.storage=Sekund\u00e4rspeicher l\u00f6schen
|
||||
label.action.delete.security.group.processing=L\u00f6schen der Sicherheitsgruppe ....
|
||||
label.action.delete.security.group=Sicherheitsgruppe l\u00f6schen
|
||||
label.action.delete.service.offering.processing=L\u00f6schen des Serviceangebots ....
|
||||
label.action.delete.service.offering=Serviceangebot l\u00f6schen
|
||||
label.action.delete.snapshot.processing=L\u00f6schen des Schnappschusses....
|
||||
label.action.delete.snapshot=Schnappschuss l\u00f6schen
|
||||
label.action.delete.template.processing=L\u00f6schen der Vorlage ....
|
||||
label.action.delete.template=Vorlage l\u00f6schen
|
||||
label.action.delete.user=Benutzer l\u00f6schen
|
||||
label.action.delete.user.processing=L\u00f6schung des Benutzers ....
|
||||
label.action.delete.volume=Datentr\u00e4ger l\u00f6schen
|
||||
label.action.delete.volume.processing=L\u00f6schen des Datentr\u00e4gers....
|
||||
label.action.delete.zone.processing=L\u00f6schen der Zone ....
|
||||
label.action.delete.zone=Zone l\u00f6schen
|
||||
label.action.destroy.instance=Die Instanz vernichten
|
||||
label.action.destroy.instance.processing=Die Vernichtung der Instanz....
|
||||
label.action.destroy.systemvm.processing=Vernichtung des System-VM ....
|
||||
label.action.destroy.systemvm=System-VM vernichten
|
||||
label.action.detach.disk=Festplatte entfernen
|
||||
label.action.detach.disk.processing=Entfernen der Festplatte
|
||||
label.action.detach.iso=ISO entfernen
|
||||
label.action.detach.iso.processing=Entfernen von ISO ....
|
||||
label.action.disable.account=Benutzerkonto deaktivieren
|
||||
label.action.disable.account.processing=Deaktivierung des Benutzerkontos ....
|
||||
label.action.disable.cluster=Deaktivieren des Clusters
|
||||
label.action.disable.cluster.processing=Deaktivierung des Clusters....
|
||||
label.action.disable.pod=Deaktiviere Pod
|
||||
label.action.disable.pod.processing=Deaktivierung des Pod....
|
||||
label.action.disable.static.NAT.processing=Deaktivieren der statischen NAT ....
|
||||
label.action.disable.static.NAT=Statische NAT deaktivieren
|
||||
label.action.disable.user=Benutzer deaktivieren
|
||||
label.action.disable.user.processing=Deaktivierung des Benutzers ....
|
||||
label.action.disable.zone=Deaktivieren der Zone
|
||||
label.action.disable.zone.processing=Deaktivierung der Zone....
|
||||
label.action.download.ISO=ISO herunterladen
|
||||
label.action.download.template=Vorlage herunterladen
|
||||
label.action.download.volume.processing=Herunterladen des Volumes ....
|
||||
label.action.download.volume=Volume herunterladen
|
||||
label.action.edit.account=Benutzerkonto bearbeiten
|
||||
label.action.edit.disk.offering=Bearbeiten des Festplatten-Angebots
|
||||
label.action.edit.domain=Domain bearbeiten
|
||||
label.action.edit.global.setting=Globale Einstellungen bearbeiten
|
||||
label.action.edit.host=Bearbeite Host
|
||||
label.action.edit.instance=Instanz bearbeiten
|
||||
label.action.edit.ISO=ISO bearbeiten
|
||||
label.action.edit.network=Bearbeiten des Netzwerks
|
||||
label.action.edit.network.offering=Bearbeiten des Netzwerk-Angebots
|
||||
label.action.edit.network.processing=Bearbeitung des Netzwerks ....
|
||||
label.action.edit.pod=Bearbeiten des Pods
|
||||
label.action.edit.primary.storage=Hauptspeicher bearbeiten
|
||||
label.action.edit.resource.limits=Resourcen Grenzen bearbeiten
|
||||
label.action.edit.service.offering=Service-Angebot bearbeiten
|
||||
label.action.edit.template=Vorlage bearbeiten
|
||||
label.action.edit.user=Benutzer bearbeiten
|
||||
label.action.edit.zone=Zone bearbeiten
|
||||
label.action.enable.account=Konto aktivieren
|
||||
label.action.enable.account.processing=Aktivierung des Kontos....
|
||||
label.action.enable.cluster=Aktivieren des Clusters
|
||||
label.action.enable.cluster.processing=Aktivierung des Clusters....
|
||||
label.action.enable.maintenance.mode.processing=Aktivieren des Wartungsmodus
|
||||
label.action.enable.maintenance.mode=Wartungsmodus aktivieren
|
||||
label.action.enable.pod=Aktiviere Pod
|
||||
label.action.enable.pod.processing=Aktivierung des Pod....
|
||||
label.action.enable.static.NAT.processing=Aktivieren der statischen NAT ....
|
||||
label.action.enable.static.NAT=Statische NAT aktivieren
|
||||
label.action.enable.user=Nutzer aktivieren
|
||||
label.action.enable.user.processing=Aktivierung des Nutzers...
|
||||
label.action.enable.zone=Aktivieren der Zone
|
||||
label.action.enable.zone.processing=Aktivierung der Zone....
|
||||
label.action.force.reconnect=Erzwinge wieder verbinden
|
||||
label.action.force.reconnect.processing=Wieder verbinden....
|
||||
label.action.generate.keys.processing=Genieren der Schl\u00fcssel
|
||||
label.action.generate.keys=Schl\u00fcssel generieren
|
||||
label.action.lock.account=Konto sperren
|
||||
label.action.lock.account.processing=Kontosperrung ....
|
||||
label.action.manage.cluster.processing=Verwaltung des Clusters....
|
||||
label.action.manage.cluster=Verwalte Cluster
|
||||
label.action.migrate.instance=Mit einer Instanz umziehen
|
||||
label.action.migrate.instance.processing=Umziehen einer Instanz
|
||||
label.action.reboot.instance=Instanz neustarten
|
||||
label.action.reboot.instance.processing=Neustarten der Instanz...
|
||||
label.action.reboot.router.processing=Neustart vom Router ....
|
||||
label.action.reboot.router=Router neu starten
|
||||
label.action.reboot.systemvm.processing=Neustart-System VM ....
|
||||
label.action.reboot.systemvm=System VM neu starten
|
||||
label.action.release.ip=IP ver\u00f6ffentlichen
|
||||
label.action.release.ip.processing=Ver\u00f6ffentlichung der IP....
|
||||
label.action.remove.host=Host entfernen
|
||||
label.action.remove.host.processing=Entfernen des Hosts....
|
||||
label.action.reset.password=Passwort zur\u00fccksetzen
|
||||
label.action.reset.password.processing=Zur\u00fccksetzen des Passworts ....
|
||||
label.action.resource.limits=Grenzen der Ressourcen
|
||||
label.action.restore.instance=Instanz wiederherstellen
|
||||
label.action.restore.instance.processing=Wiederherstellen der Instanz....
|
||||
label.actions=Aktionen
|
||||
label.action.start.instance=Instanz beginnen
|
||||
label.action.start.instance.processing=Beginnen mit der Instanz....
|
||||
label.action.start.router.processing=Starten des Routers ....
|
||||
label.action.start.router=Router starten
|
||||
label.action.start.systemvm.processing=Starten von System VM ....
|
||||
label.action.start.systemvm=System VM starten
|
||||
label.action.stop.instance=Instanz stoppen
|
||||
label.action.stop.instance.processing=Stoppen der Instanz....
|
||||
label.action.stop.router.processing=Stoppen des Routers ....
|
||||
label.action.stop.router=Router stoppen
|
||||
label.action.stop.systemvm.processing=Stoppen vom System VM ....
|
||||
label.action.stop.systemvm=System VM stoppen
|
||||
label.action.take.snapshot.processing=Schnappschuss erstellen...
|
||||
label.action.take.snapshot=Schnappschuss erstellen
|
||||
label.action.unmanage.cluster.processing=Vernachl\u00e4ssigung des Clusters ....
|
||||
label.action.unmanage.cluster=Vernachl\u00e4ssige Cluster
|
||||
label.action.update.OS.preference=Betriebssystem Pr\u00e4verenz aktualisieren
|
||||
label.action.update.OS.preference.processing=Aktualisierung der Betriebssystem Pr\u00e4verenz....
|
||||
label.active.sessions=Aktive Sitzungen
|
||||
label.add.account=Konto hinzuf\u00fcgen
|
||||
label.add.by.cidr=Hinzuf\u00fcgen durch CIDR
|
||||
label.add.by.group=Hinzuf\u00fcgen durch Gruppe
|
||||
label.add.cluster=Cluster hinzuf\u00fcgen
|
||||
label.add.direct.iprange=Direkten Ip-Bereich hinzuf\u00fcgen
|
||||
label.add.disk.offering=Festplatten-Angebot hinzuf\u00fcgen
|
||||
label.add.domain=Domain hinzuf\u00fcgen
|
||||
label.add=Hinzuf\u00fcgen
|
||||
label.add.host=Host hinzuf\u00fcgen
|
||||
label.adding.cluster=Cluster hinzuf\u00fcgen
|
||||
label.adding.failed=Hinzuf\u00fcgen fehlgeschlagen
|
||||
label.adding=Hinzuf\u00fcgen
|
||||
label.adding.pod=Hinzuf\u00fcgen des Pods
|
||||
label.adding.processing=Hinzuf\u00fcgen....
|
||||
label.add.ingress.rule=Zutrittsregel hinzuf\u00fcgen
|
||||
label.adding.succeeded=Erfolgreich hinzugef\u00fcgt
|
||||
label.adding.user=Nutzer hinzuf\u00fcgen
|
||||
label.adding.zone=Hinzuf\u00fcgen der Zone
|
||||
label.add.ip.range=IP Bereich hinzuf\u00fcgen
|
||||
label.additional.networks=Zus\u00e4tzliche Networks
|
||||
label.add.load.balancer=Serverlastverteilung hinzuf\u00fcgen
|
||||
label.add.more=Mehr hinzuf\u00fcgen
|
||||
label.add.network.device=Hinzuf\u00fcgen eines Netzwerkger\u00e4tes
|
||||
label.add.network=Netzwerk hinzuf\u00fcgen
|
||||
label.add.pod=Pod hinzuf\u00fcgen
|
||||
label.add.primary.storage=Hauptspeicher hinzuf\u00fcgen
|
||||
label.add.secondary.storage=Sekund\u00e4rspeicher hinzuf\u00fcgen
|
||||
label.add.security.group=Sicherheitsgruppe hinzuf\u00fcgen
|
||||
label.add.service.offering=Service-Angebot hinzuf\u00fcgen
|
||||
label.add.system.service.offering=System-Service-Angebot hinzuf\u00fcgen
|
||||
label.add.template=Vorlage hinzuf\u00fcgen
|
||||
label.add.user=Benutzer hinzuf\u00fcgen
|
||||
label.add.vlan=VLAN hinzuf\u00fcgen
|
||||
label.add.volume=Volume hinzuf\u00fcgen
|
||||
label.add.zone=Zone hinzuf\u00fcgen
|
||||
label.admin.accounts=Administrator-Konten
|
||||
label.admin=Administrator
|
||||
label.advanced.mode=Erweiterter Modus
|
||||
label.advanced.search=Erweiterte Suche
|
||||
label.advanced=Weitergehend
|
||||
label.alert=Warnung
|
||||
label.algorithm=Algorithmus
|
||||
label.allocated=Zugeteilt
|
||||
label.allocation.state=Belegungszustand
|
||||
label.api.key=API Schl\u00fcssel
|
||||
label.assign.to.load.balancer=Instanz zum Lastverteiler hinzuf\u00fcgen
|
||||
label.assign=Zuweisen
|
||||
label.associated.network.id=Assozierte Netzwerk ID
|
||||
label.attached.iso=Angeh\u00e4ngte ISO
|
||||
label.availability=Verf\u00fcgbarkeit
|
||||
label.availability.zone=Verf\u00fcgbare Zone
|
||||
label.available.public.ips=Verf\u00fcgbaren \u00f6ffentlichen IP-Adressen
|
||||
label.available=Verf\u00fcgbar
|
||||
label.back=Zur\u00fcck
|
||||
label.basic.mode=Grundmodus
|
||||
label.bootable=Bootbar
|
||||
label.broadcast.domain.type=Benachrichtigung an alle Nutzer \u00fcber Domain Typ
|
||||
label.by.account=Nach Benutzerkonto
|
||||
label.by.availability=Nach Verf\u00fcgbarkeit
|
||||
label.by.domain=Nach Domain
|
||||
label.by.end.date=Nach Endedatum
|
||||
label.by.level=Nach Level
|
||||
label.by.pod=Nach Pod
|
||||
label.by.role=Nach Rolle
|
||||
label.by.start.date=Nach Beginndatum
|
||||
label.by.state=\u00fcber den Zustand
|
||||
label.bytes.received=Empfangene Bytes
|
||||
label.bytes.sent=Gesendete Bytes
|
||||
label.by.traffic.type=Nach Traffic-Typ
|
||||
label.by.type.id=Nach Typ ID
|
||||
label.by.type=Nach Typ
|
||||
label.by.zone=Nach Zone
|
||||
label.cancel=Abbrechen
|
||||
label.certificate=Zertifikat
|
||||
label.character=Buchstabe
|
||||
label.cidr.account=CIDR oder Benutzerkonto/Sicherheitsgruppe
|
||||
label.cidr=CIDR
|
||||
label.cidr.list=Quelle CIDR
|
||||
label.close=Schliessen
|
||||
label.cloud.console=Cloud Management Konsole
|
||||
label.cloud.managed=Geleitet von cloud.com
|
||||
label.cluster=Cluster
|
||||
label.cluster.type=Cluster-Typ
|
||||
label.code=Code
|
||||
label.configuration=Konfiguration
|
||||
label.confirmation=Best\u00e4tigung
|
||||
label.congratulations=Herzlichen Gl\u00fcckwunsch
|
||||
label.corrections.saved=Korrekturen gespeichert
|
||||
label.cpu.allocated=Zugeteilte CPU
|
||||
label.CPU.cap=CPU Obergrenze
|
||||
label.cpu=CPU
|
||||
label.cpu.mhz=CPU (in MHz)
|
||||
label.cpu.utilized=genutzte CPU
|
||||
label.created=Erstellt
|
||||
label.cross.zones=\u00fcberschneidende Zonen
|
||||
label.custom.disk.size=Benutzerdefinierte Festplattengr\u00f6sse
|
||||
label.daily=T\u00e4glich
|
||||
label.data.disk.offering=Daten-Speicherplatz-Angebot
|
||||
label.date=Datum
|
||||
label.day.of.month=Tag des Monats
|
||||
label.day.of.week=Tag der Woche
|
||||
label.default.use=Standardeinstellung nutzen
|
||||
label.delete=L\u00f6schen
|
||||
label.deleting.failed=L\u00f6schen fehlgeschlagen
|
||||
label.deleting.processing=L\u00f6schen ....
|
||||
label.description=Beschreibung
|
||||
label.destroy=Zerst\u00f6ren
|
||||
label.detaching.disk=Entfernen der Festplatte
|
||||
label.details=Details
|
||||
label.device.id=Ger\u00e4te-ID
|
||||
label.DHCP.server.type=DHCP Server Type
|
||||
label.disabled=Deaktiviert
|
||||
label.disabling.vpn.access=Deaktivierung des VPN Zugangs
|
||||
label.disk.allocated=Zugeordnete Festplatte
|
||||
label.disk.offering=Festplatten-Angebot
|
||||
label.disk.size=Festplattengr\u00f6\u00dfe
|
||||
label.disk.size.gb=Festplattengr\u00f6\u00dfe (in GB)
|
||||
label.disk.total=Gesamtzahl der Festplatten
|
||||
label.disk.volume=Festplatten Volume
|
||||
label.display.text=Anzeigetext
|
||||
label.dns.1=DNS 1
|
||||
label.dns.2=DNS 2
|
||||
label.domain.admin=Domain Administrator
|
||||
label.domain=Domain
|
||||
label.domain.id=Domain ID
|
||||
label.domain.name=Domain Name
|
||||
label.domain.suffix=DNS Domainsuffix (z.B. xzy.com)
|
||||
label.double.quotes.are.not.allowed=Anf\u00fchrungszeichen sind nicht erlaubt
|
||||
label.download.progress=Download-Fortschritt
|
||||
label.edit=Bearbeiten
|
||||
label.email=E-Mail
|
||||
label.enabling.vpn.access=Aktivieren des VPN-Zugriffs
|
||||
label.enabling.vpn=VPN aktivieren
|
||||
label.endpoint.or.operation=Endpunkt oder Bedienung
|
||||
label.end.port=Beende Port
|
||||
label.error.code=Fehlercode
|
||||
label.error=Fehler
|
||||
label.esx.host=ESX / ESXi-Host
|
||||
label.example=Beispiel
|
||||
label.failed=Fehlgeschlagen
|
||||
label.featured=Besonderheiten aufweisen
|
||||
label.firewall=Firewall
|
||||
label.first.name=Vorname
|
||||
label.format=Format
|
||||
label.friday=Freitag
|
||||
label.full=Voll
|
||||
label.gateway=Schnittstelle
|
||||
label.general.alerts=Allgemeine Warnungen
|
||||
label.generating.url=Generieren der URL
|
||||
label.go.step.2=Gehe zu Schritt 2
|
||||
label.go.step.3=Weiter zu Schritt 3
|
||||
label.go.step.4=Weiter mit Schritt 4
|
||||
label.go.step.5=Weiter mit Schritt 5
|
||||
label.group=Gruppe
|
||||
label.group.optional=Gruppe (optional)
|
||||
label.guest.cidr=Gast CIDR
|
||||
label.guest.gateway=Gast-Schnittstelle
|
||||
label.guest.ip=Gast IP-Adresse
|
||||
label.guest.ip.range=Gast IP Berecih
|
||||
label.guest.netmask=Gast Netzmaske
|
||||
label.ha.enabled=HA aktiviert
|
||||
label.help=Hilfe
|
||||
label.hide.ingress.rule=Verstecke Regeln, die den Zutritt steuern
|
||||
label.host.alerts=Host Warnungen
|
||||
label.host=Host
|
||||
label.host.name=Host Name
|
||||
label.hosts=Hosts
|
||||
label.host.tags=Markierungen des Hosts
|
||||
label.hourly=St\u00fcndlich
|
||||
label.hypervisor=Hypervisor
|
||||
label.hypervisor.type=Hypervisor Typ
|
||||
label.id=Identifikation
|
||||
label.info=Info
|
||||
label.ingress.rule=Zutrittsregel
|
||||
label.initiated.by=Initiiert durch
|
||||
label.installWizard.addClusterIntro.subtitle=Was ist ein Cluster?
|
||||
label.installWizard.addClusterIntro.title=cluster hinzuf\u00fcgen
|
||||
label.installWizard.addHostIntro.subtitle=Was ist ein host?
|
||||
label.installWizard.addHostIntro.title=host hinzuf\u00fcgen
|
||||
label.installWizard.addPodIntro.subtitle=Was ist ein pod?
|
||||
label.installWizard.addPodIntro.title=pod hinzuf\u00fcgen
|
||||
label.installWizard.addPrimaryStorageIntro.subtitle=Was ist primay storage?
|
||||
label.installWizard.addPrimaryStorageIntro.title=primary storage hinzuf\u00fcgen
|
||||
label.installWizard.addSecondaryStorageIntro.subtitle=Was ist secondary storage?
|
||||
label.installWizard.addSecondaryStorageIntro.title=secondary storage
|
||||
label.installWizard.addZone.title=zone hinzuf\u00fcgen
|
||||
label.installWizard.click.launch=Bitte den Start Button dr\u00fccken
|
||||
label.instance=Instanz
|
||||
label.instance.limits=Instanz Grenzen
|
||||
label.instance.name=Name der Instanz
|
||||
label.instances=Instanzen
|
||||
label.internal.dns.1=Interne DNS 1
|
||||
label.internal.dns.2=Interne DNS 2
|
||||
label.interval.type=Interval Typ
|
||||
label.invalid.integer=Ung\u00fcltige Ganzzahl
|
||||
label.invalid.number=Ung\u00fcltige Anzahl
|
||||
label.ip.address=IP-Adresse
|
||||
label.ipaddress=IP-Adresse
|
||||
label.ip=IP
|
||||
label.ip.or.fqdn=IP oder FQDN
|
||||
label.ip.range=IP-Bereich
|
||||
label.ips=IPs
|
||||
label.iscsi=iSCSI
|
||||
label.is.default=Ist vorgegeben
|
||||
label.iso.boot=ISO-Boot
|
||||
label.iso=ISO
|
||||
label.is.redundant.router=Redundant
|
||||
label.is.shared=Gemeinsam
|
||||
label.keep=Behalten
|
||||
label.lang.chinese=chinesisch (vereinfacht)
|
||||
label.lang.english=englisch
|
||||
label.lang.japanese=japanisch
|
||||
label.lang.spanish=spanisch
|
||||
label.last.disconnected=Zuletzt getrennt
|
||||
label.last.name=Nachname
|
||||
label.launch=Start
|
||||
label.level=Ebene
|
||||
label.load.balancer=Serverlastverteilung
|
||||
label.loading=Laden
|
||||
label.local=Lokal
|
||||
label.login=Login
|
||||
label.logout=Abmelden
|
||||
label.lun=LUN
|
||||
label.manage=Verwalten
|
||||
label.maximum=Maximum
|
||||
label.may.continue=Sie k\u00f6nnen jetzt fortfahren
|
||||
label.memory.allocated=zugeordneter Speicher
|
||||
label.memory.mb=Speicher (in MB)
|
||||
label.memory=Speicher (in MB)
|
||||
label.memory.total=Speicher insgesamt
|
||||
label.memory.used=Genutzter Speicher
|
||||
label.menu.accounts=Benutzerkonten
|
||||
label.menu.alerts=Warnungen
|
||||
label.menu.all.accounts=Alle Konten
|
||||
label.menu.all.instances=Alle Instanzen
|
||||
label.menu.community.isos=Gemeinschaft ISOs
|
||||
label.menu.community.templates=Gemeinschaft Vorlagen
|
||||
label.menu.configuration=Konfiguration
|
||||
label.menu.dashboard=Dashboard
|
||||
label.menu.destroyed.instances=Zerst\u00f6rte Instanzen
|
||||
label.menu.disk.offerings=Festplatten-Angebote
|
||||
label.menu.domains=Domains
|
||||
label.menu.events=Events
|
||||
label.menu.featured.isos=Besondere ISOs
|
||||
label.menu.global.settings=Allgemeine Einstellungen
|
||||
label.menu.instances=Instanzen
|
||||
label.menu.ipaddresses=IP-Adressen
|
||||
label.menu.isos=ISOs
|
||||
label.menu.my.accounts=Meine Konten
|
||||
label.menu.my.instances=Meine F\u00e4lle
|
||||
label.menu.my.isos=Meine ISOs
|
||||
label.menu.my.templates=Meine Vorlagen
|
||||
label.menu.network=Netzwerk
|
||||
label.menu.network.offerings=Netzwerk-Angebote
|
||||
label.menu.physical.resources=Technische Ressourcen
|
||||
label.menu.running.instances=Laufende Instanzen
|
||||
label.menu.security.groups=Sicherheitsgruppen
|
||||
label.menu.service.offerings=Service-Angebote
|
||||
label.menu.snapshots=Schnappsch\u00fcsse
|
||||
label.menu.stopped.instances=Beendete Instanzen
|
||||
label.menu.storage=Speicherung
|
||||
label.menu.system=System
|
||||
label.menu.system.vms=System VMs
|
||||
label.menu.templates=Vorlagen
|
||||
label.menu.virtual.resources=Virtuelle Ressourcen
|
||||
label.menu.volumes=Volumes
|
||||
label.migrate.instance.to.host=Instanz auf einen anderen Host migrieren
|
||||
label.migrate.instance.to.ps=Instanz auf einen anderen Speicher migrieren
|
||||
label.minimum=Minimum
|
||||
label.monday=Montag
|
||||
label.monthly=Monatlich
|
||||
label.more.templates=Mehr Vorlagen
|
||||
label.my.account=Ihr Benutzerkonto
|
||||
label.name=Name
|
||||
label.name.optional=Name (Optional)
|
||||
label.netmask=Netzmaske
|
||||
label.network.device=Netzwerkger\u00e4t
|
||||
label.network.device.type=Netzwerkger\u00e4tetyp
|
||||
label.network.domain=Netzwerk-Domain
|
||||
label.network.id=Netzwerk-ID
|
||||
label.network.name=Netzwerk Name
|
||||
label.network=Netzwerk
|
||||
label.network.offering=Netzwerk-Angebot
|
||||
label.network.rate=Netzwerk-Rate
|
||||
label.network.type=Netzwerk-Typ
|
||||
label.new.password=Neues Passwort
|
||||
label.next=Weiter
|
||||
label.nfs=NFS
|
||||
label.nfs.server=NFS Server
|
||||
label.nfs.storage=NFS-Speicher
|
||||
label.nics=NICs
|
||||
label.no.actions=Nicht verf\u00fcgbare Aktionen
|
||||
label.no.alerts=Keine neuen Warnungen
|
||||
label.no.errors=Keine neuen Fehler
|
||||
label.no.isos=Kein verf\u00fcgbaren ISOs
|
||||
label.no.items=Keine verf\u00fcgbaren Eintr\u00e4ge
|
||||
label.no=Nein
|
||||
label.none=Kein
|
||||
label.no.security.groups=Keine verf\u00fcgbare Sicherheitsgruppe
|
||||
label.not.found=Nicht gefunden
|
||||
label.numretries=Anzahl von Wiederholungen
|
||||
label.ocfs2=OCFS2
|
||||
label.offer.ha=HA anbieten
|
||||
label.optional=optional
|
||||
label.os.preference=OS Pr\u00e4ferenz
|
||||
label.os.type=OS Typ
|
||||
label.password.enabled=Passwort aktiviert
|
||||
label.password=Passwort
|
||||
label.PING.CIFS.password=PING CIFS Passwort
|
||||
label.PING.CIFS.username=PING CIFS Benutzername
|
||||
label.PING.dir=PING-Verzeichnis
|
||||
label.PING.storage.IP=IP des externen Speichers anpingen
|
||||
label.please.wait=Bitte warten
|
||||
label.pod=Pod
|
||||
label.PreSetup=Voreinstellung
|
||||
label.primary.allocated=Zugewiesener Hauptspeicher
|
||||
label.primary.network=Hauptnetzwerk
|
||||
label.primary.storage=Hauptspeicher
|
||||
label.primary.used=Genutzter Hauptspeicher
|
||||
label.private.interface=Privates Interface
|
||||
label.private.ip=Private IP-Adresse
|
||||
label.private.ips=Private IP-Adressen
|
||||
label.private.port=Privater Port
|
||||
label.private.zone=Private Zone
|
||||
label.protocol=Protokoll
|
||||
label.public.interface=\u00d6ffentliches Interface
|
||||
label.public.ips=\u00d6ffentliche IP-Adressen
|
||||
label.public.ip=\u00d6ffentliche IP-Adresse
|
||||
label.public.port=\u00d6ffentlicher Port
|
||||
label.public=\u00d6ffentlich
|
||||
label.public.zone=\u00d6ffentliche Zone
|
||||
label.Pxe.server.type=PXE Server Type
|
||||
label.reboot=Neustart
|
||||
label.recent.errors=Aktuelle Fehler
|
||||
label.redundant.router=Redundanter Router
|
||||
label.refresh=Aktualisieren
|
||||
label.related=Verwandt
|
||||
label.removing.user=Entfernen von Benutzern
|
||||
label.required=Erforderlich
|
||||
label.resource=Ressource
|
||||
label.resources=Ressourcen
|
||||
label.role=Rolle
|
||||
label.running.vms=Laufende VMs
|
||||
label.s3.secret_key=Secret Key
|
||||
label.saturday=Samstag
|
||||
label.save=Sichern
|
||||
label.saving.processing=Sichern ....
|
||||
label.search=Suche
|
||||
label.secondary.storage=Sekund\u00e4rspeicher
|
||||
label.secondary.used=Genutzter Sekund\u00e4rspeicher
|
||||
label.secret.key=Secret Key
|
||||
label.security.group.name=Sicherheitsgruppen-Name
|
||||
label.security.groups.enabled=Sicherheitsgruppe aktiviert
|
||||
label.security.group=Sicherheitsgruppe
|
||||
label.security.groups=Sicherheitsgruppen
|
||||
label.sent=Versendet
|
||||
label.server=Server
|
||||
label.service.offering=Service-Angebot
|
||||
label.session.expired=Sitzung abgelaufen
|
||||
label.shared=Gemeinsame
|
||||
label.SharedMountPoint=Geteilter Einh\u00e4ngepunkt
|
||||
label.show.ingress.rule=Zeige Regeln, die den Zutritt steuern
|
||||
label.size=Gr\u00f6\u00dfe
|
||||
label.snapshot.limits=Schnappschuss Grenzen
|
||||
label.snapshot.name=Schnappschuss Name
|
||||
label.snapshot=Schnappschuss
|
||||
label.snapshots=Schnappsch\u00fcsse
|
||||
label.snapshot.s=Schnappschuss (Schnappsch\u00fcsse)
|
||||
label.static.nat=Statische NAT
|
||||
label.statistics=Statistiken
|
||||
label.status=Status
|
||||
label.step.1=Schritt 1
|
||||
label.step.2=Schritt 2
|
||||
label.step.3=Schritt 3
|
||||
label.step.4=Schritt 4
|
||||
label.step.5=Schritt 5
|
||||
label.sticky.domain=Domain
|
||||
label.stopped.vms=Gestoppte VMs
|
||||
label.stop=Stopp
|
||||
label.storage=Speicherung
|
||||
label.storage.tags=Datenspeicher-Markierung
|
||||
label.storage.type=Speichertyp
|
||||
label.submit=\u00dcberreichen
|
||||
label.succeeded=Erfolgreich
|
||||
label.sunday=Sonntag
|
||||
label.system.service.offering=System-Service-Angebot
|
||||
label.system.vms=System VMs
|
||||
label.system.vm=System-VM
|
||||
label.system.vm.type=System VM Typ
|
||||
label.tagged=Markiert
|
||||
label.tags=Markierungen
|
||||
label.target.iqn=Ziel IQN
|
||||
label.template.limits=Vorlagen Grenzen
|
||||
label.template=Vorlage
|
||||
label.TFTP.dir=TFTP-Verzeichnis
|
||||
label.theme.default=Motiv-Standardeinstellung
|
||||
label.theme.grey=personalisiertes - grau
|
||||
label.theme.lightblue=personalisiertes - hellblau
|
||||
label.thursday=Donnerstag
|
||||
label.time=Zeit
|
||||
label.time.zone=Zeitzone
|
||||
label.timezone=Zeitzone
|
||||
label.total.cpu=Gesamtanzahl CPU
|
||||
label.total.CPU=Gesamtanzahl CPU
|
||||
label.total.vms=Insgesamte VMs
|
||||
label.traffic.type=Traffic Typ
|
||||
label.tuesday=Dienstag
|
||||
label.type.id=Typ ID
|
||||
label.type=Typ
|
||||
label.unavailable=nichtverf\u00fcgbar
|
||||
label.unlimited=uneingeschr\u00e4nkt
|
||||
label.untagged=Unmarkiert
|
||||
label.updating=Aktualisierung
|
||||
label.url=URL
|
||||
label.used=Gebraucht
|
||||
label.user=Benutzer
|
||||
label.username=Benutzername
|
||||
label.users=Benutzer
|
||||
label.value=Wert
|
||||
label.vcenter.cluster=vCenter Cluster
|
||||
label.vcenter.datacenter=vCenter Rechenzentrum
|
||||
label.vcenter.datastore=vCenter Datenspeicher
|
||||
label.vcenter.host=vCenter Host
|
||||
label.vcenter.password=vCenter Passwort
|
||||
label.vcenter.username=vCenter Benutzername
|
||||
label.version=Version
|
||||
label.virtual.network=Virtuelles Netzwerk
|
||||
label.vlan.id=VLAN ID
|
||||
label.vlan.range=VLAN Reichweite
|
||||
label.vlan=VLAN
|
||||
label.vm.add=Instanz hinzuf\u00fcgen
|
||||
label.vm.destroy=Zerst\u00f6ren
|
||||
label.VMFS.datastore=VMFS Datenspeicher
|
||||
label.vmfs=VMFS
|
||||
label.vm.reboot=Neustart
|
||||
label.vmsnapshot.type=Typ
|
||||
label.vm.start=Start
|
||||
label.vm.stop=Stopp
|
||||
label.vms=VMs
|
||||
label.volume.limits=Volume Grenzen
|
||||
label.volume.name=Volume Name
|
||||
label.volumes=Volumes
|
||||
label.volume=Volume
|
||||
label.vpn=VPN
|
||||
label.waiting=Warten
|
||||
label.warn=Warnen
|
||||
label.wednesday=Mittwoch
|
||||
label.weekly=W\u00f6chentlich
|
||||
label.welcome=Willkommen
|
||||
label.yes=Ja
|
||||
label.zone.id=Zone ID
|
||||
label.zone=Zone
|
||||
message.acquire.public.ip=Bitte w\u00e4hlen Sie eine Zone, von der Sie Ihre neue IP erlangen m\u00f6chten.
|
||||
message.action.cancel.maintenance=Ihr Host ist erfolgreich f\u00fcr die Wartung abgebrochen. Dieser Prozess kann ein paar Minuten dauern.
|
||||
message.action.cancel.maintenance.mode=Bitte best\u00e4tigen Sie, dass Sie die Wartung abbrechen m\u00f6chten.
|
||||
message.action.change.service.warning.for.instance=Ihre Instanz muss zuerst unterbrochen werden, bevor Sie Ihr derzeitiges Service-Angebot \u00e4ndern m\u00f6chten.
|
||||
message.action.change.service.warning.for.router=Ihre Instanz muss zuerst unterbrochen werden, bevor Sie Ihr derzeitiges Service-Angebot \u00e4ndern m\u00f6chten.
|
||||
message.action.delete.cluster=Bitte best\u00e4tigen Sie, dass Sie dieses Cluster l\u00f6schen m\u00f6chten.
|
||||
message.action.delete.disk.offering=Bitte best\u00e4tigen Sie, dass Sie dieses Festplatten-Angebot l\u00f6schen m\u00f6chten.
|
||||
message.action.delete.domain=Bitte best\u00e4tigen Sie, dass Sie diese Domain l\u00f6schen m\u00f6chten.
|
||||
message.action.delete.ingress.rule=Bitte best\u00e4tigen Sie, dass Sie diese Zutrittsregel l\u00f6schen wollen.
|
||||
message.action.delete.ISO=Bitte best\u00e4tigen Sie, dass Sie diese ISO l\u00f6schen m\u00f6chten.
|
||||
message.action.delete.ISO.for.all.zones=Die ISO gilt f\u00fcr alle Zonen. Bitte best\u00e4tigen Sie, dass Sie diese aus allen Zonen l\u00f6schen m\u00f6chten.
|
||||
message.action.delete.network=Bitte best\u00e4tigen Sie, dass Sie dieses Netzwerk l\u00f6schen m\u00f6chten.
|
||||
message.action.delete.pod=Bitte best\u00e4tigen Sie, dass Sie dieses pod l\u00f6schen m\u00f6chten.
|
||||
message.action.delete.primary.storage=Bitte best\u00e4tigen Sie, dass Sie diese Hauptspeicher l\u00f6schen m\u00f6chten.
|
||||
message.action.delete.secondary.storage=Bitte best\u00e4tigen Sie, dass Sie diesen Sekund\u00e4rspeicher l\u00f6schen m\u00f6chten.
|
||||
message.action.delete.security.group=Bitte best\u00e4tigen Sie, dass Sie diese Sicherheitsgruppe l\u00f6schen m\u00f6chten.
|
||||
message.action.delete.service.offering=Bitte best\u00e4tigen Sie, dass Sie diesen Service-Angebot l\u00f6schen m\u00f6chten.
|
||||
message.action.delete.snapshot=Bitte best\u00e4tigen Sie, dass Sie diesen Schnappschuss l\u00f6schen m\u00f6chten.
|
||||
message.action.delete.template=Bitte best\u00e4tigen Sie, dass Sie diese Vorlage l\u00f6schen m\u00f6chten.
|
||||
message.action.delete.template.for.all.zones=Die Vorlage wird f\u00fcr alle Zonen genutzt. Bitte best\u00e4tigen Sie, dass Sie diese f\u00fcr alle Zonen l\u00f6schen m\u00f6chten.
|
||||
message.action.delete.volume=Bitte best\u00e4tigen Sie, dass Sie dieses Volume l\u00f6schen m\u00f6chten.
|
||||
message.action.delete.zone=Bitte best\u00e4tigen Sie, dass Sie diese Zone l\u00f6schen m\u00f6chten.
|
||||
message.action.destroy.instance=Bitte best\u00e4tigen Sie, dass Sie diese Instanz l\u00f6schen m\u00f6chten.
|
||||
message.action.destroy.systemvm=Bitte best\u00e4tigen Sie, dass Sie die System VM zerst\u00f6ren m\u00f6chten.
|
||||
message.action.disable.cluster=Bitte best\u00e4tigen Sie, dass Sie diesen Cluster deaktivieren m\u00f6chten.
|
||||
message.action.disable.pod=Bitte best\u00e4tigen Sie, dass Sie diesen Pod deaktivieren m\u00f6chten.
|
||||
message.action.disable.static.NAT=Bitte best\u00e4tigen Sie, dass Sie die statische NAT deaktivieren m\u00f6chten.
|
||||
message.action.disable.zone=Bitte best\u00e4tigen Sie, dass Sie diese Zone deaktivieren m\u00f6chten.
|
||||
message.action.enable.cluster=Bitte best\u00e4tigen Sie, dass Sie diesen Cluster aktivieren m\u00f6chten.
|
||||
message.action.enable.pod=Bitte best\u00e4tigen Sie, dass Sie diesen Pod aktivieren m\u00f6chten.
|
||||
message.action.enable.zone=Bitte best\u00e4tigen Sie, dass Sie diese Zone aktivieren m\u00f6chten.
|
||||
message.action.instance.reset.password=Bitte best\u00e4tigen Sie, dass Sie das ROOT Passwort f\u00fcr diese virtuelle Maschine \u00e4ndern m\u00f6chten.
|
||||
message.action.manage.cluster=Bitte best\u00e4tigen Sie, dass das Cluster bearbeitet werden soll.
|
||||
message.action.reboot.instance=Bitte best\u00e4tigen Sie, dass Sie diese Instanz neustarten m\u00f6chten.
|
||||
message.action.reboot.systemvm=Bitte best\u00e4tigen Sie, dass Sie diese System VM neustarten m\u00f6chten.
|
||||
message.action.reset.password.off=Ihre Instanz untersch\u00fctzt derzeitig nicht dieses Feature.
|
||||
message.action.reset.password.warning=Ihre Instanz muss zuerst unterbrochen werden, bevor Sie Ihr derzeitiges Passwort \u00e4ndern k\u00f6nnen.
|
||||
message.action.restore.instance=Bitte best\u00e4tigen Sie, dass Sie diese Instanz wiederherstellen m\u00f6chten.
|
||||
message.action.start.instance=Bitte best\u00e4tigen Sie, dass Sie diese Instanz starten m\u00f6chten.
|
||||
message.action.start.router=Bitte best\u00e4tigen Sie, dass Sie diesen Router starten m\u00f6chten.
|
||||
message.action.start.systemvm=Bitte best\u00e4tigen Sie, dass Sie diese System VM starten m\u00f6chten.
|
||||
message.action.stop.instance=Bitte best\u00e4tigen Sie, dass Sie diese Instanz anhalten m\u00f6chten.
|
||||
message.action.stop.systemvm=Bitte best\u00e4tigen Sie, dass Sie diese System VM anhalten m\u00f6chten.
|
||||
message.action.unmanage.cluster=Bitte best\u00e4tigen Sie, dass Sie das Cluster vernachl\u00e4ssigen m\u00f6chten.
|
||||
message.add.firewall=Eine Firewall zur Zone hinzuf\u00fcgen
|
||||
message.add.host=Bitte spezifizieren Sie die folgenden Parameter, um einen neuen Host hinzuzuf\u00fcgen.
|
||||
message.additional.networks.desc=Bitte w\u00e4hlen Sie ein oder mehrere Netzwerke aus, an die Ihre virtuelle Instanz verbunden wird.
|
||||
message.add.load.balancer=Einen Lastverteiler zur Zone hinzuf\u00fcgen
|
||||
message.add.primary=Bitte spezifizieren Sie die folgenden Parameter, um einen neuen Hauptspeicher hinzuzuf\u00fcgen
|
||||
message.add.template=Bitte geben Sie die folgende Daten ein, um Ihre neue Vorlage zu erstellen
|
||||
message.add.volume=Bitte geben Sie die folgende Daten ein, um ein neues Volume hinzuzuf\u00fcgen.
|
||||
message.allow.vpn.access=Bitte geben Sie einen Benutzernamen und ein Kennwort f\u00fcr den Benutzer ein, f\u00fcr den Sie VPN-Zugang m\u00f6chten.
|
||||
message.apply.snapshot.policy=Sie haben Ihre derzeitige Schnappschuss Richtlinie erfolgreich aktualisiert.
|
||||
message.attach.iso.confirm=Bitte best\u00e4tigen Sie, dass sie die ISO zu Ihrer virtuellen Instanz hinzuf\u00fcgen m\u00f6chten.
|
||||
message.change.offering.confirm=Bitte best\u00e4tigen Sie, dass Sie das Service-Angebot dieser virtuellen Instanz \u00e4ndern m\u00f6chten.
|
||||
message.copy.iso.confirm=Bitte best\u00e4tigen Sie, dass Sie Ihre ISO kopieren m\u00f6chten und zwar nach
|
||||
message.delete.account=Bitte best\u00e4tigen Sie, dass Sie dieses Benutzerkonto l\u00f6schen m\u00f6chten.
|
||||
message.detach.iso.confirm=Bitte best\u00e4tigen Sie, dass Sie die ISO von der virtuellen Instanz trennen m\u00f6chten.
|
||||
message.disable.account=Bitte best\u00e4tigen Sie, dass Sie Ihr Benutzerkonto deaktivieren m\u00f6chten. Kein Nutzer dieses Kontos wird mehr Zugriff auf die Cloud Ressourcen haben. Alle laufenden virtuellen Maschinen werden sofort abgestellt.
|
||||
message.disable.snapshot.policy=Sie haben Ihre derzeitige Schnappschuss Richtlinie erfolgreich deaktiviert.
|
||||
message.disable.vpn.access=Bitte best\u00e4tigen Sie, dass Sie den VPN Zugriff deaktivieren m\u00f6chten.
|
||||
message.enable.account=Bitte best\u00e4tigen Sie, dass Sie dieses Konto aktivieren m\u00f6chten.
|
||||
message.enabled.vpn=Ihr VPN Zugriff ist zurzeit aktiv und via IP k\u00f6nnen Sie darauf zugreifen
|
||||
message.enable.vpn.access=VPN ist zurzeit nicht f\u00fcr diese IP Addresse aktiviert. M\u00f6chten Sie den VPN Zugriff aktivieren?
|
||||
message.installWizard.click.retry=Bitte den Start Button f\u00fcr einen neuen Versuch dr\u00fccken
|
||||
message.installWizard.tooltip.addCluster.name=Der Name des Clusters. Der Name kann frei gew\u00e4hlt werden und wird von Cloudstack nicht genutzt.
|
||||
message.installWizard.tooltip.addHost.hostname=Der DNS-Name oder die IP-Adresse des hosts
|
||||
message.installWizard.tooltip.addHost.password=Dies ist das Passwort des o.a. Users (von der XenServer Installation)
|
||||
message.installWizard.tooltip.addHost.username=\u00fcberlicherweise root
|
||||
message.installWizard.tooltip.addPod.name=Der Name f\u00fcr den pod
|
||||
message.installWizard.tooltip.addPod.reservedSystemGateway=Das Gateways f\u00fcr die Hosts des pod
|
||||
message.installWizard.tooltip.addPod.reservedSystemNetmask=Die Subnetzmaske des Gast-Netzwerks
|
||||
message.installWizard.tooltip.addPrimaryStorage.name=Der Name der Storage Devices
|
||||
message.installWizard.tooltip.addPrimaryStorage.path=(f\u00fcr NFS) Bei NFS wird hier der exportierte Pfad (Shared Mount Point) angegeben. F\u00fcr KVM wird hier der Pfad angegeben, wo auf jedem Host das primary storage gemountet wurde. Z.B. "/mnt/primary"
|
||||
message.installWizard.tooltip.addPrimaryStorage.server=(f\u00fcr NFS, iSCSI oder PreSetup) Die IP-Adresse oder der DNS-Name des storage devices.
|
||||
message.installWizard.tooltip.addSecondaryStorage.nfsServer=Die IP-Adresse des NFS-Servers, der den Secondary Storage bereitstellt.
|
||||
message.installWizard.tooltip.addSecondaryStorage.path=Der exportierte Pfad, der auf dem o.a. Server liegt.
|
||||
message.installWizard.tooltip.addZone.name=Der Name f\u00fcr die zone
|
||||
message.installWizard.tooltip.configureGuestTraffic.description=Eine Beschreibung des Netzwerkes.
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestGateway=Das gateway, welches der Gast benutzen soll.
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestNetmask=Die Subnetzmaske des Gast-Netzwerks
|
||||
message.installWizard.tooltip.configureGuestTraffic.name=Der Name f\u00fcr das Netzwerk
|
||||
message.migrate.instance.to.host=Bitte best\u00e4tigen sie, dass die Instanz auf einen anderen Host migriert werden soll
|
||||
message.migrate.instance.to.ps=Bitte best\u00e4tigen sie, dass sie die Instanz auf einen anderen prim\u00e4ren Speicher migrieren wollen.
|
||||
message.new.user=Spezifieren Sie das folgende um einen neuen Nutzer dem Benutzerkonto hinzuzuf\u00fcgen
|
||||
message.remove.vpn.access=Bitte best\u00e4tigen Sie, dass Sie den VPN-Zugriff vom folgenden Benutzer entfernen m\u00f6chten.
|
||||
message.setup.successful=Cloud setup erfolgreich
|
||||
message.step.1.continue=Bitte w\u00e4hlen Sie eine Vorlage oder ISO, um fortzufahren
|
||||
message.step.2.continue=Bitte w\u00e4hlen Sie ein Service-Angebot, um fortzufahren
|
||||
message.step.2.desc=
|
||||
message.step.3.continue=Bitte w\u00e4hlen Sie ein Festplatten-Angebot, um fortzufahren
|
||||
message.step.3.desc=
|
||||
message.step.4.continue=Bitte w\u00e4hlen Sie mindestens ein Netzwerk, um fortzufahren
|
||||
message.step.4.desc=Bitte w\u00e4hlen Sie Ihr Hauptnetzwerk zu dem Ihre virtuelle Instanz verbunden sein wird.
|
||||
message.vm.create.template.confirm=Das Erstellen einer Vorlage f\u00fchrt automatisch zu einem Neustart der VM.
|
||||
message.zone.step.1.desc=Bitte w\u00e4hlen Sie ein Netzwerk-Modell f\u00fcr Ihre Zone.
|
||||
message.zone.step.2.desc=Bitte geben Sie die folgende Information ein, um eine neue Zone hinzuzuf\u00fcgen
|
||||
message.zone.step.3.desc=Bitte geben Sie die folgende Information ein, um einen neuen pod hinzuzuf\u00fcgen
|
||||
network.rate=Netzwerk-Rate
|
||||
state.Allocated=Zugeteilt
|
||||
state.Disabled=Deaktiviert
|
||||
state.Error=Fehler
|
||||
|
|
@ -0,0 +1,862 @@
|
|||
# Licensed to the Apache Software Foundation (ASF) under one
|
||||
# or more contributor license agreements. See the NOTICE file
|
||||
# distributed with this work for additional information
|
||||
# regarding copyright ownership. The ASF licenses this file
|
||||
# to you under the Apache License, Version 2.0 (the
|
||||
# "License"); you may not use this file except in compliance
|
||||
# with the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing,
|
||||
# software distributed under the License is distributed on an
|
||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
# KIND, either express or implied. See the License for the
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
|
||||
error.installWizard.message=Algo salio mal, debes ir para atr\u00e1s y corregir los error.
|
||||
error.login=Su nombre de usuario / contrase\u00c3\u00b1a no coincide con nuestros registros.
|
||||
error.mgmt.server.inaccessible=El Servidor de Gesti\u00c3\u00b3n es inaccesible. Por favor, int\u00c3\u00a9ntelo de nuevo m\u00c3\u00a1s tarde.
|
||||
error.session.expired=Su sesi\u00c3\u00b3n ha caducado.
|
||||
error.unresolved.internet.name=El nombre de Internet no se puede resolver.
|
||||
extractable=extra\u00c3\u00adble
|
||||
force.delete.domain.warning=Advertencia\: Si elige esta opci\u00c3\u00b3n, la supresi\u00c3\u00b3n de todos los dominios secundarios y todas las cuentas asociadas y sus recursos.
|
||||
force.delete=Fuerza Borrar
|
||||
force.remove=Fuerza Retire
|
||||
force.remove.host.warning=Advertencia\: Si elige esta opci\u00c3\u00b3n, CloudStack para detener la fuerza todas las m\u00c3\u00a1quinas virtuales en ejecuci\u00c3\u00b3n antes de retirar este host del cl\u00c3\u00baster.
|
||||
force.stop=Grupo de Alto
|
||||
force.stop.instance.warning=Advertencia\: Obligar a una parada en este caso deber\u00c3\u00ada ser su \u00c3\u00baltima opci\u00c3\u00b3n. Puede conducir a la p\u00c3\u00a9rdida de datos, as\u00c3\u00ad como un comportamiento incoherente del Estado de la m\u00c3\u00a1quina virtual.
|
||||
ICMP.code=ICMP C\u00c3\u00b3digo
|
||||
ICMP.type=Tipo ICMP
|
||||
image.directory=Directorio de la imagen
|
||||
inline=en l\u00c3\u00adnea
|
||||
label.account=Cuenta
|
||||
label.account.id=ID de la cuenta
|
||||
label.account.name=Nombre de la cuenta
|
||||
label.accounts=Cuentas
|
||||
label.account.specific=espec\u00c3\u00adficas de la cuenta
|
||||
label.acquire.new.ip=adquirir nuevas IP
|
||||
label.action.attach.disk=Conecte el disco
|
||||
label.action.attach.disk.processing=disco Fijaci\u00c3\u00b3n ....
|
||||
label.action.attach.iso=Adjuntar ISO
|
||||
label.action.attach.iso.processing=Colocaci\u00c3\u00b3n de la norma ISO ....
|
||||
label.action.cancel.maintenance.mode=Cancelar modo de mantenimiento
|
||||
label.action.cancel.maintenance.mode.processing=Cancelaci\u00c3\u00b3n del modo de mantenimiento ....
|
||||
label.action.change.password=Cambiar contrase\u00c3\u00b1a
|
||||
label.action.change.service=Cambio de Servicio
|
||||
label.action.change.service.processing=Cambio de servicio ....
|
||||
label.action.copy.ISO=Copia de la ISO
|
||||
label.action.copy.ISO.processing=hacer frente ISO ....
|
||||
label.action.copy.template=Copia de plantilla
|
||||
label.action.copy.template.processing=hacer frente plantilla ....
|
||||
label.action.create.template=Crear plantilla
|
||||
label.action.create.template.from.vm=Crear plantilla de VM
|
||||
label.action.create.template.from.volume=Crear plantilla de volumen
|
||||
label.action.create.template.processing=Creaci\u00c3\u00b3n de plantillas ....
|
||||
label.action.create.vm=Crear VM
|
||||
label.action.create.vm.processing=Creaci\u00c3\u00b3n de m\u00c3\u00a1quina virtual ....
|
||||
label.action.create.volume=Crear volumen
|
||||
label.action.create.volume.processing=Crear volumen ....
|
||||
label.action.delete.account=Eliminar cuenta
|
||||
label.action.delete.account.processing=Eliminar cuentas ....
|
||||
label.action.delete.cluster=Borrar Grupo
|
||||
label.action.delete.cluster.processing=Borrar Grupo ....
|
||||
label.action.delete.disk.offering=Borrar disco Ofrenda
|
||||
label.action.delete.disk.offering.processing=Borrar disco ofrece ....
|
||||
label.action.delete.domain=Eliminar de dominio
|
||||
label.action.delete.domain.processing=Eliminaci\u00c3\u00b3n de dominio ....
|
||||
label.action.delete.firewall=Eliminar servidor de seguridad
|
||||
label.action.delete.firewall.processing=Eliminaci\u00c3\u00b3n de firewall ....
|
||||
label.action.delete.ingress.rule=Borrar ingreso Regla
|
||||
label.action.delete.ingress.rule.processing=Eliminaci\u00c3\u00b3n de ingreso regla ....
|
||||
label.action.delete.IP.range=Eliminar Rango de IP
|
||||
label.action.delete.IP.range.processing=Eliminar Rango de IP ....
|
||||
label.action.delete.ISO=Eliminar ISO
|
||||
label.action.delete.ISO.processing=Eliminaci\u00c3\u00b3n de la norma ISO ....
|
||||
label.action.delete.load.balancer=Eliminar equilibrador de carga
|
||||
label.action.delete.load.balancer.processing=Eliminaci\u00c3\u00b3n del equilibrador de carga ....
|
||||
label.action.delete.network=Eliminar Red
|
||||
label.action.delete.network.processing=Eliminaci\u00c3\u00b3n de red ....
|
||||
label.action.delete.pod=Eliminar Pod
|
||||
label.action.delete.pod.processing=Eliminar Pod ....
|
||||
label.action.delete.primary.storage=Almacenamiento primario Eliminar
|
||||
label.action.delete.primary.storage.processing=Eliminaci\u00c3\u00b3n de almacenamiento primaria ....
|
||||
label.action.delete.secondary.storage.processing=Eliminaci\u00c3\u00b3n de almacenamiento secundario ....
|
||||
label.action.delete.secondary.storage=secundaria almacenamiento Eliminar
|
||||
label.action.delete.security.group=Borrar Grupo de Seguridad
|
||||
label.action.delete.security.group.processing=Eliminar grupo de seguridad ....
|
||||
label.action.delete.service.offering=Eliminar Oferta de Servicio
|
||||
label.action.delete.service.offering.processing=Eliminaci\u00c3\u00b3n de Oferta de Servicio ....
|
||||
label.action.delete.snapshot=Eliminar instant\u00c3\u00a1nea
|
||||
label.action.delete.snapshot.processing=Eliminar instant\u00c3\u00a1nea ....
|
||||
label.action.delete.template=Eliminar plantilla
|
||||
label.action.delete.template.processing=Eliminar plantilla ....
|
||||
label.action.delete.user=Eliminar usuario
|
||||
label.action.delete.user.processing=Eliminar usuario ....
|
||||
label.action.delete.volume=Eliminar volumen
|
||||
label.action.delete.volume.processing=Eliminar volumen ....
|
||||
label.action.delete.zone=Eliminar Zona
|
||||
label.action.delete.zone.processing=Eliminaci\u00c3\u00b3n de la Zona ....
|
||||
label.action.destroy.instance=Destruye Instancia
|
||||
label.action.destroy.instance.processing=Destrucci\u00c3\u00b3n Instancia ....
|
||||
label.action.destroy.systemvm=destruir el sistema VM
|
||||
label.action.destroy.systemvm.processing=Destrucci\u00c3\u00b3n del sistema VM ....
|
||||
label.action.detach.disk.processing=Extracci\u00c3\u00b3n disco ....
|
||||
label.action.detach.disk=Separar disco
|
||||
label.action.detach.iso.processing=Extracci\u00c3\u00b3n ISO ....
|
||||
label.action.detach.iso=Separar ISO
|
||||
label.action.disable.account=Desactivar cuenta
|
||||
label.action.disable.account.processing=Deshabilitar cuenta ....
|
||||
label.action.disable.cluster=Deshabilitar cl\u00c3\u00baster
|
||||
label.action.disable.cluster.processing=Desactivaci\u00c3\u00b3n de Cluster Server ....
|
||||
label.action.disable.pod=Deshabilitar Pod
|
||||
label.action.disable.pod.processing=Deshabilitar Pod ....
|
||||
label.action.disable.static.NAT=Deshabilitar NAT est\u00c3\u00a1tica
|
||||
label.action.disable.static.NAT.processing=Deshabilitar NAT est\u00c3\u00a1tica ....
|
||||
label.action.disable.user=Deshabilitar usuario
|
||||
label.action.disable.user.processing=Desactivaci\u00c3\u00b3n de usuario ....
|
||||
label.action.disable.zone=Deshabilitar la zona
|
||||
label.action.disable.zone.processing=Desactivaci\u00c3\u00b3n de la zona ....
|
||||
label.action.download.ISO=ISO Descargar
|
||||
label.action.download.template=Descargar plantilla
|
||||
label.action.download.volume=Descargar Volumen
|
||||
label.action.download.volume.processing=Volumen Descargar ....
|
||||
label.action.edit.account=Editar cuenta
|
||||
label.action.edit.disk.offering=Editar disco Ofrenda
|
||||
label.action.edit.domain=Editar Dominio
|
||||
label.action.edit.global.setting=Editar Mundial Marco
|
||||
label.action.edit.host=edici\u00c3\u00b3n Anfitri\u00c3\u00b3n
|
||||
label.action.edit.instance=Editar Instancia
|
||||
label.action.edit.ISO=Editar ISO
|
||||
label.action.edit.network=Edici\u00c3\u00b3n de redes
|
||||
label.action.edit.network.offering=Editar Red ofrece
|
||||
label.action.edit.pod=Editar Pod
|
||||
label.action.edit.primary.storage=Editar Almacenamiento primario
|
||||
label.action.edit.resource.limits=Editar l\u00c3\u00admites de recursos
|
||||
label.action.edit.service.offering=Editar Oferta de Servicio
|
||||
label.action.edit.template=Editar plantilla
|
||||
label.action.edit.user=Editar usuario
|
||||
label.action.edit.zone=Edici\u00c3\u00b3n Zona
|
||||
label.action.enable.account=Habilitar cuenta
|
||||
label.action.enable.account.processing=cuenta de Habilitaci\u00c3\u00b3n ....
|
||||
label.action.enable.cluster=Habilitar cl\u00c3\u00baster
|
||||
label.action.enable.cluster.processing=Habilitar cl\u00c3\u00baster ....
|
||||
label.action.enable.maintenance.mode=Activar el modo de mantenimiento
|
||||
label.action.enable.maintenance.mode.processing=Habilitaci\u00c3\u00b3n del modo de mantenimiento ....
|
||||
label.action.enable.pod=Habilitar Pod
|
||||
label.action.enable.pod.processing=Habilitaci\u00c3\u00b3n Pod ....
|
||||
label.action.enable.static.NAT=Habilitar NAT est\u00c3\u00a1tica
|
||||
label.action.enable.static.NAT.processing=Habilitar NAT est\u00c3\u00a1tica ....
|
||||
label.action.enable.user.processing=Habilitaci\u00c3\u00b3n del usuario ....
|
||||
label.action.enable.user=usuario Activar
|
||||
label.action.enable.zone=Habilitar la zona
|
||||
label.action.enable.zone.processing=Habilitaci\u00c3\u00b3n de zona ....
|
||||
label.action.force.reconnect=Fuerza Vuelva a conectar
|
||||
label.action.force.reconnect.processing=Reconectando ....
|
||||
label.action.generate.keys=Generar Claves
|
||||
label.action.generate.keys.processing=Generar claves ....
|
||||
label.action.lock.account=Bloqueo de cuenta
|
||||
label.action.lock.account.processing=Bloqueo de cuenta ....
|
||||
label.action.manage.cluster=gestionar racimo
|
||||
label.action.manage.cluster.processing=La gesti\u00c3\u00b3n de cl\u00c3\u00basteres ....
|
||||
label.action.migrate.instance=Migrar Instancia
|
||||
label.action.migrate.instance.processing=Migrar Instancia ....
|
||||
label.action.migrate.router=migrar Router
|
||||
label.action.migrate.router.processing=Migraci\u00c3\u00b3n router ....
|
||||
label.action.migrate.systemvm=Migrar del sistema VM
|
||||
label.action.migrate.systemvm.processing=La migraci\u00c3\u00b3n de VM del sistema ....
|
||||
label.action.reboot.instance.processing=Reiniciar Instancia ....
|
||||
label.action.reboot.instance=Reiniciar Instancia
|
||||
label.action.reboot.router.processing=Reiniciar router ....
|
||||
label.action.reboot.router=Reiniciar router
|
||||
label.action.reboot.systemvm.processing=reinicio del sistema VM ....
|
||||
label.action.reboot.systemvm=Reiniciar sistema VM
|
||||
label.action.recurring.snapshot=recurrente instant\u00c3\u00a1neas
|
||||
label.action.release.ip=estreno IP
|
||||
label.action.release.ip.processing=Liberar IP ....
|
||||
label.action.remove.host.processing=Extracci\u00c3\u00b3n de host ....
|
||||
label.action.remove.host=Quitar host
|
||||
label.action.reset.password.processing=Restablecimiento de la contrase\u00c3\u00b1a ....
|
||||
label.action.reset.password=Restablecer contrase\u00c3\u00b1a
|
||||
label.action.resource.limits=Recursos l\u00c3\u00admites
|
||||
label.action.restore.instance.processing=Restaurar Instancia ....
|
||||
label.action.restore.instance=Restaurar Instancia
|
||||
label.actions=Acciones
|
||||
label.action.start.instance=Iniciar Instancia
|
||||
label.action.start.instance.processing=A partir Instancia ....
|
||||
label.action.start.router=inicio del router
|
||||
label.action.start.router.processing=A partir del router ....
|
||||
label.action.start.systemvm=Inicio del sistema VM
|
||||
label.action.start.systemvm.processing=A partir del sistema VM ....
|
||||
label.action.stop.instance=Detener Instancia
|
||||
label.action.stop.instance.processing=Detener Instancia ....
|
||||
label.action.stop.router=Detener router
|
||||
label.action.stop.router.processing=Detener router ....
|
||||
label.action.stop.systemvm=parada del sistema VM
|
||||
label.action.stop.systemvm.processing=Detener sistema VM ....
|
||||
label.action.take.snapshot.processing=Tomar instant\u00c3\u00a1neas ....
|
||||
label.action.take.snapshot=Tomar instant\u00c3\u00a1nea
|
||||
label.action.unmanage.cluster.processing=Unmanaging Grupo ....
|
||||
label.action.unmanage.cluster=Unmanage racimo
|
||||
label.action.update.OS.preference=Actualizar OS Preferencia
|
||||
label.action.update.OS.preference.processing=Actualizaci\u00c3\u00b3n de sistema operativo preferencia ....
|
||||
label.action.update.resource.count=Actualizaci\u00c3\u00b3n de recursos Conde
|
||||
label.action.update.resource.count.processing=Actualizaci\u00c3\u00b3n de Conde de recursos ....
|
||||
label.active.sessions=Sesiones activas
|
||||
label.add.account=A\u00c3\u00b1adir cuenta
|
||||
label.add=Agregar
|
||||
label.add.by.cidr=A\u00c3\u00b1adir Por CIDR
|
||||
label.add.by.group=A\u00c3\u00b1adir Por el Grupo de
|
||||
label.add.cluster=A\u00c3\u00b1adir Grupo
|
||||
label.add.direct.iprange=A\u00c3\u00b1adir Direct IP Gama
|
||||
label.add.disk.offering=A\u00c3\u00b1adir disco Ofrenda
|
||||
label.add.domain=Agregar dominio
|
||||
label.add.firewall=Agregar Servidor de seguridad
|
||||
label.add.host=Agregar host
|
||||
label.adding=Agregar
|
||||
label.adding.cluster=Adici\u00c3\u00b3n de cl\u00c3\u00baster
|
||||
label.adding.failed=No se pudo agregar
|
||||
label.adding.pod=Agregar Pod
|
||||
label.adding.processing=A\u00c3\u00b1adir ....
|
||||
label.add.ingress.rule=A\u00c3\u00b1adir regla del ingreso
|
||||
label.adding.succeeded=Agregar Sucesor
|
||||
label.adding.user=Agregar usuario
|
||||
label.adding.zone=Agregar la zona
|
||||
label.add.ip.range=A\u00c3\u00b1adir Rango de IP
|
||||
label.additional.networks=Redes adicional
|
||||
label.add.load.balancer=A\u00c3\u00b1adir equilibrador de carga
|
||||
label.add.more=A\u00c3\u00b1adir m\u00c3\u00a1s
|
||||
label.add.network=Agregar sitios de red
|
||||
label.add.network.device=A\u00c3\u00b1adir dispositivo de red
|
||||
label.add.pod=A\u00c3\u00b1adir Pod
|
||||
label.add.primary.storage=A\u00c3\u00b1adir Almacenamiento primario
|
||||
label.add.secondary.storage=A\u00c3\u00b1adir secundaria almacenamiento
|
||||
label.add.security.group=Agregar grupo de seguridad
|
||||
label.add.service.offering=A\u00c3\u00b1adir Servicio de Oferta
|
||||
label.add.template=A\u00c3\u00b1adir plantilla
|
||||
label.add.to.group=Agregar al grupo
|
||||
label.add.user=Agregar usuario
|
||||
label.add.vlan=A\u00c3\u00b1adir VLAN
|
||||
label.add.volume=A\u00c3\u00b1adir volumen
|
||||
label.add.zone=A\u00c3\u00b1adir Zona
|
||||
label.admin.accounts=Administrador de Cuentas
|
||||
label.admin=Admin
|
||||
label.advanced=Avanzado
|
||||
label.advanced.mode=Modo avanzado
|
||||
label.advanced.search=B\u00c3\u00basqueda Avanzada
|
||||
label.alert=Alerta
|
||||
label.algorithm=Algoritmo
|
||||
label.allocated=Asignados
|
||||
label.api.key=clave de API
|
||||
label.assign=Asignar
|
||||
label.assign.to.load.balancer=instancia de Asignaci\u00c3\u00b3n de equilibrador de carga
|
||||
label.associated.network.id=ID de red asociados
|
||||
label.attached.iso=adjunta ISO
|
||||
label.availability=Disponibilidad
|
||||
label.availability.zone=Disponibilidad de la zona
|
||||
label.available=Disponible
|
||||
label.available.public.ips=Disponible direcciones IP p\u00c3\u00bablicas
|
||||
label.back=Volver
|
||||
label.basic.mode=Modo b\u00c3\u00a1sico
|
||||
label.bootable=arranque
|
||||
label.broadcast.domain.type=Tipo de dominio de difusi\u00c3\u00b3n
|
||||
label.by.account=Por Cuenta
|
||||
label.by.availability=Por Disponibilidad
|
||||
label.by.domain=Por dominio
|
||||
label.by.end.date=Por Fecha de finalizaci\u00c3\u00b3n
|
||||
label.by.level=por Nivel
|
||||
label.by.pod=Por Pod
|
||||
label.by.role=por funci\u00c3\u00b3n
|
||||
label.by.start.date=Por Fecha de inicio
|
||||
label.by.state=Por Estado
|
||||
label.bytes.received=Bytes recibidos
|
||||
label.bytes.sent=Bytes enviados
|
||||
label.by.traffic.type=Por tipo de tr\u00c3\u00a1fico
|
||||
label.by.type.id=Por tipo de identificaci\u00c3\u00b3n
|
||||
label.by.type=Por tipo
|
||||
label.by.zone=Por Zona
|
||||
label.cancel=Cancelar
|
||||
label.certificate=Certificado
|
||||
label.character=Personaje
|
||||
label.cidr.account=CIDR o de cuenta / Grupo de Seguridad
|
||||
label.cidr=CIDR
|
||||
label.cidr.list=fuente CIDR
|
||||
label.close=Cerrar
|
||||
label.cloud.console=Cloud Management Console
|
||||
label.cloud.managed=Cloud.com Gestionado
|
||||
label.cluster=Grupo
|
||||
label.cluster.type=Tipo de Cluster Server
|
||||
label.clvm=CLVM
|
||||
label.code=C\u00c3\u00b3digo
|
||||
label.configuration=Configuraci\u00c3\u00b3n
|
||||
label.confirmation=Confirmation
|
||||
label.congratulations=Felicitaciones \!
|
||||
label.cpu.allocated=CPU asignado
|
||||
label.cpu.allocated.for.VMs=CPU asignado para m\u00c3\u00a1quinas virtuales
|
||||
label.CPU.cap=CPU Cap
|
||||
label.cpu=CPU
|
||||
label.cpu.utilized=CPU Utilizado
|
||||
label.created=creaci\u00c3\u00b3n
|
||||
label.cross.zones=Cruz Zonas
|
||||
label.custom.disk.size=Personal Disk Size
|
||||
label.daily=diario
|
||||
label.data.disk.offering=Datos Disco Offering
|
||||
label.date=Fecha
|
||||
label.day.of.month=D\u00c3\u00ada del mes
|
||||
label.day.of.week=d\u00c3\u00ada de la semana
|
||||
label.default.use=Usar por defecto
|
||||
label.delete=Eliminar
|
||||
label.deleting.failed=No se pudo eliminar
|
||||
label.deleting.processing=Eliminar ....
|
||||
label.description=Descripci\u00c3\u00b3n
|
||||
label.destroy=Destroy
|
||||
label.detaching.disk=Extracci\u00c3\u00b3n del disco
|
||||
label.details=Detalles
|
||||
label.device.id=ID de dispositivo
|
||||
label.DHCP.server.type=Tipo de servidor DHCP
|
||||
label.disabled=personas de movilidad reducida
|
||||
label.disabling.vpn.access=Desactivaci\u00c3\u00b3n de VPN de acceso
|
||||
label.disk.allocated=disco asignado
|
||||
label.disk.offering=disco Ofrenda
|
||||
label.disk.size.gb=tama\u00c3\u00b1o de disco (en GB)
|
||||
label.disk.size=tama\u00c3\u00b1o de disco
|
||||
label.disk.total=disco Total
|
||||
label.disk.volume=volumen de disco
|
||||
label.display.text=visualizaci\u00c3\u00b3n de texto
|
||||
label.dns.1=DNS 1
|
||||
label.dns.2=DNS 2
|
||||
label.domain.admin=Administrador de dominio
|
||||
label.domain=dominio
|
||||
label.domain.id=ID de dominio
|
||||
label.domain.name=Nombre de dominio
|
||||
label.domain.suffix=DNS sufijo de dominio (es decir, xyz.com)
|
||||
label.double.quotes.are.not.allowed=comillas dobles no se permite
|
||||
label.download.progress=Progreso de la descarga
|
||||
label.edit=Editar
|
||||
label.email=correo electr\u00c3\u00b3nico
|
||||
label.enabling.vpn.access=Habilitaci\u00c3\u00b3n de Acceso VPN
|
||||
label.enabling.vpn=Habilitaci\u00c3\u00b3n VPN
|
||||
label.endpoint.or.operation=punto final o de Operaci\u00c3\u00b3n
|
||||
label.end.port=Puerto final
|
||||
label.error.code=C\u00c3\u00b3digo de error
|
||||
label.error=Error
|
||||
label.esx.host=ESX / ESXi anfitri\u00c3\u00b3n
|
||||
label.example=Ejemplo
|
||||
label.failed=Error
|
||||
label.featured=destacados
|
||||
label.firewall=Servidor de seguridad
|
||||
label.first.name=Nombre
|
||||
label.format=Formato
|
||||
label.friday=Viernes
|
||||
label.full=completo
|
||||
label.gateway=puerta de enlace
|
||||
label.general.alerts=General de Alertas
|
||||
label.generating.url=Generar URL
|
||||
label.go.step.2=Ir al paso 2
|
||||
label.go.step.3=Ir al paso 3
|
||||
label.go.step.4=Ir al paso 4
|
||||
label.go.step.5=Ir al paso 5
|
||||
label.group=Grupo
|
||||
label.group.optional=Grupo (Opcional)
|
||||
label.guest.cidr=Habitaci\u00c3\u00b3n CIDR
|
||||
label.guest.gateway=Habitaci\u00c3\u00b3n Gateway
|
||||
label.guest.ip=Habitaci\u00c3\u00b3n direcci\u00c3\u00b3n IP
|
||||
label.guest.ip.range=Habitaci\u00c3\u00b3n Rango de IP
|
||||
label.guest.netmask=Habitaci\u00c3\u00b3n m\u00c3\u00a1scara de red
|
||||
label.ha.enabled=HA Activado
|
||||
label.help=Ayuda
|
||||
label.hide.ingress.rule=Ocultar el art\u00c3\u00adculo ingreso
|
||||
label.host.alerts=Host Alertas
|
||||
label.host=Ej\u00c3\u00a9rcitos
|
||||
label.host.name=nombre de host
|
||||
label.hosts=Ej\u00c3\u00a9rcitos
|
||||
label.hourly=por hora
|
||||
label.hypervisor=Hypervisor
|
||||
label.hypervisor.type=Tipo Hypervisor
|
||||
label.id=ID
|
||||
label.info=Informaci\u00c3\u00b3n
|
||||
label.ingress.rule=ingreso Regla
|
||||
label.initiated.by=Iniciado por
|
||||
label.installWizard.click.launch=Click en el bot\u00f3n de lanzar.
|
||||
label.instance=Instancia
|
||||
label.instance.limits=Instancia L\u00c3\u00admites
|
||||
label.instance.name=Nombre de instancia
|
||||
label.instances=Instancias
|
||||
label.internal.dns.1=DNS interno una
|
||||
label.internal.dns.2=DNS interno 2
|
||||
label.interval.type=Tipo de intervalo
|
||||
label.invalid.integer=entero no v\u00c3\u00a1lido
|
||||
label.invalid.number=N\u00c3\u00bamero no v\u00c3\u00a1lido
|
||||
label.invite=Invitar
|
||||
label.invite.to=Invitar a .
|
||||
label.ip.address=Direcci\u00c3\u00b3n IP
|
||||
label.ipaddress=Direcci\u00c3\u00b3n IP
|
||||
label.ip.allocations=IP asignaciones
|
||||
label.ip=IP
|
||||
label.ip.limits=IP p\u00c3\u00bablica L\u00c3\u00admites
|
||||
label.ip.or.fqdn=IP o FQDN
|
||||
label.ip.range=Rango de IP
|
||||
label.ips=IP
|
||||
label.iscsi=iSCSI
|
||||
label.is.default=Es por defecto
|
||||
label.iso.boot=ISO de arranque
|
||||
label.iso=ISO
|
||||
label.isolation.mode=modo de aislamiento
|
||||
label.is.redundant.router=redundante
|
||||
label.is.shared=es compartido
|
||||
label.is.system=es el Sistema
|
||||
label.keep=Mantener
|
||||
label.lang.chinese=Chino (simplificado)
|
||||
label.lang.english=Ingl\u00c3\u00a9s
|
||||
label.lang.japanese=japon\u00c3\u00a9s
|
||||
label.lang.spanish=Espa\u00c3\u00b1ol
|
||||
label.last.disconnected=\u00c3\u009altima Desconectado
|
||||
label.last.name=Apellido
|
||||
label.launch=Lanzar
|
||||
label.launch.vm=Lanzar maquina virtual
|
||||
label.level=Nivel
|
||||
label.load.balancer=equilibrador de carga
|
||||
label.loading=Carga
|
||||
label.local=local
|
||||
label.login=Login
|
||||
label.logout=Cerrar sesi\u00c3\u00b3n
|
||||
label.lun=LUN
|
||||
label.manage=Administrar
|
||||
label.maximum=m\u00c3\u00a1ximo
|
||||
label.max.volumes=Maxima cantidad de Volumes
|
||||
label.memory.allocated=memoria asignada
|
||||
label.memory=memoria (en MB)
|
||||
label.memory.total=Total de memoria
|
||||
label.memory.used=memoria usada
|
||||
label.menu.accounts=Cuentas
|
||||
label.menu.alerts=Alertas
|
||||
label.menu.all.accounts=Todas las cuentas
|
||||
label.menu.all.instances=todas las instancias
|
||||
label.menu.community.isos=Comunidad ISOs
|
||||
label.menu.community.templates=plantillas de la comunidad
|
||||
label.menu.configuration=Configuraci\u00c3\u00b3n
|
||||
label.menu.dashboard=Interfaz
|
||||
label.menu.destroyed.instances=Destruir instancias
|
||||
label.menu.disk.offerings=disco ofertas
|
||||
label.menu.domains=dominio
|
||||
label.menu.events=Eventos
|
||||
label.menu.featured.isos=destacados ISO
|
||||
label.menu.featured.templates=destacados plantillas
|
||||
label.menu.global.settings=Configuraci\u00c3\u00b3n global
|
||||
label.menu.instances=Instancias
|
||||
label.menu.ipaddresses=Direcciones IP
|
||||
label.menu.isos=ISO
|
||||
label.menu.my.accounts=Mis cuentas
|
||||
label.menu.my.instances=Mi instancias
|
||||
label.menu.my.isos=Mi ISOs
|
||||
label.menu.my.templates=Mis plantillas
|
||||
label.menu.network.offerings=Red de ofertas
|
||||
label.menu.network=Red
|
||||
label.menu.physical.resources=Recursos F\u00c3\u00adsicos
|
||||
label.menu.running.instances=Ejecuci\u00c3\u00b3n de instancias
|
||||
label.menu.security.groups=Grupos de seguridad
|
||||
label.menu.service.offerings=Ofertas de Servicios
|
||||
label.menu.snapshots=instant\u00c3\u00a1neas
|
||||
label.menu.stopped.instances=Detenido instancias
|
||||
label.menu.storage=Almacenamiento
|
||||
label.menu.system=Sistema
|
||||
label.menu.system.vms=Sistema de m\u00c3\u00a1quinas virtuales
|
||||
label.menu.templates=plantillas
|
||||
label.menu.virtual.appliances=Virtual Appliances
|
||||
label.menu.virtual.resources=Virtual de Recursos
|
||||
label.menu.volumes=Vol\u00c3\u00bamenes
|
||||
label.migrate.instance.to.host=Migrar instancia a otro host.
|
||||
label.migrate.instance.to=Migraci\u00c3\u00b3n de ejemplo para
|
||||
label.migrate.instance.to.ps=Migrar instancia a otro primary storage.
|
||||
label.migrate.router.to=Router para migrar
|
||||
label.migrate.systemvm.to=Migrar m\u00c3\u00a1quina virtual del sistema para
|
||||
label.minimum=M\u00c3\u00adnimo
|
||||
label.minute.past.hour=Minuto (s) despu\u00c3\u00a9s de la hora
|
||||
label.monday=lunes
|
||||
label.monthly=mensual
|
||||
label.more.templates=plantillas \= M\u00c3\u00a1s
|
||||
label.my.account=Mi Cuenta
|
||||
label.my.templates=Mis plantillas
|
||||
label.name=Nombre
|
||||
label.name.optional=Nombre (Opcional)
|
||||
label.netmask=m\u00c3\u00a1scara de red
|
||||
label.network.desc=Red de Desc
|
||||
label.network.device=De dispositivos de red
|
||||
label.network.device.type=Tipo de red de dispositivos
|
||||
label.network.domain=red de dominio
|
||||
label.network.id=ID de red
|
||||
label.network.name=Nombre de red
|
||||
label.network.offering.display.text=Red ofrece visualizaci\u00c3\u00b3n de texto
|
||||
label.network.offering.id=Red ofrece ID
|
||||
label.network.offering.name=Red ofrece Nombre
|
||||
label.network.offering=Red ofrece
|
||||
label.network.rate=Tasa de Red
|
||||
label.network.read=Leer de la red
|
||||
label.network=Red
|
||||
label.networks=Redes
|
||||
label.network.type=Tipo de red
|
||||
label.network.write=Escribir en la red
|
||||
label.new=Nuevo
|
||||
label.new.password=Nueva contrase\u00c3\u00b1a
|
||||
label.new.vm=Nueva maquina virtual
|
||||
label.next=Siguiente
|
||||
label.nfs=NFS
|
||||
label.nfs.server=servidor NFS
|
||||
label.nfs.storage=NFS Almacenamiento
|
||||
label.nics=NIC
|
||||
label.no.actions=No Acciones disponibles
|
||||
label.no.alerts=No alertas recientes
|
||||
label.no.errors=No recientes errores
|
||||
label.no.isos=No ISOs disponibles
|
||||
label.no.items=No art\u00c3\u00adculos disponibles
|
||||
label.none=Ninguno
|
||||
label.no=No
|
||||
label.no.security.groups=No hay grupos disponibles de Seguridad
|
||||
label.not.found=No se ha encontrado
|
||||
label.no.thanks=No, gracias
|
||||
label.num.cpu.cores=n\u00c3\u00bamero de n\u00c3\u00bacleos de CPU
|
||||
label.numretries=N\u00c3\u00bamero de reintentos
|
||||
label.ocfs2=OCFS2
|
||||
label.offer.ha=Oferta HA
|
||||
label.optional=Opcional
|
||||
label.os.preference=OS Preferencia
|
||||
label.os.type=tipo de Sistema Operativo
|
||||
label.owned.public.ips=propiedad p\u00c3\u00bablica Direcciones IP
|
||||
label.owner.account=titular de la cuenta
|
||||
label.parent.domain=Padres de dominio
|
||||
label.password=Contrase\u00c3\u00b1a
|
||||
label.password.enabled=Contrase\u00c3\u00b1a Activado
|
||||
label.path=Ruta
|
||||
label.PING.CIFS.password=PING CIFS contrase\u00c3\u00b1a
|
||||
label.PING.CIFS.username=PING CIFS nombre de usuario
|
||||
label.PING.dir=PING Directorio
|
||||
label.PING.storage.IP=PING almacenamiento IP
|
||||
label.please.wait=Por favor espere
|
||||
label.pod=Pod
|
||||
label.port.forwarding=Port Forwarding
|
||||
label.port.range=rango de puertos
|
||||
label.PreSetup=PreSetup
|
||||
label.prev=Anterior
|
||||
label.previous=Previo
|
||||
label.primary.allocated=primaria asignado de almacenamiento
|
||||
label.primary.network=Red Primaria
|
||||
label.primary.storage=Almacenamiento Primario
|
||||
label.primary.used=Primaria Almacenado
|
||||
label.private.interface=Interfaz privada
|
||||
label.private.ip=direcci\u00c3\u00b3n IP privada
|
||||
label.private.ip.range=IP privada Gama
|
||||
label.private.ips=direcciones IP privadas
|
||||
label.privatekey=PKCS\#8 la clave privada
|
||||
label.private.port=Puerto privado
|
||||
label.private.zone=Zona Privada
|
||||
label.project.name=Nombre del Proyecto
|
||||
label.protocol=Protocolo
|
||||
label.public.interface=interfaz p\u00c3\u00bablica
|
||||
label.public.ip=direcci\u00c3\u00b3n IP p\u00c3\u00bablica
|
||||
label.public.ips=direcciones IP p\u00c3\u00bablicas
|
||||
label.public.port=Puerto P\u00c3\u00bablico
|
||||
label.public=P\u00c3\u00bablica
|
||||
label.public.zone=Zona P\u00c3\u00bablica
|
||||
label.Pxe.server.type=Tipo de servidor Pxe
|
||||
label.reboot=Reiniciar
|
||||
label.recent.errors=recientes errores
|
||||
label.redundant.router=enrutador redundante
|
||||
label.refresh=Actualizar
|
||||
label.related=relacionados
|
||||
label.remind.later=Recordar mas tarde
|
||||
label.remove.from.load.balancer=ejemplo Eliminaci\u00c3\u00b3n de equilibrador de carga
|
||||
label.removing=Borrando.
|
||||
label.removing.user=Eliminar usuario
|
||||
label.required=Requerido
|
||||
label.reserved.system.ip=Reservados sistema de PI
|
||||
label.resource.limits=L\u00c3\u00admites de Recursos
|
||||
label.resource=Recursos
|
||||
label.resources=Recursos
|
||||
label.role=Papel
|
||||
label.root.disk.offering=Root Disco Offering
|
||||
label.running.vms=Ejecuci\u00c3\u00b3n de m\u00c3\u00a1quinas virtuales
|
||||
label.s3.secret_key=clave secreta
|
||||
label.saturday=s\u00c3\u00a1bado
|
||||
label.save=Guardar
|
||||
label.saving.processing=ahorro ....
|
||||
label.scope=Alcance
|
||||
label.search=Buscar
|
||||
label.secondary.storage=Almacenamiento secundario
|
||||
label.secondary.used=Secundaria Almacenado
|
||||
label.secret.key=clave secreta
|
||||
label.security.group=Grupo de Seguridad
|
||||
label.security.group.name=Nombre de grupo de seguridad
|
||||
label.security.groups.enabled=Los grupos de seguridad habilitado
|
||||
label.security.groups=Grupos de seguridad
|
||||
label.select.a.zone=Seleccione una zona.
|
||||
label.sent=Enviados
|
||||
label.server=Servidor
|
||||
label.service.offering=Oferta de Servicio
|
||||
label.session.expired=Session Caducado
|
||||
label.shared=compartidas
|
||||
label.SharedMountPoint=SharedMountPoint
|
||||
label.show.ingress.rule=Mostrar la regla del ingreso
|
||||
label.size=Tama\u00c3\u00b1o
|
||||
label.snapshot=Instant\u00c3\u00a1nea
|
||||
label.snapshot.limits=instant\u00c3\u00a1neas L\u00c3\u00admites
|
||||
label.snapshot.name=Nombre de instant\u00c3\u00a1neas
|
||||
label.snapshot.schedule=Lista de instant\u00c3\u00a1neas
|
||||
label.snapshot.s=Instant\u00c3\u00a1nea (s)
|
||||
label.snapshots=instant\u00c3\u00a1neas
|
||||
label.source.nat=NAT Fuente
|
||||
label.specify.vlan=Especifique VLAN
|
||||
label.SR.name = SR Nombre de etiqueta
|
||||
label.start.port=Iniciar Puerto
|
||||
label.state=Estado
|
||||
label.static.nat=NAT est\u00c3\u00a1tica
|
||||
label.static.nat.to=est\u00c3\u00a1tico NAT para
|
||||
label.statistics=Estad\u00c3\u00adsticas
|
||||
label.status=Estado
|
||||
label.step.1=Paso 1
|
||||
label.step.1.title=Paso 1\: <strong> Seleccione una plantilla </strong>
|
||||
label.step.2=Paso 2
|
||||
label.step.2.title=Paso 2\: <strong> Oferta de Servicio </strong>
|
||||
label.step.3=Paso 3
|
||||
label.step.3.title=Paso 3\: <strong id\="step3_label"> Seleccione un disco Ofrenda </strong>
|
||||
label.step.4=Paso 4
|
||||
label.step.4.title=Paso 4\: <strong> Red </strong>
|
||||
label.step.5=Paso 5
|
||||
label.step.5.title=Paso 5\: Revisi\u00c3\u00b3n <strong> </strong>
|
||||
label.sticky.domain=dominio
|
||||
label.sticky.mode=modo
|
||||
label.stop=Detener
|
||||
label.stopped.vms=Detenido m\u00c3\u00a1quinas virtuales
|
||||
label.storage=Almacenamiento
|
||||
label.storage.tags=Etiquetas de almacenamiento
|
||||
label.storage.type=Tipo de almacenamiento
|
||||
label.submit=Enviar
|
||||
label.submitted.by=[Enviado por\: <span id\="submitted_by"> </span>]
|
||||
label.succeeded=Sucesor
|
||||
label.sunday=domingo
|
||||
label.system.capacity=Capacidad de todo el sistema
|
||||
label.system.vm=Sistema de VM
|
||||
label.system.vms=Sistema de m\u00c3\u00a1quinas virtuales
|
||||
label.system.vm.type=Tipo de sistema VM
|
||||
label.tagged=etiqueta
|
||||
label.tags=Etiquetas
|
||||
label.target.iqn=Objetivo IQN
|
||||
label.task.completed=Tarea finalizada.
|
||||
label.template.limits=Plantilla L\u00c3\u00admites
|
||||
label.template=plantilla
|
||||
label.TFTP.dir=Directorio de TFTP
|
||||
label.theme.default=Tema Por Defecto
|
||||
label.theme.grey=Personal - Gris
|
||||
label.theme.lightblue=Personal - Azul
|
||||
label.thursday=Jueves
|
||||
label.timeout.in.second = Tiempo de espera (segundos)
|
||||
label.time=Tiempo
|
||||
label.time.zone=Zona horaria
|
||||
label.timezone=Zona horaria
|
||||
label.total.cpu=Total CPU
|
||||
label.total.CPU=Total CPU
|
||||
label.total.vms=Total de m\u00c3\u00a1quinas virtuales
|
||||
label.traffic.type=Tipo de Tr\u00c3\u00a1fico
|
||||
label.tuesday=martes
|
||||
label.type.id=Tipo de identificaci\u00c3\u00b3n
|
||||
label.type=Tipo
|
||||
label.unavailable=no disponible
|
||||
label.unlimited=Unlimited
|
||||
label.untagged=sin etiquetar
|
||||
label.updating=Actualizar
|
||||
label.url=URL
|
||||
label.usage.interface=Interfaz de uso
|
||||
label.used=Usado
|
||||
label.username=Nombre de usuario
|
||||
label.users=usuario
|
||||
label.user=Usuario
|
||||
label.value=Valor
|
||||
label.vcenter.cluster=vCenter cl\u00c3\u00baster
|
||||
label.vcenter.datacenter=vCenter de centros de datos
|
||||
label.vcenter.datastore=vCenter almac\u00c3\u00a9n de datos
|
||||
label.vcenter.host=vCenter anfitri\u00c3\u00b3n
|
||||
label.vcenter.password=vCenter Contrase\u00c3\u00b1a
|
||||
label.vcenter.username=vCenter Nombre de usuario
|
||||
label.version=Versi\u00c3\u00b3n
|
||||
label.virtual.appliances=Virtual Appliances
|
||||
label.virtual.appliance=Virtual Appliance
|
||||
label.virtual.machines=Maquinas virtuales
|
||||
label.virtual.network=Red Virtual
|
||||
label.vlan.id=ID de VLAN
|
||||
label.vlan.range=VLAN Gama
|
||||
label.vlan=VLAN
|
||||
label.vm.add=A\u00c3\u00b1adir Instancia
|
||||
label.vm.destroy=Destroy
|
||||
label.VMFS.datastore=VMFS de datos tienda
|
||||
label.vmfs=VMFS
|
||||
label.vm.reboot=Reiniciar
|
||||
label.vmsnapshot.type=Tipo
|
||||
label.vm.start=Inicio
|
||||
label.vm.stop=Detener
|
||||
label.vms=VM
|
||||
label.volgroup=Volume Group
|
||||
label.volume.limits=l\u00c3\u00admites de volumen
|
||||
label.volume.name=Nombre de Volumen
|
||||
label.volumes=Vol\u00c3\u00bamenes
|
||||
label.volume=Volumen
|
||||
label.vpn=VPN
|
||||
label.vsphere.managed=Gestionado \= vSphere
|
||||
label.waiting=Esperando
|
||||
label.warn=Advertir
|
||||
label.wednesday=mi\u00c3\u00a9rcoles
|
||||
label.weekly=Semanal
|
||||
label.welcome=Bienvenido
|
||||
label.welcome.cloud.console=Bienvenido a la consola de administraci\u00c3\u00b3n
|
||||
label.yes=S\u00c3\u00ad
|
||||
label.zone.id=Zona de identificaci\u00c3\u00b3n
|
||||
label.zone.step.1.title=Paso 1\: <strong> Seleccione una red </strong>
|
||||
label.zone.step.2.title=Paso 2\: <strong>A\u00c3\u00b1adir una zona </strong>
|
||||
label.zone.step.3.title=Paso 3\: <strong>A\u00c3\u00b1adir una vaina </strong>
|
||||
label.zone.step.4.title=Paso 4\: <strong>A\u00c3\u00b1adir un rango de IP </strong>
|
||||
label.zone.wide=Zona para todo el
|
||||
label.zone=Zona
|
||||
managed.state=Estado logr\u00c3\u00b3
|
||||
message.acquire.public.ip=Por favor seleccione una zona de la que desea adquirir su nueva IP.
|
||||
message.action.cancel.maintenance.mode=Por favor, confirme que desea cancelar el mantenimiento
|
||||
message.action.cancel.maintenance=Su acogida ha sido cancelado con \u00c3\u00a9xito para el mantenimiento. Este proceso puede tardar hasta varios minutos.
|
||||
message.action.delete.cluster=Por favor, confirme que desea eliminar del cl\u00c3\u00baster
|
||||
message.action.delete.disk.offering=Por favor, confirme que desea eliminar ofreciendo disco
|
||||
message.action.delete.domain=Por favor, confirme que desea eliminar de dominio
|
||||
message.action.delete.external.firewall=Por favor, confirme que desea quitar este servidor de seguridad externo. Advertencia\: Si usted est\u00c3\u00a1 planeando volver a agregar el servidor de seguridad externo mismo, debe restablecer los datos de uso en el dispositivo.
|
||||
message.action.delete.external.load.balancer=Por favor, confirme que desea eliminar este equilibrador de carga externa. Advertencia\: Si usted est\u00c3\u00a1 planeando volver a agregar la misma equilibrador de carga externo, debe restablecer los datos de uso en el dispositivo.
|
||||
message.action.delete.ingress.rule=Por favor, confirme que desea eliminar la regla de ingreso
|
||||
message.action.delete.ISO.for.all.zones=La ISO es utilizado por todas las zonas. Por favor, confirme que desea eliminar de todas las zonas.
|
||||
message.action.delete.ISO=Por favor, confirme que desea eliminar la norma ISO
|
||||
message.action.delete.network=Por favor, confirme que desea eliminar de la red
|
||||
message.action.delete.pod=Por favor, confirme que desea eliminar de la vaina
|
||||
message.action.delete.primary.storage=Por favor, confirme que desea eliminar el almacenamiento primario
|
||||
message.action.delete.secondary.storage=Por favor, confirme que desea eliminar de almacenamiento secundario
|
||||
message.action.delete.security.group=Por favor, confirme que desea eliminar el grupo de seguridad
|
||||
message.action.delete.service.offering=Por favor, confirme que desea eliminar oferta de servicios
|
||||
message.action.delete.snapshot=Por favor, confirme que desea eliminar instant\u00c3\u00a1neas
|
||||
message.action.delete.template.for.all.zones=La plantilla es utilizada por todas las zonas. Por favor, confirme que desea eliminar de todas las zonas.
|
||||
message.action.delete.template=Por favor, confirme que desea eliminar la plantilla
|
||||
message.action.delete.volume=Por favor, confirme que desea eliminar el volumen
|
||||
message.action.delete.zone=Por favor, confirme que desea eliminar la zona
|
||||
message.action.destroy.instance=Por favor, confirme que desea destruir ejemplo
|
||||
message.action.destroy.systemvm=Por favor, confirme que desea destruir la m\u00c3\u00a1quina virtual del sistema.
|
||||
message.action.disable.cluster=Por favor, confirme que desea desactivar este grupo.
|
||||
message.action.disable.pod=Por favor, confirme que desea desactivar esta vaina.
|
||||
message.action.disable.static.NAT=Por favor, confirme que desea desactivar NAT est\u00c3\u00a1tica
|
||||
message.action.disable.zone=Por favor, confirme que desea desactivar esta zona.
|
||||
message.action.enable.cluster=Por favor, confirme que desea habilitar este grupo.
|
||||
message.action.enable.maintenance=Su acogida ha sido preparado con \u00c3\u00a9xito para el mantenimiento. Este proceso puede tardar hasta varios minutos o m\u00c3\u00a1s dependiendo de c\u00c3\u00b3mo las m\u00c3\u00a1quinas virtuales se encuentran actualmente en este servidor.
|
||||
message.action.enable.pod=Por favor, confirme que desea habilitar esta vaina.
|
||||
message.action.enable.zone=Por favor, confirme que desea habilitar esta zona.
|
||||
message.action.force.reconnect=Por favor, confirme que desea forzar una reconexi\u00c3\u00b3n para el anfitri\u00c3\u00b3n
|
||||
message.action.host.enable.maintenance.mode=mode \= mantenimiento de Habilitaci\u00c3\u00b3n provocar\u00c3\u00a1 una migraci\u00c3\u00b3n en vivo de todas las instancias que se ejecutan en el sistema para cualquier m\u00c3\u00a1quina disponible.
|
||||
message.action.manage.cluster=Por favor, confirme que desea para administrar el cl\u00c3\u00baster.
|
||||
message.action.primarystorage.enable.maintenance.mode=Advertencia\: colocar el almacenamiento principal en modo de mantenimiento har\u00c3\u00a1 que todas las m\u00c3\u00a1quinas virtuales utilizando vol\u00c3\u00bamenes de que sea detenido. \u00c2\u00bfDesea continuar?
|
||||
message.action.reboot.instance=Por favor, confirme que desea reiniciar el ejemplo
|
||||
message.action.reboot.systemvm=Por favor, confirme que desea reiniciar el sistema VM
|
||||
message.action.release.ip=Por favor, confirme que desea liberar IP
|
||||
message.action.reset.password.off=Su ejemplo en la actualidad no es compatible con esta funci\u00c3\u00b3n.
|
||||
message.action.reset.password.warning=Su ejemplo debe ser detenido antes de intentar cambiar su contrase\u00c3\u00b1a actual.
|
||||
message.action.restore.instance=Por favor, confirme que desea restaurar ejemplo
|
||||
message.action.start.instance=Por favor, confirme que desea iniciar la instancia
|
||||
message.action.start.router=Por favor, confirme que desea iniciar router
|
||||
message.action.start.systemvm=Por favor, confirme que desea iniciar el sistema VM
|
||||
message.action.stop.instance=Por favor, confirme que desea detener la instancia
|
||||
message.action.stop.systemvm=Por favor, confirme que desea detener sistema VM
|
||||
message.action.take.snapshot=Por favor, confirme que desea tomar instant\u00c3\u00a1neas
|
||||
message.action.unmanage.cluster=Por favor, confirme que desea unmanage del cl\u00c3\u00baster.
|
||||
message.add.cluster=A\u00c3\u00b1adir un hipervisor administradas por cl\u00c3\u00baster de <b> zona <span id\="zone_name"> </span> </b>, la consola de <b> <span id\="pod_name"> </span> </b>
|
||||
message.add.cluster.zone=A\u00c3\u00b1adir un hipervisor administradas por cl\u00c3\u00baster de <b> zona <span id\="zone_name"> </span> </b>
|
||||
message.add.disk.offering=Por favor, especifique los par\u00c3\u00a1metros siguientes para agregar un nuevo disco que ofrece
|
||||
message.add.firewall=A\u00c3\u00b1adir un servidor de seguridad a la zona
|
||||
message.add.host=Por favor, especifique los par\u00c3\u00a1metros siguientes para agregar un nuevo host
|
||||
message.add.ip.range=A\u00c3\u00b1adir un rango de IP a la red p\u00c3\u00bablica en la zona
|
||||
message.add.ip.range.direct.network=A\u00c3\u00b1adir un rango de IP para dirigir <b> red <span id\="directnetwork_name"> </span> </b> en la zona <b> <span id \= "zone_name" > </span> </b>
|
||||
message.add.ip.range.to.pod=<p> A\u00c3\u00b1adir un rango de IP de la vaina\: <b><span id\="pod_name_label"> </span> </b> </p>
|
||||
message.additional.networks.desc=Por favor seleccione de red adicionales (s) que la instancia virtual estar\u00c3\u00a1 conectado.
|
||||
message.add.load.balancer=A\u00c3\u00b1adir un equilibrador de carga a la zona
|
||||
message.add.network=Agregar una nueva red para la zona\: <b><span id\="zone_name"> </span> </b>
|
||||
message.add.pod=Agregar una vaina nueva <b> zona <span id\="add_pod_zone_name"> </span> </b>
|
||||
message.add.primary=Por favor, especifique los par\u00c3\u00a1metros siguientes para agregar un nuevo almacenamiento primario
|
||||
message.add.primary.storage=Agregar una nueva almacenamiento primario para <b> zona <span id\="zone_name"> </span> </b>, la consola de <b> <span id\="pod_name"> </span> </b>
|
||||
message.add.secondary.storage=A\u00c3\u00b1adir un nuevo almacenamiento de <b> zona <span id\="zone_name"> </span> </b>
|
||||
message.add.service.offering=Por favor, rellene los siguientes datos para agregar una nueva oferta de servicio.
|
||||
message.add.template=Por favor ingrese los siguientes datos para crear la nueva plantilla
|
||||
message.add.volume=Por favor, rellene los siguientes datos para agregar un nuevo volumen.
|
||||
message.advanced.mode.desc=Seleccione este modelo de red si desea habilitar soporte VLAN. Este modelo de red proporciona la m\u00c3\u00a1xima flexibilidad al permitir a los administradores proporcionar ofertas personalizadas de la red como el suministro de firewall, VPN, o el apoyo equilibrador de carga, as\u00c3\u00ad como permitir vs directa de redes virtuales.
|
||||
message.advanced.security.group=Elija esta opci\u00c3\u00b3n si desea utilizar grupos de seguridad para proporcionar resultados de aislamiento VM.
|
||||
message.advanced.virtual=Elija esta opci\u00c3\u00b3n si desea utilizar VLAN toda la zona para proporcionar el aislamiento VM invitado.
|
||||
message.allow.vpn.access=Por favor, introduzca un nombre de usuario y la contrase\u00c3\u00b1a del usuario que desea permitir el acceso de VPN.
|
||||
message.apply.snapshot.policy=Ha actualizado su pol\u00c3\u00adtica instant\u00c3\u00a1nea actual.
|
||||
message.attach.iso.confirm=Por favor, confirme que desea conectar el ISO a la instancia virtual
|
||||
message.attach.volume=Por favor, rellene los siguientes datos para fijar un nuevo volumen. Si est\u00c3\u00a1 colocando un volumen de disco a una m\u00c3\u00a1quina virtual de Windows basado, usted tendr\u00c3\u00a1 que reiniciar la instancia para ver el disco adjunto.
|
||||
message.basic.mode.desc=Seleccione este modelo de red si lo haces * <b> no <u> </u> * </b> desea habilitar cualquier soporte VLAN. Todas las instancias virtuales creados en virtud de este modelo de red se le asignar\u00c3\u00a1 una direcci\u00c3\u00b3n IP directamente desde la red y grupos de seguridad se utilizan para proporcionar la seguridad y la segregaci\u00c3\u00b3n.
|
||||
message.change.offering.confirm=Por favor, confirme que desea cambiar la oferta de servicio de la instancia virtual.
|
||||
message.copy.iso.confirm=Por favor, confirme que desea copiar el ISO a
|
||||
message.copy.template=Copia plantilla <b id\="copy_template_name_text"> XXX </b> de la zona <b id\="copy_template_source_zone_text"> </b>
|
||||
message.create.template.vm=Crear VM de la plantilla <b id\="p_name"> </b>
|
||||
message.create.template.volume=Por favor, especifique la siguiente informaci\u00c3\u00b3n antes de crear una plantilla de su volumen de disco\: <b> <span id\="volume_name"> </span> </b>. Creaci\u00c3\u00b3n de la plantilla puede oscilar entre varios minutos m\u00c3\u00a1s, dependiendo del tama\u00c3\u00b1o del volumen.
|
||||
message.delete.account=Por favor, confirme que desea eliminar esta cuenta.
|
||||
message.detach.iso.confirm=Por favor, confirme que desea quitar el ISO de la instancia virtual
|
||||
message.disable.snapshot.policy=Ha desactivado su pol\u00c3\u00adtica instant\u00c3\u00a1nea actual.
|
||||
message.disable.vpn.access=Por favor, confirme que desea desactivar VPN de acceso.
|
||||
message.download.volume=Por favor, haga clic <a href\="\#">00000</a> para bajar el volumen
|
||||
message.edit.confirm=Por favor confirmar los cambios antes de hacer clic en "Guardar"
|
||||
message.edit.limits=Por favor, especifique los l\u00c3\u00admites de los recursos siguientes. A "-1" indica que no hay l\u00c3\u00admite a la cantidad de los recursos de crear.
|
||||
message.enable.account=Por favor, confirme que desea habilitar esta cuenta.
|
||||
message.enabled.vpn.ip.sec=La clave pre-compartida IPSec es
|
||||
message.enabled.vpn=Su acceso a la VPN est\u00c3\u00a1 habilitado y se puede acceder a trav\u00c3\u00a9s de la IP
|
||||
message.enable.vpn.access=VPN \= est\u00c3\u00a1 desactivado para esta direcci\u00c3\u00b3n IP. \u00c2\u00bfTe gustar\u00c3\u00ada que permitan el acceso VPN?
|
||||
message.enable.vpn=VPN de acceso actualmente no est\u00c3\u00a1 habilitado. Por favor, <a href\="\#" id\="enable_vpn_link"> haga clic aqu\u00c3\u00ad </a> para habilitar VPN.
|
||||
message.installWizard.click.retry=Haz click en el bot\u00f3n para re-intentar el lanzamiento de la instancia.
|
||||
message.installWizard.tooltip.addCluster.name=Nombre del Cluster. Puede ser alfanum\u00e9rico .Este no es usado por CloudStack
|
||||
message.installWizard.tooltip.addHost.hostname=El nombre DNS o direcci\u00f3n IP del host
|
||||
message.installWizard.tooltip.addHost.username=Generalmente root
|
||||
message.installWizard.tooltip.addPod.name=Nombre del POD
|
||||
message.installWizard.tooltip.addPod.reservedSystemGateway=El gateway ,puerta de enlace, para los host en ese pod.
|
||||
message.installWizard.tooltip.addPrimaryStorage.name=\ Nombre para el storage
|
||||
message.installWizard.tooltip.addSecondaryStorage.nfsServer=Direcci\u00f3n IP del servidor NFS que contiene el secondary storage
|
||||
message.installWizard.tooltip.addZone.name=Nombre de la zona.
|
||||
message.installWizard.tooltip.configureGuestTraffic.description=Una breve descripci\u00f3n para su red.
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestGateway=El gatway, puerta de enlace, que las maquinas guest deben usar.
|
||||
message.installWizard.tooltip.configureGuestTraffic.name=Nombre de su RED
|
||||
message.lock.account=Por favor, confirme que desea bloquear esta cuenta. Al bloquear la cuenta, todos los usuarios de esta cuenta ya no ser\u00c3\u00a1 capaz de gestionar sus recursos de la nube. Los recursos existentes todav\u00c3\u00ada se puede acceder.
|
||||
message.migrate.instance.confirm=Por favor, confirme el anfitri\u00c3\u00b3n desea migrar la instancia virtual.
|
||||
message.migrate.instance.to.host=Por favor, confirmar que desea mover la instancia a otro host.
|
||||
message.migrate.instance.to.ps=Por favor, confirmar que desea mover la instancia a otro primary storage.
|
||||
message.migrate.router.confirm=Por favor, confirme el hu\u00c3\u00a9sped que desea migrar el router\:
|
||||
message.migrate.systemvm.confirm=Por favor, confirme el hu\u00c3\u00a9sped que desea migrar la m\u00c3\u00a1quina virtual de sistema\:
|
||||
message.no.network.support.configuration.not.true=Usted no tiene ninguna zona que ha permitido a grupo de seguridad. Por lo tanto, no hay funciones de red adicionales. Por favor, contin\u00c3\u00bae con el paso 5.
|
||||
message.no.network.support=El hipervisor seleccionado, vSphere, no tiene funciones de red adicionales. Por favor, contin\u00c3\u00bae con el paso 5.
|
||||
message.number.clusters=<h2> <span> \# de </span> Grupos </h2>
|
||||
message.number.hosts=<h2> <span> \# de </span> Anfitri\u00c3\u00b3n </h2>
|
||||
message.number.pods=<h2> <span> \# de </span> Las vainas </h2>
|
||||
message.number.storage=<h2> <span> \# de </span> Almacenamiento primario </h2>
|
||||
message.number.zones=<h2> <span> \# de </span> Zonas </h2>
|
||||
message.remove.vpn.access=Por favor, confirme que desea eliminar el acceso VPN desde el siguiente usuario
|
||||
message.restart.mgmt.server=Por favor, reinicie el servidor de administraci\u00c3\u00b3n (s) para la nueva configuraci\u00c3\u00b3n surta efecto.
|
||||
message.security.group.usage=(Uso <strong> pulse Ctrl </strong> para seleccionar todos los grupos de seguridad se aplica)
|
||||
message.select.item=Por favor, seleccionar un item .
|
||||
message.setup.successful=La configuraci\u00f3n de la cloud finalizo satisfactoriamente.
|
||||
message.snapshot.schedule=Puede horarios de configuraci\u00c3\u00b3n recurrente instant\u00c3\u00a1neas mediante la selecci\u00c3\u00b3n de las opciones disponibles a continuaci\u00c3\u00b3n y la aplicaci\u00c3\u00b3n de su preferencia pol\u00c3\u00adtica
|
||||
message.step.1.continue=Por favor seleccione una plantilla o ISO para continuar
|
||||
message.step.1.desc=Por favor seleccione una plantilla para la instancia virtual. Tambi\u00c3\u00a9n puede optar por seleccionar una plantilla en blanco desde el que puede ser una imagen ISO instalado en.
|
||||
message.step.2.continue=Por favor seleccione una oferta de servicio para continuar
|
||||
message.step.2.desc=
|
||||
message.step.3.continue=Por favor seleccione una oferta en disco para continuar
|
||||
message.step.3.desc=
|
||||
message.step.4.continue=Por favor seleccione al menos una red social para continuar
|
||||
message.step.4.desc=Por favor, seleccione la red primaria que la instancia virtual estar\u00c3\u00a1 conectado.
|
||||
message.update.os.preference=Por favor seleccione un sistema operativo de preferencia para este equipo. Todas las instancias virtuales con preferencias similares ser\u00c3\u00a1n los primeros asignados a este equipo antes de elegir otro.
|
||||
message.update.ssl=Por favor, env\u00c3\u00ade una nueva X.509 compatible con certificado SSL que se actualizar\u00c3\u00a1 a cada instancia virtual de la consola del servidor proxy\:
|
||||
message.virtual.network.desc=Una red dedicada virtualizados para su cuenta. El dominio de difusi\u00c3\u00b3n est\u00c3\u00a1 contenida dentro de una VLAN y todos los acceso a la red p\u00c3\u00bablica se encamina a cabo por un router virtual.
|
||||
message.vm.create.template.confirm=Crear plantilla de la m\u00c3\u00a1quina virtual se reiniciar\u00c3\u00a1 autom\u00c3\u00a1ticamente.
|
||||
message.volume.create.template.confirm=Por favor, confirme que desea crear una plantilla para este volumen de disco. Creaci\u00c3\u00b3n de la plantilla puede oscilar entre varios minutos m\u00c3\u00a1s, dependiendo del tama\u00c3\u00b1o del volumen.
|
||||
message.zone.step.1.desc=Por favor seleccione un modelo de red para su zona.
|
||||
mode=modo
|
||||
network.rate=Tasa de Red
|
||||
side.by.side=Juntos
|
||||
state.Allocated=Asignados
|
||||
state.Disabled=personas de movilidad reducida
|
||||
state.Error=Error
|
||||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,618 @@
|
|||
# Licensed to the Apache Software Foundation (ASF) under one
|
||||
# or more contributor license agreements. See the NOTICE file
|
||||
# distributed with this work for additional information
|
||||
# regarding copyright ownership. The ASF licenses this file
|
||||
# to you under the Apache License, Version 2.0 (the
|
||||
# "License"); you may not use this file except in compliance
|
||||
# with the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing,
|
||||
# software distributed under the License is distributed on an
|
||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
# KIND, either express or implied. See the License for the
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
|
||||
changed.item.properties=Elementi delle propriet\u00e0 modificati
|
||||
confirm.enable.s3=Si prega di inserire i valori richiesti per abilitare il supporto per il Secondary Storage di tipo S3
|
||||
confirm.enable.swift=Si prega di inserire i valori richiesti per abilitare il supporto per Swift
|
||||
error.could.not.enable.zone=Impossibile abilitare la zona
|
||||
error.installWizard.message=E\\' stato rilevato un errore\: tornare agli step precedenti e correggere gli errori
|
||||
error.invalid.username.password=Username o Password non valida
|
||||
error.password.not.match=I campi password non corrispondono
|
||||
error.please.specify.physical.network.tags=Le offerte di rete non sono disponibili se non si specificano tag per questa rete fisica.
|
||||
error.something.went.wrong.please.correct.the.following=E\\' stato rilevato un errore; si prega di correggere quanto indicato di seguito
|
||||
error.unable.to.reach.management.server=Impossibile raggiungere il Management Server
|
||||
instances.actions.reboot.label=Riavviare una instanza
|
||||
label.accept.project.invitation=Accettare un invito ad un progetto
|
||||
label.account.and.security.group=Account, Security group
|
||||
label.action.delete.nexusVswitch=Cancellare Nexus 1000v
|
||||
label.action.delete.physical.network=Cancellazione di una rete fisica
|
||||
label.action.delete.system.service.offering=Cancellare Offerta di Servizio di Sistema
|
||||
label.action.disable.nexusVswitch=Disabilitare Nexus 1000v
|
||||
label.action.disable.physical.network=Disabilitare la rete fisica
|
||||
label.action.enable.nexusVswitch=Abilitare Nexus 1000v
|
||||
label.action.enable.physical.network=Abilitare la rete fisica
|
||||
label.action.list.nexusVswitch=Elencare Nexus 1000v
|
||||
label.action.migrate.router.processing=Migrazione Router...
|
||||
label.action.register.iso=Registrare una ISO
|
||||
label.action.register.template=Registrare un template
|
||||
label.activate.project=Attivare il Progetto
|
||||
label.add.accounts=Aggiungere utenti
|
||||
label.add.accounts.to=Aggiungere utenti a
|
||||
label.add.account.to.project=Aggiungere account al progetto
|
||||
label.add.ACL=Aggiungere ACL
|
||||
label.add.compute.offering=Aggiungere una offerta computazionale
|
||||
label.add.egress.rule=Aggiungere una regola d\\'uscita
|
||||
label.add.F5.device=Aggiungere device F5
|
||||
label.add.guest.network=Aggiungere una rete guest
|
||||
label.add.netScaler.device=Aggiungere device Netscaler
|
||||
label.add.network.ACL=Aggiungere le ACL di rete
|
||||
label.add.network.offering=Aggiungere offerta di rete
|
||||
label.add.new.F5=Aggiungere nuovo F5
|
||||
label.add.new.gateway=Aggiungere un nuovo gateway
|
||||
label.add.new.NetScaler=Aggiungere nuovo NetScaler
|
||||
label.add.new.SRX=Aggiungere nuovo SRX
|
||||
label.add.new.tier=Aggiungere un nuovo livello
|
||||
label.add.physical.network=Aggiungere rete fisica
|
||||
label.add.port.forwarding.rule=Aggiungere una regola di port forwarding
|
||||
label.add.resources=Aggiungere Risorse
|
||||
label.add.route=Aggiungere una rotta
|
||||
label.add.rule=Aggiungere regola
|
||||
label.add.SRX.device=Aggiungere device SRX
|
||||
label.add.static.nat.rule=Aggiungere regola di NAT statico
|
||||
label.add.static.route=Aggiungere una rotta statica
|
||||
label.add.system.service.offering=Aggiungere Offerte di Servizio di Sistema
|
||||
label.add.to.group=Aggiungere al gruppo
|
||||
label.add.vm=Aggiungere VM
|
||||
label.add.vms=Aggiunvere VM
|
||||
label.add.vms.to.lb=Aggiungere VM a regola di bilanciamento di carico
|
||||
label.add.VM.to.tier=Aggiungere una VM al livello
|
||||
label.add.vpc=Aggiungere VPC
|
||||
label.add.vpn.customer.gateway=Aggiungere Gateway VPN del Cliente
|
||||
label.add.VPN.gateway=Aggiungere un Gateway VPN
|
||||
label.add.vpn.user=Aggiungere utente VPN
|
||||
label.advanced=Avanzato
|
||||
label.agent.password=Password per l\\'Agent
|
||||
label.agent.username=Username per l\\'Agent
|
||||
label.allocated=Allocato
|
||||
label.apply=Applicare
|
||||
label.associated.network=Rete Associata
|
||||
label.bandwidth=Capacit\u00e0 della banda (Bandwidth)
|
||||
label.basic=Basic
|
||||
label.broadcast.uri=URI di Broadcast
|
||||
label.change.service.offering=Modificare offerta di servizio
|
||||
label.checksum=Checksum MD5
|
||||
label.CIDR.list=Lista CIDR
|
||||
label.CIDR.of.destination.network=Valore CIDR della rete di destinazione
|
||||
label.clear.list=Pulizia dell\\'elenco
|
||||
label.cluster=Cluster
|
||||
label.cluster.name=Nome del Cluster
|
||||
label.clusters=Cluster
|
||||
label.community=Community
|
||||
label.compute.and.storage=Computazione e Storage
|
||||
label.compute=Compute
|
||||
label.compute.offering=Offerta computazionale
|
||||
label.compute.offerings=Offerte computazionali
|
||||
label.configuration=Configurazione
|
||||
label.configure=Configurare
|
||||
label.configure.network.ACLs=Configurare le ACL di rete
|
||||
label.configure.vpc=Configurare VPC
|
||||
label.confirm.password=Confermare la password
|
||||
label.congratulations=Congratulazioni\!
|
||||
label.console.proxy=Proxy di Console
|
||||
label.continue.basic.install=Proseguire con l\\'installazione di base
|
||||
label.continue=Continuare
|
||||
label.corrections.saved=Salvataggio correzioni effettuato
|
||||
label.cpu.mhz=CPU (in MHz)
|
||||
label.created.by.system=Creato dal sistema
|
||||
label.create.project=Creare un progetto
|
||||
label.create.template=Creare un template
|
||||
label.create.VPN.connection=Creare una Connessione VPN
|
||||
label.decline.invitation=Declinare un invito
|
||||
label.dedicated=Dedicato
|
||||
label.default=Default
|
||||
label.default.view=Vista di default
|
||||
label.delete.F5=Rimozione F5
|
||||
label.delete.gateway=rimuovere il gateway
|
||||
label.delete.NetScaler=Rimozione NetScaler
|
||||
label.delete.project=Cancellare progetto
|
||||
label.delete.SRX=Rimozione SRX
|
||||
label.delete.VPN.connection=cancellare la connessione VPN
|
||||
label.delete.VPN.customer.gateway=cancellare il Gateway VPN del Cliente
|
||||
label.delete.VPN.gateway=cancellare un Gateway VPN
|
||||
label.delete.vpn.user=Cancellare utente VPN
|
||||
label.destination.physical.network.id=ID della rete fisica di destinazione
|
||||
label.destination.zone=Zona di destinazione
|
||||
label.destroy=Destroy
|
||||
label.devices=Device
|
||||
label.dhcp=DHCP
|
||||
label.direct.ips=Indirizzi IP di Rete condivisi
|
||||
label.disabled=Disabilitato
|
||||
label.disable.provider=Disabilitare il provider
|
||||
label.disable.vpn=Disabilitare VPN
|
||||
label.display.name=Nome visualizzato
|
||||
label.dns=DNS
|
||||
label.DNS.domain.for.guest.networks=Dominio DNS per Reti Guest
|
||||
label.domain=Dominio
|
||||
label.domain.router=Router di Dominio
|
||||
label.done=Fatto
|
||||
label.drag.new.position=Trascina nella nuova posizione
|
||||
label.edit.lb.rule=Modifica regola LB
|
||||
label.edit.network.details=Modificare le impostazioni di rete
|
||||
label.edit.project.details=Modificare i dettagli del progetto
|
||||
label.edit.tags=Modifica dei tag
|
||||
label.edit.traffic.type=Modifica del tipo di traffico
|
||||
label.edit.vpc=Modificare VPC
|
||||
label.egress.rule=Regola d\\'uscita
|
||||
label.egress.rules=Regole d\\'uscita
|
||||
label.enable.provider=Abilitare il provider
|
||||
label.enable.s3=Abilitare il Secondary Storage di tipo S3
|
||||
label.enable.swift=Abilitare Swift
|
||||
label.enable.vpn=Abilitare VPN
|
||||
label.end.IP=Indirizzo IP finale
|
||||
label.endpoint=Dispositivo
|
||||
label.end.reserved.system.IP=Indirizzo IP finale riservato di sistema
|
||||
label.end.vlan=Vlan finale
|
||||
label.enter.token=Inserire il token
|
||||
label.error=Errore
|
||||
label.ESP.encryption=Encryption di ESP
|
||||
label.ESP.hash=Hash di ESP
|
||||
label.ESP.policy=Policy di ESP
|
||||
label.f5=F5
|
||||
label.full.path=Path completo
|
||||
label.guest.end.ip=Indirizzo IP guest finale
|
||||
label.guest=Guest
|
||||
label.guest.networks=Reti guest
|
||||
label.guest.start.ip=Indirizzo IP guest iniziale
|
||||
label.guest.traffic=Traffico della rete Guest
|
||||
label.guest.type=Tipo di Guest
|
||||
label.hints=Suggerimenti
|
||||
label.host.MAC=MAC del sistema host
|
||||
label.hypervisor.capabilities=Funzionalit\u00e0 del Hypervisor
|
||||
label.hypervisor=Hypervisor
|
||||
label.hypervisor.version=Versione hypervisor
|
||||
label.IKE.DH=DH di IKE
|
||||
label.IKE.encryption=Encryption di IKE
|
||||
label.IKE.hash=Hash di IKE
|
||||
label.IKE.policy=Policy di IKE
|
||||
label.installWizard.addClusterIntro.subtitle=Che cosa \u00e8 un cluster?
|
||||
label.installWizard.addClusterIntro.title=Let’s aggiungere un cluster
|
||||
label.installWizard.addHostIntro.subtitle=Che cosa \u00e8 un host?
|
||||
label.installWizard.addHostIntro.title=Let’s aggiungere un host
|
||||
label.installWizard.addPodIntro.subtitle=Che cosa \u00e8 un pod?
|
||||
label.installWizard.addPodIntro.title=Let’s aggiungere un pod
|
||||
label.installWizard.addPrimaryStorageIntro.subtitle=Che cosa \u00e8 un primary storage?
|
||||
label.installWizard.addPrimaryStorageIntro.title=Let’s aggiungere primary storage
|
||||
label.installWizard.addSecondaryStorageIntro.subtitle=Che cosa \u00e8 un secondary storage?
|
||||
label.installWizard.addSecondaryStorageIntro.title=Let’s aggiungere secondary storage
|
||||
label.installWizard.addZoneIntro.subtitle=Che cosa \u00e8 una zona?
|
||||
label.installWizard.addZoneIntro.title=Let’s aggiungere una zone
|
||||
label.installWizard.addZone.title=Aggiungere una zona
|
||||
label.installWizard.click.launch=Fare click sul pulsante di avvio.
|
||||
label.installWizard.subtitle=Questa guida fornisce supporto nelle attivit\u00e0 di configurazione di una installazione CloudStack&\#8482
|
||||
label.installWizard.title=Ciao e Benvenuti nel mondo di CloudStack&\#8482
|
||||
label.internal.name=Nome Interno
|
||||
label.introduction.to.cloudstack=Introduzione a CloudStack&\#8482
|
||||
label.invitations=Inviti
|
||||
label.invited.accounts=Utenti invitati
|
||||
label.invite=Invito
|
||||
label.invite.to=Invito a
|
||||
label.ip.address=Indirizzo IP
|
||||
label.ipaddress=Indirizzo IP
|
||||
label.ip.ranges=Intervalli di indirizzi IP
|
||||
label.IPsec.preshared.key=Preshared-Key di IPsec
|
||||
label.isolated.networks=Reti isolate
|
||||
label.isolation.method=Metodo di isolamento
|
||||
label.isolation.uri=URI di isolamento
|
||||
label.keyboard.type=Tipo di tastiera
|
||||
label.key=Key
|
||||
label.kvm.traffic.label=Etichetta del traffico via KVM
|
||||
label.label=Label
|
||||
label.latest.events=Ultimi eventi
|
||||
label.launch=Avvio
|
||||
label.launch.vm=Avviare una VM
|
||||
label.LB.isolation=Isolamento di LB
|
||||
label.load.balancing=Bilanciamento di Carico
|
||||
label.load.balancing.policies=Politiche di Bilanciamento di Carico
|
||||
label.local.storage.enabled=Local storage abilitato
|
||||
label.local.storage=Storage locale
|
||||
label.LUN.number=LUN \#
|
||||
label.management=Gestione
|
||||
label.management.ips=Indirizzo IP di Management
|
||||
label.manage.resources=Gestione Risorse
|
||||
label.max.guest.limit=Limite max di guest
|
||||
label.max.networks=Numero Max di reti
|
||||
label.max.public.ips=Numero max di indirizzi IP pubblici
|
||||
label.max.snapshots=Numero max di snapshot
|
||||
label.max.templates=Numero max di template
|
||||
label.max.vms=Numero max di VM utente
|
||||
label.max.volumes=Numero max di volumi
|
||||
label.max.vpcs=Numero max di VPC
|
||||
label.may.continue=E\\' ora possibile continuare.
|
||||
label.memory.mb=Memoria (in MB)
|
||||
label.menu.configuration=Configurazione
|
||||
label.menu.infrastructure=Infrastruttura
|
||||
label.menu.system.service.offerings=Offerte di Sistema
|
||||
label.menu.templates=Template
|
||||
label.migrate.instance.to.host=Migrare instance verso un altro host
|
||||
label.migrate.instance.to.ps=Migrare instance verso un altro primary storage
|
||||
label.migrate.to.host=Migrare verso un host
|
||||
label.migrate.to.storage=Migrare verso uno storage
|
||||
label.migrate.volume=Migrare un volume verso un altro primary storage
|
||||
label.move.down.row=Sposta gi\u00f9 di una riga
|
||||
label.move.to.bottom=Sposta gi\u00f9 alla fine
|
||||
label.move.to.top=Sposta in su all\\'inizio
|
||||
label.move.up.row=Sposta su di una riga
|
||||
label.my.network=La mia rete
|
||||
label.my.templates=I miei template
|
||||
label.nat.port.range=Intervallo di porte NAT
|
||||
label.netScaler=NetScaler
|
||||
label.network.ACL=ACL di rete
|
||||
label.network.ACLs=ACL di rete
|
||||
label.network.ACL.total=Totale ACL di rete
|
||||
label.network.domain.text=Dominio di Rete
|
||||
label.networking.and.security=Networking e sicurezza
|
||||
label.network.label.display.for.blank.value=Utilizzare il default gateway
|
||||
label.network.service.providers=Service Provider di Rete
|
||||
label.networks=Reti
|
||||
label.new=Nuovo
|
||||
label.new.project=Nuovo Progetto
|
||||
label.new.vm=Nuova VM
|
||||
label.nexusVswitch=Nexus 1000v
|
||||
label.nfs=NFS
|
||||
label.nic.adapter.type=Tipo di scheda NIC
|
||||
label.no.data=Nessun dato da mostrare
|
||||
label.no=No
|
||||
label.no.thanks=No grazie
|
||||
label.notifications=Notifiche
|
||||
label.number.of.clusters=Numero di Cluster
|
||||
label.number.of.hosts=Numero di Host
|
||||
label.number.of.pods=Numero di Pod
|
||||
label.number.of.system.vms=Numero delle VM di Sistema
|
||||
label.number.of.virtual.routers=Numero dei Router Virtuali
|
||||
label.number.of.zones=Numero di Zone
|
||||
label.ok=OK
|
||||
label.order=Ordine
|
||||
label.perfect.forward.secrecy=Segretezza di Forward perfetta
|
||||
label.physical.network.ID=ID della rete fisica
|
||||
label.please.specify.netscaler.info=Si prega di specificare le informazioni per Netscaler
|
||||
label.pod.name=Nome del Pod
|
||||
label.pods=Pod
|
||||
label.port.forwarding.policies=Politiche di Port Forwarding
|
||||
label.previous=Precedente
|
||||
label.primary.storage.count=Pool del Primary Storage
|
||||
label.primary.storage=Storage Primario
|
||||
label.private.Gateway=Gateway Privato
|
||||
label.private.network=Rete privata
|
||||
label.project.dashboard=Dashboard di progetto
|
||||
label.project.id=Project ID
|
||||
label.project.invite=Invitare ad un progetto
|
||||
label.project.name=Nome del progetto
|
||||
label.project=Project
|
||||
label.projects=Progetti
|
||||
label.project.view=Vista Progetto
|
||||
label.providers=Fornitori
|
||||
label.public.network=Rete pubblica
|
||||
label.purpose=Scopo
|
||||
label.quickview=Panoramica rapida
|
||||
label.reboot=Reboot
|
||||
label.redundant.router.capability=Capacit\u00e0 di ridondanza del router
|
||||
label.remind.later=Ricordami in seguito
|
||||
label.remove.ACL=Rimuovere ACL
|
||||
label.remove.egress.rule=Rimuovere una regola d\\'uscita
|
||||
label.remove.ip.range=Rimuovere intervallo di indirizzi IP
|
||||
label.remove.pf=Rimuovere regola di port forwarding
|
||||
label.remove.rule=Rimuovere regola
|
||||
label.remove.static.nat.rule=Rimuovere regola di NAT statico
|
||||
label.remove.static.route=Rimuovere una rotta statica
|
||||
label.remove.tier=Rimuovere un livello
|
||||
label.remove.vm.from.lb=Rimuovere una VM da regola di bilanciamento di carico
|
||||
label.remove.vpc=Rimuovere VPC
|
||||
label.removing=Rimozione
|
||||
label.reserved.system.gateway=Gateway di sistema riservato
|
||||
label.reserved.system.netmask=Netmask di sistema riservata
|
||||
label.reset.VPN.connection=Reset della connessione VPN
|
||||
label.resource.state=Stato della risorsa
|
||||
label.restart.network=Riavviare il servizio di rete
|
||||
label.restart.required=E\\' necessario un riavvio
|
||||
label.restart.vpc=Riavviare VPC
|
||||
label.restore=Restore
|
||||
label.review=Riesaminare
|
||||
label.revoke.project.invite=Revocare un invit
|
||||
label.root.disk.controller=Controller del disco root
|
||||
label.round.robin=Round-robin
|
||||
label.rules=Regole
|
||||
label.s3.access_key=Access Key
|
||||
label.s3.connection_timeout=Tempo di scadenza connessione
|
||||
label.s3.endpoint=Dispositivo
|
||||
label.s3.max_error_retry=Numero massimo di tentativi a seguito di errore
|
||||
label.s3.secret_key=Secret Key
|
||||
label.s3.socket_timeout=Tempo di scadenza del Socket
|
||||
label.s3.use_https=Utilizzare HTTPS
|
||||
label.save.and.continue=Salvare e proseguire
|
||||
label.secondary.storage.count=Pool del Secondary Storage
|
||||
label.secondary.storage=Storage Secondario
|
||||
label.secondary.storage.vm=VM di Secondary Storage
|
||||
label.secret.key=Secret Key
|
||||
label.select.a.template=Selezionare un template
|
||||
label.select.a.zone=Selezionare una zone
|
||||
label.select.instance=Selezionare una instanza
|
||||
label.select.instance.to.attach.volume.to=Selezionare l\\'instanza da collegare al volume
|
||||
label.select.iso.or.template=Selezionare immagine ISO o template
|
||||
label.select.offering=Seleziona l\\'offerta
|
||||
label.select.project=Selezionare un Progetto
|
||||
label.select=Selezionare
|
||||
label.select.tier=Selezionare il Livello
|
||||
label.select-view=Selezionare la vista
|
||||
label.select.vm.for.static.nat=Selezionare una VM per il NAT statico
|
||||
label.service.capabilities=Capacit\u00e0 di Servizio
|
||||
label.setup=Installazione
|
||||
label.setup.network=Configurazione Rete
|
||||
label.setup.zone=Configurazione Zona
|
||||
label.set.up.zone.type=Configurazione del tipo di Zona
|
||||
label.shutdown.provider=Arresto del provider
|
||||
label.site.to.site.VPN=Site-to-site VPN
|
||||
label.skip.guide=Se si ha familiarit\u00e0 con CloudStack per utilizzi precedenti, si pu\u00f2 saltare questa guida
|
||||
label.source=Sorgente
|
||||
label.specify.IP.ranges=Specificare intervallo di indirizzi IP
|
||||
label.srx=SRX
|
||||
label.start.IP=Indirizzo IP iniziale
|
||||
label.start.reserved.system.IP=Indirizzo IP iniziale riservato di sistema
|
||||
label.start.vlan=Vlan iniziale
|
||||
label.static.nat.enabled=NAT Statico Abilitato
|
||||
label.static.nat.vm.details=Dettagli di NAT Statico della VM
|
||||
label.sticky.cookie-name=Nome del cookie
|
||||
label.sticky.domain=Dominio
|
||||
label.sticky.expire=Scadenza
|
||||
label.sticky.length=Lunghezza
|
||||
label.sticky.mode=Modalit\u00e0
|
||||
label.sticky.nocache=Senza cache
|
||||
label.sticky.prefix=Prefisso
|
||||
label.sticky.tablesize=Dimensione della tabella
|
||||
label.stop=Stop
|
||||
label.storage.traffic=Traffico della rete Storage
|
||||
label.super.cidr.for.guest.networks=Super CIDR per Reti Guest
|
||||
label.supported.services=Servizi Supportati
|
||||
label.supported.source.NAT.type=Tipo di Source NAT supportato
|
||||
label.suspend.project=Sospendere il Progett
|
||||
label.system.offering=Offerta del sistema
|
||||
label.system.wide.capacity=Capacit\u00e0 del Sistema
|
||||
label.task.completed=Attivit\u00e0 completata
|
||||
label.tier.details=Dettagli del livello
|
||||
label.tier=Livello
|
||||
label.timeout=Timeout
|
||||
label.token=Token
|
||||
label.total.cpu=CPU Totali
|
||||
label.total.CPU=CPU Totali
|
||||
label.total.hosts=Host Totali
|
||||
label.total.memory=Memoria Totale
|
||||
label.total.of.ip=Totale di Indirizzo IP
|
||||
label.total.of.vm=Totale di VM
|
||||
label.total.storage=Storage Totale
|
||||
label.traffic.label=Etichetta del traffico
|
||||
label.traffic.types=Tipi di Traffico
|
||||
label.update.project.resources=Aggiornare le risorse di progetto
|
||||
label.upload=Upload
|
||||
label.upload.volume=Volume di upload
|
||||
label.vcdcname=Nome DC del vCenter
|
||||
label.vcipaddress=Indirizzo IP del vCenter
|
||||
label.viewing=Visualizzazione
|
||||
label.view=Vista
|
||||
label.virtual.machines=Virtual machine
|
||||
label.virtual.routers=Router Virtuali
|
||||
label.virtual.router=Virtual Router
|
||||
label.vlan=VLAN
|
||||
label.vm.destroy=Destroy
|
||||
label.vm.display.name=Nome visualizzato della VM
|
||||
label.vm.name=Nome VM
|
||||
label.vm.reboot=Reboot
|
||||
label.VMs.in.tier=VM nei livelli
|
||||
label.vm.state=Stato VM
|
||||
label.vm.stop=Stop
|
||||
label.vmware.traffic.label=Etichetta del traffico via VMware
|
||||
label.vpc.id=ID del VPC
|
||||
label.VPC.router.details=Dettagli del router VPC
|
||||
label.vpc=VPC
|
||||
label.VPN.connection=Connessione VPN
|
||||
label.vpn.customer.gateway=Gateway VPN del Cliente
|
||||
label.VPN.customer.gateway=Gateway VPN del Cliente
|
||||
label.VPN.gateway=Gateway VPN
|
||||
label.vpn=VPN
|
||||
label.vsmctrlvlanid=VLAN ID di Controllo
|
||||
label.vsmpktvlanid=VLAN ID del Pacchetto
|
||||
label.vsmstoragevlanid=VLAN ID di Storage
|
||||
label.what.is.cloudstack=Che cosa \u00e8 CloudStack&\#8482?
|
||||
label.xen.traffic.label=Etichetta del traffico via XenServer
|
||||
label.yes=S\u00ec
|
||||
label.zone.details=Dettagli della Zona
|
||||
label.zone.name=Nome Zona
|
||||
label.zones=Zone
|
||||
label.zone.type=Tipo di Zona
|
||||
label.zoneWizard.trafficType.guest=Guest\: Traffico di rete tra le virtual machine dell\\'utente finale
|
||||
label.zoneWizard.trafficType.public=Public\: Traffico di rete tra la rete internet e le virtual machine nell\\'infrastruttura cloud.
|
||||
label.zoneWizard.trafficType.storage=Storage\: Traffico di rete tra i server di primary e secondary storage, come ad esempio i template delle VM e le operazioni di snapshot
|
||||
message.acquire.new.ip=Si prega di confermare di voler acquisire un nuovo indirizzo IP per questa rete.
|
||||
message.acquire.new.ip.vpc=Si prega di confermare di voler acquisire un nuovo indirizzo IP per questo VPC.
|
||||
message.action.delete.nexusVswitch=Si prega di confermare di voler cancellare questo nexus 1000v
|
||||
message.action.delete.physical.network=Si prega di confermare di voler cancellare questa rete fisica
|
||||
message.action.delete.system.service.offering=Si prega di confermare di voler cancellare questa offerta di servizio di sistema.
|
||||
message.action.disable.nexusVswitch=Si prega di confermare di voler disabilitare questo nexus 1000v
|
||||
message.action.disable.physical.network=Si prega di confermare di voler disabilitare questa rete fisica.
|
||||
message.action.download.iso=Si prega di confermare di voler scaricare questa immagine ISO.
|
||||
message.action.download.template=Si prega di confermare di voler scaricare questo template.
|
||||
message.action.enable.nexusVswitch=Si prega di confermare di voler abilitare questo nexus 1000v
|
||||
message.action.enable.physical.network=Si prega di confermare l\\'intenzione di abilitare questa rete fisica.
|
||||
message.action.reboot.router=Tutti i servizi forniti da questo router virtuale saranno interrotti. Si prega di confermare di voler riavviare questo router.
|
||||
message.action.remove.host=Si prega di confermare di voler rimuovere questo host.
|
||||
message.action.stop.router=Tutti i servizi forniti da questo router virtuale saranno interrotti. Si prega di confermare di voler arrestare questo router.
|
||||
message.activate.project=Si \u00e8 sicuri di voler attivare questo progetto?
|
||||
message.add.domain=Si prega di specificare il sottodominio che si vuole creare in questo dominio
|
||||
message.add.guest.network=Si prega di confermare di voler aggiungere una rete guest
|
||||
message.adding.host=Aggiunta host
|
||||
message.adding.Netscaler.device=Aggiunta di dispositivo Netscaler
|
||||
message.adding.Netscaler.provider=Aggiunta di un provider Netscaler
|
||||
message.add.load.balancer.under.ip=La regola di bilanciamento di carico \u00e8 stata aggiunta all\\'indirizzo IP\:
|
||||
message.add.new.gateway.to.vpc=Si prega di specificare le informazioni per aggiungere un nuovo gateway a questo VPC.
|
||||
message.add.system.service.offering=Si prega di inserire le seguenti informazioni per aggiungere una nuova offerta di servizio di sistema.
|
||||
message.add.VPN.gateway=Si prega di confermare di voler aggiungere un Gateway VPN
|
||||
message.after.enable.s3=Il Secondary Storage S3 \u00e8 configurato. NOTA\: Una volta chiusa questa pagina, non sar\u00e0 pi\u00f9 possibile ri-configurare S3.
|
||||
message.after.enable.swift=Configurazione Swift completata. NOTA\: Una volta che questa pagina viene chiusa, non sar\u00e0 possibile ri-configurare nuovamente Swift.
|
||||
message.alert.state.detected=Rilevato uno stato di Alert
|
||||
message.change.password=Si prega di modificare la propria password.
|
||||
message.configure.all.traffic.types=Si dispone di pi\u00f9 reti fisiche; si prega di configurare le label per ogni tipo di traffico facendo click sul tasto \\'Edit\\'.
|
||||
message.configuring.guest.traffic=Configurazione del traffico guest
|
||||
message.configuring.physical.networks=Configurazione di reti fisiche
|
||||
message.configuring.public.traffic=Configurazione del traffico pubblico
|
||||
message.configuring.storage.traffic=Configurazione del traffico storage
|
||||
message.confirm.action.force.reconnect=Si prega di confermare di voler forzare la riconnessione a questo host.
|
||||
message.confirm.delete.F5=Si prega di confermare di voler rimuovere F5
|
||||
message.confirm.delete.NetScaler=Si prega di confermare di voler rimuovere NetScaler
|
||||
message.confirm.delete.SRX=Si prega di confermare di voler rimuovere SRX
|
||||
message.confirm.destroy.router=Si prega di confermare di voler rimuovere questo router
|
||||
message.confirm.disable.provider=Si prega di confermare di voler disabilitare questo provider
|
||||
message.confirm.enable.provider=Si prega di confermare di voler abilitare questo provider
|
||||
message.confirm.join.project=Si prega di confermare di volersi unire a questo progetto.
|
||||
message.confirm.remove.IP.range=Si prega di confermare di voler rimuovere questo intervallo di indirizzi IP.
|
||||
message.confirm.shutdown.provider=Si prega di confermare di voler arrestare questo provider
|
||||
message.create.template=Si \u00e8 sicuri di voler creare il template?
|
||||
message.creating.cluster=Creazione cluster
|
||||
message.creating.guest.network=Creazione di una rete guest
|
||||
message.creating.physical.networks=Creazione di reti fisiche
|
||||
message.creating.pod=Creazione pod
|
||||
message.creating.primary.storage=Creazione storage primario
|
||||
message.creating.secondary.storage=Creazione storage secondario
|
||||
message.creating.zone=Creazione della zona in corso
|
||||
message.decline.invitation=Si \u00e8 sicuri di voler declinare l\\'invito a questo progetto?
|
||||
message.delete.gateway=Si prega di confermare di voler cancellare il gateway
|
||||
message.delete.project=Si \u00e8 sicuri di voler cancellare questo progetto?
|
||||
message.delete.user=Si prega di confermare di voler cancellare questo utente.
|
||||
message.delete.VPN.connection=Si prega di confermare di voler cancellare la connessione VPN
|
||||
message.delete.VPN.customer.gateway=Si prega di confermare di voler cancellare questo Gateway VPN del Cliente
|
||||
message.delete.VPN.gateway=Si prega di confermare di voler cancellare questo Gateway VPN
|
||||
message.desc.advanced.zone=Per topologie di rete pi\u00f9 sofisticate. Queto modello di rete fornisce la maggior flessibilit\u00e0 nel definire reti guest e offrendo funzionalit\u00e0 di rete personalizzate come per esempio firewall, VPN, o supporto per bilanciamento di carico.
|
||||
message.desc.basic.zone=Indicare una rete singola in cui ogni instanza VM ricever\u00e0 un indirizzo IP assegnato. L\\'isolamento di istanze guest viene effettuato attraverso funzioni di tipo layer-3 come ad esempio i security group (filtraggio dell\\'indirizzo IP sorgente).
|
||||
message.desc.zone=Una zona \u00e8 l\\'unit\u00e0 organizzativa pi\u00f9 grandi in CloudStack, e corrisponde tipicamente ad un datacenter singolo. Le zono offrono isolamento fisico e ridondanza. Una zona \u00e8 costituita da uno o pi\u00f9 pod (ognuno dei quali contiene pi\u00f9 host e server di storage primario) ed un server di storage secondario condiviso da tutti i pod appartenenti alla zona.
|
||||
message.detach.disk=Si \u00e8 sicuri di voler sganciare questo disco?
|
||||
message.disable.user=Si prega di confermare di voler disabilitare questo utente.
|
||||
message.disable.vpn=Si \u00e8 sicuri di voler disabilitare la VPN?
|
||||
message.download.volume.confirm=Si prega di confermare di voler scaricare questo volume
|
||||
message.edit.traffic.type=Si prega si specificare la label del traffico che si vuole associare a questo tipo di traffico.
|
||||
message.enable.user=Si prega di confermare di voler abilitare questo utente.
|
||||
message.enable.vpn=Si prega di confermare di voler abilitare l\\'accesso VPN per questo indirizzo IP.
|
||||
message.enabling.security.group.provider=Abilitazione di un provider di Security Group
|
||||
message.enabling.zone=Abilitazione zona
|
||||
message.enter.token=Si prega di inserire il token ricevuto nella e-mail di invito.
|
||||
message.generate.keys=Si prega di confermare di voler generare nuove chiavi per questo utente.
|
||||
message.installWizard.click.retry=Fare click sul pulsante per riprovare l\\'avvio.
|
||||
message.installWizard.copy.whatIsAPod=Un pod pu\u00f2 essere utilizzato ad esempio per identificare un singolo rack. Gli host appartenenti al pod sono nella stessa subnet.<br/><br/>Un pod \u00e8 il secondo componente organizzativo pi\u00f9 grande in una installazione CloudStack&\#8482;. I pod sono contenuti in zone. Ogni zona pu\u00f2 contenere uno o pi\u00f9 pod; in una Installazione di Base, si configura un solo pod nella zona.
|
||||
message.installWizard.copy.whatIsAZone=Una zona \u00e8 il componente organizzativo pi\u00f9 grande in una installazione CloudStack&\#8482;. Una zona corrisponde solitamente ad un singolo datacenter, sebbene sia consentito avere pi\u00f9 zone in un datacenter. Il beneficio di organizzare l\\'infrastruttura in zone deriva dalla possibilit\u00e0 di creare isolamento e ridondanza. Per esempio, ogni zona pu\u00f2 avere la propria configurazione di alimentazione elettrica e collegamenti di rete, e le zone possono essere anche separate geograficamente (anche se non \u00e8 un requisito).
|
||||
message.installWizard.copy.whatIsSecondaryStorage=Un Secondary storage \u00e8 associato ad una zona, ed \u00e8 utilizzato per la memorizzazione di\:<ul><li>Template - Immagini SO che possono essere usate per eseguire il boot delle VM e che possono includere informazioni di configurazioni aggiuntive, come ad esempio applicazioni installate</li><li>Immagini ISO - Immagini OS utilizzabili che possono anche essere non-bootable</li><li>Snapshot di volumi disco - copie salvate di dati delle VM utilizzabili per il recupero di dati o per la creazione di nuovi template</ul>
|
||||
message.installWizard.tooltip.addCluster.name=Un nome per il cluster. Questo pu\u00f2 essere assegnato utilizzando testo a scelta e non \u00e8 utilizzato da CloudStack.
|
||||
message.installWizard.tooltip.addHost.hostname=Il nome DNS o l\\'indirizzo IP del sistema host.
|
||||
message.installWizard.tooltip.addHost.password=Questa \u00e8 la password per l\\'utente identificato precedentemente (dall\\'installazione XenServer).
|
||||
message.installWizard.tooltip.addHost.username=Tipicamente root.
|
||||
message.installWizard.tooltip.addPod.name=Un nome per il pod
|
||||
message.installWizard.tooltip.addPod.reservedSystemEndIp=Questo \u00e8 l\\'intervallo di indirizzi IP nella rete privata che CloudStack utilizza per la gestione delle VM del Secondary Storage e le VM della Console Proxy. Questi indirizzi IP sono ricavati dalla stessa subnet dei server computazionali.
|
||||
message.installWizard.tooltip.addPod.reservedSystemGateway=Il gateway per gli host appartenenti al pod.
|
||||
message.installWizard.tooltip.addPod.reservedSystemNetmask=La netmask in uso nella subnet utilizzata dalle VM guest.
|
||||
message.installWizard.tooltip.addPod.reservedSystemStartIp=Questo \u00e8 l\\'intervallo di indirizzi IP nella rete privata che CloudStack utilizza per la gestione delle VM del Secondary Storage e le VM della Console Proxy. Questi indirizzi IP sono ricavati dalla stessa subnet dei server computazionali.
|
||||
message.installWizard.tooltip.addPrimaryStorage.name=Il nome del dispositivo storage.
|
||||
message.installWizard.tooltip.addPrimaryStorage.path=(per NFS) In NFS questo corrisponde al path condiviso dal server. Path (per SharedMountPoint). Con KVM questo \u00e8 il path su ogni host su cui viene effettuato il mount di questo primary storage. Per esempio, "/mnt/primary".
|
||||
message.installWizard.tooltip.addPrimaryStorage.server=(per NFS, iSCSI, o PreSetup) L\\'indirizzo IP o il nome DNS del dispositivo di storage.
|
||||
message.installWizard.tooltip.addSecondaryStorage.nfsServer=L\\'indirizzo IP del server NFS su cui \u00e8 condiviso il secondary storage
|
||||
message.installWizard.tooltip.addSecondaryStorage.path=Il percorso esportato, posizionato sul server precedentemente specificato
|
||||
message.installWizard.tooltip.addZone.dns1=Questi sono i server DNS da usare per le VM guest nella zona. Questi server DNS saranno raggiunti attraverso la rete pubblica che si configurer\u00e0 nel seguito. Gli indirizzi IP pubblici per la zona devono disporre di una rotta per raggiungere i server DNS indicati qui.
|
||||
message.installWizard.tooltip.addZone.dns2=Questi sono i server DNS da usare per le VM guest nella zona. Questi server DNS saranno raggiunti attraverso la rete pubblica che si configurer\u00e0 nel seguito. Gli indirizzi IP pubblici per la zona devono disporre di una rotta per raggiungere i server DNS indicati qui.
|
||||
message.installWizard.tooltip.addZone.internaldns1=Questi sono i server DNS da utilizzare per le VM di sistema nella zona. Questi server DNS saranno raggiunti attraverso l\\'interfaccia di rete configurata nella rete privata delle VM di Sistema. L\\'indirizzo IP privato fornito ai pod devono disporre di una rotta per raggiungere il server DNS indicato qui.
|
||||
message.installWizard.tooltip.addZone.internaldns2=Questi sono i server DNS da utilizzare per le VM di sistema nella zona. Questi server DNS saranno raggiunti attraverso l\\'interfaccia di rete configurata nella rete privata delle VM di Sistema. L\\'indirizzo IP privato fornito ai pod devono disporre di una rotta per raggiungere il server DNS indicato qui.
|
||||
message.installWizard.tooltip.addZone.name=Un nome per la zona
|
||||
message.installWizard.tooltip.configureGuestTraffic.description=Una descrizione per identificare la rete
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestEndIp=L\\'intervallo degli indirizzi IP che saranno disponibili per l\\'allocazione alle VM guest in questa zona. Se viene usata una NIC, questi indirizzi IP dovrebbero appartenere allo stesso CIDR a cui appartiene il pod.
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestGateway=Il gateway da assegnare alle VM guest
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestNetmask=La netmask in uso nella subnet utilizzata dalle VM guest
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestStartIp=L\\'intervallo degli indirizzi IP che saranno disponibili per l\\'allocazione alle VM guest in questa zona. Se viene usata una NIC, questi indirizzi IP dovrebbero appartenere allo stesso CIDR a cui appartiene il pod.
|
||||
message.installWizard.tooltip.configureGuestTraffic.name=Un nome da assegnare alla rete
|
||||
message.instanceWizard.noTemplates=Non ci sono template disponibili\: si prega di aggiungere un template compatibile, e ri-avviare il wizard per la instanza.
|
||||
message.ip.address.changed=Il tuo indirizzo IP potrebbe essere cambiato; si desidera aggiornare l\\'elenco? Notare che in tal caso verr\u00e0 chiusa la finestra dettagli.
|
||||
message.iso.desc=Immagine disco contenente dati o supporto avviabile di boot per il SO
|
||||
message.join.project=Ora appartieni al progetto. Si prega di passare alla vista Progetto per accedere.
|
||||
message.launch.zone=La Zona \u00e8 pronta per l\\'avvio; si prega di procedere al passo successivo.
|
||||
message.migrate.instance.to.host=Si prega di confermare di voler migrare instance verso un altro host.
|
||||
message.migrate.instance.to.ps=Si prega di confermare di voler migrare instance verso un altro primary storage.
|
||||
message.migrate.router.confirm=Si prega di confermare l\\'host a cui si intende migrare il router\:
|
||||
message.migrate.volume=Si prega di confermare di voler migrare il volume verso un altro primary storage.
|
||||
message.no.projects.adminOnly=Non si dispone di alcun progetto.<br/>Si prega di chiedere la creazione di un nuovo progetto al proprio amministratore.
|
||||
message.no.projects=Non si possiedono progetti.<br/>Si prega di creare un nuovo progetto dalla sezione progetti.
|
||||
message.pending.projects.1=Ci sono inviti a progetti in attesa di risposta\:
|
||||
message.please.add.at.lease.one.traffic.range=Si prega di aggiungere almeno un intervallo relativo al traffico.
|
||||
message.please.proceed=Si prega di procedere al passo successivo.
|
||||
message.please.select.a.configuration.for.your.zone=Si prega di selezionare una configurazione per la zona.
|
||||
message.please.select.a.different.public.and.management.network.before.removing=Si prega di selezionare una diversa rete pubblica e di management prima della rimozione
|
||||
message.please.select.networks=Si prega di selezionare le reti per la virtual machine.
|
||||
message.please.wait.while.zone.is.being.created=Si prega di attendere la creazione della zona; pu\u00f2 richiedere tempo...
|
||||
message.project.invite.sent=L\\'invito \u00e8 stato spedito all\\'utente; l\\'utente sar\u00e0 aggiunto al progetto solo dopo aver accettato l\\'invito
|
||||
message.remove.vpc=Si prega di confermare di voler rimuovere VPC
|
||||
message.reset.password.warning.notPasswordEnabled=L\\'immagine template di questa instanza \u00e8 stata creata senza l\\'abilitazione della password
|
||||
message.reset.password.warning.notStopped=L\\'instanza deve essere arrestata prima di poter modificare la password
|
||||
message.reset.VPN.connection=Si prega di confermare di voler effettuare il reset della connessione VPN
|
||||
message.restart.network=Tutti i servizi forniti da questa rete saranno interrotti. Si prega di confermare di voler riavviare questa rete.
|
||||
message.restart.vpc=Si prega di confermare di voler riavviare VPC
|
||||
message.select.a.zone=Una zona corrisponde tipicamente ad un singolo datacenter. Zone multiple consentono di aumentare l\\'affidabilit\u00e0 creando isolamento fisico e ridondanza.
|
||||
message.select.instance=Si prega di selezionare una instanza.
|
||||
message.select.iso=Si prega di selezionare una immagine ISO per la nuova instanza virtuale.
|
||||
message.select.item=Si prega di selezionare un elemento.
|
||||
message.select.security.groups=Si prega di selezionare i security group per la nuova VM
|
||||
message.select.template=Si prega di selezionare un template per la nuova instanza virtuale.
|
||||
message.setup.physical.network.during.zone.creation.basic=Quando si aggiunge una zona di base, si pu\u00f2 configurare una rete fisica, che corrisponde ad una NIC sul sistema host di virtualizzazione. La rete consente il trasporto di vari tipi di traffico di comunicazione.<br/><br/>E\\' possibile anche spostare altri tipi di traffico sulla rete fisica in modalit\u00e0 <strong>drag and drop</strong>.
|
||||
message.setup.successful=L\\'installazione del cloud \u00e8 completata con successo\!
|
||||
message.specify.url=Si prega di specificare la URL
|
||||
message.step.2.desc=
|
||||
message.step.3.desc=
|
||||
message.suspend.project=Si \u00e8 sicuri di voler sospendere questo progetto?
|
||||
message.template.desc=Immagine SO utilizzabile per eseguire il boot delle VM
|
||||
message.tooltip.dns.1=Nome di un server DNS per l\\'uso da parte delle VM in questa zona. Gli indirizzi IP pubblici per la zona devono avere un percorso di instradamento verso questo server.
|
||||
message.tooltip.dns.2=Un nome di un server DNS aggiuntivo per l\\'uso da parte delle VM in questa zona. Gli indirizzi IP pubblici per la zona devono avere un percorso di instradamento verso questo server.
|
||||
message.tooltip.internal.dns.1=Nome di un server DNS per l\\'uso da parte delle VM interne di CloudStack di sistema nella zona. Gli indirizzi IP privati per i pod devono avere un percorso di instradamento verso questo server.
|
||||
message.tooltip.internal.dns.2=Nome di un server DNS per l\\'uso da parte delle VM interne di CloudStack di sistema nella zona. Gli indirizzi IP privati per i pod devono avere un percorso di instradamento verso questo server.
|
||||
message.tooltip.network.domain=Un suffisso DNS che consentir\u00e0 la creazione di un nome di dominio personalizzato per la rete a cui accedono le VM ospiti.
|
||||
message.tooltip.pod.name=Un nome per questo pod
|
||||
message.tooltip.reserved.system.gateway=Il gateway per gli host appartenenti al pod.
|
||||
message.tooltip.reserved.system.netmask=Il prefisso di rete che definisce la subnet del pod. Utilizza la notazione CIDR.
|
||||
message.tooltip.zone.name=Un nome per la zona.
|
||||
message.update.resource.count=Si prega di confermare di voler aggiornare il valore delle risorse per questo account.
|
||||
message.validate.instance.name=Il nome dell\\'instanza non pu\u00f2 avere lunghezza superiore a 63 caratteri. Sono consentite solo lettere ASCII a-z, A-Z, numeri 0-9, segni \\'-\\'. Il primo carattere deve essere una lettera, e l\\'ultimo una lettera o un numero.
|
||||
message.vm.review.launch=Si prega di riesaminare le informazioni e confermare l\\'instance virtuale scelta sia corretta prima di avviarla.
|
||||
message.you.must.have.at.least.one.physical.network=E\\' necessario disporre di almeno una rete fisica
|
||||
message.Zone.creation.complete=Creazione zona completata
|
||||
message.zone.creation.complete.would.you.like.to.enable.this.zone=Creazione zona completata. Si desidera abilitare questa zona?
|
||||
message.zone.no.network.selection=La zona selezionata non contiene opzioni per la selezione della rete.
|
||||
message.zoneWizard.enable.local.storage=ATTENZIONE\: Se si abilita lo storage locale per questa zona, \u00e8 necessario procedere come segue, a seconda di dove si intende avviare le VM di sistema\:<br/><br/>1. Se le VM di sistema devono essere avviate dal primary storage, questo deve essere aggiunto alla zona dopo la sua creazione. E\\' anche necessario avviare la zona in uno stato disabilitato.<br/><br/>2. Se le VM di sistema devono essere avviate dallo storage locale, system.vm.use.local.storage deve essere impostato a true prima di abilitare la zona.<br/><br/><br/>Si intende procedere?
|
||||
mode=Modalit\u00e0
|
||||
notification.reboot.instance=Riavviare una instanza
|
||||
notification.start.instance=Avviare una instanza
|
||||
notification.stop.instance=Arrestare una instanza
|
||||
state.Accepted=Accettato
|
||||
state.Active=Attivo
|
||||
state.Allocated=Allocato
|
||||
state.Allocating=Allocazione in corso
|
||||
state.BackedUp=Salvataggio eseguito
|
||||
state.BackingUp=Salvataggio in esecuzione
|
||||
state.Completed=Completato
|
||||
state.Creating=Creazione in corso
|
||||
state.Declined=Declinato
|
||||
state.Disabled=Disabilitato
|
||||
state.enabled=Abilitato
|
||||
state.Enabled=Abilitato
|
||||
state.Error=Errore
|
||||
state.Migrating=Migrazione in corso
|
||||
state.ready=Pronto
|
||||
state.Ready=Pronto
|
||||
state.Running=In esecuzione
|
||||
state.Starting=Avvio in corso
|
||||
state.Stopped=Arrestato
|
||||
state.Stopping=Arresto in corso
|
||||
state.Suspended=Sospeso
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,366 @@
|
|||
# Licensed to the Apache Software Foundation (ASF) under one
|
||||
# or more contributor license agreements. See the NOTICE file
|
||||
# distributed with this work for additional information
|
||||
# regarding copyright ownership. The ASF licenses this file
|
||||
# to you under the Apache License, Version 2.0 (the
|
||||
# "License"); you may not use this file except in compliance
|
||||
# with the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing,
|
||||
# software distributed under the License is distributed on an
|
||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
# KIND, either express or implied. See the License for the
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
|
||||
changed.item.properties=Endrede egenskaper
|
||||
error.could.not.enable.zone=Kunne ikke aktivere sonen
|
||||
error.installWizard.message=Noe gikk galt. G\u00e5 tilbake og korriger feilene.
|
||||
error.password.not.match=Passordfeltene sammensvarer ikke
|
||||
error.something.went.wrong.please.correct.the.following=Noe gikk galt. Vennligst korrig\u00e9r f\u00f8lgende
|
||||
force.delete=Tving sletting
|
||||
force.remove=Tving fjerning
|
||||
force.stop=Tving stopp
|
||||
instances.actions.reboot.label=Omstart av instans
|
||||
label.accept.project.invitation=Aksepter prosjektinvitasjon
|
||||
label.action.disable.cluster=Deaktiver klyngen
|
||||
label.action.disable.cluster.processing=Deaktiverer klyngen...
|
||||
label.action.disable.pod=Deaktiver pod
|
||||
label.action.disable.pod.processing=Deaktiverer pod...
|
||||
label.action.disable.zone=Deaktiver sonen
|
||||
label.action.disable.zone.processing=Deaktiverer sonen...
|
||||
label.action.enable.cluster=Aktiver klynge
|
||||
label.action.enable.cluster.processing=Aktiverer klyngen...
|
||||
label.action.enable.pod=Aktiver pod
|
||||
label.action.enable.pod.processing=Aktiverer pod...
|
||||
label.action.enable.zone=Aktiver sone
|
||||
label.action.enable.zone.processing=Aktiverer sone...
|
||||
label.action.unmanage.cluster.processing=Fjerner administrasjon av klynge...
|
||||
label.activate.project=Aktiver prosjekt
|
||||
label.add.accounts=Legg til kontoer
|
||||
label.add.accounts.to=Legg kontoer til
|
||||
label.add.account.to.project=Legg kontoen til prosjektet
|
||||
label.add.by=Legg til ved
|
||||
label.add.guest.network=Legg til gjestenettverk
|
||||
label.add.network.device=Legg til nettverksenhet
|
||||
label.add.new.F5=Legg til ny F5
|
||||
label.add.new.NetScaler=Legg til ny NetScaler
|
||||
label.add.new.SRX=Legg til ny SRX
|
||||
label.add.physical.network=Legg til fysisk nettverk
|
||||
label.add.resources=Legg til ressurser
|
||||
label.add.system.service.offering=Legg til et systemtilbud
|
||||
label.add.to.group=Legg til gruppe
|
||||
label.add.vms=Legg til VMer
|
||||
label.advanced=Avansert
|
||||
label.agree=Godtar
|
||||
label.allocated=Allokert
|
||||
label.allocation.state=Allokeringsstatus
|
||||
label.apply=Bruk
|
||||
label.bandwidth=B\u00e5ndbredde
|
||||
label.basic=Basis
|
||||
label.capacity=Kapasitet
|
||||
label.change.service.offering=Endre tjenestetilbud
|
||||
label.change.value=Endre verdi
|
||||
label.cidr=CIDR
|
||||
label.cidr.list=Kilde-CIDR
|
||||
label.clean.up=Rydd opp
|
||||
label.clvm=CLVM
|
||||
label.compute.and.storage=Regnekraft og lagring
|
||||
label.compute=Beregne
|
||||
label.configure=Konfigurer
|
||||
label.confirm.password=Bekreft passord
|
||||
label.congratulations=Gratulerer\!
|
||||
label.continue.basic.install=Fortsett med enkelt oppsett
|
||||
label.continue=Fortsett
|
||||
label.corrections.saved=Endringer lagret
|
||||
label.CPU.cap=CPU begrensning
|
||||
label.created.by.system=Opprettet av systemet
|
||||
label.create.project=Opprett prosjekt
|
||||
label.create.template=Opprett mal
|
||||
label.decline.invitation=Avvis invitasjon
|
||||
label.dedicated=Dedikert
|
||||
label.default=Standardverdi
|
||||
label.default.use=Standard bruk
|
||||
label.default.view=Standardvisning
|
||||
label.delete.project=Slett prosjekt
|
||||
label.destination.physical.network.id=Fysisk nettverksid-destinasjon
|
||||
label.destroy.router=Slett ruter
|
||||
label.dhcp=DHCP
|
||||
label.DHCP.server.type=DHCP servertype
|
||||
label.disabled=Inaktiv
|
||||
label.disable.provider=Deaktiver tilbyder
|
||||
label.display.name=Visningsnavn
|
||||
label.done=Utf\u00f8rt
|
||||
label.drag.new.position=Dra til ny posisjon
|
||||
label.edit.network.details=Edit\u00e9r nettverksdetaljer
|
||||
label.edit.project.details=Editer prosjektdetaljer
|
||||
label.elastic=Elastisk
|
||||
label.elastic.IP=Elastisk IP
|
||||
label.elastic.LB=Elastisk LB
|
||||
label.enable.provider=Aktiver tilbyder
|
||||
label.enable.vpn=Aktiver VPN
|
||||
label.end.IP=Slutt-IP
|
||||
label.end.vlan=Slutt-VLAN
|
||||
label.enter.token=Skriv inn koden
|
||||
label.error=Feil
|
||||
label.f5=F5
|
||||
label.filterBy=Filtrer etter
|
||||
label.guest.end.ip=Gjest slutt-IP
|
||||
label.guest=Gjest
|
||||
label.guest.networks=Gjestenettverk
|
||||
label.guest.start.ip=Gjest start-IP
|
||||
label.guest.traffic=Gjestetrafikk
|
||||
label.hints=Hint
|
||||
label.installWizard.addClusterIntro.subtitle=Hva er en klynge?
|
||||
label.installWizard.addClusterIntro.title=La oss legge til en klynge
|
||||
label.installWizard.addHostIntro.subtitle=Hva er en vert?
|
||||
label.installWizard.addHostIntro.title=La oss legge til en vert
|
||||
label.installWizard.addPodIntro.subtitle=Hva er en pod?
|
||||
label.installWizard.addPodIntro.title=La oss legge til en pod
|
||||
label.installWizard.addPrimaryStorageIntro.subtitle=Hva er prim\u00e6rlagring?
|
||||
label.installWizard.addPrimaryStorageIntro.title=Legg til prim\u00e6rlagring
|
||||
label.installWizard.addSecondaryStorageIntro.subtitle=Hva er sekund\u00e6rlagring?
|
||||
label.installWizard.addSecondaryStorageIntro.title=Legg til sekund\u00e6rlagring
|
||||
label.installWizard.addZoneIntro.subtitle=Hva er en sone?
|
||||
label.installWizard.addZoneIntro.title=La oss legge til en sone
|
||||
label.installWizard.addZone.title=Legg til sone
|
||||
label.installWizard.click.launch=Klikk startknappen.
|
||||
label.installWizard.subtitle=Denne veiviseren vil hjelpe deg i din installasjon av CloudStack&\#8482
|
||||
label.installWizard.title=Hei og velkommen til CloudStack&\#8482
|
||||
label.introduction.to.cloudstack=Introduksjon til CloudStack&\#8482
|
||||
label.invitations=Invitasjoner
|
||||
label.invited.accounts=Inviterte kontoer
|
||||
label.invite=Inviter
|
||||
label.invite.to=Inviter til
|
||||
label.ip.ranges=IP-rekke
|
||||
label.is.redundant.router=Redundant
|
||||
label.item.listing=Elementlisting
|
||||
label.kvm.traffic.label=KVM trafikketikett
|
||||
label.launch=Start
|
||||
label.launch.vm=Start VM
|
||||
label.LB.isolation=LB-isolering
|
||||
label.least.connections=F\u00e6rrest tilkoblinger
|
||||
label.load.balancing=Lastbalansering
|
||||
label.load.balancing.policies=Regler for lastbalansering
|
||||
label.local.storage=Lokal lagring
|
||||
label.make.project.owner=Gj\u00f8r konto prosjekteier
|
||||
label.management=Administrasjon
|
||||
label.manage.resources=Behandle ressurser
|
||||
label.max.public.ips=Maks offentlige IPer
|
||||
label.max.snapshots=Maks \u00f8yeblikksbilder
|
||||
label.max.templates=Maks maler
|
||||
label.max.vms=Maks bruker-VMer
|
||||
label.max.volumes=Maks volumer
|
||||
label.may.continue=Du kan n\u00e5 fortsette.
|
||||
label.menu.system.service.offerings=Systemtilbud
|
||||
label.migrate.instance.to.host=Migrer instansen til en annen vert
|
||||
label.migrate.instance.to.ps=Migrer instansen til en annen sekund\u00e6r lagring.
|
||||
label.migrate.volume=Migrer volumet til en annen prim\u00e6rlagring.
|
||||
label.move.down.row=Flytt \u00e9n rad ned
|
||||
label.move.to.top=Flytt til toppen
|
||||
label.move.up.row=Flytt \u00e9n rad opp
|
||||
label.my.network=Mitt nettverk
|
||||
label.my.templates=Mine maler
|
||||
label.netScaler=NetScaler
|
||||
label.network.device=Nettverksenhet
|
||||
label.network.device.type=Type nettverksenhet
|
||||
label.networking.and.security=Nettverk og sikkerhet
|
||||
label.network.label.display.for.blank.value=Bruk standard gateway
|
||||
label.networks=Nettverk
|
||||
label.new=Ny
|
||||
label.new.project=Nytt prosjekt
|
||||
label.new.vm=Ny VM
|
||||
label.no.data=Ingen data \u00e5 vise
|
||||
label.no.thanks=Nei, takk
|
||||
label.notifications=Notifikasjoner
|
||||
label.ok=OK
|
||||
label.order=Rekkef\u00f8lge
|
||||
label.physical.network.ID=Fysisk nettverksid
|
||||
label.PING.CIFS.password=PING CIFS passord
|
||||
label.PING.CIFS.username=PING CIFS brukernavn
|
||||
label.PING.dir=PING-mappe
|
||||
label.PING.storage.IP=PING lagrings-IP
|
||||
label.please.specify.netscaler.info=Vennligst spesifiser NetScaler-info
|
||||
label.port.forwarding.policies=Regler for portvideresending
|
||||
label.previous=Forrige
|
||||
label.project.dashboard=Prosjektoversikt
|
||||
label.project.id=Prosjektid
|
||||
label.project.invite=Inviter til prosjekt
|
||||
label.project.name=Prosjektnavn
|
||||
label.project=Prosjekt
|
||||
label.projects=Prosjekter
|
||||
label.project.view=Prosjektvisning
|
||||
label.providers=Tilbydere
|
||||
label.public.network=Offentlig nettverk
|
||||
label.Pxe.server.type=PXE Servertype
|
||||
label.redundant.router.capability=Redundant ruter
|
||||
label.redundant.router=Redundant ruter
|
||||
label.redundant.state=Redundant tilstand
|
||||
label.remind.later=P\u00e5minn meg senere
|
||||
label.remove.ip.range=Fjern IP-rekke
|
||||
label.removing=Fjerner
|
||||
label.restart.network=Nettverksomstart
|
||||
label.restart.required=Omstart p\u00e5krevd
|
||||
label.review=Gjennomg\u00e5
|
||||
label.revoke.project.invite=Tilbakekall invitasjonen
|
||||
label.round.robin=Ringdistribusjon
|
||||
label.save.and.continue=Lagre og fortsett
|
||||
label.select.a.template=Velg en mal
|
||||
label.select.a.zone=Velg en sone
|
||||
label.select.iso.or.template=Velg ISO eller mal
|
||||
label.select.project=Velg prosjekt
|
||||
label.select-view=Velg visning
|
||||
label.setup.network=Nettverksoppsett
|
||||
label.setup=Oppsett
|
||||
label.setup.zone=Soneoppsett
|
||||
label.set.up.zone.type=Oppsett av sonetype
|
||||
label.shutdown.provider=Steng tilbyder
|
||||
label.skip.guide=Jeg har brukt CloudStack tidligere. Hopp over denne veiviseren
|
||||
label.source=Kilde
|
||||
label.SR.name = SR navnelapp
|
||||
label.srx=SRX
|
||||
label.start.IP=Start-IP
|
||||
label.start.vlan=Start-VLAN
|
||||
label.static.nat.enabled=Statisk NAT aktivert
|
||||
label.stickiness=Klebrighet
|
||||
label.storage.tags=Merkelapper for lagring
|
||||
label.storage.traffic=Lagringstrafikk
|
||||
label.subdomain.access=Tilgang for underdomene
|
||||
label.supported.source.NAT.type=Supporterte kilde-NAT typer
|
||||
label.suspend.project=Suspender prosjekt
|
||||
label.task.completed=Oppgave utf\u00f8rt
|
||||
label.TFTP.dir=TFTP-mappe
|
||||
label.timeout=Tidsavbrudd
|
||||
label.token=Kode
|
||||
label.traffic.types=Trafikktyper
|
||||
label.update.project.resources=Oppdater prosjektressurser
|
||||
label.view.all=Vis alle
|
||||
label.view.console=Se konsoll
|
||||
label.viewing=Viser
|
||||
label.view=Vis
|
||||
label.virtual.machines=Virtuelle maskiner
|
||||
label.virtual.router=Virtuell ruter
|
||||
label.vm.display.name=Visningsnavn for VM
|
||||
label.VMFS.datastore=VMFS lagringsomr\u00e5de
|
||||
label.vm.name=VM-navn
|
||||
label.vmware.traffic.label=VMware trafikketikett
|
||||
label.volgroup=Volumgruppe
|
||||
label.what.is.cloudstack=Hva er CloudStack&\#8482?
|
||||
label.xen.traffic.label=XenServer trafikketikett
|
||||
label.zone.details=Sonedetaljer
|
||||
label.zone.name=Sonenavn
|
||||
label.zone.type=Sonetype
|
||||
message.acquire.new.ip=Vennligst bekreft at du \u00f8nsker \u00e5 anskaffe en ny IP for dette nettverket
|
||||
message.action.disable.pod=Vennligst bekreft at du \u00f8nsker \u00e5 aktivere denne poden
|
||||
message.action.disable.zone=Vennligst bekreft at du \u00f8nsker \u00e5 deaktivere denne sonen.
|
||||
message.action.enable.cluster=Vennligst bekreft at du \u00f8nsker \u00e5 aktivere denne klyngen.
|
||||
message.action.enable.pod=Vennligst bekreft at du \u00f8nsker \u00e5 aktivere denne poden.
|
||||
message.action.enable.zone=Vennligst bekreft at du \u00f8nsker \u00e5 aktivere denne sonen.
|
||||
message.activate.project=Er du sikker p\u00e5 du \u00f8nsker \u00e5 aktivere dette prosjektet?
|
||||
message.add.guest.network=Vennligst bekreft at du \u00f8nsker \u00e5 legge til gjestenettverk
|
||||
message.adding.host=Legger til vert
|
||||
message.adding.Netscaler.device=Legg til NetScaler-enhet
|
||||
message.alert.state.detected=Alarm oppdaget
|
||||
message.change.password=Vennligst endre ditt passord
|
||||
message.configuring.guest.traffic=Konfigurerer gjestetrafikk
|
||||
message.configuring.physical.networks=Konfigurer fysisk nettverk
|
||||
message.configuring.public.traffic=Konfigurerer offentlig trafikk
|
||||
message.configuring.storage.traffic=Konfigurerer lagringstrafikk
|
||||
message.confirm.destroy.router=Vennligst bekreft at du \u00f8nsker \u00e5 fjerne denne ruteren
|
||||
message.confirm.disable.provider=Vennligst bekreft at du \u00f8nsker \u00e5 deaktivere denne tilbyderen
|
||||
message.confirm.enable.provider=Vennligst bekreft at du \u00f8nsker \u00e5 aktivere denne tilbyderen
|
||||
message.confirm.join.project=Vennligst bekreft at du \u00f8nsker \u00e5 delta i dette prosjektet.
|
||||
message.confirm.shutdown.provider=Vennligst bekreft at du \u00f8nsker \u00e5 stenge denne tilbyderen
|
||||
message.create.template=Er du sikker p\u00e5 at du \u00f8nsker \u00e5 lage malen?
|
||||
message.creating.cluster=Oppretter klynge
|
||||
message.creating.pod=Oppretter pod
|
||||
message.creating.primary.storage=Oppretter prim\u00e6rlagring
|
||||
message.creating.secondary.storage=Oppretter sekund\u00e6rlagring
|
||||
message.decline.invitation=Er du sikker p\u00e5 du \u00f8nsker \u00e5 avvise denne prosjektinvitasjonen?
|
||||
message.delete.project=Er du sikker p\u00e5 du \u00f8nsker \u00e5 slette dette prosjektet?
|
||||
message.detach.disk=Er du sikker p\u00e5 at du \u00f8nsker \u00e5 frakoble denne disken?
|
||||
message.download.volume.confirm=Vennligst bekreft at du \u00f8nsker \u00e5 laste ned dette volumet
|
||||
message.enable.vpn=Vennligst bekreft at du \u00f8nsker \u00e5 aktivere VPN-tilgang for denne IP-adressen
|
||||
message.enabling.zone=Aktiverer sonen
|
||||
message.enter.token=Vennligst skriv inn koden du fikk i invitasjonsmailen.
|
||||
message.installWizard.click.retry=Klikk p\u00e5 knappen for \u00e5 pr\u00f8ve oppstart p\u00e5 nytt.
|
||||
message.installWizard.tooltip.addCluster.name=Klyngenavnet. Dette kan v\u00e6re hva som helst og er ikke benyttet av CloudStack.
|
||||
message.installWizard.tooltip.addHost.hostname=DNS-navnet eller IP-adressen til verten.
|
||||
message.installWizard.tooltip.addHost.password=Dette er passordet for brukeren gjengitt ovenfor (fra din XenServer-installasjon).
|
||||
message.installWizard.tooltip.addHost.username=Vanligvis root.
|
||||
message.installWizard.tooltip.addPod.name=Et navn for poden
|
||||
message.installWizard.tooltip.addPod.reservedSystemGateway=Gatewayen til vertene i poden.
|
||||
message.installWizard.tooltip.addPod.reservedSystemNetmask=Nettmasken benyttet p\u00e5 subnettet gjestene vil bruke.
|
||||
message.installWizard.tooltip.addPrimaryStorage.name=Navnet p\u00e5 lagringsenheten.
|
||||
message.installWizard.tooltip.addPrimaryStorage.path=(for NFS) I NFS er dette den eksporterte filbanen fra serveren. Banen (for SharedMountPoint). Med KVM er dette banen p\u00e5 hver vert hvor denne prim\u00e6re lagringen er tilkoblet. For eksempel\: "mnt/primary".
|
||||
message.installWizard.tooltip.addPrimaryStorage.server=(for NFS, iSCSI eller PreSetup) IP-adressen eller DNS-navnet til lagringsenheten.
|
||||
message.installWizard.tooltip.addSecondaryStorage.nfsServer=IP-adressen til NFS-serveren som inneholder sekund\u00e6r lagring
|
||||
message.installWizard.tooltip.addSecondaryStorage.path=Den eksporterte filbanen, fra serveren du spesifiserte ovenfor
|
||||
message.installWizard.tooltip.addZone.dns1=Dette er DNS-serveren som benyttes av gjeste-VMer i sonen. Disse DNS-serverene vil bli aksessert via det offentlige nettverket du vil legge til senere. De offentlige IP-adressene for en sone m\u00e5 ha en rute til DNS-serveren navngitt her.
|
||||
message.installWizard.tooltip.addZone.dns2=Dette er DNS-serveren som benyttes av gjeste-VMer i sonen. Disse DNS-serverene vil bli aksessert via det offentlige nettverket du vil legge til senere. De offentlige IP-adressene for en sone m\u00e5 ha en rute til DNS-serveren navngitt her.
|
||||
message.installWizard.tooltip.addZone.name=Et navn for sonen
|
||||
message.installWizard.tooltip.configureGuestTraffic.description=En beskrivelse av nettverket
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestGateway=Gatewayen gjestene skal bruke
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestNetmask=Nettmasken benyttet p\u00e5 subnettet gjestene skal bruke
|
||||
message.installWizard.tooltip.configureGuestTraffic.name=Et navn for nettverket
|
||||
message.instanceWizard.noTemplates=Du har ingen maler tilgjengelig. Vennligst legg til en kompatibel mal og kj\u00f8r instansveiviseren.
|
||||
message.ip.address.changed=Din IP-adresse kan ha endret seg. \u00d8nsker du \u00e5 oppdatere visningen? Merk at detaljvisningen vil i s\u00e5fall lukkes.
|
||||
message.iso.desc=Diskimage som inneholder data etter oppstartsbar media for OS
|
||||
message.join.project=Du har n\u00e5 deltatt i et prosjekt. Vennligst bytt til prosjektvisning for \u00e5 se prosjektet.
|
||||
message.migrate.instance.to.host=Vennligst bekreft at du \u00f8nsker \u00e5 migrere instansen til en annen vert.
|
||||
message.migrate.instance.to.ps=Vennligst bekreft at du \u00f8nsker \u00e5 migrere instansen til en annen sekund\u00e6r lagring.
|
||||
message.migrate.volume=Vennligst bekreft at du \u00f8nsker \u00e5 migrere volumet til en annen prim\u00e6rlagring.
|
||||
message.no.projects.adminOnly=Du har ingen prosjekter.<br/>Vennligst be din administrator om \u00e5 opprette et nytt prosjekt.
|
||||
message.no.projects=Du har ingen prosjekter.<br/>Vennligst opprett et nytt fra prosjektseksjonen.
|
||||
message.pending.projects.1=Du har f\u00f8lgende prosjektinvitasjoner\:
|
||||
message.pending.projects.2=For \u00e5 se, vennligst g\u00e5 til prosjektseksjonen og velg invitasjoner fra nedtrekksmenyen.
|
||||
message.please.add.at.lease.one.traffic.range=Vennligst legg til minst \u00e9tt trafikkniv\u00e5
|
||||
message.please.proceed=Vennligst fortsett til neste steg
|
||||
message.please.select.a.configuration.for.your.zone=Vennligst velg en konfigurasjon for din sone
|
||||
message.please.select.a.different.public.and.management.network.before.removing=Vennligst velg et annet offentlig- og administrasjonsnettverk f\u00f8r du fjerner
|
||||
message.please.select.networks=Vennligst velg nettverk for din VM
|
||||
message.please.wait.while.zone.is.being.created=Vennlist vent mens din sone opprettes. Dette kan ta noe tid...
|
||||
message.project.invite.sent=Invitasjon sendt til bruker. De vil bli lagt til prosjektet s\u00e5 snart de har akseptert invitasjonen
|
||||
message.reset.password.warning.notPasswordEnabled=Denne malen vil bli opprettet uten passord
|
||||
message.reset.password.warning.notStopped=Din instans m\u00e5 stoppes f\u00f8r man fors\u00f8ker \u00e5 bytte n\u00e5v\u00e6rende passord
|
||||
message.select.iso=Vennligst velg en ISO for din nye virtuelle instans.
|
||||
message.select.item=Vennligst velg et element
|
||||
message.select.security.groups=Vennligst velg sikkerhetsgruppe(r) for din nye VM
|
||||
message.select.template=Vennligst velg en mal for din nye virtuelle instans.
|
||||
message.setup.successful=Oppsettet av nettskyen er vellykket\!
|
||||
message.step.2.desc=
|
||||
message.step.3.desc=
|
||||
message.suspend.project=Er du sikker du \u00f8nsker \u00e5 pause dette prosjektet?
|
||||
message.template.desc=OS-image som kan brukes til \u00e5 starte VMer
|
||||
message.vm.review.launch=Vennligst vurder f\u00f8lgende informasjon og bekreft at din virtuelle instans er korrekt f\u00f8r kj\u00f8ring
|
||||
message.you.must.have.at.least.one.physical.network=Du trenger minst ett fysisk nettverk
|
||||
message.Zone.creation.complete=Opprettelsen av sonen utf\u00f8rt
|
||||
message.zone.creation.complete.would.you.like.to.enable.this.zone=Soneopprettelse fullf\u00f8rt. \u00d8nsker du \u00e5 aktivere denne sonen?
|
||||
message.zone.no.network.selection=Sonen du har valgt har ingen mulighet for valg av nettverk.
|
||||
notification.reboot.instance=Omstart av instans
|
||||
notification.start.instance=Start instans
|
||||
notification.stop.instance=Stopp instans
|
||||
state.Accepted=Akseptert
|
||||
state.Active=Aktiv
|
||||
state.Allocated=Allokert
|
||||
state.BackedUp=Sikkerhetskopiert
|
||||
state.BackingUp=Sikkerhetskopierer
|
||||
state.Completed=Utf\u00f8rt
|
||||
state.Creating=Oppretter
|
||||
state.Declined=Avvist
|
||||
state.Destroyed=Destruert
|
||||
state.Disabled=Inaktiv
|
||||
state.Error=Feil
|
||||
state.Expunging=Fjerner
|
||||
state.Pending=Venter
|
||||
state.ready=Klar
|
||||
state.Ready=Klar
|
||||
state.Running=Kj\u00f8rer
|
||||
state.Starting=Starter
|
||||
state.Stopped=Stoppet
|
||||
state.Suspended=Pauset
|
||||
ui.listView.filters.all=Alle
|
||||
ui.listView.filters.mine=Mine
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -450,16 +450,15 @@
|
|||
</goals>
|
||||
<configuration>
|
||||
<target if="${nonoss}">
|
||||
<echo>test</echo>
|
||||
<replaceregexp
|
||||
file="${basedir}/target/generated-webapp/WEB-INF/web.xml"
|
||||
match="classpath:componentContext.xml"
|
||||
replace="classpath:nonossComponentContext.xml" byline="true" />
|
||||
<exec executable="cp">
|
||||
<arg value="-r" />
|
||||
<arg value="${basedir}/../plugins/network-elements/cisco-vnmc/scripts" />
|
||||
<arg value="${basedir}/target/generated-webapp/WEB-INF/classes/" />
|
||||
</exec>
|
||||
<copy overwrite="true" todir="${basedir}/target/generated-webapp/WEB-INF/classes/scripts">
|
||||
<fileset dir="${basedir}/../plugins/network-elements/cisco-vnmc/scripts">
|
||||
<include name="**/*" />
|
||||
</fileset>
|
||||
</copy>
|
||||
</target>
|
||||
</configuration>
|
||||
</execution>
|
||||
|
|
|
|||
|
|
@ -82,7 +82,7 @@
|
|||
<property name="messageSerializer" ref="messageSerializer" />
|
||||
</bean>
|
||||
|
||||
<bean id="eventBus" class = "org.apache.cloudstack.framework.eventbus.EventBusBase" />
|
||||
<bean id="messageBus" class = "org.apache.cloudstack.framework.messagebus.MessageBusBase" />
|
||||
|
||||
<!--
|
||||
DAO with customized configuration
|
||||
|
|
@ -532,10 +532,14 @@
|
|||
-->
|
||||
<bean id="UserDispersingPlanner" class="com.cloud.deploy.UserDispersingPlanner">
|
||||
<property name="name" value="UserDispersing"/>
|
||||
<property name="StoragePoolAllocators" value="#{storagePoolAllocators.Adapters}" />
|
||||
<property name="HostAllocators" value="#{hostAllocators.Adapters}" />
|
||||
</bean>
|
||||
|
||||
<bean id="UserConcentratedPodPlanner" class="com.cloud.deploy.UserConcentratedPodPlanner">
|
||||
<property name="name" value="UserConcentratedPod"/>
|
||||
<property name="StoragePoolAllocators" value="#{storagePoolAllocators.Adapters}" />
|
||||
<property name="HostAllocators" value="#{hostAllocators.Adapters}" />
|
||||
</bean>
|
||||
|
||||
<bean id="clusterBasedAgentLoadBalancerPlanner" class="com.cloud.cluster.agentlb.ClusterBasedAgentLoadBalancerPlanner">
|
||||
|
|
@ -609,7 +613,6 @@
|
|||
<property name="UserAuthenticators" value="#{userAuthenticators.Adapters}" />
|
||||
<property name="UserPasswordEncoders" value="#{userPasswordEncoders.Adapters}" />
|
||||
<property name="HostAllocators" value="#{hostAllocators.Adapters}" />
|
||||
<property name="Planners" value="#{deploymentPlanners.Adapters}" />
|
||||
<property name="AffinityGroupProcessors" value="#{affinityProcessors.Adapters}" />
|
||||
</bean>
|
||||
|
||||
|
|
@ -715,6 +718,7 @@
|
|||
<bean id="agentMonitor" class="com.cloud.agent.manager.AgentMonitor" />
|
||||
<bean id="alertGenerator" class="com.cloud.event.AlertGenerator" />
|
||||
<bean id="ancientDataMotionStrategy" class="org.apache.cloudstack.storage.motion.AncientDataMotionStrategy" />
|
||||
<bean id="xenserverStorageMotionStrategy" class="org.apache.cloudstack.storage.motion.XenServerStorageMotionStrategy" />
|
||||
<bean id="ancientImageDataStoreProvider" class="org.apache.cloudstack.storage.image.store.AncientImageDataStoreProvider" />
|
||||
<bean id="ancientSnapshotStrategy" class="org.apache.cloudstack.storage.snapshot.strategy.AncientSnapshotStrategy" />
|
||||
<bean id="apiDBUtils" class="com.cloud.api.ApiDBUtils" />
|
||||
|
|
|
|||
|
|
@ -69,6 +69,7 @@ changeServiceForVirtualMachine=15
|
|||
scaleVirtualMachine=15
|
||||
assignVirtualMachine=1
|
||||
migrateVirtualMachine=1
|
||||
migrateVirtualMachineWithVolume=1
|
||||
recoverVirtualMachine=7
|
||||
|
||||
#### snapshot commands
|
||||
|
|
@ -254,6 +255,7 @@ deleteHost=3
|
|||
prepareHostForMaintenance=1
|
||||
cancelHostMaintenance=1
|
||||
listHosts=3
|
||||
findHostsForMigration=1
|
||||
addSecondaryStorage=1
|
||||
updateHostPassword=1
|
||||
|
||||
|
|
@ -288,6 +290,7 @@ deleteStoragePool=1
|
|||
listClusters=3
|
||||
enableStorageMaintenance=1
|
||||
cancelStorageMaintenance=1
|
||||
findStoragePoolsForMigration=1
|
||||
|
||||
#### security group commands
|
||||
createSecurityGroup=15
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@
|
|||
independent configuration
|
||||
|
||||
-->
|
||||
<bean id="premiumDatabaseUpgradeChecker" class="com.cloud.upgrade.PremiumDatabaseUpgradeChecker"/>
|
||||
<bean id="DatabaseUpgradeChecker" class="com.cloud.upgrade.DatabaseUpgradeChecker"/>
|
||||
<bean id="GlobalLoadBalancingRulesServiceImpl" class ="org.apache.cloudstack.region.gslb.GlobalLoadBalancingRulesServiceImpl" >
|
||||
<property name="GslbServiceProvider">
|
||||
<ref bean="Netscaler"/>
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue