From 93db30e4e116b6aa36e1b127ef5f406072fa935b Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Wed, 3 Apr 2013 14:22:15 -0700 Subject: [PATCH 001/607] UI, instance nics tab: Implement 'add network' action -Change detail widget to support 'add' action on per-nic/item detail groups -Implement add network/NIC action on instances NIC tab --- ui/scripts/instances.js | 56 +++++++++++++++++++++++++++++ ui/scripts/ui/widgets/detailView.js | 24 +++++++++++++ 2 files changed, 80 insertions(+) diff --git a/ui/scripts/instances.js b/ui/scripts/instances.js index 1e3ce45ce22..ddb562251e8 100644 --- a/ui/scripts/instances.js +++ b/ui/scripts/instances.js @@ -1227,6 +1227,62 @@ nics: { title: 'label.nics', multiple: true, + actions: { + add: { + label: 'Add network to VM', + messages: { + confirm: function(args) { + return 'Please confirm that you would like to add a new VM NIC for this network.'; + }, + notification: function(args) { + return 'Add network to VM'; + } + }, + createForm: { + title: 'Add network to VM', + desc: 'Please specify the network that you would like to add this VM to. A new NIC will be added for this network.', + fields: { + networkid: { + label: 'label.network', + select: function(args) { + $.ajax({ + url: createURL('listNetworks'), + data: { + listAll: true, + zoneid: args.context.instances[0].zoneid + }, + success: function(json) { + args.response.success({ + data: $.map(json.listnetworksresponse.network, function(network) { + return { + id: network.id, + description: network.name + }; + }) + }); + } + }); + } + } + } + }, + action: function(args) { + $.ajax({ + url: createURL('addNicToVirtualMachine'), + data: { + virtualmachineid: args.context.instances[0].id, + networkid: args.data.networkid + }, + success: function(json) { + args.response.success({ + _custom: { jobId: json.addnictovirtualmachineresponse.jobid } + }); + } + }); + }, + notification: { poll: pollAsyncJobResult } + } + }, fields: [ { name: { label: 'label.name', header: true }, diff --git a/ui/scripts/ui/widgets/detailView.js b/ui/scripts/ui/widgets/detailView.js index 4b520f934ba..cd1135cd4b3 100644 --- a/ui/scripts/ui/widgets/detailView.js +++ b/ui/scripts/ui/widgets/detailView.js @@ -771,6 +771,7 @@ var hiddenFields; var context = detailViewArgs ? detailViewArgs.context : cloudStack.context; var isMultiple = tabData.multiple || tabData.isMultiple; + var actions = tabData.actions; if (isMultiple) { context[tabData.id] = data; @@ -1074,6 +1075,29 @@ } }); + // Add item action + if (tabData.multiple && tabData.actions && tabData.actions.add) { + $tabContent.append( + $('
').addClass('button add').append( + $('').addClass('icon').html(' '), + $('').html(_l(tabData.actions.add.label)) + ).click(function() { + uiActions.standard( + $detailView, + { actions: tabData.actions, actionName: 'add' }, { + noRefresh: true, + complete: function(args) { + loadTabContent( + $detailView.find('div.detail-group:visible'), + $detailView.data('view-args') + ); + } + } + ) + }) + ); + } + return true; } From 9bd6692be023fa5697d19495a3b1fdd777cb4abd Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Wed, 3 Apr 2013 14:35:58 -0700 Subject: [PATCH 002/607] VM NICs tab: Style 'add network' action --- ui/css/cloudstack3.css | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/ui/css/cloudstack3.css b/ui/css/cloudstack3.css index 9b77b9f3a4f..015206b3358 100644 --- a/ui/css/cloudstack3.css +++ b/ui/css/cloudstack3.css @@ -1773,6 +1773,11 @@ div.list-view td.state.off span { background-position: 100% -431px; } +.detail-view .detail-group .button.add { + float: left; + margin: 6px 0 17px 13px; +} + /*List-view: subselect dropdown*/ .list-view .subselect { width: 116px; @@ -2733,7 +2738,8 @@ div.toolbar div.button.add, div.toolbar div.button.refresh, div.toolbar div.button.add, div.toolbar div.button.main-action, -.toolbar div.button.header-action { +.toolbar div.button.header-action, +.detail-group .button.add { /*+placement:shift 0px 5px;*/ position: relative; left: 0px; @@ -2765,7 +2771,8 @@ div.toolbar div.button.main-action, div.toolbar div.button.add:hover, div.toolbar div.button.refresh:hover, div.toolbar div.button.main-action:hover, -.toolbar div.button.header-action:hover { +.toolbar div.button.header-action:hover, +.detail-group .button.add:hover { background-position: 0 -132px; border-left: 1px solid #585D60; } @@ -2795,7 +2802,8 @@ div.toolbar div.button.refresh span { background-repeat: no-repeat; } -div.toolbar div.button.add span { +div.toolbar div.button.add span, +.detail-group .button.add span.icon { padding: 0px 0 0px 18px; background: url(../images/icons.png) no-repeat -626px -209px; /*+placement:shift 0px 0px;*/ From ece8b8c423a46c5be84171520ffd130ec25d9249 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Wed, 3 Apr 2013 14:52:16 -0700 Subject: [PATCH 003/607] NICs, add action: Fix for when detail view isn't present anymore --- ui/scripts/ui/widgets/detailView.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/ui/scripts/ui/widgets/detailView.js b/ui/scripts/ui/widgets/detailView.js index cd1135cd4b3..7b202ef5d0d 100644 --- a/ui/scripts/ui/widgets/detailView.js +++ b/ui/scripts/ui/widgets/detailView.js @@ -1087,10 +1087,12 @@ { actions: tabData.actions, actionName: 'add' }, { noRefresh: true, complete: function(args) { - loadTabContent( - $detailView.find('div.detail-group:visible'), - $detailView.data('view-args') - ); + if ($detailView.is(':visible')) { + loadTabContent( + $detailView.find('div.detail-group:visible'), + $detailView.data('view-args') + ); + } } } ) From 1a80f9e1f41bc92ef881e78282980b8d298c2259 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Wed, 3 Apr 2013 14:52:38 -0700 Subject: [PATCH 004/607] Detail view, multi-groups: Put 'add' button on top --- ui/css/cloudstack3.css | 7 ++++++- ui/scripts/ui/widgets/detailView.js | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/ui/css/cloudstack3.css b/ui/css/cloudstack3.css index 015206b3358..a0b86025136 100644 --- a/ui/css/cloudstack3.css +++ b/ui/css/cloudstack3.css @@ -1774,8 +1774,13 @@ div.list-view td.state.off span { } .detail-view .detail-group .button.add { + clear: both; + margin: 0px 21px 13px 0 !important; +} + +.detail-view .details.group-multiple { float: left; - margin: 6px 0 17px 13px; + width: 100%; } /*List-view: subselect dropdown*/ diff --git a/ui/scripts/ui/widgets/detailView.js b/ui/scripts/ui/widgets/detailView.js index 7b202ef5d0d..427010af0a8 100644 --- a/ui/scripts/ui/widgets/detailView.js +++ b/ui/scripts/ui/widgets/detailView.js @@ -1077,7 +1077,7 @@ // Add item action if (tabData.multiple && tabData.actions && tabData.actions.add) { - $tabContent.append( + $tabContent.prepend( $('
').addClass('button add').append( $('').addClass('icon').html(' '), $('').html(_l(tabData.actions.add.label)) From 4f5d3118482389c5557af7c431b937739c2a184b Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Wed, 3 Apr 2013 17:55:39 -0700 Subject: [PATCH 005/607] WIP - Implement/style NIC actions --- ui/css/cloudstack3.css | 25 +++++++++++++++++++++++++ ui/scripts/instances.js | 19 +++++++++++++++++++ ui/scripts/ui/widgets/detailView.js | 17 ++++++++++++++++- 3 files changed, 60 insertions(+), 1 deletion(-) diff --git a/ui/css/cloudstack3.css b/ui/css/cloudstack3.css index a0b86025136..68050608cd7 100644 --- a/ui/css/cloudstack3.css +++ b/ui/css/cloudstack3.css @@ -2009,6 +2009,31 @@ div.detail-group.actions td { vertical-align: middle; } +.details.group-multiple div.detail-group.actions { + float: right; + max-width: 75%; + height: 23px; + position: relative; + margin: -15px 0 -5px; +} + +.details.group-multiple div.detail-group.actions .detail-actions { + display: block; + height: 35px; + padding: 0; +} + +.details.group-multiple div.detail-group.actions .detail-actions td { +} + +.details.group-multiple div.detail-group.actions .detail-actions .action { + float: right; + /*+placement:shift 2px 7px;*/ + position: relative; + left: 2px; + top: 7px; +} + .detail-group table td.detail-actions { width: 59%; height: 26px; diff --git a/ui/scripts/instances.js b/ui/scripts/instances.js index ddb562251e8..d4cc57f57b9 100644 --- a/ui/scripts/instances.js +++ b/ui/scripts/instances.js @@ -1281,6 +1281,25 @@ }); }, notification: { poll: pollAsyncJobResult } + }, + + // Remove NIC/Network from VM + remove: { + label: 'label.action.delete.network', + messages: { + confirm: function(args) { + return 'message.action.delete.network'; + }, + notification: function(args) { + return 'label.action.delete.network'; + } + }, + action: function(args) { + args.response.success(); + }, + notification: { + poll: function(args) { args.complete(); } + } } }, fields: [ diff --git a/ui/scripts/ui/widgets/detailView.js b/ui/scripts/ui/widgets/detailView.js index 427010af0a8..ddb62f02fde 100644 --- a/ui/scripts/ui/widgets/detailView.js +++ b/ui/scripts/ui/widgets/detailView.js @@ -698,7 +698,10 @@ $.each(actions, function(key, value) { if ($.inArray(key, allowedActions) == -1 || - (key == 'edit' && options.compact)) return true; + (options.ignoreAddAction && key == 'add') || + (key == 'edit' && options.compact)) { + return true; + } var $action = $('
') .addClass('action').addClass(key) @@ -1073,6 +1076,18 @@ }) ); } + + // Add action bar + if (tabData.actions) { + var $actions = makeActionButtons(tabData.actions, { + actionFilter: tabData.actions.actionFilter, + data: item, + context: $detailView.data('view-args').context, + ignoreAddAction: true + }); + + $fieldContent.find('th').append($actions); + } }); // Add item action From 265cf42ffeb3ca304b781319ac635fd324d59ffa Mon Sep 17 00:00:00 2001 From: Hugo Trippaers Date: Fri, 5 Apr 2013 21:00:25 +0200 Subject: [PATCH 006/607] packaging: sync master and 4.1 for rpm packaging --- packaging/centos63/cloud-agent.rc | 3 +- packaging/centos63/cloud.spec | 18 ++- packaging/centos63/package.sh | 192 ++++++++++++++++-------------- 3 files changed, 109 insertions(+), 104 deletions(-) diff --git a/packaging/centos63/cloud-agent.rc b/packaging/centos63/cloud-agent.rc index 6d534732528..b3784882975 100755 --- a/packaging/centos63/cloud-agent.rc +++ b/packaging/centos63/cloud-agent.rc @@ -67,7 +67,8 @@ export CLASSPATH="/usr/share/java/commons-daemon.jar:/usr/share/java/jna.jar:$AC start() { echo -n $"Starting $PROGNAME: " if hostname --fqdn >/dev/null 2>&1 ; then - $JSVC -cp "$CLASSPATH" -pidfile "$PIDFILE" -errfile SYSLOG $CLASS + $JSVC -cp "$CLASSPATH" -pidfile "$PIDFILE" \ + -errfile $LOGDIR/cloudstack-agent.err -outfile $LOGDIR/cloudstack-agent.out $CLASS RETVAL=$? echo else diff --git a/packaging/centos63/cloud.spec b/packaging/centos63/cloud.spec index a3e0de2889e..9ce46c97c42 100644 --- a/packaging/centos63/cloud.spec +++ b/packaging/centos63/cloud.spec @@ -153,13 +153,9 @@ Provides: cloud-aws-api %description awsapi Apache Cloudstack AWS API compatibility wrapper -#%package docs -#Summary: Apache CloudStack documentation -#%description docs -#Apache CloudStack documentations - %prep echo Doing CloudStack build + %setup -q -n %{name}-%{_maventag} %build @@ -169,10 +165,10 @@ echo VERSION=%{_maventag} >> build/replace.properties echo PACKAGE=%{name} >> build/replace.properties if [ "%{_ossnoss}" == "NONOSS" -o "%{_ossnoss}" == "nonoss" ] ; then - echo "Packaging nonoss components" + echo "Executing mvn packaging for NONOSS ..." mvn -Pawsapi,systemvm -Dnonoss package else - echo "Packaging oss components" + echo "Executing mvn packaging for OSS ..." mvn -Pawsapi package -Dsystemvm fi @@ -329,6 +325,10 @@ install -D tools/whisker/LICENSE ${RPM_BUILD_ROOT}%{_defaultdocdir}/%{name}-cli- %clean [ ${RPM_BUILD_ROOT} != "/" ] && rm -rf ${RPM_BUILD_ROOT} +%pre awsapi +id cloud > /dev/null 2>&1 || /usr/sbin/useradd -M -c "CloudStack unprivileged user" \ + -r -s /bin/sh -d %{_localstatedir}/cloudstack/management cloud|| true + %preun management /sbin/service cloudstack-management stop || true if [ "$1" == "0" ] ; then @@ -544,10 +544,6 @@ fi %{_defaultdocdir}/%{name}-cli-%{version}/LICENSE %{_defaultdocdir}/%{name}-cli-%{version}/NOTICE -#%files docs -#%doc LICENSE -#%doc NOTICE - %files awsapi %defattr(0644,cloud,cloud,0755) %{_datadir}/%{name}-bridge/webapps/awsapi diff --git a/packaging/centos63/package.sh b/packaging/centos63/package.sh index 802cf7e5e0b..d9d5b1c81f2 100755 --- a/packaging/centos63/package.sh +++ b/packaging/centos63/package.sh @@ -20,126 +20,134 @@ function usage() { echo "" echo "usage: ./package.sh [-p|--pack] [-h|--help] [ARGS]" echo "" - echo "oss|OSS To package oss components only" - echo "nonoss|NONOSS To package non-oss and oss components" + echo "The commonly used Arguments are:" + echo "oss|OSS To package OSS specific" + echo "nonoss|NONOSS To package NONOSS specific" echo "" echo "Examples: ./package.sh -p|--pack oss|OSS" echo " ./package.sh -p|--pack nonoss|NONOSS" echo " ./package.sh (Default OSS)" - echo "" exit 1 } function defaultPackaging() { - CWD=`pwd` - RPMDIR=$CWD/../../dist/rpmbuild - PACK_PROJECT=cloudstack - VERSION=`(cd ../../; mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version) | grep '^[0-9]\.'` +CWD=`pwd` +RPMDIR=$CWD/../../dist/rpmbuild +PACK_PROJECT=cloudstack - if echo $VERSION | grep SNAPSHOT ; then - REALVER=`echo $VERSION | cut -d '-' -f 1` - DEFVER="-D_ver $REALVER" - DEFPRE="-D_prerelease 1" - DEFREL="-D_rel SNAPSHOT" - else - DEFVER="-D_ver $REALVER" - DEFPRE= - DEFREL= - fi - mkdir -p $RPMDIR/SPECS - mkdir -p $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION +VERSION=`(cd ../../; mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version) | grep '^[0-9]\.'` +if echo $VERSION | grep SNAPSHOT ; then + REALVER=`echo $VERSION | cut -d '-' -f 1` + DEFVER="-D_ver $REALVER" + DEFPRE="-D_prerelease 1" + DEFREL="-D_rel SNAPSHOT" +else + DEFVER="-D_ver $REALVER" + DEFPRE= + DEFREL= +fi - (cd ../../; tar -c --exclude .git --exclude dist . | tar -C $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION -x) - (cd $RPMDIR/SOURCES/; tar -czf $PACK_PROJECT-$VERSION.tgz $PACK_PROJECT-$VERSION) +mkdir -p $RPMDIR/SPECS +mkdir -p $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION - cp cloud.spec $RPMDIR/SPECS +(cd ../../; tar -c --exclude .git --exclude dist . | tar -C $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION -x ) +(cd $RPMDIR/SOURCES/; tar -czf $PACK_PROJECT-$VERSION.tgz $PACK_PROJECT-$VERSION) - (cd $RPMDIR; rpmbuild -ba SPECS/cloud.spec "-D_topdir $RPMDIR" "$DEFVER" "$DEFREL" "$DEFPRE") +cp cloud.spec $RPMDIR/SPECS - exit +(cd $RPMDIR; rpmbuild -ba SPECS/cloud.spec "-D_topdir $RPMDIR" "$DEFVER" "$DEFREL" "$DEFPRE") + +exit } function packaging() { - CWD=`pwd` - RPMDIR=$CWD/../../dist/rpmbuild - PACK_PROJECT=cloudstack - DEFOSSNOSS="-D_ossnoss $packageval" - VERSION=`(cd ../../; mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version) | grep '^[0-9]\.'` + +CWD=`pwd` +RPMDIR=$CWD/../../dist/rpmbuild +PACK_PROJECT=cloudstack +DEFOSSNOSS="-D_ossnoss $packageval" - if echo $VERSION | grep SNAPSHOT ; then - REALVER=`echo $VERSION | cut -d '-' -f 1` - DEFVER="-D_ver $REALVER" - DEFPRE="-D_prerelease 1" - DEFREL="-D_rel SNAPSHOT" - else - DEFVER="-D_ver $REALVER" - DEFPRE= - DEFREL= - fi - mkdir -p $RPMDIR/SPECS - mkdir -p $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION +VERSION=`(cd ../../; mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version) | grep '^[0-9]\.'` +if echo $VERSION | grep SNAPSHOT ; then + REALVER=`echo $VERSION | cut -d '-' -f 1` + DEFVER="-D_ver $REALVER" + DEFPRE="-D_prerelease 1" + DEFREL="-D_rel SNAPSHOT" +else + DEFVER="-D_ver $REALVER" + DEFPRE= + DEFREL= +fi - (cd ../../; tar -c --exclude .git --exclude dist . | tar -C $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION -x ) - (cd $RPMDIR/SOURCES/; tar -czf $PACK_PROJECT-$VERSION.tgz $PACK_PROJECT-$VERSION) +mkdir -p $RPMDIR/SPECS +mkdir -p $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION - cp cloud.spec $RPMDIR/SPECS - (cd $RPMDIR; rpmbuild -ba SPECS/cloud.spec "-D_topdir $RPMDIR" "$DEFVER" "$DEFREL" "$DEFPRE" "$DEFOSSNOSS") +(cd ../../; tar -c --exclude .git --exclude dist . | tar -C $RPMDIR/SOURCES/$PACK_PROJECT-$VERSION -x ) +(cd $RPMDIR/SOURCES/; tar -czf $PACK_PROJECT-$VERSION.tgz $PACK_PROJECT-$VERSION) - exit +cp cloud.spec $RPMDIR/SPECS + +(cd $RPMDIR; rpmbuild -ba SPECS/cloud.spec "-D_topdir $RPMDIR" "$DEFVER" "$DEFREL" "$DEFPRE" "$DEFOSSNOSS") + +exit } if [ $# -lt 1 ] ; then - defaultPackaging + + defaultPackaging + elif [ $# -gt 0 ] ; then - SHORTOPTS="hp:" - LONGOPTS="help,pack:" - ARGS=$(getopt -s bash -u -a --options $SHORTOPTS --longoptions $LONGOPTS --name $0 -- "$@" ) - eval set -- "$ARGS" + SHORTOPTS="hp:" + LONGOPTS="help,pack:" + + ARGS=$(getopt -s bash -u -a --options $SHORTOPTS --longoptions $LONGOPTS --name $0 -- "$@" ) + eval set -- "$ARGS" + + while [ $# -gt 0 ] ; do + case "$1" in + -h | --help) + usage + exit 0 + ;; + -p | --pack) + echo "Doing CloudStack Packaging ....." + packageval=$2 + if [ "$packageval" == "oss" -o "$packageval" == "OSS" ] ; then + defaultPackaging + elif [ "$packageval" == "nonoss" -o "$packageval" == "NONOSS" ] ; then + packaging + else + echo "Error: Incorrect value provided in package.sh script, Please see help ./package.sh --help|-h for more details." + exit 1 + fi + ;; + -) + echo "Unrecognized option..." + usage + exit 1 + ;; + --) + echo "Unrecognized option..." + usage + exit 1 + ;; + -*) + echo "Unrecognized option..." + usage + exit 1 + ;; + *) + shift + break + ;; + esac + done - while [ $# -gt 0 ] ; do - case "$1" in - -h | --help) - usage - exit 0 - ;; - -p | --pack) - echo "Packaging Apache CloudStack" - packageval=$2 - if [ "$packageval" == "oss" -o "$packageval" == "OSS" ] ; then - defaultPackaging - elif [ "$packageval" == "nonoss" -o "$packageval" == "NONOSS" ] ; then - packaging - else - echo "Error: Incorrect usage. See help ./package.sh --help|-h." - exit 1 - fi - ;; - -) - echo "Unrecognized option." - usage - exit 1 - ;; - --) - echo "Unrecognized option." - usage - exit 1 - ;; - -*) - echo "Unrecognized option." - usage - exit 1 - ;; - *) - shift - break - ;; - esac - done else - echo "Incorrect choice. Nothing to do." >&2 - echo "./package.sh --help for details" + echo "Incorrect choice. Nothing to do." >&2 + echo "Please, execute ./package.sh --help for more help" fi From b1ef74737af85997fa250ccbb53089ecb20a65eb Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Sun, 7 Apr 2013 00:13:46 -0700 Subject: [PATCH 007/607] CLOUDSTACK-1065: cloudstack UI - AWS Style Regions - when switching region, set location without parameters. --- ui/scripts/cloud.core.callbacks.js | 41 +++++++++++++++++------------- ui/scripts/cloudStack.js | 14 +++++----- ui/scripts/sharedFunctions.js | 2 +- ui/scripts/ui-custom/regions.js | 4 +-- 4 files changed, 33 insertions(+), 28 deletions(-) diff --git a/ui/scripts/cloud.core.callbacks.js b/ui/scripts/cloud.core.callbacks.js index 1a9e0456d0b..a081294293c 100644 --- a/ui/scripts/cloud.core.callbacks.js +++ b/ui/scripts/cloud.core.callbacks.js @@ -52,25 +52,31 @@ Below is a sample login attempt var clientApiUrl = "/client/api"; var clientConsoleUrl = "/client/console"; -$(document).ready(function() { - /* - condition 1: If window.location.href contains parameter 'loginUrl', save the parameter's value to a cookie, then reload the page without any URL parameter. - (After the page is reloaded without any URL parameter, it will fall in condition 2.) - */ - if ($.urlParam('loginUrl') != 0) { - $.cookie('loginUrl', $.urlParam('loginUrl'), { expires: 1}); - document.location.href = window.location.href.substring(0, window.location.href.indexOf('?')); - } +$(document).ready(function() { - /* - condition 2: If window.location.href does not contain parameter 'loginUrl' but cookie 'loginUrl' exists, - save the cookie's value to g_regionUrlParam (a global variable for switching regions), - then call login API to set g_loginResponse (a global variable for single-sign-on). - */ - else if($.cookie('loginUrl') != null) { - g_regionUrlParam = '?loginUrl=' + $.cookie('loginUrl'); + var url = $.urlParam("loginUrl"); + if (url != undefined && url != null && url.length > 0) { + url = unescape(clientApiUrl+"?"+url); $.ajax({ - url: unescape(clientApiUrl + "?" + $.cookie('loginUrl')), + url: url, + dataType: "json", + async: false, + success: function(json) { + g_loginResponse = json.loginresponse; + }, + error: function() { + onLogoutCallback(); + // This means the login failed. You should redirect to your login page. + }, + beforeSend: function(XMLHttpRequest) { + return true; + } + }); + } + else if(window.name != null && window.name.indexOf("command=login") != -1) { //from region switching + g_loginCmdText = window.name; + $.ajax({ + url: clientApiUrl + "?" + window.name, dataType: "json", async: false, success: function(json) { @@ -85,7 +91,6 @@ $(document).ready(function() { } }); } - }); diff --git a/ui/scripts/cloudStack.js b/ui/scripts/cloudStack.js index 985627b824e..499cb833040 100644 --- a/ui/scripts/cloudStack.js +++ b/ui/scripts/cloudStack.js @@ -251,12 +251,11 @@ array1.push("&domain=" + encodeURIComponent("/")); } - g_regionUrlParam = '?loginUrl=' + escape("command=login" + array1.join("") + "&response=json"); - $.cookie('loginUrl', escape("command=login" + array1.join("") + "&response=json"), { expires: 1}); + g_loginCmdText = "command=login" + array1.join("") + "&response=json"; $.ajax({ type: "POST", - data: "command=login" + array1.join("") + "&response=json", + data: g_loginCmdText, dataType: "json", async: false, success: function(json) { @@ -386,7 +385,8 @@ g_timezoneoffset = null; g_timezone = null; g_supportELB = null; - g_regionUrlParam = null; + g_loginCmdText = null; + window.name = ''; $.cookie('JSESSIONID', null); $.cookie('sessionKey', null); @@ -398,8 +398,7 @@ $.cookie('timezoneoffset', null); $.cookie('timezone', null); $.cookie('supportELB', null); - $.cookie('loginUrl', null); - + if(onLogoutCallback()) { //onLogoutCallback() will set g_loginResponse(single-sign-on variable) to null, then bypassLoginCheck() will show login screen. document.location.reload(); //when onLogoutCallback() returns true, reload the current document. } @@ -466,7 +465,8 @@ document.title = 'CloudStack'; - if ($.cookie('loginUrl') != null || $.urlParam('loginUrl') != 0) { + if ($.urlParam('loginUrl') != 0 + ||(window.name != null && window.name.indexOf("command=login") != -1)) { // SSO loginArgs.hideLoginScreen = true; } diff --git a/ui/scripts/sharedFunctions.js b/ui/scripts/sharedFunctions.js index dbcb781a6fa..86fe7f6416c 100644 --- a/ui/scripts/sharedFunctions.js +++ b/ui/scripts/sharedFunctions.js @@ -20,7 +20,7 @@ var g_role = null; // roles - root, domain-admin, ro-admin, user var g_username = null; var g_account = null; var g_domainid = null; -var g_regionUrlParam = null; +var g_loginCmdText = null; var g_enableLogging = false; var g_timezoneoffset = null; var g_timezone = null; diff --git a/ui/scripts/ui-custom/regions.js b/ui/scripts/ui-custom/regions.js index 17bc86cb5ad..2f61dfddeaf 100644 --- a/ui/scripts/ui-custom/regions.js +++ b/ui/scripts/ui-custom/regions.js @@ -89,8 +89,8 @@ closeRegionSelector({ complete: function() { $('#container').prepend($('
').addClass('loading-overlay')); - - document.location.href = url + g_regionUrlParam; + window.name = g_loginCmdText; + document.location.href = url; } }); }; From a85b498afd224fbc34e52b032ee4ba05f141f2a0 Mon Sep 17 00:00:00 2001 From: Mice Xia Date: Sun, 7 Apr 2013 17:41:26 +0800 Subject: [PATCH 008/607] 1) fix CLOUDSTACK-1946 2) remove redundant VMSnapshotVO.java --- .../src/com/cloud/vm/UserVmManagerImpl.java | 22 +- .../com/cloud/vm/snapshot/VMSnapshotVO.java | 224 ------------------ 2 files changed, 4 insertions(+), 242 deletions(-) delete mode 100644 server/src/com/cloud/vm/snapshot/VMSnapshotVO.java diff --git a/server/src/com/cloud/vm/UserVmManagerImpl.java b/server/src/com/cloud/vm/UserVmManagerImpl.java index 24bce8b1705..646cf9285e3 100755 --- a/server/src/com/cloud/vm/UserVmManagerImpl.java +++ b/server/src/com/cloud/vm/UserVmManagerImpl.java @@ -222,7 +222,9 @@ import com.cloud.vm.dao.UserVmCloneSettingDao; import com.cloud.vm.dao.UserVmDao; import com.cloud.vm.dao.UserVmDetailsDao; import com.cloud.vm.dao.VMInstanceDao; +import com.cloud.vm.snapshot.VMSnapshot; import com.cloud.vm.snapshot.VMSnapshotManager; +import com.cloud.vm.snapshot.VMSnapshotVO; import com.cloud.vm.snapshot.dao.VMSnapshotDao; @Local(value = { UserVmManager.class, UserVmService.class }) @@ -699,22 +701,6 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use } } - - - - private void checkVMSnapshots(UserVmVO vm, Long volumeId, boolean attach) { - // Check that if vm has any VM snapshot - /*Long vmId = vm.getId(); - List listSnapshot = _vmSnapshotDao.listByInstanceId(vmId, - VMSnapshot.State.Ready, VMSnapshot.State.Creating, VMSnapshot.State.Reverting, VMSnapshot.State.Expunging); - if (listSnapshot != null && listSnapshot.size() != 0) { - throw new InvalidParameterValueException( - "The VM has VM snapshots, do not allowed to attach volume. Please delete the VM snapshots first."); - }*/ - } - - - private UserVm rebootVirtualMachine(long userId, long vmId) throws InsufficientCapacityException, ResourceUnavailableException { UserVmVO vm = _vmDao.findById(vmId); @@ -777,7 +763,7 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use _itMgr.checkIfCanUpgrade(vmInstance, svcOffId); // remove diskAndMemory VM snapshots - /* List vmSnapshots = _vmSnapshotDao.findByVm(vmId); + List vmSnapshots = _vmSnapshotDao.findByVm(vmId); for (VMSnapshotVO vmSnapshotVO : vmSnapshots) { if(vmSnapshotVO.getType() == VMSnapshot.Type.DiskAndMemory){ if(!_vmSnapshotMgr.deleteAllVMSnapshots(vmId, VMSnapshot.Type.DiskAndMemory)){ @@ -787,7 +773,7 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use } } - }*/ + } _itMgr.upgradeVmDb(vmId, svcOffId); diff --git a/server/src/com/cloud/vm/snapshot/VMSnapshotVO.java b/server/src/com/cloud/vm/snapshot/VMSnapshotVO.java deleted file mode 100644 index 03d4945fda0..00000000000 --- a/server/src/com/cloud/vm/snapshot/VMSnapshotVO.java +++ /dev/null @@ -1,224 +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 com.cloud.vm.snapshot; - -import java.util.Date; -import java.util.UUID; - -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.EnumType; -import javax.persistence.Enumerated; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.Table; -import javax.persistence.TableGenerator; -import javax.persistence.Temporal; -import javax.persistence.TemporalType; - -import com.cloud.utils.db.GenericDao; - -@Entity -@Table(name = "vm_snapshots") -public class VMSnapshotVO implements VMSnapshot { - @Id - @TableGenerator(name = "vm_snapshots_sq", table = "sequence", pkColumnName = "name", valueColumnName = "value", pkColumnValue = "vm_snapshots_seq", allocationSize = 1) - @GeneratedValue(strategy = GenerationType.TABLE) - @Column(name = "id") - long id; - - @Column(name = "uuid") - String uuid = UUID.randomUUID().toString(); - - @Column(name = "name") - String name; - - @Column(name = "display_name") - String displayName; - - @Column(name = "description") - String description; - - @Column(name = "vm_id") - long vmId; - - @Column(name = "account_id") - long accountId; - - @Column(name = "domain_id") - long domainId; - - @Column(name = "vm_snapshot_type") - @Enumerated(EnumType.STRING) - VMSnapshot.Type type; - - @Column(name = "state", updatable = true, nullable = false) - @Enumerated(value = EnumType.STRING) - private State state; - - @Column(name = GenericDao.CREATED_COLUMN) - Date created; - - @Column(name = GenericDao.REMOVED_COLUMN) - Date removed; - - @Column(name = "current") - Boolean current; - - @Column(name = "parent") - Long parent; - - @Column(name = "updated") - @Temporal(value = TemporalType.TIMESTAMP) - Date updated; - - @Column(name="update_count", updatable = true, nullable=false) - protected long updatedCount; - - public Long getParent() { - return parent; - } - - public void setParent(Long parent) { - this.parent = parent; - } - - public VMSnapshotVO() { - - } - - public Date getRemoved() { - return removed; - } - - public VMSnapshotVO(Long accountId, Long domainId, Long vmId, - String description, String vmSnapshotName, String vsDisplayName, - Long serviceOfferingId, Type type, Boolean current) { - this.accountId = accountId; - this.domainId = domainId; - this.vmId = vmId; - this.state = State.Allocated; - this.description = description; - this.name = vmSnapshotName; - this.displayName = vsDisplayName; - this.type = type; - this.current = current; - } - - public String getDescription() { - return description; - } - - @Override - public Date getCreated() { - return created; - } - - public void setCreated(Date created) { - this.created = created; - } - - @Override - public long getId() { - return id; - } - - @Override - public Long getVmId() { - return vmId; - } - - public void setVmId(Long vmId) { - this.vmId = vmId; - } - - @Override - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - @Override - public State getState() { - return state; - } - - public void setState(State state) { - this.state = state; - } - - @Override - public String getUuid() { - return uuid; - } - - @Override - public long getAccountId() { - return accountId; - } - - @Override - public long getDomainId() { - return domainId; - } - - @Override - public String getDisplayName() { - return displayName; - } - - public void setDisplayName(String displayName) { - this.displayName = displayName; - } - - public Boolean getCurrent() { - return current; - } - - public void setCurrent(Boolean current) { - this.current = current; - } - - @Override - public long getUpdatedCount() { - return updatedCount; - } - - @Override - public void incrUpdatedCount() { - this.updatedCount++; - } - - @Override - public Date getUpdated() { - return updated; - } - - @Override - public Type getType() { - return type; - } - - public void setRemoved(Date removed) { - this.removed = removed; - } -} From d9f7bb2854c812516caca4985a846e30258a8f7b Mon Sep 17 00:00:00 2001 From: Hugo Trippaers Date: Sun, 7 Apr 2013 12:08:30 +0200 Subject: [PATCH 009/607] Changing the number of threads in the test from 1000 to 750. 1000 will more often than not result in build failures due to constraints on the build systems. Most recent centos based systems have process limit of 1024. Running this test will result in an OutOfMemory exception with description unable to create native thread. --- .../test/com/cloud/network/security/SecurityGroupQueueTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/test/com/cloud/network/security/SecurityGroupQueueTest.java b/server/test/com/cloud/network/security/SecurityGroupQueueTest.java index b9e417675e4..e6237850825 100644 --- a/server/test/com/cloud/network/security/SecurityGroupQueueTest.java +++ b/server/test/com/cloud/network/security/SecurityGroupQueueTest.java @@ -139,7 +139,7 @@ public class SecurityGroupQueueTest extends TestCase { testNumJobsEqToNumVms2(400,5000); testNumJobsEqToNumVms2(1,1); testNumJobsEqToNumVms2(1,1000000); - testNumJobsEqToNumVms2(1000,1); + testNumJobsEqToNumVms2(750,1); } From ebcdef55b0ea823ea5c9c97ad8713d702d6c168d Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Sun, 7 Apr 2013 08:59:08 -0700 Subject: [PATCH 010/607] CLOUDSTACK-1065: cloudstack UI - AWS Style Regions - shorten value of g_loginCmdText --- ui/scripts/cloud.core.callbacks.js | 4 ++-- ui/scripts/cloudStack.js | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ui/scripts/cloud.core.callbacks.js b/ui/scripts/cloud.core.callbacks.js index a081294293c..7fd1b4d1244 100644 --- a/ui/scripts/cloud.core.callbacks.js +++ b/ui/scripts/cloud.core.callbacks.js @@ -73,10 +73,10 @@ $(document).ready(function() { } }); } - else if(window.name != null && window.name.indexOf("command=login") != -1) { //from region switching + else if(window.name != null && window.name.indexOf("&domain=") != -1) { //from region switching g_loginCmdText = window.name; $.ajax({ - url: clientApiUrl + "?" + window.name, + url: clientApiUrl + "?command=login" + window.name + "&response=json", dataType: "json", async: false, success: function(json) { diff --git a/ui/scripts/cloudStack.js b/ui/scripts/cloudStack.js index 499cb833040..faa77899da1 100644 --- a/ui/scripts/cloudStack.js +++ b/ui/scripts/cloudStack.js @@ -250,12 +250,12 @@ else { array1.push("&domain=" + encodeURIComponent("/")); } - - g_loginCmdText = "command=login" + array1.join("") + "&response=json"; + + g_loginCmdText = array1.join(""); $.ajax({ type: "POST", - data: g_loginCmdText, + data: "command=login" + g_loginCmdText + "&response=json", dataType: "json", async: false, success: function(json) { @@ -466,7 +466,7 @@ document.title = 'CloudStack'; if ($.urlParam('loginUrl') != 0 - ||(window.name != null && window.name.indexOf("command=login") != -1)) { + ||(window.name != null && window.name.indexOf("&domain=") != -1)) { // SSO loginArgs.hideLoginScreen = true; } From 7de2b4b30adbf48922f849eb10fd5f49f6d19ad0 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Sun, 7 Apr 2013 11:40:46 -0700 Subject: [PATCH 011/607] CLOUDSTACK-1957: cloudstack UI - fix a JS error "'logout' is undefined" which sometimes shows on login screen. --- ui/scripts/cloudStack.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/ui/scripts/cloudStack.js b/ui/scripts/cloudStack.js index faa77899da1..0cf80b02066 100644 --- a/ui/scripts/cloudStack.js +++ b/ui/scripts/cloudStack.js @@ -115,6 +115,11 @@ // Use this for checking the session, to bypass login screen bypassLoginCheck: function(args) { //determine to show or bypass login screen if (g_loginResponse == null) { //show login screen + /* + but if this is a 2nd browser window (of the same domain), login screen still won't show because $.cookie('sessionKey') is valid for 2nd browser window (of the same domain) as well. + i.e. calling listCapabilities API with g_sessionKey from $.cookie('sessionKey') will succeed, + then userValid will be set to true, then an user object (instead of "false") will be returned, then login screen will be bypassed. + */ g_mySession = $.cookie('JSESSIONID'); g_sessionKey = $.cookie('sessionKey'); g_role = $.cookie('role'); @@ -176,8 +181,7 @@ userValid = true; }, - error: function(xmlHTTP) { - logout(false); + error: function(xmlHTTP) { //override default error handling, do nothing instead of showing error "unable to verify user credentials" on login screen }, beforeSend : function(XMLHttpResponse) { return true; From c9c68e19283535266e69a96c57e5bb453d4791d6 Mon Sep 17 00:00:00 2001 From: Hugo Trippaers Date: Sun, 7 Apr 2013 21:46:38 +0200 Subject: [PATCH 012/607] Replace restart with SIGHUP This signal will force the dnsmasq daemon to reload the configuration directly. This is much faster than restarting the daemon, which result in a much smaller window during which no dns server is available. Tested by using the replaced version of edithosts.sh on a running vrouter causing dns problems. --- patches/systemvm/debian/config/root/edithosts.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/patches/systemvm/debian/config/root/edithosts.sh b/patches/systemvm/debian/config/root/edithosts.sh index 9f21f206172..1f98fbf96ae 100755 --- a/patches/systemvm/debian/config/root/edithosts.sh +++ b/patches/systemvm/debian/config/root/edithosts.sh @@ -200,7 +200,8 @@ fi pid=$(pidof dnsmasq) if [ "$pid" != "" ] then - service dnsmasq restart + #service dnsmasq restart + kill -HUP $pid else if [ $no_redundant -eq 1 ] then From f09d981c3e55d3acf2506679f43300869e8d8f30 Mon Sep 17 00:00:00 2001 From: Hugo Trippaers Date: Mon, 8 Apr 2013 12:34:57 +0200 Subject: [PATCH 013/607] Switching netscaler to the maven location of the netscaler.nitro jar. If it's there we might as well use it. This fixes build problems for people with old netscaler jars as the version was not updated in the jar. --- plugins/network-elements/netscaler/pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/plugins/network-elements/netscaler/pom.xml b/plugins/network-elements/netscaler/pom.xml index 1eb73a236dc..d5c7cdc5bcc 100644 --- a/plugins/network-elements/netscaler/pom.xml +++ b/plugins/network-elements/netscaler/pom.xml @@ -28,9 +28,9 @@ - com.cloud.com.citrix - netscaler - 1.0 + com.citrix.netscaler.nitro + nitro + 10.0.e com.cloud.com.citrix From 04a7fed35f27c20bdd2b10ed30367d6cdb751779 Mon Sep 17 00:00:00 2001 From: Wido den Hollander Date: Mon, 8 Apr 2013 17:09:54 +0200 Subject: [PATCH 014/607] CLOUDSTACK-1935: Rename tools from cloud-* to cloudstack-* --- debian/cloudstack-agent.install | 6 +++--- debian/cloudstack-common.install | 8 ++++---- debian/cloudstack-management.install | 8 ++++---- debian/rules | 14 +++++++------- 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/debian/cloudstack-agent.install b/debian/cloudstack-agent.install index 02501855354..a3cc86964dd 100644 --- a/debian/cloudstack-agent.install +++ b/debian/cloudstack-agent.install @@ -5,9 +5,9 @@ # 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 @@ -20,7 +20,7 @@ /etc/cloudstack/agent/log4j-cloud.xml /etc/init.d/cloudstack-agent /usr/bin/cloudstack-setup-agent -/usr/bin/cloud-ssh +/usr/bin/cloudstack-ssh /var/log/cloudstack/agent /usr/share/cloudstack-agent/lib/* /usr/share/cloudstack-agent/plugins diff --git a/debian/cloudstack-common.install b/debian/cloudstack-common.install index 021474e1b65..7e01adadedf 100644 --- a/debian/cloudstack-common.install +++ b/debian/cloudstack-common.install @@ -5,9 +5,9 @@ # 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 @@ -27,6 +27,6 @@ /usr/share/cloudstack-common/scripts/vm/hypervisor/versions.sh /usr/share/cloudstack-common/scripts/vm/hypervisor/xenserver/* /usr/share/cloudstack-common/lib/* -/usr/bin/cloud-set-guest-password -/usr/bin/cloud-set-guest-sshkey +/usr/bin/cloudstack-set-guest-password +/usr/bin/cloudstack-set-guest-sshkey /usr/lib/python2.?/*-packages/* diff --git a/debian/cloudstack-management.install b/debian/cloudstack-management.install index 6d87748c757..ed7744b2afb 100644 --- a/debian/cloudstack-management.install +++ b/debian/cloudstack-management.install @@ -25,8 +25,8 @@ /var/log/cloudstack/management /var/lib/cloudstack/mnt /var/lib/cloudstack/management -/usr/bin/cloud-update-xenserver-licenses -/usr/bin/cloud-setup-management -/usr/bin/cloud-setup-databases -/usr/bin/cloud-migrate-databases +/usr/bin/cloudstack-update-xenserver-licenses +/usr/bin/cloudstack-setup-management +/usr/bin/cloudstack-setup-databases +/usr/bin/cloudstack-migrate-databases /usr/share/cloudstack-management/* diff --git a/debian/rules b/debian/rules index f05277ed5d1..c50214a30a4 100755 --- a/debian/rules +++ b/debian/rules @@ -69,7 +69,7 @@ install: install -D plugins/hypervisors/kvm/target/dependencies/* $(DESTDIR)/usr/share/$(PACKAGE)-agent/lib/ install -D packaging/debian/init/cloud-agent $(DESTDIR)/$(SYSCONFDIR)/init.d/$(PACKAGE)-agent install -D agent/bindir/cloud-setup-agent.in $(DESTDIR)/usr/bin/cloudstack-setup-agent - install -D agent/bindir/cloud-ssh.in $(DESTDIR)/usr/bin/cloud-ssh + install -D agent/bindir/cloud-ssh.in $(DESTDIR)/usr/bin/cloudstack-ssh install -D agent/target/transformed/* $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/agent # cloudstack-management @@ -100,7 +100,7 @@ install: ln -s tomcat6-nonssl.conf $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/management/tomcat6.conf ln -s server-nonssl.xml $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/management/server.xml install -D packaging/debian/init/cloud-management $(DESTDIR)/$(SYSCONFDIR)/init.d/$(PACKAGE)-management - install -D client/bindir/cloud-update-xenserver-licenses.in $(DESTDIR)/usr/bin/cloud-update-xenserver-licenses + install -D client/bindir/cloud-update-xenserver-licenses.in $(DESTDIR)/usr/bin/cloudstack-update-xenserver-licenses ln -s /usr/share/tomcat6/bin $(DESTDIR)/usr/share/$(PACKAGE)-management/bin # Remove configuration in /ur/share/cloudstack-management/webapps/client/WEB-INF # This should all be in /etc/cloudstack/management @@ -121,11 +121,11 @@ install: cp -r scripts/storage $(DESTDIR)/usr/share/$(PACKAGE)-common/scripts cp -r scripts/util $(DESTDIR)/usr/share/$(PACKAGE)-common/scripts cp -r scripts/vm $(DESTDIR)/usr/share/$(PACKAGE)-common/scripts - install -D client/target/utilities/bin/cloud-migrate-databases $(DESTDIR)/usr/bin - install -D client/target/utilities/bin/cloud-set-guest-password $(DESTDIR)/usr/bin - install -D client/target/utilities/bin/cloud-set-guest-sshkey $(DESTDIR)/usr/bin - install -D client/target/utilities/bin/cloud-setup-databases $(DESTDIR)/usr/bin - install -D client/target/utilities/bin/cloud-setup-management $(DESTDIR)/usr/bin + install -D client/target/utilities/bin/cloud-migrate-databases $(DESTDIR)/usr/bin/cloudstack-migrate-databases + install -D client/target/utilities/bin/cloud-set-guest-password $(DESTDIR)/usr/bin/cloudstack-set-guest-password + install -D client/target/utilities/bin/cloud-set-guest-sshkey $(DESTDIR)/usr/bin/cloudstack-set-guest-sshkey + install -D client/target/utilities/bin/cloud-setup-databases $(DESTDIR)/usr/bin/cloudstack-setup-databases + install -D client/target/utilities/bin/cloud-setup-management $(DESTDIR)/usr/bin/cloudstack-setup-management install -D services/console-proxy/server/dist/systemvm.iso $(DESTDIR)/usr/share/$(PACKAGE)-common/vms/systemvm.iso # We need jasypt for cloud-install-sys-tmplt, so this is a nasty hack to get it into the right place install -D agent/target/dependencies/jasypt-1.9.0.jar $(DESTDIR)/usr/share/$(PACKAGE)-common/lib From 7214375c72dce863a92386310a7a31e53a277343 Mon Sep 17 00:00:00 2001 From: Joe Brockmeier Date: Mon, 8 Apr 2013 11:27:25 -0500 Subject: [PATCH 015/607] Continuing work on release notes. --- docs/en-US/Release_Notes.xml | 52 +++++++++++++++++++++++++++++++----- 1 file changed, 46 insertions(+), 6 deletions(-) diff --git a/docs/en-US/Release_Notes.xml b/docs/en-US/Release_Notes.xml index be0267dd4b3..dd93aa46a9c 100644 --- a/docs/en-US/Release_Notes.xml +++ b/docs/en-US/Release_Notes.xml @@ -35,9 +35,16 @@ Upgrade from 4.0.x to 4.1.0 This section will guide you from Apache CloudStack 4.0.x versions (4.0.0-incubating, 4.0.1-incubating, and 4.0.2) to &PRODUCT; 4.1.0. Any steps that are hypervisor-specific will be called out with a note. + Package Structure Changes + The package structure for &PRODUCT; has changed significantly since the 4.0.x releases. If you've compiled your own packages, you'll notice that the package names and the number of packages has changed. This is not a bug. + However, this does mean that the procedure is not as simple as an apt-get upgrade or yum update, so please follow this section carefully. + + We recommend reading through this section once or twice before beginning your upgrade procedure, and working through it on a test system before working on a production system. - Create RPM or Debian packages (as appropriate) and a repository from the 4.1.0 source, or check the Apache CloudStack downloads page at http://cloudstack.apache.org/downloads.html for package repositories supplied by community members. Instructions for creating packages from the &PRODUCT; source are in the Installation Guide. + Most users of &PRODUCT; manage the installation and upgrades of &PRODUCT; with one of Linux's predominant package systems, RPM or APT. This guide assumes you'll be using RPM and Yum (for Red Hat Enterprise Linux or CentOS), or APT and Debian packages (for Ubuntu). + Create RPM or Debian packages (as appropriate) and a repository from the 4.1.0 source, or check the Apache CloudStack downloads page at http://cloudstack.apache.org/downloads.html for package repositories supplied by community members. You will need them for step or step . + Instructions for creating packages from the &PRODUCT; source are in the Installation Guide. Stop your management server or servers. Run this on all management server hosts: @@ -47,6 +54,41 @@ Make a backup of your MySQL database. If you run into any issues or need to roll back the upgrade, this will assist in debugging or restoring your existing environment. You'll be prompted for your password. # mysqldump -u root -p cloud > cloudstack-backup.sql + + If you are using Ubuntu, follow this procedure to upgrade your packages. If not, skip to step . + Community Packages + This section assumes you're using the community supplied packages for &PRODUCT;. If you've created your own packages and APT repository, substitute your own URL for the ones used in these examples. + + + Start by opening /etc/apt/sources.list.d/cloudstack.list. + This file should have one line, which contains: + deb http://cloudstack.apt-get.eu/ubuntu precise 4.0 + We'll change it to point to the new package repository: + deb http://cloudstack.apt-get.eu/ubuntu precise 4.1 + + + Now update your apt package list: + $ sudo apt-get update + + + You will need to manually install the cloudstack-agent package: ### + $ sudo apt-get install cloudstack-agent + During the installation of cloudstack-agent, APT will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent. + When prompted whether you wish to keep your configuration, say Yes. + + + Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads: + paths.script=/usr/share/cloudstack-common + If not, add the line. + + + Restart the agent: + + + + + ### +
@@ -1049,11 +1091,9 @@ Done restarting router(s). - CLOUDSTACK-301 - Nexus 1000v DVS integration is not functional - This source code release includes some partial functionality to support the - Cisco Nexus 1000v Distributed Virtual Switch within a VMware hypervisor - environment. The functionality is not complete at this time. + CLOUDSTACK-1824 + Service CloudStack-Management is being displayed as cloud-management service + Many scripts and text entries have references to cloud-management rather than cloudstack-management due to the changeover between 4.0 and 4.1 to rename services. This is a minor issue and should be corrected by 4.2. From 4c6697fd236583c100e57c41121f23469636bd23 Mon Sep 17 00:00:00 2001 From: Joe Brockmeier Date: Mon, 8 Apr 2013 11:31:13 -0500 Subject: [PATCH 016/607] Removing a few stray characters. --- docs/en-US/Release_Notes.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en-US/Release_Notes.xml b/docs/en-US/Release_Notes.xml index dd93aa46a9c..9edc1920c46 100644 --- a/docs/en-US/Release_Notes.xml +++ b/docs/en-US/Release_Notes.xml @@ -71,7 +71,7 @@ $ sudo apt-get update - You will need to manually install the cloudstack-agent package: ### + You will need to manually install the cloudstack-agent package: $ sudo apt-get install cloudstack-agent During the installation of cloudstack-agent, APT will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent. When prompted whether you wish to keep your configuration, say Yes. From 68a30d41dbd2c1f71cb1a9d3ed4d4d2f949aca05 Mon Sep 17 00:00:00 2001 From: Joe Brockmeier Date: Mon, 8 Apr 2013 16:19:01 -0500 Subject: [PATCH 017/607] added minor issues to known issues. --- docs/en-US/Release_Notes.xml | 2319 ++++++++++++++++++---------------- 1 file changed, 1227 insertions(+), 1092 deletions(-) diff --git a/docs/en-US/Release_Notes.xml b/docs/en-US/Release_Notes.xml index 9edc1920c46..b8465ed2e82 100644 --- a/docs/en-US/Release_Notes.xml +++ b/docs/en-US/Release_Notes.xml @@ -4,1104 +4,1239 @@ %BOOK_ENTITIES; ]> - - Welcome to &PRODUCT; 4.1 - Welcome to the 4.1.0 release of &PRODUCT;, the first major release from the Apache CloudStack project since its graduation from the Apache Incubator. - This document contains information specific to this release of &PRODUCT;, including upgrade instructions from prior releases, new features added to &PRODUCT;, API changes, and issues fixed in the release. For installation instructions, please see the Installation Guide. For usage and administration instructions, please see the &PRODUCT; Administrator's Guide. Developers and users who wish to work with the API will find instruction in the &PRODUCT; API Developer's Guide - If you find any errors or problems in this guide, please see . We hope you enjoy working with &PRODUCT;! - - - Upgrade Instructions - This section contains upgrade instructions from prior versions of CloudStack to Apache CloudStack 4.1.0. We include instructions on upgrading to Apache CloudStack from pre-Apache versions of Citrix CloudStack (last version prior to Apache is 3.0.2) and from the releases made while CloudStack was in the Apache Incubator. - If you run into any issues during upgrades, please feel free to ask questions on users@apache.cloudstack.org or dev@apache.cloudstack.org. -
- Upgrade from 4.0.x to 4.1.0 - This section will guide you from Apache CloudStack 4.0.x versions (4.0.0-incubating, 4.0.1-incubating, and 4.0.2) to &PRODUCT; 4.1.0. - Any steps that are hypervisor-specific will be called out with a note. - Package Structure Changes - The package structure for &PRODUCT; has changed significantly since the 4.0.x releases. If you've compiled your own packages, you'll notice that the package names and the number of packages has changed. This is not a bug. - However, this does mean that the procedure is not as simple as an apt-get upgrade or yum update, so please follow this section carefully. - - We recommend reading through this section once or twice before beginning your upgrade procedure, and working through it on a test system before working on a production system. - - - Most users of &PRODUCT; manage the installation and upgrades of &PRODUCT; with one of Linux's predominant package systems, RPM or APT. This guide assumes you'll be using RPM and Yum (for Red Hat Enterprise Linux or CentOS), or APT and Debian packages (for Ubuntu). - Create RPM or Debian packages (as appropriate) and a repository from the 4.1.0 source, or check the Apache CloudStack downloads page at http://cloudstack.apache.org/downloads.html for package repositories supplied by community members. You will need them for step or step . - Instructions for creating packages from the &PRODUCT; source are in the Installation Guide. - - - Stop your management server or servers. Run this on all management server hosts: - # service cloud-management stop - - - Make a backup of your MySQL database. If you run into any issues or need to roll back the upgrade, this will assist in debugging or restoring your existing environment. You'll be prompted for your password. - # mysqldump -u root -p cloud > cloudstack-backup.sql - - - If you are using Ubuntu, follow this procedure to upgrade your packages. If not, skip to step . - Community Packages - This section assumes you're using the community supplied packages for &PRODUCT;. If you've created your own packages and APT repository, substitute your own URL for the ones used in these examples. - - - Start by opening /etc/apt/sources.list.d/cloudstack.list. - This file should have one line, which contains: - deb http://cloudstack.apt-get.eu/ubuntu precise 4.0 - We'll change it to point to the new package repository: - deb http://cloudstack.apt-get.eu/ubuntu precise 4.1 - - - Now update your apt package list: - $ sudo apt-get update - - - You will need to manually install the cloudstack-agent package: - $ sudo apt-get install cloudstack-agent - During the installation of cloudstack-agent, APT will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent. - When prompted whether you wish to keep your configuration, say Yes. - - - Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads: - paths.script=/usr/share/cloudstack-common - If not, add the line. - - - Restart the agent: - - - - - ### - - -
-
- Upgrade from 3.0.2 to 4.0.0-incubating - Perform the following to upgrade from version 3.0.2 to version 4.0.0-incubating. Note - that some of the steps here are only required if you're using a specific hypervisor. The - steps that are hypervisor-specific are called out with a note. - - - Ensure that you query your IP address usage records and process them or make a - backup. During the upgrade you will lose the old IP address usage records. - Starting in 3.0.2, the usage record format for IP addresses is the same as the rest - of the usage types. Instead of a single record with the assignment and release dates, - separate records are generated per aggregation period with start and end dates. After - upgrading, any existing IP address usage records in the old format will no longer be - available. - - - - The following upgrade instructions apply only if you're using VMware hosts. If - you're not using VMware hosts, skip this step and move on to step 3: stopping all - usage servers. - - In each zone that includes VMware hosts, you need to add a new system VM template. - - - While running the existing 3.0.2 system, log in to the UI as root - administrator. - - - In the left navigation bar, click Templates. - - - In Select view, click Templates. - - - Click Register template. - The Register template dialog box is displayed. - - - In the Register template dialog box, specify the following values (do not change - these): - + + Welcome to &PRODUCT; 4.1 + Welcome to the 4.1.0 release of &PRODUCT;, the first major release from the Apache CloudStack project since its graduation from the Apache Incubator. + This document contains information specific to this release of &PRODUCT;, including upgrade instructions from prior releases, new features added to &PRODUCT;, API changes, and issues fixed in the release. For installation instructions, please see the Installation Guide. For usage and administration instructions, please see the &PRODUCT; Administrator's Guide. Developers and users who wish to work with the API will find instruction in the &PRODUCT; API Developer's Guide + If you find any errors or problems in this guide, please see . We hope you enjoy working with &PRODUCT;! + + + Upgrade Instructions + This section contains upgrade instructions from prior versions of CloudStack to Apache CloudStack 4.1.0. We include instructions on upgrading to Apache CloudStack from pre-Apache versions of Citrix CloudStack (last version prior to Apache is 3.0.2) and from the releases made while CloudStack was in the Apache Incubator. + If you run into any issues during upgrades, please feel free to ask questions on users@apache.cloudstack.org or dev@apache.cloudstack.org. +
+ Upgrade from 4.0.x to 4.1.0 + This section will guide you from Apache CloudStack 4.0.x versions (4.0.0-incubating, 4.0.1-incubating, and 4.0.2) to &PRODUCT; 4.1.0. + Any steps that are hypervisor-specific will be called out with a note. + Package Structure Changes + The package structure for &PRODUCT; has changed significantly since the 4.0.x releases. If you've compiled your own packages, you'll notice that the package names and the number of packages has changed. This is not a bug. + However, this does mean that the procedure is not as simple as an apt-get upgrade or yum update, so please follow this section carefully. + + We recommend reading through this section once or twice before beginning your upgrade procedure, and working through it on a test system before working on a production system. + + + Most users of &PRODUCT; manage the installation and upgrades of &PRODUCT; with one of Linux's predominant package systems, RPM or APT. This guide assumes you'll be using RPM and Yum (for Red Hat Enterprise Linux or CentOS), or APT and Debian packages (for Ubuntu). + Create RPM or Debian packages (as appropriate) and a repository from the 4.1.0 source, or check the Apache CloudStack downloads page at http://cloudstack.apache.org/downloads.html for package repositories supplied by community members. You will need them for step or step . + Instructions for creating packages from the &PRODUCT; source are in the Installation Guide. + + + Stop your management server or servers. Run this on all management server hosts: + # service cloud-management stop + + + Make a backup of your MySQL database. If you run into any issues or need to roll back the upgrade, this will assist in debugging or restoring your existing environment. You'll be prompted for your password. + # mysqldump -u root -p cloud > cloudstack-backup.sql + + + If you are using Ubuntu, follow this procedure to upgrade your packages. If not, skip to step . + Community Packages + This section assumes you're using the community supplied packages for &PRODUCT;. If you've created your own packages and APT repository, substitute your own URL for the ones used in these examples. + + + + The first order of business will be to change the sources list for each system with &PRODUCT; packages. This means all management servers, and any hosts that have the KVM agent. (No changes should be necessary for hosts that are running VMware or Xen.) + Start by opening /etc/apt/sources.list.d/cloudstack.list on any systems that have &PRODUCT; packages installed. + This file should have one line, which contains: + deb http://cloudstack.apt-get.eu/ubuntu precise 4.0 + We'll change it to point to the new package repository: + deb http://cloudstack.apt-get.eu/ubuntu precise 4.1 + If you're using your own package repository, change this line to read as appropriate for your 4.1.0 repository. + + + Now update your apt package list: + $ sudo apt-get update + + + ### upgrade steps for Debian on master servers goes here. + + + You will need to manually install the cloudstack-agent package: + $ sudo apt-get install cloudstack-agent + During the installation of cloudstack-agent, APT will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent. + When prompted whether you wish to keep your configuration, say Yes. + + + Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads: + paths.script=/usr/share/cloudstack-common + If not, add the line. + + + Restart the agent: + + + + + ### + + +
+
+ Upgrade from 3.0.2 to 4.1.0 + This section will guide you from Citrix CloudStack 3.0.2 to Apache CloudStack 4.1.0. Sections that are hypervisor-specific will be called out with a note. + + + Ensure that you query your IP address usage records and process them or make a + backup. During the upgrade you will lose the old IP address usage records. + Starting in 3.0.2, the usage record format for IP addresses is the same as the rest + of the usage types. Instead of a single record with the assignment and release dates, + separate records are generated per aggregation period with start and end dates. After + upgrading, any existing IP address usage records in the old format will no longer be + available. + + + + The following upgrade instructions apply only if you're using VMware hosts. If + you're not using VMware hosts, skip this step and move on to . + + In each zone that includes VMware hosts, you need to add a new system VM template. + + + While running the existing 3.0.2 system, log in to the UI as root administrator. + + + In the left navigation bar, click Templates. + + + In Select view, click Templates. + + + Click Register template. + The Register template dialog box is displayed. + + + In the Register template dialog box, specify the following values (do not change these): + + + + + + + Field + Value + + + + + Name + systemvm-vmware-4.0 + + + Description + systemvm-vmware-4.0 + + + URL + http://download.cloud.com/templates/burbank/burbank-systemvm-08012012.ova + + + Zone + Choose the zone where this hypervisor is used + + + Hypervisor + VMware + + + Format + OVA + + + OS Type + Debian GNU/Linux 5.0 (32-bit) + + + Extractable + no + + + Password Enabled + no + + + Public + no + + + Featured + no + + + + + + + Watch the screen to be sure that the template downloads successfully and enters + the READY state. Do not proceed until this is successful. + + + + + Stop all Usage Servers if running. Run this on all Usage Server hosts. + # service cloud-usage stop + + + Stop the Management Servers. Run this on all Management Server hosts. + # service cloud-management stop + + + On the MySQL master, take a backup of the MySQL databases. We recommend performing + this step even in test upgrades. If there is an issue, this will assist with + debugging. + In the following commands, it is assumed that you have set the root password on the + database, which is a CloudStack recommended best practice. Substitute your own MySQL + root password. + # mysqldump -u root -pmysql_password cloud > cloud-backup.dmp + # mysqldump -u root -pmysql_password cloud_usage > cloud-usage-backup.dmp + + + Either build RPM/DEB packages as detailed in the Installation Guide, or use one of + the community provided yum/apt repositories to gain access to the &PRODUCT; + binaries. + + + After you have configured an appropriate yum or apt repository, you may execute the + one of the following commands as appropriate for your environment in order to upgrade + &PRODUCT;: # yum update cloud-* + # apt-get update + # apt-get upgrade cloud-* + + You will, of course, have to agree to the changes suggested by Yum or APT. + + If the upgrade output includes a message similar to the following, then some + custom content was found in your old components.xml, and you need to merge the two + files: + warning: /etc/cloud/management/components.xml created as /etc/cloud/management/components.xml.rpmnew + Instructions follow in the next step. + + + + If you have made changes to your copy of + /etc/cloud/management/components.xml the changes will be + preserved in the upgrade. However, you need to do the following steps to place these + changes in a new version of the file which is compatible with version + 4.1.0. + + + Make a backup copy of /etc/cloud/management/components.xml. + For example: + # mv /etc/cloud/management/components.xml /etc/cloud/management/components.xml-backup + + + Copy /etc/cloud/management/components.xml.rpmnew to create + a new /etc/cloud/management/components.xml: + # cp -ap /etc/cloud/management/components.xml.rpmnew /etc/cloud/management/components.xml + + + Merge your changes from the backup file into the new + components.xml. + # vi /etc/cloud/management/components.xml + + + + If you have more than one management server node, repeat the upgrade steps on each + node. + + + + Start the first Management Server. Do not start any other Management Server nodes + yet. + # service cloud-management start + Wait until the databases are upgraded. Ensure that the database upgrade is complete. + After confirmation, start the other Management Servers one at a time by running the same + command on each node. + + Failing to restart the Management Server indicates a problem in the upgrade. + Having the Management Server restarted without any issues indicates that the upgrade + is successfully completed. + + + + Start all Usage Servers (if they were running on your previous version). Perform + this on each Usage Server host. + # service cloud-usage start + + + + Additional steps are required for each KVM host. These steps will not affect + running guests in the cloud. These steps are required only for clouds using KVM as + hosts and only on the KVM hosts. + + + + Configure a yum or apt respository containing the &PRODUCT; packages as outlined + in the Installation Guide. + + + Stop the running agent. + # service cloud-agent stop + + + Update the agent software with one of the following command sets as appropriate + for your environment. + # yum update cloud-* + # apt-get update + # apt-get upgrade cloud-* + + + Start the agent. + # service cloud-agent start + + + Edit /etc/cloud/agent/agent.properties to change the + resource parameter from + "com.cloud.agent.resource.computing.LibvirtComputingResource" to + "com.cloud.hypervisor.kvm.resource.LibvirtComputingResource". + + + Start the cloud agent and cloud management services. + + + When the Management Server is up and running, log in to the CloudStack UI and + restart the virtual router for proper functioning of all the features. + + + + + Log in to the CloudStack UI as administrator, and check the status of the hosts. All + hosts should come to Up state (except those that you know to be offline). You may need + to wait 20 or 30 minutes, depending on the number of hosts. + + Troubleshooting: If login fails, clear your browser cache and reload the + page. + + + Do not proceed to the next step until the hosts show in Up state. + + + If you are upgrading from 3.0.2, perform the following: + + + Ensure that the admin port is set to 8096 by using the "integration.api.port" + global parameter. + This port is used by the cloud-sysvmadm script at the end of the upgrade + procedure. For information about how to set this parameter, see "Setting Global + Configuration Parameters" in the Installation Guide. + + + Restart the Management Server. + + If you don't want the admin port to remain open, you can set it to null after + the upgrade is done and restart the management server. + + + + + + Run the cloud-sysvmadm script to stop, then start, all Secondary + Storage VMs, Console Proxy VMs, and virtual routers. Run the script once on each + management server. Substitute your own IP address of the MySQL instance, the MySQL user + to connect as, and the password to use for that user. In addition to those parameters, + provide the -c and -r arguments. For + example: + # nohup cloud-sysvmadm -d 192.168.1.5 -u cloud -p password -c -r > + sysvm.log 2>&1 & + # tail -f sysvm.log + This might take up to an hour or more to run, depending on the number of accounts in + the system. + + + If needed, upgrade all Citrix XenServer hypervisor hosts in your cloud to a version + supported by CloudStack 4.1.0. The supported versions are XenServer 5.6 SP2 + and 6.0.2. Instructions for upgrade can be found in the CloudStack 4.1.0 + Installation Guide under "Upgrading XenServer Versions." + + + Now apply the XenServer hotfix XS602E003 (and any other needed hotfixes) to + XenServer v6.0.2 hypervisor hosts. + + + Disconnect the XenServer cluster from CloudStack. + In the left navigation bar of the CloudStack UI, select Infrastructure. Under + Clusters, click View All. Select the XenServer cluster and click Actions - + Unmanage. + This may fail if there are hosts not in one of the states Up, Down, + Disconnected, or Alert. You may need to fix that before unmanaging this + cluster. + Wait until the status of the cluster has reached Unmanaged. Use the CloudStack + UI to check on the status. When the cluster is in the unmanaged state, there is no + connection to the hosts in the cluster. + + + To clean up the VLAN, log in to one XenServer host and run: + /opt/xensource/bin/cloud-clean-vlan.sh + + + Now prepare the upgrade by running the following on one XenServer host: + /opt/xensource/bin/cloud-prepare-upgrade.sh + If you see a message like "can't eject CD", log in to the VM and unmount the CD, + then run this script again. + + + Upload the hotfix to the XenServer hosts. Always start with the Xen pool master, + then the slaves. Using your favorite file copy utility (e.g. WinSCP), copy the + hotfixes to the host. Place them in a temporary folder such as /tmp. + On the Xen pool master, upload the hotfix with this command: + xe patch-upload file-name=XS602E003.xsupdate + Make a note of the output from this command, which is a UUID for the hotfix + file. You'll need it in another step later. + + (Optional) If you are applying other hotfixes as well, you can repeat the + commands in this section with the appropriate hotfix number. For example, + XS602E004.xsupdate. + + + + Manually live migrate all VMs on this host to another host. First, get a list of + the VMs on this host: + # xe vm-list + Then use this command to migrate each VM. Replace the example host name and VM + name with your own: + # xe vm-migrate live=true host=host-name + vm=VM-name + + Troubleshooting + If you see a message like "You attempted an operation on a VM which requires + PV drivers to be installed but the drivers were not detected," run: + /opt/xensource/bin/make_migratable.sh + b6cf79c8-02ee-050b-922f-49583d9f1a14. + + + + Apply the hotfix. First, get the UUID of this host: + # xe host-list + Then use the following command to apply the hotfix. Replace the example host + UUID with the current host ID, and replace the hotfix UUID with the output from the + patch-upload command you ran on this machine earlier. You can also get the hotfix + UUID by running xe patch-list. + xe patch-apply host-uuid=host-uuid uuid=hotfix-uuid + + + Copy the following files from the CloudStack Management Server to the + host. + + + + + + + Copy from here... + ...to here + + + + + /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/xenserver60/NFSSR.py + /opt/xensource/sm/NFSSR.py + + + /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/setupxenserver.sh + /opt/xensource/bin/setupxenserver.sh + + + /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/make_migratable.sh + /opt/xensource/bin/make_migratable.sh + + + + + + + (Only for hotfixes XS602E005 and XS602E007) You need to apply a new Cloud + Support Pack. + + + Download the CSP software onto the XenServer host from one of the following + links: + For hotfix XS602E005: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E005/56710/xe-phase-2/xenserver-cloud-supp.tgz + For hotfix XS602E007: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E007/57824/xe-phase-2/xenserver-cloud-supp.tgz + + + Extract the file: + # tar xf xenserver-cloud-supp.tgz + + + Run the following script: + # xe-install-supplemental-pack xenserver-cloud-supp.iso + + + If the XenServer host is part of a zone that uses basic networking, disable + Open vSwitch (OVS): + # xe-switch-network-backend bridge + + + + + Reboot this XenServer host. + + + Run the following: + /opt/xensource/bin/setupxenserver.sh + + If the message "mv: cannot stat `/etc/cron.daily/logrotate': No such file or + directory" appears, you can safely ignore it. + + + + Run the following: + for pbd in `xe pbd-list currently-attached=false| grep ^uuid | awk '{print $NF}'`; do xe pbd-plug uuid=$pbd ; + + + On each slave host in the Xen pool, repeat these steps, starting from "manually + live migrate VMs." + + + + + + Troubleshooting Tip + If passwords which you know to be valid appear not to work after upgrade, or other UI + issues are seen, try clearing your browser cache and reloading the UI page. + +
+
+ Upgrade from 2.2.14 to 4.1.0 + + + Ensure that you query your IPaddress usage records and process them; for example, + issue invoices for any usage that you have not yet billed users for. + Starting in 3.0.2, the usage record format for IP addresses is the same as the rest + of the usage types. Instead of a single record with the assignment and release dates, + separate records are generated per aggregation period with start and end dates. After + upgrading to 4.1.0, any existing IP address usage records in the old format + will no longer be available. + + + If you are using version 2.2.0 - 2.2.13, first upgrade to 2.2.14 by using the + instructions in the 2.2.14 Release Notes. + + KVM Hosts + If KVM hypervisor is used in your cloud, be sure you completed the step to insert + a valid username and password into the host_details table on each KVM node as + described in the 2.2.14 Release Notes. This step is critical, as the database will be + encrypted after the upgrade to 4.1.0. + + + + While running the 2.2.14 system, log in to the UI as root administrator. + + + Using the UI, add a new System VM template for each hypervisor type that is used in + your cloud. In each zone, add a system VM template for each hypervisor used in that + zone + + + In the left navigation bar, click Templates. + + + In Select view, click Templates. + + + Click Register template. + The Register template dialog box is displayed. + + + In the Register template dialog box, specify the following values depending on + the hypervisor type (do not change these): + + + + + + + Hypervisor + Description + + + + + XenServer + Name: systemvm-xenserver-4.1.0 + Description: systemvm-xenserver-4.1.0 + URL: + http://download.cloud.com/templates/acton/acton-systemvm-02062012.vhd.bz2 + Zone: Choose the zone where this hypervisor is used + Hypervisor: XenServer + Format: VHD + OS Type: Debian GNU/Linux 5.0 (32-bit) + Extractable: no + Password Enabled: no + Public: no + Featured: no + + + + KVM + Name: systemvm-kvm-4.1.0 + Description: systemvm-kvm-4.1.0 + URL: + http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2 + Zone: Choose the zone where this hypervisor is used + Hypervisor: KVM + Format: QCOW2 + OS Type: Debian GNU/Linux 5.0 (32-bit) + Extractable: no + Password Enabled: no + Public: no + Featured: no + + + + VMware + Name: systemvm-vmware-4.1.0 + Description: systemvm-vmware-4.1.0 + URL: + http://download.cloud.com/templates/burbank/burbank-systemvm-08012012.ova + Zone: Choose the zone where this hypervisor is used + Hypervisor: VMware + Format: OVA + OS Type: Debian GNU/Linux 5.0 (32-bit) + Extractable: no + Password Enabled: no + Public: no + Featured: no + + + + + + + + + + Watch the screen to be sure that the template downloads successfully and enters the + READY state. Do not proceed until this is successful + + + WARNING: If you use more than one type of + hypervisor in your cloud, be sure you have repeated these steps to download the system + VM template for each hypervisor type. Otherwise, the upgrade will fail. + + + Stop all Usage Servers if running. Run this on all Usage Server hosts. + # service cloud-usage stop + + + Stop the Management Servers. Run this on all Management Server hosts. + # service cloud-management stop + + + On the MySQL master, take a backup of the MySQL databases. We recommend performing + this step even in test upgrades. If there is an issue, this will assist with + debugging. + In the following commands, it is assumed that you have set the root password on the + database, which is a CloudStack recommended best practice. Substitute your own MySQL + root password. + # mysqldump -u root -pmysql_password cloud > cloud-backup.dmp + # mysqldump -u root -pmysql_password cloud_usage > cloud-usage-backup.dmp + + + + Either build RPM/DEB packages as detailed in the Installation Guide, or use one of + the community provided yum/apt repositories to gain access to the &PRODUCT; binaries. + + + + After you have configured an appropriate yum or apt repository, you may execute the + one of the following commands as appropriate for your environment in order to upgrade + &PRODUCT;: # yum update cloud-* + # apt-get update + # apt-get upgrade cloud-* + + You will, of course, have to agree to the changes suggested by Yum or APT. + + + If you have made changes to your existing copy of the file components.xml in your + previous-version CloudStack installation, the changes will be preserved in the upgrade. + However, you need to do the following steps to place these changes in a new version of + the file which is compatible with version 4.0.0-incubating. + + How will you know whether you need to do this? If the upgrade output in the + previous step included a message like the following, then some custom content was + found in your old components.xml, and you need to merge the two files: + + warning: /etc/cloud/management/components.xml created as /etc/cloud/management/components.xml.rpmnew + + + Make a backup copy of your + /etc/cloud/management/components.xml file. For + example: + # mv /etc/cloud/management/components.xml /etc/cloud/management/components.xml-backup + + + Copy /etc/cloud/management/components.xml.rpmnew to create + a new /etc/cloud/management/components.xml: + # cp -ap /etc/cloud/management/components.xml.rpmnew /etc/cloud/management/components.xml + + + Merge your changes from the backup file into the new components.xml file. + # vi /etc/cloud/management/components.xml + + + + + + If you have made changes to your existing copy of the + /etc/cloud/management/db.properties file in your previous-version + CloudStack installation, the changes will be preserved in the upgrade. However, you need + to do the following steps to place these changes in a new version of the file which is + compatible with version 4.0.0-incubating. + + + Make a backup copy of your file + /etc/cloud/management/db.properties. For example: + # mv /etc/cloud/management/db.properties /etc/cloud/management/db.properties-backup + + + Copy /etc/cloud/management/db.properties.rpmnew to create a + new /etc/cloud/management/db.properties: + # cp -ap /etc/cloud/management/db.properties.rpmnew etc/cloud/management/db.properties + + + Merge your changes from the backup file into the new db.properties file. + # vi /etc/cloud/management/db.properties + + + + + On the management server node, run the following command. It is recommended that you + use the command-line flags to provide your own encryption keys. See Password and Key + Encryption in the Installation Guide. + # cloud-setup-encryption -e encryption_type -m management_server_key -k database_key + When used without arguments, as in the following example, the default encryption + type and keys will be used: + + + (Optional) For encryption_type, use file or web to indicate the technique used + to pass in the database encryption password. Default: file. + + + (Optional) For management_server_key, substitute the default key that is used to + encrypt confidential parameters in the properties file. Default: password. It is + highly recommended that you replace this with a more secure value + + + (Optional) For database_key, substitute the default key that is used to encrypt + confidential parameters in the CloudStack database. Default: password. It is highly + recommended that you replace this with a more secure value. + + + + + Repeat steps 10 - 14 on every management server node. If you provided your own + encryption key in step 14, use the same key on all other management servers. + + + Start the first Management Server. Do not start any other Management Server nodes + yet. + # service cloud-management start + Wait until the databases are upgraded. Ensure that the database upgrade is complete. + You should see a message like "Complete! Done." After confirmation, start the other + Management Servers one at a time by running the same command on each node. + + + Start all Usage Servers (if they were running on your previous version). Perform + this on each Usage Server host. + # service cloud-usage start + + + (KVM only) Additional steps are required for each KVM host. These steps will not + affect running guests in the cloud. These steps are required only for clouds using KVM + as hosts and only on the KVM hosts. + + + Configure your CloudStack package repositories as outlined in the Installation + Guide + + + Stop the running agent. + # service cloud-agent stop + + + Update the agent software with one of the following command sets as + appropriate. + # yum update cloud-* + + # apt-get update + # apt-get upgrade cloud-* + + + + Start the agent. + # service cloud-agent start + + + Copy the contents of the agent.properties file to the new + agent.properties file by using the following command + sed -i 's/com.cloud.agent.resource.computing.LibvirtComputingResource/com.cloud.hypervisor.kvm.resource.LibvirtComputingResource/g' /etc/cloud/agent/agent.properties + + + Start the cloud agent and cloud management services. + + + When the Management Server is up and running, log in to the CloudStack UI and + restart the virtual router for proper functioning of all the features. + + + + + Log in to the CloudStack UI as admin, and check the status of the hosts. All hosts + should come to Up state (except those that you know to be offline). You may need to wait + 20 or 30 minutes, depending on the number of hosts. + Do not proceed to the next step until the hosts show in the Up state. If the hosts + do not come to the Up state, contact support. + + + Run the following script to stop, then start, all Secondary Storage VMs, Console + Proxy VMs, and virtual routers. + + + Run the command once on one management server. Substitute your own IP address of + the MySQL instance, the MySQL user to connect as, and the password to use for that + user. In addition to those parameters, provide the "-c" and "-r" arguments. For + example: + # nohup cloud-sysvmadm -d 192.168.1.5 -u cloud -p password -c -r > sysvm.log 2>&1 & + # tail -f sysvm.log + This might take up to an hour or more to run, depending on the number of + accounts in the system. + + + After the script terminates, check the log to verify correct execution: + # tail -f sysvm.log + The content should be like the following: + + Stopping and starting 1 secondary storage vm(s)... + Done stopping and starting secondary storage vm(s) + Stopping and starting 1 console proxy vm(s)... + Done stopping and starting console proxy vm(s). + Stopping and starting 4 running routing vm(s)... + Done restarting router(s). + + + + + + If you would like additional confirmation that the new system VM templates were + correctly applied when these system VMs were rebooted, SSH into the System VM and check + the version. + Use one of the following techniques, depending on the hypervisor. + + XenServer or KVM: + SSH in by using the link local IP address of the system VM. For example, in the + command below, substitute your own path to the private key used to log in to the + system VM and your own link local IP. + + Run the following commands on the XenServer or KVM host on which the system VM is + present: + # ssh -i private-key-path link-local-ip -p 3922 + # cat /etc/cloudstack-release + The output should be like the following: + Cloudstack Release 4.0.0-incubating Mon Oct 9 15:10:04 PST 2012 + + ESXi + SSH in using the private IP address of the system VM. For example, in the command + below, substitute your own path to the private key used to log in to the system VM and + your own private IP. + + Run the following commands on the Management Server: + # ssh -i private-key-path private-ip -p 3922 + # cat /etc/cloudstack-release + + The output should be like the following: + Cloudstack Release 4.0.0-incubating Mon Oct 9 15:10:04 PST 2012 + + + If needed, upgrade all Citrix XenServer hypervisor hosts in your cloud to a version + supported by CloudStack 4.0.0-incubating. The supported versions are XenServer 5.6 SP2 + and 6.0.2. Instructions for upgrade can be found in the CloudStack 4.0.0-incubating + Installation Guide. + + + Apply the XenServer hotfix XS602E003 (and any other needed hotfixes) to XenServer + v6.0.2 hypervisor hosts. + + + Disconnect the XenServer cluster from CloudStack. + In the left navigation bar of the CloudStack UI, select Infrastructure. Under + Clusters, click View All. Select the XenServer cluster and click Actions - + Unmanage. + This may fail if there are hosts not in one of the states Up, Down, + Disconnected, or Alert. You may need to fix that before unmanaging this + cluster. + Wait until the status of the cluster has reached Unmanaged. Use the CloudStack + UI to check on the status. When the cluster is in the unmanaged state, there is no + connection to the hosts in the cluster. + + + To clean up the VLAN, log in to one XenServer host and run: + /opt/xensource/bin/cloud-clean-vlan.sh + + + Prepare the upgrade by running the following on one XenServer host: + /opt/xensource/bin/cloud-prepare-upgrade.sh + If you see a message like "can't eject CD", log in to the VM and umount the CD, + then run this script again. + + + Upload the hotfix to the XenServer hosts. Always start with the Xen pool master, + then the slaves. Using your favorite file copy utility (e.g. WinSCP), copy the + hotfixes to the host. Place them in a temporary folder such as /root or /tmp. + On the Xen pool master, upload the hotfix with this command: + xe patch-upload file-name=XS602E003.xsupdate + Make a note of the output from this command, which is a UUID for the hotfix + file. You'll need it in another step later. + + (Optional) If you are applying other hotfixes as well, you can repeat the + commands in this section with the appropriate hotfix number. For example, + XS602E004.xsupdate. + + + + Manually live migrate all VMs on this host to another host. First, get a list of + the VMs on this host: + # xe vm-list + Then use this command to migrate each VM. Replace the example host name and VM + name with your own: + # xe vm-migrate live=true host=host-name vm=VM-name + + Troubleshooting + If you see a message like "You attempted an operation on a VM which requires + PV drivers to be installed but the drivers were not detected," run: + /opt/xensource/bin/make_migratable.sh + b6cf79c8-02ee-050b-922f-49583d9f1a14. + + + + Apply the hotfix. First, get the UUID of this host: + # xe host-list + Then use the following command to apply the hotfix. Replace the example host + UUID with the current host ID, and replace the hotfix UUID with the output from the + patch-upload command you ran on this machine earlier. You can also get the hotfix + UUID by running xe patch-list. + xe patch-apply host-uuid=host-uuid + uuid=hotfix-uuid + + + Copy the following files from the CloudStack Management Server to the + host. + + + + + + + Copy from here... + ...to here + + + + + /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/xenserver60/NFSSR.py + /opt/xensource/sm/NFSSR.py + + + /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/setupxenserver.sh + /opt/xensource/bin/setupxenserver.sh + + + /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/make_migratable.sh + /opt/xensource/bin/make_migratable.sh + + + + + + + (Only for hotfixes XS602E005 and XS602E007) You need to apply a new Cloud + Support Pack. + + + Download the CSP software onto the XenServer host from one of the following + links: + For hotfix XS602E005: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E005/56710/xe-phase-2/xenserver-cloud-supp.tgz + For hotfix XS602E007: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E007/57824/xe-phase-2/xenserver-cloud-supp.tgz + + + Extract the file: + # tar xf xenserver-cloud-supp.tgz + + + Run the following script: + # xe-install-supplemental-pack + xenserver-cloud-supp.iso + + + If the XenServer host is part of a zone that uses basic networking, disable + Open vSwitch (OVS): + # xe-switch-network-backend bridge + + + + + Reboot this XenServer host. + + + Run the following: + /opt/xensource/bin/setupxenserver.sh + + If the message "mv: cannot stat `/etc/cron.daily/logrotate': No such file or + directory" appears, you can safely ignore it. + + + + Run the following: + for pbd in `xe pbd-list currently-attached=false| grep ^uuid | awk + '{print $NF}'`; do xe pbd-plug uuid=$pbd ; + + + + On each slave host in the Xen pool, repeat these steps, starting from "manually + live migrate VMs." + + + + +
+
+ + Version 4.1.0 +
+ What’s New in 4.1 + Apache CloudStack 4.1.0 includes many new features. This section covers the most prominent new features and changes. +
+
+ Issues Fixed in 4.1.0 + Apache CloudStack uses Jira + to track its issues. All new features and bugs for 4.1.0 have been tracked in Jira, and have + a standard naming convention of "CLOUDSTACK-NNNN" where "NNNN" is the issue number. + This section includes a summary of known issues against 4.0.0 that were fixed in 4.1.0. + - - - - - Field - Value - - - - - Name - systemvm-vmware-4.0 - - - Description - systemvm-vmware-4.0 - - - URL - http://download.cloud.com/templates/burbank/burbank-systemvm-08012012.ova - - - Zone - Choose the zone where this hypervisor is used - - - Hypervisor - VMware - - - Format - OVA - - - OS Type - Debian GNU/Linux 5.0 (32-bit) - - - Extractable - no - - - Password Enabled - no - - - Public - no - - - Featured - no - - + + + + + + Defect + + + Description + + + + + + CS-16135 + Creating volumes after upgrading from snapshot taken in 2.2.14 no longer + deletes the snapshot physically from the secondary storage. + + - - - - Watch the screen to be sure that the template downloads successfully and enters - the READY state. Do not proceed until this is successful. - - - - - Stop all Usage Servers if running. Run this on all Usage Server hosts. - # service cloud-usage stop - - - Stop the Management Servers. Run this on all Management Server hosts. - # service cloud-management stop - - - On the MySQL master, take a backup of the MySQL databases. We recommend performing - this step even in test upgrades. If there is an issue, this will assist with - debugging. - In the following commands, it is assumed that you have set the root password on the - database, which is a CloudStack recommended best practice. Substitute your own MySQL - root password. - # mysqldump -u root -pmysql_password cloud > cloud-backup.dmp -# mysqldump -u root -pmysql_password cloud_usage > cloud-usage-backup.dmp - - - Either build RPM/DEB packages as detailed in the Installation Guide, or use one of - the community provided yum/apt repositories to gain access to the &PRODUCT; - binaries. - - - After you have configured an appropriate yum or apt repository, you may execute the - one of the following commands as appropriate for your environment in order to upgrade - &PRODUCT;: # yum update cloud-* - # apt-get update -# apt-get upgrade cloud-* - - You will, of course, have to agree to the changes suggested by Yum or APT. - - If the upgrade output includes a message similar to the following, then some - custom content was found in your old components.xml, and you need to merge the two - files: - warning: /etc/cloud/management/components.xml created as /etc/cloud/management/components.xml.rpmnew - Instructions follow in the next step. - - - - If you have made changes to your copy of - /etc/cloud/management/components.xml the changes will be - preserved in the upgrade. However, you need to do the following steps to place these - changes in a new version of the file which is compatible with version - 4.0.0-incubating. - - - Make a backup copy of /etc/cloud/management/components.xml. - For example: - # mv /etc/cloud/management/components.xml /etc/cloud/management/components.xml-backup - - - Copy /etc/cloud/management/components.xml.rpmnew to create - a new /etc/cloud/management/components.xml: - # cp -ap /etc/cloud/management/components.xml.rpmnew /etc/cloud/management/components.xml - - - Merge your changes from the backup file into the new - components.xml. - # vi /etc/cloud/management/components.xml - - - - If you have more than one management server node, repeat the upgrade steps on each - node. - - - - Start the first Management Server. Do not start any other Management Server nodes - yet. - # service cloud-management start - Wait until the databases are upgraded. Ensure that the database upgrade is complete. - After confirmation, start the other Management Servers one at a time by running the same - command on each node. - - Failing to restart the Management Server indicates a problem in the upgrade. - Having the Management Server restarted without any issues indicates that the upgrade - is successfully completed. - - - - Start all Usage Servers (if they were running on your previous version). Perform - this on each Usage Server host. - # service cloud-usage start - - - - Additional steps are required for each KVM host. These steps will not affect - running guests in the cloud. These steps are required only for clouds using KVM as - hosts and only on the KVM hosts. - - - - Configure a yum or apt respository containing the &PRODUCT; packages as outlined - in the Installation Guide. - - - Stop the running agent. - # service cloud-agent stop - - - Update the agent software with one of the following command sets as appropriate - for your environment. - # yum update cloud-* - # apt-get update - # apt-get upgrade cloud-* - - - Start the agent. - # service cloud-agent start - - - Edit /etc/cloud/agent/agent.properties to change the - resource parameter from - "com.cloud.agent.resource.computing.LibvirtComputingResource" to - "com.cloud.hypervisor.kvm.resource.LibvirtComputingResource". - - - Start the cloud agent and cloud management services. - - - When the Management Server is up and running, log in to the CloudStack UI and - restart the virtual router for proper functioning of all the features. - - - - - Log in to the CloudStack UI as administrator, and check the status of the hosts. All - hosts should come to Up state (except those that you know to be offline). You may need - to wait 20 or 30 minutes, depending on the number of hosts. - - Troubleshooting: If login fails, clear your browser cache and reload the - page. - - - Do not proceed to the next step until the hosts show in Up state. - - - If you are upgrading from 3.0.2, perform the following: - - - Ensure that the admin port is set to 8096 by using the "integration.api.port" - global parameter. - This port is used by the cloud-sysvmadm script at the end of the upgrade - procedure. For information about how to set this parameter, see "Setting Global - Configuration Parameters" in the Installation Guide. - - - Restart the Management Server. - - If you don't want the admin port to remain open, you can set it to null after - the upgrade is done and restart the management server. - - - - - - Run the cloud-sysvmadm script to stop, then start, all Secondary - Storage VMs, Console Proxy VMs, and virtual routers. Run the script once on each - management server. Substitute your own IP address of the MySQL instance, the MySQL user - to connect as, and the password to use for that user. In addition to those parameters, - provide the -c and -r arguments. For - example: - # nohup cloud-sysvmadm -d 192.168.1.5 -u cloud -p password -c -r > - sysvm.log 2>&1 & - # tail -f sysvm.log - This might take up to an hour or more to run, depending on the number of accounts in - the system. - - - If needed, upgrade all Citrix XenServer hypervisor hosts in your cloud to a version - supported by CloudStack 4.0.0-incubating. The supported versions are XenServer 5.6 SP2 - and 6.0.2. Instructions for upgrade can be found in the CloudStack 4.0.0-incubating - Installation Guide. - - - Now apply the XenServer hotfix XS602E003 (and any other needed hotfixes) to - XenServer v6.0.2 hypervisor hosts. - - - Disconnect the XenServer cluster from CloudStack. - In the left navigation bar of the CloudStack UI, select Infrastructure. Under - Clusters, click View All. Select the XenServer cluster and click Actions - - Unmanage. - This may fail if there are hosts not in one of the states Up, Down, - Disconnected, or Alert. You may need to fix that before unmanaging this - cluster. - Wait until the status of the cluster has reached Unmanaged. Use the CloudStack - UI to check on the status. When the cluster is in the unmanaged state, there is no - connection to the hosts in the cluster. - - - To clean up the VLAN, log in to one XenServer host and run: - /opt/xensource/bin/cloud-clean-vlan.sh - - - Now prepare the upgrade by running the following on one XenServer host: - /opt/xensource/bin/cloud-prepare-upgrade.sh - If you see a message like "can't eject CD", log in to the VM and unmount the CD, - then run this script again. - - - Upload the hotfix to the XenServer hosts. Always start with the Xen pool master, - then the slaves. Using your favorite file copy utility (e.g. WinSCP), copy the - hotfixes to the host. Place them in a temporary folder such as /tmp. - On the Xen pool master, upload the hotfix with this command: - xe patch-upload file-name=XS602E003.xsupdate - Make a note of the output from this command, which is a UUID for the hotfix - file. You'll need it in another step later. - - (Optional) If you are applying other hotfixes as well, you can repeat the - commands in this section with the appropriate hotfix number. For example, - XS602E004.xsupdate. - - - - Manually live migrate all VMs on this host to another host. First, get a list of - the VMs on this host: - # xe vm-list - Then use this command to migrate each VM. Replace the example host name and VM - name with your own: - # xe vm-migrate live=true host=host-name - vm=VM-name - - Troubleshooting - If you see a message like "You attempted an operation on a VM which requires - PV drivers to be installed but the drivers were not detected," run: - /opt/xensource/bin/make_migratable.sh - b6cf79c8-02ee-050b-922f-49583d9f1a14. - - - - Apply the hotfix. First, get the UUID of this host: - # xe host-list - Then use the following command to apply the hotfix. Replace the example host - UUID with the current host ID, and replace the hotfix UUID with the output from the - patch-upload command you ran on this machine earlier. You can also get the hotfix - UUID by running xe patch-list. - xe patch-apply host-uuid=host-uuid uuid=hotfix-uuid - - - Copy the following files from the CloudStack Management Server to the - host. - + +
+
+ Known Issues in 4.1.0 + - - - - - Copy from here... - ...to here - - - - - /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/xenserver60/NFSSR.py - /opt/xensource/sm/NFSSR.py - - - /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/setupxenserver.sh - /opt/xensource/bin/setupxenserver.sh - - - /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/make_migratable.sh - /opt/xensource/bin/make_migratable.sh - - + + + + + + Issue ID + + + Description + + + + + + CLOUDSTACK-1747 + mvn deploydb only creates 4.0 DB, not 4.1 + Due to tooling changes between 4.1 and 4.2, CloudStack's database is created using the 4.0 schema and updated to the 4.1 schema when the management server starts for the first time. It's OK to see the same schema if the management server has not started yet. + + + + CLOUDSTACK-1824 + Service CloudStack-Management is being displayed as cloud-management service + Many scripts and text entries have references to cloud-management rather than cloudstack-management due to the changeover between 4.0 and 4.1 to rename services. This is a minor issue and should be corrected by 4.2. + + + + + CLOUDSTACK-1824 + Service CloudStack-Management is being displayed as cloud-management service + + + + + CLOUDSTACK-1510 + + + NPE when primary storage is added with wrong path + + + + + CLOUDSTACK-1428 + + + [UI] Instance which are created without display name are not visible when added to LB + + + + + CLOUDSTACK-1306 + + + Better Error message when trying to deploy Vm by passing static Ipv4 addresses that are assigned to another VM/IP4 address is outside the iprange. + + + + + CLOUDSTACK-1236 + + + Warning while adding Xen 6.1 host [Unable to create local link network] + + + + + CLOUDSTACK-969 + + + api: zone response lists vlan in it as "vlan range of zone" but the vlan belongs to physical network + + + + + CLOUDSTACK-963 + + + [cloud.utils.AnnotationHelper] class java.lang.Stringdoes not have a Table annotation + + + + + CLOUDSTACK-458 + + + xen:snapshots:Storage gc fail to clean the failed snapshot images from secondarystorage + + + + + CLOUDSTACK-315 + + + Infrastructure view does not show capacity values + + + + + CLOUDSTACK-300 + + + Creation of compute offering allow combination of local storage + HA + + + + + CLOUDSTACK-282 + + + Virtual Routers do not properly resolve DNS SRV Records + + + + + CLOUDSTACK-276 + + + SSVM ID is exposed in the Error Message thrown by AddTrafficType API + + + + + CLOUDSTACK-270 + + + Ui should not ask for a vlan range if the physical network isolation type is not VLAN + + + + + CLOUDSTACK-245 + + + VPC ACLs are not stored and programmed consistently + + + + + CLOUDSTACK-231 + + + Tag creation using special charecters + + + + + CLOUDSTACK-124 + + + NetworkGarbageCollector not cleaning up networks + + + + + CLOUDSTACK-62 + + + console proxy does not support any keymaps besides us, jp + + + - - - - (Only for hotfixes XS602E005 and XS602E007) You need to apply a new Cloud - Support Pack. - - - Download the CSP software onto the XenServer host from one of the following - links: - For hotfix XS602E005: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E005/56710/xe-phase-2/xenserver-cloud-supp.tgz - For hotfix XS602E007: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E007/57824/xe-phase-2/xenserver-cloud-supp.tgz - - - Extract the file: - # tar xf xenserver-cloud-supp.tgz - - - Run the following script: - # xe-install-supplemental-pack xenserver-cloud-supp.iso - - - If the XenServer host is part of a zone that uses basic networking, disable - Open vSwitch (OVS): - # xe-switch-network-backend bridge - - - - - Reboot this XenServer host. - - - Run the following: - /opt/xensource/bin/setupxenserver.sh - - If the message "mv: cannot stat `/etc/cron.daily/logrotate': No such file or - directory" appears, you can safely ignore it. - - - - Run the following: - for pbd in `xe pbd-list currently-attached=false| grep ^uuid | awk '{print $NF}'`; do xe pbd-plug uuid=$pbd ; - - - On each slave host in the Xen pool, repeat these steps, starting from "manually - live migrate VMs." - - - - - - Troubleshooting Tip - If passwords which you know to be valid appear not to work after upgrade, or other UI - issues are seen, try clearing your browser cache and reloading the UI page. - -
-
- Upgrade from 2.2.14 to 4.0.0-incubating - - - Ensure that you query your IPaddress usage records and process them; for example, - issue invoices for any usage that you have not yet billed users for. - Starting in 3.0.2, the usage record format for IP addresses is the same as the rest - of the usage types. Instead of a single record with the assignment and release dates, - separate records are generated per aggregation period with start and end dates. After - upgrading to 4.0.0-incubating, any existing IP address usage records in the old format - will no longer be available. - - - If you are using version 2.2.0 - 2.2.13, first upgrade to 2.2.14 by using the - instructions in the 2.2.14 Release Notes. - - KVM Hosts - If KVM hypervisor is used in your cloud, be sure you completed the step to insert - a valid username and password into the host_details table on each KVM node as - described in the 2.2.14 Release Notes. This step is critical, as the database will be - encrypted after the upgrade to 4.0.0-incubating. - - - - While running the 2.2.14 system, log in to the UI as root administrator. - - - Using the UI, add a new System VM template for each hypervisor type that is used in - your cloud. In each zone, add a system VM template for each hypervisor used in that - zone - - - In the left navigation bar, click Templates. - - - In Select view, click Templates. - - - Click Register template. - The Register template dialog box is displayed. - - - In the Register template dialog box, specify the following values depending on - the hypervisor type (do not change these): - - - - - - - Hypervisor - Description - - - - - XenServer - Name: systemvm-xenserver-3.0.0 - Description: systemvm-xenserver-3.0.0 - URL: - http://download.cloud.com/templates/acton/acton-systemvm-02062012.vhd.bz2 - Zone: Choose the zone where this hypervisor is used - Hypervisor: XenServer - Format: VHD - OS Type: Debian GNU/Linux 5.0 (32-bit) - Extractable: no - Password Enabled: no - Public: no - Featured: no - - - - KVM - Name: systemvm-kvm-4.1.0 - Description: systemvm-kvm-4.1.0 - URL: - http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2 - Zone: Choose the zone where this hypervisor is used - Hypervisor: KVM - Format: QCOW2 - OS Type: Debian GNU/Linux 5.0 (32-bit) - Extractable: no - Password Enabled: no - Public: no - Featured: no - - - - VMware - Name: systemvm-vmware-4.1.0 - Description: systemvm-vmware-4.1.0 - URL: - http://download.cloud.com/templates/burbank/burbank-systemvm-08012012.ova - Zone: Choose the zone where this hypervisor is used - Hypervisor: VMware - Format: OVA - OS Type: Debian GNU/Linux 5.0 (32-bit) - Extractable: no - Password Enabled: no - Public: no - Featured: no - - - - - - - - - - Watch the screen to be sure that the template downloads successfully and enters the - READY state. Do not proceed until this is successful - - - WARNING: If you use more than one type of - hypervisor in your cloud, be sure you have repeated these steps to download the system - VM template for each hypervisor type. Otherwise, the upgrade will fail. - - - Stop all Usage Servers if running. Run this on all Usage Server hosts. - # service cloud-usage stop - - - Stop the Management Servers. Run this on all Management Server hosts. - # service cloud-management stop - - - On the MySQL master, take a backup of the MySQL databases. We recommend performing - this step even in test upgrades. If there is an issue, this will assist with - debugging. - In the following commands, it is assumed that you have set the root password on the - database, which is a CloudStack recommended best practice. Substitute your own MySQL - root password. - # mysqldump -u root -pmysql_password cloud > cloud-backup.dmp -# mysqldump -u root -pmysql_password cloud_usage > cloud-usage-backup.dmp - - - - Either build RPM/DEB packages as detailed in the Installation Guide, or use one of - the community provided yum/apt repositories to gain access to the &PRODUCT; binaries. - - - - After you have configured an appropriate yum or apt repository, you may execute the - one of the following commands as appropriate for your environment in order to upgrade - &PRODUCT;: # yum update cloud-* - # apt-get update -# apt-get upgrade cloud-* - - You will, of course, have to agree to the changes suggested by Yum or APT. - - - If you have made changes to your existing copy of the file components.xml in your - previous-version CloudStack installation, the changes will be preserved in the upgrade. - However, you need to do the following steps to place these changes in a new version of - the file which is compatible with version 4.0.0-incubating. - - How will you know whether you need to do this? If the upgrade output in the - previous step included a message like the following, then some custom content was - found in your old components.xml, and you need to merge the two files: - - warning: /etc/cloud/management/components.xml created as /etc/cloud/management/components.xml.rpmnew - - - Make a backup copy of your - /etc/cloud/management/components.xml file. For - example: - # mv /etc/cloud/management/components.xml /etc/cloud/management/components.xml-backup - - - Copy /etc/cloud/management/components.xml.rpmnew to create - a new /etc/cloud/management/components.xml: - # cp -ap /etc/cloud/management/components.xml.rpmnew /etc/cloud/management/components.xml - - - Merge your changes from the backup file into the new components.xml file. - # vi /etc/cloud/management/components.xml - - - - - - If you have made changes to your existing copy of the - /etc/cloud/management/db.properties file in your previous-version - CloudStack installation, the changes will be preserved in the upgrade. However, you need - to do the following steps to place these changes in a new version of the file which is - compatible with version 4.0.0-incubating. - - - Make a backup copy of your file - /etc/cloud/management/db.properties. For example: - # mv /etc/cloud/management/db.properties /etc/cloud/management/db.properties-backup - - - Copy /etc/cloud/management/db.properties.rpmnew to create a - new /etc/cloud/management/db.properties: - # cp -ap /etc/cloud/management/db.properties.rpmnew etc/cloud/management/db.properties - - - Merge your changes from the backup file into the new db.properties file. - # vi /etc/cloud/management/db.properties - - - - - On the management server node, run the following command. It is recommended that you - use the command-line flags to provide your own encryption keys. See Password and Key - Encryption in the Installation Guide. - # cloud-setup-encryption -e encryption_type -m management_server_key -k database_key - When used without arguments, as in the following example, the default encryption - type and keys will be used: - - - (Optional) For encryption_type, use file or web to indicate the technique used - to pass in the database encryption password. Default: file. - - - (Optional) For management_server_key, substitute the default key that is used to - encrypt confidential parameters in the properties file. Default: password. It is - highly recommended that you replace this with a more secure value - - - (Optional) For database_key, substitute the default key that is used to encrypt - confidential parameters in the CloudStack database. Default: password. It is highly - recommended that you replace this with a more secure value. - - - - - Repeat steps 10 - 14 on every management server node. If you provided your own - encryption key in step 14, use the same key on all other management servers. - - - Start the first Management Server. Do not start any other Management Server nodes - yet. - # service cloud-management start - Wait until the databases are upgraded. Ensure that the database upgrade is complete. - You should see a message like "Complete! Done." After confirmation, start the other - Management Servers one at a time by running the same command on each node. - - - Start all Usage Servers (if they were running on your previous version). Perform - this on each Usage Server host. - # service cloud-usage start - - - (KVM only) Additional steps are required for each KVM host. These steps will not - affect running guests in the cloud. These steps are required only for clouds using KVM - as hosts and only on the KVM hosts. - - - Configure your CloudStack package repositories as outlined in the Installation - Guide - - - Stop the running agent. - # service cloud-agent stop - - - Update the agent software with one of the following command sets as - appropriate. - # yum update cloud-* - - # apt-get update -# apt-get upgrade cloud-* - - - - Start the agent. - # service cloud-agent start - - - Copy the contents of the agent.properties file to the new - agent.properties file by using the following command - sed -i 's/com.cloud.agent.resource.computing.LibvirtComputingResource/com.cloud.hypervisor.kvm.resource.LibvirtComputingResource/g' /etc/cloud/agent/agent.properties - - - Start the cloud agent and cloud management services. - - - When the Management Server is up and running, log in to the CloudStack UI and - restart the virtual router for proper functioning of all the features. - - - - - Log in to the CloudStack UI as admin, and check the status of the hosts. All hosts - should come to Up state (except those that you know to be offline). You may need to wait - 20 or 30 minutes, depending on the number of hosts. - Do not proceed to the next step until the hosts show in the Up state. If the hosts - do not come to the Up state, contact support. - - - Run the following script to stop, then start, all Secondary Storage VMs, Console - Proxy VMs, and virtual routers. - - - Run the command once on one management server. Substitute your own IP address of - the MySQL instance, the MySQL user to connect as, and the password to use for that - user. In addition to those parameters, provide the "-c" and "-r" arguments. For - example: - # nohup cloud-sysvmadm -d 192.168.1.5 -u cloud -p password -c -r > sysvm.log 2>&1 & -# tail -f sysvm.log - This might take up to an hour or more to run, depending on the number of - accounts in the system. - - - After the script terminates, check the log to verify correct execution: - # tail -f sysvm.log - The content should be like the following: - -Stopping and starting 1 secondary storage vm(s)... -Done stopping and starting secondary storage vm(s) -Stopping and starting 1 console proxy vm(s)... -Done stopping and starting console proxy vm(s). -Stopping and starting 4 running routing vm(s)... -Done restarting router(s). - - - - - - If you would like additional confirmation that the new system VM templates were - correctly applied when these system VMs were rebooted, SSH into the System VM and check - the version. - Use one of the following techniques, depending on the hypervisor. - - XenServer or KVM: - SSH in by using the link local IP address of the system VM. For example, in the - command below, substitute your own path to the private key used to log in to the - system VM and your own link local IP. - - Run the following commands on the XenServer or KVM host on which the system VM is - present: - # ssh -i private-key-path link-local-ip -p 3922 -# cat /etc/cloudstack-release - The output should be like the following: - Cloudstack Release 4.0.0-incubating Mon Oct 9 15:10:04 PST 2012 - - ESXi - SSH in using the private IP address of the system VM. For example, in the command - below, substitute your own path to the private key used to log in to the system VM and - your own private IP. - - Run the following commands on the Management Server: - # ssh -i private-key-path private-ip -p 3922 -# cat /etc/cloudstack-release - - The output should be like the following: - Cloudstack Release 4.0.0-incubating Mon Oct 9 15:10:04 PST 2012 - - - If needed, upgrade all Citrix XenServer hypervisor hosts in your cloud to a version - supported by CloudStack 4.0.0-incubating. The supported versions are XenServer 5.6 SP2 - and 6.0.2. Instructions for upgrade can be found in the CloudStack 4.0.0-incubating - Installation Guide. - - - Apply the XenServer hotfix XS602E003 (and any other needed hotfixes) to XenServer - v6.0.2 hypervisor hosts. - - - Disconnect the XenServer cluster from CloudStack. - In the left navigation bar of the CloudStack UI, select Infrastructure. Under - Clusters, click View All. Select the XenServer cluster and click Actions - - Unmanage. - This may fail if there are hosts not in one of the states Up, Down, - Disconnected, or Alert. You may need to fix that before unmanaging this - cluster. - Wait until the status of the cluster has reached Unmanaged. Use the CloudStack - UI to check on the status. When the cluster is in the unmanaged state, there is no - connection to the hosts in the cluster. - - - To clean up the VLAN, log in to one XenServer host and run: - /opt/xensource/bin/cloud-clean-vlan.sh - - - Prepare the upgrade by running the following on one XenServer host: - /opt/xensource/bin/cloud-prepare-upgrade.sh - If you see a message like "can't eject CD", log in to the VM and umount the CD, - then run this script again. - - - Upload the hotfix to the XenServer hosts. Always start with the Xen pool master, - then the slaves. Using your favorite file copy utility (e.g. WinSCP), copy the - hotfixes to the host. Place them in a temporary folder such as /root or /tmp. - On the Xen pool master, upload the hotfix with this command: - xe patch-upload file-name=XS602E003.xsupdate - Make a note of the output from this command, which is a UUID for the hotfix - file. You'll need it in another step later. - - (Optional) If you are applying other hotfixes as well, you can repeat the - commands in this section with the appropriate hotfix number. For example, - XS602E004.xsupdate. - - - - Manually live migrate all VMs on this host to another host. First, get a list of - the VMs on this host: - # xe vm-list - Then use this command to migrate each VM. Replace the example host name and VM - name with your own: - # xe vm-migrate live=true host=host-name vm=VM-name - - Troubleshooting - If you see a message like "You attempted an operation on a VM which requires - PV drivers to be installed but the drivers were not detected," run: - /opt/xensource/bin/make_migratable.sh - b6cf79c8-02ee-050b-922f-49583d9f1a14. - - - - Apply the hotfix. First, get the UUID of this host: - # xe host-list - Then use the following command to apply the hotfix. Replace the example host - UUID with the current host ID, and replace the hotfix UUID with the output from the - patch-upload command you ran on this machine earlier. You can also get the hotfix - UUID by running xe patch-list. - xe patch-apply host-uuid=host-uuid - uuid=hotfix-uuid - - - Copy the following files from the CloudStack Management Server to the - host. - - - - - - - Copy from here... - ...to here - - - - - /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/xenserver60/NFSSR.py - /opt/xensource/sm/NFSSR.py - - - /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/setupxenserver.sh - /opt/xensource/bin/setupxenserver.sh - - - /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/make_migratable.sh - /opt/xensource/bin/make_migratable.sh - - - - - - - (Only for hotfixes XS602E005 and XS602E007) You need to apply a new Cloud - Support Pack. - - - Download the CSP software onto the XenServer host from one of the following - links: - For hotfix XS602E005: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E005/56710/xe-phase-2/xenserver-cloud-supp.tgz - For hotfix XS602E007: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E007/57824/xe-phase-2/xenserver-cloud-supp.tgz - - - Extract the file: - # tar xf xenserver-cloud-supp.tgz - - - Run the following script: - # xe-install-supplemental-pack - xenserver-cloud-supp.iso - - - If the XenServer host is part of a zone that uses basic networking, disable - Open vSwitch (OVS): - # xe-switch-network-backend bridge - - - - - Reboot this XenServer host. - - - Run the following: - /opt/xensource/bin/setupxenserver.sh - - If the message "mv: cannot stat `/etc/cron.daily/logrotate': No such file or - directory" appears, you can safely ignore it. - - - - Run the following: - for pbd in `xe pbd-list currently-attached=false| grep ^uuid | awk - '{print $NF}'`; do xe pbd-plug uuid=$pbd ; - - - - On each slave host in the Xen pool, repeat these steps, starting from "manually - live migrate VMs." - - - - -
-
- - Version 4.1.0 -
- What’s New in 4.1 - Apache CloudStack 4.1.0 includes many new features. This section covers the most prominent new features and changes. -
-
- Issues Fixed in 4.1.0 - Apache CloudStack uses Jira - to track its issues. All new features and bugs for 4.1.0 have been tracked in Jira, and have - a standard naming convention of "CLOUDSTACK-NNNN" where "NNNN" is the issue number. - This section includes a summary of known issues against 4.0.0 that were fixed in 4.1.0. - - - - - - - - Defect - - - Description - - - - - - CS-16135 - Creating volumes after upgrading from snapshot taken in 2.2.14 no longer - deletes the snapshot physically from the secondary storage. - - - - -
-
- Known Issues in 4.1.0 - - - - - - - - Issue ID - - - Description - - - - - - CLOUDSTACK-1747 - mvn deploydb only creates 4.0 DB, not 4.1 - Due to tooling changes between 4.1 and 4.2, CloudStack's database is created using the 4.0 schema and updated to the 4.1 schema when the management server starts for the first time. It's OK to see the same schema if the management server has not started yet. - - - - CLOUDSTACK-1824 - Service CloudStack-Management is being displayed as cloud-management service - Many scripts and text entries have references to cloud-management rather than cloudstack-management due to the changeover between 4.0 and 4.1 to rename services. This is a minor issue and should be corrected by 4.2. - - - - - -
-
- +
+
+
+
From d6ed8d7cb53da08cacd04c3ac7435da5601e7f06 Mon Sep 17 00:00:00 2001 From: Likitha Shetty Date: Thu, 4 Apr 2013 21:24:41 +0530 Subject: [PATCH 018/607] Dedicate Public IP range --- .../configuration/ConfigurationService.java | 6 + api/src/com/cloud/event/EventTypes.java | 2 + .../admin/vlan/DedicatePublicIpRangeCmd.java | 116 +++++ .../admin/vlan/ReleasePublicIpRangeCmd.java | 77 ++++ client/tomcatconf/commands.properties.in | 2 + .../configuration/ConfigurationManager.java | 7 +- .../ConfigurationManagerImpl.java | 180 ++++++-- .../com/cloud/network/NetworkManagerImpl.java | 46 +- .../com/cloud/network/NetworkServiceImpl.java | 9 - .../cloud/server/ManagementServerImpl.java | 2 + .../com/cloud/user/AccountManagerImpl.java | 6 +- .../ConfigurationManagerTest.java | 400 ++++++++++++++++++ .../vpc/MockConfigurationManagerImpl.java | 32 +- .../component/test_public_ip_range.py | 149 +++++++ tools/marvin/marvin/integration/lib/base.py | 11 + 15 files changed, 997 insertions(+), 48 deletions(-) create mode 100644 api/src/org/apache/cloudstack/api/command/admin/vlan/DedicatePublicIpRangeCmd.java create mode 100644 api/src/org/apache/cloudstack/api/command/admin/vlan/ReleasePublicIpRangeCmd.java create mode 100644 server/test/com/cloud/configuration/ConfigurationManagerTest.java create mode 100644 test/integration/component/test_public_ip_range.py diff --git a/api/src/com/cloud/configuration/ConfigurationService.java b/api/src/com/cloud/configuration/ConfigurationService.java index e63fcece525..6937d0b64de 100644 --- a/api/src/com/cloud/configuration/ConfigurationService.java +++ b/api/src/com/cloud/configuration/ConfigurationService.java @@ -35,7 +35,9 @@ import org.apache.cloudstack.api.command.admin.offering.UpdateServiceOfferingCmd import org.apache.cloudstack.api.command.admin.pod.DeletePodCmd; import org.apache.cloudstack.api.command.admin.pod.UpdatePodCmd; import org.apache.cloudstack.api.command.admin.vlan.CreateVlanIpRangeCmd; +import org.apache.cloudstack.api.command.admin.vlan.DedicatePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.vlan.DeleteVlanIpRangeCmd; +import org.apache.cloudstack.api.command.admin.vlan.ReleasePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.zone.CreateZoneCmd; import org.apache.cloudstack.api.command.admin.zone.DeleteZoneCmd; import org.apache.cloudstack.api.command.admin.zone.UpdateZoneCmd; @@ -234,6 +236,10 @@ public interface ConfigurationService { boolean deleteVlanIpRange(DeleteVlanIpRangeCmd cmd); + Vlan dedicatePublicIpRange(DedicatePublicIpRangeCmd cmd) throws ResourceAllocationException; + + boolean releasePublicIpRange(ReleasePublicIpRangeCmd cmd); + NetworkOffering createNetworkOffering(CreateNetworkOfferingCmd cmd); NetworkOffering updateNetworkOffering(UpdateNetworkOfferingCmd cmd); diff --git a/api/src/com/cloud/event/EventTypes.java b/api/src/com/cloud/event/EventTypes.java index 704a1bfc02c..0dc16f3de7a 100755 --- a/api/src/com/cloud/event/EventTypes.java +++ b/api/src/com/cloud/event/EventTypes.java @@ -223,6 +223,8 @@ public class EventTypes { // VLANs/IP ranges public static final String EVENT_VLAN_IP_RANGE_CREATE = "VLAN.IP.RANGE.CREATE"; public static final String EVENT_VLAN_IP_RANGE_DELETE = "VLAN.IP.RANGE.DELETE"; + public static final String EVENT_VLAN_IP_RANGE_DEDICATE = "VLAN.IP.RANGE.DEDICATE"; + public static final String EVENT_VLAN_IP_RANGE_RELEASE = "VLAN.IP.RANGE.RELEASE"; public static final String EVENT_STORAGE_IP_RANGE_CREATE = "STORAGE.IP.RANGE.CREATE"; public static final String EVENT_STORAGE_IP_RANGE_DELETE = "STORAGE.IP.RANGE.DELETE"; diff --git a/api/src/org/apache/cloudstack/api/command/admin/vlan/DedicatePublicIpRangeCmd.java b/api/src/org/apache/cloudstack/api/command/admin/vlan/DedicatePublicIpRangeCmd.java new file mode 100644 index 00000000000..c62857ca964 --- /dev/null +++ b/api/src/org/apache/cloudstack/api/command/admin/vlan/DedicatePublicIpRangeCmd.java @@ -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.admin.vlan; + +import org.apache.cloudstack.api.APICommand; +import org.apache.cloudstack.api.ApiConstants; +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.DomainResponse; +import org.apache.cloudstack.api.response.ProjectResponse; +import org.apache.cloudstack.api.response.VlanIpRangeResponse; +import org.apache.cloudstack.api.response.ZoneResponse; +import org.apache.log4j.Logger; + +import com.cloud.dc.Vlan; +import com.cloud.exception.ResourceAllocationException; +import com.cloud.exception.ResourceUnavailableException; +import com.cloud.user.Account; + +@APICommand(name = "dedicatePublicIpRange", description="Dedicates a Public IP range to an account", responseObject=VlanIpRangeResponse.class) +public class DedicatePublicIpRangeCmd extends BaseCmd { + public static final Logger s_logger = Logger.getLogger(DedicatePublicIpRangeCmd.class.getName()); + + private static final String s_name = "dedicatepubliciprangeresponse"; + + ///////////////////////////////////////////////////// + //////////////// API parameters ///////////////////// + ///////////////////////////////////////////////////// + + @Parameter(name=ApiConstants.ID, type=CommandType.UUID, entityType = VlanIpRangeResponse.class, + required=true, description="the id of the VLAN IP range") + private Long id; + + @Parameter(name=ApiConstants.ACCOUNT, type=CommandType.STRING, required=true, + description="account who will own the VLAN") + private String accountName; + + @Parameter(name=ApiConstants.PROJECT_ID, type=CommandType.UUID, entityType = ProjectResponse.class, + description="project who will own the VLAN") + private Long projectId; + + @Parameter(name=ApiConstants.DOMAIN_ID, type=CommandType.UUID, entityType = DomainResponse.class, + required=true, description="domain ID of the account owning a VLAN") + private Long domainId; + + @Parameter(name=ApiConstants.ZONE_ID, type=CommandType.UUID, entityType = ZoneResponse.class, + required=true, description="the Zone ID of the VLAN IP range") + private Long zoneId; + + ///////////////////////////////////////////////////// + /////////////////// Accessors /////////////////////// + ///////////////////////////////////////////////////// + + public Long getId() { + return id; + } + + public String getAccountName() { + return accountName; + } + + public Long getDomainId() { + return domainId; + } + + public Long getProjectId() { + return projectId; + } + + public Long getZoneId() { + return zoneId; + } + + ///////////////////////////////////////////////////// + /////////////// API Implementation/////////////////// + ///////////////////////////////////////////////////// + + @Override + public String getCommandName() { + return s_name; + } + + @Override + public long getEntityOwnerId() { + return Account.ACCOUNT_ID_SYSTEM; + } + + @Override + public void execute() throws ResourceUnavailableException, ResourceAllocationException { + Vlan result = _configService.dedicatePublicIpRange(this); + if (result != null) { + VlanIpRangeResponse response = _responseGenerator.createVlanIpRangeResponse(result); + response.setResponseName(getCommandName()); + this.setResponseObject(response); + } else { + throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to dedicate vlan ip range"); + } + } + +} diff --git a/api/src/org/apache/cloudstack/api/command/admin/vlan/ReleasePublicIpRangeCmd.java b/api/src/org/apache/cloudstack/api/command/admin/vlan/ReleasePublicIpRangeCmd.java new file mode 100644 index 00000000000..91cc7d33da9 --- /dev/null +++ b/api/src/org/apache/cloudstack/api/command/admin/vlan/ReleasePublicIpRangeCmd.java @@ -0,0 +1,77 @@ +// 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.vlan; + +import org.apache.cloudstack.api.APICommand; +import org.apache.cloudstack.api.ApiConstants; +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.SuccessResponse; +import org.apache.cloudstack.api.response.VlanIpRangeResponse; +import org.apache.log4j.Logger; + +import com.cloud.user.Account; + +@APICommand(name = "releasePublicIpRange", description="Releases a Public IP range back to the system pool", responseObject=SuccessResponse.class) +public class ReleasePublicIpRangeCmd extends BaseCmd { + public static final Logger s_logger = Logger.getLogger(ReleasePublicIpRangeCmd.class.getName()); + + private static final String s_name = "releasepubliciprangeresponse"; + + ///////////////////////////////////////////////////// + //////////////// API parameters ///////////////////// + ///////////////////////////////////////////////////// + + @Parameter(name=ApiConstants.ID, type=CommandType.UUID, entityType = VlanIpRangeResponse.class, + required=true, description="the id of the Public IP range") + private Long id; + + ///////////////////////////////////////////////////// + /////////////////// Accessors /////////////////////// + ///////////////////////////////////////////////////// + + public Long getId() { + return id; + } + + ///////////////////////////////////////////////////// + /////////////// API Implementation/////////////////// + ///////////////////////////////////////////////////// + + @Override + public String getCommandName() { + return s_name; + } + + @Override + public long getEntityOwnerId() { + return Account.ACCOUNT_ID_SYSTEM; + } + + @Override + public void execute(){ + boolean result = _configService.releasePublicIpRange(this); + if (result) { + SuccessResponse response = new SuccessResponse(getCommandName()); + this.setResponseObject(response); + } else { + throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to release public ip range"); + } + } +} diff --git a/client/tomcatconf/commands.properties.in b/client/tomcatconf/commands.properties.in index 163c2cee861..3e556726e64 100644 --- a/client/tomcatconf/commands.properties.in +++ b/client/tomcatconf/commands.properties.in @@ -124,6 +124,8 @@ listDiskOfferings=15 createVlanIpRange=1 deleteVlanIpRange=1 listVlanIpRanges=1 +dedicatePublicIpRange=1 +releasePublicIpRange=1 #### address commands associateIpAddress=15 diff --git a/server/src/com/cloud/configuration/ConfigurationManager.java b/server/src/com/cloud/configuration/ConfigurationManager.java index 20e98845ac0..52b32f4d917 100644 --- a/server/src/com/cloud/configuration/ConfigurationManager.java +++ b/server/src/com/cloud/configuration/ConfigurationManager.java @@ -30,6 +30,7 @@ import com.cloud.dc.Vlan; import com.cloud.exception.ConcurrentOperationException; import com.cloud.exception.InsufficientCapacityException; import com.cloud.exception.InvalidParameterValueException; +import com.cloud.exception.ResourceAllocationException; import com.cloud.network.Network; import com.cloud.network.Network.Capability; import com.cloud.network.Network.Provider; @@ -149,6 +150,10 @@ public interface ConfigurationManager extends ConfigurationService, Manager { */ boolean deleteVlanAndPublicIpRange(long userId, long vlanDbId, Account caller); + boolean releasePublicIpRange(long userId, long vlanDbId, Account caller); + + Vlan dedicatePublicIpRange(Long vlanDbId, String accountName, Long domainId, Long zoneId, Long projectId) throws ResourceAllocationException; + /** * Converts a comma separated list of tags to a List * @@ -210,7 +215,7 @@ public interface ConfigurationManager extends ConfigurationService, Manager { ClusterVO getCluster(long id); - boolean deleteAccountSpecificVirtualRanges(long accountId); + boolean releaseAccountSpecificVirtualRanges(long accountId); /** * Edits a pod in the database. Will not allow you to edit pods that are being used anywhere in the system. diff --git a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java index 1526fb0e125..86d30b417e4 100755 --- a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java +++ b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java @@ -56,7 +56,9 @@ import org.apache.cloudstack.api.command.admin.offering.UpdateServiceOfferingCmd import org.apache.cloudstack.api.command.admin.pod.DeletePodCmd; import org.apache.cloudstack.api.command.admin.pod.UpdatePodCmd; import org.apache.cloudstack.api.command.admin.vlan.CreateVlanIpRangeCmd; +import org.apache.cloudstack.api.command.admin.vlan.DedicatePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.vlan.DeleteVlanIpRangeCmd; +import org.apache.cloudstack.api.command.admin.vlan.ReleasePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.zone.CreateZoneCmd; import org.apache.cloudstack.api.command.admin.zone.DeleteZoneCmd; import org.apache.cloudstack.api.command.admin.zone.UpdateZoneCmd; @@ -2306,9 +2308,6 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati throw new InvalidParameterValueException("Gateway, netmask and zoneId have to be passed in for virtual and direct untagged networks"); } - // if it's an account specific range, associate ip address list to the account - boolean associateIpRangeToAccount = false; - if (forVirtualNetwork) { if (vlanOwner != null) { @@ -2316,8 +2315,6 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati //check resource limits _resourceLimitMgr.checkResourceLimit(vlanOwner, ResourceType.public_ip, accountIpRange); - - associateIpRangeToAccount = true; } } @@ -2332,21 +2329,6 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati endIP, vlanGateway, vlanNetmask, vlanId, vlanOwner, startIPv6, endIPv6, ip6Gateway, ip6Cidr); txn.commit(); - if (associateIpRangeToAccount) { - _networkMgr.associateIpAddressListToAccount(userId, vlanOwner.getId(), zoneId, vlan.getId(), null); - } - - // Associate ips to the network - if (associateIpRangeToAccount) { - if (network.getState() == Network.State.Implemented) { - s_logger.debug("Applying ip associations for vlan id=" + vlanId + " in network " + network); - if (!_networkMgr.applyIpAssociations(network, false)) { - s_logger.warn("Failed to apply ip associations for vlan id=1 as a part of add vlan range for account id=" + vlanOwner.getId()); - } - } else { - s_logger.trace("Network id=" + network.getId() + " is not Implemented, no need to apply ipAssociations"); - } - } return vlan; } @@ -2698,6 +2680,156 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati } } + @Override + @ActionEvent(eventType = EventTypes.EVENT_VLAN_IP_RANGE_DEDICATE, eventDescription = "dedicating vlan ip range", async = false) + public Vlan dedicatePublicIpRange(DedicatePublicIpRangeCmd cmd) throws ResourceAllocationException { + Long vlanDbId = cmd.getId(); + String accountName = cmd.getAccountName(); + Long domainId = cmd.getDomainId(); + Long zoneId = cmd.getZoneId(); + Long projectId = cmd.getProjectId(); + + Vlan vlan = dedicatePublicIpRange(vlanDbId, accountName, domainId, zoneId, projectId); + + return vlan; + } + + @Override + @DB + public Vlan dedicatePublicIpRange(Long vlanDbId, String accountName, Long domainId, Long zoneId, Long projectId) throws ResourceAllocationException { + // Check if account is valid + Account vlanOwner = null; + if (projectId != null) { + if (accountName != null) { + throw new InvalidParameterValueException("accountName and projectId are mutually exclusive"); + } + Project project = _projectMgr.getProject(projectId); + if (project == null) { + throw new InvalidParameterValueException("Unable to find project by id " + projectId); + } + vlanOwner = _accountMgr.getAccount(project.getProjectAccountId()); + } + + if ((accountName != null) && (domainId != null)) { + vlanOwner = _accountDao.findActiveAccount(accountName, domainId); + if (vlanOwner == null) { + throw new InvalidParameterValueException("Please specify a valid account"); + } + } + + // Check if range is valid + VlanVO vlan = _vlanDao.findById(vlanDbId); + if (vlan == null) { + throw new InvalidParameterValueException("Please specify a valid Public IP range id"); + } + + // Check if range has already been dedicated + List maps = _accountVlanMapDao.listAccountVlanMapsByVlan(vlanDbId); + if (maps != null && !maps.isEmpty()) { + throw new InvalidParameterValueException("Specified Public IP range has already been dedicated"); + } + + // Verify that zone exists and is advanced + DataCenterVO zone = _zoneDao.findById(zoneId); + if (zone == null) { + throw new InvalidParameterValueException("Unable to find zone by id " + zoneId); + } + if (zone.getNetworkType() == NetworkType.Basic) { + throw new InvalidParameterValueException("Public IP range can be dedicated to an account only in the zone of type " + NetworkType.Advanced); + } + + // Check Public IP resource limits + int accountPublicIpRange = _publicIpAddressDao.countIPs(zoneId, vlanDbId, false); + _resourceLimitMgr.checkResourceLimit(vlanOwner, ResourceType.public_ip, accountPublicIpRange); + + // Check if any of the Public IP addresses is allocated to another account + List ips = _publicIpAddressDao.listByVlanId(vlanDbId); + for (IPAddressVO ip : ips) { + Long allocatedToAccountId = ip.getAllocatedToAccountId(); + if (allocatedToAccountId != null) { + Account accountAllocatedTo = _accountMgr.getActiveAccountById(allocatedToAccountId); + if (!accountAllocatedTo.getAccountName().equalsIgnoreCase(accountName)) + throw new InvalidParameterValueException("Public IP address in range is already allocated to another account"); + } + } + + Transaction txn = Transaction.currentTxn(); + txn.start(); + + // Create an AccountVlanMapVO entry + AccountVlanMapVO accountVlanMapVO = new AccountVlanMapVO(vlanOwner.getId(), vlan.getId()); + _accountVlanMapDao.persist(accountVlanMapVO); + + txn.commit(); + + return vlan; + } + + @Override + @ActionEvent(eventType = EventTypes.EVENT_VLAN_IP_RANGE_RELEASE, eventDescription = "releasing a public ip range", async = false) + public boolean releasePublicIpRange(ReleasePublicIpRangeCmd cmd) { + Long vlanDbId = cmd.getId(); + + VlanVO vlan = _vlanDao.findById(vlanDbId); + if (vlan == null) { + throw new InvalidParameterValueException("Please specify a valid IP range id."); + } + + return releasePublicIpRange(vlanDbId, UserContext.current().getCallerUserId(), UserContext.current().getCaller()); + } + + @Override + @DB + public boolean releasePublicIpRange(long vlanDbId, long userId, Account caller) { + VlanVO vlan = _vlanDao.findById(vlanDbId); + + List acctVln = _accountVlanMapDao.listAccountVlanMapsByVlan(vlanDbId); + // Verify range is dedicated + if (acctVln == null || acctVln.isEmpty()) { + throw new InvalidParameterValueException("Can't release Public IP range " + vlanDbId + " as it not dedicated to any account"); + } + + // Check if range has any allocated public IPs + long allocIpCount = _publicIpAddressDao.countIPs(vlan.getDataCenterId(), vlanDbId, true); + boolean success = true; + if (allocIpCount > 0) { + try { + vlan = _vlanDao.acquireInLockTable(vlanDbId, 30); + if (vlan == null) { + throw new CloudRuntimeException("Unable to acquire vlan configuration: " + vlanDbId); + } + if (s_logger.isDebugEnabled()) { + s_logger.debug("lock vlan " + vlanDbId + " is acquired"); + } + List ips = _publicIpAddressDao.listByVlanId(vlanDbId); + for (IPAddressVO ip : ips) { + // Disassociate allocated IP's that are not in use + if ( !ip.isOneToOneNat() && !(ip.isSourceNat() && _networkModel.getNetwork(ip.getAssociatedWithNetworkId()) != null) && + !(_firewallDao.countRulesByIpId(ip.getId()) > 0) ) { + if (s_logger.isDebugEnabled()) { + s_logger.debug("Releasing Public IP addresses" + ip +" of vlan " + vlanDbId + " as part of Public IP" + + " range release to the system pool"); + } + success = success && _networkMgr.disassociatePublicIpAddress(ip.getId(), userId, caller); + } + } + if (!success) { + s_logger.warn("Some Public IP addresses that were not in use failed to be released as a part of" + + " vlan " + vlanDbId + "release to the system pool"); + } + } finally { + _vlanDao.releaseFromLockTable(vlanDbId); + } + } + + // A Public IP range can only be dedicated to one account at a time + if (_accountVlanMapDao.remove(acctVln.get(0).getId())) { + return true; + } else { + return false; + } + } + @Override public List csvTagsToList(String tags) { List tagsList = new ArrayList(); @@ -3957,14 +4089,14 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati @Override @DB - public boolean deleteAccountSpecificVirtualRanges(long accountId) { + public boolean releaseAccountSpecificVirtualRanges(long accountId) { List maps = _accountVlanMapDao.listAccountVlanMapsByAccount(accountId); boolean result = true; if (maps != null && !maps.isEmpty()) { Transaction txn = Transaction.currentTxn(); txn.start(); for (AccountVlanMapVO map : maps) { - if (!deleteVlanAndPublicIpRange(_accountMgr.getSystemUser().getId(), map.getVlanDbId(), + if (!releasePublicIpRange(map.getVlanDbId(), _accountMgr.getSystemUser().getId(), _accountMgr.getAccount(Account.ACCOUNT_ID_SYSTEM))) { result = false; } @@ -3972,10 +4104,10 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati if (result) { txn.commit(); } else { - s_logger.error("Failed to delete account specific virtual ip ranges for account id=" + accountId); + s_logger.error("Failed to release account specific virtual ip ranges for account id=" + accountId); } } else { - s_logger.trace("Account id=" + accountId + " has no account specific virtual ip ranges, nothing to delete"); + s_logger.trace("Account id=" + accountId + " has no account specific virtual ip ranges, nothing to release"); } return result; } diff --git a/server/src/com/cloud/network/NetworkManagerImpl.java b/server/src/com/cloud/network/NetworkManagerImpl.java index 62960116dce..43a098877df 100755 --- a/server/src/com/cloud/network/NetworkManagerImpl.java +++ b/server/src/com/cloud/network/NetworkManagerImpl.java @@ -188,6 +188,7 @@ import com.cloud.vm.ReservationContextImpl; import com.cloud.vm.UserVmVO; import com.cloud.vm.VMInstanceVO; import com.cloud.vm.VirtualMachine; +import com.cloud.vm.*; import com.cloud.vm.VirtualMachine.Type; import com.cloud.vm.VirtualMachineProfile; import com.cloud.vm.dao.NicDao; @@ -348,7 +349,7 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L } @DB - public PublicIp fetchNewPublicIp(long dcId, Long podId, Long vlanDbId, Account owner, VlanType vlanUse, + public PublicIp fetchNewPublicIp(long dcId, Long podId, List vlanDbIds, Account owner, VlanType vlanUse, Long guestNetworkId, boolean sourceNat, boolean assign, String requestedIp, boolean isSystem, Long vpcId) throws InsufficientAddressCapacityException { StringBuilder errorMessage = new StringBuilder("Unable to get ip adress in "); @@ -364,9 +365,9 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L errorMessage.append(" zone id=" + dcId); } - if (vlanDbId != null) { - sc.addAnd("vlanId", SearchCriteria.Op.EQ, vlanDbId); - errorMessage.append(", vlanId id=" + vlanDbId); + if ( vlanDbIds != null && !vlanDbIds.isEmpty() ) { + sc.setParameters("vlanId", vlanDbIds.toArray()); + errorMessage.append(", vlanId id=" + vlanDbIds.toArray()); } sc.setParameters("dc", dcId); @@ -526,14 +527,14 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L } // If account has Account specific ip ranges, try to allocate ip from there - Long vlanId = null; + List vlanIds = new ArrayList(); List maps = _accountVlanMapDao.listAccountVlanMapsByAccount(ownerId); if (maps != null && !maps.isEmpty()) { - vlanId = maps.get(0).getVlanDbId(); + vlanIds.add(maps.get(0).getVlanDbId()); } - ip = fetchNewPublicIp(dcId, null, vlanId, owner, VlanType.VirtualNetwork, guestNtwkId, + ip = fetchNewPublicIp(dcId, null, vlanIds, owner, VlanType.VirtualNetwork, guestNtwkId, isSourceNat, false, null, false, vpcId); IPAddressVO publicIp = ip.ip(); @@ -669,6 +670,7 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L VlanType vlanType = VlanType.VirtualNetwork; boolean assign = false; + boolean allocateFromDedicatedRange = false; if (Grouping.AllocationState.Disabled == zone.getAllocationState() && !_accountMgr.isRootAdmin(caller.getType())) { // zone is of type DataCenter. See DataCenterVO.java. @@ -702,8 +704,32 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L txn.start(); - ip = fetchNewPublicIp(zone.getId(), null, null, ipOwner, vlanType, null, - false, assign, null, isSystem, null); + // If account has dedicated Public IP ranges, allocate IP from the dedicated range + List vlanDbIds = new ArrayList(); + List maps = _accountVlanMapDao.listAccountVlanMapsByAccount(ipOwner.getId()); + for (AccountVlanMapVO map : maps) { + vlanDbIds.add(map.getVlanDbId()); + } + if (vlanDbIds != null && !vlanDbIds.isEmpty()) { + allocateFromDedicatedRange = true; + } + + try { + if (allocateFromDedicatedRange) { + ip = fetchNewPublicIp(zone.getId(), null, vlanDbIds, ipOwner, vlanType, null, + false, assign, null, isSystem, null); + } + } catch(InsufficientAddressCapacityException e) { + s_logger.warn("All IPs dedicated to account " + ipOwner.getId() + " has been acquired." + + " Now acquiring from the system pool"); + txn.close(); + allocateFromDedicatedRange = false; + } + + if (!allocateFromDedicatedRange) { + ip = fetchNewPublicIp(zone.getId(), null, null, ipOwner, vlanType, null, false, assign, null, + isSystem, null); + } if (ip == null) { @@ -1070,7 +1096,7 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L AssignIpAddressSearch = _ipAddressDao.createSearchBuilder(); AssignIpAddressSearch.and("dc", AssignIpAddressSearch.entity().getDataCenterId(), Op.EQ); AssignIpAddressSearch.and("allocated", AssignIpAddressSearch.entity().getAllocatedTime(), Op.NULL); - AssignIpAddressSearch.and("vlanId", AssignIpAddressSearch.entity().getVlanId(), Op.EQ); + AssignIpAddressSearch.and("vlanId", AssignIpAddressSearch.entity().getVlanId(), Op.IN); SearchBuilder vlanSearch = _vlanDao.createSearchBuilder(); vlanSearch.and("type", vlanSearch.entity().getVlanType(), Op.EQ); vlanSearch.and("networkId", vlanSearch.entity().getNetworkId(), Op.EQ); diff --git a/server/src/com/cloud/network/NetworkServiceImpl.java b/server/src/com/cloud/network/NetworkServiceImpl.java index 4eb620c4243..a8cbaa75017 100755 --- a/server/src/com/cloud/network/NetworkServiceImpl.java +++ b/server/src/com/cloud/network/NetworkServiceImpl.java @@ -697,15 +697,6 @@ public class NetworkServiceImpl extends ManagerBase implements NetworkService { throw new IllegalArgumentException("only ip addresses that belong to a virtual network may be disassociated."); } - // Check for account wide pool. It will have an entry for account_vlan_map. - if (_accountVlanMapDao.findAccountVlanMap(ipVO.getAllocatedToAccountId(), ipVO.getVlanId()) != null) { - //see IPaddressVO.java - InvalidParameterValueException ex = new InvalidParameterValueException("Sepcified IP address uuid belongs to" + - " Account wide IP pool and cannot be disassociated"); - ex.addProxyObject("user_ip_address", ipAddressId, "ipAddressId"); - throw ex; - } - // don't allow releasing system ip address if (ipVO.getSystem()) { InvalidParameterValueException ex = new InvalidParameterValueException("Can't release system IP address with specified id"); diff --git a/server/src/com/cloud/server/ManagementServerImpl.java b/server/src/com/cloud/server/ManagementServerImpl.java index af77ba5645f..b89de9e122f 100755 --- a/server/src/com/cloud/server/ManagementServerImpl.java +++ b/server/src/com/cloud/server/ManagementServerImpl.java @@ -2090,6 +2090,8 @@ public class ManagementServerImpl extends ManagerBase implements ManagementServe cmdList.add(CreateVlanIpRangeCmd.class); cmdList.add(DeleteVlanIpRangeCmd.class); cmdList.add(ListVlanIpRangesCmd.class); + cmdList.add(DedicatePublicIpRangeCmd.class); + cmdList.add(ReleasePublicIpRangeCmd.class); cmdList.add(AssignVMCmd.class); cmdList.add(MigrateVMCmd.class); cmdList.add(RecoverVMCmd.class); diff --git a/server/src/com/cloud/user/AccountManagerImpl.java b/server/src/com/cloud/user/AccountManagerImpl.java index 52ca79d5a60..417ec3f4523 100755 --- a/server/src/com/cloud/user/AccountManagerImpl.java +++ b/server/src/com/cloud/user/AccountManagerImpl.java @@ -683,13 +683,13 @@ public class AccountManagerImpl extends ManagerBase implements AccountManager, M accountCleanupNeeded = true; } - // delete account specific Virtual vlans (belong to system Public Network) - only when networks are cleaned + // release account specific Virtual vlans (belong to system Public Network) - only when networks are cleaned // up successfully if (networksDeleted) { - if (!_configMgr.deleteAccountSpecificVirtualRanges(accountId)) { + if (!_configMgr.releaseAccountSpecificVirtualRanges(accountId)) { accountCleanupNeeded = true; } else { - s_logger.debug("Account specific Virtual IP ranges " + " are successfully deleted as a part of account id=" + accountId + " cleanup."); + s_logger.debug("Account specific Virtual IP ranges " + " are successfully released as a part of account id=" + accountId + " cleanup."); } } diff --git a/server/test/com/cloud/configuration/ConfigurationManagerTest.java b/server/test/com/cloud/configuration/ConfigurationManagerTest.java new file mode 100644 index 00000000000..eeb10737a63 --- /dev/null +++ b/server/test/com/cloud/configuration/ConfigurationManagerTest.java @@ -0,0 +1,400 @@ +package com.cloud.configuration; + +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; +import java.lang.reflect.Field; + +import org.apache.cloudstack.api.command.admin.vlan.DedicatePublicIpRangeCmd; +import org.apache.cloudstack.api.command.admin.vlan.ReleasePublicIpRangeCmd; +import org.apache.log4j.Logger; +import org.junit.Before; +import org.junit.Test; +import org.mockito.Mock; +import org.mockito.MockitoAnnotations; + +import com.cloud.configuration.Resource.ResourceType; +import com.cloud.dc.AccountVlanMapVO; +import com.cloud.dc.DataCenterVO; +import com.cloud.dc.Vlan; +import com.cloud.dc.VlanVO; +import com.cloud.dc.DataCenter.NetworkType; +import com.cloud.dc.dao.AccountVlanMapDao; +import com.cloud.dc.dao.DataCenterDao; +import com.cloud.dc.dao.VlanDao; +import com.cloud.network.NetworkManager; +import com.cloud.network.dao.FirewallRulesDao; +import com.cloud.network.dao.IPAddressDao; +import com.cloud.network.dao.IPAddressVO; +import com.cloud.projects.ProjectManager; +import com.cloud.user.Account; +import com.cloud.user.AccountManager; +import com.cloud.user.AccountVO; +import com.cloud.user.ResourceLimitService; +import com.cloud.user.UserContext; +import com.cloud.user.dao.AccountDao; +import com.cloud.utils.db.Transaction; +import com.cloud.utils.net.Ip; + +import junit.framework.Assert; + +import static org.mockito.Matchers.*; +import static org.mockito.Mockito.when; +import static org.mockito.Mockito.doNothing; + +public class ConfigurationManagerTest { + + private static final Logger s_logger = Logger.getLogger(ConfigurationManagerTest.class); + + ConfigurationManagerImpl configurationMgr = new ConfigurationManagerImpl(); + + DedicatePublicIpRangeCmd dedicatePublicIpRangesCmd = new DedicatePublicIpRangeCmdExtn(); + Class _dedicatePublicIpRangeClass = dedicatePublicIpRangesCmd.getClass().getSuperclass(); + + ReleasePublicIpRangeCmd releasePublicIpRangesCmd = new ReleasePublicIpRangeCmdExtn(); + Class _releasePublicIpRangeClass = releasePublicIpRangesCmd.getClass().getSuperclass(); + + @Mock AccountManager _accountMgr; + @Mock ProjectManager _projectMgr; + @Mock ResourceLimitService _resourceLimitMgr; + @Mock NetworkManager _networkMgr; + @Mock AccountDao _accountDao; + @Mock VlanDao _vlanDao; + @Mock AccountVlanMapDao _accountVlanMapDao; + @Mock IPAddressDao _publicIpAddressDao; + @Mock DataCenterDao _zoneDao; + @Mock FirewallRulesDao _firewallDao; + + VlanVO vlan = new VlanVO(); + + @Before + public void setup() throws Exception { + MockitoAnnotations.initMocks(this); + configurationMgr._accountMgr = _accountMgr; + configurationMgr._projectMgr = _projectMgr; + configurationMgr._resourceLimitMgr = _resourceLimitMgr; + configurationMgr._networkMgr = _networkMgr; + configurationMgr._accountDao = _accountDao; + configurationMgr._vlanDao = _vlanDao; + configurationMgr._accountVlanMapDao = _accountVlanMapDao; + configurationMgr._publicIpAddressDao = _publicIpAddressDao; + configurationMgr._zoneDao = _zoneDao; + configurationMgr._firewallDao = _firewallDao; + + Account account = (Account) new AccountVO("testaccount", 1, "networkdomain", (short) 0, UUID.randomUUID().toString()); + when(configurationMgr._accountMgr.getAccount(anyLong())).thenReturn(account); + when(configurationMgr._accountDao.findActiveAccount(anyString(), anyLong())).thenReturn(account); + when(configurationMgr._accountMgr.getActiveAccountById(anyLong())).thenReturn(account); + + when(configurationMgr._publicIpAddressDao.countIPs(anyLong(), anyLong(), anyBoolean())).thenReturn(1); + + doNothing().when(configurationMgr._resourceLimitMgr).checkResourceLimit(any(Account.class), + any(ResourceType.class), anyLong()); + + when(configurationMgr._accountVlanMapDao.persist(any(AccountVlanMapVO.class))).thenReturn(new AccountVlanMapVO()); + + when(configurationMgr._vlanDao.acquireInLockTable(anyLong(), anyInt())).thenReturn(vlan); + + UserContext.registerContext(1, account, null, true); + + Field dedicateIdField = _dedicatePublicIpRangeClass.getDeclaredField("id"); + dedicateIdField.setAccessible(true); + dedicateIdField.set(dedicatePublicIpRangesCmd, 1L); + + Field accountNameField = _dedicatePublicIpRangeClass.getDeclaredField("accountName"); + accountNameField.setAccessible(true); + accountNameField.set(dedicatePublicIpRangesCmd, "accountname"); + + Field projectIdField = _dedicatePublicIpRangeClass.getDeclaredField("projectId"); + projectIdField.setAccessible(true); + projectIdField.set(dedicatePublicIpRangesCmd, null); + + Field domainIdField = _dedicatePublicIpRangeClass.getDeclaredField("domainId"); + domainIdField.setAccessible(true); + domainIdField.set(dedicatePublicIpRangesCmd, 1L); + + Field zoneIdField = _dedicatePublicIpRangeClass.getDeclaredField("zoneId"); + zoneIdField.setAccessible(true); + zoneIdField.set(dedicatePublicIpRangesCmd, 1L); + + Field releaseIdField = _releasePublicIpRangeClass.getDeclaredField("id"); + releaseIdField.setAccessible(true); + releaseIdField.set(releasePublicIpRangesCmd, 1L); + } + + @Test + public void testDedicatePublicIpRange() throws Exception { + + s_logger.info("Running tests for DedicatePublicIpRange API"); + + /* + * TEST 1: given valid parameters DedicatePublicIpRange should succeed + */ + runDedicatePublicIpRangePostiveTest(); + + /* + * TEST 2: given invalid public ip range DedicatePublicIpRange should fail + */ + runDedicatePublicIpRangeInvalidRange(); + /* + * TEST 3: given public IP range that is already dedicated to a different account DedicatePublicIpRange should fail + */ + runDedicatePublicIpRangeDedicatedRange(); + + /* + * TEST 4: given zone is of type Basic DedicatePublicIpRange should fail + */ + runDedicatePublicIpRangeInvalidZone(); + + /* + * TEST 5: given range is already allocated to a different account DedicatePublicIpRange should fail + */ + runDedicatePublicIpRangeIPAdressAllocated(); + } + + @Test + public void testReleasePublicIpRange() throws Exception { + + s_logger.info("Running tests for DedicatePublicIpRange API"); + + /* + * TEST 1: given valid parameters and no allocated public ip's in the range ReleasePublicIpRange should succeed + */ + runReleasePublicIpRangePostiveTest1(); + + /* + * TEST 2: given valid parameters ReleasePublicIpRange should succeed + */ + runReleasePublicIpRangePostiveTest2(); + + /* + * TEST 3: given range doesn't exist + */ + runReleasePublicIpRangeInvalidIpRange(); + + /* + * TEST 4: given range is not dedicated to any account + */ + runReleaseNonDedicatedPublicIpRange(); + } + + void runDedicatePublicIpRangePostiveTest() throws Exception { + Transaction txn = Transaction.open("runDedicatePublicIpRangePostiveTest"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); + + when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByAccount(anyLong())).thenReturn(null); + + DataCenterVO dc = new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", + null, null, NetworkType.Advanced, null, null, true, true, null, null); + when(configurationMgr._zoneDao.findById(anyLong())).thenReturn(dc); + + List ipAddressList = new ArrayList(); + IPAddressVO ipAddress = new IPAddressVO(new Ip("75.75.75.75"), 1, 0xaabbccddeeffL, 10, false); + ipAddressList.add(ipAddress); + when(configurationMgr._publicIpAddressDao.listByVlanId(anyLong())).thenReturn(ipAddressList); + + try { + Vlan result = configurationMgr.dedicatePublicIpRange(dedicatePublicIpRangesCmd); + Assert.assertNotNull(result); + } catch (Exception e) { + s_logger.info("exception in testing runDedicatePublicIpRangePostiveTest message: " + e.toString()); + } finally { + txn.close("runDedicatePublicIpRangePostiveTest"); + } + } + + void runDedicatePublicIpRangeInvalidRange() throws Exception { + Transaction txn = Transaction.open("runDedicatePublicIpRangeInvalidRange"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(null); + try { + configurationMgr.dedicatePublicIpRange(dedicatePublicIpRangesCmd); + } catch (Exception e) { + Assert.assertTrue(e.getMessage().contains("Please specify a valid Public IP range id")); + } finally { + txn.close("runDedicatePublicIpRangeInvalidRange"); + } + } + + void runDedicatePublicIpRangeDedicatedRange() throws Exception { + Transaction txn = Transaction.open("runDedicatePublicIpRangeDedicatedRange"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); + + // public ip range is already dedicated + List accountVlanMaps = new ArrayList(); + AccountVlanMapVO accountVlanMap = new AccountVlanMapVO(1, 1); + accountVlanMaps.add(accountVlanMap); + when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByVlan(anyLong())).thenReturn(accountVlanMaps); + + DataCenterVO dc = new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", + null, null, NetworkType.Advanced, null, null, true, true, null, null); + when(configurationMgr._zoneDao.findById(anyLong())).thenReturn(dc); + + List ipAddressList = new ArrayList(); + IPAddressVO ipAddress = new IPAddressVO(new Ip("75.75.75.75"), 1, 0xaabbccddeeffL, 10, false); + ipAddressList.add(ipAddress); + when(configurationMgr._publicIpAddressDao.listByVlanId(anyLong())).thenReturn(ipAddressList); + + try { + configurationMgr.dedicatePublicIpRange(dedicatePublicIpRangesCmd); + } catch (Exception e) { + Assert.assertTrue(e.getMessage().contains("Public IP range has already been dedicated")); + } finally { + txn.close("runDedicatePublicIpRangePublicIpRangeDedicated"); + } + } + + void runDedicatePublicIpRangeInvalidZone() throws Exception { + Transaction txn = Transaction.open("runDedicatePublicIpRangeInvalidZone"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); + + when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByVlan(anyLong())).thenReturn(null); + + // public ip range belongs to zone of type basic + DataCenterVO dc = new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", + null, null, NetworkType.Basic, null, null, true, true, null, null); + when(configurationMgr._zoneDao.findById(anyLong())).thenReturn(dc); + + List ipAddressList = new ArrayList(); + IPAddressVO ipAddress = new IPAddressVO(new Ip("75.75.75.75"), 1, 0xaabbccddeeffL, 10, false); + ipAddressList.add(ipAddress); + when(configurationMgr._publicIpAddressDao.listByVlanId(anyLong())).thenReturn(ipAddressList); + + try { + configurationMgr.dedicatePublicIpRange(dedicatePublicIpRangesCmd); + } catch (Exception e) { + Assert.assertTrue(e.getMessage().contains("Public IP range can be dedicated to an account only in the zone of type Advanced")); + } finally { + txn.close("runDedicatePublicIpRangeInvalidZone"); + } + } + + void runDedicatePublicIpRangeIPAdressAllocated() throws Exception { + Transaction txn = Transaction.open("runDedicatePublicIpRangeIPAdressAllocated"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); + + when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByAccount(anyLong())).thenReturn(null); + + DataCenterVO dc = new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", + null, null, NetworkType.Advanced, null, null, true, true, null, null); + when(configurationMgr._zoneDao.findById(anyLong())).thenReturn(dc); + + // one of the ip addresses of the range is allocated to different account + List ipAddressList = new ArrayList(); + IPAddressVO ipAddress = new IPAddressVO(new Ip("75.75.75.75"), 1, 0xaabbccddeeffL, 10, false); + ipAddress.setAllocatedToAccountId(1L); + ipAddressList.add(ipAddress); + when(configurationMgr._publicIpAddressDao.listByVlanId(anyLong())).thenReturn(ipAddressList); + + try { + configurationMgr.dedicatePublicIpRange(dedicatePublicIpRangesCmd); + } catch (Exception e) { + Assert.assertTrue(e.getMessage().contains("Public IP address in range is already allocated to another account")); + } finally { + txn.close("runDedicatePublicIpRangeIPAdressAllocated"); + } + } + + void runReleasePublicIpRangePostiveTest1() throws Exception { + Transaction txn = Transaction.open("runReleasePublicIpRangePostiveTest1"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); + + List accountVlanMaps = new ArrayList(); + AccountVlanMapVO accountVlanMap = new AccountVlanMapVO(1, 1); + accountVlanMaps.add(accountVlanMap); + when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByVlan(anyLong())).thenReturn(accountVlanMaps); + + // no allocated ip's + when(configurationMgr._publicIpAddressDao.countIPs(anyLong(), anyLong(), anyBoolean())).thenReturn(0); + + when(configurationMgr._accountVlanMapDao.remove(anyLong())).thenReturn(true); + try { + Boolean result = configurationMgr.releasePublicIpRange(releasePublicIpRangesCmd); + Assert.assertTrue(result); + } catch (Exception e) { + s_logger.info("exception in testing runReleasePublicIpRangePostiveTest1 message: " + e.toString()); + } finally { + txn.close("runReleasePublicIpRangePostiveTest1"); + } + } + + void runReleasePublicIpRangePostiveTest2() throws Exception { + Transaction txn = Transaction.open("runReleasePublicIpRangePostiveTest2"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); + + List accountVlanMaps = new ArrayList(); + AccountVlanMapVO accountVlanMap = new AccountVlanMapVO(1, 1); + accountVlanMaps.add(accountVlanMap); + when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByVlan(anyLong())).thenReturn(accountVlanMaps); + + when(configurationMgr._publicIpAddressDao.countIPs(anyLong(), anyLong(), anyBoolean())).thenReturn(1); + + List ipAddressList = new ArrayList(); + IPAddressVO ipAddress = new IPAddressVO(new Ip("75.75.75.75"), 1, 0xaabbccddeeffL, 10, false); + ipAddressList.add(ipAddress); + when(configurationMgr._publicIpAddressDao.listByVlanId(anyLong())).thenReturn(ipAddressList); + + when(configurationMgr._firewallDao.countRulesByIpId(anyLong())).thenReturn(0L); + + when(configurationMgr._networkMgr.disassociatePublicIpAddress(anyLong(), anyLong(), any(Account.class))).thenReturn(true); + + when(configurationMgr._vlanDao.releaseFromLockTable(anyLong())).thenReturn(true); + + when(configurationMgr._accountVlanMapDao.remove(anyLong())).thenReturn(true); + try { + Boolean result = configurationMgr.releasePublicIpRange(releasePublicIpRangesCmd); + Assert.assertTrue(result); + } catch (Exception e) { + s_logger.info("exception in testing runReleasePublicIpRangePostiveTest2 message: " + e.toString()); + } finally { + txn.close("runReleasePublicIpRangePostiveTest2"); + } + } + + void runReleasePublicIpRangeInvalidIpRange() throws Exception { + Transaction txn = Transaction.open("runReleasePublicIpRangeInvalidIpRange"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(null); + try { + configurationMgr.releasePublicIpRange(releasePublicIpRangesCmd); + } catch (Exception e) { + Assert.assertTrue(e.getMessage().contains("Please specify a valid IP range id")); + } finally { + txn.close("runReleasePublicIpRangeInvalidIpRange"); + } + } + + void runReleaseNonDedicatedPublicIpRange() throws Exception { + Transaction txn = Transaction.open("runReleaseNonDedicatedPublicIpRange"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); + + when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByVlan(anyLong())).thenReturn(null); + try { + configurationMgr.releasePublicIpRange(releasePublicIpRangesCmd); + } catch (Exception e) { + Assert.assertTrue(e.getMessage().contains("as it not dedicated to any account")); + } finally { + txn.close("runReleaseNonDedicatedPublicIpRange"); + } + } + + + public class DedicatePublicIpRangeCmdExtn extends DedicatePublicIpRangeCmd { + public long getEntityOwnerId() { + return 1; + } + } + + public class ReleasePublicIpRangeCmdExtn extends ReleasePublicIpRangeCmd { + public long getEntityOwnerId() { + return 1; + } + } +} \ No newline at end of file diff --git a/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java b/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java index d96e831cfeb..f781e61e671 100644 --- a/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java +++ b/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java @@ -40,7 +40,9 @@ import org.apache.cloudstack.api.command.admin.offering.UpdateServiceOfferingCmd import org.apache.cloudstack.api.command.admin.pod.DeletePodCmd; import org.apache.cloudstack.api.command.admin.pod.UpdatePodCmd; import org.apache.cloudstack.api.command.admin.vlan.CreateVlanIpRangeCmd; +import org.apache.cloudstack.api.command.admin.vlan.DedicatePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.vlan.DeleteVlanIpRangeCmd; +import org.apache.cloudstack.api.command.admin.vlan.ReleasePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.zone.CreateZoneCmd; import org.apache.cloudstack.api.command.admin.zone.DeleteZoneCmd; import org.apache.cloudstack.api.command.admin.zone.UpdateZoneCmd; @@ -544,7 +546,7 @@ public class MockConfigurationManagerImpl extends ManagerBase implements Configu * @see com.cloud.configuration.ConfigurationManager#deleteAccountSpecificVirtualRanges(long) */ @Override - public boolean deleteAccountSpecificVirtualRanges(long accountId) { + public boolean releaseAccountSpecificVirtualRanges(long accountId) { // TODO Auto-generated method stub return false; } @@ -613,5 +615,33 @@ public class MockConfigurationManagerImpl extends ManagerBase implements Configu return null; } + @Override + public Vlan dedicatePublicIpRange(DedicatePublicIpRangeCmd cmd) + throws ResourceAllocationException { + // TODO Auto-generated method stub + return null; + } + + @Override + public boolean releasePublicIpRange(ReleasePublicIpRangeCmd cmd) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean releasePublicIpRange(long userId, long vlanDbId, + Account caller) { + // TODO Auto-generated method stub + return false; + } + + @Override + public Vlan dedicatePublicIpRange(Long vlanDbId, String accountName, + Long domainId, Long zoneId, Long projectId) + throws ResourceAllocationException { + // TODO Auto-generated method stub + return null; + } + } diff --git a/test/integration/component/test_public_ip_range.py b/test/integration/component/test_public_ip_range.py new file mode 100644 index 00000000000..1cb2e48acd7 --- /dev/null +++ b/test/integration/component/test_public_ip_range.py @@ -0,0 +1,149 @@ +# 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. +""" P1 tests for Dedicating Public IP addresses +""" +#Import Local Modules +import marvin +from nose.plugins.attrib import attr +from marvin.cloudstackTestCase import * +from marvin.cloudstackAPI import * +from marvin.integration.lib.utils import * +from marvin.integration.lib.base import * +from marvin.integration.lib.common import * +import datetime + +class Services: + """Test Dedicating Public IP addresses + """ + + def __init__(self): + self.services = { + "domain": { + "name": "Domain", + }, + "account": { + "email": "test@test.com", + "firstname": "Test", + "lastname": "User", + "username": "test", + # Random characters are appended for unique + # username + "password": "password", + }, + "gateway": "10.102.196.1", + "netmask": "255.255.255.0", + "forvirtualnetwork": "true", + "startip": "10.102.196.70", + "endip": "10.102.196.73", + "zoneid": "1", + "podid": "", + "vlan": "101", + "sleep": 60, + "timeout": 10, + } + +class TesDedicatePublicIPRange(cloudstackTestCase): + + @classmethod + def setUpClass(cls): + cls.api_client = super(TesDedicatePublicIPRange, cls).getClsTestClient().getApiClient() + cls.services = Services().services + # Get Zone, Domain + cls.domain = get_domain(cls.api_client, cls.services) + cls.zone = get_zone(cls.api_client, cls.services) + + # Create Account, VMs etc + cls.account = Account.create( + cls.api_client, + cls.services["account"], + domainid=cls.domain.id + ) + cls._cleanup = [ + #cls.account, + ] + return + + @classmethod + def tearDownClass(cls): + try: + # Cleanup resources used + cleanup_resources(cls.api_client, cls._cleanup) + except Exception as e: + raise Exception("Warning: Exception during cleanup : %s" % e) + return + + def setUp(self): + self.apiclient = self.testClient.getApiClient() + self.dbclient = self.testClient.getDbConnection() + self.cleanup = [] + return + + def tearDown(self): + try: + # Clean up + cleanup_resources(self.apiclient, self.cleanup) + except Exception as e: + raise Exception("Warning: Exception during cleanup : %s" % e) + return + + @attr(tags = ["publiciprange", "dedicate"]) + def test_createPublicIpRange(self): + """Test create public IP range + """ + + + # Validate the following: + # 1. Create public IP range. + # 2. Created IP range should be present, verify with listVlanIpRanges + + self.debug("Creating Public IP range") + self.public_ip_range = PublicIpRange.create( + self.api_client, + self.services + ) + list_public_ip_range_response = PublicIpRange.list( + self.apiclient, + id=self.public_ip_range.vlan.id + ) + self.debug( + "Verify listPublicIpRanges response for public ip ranges: %s" \ + % self.public_ip_range.vlan.id + ) + self.assertEqual( + isinstance(list_public_ip_range_response, list), + True, + "Check for list Public IP range response" + ) + public_ip_response = list_public_ip_range_response[0] + self.assertEqual( + public_ip_response.id, + self.public_ip_range.vlan.id, + "Check public ip range response id is in listVlanIpRanges" + ) + self.debug("Dedicating Public IP range"); + self.debug("Vlan id %s" % self.public_ip_range.vlan.id); + self.debug("Zone id %s" % self.zone.id); + self.debug("Account name %s" % self.account.account.name); + self.debug("Domain id %s" % self.account.account.domainid); + dedicate_public_ip_range_response = PublicIpRange.dedicate( + self.apiclient, + self.public_ip_range.vlan.id, + zoneid=self.zone.id, + account=self.account.account.name, + domainid=self.account.account.domainid + ) + return diff --git a/tools/marvin/marvin/integration/lib/base.py b/tools/marvin/marvin/integration/lib/base.py index f3370eb3190..0e117bbdfc2 100644 --- a/tools/marvin/marvin/integration/lib/base.py +++ b/tools/marvin/marvin/integration/lib/base.py @@ -1882,6 +1882,17 @@ class PublicIpRange: [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listVlanIpRanges(cmd)) + @classmethod + def dedicate(cls, apiclient, id, zoneid, account=None, domainid=None, projectid=None): + """Dedicate VLAN IP range""" + + cmd = dedicatePublicIpRange.dedicatePublicIpRangeCmd() + cmd.id = id + cmd.account = account + cmd.domainid = domainid + cmd.projectid = projectid + cmd.zoneid = zoneid + return PublicIpRange(apiclient.dedicatePublicIpRange(cmd).__dict__) class SecondaryStorage: """Manage Secondary storage""" From bf72a36ea809ec0f9b354bf6a72dd2a09e1fcf6f Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Mon, 8 Apr 2013 14:39:18 -0700 Subject: [PATCH 019/607] CLOUDSTACK-1974: cloudstack UI - Infrastructure menu - zone detail - public traffic type - IP Ranges tab - add new action "Release from account", "Add Account" for existing IP Ranges. --- ui/scripts/system.js | 78 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 77 insertions(+), 1 deletion(-) diff --git a/ui/scripts/system.js b/ui/scripts/system.js index 8d08584dc60..d89f6b69dcd 100644 --- a/ui/scripts/system.js +++ b/ui/scripts/system.js @@ -588,7 +588,83 @@ } }); } - } + }, + /* + releaseFromAccount: { + label: 'Release from Account', + action: function(args) { + $.ajax({ + url: createURL('releasePublicIpRange'), + data: { + id: args.context.multiRule[0].id + }, + success: function(json) { + args.response.success({ + notification: { + label: 'release from account', + poll: function(args) { + args.complete(); + } + } + }); + }, + error: function(json) { + args.response.error(parseXMLHttpResponse(json)); + } + }); + } + }, + addAccount: { + label: 'Add Account', + createForm: { + title: 'Add Account', + fields: { + account: { label: 'Account' }, + domainid: { + label: 'Domain', + select: function(args) { + $.ajax({ + url: createURL('listDomains'), + data: { listAll: true }, + success: function(json) { + args.response.success({ + data: $.map(json.listdomainsresponse.domain, function(domain) { + return { + id: domain.id, + description: domain.path + }; + }) + }); + } + }); + } + } + } + }, + action: function(args) { + var data = { + id: args.context.multiRule[0].id + }; + $.ajax({ + url: createURL('dedicatePublicIpRange'), + data: data, + success: function(json) { + args.response.success({ + notification: { + label: 'Add Account', + poll: function(args) { + args.complete(); + } + } + }); + }, + error: function(json) { + args.response.error(parseXMLHttpResponse(json)); + } + }); + } + } + */ }, dataProvider: function(args) { $.ajax({ From 564a850f1b6aa227b02c732d8f095569858ec3c0 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Mon, 8 Apr 2013 16:37:27 -0700 Subject: [PATCH 020/607] WIP --- ui/scripts/instances.js | 2 +- ui/scripts/ui/widgets/detailView.js | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ui/scripts/instances.js b/ui/scripts/instances.js index d4cc57f57b9..3c9696da599 100644 --- a/ui/scripts/instances.js +++ b/ui/scripts/instances.js @@ -1284,7 +1284,7 @@ }, // Remove NIC/Network from VM - remove: { + destroy: { label: 'label.action.delete.network', messages: { confirm: function(args) { diff --git a/ui/scripts/ui/widgets/detailView.js b/ui/scripts/ui/widgets/detailView.js index ddb62f02fde..54f4166cae0 100644 --- a/ui/scripts/ui/widgets/detailView.js +++ b/ui/scripts/ui/widgets/detailView.js @@ -57,7 +57,10 @@ * Default behavior for actions -- just show a confirmation popup and add notification */ standard: function($detailView, args, additional) { - var action = args.actions[args.actionName]; + var tab = args.tabs[args.activeTab]; + var isMultiple = tab.multiple; + + var action = isMultiple ? tab.actions[args.actionName] : args.actions[args.actionName]; var preAction = action.preAction; var notification = action.notification ? action.notification : {}; @@ -1078,7 +1081,7 @@ } // Add action bar - if (tabData.actions) { + if (tabData.multiple && tabData.actions) { var $actions = makeActionButtons(tabData.actions, { actionFilter: tabData.actions.actionFilter, data: item, From 3cbbe2bb04da75147b8060955cbfb32e222f6780 Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Mon, 8 Apr 2013 16:51:10 -0700 Subject: [PATCH 021/607] RAT check broken by d6ed8d7cb. Fix --- .../ConfigurationManagerTest.java | 37 +++++++++++++++---- 1 file changed, 29 insertions(+), 8 deletions(-) diff --git a/server/test/com/cloud/configuration/ConfigurationManagerTest.java b/server/test/com/cloud/configuration/ConfigurationManagerTest.java index eeb10737a63..321f605a1cc 100644 --- a/server/test/com/cloud/configuration/ConfigurationManagerTest.java +++ b/server/test/com/cloud/configuration/ConfigurationManagerTest.java @@ -1,9 +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.configuration; +import static org.mockito.Matchers.any; +import static org.mockito.Matchers.anyBoolean; +import static org.mockito.Matchers.anyInt; +import static org.mockito.Matchers.anyLong; +import static org.mockito.Matchers.anyString; +import static org.mockito.Mockito.doNothing; +import static org.mockito.Mockito.when; + +import java.lang.reflect.Field; import java.util.ArrayList; import java.util.List; import java.util.UUID; -import java.lang.reflect.Field; + +import junit.framework.Assert; import org.apache.cloudstack.api.command.admin.vlan.DedicatePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.vlan.ReleasePublicIpRangeCmd; @@ -15,10 +42,10 @@ import org.mockito.MockitoAnnotations; import com.cloud.configuration.Resource.ResourceType; import com.cloud.dc.AccountVlanMapVO; +import com.cloud.dc.DataCenter.NetworkType; import com.cloud.dc.DataCenterVO; import com.cloud.dc.Vlan; import com.cloud.dc.VlanVO; -import com.cloud.dc.DataCenter.NetworkType; import com.cloud.dc.dao.AccountVlanMapDao; import com.cloud.dc.dao.DataCenterDao; import com.cloud.dc.dao.VlanDao; @@ -36,12 +63,6 @@ import com.cloud.user.dao.AccountDao; import com.cloud.utils.db.Transaction; import com.cloud.utils.net.Ip; -import junit.framework.Assert; - -import static org.mockito.Matchers.*; -import static org.mockito.Mockito.when; -import static org.mockito.Mockito.doNothing; - public class ConfigurationManagerTest { private static final Logger s_logger = Logger.getLogger(ConfigurationManagerTest.class); From 67a99cbbc3f0c415a7a6179e395e7a8b5655f6f0 Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Mon, 8 Apr 2013 17:07:14 -0700 Subject: [PATCH 022/607] CLOUDSTACK-524: in some cases (especially the built-in CentOS template), the template downloader does not use the configured http proxy The DownloadProgress command is used to restart failed or stuck download jobs -- It would not include the proxy information, unlike the DownloadCommand which always did Signed-off-by: Chiradeep Vittal --- .../cloud/storage/download/DownloadMonitorImpl.java | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/server/src/com/cloud/storage/download/DownloadMonitorImpl.java b/server/src/com/cloud/storage/download/DownloadMonitorImpl.java index 7ed6f3f27d6..ee8df745fc7 100755 --- a/server/src/com/cloud/storage/download/DownloadMonitorImpl.java +++ b/server/src/com/cloud/storage/download/DownloadMonitorImpl.java @@ -37,21 +37,17 @@ import com.cloud.agent.AgentManager; import com.cloud.agent.Listener; import com.cloud.agent.api.Answer; import com.cloud.agent.api.Command; - import com.cloud.agent.api.storage.DeleteTemplateCommand; import com.cloud.agent.api.storage.DeleteVolumeCommand; import com.cloud.agent.api.storage.DownloadCommand; - import com.cloud.agent.api.storage.DownloadCommand.Proxy; import com.cloud.agent.api.storage.DownloadCommand.ResourceType; -import com.cloud.agent.api.storage.DownloadProgressCommand.RequestType; - import com.cloud.agent.api.storage.DownloadProgressCommand; +import com.cloud.agent.api.storage.DownloadProgressCommand.RequestType; import com.cloud.agent.api.storage.ListTemplateAnswer; import com.cloud.agent.api.storage.ListTemplateCommand; import com.cloud.agent.api.storage.ListVolumeAnswer; import com.cloud.agent.api.storage.ListVolumeCommand; - import com.cloud.agent.manager.Commands; import com.cloud.alert.AlertManager; import com.cloud.configuration.Config; @@ -72,13 +68,12 @@ import com.cloud.host.dao.HostDao; import com.cloud.hypervisor.Hypervisor.HypervisorType; import com.cloud.resource.ResourceManager; import com.cloud.storage.Storage.ImageFormat; - import com.cloud.storage.StorageManager; import com.cloud.storage.SwiftVO; import com.cloud.storage.VMTemplateHostVO; import com.cloud.storage.VMTemplateStorageResourceAssoc; -import com.cloud.storage.VMTemplateVO; import com.cloud.storage.VMTemplateStorageResourceAssoc.Status; +import com.cloud.storage.VMTemplateVO; import com.cloud.storage.VMTemplateZoneVO; import com.cloud.storage.VolumeHostVO; import com.cloud.storage.VolumeVO; @@ -91,7 +86,6 @@ import com.cloud.storage.dao.VMTemplateSwiftDao; import com.cloud.storage.dao.VMTemplateZoneDao; import com.cloud.storage.dao.VolumeDao; import com.cloud.storage.dao.VolumeHostDao; - import com.cloud.storage.secondary.SecondaryStorageVmManager; import com.cloud.storage.swift.SwiftManager; import com.cloud.storage.template.TemplateConstants; @@ -284,10 +278,10 @@ public class DownloadMonitorImpl extends ManagerBase implements DownloadMonitor String sourceChecksum = this.templateMgr.getChecksum(srcTmpltHost.getHostId(), srcTmpltHost.getInstallPath()); DownloadCommand dcmd = new DownloadCommand(destServer.getStorageUrl(), url, template, TemplateConstants.DEFAULT_HTTP_AUTH_USER, _copyAuthPasswd, maxTemplateSizeInBytes); - dcmd.setProxy(getHttpProxy()); if (downloadJobExists) { dcmd = new DownloadProgressCommand(dcmd, destTmpltHost.getJobId(), RequestType.GET_OR_RESTART); } + dcmd.setProxy(getHttpProxy()); dcmd.setChecksum(sourceChecksum); // We need to set the checksum as the source template might be a compressed url and have cksum for compressed image. Bug #10775 HostVO ssAhost = _ssvmMgr.pickSsvmHost(destServer); if( ssAhost == null ) { From 98bc240d2a7f62a680a569b3789a65923906cd00 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Mon, 8 Apr 2013 17:15:24 -0700 Subject: [PATCH 023/607] Revert "Dedicate Public IP range" This reverts commit d6ed8d7cb53da08cacd04c3ac7435da5601e7f06. Conflicts: server/test/com/cloud/configuration/ConfigurationManagerTest.java --- .../configuration/ConfigurationService.java | 6 - api/src/com/cloud/event/EventTypes.java | 2 - .../admin/vlan/DedicatePublicIpRangeCmd.java | 116 ----- .../admin/vlan/ReleasePublicIpRangeCmd.java | 77 ---- client/tomcatconf/commands.properties.in | 2 - .../configuration/ConfigurationManager.java | 7 +- .../ConfigurationManagerImpl.java | 180 +------- .../com/cloud/network/NetworkManagerImpl.java | 46 +- .../com/cloud/network/NetworkServiceImpl.java | 9 + .../cloud/server/ManagementServerImpl.java | 2 - .../com/cloud/user/AccountManagerImpl.java | 6 +- .../ConfigurationManagerTest.java | 421 ------------------ .../vpc/MockConfigurationManagerImpl.java | 32 +- .../component/test_public_ip_range.py | 149 ------- tools/marvin/marvin/integration/lib/base.py | 11 - 15 files changed, 48 insertions(+), 1018 deletions(-) delete mode 100644 api/src/org/apache/cloudstack/api/command/admin/vlan/DedicatePublicIpRangeCmd.java delete mode 100644 api/src/org/apache/cloudstack/api/command/admin/vlan/ReleasePublicIpRangeCmd.java delete mode 100644 server/test/com/cloud/configuration/ConfigurationManagerTest.java delete mode 100644 test/integration/component/test_public_ip_range.py diff --git a/api/src/com/cloud/configuration/ConfigurationService.java b/api/src/com/cloud/configuration/ConfigurationService.java index 6937d0b64de..e63fcece525 100644 --- a/api/src/com/cloud/configuration/ConfigurationService.java +++ b/api/src/com/cloud/configuration/ConfigurationService.java @@ -35,9 +35,7 @@ import org.apache.cloudstack.api.command.admin.offering.UpdateServiceOfferingCmd import org.apache.cloudstack.api.command.admin.pod.DeletePodCmd; import org.apache.cloudstack.api.command.admin.pod.UpdatePodCmd; import org.apache.cloudstack.api.command.admin.vlan.CreateVlanIpRangeCmd; -import org.apache.cloudstack.api.command.admin.vlan.DedicatePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.vlan.DeleteVlanIpRangeCmd; -import org.apache.cloudstack.api.command.admin.vlan.ReleasePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.zone.CreateZoneCmd; import org.apache.cloudstack.api.command.admin.zone.DeleteZoneCmd; import org.apache.cloudstack.api.command.admin.zone.UpdateZoneCmd; @@ -236,10 +234,6 @@ public interface ConfigurationService { boolean deleteVlanIpRange(DeleteVlanIpRangeCmd cmd); - Vlan dedicatePublicIpRange(DedicatePublicIpRangeCmd cmd) throws ResourceAllocationException; - - boolean releasePublicIpRange(ReleasePublicIpRangeCmd cmd); - NetworkOffering createNetworkOffering(CreateNetworkOfferingCmd cmd); NetworkOffering updateNetworkOffering(UpdateNetworkOfferingCmd cmd); diff --git a/api/src/com/cloud/event/EventTypes.java b/api/src/com/cloud/event/EventTypes.java index 0dc16f3de7a..704a1bfc02c 100755 --- a/api/src/com/cloud/event/EventTypes.java +++ b/api/src/com/cloud/event/EventTypes.java @@ -223,8 +223,6 @@ public class EventTypes { // VLANs/IP ranges public static final String EVENT_VLAN_IP_RANGE_CREATE = "VLAN.IP.RANGE.CREATE"; public static final String EVENT_VLAN_IP_RANGE_DELETE = "VLAN.IP.RANGE.DELETE"; - public static final String EVENT_VLAN_IP_RANGE_DEDICATE = "VLAN.IP.RANGE.DEDICATE"; - public static final String EVENT_VLAN_IP_RANGE_RELEASE = "VLAN.IP.RANGE.RELEASE"; public static final String EVENT_STORAGE_IP_RANGE_CREATE = "STORAGE.IP.RANGE.CREATE"; public static final String EVENT_STORAGE_IP_RANGE_DELETE = "STORAGE.IP.RANGE.DELETE"; diff --git a/api/src/org/apache/cloudstack/api/command/admin/vlan/DedicatePublicIpRangeCmd.java b/api/src/org/apache/cloudstack/api/command/admin/vlan/DedicatePublicIpRangeCmd.java deleted file mode 100644 index c62857ca964..00000000000 --- a/api/src/org/apache/cloudstack/api/command/admin/vlan/DedicatePublicIpRangeCmd.java +++ /dev/null @@ -1,116 +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.vlan; - -import org.apache.cloudstack.api.APICommand; -import org.apache.cloudstack.api.ApiConstants; -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.DomainResponse; -import org.apache.cloudstack.api.response.ProjectResponse; -import org.apache.cloudstack.api.response.VlanIpRangeResponse; -import org.apache.cloudstack.api.response.ZoneResponse; -import org.apache.log4j.Logger; - -import com.cloud.dc.Vlan; -import com.cloud.exception.ResourceAllocationException; -import com.cloud.exception.ResourceUnavailableException; -import com.cloud.user.Account; - -@APICommand(name = "dedicatePublicIpRange", description="Dedicates a Public IP range to an account", responseObject=VlanIpRangeResponse.class) -public class DedicatePublicIpRangeCmd extends BaseCmd { - public static final Logger s_logger = Logger.getLogger(DedicatePublicIpRangeCmd.class.getName()); - - private static final String s_name = "dedicatepubliciprangeresponse"; - - ///////////////////////////////////////////////////// - //////////////// API parameters ///////////////////// - ///////////////////////////////////////////////////// - - @Parameter(name=ApiConstants.ID, type=CommandType.UUID, entityType = VlanIpRangeResponse.class, - required=true, description="the id of the VLAN IP range") - private Long id; - - @Parameter(name=ApiConstants.ACCOUNT, type=CommandType.STRING, required=true, - description="account who will own the VLAN") - private String accountName; - - @Parameter(name=ApiConstants.PROJECT_ID, type=CommandType.UUID, entityType = ProjectResponse.class, - description="project who will own the VLAN") - private Long projectId; - - @Parameter(name=ApiConstants.DOMAIN_ID, type=CommandType.UUID, entityType = DomainResponse.class, - required=true, description="domain ID of the account owning a VLAN") - private Long domainId; - - @Parameter(name=ApiConstants.ZONE_ID, type=CommandType.UUID, entityType = ZoneResponse.class, - required=true, description="the Zone ID of the VLAN IP range") - private Long zoneId; - - ///////////////////////////////////////////////////// - /////////////////// Accessors /////////////////////// - ///////////////////////////////////////////////////// - - public Long getId() { - return id; - } - - public String getAccountName() { - return accountName; - } - - public Long getDomainId() { - return domainId; - } - - public Long getProjectId() { - return projectId; - } - - public Long getZoneId() { - return zoneId; - } - - ///////////////////////////////////////////////////// - /////////////// API Implementation/////////////////// - ///////////////////////////////////////////////////// - - @Override - public String getCommandName() { - return s_name; - } - - @Override - public long getEntityOwnerId() { - return Account.ACCOUNT_ID_SYSTEM; - } - - @Override - public void execute() throws ResourceUnavailableException, ResourceAllocationException { - Vlan result = _configService.dedicatePublicIpRange(this); - if (result != null) { - VlanIpRangeResponse response = _responseGenerator.createVlanIpRangeResponse(result); - response.setResponseName(getCommandName()); - this.setResponseObject(response); - } else { - throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to dedicate vlan ip range"); - } - } - -} diff --git a/api/src/org/apache/cloudstack/api/command/admin/vlan/ReleasePublicIpRangeCmd.java b/api/src/org/apache/cloudstack/api/command/admin/vlan/ReleasePublicIpRangeCmd.java deleted file mode 100644 index 91cc7d33da9..00000000000 --- a/api/src/org/apache/cloudstack/api/command/admin/vlan/ReleasePublicIpRangeCmd.java +++ /dev/null @@ -1,77 +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.vlan; - -import org.apache.cloudstack.api.APICommand; -import org.apache.cloudstack.api.ApiConstants; -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.SuccessResponse; -import org.apache.cloudstack.api.response.VlanIpRangeResponse; -import org.apache.log4j.Logger; - -import com.cloud.user.Account; - -@APICommand(name = "releasePublicIpRange", description="Releases a Public IP range back to the system pool", responseObject=SuccessResponse.class) -public class ReleasePublicIpRangeCmd extends BaseCmd { - public static final Logger s_logger = Logger.getLogger(ReleasePublicIpRangeCmd.class.getName()); - - private static final String s_name = "releasepubliciprangeresponse"; - - ///////////////////////////////////////////////////// - //////////////// API parameters ///////////////////// - ///////////////////////////////////////////////////// - - @Parameter(name=ApiConstants.ID, type=CommandType.UUID, entityType = VlanIpRangeResponse.class, - required=true, description="the id of the Public IP range") - private Long id; - - ///////////////////////////////////////////////////// - /////////////////// Accessors /////////////////////// - ///////////////////////////////////////////////////// - - public Long getId() { - return id; - } - - ///////////////////////////////////////////////////// - /////////////// API Implementation/////////////////// - ///////////////////////////////////////////////////// - - @Override - public String getCommandName() { - return s_name; - } - - @Override - public long getEntityOwnerId() { - return Account.ACCOUNT_ID_SYSTEM; - } - - @Override - public void execute(){ - boolean result = _configService.releasePublicIpRange(this); - if (result) { - SuccessResponse response = new SuccessResponse(getCommandName()); - this.setResponseObject(response); - } else { - throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to release public ip range"); - } - } -} diff --git a/client/tomcatconf/commands.properties.in b/client/tomcatconf/commands.properties.in index 3e556726e64..163c2cee861 100644 --- a/client/tomcatconf/commands.properties.in +++ b/client/tomcatconf/commands.properties.in @@ -124,8 +124,6 @@ listDiskOfferings=15 createVlanIpRange=1 deleteVlanIpRange=1 listVlanIpRanges=1 -dedicatePublicIpRange=1 -releasePublicIpRange=1 #### address commands associateIpAddress=15 diff --git a/server/src/com/cloud/configuration/ConfigurationManager.java b/server/src/com/cloud/configuration/ConfigurationManager.java index 52b32f4d917..20e98845ac0 100644 --- a/server/src/com/cloud/configuration/ConfigurationManager.java +++ b/server/src/com/cloud/configuration/ConfigurationManager.java @@ -30,7 +30,6 @@ import com.cloud.dc.Vlan; import com.cloud.exception.ConcurrentOperationException; import com.cloud.exception.InsufficientCapacityException; import com.cloud.exception.InvalidParameterValueException; -import com.cloud.exception.ResourceAllocationException; import com.cloud.network.Network; import com.cloud.network.Network.Capability; import com.cloud.network.Network.Provider; @@ -150,10 +149,6 @@ public interface ConfigurationManager extends ConfigurationService, Manager { */ boolean deleteVlanAndPublicIpRange(long userId, long vlanDbId, Account caller); - boolean releasePublicIpRange(long userId, long vlanDbId, Account caller); - - Vlan dedicatePublicIpRange(Long vlanDbId, String accountName, Long domainId, Long zoneId, Long projectId) throws ResourceAllocationException; - /** * Converts a comma separated list of tags to a List * @@ -215,7 +210,7 @@ public interface ConfigurationManager extends ConfigurationService, Manager { ClusterVO getCluster(long id); - boolean releaseAccountSpecificVirtualRanges(long accountId); + boolean deleteAccountSpecificVirtualRanges(long accountId); /** * Edits a pod in the database. Will not allow you to edit pods that are being used anywhere in the system. diff --git a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java index 86d30b417e4..1526fb0e125 100755 --- a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java +++ b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java @@ -56,9 +56,7 @@ import org.apache.cloudstack.api.command.admin.offering.UpdateServiceOfferingCmd import org.apache.cloudstack.api.command.admin.pod.DeletePodCmd; import org.apache.cloudstack.api.command.admin.pod.UpdatePodCmd; import org.apache.cloudstack.api.command.admin.vlan.CreateVlanIpRangeCmd; -import org.apache.cloudstack.api.command.admin.vlan.DedicatePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.vlan.DeleteVlanIpRangeCmd; -import org.apache.cloudstack.api.command.admin.vlan.ReleasePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.zone.CreateZoneCmd; import org.apache.cloudstack.api.command.admin.zone.DeleteZoneCmd; import org.apache.cloudstack.api.command.admin.zone.UpdateZoneCmd; @@ -2308,6 +2306,9 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati throw new InvalidParameterValueException("Gateway, netmask and zoneId have to be passed in for virtual and direct untagged networks"); } + // if it's an account specific range, associate ip address list to the account + boolean associateIpRangeToAccount = false; + if (forVirtualNetwork) { if (vlanOwner != null) { @@ -2315,6 +2316,8 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati //check resource limits _resourceLimitMgr.checkResourceLimit(vlanOwner, ResourceType.public_ip, accountIpRange); + + associateIpRangeToAccount = true; } } @@ -2329,6 +2332,21 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati endIP, vlanGateway, vlanNetmask, vlanId, vlanOwner, startIPv6, endIPv6, ip6Gateway, ip6Cidr); txn.commit(); + if (associateIpRangeToAccount) { + _networkMgr.associateIpAddressListToAccount(userId, vlanOwner.getId(), zoneId, vlan.getId(), null); + } + + // Associate ips to the network + if (associateIpRangeToAccount) { + if (network.getState() == Network.State.Implemented) { + s_logger.debug("Applying ip associations for vlan id=" + vlanId + " in network " + network); + if (!_networkMgr.applyIpAssociations(network, false)) { + s_logger.warn("Failed to apply ip associations for vlan id=1 as a part of add vlan range for account id=" + vlanOwner.getId()); + } + } else { + s_logger.trace("Network id=" + network.getId() + " is not Implemented, no need to apply ipAssociations"); + } + } return vlan; } @@ -2680,156 +2698,6 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati } } - @Override - @ActionEvent(eventType = EventTypes.EVENT_VLAN_IP_RANGE_DEDICATE, eventDescription = "dedicating vlan ip range", async = false) - public Vlan dedicatePublicIpRange(DedicatePublicIpRangeCmd cmd) throws ResourceAllocationException { - Long vlanDbId = cmd.getId(); - String accountName = cmd.getAccountName(); - Long domainId = cmd.getDomainId(); - Long zoneId = cmd.getZoneId(); - Long projectId = cmd.getProjectId(); - - Vlan vlan = dedicatePublicIpRange(vlanDbId, accountName, domainId, zoneId, projectId); - - return vlan; - } - - @Override - @DB - public Vlan dedicatePublicIpRange(Long vlanDbId, String accountName, Long domainId, Long zoneId, Long projectId) throws ResourceAllocationException { - // Check if account is valid - Account vlanOwner = null; - if (projectId != null) { - if (accountName != null) { - throw new InvalidParameterValueException("accountName and projectId are mutually exclusive"); - } - Project project = _projectMgr.getProject(projectId); - if (project == null) { - throw new InvalidParameterValueException("Unable to find project by id " + projectId); - } - vlanOwner = _accountMgr.getAccount(project.getProjectAccountId()); - } - - if ((accountName != null) && (domainId != null)) { - vlanOwner = _accountDao.findActiveAccount(accountName, domainId); - if (vlanOwner == null) { - throw new InvalidParameterValueException("Please specify a valid account"); - } - } - - // Check if range is valid - VlanVO vlan = _vlanDao.findById(vlanDbId); - if (vlan == null) { - throw new InvalidParameterValueException("Please specify a valid Public IP range id"); - } - - // Check if range has already been dedicated - List maps = _accountVlanMapDao.listAccountVlanMapsByVlan(vlanDbId); - if (maps != null && !maps.isEmpty()) { - throw new InvalidParameterValueException("Specified Public IP range has already been dedicated"); - } - - // Verify that zone exists and is advanced - DataCenterVO zone = _zoneDao.findById(zoneId); - if (zone == null) { - throw new InvalidParameterValueException("Unable to find zone by id " + zoneId); - } - if (zone.getNetworkType() == NetworkType.Basic) { - throw new InvalidParameterValueException("Public IP range can be dedicated to an account only in the zone of type " + NetworkType.Advanced); - } - - // Check Public IP resource limits - int accountPublicIpRange = _publicIpAddressDao.countIPs(zoneId, vlanDbId, false); - _resourceLimitMgr.checkResourceLimit(vlanOwner, ResourceType.public_ip, accountPublicIpRange); - - // Check if any of the Public IP addresses is allocated to another account - List ips = _publicIpAddressDao.listByVlanId(vlanDbId); - for (IPAddressVO ip : ips) { - Long allocatedToAccountId = ip.getAllocatedToAccountId(); - if (allocatedToAccountId != null) { - Account accountAllocatedTo = _accountMgr.getActiveAccountById(allocatedToAccountId); - if (!accountAllocatedTo.getAccountName().equalsIgnoreCase(accountName)) - throw new InvalidParameterValueException("Public IP address in range is already allocated to another account"); - } - } - - Transaction txn = Transaction.currentTxn(); - txn.start(); - - // Create an AccountVlanMapVO entry - AccountVlanMapVO accountVlanMapVO = new AccountVlanMapVO(vlanOwner.getId(), vlan.getId()); - _accountVlanMapDao.persist(accountVlanMapVO); - - txn.commit(); - - return vlan; - } - - @Override - @ActionEvent(eventType = EventTypes.EVENT_VLAN_IP_RANGE_RELEASE, eventDescription = "releasing a public ip range", async = false) - public boolean releasePublicIpRange(ReleasePublicIpRangeCmd cmd) { - Long vlanDbId = cmd.getId(); - - VlanVO vlan = _vlanDao.findById(vlanDbId); - if (vlan == null) { - throw new InvalidParameterValueException("Please specify a valid IP range id."); - } - - return releasePublicIpRange(vlanDbId, UserContext.current().getCallerUserId(), UserContext.current().getCaller()); - } - - @Override - @DB - public boolean releasePublicIpRange(long vlanDbId, long userId, Account caller) { - VlanVO vlan = _vlanDao.findById(vlanDbId); - - List acctVln = _accountVlanMapDao.listAccountVlanMapsByVlan(vlanDbId); - // Verify range is dedicated - if (acctVln == null || acctVln.isEmpty()) { - throw new InvalidParameterValueException("Can't release Public IP range " + vlanDbId + " as it not dedicated to any account"); - } - - // Check if range has any allocated public IPs - long allocIpCount = _publicIpAddressDao.countIPs(vlan.getDataCenterId(), vlanDbId, true); - boolean success = true; - if (allocIpCount > 0) { - try { - vlan = _vlanDao.acquireInLockTable(vlanDbId, 30); - if (vlan == null) { - throw new CloudRuntimeException("Unable to acquire vlan configuration: " + vlanDbId); - } - if (s_logger.isDebugEnabled()) { - s_logger.debug("lock vlan " + vlanDbId + " is acquired"); - } - List ips = _publicIpAddressDao.listByVlanId(vlanDbId); - for (IPAddressVO ip : ips) { - // Disassociate allocated IP's that are not in use - if ( !ip.isOneToOneNat() && !(ip.isSourceNat() && _networkModel.getNetwork(ip.getAssociatedWithNetworkId()) != null) && - !(_firewallDao.countRulesByIpId(ip.getId()) > 0) ) { - if (s_logger.isDebugEnabled()) { - s_logger.debug("Releasing Public IP addresses" + ip +" of vlan " + vlanDbId + " as part of Public IP" + - " range release to the system pool"); - } - success = success && _networkMgr.disassociatePublicIpAddress(ip.getId(), userId, caller); - } - } - if (!success) { - s_logger.warn("Some Public IP addresses that were not in use failed to be released as a part of" + - " vlan " + vlanDbId + "release to the system pool"); - } - } finally { - _vlanDao.releaseFromLockTable(vlanDbId); - } - } - - // A Public IP range can only be dedicated to one account at a time - if (_accountVlanMapDao.remove(acctVln.get(0).getId())) { - return true; - } else { - return false; - } - } - @Override public List csvTagsToList(String tags) { List tagsList = new ArrayList(); @@ -4089,14 +3957,14 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati @Override @DB - public boolean releaseAccountSpecificVirtualRanges(long accountId) { + public boolean deleteAccountSpecificVirtualRanges(long accountId) { List maps = _accountVlanMapDao.listAccountVlanMapsByAccount(accountId); boolean result = true; if (maps != null && !maps.isEmpty()) { Transaction txn = Transaction.currentTxn(); txn.start(); for (AccountVlanMapVO map : maps) { - if (!releasePublicIpRange(map.getVlanDbId(), _accountMgr.getSystemUser().getId(), + if (!deleteVlanAndPublicIpRange(_accountMgr.getSystemUser().getId(), map.getVlanDbId(), _accountMgr.getAccount(Account.ACCOUNT_ID_SYSTEM))) { result = false; } @@ -4104,10 +3972,10 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati if (result) { txn.commit(); } else { - s_logger.error("Failed to release account specific virtual ip ranges for account id=" + accountId); + s_logger.error("Failed to delete account specific virtual ip ranges for account id=" + accountId); } } else { - s_logger.trace("Account id=" + accountId + " has no account specific virtual ip ranges, nothing to release"); + s_logger.trace("Account id=" + accountId + " has no account specific virtual ip ranges, nothing to delete"); } return result; } diff --git a/server/src/com/cloud/network/NetworkManagerImpl.java b/server/src/com/cloud/network/NetworkManagerImpl.java index 43a098877df..62960116dce 100755 --- a/server/src/com/cloud/network/NetworkManagerImpl.java +++ b/server/src/com/cloud/network/NetworkManagerImpl.java @@ -188,7 +188,6 @@ import com.cloud.vm.ReservationContextImpl; import com.cloud.vm.UserVmVO; import com.cloud.vm.VMInstanceVO; import com.cloud.vm.VirtualMachine; -import com.cloud.vm.*; import com.cloud.vm.VirtualMachine.Type; import com.cloud.vm.VirtualMachineProfile; import com.cloud.vm.dao.NicDao; @@ -349,7 +348,7 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L } @DB - public PublicIp fetchNewPublicIp(long dcId, Long podId, List vlanDbIds, Account owner, VlanType vlanUse, + public PublicIp fetchNewPublicIp(long dcId, Long podId, Long vlanDbId, Account owner, VlanType vlanUse, Long guestNetworkId, boolean sourceNat, boolean assign, String requestedIp, boolean isSystem, Long vpcId) throws InsufficientAddressCapacityException { StringBuilder errorMessage = new StringBuilder("Unable to get ip adress in "); @@ -365,9 +364,9 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L errorMessage.append(" zone id=" + dcId); } - if ( vlanDbIds != null && !vlanDbIds.isEmpty() ) { - sc.setParameters("vlanId", vlanDbIds.toArray()); - errorMessage.append(", vlanId id=" + vlanDbIds.toArray()); + if (vlanDbId != null) { + sc.addAnd("vlanId", SearchCriteria.Op.EQ, vlanDbId); + errorMessage.append(", vlanId id=" + vlanDbId); } sc.setParameters("dc", dcId); @@ -527,14 +526,14 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L } // If account has Account specific ip ranges, try to allocate ip from there - List vlanIds = new ArrayList(); + Long vlanId = null; List maps = _accountVlanMapDao.listAccountVlanMapsByAccount(ownerId); if (maps != null && !maps.isEmpty()) { - vlanIds.add(maps.get(0).getVlanDbId()); + vlanId = maps.get(0).getVlanDbId(); } - ip = fetchNewPublicIp(dcId, null, vlanIds, owner, VlanType.VirtualNetwork, guestNtwkId, + ip = fetchNewPublicIp(dcId, null, vlanId, owner, VlanType.VirtualNetwork, guestNtwkId, isSourceNat, false, null, false, vpcId); IPAddressVO publicIp = ip.ip(); @@ -670,7 +669,6 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L VlanType vlanType = VlanType.VirtualNetwork; boolean assign = false; - boolean allocateFromDedicatedRange = false; if (Grouping.AllocationState.Disabled == zone.getAllocationState() && !_accountMgr.isRootAdmin(caller.getType())) { // zone is of type DataCenter. See DataCenterVO.java. @@ -704,32 +702,8 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L txn.start(); - // If account has dedicated Public IP ranges, allocate IP from the dedicated range - List vlanDbIds = new ArrayList(); - List maps = _accountVlanMapDao.listAccountVlanMapsByAccount(ipOwner.getId()); - for (AccountVlanMapVO map : maps) { - vlanDbIds.add(map.getVlanDbId()); - } - if (vlanDbIds != null && !vlanDbIds.isEmpty()) { - allocateFromDedicatedRange = true; - } - - try { - if (allocateFromDedicatedRange) { - ip = fetchNewPublicIp(zone.getId(), null, vlanDbIds, ipOwner, vlanType, null, - false, assign, null, isSystem, null); - } - } catch(InsufficientAddressCapacityException e) { - s_logger.warn("All IPs dedicated to account " + ipOwner.getId() + " has been acquired." + - " Now acquiring from the system pool"); - txn.close(); - allocateFromDedicatedRange = false; - } - - if (!allocateFromDedicatedRange) { - ip = fetchNewPublicIp(zone.getId(), null, null, ipOwner, vlanType, null, false, assign, null, - isSystem, null); - } + ip = fetchNewPublicIp(zone.getId(), null, null, ipOwner, vlanType, null, + false, assign, null, isSystem, null); if (ip == null) { @@ -1096,7 +1070,7 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L AssignIpAddressSearch = _ipAddressDao.createSearchBuilder(); AssignIpAddressSearch.and("dc", AssignIpAddressSearch.entity().getDataCenterId(), Op.EQ); AssignIpAddressSearch.and("allocated", AssignIpAddressSearch.entity().getAllocatedTime(), Op.NULL); - AssignIpAddressSearch.and("vlanId", AssignIpAddressSearch.entity().getVlanId(), Op.IN); + AssignIpAddressSearch.and("vlanId", AssignIpAddressSearch.entity().getVlanId(), Op.EQ); SearchBuilder vlanSearch = _vlanDao.createSearchBuilder(); vlanSearch.and("type", vlanSearch.entity().getVlanType(), Op.EQ); vlanSearch.and("networkId", vlanSearch.entity().getNetworkId(), Op.EQ); diff --git a/server/src/com/cloud/network/NetworkServiceImpl.java b/server/src/com/cloud/network/NetworkServiceImpl.java index a8cbaa75017..4eb620c4243 100755 --- a/server/src/com/cloud/network/NetworkServiceImpl.java +++ b/server/src/com/cloud/network/NetworkServiceImpl.java @@ -697,6 +697,15 @@ public class NetworkServiceImpl extends ManagerBase implements NetworkService { throw new IllegalArgumentException("only ip addresses that belong to a virtual network may be disassociated."); } + // Check for account wide pool. It will have an entry for account_vlan_map. + if (_accountVlanMapDao.findAccountVlanMap(ipVO.getAllocatedToAccountId(), ipVO.getVlanId()) != null) { + //see IPaddressVO.java + InvalidParameterValueException ex = new InvalidParameterValueException("Sepcified IP address uuid belongs to" + + " Account wide IP pool and cannot be disassociated"); + ex.addProxyObject("user_ip_address", ipAddressId, "ipAddressId"); + throw ex; + } + // don't allow releasing system ip address if (ipVO.getSystem()) { InvalidParameterValueException ex = new InvalidParameterValueException("Can't release system IP address with specified id"); diff --git a/server/src/com/cloud/server/ManagementServerImpl.java b/server/src/com/cloud/server/ManagementServerImpl.java index b89de9e122f..af77ba5645f 100755 --- a/server/src/com/cloud/server/ManagementServerImpl.java +++ b/server/src/com/cloud/server/ManagementServerImpl.java @@ -2090,8 +2090,6 @@ public class ManagementServerImpl extends ManagerBase implements ManagementServe cmdList.add(CreateVlanIpRangeCmd.class); cmdList.add(DeleteVlanIpRangeCmd.class); cmdList.add(ListVlanIpRangesCmd.class); - cmdList.add(DedicatePublicIpRangeCmd.class); - cmdList.add(ReleasePublicIpRangeCmd.class); cmdList.add(AssignVMCmd.class); cmdList.add(MigrateVMCmd.class); cmdList.add(RecoverVMCmd.class); diff --git a/server/src/com/cloud/user/AccountManagerImpl.java b/server/src/com/cloud/user/AccountManagerImpl.java index 417ec3f4523..52ca79d5a60 100755 --- a/server/src/com/cloud/user/AccountManagerImpl.java +++ b/server/src/com/cloud/user/AccountManagerImpl.java @@ -683,13 +683,13 @@ public class AccountManagerImpl extends ManagerBase implements AccountManager, M accountCleanupNeeded = true; } - // release account specific Virtual vlans (belong to system Public Network) - only when networks are cleaned + // delete account specific Virtual vlans (belong to system Public Network) - only when networks are cleaned // up successfully if (networksDeleted) { - if (!_configMgr.releaseAccountSpecificVirtualRanges(accountId)) { + if (!_configMgr.deleteAccountSpecificVirtualRanges(accountId)) { accountCleanupNeeded = true; } else { - s_logger.debug("Account specific Virtual IP ranges " + " are successfully released as a part of account id=" + accountId + " cleanup."); + s_logger.debug("Account specific Virtual IP ranges " + " are successfully deleted as a part of account id=" + accountId + " cleanup."); } } diff --git a/server/test/com/cloud/configuration/ConfigurationManagerTest.java b/server/test/com/cloud/configuration/ConfigurationManagerTest.java deleted file mode 100644 index 321f605a1cc..00000000000 --- a/server/test/com/cloud/configuration/ConfigurationManagerTest.java +++ /dev/null @@ -1,421 +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 com.cloud.configuration; - -import static org.mockito.Matchers.any; -import static org.mockito.Matchers.anyBoolean; -import static org.mockito.Matchers.anyInt; -import static org.mockito.Matchers.anyLong; -import static org.mockito.Matchers.anyString; -import static org.mockito.Mockito.doNothing; -import static org.mockito.Mockito.when; - -import java.lang.reflect.Field; -import java.util.ArrayList; -import java.util.List; -import java.util.UUID; - -import junit.framework.Assert; - -import org.apache.cloudstack.api.command.admin.vlan.DedicatePublicIpRangeCmd; -import org.apache.cloudstack.api.command.admin.vlan.ReleasePublicIpRangeCmd; -import org.apache.log4j.Logger; -import org.junit.Before; -import org.junit.Test; -import org.mockito.Mock; -import org.mockito.MockitoAnnotations; - -import com.cloud.configuration.Resource.ResourceType; -import com.cloud.dc.AccountVlanMapVO; -import com.cloud.dc.DataCenter.NetworkType; -import com.cloud.dc.DataCenterVO; -import com.cloud.dc.Vlan; -import com.cloud.dc.VlanVO; -import com.cloud.dc.dao.AccountVlanMapDao; -import com.cloud.dc.dao.DataCenterDao; -import com.cloud.dc.dao.VlanDao; -import com.cloud.network.NetworkManager; -import com.cloud.network.dao.FirewallRulesDao; -import com.cloud.network.dao.IPAddressDao; -import com.cloud.network.dao.IPAddressVO; -import com.cloud.projects.ProjectManager; -import com.cloud.user.Account; -import com.cloud.user.AccountManager; -import com.cloud.user.AccountVO; -import com.cloud.user.ResourceLimitService; -import com.cloud.user.UserContext; -import com.cloud.user.dao.AccountDao; -import com.cloud.utils.db.Transaction; -import com.cloud.utils.net.Ip; - -public class ConfigurationManagerTest { - - private static final Logger s_logger = Logger.getLogger(ConfigurationManagerTest.class); - - ConfigurationManagerImpl configurationMgr = new ConfigurationManagerImpl(); - - DedicatePublicIpRangeCmd dedicatePublicIpRangesCmd = new DedicatePublicIpRangeCmdExtn(); - Class _dedicatePublicIpRangeClass = dedicatePublicIpRangesCmd.getClass().getSuperclass(); - - ReleasePublicIpRangeCmd releasePublicIpRangesCmd = new ReleasePublicIpRangeCmdExtn(); - Class _releasePublicIpRangeClass = releasePublicIpRangesCmd.getClass().getSuperclass(); - - @Mock AccountManager _accountMgr; - @Mock ProjectManager _projectMgr; - @Mock ResourceLimitService _resourceLimitMgr; - @Mock NetworkManager _networkMgr; - @Mock AccountDao _accountDao; - @Mock VlanDao _vlanDao; - @Mock AccountVlanMapDao _accountVlanMapDao; - @Mock IPAddressDao _publicIpAddressDao; - @Mock DataCenterDao _zoneDao; - @Mock FirewallRulesDao _firewallDao; - - VlanVO vlan = new VlanVO(); - - @Before - public void setup() throws Exception { - MockitoAnnotations.initMocks(this); - configurationMgr._accountMgr = _accountMgr; - configurationMgr._projectMgr = _projectMgr; - configurationMgr._resourceLimitMgr = _resourceLimitMgr; - configurationMgr._networkMgr = _networkMgr; - configurationMgr._accountDao = _accountDao; - configurationMgr._vlanDao = _vlanDao; - configurationMgr._accountVlanMapDao = _accountVlanMapDao; - configurationMgr._publicIpAddressDao = _publicIpAddressDao; - configurationMgr._zoneDao = _zoneDao; - configurationMgr._firewallDao = _firewallDao; - - Account account = (Account) new AccountVO("testaccount", 1, "networkdomain", (short) 0, UUID.randomUUID().toString()); - when(configurationMgr._accountMgr.getAccount(anyLong())).thenReturn(account); - when(configurationMgr._accountDao.findActiveAccount(anyString(), anyLong())).thenReturn(account); - when(configurationMgr._accountMgr.getActiveAccountById(anyLong())).thenReturn(account); - - when(configurationMgr._publicIpAddressDao.countIPs(anyLong(), anyLong(), anyBoolean())).thenReturn(1); - - doNothing().when(configurationMgr._resourceLimitMgr).checkResourceLimit(any(Account.class), - any(ResourceType.class), anyLong()); - - when(configurationMgr._accountVlanMapDao.persist(any(AccountVlanMapVO.class))).thenReturn(new AccountVlanMapVO()); - - when(configurationMgr._vlanDao.acquireInLockTable(anyLong(), anyInt())).thenReturn(vlan); - - UserContext.registerContext(1, account, null, true); - - Field dedicateIdField = _dedicatePublicIpRangeClass.getDeclaredField("id"); - dedicateIdField.setAccessible(true); - dedicateIdField.set(dedicatePublicIpRangesCmd, 1L); - - Field accountNameField = _dedicatePublicIpRangeClass.getDeclaredField("accountName"); - accountNameField.setAccessible(true); - accountNameField.set(dedicatePublicIpRangesCmd, "accountname"); - - Field projectIdField = _dedicatePublicIpRangeClass.getDeclaredField("projectId"); - projectIdField.setAccessible(true); - projectIdField.set(dedicatePublicIpRangesCmd, null); - - Field domainIdField = _dedicatePublicIpRangeClass.getDeclaredField("domainId"); - domainIdField.setAccessible(true); - domainIdField.set(dedicatePublicIpRangesCmd, 1L); - - Field zoneIdField = _dedicatePublicIpRangeClass.getDeclaredField("zoneId"); - zoneIdField.setAccessible(true); - zoneIdField.set(dedicatePublicIpRangesCmd, 1L); - - Field releaseIdField = _releasePublicIpRangeClass.getDeclaredField("id"); - releaseIdField.setAccessible(true); - releaseIdField.set(releasePublicIpRangesCmd, 1L); - } - - @Test - public void testDedicatePublicIpRange() throws Exception { - - s_logger.info("Running tests for DedicatePublicIpRange API"); - - /* - * TEST 1: given valid parameters DedicatePublicIpRange should succeed - */ - runDedicatePublicIpRangePostiveTest(); - - /* - * TEST 2: given invalid public ip range DedicatePublicIpRange should fail - */ - runDedicatePublicIpRangeInvalidRange(); - /* - * TEST 3: given public IP range that is already dedicated to a different account DedicatePublicIpRange should fail - */ - runDedicatePublicIpRangeDedicatedRange(); - - /* - * TEST 4: given zone is of type Basic DedicatePublicIpRange should fail - */ - runDedicatePublicIpRangeInvalidZone(); - - /* - * TEST 5: given range is already allocated to a different account DedicatePublicIpRange should fail - */ - runDedicatePublicIpRangeIPAdressAllocated(); - } - - @Test - public void testReleasePublicIpRange() throws Exception { - - s_logger.info("Running tests for DedicatePublicIpRange API"); - - /* - * TEST 1: given valid parameters and no allocated public ip's in the range ReleasePublicIpRange should succeed - */ - runReleasePublicIpRangePostiveTest1(); - - /* - * TEST 2: given valid parameters ReleasePublicIpRange should succeed - */ - runReleasePublicIpRangePostiveTest2(); - - /* - * TEST 3: given range doesn't exist - */ - runReleasePublicIpRangeInvalidIpRange(); - - /* - * TEST 4: given range is not dedicated to any account - */ - runReleaseNonDedicatedPublicIpRange(); - } - - void runDedicatePublicIpRangePostiveTest() throws Exception { - Transaction txn = Transaction.open("runDedicatePublicIpRangePostiveTest"); - - when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); - - when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByAccount(anyLong())).thenReturn(null); - - DataCenterVO dc = new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", - null, null, NetworkType.Advanced, null, null, true, true, null, null); - when(configurationMgr._zoneDao.findById(anyLong())).thenReturn(dc); - - List ipAddressList = new ArrayList(); - IPAddressVO ipAddress = new IPAddressVO(new Ip("75.75.75.75"), 1, 0xaabbccddeeffL, 10, false); - ipAddressList.add(ipAddress); - when(configurationMgr._publicIpAddressDao.listByVlanId(anyLong())).thenReturn(ipAddressList); - - try { - Vlan result = configurationMgr.dedicatePublicIpRange(dedicatePublicIpRangesCmd); - Assert.assertNotNull(result); - } catch (Exception e) { - s_logger.info("exception in testing runDedicatePublicIpRangePostiveTest message: " + e.toString()); - } finally { - txn.close("runDedicatePublicIpRangePostiveTest"); - } - } - - void runDedicatePublicIpRangeInvalidRange() throws Exception { - Transaction txn = Transaction.open("runDedicatePublicIpRangeInvalidRange"); - - when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(null); - try { - configurationMgr.dedicatePublicIpRange(dedicatePublicIpRangesCmd); - } catch (Exception e) { - Assert.assertTrue(e.getMessage().contains("Please specify a valid Public IP range id")); - } finally { - txn.close("runDedicatePublicIpRangeInvalidRange"); - } - } - - void runDedicatePublicIpRangeDedicatedRange() throws Exception { - Transaction txn = Transaction.open("runDedicatePublicIpRangeDedicatedRange"); - - when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); - - // public ip range is already dedicated - List accountVlanMaps = new ArrayList(); - AccountVlanMapVO accountVlanMap = new AccountVlanMapVO(1, 1); - accountVlanMaps.add(accountVlanMap); - when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByVlan(anyLong())).thenReturn(accountVlanMaps); - - DataCenterVO dc = new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", - null, null, NetworkType.Advanced, null, null, true, true, null, null); - when(configurationMgr._zoneDao.findById(anyLong())).thenReturn(dc); - - List ipAddressList = new ArrayList(); - IPAddressVO ipAddress = new IPAddressVO(new Ip("75.75.75.75"), 1, 0xaabbccddeeffL, 10, false); - ipAddressList.add(ipAddress); - when(configurationMgr._publicIpAddressDao.listByVlanId(anyLong())).thenReturn(ipAddressList); - - try { - configurationMgr.dedicatePublicIpRange(dedicatePublicIpRangesCmd); - } catch (Exception e) { - Assert.assertTrue(e.getMessage().contains("Public IP range has already been dedicated")); - } finally { - txn.close("runDedicatePublicIpRangePublicIpRangeDedicated"); - } - } - - void runDedicatePublicIpRangeInvalidZone() throws Exception { - Transaction txn = Transaction.open("runDedicatePublicIpRangeInvalidZone"); - - when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); - - when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByVlan(anyLong())).thenReturn(null); - - // public ip range belongs to zone of type basic - DataCenterVO dc = new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", - null, null, NetworkType.Basic, null, null, true, true, null, null); - when(configurationMgr._zoneDao.findById(anyLong())).thenReturn(dc); - - List ipAddressList = new ArrayList(); - IPAddressVO ipAddress = new IPAddressVO(new Ip("75.75.75.75"), 1, 0xaabbccddeeffL, 10, false); - ipAddressList.add(ipAddress); - when(configurationMgr._publicIpAddressDao.listByVlanId(anyLong())).thenReturn(ipAddressList); - - try { - configurationMgr.dedicatePublicIpRange(dedicatePublicIpRangesCmd); - } catch (Exception e) { - Assert.assertTrue(e.getMessage().contains("Public IP range can be dedicated to an account only in the zone of type Advanced")); - } finally { - txn.close("runDedicatePublicIpRangeInvalidZone"); - } - } - - void runDedicatePublicIpRangeIPAdressAllocated() throws Exception { - Transaction txn = Transaction.open("runDedicatePublicIpRangeIPAdressAllocated"); - - when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); - - when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByAccount(anyLong())).thenReturn(null); - - DataCenterVO dc = new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", - null, null, NetworkType.Advanced, null, null, true, true, null, null); - when(configurationMgr._zoneDao.findById(anyLong())).thenReturn(dc); - - // one of the ip addresses of the range is allocated to different account - List ipAddressList = new ArrayList(); - IPAddressVO ipAddress = new IPAddressVO(new Ip("75.75.75.75"), 1, 0xaabbccddeeffL, 10, false); - ipAddress.setAllocatedToAccountId(1L); - ipAddressList.add(ipAddress); - when(configurationMgr._publicIpAddressDao.listByVlanId(anyLong())).thenReturn(ipAddressList); - - try { - configurationMgr.dedicatePublicIpRange(dedicatePublicIpRangesCmd); - } catch (Exception e) { - Assert.assertTrue(e.getMessage().contains("Public IP address in range is already allocated to another account")); - } finally { - txn.close("runDedicatePublicIpRangeIPAdressAllocated"); - } - } - - void runReleasePublicIpRangePostiveTest1() throws Exception { - Transaction txn = Transaction.open("runReleasePublicIpRangePostiveTest1"); - - when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); - - List accountVlanMaps = new ArrayList(); - AccountVlanMapVO accountVlanMap = new AccountVlanMapVO(1, 1); - accountVlanMaps.add(accountVlanMap); - when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByVlan(anyLong())).thenReturn(accountVlanMaps); - - // no allocated ip's - when(configurationMgr._publicIpAddressDao.countIPs(anyLong(), anyLong(), anyBoolean())).thenReturn(0); - - when(configurationMgr._accountVlanMapDao.remove(anyLong())).thenReturn(true); - try { - Boolean result = configurationMgr.releasePublicIpRange(releasePublicIpRangesCmd); - Assert.assertTrue(result); - } catch (Exception e) { - s_logger.info("exception in testing runReleasePublicIpRangePostiveTest1 message: " + e.toString()); - } finally { - txn.close("runReleasePublicIpRangePostiveTest1"); - } - } - - void runReleasePublicIpRangePostiveTest2() throws Exception { - Transaction txn = Transaction.open("runReleasePublicIpRangePostiveTest2"); - - when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); - - List accountVlanMaps = new ArrayList(); - AccountVlanMapVO accountVlanMap = new AccountVlanMapVO(1, 1); - accountVlanMaps.add(accountVlanMap); - when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByVlan(anyLong())).thenReturn(accountVlanMaps); - - when(configurationMgr._publicIpAddressDao.countIPs(anyLong(), anyLong(), anyBoolean())).thenReturn(1); - - List ipAddressList = new ArrayList(); - IPAddressVO ipAddress = new IPAddressVO(new Ip("75.75.75.75"), 1, 0xaabbccddeeffL, 10, false); - ipAddressList.add(ipAddress); - when(configurationMgr._publicIpAddressDao.listByVlanId(anyLong())).thenReturn(ipAddressList); - - when(configurationMgr._firewallDao.countRulesByIpId(anyLong())).thenReturn(0L); - - when(configurationMgr._networkMgr.disassociatePublicIpAddress(anyLong(), anyLong(), any(Account.class))).thenReturn(true); - - when(configurationMgr._vlanDao.releaseFromLockTable(anyLong())).thenReturn(true); - - when(configurationMgr._accountVlanMapDao.remove(anyLong())).thenReturn(true); - try { - Boolean result = configurationMgr.releasePublicIpRange(releasePublicIpRangesCmd); - Assert.assertTrue(result); - } catch (Exception e) { - s_logger.info("exception in testing runReleasePublicIpRangePostiveTest2 message: " + e.toString()); - } finally { - txn.close("runReleasePublicIpRangePostiveTest2"); - } - } - - void runReleasePublicIpRangeInvalidIpRange() throws Exception { - Transaction txn = Transaction.open("runReleasePublicIpRangeInvalidIpRange"); - - when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(null); - try { - configurationMgr.releasePublicIpRange(releasePublicIpRangesCmd); - } catch (Exception e) { - Assert.assertTrue(e.getMessage().contains("Please specify a valid IP range id")); - } finally { - txn.close("runReleasePublicIpRangeInvalidIpRange"); - } - } - - void runReleaseNonDedicatedPublicIpRange() throws Exception { - Transaction txn = Transaction.open("runReleaseNonDedicatedPublicIpRange"); - - when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); - - when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByVlan(anyLong())).thenReturn(null); - try { - configurationMgr.releasePublicIpRange(releasePublicIpRangesCmd); - } catch (Exception e) { - Assert.assertTrue(e.getMessage().contains("as it not dedicated to any account")); - } finally { - txn.close("runReleaseNonDedicatedPublicIpRange"); - } - } - - - public class DedicatePublicIpRangeCmdExtn extends DedicatePublicIpRangeCmd { - public long getEntityOwnerId() { - return 1; - } - } - - public class ReleasePublicIpRangeCmdExtn extends ReleasePublicIpRangeCmd { - public long getEntityOwnerId() { - return 1; - } - } -} \ No newline at end of file diff --git a/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java b/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java index f781e61e671..d96e831cfeb 100644 --- a/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java +++ b/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java @@ -40,9 +40,7 @@ import org.apache.cloudstack.api.command.admin.offering.UpdateServiceOfferingCmd import org.apache.cloudstack.api.command.admin.pod.DeletePodCmd; import org.apache.cloudstack.api.command.admin.pod.UpdatePodCmd; import org.apache.cloudstack.api.command.admin.vlan.CreateVlanIpRangeCmd; -import org.apache.cloudstack.api.command.admin.vlan.DedicatePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.vlan.DeleteVlanIpRangeCmd; -import org.apache.cloudstack.api.command.admin.vlan.ReleasePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.zone.CreateZoneCmd; import org.apache.cloudstack.api.command.admin.zone.DeleteZoneCmd; import org.apache.cloudstack.api.command.admin.zone.UpdateZoneCmd; @@ -546,7 +544,7 @@ public class MockConfigurationManagerImpl extends ManagerBase implements Configu * @see com.cloud.configuration.ConfigurationManager#deleteAccountSpecificVirtualRanges(long) */ @Override - public boolean releaseAccountSpecificVirtualRanges(long accountId) { + public boolean deleteAccountSpecificVirtualRanges(long accountId) { // TODO Auto-generated method stub return false; } @@ -615,33 +613,5 @@ public class MockConfigurationManagerImpl extends ManagerBase implements Configu return null; } - @Override - public Vlan dedicatePublicIpRange(DedicatePublicIpRangeCmd cmd) - throws ResourceAllocationException { - // TODO Auto-generated method stub - return null; - } - - @Override - public boolean releasePublicIpRange(ReleasePublicIpRangeCmd cmd) { - // TODO Auto-generated method stub - return false; - } - - @Override - public boolean releasePublicIpRange(long userId, long vlanDbId, - Account caller) { - // TODO Auto-generated method stub - return false; - } - - @Override - public Vlan dedicatePublicIpRange(Long vlanDbId, String accountName, - Long domainId, Long zoneId, Long projectId) - throws ResourceAllocationException { - // TODO Auto-generated method stub - return null; - } - } diff --git a/test/integration/component/test_public_ip_range.py b/test/integration/component/test_public_ip_range.py deleted file mode 100644 index 1cb2e48acd7..00000000000 --- a/test/integration/component/test_public_ip_range.py +++ /dev/null @@ -1,149 +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. -""" P1 tests for Dedicating Public IP addresses -""" -#Import Local Modules -import marvin -from nose.plugins.attrib import attr -from marvin.cloudstackTestCase import * -from marvin.cloudstackAPI import * -from marvin.integration.lib.utils import * -from marvin.integration.lib.base import * -from marvin.integration.lib.common import * -import datetime - -class Services: - """Test Dedicating Public IP addresses - """ - - def __init__(self): - self.services = { - "domain": { - "name": "Domain", - }, - "account": { - "email": "test@test.com", - "firstname": "Test", - "lastname": "User", - "username": "test", - # Random characters are appended for unique - # username - "password": "password", - }, - "gateway": "10.102.196.1", - "netmask": "255.255.255.0", - "forvirtualnetwork": "true", - "startip": "10.102.196.70", - "endip": "10.102.196.73", - "zoneid": "1", - "podid": "", - "vlan": "101", - "sleep": 60, - "timeout": 10, - } - -class TesDedicatePublicIPRange(cloudstackTestCase): - - @classmethod - def setUpClass(cls): - cls.api_client = super(TesDedicatePublicIPRange, cls).getClsTestClient().getApiClient() - cls.services = Services().services - # Get Zone, Domain - cls.domain = get_domain(cls.api_client, cls.services) - cls.zone = get_zone(cls.api_client, cls.services) - - # Create Account, VMs etc - cls.account = Account.create( - cls.api_client, - cls.services["account"], - domainid=cls.domain.id - ) - cls._cleanup = [ - #cls.account, - ] - return - - @classmethod - def tearDownClass(cls): - try: - # Cleanup resources used - cleanup_resources(cls.api_client, cls._cleanup) - except Exception as e: - raise Exception("Warning: Exception during cleanup : %s" % e) - return - - def setUp(self): - self.apiclient = self.testClient.getApiClient() - self.dbclient = self.testClient.getDbConnection() - self.cleanup = [] - return - - def tearDown(self): - try: - # Clean up - cleanup_resources(self.apiclient, self.cleanup) - except Exception as e: - raise Exception("Warning: Exception during cleanup : %s" % e) - return - - @attr(tags = ["publiciprange", "dedicate"]) - def test_createPublicIpRange(self): - """Test create public IP range - """ - - - # Validate the following: - # 1. Create public IP range. - # 2. Created IP range should be present, verify with listVlanIpRanges - - self.debug("Creating Public IP range") - self.public_ip_range = PublicIpRange.create( - self.api_client, - self.services - ) - list_public_ip_range_response = PublicIpRange.list( - self.apiclient, - id=self.public_ip_range.vlan.id - ) - self.debug( - "Verify listPublicIpRanges response for public ip ranges: %s" \ - % self.public_ip_range.vlan.id - ) - self.assertEqual( - isinstance(list_public_ip_range_response, list), - True, - "Check for list Public IP range response" - ) - public_ip_response = list_public_ip_range_response[0] - self.assertEqual( - public_ip_response.id, - self.public_ip_range.vlan.id, - "Check public ip range response id is in listVlanIpRanges" - ) - self.debug("Dedicating Public IP range"); - self.debug("Vlan id %s" % self.public_ip_range.vlan.id); - self.debug("Zone id %s" % self.zone.id); - self.debug("Account name %s" % self.account.account.name); - self.debug("Domain id %s" % self.account.account.domainid); - dedicate_public_ip_range_response = PublicIpRange.dedicate( - self.apiclient, - self.public_ip_range.vlan.id, - zoneid=self.zone.id, - account=self.account.account.name, - domainid=self.account.account.domainid - ) - return diff --git a/tools/marvin/marvin/integration/lib/base.py b/tools/marvin/marvin/integration/lib/base.py index 0e117bbdfc2..f3370eb3190 100644 --- a/tools/marvin/marvin/integration/lib/base.py +++ b/tools/marvin/marvin/integration/lib/base.py @@ -1882,17 +1882,6 @@ class PublicIpRange: [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listVlanIpRanges(cmd)) - @classmethod - def dedicate(cls, apiclient, id, zoneid, account=None, domainid=None, projectid=None): - """Dedicate VLAN IP range""" - - cmd = dedicatePublicIpRange.dedicatePublicIpRangeCmd() - cmd.id = id - cmd.account = account - cmd.domainid = domainid - cmd.projectid = projectid - cmd.zoneid = zoneid - return PublicIpRange(apiclient.dedicatePublicIpRange(cmd).__dict__) class SecondaryStorage: """Manage Secondary storage""" From c6e226da74e53259c632bce687b12ce05f8408ca Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Mon, 8 Apr 2013 17:29:54 -0700 Subject: [PATCH 024/607] CLOUDSTACK-524: in some cases (especially the built-in CentOS template), the template downloader does not use the configured http proxy The DownloadProgress command is used to restart failed or stuck download jobs -- and it would not include the proxy information, unlike the DownloadCommand which always did Signed-off-by: Chiradeep Vittal --- .../src/com/cloud/storage/download/DownloadMonitorImpl.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/server/src/com/cloud/storage/download/DownloadMonitorImpl.java b/server/src/com/cloud/storage/download/DownloadMonitorImpl.java index ee8df745fc7..cfb92d5ccde 100755 --- a/server/src/com/cloud/storage/download/DownloadMonitorImpl.java +++ b/server/src/com/cloud/storage/download/DownloadMonitorImpl.java @@ -363,10 +363,10 @@ public class DownloadMonitorImpl extends ManagerBase implements DownloadMonitor start(); DownloadCommand dcmd = new DownloadCommand(secUrl, template, maxTemplateSizeInBytes); - dcmd.setProxy(getHttpProxy()); if (downloadJobExists) { dcmd = new DownloadProgressCommand(dcmd, vmTemplateHost.getJobId(), RequestType.GET_OR_RESTART); } + dcmd.setProxy(getHttpProxy()); if (vmTemplateHost.isCopy()) { dcmd.setCreds(TemplateConstants.DEFAULT_HTTP_AUTH_USER, _copyAuthPasswd); } @@ -452,12 +452,11 @@ public class DownloadMonitorImpl extends ManagerBase implements DownloadMonitor if(volumeHost != null) { start(); DownloadCommand dcmd = new DownloadCommand(secUrl, volume, maxVolumeSizeInBytes, checkSum, url, format); - dcmd.setProxy(getHttpProxy()); if (downloadJobExists) { dcmd = new DownloadProgressCommand(dcmd, volumeHost.getJobId(), RequestType.GET_OR_RESTART); dcmd.setResourceType(ResourceType.VOLUME); } - + dcmd.setProxy(getHttpProxy()); HostVO ssvm = _ssvmMgr.pickSsvmHost(sserver); if( ssvm == null ) { s_logger.warn("There is no secondary storage VM for secondary storage host " + sserver.getName()); From 301c683c099a568412f2db2ad24a9bb8441951ca Mon Sep 17 00:00:00 2001 From: David Grizzanti Date: Mon, 8 Apr 2013 16:53:11 -0400 Subject: [PATCH 025/607] CLOUDSTACK-1598: update global-config.xml doc to include new section "About Global Configuration Settings" Signed-off-by: Joe Brockmeier --- docs/en-US/global-config.xml | 79 ++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/docs/en-US/global-config.xml b/docs/en-US/global-config.xml index 2f6ad105c0d..11952c382ac 100644 --- a/docs/en-US/global-config.xml +++ b/docs/en-US/global-config.xml @@ -19,6 +19,8 @@ under the License. --> + Global Configuration Parameters +
Setting Global Configuration Parameters &PRODUCT; provides parameters that you can set to control many aspects of the cloud. When &PRODUCT; is first installed, and periodically thereafter, you might need to modify these @@ -51,4 +53,81 @@ must click the name of the hypervisor first to display the editing screen. +
+
+ About Global Configuration Parameters + &PRODUCT; provides a variety of settings you can use to set limits, configure features, + and enable or disable features in the cloud. Once your Management Server is running, you might + need to set some of these global configuration parameters, depending on what optional features + you are setting up. + To modify global configuration parameters, use the steps in "Setting Global Configuration + Parameters." + The documentation for each &PRODUCT; feature should direct you to the names of the applicable + parameters. Many of them are discussed in the &PRODUCT; Administration Guide. The following table + shows a few of the more useful parameters. + + + + + + + Field + Value + + + + + management.network.cidr + A CIDR that describes the network that the management CIDRs reside on. This + variable must be set for deployments that use vSphere. It is recommended to be set for + other deployments as well. Example: 192.168.3.0/24. + + + xen.setup.multipath + For XenServer nodes, this is a true/false variable that instructs CloudStack to + enable iSCSI multipath on the XenServer Hosts when they are added. This defaults to false. + Set it to true if you would like CloudStack to enable multipath. + If this is true for a NFS-based deployment multipath will still be enabled on the + XenServer host. However, this does not impact NFS operation and is harmless. + + + secstorage.allowed.internal.sites + This is used to protect your internal network from rogue attempts to download + arbitrary files using the template download feature. This is a comma-separated list of CIDRs. + If a requested URL matches any of these CIDRs the Secondary Storage VM will use the private + network interface to fetch the URL. Other URLs will go through the public interface. + We suggest you set this to 1 or 2 hardened internal machines where you keep your templates. + For example, set it to 192.168.1.66/32. + + + use.local.storage + Determines whether CloudStack will use storage that is local to the Host for data + disks, templates, and snapshots. By default CloudStack will not use this storage. You should + change this to true if you want to use local storage and you understand the reliability and + feature drawbacks to choosing local storage. + + + host + This is the IP address of the Management Server. If you are using multiple + Management Servers you should enter a load balanced IP address that is reachable via + the private network. + + + default.page.size + Maximum number of items per page that can be returned by a CloudStack API command. + The limit applies at the cloud level and can vary from cloud to cloud. You can override this + with a lower value on a particular API call by using the page and pagesize API command parameters. + For more information, see the Developer's Guide. Default: 500. + + + ha.tag + The label you want to use throughout the cloud to designate certain hosts as dedicated + HA hosts. These hosts will be used only for HA-enabled VMs that are restarting due to the failure + of another host. For example, you could set this to ha_host. Specify the ha.tag value as a host tag + when you add a new host to the cloud. + + + + +
From c522841716e77066f387410ca42d0e8132f96459 Mon Sep 17 00:00:00 2001 From: Phong Nguyen Date: Mon, 1 Apr 2013 14:56:58 -0400 Subject: [PATCH 026/607] CLOUDSTACK-1814: Add LXC documentation Signed-off-by: Joe Brockmeier --- .../hypervisor-host-install-firewall.xml | 4 +- .../en-US/hypervisor-host-install-network.xml | 8 +- docs/en-US/hypervisor-installation.xml | 1 + docs/en-US/lxc-install.xml | 110 ++++++++++++++++++ docs/en-US/lxc-topology-req.xml | 24 ++++ .../management-server-install-systemvm.xml | 4 + docs/en-US/minimum-system-requirements.xml | 1 + docs/en-US/prepare-system-vm-template.xml | 4 + docs/en-US/topology-req.xml | 3 +- 9 files changed, 152 insertions(+), 7 deletions(-) create mode 100644 docs/en-US/lxc-install.xml create mode 100644 docs/en-US/lxc-topology-req.xml diff --git a/docs/en-US/hypervisor-host-install-firewall.xml b/docs/en-US/hypervisor-host-install-firewall.xml index ae82fc47afa..c6658731819 100644 --- a/docs/en-US/hypervisor-host-install-firewall.xml +++ b/docs/en-US/hypervisor-host-install-firewall.xml @@ -34,7 +34,7 @@ 49152 - 49216 (libvirt live migration) It depends on the firewall you are using how to open these ports. Below you'll find examples how to open these ports in RHEL/CentOS and Ubuntu. -
+
Open ports in RHEL/CentOS RHEL and CentOS use iptables for firewalling the system, you can open extra ports by executing the following iptable commands: $ iptables -I INPUT -p tcp -m tcp --dport 22 -j ACCEPT @@ -45,7 +45,7 @@ These iptable settings are not persistent accross reboots, we have to save them first. $ iptables-save > /etc/sysconfig/iptables
-
+
Open ports in Ubuntu The default firewall under Ubuntu is UFW (Uncomplicated FireWall), which is a Python wrapper around iptables. To open the required ports, execute the following commands: diff --git a/docs/en-US/hypervisor-host-install-network.xml b/docs/en-US/hypervisor-host-install-network.xml index 3a6dfac48bd..54cdc27c450 100644 --- a/docs/en-US/hypervisor-host-install-network.xml +++ b/docs/en-US/hypervisor-host-install-network.xml @@ -29,7 +29,7 @@ In order to forward traffic to your instances you will need at least two bridges: public and private. By default these bridges are called cloudbr0 and cloudbr1, but you do have to make sure they are available on each hypervisor. The most important factor is that you keep the configuration consistent on all your hypervisors. -
+
Network example There are many ways to configure your network. In the Basic networking mode you should have two (V)LAN's, one for your private network and one for the public network. We assume that the hypervisor has one NIC (eth0) with three tagged VLAN's: @@ -41,11 +41,11 @@ On VLAN 100 we give the Hypervisor the IP-Address 192.168.42.11/24 with the gateway 192.168.42.1 The Hypervisor and Management server don't have to be in the same subnet!
-
+
Configuring the network bridges It depends on the distribution you are using how to configure these, below you'll find examples for RHEL/CentOS and Ubuntu. The goal is to have two bridges called 'cloudbr0' and 'cloudbr1' after this section. This should be used as a guideline only. The exact configuration will depend on your network layout. -
+
Configure in RHEL or CentOS The required packages were installed when libvirt was installed, we can proceed to configuring the network. First we configure eth0 @@ -111,7 +111,7 @@ STP=yes]]> With this configuration you should be able to restart the network, although a reboot is recommended to see if everything works properly. Make sure you have an alternative way like IPMI or ILO to reach the machine in case you made a configuration error and the network stops functioning!
-
+
Configure in Ubuntu All the required packages were installed when you installed libvirt, so we only have to configure the network. vi /etc/network/interfaces diff --git a/docs/en-US/hypervisor-installation.xml b/docs/en-US/hypervisor-installation.xml index b0fc9f46ddb..5ee7dea696a 100644 --- a/docs/en-US/hypervisor-installation.xml +++ b/docs/en-US/hypervisor-installation.xml @@ -28,4 +28,5 @@ + diff --git a/docs/en-US/lxc-install.xml b/docs/en-US/lxc-install.xml new file mode 100644 index 00000000000..a80c18afdd6 --- /dev/null +++ b/docs/en-US/lxc-install.xml @@ -0,0 +1,110 @@ + + + %BOOK_ENTITIES; + ]> + + + +
+ LXC Installation and Configuration +
+ System Requirements for LXC Hosts + LXC requires the Linux kernel cgroups functionality which is available starting 2.6.24. Although you are not required to run these distributions, the following are recommended: + + CentOS / RHEL: 6.3 + Ubuntu: 12.04(.1) + + The main requirement for LXC hypervisors is the libvirt and Qemu version. No matter what + Linux distribution you are using, make sure the following requirements are met: + + libvirt: 1.0.0 or higher + Qemu/KVM: 1.0 or higher + + The default bridge in &PRODUCT; is the Linux native bridge implementation (bridge module). &PRODUCT; includes an option to work with OpenVswitch, the requirements are listed below + + libvirt: 1.0.0 or higher + openvswitch: 1.7.1 or higher + + In addition, the following hardware requirements apply: + + Within a single cluster, the hosts must be of the same distribution version. + All hosts within a cluster must be homogenous. The CPUs must be of the same type, count, and feature flags. + Must support HVM (Intel-VT or AMD-V enabled) + 64-bit x86 CPU (more cores results in better performance) + 4 GB of memory + At least 1 NIC + When you deploy &PRODUCT;, the hypervisor host must not have any VMs already running + +
+
+ LXC Installation Overview + LXC does not have any native system VMs, instead KVM will be used to run system VMs. This means that your host will need to support both LXC and KVM, thus most of the installation and configuration will be identical to the KVM installation. The material in this section doesn't duplicate KVM installation docs. It provides the &PRODUCT;-specific steps that are needed to prepare a KVM host to work with &PRODUCT;. + Before continuing, make sure that you have applied the latest updates to your host. + It is NOT recommended to run services on this host not controlled by &PRODUCT;. + The procedure for installing an LXC Host is: + + Prepare the Operating System + Install and configure libvirt + Configure Security Policies (AppArmor and SELinux) + Install and configure the Agent + +
+
+ +
+
+ Install and configure the Agent + To manage LXC instances on the host &PRODUCT; uses a Agent. This Agent communicates with the Management server and controls all the instances on the host. + First we start by installing the agent: + In RHEL or CentOS: + $ yum install cloud-agent + In Ubuntu: + $ apt-get install cloud-agent + Next step is to update the Agent configuration setttings. The settings are in /etc/cloudstack/agent/agent.properties + + + Set the Agent to run in LXC mode: + hypervisor.type=lxc + + + Optional: If you would like to use direct networking (instead of the default bridge networking), configure these lines: + libvirt.vif.driver=com.cloud.hypervisor.kvm.resource.DirectVifDriver + network.direct.source.mode=private + network.direct.device=eth0 + + + The host is now ready to be added to a cluster. This is covered in a later section, see . It is recommended that you continue to read the documentation before adding the host! +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
diff --git a/docs/en-US/lxc-topology-req.xml b/docs/en-US/lxc-topology-req.xml new file mode 100644 index 00000000000..315863dd34c --- /dev/null +++ b/docs/en-US/lxc-topology-req.xml @@ -0,0 +1,24 @@ + + +%BOOK_ENTITIES; +]> + +
+ LXC Topology Requirements + The Management Servers communicate with LXC hosts on port 22 (ssh). +
diff --git a/docs/en-US/management-server-install-systemvm.xml b/docs/en-US/management-server-install-systemvm.xml index 8dc73deb992..928b95618fa 100644 --- a/docs/en-US/management-server-install-systemvm.xml +++ b/docs/en-US/management-server-install-systemvm.xml @@ -53,6 +53,10 @@ For KVM: # /usr/lib64/cloud/common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary -u http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2 -h kvm -s <optional-management-server-secret-key> -F + + For LXC: + # /usr/lib64/cloud/common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary -u http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2 -h lxc -s <optional-management-server-secret-key> -F + On Ubuntu, use the following path instead: # /usr/lib/cloud/common/scripts/storage/secondary/cloud-install-sys-tmplt diff --git a/docs/en-US/minimum-system-requirements.xml b/docs/en-US/minimum-system-requirements.xml index 0e497dd33f1..de1bc222023 100644 --- a/docs/en-US/minimum-system-requirements.xml +++ b/docs/en-US/minimum-system-requirements.xml @@ -68,6 +68,7 @@ +
diff --git a/docs/en-US/prepare-system-vm-template.xml b/docs/en-US/prepare-system-vm-template.xml index b53a509b4a1..35cc7e979bc 100644 --- a/docs/en-US/prepare-system-vm-template.xml +++ b/docs/en-US/prepare-system-vm-template.xml @@ -60,6 +60,10 @@ For KVM: # /usr/lib64/cloud/common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary -u http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2 -h kvm -s <optional-management-server-secret-key> -F + + For LXC: + # /usr/lib64/cloud/common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary -u http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2 -h lxc -s <optional-management-server-secret-key> -F + diff --git a/docs/en-US/topology-req.xml b/docs/en-US/topology-req.xml index 65c9c2ea5c6..75fe69b41a4 100644 --- a/docs/en-US/topology-req.xml +++ b/docs/en-US/topology-req.xml @@ -28,4 +28,5 @@ -
+ +
From 8a435f5b43bb013b73875ba4b8cf4a0b537036d4 Mon Sep 17 00:00:00 2001 From: radhikap Date: Tue, 9 Apr 2013 10:49:28 +0530 Subject: [PATCH 027/607] reverting to submit as patch on review board --- docs/en-US/Book_Info.xml | 39 +- docs/en-US/Installation_Guide.xml | 2 + docs/en-US/add-clusters-vsphere.xml | 103 +--- docs/en-US/images/add-cluster.png | Bin 35697 -> 46302 bytes docs/en-US/images/dvswitch-config.png | Bin 41955 -> 0 bytes docs/en-US/images/dvswitchconfig.png | Bin 38642 -> 0 bytes docs/en-US/vmware-cluster-config-dvswitch.xml | 192 ------- docs/en-US/vmware-install.xml | 515 ++++++------------ 8 files changed, 220 insertions(+), 631 deletions(-) delete mode 100644 docs/en-US/images/dvswitch-config.png delete mode 100644 docs/en-US/images/dvswitchconfig.png delete mode 100644 docs/en-US/vmware-cluster-config-dvswitch.xml diff --git a/docs/en-US/Book_Info.xml b/docs/en-US/Book_Info.xml index be8bcdd7544..c125ab8de2b 100644 --- a/docs/en-US/Book_Info.xml +++ b/docs/en-US/Book_Info.xml @@ -22,23 +22,26 @@ specific language governing permissions and limitations under the License. --> + - &PRODUCT; Guide - Revised August 9, 2012 10:48 pm Pacific - Apache CloudStack - 4.0.0 - 1 - - - Complete technical documentation of &PRODUCT;. - - - - - - - - - - + &PRODUCT; Guide + Revised August 9, 2012 10:48 pm Pacific + Apache CloudStack + 4.0.0-incubating + 1 + + + + Complete technical documentation of &PRODUCT;. + + + + + + + + + + + diff --git a/docs/en-US/Installation_Guide.xml b/docs/en-US/Installation_Guide.xml index 28df071d42f..6ce5527e86c 100644 --- a/docs/en-US/Installation_Guide.xml +++ b/docs/en-US/Installation_Guide.xml @@ -11,7 +11,9 @@ 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 diff --git a/docs/en-US/add-clusters-vsphere.xml b/docs/en-US/add-clusters-vsphere.xml index ca36ee108c4..6b2dff2a595 100644 --- a/docs/en-US/add-clusters-vsphere.xml +++ b/docs/en-US/add-clusters-vsphere.xml @@ -73,105 +73,36 @@ Provide the following information in the dialog. The fields below make reference to values from vCenter. - - - - - - addcluster.png: add a cluster - - - There might be a slight delay while the cluster is provisioned. It will automatically - display in the UI. - Cluster Name: Enter the name of the cluster you - created in vCenter. For example, "cloud.cluster.2.2.1" + Cluster Name. Enter the name of the cluster you created in vCenter. For example, + "cloud.cluster.2.2.1" - vCenter Username: Enter the username that &PRODUCT; - should use to connect to vCenter. This user must have all the administrative - privileges. + vCenter Host. Enter the hostname or IP address of the vCenter server. - CPU overcommit ratio: Enter the CPU overcommit - ratio for the cluster. The value you enter determines the CPU consumption of each VM in - the selected cluster. By increasing the over-provisioning ratio, more resource capacity - will be used. If no value is specified, the value is defaulted to 1, which implies no - over-provisioning is done. + vCenter Username. Enter the username that &PRODUCT; should use to connect to + vCenter. This user must have all administrative privileges. - RAM overcommit ratio: Enter the RAM overcommit - ratio for the cluster. The value you enter determines the memory consumption of each VM - in the selected cluster. By increasing the over-provisioning ratio, more resource - capacity will be used. If no value is specified, the value is defaulted to 1, which - implies no over-provisioning is done. + vCenter Password. Enter the password for the user named above - vCenter Host: Enter the hostname or IP address of - the vCenter server. - - - vCenter Password: Enter the password for the user - named above. - - - vCenter Datacenter: Enter the vCenter datacenter - that the cluster is in. For example, "cloud.dc.VM". - - - Override Public Traffic: Enable this option to - override the zone-wide public traffic for the cluster you are creating. - - - Public Traffic vSwitch Type: This option is - displayed only if you enable the Override Public Traffic option. Select a desirable - switch. If the vmware.use.dvswitch global parameter is true, the default option will be - VMware vNetwork Distributed Virtual Switch. - If you have enabled Nexus dvSwitch in the environment, the following parameters for - dvSwitch configuration are displayed: - - - Nexus dvSwitch IP Address: The IP address of the Nexus VSM appliance. - - - Nexus dvSwitch Username: The username required to access the Nexus VSM - applicance. - - - Nexus dvSwitch Password: The password associated with the username specified - above. - - - - - Override Guest Traffic: Enable this option to - override the zone-wide guest traffic for the cluster you are creating. - - - Guest Traffic vSwitch Type: This option is - displayed only if you enable the Override Guest Traffic option. Select a desirable - switch. If the vmware.use.dvswitch global parameter is true, the default option will be - VMware vNetwork Distributed Virtual Switch. - If you have enabled Nexus dvSwitch in the environment, the following parameters for - dvSwitch configuration are displayed: - - - Nexus dvSwitch IP Address: The IP address of the Nexus VSM appliance. - - - Nexus dvSwitch Username: The username required to access the Nexus VSM - applicance. - - - Nexus dvSwitch Password: The password associated with the username specified - above. - - + vCenter Datacenter. Enter the vCenter datacenter that the cluster is in. For + example, "cloud.dc.VM". + + + + + + addcluster.png: add cluster + + There might be a slight delay while the cluster is provisioned. It will - automatically display in the UI. + automatically display in the UI diff --git a/docs/en-US/images/add-cluster.png b/docs/en-US/images/add-cluster.png index 4b24ec721d8ef25968245184a30bc5a0eef5d62c..383f375ebedd62d9b294a56f777ed4b8c0d92e10 100644 GIT binary patch literal 46302 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 literal 35697 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 B26g}d diff --git a/docs/en-US/images/dvswitchconfig.png b/docs/en-US/images/dvswitchconfig.png deleted file mode 100644 index 55b1ef7daf38aeb023fb22b42aa5060d2e8a9a95..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38642 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 O00K`}KbLh*2~7Z_Kb=+p diff --git a/docs/en-US/vmware-cluster-config-dvswitch.xml b/docs/en-US/vmware-cluster-config-dvswitch.xml deleted file mode 100644 index 3e1e37c0941..00000000000 --- a/docs/en-US/vmware-cluster-config-dvswitch.xml +++ /dev/null @@ -1,192 +0,0 @@ - - -%BOOK_ENTITIES; -]> - - -
- Configuring a vSphere Cluster with VMware Distributed Virtual Switch - &PRODUCT;supports VMware vNetwork Distributed Switch (VDS) for virtual network configuration - in a VMware vSphere environment. This section helps you configure VMware VDS in a &PRODUCT; - deployment. Each vCenter server instance can support up to 128 VDS instances and each VDS - instance can manage up to 500 VMware hosts. -
- About VMware Distributed Virtual Switch - VMware VDS is an aggregation of host-level virtual switches on a VMware vCenter server. - VDS abstracts the configuration of individual virtual switches that span across a large number - of hosts, and enables centralized provisioning, administration, and monitoring for your entire - datacenter from a centralized interface. In effect, a VDS acts as a single virtual switch at - the datacenter level and manages networking for a number of hosts in a datacenter from a - centralized VMware vCenter server. Each VDS maintains network runtime state for VMs as they - move across multiple hosts, enabling inline monitoring and centralized firewall services. A - VDS can be deployed with or without Virtual Standard Switch and a Nexus 1000V virtual - switch. -
-
- Prerequisites and Guidelines - - - Do not attempt to configure VDS by altering VMware traffic label when configuring - physical networks. This will only work for Standard Virtual Switch and should not be - distributed. - - - VMware VDS does not support multiple VDS per traffic type. If a user has many VDS - switches, only one can be used for Guest traffic and one for Public traffic. - - - Management and Storage network does not support VDS and use Standard Switch for these - networks. - - -
-
- Enabling Virtual Distributed Switch in &PRODUCT; - To make a &PRODUCT; deployment VDS enabled, set the vmware.use.dvswitch parameter to true - by using the Global Settings page in the &PRODUCT; UI and restart the Management Server. - Unless you enable the vmware.use.dvswitch parameter, you cannot see any UI options specific to - VDS, and &PRODUCT; ignores the VDS-specific parameters given in the AddClusterCmd API call. - Additionally, &PRODUCT; uses VDS for virtual network infrastructure if the value of - vmware.use.dvswitch parameter is true and the value of vmware.use.nexus.dvswitch parameter is - false. - &PRODUCT; supports configuring virtual networks in a deployment with a mix of Virtual - Distributed Switch, Standard Virtual Switch and Nexus 1000v Virtual Switch. -
-
- Configuring Distributed Virtual Switch in &PRODUCT; - You can configure VDS by adding the necessary resources while a zone is created. - - - - - - dvSwitchConfig.png: Configuring dvSwitch - - - Alternatively, you can create an additional cluster with VDS enabled in the existing zone. - Use the Add Cluster option. For information as given in . - In both these cases, you must specify the following parameters to configure VDS: - - - - - - - Parameters - Description - - - - - Cluster Name - Enter the name of the cluster you created in vCenter. For example, - "cloud.cluster". - - - vCenter Host - Enter the host name or the IP address of the vCenter host where you have - deployed the Nexus virtual switch. - - - vCenter User name - Enter the username that &PRODUCT; should use to connect to vCenter. This - user must have all administrative privileges. - - - vCenter Password - Enter the password for the user named above. - - - vCenter Datacenter - Enter the vCenter datacenter that the cluster is in. For example, - "cloud.dc.VM". - - - Override Public Traffic - Enable this option to override the zone-wide public traffic for the cluster - you are creating. - - - Public Traffic vSwitch Type - This option is displayed only if you enable the Override Public Traffic - option. Select VMware vNetwork Distributed Virtual Switch. If the - vmware.use.dvswitch global parameter is true, the default option will be VMware - vNetwork Distributed Virtual Switch. - - - Public Traffic vSwitch Name - Specify a name to identify the switch. - - - Override Guest Traffic - Enable the option to override the zone-wide guest traffic for the cluster - you are creating. - - - Guest Traffic vSwitch Type - This option is displayed only if you enable the Override Guest Traffic - option. Select VMware vNetwork Distributed Virtual Switch. If the - vmware.use.dvswitch global parameter is true, the default option will be VMware - vNetwork Distributed Virtual Switch. - - - Guest Traffic vSwitch Name - Specify a name to identify the switch. - - - - -
-
- Removing Nexus Virtual Switch - - - In the vCenter datacenter that is served by the VMware dvSwitch, ensure that you - delete all the hosts in the corresponding cluster. - - - Log in with Admin permissions to the &PRODUCT; administrator UI. - - - In the left navigation bar, select Infrastructure. - - - In the Infrastructure page, click View all under Clusters. - - - Select the cluster where you want to remove the virtual switch. - - - In the VMware dvSwitch tab, click the name of the virtual switch. - - - In the Details page, click Delete VMware dvSwitch icon. - - - - - DeleteButton.png: button to delete dvSwitch - - - - Click Yes in the confirmation dialog box. - - -
-
diff --git a/docs/en-US/vmware-install.xml b/docs/en-US/vmware-install.xml index 81c9a49b038..467e1358638 100644 --- a/docs/en-US/vmware-install.xml +++ b/docs/en-US/vmware-install.xml @@ -1,5 +1,5 @@ - %BOOK_ENTITIES; ]> @@ -11,7 +11,9 @@ 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 @@ -325,439 +327,282 @@ esxcfg-firewall -o 59000-60000,tcp,out,vncextras guide.
-
+
Storage Preparation for vSphere (iSCSI only) Use of iSCSI requires preparatory work in vCenter. You must add an iSCSI target and create From c51587396adc1e179eec8a84569d2d7221380d00 Mon Sep 17 00:00:00 2001 From: Pranav Saxena Date: Tue, 9 Apr 2013 13:51:33 +0530 Subject: [PATCH 028/607] CLOUDSTACK-1893:[AWS Style Health Checks] UI hangs when one tries to create health check policy on a LB rule with VR as LB service provider --- ui/scripts/ui-custom/healthCheck.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/ui/scripts/ui-custom/healthCheck.js b/ui/scripts/ui-custom/healthCheck.js index ebb7e5a8903..4b42fa7724c 100644 --- a/ui/scripts/ui-custom/healthCheck.js +++ b/ui/scripts/ui-custom/healthCheck.js @@ -164,7 +164,15 @@ } }); }, g_queryAsyncJobResultInterval); - } + }, + + error:function(json){ + + cloudStack.dialog.notice({message: _s(json.responseText)}); //Error message in the API needs to be improved + $healthCheckDialog.dialog('close'); + $('.overlay').remove(); + } + }); } } From 47dc989675343a9dedc59edc64bb57e6977f49e8 Mon Sep 17 00:00:00 2001 From: Pranav Saxena Date: Tue, 9 Apr 2013 17:02:01 +0530 Subject: [PATCH 029/607] CLOUDSTACK-1428:[UI] Instance which are created without display name are not visible when added to LB: Using the name property instead in the data flow --- ui/scripts/network.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/scripts/network.js b/ui/scripts/network.js index 65be302c0c9..cc1aad34927 100755 --- a/ui/scripts/network.js +++ b/ui/scripts/network.js @@ -2943,7 +2943,7 @@ }); $.extend(item, { - _itemName: 'displayname', + _itemName: 'name', _itemData: lbInstances, _maxLength: { name: 7 From 9180bd599015ce248e894a0ef476a4604b1533e4 Mon Sep 17 00:00:00 2001 From: Murali Reddy Date: Tue, 9 Apr 2013 17:45:19 +0530 Subject: [PATCH 030/607] CLOUDSTACK-1834: Events are not generated for registerUserKeys() --- api/src/com/cloud/event/EventTypes.java | 3 +++ server/src/com/cloud/user/AccountManagerImpl.java | 1 + 2 files changed, 4 insertions(+) diff --git a/api/src/com/cloud/event/EventTypes.java b/api/src/com/cloud/event/EventTypes.java index 704a1bfc02c..5671f995c70 100755 --- a/api/src/com/cloud/event/EventTypes.java +++ b/api/src/com/cloud/event/EventTypes.java @@ -142,6 +142,9 @@ public class EventTypes { //registering SSH keypair events public static final String EVENT_REGISTER_SSH_KEYPAIR = "REGISTER.SSH.KEYPAIR"; + //register for user API and secret keys + public static final String EVENT_REGISTER_FOR_SECRET_API_KEY = "REGISTER.USER.KEY"; + // Template Events public static final String EVENT_TEMPLATE_CREATE = "TEMPLATE.CREATE"; public static final String EVENT_TEMPLATE_DELETE = "TEMPLATE.DELETE"; diff --git a/server/src/com/cloud/user/AccountManagerImpl.java b/server/src/com/cloud/user/AccountManagerImpl.java index 52ca79d5a60..9736aa122e6 100755 --- a/server/src/com/cloud/user/AccountManagerImpl.java +++ b/server/src/com/cloud/user/AccountManagerImpl.java @@ -1984,6 +1984,7 @@ public class AccountManagerImpl extends ManagerBase implements AccountManager, M } @Override @DB + @ActionEvent(eventType = EventTypes.EVENT_REGISTER_FOR_SECRET_API_KEY, eventDescription = "register for the developer API keys") public String[] createApiKeyAndSecretKey(RegisterCmd cmd) { Long userId = cmd.getId(); From 120d834186c750e53d0fe55fc0c039b88b64626c Mon Sep 17 00:00:00 2001 From: Murali Reddy Date: Tue, 9 Apr 2013 19:19:34 +0530 Subject: [PATCH 031/607] Fixing the regression introduced by spring refactor to stream line oss and non oss components. sincle the GSLB service impl has different configuration, moving it out the bean definition from applicationContext to ComponentContext and non-ossComponentContext --- client/tomcatconf/applicationContext.xml.in | 1 - client/tomcatconf/nonossComponentContext.xml.in | 7 ++++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/client/tomcatconf/applicationContext.xml.in b/client/tomcatconf/applicationContext.xml.in index 0b4ba82f630..3b51a83e6ad 100644 --- a/client/tomcatconf/applicationContext.xml.in +++ b/client/tomcatconf/applicationContext.xml.in @@ -733,7 +733,6 @@ - diff --git a/client/tomcatconf/nonossComponentContext.xml.in b/client/tomcatconf/nonossComponentContext.xml.in index 187446c44f3..fc8a9cd5409 100644 --- a/client/tomcatconf/nonossComponentContext.xml.in +++ b/client/tomcatconf/nonossComponentContext.xml.in @@ -43,7 +43,12 @@ --> - + + + + + + From ef2983cc12e909696be1c0c390c14d22cd4bebe1 Mon Sep 17 00:00:00 2001 From: Murali Reddy Date: Tue, 9 Apr 2013 19:23:13 +0530 Subject: [PATCH 032/607] region id is not Long, its integer changing the regionId parameter in ListGlobalLoadBalancerRuleCmd.java --- .../user/region/ha/gslb/ListGlobalLoadBalancerRuleCmd.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/src/org/apache/cloudstack/api/command/user/region/ha/gslb/ListGlobalLoadBalancerRuleCmd.java b/api/src/org/apache/cloudstack/api/command/user/region/ha/gslb/ListGlobalLoadBalancerRuleCmd.java index dae861a35b1..d75de57f7d1 100644 --- a/api/src/org/apache/cloudstack/api/command/user/region/ha/gslb/ListGlobalLoadBalancerRuleCmd.java +++ b/api/src/org/apache/cloudstack/api/command/user/region/ha/gslb/ListGlobalLoadBalancerRuleCmd.java @@ -45,7 +45,7 @@ public class ListGlobalLoadBalancerRuleCmd extends BaseListTaggedResourcesCmd { @Parameter(name = ApiConstants.ID, type = CommandType.UUID, entityType = GlobalLoadBalancerResponse.class, description = "the ID of the global load balancer rule") private Long id; - @Parameter(name = ApiConstants.REGION_ID, type = CommandType.UUID, entityType = RegionResponse.class, description = "region ID") + @Parameter(name = ApiConstants.REGION_ID, type = CommandType.INTEGER, entityType = RegionResponse.class, description = "region ID") private Integer regionId; // /////////////////////////////////////////////////// From d5d167cb97b95f5622c0e34fe4546642484016f6 Mon Sep 17 00:00:00 2001 From: Wido den Hollander Date: Tue, 9 Apr 2013 16:52:15 +0200 Subject: [PATCH 033/607] CLOUDSTACK-1980: Add cloudstack-sysvmadm and cloudstack-setup-encryption To the management server package. cloudstack-setup-bridge should be a part of the cloudstack-awsapi package --- debian/cloudstack-management.install | 2 ++ debian/rules | 2 ++ 2 files changed, 4 insertions(+) diff --git a/debian/cloudstack-management.install b/debian/cloudstack-management.install index ed7744b2afb..5a682d45862 100644 --- a/debian/cloudstack-management.install +++ b/debian/cloudstack-management.install @@ -29,4 +29,6 @@ /usr/bin/cloudstack-setup-management /usr/bin/cloudstack-setup-databases /usr/bin/cloudstack-migrate-databases +/usr/bin/cloudstack-setup-encryption +/usr/bin/cloudstack-sysvmadm /usr/share/cloudstack-management/* diff --git a/debian/rules b/debian/rules index c50214a30a4..4e55c71048c 100755 --- a/debian/rules +++ b/debian/rules @@ -126,6 +126,8 @@ install: install -D client/target/utilities/bin/cloud-set-guest-sshkey $(DESTDIR)/usr/bin/cloudstack-set-guest-sshkey install -D client/target/utilities/bin/cloud-setup-databases $(DESTDIR)/usr/bin/cloudstack-setup-databases install -D client/target/utilities/bin/cloud-setup-management $(DESTDIR)/usr/bin/cloudstack-setup-management + install -D client/target/utilities/bin/cloud-setup-encryption $(DESTDIR)/usr/bin/cloudstack-setup-encryption + install -D client/target/utilities/bin/cloud-sysvmadm $(DESTDIR)/usr/bin/cloudstack-sysvmadm install -D services/console-proxy/server/dist/systemvm.iso $(DESTDIR)/usr/share/$(PACKAGE)-common/vms/systemvm.iso # We need jasypt for cloud-install-sys-tmplt, so this is a nasty hack to get it into the right place install -D agent/target/dependencies/jasypt-1.9.0.jar $(DESTDIR)/usr/share/$(PACKAGE)-common/lib From 6c9fcb8c8f6739c9bad93fea8c28be3a768ca694 Mon Sep 17 00:00:00 2001 From: Hugo Trippaers Date: Tue, 29 Jan 2013 08:29:25 +0100 Subject: [PATCH 034/607] Make the VpcManager check a list of supported providers --- server/src/com/cloud/network/vpc/VpcManagerImpl.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/server/src/com/cloud/network/vpc/VpcManagerImpl.java b/server/src/com/cloud/network/vpc/VpcManagerImpl.java index 3948f2ecf73..dbd36ae0cf7 100644 --- a/server/src/com/cloud/network/vpc/VpcManagerImpl.java +++ b/server/src/com/cloud/network/vpc/VpcManagerImpl.java @@ -179,6 +179,7 @@ public class VpcManagerImpl extends ManagerBase implements VpcManager, VpcProvis private final ScheduledExecutorService _executor = Executors.newScheduledThreadPool(1, new NamedThreadFactory("VpcChecker")); private List vpcElements = null; private final List nonSupportedServices = Arrays.asList(Service.SecurityGroup, Service.Firewall); + private final List supportedProviders = Arrays.asList(Provider.VPCVirtualRouter, Provider.NiciraNvp); int _cleanupInterval; int _maxNetworks; @@ -1054,9 +1055,9 @@ public class VpcManagerImpl extends ManagerBase implements VpcManager, VpcProvis //1) in current release, only vpc provider is supported by Vpc offering List providers = _ntwkModel.getNtwkOffDistinctProviders(guestNtwkOff.getId()); for (Provider provider : providers) { - if (provider != Provider.VPCVirtualRouter) { - throw new InvalidParameterValueException("Only provider of type " + Provider.VPCVirtualRouter.getName() - + " is supported for network offering that can be used in VPC"); + if (!supportedProviders.contains(provider) ) { + throw new InvalidParameterValueException("Provider of type " + provider.getName() + + " is not supported for network offerings that can be used in VPC"); } } From 57fea8f90cda8aa39363d519e5d35d87ab82072e Mon Sep 17 00:00:00 2001 From: Joe Brockmeier Date: Tue, 9 Apr 2013 12:38:29 -0500 Subject: [PATCH 035/607] CLOUDSTACK-1837: Documenting steps from this bug for upgrade procedure from 4.0 to 4.1. Unsure how these translate for earlier CloudStack versions. --- docs/en-US/Release_Notes.xml | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/docs/en-US/Release_Notes.xml b/docs/en-US/Release_Notes.xml index b8465ed2e82..00cbc49c881 100644 --- a/docs/en-US/Release_Notes.xml +++ b/docs/en-US/Release_Notes.xml @@ -54,6 +54,26 @@ under the License. Make a backup of your MySQL database. If you run into any issues or need to roll back the upgrade, this will assist in debugging or restoring your existing environment. You'll be prompted for your password. # mysqldump -u root -p cloud > cloudstack-backup.sql + + Whether you're upgrading a Red Hat/CentOS based system or Ubuntu based system, you're going to need to stop the CloudStack management server before proceeding. + # service cloud-management stop + + + If you have made changes to /etc/cloud/management/components.xml, you'll need to carry these over manually to the new file, /etc/cloudstack/management/componentContext.xml. This is not done automatically. (If you're unsure, we recommend making a backup of the original components.xml to be on the safe side. + + + For AWS API Users Only + This step is only necessary if you're using the AWS APIs with &PRODUCT;. If not, you can skip this step. + + The file /etc/cloud/management/db.properties will be carried over to etc/cloudstack/management/db.properties, but the parameters for the AWS API are not carried over. You'll need to add these parameters to the new file manually: + +db.awsapi.username= +db.awsapi.password= +db.awsapi.host= +db.awsapi.port= + + For the AWS API queries to work, you'll need to copy those over to /etc/cloudstack/management/db.properties (with the values you have currently). + If you are using Ubuntu, follow this procedure to upgrade your packages. If not, skip to step . Community Packages @@ -74,7 +94,8 @@ under the License. $ sudo apt-get update - ### upgrade steps for Debian on master servers goes here. + Now that you have the repository configured, it's time to install the cloudstack-management package. This will pull in any other dependencies you need. + $ sudo apt-get install cloudstack-management You will need to manually install the cloudstack-agent package: From 1c33a3ee80d1172d300f06b4738cdbc46dfe4bc3 Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Fri, 5 Apr 2013 11:51:59 -0700 Subject: [PATCH 036/607] Make apidoc generation less verbose -- makes it hard to figure out what is going on with the rest of the build Signed-off-by: Chiradeep Vittal --- tools/apidoc/build-apidoc.sh | 2 +- tools/apidoc/pom.xml | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/tools/apidoc/build-apidoc.sh b/tools/apidoc/build-apidoc.sh index 14d6459d0c6..d048a1b2d2a 100755 --- a/tools/apidoc/build-apidoc.sh +++ b/tools/apidoc/build-apidoc.sh @@ -19,7 +19,7 @@ # cloud-build-api-doc.sh -- builds api documentation. #set -x -set -u +#set -u TARGETJARDIR="$1" shift DEPSDIR="$1" diff --git a/tools/apidoc/pom.xml b/tools/apidoc/pom.xml index b324ad4b567..f7570ba13ed 100644 --- a/tools/apidoc/pom.xml +++ b/tools/apidoc/pom.xml @@ -43,7 +43,6 @@ bash - -x ./build-apidoc.sh ${client.config.jars} ${client.config.jars} @@ -63,7 +62,7 @@ target tar - -cvjf + -cjf apidoc.tar.bz2 xmldoc From 1a5162f4d2357c46d1d21687f7c47007b4690604 Mon Sep 17 00:00:00 2001 From: Joe Brockmeier Date: Tue, 9 Apr 2013 13:54:35 -0500 Subject: [PATCH 037/607] The defaults.cfg for the Publican branding was out of date. Changed to current URLs. --- docs/publican-cloudstack/defaults.cfg | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/publican-cloudstack/defaults.cfg b/docs/publican-cloudstack/defaults.cfg index 9e27bdd309d..b288b33af47 100644 --- a/docs/publican-cloudstack/defaults.cfg +++ b/docs/publican-cloudstack/defaults.cfg @@ -16,6 +16,6 @@ # specific language governing permissions and limitations # under the License. -doc_url: "http://incubator.apache.org/cloudstack/docs" -prod_url: "http://cloudstack.org" +doc_url: "http://cloudstack.apache.org/docs" +prod_url: "http://cloudstack.apache.org" From 6a1d38476101429ad149617b684a31f80afcc0f7 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Mon, 8 Apr 2013 17:14:03 -0700 Subject: [PATCH 038/607] multiEdit: Support createForm for actions If 'createForm' block is specified in a multi-edit action, show createForm and pass fields to action. --- ui/scripts/ui/widgets/multiEdit.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/ui/scripts/ui/widgets/multiEdit.js b/ui/scripts/ui/widgets/multiEdit.js index 0a055916649..2cb0414707a 100755 --- a/ui/scripts/ui/widgets/multiEdit.js +++ b/ui/scripts/ui/widgets/multiEdit.js @@ -323,6 +323,7 @@ var $expandable = $dataItem.find('.expandable-listing'); var isDestroy = $target.hasClass('destroy'); var isEdit = $target.hasClass('edit'); + var createForm = action.createForm; if (isDestroy) { var $loading = _medit.loadingItem($multi, _l('label.removing') + '...'); @@ -340,7 +341,19 @@ } if (!isEdit) { - performAction(); + if (createForm) { + cloudStack.dialog.createForm({ + form: createForm, + after: function(args) { + var $loading = $('
').addClass('loading-overlay').prependTo($dataItem); + performAction({ data: args.data, complete: function() { + $multi.trigger('refresh'); + } }); + } + }); + } else { + performAction(); + } } else { // Get editable fields var editableFields = {}; From 685a8a72ceea51d06bac39ec81e5716288185787 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Tue, 9 Apr 2013 12:50:02 -0700 Subject: [PATCH 039/607] multiEdit, action pre-filter: pass 'actions' in options object --- ui/scripts/ui/widgets/multiEdit.js | 1 + 1 file changed, 1 insertion(+) diff --git a/ui/scripts/ui/widgets/multiEdit.js b/ui/scripts/ui/widgets/multiEdit.js index 2cb0414707a..27b14d16e61 100755 --- a/ui/scripts/ui/widgets/multiEdit.js +++ b/ui/scripts/ui/widgets/multiEdit.js @@ -240,6 +240,7 @@ // Action filter var allowedActions = options.preFilter ? options.preFilter({ + actions: $.map(actions, function(value, key) { return key; }), context: $.extend(true, {}, options.context, { multiRule: [data], actions: $.map(actions, function(value, key) { return key; }) From 876e93b441f5042fb872fd7e01c1e793988e0915 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Tue, 9 Apr 2013 14:15:29 -0700 Subject: [PATCH 040/607] VM multiple NICs: Fix broken UI due to API call changes --- ui/scripts/network.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ui/scripts/network.js b/ui/scripts/network.js index cc1aad34927..6f6a073812f 100755 --- a/ui/scripts/network.js +++ b/ui/scripts/network.js @@ -1186,7 +1186,7 @@ virtualmachineid: args.context.instances[0].id }, success: function(json) { - var ips = json.listnics.nic ? json.listnics.nic[0].secondaryip : []; + var ips = json.listnicsresponse.nic ? json.listnicsresponse.nic[0].secondaryip : []; args.response.success({ data: $(ips).map(function(index, ip) { @@ -1252,7 +1252,7 @@ virtualmachineid: args.context.instances[0].id }, success: function(json) { - var ips = json.listnics.nic[0].secondaryip + var ips = json.listnicsresponse.nic[0].secondaryip args.response.success({ data: $.grep($(ips).map(function(index, ip) { From e0692b39d9409fb2913b26533790f495d17beaf4 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Tue, 9 Apr 2013 14:16:01 -0700 Subject: [PATCH 041/607] List view UI: Fix 'no data to show' message not appearing in some cases --- ui/scripts/ui/widgets/listView.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/scripts/ui/widgets/listView.js b/ui/scripts/ui/widgets/listView.js index 4b88647e6f1..1c74056c75b 100644 --- a/ui/scripts/ui/widgets/listView.js +++ b/ui/scripts/ui/widgets/listView.js @@ -863,7 +863,7 @@ var uiCustom = listViewArgs.uiCustom; var subselect = uiCustom ? listViewArgs.listView.subselect : null; - if (!data || ($.isArray(data) && !data.length)) { + if (!data || !data.length) { if (!$tbody.find('tr').size()) { return [ $('').addClass('empty').append( From d9d6d21b5c04c5c9d210453ffc9f51c8aea1080a Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Tue, 9 Apr 2013 14:15:29 -0700 Subject: [PATCH 042/607] VM multiple NICs: Fix broken UI due to API call changes --- ui/scripts/network.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ui/scripts/network.js b/ui/scripts/network.js index cc1aad34927..6f6a073812f 100755 --- a/ui/scripts/network.js +++ b/ui/scripts/network.js @@ -1186,7 +1186,7 @@ virtualmachineid: args.context.instances[0].id }, success: function(json) { - var ips = json.listnics.nic ? json.listnics.nic[0].secondaryip : []; + var ips = json.listnicsresponse.nic ? json.listnicsresponse.nic[0].secondaryip : []; args.response.success({ data: $(ips).map(function(index, ip) { @@ -1252,7 +1252,7 @@ virtualmachineid: args.context.instances[0].id }, success: function(json) { - var ips = json.listnics.nic[0].secondaryip + var ips = json.listnicsresponse.nic[0].secondaryip args.response.success({ data: $.grep($(ips).map(function(index, ip) { From 4fd3fca84876b9caf863bfc4be0d075f503096c3 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Tue, 9 Apr 2013 14:16:01 -0700 Subject: [PATCH 043/607] List view UI: Fix 'no data to show' message not appearing in some cases --- ui/scripts/ui/widgets/listView.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/scripts/ui/widgets/listView.js b/ui/scripts/ui/widgets/listView.js index 4b88647e6f1..1c74056c75b 100644 --- a/ui/scripts/ui/widgets/listView.js +++ b/ui/scripts/ui/widgets/listView.js @@ -863,7 +863,7 @@ var uiCustom = listViewArgs.uiCustom; var subselect = uiCustom ? listViewArgs.listView.subselect : null; - if (!data || ($.isArray(data) && !data.length)) { + if (!data || !data.length) { if (!$tbody.find('tr').size()) { return [ $('').addClass('empty').append( From e7983b25cccc69abe0304a0b8d720c4c85c4561a Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Sun, 24 Mar 2013 23:50:02 -0700 Subject: [PATCH 044/607] QuickCloud: Enable secondary storage daemon to run outside the system vm --- agent/src/com/cloud/agent/AgentShell.java | 3 +- .../cloud/resource/AgentStorageResource.java | 2 +- .../PremiumSecondaryStorageResource.java | 2 + ...VmwareSecondaryStorageResourceHandler.java | 1 + scripts/vm/systemvm/injectkeys.sh | 26 ++- server/pom.xml | 5 + .../secondary/SecondaryStorageDiscoverer.java | 4 +- services/pom.xml | 1 + .../secondary-storage/conf/agent.properties | 11 ++ .../conf/environment.properties | 2 + .../secondary-storage/conf/log4j-cloud.xml | 102 ++++++++++ services/secondary-storage/pom.xml | 113 ++++++++++++ services/secondary-storage/scripts/_run.sh | 63 +++++++ .../secondary-storage/scripts/config_auth.sh | 69 +++++++ .../secondary-storage/scripts/config_ssl.sh | 174 ++++++++++++++++++ .../secondary-storage/scripts/ipfirewall.sh | 50 +++++ .../secondary-storage/scripts/run-proxy.sh | 48 +++++ services/secondary-storage/scripts/run.bat | 18 ++ services/secondary-storage/scripts/run.sh | 45 +++++ .../secondary-storage/scripts/ssvm-check.sh | 136 ++++++++++++++ .../CifsSecondaryStorageResource.java | 10 +- .../LocalSecondaryStorageResource.java | 6 +- .../resource/NfsSecondaryStorageResource.java | 148 +++++++++------ .../resource/SecondaryStorageResource.java | 2 +- .../SecondaryStorageResourceHandler.java | 2 +- .../storage/template/DownloadManager.java | 10 +- .../storage/template/DownloadManagerImpl.java | 51 +++-- .../storage/template/UploadManager.java | 6 +- .../storage/template/UploadManagerImpl.java | 7 +- tools/devcloud/pom.xml | 33 ++++ tools/devcloud/quickcloud.cfg | 120 ++++++++++++ tools/marvin/marvin/cloudstackConnection.py | 6 +- tools/marvin/marvin/deployDataCenter.py | 16 +- 33 files changed, 1188 insertions(+), 104 deletions(-) create mode 100644 services/secondary-storage/conf/agent.properties create mode 100644 services/secondary-storage/conf/environment.properties create mode 100644 services/secondary-storage/conf/log4j-cloud.xml create mode 100644 services/secondary-storage/pom.xml create mode 100755 services/secondary-storage/scripts/_run.sh create mode 100755 services/secondary-storage/scripts/config_auth.sh create mode 100755 services/secondary-storage/scripts/config_ssl.sh create mode 100755 services/secondary-storage/scripts/ipfirewall.sh create mode 100644 services/secondary-storage/scripts/run-proxy.sh create mode 100644 services/secondary-storage/scripts/run.bat create mode 100755 services/secondary-storage/scripts/run.sh create mode 100644 services/secondary-storage/scripts/ssvm-check.sh rename {core/src/com/cloud => services/secondary-storage/src/org/apache/cloudstack}/storage/resource/CifsSecondaryStorageResource.java (98%) rename {core/src/com/cloud => services/secondary-storage/src/org/apache/cloudstack}/storage/resource/LocalSecondaryStorageResource.java (97%) rename {core/src/com/cloud => services/secondary-storage/src/org/apache/cloudstack}/storage/resource/NfsSecondaryStorageResource.java (96%) rename {core/src/com/cloud => services/secondary-storage/src/org/apache/cloudstack}/storage/resource/SecondaryStorageResource.java (95%) rename {core/src/com/cloud => services/secondary-storage/src/org/apache/cloudstack}/storage/resource/SecondaryStorageResourceHandler.java (95%) rename {core/src/com/cloud => services/secondary-storage/src/org/apache/cloudstack}/storage/template/DownloadManager.java (94%) rename {core/src/com/cloud => services/secondary-storage/src/org/apache/cloudstack}/storage/template/DownloadManagerImpl.java (95%) rename {core/src/com/cloud => services/secondary-storage/src/org/apache/cloudstack}/storage/template/UploadManager.java (94%) rename {core/src/com/cloud => services/secondary-storage/src/org/apache/cloudstack}/storage/template/UploadManagerImpl.java (98%) create mode 100644 tools/devcloud/quickcloud.cfg diff --git a/agent/src/com/cloud/agent/AgentShell.java b/agent/src/com/cloud/agent/AgentShell.java index 2af08e9bf21..73b3950e7e4 100644 --- a/agent/src/com/cloud/agent/AgentShell.java +++ b/agent/src/com/cloud/agent/AgentShell.java @@ -38,12 +38,10 @@ import java.util.UUID; import javax.naming.ConfigurationException; -import org.apache.commons.beanutils.PropertyUtils; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager; import org.apache.commons.httpclient.methods.GetMethod; import org.apache.log4j.Logger; -import org.apache.log4j.PropertyConfigurator; import org.apache.log4j.xml.DOMConfigurator; import com.cloud.agent.Agent.ExitStatus; @@ -373,6 +371,7 @@ public class AgentShell implements IAgentShell { throw new ConfigurationException("Unable to find the guid"); } _guid = UUID.randomUUID().toString(); + _properties.setProperty("guid", _guid); } return true; diff --git a/plugins/hypervisors/simulator/src/com/cloud/resource/AgentStorageResource.java b/plugins/hypervisors/simulator/src/com/cloud/resource/AgentStorageResource.java index 2d81c2ab705..a012340d088 100644 --- a/plugins/hypervisors/simulator/src/com/cloud/resource/AgentStorageResource.java +++ b/plugins/hypervisors/simulator/src/com/cloud/resource/AgentStorageResource.java @@ -20,6 +20,7 @@ import java.util.Map; import javax.naming.ConfigurationException; +import org.apache.cloudstack.storage.resource.SecondaryStorageResource; import org.apache.log4j.Logger; import com.cloud.agent.api.Answer; @@ -35,7 +36,6 @@ import com.cloud.agent.manager.SimulatorManager; import com.cloud.agent.manager.SimulatorManager.AgentType; import com.cloud.host.Host; import com.cloud.host.Host.Type; -import com.cloud.storage.resource.SecondaryStorageResource; import com.cloud.vm.SecondaryStorageVm; diff --git a/plugins/hypervisors/vmware/src/com/cloud/storage/resource/PremiumSecondaryStorageResource.java b/plugins/hypervisors/vmware/src/com/cloud/storage/resource/PremiumSecondaryStorageResource.java index 856982a8e0e..3966e0242d9 100644 --- a/plugins/hypervisors/vmware/src/com/cloud/storage/resource/PremiumSecondaryStorageResource.java +++ b/plugins/hypervisors/vmware/src/com/cloud/storage/resource/PremiumSecondaryStorageResource.java @@ -21,6 +21,8 @@ import java.util.Map; import javax.naming.ConfigurationException; +import org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource; +import org.apache.cloudstack.storage.resource.SecondaryStorageResourceHandler; import org.apache.log4j.Logger; import com.cloud.agent.api.Answer; diff --git a/plugins/hypervisors/vmware/src/com/cloud/storage/resource/VmwareSecondaryStorageResourceHandler.java b/plugins/hypervisors/vmware/src/com/cloud/storage/resource/VmwareSecondaryStorageResourceHandler.java index 566e750c3fe..ce42f67bf1d 100644 --- a/plugins/hypervisors/vmware/src/com/cloud/storage/resource/VmwareSecondaryStorageResourceHandler.java +++ b/plugins/hypervisors/vmware/src/com/cloud/storage/resource/VmwareSecondaryStorageResourceHandler.java @@ -18,6 +18,7 @@ package com.cloud.storage.resource; import java.util.List; +import org.apache.cloudstack.storage.resource.SecondaryStorageResourceHandler; import org.apache.log4j.Logger; import com.cloud.agent.api.Answer; diff --git a/scripts/vm/systemvm/injectkeys.sh b/scripts/vm/systemvm/injectkeys.sh index e56eb85b356..49adfb34cb3 100755 --- a/scripts/vm/systemvm/injectkeys.sh +++ b/scripts/vm/systemvm/injectkeys.sh @@ -22,6 +22,7 @@ # $2 = new private key #set -x +set -e TMP=/tmp MOUNTPATH=${HOME}/systemvm_mnt @@ -29,7 +30,7 @@ TMPDIR=${TMP}/cloud/systemvm clean_up() { - sudo umount $MOUNTPATH + $SUDO umount $MOUNTPATH } inject_into_iso() { @@ -39,23 +40,23 @@ inject_into_iso() { local tmpiso=${TMP}/$1 mkdir -p $MOUNTPATH [ ! -f $isofile ] && echo "$(basename $0): Could not find systemvm iso patch file $isofile" && return 1 - sudo mount -o loop $isofile $MOUNTPATH + $SUDO mount -o loop $isofile $MOUNTPATH [ $? -ne 0 ] && echo "$(basename $0): Failed to mount original iso $isofile" && clean_up && return 1 diff -q $MOUNTPATH/authorized_keys $newpubkey &> /dev/null && clean_up && return 0 - sudo cp -b $isofile $backup + $SUDO cp -b $isofile $backup [ $? -ne 0 ] && echo "$(basename $0): Failed to backup original iso $isofile" && clean_up && return 1 rm -rf $TMPDIR mkdir -p $TMPDIR [ ! -d $TMPDIR ] && echo "$(basename $0): Could not find/create temporary dir $TMPDIR" && clean_up && return 1 - sudo cp -fr $MOUNTPATH/* $TMPDIR/ + $SUDO cp -fr $MOUNTPATH/* $TMPDIR/ [ $? -ne 0 ] && echo "$(basename $0): Failed to copy from original iso $isofile" && clean_up && return 1 - sudo cp $newpubkey $TMPDIR/authorized_keys + $SUDO cp $newpubkey $TMPDIR/authorized_keys [ $? -ne 0 ] && echo "$(basename $0): Failed to copy key $newpubkey from original iso to new iso " && clean_up && return 1 mkisofs -quiet -r -o $tmpiso $TMPDIR [ $? -ne 0 ] && echo "$(basename $0): Failed to create new iso $tmpiso from $TMPDIR" && clean_up && return 1 - sudo umount $MOUNTPATH + $SUDO umount $MOUNTPATH [ $? -ne 0 ] && echo "$(basename $0): Failed to unmount old iso from $MOUNTPATH" && return 1 - sudo cp -f $tmpiso $isofile + $SUDO cp -f $tmpiso $isofile [ $? -ne 0 ] && echo "$(basename $0): Failed to overwrite old iso $isofile with $tmpiso" && return 1 rm -rf $TMPDIR } @@ -63,12 +64,17 @@ inject_into_iso() { copy_priv_key() { local newprivkey=$1 diff -q $newprivkey $(dirname $0)/id_rsa.cloud && return 0 - sudo cp -fb $newprivkey $(dirname $0)/id_rsa.cloud - sudo chmod 644 $(dirname $0)/id_rsa.cloud + $SUDO cp -fb $newprivkey $(dirname $0)/id_rsa.cloud + $SUDO chmod 644 $(dirname $0)/id_rsa.cloud return $? } -sudo mkdir -p $MOUNTPATH +if [[ `whoami` == cloud* ]] +then + SUDO=$SUDO +fi + +$SUDO mkdir -p $MOUNTPATH [ $# -ne 3 ] && echo "Usage: $(basename $0) " && exit 3 newpubkey=$1 diff --git a/server/pom.xml b/server/pom.xml index a3971954475..8a6a10c591e 100644 --- a/server/pom.xml +++ b/server/pom.xml @@ -31,6 +31,11 @@ cloud-core ${project.version} + + org.apache.cloudstack + cloud-secondary-storage + ${project.version} + javax.servlet servlet-api diff --git a/server/src/com/cloud/storage/secondary/SecondaryStorageDiscoverer.java b/server/src/com/cloud/storage/secondary/SecondaryStorageDiscoverer.java index 3ca74a351e8..6e66e0de8f1 100755 --- a/server/src/com/cloud/storage/secondary/SecondaryStorageDiscoverer.java +++ b/server/src/com/cloud/storage/secondary/SecondaryStorageDiscoverer.java @@ -30,6 +30,8 @@ import javax.ejb.Local; import javax.inject.Inject; import javax.naming.ConfigurationException; +import org.apache.cloudstack.storage.resource.LocalSecondaryStorageResource; +import org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource; import org.apache.log4j.Logger; import com.cloud.agent.AgentManager; @@ -47,8 +49,6 @@ import com.cloud.storage.dao.VMTemplateDao; import com.cloud.storage.dao.VMTemplateHostDao; import com.cloud.storage.dao.VMTemplateZoneDao; import com.cloud.storage.resource.DummySecondaryStorageResource; -import com.cloud.storage.resource.LocalSecondaryStorageResource; -import com.cloud.storage.resource.NfsSecondaryStorageResource; import com.cloud.utils.component.ComponentContext; import com.cloud.utils.net.NfsUtils; import com.cloud.utils.script.Script; diff --git a/services/pom.xml b/services/pom.xml index 35ec2e186ba..54b22bbbf62 100644 --- a/services/pom.xml +++ b/services/pom.xml @@ -32,5 +32,6 @@ console-proxy + secondary-storage diff --git a/services/secondary-storage/conf/agent.properties b/services/secondary-storage/conf/agent.properties new file mode 100644 index 00000000000..4a25cbd8611 --- /dev/null +++ b/services/secondary-storage/conf/agent.properties @@ -0,0 +1,11 @@ +#Storage +#Sun Mar 24 22:52:35 PDT 2013 +mount.path=/Users/chiradeep/secondary-storage +eth1ip=192.168.56.1 +name=192.168.56.10 +eth2ip=192.168.56.10 +resource=org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource +piddir=. +instance=SecondaryStorage +developer=true +secondary.storage.vm=false diff --git a/services/secondary-storage/conf/environment.properties b/services/secondary-storage/conf/environment.properties new file mode 100644 index 00000000000..269acad9152 --- /dev/null +++ b/services/secondary-storage/conf/environment.properties @@ -0,0 +1,2 @@ +paths.script=../../scripts/storage/secondary/ +paths.pid=. diff --git a/services/secondary-storage/conf/log4j-cloud.xml b/services/secondary-storage/conf/log4j-cloud.xml new file mode 100644 index 00000000000..7d9d22cfa99 --- /dev/null +++ b/services/secondary-storage/conf/log4j-cloud.xml @@ -0,0 +1,102 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/services/secondary-storage/pom.xml b/services/secondary-storage/pom.xml new file mode 100644 index 00000000000..d8dbf1dd250 --- /dev/null +++ b/services/secondary-storage/pom.xml @@ -0,0 +1,113 @@ + + + 4.0.0 + cloud-secondary-storage + Apache CloudStack Secondary Storage Service + + org.apache.cloudstack + cloud-services + 4.2.0-SNAPSHOT + ../pom.xml + + + + log4j + log4j + ${cs.log4j.version} + + + com.google.code.gson + gson + ${cs.gson.version} + + + commons-codec + commons-codec + ${cs.codec.version} + + + + org.apache.cloudstack + cloud-agent + ${project.version} + + + org.apache.cloudstack + cloud-patches + ${project.version} + pom + + + + install + src + + + org.codehaus.mojo + exec-maven-plugin + 1.2.1 + + + + java + + + + + com.cloud.agent.AgentShell + + zone=1 + pod=1 + host=192.168.56.1 + + + + javax.net.ssl.trustStore + certs/realhostip.keystore + + + + + + + + + vmware + + + nonoss + + + + + org.apache.cloudstack + cloud-plugin-hypervisor-vmware + ${project.version} + + + org.apache.cloudstack + cloud-vmware-base + ${project.version} + + + + + + diff --git a/services/secondary-storage/scripts/_run.sh b/services/secondary-storage/scripts/_run.sh new file mode 100755 index 00000000000..e408378afbc --- /dev/null +++ b/services/secondary-storage/scripts/_run.sh @@ -0,0 +1,63 @@ +#!/usr/bin/env bash +# 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. + + + + + +#run.sh runs the console proxy. + +# make sure we delete the old files from the original template +rm console-proxy.jar +rm console-common.jar +rm conf/cloud.properties + +set -x + +CP=./:./conf +for file in *.jar +do + CP=${CP}:$file +done +keyvalues= + +CMDLINE=$(cat /var/cache/cloud/cmdline) + +#CMDLINE="graphical utf8 eth0ip=0.0.0.0 eth0mask=255.255.255.0 eth1ip=192.168.140.40 eth1mask=255.255.255.0 eth2ip=172.24.0.50 eth2mask=255.255.0.0 gateway=172.24.0.1 dns1=72.52.126.11 template=domP dns2=72.52.126.12 host=192.168.1.142 port=8250 mgmtcidr=192.168.1.0/24 localgw=192.168.140.1 zone=5 pod=5" +for i in $CMDLINE + do + KEY=$(echo $i | cut -s -d= -f1) + VALUE=$(echo $i | cut -s -d= -f2) + [ "$KEY" == "" ] && continue + case $KEY in + *) + keyvalues="${keyvalues} $KEY=$VALUE" + esac + done + +tot_mem_k=$(cat /proc/meminfo | grep MemTotal | awk '{print $2}') +let "tot_mem_m=tot_mem_k>>10" +let "eightypcnt=$tot_mem_m*8/10" +let "maxmem=$tot_mem_m-80" + +if [ $maxmem -gt $eightypcnt ] +then + maxmem=$eightypcnt +fi + +java -Djavax.net.ssl.trustStore=./certs/realhostip.keystore -mx${maxmem}m -cp $CP com.cloud.agent.AgentShell $keyvalues $@ diff --git a/services/secondary-storage/scripts/config_auth.sh b/services/secondary-storage/scripts/config_auth.sh new file mode 100755 index 00000000000..4b74f8eb995 --- /dev/null +++ b/services/secondary-storage/scripts/config_auth.sh @@ -0,0 +1,69 @@ +#!/usr/bin/env bash +# 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. + + + + + + +BASE_DIR="/var/www/html/copy/template/" +HTACCESS="$BASE_DIR/.htaccess" + +PASSWDFILE="/etc/httpd/.htpasswd" +if [ -d /etc/apache2 ] +then + PASSWDFILE="/etc/apache2/.htpasswd" +fi + +config_htaccess() { + mkdir -p $BASE_DIR + result=$? + echo "Options -Indexes" > $HTACCESS + let "result=$result+$?" + echo "AuthType Basic" >> $HTACCESS + let "result=$result+$?" + echo "AuthName \"Authentication Required\"" >> $HTACCESS + let "result=$result+$?" + echo "AuthUserFile \"$PASSWDFILE\"" >> $HTACCESS + let "result=$result+$?" + echo "Require valid-user" >> $HTACCESS + let "result=$result+$?" + return $result +} + +write_passwd() { + local user=$1 + local passwd=$2 + htpasswd -bc $PASSWDFILE $user $passwd + return $? +} + +if [ $# -ne 2 ] ; then + echo $"Usage: `basename $0` username password " + exit 0 +fi + +write_passwd $1 $2 +if [ $? -ne 0 ] +then + echo "Failed to update password" + exit 2 +fi + +config_htaccess +exit $? diff --git a/services/secondary-storage/scripts/config_ssl.sh b/services/secondary-storage/scripts/config_ssl.sh new file mode 100755 index 00000000000..8d80c4731ad --- /dev/null +++ b/services/secondary-storage/scripts/config_ssl.sh @@ -0,0 +1,174 @@ +#!/usr/bin/env bash +# 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. + + + + +help() { + printf " -c use customized key/cert\n" + printf " -k path of private key\n" + printf " -p path of certificate of public key\n" + printf " -t path of certificate chain\n" +} + + +config_httpd_conf() { + local ip=$1 + local srvr=$2 + cp -f /etc/httpd/conf/httpd.conf.orig /etc/httpd/conf/httpd.conf + sed -i -e "s/Listen.*:80$/Listen $ip:80/" /etc/httpd/conf/httpd.conf + echo " " >> /etc/httpd/conf/httpd.conf + echo " DocumentRoot /var/www/html/" >> /etc/httpd/conf/httpd.conf + echo " ServerName $srvr" >> /etc/httpd/conf/httpd.conf + echo " SSLEngine on" >> /etc/httpd/conf/httpd.conf + echo " SSLCertificateFile /etc/httpd/ssl/certs/realhostip.crt" >> /etc/httpd/conf/httpd.conf + echo " SSLCertificateKeyFile /etc/httpd/ssl/keys/realhostip.key" >> /etc/httpd/conf/httpd.conf + echo "" >> /etc/httpd/conf/httpd.conf +} + +config_apache2_conf() { + local ip=$1 + local srvr=$2 + cp -f /etc/apache2/sites-available/default.orig /etc/apache2/sites-available/default + cp -f /etc/apache2/sites-available/default-ssl.orig /etc/apache2/sites-available/default-ssl + sed -i -e "s///" /etc/apache2/sites-available/default + sed -i -e "s///" /etc/apache2/sites-available/default-ssl + sed -i -e "s/Listen .*:80/Listen $ip:80/g" /etc/apache2/ports.conf + sed -i -e "s/Listen .*:443/Listen $ip:443/g" /etc/apache2/ports.conf + sed -i -e "s/NameVirtualHost .*:80/NameVirtualHost $ip:80/g" /etc/apache2/ports.conf + sed -i 's/ssl-cert-snakeoil.key/cert_apache.key/' /etc/apache2/sites-available/default-ssl + sed -i 's/ssl-cert-snakeoil.pem/cert_apache.crt/' /etc/apache2/sites-available/default-ssl +} + +copy_certs() { + local certdir=$(dirname $0)/certs + local mydir=$(dirname $0) + if [ -d $certdir ] && [ -f $customPrivKey ] && [ -f $customPrivCert ] ; then + mkdir -p /etc/httpd/ssl/keys && mkdir -p /etc/httpd/ssl/certs && cp $customprivKey /etc/httpd/ssl/keys && cp $customPrivCert /etc/httpd/ssl/certs + return $? + fi + if [ ! -z customCertChain ] && [ -f $customCertChain ] ; then + cp $customCertChain /etc/httpd/ssl/certs + fi + return 1 +} + +copy_certs_apache2() { + local certdir=$(dirname $0)/certs + local mydir=$(dirname $0) + if [ -f $customPrivKey ] && [ -f $customPrivCert ] ; then + cp $customPrivKey /etc/ssl/private/cert_apache.key && cp $customPrivCert /etc/ssl/certs/cert_apache.crt + fi + if [ ! -z "$customCertChain" ] && [ -f "$customCertChain" ] ; then + cp $customCertChain /etc/ssl/certs/cert_apache_chain.crt + fi + return 0 +} + + +cflag= +cpkflag= +cpcflag= +cccflag= +customPrivKey=$(dirname $0)/certs/realhostip.key +customPrivCert=$(dirname $0)/certs/realhostip.crt +customCertChain= +publicIp= +hostName= +while getopts 'i:h:k:p:t:c' OPTION +do + case $OPTION in + c) cflag=1 + ;; + k) cpkflag=1 + customPrivKey="$OPTARG" + ;; + p) cpcflag=1 + customPrivCert="$OPTARG" + ;; + t) cccflag=1 + customCertChain="$OPTARG" + ;; + i) publicIp="$OPTARG" + ;; + h) hostName="$OPTARG" + ;; + ?) help + ;; + esac +done + + +if [ -z "$publicIp" ] || [ -z "$hostName" ] +then + help + exit 1 +fi + +if [ "$cflag" == "1" ] +then + if [ "$cpkflag$cpcflag" != "11" ] + then + help + exit 1 + fi + if [ ! -f "$customPrivKey" ] + then + printf "priviate key file is not exist\n" + exit 2 + fi + + if [ ! -f "$customPrivCert" ] + then + printf "public certificate is not exist\n" + exit 3 + fi + + if [ "$cccflag" == "1" ] + then + if [ ! -f "$customCertChain" ] + then + printf "certificate chain is not exist\n" + exit 4 + fi + fi +fi + +if [ -d /etc/apache2 ] +then + copy_certs_apache2 +else + copy_certs +fi + +if [ $? -ne 0 ] +then + echo "Failed to copy certificates" + exit 2 +fi + +if [ -d /etc/apache2 ] +then + config_apache2_conf $publicIp $hostName + /etc/init.d/apache2 stop + /etc/init.d/apache2 start +else + config_httpd_conf $publicIp $hostName +fi + + diff --git a/services/secondary-storage/scripts/ipfirewall.sh b/services/secondary-storage/scripts/ipfirewall.sh new file mode 100755 index 00000000000..4711b8ac6db --- /dev/null +++ b/services/secondary-storage/scripts/ipfirewall.sh @@ -0,0 +1,50 @@ +#!/usr/bin/env bash +# 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. + +BASE_DIR="/var/www/html/copy/" +HTACCESS="$BASE_DIR/.htaccess" + +config_htaccess() { + mkdir -p $BASE_DIR + result=$? + echo "Options -Indexes" > $HTACCESS + let "result=$result+$?" + echo "order deny,allow" >> $HTACCESS + let "result=$result+$?" + echo "deny from all" >> $HTACCESS + let "result=$result+$?" + return $result +} + +ips(){ + echo "allow from $1" >> $HTACCESS + result=$? + return $result +} + +is_append="$1" +shift +if [ $is_append != "true" ]; then + config_htaccess +fi +for i in $@ +do + ips "$i" +done +exit $? + diff --git a/services/secondary-storage/scripts/run-proxy.sh b/services/secondary-storage/scripts/run-proxy.sh new file mode 100644 index 00000000000..d6ccf7c0091 --- /dev/null +++ b/services/secondary-storage/scripts/run-proxy.sh @@ -0,0 +1,48 @@ +#!/usr/bin/env bash +# 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. + + + + + +#run.sh runs the console proxy. + +# make sure we delete the old files from the original template +rm console-proxy.jar +rm console-common.jar +rm conf/cloud.properties + +CP=./:./conf +for file in *.jar +do + CP=${CP}:$file +done + +#CMDLINE=$(cat /proc/cmdline) +#for i in $CMDLINE +# do +# KEY=$(echo $i | cut -d= -f1) +# VALUE=$(echo $i | cut -d= -f2) +# case $KEY in +# mgmt_host) +# MGMT_HOST=$VALUE +# ;; +# esac +# done + +java -mx700m -cp $CP:./conf com.cloud.consoleproxy.ConsoleProxy $@ diff --git a/services/secondary-storage/scripts/run.bat b/services/secondary-storage/scripts/run.bat new file mode 100644 index 00000000000..ce6dc404574 --- /dev/null +++ b/services/secondary-storage/scripts/run.bat @@ -0,0 +1,18 @@ +rem Licensed to the Apache Software Foundation (ASF) under one +rem or more contributor license agreements. See the NOTICE file +rem distributed with this work for additional information +rem regarding copyright ownership. The ASF licenses this file +rem to you under the Apache License, Version 2.0 (the +rem "License"); you may not use this file except in compliance +rem with the License. You may obtain a copy of the License at +rem +rem http://www.apache.org/licenses/LICENSE-2.0 +rem +rem Unless required by applicable law or agreed to in writing, +rem software distributed under the License is distributed on an +rem "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +rem KIND, either express or implied. See the License for the +rem specific language governing permissions and limitations +rem under the License. + +java -mx700m -cp cloud-console-proxy.jar;;cloud-console-common.jar;log4j-1.2.15.jar;apache-log4j-extras-1.0.jar;gson-1.3.jar;commons-logging-1.1.1.jar;.;.\conf; com.cloud.consoleproxy.ConsoleProxy %* diff --git a/services/secondary-storage/scripts/run.sh b/services/secondary-storage/scripts/run.sh new file mode 100755 index 00000000000..146d96f0287 --- /dev/null +++ b/services/secondary-storage/scripts/run.sh @@ -0,0 +1,45 @@ +#!/usr/bin/env bash +# 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. + + + + + +#_run.sh runs the agent client. + +# set -x + +while true +do + ./_run.sh "$@" & + wait + ex=$? + if [ $ex -eq 0 ] || [ $ex -eq 1 ] || [ $ex -eq 66 ] || [ $ex -gt 128 ]; then + # permanent errors + sleep 5 + fi + + # user stop agent by service cloud stop + grep 'stop' /usr/local/cloud/systemvm/user_request &>/dev/null + if [ $? -eq 0 ]; then + timestamp=$(date) + echo "$timestamp User stops cloud.com service" >> /var/log/cloud.log + exit 0 + fi + sleep 5 +done diff --git a/services/secondary-storage/scripts/ssvm-check.sh b/services/secondary-storage/scripts/ssvm-check.sh new file mode 100644 index 00000000000..a4011647f07 --- /dev/null +++ b/services/secondary-storage/scripts/ssvm-check.sh @@ -0,0 +1,136 @@ +#!/usr/bin/env bash +# 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. + + +# Health check script for the Secondary Storage VM + +# DNS server is specified. + + +CMDLINE=/var/cache/cloud/cmdline +for i in `cat $CMDLINE` +do + key=`echo $i | cut -d= -f1` + value=`echo $i | cut -d= -f2` + case $key in + host) + MGMTSERVER=$value + ;; + esac +done + + +# ping dns server +echo ================================================ +DNSSERVER=`egrep '^nameserver' /etc/resolv.conf | awk '{print $2}'| head -1` +echo "First DNS server is " $DNSSERVER +ping -c 2 $DNSSERVER +if [ $? -eq 0 ] +then + echo "Good: Can ping DNS server" +else + echo "WARNING: cannot ping DNS server" + echo "route follows" + route -n +fi + + +# check dns resolve +echo ================================================ +nslookup download.cloud.com 1> /tmp/dns 2>&1 +grep 'no servers could' /tmp/dns 1> /dev/null 2>&1 +if [ $? -eq 0 ] +then + echo "ERROR: DNS not resolving download.cloud.com" + echo resolv.conf follows + cat /etc/resolv.conf + exit 2 +else + echo "Good: DNS resolves download.cloud.com" +fi + + +# check to see if we have the NFS volume mounted +echo ================================================ +mount|grep -v sunrpc|grep nfs 1> /dev/null 2>&1 +if [ $? -eq 0 ] +then + echo "NFS is currently mounted" + # check for write access + for MOUNTPT in `mount|grep -v sunrpc|grep nfs| awk '{print $3}'` + do + if [ $MOUNTPT != "/proc/xen" ] # mounted by xen + then + echo Mount point is $MOUNTPT + touch $MOUNTPT/foo + if [ $? -eq 0 ] + then + echo "Good: Can write to mount point" + rm $MOUNTPT/foo + else + echo "ERROR: Cannot write to mount point" + echo "You need to export with norootsquash" + fi + fi + done +else + echo "ERROR: NFS is not currently mounted" + echo "Try manually mounting from inside the VM" + NFSSERVER=`awk '{print $17}' $CMDLINE|awk -F= '{print $2}'|awk -F: '{print $1}'` + echo "NFS server is " $NFSSERVER + ping -c 2 $NFSSERVER + if [ $? -eq 0 ] + then + echo "Good: Can ping NFS server" + else + echo "WARNING: cannot ping NFS server" + echo routing table follows + route -n + fi +fi + + +# check for connectivity to the management server +echo ================================================ +echo Management server is $MGMTSERVER. Checking connectivity. +socatout=$(echo | socat - TCP:$MGMTSERVER:8250,connect-timeout=3 2>&1) +if [ $? -eq 0 ] +then + echo "Good: Can connect to management server port 8250" +else + echo "ERROR: Cannot connect to $MGMTSERVER port 8250" + echo $socatout + exit 4 +fi + + +# check for the java process running +echo ================================================ +ps -eaf|grep -v grep|grep java 1> /dev/null 2>&1 +if [ $? -eq 0 ] +then + echo "Good: Java process is running" +else + echo "ERROR: Java process not running. Try restarting the SSVM." + exit 3 +fi + +echo ================================================ +echo Tests Complete. Look for ERROR or WARNING above. + +exit 0 diff --git a/core/src/com/cloud/storage/resource/CifsSecondaryStorageResource.java b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/CifsSecondaryStorageResource.java similarity index 98% rename from core/src/com/cloud/storage/resource/CifsSecondaryStorageResource.java rename to services/secondary-storage/src/org/apache/cloudstack/storage/resource/CifsSecondaryStorageResource.java index 285005a1c3a..de4cfe0c97f 100755 --- a/core/src/com/cloud/storage/resource/CifsSecondaryStorageResource.java +++ b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/CifsSecondaryStorageResource.java @@ -14,7 +14,7 @@ // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. -package com.cloud.storage.resource; +package org.apache.cloudstack.storage.resource; import java.io.File; import java.net.InetAddress; @@ -27,6 +27,10 @@ import java.util.Random; import javax.naming.ConfigurationException; +import org.apache.cloudstack.storage.template.DownloadManager; +import org.apache.cloudstack.storage.template.DownloadManagerImpl; +import org.apache.cloudstack.storage.template.UploadManager; +import org.apache.cloudstack.storage.template.UploadManagerImpl; import org.apache.log4j.Logger; import com.cloud.agent.api.Answer; @@ -58,11 +62,7 @@ import com.cloud.resource.ServerResourceBase; import com.cloud.storage.Storage; import com.cloud.storage.Storage.StoragePoolType; import com.cloud.storage.StorageLayer; -import com.cloud.storage.template.DownloadManager; -import com.cloud.storage.template.DownloadManagerImpl; import com.cloud.storage.template.TemplateInfo; -import com.cloud.storage.template.UploadManager; -import com.cloud.storage.template.UploadManagerImpl; import com.cloud.utils.NumbersUtil; import com.cloud.utils.component.ComponentContext; import com.cloud.utils.exception.CloudRuntimeException; diff --git a/core/src/com/cloud/storage/resource/LocalSecondaryStorageResource.java b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/LocalSecondaryStorageResource.java similarity index 97% rename from core/src/com/cloud/storage/resource/LocalSecondaryStorageResource.java rename to services/secondary-storage/src/org/apache/cloudstack/storage/resource/LocalSecondaryStorageResource.java index c638c5d874e..b904254b944 100644 --- a/core/src/com/cloud/storage/resource/LocalSecondaryStorageResource.java +++ b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/LocalSecondaryStorageResource.java @@ -14,13 +14,15 @@ // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. -package com.cloud.storage.resource; +package org.apache.cloudstack.storage.resource; import java.util.HashMap; import java.util.Map; import javax.naming.ConfigurationException; +import org.apache.cloudstack.storage.template.DownloadManager; +import org.apache.cloudstack.storage.template.DownloadManagerImpl; import org.apache.log4j.Logger; import com.cloud.agent.api.Answer; @@ -46,8 +48,6 @@ import com.cloud.resource.ServerResourceBase; import com.cloud.storage.Storage; import com.cloud.storage.Storage.StoragePoolType; import com.cloud.storage.StorageLayer; -import com.cloud.storage.template.DownloadManager; -import com.cloud.storage.template.DownloadManagerImpl; import com.cloud.storage.template.TemplateInfo; import com.cloud.utils.component.ComponentContext; diff --git a/core/src/com/cloud/storage/resource/NfsSecondaryStorageResource.java b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java similarity index 96% rename from core/src/com/cloud/storage/resource/NfsSecondaryStorageResource.java rename to services/secondary-storage/src/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java index e65cbe1312e..6bcf98e1a60 100755 --- a/core/src/com/cloud/storage/resource/NfsSecondaryStorageResource.java +++ b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java @@ -14,7 +14,7 @@ // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. -package com.cloud.storage.resource; +package org.apache.cloudstack.storage.resource; import static com.cloud.utils.S3Utils.deleteDirectory; import static com.cloud.utils.S3Utils.getDirectory; @@ -46,6 +46,11 @@ import java.util.concurrent.Callable; import javax.naming.ConfigurationException; +import org.apache.cloudstack.storage.template.DownloadManager; +import org.apache.cloudstack.storage.template.DownloadManagerImpl; +import org.apache.cloudstack.storage.template.DownloadManagerImpl.ZfsPathParser; +import org.apache.cloudstack.storage.template.UploadManager; +import org.apache.cloudstack.storage.template.UploadManagerImpl; import org.apache.log4j.Logger; import com.cloud.agent.api.Answer; @@ -97,18 +102,12 @@ import com.cloud.host.Host; import com.cloud.host.Host.Type; import com.cloud.resource.ServerResourceBase; import com.cloud.storage.StorageLayer; -import com.cloud.storage.template.DownloadManager; -import com.cloud.storage.template.DownloadManagerImpl; -import com.cloud.storage.template.DownloadManagerImpl.ZfsPathParser; import com.cloud.storage.template.TemplateInfo; import com.cloud.storage.template.TemplateLocation; -import com.cloud.storage.template.UploadManager; -import com.cloud.storage.template.UploadManagerImpl; import com.cloud.utils.NumbersUtil; import com.cloud.utils.S3Utils; import com.cloud.utils.S3Utils.FileNamingStrategy; import com.cloud.utils.S3Utils.ObjectNamingStrategy; -import com.cloud.utils.component.ComponentContext; import com.cloud.utils.exception.CloudRuntimeException; import com.cloud.utils.net.NetUtils; import com.cloud.utils.script.OutputInterpreter; @@ -133,7 +132,7 @@ SecondaryStorageResource { String _role; Map _params; StorageLayer _storage; - boolean _inSystemVM = false; + protected boolean _inSystemVM = false; boolean _sslCopy = false; DownloadManager _dlMgr; @@ -150,7 +149,7 @@ SecondaryStorageResource { private String _storageNetmask; private String _storageGateway; private final List nfsIps = new ArrayList(); - final private String _parent = "/mnt/SecStorage"; + private String _parent = "/mnt/SecStorage"; final private String _tmpltDir = "/var/cloudstack/template"; final private String _tmpltpp = "template.properties"; @Override @@ -397,8 +396,8 @@ SecondaryStorageResource { @Override public boolean accept(final File directory, final String fileName) { - File fileToUpload = new File(directory.getAbsolutePath() + "/" + fileName); - return !fileName.startsWith(".") && !fileToUpload.isDirectory(); + File fileToUpload = new File(directory.getAbsolutePath() + "/" + fileName); + return !fileName.startsWith(".") && !fileToUpload.isDirectory(); } }, new ObjectNamingStrategy() { @Override @@ -1107,9 +1106,7 @@ SecondaryStorageResource { } private Answer execute(ListTemplateCommand cmd) { - if (!_inSystemVM){ - return new Answer(cmd, true, null); - } + if (cmd.getSwift() != null) { Map templateInfos = swiftListTemplate(cmd.getSwift()); return new ListTemplateAnswer(cmd.getSwift().toString(), templateInfos); @@ -1121,9 +1118,6 @@ SecondaryStorageResource { } private Answer execute(ListVolumeCommand cmd) { - if (!_inSystemVM){ - return new Answer(cmd, true, null); - } String root = getRootDir(cmd.getSecUrl()); Map templateInfos = _dlMgr.gatherVolumeInfo(root); @@ -1217,7 +1211,9 @@ SecondaryStorageResource { } public String allowOutgoingOnPrivate(String destCidr) { - + if (!_inSystemVM) { + return null; + } Script command = new Script("/bin/bash", s_logger); String intf = "eth1"; command.add("-c"); @@ -1392,6 +1388,9 @@ SecondaryStorageResource { synchronized public String getRootDir(String secUrl) { + if (!_inSystemVM) { + return _parent; + } try { URI uri = new URI(secUrl); String nfsHost = uri.getHost(); @@ -1474,6 +1473,11 @@ SecondaryStorageResource { _publicIp = (String) params.get("eth2ip"); _hostname = (String) params.get("name"); + String inSystemVM = (String) params.get("secondary.storage.vm"); + if (inSystemVM == null || "true".equalsIgnoreCase(inSystemVM)) { + _inSystemVM = true; + } + _storageIp = (String) params.get("storageip"); if (_storageIp == null) { s_logger.warn("Wait, there is no storageip in /proc/cmdline, something wrong!"); @@ -1505,7 +1509,10 @@ SecondaryStorageResource { throw new ConfigurationException("Unable to find class " + value); } } - _storage.mkdirs(_parent); + + if (_inSystemVM) + _storage.mkdirs(_parent); + _configSslScr = Script.findScript(getDefaultScriptsDir(), "config_ssl.sh"); if (_configSslScr != null) { s_logger.info("config_ssl.sh found in " + _configSslScr); @@ -1539,10 +1546,12 @@ SecondaryStorageResource { _instance = (String)params.get("instance"); + if (!_inSystemVM) { + _parent = (String) params.get("mount.path"); + } - String inSystemVM = (String)params.get("secondary.storage.vm"); - if (inSystemVM == null || "true".equalsIgnoreCase(inSystemVM)) { - _inSystemVM = true; + + if (_inSystemVM) { _localgw = (String)params.get("localgw"); if (_localgw != null) { // can only happen inside service vm String mgmtHost = (String) params.get("host"); @@ -1581,6 +1590,9 @@ SecondaryStorageResource { } private void startAdditionalServices() { + if (!_inSystemVM) { + return; + } Script command = new Script("/bin/bash", s_logger); command.add("-c"); command.add("if [ -f /etc/init.d/ssh ]; then service ssh restart; else service sshd restart; fi "); @@ -1598,6 +1610,9 @@ SecondaryStorageResource { } private void addRouteToInternalIpOrCidr(String localgw, String eth1ip, String eth1mask, String destIpOrCidr) { + if (!_inSystemVM) { + return; + } s_logger.debug("addRouteToInternalIp: localgw=" + localgw + ", eth1ip=" + eth1ip + ", eth1mask=" + eth1mask + ",destIp=" + destIpOrCidr); if (destIpOrCidr == null) { s_logger.debug("addRouteToInternalIp: destIp is null"); @@ -1637,6 +1652,9 @@ SecondaryStorageResource { } private void configureSSL() { + if (!_inSystemVM) { + return; + } Script command = new Script(_configSslScr); command.add("-i", _publicIp); command.add("-h", _hostname); @@ -1647,6 +1665,9 @@ SecondaryStorageResource { } private void configureSSL(String prvkeyPath, String prvCertPath, String certChainPath) { + if (!_inSystemVM) { + return; + } Script command = new Script(_configSslScr); command.add("-i", _publicIp); command.add("-h", _hostname); @@ -1758,13 +1779,15 @@ SecondaryStorageResource { if(_publicIp != null) cmd.setPublicIpAddress(_publicIp); - Script command = new Script("/bin/bash", s_logger); - command.add("-c"); - command.add("ln -sf " + _parent + " /var/www/html/copy"); - String result = command.execute(); - if (result != null) { - s_logger.warn("Error in linking err=" + result); - return null; + if (_inSystemVM) { + Script command = new Script("/bin/bash", s_logger); + command.add("-c"); + command.add("ln -sf " + _parent + " /var/www/html/copy"); + String result = command.execute(); + if (result != null) { + s_logger.warn("Error in linking err=" + result); + return null; + } } return new StartupCommand[] {cmd}; } @@ -1810,33 +1833,50 @@ SecondaryStorageResource { return "./scripts/storage/secondary"; } - @Override - public void setName(String name) { - // TODO Auto-generated method stub - - } + @Override + public void setName(String name) { + // TODO Auto-generated method stub - @Override - public void setConfigParams(Map params) { - // TODO Auto-generated method stub - - } + } - @Override - public Map getConfigParams() { - // TODO Auto-generated method stub - return null; - } + @Override + public void setConfigParams(Map params) { + // TODO Auto-generated method stub - @Override - public int getRunLevel() { - // TODO Auto-generated method stub - return 0; - } + } - @Override - public void setRunLevel(int level) { - // TODO Auto-generated method stub - - } + @Override + public Map getConfigParams() { + // TODO Auto-generated method stub + return null; + } + + @Override + public int getRunLevel() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public void setRunLevel(int level) { + // TODO Auto-generated method stub + + } + + @Override + public void fillNetworkInformation(final StartupCommand cmd) { + final String dummyMac = "00:06:0A:0B:0C:0D"; + final String dummyNetmask = "255.255.255.0"; + if (!_inSystemVM) { + cmd.setPrivateIpAddress(_eth1ip); + cmd.setPrivateMacAddress(dummyMac); + cmd.setPrivateNetmask(dummyNetmask); + cmd.setPublicIpAddress(_publicIp); + cmd.setPublicMacAddress(dummyMac); + cmd.setPublicNetmask(dummyNetmask); + cmd.setName(_hostname); + } else { + super.fillNetworkInformation(cmd); + } + } } diff --git a/core/src/com/cloud/storage/resource/SecondaryStorageResource.java b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/SecondaryStorageResource.java similarity index 95% rename from core/src/com/cloud/storage/resource/SecondaryStorageResource.java rename to services/secondary-storage/src/org/apache/cloudstack/storage/resource/SecondaryStorageResource.java index 37c6686afd8..5c87b0dcc92 100755 --- a/core/src/com/cloud/storage/resource/SecondaryStorageResource.java +++ b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/SecondaryStorageResource.java @@ -14,7 +14,7 @@ // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. -package com.cloud.storage.resource; +package org.apache.cloudstack.storage.resource; import com.cloud.agent.api.storage.ssCommand; import com.cloud.resource.ServerResource; /** diff --git a/core/src/com/cloud/storage/resource/SecondaryStorageResourceHandler.java b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/SecondaryStorageResourceHandler.java similarity index 95% rename from core/src/com/cloud/storage/resource/SecondaryStorageResourceHandler.java rename to services/secondary-storage/src/org/apache/cloudstack/storage/resource/SecondaryStorageResourceHandler.java index 28b96b621ed..d03d983dcd8 100644 --- a/core/src/com/cloud/storage/resource/SecondaryStorageResourceHandler.java +++ b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/SecondaryStorageResourceHandler.java @@ -14,7 +14,7 @@ // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. -package com.cloud.storage.resource; +package org.apache.cloudstack.storage.resource; import com.cloud.agent.api.Answer; import com.cloud.agent.api.Command; diff --git a/core/src/com/cloud/storage/template/DownloadManager.java b/services/secondary-storage/src/org/apache/cloudstack/storage/template/DownloadManager.java similarity index 94% rename from core/src/com/cloud/storage/template/DownloadManager.java rename to services/secondary-storage/src/org/apache/cloudstack/storage/template/DownloadManager.java index f4f8a0f17fa..3e5072abfa3 100644 --- a/core/src/com/cloud/storage/template/DownloadManager.java +++ b/services/secondary-storage/src/org/apache/cloudstack/storage/template/DownloadManager.java @@ -14,18 +14,20 @@ // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. -package com.cloud.storage.template; +package org.apache.cloudstack.storage.template; -import java.util.List; import java.util.Map; +import org.apache.cloudstack.storage.resource.SecondaryStorageResource; + import com.cloud.agent.api.storage.DownloadAnswer; import com.cloud.agent.api.storage.DownloadCommand; import com.cloud.agent.api.storage.DownloadCommand.Proxy; import com.cloud.agent.api.storage.DownloadCommand.ResourceType; -import com.cloud.storage.VMTemplateHostVO; import com.cloud.storage.Storage.ImageFormat; -import com.cloud.storage.resource.SecondaryStorageResource; +import com.cloud.storage.VMTemplateHostVO; +import com.cloud.storage.template.TemplateDownloader; +import com.cloud.storage.template.TemplateInfo; import com.cloud.utils.component.Manager; public interface DownloadManager extends Manager { diff --git a/core/src/com/cloud/storage/template/DownloadManagerImpl.java b/services/secondary-storage/src/org/apache/cloudstack/storage/template/DownloadManagerImpl.java similarity index 95% rename from core/src/com/cloud/storage/template/DownloadManagerImpl.java rename to services/secondary-storage/src/org/apache/cloudstack/storage/template/DownloadManagerImpl.java index 22e78a081c1..a9d23cb7779 100755 --- a/core/src/com/cloud/storage/template/DownloadManagerImpl.java +++ b/services/secondary-storage/src/org/apache/cloudstack/storage/template/DownloadManagerImpl.java @@ -14,7 +14,7 @@ // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. -package com.cloud.storage.template; +package org.apache.cloudstack.storage.template; import java.io.BufferedReader; import java.io.File; @@ -41,6 +41,7 @@ import java.util.concurrent.Executors; import javax.ejb.Local; import javax.naming.ConfigurationException; +import org.apache.cloudstack.storage.resource.SecondaryStorageResource; import org.apache.log4j.Logger; import com.cloud.agent.api.storage.DownloadAnswer; @@ -54,10 +55,22 @@ import com.cloud.storage.Storage.ImageFormat; import com.cloud.storage.StorageLayer; import com.cloud.storage.VMTemplateHostVO; import com.cloud.storage.VMTemplateStorageResourceAssoc; -import com.cloud.storage.resource.SecondaryStorageResource; +import com.cloud.storage.template.HttpTemplateDownloader; +import com.cloud.storage.template.IsoProcessor; +import com.cloud.storage.template.LocalTemplateDownloader; +import com.cloud.storage.template.Processor; import com.cloud.storage.template.Processor.FormatInfo; +import com.cloud.storage.template.QCOW2Processor; +import com.cloud.storage.template.RawImageProcessor; +import com.cloud.storage.template.ScpTemplateDownloader; +import com.cloud.storage.template.TemplateConstants; +import com.cloud.storage.template.TemplateDownloader; import com.cloud.storage.template.TemplateDownloader.DownloadCompleteCallback; import com.cloud.storage.template.TemplateDownloader.Status; +import com.cloud.storage.template.TemplateInfo; +import com.cloud.storage.template.TemplateLocation; +import com.cloud.storage.template.VhdProcessor; +import com.cloud.storage.template.VmdkProcessor; import com.cloud.utils.NumbersUtil; import com.cloud.utils.component.ManagerBase; import com.cloud.utils.exception.CloudRuntimeException; @@ -743,21 +756,27 @@ public class DownloadManagerImpl extends ManagerBase implements DownloadManager TemplateInfo tInfo = loc.getTemplateInfo(); - if ((tInfo.size == tInfo.physicalSize) && (tInfo.installPath.endsWith(ImageFormat.OVA.getFileExtension()))) { + if ((tInfo.getSize() == tInfo.getPhysicalSize()) + && (tInfo.getInstallPath().endsWith(ImageFormat.OVA.getFileExtension()))) { try { Processor processor = _processors.get("VMDK Processor"); VmdkProcessor vmdkProcessor = (VmdkProcessor)processor; - long vSize = vmdkProcessor.getTemplateVirtualSize(path, tInfo.installPath.substring(tInfo.installPath.lastIndexOf(File.separator) + 1)); - tInfo.size = vSize; + long vSize = + vmdkProcessor.getTemplateVirtualSize( + path, + tInfo.getInstallPath().substring( + tInfo.getInstallPath().lastIndexOf(File.separator) + 1)); + tInfo.setSize(vSize); loc.updateVirtualSize(vSize); loc.save(); } catch (Exception e) { - s_logger.error("Unable to get the virtual size of the template: " + tInfo.installPath + " due to " + e.getMessage()); + s_logger.error("Unable to get the virtual size of the template: " + tInfo.getInstallPath() + + " due to " + e.getMessage()); } } - result.put(tInfo.templateName, tInfo); - s_logger.debug("Added template name: " + tInfo.templateName + ", path: " + tmplt); + result.put(tInfo.getTemplateName(), tInfo); + s_logger.debug("Added template name: " + tInfo.getTemplateName() + ", path: " + tmplt); } /* for (String tmplt : isoTmplts) { @@ -800,21 +819,27 @@ public class DownloadManagerImpl extends ManagerBase implements DownloadManager TemplateInfo vInfo = loc.getTemplateInfo(); - if ((vInfo.size == vInfo.physicalSize) && (vInfo.installPath.endsWith(ImageFormat.OVA.getFileExtension()))) { + if ((vInfo.getSize() == vInfo.getPhysicalSize()) + && (vInfo.getInstallPath().endsWith(ImageFormat.OVA.getFileExtension()))) { try { Processor processor = _processors.get("VMDK Processor"); VmdkProcessor vmdkProcessor = (VmdkProcessor)processor; - long vSize = vmdkProcessor.getTemplateVirtualSize(path, vInfo.installPath.substring(vInfo.installPath.lastIndexOf(File.separator) + 1)); - vInfo.size = vSize; + long vSize = + vmdkProcessor.getTemplateVirtualSize( + path, + vInfo.getInstallPath().substring( + vInfo.getInstallPath().lastIndexOf(File.separator) + 1)); + vInfo.setSize(vSize); loc.updateVirtualSize(vSize); loc.save(); } catch (Exception e) { - s_logger.error("Unable to get the virtual size of the volume: " + vInfo.installPath + " due to " + e.getMessage()); + s_logger.error("Unable to get the virtual size of the volume: " + vInfo.getInstallPath() + + " due to " + e.getMessage()); } } result.put(vInfo.getId(), vInfo); - s_logger.debug("Added volume name: " + vInfo.templateName + ", path: " + vol); + s_logger.debug("Added volume name: " + vInfo.getTemplateName() + ", path: " + vol); } return result; } diff --git a/core/src/com/cloud/storage/template/UploadManager.java b/services/secondary-storage/src/org/apache/cloudstack/storage/template/UploadManager.java similarity index 94% rename from core/src/com/cloud/storage/template/UploadManager.java rename to services/secondary-storage/src/org/apache/cloudstack/storage/template/UploadManager.java index fa40b8c9ac6..14de1500104 100755 --- a/core/src/com/cloud/storage/template/UploadManager.java +++ b/services/secondary-storage/src/org/apache/cloudstack/storage/template/UploadManager.java @@ -14,7 +14,9 @@ // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. -package com.cloud.storage.template; +package org.apache.cloudstack.storage.template; + +import org.apache.cloudstack.storage.resource.SecondaryStorageResource; import com.cloud.agent.api.storage.CreateEntityDownloadURLAnswer; import com.cloud.agent.api.storage.CreateEntityDownloadURLCommand; @@ -24,7 +26,7 @@ import com.cloud.agent.api.storage.UploadAnswer; import com.cloud.agent.api.storage.UploadCommand; import com.cloud.storage.Storage.ImageFormat; import com.cloud.storage.Upload.Status; -import com.cloud.storage.resource.SecondaryStorageResource; +import com.cloud.storage.template.TemplateUploader; import com.cloud.utils.component.Manager; public interface UploadManager extends Manager { diff --git a/core/src/com/cloud/storage/template/UploadManagerImpl.java b/services/secondary-storage/src/org/apache/cloudstack/storage/template/UploadManagerImpl.java similarity index 98% rename from core/src/com/cloud/storage/template/UploadManagerImpl.java rename to services/secondary-storage/src/org/apache/cloudstack/storage/template/UploadManagerImpl.java index 2492a1be2b2..88623a9e0fb 100755 --- a/core/src/com/cloud/storage/template/UploadManagerImpl.java +++ b/services/secondary-storage/src/org/apache/cloudstack/storage/template/UploadManagerImpl.java @@ -14,7 +14,7 @@ // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. -package com.cloud.storage.template; +package org.apache.cloudstack.storage.template; import java.io.File; import java.net.URI; @@ -30,6 +30,7 @@ import java.util.concurrent.Executors; import javax.naming.ConfigurationException; +import org.apache.cloudstack.storage.resource.SecondaryStorageResource; import org.apache.log4j.Logger; import com.cloud.agent.api.storage.CreateEntityDownloadURLAnswer; @@ -43,7 +44,9 @@ import com.cloud.storage.Storage.ImageFormat; import com.cloud.storage.StorageLayer; import com.cloud.storage.Upload; import com.cloud.storage.UploadVO; -import com.cloud.storage.resource.SecondaryStorageResource; +import com.cloud.storage.template.FtpTemplateUploader; +import com.cloud.storage.template.Processor; +import com.cloud.storage.template.TemplateUploader; import com.cloud.storage.template.TemplateUploader.Status; import com.cloud.storage.template.TemplateUploader.UploadCompleteCallback; import com.cloud.utils.NumbersUtil; diff --git a/tools/devcloud/pom.xml b/tools/devcloud/pom.xml index d7b82c9d7fe..d32d84bd691 100644 --- a/tools/devcloud/pom.xml +++ b/tools/devcloud/pom.xml @@ -142,5 +142,38 @@ + + quicksvr + + + quicksvr + + + + + + org.codehaus.mojo + exec-maven-plugin + 1.2.1 + + + package + + exec + + + + + python + + ../marvin/marvin/deployDataCenter.py + -i + quickcloud.cfg + + + + + + diff --git a/tools/devcloud/quickcloud.cfg b/tools/devcloud/quickcloud.cfg new file mode 100644 index 00000000000..0e1fb4fb208 --- /dev/null +++ b/tools/devcloud/quickcloud.cfg @@ -0,0 +1,120 @@ +# 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. +# + +{ + "zones": [ + { + "name": "QuickCloud00", + "enabled" : "True", + "details" : [ + {"key" : "enable.secstorage.vm", "value": "False"}, + {"key" : "enable.consoleproxy.vm", "value": "False"} + ], + "physical_networks": [ + { + "broadcastdomainrange": "Zone", + "name": "test-network", + "traffictypes": [ + { + "typ": "Guest" + }, + { + "typ": "Management" + } + ], + "providers": [ + { + "broadcastdomainrange": "ZONE", + "name": "VirtualRouter" + }, + { + "broadcastdomainrange": "Pod", + "name": "SecurityGroupProvider" + } + ] + } + ], + "dns2": "4.4.4.4", + "dns1": "8.8.8.8", + "securitygroupenabled": "true", + "localstorageenabled": "true", + "networktype": "Basic", + "pods": [ + { + "endip": "192.168.56.220", + "name": "test00", + "startip": "192.168.56.200", + "guestIpRanges": [ + { + "startip": "192.168.56.100", + "endip": "192.168.56.199", + "netmask": "255.255.255.0", + "gateway": "192.168.56.1" + } + ], + "netmask": "255.255.255.0", + "clusters": [ + { + "clustername": "test000", + "hypervisor": "XenServer", + "hosts": [ + { + "username": "root", + "url": "http://192.168.56.10/", + "password": "password" + } + ], + "clustertype": "CloudManaged" + } + ], + "gateway": "192.168.56.1" + } + ], + "internaldns1": "192.168.56.1", + "secondaryStorages": [ + { + "url": "nfs://192.168.56.10:/opt/storage/secondary" + } + ] + } + ], + "logger": [ + { + "name": "TestClient", + "file": "testclient.log" + }, + { + "name": "TestCase", + "file": "testcase.log" + } + ], + "mgtSvr": [ + { + "mgtSvrIp": "127.0.0.1", + "port": 8096 + } + ], + "dbSvr": + { + "dbSvr": "127.0.0.1", + "port": 3306, + "user": "cloud", + "passwd": "cloud", + "db": "cloud" + } +} diff --git a/tools/marvin/marvin/cloudstackConnection.py b/tools/marvin/marvin/cloudstackConnection.py index e8b861eedb2..1caeef35ff2 100644 --- a/tools/marvin/marvin/cloudstackConnection.py +++ b/tools/marvin/marvin/cloudstackConnection.py @@ -162,9 +162,9 @@ class cloudConnection(object): else: requests.pop(param) i = 0 - for v in value: - for key, val in v.iteritems(): - requests["%s[%d].%s"%(param,i,key)] = val + for val in value: + for k,v in val.iteritems(): + requests["%s[%d].%s"%(param,i,k)] = v i = i + 1 if self.logging is not None: diff --git a/tools/marvin/marvin/deployDataCenter.py b/tools/marvin/marvin/deployDataCenter.py index cec920c5ff0..42bc5f9ebef 100644 --- a/tools/marvin/marvin/deployDataCenter.py +++ b/tools/marvin/marvin/deployDataCenter.py @@ -270,6 +270,12 @@ class deployDataCenters(): zoneCmd.allocationstate = allocation_state return self.apiClient.updateZone(zoneCmd) + def updateZoneDetails(self, zoneid, details): + zoneCmd = updateZone.updateZoneCmd() + zoneCmd.id = zoneid + zoneCmd.details = details + return self.apiClient.updateZone(zoneCmd) + def createZones(self, zones): for zone in zones: createzone = createZone.createZoneCmd() @@ -320,7 +326,15 @@ class deployDataCenters(): zoneId) self.createSecondaryStorages(zone.secondaryStorages, zoneId) - self.enableZone(zoneId, "Enabled") + + enabled = getattr(zone, 'enabled', 'True') + if enabled == 'True' or enabled == 'None': + self.enableZone(zoneId, "Enabled") + details = getattr(zone, 'details') + if details is not None: + det = [d.__dict__ for d in details] + self.updateZoneDetails(zoneId, det) + return def isEipElbZone(self, zone): From 16790446e51645dc3e2623ebf57f88e0cfe2c89c Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Mon, 25 Mar 2013 12:15:14 -0700 Subject: [PATCH 045/607] QuickCloud: start console proxy service from mvn exec:java --- .../console-proxy/server/conf/log4j-cloud.xml | 2 +- services/console-proxy/server/pom.xml | 38 +++++++++++++++++++ 2 files changed, 39 insertions(+), 1 deletion(-) diff --git a/services/console-proxy/server/conf/log4j-cloud.xml b/services/console-proxy/server/conf/log4j-cloud.xml index 5b31c9db967..2d1d361c939 100644 --- a/services/console-proxy/server/conf/log4j-cloud.xml +++ b/services/console-proxy/server/conf/log4j-cloud.xml @@ -27,7 +27,7 @@ under the License. - + diff --git a/services/console-proxy/server/pom.xml b/services/console-proxy/server/pom.xml index f57b4caddd6..fd7b964bcab 100644 --- a/services/console-proxy/server/pom.xml +++ b/services/console-proxy/server/pom.xml @@ -254,6 +254,44 @@ + + quickcloud + + + quickcloud + + + + + + org.codehaus.mojo + exec-maven-plugin + 1.2.1 + + + + java + + + + + com.cloud.agent.AgentShell + + zone=1 + pod=1 + host=192.168.56.1 + + + + javax.net.ssl.trustStore + certs/realhostip.keystore + + + + + + + From 790d2ce82ef6b1ac910124c8c9ab519e2431e622 Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Mon, 25 Mar 2013 12:13:51 -0700 Subject: [PATCH 046/607] QuickCloud: Remove reference to unused code QuickCloud: remove some dead code in ConsoleProxyManager --- .../api/commands/DestroyConsoleProxyCmd.java | 12 ++-------- .../consoleproxy/ConsoleProxyService.java | 23 ------------------- .../org/apache/cloudstack/api/BaseCmd.java | 2 -- .../consoleproxy/ConsoleProxyManager.java | 17 +------------- .../consoleproxy/ConsoleProxyManagerImpl.java | 20 +++------------- .../consoleproxy/ConsoleProxyService.java | 9 ++++++++ 6 files changed, 15 insertions(+), 68 deletions(-) delete mode 100644 api/src/com/cloud/consoleproxy/ConsoleProxyService.java create mode 100644 server/src/com/cloud/consoleproxy/ConsoleProxyService.java diff --git a/api/src/com/cloud/api/commands/DestroyConsoleProxyCmd.java b/api/src/com/cloud/api/commands/DestroyConsoleProxyCmd.java index 829283e8b9f..f3210ce06f4 100644 --- a/api/src/com/cloud/api/commands/DestroyConsoleProxyCmd.java +++ b/api/src/com/cloud/api/commands/DestroyConsoleProxyCmd.java @@ -17,14 +17,12 @@ package com.cloud.api.commands; import org.apache.cloudstack.api.ApiConstants; -import org.apache.cloudstack.api.ApiErrorCode; import org.apache.cloudstack.api.BaseAsyncCmd; import org.apache.cloudstack.api.Parameter; -import org.apache.cloudstack.api.ServerApiException; -import org.apache.cloudstack.api.response.SuccessResponse; import org.apache.log4j.Logger; import com.cloud.event.EventTypes; +import com.cloud.exception.UnsupportedServiceException; import com.cloud.user.Account; import com.cloud.user.UserContext; @@ -82,12 +80,6 @@ public class DestroyConsoleProxyCmd extends BaseAsyncCmd { @Override public void execute(){ - boolean result = _consoleProxyService.destroyConsoleProxy(this); - if (result) { - SuccessResponse response = new SuccessResponse(getCommandName()); - this.setResponseObject(response); - } else { - throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to destroy console proxy"); - } + throw new UnsupportedServiceException("Use destroySystemVm API instead"); } } diff --git a/api/src/com/cloud/consoleproxy/ConsoleProxyService.java b/api/src/com/cloud/consoleproxy/ConsoleProxyService.java deleted file mode 100644 index c347e0bf9fc..00000000000 --- a/api/src/com/cloud/consoleproxy/ConsoleProxyService.java +++ /dev/null @@ -1,23 +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 com.cloud.consoleproxy; - -import com.cloud.api.commands.DestroyConsoleProxyCmd; - -public interface ConsoleProxyService { - boolean destroyConsoleProxy(DestroyConsoleProxyCmd cmd); -} diff --git a/api/src/org/apache/cloudstack/api/BaseCmd.java b/api/src/org/apache/cloudstack/api/BaseCmd.java index 78a2af36aa2..8fef422b915 100644 --- a/api/src/org/apache/cloudstack/api/BaseCmd.java +++ b/api/src/org/apache/cloudstack/api/BaseCmd.java @@ -32,7 +32,6 @@ import org.apache.cloudstack.usage.UsageService; import org.apache.log4j.Logger; import com.cloud.configuration.ConfigurationService; -import com.cloud.consoleproxy.ConsoleProxyService; import com.cloud.dao.EntityManager; import com.cloud.domain.Domain; import com.cloud.exception.ConcurrentOperationException; @@ -109,7 +108,6 @@ public abstract class BaseCmd { @Inject public TemplateService _templateService; @Inject public SecurityGroupService _securityGroupService; @Inject public SnapshotService _snapshotService; - @Inject public ConsoleProxyService _consoleProxyService; @Inject public VpcVirtualNetworkApplianceService _routerService; @Inject public ResponseGenerator _responseGenerator; @Inject public EntityManager _entityMgr; diff --git a/server/src/com/cloud/consoleproxy/ConsoleProxyManager.java b/server/src/com/cloud/consoleproxy/ConsoleProxyManager.java index 6ebf3bc61f4..faec51307b5 100755 --- a/server/src/com/cloud/consoleproxy/ConsoleProxyManager.java +++ b/server/src/com/cloud/consoleproxy/ConsoleProxyManager.java @@ -16,17 +16,9 @@ // under the License. package com.cloud.consoleproxy; -import com.cloud.agent.api.AgentControlAnswer; -import com.cloud.agent.api.ConsoleAccessAuthenticationCommand; -import com.cloud.agent.api.ConsoleProxyLoadReportCommand; -import com.cloud.agent.api.StartupCommand; -import com.cloud.host.HostVO; -import com.cloud.host.Status; -import com.cloud.host.Host.Type; -import com.cloud.info.ConsoleProxyInfo; import com.cloud.utils.component.Manager; import com.cloud.vm.ConsoleProxyVO; -public interface ConsoleProxyManager extends Manager { +public interface ConsoleProxyManager extends Manager, ConsoleProxyService { public static final int DEFAULT_PROXY_CAPACITY = 50; public static final int DEFAULT_STANDBY_CAPACITY = 10; @@ -45,16 +37,9 @@ public interface ConsoleProxyManager extends Manager { public ConsoleProxyManagementState getManagementState(); public void resumeLastManagementState(); - public ConsoleProxyInfo assignProxy(long dataCenterId, long userVmId); - public ConsoleProxyVO startProxy(long proxyVmId); public boolean stopProxy(long proxyVmId); public boolean rebootProxy(long proxyVmId); public boolean destroyProxy(long proxyVmId); - - public void onLoadReport(ConsoleProxyLoadReportCommand cmd); - public AgentControlAnswer onConsoleAccessAuthentication(ConsoleAccessAuthenticationCommand cmd); - public void onAgentConnect(HostVO host, StartupCommand cmd); - public void onAgentDisconnect(long agentId, Status state); } diff --git a/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java b/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java index 1edd8692ec7..fc4fc6eda77 100755 --- a/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java +++ b/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java @@ -30,7 +30,6 @@ import javax.ejb.Local; import javax.inject.Inject; import javax.naming.ConfigurationException; -import org.apache.cloudstack.api.ServerApiException; import org.apache.cloudstack.storage.datastore.db.PrimaryDataStoreDao; import org.apache.cloudstack.storage.datastore.db.StoragePoolVO; import org.apache.log4j.Logger; @@ -54,7 +53,6 @@ import com.cloud.agent.api.proxy.StartConsoleProxyAgentHttpHandlerCommand; import com.cloud.agent.api.to.NicTO; import com.cloud.agent.api.to.VirtualMachineTO; import com.cloud.agent.manager.Commands; -import com.cloud.api.commands.DestroyConsoleProxyCmd; import com.cloud.certificate.dao.CertificateDao; import com.cloud.cluster.ClusterManager; import com.cloud.configuration.Config; @@ -71,7 +69,6 @@ import com.cloud.deploy.DeployDestination; import com.cloud.exception.AgentUnavailableException; import com.cloud.exception.ConcurrentOperationException; import com.cloud.exception.InsufficientCapacityException; -import com.cloud.exception.InvalidParameterValueException; import com.cloud.exception.OperationTimedoutException; import com.cloud.exception.ResourceUnavailableException; import com.cloud.exception.StorageUnavailableException; @@ -113,8 +110,8 @@ import com.cloud.servlet.ConsoleProxyServlet; import com.cloud.storage.StorageManager; import com.cloud.storage.StoragePoolStatus; import com.cloud.storage.VMTemplateHostVO; -import com.cloud.storage.VMTemplateVO; import com.cloud.storage.VMTemplateStorageResourceAssoc.Status; +import com.cloud.storage.VMTemplateVO; import com.cloud.storage.dao.DiskOfferingDao; import com.cloud.storage.dao.VMTemplateDao; import com.cloud.storage.dao.VMTemplateHostDao; @@ -127,7 +124,6 @@ import com.cloud.utils.DateUtil; import com.cloud.utils.NumbersUtil; import com.cloud.utils.Pair; import com.cloud.utils.Ternary; -import com.cloud.utils.component.Manager; import com.cloud.utils.component.ManagerBase; import com.cloud.utils.db.DB; import com.cloud.utils.db.GlobalLock; @@ -170,7 +166,8 @@ import com.google.gson.GsonBuilder; // because sooner or later, it will be driven into Running state // @Local(value = { ConsoleProxyManager.class, ConsoleProxyService.class }) -public class ConsoleProxyManagerImpl extends ManagerBase implements ConsoleProxyManager, ConsoleProxyService, AgentHook, VirtualMachineGuru, SystemVmLoadScanHandler, ResourceStateAdapter { +public class ConsoleProxyManagerImpl extends ManagerBase implements ConsoleProxyManager, + AgentHook, VirtualMachineGuru, SystemVmLoadScanHandler, ResourceStateAdapter { private static final Logger s_logger = Logger.getLogger(ConsoleProxyManagerImpl.class); private static final int DEFAULT_CAPACITY_SCAN_INTERVAL = 30000; // 30 seconds @@ -1549,18 +1546,7 @@ public class ConsoleProxyManagerImpl extends ManagerBase implements ConsoleProxy return true; } - @Override - public boolean destroyConsoleProxy(DestroyConsoleProxyCmd cmd) throws ServerApiException { - Long proxyId = cmd.getId(); - // verify parameters - ConsoleProxyVO proxy = _consoleProxyDao.findById(proxyId); - if (proxy == null) { - throw new InvalidParameterValueException("unable to find a console proxy with id " + proxyId); - } - - return destroyProxy(proxyId); - } protected ConsoleProxyManagerImpl() { } diff --git a/server/src/com/cloud/consoleproxy/ConsoleProxyService.java b/server/src/com/cloud/consoleproxy/ConsoleProxyService.java new file mode 100644 index 00000000000..e43e5c315e2 --- /dev/null +++ b/server/src/com/cloud/consoleproxy/ConsoleProxyService.java @@ -0,0 +1,9 @@ +package com.cloud.consoleproxy; + +import com.cloud.info.ConsoleProxyInfo; + +public interface ConsoleProxyService { + + public abstract ConsoleProxyInfo assignProxy(long dataCenterId, long userVmId); + +} \ No newline at end of file From 3d78019e571677f1b2ac87acebe6192f2a4fa96c Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Tue, 26 Mar 2013 10:05:06 -0700 Subject: [PATCH 047/607] QuickCloud: copy authorization code from ConsoleProxyManagerImpl QuickCloud: refactor to avoid copy paste of authentication and startup code --- .../AgentBasedConsoleProxyManager.java | 184 +-------- .../com/cloud/consoleproxy/AgentHookBase.java | 266 +++++++++++++ .../consoleproxy/ConsoleProxyManagerImpl.java | 362 +++++++----------- .../StaticConsoleProxyManager.java | 84 +++- 4 files changed, 489 insertions(+), 407 deletions(-) create mode 100644 server/src/com/cloud/consoleproxy/AgentHookBase.java diff --git a/server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java b/server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java index 6f8575d751c..ff6e64eca94 100755 --- a/server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java +++ b/server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java @@ -23,48 +23,28 @@ import javax.inject.Inject; import javax.naming.ConfigurationException; import org.apache.log4j.Logger; -import org.springframework.stereotype.Component; import com.cloud.agent.AgentManager; -import com.cloud.agent.api.AgentControlAnswer; -import com.cloud.agent.api.ConsoleAccessAuthenticationAnswer; -import com.cloud.agent.api.ConsoleAccessAuthenticationCommand; -import com.cloud.agent.api.ConsoleProxyLoadReportCommand; import com.cloud.agent.api.GetVncPortAnswer; import com.cloud.agent.api.GetVncPortCommand; -import com.cloud.agent.api.StartupCommand; import com.cloud.agent.api.StartupProxyCommand; -import com.cloud.agent.api.StopAnswer; -import com.cloud.agent.api.to.NicTO; -import com.cloud.agent.api.to.VirtualMachineTO; -import com.cloud.agent.manager.Commands; import com.cloud.configuration.dao.ConfigurationDao; -import com.cloud.deploy.DeployDestination; -import com.cloud.exception.ConcurrentOperationException; -import com.cloud.exception.InsufficientCapacityException; -import com.cloud.exception.ResourceUnavailableException; import com.cloud.host.HostVO; -import com.cloud.host.Status; import com.cloud.host.dao.HostDao; import com.cloud.info.ConsoleProxyInfo; -import com.cloud.network.Network; +import com.cloud.keystore.KeystoreManager; import com.cloud.utils.NumbersUtil; import com.cloud.utils.component.ManagerBase; import com.cloud.vm.ConsoleProxyVO; -import com.cloud.vm.ReservationContext; import com.cloud.vm.UserVmVO; import com.cloud.vm.VMInstanceVO; -import com.cloud.vm.VirtualMachine; -import com.cloud.vm.VirtualMachineGuru; import com.cloud.vm.VirtualMachineManager; -import com.cloud.vm.VirtualMachineName; -import com.cloud.vm.VirtualMachineProfile; import com.cloud.vm.dao.ConsoleProxyDao; import com.cloud.vm.dao.UserVmDao; import com.cloud.vm.dao.VMInstanceDao; @Local(value = { ConsoleProxyManager.class }) -public class AgentBasedConsoleProxyManager extends ManagerBase implements ConsoleProxyManager, VirtualMachineGuru, AgentHook { +public class AgentBasedConsoleProxyManager extends ManagerBase implements ConsoleProxyManager { private static final Logger s_logger = Logger.getLogger(AgentBasedConsoleProxyManager.class); @Inject @@ -85,9 +65,25 @@ public class AgentBasedConsoleProxyManager extends ManagerBase implements Consol VirtualMachineManager _itMgr; @Inject protected ConsoleProxyDao _cpDao; + @Inject + protected KeystoreManager _ksMgr; @Inject ConfigurationDao _configDao; + public class AgentBasedAgentHook extends AgentHookBase { + + public AgentBasedAgentHook(VMInstanceDao instanceDao, HostDao hostDao, ConfigurationDao cfgDao, + KeystoreManager ksMgr, AgentManager agentMgr) { + super(instanceDao, hostDao, cfgDao, ksMgr, agentMgr); + } + + @Override + protected HostVO findConsoleProxyHost(StartupProxyCommand cmd) { + return _hostDao.findByGuid(cmd.getGuid()); + } + + } + public int getVncPort(VMInstanceVO vm) { if (vm.getHostId() == null) { return -1; @@ -123,11 +119,10 @@ public class AgentBasedConsoleProxyManager extends ManagerBase implements Consol _consoleProxyUrlDomain = configs.get("consoleproxy.url.domain"); - _listener = new ConsoleProxyListener(this); + _listener = + new ConsoleProxyListener(new AgentBasedAgentHook(_instanceDao, _hostDao, _configDao, _ksMgr, _agentMgr)); _agentMgr.registerForHostEvents(_listener, true, true, false); - _itMgr.registerGuru(VirtualMachine.Type.ConsoleProxy, this); - if (s_logger.isInfoEnabled()) { s_logger.info("AgentBasedConsoleProxyManager has been configured. SSL enabled: " + _sslEnabled); } @@ -177,64 +172,8 @@ public class AgentBasedConsoleProxyManager extends ManagerBase implements Consol return null; } - @Override - public void onLoadReport(ConsoleProxyLoadReportCommand cmd) { - } - @Override - public AgentControlAnswer onConsoleAccessAuthentication(ConsoleAccessAuthenticationCommand cmd) { - long vmId = 0; - if (cmd.getVmId() != null && cmd.getVmId().isEmpty()) { - if (s_logger.isTraceEnabled()) { - s_logger.trace("Invalid vm id sent from proxy(happens when proxy session has terminated)"); - } - return new ConsoleAccessAuthenticationAnswer(cmd, false); - } - - try { - vmId = Long.parseLong(cmd.getVmId()); - } catch (NumberFormatException e) { - s_logger.error("Invalid vm id " + cmd.getVmId() + " sent from console access authentication", e); - return new ConsoleAccessAuthenticationAnswer(cmd, false); - } - - // TODO authentication channel between console proxy VM and management - // server needs to be secured, - // the data is now being sent through private network, but this is - // apparently not enough - VMInstanceVO vm = _instanceDao.findById(vmId); - if (vm == null) { - return new ConsoleAccessAuthenticationAnswer(cmd, false); - } - - if (vm.getHostId() == null) { - s_logger.warn("VM " + vmId + " lost host info, failed authentication request"); - return new ConsoleAccessAuthenticationAnswer(cmd, false); - } - - HostVO host = _hostDao.findById(vm.getHostId()); - if (host == null) { - s_logger.warn("VM " + vmId + "'s host does not exist, fail authentication request"); - return new ConsoleAccessAuthenticationAnswer(cmd, false); - } - - String sid = cmd.getSid(); - if (sid == null || !sid.equals(vm.getVncPassword())) { - s_logger.warn("sid " + sid + " in url does not match stored sid " + vm.getVncPassword()); - return new ConsoleAccessAuthenticationAnswer(cmd, false); - } - - return new ConsoleAccessAuthenticationAnswer(cmd, true); - } - - @Override - public void onAgentConnect(HostVO host, StartupCommand cmd) { - } - - @Override - public void onAgentDisconnect(long agentId, Status state) { - } @Override public ConsoleProxyVO startProxy(long proxyVmId) { @@ -269,91 +208,8 @@ public class AgentBasedConsoleProxyManager extends ManagerBase implements Consol public void resumeLastManagementState() { } - @Override - public void startAgentHttpHandlerInVM(StartupProxyCommand startupCmd) { - } - @Override public String getName() { return _name; } - - @Override - public Long convertToId(String vmName) { - if (!VirtualMachineName.isValidConsoleProxyName(vmName, _instance)) { - return null; - } - return VirtualMachineName.getConsoleProxyId(vmName); - } - - @Override - public ConsoleProxyVO findByName(String name) { - // TODO Auto-generated method stub - return null; - } - - @Override - public ConsoleProxyVO findById(long id) { - // TODO Auto-generated method stub - return null; - } - - @Override - public ConsoleProxyVO persist(ConsoleProxyVO vm) { - // TODO Auto-generated method stub - return null; - } - - @Override - public boolean finalizeVirtualMachineProfile(VirtualMachineProfile profile, DeployDestination dest, ReservationContext context) { - // TODO Auto-generated method stub - return false; - } - - @Override - public boolean finalizeDeployment(Commands cmds, VirtualMachineProfile profile, DeployDestination dest, ReservationContext context) { - // TODO Auto-generated method stub - return false; - } - - @Override - public boolean finalizeCommandsOnStart(Commands cmds, VirtualMachineProfile profile) { - // TODO Auto-generated method stub - return false; - } - - @Override - public boolean finalizeStart(VirtualMachineProfile profile, long hostId, Commands cmds, ReservationContext context) { - // TODO Auto-generated method stub - return false; - } - - @Override - public void finalizeStop(VirtualMachineProfile profile, StopAnswer answer) { - // TODO Auto-generated method stub - } - - @Override - public void finalizeExpunge(ConsoleProxyVO proxy) { - } - - @Override - public boolean plugNic(Network network, NicTO nic, VirtualMachineTO vm, - ReservationContext context, DeployDestination dest) throws ConcurrentOperationException, ResourceUnavailableException, - InsufficientCapacityException { - //not supported - throw new UnsupportedOperationException("Plug nic is not supported for vm of type " + vm.getType()); - } - - - @Override - public boolean unplugNic(Network network, NicTO nic, VirtualMachineTO vm, - ReservationContext context, DeployDestination dest) throws ConcurrentOperationException, ResourceUnavailableException { - //not supported - throw new UnsupportedOperationException("Unplug nic is not supported for vm of type " + vm.getType()); - } - - @Override - public void prepareStop(VirtualMachineProfile profile) { - } } diff --git a/server/src/com/cloud/consoleproxy/AgentHookBase.java b/server/src/com/cloud/consoleproxy/AgentHookBase.java new file mode 100644 index 00000000000..b969f6da2ce --- /dev/null +++ b/server/src/com/cloud/consoleproxy/AgentHookBase.java @@ -0,0 +1,266 @@ +// 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.consoleproxy; + +import java.util.Date; +import java.util.Random; +import java.util.UUID; + +import org.apache.log4j.Logger; + +import com.cloud.agent.AgentManager; +import com.cloud.agent.api.AgentControlAnswer; +import com.cloud.agent.api.Answer; +import com.cloud.agent.api.ConsoleAccessAuthenticationAnswer; +import com.cloud.agent.api.ConsoleAccessAuthenticationCommand; +import com.cloud.agent.api.ConsoleProxyLoadReportCommand; +import com.cloud.agent.api.GetVncPortAnswer; +import com.cloud.agent.api.GetVncPortCommand; +import com.cloud.agent.api.StartupCommand; +import com.cloud.agent.api.StartupProxyCommand; +import com.cloud.agent.api.proxy.StartConsoleProxyAgentHttpHandlerCommand; +import com.cloud.configuration.Config; +import com.cloud.configuration.dao.ConfigurationDao; +import com.cloud.exception.AgentUnavailableException; +import com.cloud.exception.OperationTimedoutException; +import com.cloud.host.HostVO; +import com.cloud.host.Status; +import com.cloud.host.dao.HostDao; +import com.cloud.keystore.KeystoreManager; +import com.cloud.servlet.ConsoleProxyServlet; +import com.cloud.utils.Ternary; +import com.cloud.vm.VirtualMachine; +import com.cloud.vm.dao.VMInstanceDao; + +/** + * Utility class to manage interactions with agent-based console access + * Extracted from ConsoleProxyManagerImpl so that other console proxy managers + * can reuse + */ +public abstract class AgentHookBase implements AgentHook { + private static final Logger s_logger = Logger.getLogger(AgentHookBase.class); + + VMInstanceDao _instanceDao; + HostDao _hostDao; + ConfigurationDao _configDao; + AgentManager _agentMgr; + KeystoreManager _ksMgr; + final Random _random = new Random(System.currentTimeMillis()); + private String _hashKey; + + + public AgentHookBase(VMInstanceDao instanceDao, HostDao hostDao, ConfigurationDao cfgDao, KeystoreManager ksMgr, + AgentManager agentMgr) { + this._instanceDao = instanceDao; + this._hostDao = hostDao; + this._agentMgr = agentMgr; + this._configDao = cfgDao; + this._ksMgr = ksMgr; + } + + public String getHashKey() { + // although we may have race condition here, database transaction + // serialization should give us the same key + if (_hashKey == null) { + _hashKey = + _configDao.getValueAndInitIfNotExist(Config.HashKey.key(), Config.HashKey.getCategory(), UUID + .randomUUID().toString()); + } + return _hashKey; + } + + public AgentControlAnswer onConsoleAccessAuthentication(ConsoleAccessAuthenticationCommand cmd) { + Long vmId = null; + + String ticketInUrl = cmd.getTicket(); + if (ticketInUrl == null) { + s_logger.error("Access ticket could not be found, you could be running an old version of console proxy. vmId: " + + cmd.getVmId()); + return new ConsoleAccessAuthenticationAnswer(cmd, false); + } + + if (s_logger.isDebugEnabled()) { + s_logger.debug("Console authentication. Ticket in url for " + cmd.getHost() + ":" + cmd.getPort() + "-" + + cmd.getVmId() + " is " + ticketInUrl); + } + + if (!cmd.isReauthenticating()) { + String ticket = + ConsoleProxyServlet.genAccessTicket(cmd.getHost(), cmd.getPort(), cmd.getSid(), cmd.getVmId()); + if (s_logger.isDebugEnabled()) { + s_logger.debug("Console authentication. Ticket in 1 minute boundary for " + cmd.getHost() + ":" + + cmd.getPort() + "-" + cmd.getVmId() + " is " + ticket); + } + + if (!ticket.equals(ticketInUrl)) { + Date now = new Date(); + // considering of minute round-up + String minuteEarlyTicket = + ConsoleProxyServlet.genAccessTicket(cmd.getHost(), cmd.getPort(), cmd.getSid(), cmd.getVmId(), + new Date(now.getTime() - 60 * 1000)); + + if (s_logger.isDebugEnabled()) { + s_logger.debug("Console authentication. Ticket in 2-minute boundary for " + cmd.getHost() + ":" + + cmd.getPort() + "-" + cmd.getVmId() + " is " + minuteEarlyTicket); + } + + if (!minuteEarlyTicket.equals(ticketInUrl)) { + s_logger.error("Access ticket expired or has been modified. vmId: " + cmd.getVmId() + + "ticket in URL: " + ticketInUrl + ", tickets to check against: " + ticket + "," + + minuteEarlyTicket); + return new ConsoleAccessAuthenticationAnswer(cmd, false); + } + } + } + + if (cmd.getVmId() != null && cmd.getVmId().isEmpty()) { + if (s_logger.isDebugEnabled()) { + s_logger.debug("Invalid vm id sent from proxy(happens when proxy session has terminated)"); + } + return new ConsoleAccessAuthenticationAnswer(cmd, false); + } + + VirtualMachine vm = _instanceDao.findByUuid(cmd.getVmId()); + if (vm == null) { + vm = _instanceDao.findById(Long.parseLong(cmd.getVmId())); + } + if (vm == null) { + s_logger.error("Invalid vm id " + cmd.getVmId() + " sent from console access authentication"); + return new ConsoleAccessAuthenticationAnswer(cmd, false); + } + + if (vm.getHostId() == null) { + s_logger.warn("VM " + vmId + " lost host info, failed authentication request"); + return new ConsoleAccessAuthenticationAnswer(cmd, false); + } + + HostVO host = _hostDao.findById(vm.getHostId()); + if (host == null) { + s_logger.warn("VM " + vmId + "'s host does not exist, fail authentication request"); + return new ConsoleAccessAuthenticationAnswer(cmd, false); + } + + String sid = cmd.getSid(); + if (sid == null || !sid.equals(vm.getVncPassword())) { + s_logger.warn("sid " + sid + " in url does not match stored sid " + vm.getVncPassword()); + return new ConsoleAccessAuthenticationAnswer(cmd, false); + } + + if (cmd.isReauthenticating()) { + ConsoleAccessAuthenticationAnswer authenticationAnswer = new ConsoleAccessAuthenticationAnswer(cmd, true); + authenticationAnswer.setReauthenticating(true); + + s_logger.info("Re-authentication request, ask host " + vm.getHostId() + " for new console info"); + GetVncPortAnswer answer = + (GetVncPortAnswer) _agentMgr.easySend(vm.getHostId(), + new GetVncPortCommand(vm.getId(), vm.getInstanceName())); + + if (answer != null && answer.getResult()) { + Ternary parsedHostInfo = ConsoleProxyServlet.parseHostInfo(answer.getAddress()); + + if (parsedHostInfo.second() != null && parsedHostInfo.third() != null) { + + s_logger.info("Re-authentication result. vm: " + vm.getId() + ", tunnel url: " + + parsedHostInfo.second() + ", tunnel session: " + parsedHostInfo.third()); + + authenticationAnswer.setTunnelUrl(parsedHostInfo.second()); + authenticationAnswer.setTunnelSession(parsedHostInfo.third()); + } else { + s_logger.info("Re-authentication result. vm: " + vm.getId() + ", host address: " + + parsedHostInfo.first() + ", port: " + answer.getPort()); + + authenticationAnswer.setHost(parsedHostInfo.first()); + authenticationAnswer.setPort(answer.getPort()); + } + } else { + s_logger.warn("Re-authentication request failed"); + + authenticationAnswer.setSuccess(false); + } + + return authenticationAnswer; + } + + return new ConsoleAccessAuthenticationAnswer(cmd, true); + } + + public void startAgentHttpHandlerInVM(StartupProxyCommand startupCmd) { + StartConsoleProxyAgentHttpHandlerCommand cmd = null; + if (_configDao.isPremium()) { + String storePassword = String.valueOf(_random.nextLong()); + byte[] ksBits = + _ksMgr.getKeystoreBits(ConsoleProxyManager.CERTIFICATE_NAME, ConsoleProxyManager.CERTIFICATE_NAME, + storePassword); + + assert (ksBits != null); + if (ksBits == null) { + s_logger.error("Could not find and construct a valid SSL certificate"); + } + cmd = new StartConsoleProxyAgentHttpHandlerCommand(ksBits, storePassword); + cmd.setEncryptorPassword(getHashKey()); + } else { + cmd = new StartConsoleProxyAgentHttpHandlerCommand(); + cmd.setEncryptorPassword(getHashKey()); + } + + try { + + HostVO consoleProxyHost = findConsoleProxyHost(startupCmd); + + assert (consoleProxyHost != null); + + Answer answer = _agentMgr.send(consoleProxyHost.getId(), cmd); + if (answer == null || !answer.getResult()) { + s_logger.error("Console proxy agent reported that it failed to execute http handling startup command"); + } else { + s_logger.info("Successfully sent out command to start HTTP handling in console proxy agent"); + } + } catch (AgentUnavailableException e) { + s_logger.error("Unable to send http handling startup command to the console proxy resource for proxy:" + + startupCmd.getProxyVmId(), e); + } catch (OperationTimedoutException e) { + s_logger.error( + "Unable to send http handling startup command(time out) to the console proxy resource for proxy:" + + startupCmd.getProxyVmId(), e); + } catch (OutOfMemoryError e) { + s_logger.error("Unrecoverable OutOfMemory Error, exit and let it be re-launched"); + System.exit(1); + } catch (Exception e) { + s_logger.error( + "Unexpected exception when sending http handling startup command(time out) to the console proxy resource for proxy:" + + startupCmd.getProxyVmId(), e); + } + } + + protected abstract HostVO findConsoleProxyHost(StartupProxyCommand cmd); + + @Override + public void onLoadReport(ConsoleProxyLoadReportCommand cmd) { + // no-op since we do not auto-scale + } + + @Override + public void onAgentConnect(HostVO host, StartupCommand cmd) { + // no-op + } + + @Override + public void onAgentDisconnect(long agentId, Status state) { + // no-op since we do not autoscale + } +} diff --git a/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java b/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java index fc4fc6eda77..9740d28a94f 100755 --- a/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java +++ b/server/src/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java @@ -23,7 +23,6 @@ import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; -import java.util.Random; import java.util.UUID; import javax.ejb.Local; @@ -35,13 +34,8 @@ import org.apache.cloudstack.storage.datastore.db.StoragePoolVO; import org.apache.log4j.Logger; import com.cloud.agent.AgentManager; -import com.cloud.agent.api.AgentControlAnswer; import com.cloud.agent.api.Answer; -import com.cloud.agent.api.ConsoleAccessAuthenticationAnswer; -import com.cloud.agent.api.ConsoleAccessAuthenticationCommand; import com.cloud.agent.api.ConsoleProxyLoadReportCommand; -import com.cloud.agent.api.GetVncPortAnswer; -import com.cloud.agent.api.GetVncPortCommand; import com.cloud.agent.api.RebootCommand; import com.cloud.agent.api.StartupCommand; import com.cloud.agent.api.StartupProxyCommand; @@ -49,7 +43,6 @@ import com.cloud.agent.api.StopAnswer; import com.cloud.agent.api.check.CheckSshAnswer; import com.cloud.agent.api.check.CheckSshCommand; import com.cloud.agent.api.proxy.ConsoleProxyLoadAnswer; -import com.cloud.agent.api.proxy.StartConsoleProxyAgentHttpHandlerCommand; import com.cloud.agent.api.to.NicTO; import com.cloud.agent.api.to.VirtualMachineTO; import com.cloud.agent.manager.Commands; @@ -66,10 +59,8 @@ import com.cloud.dc.dao.DataCenterDao; import com.cloud.dc.dao.HostPodDao; import com.cloud.deploy.DataCenterDeployment; import com.cloud.deploy.DeployDestination; -import com.cloud.exception.AgentUnavailableException; import com.cloud.exception.ConcurrentOperationException; import com.cloud.exception.InsufficientCapacityException; -import com.cloud.exception.OperationTimedoutException; import com.cloud.exception.ResourceUnavailableException; import com.cloud.exception.StorageUnavailableException; import com.cloud.host.Host; @@ -106,7 +97,6 @@ import com.cloud.resource.ServerResource; import com.cloud.resource.UnableDeleteHostException; import com.cloud.service.ServiceOfferingVO; import com.cloud.service.dao.ServiceOfferingDao; -import com.cloud.servlet.ConsoleProxyServlet; import com.cloud.storage.StorageManager; import com.cloud.storage.StoragePoolStatus; import com.cloud.storage.VMTemplateHostVO; @@ -123,7 +113,6 @@ import com.cloud.user.UserContext; import com.cloud.utils.DateUtil; import com.cloud.utils.NumbersUtil; import com.cloud.utils.Pair; -import com.cloud.utils.Ternary; import com.cloud.utils.component.ManagerBase; import com.cloud.utils.db.DB; import com.cloud.utils.db.GlobalLock; @@ -167,7 +156,7 @@ import com.google.gson.GsonBuilder; // @Local(value = { ConsoleProxyManager.class, ConsoleProxyService.class }) public class ConsoleProxyManagerImpl extends ManagerBase implements ConsoleProxyManager, - AgentHook, VirtualMachineGuru, SystemVmLoadScanHandler, ResourceStateAdapter { + VirtualMachineGuru, SystemVmLoadScanHandler, ResourceStateAdapter { private static final Logger s_logger = Logger.getLogger(ConsoleProxyManagerImpl.class); private static final int DEFAULT_CAPACITY_SCAN_INTERVAL = 30000; // 30 seconds @@ -455,7 +444,131 @@ public class ConsoleProxyManagerImpl extends ManagerBase implements ConsoleProxy private KeystoreDao _ksDao; @Inject private KeystoreManager _ksMgr; - private final Random _random = new Random(System.currentTimeMillis()); + + public class VmBasedAgentHook extends AgentHookBase { + + public VmBasedAgentHook(VMInstanceDao instanceDao, HostDao hostDao, ConfigurationDao cfgDao, + KeystoreManager ksMgr, AgentManager agentMgr) { + super(instanceDao, hostDao, cfgDao, ksMgr, agentMgr); + } + + @Override + public void onLoadReport(ConsoleProxyLoadReportCommand cmd) { + if (cmd.getLoadInfo() == null) { + return; + } + + ConsoleProxyStatus status = null; + try { + GsonBuilder gb = new GsonBuilder(); + gb.setVersion(1.3); + Gson gson = gb.create(); + status = gson.fromJson(cmd.getLoadInfo(), ConsoleProxyStatus.class); + } catch (Throwable e) { + s_logger.warn("Unable to parse load info from proxy, proxy vm id : " + cmd.getProxyVmId() + ", info : " + cmd.getLoadInfo()); + } + + if (status != null) { + int count = 0; + if (status.getConnections() != null) { + count = status.getConnections().length; + } + + byte[] details = null; + if (cmd.getLoadInfo() != null) { + details = cmd.getLoadInfo().getBytes(Charset.forName("US-ASCII")); + } + _consoleProxyDao.update(cmd.getProxyVmId(), count, DateUtil.currentGMTTime(), details); + } else { + if (s_logger.isTraceEnabled()) { + s_logger.trace("Unable to get console proxy load info, id : " + cmd.getProxyVmId()); + } + + _consoleProxyDao.update(cmd.getProxyVmId(), 0, DateUtil.currentGMTTime(), null); + } + } + + @Override + public void onAgentConnect(HostVO host, StartupCommand cmd) { + // no-op + } + + @Override + public void onAgentDisconnect(long agentId, com.cloud.host.Status state) { + + if (state == com.cloud.host.Status.Alert || state == com.cloud.host.Status.Disconnected) { + // be it either in alert or in disconnected state, the agent + // process + // may be gone in the VM, + // we will be reacting to stop the corresponding VM and let the + // scan + // process to + HostVO host = _hostDao.findById(agentId); + if (host.getType() == Type.ConsoleProxy) { + String name = host.getName(); + if (s_logger.isInfoEnabled()) { + s_logger.info("Console proxy agent disconnected, proxy: " + name); + } + if (name != null && name.startsWith("v-")) { + String[] tokens = name.split("-"); + long proxyVmId = 0; + try { + proxyVmId = Long.parseLong(tokens[1]); + } catch (NumberFormatException e) { + s_logger.error("Unexpected exception " + e.getMessage(), e); + return; + } + + final ConsoleProxyVO proxy = _consoleProxyDao.findById(proxyVmId); + if (proxy != null) { + + // Disable this feature for now, as it conflicts + // with + // the case of allowing user to reboot console proxy + // when rebooting happens, we will receive + // disconnect + // here and we can't enter into stopping process, + // as when the rebooted one comes up, it will kick + // off a + // newly started one and trigger the process + // continue on forever + + /* + * _capacityScanScheduler.execute(new Runnable() { + * public void run() { if(s_logger.isInfoEnabled()) + * s_logger.info("Stop console proxy " + + * proxy.getName() + + * " VM because of that the agent running inside it has disconnected" + * ); stopProxy(proxy.getId()); } }); + */ + } else { + if (s_logger.isInfoEnabled()) { + s_logger.info("Console proxy agent disconnected but corresponding console proxy VM no longer exists in DB, proxy: " + + name); + } + } + } else { + assert (false) : "Invalid console proxy name: " + name; + } + } + } + + } + + @Override + protected HostVO findConsoleProxyHost(StartupProxyCommand startupCmd) { + long proxyVmId = startupCmd.getProxyVmId(); + ConsoleProxyVO consoleProxy = _consoleProxyDao.findById(proxyVmId); + if (consoleProxy == null) { + s_logger.info("Proxy " + proxyVmId + " is no longer in DB, skip sending startup command"); + return null; + } + + assert (consoleProxy != null); + return findConsoleProxyHostByName(consoleProxy.getHostName()); + } + + } @Override public ConsoleProxyInfo assignProxy(final long dataCenterId, final long vmId) { @@ -847,181 +960,9 @@ public class ConsoleProxyManagerImpl extends ManagerBase implements ConsoleProxy } } - @Override - public void onLoadReport(ConsoleProxyLoadReportCommand cmd) { - if (cmd.getLoadInfo() == null) { - return; - } - ConsoleProxyStatus status = null; - try { - GsonBuilder gb = new GsonBuilder(); - gb.setVersion(1.3); - Gson gson = gb.create(); - status = gson.fromJson(cmd.getLoadInfo(), ConsoleProxyStatus.class); - } catch (Throwable e) { - s_logger.warn("Unable to parse load info from proxy, proxy vm id : " + cmd.getProxyVmId() + ", info : " + cmd.getLoadInfo()); - } - if (status != null) { - int count = 0; - if (status.getConnections() != null) { - count = status.getConnections().length; - } - - byte[] details = null; - if (cmd.getLoadInfo() != null) { - details = cmd.getLoadInfo().getBytes(Charset.forName("US-ASCII")); - } - _consoleProxyDao.update(cmd.getProxyVmId(), count, DateUtil.currentGMTTime(), details); - } else { - if (s_logger.isTraceEnabled()) { - s_logger.trace("Unable to get console proxy load info, id : " + cmd.getProxyVmId()); - } - - _consoleProxyDao.update(cmd.getProxyVmId(), 0, DateUtil.currentGMTTime(), null); - } - } - - @Override - public AgentControlAnswer onConsoleAccessAuthentication(ConsoleAccessAuthenticationCommand cmd) { - Long vmId = null; - - String ticketInUrl = cmd.getTicket(); - if (ticketInUrl == null) { - s_logger.error("Access ticket could not be found, you could be running an old version of console proxy. vmId: " + cmd.getVmId()); - return new ConsoleAccessAuthenticationAnswer(cmd, false); - } - - if (s_logger.isDebugEnabled()) { - s_logger.debug("Console authentication. Ticket in url for " + cmd.getHost() + ":" + cmd.getPort() + "-" + cmd.getVmId() + " is " + ticketInUrl); - } - - if(!cmd.isReauthenticating()) { - String ticket = ConsoleProxyServlet.genAccessTicket(cmd.getHost(), cmd.getPort(), cmd.getSid(), cmd.getVmId()); - if (s_logger.isDebugEnabled()) { - s_logger.debug("Console authentication. Ticket in 1 minute boundary for " + cmd.getHost() + ":" + cmd.getPort() + "-" + cmd.getVmId() + " is " + ticket); - } - - if (!ticket.equals(ticketInUrl)) { - Date now = new Date(); - // considering of minute round-up - String minuteEarlyTicket = ConsoleProxyServlet.genAccessTicket(cmd.getHost(), cmd.getPort(), cmd.getSid(), cmd.getVmId(), new Date(now.getTime() - 60 * 1000)); - - if (s_logger.isDebugEnabled()) { - s_logger.debug("Console authentication. Ticket in 2-minute boundary for " + cmd.getHost() + ":" + cmd.getPort() + "-" + cmd.getVmId() + " is " + minuteEarlyTicket); - } - - if (!minuteEarlyTicket.equals(ticketInUrl)) { - s_logger.error("Access ticket expired or has been modified. vmId: " + cmd.getVmId() + "ticket in URL: " + ticketInUrl + ", tickets to check against: " + ticket + "," - + minuteEarlyTicket); - return new ConsoleAccessAuthenticationAnswer(cmd, false); - } - } - } - - if (cmd.getVmId() != null && cmd.getVmId().isEmpty()) { - if (s_logger.isDebugEnabled()) { - s_logger.debug("Invalid vm id sent from proxy(happens when proxy session has terminated)"); - } - return new ConsoleAccessAuthenticationAnswer(cmd, false); - } - - VirtualMachine vm = _instanceDao.findByUuid(cmd.getVmId()); - if (vm == null) { - vm = _instanceDao.findById(Long.parseLong(cmd.getVmId())); - } - if (vm == null) { - s_logger.error("Invalid vm id " + cmd.getVmId() + " sent from console access authentication"); - return new ConsoleAccessAuthenticationAnswer(cmd, false); - } - - if (vm.getHostId() == null) { - s_logger.warn("VM " + vmId + " lost host info, failed authentication request"); - return new ConsoleAccessAuthenticationAnswer(cmd, false); - } - - HostVO host = _hostDao.findById(vm.getHostId()); - if (host == null) { - s_logger.warn("VM " + vmId + "'s host does not exist, fail authentication request"); - return new ConsoleAccessAuthenticationAnswer(cmd, false); - } - - String sid = cmd.getSid(); - if (sid == null || !sid.equals(vm.getVncPassword())) { - s_logger.warn("sid " + sid + " in url does not match stored sid " + vm.getVncPassword()); - return new ConsoleAccessAuthenticationAnswer(cmd, false); - } - - if(cmd.isReauthenticating()) { - ConsoleAccessAuthenticationAnswer authenticationAnswer = new ConsoleAccessAuthenticationAnswer(cmd, true); - authenticationAnswer.setReauthenticating(true); - - s_logger.info("Re-authentication request, ask host " + vm.getHostId() + " for new console info"); - GetVncPortAnswer answer = (GetVncPortAnswer) _agentMgr.easySend(vm.getHostId(), new - GetVncPortCommand(vm.getId(), vm.getInstanceName())); - - if (answer != null && answer.getResult()) { - Ternary parsedHostInfo = ConsoleProxyServlet.parseHostInfo(answer.getAddress()); - - if(parsedHostInfo.second() != null && parsedHostInfo.third() != null) { - - s_logger.info("Re-authentication result. vm: " + vm.getId() + ", tunnel url: " + parsedHostInfo.second() - + ", tunnel session: " + parsedHostInfo.third()); - - authenticationAnswer.setTunnelUrl(parsedHostInfo.second()); - authenticationAnswer.setTunnelSession(parsedHostInfo.third()); - } else { - s_logger.info("Re-authentication result. vm: " + vm.getId() + ", host address: " + parsedHostInfo.first() - + ", port: " + answer.getPort()); - - authenticationAnswer.setHost(parsedHostInfo.first()); - authenticationAnswer.setPort(answer.getPort()); - } - } else { - s_logger.warn("Re-authentication request failed"); - - authenticationAnswer.setSuccess(false); - } - - return authenticationAnswer; - } - - return new ConsoleAccessAuthenticationAnswer(cmd, true); - } - - @Override - public void onAgentConnect(HostVO host, StartupCommand cmd) { - // if (host.getType() == Type.ConsoleProxy) { - // // TODO we can use this event to mark the proxy is up and - // // functioning instead of - // // pinging the console proxy VM command port - // // - // // for now, just log a message - // if (s_logger.isInfoEnabled()) { - // s_logger.info("Console proxy agent is connected. proxy: " + host.getName()); - // } - // - // /* update public/private ip address */ - // if (_IpAllocator != null && _IpAllocator.exteralIpAddressAllocatorEnabled()) { - // try { - // ConsoleProxyVO console = findConsoleProxyByHost(host); - // if (console == null) { - // s_logger.debug("Can't find console proxy "); - // return; - // } - // console.setPrivateIpAddress(cmd.getPrivateIpAddress()); - // console.setPublicIpAddress(cmd.getPublicIpAddress()); - // console.setPublicNetmask(cmd.getPublicNetmask()); - // _consoleProxyDao.persist(console); - // } catch (NumberFormatException e) { - // } - // } - // } - } - - @Override - public void onAgentDisconnect(long agentId, com.cloud.host.Status state) { + public void handleAgentDisconnect(long agentId, com.cloud.host.Status state) { if (state == com.cloud.host.Status.Alert || state == com.cloud.host.Status.Disconnected) { // be it either in alert or in disconnected state, the agent process // may be gone in the VM, @@ -1496,7 +1437,9 @@ public class ConsoleProxyManagerImpl extends ManagerBase implements ConsoleProxy value = agentMgrConfigs.get("port"); _mgmt_port = NumbersUtil.parseInt(value, 8250); - _listener = new ConsoleProxyListener(this); + _listener = + new ConsoleProxyListener(new VmBasedAgentHook(_instanceDao, _hostDao, _configDao, _ksMgr, + _agentMgr)); _agentMgr.registerForHostEvents(_listener, true, true, false); _itMgr.registerGuru(VirtualMachine.Type.ConsoleProxy, this); @@ -1719,52 +1662,7 @@ public class ConsoleProxyManagerImpl extends ManagerBase implements ConsoleProxy _consoleProxyDao.update(proxy.getId(), proxy); } - @Override - public void startAgentHttpHandlerInVM(StartupProxyCommand startupCmd) { - StartConsoleProxyAgentHttpHandlerCommand cmd = null; - if (_configDao.isPremium()) { - String storePassword = String.valueOf(_random.nextLong()); - byte[] ksBits = _ksMgr.getKeystoreBits(ConsoleProxyManager.CERTIFICATE_NAME, ConsoleProxyManager.CERTIFICATE_NAME, storePassword); - assert (ksBits != null); - if (ksBits == null) { - s_logger.error("Could not find and construct a valid SSL certificate"); - } - cmd = new StartConsoleProxyAgentHttpHandlerCommand(ksBits, storePassword); - cmd.setEncryptorPassword(getHashKey()); - } else { - cmd = new StartConsoleProxyAgentHttpHandlerCommand(); - cmd.setEncryptorPassword(getHashKey()); - } - - try { - long proxyVmId = startupCmd.getProxyVmId(); - ConsoleProxyVO consoleProxy = _consoleProxyDao.findById(proxyVmId); - if (consoleProxy == null) { - s_logger.info("Proxy " + proxyVmId + " is no longer in DB, skip sending startup command"); - return; - } - - assert (consoleProxy != null); - HostVO consoleProxyHost = findConsoleProxyHostByName(consoleProxy.getHostName()); - - Answer answer = _agentMgr.send(consoleProxyHost.getId(), cmd); - if (answer == null || !answer.getResult()) { - s_logger.error("Console proxy agent reported that it failed to execute http handling startup command"); - } else { - s_logger.info("Successfully sent out command to start HTTP handling in console proxy agent"); - } - } catch (AgentUnavailableException e) { - s_logger.error("Unable to send http handling startup command to the console proxy resource for proxy:" + startupCmd.getProxyVmId(), e); - } catch (OperationTimedoutException e) { - s_logger.error("Unable to send http handling startup command(time out) to the console proxy resource for proxy:" + startupCmd.getProxyVmId(), e); - } catch (OutOfMemoryError e) { - s_logger.error("Unrecoverable OutOfMemory Error, exit and let it be re-launched"); - System.exit(1); - } catch (Exception e) { - s_logger.error("Unexpected exception when sending http handling startup command(time out) to the console proxy resource for proxy:" + startupCmd.getProxyVmId(), e); - } - } @Override public ConsoleProxyVO persist(ConsoleProxyVO proxy) { diff --git a/server/src/com/cloud/consoleproxy/StaticConsoleProxyManager.java b/server/src/com/cloud/consoleproxy/StaticConsoleProxyManager.java index 3ba98a94362..7b59a6bf45e 100755 --- a/server/src/com/cloud/consoleproxy/StaticConsoleProxyManager.java +++ b/server/src/com/cloud/consoleproxy/StaticConsoleProxyManager.java @@ -16,29 +16,59 @@ // under the License. package com.cloud.consoleproxy; + import java.util.List; import java.util.Map; +import java.util.Random; import javax.ejb.Local; import javax.inject.Inject; import javax.naming.ConfigurationException; -import org.springframework.stereotype.Component; +import org.apache.log4j.Logger; +import com.cloud.agent.api.StartupCommand; +import com.cloud.agent.api.StartupProxyCommand; import com.cloud.configuration.dao.ConfigurationDao; import com.cloud.host.Host.Type; import com.cloud.host.HostVO; +import com.cloud.host.dao.HostDao; import com.cloud.info.ConsoleProxyInfo; +import com.cloud.keystore.KeystoreDao; +import com.cloud.keystore.KeystoreManager; import com.cloud.resource.ResourceManager; +import com.cloud.resource.ResourceStateAdapter; +import com.cloud.resource.ServerResource; +import com.cloud.resource.UnableDeleteHostException; +import com.cloud.utils.NumbersUtil; import com.cloud.vm.VMInstanceVO; import com.cloud.vm.dao.ConsoleProxyDao; +import com.cloud.vm.dao.VMInstanceDao; @Local(value={ConsoleProxyManager.class}) -public class StaticConsoleProxyManager extends AgentBasedConsoleProxyManager implements ConsoleProxyManager { - String _ip = null; - @Inject ConsoleProxyDao _proxyDao; - @Inject ResourceManager _resourceMgr; - @Inject ConfigurationDao _configDao; +public class StaticConsoleProxyManager extends AgentBasedConsoleProxyManager implements ConsoleProxyManager, + ResourceStateAdapter { + private static final Logger s_logger = Logger.getLogger(StaticConsoleProxyManager.class); + + @Inject + ConsoleProxyDao _proxyDao; + @Inject + ResourceManager _resourceMgr; + @Inject + ConfigurationDao _configDao; + @Inject + private VMInstanceDao _instanceDao; + @Inject + KeystoreDao _ksDao; + @Inject + private KeystoreManager _ksMgr; + @Inject + private HostDao _hostDao; + private final Random _random = new Random(System.currentTimeMillis()); + private String _hashKey; + private String _ip = null; + + @Override protected HostVO findHost(VMInstanceVO vm) { @@ -50,20 +80,52 @@ public class StaticConsoleProxyManager extends AgentBasedConsoleProxyManager imp @Override public ConsoleProxyInfo assignProxy(long dataCenterId, long userVmId) { - return new ConsoleProxyInfo(false, _ip, _consoleProxyPort, _consoleProxyUrlPort, _consoleProxyUrlDomain); + return new ConsoleProxyInfo(_sslEnabled, _ip, _consoleProxyPort, _consoleProxyUrlPort, _consoleProxyUrlDomain); } @Override public boolean configure(String name, Map params) throws ConfigurationException { super.configure(name, params); - - Map dbParams = _configDao.getConfiguration("ManagementServer", params); - - _ip = dbParams.get("public.ip"); + _ip = _configDao.getValue("consoleproxy.static.publicIp"); if (_ip == null) { _ip = "127.0.0.1"; } + + String value = (String) params.get("consoleproxy.sslEnabled"); + if (value != null && value.equalsIgnoreCase("true")) { + _sslEnabled = true; + } + int defaultPort = 8088; + if (_sslEnabled) + defaultPort = 8443; + _consoleProxyUrlPort = NumbersUtil.parseInt(_configDao.getValue("consoleproxy.static.port"), defaultPort); + + _resourceMgr.registerResourceStateAdapter(this.getClass().getSimpleName(), this); + return true; } + + @Override + public HostVO createHostVOForConnectedAgent(HostVO host, StartupCommand[] cmd) { + if (!(cmd[0] instanceof StartupProxyCommand)) { + return null; + } + + host.setType(com.cloud.host.Host.Type.ConsoleProxy); + return host; + } + + @Override + public HostVO createHostVOForDirectConnectAgent(HostVO host, StartupCommand[] startup, ServerResource resource, + Map details, List hostTags) { + return null; + } + + @Override + public DeleteHostAnswer deleteHost(HostVO host, boolean isForced, boolean isForceDeleteStorage) + throws UnableDeleteHostException { + return null; + } + } From 21b4635948152710935ba420cee50b823fd7a2b4 Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Tue, 26 Mar 2013 10:06:46 -0700 Subject: [PATCH 048/607] QuickCloud: also look for consoleproxy.properties using PropertiesUtil. When executed with mvn exec:java, the path 'conf' is not on the classpath --- .../src/com/cloud/consoleproxy/ConsoleProxy.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/services/console-proxy/server/src/com/cloud/consoleproxy/ConsoleProxy.java b/services/console-proxy/server/src/com/cloud/consoleproxy/ConsoleProxy.java index b5c29892a7b..2abce565856 100644 --- a/services/console-proxy/server/src/com/cloud/consoleproxy/ConsoleProxy.java +++ b/services/console-proxy/server/src/com/cloud/consoleproxy/ConsoleProxy.java @@ -17,6 +17,8 @@ package com.cloud.consoleproxy; import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; import java.io.InputStream; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; @@ -34,6 +36,7 @@ import org.apache.commons.codec.binary.Base64; import org.apache.log4j.xml.DOMConfigurator; import com.cloud.consoleproxy.util.Logger; +import com.cloud.utils.PropertiesUtil; import com.google.gson.Gson; import com.sun.net.httpserver.HttpServer; @@ -282,8 +285,17 @@ public class ConsoleProxy { InputStream confs = ConsoleProxy.class.getResourceAsStream("/conf/consoleproxy.properties"); Properties props = new Properties(); if (confs == null) { - s_logger.info("Can't load consoleproxy.properties from classpath, will use default configuration"); - } else { + final File file = PropertiesUtil.findConfigFile("consoleproxy.properties"); + if (file == null) + s_logger.info("Can't load consoleproxy.properties from classpath, will use default configuration"); + else + try { + confs = new FileInputStream(file); + } catch (FileNotFoundException e) { + s_logger.info("Ignoring file not found exception and using defaults"); + } + } + if (confs != null) { try { props.load(confs); From 1d70b9ea77fd1e9fce98f7d9cd5fd92cfe444c39 Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Tue, 26 Mar 2013 13:36:04 -0700 Subject: [PATCH 049/607] QuickCloud: add a network offering without any services This can be used to avoid starting up a virtual router simply for the purposes of offering dhcp and dns services With the QuickCloudNoServices offering, no virtual router will be started up and the vm instance will not get a CloudStack-assigned IP address. Instead, the VM will simply get whatever IP address is offered by an DHCP service that happens to be running in the same network --- api/src/com/cloud/offering/NetworkOffering.java | 1 + .../com/cloud/network/NetworkManagerImpl.java | 16 ++++++++++++++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/api/src/com/cloud/offering/NetworkOffering.java b/api/src/com/cloud/offering/NetworkOffering.java index 8cb82996036..bd14acd4718 100644 --- a/api/src/com/cloud/offering/NetworkOffering.java +++ b/api/src/com/cloud/offering/NetworkOffering.java @@ -46,6 +46,7 @@ public interface NetworkOffering extends InfrastructureEntity, InternalIdentity, public final static String SystemPrivateGatewayNetworkOffering = "System-Private-Gateway-Network-Offering"; public final static String DefaultSharedNetworkOfferingWithSGService = "DefaultSharedNetworkOfferingWithSGService"; + public final static String QuickCloudNoServices = "QuickCloudNoServices"; public final static String DefaultIsolatedNetworkOfferingWithSourceNatService = "DefaultIsolatedNetworkOfferingWithSourceNatService"; public final static String OvsIsolatedNetworkOfferingWithSourceNatService = "OvsIsolatedNetworkOfferingWithSourceNatService"; public final static String DefaultSharedNetworkOffering = "DefaultSharedNetworkOffering"; diff --git a/server/src/com/cloud/network/NetworkManagerImpl.java b/server/src/com/cloud/network/NetworkManagerImpl.java index 62960116dce..a97f2ce13e4 100755 --- a/server/src/com/cloud/network/NetworkManagerImpl.java +++ b/server/src/com/cloud/network/NetworkManagerImpl.java @@ -968,9 +968,21 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L // diff between offering #1 and #2 - securityGroup is enabled for the first, and disabled for the third NetworkOfferingVO offering = null; + if (_networkOfferingDao.findByUniqueName(NetworkOffering.QuickCloudNoServices) == null) { + offering = + _configMgr.createNetworkOffering(NetworkOffering.QuickCloudNoServices, + "Offering for QuickCloud with no services", TrafficType.Guest, null, true, + Availability.Optional, null, new HashMap>(), true, + Network.GuestType.Shared, false, null, true, null, true, false); + offering.setState(NetworkOffering.State.Enabled); + _networkOfferingDao.update(offering.getId(), offering); + } if (_networkOfferingDao.findByUniqueName(NetworkOffering.DefaultSharedNetworkOfferingWithSGService) == null) { - offering = _configMgr.createNetworkOffering(NetworkOffering.DefaultSharedNetworkOfferingWithSGService, "Offering for Shared Security group enabled networks", TrafficType.Guest, null, - true, Availability.Optional, null, defaultSharedNetworkOfferingProviders, true, Network.GuestType.Shared, false, null, true, null, true, false); + offering = + _configMgr.createNetworkOffering(NetworkOffering.DefaultSharedNetworkOfferingWithSGService, + "Offering for Shared Security group enabled networks", TrafficType.Guest, null, true, + Availability.Optional, null, defaultSharedNetworkOfferingProviders, true, + Network.GuestType.Shared, false, null, true, null, true, false); offering.setState(NetworkOffering.State.Enabled); _networkOfferingDao.update(offering.getId(), offering); } From a806ce43d32e8d5ac064b79dd623c01be4489126 Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Tue, 26 Mar 2013 14:11:36 -0700 Subject: [PATCH 050/607] QuickCloud: allow specification of network offering name in datacenter config. The deployDatacenter python script will use this to pick the network offering during creation of the default network in a basic zone --- tools/devcloud/quickcloud.cfg | 1 + tools/marvin/marvin/deployDataCenter.py | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/tools/devcloud/quickcloud.cfg b/tools/devcloud/quickcloud.cfg index 0e1fb4fb208..a2613d22bdb 100644 --- a/tools/devcloud/quickcloud.cfg +++ b/tools/devcloud/quickcloud.cfg @@ -54,6 +54,7 @@ "securitygroupenabled": "true", "localstorageenabled": "true", "networktype": "Basic", + "networkofferingname": "QuickCloudNoServices", "pods": [ { "endip": "192.168.56.220", diff --git a/tools/marvin/marvin/deployDataCenter.py b/tools/marvin/marvin/deployDataCenter.py index 42bc5f9ebef..d3653958fdd 100644 --- a/tools/marvin/marvin/deployDataCenter.py +++ b/tools/marvin/marvin/deployDataCenter.py @@ -299,10 +299,11 @@ class deployDataCenters(): if zone.networktype == "Basic": listnetworkoffering = listNetworkOfferings.listNetworkOfferingsCmd() - listnetworkoffering.name = "DefaultSharedNetscalerEIPandELBNetworkOffering" \ if len(filter(lambda x : x.typ == 'Public', zone.physical_networks[0].traffictypes)) > 0 \ else "DefaultSharedNetworkOfferingWithSGService" + if zone.networkofferingname is not None: + listnetworkoffering.name = zone.networkofferingname listnetworkofferingresponse = \ self.apiClient.listNetworkOfferings(listnetworkoffering) From c5b11df6b78dd755acc4141dc2063608e581996d Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Tue, 26 Mar 2013 16:40:19 -0700 Subject: [PATCH 051/607] QuickCloud: option to build with componentContext tailored for quickcloud For now it replaces ConsoleProxyManagerImpl with StaticConsoleProxyManager Usage: mvn install -Dquickcloud QuickCloud: rename deploy profile QuickCloud: remove cyclic dependency introduced in nonoss build by moving SecondaryStorageDiscoverer into services However with this fix, developers will be unable to run 'PremiumSecondaryStorageResource' (for VMWare installations) using mvn exec:java. Instead they will have to use the exploded archive from systemvm.zip --- client/pom.xml | 16 + .../quickCloudComponentContext.xml.in | 336 ++++++++++++++++++ plugins/hypervisors/simulator/pom.xml | 5 + .../SimulatorSecondaryDiscoverer.java | 3 +- plugins/hypervisors/vmware/pom.xml | 5 + server/pom.xml | 5 - services/console-proxy/server/pom.xml | 10 +- services/secondary-storage/pom.xml | 28 +- .../resource}/SecondaryStorageDiscoverer.java | 4 +- tools/devcloud/pom.xml | 4 +- 10 files changed, 376 insertions(+), 40 deletions(-) create mode 100644 client/tomcatconf/quickCloudComponentContext.xml.in rename {server/src/com/cloud/storage/secondary => services/secondary-storage/src/org/apache/cloudstack/storage/resource}/SecondaryStorageDiscoverer.java (98%) diff --git a/client/pom.xml b/client/pom.xml index 9323d0fb20f..4bd1a6fedaa 100644 --- a/client/pom.xml +++ b/client/pom.xml @@ -453,6 +453,22 @@ + + process-quickcloud-spring-context + process-resources + + run + + + + quickcloud + + + + diff --git a/client/tomcatconf/quickCloudComponentContext.xml.in b/client/tomcatconf/quickCloudComponentContext.xml.in new file mode 100644 index 00000000000..dbd31173644 --- /dev/null +++ b/client/tomcatconf/quickCloudComponentContext.xml.in @@ -0,0 +1,336 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/plugins/hypervisors/simulator/pom.xml b/plugins/hypervisors/simulator/pom.xml index ff1664ad85f..e4ca9272853 100644 --- a/plugins/hypervisors/simulator/pom.xml +++ b/plugins/hypervisors/simulator/pom.xml @@ -40,5 +40,10 @@ cloud-utils ${project.version} + + org.apache.cloudstack + cloud-secondary-storage + ${project.version} + diff --git a/plugins/hypervisors/simulator/src/com/cloud/resource/SimulatorSecondaryDiscoverer.java b/plugins/hypervisors/simulator/src/com/cloud/resource/SimulatorSecondaryDiscoverer.java index 3a8cf17e24b..c121fbac5d9 100644 --- a/plugins/hypervisors/simulator/src/com/cloud/resource/SimulatorSecondaryDiscoverer.java +++ b/plugins/hypervisors/simulator/src/com/cloud/resource/SimulatorSecondaryDiscoverer.java @@ -24,6 +24,7 @@ import javax.ejb.Local; import javax.inject.Inject; import javax.naming.ConfigurationException; +import org.apache.cloudstack.storage.resource.SecondaryStorageDiscoverer; import org.apache.log4j.Logger; import com.cloud.agent.AgentManager; @@ -40,9 +41,7 @@ import com.cloud.host.HostVO; import com.cloud.host.Status; import com.cloud.storage.SnapshotVO; import com.cloud.storage.dao.SnapshotDao; -import com.cloud.storage.secondary.SecondaryStorageDiscoverer; import com.cloud.utils.exception.CloudRuntimeException; -import org.springframework.stereotype.Component; @Local(value=Discoverer.class) diff --git a/plugins/hypervisors/vmware/pom.xml b/plugins/hypervisors/vmware/pom.xml index 468e0a50599..d65ef640655 100644 --- a/plugins/hypervisors/vmware/pom.xml +++ b/plugins/hypervisors/vmware/pom.xml @@ -32,6 +32,11 @@ cloud-vmware-base ${project.version} + + org.apache.cloudstack + cloud-secondary-storage + ${project.version} + com.cloud.com.vmware vmware-vim25 diff --git a/server/pom.xml b/server/pom.xml index 8a6a10c591e..a3971954475 100644 --- a/server/pom.xml +++ b/server/pom.xml @@ -31,11 +31,6 @@ cloud-core ${project.version} - - org.apache.cloudstack - cloud-secondary-storage - ${project.version} - javax.servlet servlet-api diff --git a/services/console-proxy/server/pom.xml b/services/console-proxy/server/pom.xml index fd7b964bcab..3d149a5c724 100644 --- a/services/console-proxy/server/pom.xml +++ b/services/console-proxy/server/pom.xml @@ -57,6 +57,11 @@ ${project.version} pom + + org.apache.cloudstack + cloud-secondary-storage + ${project.version} + install @@ -256,11 +261,6 @@ quickcloud - - - quickcloud - - diff --git a/services/secondary-storage/pom.xml b/services/secondary-storage/pom.xml index d8dbf1dd250..05770848987 100644 --- a/services/secondary-storage/pom.xml +++ b/services/secondary-storage/pom.xml @@ -54,6 +54,11 @@ ${project.version} pom + + org.apache.cloudstack + cloud-server + ${project.version} + install @@ -87,27 +92,4 @@ - - - vmware - - - nonoss - - - - - org.apache.cloudstack - cloud-plugin-hypervisor-vmware - ${project.version} - - - org.apache.cloudstack - cloud-vmware-base - ${project.version} - - - - - diff --git a/server/src/com/cloud/storage/secondary/SecondaryStorageDiscoverer.java b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/SecondaryStorageDiscoverer.java similarity index 98% rename from server/src/com/cloud/storage/secondary/SecondaryStorageDiscoverer.java rename to services/secondary-storage/src/org/apache/cloudstack/storage/resource/SecondaryStorageDiscoverer.java index 6e66e0de8f1..d3af792faa5 100755 --- a/server/src/com/cloud/storage/secondary/SecondaryStorageDiscoverer.java +++ b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/SecondaryStorageDiscoverer.java @@ -14,7 +14,7 @@ // KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. -package com.cloud.storage.secondary; +package org.apache.cloudstack.storage.resource; import java.io.File; import java.lang.reflect.Constructor; @@ -30,8 +30,6 @@ import javax.ejb.Local; import javax.inject.Inject; import javax.naming.ConfigurationException; -import org.apache.cloudstack.storage.resource.LocalSecondaryStorageResource; -import org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource; import org.apache.log4j.Logger; import com.cloud.agent.AgentManager; diff --git a/tools/devcloud/pom.xml b/tools/devcloud/pom.xml index d32d84bd691..93029e1332a 100644 --- a/tools/devcloud/pom.xml +++ b/tools/devcloud/pom.xml @@ -143,10 +143,10 @@ - quicksvr + quickcloud - quicksvr + quickcloud From 936973aff7ba372abe442a7a40e112219fba7570 Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Wed, 27 Mar 2013 16:49:56 -0700 Subject: [PATCH 052/607] QuickCloud: launch scripts for secondary storage and console proxy outside system vm QuickCloud: remove stuff added by the daemon --- services/console-proxy/server/scripts/_run.sh | 3 +- .../server/scripts/consoleproxy.sh | 33 +++++++++++++++++++ .../secondary-storage/conf/agent.properties | 4 +-- services/secondary-storage/scripts/_run.sh | 3 +- .../secondary-storage/scripts/secstorage.sh | 33 +++++++++++++++++++ 5 files changed, 71 insertions(+), 5 deletions(-) create mode 100755 services/console-proxy/server/scripts/consoleproxy.sh create mode 100755 services/secondary-storage/scripts/secstorage.sh diff --git a/services/console-proxy/server/scripts/_run.sh b/services/console-proxy/server/scripts/_run.sh index e408378afbc..bd063468cfb 100755 --- a/services/console-proxy/server/scripts/_run.sh +++ b/services/console-proxy/server/scripts/_run.sh @@ -35,6 +35,7 @@ do CP=${CP}:$file done keyvalues= +LOGHOME=/var/log/cloud/ CMDLINE=$(cat /var/cache/cloud/cmdline) @@ -60,4 +61,4 @@ then maxmem=$eightypcnt fi -java -Djavax.net.ssl.trustStore=./certs/realhostip.keystore -mx${maxmem}m -cp $CP com.cloud.agent.AgentShell $keyvalues $@ +java -Djavax.net.ssl.trustStore=./certs/realhostip.keystore -Dlog.home=$LOGHOME -mx${maxmem}m -cp $CP com.cloud.agent.AgentShell $keyvalues $@ diff --git a/services/console-proxy/server/scripts/consoleproxy.sh b/services/console-proxy/server/scripts/consoleproxy.sh new file mode 100755 index 00000000000..4a6acdee299 --- /dev/null +++ b/services/console-proxy/server/scripts/consoleproxy.sh @@ -0,0 +1,33 @@ +#!/usr/bin/env bash +# 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. + + + +#runs the console proxy as a standalone server +#i.e., not in the system vm + +CP=./:./conf +for file in *.jar +do + CP=${CP}:$file +done +keyvalues= +#LOGHOME=/var/log/cloud/ +LOGHOME=$PWD + +java -Djavax.net.ssl.trustStore=./certs/realhostip.keystore -Dlog.home=$LOGHOME -cp $CP com.cloud.agent.AgentShell $keyvalues $@ diff --git a/services/secondary-storage/conf/agent.properties b/services/secondary-storage/conf/agent.properties index 4a25cbd8611..554007f90af 100644 --- a/services/secondary-storage/conf/agent.properties +++ b/services/secondary-storage/conf/agent.properties @@ -1,6 +1,4 @@ -#Storage -#Sun Mar 24 22:52:35 PDT 2013 -mount.path=/Users/chiradeep/secondary-storage +#mount.path=~/secondary-storage eth1ip=192.168.56.1 name=192.168.56.10 eth2ip=192.168.56.10 diff --git a/services/secondary-storage/scripts/_run.sh b/services/secondary-storage/scripts/_run.sh index e408378afbc..cb9624c58e6 100755 --- a/services/secondary-storage/scripts/_run.sh +++ b/services/secondary-storage/scripts/_run.sh @@ -36,6 +36,7 @@ do done keyvalues= +LOGHOME=/var/log/cloud/ CMDLINE=$(cat /var/cache/cloud/cmdline) #CMDLINE="graphical utf8 eth0ip=0.0.0.0 eth0mask=255.255.255.0 eth1ip=192.168.140.40 eth1mask=255.255.255.0 eth2ip=172.24.0.50 eth2mask=255.255.0.0 gateway=172.24.0.1 dns1=72.52.126.11 template=domP dns2=72.52.126.12 host=192.168.1.142 port=8250 mgmtcidr=192.168.1.0/24 localgw=192.168.140.1 zone=5 pod=5" @@ -60,4 +61,4 @@ then maxmem=$eightypcnt fi -java -Djavax.net.ssl.trustStore=./certs/realhostip.keystore -mx${maxmem}m -cp $CP com.cloud.agent.AgentShell $keyvalues $@ +java -Djavax.net.ssl.trustStore=./certs/realhostip.keystore -Dlog.home=$LOGHOME -mx${maxmem}m -cp $CP com.cloud.agent.AgentShell $keyvalues $@ diff --git a/services/secondary-storage/scripts/secstorage.sh b/services/secondary-storage/scripts/secstorage.sh new file mode 100755 index 00000000000..9afc5215dee --- /dev/null +++ b/services/secondary-storage/scripts/secstorage.sh @@ -0,0 +1,33 @@ +#!/usr/bin/env bash +# 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. + + + +#runs the secondary storage service as a standalone server +#i.e., not in the system vm + +CP=./:./conf +for file in *.jar +do + CP=${CP}:$file +done +keyvalues= +#LOGHOME=/var/log/cloud/ +LOGHOME=$PWD + +java -Djavax.net.ssl.trustStore=./certs/realhostip.keystore -Dlog.home=$LOGHOME -cp $CP com.cloud.agent.AgentShell $keyvalues $@ From 5ff8bcaa2e16035197c6d58bb212ba1696411dce Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Thu, 4 Apr 2013 17:23:10 -0700 Subject: [PATCH 053/607] QuickCloud: when using SSVM, pass in the new name of the SS class (com.cloud -> org.apache.cloudstack) QuickCloud : configuration moved to applicationContext.xml from componentContext.xml QuickCloud: default to enabled state for devcloud zone QuickCloud: environment.properties helps customize location of pid file --- client/pom.xml | 6 +- .../quickCloudComponentContext.xml.in | 336 ------------------ .../SecondaryStorageManagerImpl.java | 8 +- .../server/conf/environment.properties | 2 + tools/devcloud/devcloud.cfg | 1 + 5 files changed, 9 insertions(+), 344 deletions(-) delete mode 100644 client/tomcatconf/quickCloudComponentContext.xml.in create mode 100644 services/console-proxy/server/conf/environment.properties diff --git a/client/pom.xml b/client/pom.xml index 4bd1a6fedaa..b3d7acb08a8 100644 --- a/client/pom.xml +++ b/client/pom.xml @@ -463,9 +463,9 @@ quickcloud + file="${basedir}/target/generated-webapp/WEB-INF/classes/applicationContext.xml" + match="com.cloud.consoleproxy.ConsoleProxyManagerImpl" + replace="com.cloud.consoleproxy.StaticConsoleProxyManager" byline="true" /> diff --git a/client/tomcatconf/quickCloudComponentContext.xml.in b/client/tomcatconf/quickCloudComponentContext.xml.in deleted file mode 100644 index dbd31173644..00000000000 --- a/client/tomcatconf/quickCloudComponentContext.xml.in +++ /dev/null @@ -1,336 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java b/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java index c94224b264c..d6d6fc0eb69 100755 --- a/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java +++ b/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java @@ -30,8 +30,6 @@ import javax.inject.Inject; import javax.naming.ConfigurationException; import org.apache.log4j.Logger; -import org.springframework.context.annotation.Primary; -import org.springframework.stereotype.Component; import com.cloud.agent.AgentManager; import com.cloud.agent.api.Answer; @@ -98,8 +96,8 @@ import com.cloud.service.dao.ServiceOfferingDao; import com.cloud.storage.SnapshotVO; import com.cloud.storage.Storage; import com.cloud.storage.VMTemplateHostVO; -import com.cloud.storage.VMTemplateVO; import com.cloud.storage.VMTemplateStorageResourceAssoc.Status; +import com.cloud.storage.VMTemplateVO; import com.cloud.storage.dao.SnapshotDao; import com.cloud.storage.dao.StoragePoolHostDao; import com.cloud.storage.dao.VMTemplateDao; @@ -1066,10 +1064,10 @@ public class SecondaryStorageManagerImpl extends ManagerBase implements Secondar buf.append(" resource=com.cloud.storage.resource.PremiumSecondaryStorageResource"); } else { s_logger.debug("Telling the ssvm to load the NfsSecondaryStorageResource"); - buf.append(" resource=com.cloud.storage.resource.NfsSecondaryStorageResource"); + buf.append(" resource=org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource"); } } else { - buf.append(" resource=com.cloud.storage.resource.NfsSecondaryStorageResource"); + buf.append(" resource=org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource"); } buf.append(" instance=SecStorage"); buf.append(" sslcopy=").append(Boolean.toString(_useSSlCopy)); diff --git a/services/console-proxy/server/conf/environment.properties b/services/console-proxy/server/conf/environment.properties new file mode 100644 index 00000000000..269acad9152 --- /dev/null +++ b/services/console-proxy/server/conf/environment.properties @@ -0,0 +1,2 @@ +paths.script=../../scripts/storage/secondary/ +paths.pid=. diff --git a/tools/devcloud/devcloud.cfg b/tools/devcloud/devcloud.cfg index c41f8bcef58..e6ab71b5ebf 100644 --- a/tools/devcloud/devcloud.cfg +++ b/tools/devcloud/devcloud.cfg @@ -20,6 +20,7 @@ "zones": [ { "name": "DevCloud0", + "enabled" : "True", "physical_networks": [ { "broadcastdomainrange": "Zone", From 778a59fbf6bc8957771718123079bd8a2707affa Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Fri, 5 Apr 2013 14:25:44 -0700 Subject: [PATCH 054/607] QuickCloud: move devcloud configuration into pom profile for exec:java Also ignore agent.properties in RAT since a. they are trivial b. they are modified by the java code (stripping the license) QuickCloud: proper path for log.home QuickCloud: proper path for secstorage.sh --- pom.xml | 4 ++++ .../console-proxy/server/conf/agent.properties | 17 ----------------- services/console-proxy/server/pom.xml | 3 +++ .../server/scripts/consoleproxy.sh | 2 +- .../server}/scripts/secstorage.sh | 2 +- .../secondary-storage/conf/agent.properties | 9 +-------- services/secondary-storage/pom.xml | 8 ++++++++ 7 files changed, 18 insertions(+), 27 deletions(-) rename services/{secondary-storage => console-proxy/server}/scripts/secstorage.sh (98%) diff --git a/pom.xml b/pom.xml index 62081241445..dbc39076f2d 100644 --- a/pom.xml +++ b/pom.xml @@ -317,6 +317,10 @@ deps/XenServerJava/Makefile dist/console-proxy/js/jquery.js scripts/vm/systemvm/id_rsa.cloud + services/console-proxy/server/conf/agent.properties + services/console-proxy/server/conf/environment.properties + services/secondary-storage/conf/agent.properties + services/secondary-storage/conf/environment.properties tools/devcloud/basebuild/puppet-devcloudinitial/files/network.conf tools/appliance/definitions/devcloud/* tools/appliance/definitions/systemvmtemplate/* diff --git a/services/console-proxy/server/conf/agent.properties b/services/console-proxy/server/conf/agent.properties index 4e217f21100..246cb1c3d08 100644 --- a/services/console-proxy/server/conf/agent.properties +++ b/services/console-proxy/server/conf/agent.properties @@ -1,19 +1,2 @@ -# 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. - instance=ConsoleProxy resource=com.cloud.agent.resource.consoleproxy.ConsoleProxyResource diff --git a/services/console-proxy/server/pom.xml b/services/console-proxy/server/pom.xml index 3d149a5c724..3ac5d5957f7 100644 --- a/services/console-proxy/server/pom.xml +++ b/services/console-proxy/server/pom.xml @@ -280,11 +280,14 @@ zone=1 pod=1 host=192.168.56.1 + guid=ConsoleProxy.1 javax.net.ssl.trustStore certs/realhostip.keystore + log.home + ${PWD}/ diff --git a/services/console-proxy/server/scripts/consoleproxy.sh b/services/console-proxy/server/scripts/consoleproxy.sh index 4a6acdee299..294d5974bb5 100755 --- a/services/console-proxy/server/scripts/consoleproxy.sh +++ b/services/console-proxy/server/scripts/consoleproxy.sh @@ -28,6 +28,6 @@ do done keyvalues= #LOGHOME=/var/log/cloud/ -LOGHOME=$PWD +LOGHOME=$PWD/ java -Djavax.net.ssl.trustStore=./certs/realhostip.keystore -Dlog.home=$LOGHOME -cp $CP com.cloud.agent.AgentShell $keyvalues $@ diff --git a/services/secondary-storage/scripts/secstorage.sh b/services/console-proxy/server/scripts/secstorage.sh similarity index 98% rename from services/secondary-storage/scripts/secstorage.sh rename to services/console-proxy/server/scripts/secstorage.sh index 9afc5215dee..b45afc2e8ca 100755 --- a/services/secondary-storage/scripts/secstorage.sh +++ b/services/console-proxy/server/scripts/secstorage.sh @@ -28,6 +28,6 @@ do done keyvalues= #LOGHOME=/var/log/cloud/ -LOGHOME=$PWD +LOGHOME=$PWD/ java -Djavax.net.ssl.trustStore=./certs/realhostip.keystore -Dlog.home=$LOGHOME -cp $CP com.cloud.agent.AgentShell $keyvalues $@ diff --git a/services/secondary-storage/conf/agent.properties b/services/secondary-storage/conf/agent.properties index 554007f90af..aab82b63374 100644 --- a/services/secondary-storage/conf/agent.properties +++ b/services/secondary-storage/conf/agent.properties @@ -1,9 +1,2 @@ -#mount.path=~/secondary-storage -eth1ip=192.168.56.1 -name=192.168.56.10 -eth2ip=192.168.56.10 +#mount.path=~/secondary-storage/ resource=org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource -piddir=. -instance=SecondaryStorage -developer=true -secondary.storage.vm=false diff --git a/services/secondary-storage/pom.xml b/services/secondary-storage/pom.xml index 05770848987..2c8a1d0b9b8 100644 --- a/services/secondary-storage/pom.xml +++ b/services/secondary-storage/pom.xml @@ -81,11 +81,19 @@ zone=1 pod=1 host=192.168.56.1 + name=192.168.56.10 + eth1ip=192.168.56.10 + eth2ip=192.168.56.10 + guid=SecondaryStorage.1 + secondary.storage.vm=false + instance=Secondary javax.net.ssl.trustStore certs/realhostip.keystore + log.home + ${PWD}/ From 271d232d620f27c6b8b10bc85f849563c528e3ae Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Fri, 5 Apr 2013 11:52:52 -0700 Subject: [PATCH 055/607] QuickCloud: we moved the SecondaryStorageDiscoverer from the com.cloud package to the org.apache.cloudstack package QuickCloud: fix license issue QuickCloud: use a different activation for deploying quickcloud Otherwise marvin gets invoked during mvn install -Dquickcloud --- client/tomcatconf/applicationContext.xml.in | 2 +- .../cloud/consoleproxy/ConsoleProxyService.java | 16 ++++++++++++++++ tools/devcloud/pom.xml | 4 ++-- 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/client/tomcatconf/applicationContext.xml.in b/client/tomcatconf/applicationContext.xml.in index 3b51a83e6ad..67b1286eaed 100644 --- a/client/tomcatconf/applicationContext.xml.in +++ b/client/tomcatconf/applicationContext.xml.in @@ -503,7 +503,7 @@ - + diff --git a/server/src/com/cloud/consoleproxy/ConsoleProxyService.java b/server/src/com/cloud/consoleproxy/ConsoleProxyService.java index e43e5c315e2..fd00f56333a 100644 --- a/server/src/com/cloud/consoleproxy/ConsoleProxyService.java +++ b/server/src/com/cloud/consoleproxy/ConsoleProxyService.java @@ -1,3 +1,19 @@ +// 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.consoleproxy; import com.cloud.info.ConsoleProxyInfo; diff --git a/tools/devcloud/pom.xml b/tools/devcloud/pom.xml index 93029e1332a..ba4cc464ccc 100644 --- a/tools/devcloud/pom.xml +++ b/tools/devcloud/pom.xml @@ -146,7 +146,7 @@ quickcloud - quickcloud + deployquick @@ -157,7 +157,7 @@ 1.2.1 - package + integration-test exec From 2e6c65fd34dc5f4f885c12a4e5469b505975685d Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Fri, 5 Apr 2013 14:11:05 -0700 Subject: [PATCH 056/607] QuickCloud: sanitize logs for normal running of agents outside systemvm --- .../consoleproxy/ConsoleProxyResource.java | 4 +- .../cloud/resource/ServerResourceBase.java | 2 +- .../AgentBasedConsoleProxyManager.java.orig | 298 ++++++++++++++++++ .../PremiumSecondaryStorageManagerImpl.java | 6 +- .../storage/download/DownloadMonitorImpl.java | 11 +- .../SecondaryStorageManagerImpl.java | 2 +- .../resource/NfsSecondaryStorageResource.java | 6 +- utils/src/com/cloud/utils/nio/NioClient.java | 3 +- .../com/cloud/utils/nio/NioConnection.java | 2 +- 9 files changed, 320 insertions(+), 14 deletions(-) create mode 100755 server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java.orig diff --git a/agent/src/com/cloud/agent/resource/consoleproxy/ConsoleProxyResource.java b/agent/src/com/cloud/agent/resource/consoleproxy/ConsoleProxyResource.java index 516430b2fed..991764c53f8 100644 --- a/agent/src/com/cloud/agent/resource/consoleproxy/ConsoleProxyResource.java +++ b/agent/src/com/cloud/agent/resource/consoleproxy/ConsoleProxyResource.java @@ -235,14 +235,14 @@ public class ConsoleProxyResource extends ServerResourceBase implements if (_eth1ip != null) { params.put("private.network.device", "eth1"); } else { - s_logger.warn("WARNING: eth1ip parameter is not found!"); + s_logger.info("eth1ip parameter has not been configured, assuming that we are not inside a system vm"); } String eth2ip = (String) params.get("eth2ip"); if (eth2ip != null) { params.put("public.network.device", "eth2"); } else { - s_logger.warn("WARNING: eth2ip parameter is not found!"); + s_logger.info("eth2ip parameter is not found, assuming that we are not inside a system vm"); } super.configure(name, params); diff --git a/core/src/com/cloud/resource/ServerResourceBase.java b/core/src/com/cloud/resource/ServerResourceBase.java index 9449b058556..e381fcbec86 100755 --- a/core/src/com/cloud/resource/ServerResourceBase.java +++ b/core/src/com/cloud/resource/ServerResourceBase.java @@ -80,7 +80,7 @@ public abstract class ServerResourceBase implements ServerResource { _storageNic2 = getNetworkInterface(storageNic2); if (_privateNic == null) { - s_logger.error("Nics are not configured!"); + s_logger.warn("Nics are not specified in properties file/db, will try to autodiscover"); Enumeration nics = null; try { diff --git a/server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java.orig b/server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java.orig new file mode 100755 index 00000000000..134d59d0065 --- /dev/null +++ b/server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java.orig @@ -0,0 +1,298 @@ +// 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.consoleproxy; + +import java.util.Map; + +import javax.ejb.Local; +import javax.inject.Inject; +import javax.naming.ConfigurationException; + +import org.apache.log4j.Logger; + +import com.cloud.agent.AgentManager; +import com.cloud.agent.api.GetVncPortAnswer; +import com.cloud.agent.api.GetVncPortCommand; +import com.cloud.agent.api.StartupProxyCommand; +import com.cloud.configuration.dao.ConfigurationDao; +import com.cloud.host.HostVO; +import com.cloud.host.dao.HostDao; +import com.cloud.info.ConsoleProxyInfo; +import com.cloud.keystore.KeystoreManager; +import com.cloud.utils.NumbersUtil; +import com.cloud.utils.component.ManagerBase; +import com.cloud.vm.ConsoleProxyVO; +import com.cloud.vm.UserVmVO; +import com.cloud.vm.VMInstanceVO; +import com.cloud.vm.VirtualMachineManager; +import com.cloud.vm.dao.ConsoleProxyDao; +import com.cloud.vm.dao.UserVmDao; +import com.cloud.vm.dao.VMInstanceDao; + +@Local(value = { ConsoleProxyManager.class }) +public class AgentBasedConsoleProxyManager extends ManagerBase implements ConsoleProxyManager { + private static final Logger s_logger = Logger.getLogger(AgentBasedConsoleProxyManager.class); + + @Inject + protected HostDao _hostDao; + @Inject + protected UserVmDao _userVmDao; + private String _instance; + protected String _consoleProxyUrlDomain; + @Inject + private VMInstanceDao _instanceDao; + private ConsoleProxyListener _listener; + protected int _consoleProxyUrlPort = ConsoleProxyManager.DEFAULT_PROXY_URL_PORT; + protected int _consoleProxyPort = ConsoleProxyManager.DEFAULT_PROXY_VNC_PORT; + protected boolean _sslEnabled = false; + @Inject + AgentManager _agentMgr; + @Inject + VirtualMachineManager _itMgr; + @Inject + protected ConsoleProxyDao _cpDao; + @Inject + protected KeystoreManager _ksMgr; + + @Inject ConfigurationDao _configDao; + + public class AgentBasedAgentHook extends AgentHookBase { + + public AgentBasedAgentHook(VMInstanceDao instanceDao, HostDao hostDao, ConfigurationDao cfgDao, + KeystoreManager ksMgr, AgentManager agentMgr) { + super(instanceDao, hostDao, cfgDao, ksMgr, agentMgr); + } + + @Override + protected HostVO findConsoleProxyHost(StartupProxyCommand cmd) { + return _hostDao.findByGuid(cmd.getGuid()); + } + + } + + public int getVncPort(VMInstanceVO vm) { + if (vm.getHostId() == null) { + return -1; + } + GetVncPortAnswer answer = (GetVncPortAnswer) _agentMgr.easySend(vm.getHostId(), new GetVncPortCommand(vm.getId(), vm.getHostName())); + return (answer == null || !answer.getResult()) ? -1 : answer.getPort(); + } + + @Override + public boolean configure(String name, Map params) throws ConfigurationException { + + if (s_logger.isInfoEnabled()) { + s_logger.info("Start configuring AgentBasedConsoleProxyManager"); + } + + Map configs = _configDao.getConfiguration("management-server", params); + String value = configs.get("consoleproxy.url.port"); + if (value != null) { + _consoleProxyUrlPort = NumbersUtil.parseInt(value, ConsoleProxyManager.DEFAULT_PROXY_URL_PORT); + } + + value = configs.get("consoleproxy.port"); + if (value != null) { + _consoleProxyPort = NumbersUtil.parseInt(value, ConsoleProxyManager.DEFAULT_PROXY_VNC_PORT); + } + + value = configs.get("consoleproxy.sslEnabled"); + if (value != null && value.equalsIgnoreCase("true")) { + _sslEnabled = true; + } + + _instance = configs.get("instance.name"); + + _consoleProxyUrlDomain = configs.get("consoleproxy.url.domain"); + + _listener = + new ConsoleProxyListener(new AgentBasedAgentHook(_instanceDao, _hostDao, _configDao, _ksMgr, _agentMgr)); + _agentMgr.registerForHostEvents(_listener, true, true, false); + + if (s_logger.isInfoEnabled()) { + s_logger.info("AgentBasedConsoleProxyManager has been configured. SSL enabled: " + _sslEnabled); + } + return true; + } + + HostVO findHost(VMInstanceVO vm) { + return _hostDao.findById(vm.getHostId()); + } + + @Override + public ConsoleProxyInfo assignProxy(long dataCenterId, long userVmId) { + UserVmVO userVm = _userVmDao.findById(userVmId); + if (userVm == null) { + s_logger.warn("User VM " + userVmId + " no longer exists, return a null proxy for user vm:" + userVmId); + return null; + } + + HostVO host = findHost(userVm); + if (host != null) { + if (s_logger.isDebugEnabled()) { + s_logger.debug("Assign embedded console proxy running at " + host.getName() + " to user vm " + userVmId + " with public IP " + + host.getPublicIpAddress()); + } + + // only private IP, public IP, host id have meaningful values, rest + // of all are place-holder values + String publicIp = host.getPublicIpAddress(); + if (publicIp == null) { + if (s_logger.isDebugEnabled()) { + s_logger.debug("Host " + host.getName() + "/" + host.getPrivateIpAddress() + + " does not have public interface, we will return its private IP for cosole proxy."); + } + publicIp = host.getPrivateIpAddress(); + } + + int urlPort = _consoleProxyUrlPort; + + if (host.getProxyPort() != null && host.getProxyPort().intValue() > 0) { + urlPort = host.getProxyPort().intValue(); + } + + return new ConsoleProxyInfo(_sslEnabled, publicIp, _consoleProxyPort, urlPort, _consoleProxyUrlDomain); + } else { + s_logger.warn("Host that VM is running is no longer available, console access to VM " + userVmId + " will be temporarily unavailable."); + } + return null; + } + + + + + @Override + public ConsoleProxyVO startProxy(long proxyVmId) { + return null; + } + + @Override + public boolean destroyProxy(long proxyVmId) { + return false; + } + + @Override + public boolean rebootProxy(long proxyVmId) { + return false; + } + + @Override + public boolean stopProxy(long proxyVmId) { + return false; + } + + @Override + public void setManagementState(ConsoleProxyManagementState state) { + } + + @Override + public ConsoleProxyManagementState getManagementState() { + return null; + } + + @Override + public void resumeLastManagementState() { + } + + @Override + public String getName() { + return _name; + } +<<<<<<< HEAD + + @Override + public Long convertToId(String vmName) { + if (!VirtualMachineName.isValidConsoleProxyName(vmName, _instance)) { + return null; + } + return VirtualMachineName.getConsoleProxyId(vmName); + } + + @Override + public ConsoleProxyVO findByName(String name) { + // TODO Auto-generated method stub + return null; + } + + @Override + public ConsoleProxyVO findById(long id) { + // TODO Auto-generated method stub + return null; + } + + @Override + public ConsoleProxyVO persist(ConsoleProxyVO vm) { + // TODO Auto-generated method stub + return null; + } + + @Override + public boolean finalizeVirtualMachineProfile(VirtualMachineProfile profile, DeployDestination dest, ReservationContext context) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean finalizeDeployment(Commands cmds, VirtualMachineProfile profile, DeployDestination dest, ReservationContext context) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean finalizeCommandsOnStart(Commands cmds, VirtualMachineProfile profile) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean finalizeStart(VirtualMachineProfile profile, long hostId, Commands cmds, ReservationContext context) { + // TODO Auto-generated method stub + return false; + } + + @Override + public void finalizeStop(VirtualMachineProfile profile, StopAnswer answer) { + // TODO Auto-generated method stub + } + + @Override + public void finalizeExpunge(ConsoleProxyVO proxy) { + } + + @Override + public boolean plugNic(Network network, NicTO nic, VirtualMachineTO vm, + ReservationContext context, DeployDestination dest) throws ConcurrentOperationException, ResourceUnavailableException, + InsufficientCapacityException { + //not supported + throw new UnsupportedOperationException("Plug nic is not supported for vm of type " + vm.getType()); + } + + + @Override + public boolean unplugNic(Network network, NicTO nic, VirtualMachineTO vm, + ReservationContext context, DeployDestination dest) throws ConcurrentOperationException, ResourceUnavailableException { + //not supported + throw new UnsupportedOperationException("Unplug nic is not supported for vm of type " + vm.getType()); + } + + @Override + public void prepareStop(VirtualMachineProfile profile) { + } +} +======= +} +>>>>>>> QuickCloud: refactor to avoid copy paste of authentication and startup code diff --git a/server/src/com/cloud/secstorage/PremiumSecondaryStorageManagerImpl.java b/server/src/com/cloud/secstorage/PremiumSecondaryStorageManagerImpl.java index 73015c11464..8658113d0f6 100755 --- a/server/src/com/cloud/secstorage/PremiumSecondaryStorageManagerImpl.java +++ b/server/src/com/cloud/secstorage/PremiumSecondaryStorageManagerImpl.java @@ -25,8 +25,6 @@ import javax.inject.Inject; import javax.naming.ConfigurationException; import org.apache.log4j.Logger; -import org.springframework.context.annotation.Primary; -import org.springframework.stereotype.Component; import com.cloud.agent.api.Command; import com.cloud.configuration.Config; @@ -90,6 +88,10 @@ public class PremiumSecondaryStorageManagerImpl extends SecondaryStorageManagerI @Override public Pair scanPool(Long pool) { long dataCenterId = pool.longValue(); + if (!isSecondaryStorageVmRequired(dataCenterId)) { + return new Pair(AfterScanAction.nop, null); + } + Date cutTime = new Date(DateUtil.currentGMTTime().getTime() - _maxExecutionTimeMs); _cmdExecLogDao.expungeExpiredRecords(cutTime); diff --git a/server/src/com/cloud/storage/download/DownloadMonitorImpl.java b/server/src/com/cloud/storage/download/DownloadMonitorImpl.java index cfb92d5ccde..5d7a2106e6a 100755 --- a/server/src/com/cloud/storage/download/DownloadMonitorImpl.java +++ b/server/src/com/cloud/storage/download/DownloadMonitorImpl.java @@ -851,7 +851,7 @@ public class DownloadMonitorImpl extends ManagerBase implements DownloadMonitor TemplateInfo tmpltInfo = templateInfos.remove(uniqueName); toBeDownloaded.remove(tmplt); if (tmpltHost != null) { - s_logger.info("Template Sync found " + uniqueName + " already in the template host table"); + s_logger.info("Template Sync found " + tmplt.getName() + " already in the template host table"); if (tmpltHost.getDownloadState() != Status.DOWNLOADED) { tmpltHost.setErrorString(""); } @@ -911,10 +911,12 @@ public class DownloadMonitorImpl extends ManagerBase implements DownloadMonitor continue; } if (tmpltHost != null && tmpltHost.getDownloadState() != Status.DOWNLOADED) { - s_logger.info("Template Sync did not find " + uniqueName + " ready on server " + sserverId + ", will request download to start/resume shortly"); + s_logger.info("Template Sync did not find " + tmplt.getName() + " ready on server " + sserverId + + ", will request download to start/resume shortly"); } else if (tmpltHost == null) { - s_logger.info("Template Sync did not find " + uniqueName + " on the server " + sserverId + ", will request download shortly"); + s_logger.info("Template Sync did not find " + tmplt.getName() + " on the server " + sserverId + + ", will request download shortly"); VMTemplateHostVO templtHost = new VMTemplateHostVO(sserverId, tmplt.getId(), new Date(), 0, Status.NOT_DOWNLOADED, null, null, null, null, tmplt.getUrl()); _vmTemplateHostDao.persist(templtHost); VMTemplateZoneVO tmpltZoneVO = _vmTemplateZoneDao.findByZoneTemplate(zoneId, tmplt.getId()); @@ -964,6 +966,9 @@ public class DownloadMonitorImpl extends ManagerBase implements DownloadMonitor } s_logger.debug("Template " + tmplt.getName() + " needs to be downloaded to " + ssHost.getName()); downloadTemplateToStorage(tmplt, ssHost); + } else { + s_logger.info("Skipping download of template " + tmplt.getName() + " since we don't have any " + + tmplt.getHypervisorType() + " hypervisors"); } } } diff --git a/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java b/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java index d6d6fc0eb69..3cf9a7ef5a3 100755 --- a/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java +++ b/server/src/com/cloud/storage/secondary/SecondaryStorageManagerImpl.java @@ -472,7 +472,7 @@ public class SecondaryStorageManagerImpl extends ManagerBase implements Secondar } - private boolean isSecondaryStorageVmRequired(long dcId) { + protected boolean isSecondaryStorageVmRequired(long dcId) { DataCenterVO dc = _dcDao.findById(dcId); _dcDao.loadDetails(dc); String ssvmReq = dc.getDetail(ZoneConfig.EnableSecStorageVm.key()); diff --git a/services/secondary-storage/src/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java index 6bcf98e1a60..1176d762f95 100755 --- a/services/secondary-storage/src/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java +++ b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java @@ -1464,7 +1464,7 @@ SecondaryStorageResource { if (_eth1ip != null) { //can only happen inside service vm params.put("private.network.device", "eth1"); } else { - s_logger.warn("Wait, what's going on? eth1ip is null!!"); + s_logger.warn("eth1ip parameter has not been configured, assuming that we are not inside a system vm"); } String eth2ip = (String) params.get("eth2ip"); if (eth2ip != null) { @@ -1479,8 +1479,8 @@ SecondaryStorageResource { } _storageIp = (String) params.get("storageip"); - if (_storageIp == null) { - s_logger.warn("Wait, there is no storageip in /proc/cmdline, something wrong!"); + if (_storageIp == null && _inSystemVM) { + s_logger.warn("There is no storageip in /proc/cmdline, something wrong!"); } _storageNetmask = (String) params.get("storagenetmask"); _storageGateway = (String) params.get("storagegateway"); diff --git a/utils/src/com/cloud/utils/nio/NioClient.java b/utils/src/com/cloud/utils/nio/NioClient.java index 1e2aa52fc77..8d12f931dc6 100755 --- a/utils/src/com/cloud/utils/nio/NioClient.java +++ b/utils/src/com/cloud/utils/nio/NioClient.java @@ -22,8 +22,8 @@ import java.nio.channels.SelectionKey; import java.nio.channels.Selector; import java.nio.channels.SocketChannel; -import javax.net.ssl.SSLEngine; import javax.net.ssl.SSLContext; +import javax.net.ssl.SSLEngine; import org.apache.log4j.Logger; @@ -78,6 +78,7 @@ public class NioClient extends NioConnection { Link.doHandshake(sch, sslEngine, true); s_logger.info("SSL: Handshake done"); + s_logger.info("Connected to " + _host + ":" + _port); } catch (Exception e) { _selector.close(); throw new IOException("SSL: Fail to init SSL! " + e); diff --git a/utils/src/com/cloud/utils/nio/NioConnection.java b/utils/src/com/cloud/utils/nio/NioConnection.java index 50e6a88e3e4..07c2beaf517 100755 --- a/utils/src/com/cloud/utils/nio/NioConnection.java +++ b/utils/src/com/cloud/utils/nio/NioConnection.java @@ -107,7 +107,7 @@ public abstract class NioConnection implements Runnable { try { init(); } catch (ConnectException e) { - s_logger.error("Unable to connect to remote"); + s_logger.warn("Unable to connect to remote: is there a server running on port " + _port); return; } catch (IOException e) { s_logger.error("Unable to initialize the threads.", e); From bf56403d828aa50c0650cc41cdc51aae79b1c19e Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Tue, 9 Apr 2013 14:45:12 -0700 Subject: [PATCH 057/607] QuickCloud: default to enabled if not specified in datacenter config --- tools/marvin/marvin/deployDataCenter.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/marvin/marvin/deployDataCenter.py b/tools/marvin/marvin/deployDataCenter.py index d3653958fdd..2e270a7cd58 100644 --- a/tools/marvin/marvin/deployDataCenter.py +++ b/tools/marvin/marvin/deployDataCenter.py @@ -329,7 +329,7 @@ class deployDataCenters(): self.createSecondaryStorages(zone.secondaryStorages, zoneId) enabled = getattr(zone, 'enabled', 'True') - if enabled == 'True' or enabled == 'None': + if enabled == 'True' or enabled is None: self.enableZone(zoneId, "Enabled") details = getattr(zone, 'details') if details is not None: From 9d5c375678fd7477361b8f6aaab914ba682e4cf8 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Tue, 9 Apr 2013 14:52:06 -0700 Subject: [PATCH 058/607] Instance wizard: clean up JS formatting --- ui/scripts/instanceWizard.js | 924 +++++++++++++++++------------------ 1 file changed, 462 insertions(+), 462 deletions(-) diff --git a/ui/scripts/instanceWizard.js b/ui/scripts/instanceWizard.js index e1aeafde67c..277719c0acb 100644 --- a/ui/scripts/instanceWizard.js +++ b/ui/scripts/instanceWizard.js @@ -68,475 +68,475 @@ // Data providers for each wizard step steps: [ - - // Step 1: Setup - function(args) { - if(args.initArgs.pluginForm != null && args.initArgs.pluginForm.name == "vpcTierInstanceWizard") { //from VPC Tier chart - //populate only one zone to the dropdown, the zone which the VPC is under. - zoneObjs = [{ - id: args.context.vpc[0].zoneid, - name: args.context.vpc[0].zonename, - networktype: 'Advanced' - }]; - args.response.success({ data: {zones: zoneObjs}}); - } - else { //from Instance page - $.ajax({ - url: createURL("listZones&available=true"), - dataType: "json", - async: false, - success: function(json) { - zoneObjs = json.listzonesresponse.zone; - args.response.success({ data: {zones: zoneObjs}}); - } - }); - } - }, + + // Step 1: Setup + function(args) { + if(args.initArgs.pluginForm != null && args.initArgs.pluginForm.name == "vpcTierInstanceWizard") { //from VPC Tier chart + //populate only one zone to the dropdown, the zone which the VPC is under. + zoneObjs = [{ + id: args.context.vpc[0].zoneid, + name: args.context.vpc[0].zonename, + networktype: 'Advanced' + }]; + args.response.success({ data: {zones: zoneObjs}}); + } + else { //from Instance page + $.ajax({ + url: createURL("listZones&available=true"), + dataType: "json", + async: false, + success: function(json) { + zoneObjs = json.listzonesresponse.zone; + args.response.success({ data: {zones: zoneObjs}}); + } + }); + } + }, - // Step 2: Select template - function(args) { - $(zoneObjs).each(function(){ - if(this.id == args.currentData.zoneid) { - selectedZoneObj = this; - return false; //break the $.each() loop - } - }); - if(selectedZoneObj == null) { - alert("error: can't find matched zone object"); - return; - } - - $.ajax({ - url: createURL("listHypervisors&zoneid="+args.currentData.zoneid), - dataType: "json", - async: false, - success: function(json) { - hypervisorObjs = json.listhypervisorsresponse.hypervisor; - } - }); - - //***** get templates/ISOs (begin) ***** - var selectedTemplate = args.currentData['select-template']; - if (selectedTemplate == 'select-template') { - var hypervisorArray = []; - $(hypervisorObjs).each(function(index, item) { - hypervisorArray.push(item.name); - }); - - $.ajax({ - url: createURL("listTemplates&templatefilter=featured&zoneid="+args.currentData.zoneid), - dataType: "json", - async: false, - success: function(json) { - if(json.listtemplatesresponse.template == null) { - featuredTemplateObjs = null; - } - else { - featuredTemplateObjs = $.grep(json.listtemplatesresponse.template, function(item, index) { - if($.inArray(item.hypervisor, hypervisorArray) > -1) - return true; - }); - } + // Step 2: Select template + function(args) { + $(zoneObjs).each(function(){ + if(this.id == args.currentData.zoneid) { + selectedZoneObj = this; + return false; //break the $.each() loop } }); + if(selectedZoneObj == null) { + alert("error: can't find matched zone object"); + return; + } + $.ajax({ - url: createURL("listTemplates&templatefilter=community&zoneid="+args.currentData.zoneid), + url: createURL("listHypervisors&zoneid="+args.currentData.zoneid), dataType: "json", async: false, success: function(json) { - if(json.listtemplatesresponse.template == null) { - communityTemplateObjs = null; - } - else { - communityTemplateObjs = $.grep(json.listtemplatesresponse.template, function(item, index) { - if($.inArray(item.hypervisor, hypervisorArray) > -1) - return true; - }); - } + hypervisorObjs = json.listhypervisorsresponse.hypervisor; } }); - $.ajax({ - url: createURL("listTemplates&templatefilter=selfexecutable&zoneid="+args.currentData.zoneid), - dataType: "json", - async: false, - success: function(json) { - if(json.listtemplatesresponse.template == null) { - myTemplateObjs = null; - } - else { - myTemplateObjs = $.grep(json.listtemplatesresponse.template, function(item, index) { - if($.inArray(item.hypervisor, hypervisorArray) > -1) - return true; - }); - } - } - }); - } else if (selectedTemplate == 'select-iso') { - $.ajax({ - url: createURL("listIsos&isofilter=featured&zoneid=" + args.currentData.zoneid + "&bootable=true"), - dataType: "json", - async: false, - success: function(json) { - if(json.listisosresponse.iso == null) { - featuredIsoObjs = null; - } - else { - featuredIsoObjs = json.listisosresponse.iso; - } - } - }); - $.ajax({ - url: createURL("listIsos&isofilter=community&zoneid=" + args.currentData.zoneid + "&bootable=true"), - dataType: "json", - async: false, - success: function(json) { - if(json.listisosresponse.iso == null) { - communityIsoObjs = null; - } - else { - communityIsoObjs = json.listisosresponse.iso; - } - } - }); - $.ajax({ - url: createURL("listIsos&isofilter=selfexecutable&zoneid=" + args.currentData.zoneid + "&bootable=true"), - dataType: "json", - async: false, - success: function(json) { - if(json.listisosresponse.iso == null) { - myIsoObjs = null; - } - else { - myIsoObjs = json.listisosresponse.iso; - } - } - }); - } - //***** get templates/ISOs (end) ***** + //***** get templates/ISOs (begin) ***** + var selectedTemplate = args.currentData['select-template']; + if (selectedTemplate == 'select-template') { + var hypervisorArray = []; + $(hypervisorObjs).each(function(index, item) { + hypervisorArray.push(item.name); + }); - var templatesObj = {}; - if (selectedTemplate == 'select-template') { - templatesObj = { - featuredtemplates: featuredTemplateObjs, - communitytemplates: communityTemplateObjs, - mytemplates: myTemplateObjs - } - } else if (selectedTemplate == 'select-iso') { - templatesObj = { - featuredisos: featuredIsoObjs, - communityisos: communityIsoObjs, - myisos: myIsoObjs - } - } - args.response.success({ - hypervisor: { - idField: 'name', - nameField: 'name' - }, - data: { - templates: templatesObj, - hypervisors: hypervisorObjs - } - }); - }, - - // Step 3: Service offering - function(args) { - if(args.currentData["select-template"] == "select-template") { - if(featuredTemplateObjs != null && featuredTemplateObjs.length > 0) { - for(var i=0; i < featuredTemplateObjs.length; i++) { - if(featuredTemplateObjs[i].id == args.currentData.templateid) { - selectedTemplateObj = featuredTemplateObjs[i]; - break; + $.ajax({ + url: createURL("listTemplates&templatefilter=featured&zoneid="+args.currentData.zoneid), + dataType: "json", + async: false, + success: function(json) { + if(json.listtemplatesresponse.template == null) { + featuredTemplateObjs = null; + } + else { + featuredTemplateObjs = $.grep(json.listtemplatesresponse.template, function(item, index) { + if($.inArray(item.hypervisor, hypervisorArray) > -1) + return true; + }); + } } + }); + $.ajax({ + url: createURL("listTemplates&templatefilter=community&zoneid="+args.currentData.zoneid), + dataType: "json", + async: false, + success: function(json) { + if(json.listtemplatesresponse.template == null) { + communityTemplateObjs = null; + } + else { + communityTemplateObjs = $.grep(json.listtemplatesresponse.template, function(item, index) { + if($.inArray(item.hypervisor, hypervisorArray) > -1) + return true; + }); + } + } + }); + $.ajax({ + url: createURL("listTemplates&templatefilter=selfexecutable&zoneid="+args.currentData.zoneid), + dataType: "json", + async: false, + success: function(json) { + if(json.listtemplatesresponse.template == null) { + myTemplateObjs = null; + } + else { + myTemplateObjs = $.grep(json.listtemplatesresponse.template, function(item, index) { + if($.inArray(item.hypervisor, hypervisorArray) > -1) + return true; + }); + } + } + }); + } else if (selectedTemplate == 'select-iso') { + $.ajax({ + url: createURL("listIsos&isofilter=featured&zoneid=" + args.currentData.zoneid + "&bootable=true"), + dataType: "json", + async: false, + success: function(json) { + if(json.listisosresponse.iso == null) { + featuredIsoObjs = null; + } + else { + featuredIsoObjs = json.listisosresponse.iso; + } + } + }); + $.ajax({ + url: createURL("listIsos&isofilter=community&zoneid=" + args.currentData.zoneid + "&bootable=true"), + dataType: "json", + async: false, + success: function(json) { + if(json.listisosresponse.iso == null) { + communityIsoObjs = null; + } + else { + communityIsoObjs = json.listisosresponse.iso; + } + } + }); + $.ajax({ + url: createURL("listIsos&isofilter=selfexecutable&zoneid=" + args.currentData.zoneid + "&bootable=true"), + dataType: "json", + async: false, + success: function(json) { + if(json.listisosresponse.iso == null) { + myIsoObjs = null; + } + else { + myIsoObjs = json.listisosresponse.iso; + } + } + }); + } + //***** get templates/ISOs (end) ***** + + + var templatesObj = {}; + if (selectedTemplate == 'select-template') { + templatesObj = { + featuredtemplates: featuredTemplateObjs, + communitytemplates: communityTemplateObjs, + mytemplates: myTemplateObjs + } + } else if (selectedTemplate == 'select-iso') { + templatesObj = { + featuredisos: featuredIsoObjs, + communityisos: communityIsoObjs, + myisos: myIsoObjs } } - if(selectedTemplateObj == null) { - if(communityTemplateObjs != null && communityTemplateObjs.length > 0) { - for(var i=0; i < communityTemplateObjs.length; i++) { - if(communityTemplateObjs[i].id == args.currentData.templateid) { - selectedTemplateObj = communityTemplateObjs[i]; + args.response.success({ + hypervisor: { + idField: 'name', + nameField: 'name' + }, + data: { + templates: templatesObj, + hypervisors: hypervisorObjs + } + }); + }, + + // Step 3: Service offering + function(args) { + if(args.currentData["select-template"] == "select-template") { + if(featuredTemplateObjs != null && featuredTemplateObjs.length > 0) { + for(var i=0; i < featuredTemplateObjs.length; i++) { + if(featuredTemplateObjs[i].id == args.currentData.templateid) { + selectedTemplateObj = featuredTemplateObjs[i]; break; } } } - } - if(selectedTemplateObj == null) { - if(myTemplateObjs != null && myTemplateObjs.length > 0) { - for(var i=0; i < myTemplateObjs.length; i++) { - if(myTemplateObjs[i].id == args.currentData.templateid) { - selectedTemplateObj = myTemplateObjs[i]; - break; - } - } - } - } - if(selectedTemplateObj == null) - alert("unable to find matched template object"); - else - selectedHypervisor = selectedTemplateObj.hypervisor; - } - else { //(args.currentData["select-template"] == "select-iso" - selectedHypervisor = args.currentData.hypervisorid; - } - - $.ajax({ - url: createURL("listServiceOfferings&issystem=false"), - dataType: "json", - async: true, - success: function(json) { - serviceOfferingObjs = json.listserviceofferingsresponse.serviceoffering; - args.response.success({ - data: {serviceOfferings: serviceOfferingObjs} - }); - } - }); - }, - - // Step 4: Data disk offering - function(args) { - var isRequred = (args.currentData["select-template"] == "select-iso"? true: false); - $.ajax({ - url: createURL("listDiskOfferings"), - dataType: "json", - async: true, - success: function(json) { - diskOfferingObjs = json.listdiskofferingsresponse.diskoffering; - args.response.success({ - required: isRequred, - customFlag: 'iscustomized', // Field determines if custom slider is shown - data: {diskOfferings: diskOfferingObjs} - }); - } - }); - }, - - // Step 5: Network - function(args) { - if(diskOfferingObjs != null && diskOfferingObjs.length > 0) { - for(var i=0; i < diskOfferingObjs.length; i++) { - if(diskOfferingObjs[i].id == args.currentData.diskofferingid) { - selectedDiskOfferingObj = diskOfferingObjs[i]; - break; - } - } - } - - if (selectedZoneObj.networktype == "Advanced") { //Advanced zone. Show network list. - var $networkStep = $(".step.network:visible .nothing-to-select"); - var $networkStepContainer = $('.step.network:visible'); - - if(args.initArgs.pluginForm != null && args.initArgs.pluginForm.name == "vpcTierInstanceWizard") { //from VPC Tier chart - step5ContainerType = 'nothing-to-select'; - $networkStep.find("#from_instance_page_1").hide(); - $networkStep.find("#from_instance_page_2").hide(); - $networkStep.find("#from_vpc_tier").text("tier " + args.context.networks[0].name); - $networkStep.find("#from_vpc_tier").show(); - } else { //from Instance page - if(selectedZoneObj.securitygroupsenabled != true) { // Advanced SG-disabled zone - step5ContainerType = 'select-network'; - $networkStep.find("#from_instance_page_1").show(); - $networkStep.find("#from_instance_page_2").show(); - $networkStep.find("#from_vpc_tier").text(""); - $networkStep.find("#from_vpc_tier").hide(); - $networkStepContainer.removeClass('next-use-security-groups'); - } else { // Advanced SG-enabled zone - step5ContainerType = 'select-advanced-sg'; - } - - if ($networkStepContainer.hasClass('next-use-security-groups')) { - $networkStepContainer.removeClass('repeat next-use-security-groups loaded'); - step5ContainerType = 'select-security-group'; - } - } - } - else { //Basic zone. Show securigy group list or nothing(when no SecurityGroup service in guest network) - var includingSecurityGroupService = false; - $.ajax({ - url: createURL("listNetworks&trafficType=Guest&zoneId=" + selectedZoneObj.id), - dataType: "json", - async: false, - success: function(json) { - //basic zone should have only one guest network returned in this API call - var items = json.listnetworksresponse.network; - if(items != null && items.length > 0) { - var networkObj = items[0]; //basic zone has only one guest network - var serviceObjArray = networkObj.service; - for(var k = 0; k < serviceObjArray.length; k++) { - if(serviceObjArray[k].name == "SecurityGroup") { - includingSecurityGroupService = true; + if(selectedTemplateObj == null) { + if(communityTemplateObjs != null && communityTemplateObjs.length > 0) { + for(var i=0; i < communityTemplateObjs.length; i++) { + if(communityTemplateObjs[i].id == args.currentData.templateid) { + selectedTemplateObj = communityTemplateObjs[i]; break; } } } } - }); - - if(includingSecurityGroupService == false || selectedHypervisor == "VMware") { - step5ContainerType = 'nothing-to-select'; - } - else { - step5ContainerType = 'select-security-group'; - } - } - - //step5ContainerType = 'nothing-to-select'; //for testing only, comment it out before checking in - if(step5ContainerType == 'select-network' || step5ContainerType == 'select-advanced-sg') { - var defaultNetworkArray = [], optionalNetworkArray = []; - var networkData = { - zoneId: args.currentData.zoneid, - canusefordeploy: true - }; - - if(selectedZoneObj.networktype == 'Advanced' && selectedZoneObj.securitygroupsenabled == true) { - $.extend(networkData, { - type: 'Shared' - }); - } - - if (!(cloudStack.context.projects && cloudStack.context.projects[0])) { - networkData.domainid = g_domainid; - networkData.account = g_account; - } - - var vpcObjs; - - //listVPCs without account/domainid/listAll parameter will return only VPCs belonging to the current login. That's what should happen in Instances page's VM Wizard. - //i.e. If the current login is root-admin, do not show VPCs belonging to regular-user/domain-admin in Instances page's VM Wizard. - $.ajax({ - url: createURL('listVPCs'), - async: false, - success: function(json) { - vpcObjs = json.listvpcsresponse.vpc ? json.listvpcsresponse.vpc : []; - } - }); - - var networkObjsToPopulate = []; - $.ajax({ - url: createURL('listNetworks'), - data: networkData, - async: false, - success: function(json) { - networkObjs = json.listnetworksresponse.network ? json.listnetworksresponse.network : []; - if(networkObjs.length > 0) { - for(var i = 0; i < networkObjs.length; i++) { - var networkObj = networkObjs[i]; - var includingSecurityGroup = false; - var serviceObjArray = networkObj.service; - for(var k = 0; k < serviceObjArray.length; k++) { - if(serviceObjArray[k].name == "SecurityGroup") { - networkObjs[i].type = networkObjs[i].type + ' (sg)'; - includingSecurityGroup = true; - break; - } - } - - if (networkObj.vpcid) { - networkObj._singleSelect = true; + if(selectedTemplateObj == null) { + if(myTemplateObjs != null && myTemplateObjs.length > 0) { + for(var i=0; i < myTemplateObjs.length; i++) { + if(myTemplateObjs[i].id == args.currentData.templateid) { + selectedTemplateObj = myTemplateObjs[i]; + break; } - - //for Advanced SG-enabled zone, list only SG network offerings - if(selectedZoneObj.networktype == 'Advanced' && selectedZoneObj.securitygroupsenabled == true) { - if(includingSecurityGroup == false) - continue; //skip to next network offering - } - networkObjsToPopulate.push(networkObj); - } - } - } - }); - - $.ajax({ - url: createURL("listNetworkOfferings"), - dataType: "json", - data: { - forvpc: false, - zoneid: args.currentData.zoneid, - guestiptype: 'Isolated', - supportedServices: 'SourceNat', - specifyvlan: false, - state: 'Enabled' - }, - async: false, - success: function(json) { - networkOfferingObjs = json.listnetworkofferingsresponse.networkoffering; - } - }); - //get network offerings (end) *** - - $networkStepContainer.removeClass('repeat next-use-security-groups'); - - if (step5ContainerType == 'select-advanced-sg') { - $networkStepContainer.addClass('repeat next-use-security-groups'); - - // Add guest network is disabled - $networkStepContainer.find('.select-network').addClass('no-add-network'); - } else { - $networkStepContainer.find('.select-network').removeClass('no-add-network'); - } - - args.response.success({ - type: 'select-network', - data: { - networkObjs: networkObjsToPopulate, - securityGroups: [], - networkOfferings: networkOfferingObjs, - vpcs: vpcObjs - } - }); - } - - else if(step5ContainerType == 'select-security-group') { - var securityGroupArray = []; - var data = { - domainid: g_domainid, - account: g_account - }; - - $.ajax({ - url: createURL("listSecurityGroups"), - dataType: "json", - async: false, - data: cloudStack.context.projects ? {} : data, - success: function(json) { - var items = json.listsecuritygroupsresponse.securitygroup; - if (items != null && items.length > 0) { - for (var i = 0; i < items.length; i++) { - securityGroupArray.push(items[i]); } } } - }); - args.response.success({ - type: 'select-security-group', - data: { - networkObjs: [], - securityGroups: securityGroupArray, - networkOfferings: [], - vpcs: [] + if(selectedTemplateObj == null) + alert("unable to find matched template object"); + else + selectedHypervisor = selectedTemplateObj.hypervisor; + } + else { //(args.currentData["select-template"] == "select-iso" + selectedHypervisor = args.currentData.hypervisorid; + } + + $.ajax({ + url: createURL("listServiceOfferings&issystem=false"), + dataType: "json", + async: true, + success: function(json) { + serviceOfferingObjs = json.listserviceofferingsresponse.serviceoffering; + args.response.success({ + data: {serviceOfferings: serviceOfferingObjs} + }); } }); - } + }, - else if(step5ContainerType == 'nothing-to-select') { - args.response.success({ - type: 'nothing-to-select', - data: { - networkObjs: [], - securityGroups: [], - networkOfferings: [], - vpcs: [] + // Step 4: Data disk offering + function(args) { + var isRequred = (args.currentData["select-template"] == "select-iso"? true: false); + $.ajax({ + url: createURL("listDiskOfferings"), + dataType: "json", + async: true, + success: function(json) { + diskOfferingObjs = json.listdiskofferingsresponse.diskoffering; + args.response.success({ + required: isRequred, + customFlag: 'iscustomized', // Field determines if custom slider is shown + data: {diskOfferings: diskOfferingObjs} + }); } }); + }, + + // Step 6: Network + function(args) { + if(diskOfferingObjs != null && diskOfferingObjs.length > 0) { + for(var i=0; i < diskOfferingObjs.length; i++) { + if(diskOfferingObjs[i].id == args.currentData.diskofferingid) { + selectedDiskOfferingObj = diskOfferingObjs[i]; + break; + } + } + } + + if (selectedZoneObj.networktype == "Advanced") { //Advanced zone. Show network list. + var $networkStep = $(".step.network:visible .nothing-to-select"); + var $networkStepContainer = $('.step.network:visible'); + + if(args.initArgs.pluginForm != null && args.initArgs.pluginForm.name == "vpcTierInstanceWizard") { //from VPC Tier chart + step5ContainerType = 'nothing-to-select'; + $networkStep.find("#from_instance_page_1").hide(); + $networkStep.find("#from_instance_page_2").hide(); + $networkStep.find("#from_vpc_tier").text("tier " + args.context.networks[0].name); + $networkStep.find("#from_vpc_tier").show(); + } else { //from Instance page + if(selectedZoneObj.securitygroupsenabled != true) { // Advanced SG-disabled zone + step5ContainerType = 'select-network'; + $networkStep.find("#from_instance_page_1").show(); + $networkStep.find("#from_instance_page_2").show(); + $networkStep.find("#from_vpc_tier").text(""); + $networkStep.find("#from_vpc_tier").hide(); + $networkStepContainer.removeClass('next-use-security-groups'); + } else { // Advanced SG-enabled zone + step5ContainerType = 'select-advanced-sg'; + } + + if ($networkStepContainer.hasClass('next-use-security-groups')) { + $networkStepContainer.removeClass('repeat next-use-security-groups loaded'); + step5ContainerType = 'select-security-group'; + } + } + } + else { //Basic zone. Show securigy group list or nothing(when no SecurityGroup service in guest network) + var includingSecurityGroupService = false; + $.ajax({ + url: createURL("listNetworks&trafficType=Guest&zoneId=" + selectedZoneObj.id), + dataType: "json", + async: false, + success: function(json) { + //basic zone should have only one guest network returned in this API call + var items = json.listnetworksresponse.network; + if(items != null && items.length > 0) { + var networkObj = items[0]; //basic zone has only one guest network + var serviceObjArray = networkObj.service; + for(var k = 0; k < serviceObjArray.length; k++) { + if(serviceObjArray[k].name == "SecurityGroup") { + includingSecurityGroupService = true; + break; + } + } + } + } + }); + + if(includingSecurityGroupService == false || selectedHypervisor == "VMware") { + step5ContainerType = 'nothing-to-select'; + } + else { + step5ContainerType = 'select-security-group'; + } + } + + //step5ContainerType = 'nothing-to-select'; //for testing only, comment it out before checking in + if(step5ContainerType == 'select-network' || step5ContainerType == 'select-advanced-sg') { + var defaultNetworkArray = [], optionalNetworkArray = []; + var networkData = { + zoneId: args.currentData.zoneid, + canusefordeploy: true + }; + + if(selectedZoneObj.networktype == 'Advanced' && selectedZoneObj.securitygroupsenabled == true) { + $.extend(networkData, { + type: 'Shared' + }); + } + + if (!(cloudStack.context.projects && cloudStack.context.projects[0])) { + networkData.domainid = g_domainid; + networkData.account = g_account; + } + + var vpcObjs; + + //listVPCs without account/domainid/listAll parameter will return only VPCs belonging to the current login. That's what should happen in Instances page's VM Wizard. + //i.e. If the current login is root-admin, do not show VPCs belonging to regular-user/domain-admin in Instances page's VM Wizard. + $.ajax({ + url: createURL('listVPCs'), + async: false, + success: function(json) { + vpcObjs = json.listvpcsresponse.vpc ? json.listvpcsresponse.vpc : []; + } + }); + + var networkObjsToPopulate = []; + $.ajax({ + url: createURL('listNetworks'), + data: networkData, + async: false, + success: function(json) { + networkObjs = json.listnetworksresponse.network ? json.listnetworksresponse.network : []; + if(networkObjs.length > 0) { + for(var i = 0; i < networkObjs.length; i++) { + var networkObj = networkObjs[i]; + var includingSecurityGroup = false; + var serviceObjArray = networkObj.service; + for(var k = 0; k < serviceObjArray.length; k++) { + if(serviceObjArray[k].name == "SecurityGroup") { + networkObjs[i].type = networkObjs[i].type + ' (sg)'; + includingSecurityGroup = true; + break; + } + } + + if (networkObj.vpcid) { + networkObj._singleSelect = true; + } + + //for Advanced SG-enabled zone, list only SG network offerings + if(selectedZoneObj.networktype == 'Advanced' && selectedZoneObj.securitygroupsenabled == true) { + if(includingSecurityGroup == false) + continue; //skip to next network offering + } + networkObjsToPopulate.push(networkObj); + } + } + } + }); + + $.ajax({ + url: createURL("listNetworkOfferings"), + dataType: "json", + data: { + forvpc: false, + zoneid: args.currentData.zoneid, + guestiptype: 'Isolated', + supportedServices: 'SourceNat', + specifyvlan: false, + state: 'Enabled' + }, + async: false, + success: function(json) { + networkOfferingObjs = json.listnetworkofferingsresponse.networkoffering; + } + }); + //get network offerings (end) *** + + $networkStepContainer.removeClass('repeat next-use-security-groups'); + + if (step5ContainerType == 'select-advanced-sg') { + $networkStepContainer.addClass('repeat next-use-security-groups'); + + // Add guest network is disabled + $networkStepContainer.find('.select-network').addClass('no-add-network'); + } else { + $networkStepContainer.find('.select-network').removeClass('no-add-network'); + } + + args.response.success({ + type: 'select-network', + data: { + networkObjs: networkObjsToPopulate, + securityGroups: [], + networkOfferings: networkOfferingObjs, + vpcs: vpcObjs + } + }); + } + + else if(step5ContainerType == 'select-security-group') { + var securityGroupArray = []; + var data = { + domainid: g_domainid, + account: g_account + }; + + $.ajax({ + url: createURL("listSecurityGroups"), + dataType: "json", + async: false, + data: cloudStack.context.projects ? {} : data, + success: function(json) { + var items = json.listsecuritygroupsresponse.securitygroup; + if (items != null && items.length > 0) { + for (var i = 0; i < items.length; i++) { + securityGroupArray.push(items[i]); + } + } + } + }); + args.response.success({ + type: 'select-security-group', + data: { + networkObjs: [], + securityGroups: securityGroupArray, + networkOfferings: [], + vpcs: [] + } + }); + } + + else if(step5ContainerType == 'nothing-to-select') { + args.response.success({ + type: 'nothing-to-select', + data: { + networkObjs: [], + securityGroups: [], + networkOfferings: [], + vpcs: [] + } + }); + } + + }, + + // Step 6: Review + function(args) { + return false; } - - }, - - // Step 6: Review - function(args) { - return false; - } ], action: function(args) { // Create a new VM!!!! @@ -638,12 +638,12 @@ if(checkedSecurityGroupIdArray.length > 0) array1.push("&securitygroupids=" + checkedSecurityGroupIdArray.join(",")); - + if(selectedZoneObj.networktype == "Advanced" && selectedZoneObj.securitygroupsenabled == true) { // Advanced SG-enabled zone var array2 = []; var myNetworks = $('.multi-wizard:visible form').data('my-networks'); //widget limitation: If using an advanced security group zone, get the guest networks like this var defaultNetworkId = $('.multi-wizard:visible form').find('input[name=defaultNetwork]:checked').val(); - + var checkedNetworkIdArray; if(typeof(myNetworks) == "object" && myNetworks.length != null) { //myNetworks is an array of string, e.g. ["203", "202"], checkedNetworkIdArray = myNetworks; @@ -703,30 +703,30 @@ var vmid = json.deployvirtualmachineresponse.id; args.response.success( {_custom: - {jobId: jid, - getUpdatedItem: function(json) { - var item = json.queryasyncjobresultresponse.jobresult.virtualmachine; - if (item.password != null) - alert("Password of new VM " + item.displayname + " is " + item.password); - return item; - }, - getActionFilter: function() { - return cloudStack.actionFilter.vmActionFilter; - }, - getUpdatedItemWhenAsyncJobFails: function() { - var item; - $.ajax({ - url: createURL("listVirtualMachines&id="+vmid), - dataType: "json", - async: false, - success: function(json) { - item = json.listvirtualmachinesresponse.virtualmachine[0]; - } - }); - return item; - } - } - } + {jobId: jid, + getUpdatedItem: function(json) { + var item = json.queryasyncjobresultresponse.jobresult.virtualmachine; + if (item.password != null) + alert("Password of new VM " + item.displayname + " is " + item.password); + return item; + }, + getActionFilter: function() { + return cloudStack.actionFilter.vmActionFilter; + }, + getUpdatedItemWhenAsyncJobFails: function() { + var item; + $.ajax({ + url: createURL("listVirtualMachines&id="+vmid), + dataType: "json", + async: false, + success: function(json) { + item = json.listvirtualmachinesresponse.virtualmachine[0]; + } + }); + return item; + } + } + } ); }, error: function(XMLHttpResponse) { From be55c5b3a58376eb2048a8add155ff09f14e65eb Mon Sep 17 00:00:00 2001 From: Marcus Sorensen Date: Tue, 9 Apr 2013 16:26:08 -0600 Subject: [PATCH 059/607] VPC - new system vm doesn't bring up eth0 reliably, and we don't set eth0 to auto start like we should. cloud-early-config sets 'auto lo $1', but we don't pass $1 in vpc router scenario like we do in others for some reason. eth0 is always link local in vpc router, so setting it to that. Signed-off-by: Marcus Sorensen 1365546368 -0600 --- patches/systemvm/debian/config/etc/init.d/cloud-early-config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/patches/systemvm/debian/config/etc/init.d/cloud-early-config b/patches/systemvm/debian/config/etc/init.d/cloud-early-config index 2b99c5b6cf3..514c0b012cf 100755 --- a/patches/systemvm/debian/config/etc/init.d/cloud-early-config +++ b/patches/systemvm/debian/config/etc/init.d/cloud-early-config @@ -704,7 +704,7 @@ setup_vpcrouter() { fi cat > /etc/network/interfaces << EOF -auto lo $1 +auto lo eth0 iface lo inet loopback EOF setup_interface "0" $ETH0_IP $ETH0_MASK $GW From e907a08fba6a4000e2f5b98192ff69066092c273 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Tue, 9 Apr 2013 15:58:29 -0700 Subject: [PATCH 060/607] Affinity UI: Add step to instance wizard --- .../classes/resources/messages.properties | 6 ++++ ui/css/cloudstack3.css | 28 ++++++++++++++++--- ui/dictionary.jsp | 6 ++++ ui/index.jsp | 13 +++++++-- ui/scripts/instanceWizard.js | 12 ++++++++ ui/scripts/ui-custom/instanceWizard.js | 19 +++++++++++++ 6 files changed, 78 insertions(+), 6 deletions(-) diff --git a/client/WEB-INF/classes/resources/messages.properties b/client/WEB-INF/classes/resources/messages.properties index d62cbaeb99b..abd1e300ddc 100644 --- a/client/WEB-INF/classes/resources/messages.properties +++ b/client/WEB-INF/classes/resources/messages.properties @@ -17,6 +17,12 @@ #new labels (begin) ********************************************************************************************** +label.affinity=Affinity +label.anti.affinity=Anti-affinity +label.affinity.groups=Affinity Groups +label.anti.affinity.groups=Anti-affinity Groups +label.affinity.group=Affinity Group +label.anti.affinity.group=Anti-affinity Group message.redirecting.region=Redirecting to region... label.use.vm.ip=Use VM IP: label.cpu.limits=CPU limits diff --git a/ui/css/cloudstack3.css b/ui/css/cloudstack3.css index 7ebda9b8f36..1890476149e 100644 --- a/ui/css/cloudstack3.css +++ b/ui/css/cloudstack3.css @@ -5222,6 +5222,10 @@ label.error { position: relative; } +.multi-wizard.instance-wizard .progress ul li { + width: 109px; +} + .multi-wizard .progress ul li.first { /*+border-radius:5px 0 0 5px;*/ -moz-border-radius: 5px 0 0 5px; @@ -5263,6 +5267,10 @@ label.error { text-align: center; } +.multi-wizard.instance-wizard .progress ul li span { + left: 36px; +} + .multi-wizard .progress ul li span.multiline { width: 71px; top: 12px; @@ -5279,6 +5287,10 @@ label.error { z-index: 1000; } +.multi-wizard.instance-wizard .progress ul li span.arrow { + left: 27px; +} + .multi-wizard .progress ul li.active span.arrow { background-position: -1px -396px; } @@ -5299,6 +5311,15 @@ label.error { background: transparent; } +.multi-wizard.instance-wizard .progress ul li span.number { + left: 16px; +} + +.multi-wizard.instance-wizard .progress ul li span.multiline { + width: 79px; + left: 23px; +} + .multi-wizard .progress ul li.active span { /*+text-shadow:0px -1px 1px #004AFF;*/ -moz-text-shadow: 0px -1px 1px #004AFF; @@ -11761,12 +11782,11 @@ div.ui-dialog div.autoscaler div.field-group div.form-container form div.form-it .updateResourceLimits:hover .icon { background-position: -100px -614px; } - + .addVlanRange .icon { background-position: -168px -31px; } - .addVlanRange:hover .icon { background-position: -168px -613px; } @@ -11796,8 +11816,8 @@ div.ui-dialog div.autoscaler div.field-group div.form-container form div.form-it background-position: -168px -31px; } -.reset .icon , -.scaleUp .icon{ +.reset .icon, +.scaleUp .icon { background-position: -168px -31px; } diff --git a/ui/dictionary.jsp b/ui/dictionary.jsp index 11e98cf5024..ffe0e891980 100644 --- a/ui/dictionary.jsp +++ b/ui/dictionary.jsp @@ -25,6 +25,12 @@ under the License. <% long now = System.currentTimeMillis(); %> + diff --git a/ui/scripts/ui-custom/zoneFilter.js b/ui/scripts/ui-custom/zoneFilter.js new file mode 100644 index 00000000000..d298e4ff78a --- /dev/null +++ b/ui/scripts/ui-custom/zoneFilter.js @@ -0,0 +1,31 @@ +// 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. + +(function($, cloudStack) { + $(window).bind('cloudStack.ready', function() { + var $header = $('#header .controls'); + var $zoneFilter = $('
').addClass('zone-filter'); + var $zoneTypeSelect = $('').append( + $('
diff --git a/docs/en-US/primary-storage-add.xml b/docs/en-US/primary-storage-add.xml index 067cf7114dc..ddae418d925 100644 --- a/docs/en-US/primary-storage-add.xml +++ b/docs/en-US/primary-storage-add.xml @@ -37,6 +37,11 @@ Primary storage cannot be added until a host has been added to the cluster. If you do not provision shared primary storage, you must set the global configuration parameter system.vm.local.storage.required to true, or else you will not be able to start VMs. + There are some differences between hypervisors regarding Primary Storage. See the list below for more information per hypervisor. + + + +
Adding Primary Stroage From 0f8a46c5802be6534d8d38cca3eb7b06568738ce Mon Sep 17 00:00:00 2001 From: Wido den Hollander Date: Fri, 12 Apr 2013 15:07:24 +0200 Subject: [PATCH 161/607] tools: Allow setting the output format for the docs --- tools/build/build_docs.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/tools/build/build_docs.sh b/tools/build/build_docs.sh index c1b1f1389fd..62617a3df9d 100755 --- a/tools/build/build_docs.sh +++ b/tools/build/build_docs.sh @@ -19,22 +19,25 @@ sourcedir=~/incubator-cloudstack/ common_content_dir=/usr/share/publican/Common_Content publican_path=/usr/bin/publican +output_format="html,pdf" usage(){ echo "usage: $0 [-s source dir] [-c publican common content] [-p path to publican]" echo " -s sets the source directory (defaults to $sourcedir)" echo " -c sets the public common content directory (defaults to $common_content_dir)" echo " -p sets the path to the publican binary (defaults to $publican_path)" + echo " -f sets the output format (defaults to $output_format)" echo " -h" } -while getopts v:s:c:p:h opt +while getopts v:s:c:p:f:h opt do case "$opt" in v) version="$OPTARG";; s) sourcedir="$OPTARG";; c) common_content_dir="$OPTARG";; p) publican_path="$OPTARG";; + f) output_format="$OPTARG";; h) usage exit 0;; \?) @@ -56,5 +59,5 @@ fi cd $sourcedir/docs cp -R /usr/share/publican/Common_Content . ln -s $sourcedir/docs/publican-cloudstack Common_Content/cloudstack -publican build --config=publican-installation.cfg --formats html,pdf --langs en-US --common_content=$sourcedir/docs/Common_Content +publican build --config=publican-installation.cfg --formats $output_format --langs en-US --common_content=$sourcedir/docs/Common_Content rm -r Common_Content \ No newline at end of file From 4e5a8a0f8adcc665755229ee3d18f40913d15913 Mon Sep 17 00:00:00 2001 From: Pascal Borreli Date: Fri, 12 Apr 2013 03:53:51 +0000 Subject: [PATCH 162/607] Fixed Primary typo Conflicts: client/WEB-INF/classes/resources/messages_de_DE.properties --- .../org/apache/cloudstack/storage/test/DirectAgentTest.java | 4 ++-- .../storage/command/CreateVolumeFromBaseImageCommand.java | 6 +++--- .../cloudstack/storage/to/ImageOnPrimayDataStoreTO.java | 4 ++-- .../hypervisor/xen/resource/XenServerStorageResource.java | 4 ++-- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/engine/storage/integration-test/test/org/apache/cloudstack/storage/test/DirectAgentTest.java b/engine/storage/integration-test/test/org/apache/cloudstack/storage/test/DirectAgentTest.java index 2d6b94fdfaf..fc4aea85822 100644 --- a/engine/storage/integration-test/test/org/apache/cloudstack/storage/test/DirectAgentTest.java +++ b/engine/storage/integration-test/test/org/apache/cloudstack/storage/test/DirectAgentTest.java @@ -23,7 +23,7 @@ import java.util.UUID; import javax.inject.Inject; import org.apache.cloudstack.storage.to.ImageDataStoreTO; -import org.apache.cloudstack.storage.to.ImageOnPrimayDataStoreTO; +import org.apache.cloudstack.storage.to.ImageOnPrimaryDataStoreTO; import org.apache.cloudstack.storage.to.PrimaryDataStoreTO; import org.apache.cloudstack.storage.to.TemplateTO; import org.mockito.Mockito; @@ -126,7 +126,7 @@ public class DirectAgentTest extends CloudStackTestNGBase { @Test public void testDownloadTemplate() { - ImageOnPrimayDataStoreTO image = Mockito.mock(ImageOnPrimayDataStoreTO.class); + ImageOnPrimaryDataStoreTO image = Mockito.mock(ImageOnPrimaryDataStoreTO.class); PrimaryDataStoreTO primaryStore = Mockito.mock(PrimaryDataStoreTO.class); Mockito.when(primaryStore.getUuid()).thenReturn(this.getLocalStorageUuid()); Mockito.when(image.getPrimaryDataStore()).thenReturn(primaryStore); diff --git a/engine/storage/src/org/apache/cloudstack/storage/command/CreateVolumeFromBaseImageCommand.java b/engine/storage/src/org/apache/cloudstack/storage/command/CreateVolumeFromBaseImageCommand.java index f4be0676b9b..1734bc409cc 100644 --- a/engine/storage/src/org/apache/cloudstack/storage/command/CreateVolumeFromBaseImageCommand.java +++ b/engine/storage/src/org/apache/cloudstack/storage/command/CreateVolumeFromBaseImageCommand.java @@ -18,14 +18,14 @@ */ package org.apache.cloudstack.storage.command; -import org.apache.cloudstack.storage.to.ImageOnPrimayDataStoreTO; +import org.apache.cloudstack.storage.to.ImageOnPrimaryDataStoreTO; import org.apache.cloudstack.storage.to.VolumeTO; import com.cloud.agent.api.Command; public class CreateVolumeFromBaseImageCommand extends Command implements StorageSubSystemCommand { private final VolumeTO volume; - private final ImageOnPrimayDataStoreTO image; + private final ImageOnPrimaryDataStoreTO image; public CreateVolumeFromBaseImageCommand(VolumeTO volume, String image) { this.volume = volume; @@ -36,7 +36,7 @@ public class CreateVolumeFromBaseImageCommand extends Command implements Storage return this.volume; } - public ImageOnPrimayDataStoreTO getImage() { + public ImageOnPrimaryDataStoreTO getImage() { return this.image; } diff --git a/engine/storage/src/org/apache/cloudstack/storage/to/ImageOnPrimayDataStoreTO.java b/engine/storage/src/org/apache/cloudstack/storage/to/ImageOnPrimayDataStoreTO.java index 18743d70bf2..a9a3cc43c0e 100644 --- a/engine/storage/src/org/apache/cloudstack/storage/to/ImageOnPrimayDataStoreTO.java +++ b/engine/storage/src/org/apache/cloudstack/storage/to/ImageOnPrimayDataStoreTO.java @@ -20,11 +20,11 @@ package org.apache.cloudstack.storage.to; import org.apache.cloudstack.storage.volume.TemplateOnPrimaryDataStoreInfo; -public class ImageOnPrimayDataStoreTO { +public class ImageOnPrimaryDataStoreTO { private final String pathOnPrimaryDataStore; private PrimaryDataStoreTO dataStore; private final TemplateTO template; - public ImageOnPrimayDataStoreTO(TemplateOnPrimaryDataStoreInfo template) { + public ImageOnPrimaryDataStoreTO(TemplateOnPrimaryDataStoreInfo template) { this.pathOnPrimaryDataStore = template.getPath(); //this.dataStore = template.getPrimaryDataStore().getDataStoreTO(); this.template = new TemplateTO(template.getTemplate()); diff --git a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XenServerStorageResource.java b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XenServerStorageResource.java index 9c291491114..7e0ccbed39c 100644 --- a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XenServerStorageResource.java +++ b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XenServerStorageResource.java @@ -39,7 +39,7 @@ import org.apache.cloudstack.storage.command.CreatePrimaryDataStoreCmd; import org.apache.cloudstack.storage.command.CreateVolumeFromBaseImageCommand; import org.apache.cloudstack.storage.command.StorageSubSystemCommand; import org.apache.cloudstack.storage.datastore.protocol.DataStoreProtocol; -import org.apache.cloudstack.storage.to.ImageOnPrimayDataStoreTO; +import org.apache.cloudstack.storage.to.ImageOnPrimaryDataStoreTO; import org.apache.cloudstack.storage.to.VolumeTO; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; @@ -207,7 +207,7 @@ public class XenServerStorageResource { protected Answer execute(CreateVolumeFromBaseImageCommand cmd) { VolumeTO volume = cmd.getVolume(); - ImageOnPrimayDataStoreTO baseImage = cmd.getImage(); + ImageOnPrimaryDataStoreTO baseImage = cmd.getImage(); Connection conn = hypervisorResource.getConnection(); try { From 85b1519fe5d09e7f0fa51c914ac725c5d928800f Mon Sep 17 00:00:00 2001 From: Murali Reddy Date: Fri, 12 Apr 2013 19:16:36 +0530 Subject: [PATCH 163/607] GlobalLoadBalancerResponse should contain the service type details and GSLB rule is defaulted to have source IP as sticky method --- .../region/ha/gslb/CreateGlobalLoadBalancerRuleCmd.java | 3 +++ .../api/response/GlobalLoadBalancerResponse.java | 8 ++++++++ server/src/com/cloud/api/ApiResponseHelper.java | 2 ++ 3 files changed, 13 insertions(+) diff --git a/api/src/org/apache/cloudstack/api/command/user/region/ha/gslb/CreateGlobalLoadBalancerRuleCmd.java b/api/src/org/apache/cloudstack/api/command/user/region/ha/gslb/CreateGlobalLoadBalancerRuleCmd.java index cd559d8c470..b08b6aeff17 100644 --- a/api/src/org/apache/cloudstack/api/command/user/region/ha/gslb/CreateGlobalLoadBalancerRuleCmd.java +++ b/api/src/org/apache/cloudstack/api/command/user/region/ha/gslb/CreateGlobalLoadBalancerRuleCmd.java @@ -93,6 +93,9 @@ public class CreateGlobalLoadBalancerRuleCmd extends BaseAsyncCreateCmd { } public String getStickyMethod() { + if (stickyMethod == null) { + return "sourceip"; + } return stickyMethod; } diff --git a/api/src/org/apache/cloudstack/api/response/GlobalLoadBalancerResponse.java b/api/src/org/apache/cloudstack/api/response/GlobalLoadBalancerResponse.java index 0fd064f41b5..38e080bd28a 100644 --- a/api/src/org/apache/cloudstack/api/response/GlobalLoadBalancerResponse.java +++ b/api/src/org/apache/cloudstack/api/response/GlobalLoadBalancerResponse.java @@ -50,6 +50,10 @@ public class GlobalLoadBalancerResponse extends BaseResponse implements Controll @Param(description = "session persistence method used for the global load balancer") private String stickyMethod; + @SerializedName(ApiConstants.GSLB_SERVICE_TYPE) + @Param(description = "GSLB service type") + private String serviceType; + @SerializedName(ApiConstants.REGION_ID) @Param(description = "Region Id in which global load balancer is created") private Integer regionId; @@ -96,6 +100,10 @@ public class GlobalLoadBalancerResponse extends BaseResponse implements Controll this.stickyMethod = stickyMethod; } + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + public void setServiceDomainName(String domainName) { this.gslbDomainName = domainName; } diff --git a/server/src/com/cloud/api/ApiResponseHelper.java b/server/src/com/cloud/api/ApiResponseHelper.java index 651a8bed110..50c137ae81f 100755 --- a/server/src/com/cloud/api/ApiResponseHelper.java +++ b/server/src/com/cloud/api/ApiResponseHelper.java @@ -768,11 +768,13 @@ public class ApiResponseHelper implements ResponseGenerator { GlobalLoadBalancerResponse response = new GlobalLoadBalancerResponse(); response.setAlgorithm(globalLoadBalancerRule.getAlgorithm()); response.setStickyMethod(globalLoadBalancerRule.getPersistence()); + response.setServiceType(globalLoadBalancerRule.getServiceType()); response.setServiceDomainName(globalLoadBalancerRule.getGslbDomain()); response.setName(globalLoadBalancerRule.getName()); response.setDescription(globalLoadBalancerRule.getDescription()); response.setRegionIdId(globalLoadBalancerRule.getRegion()); response.setId(globalLoadBalancerRule.getUuid()); + response.setObjectName("globalloadbalancer"); return response; } From 3b35063adf1b7ddf70b226358c58c64f08c7d538 Mon Sep 17 00:00:00 2001 From: Chip Childers Date: Fri, 12 Apr 2013 15:18:02 +0100 Subject: [PATCH 164/607] Revert "Fixed Primary typo" This reverts commit 4e5a8a0f8adcc665755229ee3d18f40913d15913. --- .../org/apache/cloudstack/storage/test/DirectAgentTest.java | 4 ++-- .../storage/command/CreateVolumeFromBaseImageCommand.java | 6 +++--- .../cloudstack/storage/to/ImageOnPrimayDataStoreTO.java | 4 ++-- .../hypervisor/xen/resource/XenServerStorageResource.java | 4 ++-- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/engine/storage/integration-test/test/org/apache/cloudstack/storage/test/DirectAgentTest.java b/engine/storage/integration-test/test/org/apache/cloudstack/storage/test/DirectAgentTest.java index fc4aea85822..2d6b94fdfaf 100644 --- a/engine/storage/integration-test/test/org/apache/cloudstack/storage/test/DirectAgentTest.java +++ b/engine/storage/integration-test/test/org/apache/cloudstack/storage/test/DirectAgentTest.java @@ -23,7 +23,7 @@ import java.util.UUID; import javax.inject.Inject; import org.apache.cloudstack.storage.to.ImageDataStoreTO; -import org.apache.cloudstack.storage.to.ImageOnPrimaryDataStoreTO; +import org.apache.cloudstack.storage.to.ImageOnPrimayDataStoreTO; import org.apache.cloudstack.storage.to.PrimaryDataStoreTO; import org.apache.cloudstack.storage.to.TemplateTO; import org.mockito.Mockito; @@ -126,7 +126,7 @@ public class DirectAgentTest extends CloudStackTestNGBase { @Test public void testDownloadTemplate() { - ImageOnPrimaryDataStoreTO image = Mockito.mock(ImageOnPrimaryDataStoreTO.class); + ImageOnPrimayDataStoreTO image = Mockito.mock(ImageOnPrimayDataStoreTO.class); PrimaryDataStoreTO primaryStore = Mockito.mock(PrimaryDataStoreTO.class); Mockito.when(primaryStore.getUuid()).thenReturn(this.getLocalStorageUuid()); Mockito.when(image.getPrimaryDataStore()).thenReturn(primaryStore); diff --git a/engine/storage/src/org/apache/cloudstack/storage/command/CreateVolumeFromBaseImageCommand.java b/engine/storage/src/org/apache/cloudstack/storage/command/CreateVolumeFromBaseImageCommand.java index 1734bc409cc..f4be0676b9b 100644 --- a/engine/storage/src/org/apache/cloudstack/storage/command/CreateVolumeFromBaseImageCommand.java +++ b/engine/storage/src/org/apache/cloudstack/storage/command/CreateVolumeFromBaseImageCommand.java @@ -18,14 +18,14 @@ */ package org.apache.cloudstack.storage.command; -import org.apache.cloudstack.storage.to.ImageOnPrimaryDataStoreTO; +import org.apache.cloudstack.storage.to.ImageOnPrimayDataStoreTO; import org.apache.cloudstack.storage.to.VolumeTO; import com.cloud.agent.api.Command; public class CreateVolumeFromBaseImageCommand extends Command implements StorageSubSystemCommand { private final VolumeTO volume; - private final ImageOnPrimaryDataStoreTO image; + private final ImageOnPrimayDataStoreTO image; public CreateVolumeFromBaseImageCommand(VolumeTO volume, String image) { this.volume = volume; @@ -36,7 +36,7 @@ public class CreateVolumeFromBaseImageCommand extends Command implements Storage return this.volume; } - public ImageOnPrimaryDataStoreTO getImage() { + public ImageOnPrimayDataStoreTO getImage() { return this.image; } diff --git a/engine/storage/src/org/apache/cloudstack/storage/to/ImageOnPrimayDataStoreTO.java b/engine/storage/src/org/apache/cloudstack/storage/to/ImageOnPrimayDataStoreTO.java index a9a3cc43c0e..18743d70bf2 100644 --- a/engine/storage/src/org/apache/cloudstack/storage/to/ImageOnPrimayDataStoreTO.java +++ b/engine/storage/src/org/apache/cloudstack/storage/to/ImageOnPrimayDataStoreTO.java @@ -20,11 +20,11 @@ package org.apache.cloudstack.storage.to; import org.apache.cloudstack.storage.volume.TemplateOnPrimaryDataStoreInfo; -public class ImageOnPrimaryDataStoreTO { +public class ImageOnPrimayDataStoreTO { private final String pathOnPrimaryDataStore; private PrimaryDataStoreTO dataStore; private final TemplateTO template; - public ImageOnPrimaryDataStoreTO(TemplateOnPrimaryDataStoreInfo template) { + public ImageOnPrimayDataStoreTO(TemplateOnPrimaryDataStoreInfo template) { this.pathOnPrimaryDataStore = template.getPath(); //this.dataStore = template.getPrimaryDataStore().getDataStoreTO(); this.template = new TemplateTO(template.getTemplate()); diff --git a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XenServerStorageResource.java b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XenServerStorageResource.java index 7e0ccbed39c..9c291491114 100644 --- a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XenServerStorageResource.java +++ b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XenServerStorageResource.java @@ -39,7 +39,7 @@ import org.apache.cloudstack.storage.command.CreatePrimaryDataStoreCmd; import org.apache.cloudstack.storage.command.CreateVolumeFromBaseImageCommand; import org.apache.cloudstack.storage.command.StorageSubSystemCommand; import org.apache.cloudstack.storage.datastore.protocol.DataStoreProtocol; -import org.apache.cloudstack.storage.to.ImageOnPrimaryDataStoreTO; +import org.apache.cloudstack.storage.to.ImageOnPrimayDataStoreTO; import org.apache.cloudstack.storage.to.VolumeTO; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; @@ -207,7 +207,7 @@ public class XenServerStorageResource { protected Answer execute(CreateVolumeFromBaseImageCommand cmd) { VolumeTO volume = cmd.getVolume(); - ImageOnPrimaryDataStoreTO baseImage = cmd.getImage(); + ImageOnPrimayDataStoreTO baseImage = cmd.getImage(); Connection conn = hypervisorResource.getConnection(); try { From 69b0c149d832be6554e4c5d53bb647d26ff69bd7 Mon Sep 17 00:00:00 2001 From: Joe Brockmeier Date: Fri, 12 Apr 2013 09:32:17 -0500 Subject: [PATCH 165/607] Revert "CLOUDSTACK-574: Add Ceph RBD documentation" This reverts commit 7753275b3777a3ae69d083d7e1df430f34b7f936. --- ...ypervisor-host-install-primary-storage.xml | 62 ------------------- docs/en-US/hypervisor-kvm-install-flow.xml | 1 - docs/en-US/primary-storage-add.xml | 5 -- 3 files changed, 68 deletions(-) delete mode 100644 docs/en-US/hypervisor-host-install-primary-storage.xml diff --git a/docs/en-US/hypervisor-host-install-primary-storage.xml b/docs/en-US/hypervisor-host-install-primary-storage.xml deleted file mode 100644 index 3e76bfbf3ba..00000000000 --- a/docs/en-US/hypervisor-host-install-primary-storage.xml +++ /dev/null @@ -1,62 +0,0 @@ - - -%BOOK_ENTITIES; -]> - - - -
- Adding Primary Storage to a KVM hypervisor - For most Primary Storages there are no special requirements to add primary storage, - it's all done via the management server. - The follow subchapters however describe a couple of prerequisites for adding primary storage to a KVM cluster/hypervisor. - -
- Requirements for NFS primary storage - &PRODUCT; will handle the mounting of the NFS storage, no manual intervention is required. - Before adding the Primary Storage make sure the NFS client packages are installed. It's always useful to do a manual mount on one or - more hypervisors prior to adding the primary storage to make sure the mountpoint works. -
- -
- Requirements for iSCSI primary storage - When adding iSCSI Primary Storage the management server of &PRODUCT; will configure the iSCSI initiator. The requirement however is that - Open-iSCSI is installed on all hypervisors. -
- -
- Requirements for Ceph primary storage - Support for RBD Primary Storage was added in &PRODUCT; 4.0 and requires a special version of libvirt. - With the KVM hypervisor &PRODUCT; relies on libvirt for handling it's storage pools. Most versions of libvirt - don't have the RBD storage pool support yet, so a manual compile of libvirt is required. - To use RBD primary storage make sure you hypervisors meet the following requirements - - Make sure librbd is installed on your system. - A RBD-enabled Qemu version is installed - Libivrt (>= 0.9.13) with RBD storage pool support enabled is installed - No /etc/ceph/ceph.conf configuration file is present on your hypervisors. - - After meeting these requirements you can add the RBD storage pool via the WebUI. - Hint: Ubuntu 13.04 meets all these requirements by default. - &PRODUCT; doesn't support multiple hostnames when adding a Primary Storage pool. If you have multiple Ceph monitor daemons - it's best to create a Round Robin-DNS record and use that as the hostname for the storage pool. -
- -
\ No newline at end of file diff --git a/docs/en-US/hypervisor-kvm-install-flow.xml b/docs/en-US/hypervisor-kvm-install-flow.xml index 7dfd47d2e52..6cc73e4fdfa 100644 --- a/docs/en-US/hypervisor-kvm-install-flow.xml +++ b/docs/en-US/hypervisor-kvm-install-flow.xml @@ -34,5 +34,4 @@ -
diff --git a/docs/en-US/primary-storage-add.xml b/docs/en-US/primary-storage-add.xml index ddae418d925..067cf7114dc 100644 --- a/docs/en-US/primary-storage-add.xml +++ b/docs/en-US/primary-storage-add.xml @@ -37,11 +37,6 @@ Primary storage cannot be added until a host has been added to the cluster. If you do not provision shared primary storage, you must set the global configuration parameter system.vm.local.storage.required to true, or else you will not be able to start VMs. - There are some differences between hypervisors regarding Primary Storage. See the list below for more information per hypervisor. - - - -
Adding Primary Stroage From 95cbb790f3e65d42182a52032a4ad6827391e57e Mon Sep 17 00:00:00 2001 From: Pascal Borreli Date: Fri, 12 Apr 2013 15:06:11 +0000 Subject: [PATCH 166/607] Fixed Primary typo --- .../org/apache/cloudstack/storage/test/DirectAgentTest.java | 4 ++-- .../storage/command/CreateVolumeFromBaseImageCommand.java | 6 +++--- .../datastore/provider/DataStoreProviderManagerImpl.java | 4 ++-- ...rimayDataStoreTO.java => ImageOnPrimaryDataStoreTO.java} | 4 ++-- .../hypervisor/xen/resource/XenServerStorageResource.java | 4 ++-- 5 files changed, 11 insertions(+), 11 deletions(-) rename engine/storage/src/org/apache/cloudstack/storage/to/{ImageOnPrimayDataStoreTO.java => ImageOnPrimaryDataStoreTO.java} (92%) diff --git a/engine/storage/integration-test/test/org/apache/cloudstack/storage/test/DirectAgentTest.java b/engine/storage/integration-test/test/org/apache/cloudstack/storage/test/DirectAgentTest.java index 2d6b94fdfaf..fc4aea85822 100644 --- a/engine/storage/integration-test/test/org/apache/cloudstack/storage/test/DirectAgentTest.java +++ b/engine/storage/integration-test/test/org/apache/cloudstack/storage/test/DirectAgentTest.java @@ -23,7 +23,7 @@ import java.util.UUID; import javax.inject.Inject; import org.apache.cloudstack.storage.to.ImageDataStoreTO; -import org.apache.cloudstack.storage.to.ImageOnPrimayDataStoreTO; +import org.apache.cloudstack.storage.to.ImageOnPrimaryDataStoreTO; import org.apache.cloudstack.storage.to.PrimaryDataStoreTO; import org.apache.cloudstack.storage.to.TemplateTO; import org.mockito.Mockito; @@ -126,7 +126,7 @@ public class DirectAgentTest extends CloudStackTestNGBase { @Test public void testDownloadTemplate() { - ImageOnPrimayDataStoreTO image = Mockito.mock(ImageOnPrimayDataStoreTO.class); + ImageOnPrimaryDataStoreTO image = Mockito.mock(ImageOnPrimaryDataStoreTO.class); PrimaryDataStoreTO primaryStore = Mockito.mock(PrimaryDataStoreTO.class); Mockito.when(primaryStore.getUuid()).thenReturn(this.getLocalStorageUuid()); Mockito.when(image.getPrimaryDataStore()).thenReturn(primaryStore); diff --git a/engine/storage/src/org/apache/cloudstack/storage/command/CreateVolumeFromBaseImageCommand.java b/engine/storage/src/org/apache/cloudstack/storage/command/CreateVolumeFromBaseImageCommand.java index f4be0676b9b..1734bc409cc 100644 --- a/engine/storage/src/org/apache/cloudstack/storage/command/CreateVolumeFromBaseImageCommand.java +++ b/engine/storage/src/org/apache/cloudstack/storage/command/CreateVolumeFromBaseImageCommand.java @@ -18,14 +18,14 @@ */ package org.apache.cloudstack.storage.command; -import org.apache.cloudstack.storage.to.ImageOnPrimayDataStoreTO; +import org.apache.cloudstack.storage.to.ImageOnPrimaryDataStoreTO; import org.apache.cloudstack.storage.to.VolumeTO; import com.cloud.agent.api.Command; public class CreateVolumeFromBaseImageCommand extends Command implements StorageSubSystemCommand { private final VolumeTO volume; - private final ImageOnPrimayDataStoreTO image; + private final ImageOnPrimaryDataStoreTO image; public CreateVolumeFromBaseImageCommand(VolumeTO volume, String image) { this.volume = volume; @@ -36,7 +36,7 @@ public class CreateVolumeFromBaseImageCommand extends Command implements Storage return this.volume; } - public ImageOnPrimayDataStoreTO getImage() { + public ImageOnPrimaryDataStoreTO getImage() { return this.image; } diff --git a/engine/storage/src/org/apache/cloudstack/storage/datastore/provider/DataStoreProviderManagerImpl.java b/engine/storage/src/org/apache/cloudstack/storage/datastore/provider/DataStoreProviderManagerImpl.java index 91b6c6329bb..40a65dcf07f 100644 --- a/engine/storage/src/org/apache/cloudstack/storage/datastore/provider/DataStoreProviderManagerImpl.java +++ b/engine/storage/src/org/apache/cloudstack/storage/datastore/provider/DataStoreProviderManagerImpl.java @@ -64,7 +64,7 @@ public class DataStoreProviderManagerImpl extends ManagerBase implements DataSto return null; } - public List getPrimayrDataStoreProviders() { + public List getPrimaryDataStoreProviders() { List providers = new ArrayList(); for (DataStoreProvider provider : providerMap.values()) { if (provider instanceof PrimaryDataStoreProvider) { @@ -138,7 +138,7 @@ public class DataStoreProviderManagerImpl extends ManagerBase implements DataSto throw new InvalidParameterValueException("Invalid parameter, need to specify type: either primary or image"); } if (type.equalsIgnoreCase(DataStoreProvider.DataStoreProviderType.PRIMARY.toString())) { - return this.getPrimayrDataStoreProviders(); + return this.getPrimaryDataStoreProviders(); } else if (type.equalsIgnoreCase(DataStoreProvider.DataStoreProviderType.IMAGE.toString())) { return this.getImageDataStoreProviders(); } else { diff --git a/engine/storage/src/org/apache/cloudstack/storage/to/ImageOnPrimayDataStoreTO.java b/engine/storage/src/org/apache/cloudstack/storage/to/ImageOnPrimaryDataStoreTO.java similarity index 92% rename from engine/storage/src/org/apache/cloudstack/storage/to/ImageOnPrimayDataStoreTO.java rename to engine/storage/src/org/apache/cloudstack/storage/to/ImageOnPrimaryDataStoreTO.java index 18743d70bf2..a9a3cc43c0e 100644 --- a/engine/storage/src/org/apache/cloudstack/storage/to/ImageOnPrimayDataStoreTO.java +++ b/engine/storage/src/org/apache/cloudstack/storage/to/ImageOnPrimaryDataStoreTO.java @@ -20,11 +20,11 @@ package org.apache.cloudstack.storage.to; import org.apache.cloudstack.storage.volume.TemplateOnPrimaryDataStoreInfo; -public class ImageOnPrimayDataStoreTO { +public class ImageOnPrimaryDataStoreTO { private final String pathOnPrimaryDataStore; private PrimaryDataStoreTO dataStore; private final TemplateTO template; - public ImageOnPrimayDataStoreTO(TemplateOnPrimaryDataStoreInfo template) { + public ImageOnPrimaryDataStoreTO(TemplateOnPrimaryDataStoreInfo template) { this.pathOnPrimaryDataStore = template.getPath(); //this.dataStore = template.getPrimaryDataStore().getDataStoreTO(); this.template = new TemplateTO(template.getTemplate()); diff --git a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XenServerStorageResource.java b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XenServerStorageResource.java index 9c291491114..7e0ccbed39c 100644 --- a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XenServerStorageResource.java +++ b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XenServerStorageResource.java @@ -39,7 +39,7 @@ import org.apache.cloudstack.storage.command.CreatePrimaryDataStoreCmd; import org.apache.cloudstack.storage.command.CreateVolumeFromBaseImageCommand; import org.apache.cloudstack.storage.command.StorageSubSystemCommand; import org.apache.cloudstack.storage.datastore.protocol.DataStoreProtocol; -import org.apache.cloudstack.storage.to.ImageOnPrimayDataStoreTO; +import org.apache.cloudstack.storage.to.ImageOnPrimaryDataStoreTO; import org.apache.cloudstack.storage.to.VolumeTO; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; @@ -207,7 +207,7 @@ public class XenServerStorageResource { protected Answer execute(CreateVolumeFromBaseImageCommand cmd) { VolumeTO volume = cmd.getVolume(); - ImageOnPrimayDataStoreTO baseImage = cmd.getImage(); + ImageOnPrimaryDataStoreTO baseImage = cmd.getImage(); Connection conn = hypervisorResource.getConnection(); try { From 8f865c5a901d1fb066709e1809fd5538af3eea11 Mon Sep 17 00:00:00 2001 From: Likitha Shetty Date: Mon, 8 Apr 2013 22:44:45 +0530 Subject: [PATCH 167/607] Dedicate Public IP address range to an account --- .../configuration/ConfigurationService.java | 6 + api/src/com/cloud/event/EventTypes.java | 4 + .../admin/vlan/DedicatePublicIpRangeCmd.java | 108 +++++ .../admin/vlan/ReleasePublicIpRangeCmd.java | 77 ++++ client/tomcatconf/commands.properties.in | 2 + .../configuration/ConfigurationManager.java | 5 +- .../ConfigurationManagerImpl.java | 173 +++++++- .../com/cloud/network/NetworkManagerImpl.java | 45 +- .../com/cloud/network/NetworkServiceImpl.java | 9 - .../cloud/server/ManagementServerImpl.java | 3 + .../com/cloud/user/AccountManagerImpl.java | 6 +- .../ConfigurationManagerTest.java | 413 ++++++++++++++++++ .../vpc/MockConfigurationManagerImpl.java | 23 +- .../component/test_public_ip_range.py | 173 ++++++++ tools/marvin/marvin/integration/lib/base.py | 19 +- 15 files changed, 1017 insertions(+), 49 deletions(-) create mode 100755 api/src/org/apache/cloudstack/api/command/admin/vlan/DedicatePublicIpRangeCmd.java create mode 100644 api/src/org/apache/cloudstack/api/command/admin/vlan/ReleasePublicIpRangeCmd.java mode change 100644 => 100755 server/src/com/cloud/configuration/ConfigurationManager.java create mode 100755 server/test/com/cloud/configuration/ConfigurationManagerTest.java mode change 100644 => 100755 server/test/com/cloud/vpc/MockConfigurationManagerImpl.java create mode 100755 test/integration/component/test_public_ip_range.py mode change 100644 => 100755 tools/marvin/marvin/integration/lib/base.py diff --git a/api/src/com/cloud/configuration/ConfigurationService.java b/api/src/com/cloud/configuration/ConfigurationService.java index e63fcece525..6937d0b64de 100644 --- a/api/src/com/cloud/configuration/ConfigurationService.java +++ b/api/src/com/cloud/configuration/ConfigurationService.java @@ -35,7 +35,9 @@ import org.apache.cloudstack.api.command.admin.offering.UpdateServiceOfferingCmd import org.apache.cloudstack.api.command.admin.pod.DeletePodCmd; import org.apache.cloudstack.api.command.admin.pod.UpdatePodCmd; import org.apache.cloudstack.api.command.admin.vlan.CreateVlanIpRangeCmd; +import org.apache.cloudstack.api.command.admin.vlan.DedicatePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.vlan.DeleteVlanIpRangeCmd; +import org.apache.cloudstack.api.command.admin.vlan.ReleasePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.zone.CreateZoneCmd; import org.apache.cloudstack.api.command.admin.zone.DeleteZoneCmd; import org.apache.cloudstack.api.command.admin.zone.UpdateZoneCmd; @@ -234,6 +236,10 @@ public interface ConfigurationService { boolean deleteVlanIpRange(DeleteVlanIpRangeCmd cmd); + Vlan dedicatePublicIpRange(DedicatePublicIpRangeCmd cmd) throws ResourceAllocationException; + + boolean releasePublicIpRange(ReleasePublicIpRangeCmd cmd); + NetworkOffering createNetworkOffering(CreateNetworkOfferingCmd cmd); NetworkOffering updateNetworkOffering(UpdateNetworkOfferingCmd cmd); diff --git a/api/src/com/cloud/event/EventTypes.java b/api/src/com/cloud/event/EventTypes.java index 6a26212ecc7..0ee7f402fd7 100755 --- a/api/src/com/cloud/event/EventTypes.java +++ b/api/src/com/cloud/event/EventTypes.java @@ -226,6 +226,8 @@ public class EventTypes { // VLANs/IP ranges public static final String EVENT_VLAN_IP_RANGE_CREATE = "VLAN.IP.RANGE.CREATE"; public static final String EVENT_VLAN_IP_RANGE_DELETE = "VLAN.IP.RANGE.DELETE"; + public static final String EVENT_VLAN_IP_RANGE_DEDICATE = "VLAN.IP.RANGE.DEDICATE"; + public static final String EVENT_VLAN_IP_RANGE_RELEASE = "VLAN.IP.RANGE.RELEASE"; public static final String EVENT_STORAGE_IP_RANGE_CREATE = "STORAGE.IP.RANGE.CREATE"; public static final String EVENT_STORAGE_IP_RANGE_DELETE = "STORAGE.IP.RANGE.DELETE"; @@ -545,6 +547,8 @@ public class EventTypes { // VLANs/IP ranges entityEventDetails.put(EVENT_VLAN_IP_RANGE_CREATE, Vlan.class.getName()); entityEventDetails.put(EVENT_VLAN_IP_RANGE_DELETE,Vlan.class.getName()); + entityEventDetails.put(EVENT_VLAN_IP_RANGE_DEDICATE, Vlan.class.getName()); + entityEventDetails.put(EVENT_VLAN_IP_RANGE_RELEASE,Vlan.class.getName()); entityEventDetails.put(EVENT_STORAGE_IP_RANGE_CREATE, StorageNetworkIpRange.class.getName()); entityEventDetails.put(EVENT_STORAGE_IP_RANGE_DELETE, StorageNetworkIpRange.class.getName()); diff --git a/api/src/org/apache/cloudstack/api/command/admin/vlan/DedicatePublicIpRangeCmd.java b/api/src/org/apache/cloudstack/api/command/admin/vlan/DedicatePublicIpRangeCmd.java new file mode 100755 index 00000000000..e7b1105af94 --- /dev/null +++ b/api/src/org/apache/cloudstack/api/command/admin/vlan/DedicatePublicIpRangeCmd.java @@ -0,0 +1,108 @@ +// 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.vlan; + +import org.apache.cloudstack.api.APICommand; +import org.apache.cloudstack.api.ApiConstants; +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.DomainResponse; +import org.apache.cloudstack.api.response.ProjectResponse; +import org.apache.cloudstack.api.response.VlanIpRangeResponse; +import org.apache.cloudstack.api.response.ZoneResponse; +import org.apache.log4j.Logger; + +import com.cloud.dc.Vlan; +import com.cloud.exception.ResourceAllocationException; +import com.cloud.exception.ResourceUnavailableException; +import com.cloud.user.Account; + +@APICommand(name = "dedicatePublicIpRange", description="Dedicates a Public IP range to an account", responseObject=VlanIpRangeResponse.class) +public class DedicatePublicIpRangeCmd extends BaseCmd { + public static final Logger s_logger = Logger.getLogger(DedicatePublicIpRangeCmd.class.getName()); + + private static final String s_name = "dedicatepubliciprangeresponse"; + + ///////////////////////////////////////////////////// + //////////////// API parameters ///////////////////// + ///////////////////////////////////////////////////// + + @Parameter(name=ApiConstants.ID, type=CommandType.UUID, entityType = VlanIpRangeResponse.class, + required=true, description="the id of the VLAN IP range") + private Long id; + + @Parameter(name=ApiConstants.ACCOUNT, type=CommandType.STRING, required=true, + description="account who will own the VLAN") + private String accountName; + + @Parameter(name=ApiConstants.PROJECT_ID, type=CommandType.UUID, entityType = ProjectResponse.class, + description="project who will own the VLAN") + private Long projectId; + + @Parameter(name=ApiConstants.DOMAIN_ID, type=CommandType.UUID, entityType = DomainResponse.class, + required=true, description="domain ID of the account owning a VLAN") + private Long domainId; + + ///////////////////////////////////////////////////// + /////////////////// Accessors /////////////////////// + ///////////////////////////////////////////////////// + + public Long getId() { + return id; + } + + public String getAccountName() { + return accountName; + } + + public Long getDomainId() { + return domainId; + } + + public Long getProjectId() { + return projectId; + } + + ///////////////////////////////////////////////////// + /////////////// API Implementation/////////////////// + ///////////////////////////////////////////////////// + + @Override + public String getCommandName() { + return s_name; + } + + @Override + public long getEntityOwnerId() { + return Account.ACCOUNT_ID_SYSTEM; + } + + @Override + public void execute() throws ResourceUnavailableException, ResourceAllocationException { + Vlan result = _configService.dedicatePublicIpRange(this); + if (result != null) { + VlanIpRangeResponse response = _responseGenerator.createVlanIpRangeResponse(result); + response.setResponseName(getCommandName()); + this.setResponseObject(response); + } else { + throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to dedicate vlan ip range"); + } + } + +} diff --git a/api/src/org/apache/cloudstack/api/command/admin/vlan/ReleasePublicIpRangeCmd.java b/api/src/org/apache/cloudstack/api/command/admin/vlan/ReleasePublicIpRangeCmd.java new file mode 100644 index 00000000000..91cc7d33da9 --- /dev/null +++ b/api/src/org/apache/cloudstack/api/command/admin/vlan/ReleasePublicIpRangeCmd.java @@ -0,0 +1,77 @@ +// 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.vlan; + +import org.apache.cloudstack.api.APICommand; +import org.apache.cloudstack.api.ApiConstants; +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.SuccessResponse; +import org.apache.cloudstack.api.response.VlanIpRangeResponse; +import org.apache.log4j.Logger; + +import com.cloud.user.Account; + +@APICommand(name = "releasePublicIpRange", description="Releases a Public IP range back to the system pool", responseObject=SuccessResponse.class) +public class ReleasePublicIpRangeCmd extends BaseCmd { + public static final Logger s_logger = Logger.getLogger(ReleasePublicIpRangeCmd.class.getName()); + + private static final String s_name = "releasepubliciprangeresponse"; + + ///////////////////////////////////////////////////// + //////////////// API parameters ///////////////////// + ///////////////////////////////////////////////////// + + @Parameter(name=ApiConstants.ID, type=CommandType.UUID, entityType = VlanIpRangeResponse.class, + required=true, description="the id of the Public IP range") + private Long id; + + ///////////////////////////////////////////////////// + /////////////////// Accessors /////////////////////// + ///////////////////////////////////////////////////// + + public Long getId() { + return id; + } + + ///////////////////////////////////////////////////// + /////////////// API Implementation/////////////////// + ///////////////////////////////////////////////////// + + @Override + public String getCommandName() { + return s_name; + } + + @Override + public long getEntityOwnerId() { + return Account.ACCOUNT_ID_SYSTEM; + } + + @Override + public void execute(){ + boolean result = _configService.releasePublicIpRange(this); + if (result) { + SuccessResponse response = new SuccessResponse(getCommandName()); + this.setResponseObject(response); + } else { + throw new ServerApiException(ApiErrorCode.INTERNAL_ERROR, "Failed to release public ip range"); + } + } +} diff --git a/client/tomcatconf/commands.properties.in b/client/tomcatconf/commands.properties.in index 4ce9fd3af5c..798d226ca96 100644 --- a/client/tomcatconf/commands.properties.in +++ b/client/tomcatconf/commands.properties.in @@ -124,6 +124,8 @@ listDiskOfferings=15 createVlanIpRange=1 deleteVlanIpRange=1 listVlanIpRanges=1 +dedicatePublicIpRange=1 +releasePublicIpRange=1 #### address commands associateIpAddress=15 diff --git a/server/src/com/cloud/configuration/ConfigurationManager.java b/server/src/com/cloud/configuration/ConfigurationManager.java old mode 100644 new mode 100755 index c5f65e9d0fc..d7faf19fd28 --- a/server/src/com/cloud/configuration/ConfigurationManager.java +++ b/server/src/com/cloud/configuration/ConfigurationManager.java @@ -30,6 +30,7 @@ import com.cloud.dc.Vlan; import com.cloud.exception.ConcurrentOperationException; import com.cloud.exception.InsufficientCapacityException; import com.cloud.exception.InvalidParameterValueException; +import com.cloud.exception.ResourceAllocationException; import com.cloud.network.Network; import com.cloud.network.Network.Capability; import com.cloud.network.Network.Provider; @@ -150,6 +151,8 @@ public interface ConfigurationManager extends ConfigurationService, Manager { */ boolean deleteVlanAndPublicIpRange(long userId, long vlanDbId, Account caller); + boolean releasePublicIpRange(long userId, long vlanDbId, Account caller); + /** * Converts a comma separated list of tags to a List * @@ -211,7 +214,7 @@ public interface ConfigurationManager extends ConfigurationService, Manager { ClusterVO getCluster(long id); - boolean deleteAccountSpecificVirtualRanges(long accountId); + boolean releaseAccountSpecificVirtualRanges(long accountId); /** * Edits a pod in the database. Will not allow you to edit pods that are being used anywhere in the system. diff --git a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java index ceeae1ee910..fce3c010df4 100755 --- a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java +++ b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java @@ -56,7 +56,9 @@ import org.apache.cloudstack.api.command.admin.offering.UpdateServiceOfferingCmd import org.apache.cloudstack.api.command.admin.pod.DeletePodCmd; import org.apache.cloudstack.api.command.admin.pod.UpdatePodCmd; import org.apache.cloudstack.api.command.admin.vlan.CreateVlanIpRangeCmd; +import org.apache.cloudstack.api.command.admin.vlan.DedicatePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.vlan.DeleteVlanIpRangeCmd; +import org.apache.cloudstack.api.command.admin.vlan.ReleasePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.zone.CreateZoneCmd; import org.apache.cloudstack.api.command.admin.zone.DeleteZoneCmd; import org.apache.cloudstack.api.command.admin.zone.UpdateZoneCmd; @@ -2306,9 +2308,6 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati throw new InvalidParameterValueException("Gateway, netmask and zoneId have to be passed in for virtual and direct untagged networks"); } - // if it's an account specific range, associate ip address list to the account - boolean associateIpRangeToAccount = false; - if (forVirtualNetwork) { if (vlanOwner != null) { @@ -2316,8 +2315,6 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati //check resource limits _resourceLimitMgr.checkResourceLimit(vlanOwner, ResourceType.public_ip, accountIpRange); - - associateIpRangeToAccount = true; } } @@ -2332,21 +2329,6 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati endIP, vlanGateway, vlanNetmask, vlanId, vlanOwner, startIPv6, endIPv6, ip6Gateway, ip6Cidr); txn.commit(); - if (associateIpRangeToAccount) { - _networkMgr.associateIpAddressListToAccount(userId, vlanOwner.getId(), zoneId, vlan.getId(), null); - } - - // Associate ips to the network - if (associateIpRangeToAccount) { - if (network.getState() == Network.State.Implemented) { - s_logger.debug("Applying ip associations for vlan id=" + vlanId + " in network " + network); - if (!_networkMgr.applyIpAssociations(network, false)) { - s_logger.warn("Failed to apply ip associations for vlan id=1 as a part of add vlan range for account id=" + vlanOwner.getId()); - } - } else { - s_logger.trace("Network id=" + network.getId() + " is not Implemented, no need to apply ipAssociations"); - } - } return vlan; } @@ -2698,6 +2680,149 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati } } + @Override + @DB + @ActionEvent(eventType = EventTypes.EVENT_VLAN_IP_RANGE_DEDICATE, eventDescription = "dedicating vlan ip range", async = false) + public Vlan dedicatePublicIpRange(DedicatePublicIpRangeCmd cmd) throws ResourceAllocationException { + Long vlanDbId = cmd.getId(); + String accountName = cmd.getAccountName(); + Long domainId = cmd.getDomainId(); + Long projectId = cmd.getProjectId(); + + // Check if account is valid + Account vlanOwner = null; + if (projectId != null) { + if (accountName != null) { + throw new InvalidParameterValueException("accountName and projectId are mutually exclusive"); + } + Project project = _projectMgr.getProject(projectId); + if (project == null) { + throw new InvalidParameterValueException("Unable to find project by id " + projectId); + } + vlanOwner = _accountMgr.getAccount(project.getProjectAccountId()); + } + + if ((accountName != null) && (domainId != null)) { + vlanOwner = _accountDao.findActiveAccount(accountName, domainId); + if (vlanOwner == null) { + throw new InvalidParameterValueException("Please specify a valid account"); + } + } + + // Check if range is valid + VlanVO vlan = _vlanDao.findById(vlanDbId); + if (vlan == null) { + throw new InvalidParameterValueException("Please specify a valid Public IP range id"); + } + + // Check if range has already been dedicated + List maps = _accountVlanMapDao.listAccountVlanMapsByVlan(vlanDbId); + if (maps != null && !maps.isEmpty()) { + throw new InvalidParameterValueException("Specified Public IP range has already been dedicated"); + } + + // Verify that zone exists and is advanced + Long zoneId = vlan.getDataCenterId(); + DataCenterVO zone = _zoneDao.findById(zoneId); + if (zone == null) { + throw new InvalidParameterValueException("Unable to find zone by id " + zoneId); + } + if (zone.getNetworkType() == NetworkType.Basic) { + throw new InvalidParameterValueException("Public IP range can be dedicated to an account only in the zone of type " + NetworkType.Advanced); + } + + // Check Public IP resource limits + int accountPublicIpRange = _publicIpAddressDao.countIPs(zoneId, vlanDbId, false); + _resourceLimitMgr.checkResourceLimit(vlanOwner, ResourceType.public_ip, accountPublicIpRange); + + // Check if any of the Public IP addresses is allocated to another account + List ips = _publicIpAddressDao.listByVlanId(vlanDbId); + for (IPAddressVO ip : ips) { + Long allocatedToAccountId = ip.getAllocatedToAccountId(); + if (allocatedToAccountId != null) { + Account accountAllocatedTo = _accountMgr.getActiveAccountById(allocatedToAccountId); + if (!accountAllocatedTo.getAccountName().equalsIgnoreCase(accountName)) + throw new InvalidParameterValueException("Public IP address in range is already allocated to another account"); + } + } + + Transaction txn = Transaction.currentTxn(); + txn.start(); + + // Create an AccountVlanMapVO entry + AccountVlanMapVO accountVlanMapVO = new AccountVlanMapVO(vlanOwner.getId(), vlan.getId()); + _accountVlanMapDao.persist(accountVlanMapVO); + + txn.commit(); + + return vlan; + } + + @Override + @ActionEvent(eventType = EventTypes.EVENT_VLAN_IP_RANGE_RELEASE, eventDescription = "releasing a public ip range", async = false) + public boolean releasePublicIpRange(ReleasePublicIpRangeCmd cmd) { + Long vlanDbId = cmd.getId(); + + VlanVO vlan = _vlanDao.findById(vlanDbId); + if (vlan == null) { + throw new InvalidParameterValueException("Please specify a valid IP range id."); + } + + return releasePublicIpRange(vlanDbId, UserContext.current().getCallerUserId(), UserContext.current().getCaller()); + } + + @Override + @DB + public boolean releasePublicIpRange(long vlanDbId, long userId, Account caller) { + VlanVO vlan = _vlanDao.findById(vlanDbId); + + List acctVln = _accountVlanMapDao.listAccountVlanMapsByVlan(vlanDbId); + // Verify range is dedicated + if (acctVln == null || acctVln.isEmpty()) { + throw new InvalidParameterValueException("Can't release Public IP range " + vlanDbId + " as it not dedicated to any account"); + } + + // Check if range has any allocated public IPs + long allocIpCount = _publicIpAddressDao.countIPs(vlan.getDataCenterId(), vlanDbId, true); + boolean success = true; + if (allocIpCount > 0) { + try { + vlan = _vlanDao.acquireInLockTable(vlanDbId, 30); + if (vlan == null) { + throw new CloudRuntimeException("Unable to acquire vlan configuration: " + vlanDbId); + } + if (s_logger.isDebugEnabled()) { + s_logger.debug("lock vlan " + vlanDbId + " is acquired"); + } + List ips = _publicIpAddressDao.listByVlanId(vlanDbId); + for (IPAddressVO ip : ips) { + // Disassociate allocated IP's that are not in use + if ( !ip.isOneToOneNat() && !(ip.isSourceNat() && _networkModel.getNetwork(ip.getAssociatedWithNetworkId()) != null) && + !(_firewallDao.countRulesByIpId(ip.getId()) > 0) ) { + if (s_logger.isDebugEnabled()) { + s_logger.debug("Releasing Public IP addresses" + ip +" of vlan " + vlanDbId + " as part of Public IP" + + " range release to the system pool"); + } + success = success && _networkMgr.disassociatePublicIpAddress(ip.getId(), userId, caller); + } + } + if (!success) { + s_logger.warn("Some Public IP addresses that were not in use failed to be released as a part of" + + " vlan " + vlanDbId + "release to the system pool"); + } + } finally { + _vlanDao.releaseFromLockTable(vlanDbId); + } + } + + // A Public IP range can only be dedicated to one account at a time + if (_accountVlanMapDao.remove(acctVln.get(0).getId())) { + return true; + } else { + return false; + } + } + @Override public List csvTagsToList(String tags) { List tagsList = new ArrayList(); @@ -3957,14 +4082,14 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati @Override @DB - public boolean deleteAccountSpecificVirtualRanges(long accountId) { + public boolean releaseAccountSpecificVirtualRanges(long accountId) { List maps = _accountVlanMapDao.listAccountVlanMapsByAccount(accountId); boolean result = true; if (maps != null && !maps.isEmpty()) { Transaction txn = Transaction.currentTxn(); txn.start(); for (AccountVlanMapVO map : maps) { - if (!deleteVlanAndPublicIpRange(_accountMgr.getSystemUser().getId(), map.getVlanDbId(), + if (!releasePublicIpRange(map.getVlanDbId(), _accountMgr.getSystemUser().getId(), _accountMgr.getAccount(Account.ACCOUNT_ID_SYSTEM))) { result = false; } @@ -3972,10 +4097,10 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati if (result) { txn.commit(); } else { - s_logger.error("Failed to delete account specific virtual ip ranges for account id=" + accountId); + s_logger.error("Failed to release account specific virtual ip ranges for account id=" + accountId); } } else { - s_logger.trace("Account id=" + accountId + " has no account specific virtual ip ranges, nothing to delete"); + s_logger.trace("Account id=" + accountId + " has no account specific virtual ip ranges, nothing to release"); } return result; } diff --git a/server/src/com/cloud/network/NetworkManagerImpl.java b/server/src/com/cloud/network/NetworkManagerImpl.java index a97f2ce13e4..5b604667585 100755 --- a/server/src/com/cloud/network/NetworkManagerImpl.java +++ b/server/src/com/cloud/network/NetworkManagerImpl.java @@ -348,7 +348,7 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L } @DB - public PublicIp fetchNewPublicIp(long dcId, Long podId, Long vlanDbId, Account owner, VlanType vlanUse, + public PublicIp fetchNewPublicIp(long dcId, Long podId, List vlanDbIds, Account owner, VlanType vlanUse, Long guestNetworkId, boolean sourceNat, boolean assign, String requestedIp, boolean isSystem, Long vpcId) throws InsufficientAddressCapacityException { StringBuilder errorMessage = new StringBuilder("Unable to get ip adress in "); @@ -364,9 +364,9 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L errorMessage.append(" zone id=" + dcId); } - if (vlanDbId != null) { - sc.addAnd("vlanId", SearchCriteria.Op.EQ, vlanDbId); - errorMessage.append(", vlanId id=" + vlanDbId); + if ( vlanDbIds != null && !vlanDbIds.isEmpty() ) { + sc.setParameters("vlanId", vlanDbIds.toArray()); + errorMessage.append(", vlanId id=" + vlanDbIds.toArray()); } sc.setParameters("dc", dcId); @@ -526,14 +526,14 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L } // If account has Account specific ip ranges, try to allocate ip from there - Long vlanId = null; + List vlanIds = new ArrayList(); List maps = _accountVlanMapDao.listAccountVlanMapsByAccount(ownerId); if (maps != null && !maps.isEmpty()) { - vlanId = maps.get(0).getVlanDbId(); + vlanIds.add(maps.get(0).getVlanDbId()); } - ip = fetchNewPublicIp(dcId, null, vlanId, owner, VlanType.VirtualNetwork, guestNtwkId, + ip = fetchNewPublicIp(dcId, null, vlanIds, owner, VlanType.VirtualNetwork, guestNtwkId, isSourceNat, false, null, false, vpcId); IPAddressVO publicIp = ip.ip(); @@ -669,6 +669,7 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L VlanType vlanType = VlanType.VirtualNetwork; boolean assign = false; + boolean allocateFromDedicatedRange = false; if (Grouping.AllocationState.Disabled == zone.getAllocationState() && !_accountMgr.isRootAdmin(caller.getType())) { // zone is of type DataCenter. See DataCenterVO.java. @@ -702,8 +703,32 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L txn.start(); - ip = fetchNewPublicIp(zone.getId(), null, null, ipOwner, vlanType, null, - false, assign, null, isSystem, null); + // If account has dedicated Public IP ranges, allocate IP from the dedicated range + List vlanDbIds = new ArrayList(); + List maps = _accountVlanMapDao.listAccountVlanMapsByAccount(ipOwner.getId()); + for (AccountVlanMapVO map : maps) { + vlanDbIds.add(map.getVlanDbId()); + } + if (vlanDbIds != null && !vlanDbIds.isEmpty()) { + allocateFromDedicatedRange = true; + } + + try { + if (allocateFromDedicatedRange) { + ip = fetchNewPublicIp(zone.getId(), null, vlanDbIds, ipOwner, vlanType, null, + false, assign, null, isSystem, null); + } + } catch(InsufficientAddressCapacityException e) { + s_logger.warn("All IPs dedicated to account " + ipOwner.getId() + " has been acquired." + + " Now acquiring from the system pool"); + txn.close(); + allocateFromDedicatedRange = false; + } + + if (!allocateFromDedicatedRange) { + ip = fetchNewPublicIp(zone.getId(), null, null, ipOwner, vlanType, null, false, assign, null, + isSystem, null); + } if (ip == null) { @@ -1082,7 +1107,7 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L AssignIpAddressSearch = _ipAddressDao.createSearchBuilder(); AssignIpAddressSearch.and("dc", AssignIpAddressSearch.entity().getDataCenterId(), Op.EQ); AssignIpAddressSearch.and("allocated", AssignIpAddressSearch.entity().getAllocatedTime(), Op.NULL); - AssignIpAddressSearch.and("vlanId", AssignIpAddressSearch.entity().getVlanId(), Op.EQ); + AssignIpAddressSearch.and("vlanId", AssignIpAddressSearch.entity().getVlanId(), Op.IN); SearchBuilder vlanSearch = _vlanDao.createSearchBuilder(); vlanSearch.and("type", vlanSearch.entity().getVlanType(), Op.EQ); vlanSearch.and("networkId", vlanSearch.entity().getNetworkId(), Op.EQ); diff --git a/server/src/com/cloud/network/NetworkServiceImpl.java b/server/src/com/cloud/network/NetworkServiceImpl.java index 4eb620c4243..a8cbaa75017 100755 --- a/server/src/com/cloud/network/NetworkServiceImpl.java +++ b/server/src/com/cloud/network/NetworkServiceImpl.java @@ -697,15 +697,6 @@ public class NetworkServiceImpl extends ManagerBase implements NetworkService { throw new IllegalArgumentException("only ip addresses that belong to a virtual network may be disassociated."); } - // Check for account wide pool. It will have an entry for account_vlan_map. - if (_accountVlanMapDao.findAccountVlanMap(ipVO.getAllocatedToAccountId(), ipVO.getVlanId()) != null) { - //see IPaddressVO.java - InvalidParameterValueException ex = new InvalidParameterValueException("Sepcified IP address uuid belongs to" + - " Account wide IP pool and cannot be disassociated"); - ex.addProxyObject("user_ip_address", ipAddressId, "ipAddressId"); - throw ex; - } - // don't allow releasing system ip address if (ipVO.getSystem()) { InvalidParameterValueException ex = new InvalidParameterValueException("Can't release system IP address with specified id"); diff --git a/server/src/com/cloud/server/ManagementServerImpl.java b/server/src/com/cloud/server/ManagementServerImpl.java index b869d1e21b3..d9a4317d097 100755 --- a/server/src/com/cloud/server/ManagementServerImpl.java +++ b/server/src/com/cloud/server/ManagementServerImpl.java @@ -59,6 +59,7 @@ import org.apache.cloudstack.api.command.admin.storage.*; import org.apache.cloudstack.api.command.admin.systemvm.*; import org.apache.cloudstack.api.command.admin.usage.*; import org.apache.cloudstack.api.command.admin.user.*; +import org.apache.cloudstack.api.command.admin.vlan.*; import org.apache.cloudstack.api.command.admin.vpc.*; import org.apache.cloudstack.api.command.user.autoscale.*; import org.apache.cloudstack.api.command.user.firewall.*; @@ -2037,6 +2038,8 @@ public class ManagementServerImpl extends ManagerBase implements ManagementServe cmdList.add(CreateVlanIpRangeCmd.class); cmdList.add(DeleteVlanIpRangeCmd.class); cmdList.add(ListVlanIpRangesCmd.class); + cmdList.add(DedicatePublicIpRangeCmd.class); + cmdList.add(ReleasePublicIpRangeCmd.class); cmdList.add(AssignVMCmd.class); cmdList.add(MigrateVMCmd.class); cmdList.add(RecoverVMCmd.class); diff --git a/server/src/com/cloud/user/AccountManagerImpl.java b/server/src/com/cloud/user/AccountManagerImpl.java index fe714c530b9..e74c49124f7 100755 --- a/server/src/com/cloud/user/AccountManagerImpl.java +++ b/server/src/com/cloud/user/AccountManagerImpl.java @@ -690,13 +690,13 @@ public class AccountManagerImpl extends ManagerBase implements AccountManager, M accountCleanupNeeded = true; } - // delete account specific Virtual vlans (belong to system Public Network) - only when networks are cleaned + // release account specific Virtual vlans (belong to system Public Network) - only when networks are cleaned // up successfully if (networksDeleted) { - if (!_configMgr.deleteAccountSpecificVirtualRanges(accountId)) { + if (!_configMgr.releaseAccountSpecificVirtualRanges(accountId)) { accountCleanupNeeded = true; } else { - s_logger.debug("Account specific Virtual IP ranges " + " are successfully deleted as a part of account id=" + accountId + " cleanup."); + s_logger.debug("Account specific Virtual IP ranges " + " are successfully released as a part of account id=" + accountId + " cleanup."); } } diff --git a/server/test/com/cloud/configuration/ConfigurationManagerTest.java b/server/test/com/cloud/configuration/ConfigurationManagerTest.java new file mode 100755 index 00000000000..ee98d53c922 --- /dev/null +++ b/server/test/com/cloud/configuration/ConfigurationManagerTest.java @@ -0,0 +1,413 @@ +// 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.configuration; + +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; +import java.lang.reflect.Field; + +import org.apache.cloudstack.api.command.admin.vlan.DedicatePublicIpRangeCmd; +import org.apache.cloudstack.api.command.admin.vlan.ReleasePublicIpRangeCmd; +import org.apache.log4j.Logger; +import org.junit.Before; +import org.junit.Test; +import org.mockito.Mock; +import org.mockito.MockitoAnnotations; + +import com.cloud.configuration.Resource.ResourceType; +import com.cloud.dc.AccountVlanMapVO; +import com.cloud.dc.DataCenterVO; +import com.cloud.dc.Vlan; +import com.cloud.dc.VlanVO; +import com.cloud.dc.DataCenter.NetworkType; +import com.cloud.dc.dao.AccountVlanMapDao; +import com.cloud.dc.dao.DataCenterDao; +import com.cloud.dc.dao.VlanDao; +import com.cloud.network.NetworkManager; +import com.cloud.network.dao.FirewallRulesDao; +import com.cloud.network.dao.IPAddressDao; +import com.cloud.network.dao.IPAddressVO; +import com.cloud.projects.ProjectManager; +import com.cloud.user.Account; +import com.cloud.user.AccountManager; +import com.cloud.user.AccountVO; +import com.cloud.user.ResourceLimitService; +import com.cloud.user.UserContext; +import com.cloud.user.dao.AccountDao; +import com.cloud.utils.db.Transaction; +import com.cloud.utils.net.Ip; + +import junit.framework.Assert; + +import static org.mockito.Matchers.*; +import static org.mockito.Mockito.when; +import static org.mockito.Mockito.doNothing; + +public class ConfigurationManagerTest { + + private static final Logger s_logger = Logger.getLogger(ConfigurationManagerTest.class); + + ConfigurationManagerImpl configurationMgr = new ConfigurationManagerImpl(); + + DedicatePublicIpRangeCmd dedicatePublicIpRangesCmd = new DedicatePublicIpRangeCmdExtn(); + Class _dedicatePublicIpRangeClass = dedicatePublicIpRangesCmd.getClass().getSuperclass(); + + ReleasePublicIpRangeCmd releasePublicIpRangesCmd = new ReleasePublicIpRangeCmdExtn(); + Class _releasePublicIpRangeClass = releasePublicIpRangesCmd.getClass().getSuperclass(); + + @Mock AccountManager _accountMgr; + @Mock ProjectManager _projectMgr; + @Mock ResourceLimitService _resourceLimitMgr; + @Mock NetworkManager _networkMgr; + @Mock AccountDao _accountDao; + @Mock VlanDao _vlanDao; + @Mock AccountVlanMapDao _accountVlanMapDao; + @Mock IPAddressDao _publicIpAddressDao; + @Mock DataCenterDao _zoneDao; + @Mock FirewallRulesDao _firewallDao; + + VlanVO vlan = new VlanVO(Vlan.VlanType.VirtualNetwork, "vlantag", "vlangateway","vlannetmask", 1L, "iprange", 1L, 1L, null, null, null); + + @Before + public void setup() throws Exception { + MockitoAnnotations.initMocks(this); + configurationMgr._accountMgr = _accountMgr; + configurationMgr._projectMgr = _projectMgr; + configurationMgr._resourceLimitMgr = _resourceLimitMgr; + configurationMgr._networkMgr = _networkMgr; + configurationMgr._accountDao = _accountDao; + configurationMgr._vlanDao = _vlanDao; + configurationMgr._accountVlanMapDao = _accountVlanMapDao; + configurationMgr._publicIpAddressDao = _publicIpAddressDao; + configurationMgr._zoneDao = _zoneDao; + configurationMgr._firewallDao = _firewallDao; + + Account account = (Account) new AccountVO("testaccount", 1, "networkdomain", (short) 0, UUID.randomUUID().toString()); + when(configurationMgr._accountMgr.getAccount(anyLong())).thenReturn(account); + when(configurationMgr._accountDao.findActiveAccount(anyString(), anyLong())).thenReturn(account); + when(configurationMgr._accountMgr.getActiveAccountById(anyLong())).thenReturn(account); + + when(configurationMgr._publicIpAddressDao.countIPs(anyLong(), anyLong(), anyBoolean())).thenReturn(1); + + doNothing().when(configurationMgr._resourceLimitMgr).checkResourceLimit(any(Account.class), + any(ResourceType.class), anyLong()); + + when(configurationMgr._accountVlanMapDao.persist(any(AccountVlanMapVO.class))).thenReturn(new AccountVlanMapVO()); + + when(configurationMgr._vlanDao.acquireInLockTable(anyLong(), anyInt())).thenReturn(vlan); + + UserContext.registerContext(1, account, null, true); + + Field dedicateIdField = _dedicatePublicIpRangeClass.getDeclaredField("id"); + dedicateIdField.setAccessible(true); + dedicateIdField.set(dedicatePublicIpRangesCmd, 1L); + + Field accountNameField = _dedicatePublicIpRangeClass.getDeclaredField("accountName"); + accountNameField.setAccessible(true); + accountNameField.set(dedicatePublicIpRangesCmd, "accountname"); + + Field projectIdField = _dedicatePublicIpRangeClass.getDeclaredField("projectId"); + projectIdField.setAccessible(true); + projectIdField.set(dedicatePublicIpRangesCmd, null); + + Field domainIdField = _dedicatePublicIpRangeClass.getDeclaredField("domainId"); + domainIdField.setAccessible(true); + domainIdField.set(dedicatePublicIpRangesCmd, 1L); + + Field releaseIdField = _releasePublicIpRangeClass.getDeclaredField("id"); + releaseIdField.setAccessible(true); + releaseIdField.set(releasePublicIpRangesCmd, 1L); + } + + @Test + public void testDedicatePublicIpRange() throws Exception { + + s_logger.info("Running tests for DedicatePublicIpRange API"); + + /* + * TEST 1: given valid parameters DedicatePublicIpRange should succeed + */ + runDedicatePublicIpRangePostiveTest(); + + /* + * TEST 2: given invalid public ip range DedicatePublicIpRange should fail + */ + runDedicatePublicIpRangeInvalidRange(); + /* + * TEST 3: given public IP range that is already dedicated to a different account DedicatePublicIpRange should fail + */ + runDedicatePublicIpRangeDedicatedRange(); + + /* + * TEST 4: given zone is of type Basic DedicatePublicIpRange should fail + */ + runDedicatePublicIpRangeInvalidZone(); + + /* + * TEST 5: given range is already allocated to a different account DedicatePublicIpRange should fail + */ + runDedicatePublicIpRangeIPAdressAllocated(); + } + + @Test + public void testReleasePublicIpRange() throws Exception { + + s_logger.info("Running tests for DedicatePublicIpRange API"); + + /* + * TEST 1: given valid parameters and no allocated public ip's in the range ReleasePublicIpRange should succeed + */ + runReleasePublicIpRangePostiveTest1(); + + /* + * TEST 2: given valid parameters ReleasePublicIpRange should succeed + */ + runReleasePublicIpRangePostiveTest2(); + + /* + * TEST 3: given range doesn't exist + */ + runReleasePublicIpRangeInvalidIpRange(); + + /* + * TEST 4: given range is not dedicated to any account + */ + runReleaseNonDedicatedPublicIpRange(); + } + + void runDedicatePublicIpRangePostiveTest() throws Exception { + Transaction txn = Transaction.open("runDedicatePublicIpRangePostiveTest"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); + + when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByAccount(anyLong())).thenReturn(null); + + DataCenterVO dc = new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", + null, null, NetworkType.Advanced, null, null, true, true, null, null); + when(configurationMgr._zoneDao.findById(anyLong())).thenReturn(dc); + + List ipAddressList = new ArrayList(); + IPAddressVO ipAddress = new IPAddressVO(new Ip("75.75.75.75"), 1, 0xaabbccddeeffL, 10, false); + ipAddressList.add(ipAddress); + when(configurationMgr._publicIpAddressDao.listByVlanId(anyLong())).thenReturn(ipAddressList); + + try { + Vlan result = configurationMgr.dedicatePublicIpRange(dedicatePublicIpRangesCmd); + Assert.assertNotNull(result); + } catch (Exception e) { + s_logger.info("exception in testing runDedicatePublicIpRangePostiveTest message: " + e.toString()); + } finally { + txn.close("runDedicatePublicIpRangePostiveTest"); + } + } + + void runDedicatePublicIpRangeInvalidRange() throws Exception { + Transaction txn = Transaction.open("runDedicatePublicIpRangeInvalidRange"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(null); + try { + configurationMgr.dedicatePublicIpRange(dedicatePublicIpRangesCmd); + } catch (Exception e) { + Assert.assertTrue(e.getMessage().contains("Please specify a valid Public IP range id")); + } finally { + txn.close("runDedicatePublicIpRangeInvalidRange"); + } + } + + void runDedicatePublicIpRangeDedicatedRange() throws Exception { + Transaction txn = Transaction.open("runDedicatePublicIpRangeDedicatedRange"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); + + // public ip range is already dedicated + List accountVlanMaps = new ArrayList(); + AccountVlanMapVO accountVlanMap = new AccountVlanMapVO(1, 1); + accountVlanMaps.add(accountVlanMap); + when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByVlan(anyLong())).thenReturn(accountVlanMaps); + + DataCenterVO dc = new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", + null, null, NetworkType.Advanced, null, null, true, true, null, null); + when(configurationMgr._zoneDao.findById(anyLong())).thenReturn(dc); + + List ipAddressList = new ArrayList(); + IPAddressVO ipAddress = new IPAddressVO(new Ip("75.75.75.75"), 1, 0xaabbccddeeffL, 10, false); + ipAddressList.add(ipAddress); + when(configurationMgr._publicIpAddressDao.listByVlanId(anyLong())).thenReturn(ipAddressList); + + try { + configurationMgr.dedicatePublicIpRange(dedicatePublicIpRangesCmd); + } catch (Exception e) { + Assert.assertTrue(e.getMessage().contains("Public IP range has already been dedicated")); + } finally { + txn.close("runDedicatePublicIpRangePublicIpRangeDedicated"); + } + } + + void runDedicatePublicIpRangeInvalidZone() throws Exception { + Transaction txn = Transaction.open("runDedicatePublicIpRangeInvalidZone"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); + + when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByVlan(anyLong())).thenReturn(null); + + // public ip range belongs to zone of type basic + DataCenterVO dc = new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", + null, null, NetworkType.Basic, null, null, true, true, null, null); + when(configurationMgr._zoneDao.findById(anyLong())).thenReturn(dc); + + List ipAddressList = new ArrayList(); + IPAddressVO ipAddress = new IPAddressVO(new Ip("75.75.75.75"), 1, 0xaabbccddeeffL, 10, false); + ipAddressList.add(ipAddress); + when(configurationMgr._publicIpAddressDao.listByVlanId(anyLong())).thenReturn(ipAddressList); + + try { + configurationMgr.dedicatePublicIpRange(dedicatePublicIpRangesCmd); + } catch (Exception e) { + Assert.assertTrue(e.getMessage().contains("Public IP range can be dedicated to an account only in the zone of type Advanced")); + } finally { + txn.close("runDedicatePublicIpRangeInvalidZone"); + } + } + + void runDedicatePublicIpRangeIPAdressAllocated() throws Exception { + Transaction txn = Transaction.open("runDedicatePublicIpRangeIPAdressAllocated"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); + + when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByAccount(anyLong())).thenReturn(null); + + DataCenterVO dc = new DataCenterVO(UUID.randomUUID().toString(), "test", "8.8.8.8", null, "10.0.0.1", null, "10.0.0.1/24", + null, null, NetworkType.Advanced, null, null, true, true, null, null); + when(configurationMgr._zoneDao.findById(anyLong())).thenReturn(dc); + + // one of the ip addresses of the range is allocated to different account + List ipAddressList = new ArrayList(); + IPAddressVO ipAddress = new IPAddressVO(new Ip("75.75.75.75"), 1, 0xaabbccddeeffL, 10, false); + ipAddress.setAllocatedToAccountId(1L); + ipAddressList.add(ipAddress); + when(configurationMgr._publicIpAddressDao.listByVlanId(anyLong())).thenReturn(ipAddressList); + + try { + configurationMgr.dedicatePublicIpRange(dedicatePublicIpRangesCmd); + } catch (Exception e) { + Assert.assertTrue(e.getMessage().contains("Public IP address in range is already allocated to another account")); + } finally { + txn.close("runDedicatePublicIpRangeIPAdressAllocated"); + } + } + + void runReleasePublicIpRangePostiveTest1() throws Exception { + Transaction txn = Transaction.open("runReleasePublicIpRangePostiveTest1"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); + + List accountVlanMaps = new ArrayList(); + AccountVlanMapVO accountVlanMap = new AccountVlanMapVO(1, 1); + accountVlanMaps.add(accountVlanMap); + when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByVlan(anyLong())).thenReturn(accountVlanMaps); + + // no allocated ip's + when(configurationMgr._publicIpAddressDao.countIPs(anyLong(), anyLong(), anyBoolean())).thenReturn(0); + + when(configurationMgr._accountVlanMapDao.remove(anyLong())).thenReturn(true); + try { + Boolean result = configurationMgr.releasePublicIpRange(releasePublicIpRangesCmd); + Assert.assertTrue(result); + } catch (Exception e) { + s_logger.info("exception in testing runReleasePublicIpRangePostiveTest1 message: " + e.toString()); + } finally { + txn.close("runReleasePublicIpRangePostiveTest1"); + } + } + + void runReleasePublicIpRangePostiveTest2() throws Exception { + Transaction txn = Transaction.open("runReleasePublicIpRangePostiveTest2"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); + + List accountVlanMaps = new ArrayList(); + AccountVlanMapVO accountVlanMap = new AccountVlanMapVO(1, 1); + accountVlanMaps.add(accountVlanMap); + when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByVlan(anyLong())).thenReturn(accountVlanMaps); + + when(configurationMgr._publicIpAddressDao.countIPs(anyLong(), anyLong(), anyBoolean())).thenReturn(1); + + List ipAddressList = new ArrayList(); + IPAddressVO ipAddress = new IPAddressVO(new Ip("75.75.75.75"), 1, 0xaabbccddeeffL, 10, false); + ipAddressList.add(ipAddress); + when(configurationMgr._publicIpAddressDao.listByVlanId(anyLong())).thenReturn(ipAddressList); + + when(configurationMgr._firewallDao.countRulesByIpId(anyLong())).thenReturn(0L); + + when(configurationMgr._networkMgr.disassociatePublicIpAddress(anyLong(), anyLong(), any(Account.class))).thenReturn(true); + + when(configurationMgr._vlanDao.releaseFromLockTable(anyLong())).thenReturn(true); + + when(configurationMgr._accountVlanMapDao.remove(anyLong())).thenReturn(true); + try { + Boolean result = configurationMgr.releasePublicIpRange(releasePublicIpRangesCmd); + Assert.assertTrue(result); + } catch (Exception e) { + s_logger.info("exception in testing runReleasePublicIpRangePostiveTest2 message: " + e.toString()); + } finally { + txn.close("runReleasePublicIpRangePostiveTest2"); + } + } + + void runReleasePublicIpRangeInvalidIpRange() throws Exception { + Transaction txn = Transaction.open("runReleasePublicIpRangeInvalidIpRange"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(null); + try { + configurationMgr.releasePublicIpRange(releasePublicIpRangesCmd); + } catch (Exception e) { + Assert.assertTrue(e.getMessage().contains("Please specify a valid IP range id")); + } finally { + txn.close("runReleasePublicIpRangeInvalidIpRange"); + } + } + + void runReleaseNonDedicatedPublicIpRange() throws Exception { + Transaction txn = Transaction.open("runReleaseNonDedicatedPublicIpRange"); + + when(configurationMgr._vlanDao.findById(anyLong())).thenReturn(vlan); + + when(configurationMgr._accountVlanMapDao.listAccountVlanMapsByVlan(anyLong())).thenReturn(null); + try { + configurationMgr.releasePublicIpRange(releasePublicIpRangesCmd); + } catch (Exception e) { + Assert.assertTrue(e.getMessage().contains("as it not dedicated to any account")); + } finally { + txn.close("runReleaseNonDedicatedPublicIpRange"); + } + } + + + public class DedicatePublicIpRangeCmdExtn extends DedicatePublicIpRangeCmd { + public long getEntityOwnerId() { + return 1; + } + } + + public class ReleasePublicIpRangeCmdExtn extends ReleasePublicIpRangeCmd { + public long getEntityOwnerId() { + return 1; + } + } +} diff --git a/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java b/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java old mode 100644 new mode 100755 index b0063fa2e2e..a03e361d8c1 --- a/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java +++ b/server/test/com/cloud/vpc/MockConfigurationManagerImpl.java @@ -40,7 +40,9 @@ import org.apache.cloudstack.api.command.admin.offering.UpdateServiceOfferingCmd import org.apache.cloudstack.api.command.admin.pod.DeletePodCmd; import org.apache.cloudstack.api.command.admin.pod.UpdatePodCmd; import org.apache.cloudstack.api.command.admin.vlan.CreateVlanIpRangeCmd; +import org.apache.cloudstack.api.command.admin.vlan.DedicatePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.vlan.DeleteVlanIpRangeCmd; +import org.apache.cloudstack.api.command.admin.vlan.ReleasePublicIpRangeCmd; import org.apache.cloudstack.api.command.admin.zone.CreateZoneCmd; import org.apache.cloudstack.api.command.admin.zone.DeleteZoneCmd; import org.apache.cloudstack.api.command.admin.zone.UpdateZoneCmd; @@ -544,7 +546,7 @@ public class MockConfigurationManagerImpl extends ManagerBase implements Configu * @see com.cloud.configuration.ConfigurationManager#deleteAccountSpecificVirtualRanges(long) */ @Override - public boolean deleteAccountSpecificVirtualRanges(long accountId) { + public boolean releaseAccountSpecificVirtualRanges(long accountId) { // TODO Auto-generated method stub return false; } @@ -613,5 +615,24 @@ public class MockConfigurationManagerImpl extends ManagerBase implements Configu return null; } + @Override + public Vlan dedicatePublicIpRange(DedicatePublicIpRangeCmd cmd) + throws ResourceAllocationException { + // TODO Auto-generated method stub + return null; + } + + @Override + public boolean releasePublicIpRange(ReleasePublicIpRangeCmd cmd) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean releasePublicIpRange(long userId, long vlanDbId, + Account caller) { + // TODO Auto-generated method stub + return false; + } } diff --git a/test/integration/component/test_public_ip_range.py b/test/integration/component/test_public_ip_range.py new file mode 100755 index 00000000000..f2c967f8d57 --- /dev/null +++ b/test/integration/component/test_public_ip_range.py @@ -0,0 +1,173 @@ +# 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. +""" P1 tests for Dedicating Public IP addresses +""" +#Import Local Modules +import marvin +from nose.plugins.attrib import attr +from marvin.cloudstackTestCase import * +from marvin.cloudstackAPI import * +from marvin.integration.lib.utils import * +from marvin.integration.lib.base import * +from marvin.integration.lib.common import * +import datetime + +class Services: + """Test Dedicating Public IP addresses + """ + + def __init__(self): + self.services = { + "domain": { + "name": "Domain", + }, + "account": { + "email": "test@test.com", + "firstname": "Test", + "lastname": "User", + "username": "test", + "password": "password", + }, + "gateway": "10.102.197.1", + "netmask": "255.255.255.0", + "forvirtualnetwork": "true", + "startip": "10.102.197.70", + "endip": "10.102.197.73", + "zoneid": "1", + "podid": "", + "vlan": "101", + } + +class TesDedicatePublicIPRange(cloudstackTestCase): + + @classmethod + def setUpClass(cls): + cls.api_client = super(TesDedicatePublicIPRange, cls).getClsTestClient().getApiClient() + cls.services = Services().services + # Get Zone, Domain + cls.domain = get_domain(cls.api_client, cls.services) + cls.zone = get_zone(cls.api_client, cls.services) + + # Create Account + cls.account = Account.create( + cls.api_client, + cls.services["account"], + domainid=cls.domain.id + ) + cls._cleanup = [ + cls.account, + ] + return + + @classmethod + def tearDownClass(cls): + try: + # Cleanup resources used + cleanup_resources(cls.api_client, cls._cleanup) + except Exception as e: + raise Exception("Warning: Exception during cleanup : %s" % e) + return + + def setUp(self): + self.apiclient = self.testClient.getApiClient() + self.dbclient = self.testClient.getDbConnection() + self.cleanup = [] + return + + def tearDown(self): + try: + # Clean up + cleanup_resources(self.apiclient, self.cleanup) + except Exception as e: + raise Exception("Warning: Exception during cleanup : %s" % e) + return + + @attr(tags = ["publiciprange", "dedicate", "release"]) + def test_dedicatePublicIpRange(self): + """Test public IP range dedication + """ + + # Validate the following: + # 1. Create a Public IP range + # 2. Created IP range should be present, verify with listVlanIpRanges + # 3. Dedicate the created IP range to user account + # 4. Verify IP range is dedicated, verify with listVlanIpRanges + # 5. Release the dedicated Public IP range back to the system + # 6. Verify IP range has been released, verify with listVlanIpRanges + # 7. Delete the Public IP range + + self.debug("Creating Public IP range") + self.public_ip_range = PublicIpRange.create( + self.api_client, + self.services + ) + list_public_ip_range_response = PublicIpRange.list( + self.apiclient, + id=self.public_ip_range.vlan.id + ) + self.debug( + "Verify listPublicIpRanges response for public ip ranges: %s" \ + % self.public_ip_range.vlan.id + ) + self.assertEqual( + isinstance(list_public_ip_range_response, list), + True, + "Check for list Public IP range response" + ) + public_ip_response = list_public_ip_range_response[0] + self.assertEqual( + public_ip_response.id, + self.public_ip_range.vlan.id, + "Check public ip range response id is in listVlanIpRanges" + ) + + self.debug("Dedicating Public IP range"); + dedicate_public_ip_range_response = PublicIpRange.dedicate( + self.apiclient, + self.public_ip_range.vlan.id, + account=self.account.account.name, + domainid=self.account.account.domainid + ) + list_public_ip_range_response = PublicIpRange.list( + self.apiclient, + id=self.public_ip_range.vlan.id + ) + public_ip_response = list_public_ip_range_response[0] + self.assertEqual( + public_ip_response.account, + self.account.account.name, + "Check account name is in listVlanIpRanges as the account public ip range is dedicated to" + ) + + self.debug("Releasing Public IP range"); + self.public_ip_range.release(self.apiclient) + list_public_ip_range_response = PublicIpRange.list( + self.apiclient, + id=self.public_ip_range.vlan.id + ) + public_ip_response = list_public_ip_range_response[0] + self.assertEqual( + public_ip_response.account, + "system", + "Check account name is system account in listVlanIpRanges" + ) + + self.debug("Deleting Public IP range"); + self.public_ip_range.delete(self.apiclient) + + return + diff --git a/tools/marvin/marvin/integration/lib/base.py b/tools/marvin/marvin/integration/lib/base.py old mode 100644 new mode 100755 index d27ab3b2903..3df68ab7853 --- a/tools/marvin/marvin/integration/lib/base.py +++ b/tools/marvin/marvin/integration/lib/base.py @@ -1873,7 +1873,7 @@ class PublicIpRange: """Delete VlanIpRange""" cmd = deleteVlanIpRange.deleteVlanIpRangeCmd() - cmd.id = self.id + cmd.id = self.vlan.id apiclient.deleteVlanIpRange(cmd) @classmethod @@ -1884,6 +1884,23 @@ class PublicIpRange: [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listVlanIpRanges(cmd)) + @classmethod + def dedicate(cls, apiclient, id, account=None, domainid=None, projectid=None): + """Dedicate VLAN IP range""" + + cmd = dedicatePublicIpRange.dedicatePublicIpRangeCmd() + cmd.id = id + cmd.account = account + cmd.domainid = domainid + cmd.projectid = projectid + return PublicIpRange(apiclient.dedicatePublicIpRange(cmd).__dict__) + + def release(self, apiclient): + """Release VLAN IP range""" + + cmd = releasePublicIpRange.releasePublicIpRangeCmd() + cmd.id = self.vlan.id + return apiclient.releasePublicIpRange(cmd) class SecondaryStorage: """Manage Secondary storage""" From fd84c56bf96aba134fa2656cf2de525ad4fc2f25 Mon Sep 17 00:00:00 2001 From: Prasanna Santhanam Date: Wed, 10 Apr 2013 16:22:29 +0530 Subject: [PATCH 168/607] moving the integration test to the smoke folder The smoke folder is for the bvts and that's where maven+marvin will pick up the tests tagged for the simulator run. Signed-off-by: Prasanna Santhanam --- test/integration/{component => smoke}/test_public_ip_range.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename test/integration/{component => smoke}/test_public_ip_range.py (98%) diff --git a/test/integration/component/test_public_ip_range.py b/test/integration/smoke/test_public_ip_range.py similarity index 98% rename from test/integration/component/test_public_ip_range.py rename to test/integration/smoke/test_public_ip_range.py index f2c967f8d57..a7aad6b795c 100755 --- a/test/integration/component/test_public_ip_range.py +++ b/test/integration/smoke/test_public_ip_range.py @@ -96,7 +96,7 @@ class TesDedicatePublicIPRange(cloudstackTestCase): raise Exception("Warning: Exception during cleanup : %s" % e) return - @attr(tags = ["publiciprange", "dedicate", "release"]) + @attr(tags = ["simulator", "publiciprange", "dedicate", "release"]) def test_dedicatePublicIpRange(self): """Test public IP range dedication """ From 0b17b624dbfa517e48cbcb09fb695370d4a8ac03 Mon Sep 17 00:00:00 2001 From: Prasanna Santhanam Date: Wed, 10 Apr 2013 16:32:19 +0530 Subject: [PATCH 169/607] Fixing the apidoc for the new api dedicatePublicIpRange Signed-off-by: Prasanna Santhanam --- tools/apidoc/gen_toc.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/apidoc/gen_toc.py b/tools/apidoc/gen_toc.py index 2d5292b8426..5403adb99df 100644 --- a/tools/apidoc/gen_toc.py +++ b/tools/apidoc/gen_toc.py @@ -83,6 +83,7 @@ known_categories = { 'Configuration': 'Configuration', 'Capabilities': 'Configuration', 'Pod': 'Pod', + 'PublicIpRange': 'Network', 'Zone': 'Zone', 'NetworkOffering': 'Network Offering', 'NetworkACL': 'Network ACL', From 45f852bec261c9a05e04c3424bf408859268fef3 Mon Sep 17 00:00:00 2001 From: Prasanna Santhanam Date: Wed, 10 Apr 2013 17:15:47 +0530 Subject: [PATCH 170/607] nose won't discover the test if it is executable. Changing test_public_ip_range.py to 644 Signed-off-by: Prasanna Santhanam --- test/integration/smoke/test_public_ip_range.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 test/integration/smoke/test_public_ip_range.py diff --git a/test/integration/smoke/test_public_ip_range.py b/test/integration/smoke/test_public_ip_range.py old mode 100755 new mode 100644 From 7b4e1953d87555d432386ea34aebd15bce257f16 Mon Sep 17 00:00:00 2001 From: Chiradeep Vittal Date: Fri, 12 Apr 2013 12:08:01 -0700 Subject: [PATCH 171/607] QuickCloud: accidental commit, removing --- .../AgentBasedConsoleProxyManager.java.orig | 298 ------------------ 1 file changed, 298 deletions(-) delete mode 100755 server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java.orig diff --git a/server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java.orig b/server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java.orig deleted file mode 100755 index 134d59d0065..00000000000 --- a/server/src/com/cloud/consoleproxy/AgentBasedConsoleProxyManager.java.orig +++ /dev/null @@ -1,298 +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 com.cloud.consoleproxy; - -import java.util.Map; - -import javax.ejb.Local; -import javax.inject.Inject; -import javax.naming.ConfigurationException; - -import org.apache.log4j.Logger; - -import com.cloud.agent.AgentManager; -import com.cloud.agent.api.GetVncPortAnswer; -import com.cloud.agent.api.GetVncPortCommand; -import com.cloud.agent.api.StartupProxyCommand; -import com.cloud.configuration.dao.ConfigurationDao; -import com.cloud.host.HostVO; -import com.cloud.host.dao.HostDao; -import com.cloud.info.ConsoleProxyInfo; -import com.cloud.keystore.KeystoreManager; -import com.cloud.utils.NumbersUtil; -import com.cloud.utils.component.ManagerBase; -import com.cloud.vm.ConsoleProxyVO; -import com.cloud.vm.UserVmVO; -import com.cloud.vm.VMInstanceVO; -import com.cloud.vm.VirtualMachineManager; -import com.cloud.vm.dao.ConsoleProxyDao; -import com.cloud.vm.dao.UserVmDao; -import com.cloud.vm.dao.VMInstanceDao; - -@Local(value = { ConsoleProxyManager.class }) -public class AgentBasedConsoleProxyManager extends ManagerBase implements ConsoleProxyManager { - private static final Logger s_logger = Logger.getLogger(AgentBasedConsoleProxyManager.class); - - @Inject - protected HostDao _hostDao; - @Inject - protected UserVmDao _userVmDao; - private String _instance; - protected String _consoleProxyUrlDomain; - @Inject - private VMInstanceDao _instanceDao; - private ConsoleProxyListener _listener; - protected int _consoleProxyUrlPort = ConsoleProxyManager.DEFAULT_PROXY_URL_PORT; - protected int _consoleProxyPort = ConsoleProxyManager.DEFAULT_PROXY_VNC_PORT; - protected boolean _sslEnabled = false; - @Inject - AgentManager _agentMgr; - @Inject - VirtualMachineManager _itMgr; - @Inject - protected ConsoleProxyDao _cpDao; - @Inject - protected KeystoreManager _ksMgr; - - @Inject ConfigurationDao _configDao; - - public class AgentBasedAgentHook extends AgentHookBase { - - public AgentBasedAgentHook(VMInstanceDao instanceDao, HostDao hostDao, ConfigurationDao cfgDao, - KeystoreManager ksMgr, AgentManager agentMgr) { - super(instanceDao, hostDao, cfgDao, ksMgr, agentMgr); - } - - @Override - protected HostVO findConsoleProxyHost(StartupProxyCommand cmd) { - return _hostDao.findByGuid(cmd.getGuid()); - } - - } - - public int getVncPort(VMInstanceVO vm) { - if (vm.getHostId() == null) { - return -1; - } - GetVncPortAnswer answer = (GetVncPortAnswer) _agentMgr.easySend(vm.getHostId(), new GetVncPortCommand(vm.getId(), vm.getHostName())); - return (answer == null || !answer.getResult()) ? -1 : answer.getPort(); - } - - @Override - public boolean configure(String name, Map params) throws ConfigurationException { - - if (s_logger.isInfoEnabled()) { - s_logger.info("Start configuring AgentBasedConsoleProxyManager"); - } - - Map configs = _configDao.getConfiguration("management-server", params); - String value = configs.get("consoleproxy.url.port"); - if (value != null) { - _consoleProxyUrlPort = NumbersUtil.parseInt(value, ConsoleProxyManager.DEFAULT_PROXY_URL_PORT); - } - - value = configs.get("consoleproxy.port"); - if (value != null) { - _consoleProxyPort = NumbersUtil.parseInt(value, ConsoleProxyManager.DEFAULT_PROXY_VNC_PORT); - } - - value = configs.get("consoleproxy.sslEnabled"); - if (value != null && value.equalsIgnoreCase("true")) { - _sslEnabled = true; - } - - _instance = configs.get("instance.name"); - - _consoleProxyUrlDomain = configs.get("consoleproxy.url.domain"); - - _listener = - new ConsoleProxyListener(new AgentBasedAgentHook(_instanceDao, _hostDao, _configDao, _ksMgr, _agentMgr)); - _agentMgr.registerForHostEvents(_listener, true, true, false); - - if (s_logger.isInfoEnabled()) { - s_logger.info("AgentBasedConsoleProxyManager has been configured. SSL enabled: " + _sslEnabled); - } - return true; - } - - HostVO findHost(VMInstanceVO vm) { - return _hostDao.findById(vm.getHostId()); - } - - @Override - public ConsoleProxyInfo assignProxy(long dataCenterId, long userVmId) { - UserVmVO userVm = _userVmDao.findById(userVmId); - if (userVm == null) { - s_logger.warn("User VM " + userVmId + " no longer exists, return a null proxy for user vm:" + userVmId); - return null; - } - - HostVO host = findHost(userVm); - if (host != null) { - if (s_logger.isDebugEnabled()) { - s_logger.debug("Assign embedded console proxy running at " + host.getName() + " to user vm " + userVmId + " with public IP " - + host.getPublicIpAddress()); - } - - // only private IP, public IP, host id have meaningful values, rest - // of all are place-holder values - String publicIp = host.getPublicIpAddress(); - if (publicIp == null) { - if (s_logger.isDebugEnabled()) { - s_logger.debug("Host " + host.getName() + "/" + host.getPrivateIpAddress() - + " does not have public interface, we will return its private IP for cosole proxy."); - } - publicIp = host.getPrivateIpAddress(); - } - - int urlPort = _consoleProxyUrlPort; - - if (host.getProxyPort() != null && host.getProxyPort().intValue() > 0) { - urlPort = host.getProxyPort().intValue(); - } - - return new ConsoleProxyInfo(_sslEnabled, publicIp, _consoleProxyPort, urlPort, _consoleProxyUrlDomain); - } else { - s_logger.warn("Host that VM is running is no longer available, console access to VM " + userVmId + " will be temporarily unavailable."); - } - return null; - } - - - - - @Override - public ConsoleProxyVO startProxy(long proxyVmId) { - return null; - } - - @Override - public boolean destroyProxy(long proxyVmId) { - return false; - } - - @Override - public boolean rebootProxy(long proxyVmId) { - return false; - } - - @Override - public boolean stopProxy(long proxyVmId) { - return false; - } - - @Override - public void setManagementState(ConsoleProxyManagementState state) { - } - - @Override - public ConsoleProxyManagementState getManagementState() { - return null; - } - - @Override - public void resumeLastManagementState() { - } - - @Override - public String getName() { - return _name; - } -<<<<<<< HEAD - - @Override - public Long convertToId(String vmName) { - if (!VirtualMachineName.isValidConsoleProxyName(vmName, _instance)) { - return null; - } - return VirtualMachineName.getConsoleProxyId(vmName); - } - - @Override - public ConsoleProxyVO findByName(String name) { - // TODO Auto-generated method stub - return null; - } - - @Override - public ConsoleProxyVO findById(long id) { - // TODO Auto-generated method stub - return null; - } - - @Override - public ConsoleProxyVO persist(ConsoleProxyVO vm) { - // TODO Auto-generated method stub - return null; - } - - @Override - public boolean finalizeVirtualMachineProfile(VirtualMachineProfile profile, DeployDestination dest, ReservationContext context) { - // TODO Auto-generated method stub - return false; - } - - @Override - public boolean finalizeDeployment(Commands cmds, VirtualMachineProfile profile, DeployDestination dest, ReservationContext context) { - // TODO Auto-generated method stub - return false; - } - - @Override - public boolean finalizeCommandsOnStart(Commands cmds, VirtualMachineProfile profile) { - // TODO Auto-generated method stub - return false; - } - - @Override - public boolean finalizeStart(VirtualMachineProfile profile, long hostId, Commands cmds, ReservationContext context) { - // TODO Auto-generated method stub - return false; - } - - @Override - public void finalizeStop(VirtualMachineProfile profile, StopAnswer answer) { - // TODO Auto-generated method stub - } - - @Override - public void finalizeExpunge(ConsoleProxyVO proxy) { - } - - @Override - public boolean plugNic(Network network, NicTO nic, VirtualMachineTO vm, - ReservationContext context, DeployDestination dest) throws ConcurrentOperationException, ResourceUnavailableException, - InsufficientCapacityException { - //not supported - throw new UnsupportedOperationException("Plug nic is not supported for vm of type " + vm.getType()); - } - - - @Override - public boolean unplugNic(Network network, NicTO nic, VirtualMachineTO vm, - ReservationContext context, DeployDestination dest) throws ConcurrentOperationException, ResourceUnavailableException { - //not supported - throw new UnsupportedOperationException("Unplug nic is not supported for vm of type " + vm.getType()); - } - - @Override - public void prepareStop(VirtualMachineProfile profile) { - } -} -======= -} ->>>>>>> QuickCloud: refactor to avoid copy paste of authentication and startup code From 4b1a9f146c7316ba885d0889bd10ae09074e1169 Mon Sep 17 00:00:00 2001 From: Min Chen Date: Fri, 12 Apr 2013 11:29:16 -0700 Subject: [PATCH 172/607] Fix CLOUDSTACK-1987: Deleted service offering still shows for domain users. Also extend this fix for Disk offering as well. --- .../com/cloud/api/query/QueryManagerImpl.java | 65 ++++++------------- 1 file changed, 19 insertions(+), 46 deletions(-) diff --git a/server/src/com/cloud/api/query/QueryManagerImpl.java b/server/src/com/cloud/api/query/QueryManagerImpl.java index ea58427b3c8..5ffc2db995c 100644 --- a/server/src/com/cloud/api/query/QueryManagerImpl.java +++ b/server/src/com/cloud/api/query/QueryManagerImpl.java @@ -1941,7 +1941,7 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { Boolean isAscending = Boolean.parseBoolean(_configDao.getValue("sortkey.algorithm")); isAscending = (isAscending == null ? true : isAscending); Filter searchFilter = new Filter(DiskOfferingJoinVO.class, "sortKey", isAscending, cmd.getStartIndex(), cmd.getPageSizeVal()); - SearchBuilder sb = _diskOfferingJoinDao.createSearchBuilder(); + SearchCriteria sc = _diskOfferingJoinDao.createSearchCriteria(); Account account = UserContext.current().getCaller(); @@ -1956,9 +1956,7 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { if (account.getType() == Account.ACCOUNT_TYPE_ADMIN || isPermissible(account.getDomainId(), domainId) ) { // check if the user's domain == do's domain || user's domain is // a child of so's domain for non-root users - sb.and("domainId", sb.entity().getDomainId(), SearchCriteria.Op.EQ); - SearchCriteria sc = sb.create(); - sc.setParameters("domainId", domainId); + sc.addAnd("domainId", SearchCriteria.Op.EQ, domainId); return _diskOfferingJoinDao.searchAndCount(sc, searchFilter); } else { throw new PermissionDeniedException("The account:" + account.getAccountName() @@ -1966,11 +1964,7 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { } } - sb.and("name", sb.entity().getName(), SearchCriteria.Op.LIKE); - sb.and("id", sb.entity().getId(), SearchCriteria.Op.EQ); - - boolean includePublicOfferings = false; List domainIds = null; // For non-root users, only return all offerings for the user's domain, and everything above till root if ((account.getType() == Account.ACCOUNT_TYPE_NORMAL || account.getType() == Account.ACCOUNT_TYPE_DOMAIN_ADMIN) @@ -1987,16 +1981,17 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { domainRecord = _domainDao.findById(domainRecord.getParent()); domainIds.add(domainRecord.getId()); } - sb.and("domainIdIn", sb.entity().getDomainId(), SearchCriteria.Op.IN); + + SearchCriteria spc = _diskOfferingJoinDao.createSearchCriteria(); - // include also public offering if no keyword, name and id specified - if ( keyword == null && name == null && id == null ){ - includePublicOfferings = true; - } + spc.addOr("domainId", SearchCriteria.Op.IN, domainIds.toArray()); + spc.addOr("domainId", SearchCriteria.Op.NULL); // include public offering as where + sc.addAnd("domainId", SearchCriteria.Op.SC, spc); + sc.addAnd("systemUse", SearchCriteria.Op.EQ, false); // non-root users should not see system offering at all + } - SearchCriteria sc = sb.create(); - if (keyword != null) { + if (keyword != null) { SearchCriteria ssc = _diskOfferingJoinDao.createSearchCriteria(); ssc.addOr("displayText", SearchCriteria.Op.LIKE, "%" + keyword + "%"); ssc.addOr("name", SearchCriteria.Op.LIKE, "%" + keyword + "%"); @@ -2004,26 +1999,14 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { sc.addAnd("name", SearchCriteria.Op.SC, ssc); } - if (name != null) { - sc.setParameters("name", "%" + name + "%"); - } - if (id != null) { - sc.setParameters("id", id); + sc.addAnd("id", SearchCriteria.Op.EQ, id); } - if (domainIds != null ){ - sc.setParameters("domainIdIn", domainIds.toArray()); + if (name != null) { + sc.addAnd("name", SearchCriteria.Op.EQ, name); } - - if (includePublicOfferings){ - SearchCriteria spc = _diskOfferingJoinDao.createSearchCriteria(); - spc.addAnd("domainId", SearchCriteria.Op.NULL); - spc.addAnd("systemUse", SearchCriteria.Op.EQ, false); - - sc.addOr("systemUse", SearchCriteria.Op.SC, spc); - } - + // FIXME: disk offerings should search back up the hierarchy for // available disk offerings... /* @@ -2100,10 +2083,10 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { } } - boolean includePublicOfferings = false; + // boolean includePublicOfferings = false; if ((caller.getType() == Account.ACCOUNT_TYPE_NORMAL || caller.getType() == Account.ACCOUNT_TYPE_DOMAIN_ADMIN) || caller.getType() == Account.ACCOUNT_TYPE_RESOURCE_DOMAIN_ADMIN) { - // For non-root users + // For non-root users. if (isSystem) { throw new InvalidParameterValueException("Only root admins can access system's offering"); } @@ -2122,13 +2105,9 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { SearchCriteria spc = _srvOfferingJoinDao.createSearchCriteria(); spc.addOr("domainId", SearchCriteria.Op.IN, domainIds.toArray()); - spc.addOr("domainId", SearchCriteria.Op.NULL); + spc.addOr("domainId", SearchCriteria.Op.NULL); // include public offering as where sc.addAnd("domainId", SearchCriteria.Op.SC, spc); - // include also public offering if no keyword, name and id specified - if ( keyword == null && name == null && id == null ){ - includePublicOfferings = true; - } } else { // for root users @@ -2171,24 +2150,18 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { } if (isSystem != null) { + // note that for non-root users, isSystem is always false when control comes to here sc.addAnd("systemUse", SearchCriteria.Op.EQ, isSystem); } if (name != null) { - sc.addAnd("name", SearchCriteria.Op.LIKE, "%" + name + "%"); + sc.addAnd("name", SearchCriteria.Op.EQ, name); } if (vmTypeStr != null) { sc.addAnd("vm_type", SearchCriteria.Op.EQ, vmTypeStr); } - if (includePublicOfferings){ - SearchCriteria spc = _srvOfferingJoinDao.createSearchCriteria(); - spc.addAnd("domainId", SearchCriteria.Op.NULL); - spc.addAnd("systemUse", SearchCriteria.Op.EQ, false); - sc.addOr("systemUse", SearchCriteria.Op.SC, spc); - } - return _srvOfferingJoinDao.searchAndCount(sc, searchFilter); } From e354807e05312ba9d586544964ae99371803d145 Mon Sep 17 00:00:00 2001 From: Prachi Damle Date: Fri, 12 Apr 2013 15:31:16 -0700 Subject: [PATCH 173/607] Added the AffinityGroupProcessor definition to nonossComponentContext.xml.in to avoid auto-wiring failure for non-oss build --- client/tomcatconf/nonossComponentContext.xml.in | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/client/tomcatconf/nonossComponentContext.xml.in b/client/tomcatconf/nonossComponentContext.xml.in index fc8a9cd5409..3ede2634285 100644 --- a/client/tomcatconf/nonossComponentContext.xml.in +++ b/client/tomcatconf/nonossComponentContext.xml.in @@ -339,5 +339,13 @@ + + + + + + From 51cfc0709fdd956fedd0f774974eaaabf2d48cd5 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Fri, 12 Apr 2013 16:55:01 -0700 Subject: [PATCH 174/607] Affinity rules UI: Add 'changeAffinity' action for VM -Adds action to VM on stopped state -Add dialog with list view showing affinity groups and checkboxes --- ui/index.jsp | 2 + ui/scripts/instances.js | 81 ++++++++++++++- ui/scripts/ui-custom/affinity.js | 171 +++++++++++++++++++++++++++++++ 3 files changed, 249 insertions(+), 5 deletions(-) create mode 100644 ui/scripts/ui-custom/affinity.js diff --git a/ui/index.jsp b/ui/index.jsp index e82ff104563..ed18645ab72 100644 --- a/ui/index.jsp +++ b/ui/index.jsp @@ -1664,6 +1664,8 @@ under the License. + + diff --git a/ui/scripts/instances.js b/ui/scripts/instances.js index 1c4c38c75fd..b230cf72583 100644 --- a/ui/scripts/instances.js +++ b/ui/scripts/instances.js @@ -437,7 +437,6 @@ poll: pollAsyncJobResult } }, - snapshot: { messages: { notification: function(args) { @@ -500,7 +499,6 @@ pool: pollAsyncJobResult } }, - destroy: { label: 'label.action.destroy.instance', compactLabel: 'label.destroy', @@ -566,7 +564,6 @@ } } }, - reset: { label: 'Reset VM', messages:{ @@ -597,8 +594,81 @@ } } - }, + }, + changeAffinity: { + label: 'Change affinity', + + action: { + custom: cloudStack.uiCustom.affinity({ + tierSelect: function(args) { + if ('vpc' in args.context) { //from VPC section + args.$tierSelect.show(); //show tier dropdown + + $.ajax({ //populate tier dropdown + url: createURL("listNetworks"), + async: false, + data: { + vpcid: args.context.vpc[0].id, + //listAll: true, //do not pass listAll to listNetworks under VPC + domainid: args.context.vpc[0].domainid, + account: args.context.vpc[0].account, + supportedservices: 'StaticNat' + }, + success: function(json) { + var networks = json.listnetworksresponse.network; + var items = [{ id: -1, description: 'Please select a tier' }]; + $(networks).each(function(){ + items.push({id: this.id, description: this.displaytext}); + }); + args.response.success({ data: items }); + } + }); + } + else { //from Guest Network section + args.$tierSelect.hide(); + } + + args.$tierSelect.change(function() { + args.$tierSelect.closest('.list-view').listView('refresh'); + }); + args.$tierSelect.closest('.list-view').listView('refresh'); + }, + + listView: { + listView: { + id: 'affinityGroups', + fields: { + name: { label: 'label.name' }, + type: { label: 'label.type' } + }, + dataProvider: function(args) { + args.response.success({ + data: [ + { name: 'Affinity Group 1', type: 'Affinity' }, + { name: 'Affinity Group 2', type: 'Anti-affinity' }, + { name: 'Anti-affinity Group', type: 'Anti-affinity' } + ] + }); + } + } + }, + action: function(args) { + args.response.success(); + } + }) + }, + messages: { + notification: function(args) { + return 'label.action.enable.static.NAT'; + } + }, + notification: { + poll: function(args) { + args.complete(); + } + } + }, edit: { label: 'label.edit', @@ -608,7 +678,7 @@ group: args.data.group, ostypeid: args.data.guestosid }; - + if(args.data.displayname != args.context.instances[0].displayname) { $.extend(data, { displayName: args.data.displayname @@ -1404,6 +1474,7 @@ allowedActions.push("reset"); allowedActions.push("snapshot"); allowedActions.push("scaleUp"); + allowedActions.push("changeAffinity"); if(isAdmin()) allowedActions.push("migrateToAnotherStorage"); diff --git a/ui/scripts/ui-custom/affinity.js b/ui/scripts/ui-custom/affinity.js new file mode 100644 index 00000000000..1a1eb552cba --- /dev/null +++ b/ui/scripts/ui-custom/affinity.js @@ -0,0 +1,171 @@ +// 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. +(function(cloudStack, $) { + cloudStack.uiCustom.affinity = function(args) { + var listView = args.listView; + var action = args.action; + var tierSelect = args.tierSelect; + + return function(args) { + var context = args.context; + var $instanceRow = args.$instanceRow; + + var vmList = function(args) { + // Create a listing of instances, based on limited information + // from main instances list view + var $listView; + var instances = $.extend(true, {}, args.listView, { + context: context, + uiCustom: true + }); + + instances.listView.actions = { + select: { + label: _l('label.select.instance'), + type: 'checkbox', + action: { + uiCustom: function(args) { + var $item = args.$item; + var $input = $item.find('td.actions input:visible'); + + if ($input.attr('type') == 'checkbox') { + if ($input.is(':checked')) + $item.addClass('multi-edit-selected'); + else + $item.removeClass('multi-edit-selected'); + } else { + $item.siblings().removeClass('multi-edit-selected'); + $item.addClass('multi-edit-selected'); + } + } + } + } + }; + + $listView = $('
').listView(instances); + + // Change action label + $listView.find('th.actions').html(_l('label.select')); + + return $listView; + }; + + var $dataList = vmList({ + listView: listView + }).dialog({ + dialogClass: 'multi-edit-add-list panel', + width: 825, + title: _l('label.select.vm.for.static.nat'), + buttons: [ + { + text: _l('label.apply'), + 'class': 'ok', + click: function() { + if ($dataList.find('.tier-select select').val() == -1) { + cloudStack.dialog.notice({ message: ('Please select a tier')}); + return false; + } + + if (!$dataList.find( + 'input[type=radio]:checked, input[type=checkbox]:checked' + ).size()) { + cloudStack.dialog.notice({ message: _l('message.select.instance')}); + + return false; + } + + var complete = args.complete; + var start = args.start; + + start(); + $dataList.fadeOut(function() { + action({ + tierID: $dataList.find('.tier-select select').val(), + _subselect: $dataList.find('tr.multi-edit-selected .subselect select').val(), + context: $.extend(true, {}, context, { + instances: [ + $dataList.find('tr.multi-edit-selected').data('json-obj') + ] + }), + response: { + success: function(args) { + complete({ + $item: $instanceRow + }); + }, + error: function(args) { + cloudStack.dialog.notice({ message: args }); + } + } + }); + $dataList.remove(); + }); + + $('div.overlay').fadeOut(function() { + $('div.overlay').remove(); + }); + } + }, + { + text: _l('label.cancel'), + 'class': 'cancel', + click: function() { + $dataList.fadeOut(function() { + $dataList.remove(); + }); + $('div.overlay').fadeOut(function() { + $('div.overlay').remove(); + }); + } + } + ] + }).parent('.ui-dialog').overlay(); + + // Add tier select dialog + if (tierSelect) { + var $toolbar = $dataList.find('.toolbar'); + var $tierSelect = $('
').addClass('filters tier-select').prependTo($toolbar); + var $tierSelectLabel = $('
diff --git a/docs/en-US/hypervisor-support-for-primarystorage.xml b/docs/en-US/hypervisor-support-for-primarystorage.xml index 7c2596eac29..fdef1f2b6e0 100644 --- a/docs/en-US/hypervisor-support-for-primarystorage.xml +++ b/docs/en-US/hypervisor-support-for-primarystorage.xml @@ -22,71 +22,83 @@ under the License. -->
- Hypervisor Support for Primary Storage - The following table shows storage options and parameters for different hypervisors. - - - - - - - - - - - VMware vSphere - Citrix XenServer - KVM - - - - - Format for Disks, Templates, and - Snapshots - VMDK - VHD - QCOW2 - - - iSCSI support - VMFS - Clustered LVM - Yes, via Shared Mountpoint - - - Fiber Channel support - VMFS - Yes, via Existing SR - Yes, via Shared Mountpoint - - - NFS support - Y - Y - Y - - - - Local storage support - Y - Y - Y - - - - Storage over-provisioning - NFS and iSCSI - NFS - NFS - - - - - - XenServer uses a clustered LVM system to store VM images on iSCSI and Fiber Channel volumes and does not support over-provisioning in the hypervisor. The storage server itself, however, can support thin-provisioning. As a result the &PRODUCT; can still support storage over-provisioning by running on thin-provisioned storage volumes. - KVM supports "Shared Mountpoint" storage. A shared mountpoint is a file system path local to each server in a given cluster. The path must be the same across all Hosts in the cluster, for example /mnt/primary1. This shared mountpoint is assumed to be a clustered filesystem such as OCFS2. In this case the &PRODUCT; does not attempt to mount or unmount the storage as is done with NFS. The &PRODUCT; requires that the administrator insure that the storage is available - - With NFS storage, &PRODUCT; manages the overprovisioning. In this case the global configuration parameter storage.overprovisioning.factor controls the degree of overprovisioning. This is independent of hypervisor type. - Local storage is an option for primary storage for vSphere, XenServer, and KVM. When the local disk option is enabled, a local disk storage pool is automatically created on each host. To use local storage for the System Virtual Machines (such as the Virtual Router), set system.vm.use.local.storage to true in global configuration. - &PRODUCT; supports multiple primary storage pools in a Cluster. For example, you could provision 2 NFS servers in primary storage. Or you could provision 1 iSCSI LUN initially and then add a second iSCSI LUN when the first approaches capacity. -
+ Hypervisor Support for Primary Storage + The following table shows storage options and parameters for different hypervisors. + + + + + + + + + + + VMware vSphere + Citrix XenServer + KVM + + + + + Format for Disks, Templates, and + Snapshots + VMDK + VHD + QCOW2 + + + iSCSI support + VMFS + Clustered LVM + Yes, via Shared Mountpoint + + + Fiber Channel support + VMFS + Yes, via Existing SR + Yes, via Shared Mountpoint + + + NFS support + Y + Y + Y + + + Local storage support + Y + Y + Y + + + Storage over-provisioning + NFS and iSCSI + NFS + NFS + + + + + XenServer uses a clustered LVM system to store VM images on iSCSI and Fiber Channel volumes + and does not support over-provisioning in the hypervisor. The storage server itself, however, + can support thin-provisioning. As a result the &PRODUCT; can still support storage + over-provisioning by running on thin-provisioned storage volumes. + KVM supports "Shared Mountpoint" storage. A shared mountpoint is a file system path local to + each server in a given cluster. The path must be the same across all Hosts in the cluster, for + example /mnt/primary1. This shared mountpoint is assumed to be a clustered filesystem such as + OCFS2. In this case the &PRODUCT; does not attempt to mount or unmount the storage as is done + with NFS. The &PRODUCT; requires that the administrator insure that the storage is + available + + With NFS storage, &PRODUCT; manages the overprovisioning. In this case the global + configuration parameter storage.overprovisioning.factor controls the degree of overprovisioning. + This is independent of hypervisor type. + Local storage is an option for primary storage for vSphere, XenServer, and KVM. When the + local disk option is enabled, a local disk storage pool is automatically created on each host. + To use local storage for the System Virtual Machines (such as the Virtual Router), set + system.vm.use.local.storage to true in global configuration. + &PRODUCT; supports multiple primary storage pools in a Cluster. For example, you could + provision 2 NFS servers in primary storage. Or you could provision 1 iSCSI LUN initially and + then add a second iSCSI LUN when the first approaches capacity. +
diff --git a/docs/en-US/limit-accounts-domains.xml b/docs/en-US/limit-accounts-domains.xml index 64a886ef796..da45dabc982 100644 --- a/docs/en-US/limit-accounts-domains.xml +++ b/docs/en-US/limit-accounts-domains.xml @@ -176,7 +176,7 @@ If any operation needs to pass through two of more resource limit check, then the lower of 2 limits will be enforced, For e.g. if an account has VM limit of 10 and CPU limit of 20 and user under that account requests 5 VMs of 4 CPUs each, after this user can - deploy 5 more VMs(because VM limit is 10) but user has exausted his CPU limit and cannot + deploy 5 more VMs(because VM limit is 10) but user has exhausted his CPU limit and cannot deploy any more instance. From 6296093020ff73490cdef628346d5056eaf4bf80 Mon Sep 17 00:00:00 2001 From: Radhika PC Date: Mon, 22 Apr 2013 14:08:01 +0530 Subject: [PATCH 334/607] dummy feedback file --- docs/en-US/changed-API-commands-4.2 | 107 ---------------------------- docs/en-US/feedback.xml | 24 +++++++ docs/en-US/work-with-usage.xml | 2 +- 3 files changed, 25 insertions(+), 108 deletions(-) delete mode 100644 docs/en-US/changed-API-commands-4.2 create mode 100644 docs/en-US/feedback.xml diff --git a/docs/en-US/changed-API-commands-4.2 b/docs/en-US/changed-API-commands-4.2 deleted file mode 100644 index cbaa2e3fa92..00000000000 --- a/docs/en-US/changed-API-commands-4.2 +++ /dev/null @@ -1,107 +0,0 @@ - - -%BOOK_ENTITIES; -]> - -
- Changed API Commands in 4.2 - - - - - Parameter Name - Description - - - - - updateResourceLimit - - Added the following resource types to the resourcetype - request parameter to set the limits: - - - CPU - - - RAM - - - primary storage - - - secondary storage - - - network rate - - - - - - updateResourceCount - - Added the following resource types to the resourcetype - request parameter to set the limits: - - - CPU - - - RAM - - - primary storage - - - secondary storage - - - network rate - - - - - - listResourceLimits - - Added the following resource types to the resourcetype - request parameter: - - - CPU - - - RAM - - - primary storage - - - secondary storage - - - network rate - - - - - - - -
diff --git a/docs/en-US/feedback.xml b/docs/en-US/feedback.xml new file mode 100644 index 00000000000..4b06c9f3898 --- /dev/null +++ b/docs/en-US/feedback.xml @@ -0,0 +1,24 @@ + + +%BOOK_ENTITIES; +]> + +
+ Feedback + to-do +
diff --git a/docs/en-US/work-with-usage.xml b/docs/en-US/work-with-usage.xml index c40b1e25b49..00172934644 100644 --- a/docs/en-US/work-with-usage.xml +++ b/docs/en-US/work-with-usage.xml @@ -1,5 +1,5 @@ - %BOOK_ENTITIES; ]> From 987941a5b06b03bc312f4e01f5ea1285b2af29c3 Mon Sep 17 00:00:00 2001 From: Radhika PC Date: Mon, 22 Apr 2013 14:24:50 +0530 Subject: [PATCH 335/607] publican errors in the release notes fixed --- docs/en-US/Release_Notes.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en-US/Release_Notes.xml b/docs/en-US/Release_Notes.xml index 60209f660d5..354c25da843 100644 --- a/docs/en-US/Release_Notes.xml +++ b/docs/en-US/Release_Notes.xml @@ -25,7 +25,7 @@ under the License. Welcome to &PRODUCT; 4.1 Welcome to the 4.1.0 release of &PRODUCT;, the first major release from the Apache CloudStack project since its graduation from the Apache Incubator. This document contains information specific to this release of &PRODUCT;, including upgrade instructions from prior releases, new features added to &PRODUCT;, API changes, and issues fixed in the release. For installation instructions, please see the Installation Guide. For usage and administration instructions, please see the &PRODUCT; Administrator's Guide. Developers and users who wish to work with the API will find instruction in the &PRODUCT; API Developer's Guide - If you find any errors or problems in this guide, please see . We hope you enjoy working with &PRODUCT;! + If you find any errors or problems in this guide, please see . We hope you enjoy working with &PRODUCT;! Version 4.1.0 From e309a91a9b2f439cf9c35b9dcbd79889f4a72504 Mon Sep 17 00:00:00 2001 From: Pranav Saxena Date: Mon, 22 Apr 2013 14:19:38 +0530 Subject: [PATCH 336/607] CLOUDSTACK-1941:Cannot delete users in the default admin account within the UI --- ui/scripts/accounts.js | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ui/scripts/accounts.js b/ui/scripts/accounts.js index 8353d70536e..7e82c0fc163 100644 --- a/ui/scripts/accounts.js +++ b/ui/scripts/accounts.js @@ -1372,6 +1372,9 @@ if (jsonObj.state == 'Destroyed') return []; + if( isAdmin() && jsonObj.isdefault == false) + allowedActions.push("remove"); + if(isAdmin()) { allowedActions.push("edit"); //updating networkdomain is allowed on any account, including system-generated default admin account if(!(jsonObj.domain == "ROOT" && jsonObj.name == "admin" && jsonObj.accounttype == 1)) { //if not system-generated default admin account @@ -1393,6 +1396,10 @@ var userActionfilter = function(args) { var jsonObj = args.context.item; var allowedActions = []; + + if( isAdmin() && jsonObj.isdefault == false) + allowedActions.push("remove"); + if(isAdmin()) { allowedActions.push("edit"); allowedActions.push("changePassword"); From 67bd2c6eb70d99d9535300e7e4010ea33ff95fcb Mon Sep 17 00:00:00 2001 From: Radhika PC Date: Mon, 22 Apr 2013 14:48:44 +0530 Subject: [PATCH 337/607] fixing RN build errors --- docs/en-US/Preface.xml | 2 +- docs/en-US/Release_Notes.xml | 11166 +++++++++++++++++---------------- 2 files changed, 5907 insertions(+), 5261 deletions(-) diff --git a/docs/en-US/Preface.xml b/docs/en-US/Preface.xml index 3f5cdc6bfcb..28ad48eb5a3 100644 --- a/docs/en-US/Preface.xml +++ b/docs/en-US/Preface.xml @@ -25,7 +25,7 @@ Preface - + diff --git a/docs/en-US/Release_Notes.xml b/docs/en-US/Release_Notes.xml index 354c25da843..cda8d724e9f 100644 --- a/docs/en-US/Release_Notes.xml +++ b/docs/en-US/Release_Notes.xml @@ -19,4239 +19,4790 @@ specific language governing permissions and limitations under the License. --> - - - - Welcome to &PRODUCT; 4.1 - Welcome to the 4.1.0 release of &PRODUCT;, the first major release from the Apache CloudStack project since its graduation from the Apache Incubator. - This document contains information specific to this release of &PRODUCT;, including upgrade instructions from prior releases, new features added to &PRODUCT;, API changes, and issues fixed in the release. For installation instructions, please see the Installation Guide. For usage and administration instructions, please see the &PRODUCT; Administrator's Guide. Developers and users who wish to work with the API will find instruction in the &PRODUCT; API Developer's Guide - If you find any errors or problems in this guide, please see . We hope you enjoy working with &PRODUCT;! - - - Version 4.1.0 -
- What’s New in 4.1 - Apache CloudStack 4.1.0 includes many new features. This section covers the most prominent new features and changes. -
- Localization - The 4.1.0 release adds partial User Interface (UI) support for Catalan, Chinese, French, German, Italian, Japanese, Korean, Norwegian, Portuguese, Russian, and Spanish. Not all languages are complete. - The 4.1.0 release also adds documentation translations for Chinese, Chinese (Taiwan), Italian, Japanese, Korean, and Portuguese. -
-
- Added Region Support - CLOUDSTACK-241: This feature adds a "region" construct that spans several management servers. The objective of this feature is to add AWS EC2 like Regions implementation into CloudStack. Regions are dispersed and located in separate geographic areas. Availability Zones (or Zones in CloudStack) are distinct locations within a Region that are engineered to be isolated from failures in other Zones and provide inexpensive, low latency network connectivity to other Zones in the same Region. - Regions are expected to add the following benefits - - Higher availability of the services: users can deploy services across AZs and even if one of the AZ goes down the services are still available to the end-user through VMs deployed in other zones. - Higher availability of the Management Server (MS): Since each MS Cluster only manages a single Region, if that MS Cluster goes down, only that particular Region is impacted. Admin should be able to access all the other Regions. - Scalability: The scalability limit of CloudStack dramatically improves, as the scalability limit of MS Cluster is limited to a single Region. - Object Store: With Regions construct, CloudStack would also allow users to define Object Store (Secondary Storage) across AZs. This helps users easily deploy VMs in different AZs using the same template, offerings. - Geographical Grouping: Regions allow admins to group AZs (that have low latency and are geographically located nearby) into a broader region construct. - - Currently the Region feature is exposed in the API, but does not have a UI component. -
-
- Support for EC2 Query API - CLOUDSTACK-197: This introduces a query API for the AWS APIs that are currently only supported by SOAP. The AWS Java SDK and AWS PHP SDK should now be supported by the AWSAPI in CloudStack. - Supported Query APIs in 4.1.0: - - AllocateAddress - AssociateAddress - AttachVolume - AuthorizeSecurityGroupIngress - CreateImage - CreateKeyPair - CreateSecurityGroup - CreateSnapshot - CreateTags - CreateVolume - DeleteKeyPair - DeleteSecurityGroup - DeleteSnapshot - DeleteTags - DeleteVolume - DeregisterImage - DescribeAddresses - DescribeAvailabilityZones - DescribeImageAttribute - DescribeImages - DescribeInstanceAttribute - DescribeInstances - DescribeKeyPairs - DescribeSecurityGroups - DescribeSnapshots - DescribeTags - DescribeVolumes - DetachVolume - DisassociateAddress - GetPasswordData - ImportkeyPair - ModifyImageAttribute - RebootInstances - RegisterImage - ReleaseAddress - ResetImageAttribute - RevokeSecurityGroupIngress - RunInstances - StartInstances - StopInstances - TerminateInstances - - See the Feature Specification for more information on the Query API support. -
-
- Auto-Completing Shell for CloudStack (CloudMonkey) - CLOUDSTACK-132: Adds a auto-completing shell and command-line tool for &PRODUCT; written in Python, called CloudMonkey. - CloudMonkey includes the following features: - - Usable as a command line tool and interactive shell. - All commands are lowercase unlike API. - Api Discovery using sync feature, with build time api precaching for failsafe sync. - Raw api execution support. - Auto-completion via double tab. - Reverse search using Ctrl+R - Emacs compatible key bindings. - Output that's "pipeable" to other *nix programs. - Unix shell execution. - Support to handle asynchronous jobs using user defined blocking or non-blocking way. - Tabular or JSON output with filtering of table columns. - Colored output. - API parameter value completion (based on predication, fuzzy results may fail sometimes). - - CloudMonkey has a few requirements above and beyond CloudStack, and does not need to be run on the same machine as a management server. If you wish to run CloudMonkey you'll need Python 2.5 or later, readline, Pygments, and prettytable. CloudMonkey can be installed with pip: - $ pip install cloudmonkey - See the Developer's Guide and the CloudStack wiki for the latest information on CloudMonkey installation and use. -
-
- API Discovery Service - CLOUDSTACK-926: CloudStack has more than 300 APIs and more are added in each major release. CloudStack admins can enable or disable APIs, or add plugins which provide more APIs. The API Discovery Service is a plugin which will help users discover the APIs available to them on a CloudStack Management Server. - The discovery service implements a method called listApis which will return information about APIs for a user. It currently accepts an apiName to list api information of that particular API. The method ensures that user can only list APIs they are entitled to. - All CloudStack APIs are implemented by annotated command class and PluggableService is a contract implemented by all the components such as the Management Server and all the plugins which provide an API. During load time, API discovery service asks all the pluggable services to return list of API cmd classes from whose fields and annotations it gathers information about each API, the information consists of name, description, parameter name, parameter description, etc. - For more information on the implementation of the API Discovery Service for 4.1.0, see the CloudStack wiki. -
-
- Events Framework - CLOUDSTACK-820: The Events Framework provides a mechanism to publish and subscribe to events in &PRODUCT;. -
-
- Additional VMX Settings - ### -
-
- L3 Router Functionality in Nicira Nvp Plugin - ### -
-
- Persistent Networks without Running VM - ### -
-
- Add/Remove Network on VM - ### -
-
- Resize Volumes Feature - ### -
-
- Autoscale - ### -
-
- API Request Throttling - CLOUDSTACK-618: Limits the number of API requests per second that can be placed against a management server to avoid DoS attacks via API requests. - The throttling is controlled by the api.throttling.enabled, api.throttling.interval, and api.throttling.max configuration settings. Note that api.throttling.enabled is set to false by default. -
-
- S3 Backed Secondary Storage - CLOUDSTACK-509: This enhancement backs NFS secondary storage with an S3-compatible object store. Periodically, a reaper thread synchronizes the templates, ISOs, and snapshots stored on a NFS secondary storage mount with a configured S3 object store. In addition to permitting the use of commodity or IaaS storage solutions for static assets, it provides a means of automatically synchronizing template and ISO assets across multiple zones. - See the &PRODUCT; wiki for more information on this feature, currently the documentation is incomplete. -
-
- User and Domain Admin Can Create API Key and Secret - CLOUDSTACK-437: This feature adds the ability for domain admins and users to create their own API Key and Secret. Domain admins can create keys for themselves, subdomain admins, and for regular users, but not for other domain admins. -
-
- Support Inline Mode for F5 and SRX - CLOUDSTACK-306: For &PRODUCT; deployments using the Juniper SRX (firewall) and F5 Big IP (load balancer), &PRODUCT; 4.1.0 supports putting the firewall in front of the load balancer, making the firewall device the gateway and putting the load balancer behind the public network. -
-
- Egress Firewall Rules for Guest Networks - CLOUDSTACK-299: This feature allows users to create egress (exit) traffic rules from private networks to public networks (e.g. from your internal network to the public Internet). By default all traffic is blocked from internal networks to the public networks, this allows you to open ports as necessary. - Egress traffic rules are suppored only on virtual routers at this time, physical devices are not supported. -
-
- Reset SSH Key to Access VM - CLOUDSTACK-297: &PRODUCT; 4.1.0 introduces a new API resetSSHKeyForVirtualMachine, that can allow them to set or reset the SSH keypair assigned to a virtual machine. -
-
-
- Issues Fixed in 4.1.0 - Apache CloudStack uses Jira - to track its issues. All new features and bugs for 4.1.0 have been tracked in Jira, and have - a standard naming convention of "CLOUDSTACK-NNNN" where "NNNN" is the issue number. - This section includes a summary of known issues against 4.0.0 that were fixed in 4.1.0. Approximately 470 bugs were resolved or closed in the 4.1.0 cycle. - - - - - - - - Defect - - - Description - - - - - - - CLOUDSTACK-46 - - - Remnants of mycloud remain. - - - - - CLOUDSTACK-70 - - - Improve Network Restart Behaviour for Basic Zone: Restarting Network Fail - - - - - CLOUDSTACK-94 - - - "API command, listIsos documentation clarity - - - - - CLOUDSTACK-95 - - - IP address allocation not working when a user tries to allocate IP addresses in a Project - - - - - CLOUDSTACK-97 - - - Vmware network labels are ignored when creating a Zone using basic networking - - - - - CLOUDSTACK-108 - - - VM should not be allowed to be deployed on two Isolated Networks of an Account that were created from DefaultNetworkOfferingwithSourceNATService - - - - - CLOUDSTACK-118 - - - Status of host resorce stuck in "ErrorInMaintenance" - - - - - CLOUDSTACK-119 - - - Move Agent-Simulator in to the hypervisor plugin model - - - - - CLOUDSTACK-130 - - - Clarify docs on tags parameter in API reference - - - - - CLOUDSTACK-152 - - - Routes on the User VM are programmed incorrectly on a VM present on both Isolated and Shared Guest Network - - - - - CLOUDSTACK-178 - - - Expose name parameter of VM in list Vm view. - - - - - CLOUDSTACK-198 - - - vpn:failto add VPN Users deletes all the existing Vpn user - - - - - CLOUDSTACK-222 - - - Admin UI prompts to restart Management server with cancel edit operation - - - - - CLOUDSTACK-225 - - - API Docs: Request params repeated with different description - - - - - 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-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-228 - - - UI provides an option to reconnect a disconnected host - ServerApiException is thrown on an attempt - - - - - CLOUDSTACK-232 - - - Zone infrastructure chart -- disable resource total display - - - - - CLOUDSTACK-235 - - - Network rate can be set in 2 places. Clarify docs on how this works - - - - - CLOUDSTACK-249 - - - Add host id to failed VM deploy alerts - - - - - CLOUDSTACK-250 - - - Incorrect description of maintenance mode in admin guide - - - - - CLOUDSTACK-256 - - - "vpn:As an admin user, not able to delete VPN user which is present in a regular user's network. - - - - - CLOUDSTACK-271 - - - updatePhysicalNetwork dies with an NPE when the vlan range is empty - - - - - CLOUDSTACK-274 - - - Two error codes mapped to same value in API - - - - - CLOUDSTACK-275 - - - hostid not always a UUID - - - - - CLOUDSTACK-277 - - - Message during CloudStack management server Installation: cannot access /usr/share/cloud/bridge/lib: No such file or directory - - - - - CLOUDSTACK-279 - - - deleteProject fails when executed by the regular user (works fine for root/domain admin) - - - - - CLOUDSTACK-284 - - - listVirtualMachines does not return deleted machines when zone is specified - - - - - CLOUDSTACK-290 - - - 3.0.0 template also needed for 2.2.14 to 3.0.5 direct upgrade. - - - - - CLOUDSTACK-293 - - - "We do awful, hacky things in our spec file for client" - - - - - CLOUDSTACK-304 - - - Add synchronization for createSnapshot command per host basis - - - - - CLOUDSTACK-309 - - - iptables rules being deleted from wrong VM after a migration - - - - - CLOUDSTACK-318 - - - Adding XenServer Host Fails - 6.0.2 fails with 4.0.0 - - - - - CLOUDSTACK-320 - - - "sessionKey query parameter should be case-insensitive, now only sessionkey is accepted" - - - - - CLOUDSTACK-322 - - - During upgrade displays error - a foreign key constraint fails (`cloud/#sql-f34_6e`.. - - - - - 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-333 - - - When Datacenter name in VCenter has spaces Primary Storage (VMFS) discovery will fail - - - - - CLOUDSTACK-335 - - - KVM VPC load balancer not working - - - - - CLOUDSTACK-336 - - - listZones doesn't honour paging - - - - - CLOUDSTACK-343 - - - "Document what tools and packages are required to build, package and install CloudStack 4.0 - - - - - CLOUDSTACK-346 - - - Cannot add Vmware cluster with class loader conflict exception - - - - - CLOUDSTACK-347 - - - listNetworks API: return vlan information only when the caller is ROOT admin - - - - - CLOUDSTACK-348 - - - deleteNetwork does not clean up network resource count correctly - - - - - CLOUDSTACK-354 - - - Display of storage statistics is wrong - - - - - CLOUDSTACK-355 - - - "Fix ""count"" in a bunch of API commands - - - - - CLOUDSTACK-357 - - - "ISOs can be deleted while still attached to a running VM, and they subsequently cannot be detached from a running VM - - - - - CLOUDSTACK-359 - - - PropagateResourceEventCommand failes in cluster configuration - - - - - CLOUDSTACK-361 - - - Wrong creation of guest networks on a KVM host in Multiple Physical Networks with guest traffic - - - - - CLOUDSTACK-364 - - - Docs point to download.cloud.com for AWS API script - - - - - CLOUDSTACK-368 - - - OVM - cannot create guest VM - - - - - CLOUDSTACK-369 - - - ASF 4.0 - unable to support XenServer 6.1 host - - - - - CLOUDSTACK-373 - - - "static NAT and Firewall is not working on external firewall device SRX, it needs to be implemented - - - - - CLOUDSTACK-377 - - - provide deployment config access to marvin's testcase - - - - - CLOUDSTACK-378 - - - mavenize marvin on master - - - - - CLOUDSTACK-390 - - - Install Guide: Section 4.5.7 (Prepare the System VM Template): Links go to cloud.com - - - - - 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-404 - - - Update docs on the usage of cloud-setup-database - - - - - CLOUDSTACK-412 - - - Data truncation: Out of range value for column 'ram' at row - - - - - CLOUDSTACK-415 - - - restartNetwork call causes VM to be unreachable when Nicira based SDN is used - - - - - CLOUDSTACK-416 - - - XCP 1.6beta2 (61002c) - can't add a host - - - - - CLOUDSTACK-417 - - - Handle password server securely to run on port 8080 on VR - - - - - CLOUDSTACK-424 - - - Updated userdata not propagating to the VR - - - - - CLOUDSTACK-427 - - - Change hardcoded step number references to dynamic link - - - - - CLOUDSTACK-428 - - - Storage capacity shown in UI is incorrect - - - - - CLOUDSTACK-435 - - - Vmware network labels are ignored when creating a Zone using basic networking - - - - - CLOUDSTACK-441 - - - Running mgmt server using jetty fails to start api server - - - - - CLOUDSTACK-446 - - - "Host going to alert state, if you are adding already added host - - - - - CLOUDSTACK-448 - - - SSVM bootstrap failure on XenServer hosts with E3 CPU - - - - - CLOUDSTACK-456 - - - License tag in SPEC isn't what RPM is expecting - - - - - 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-462 - - - A few corrections to make to the 4.0.0 installation guide - - - - - CLOUDSTACK-464 - - - "Regression in AWSAPI docs, entire sections removed - - - - - CLOUDSTACK-465 - - - French language file quotes are dropping javascript syntax error - - - - - CLOUDSTACK-467 - - - Developer's Guide points to cloud.com for API reference - - - - - CLOUDSTACK-479 - - - UpdateVirtualMachine api fails to propagate userdata to domr - - - - - CLOUDSTACK-481 - - - Installation Guide Doc Error - - - - - CLOUDSTACK-493 - - - 2.2.x-3.0 DB upgrade support for Advance SG enabled network - - - - - CLOUDSTACK-499 - - - cloudmonkey CLI can't accept complex parameter - - - - - CLOUDSTACK-500 - - - Passwd-server iptables rules are dropped on domr on fresh start or on reboot. - - - - - CLOUDSTACK-501 - - - Apidocs and marvin does not know how to handle Autoscaling docs. - - - - - CLOUDSTACK-504 - - - Duplicate guest password scripts in codebase. - - - - - CLOUDSTACK-507 - - - fix api docs for listSSHKeyPair - - - - - CLOUDSTACK-508 - - - CLVM copies template to primary storage unnecessarily. - - - - - CLOUDSTACK-510 - - - Add button not visible when adding public IPs to physical network. - - - - - CLOUDSTACK-514 - - - Marvin and Cloudmonkey don't work when an API target uses https or an alternate path. - - - - - CLOUDSTACK-518 - - - API refactoring -- change @Parameter annotation and remove the @IdentityMapper annotation. - - - - - CLOUDSTACK-520 - - - Dependency jar names mismatch with install-non-oss.sh - - - - - CLOUDSTACK-521 - - - Build will hung up when doing test for TestAgentShell - - - - - CLOUDSTACK-522 - - - Log requests in cloudmonkey's log file. - - - - - CLOUDSTACK-527 - - - List API performance optimization by using DB views and removing UUID conversion. - - - - - CLOUDSTACK-534 - - - Failed to add host - - - - - CLOUDSTACK-536 - - - remove citrix cloudpatform from 4.0 build - CloudStack is ASF project. - - - - - CLOUDSTACK-539 - - - Cropped Text in UI under Quick View. - - - - - 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-553 - - - "SRX - When adding SRX device make "Public Network" - default to "untrusted" and "Private Network" - default to "trusted" as un-editable fields. - - - - - CLOUDSTACK-556 - - - Erratic window behavior in Quick View tooltip. - - - - - CLOUDSTACK-559 - - - source code import problem - - - - - CLOUDSTACK-560 - - - Usage server doesn't work in 4.0.0 due to missing db changes - - - - - CLOUDSTACK-572 - - - SG Enabled Advanced Zone - Not able to deploy a VM in an account specific shared network - - - - - 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-578 - - - The already deleted same hostname is not deleted from /etc/hosts of vRouter - - - - - CLOUDSTACK-584 - - - "typos in ""Apache_CloudStack-4.0.0-incubating-CloudStack_Nicira_NVP_Guide-en-US"" - - - - - CLOUDSTACK-590 - - - Incorrect Network Gateways Assigned to System VM - - - - - CLOUDSTACK-592 - - - "API bloat, unknown apis cmd classes - - - - - CLOUDSTACK-593 - - - "2 guest network, auto create vlan error - - - - - CLOUDSTACK-596 - - - DeployVM command takes a lot of time to return job id. - - - - - CLOUDSTACK-599 - - - DhcpEntryCommand fails on Router VM on CS4.0 and vSphere5 with Advanced Network Zone. - - - - - CLOUDSTACK-600 - - - When rebooting KVM local storage VM host, libvirt definitions deleted - - - - - CLOUDSTACK-605 - - - Host physical CPU is incorrectly calculated for Vmware host - - - - - CLOUDSTACK-606 - - - Starting VM fails with 'ConcurrentOperationException' in a clustered MS scenario - - - - - CLOUDSTACK-614 - - - "ListTemplates API is not returning ""Enable SSH Key"" attribute for any given template - - - - - CLOUDSTACK-617 - - - Unable to edit a Sub domain - - - - - CLOUDSTACK-639 - - - API Refactoring: Adapters for ACL - - - - - CLOUDSTACK-648 - - - The normal users could change their own login password. - - - - - CLOUDSTACK-660 - - - Network Traffic Labels are not functional in Marvin - - - - - CLOUDSTACK-683 - - - Image Is Missing in the Accessing VM Section - - - - - CLOUDSTACK-689 - - - RVR: Stop pending flag is not cleared when user start the disconnected router from another host - - - - - CLOUDSTACK-691 - - - A warning dialog box shows after reloading the welcome page. - - - - - CLOUDSTACK-693 - - - Adding a VPC virtual router to a NiciraNVP enabled network fails. - - - - - CLOUDSTACK-694 - - - "Create a new VPC network offering with "connectivity" option needed for SDN networking) is not allowed / VPC support for SDN networks - - - - - CLOUDSTACK-717 - - - cloudmonkey fails to parse/print response. - - - - - CLOUDSTACK-720 - - - Fail to load a png image when accessing the web console. - - - - - CLOUDSTACK-721 - - - Bytes sent/received in user statistics is empty (CloudStack 4.0) - - - - - CLOUDSTACK-725 - - - UI: Error when the Egress rules tab is selected for a network. - - - - - CLOUDSTACK-734 - - - api_refactoring: CreateAccountCmd fails to send response due to NPE in service layer - - - - - CLOUDSTACK-735 - - - Integration smoke tests: Fix expunge vm test on api_refactoring - - - - - CLOUDSTACK-736 - - - Integration smoke tests: Fix check for vm name for the deployvm smoke test. - - - - - CLOUDSTACK-793 - - - "Create cloudmonkey-helper, a plugin that helps autodiscover and sync api info via an api over some endpoint - - - - - CLOUDSTACK-798 - - - Move usage related cmd classes from cloud-server to cloud-api - - - - - CLOUDSTACK-799 - - - [Load Test] Check router statistics falls behind in gathering stats by more than 2 times the set value - - - - - CLOUDSTACK-819 - - - Create Account/User API logging password in access log - - - - - 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-870 - - - Client UI: Wrong character encoding for some language - - - - - CLOUDSTACK-928 - - - [Simulator] Latency for Agent Commands - change unit of wait from seconds to milliseconds - - - - - CLOUDSTACK-938 - - - s2s VPN trouble - - - - - CLOUDSTACK-959 - - - Missing sub-sections in document section System Service Offering - - - - - CLOUDSTACK-968 - - - marvin: vlan should be an attribute of the physical_network and not the zone - - - - - CLOUDSTACK-977 - - - Document how to use openvswitch with KVM hypervisor - - - - - CLOUDSTACK-978 - - - TypeError: instance.displayname is undefined while adding VM's to the LB rule - - - - - CLOUDSTACK-985 - - - Different MAC address for RvR caused issue in short term network outage - - - - - CLOUDSTACK-987 - - - Sections missing in Working With Snapshots - - - - - CLOUDSTACK-993 - - - "admin"" user is not getting created when management server is started. - - - - - CLOUDSTACK-995 - - - Not able to add the KVM host - - - - - CLOUDSTACK-1002 - - - Not able to start VM - - - - - CLOUDSTACK-1006 - - - need to disable service libvirt-guests in CentOS packaging RPMs, or in installation docs - - - - - CLOUDSTACK-1008 - - - "Egress"" tab should not be presented in the UI for Shared Networks - - - - - CLOUDSTACK-1010 - - - Host count and Secondary storage count always shows 1 in UI - - - - - CLOUDSTACK-1011 - - - KVM host getting disconnected in cluster environment - - - - - CLOUDSTACK-1013 - - - running cloudstack overwrites default public/private ssh key - - - - - CLOUDSTACK-1014 - - - Merge ManagementServer and ManagementServerEx - - - - - CLOUDSTACK-1016 - - - Not able to deploy VM - - - - - CLOUDSTACK-1021 - - - the vlan is not creat to right nic. when i creat multi guest network - - - - - CLOUDSTACK-1024 - - - Regression: Unable to add Xenserver host with latest build. - - - - - CLOUDSTACK-1027 - - - "Update SSL certificate" button should properly reflect its functionality - - - - - CLOUDSTACK-1029 - - - Enter the token to specified project is malfunctioned - - - - - CLOUDSTACK-1037 - - - "Make cloudmonkey awesome-er: Online help docs and api discovery, better colored output, parameter value autocompletion - - - - - CLOUDSTACK-1050 - - - No Documentation on Adding a Load Balancer Rule - - - - - CLOUDSTACK-1051 - - - API dispatcher unable to find objectVO corresponding to DeleteTemplatecmd - - - - - CLOUDSTACK-1055 - - - "The overlay still exists when the ""Recurring Snapshots"" dialog is canceled by pressing esc key. - - - - - CLOUDSTACK-1056 - - - S3 secondary storage fails to upload systemvm template due to KVMHA directory - - - - - CLOUDSTACK-1057 - - - regression of changeServiceForVirtualMachine API - fails to find service offering by serviceOfferingId parameter - - - - - 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-1064 - - - A type error occurs when trying to add account/register template... - - - - - CLOUDSTACK-1068 - - - Names in VR list is useless - - - - - CLOUDSTACK-1070 - - - javelin: NPE on executing registerIso API - - - - - CLOUDSTACK-1071 - - - Netscaler element is not getting loaded as part of LoadBalancing Service Providers - - - - - CLOUDSTACK-1078 - - - Not able to start System Vms on Rhel 6.3 KVM host - - - - - CLOUDSTACK-1079 - - - Deploying AWSAPI with mvn -pl :cloud-awsapi jetty:run fail - - - - - CLOUDSTACK-1082 - - - UI doesn't throw any error message when trying to delete ip range from a network that is in use. - - - - - CLOUDSTACK-1083 - - - listUsageRecords api: removed project results in NPE - - - - - CLOUDSTACK-1087 - - - Update the Developer Guide for ASFCS 4.1 Release - - - - - CLOUDSTACK-1088 - - - EnableStaticNat error will clear the data in database - - - - - CLOUDSTACK-1094 - - - Ipv6 - hostname/hostname --fqdn does not return the name of the VM. But i am able to reach the Vm using their names - - - - - CLOUDSTACK-1095 - - - Ipv6 - dhclient command needs to be run manually on the Vms to get the Ipv6 address - - - - - CLOUDSTACK-1100 - - - Expunge thread is not kicked off based on global configuration if the global setting is less than 60 seconds - - - - - CLOUDSTACK-1103 - - - "IpV6 - listNetwork() command does not retrun gateway,netmask,cidr - - - - - CLOUDSTACK-1104 - - - Ipv6 - listVlanIpRanges() returns error 530 - - - - - CLOUDSTACK-1105 - - - "IpV6 - listVirtualMachines() does not return netmask, gateway,ipaddress. - - - - - CLOUDSTACK-1107 - - - Ipv6 - Unable to extend Ip range for a Ipv6 network using craeteVlanIpRange() command - Error code 530 returned - - - - - CLOUDSTACK-1108 - - - Ipv6 - Not able to restart Networks - - - - - CLOUDSTACK-1109 - - - "Ipv6 - Unable to expunge User Vms that are "Destroyed". - - - - - CLOUDSTACK-1111 - - - Ipv6 - listRouters() does not return guestipaddress/ - - - - - CLOUDSTACK-1112 - - - "Errors in "Prepare the System VM Template" - - - - - CLOUDSTACK-1113 - - - "Ipv6 - Not able to deploy a new VM in this network because of "Unable to allocate Unique Ipv6 address" - - - - - CLOUDSTACK-1114 - - - unable to execute listegressfirewallrules API due invalid value id - - - - - CLOUDSTACK-1115 - - - In multiple shared network unable to login with default nic - KVM - - - - - CLOUDSTACK-1123 - - - ListStoragePools API broken by refactor - - - - - CLOUDSTACK-1138 - - - "Providing invalid values for gateway, netmask etc in the zoneWizard blocks the VLAN container to load, throwing an error - - - - - CLOUDSTACK-1139 - - - "After the Vm is "Expunged" we see the entry still being present in the router in /etc/dhcphosts.txt - - - - - CLOUDSTACK-1141 - - - "Ipv6 - After network restart (and reboot router), we do not see the existing vms dnsentries not being programmed in the router. - - - - - CLOUDSTACK-1152 - - - Missing tag in host-add.xml - - - - - CLOUDSTACK-1153 - - - "Ipv6 - Vm deployment fails with "n must be positive" error. - - - - - CLOUDSTACK-1154 - - - Account/Users related API failed due to RegionService inject exception. - - - - - CLOUDSTACK-1157 - - - No API Documentation on Listing Custom User Templates Using CS4 API - - - - - CLOUDSTACK-1160 - - - References to version=3.0.3|4|5|6 in API classes needs to be removed. - - - - - CLOUDSTACK-1161 - - - Differences between 4.1 and master in ongoing-config-of-external-firewalls-lb.xml - - - - - CLOUDSTACK-1163 - - - Failed with NPE while creating firewall rule - - - - - CLOUDSTACK-1168 - - - Create firewall rule broke - - - - - CLOUDSTACK-1173 - - - ConsoleProxyResource instantiation exception. - - - - - CLOUDSTACK-1174 - - - Snapshots related SQL error. - - - - - CLOUDSTACK-1176 - - - Issue with snapshots(create/list) - - - - - CLOUDSTACK-1181 - - - mvn deploy db failing with NPE - - - - - CLOUDSTACK-1190 - - - Make APIChecker interface throw a single sensible exception. - - - - - CLOUDSTACK-1200 - - - "Unknown column 'vm_instance.disk_offering_id' in table vm_instance, db exception shown in MS log - - - - - CLOUDSTACK-1201 - - - "Failed to create ssh key for user "cloud" /var/lib/cloud/management/.ssh/id_rsa and failed to start management server - - - - - CLOUDSTACK-1202 - - - Fail to install KVM cloud-agent. - - - - - CLOUDSTACK-1203 - - - Fail to create advance zone with SG enabled when UI allows SG enabled option. - - - - - CLOUDSTACK-1204 - - - Fail to create advance zone due to fail to add host - - - - - CLOUDSTACK-1205 - - - Ipv6 - Ubuntu 12.10 guest Vms loses 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-1206 - - - Failure in Copy of System template - - - - - CLOUDSTACK-1210 - - - Make all pluggable services return list of api cmd classes - - - - - CLOUDSTACK-1216 - - - UUID is null for admin and failed to register user key with 4.0 - - - - - CLOUDSTACK-1218 - - - "IPv6: Shared Network - After network restart with clean option, router is assigned a different address. Name resolution for the existing guest Vms in the network fails. - - - - - 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-1220 - - - Ipv6 - Better error message when deploy Vm fails to get a free Ip address - - - - - CLOUDSTACK-1222 - - - API rate limit configs: removed double quote in upgrade script - - - - - CLOUDSTACK-1223 - - - Exception while starting jetty server: org.springframework.beans.factory.BeanCreationException Error creating bean with name 'apiServer' - - - - - CLOUDSTACK-1224 - - - Volume snapshot creation failing - - - - - CLOUDSTACK-1226 - - - Error while running Cloudstack-setup-database - - - - - CLOUDSTACK-1228 - - - Unable to Create System Vm's in the VMware Hypervisor setup - - - - - CLOUDSTACK-1229 - - - Incorrect SQL syntax to insert api limit related configuration items in upgrade path script. - - - - - CLOUDSTACK-1231 - - - cloud-install-sys-tmplt failed due to missing path - - - - - CLOUDSTACK-1232 - - - "Ipv6 - Guest Vms are not able to get Ipaddress when executing dhclient command when using ""/96"" network. - - - - - CLOUDSTACK-1233 - - - Veewee configuration files are inappropriately identified as ASLv2 licensed file - - - - - CLOUDSTACK-1234 - - - Unable to start KVM agent with 4.1 build. - - - - - CLOUDSTACK-1237 - - - "Register Template fails with ""Cannot find template adapter for XenServer"" - - - - - CLOUDSTACK-1239 - - - Unable to registerISO :unhandled exception executing api command: registerIso - - - - - CLOUDSTACK-1240 - - - Unable to registerTemplate : Cannot find template adapter for XenServer. - - - - - CLOUDSTACK-1241 - - - Network apply rules logic is broken. - - - - - CLOUDSTACK-1242 - - - [F5-SRX-InlineMode] Failed to create LB rule with F5-SRX inlinemode deployment - - - - - CLOUDSTACK-1243 - - - Failed to cleanup account :java.lang.NullPointerException - - - - - CLOUDSTACK-1244 - - - fail to push sysmvm.iso onto xen host - - - - - CLOUDSTACK-1246 - - - "[ ALU beta CS 4.1 build2] ""Guest network"" missing in Add Zone wizard ( step 3, Setup Network \ Physical Network) - - - - - CLOUDSTACK-1251 - - - Baremetal zone doesn't need primary/secondary storage in UI wizard. - - - - - CLOUDSTACK-1252 - - - Failed to download default template in VMware. - - - - - CLOUDSTACK-1260 - - - Failed to register template: Unable to find template adapter - - - - - CLOUDSTACK-1261 - - - Cannot find template adapter for XenServer. - - - - - CLOUDSTACK-1262 - - - "Failed to Prepare Secondary Storage in VMware, - - - - - CLOUDSTACK-1265 - - - logrotate dnsmasq configuration is wrong - - - - - CLOUDSTACK-1267 - - - KVM's cloudstack-agent service doesn't log (log4j) - - - - - CLOUDSTACK-1269 - - - Failed to start CPVM java.lang.NullPointerException Unable to start SSVM - - - - - CLOUDSTACK-1272 - - - Autoscale: createAutoScaleVmProfile fails due to unable to retrieve Service Offering ip - - - - - CLOUDSTACK-1274 - - - UpdateNetworkCmd throws NP - - - - - CLOUDSTACK-1276 - - - Remove autoscanning for 4.1 - - - - - CLOUDSTACK-1277 - - - ApiResponseHelper.createUserVmResponse failed to populate password field set from UserVm object - - - - - CLOUDSTACK-1278 - - - Improper permissions on injectkeys.sh - - - - - CLOUDSTACK-1288 - - - [F5-SRX-InlineMode] classCastException during network restart with cleanup option true - - - - - CLOUDSTACK-1289 - - - [F5-SRX-InlineMode] Usage stats are not generated for Juniper SRX Firewall in inlinemode - - - - - CLOUDSTACK-1290 - - - listNetoworks API takes too long to respond - - - - - CLOUDSTACK-1292 - - - "[F5-SRX-InlineMode] Update network from SRX,F5 as service provideds to VR as service provider does not delete firewall rules from SRX - - - - - CLOUDSTACK-1295 - - - NPE in usage parsers due to missing @Component inject - - - - - CLOUDSTACK-1299 - - - Errors in 4.5.5 section of installation guide - - - - - CLOUDSTACK-1300 - - - section in wrong order in installation guide - - - - - CLOUDSTACK-1303 - - - Ipv6 - java.lang.NullPointerException when executing listnetworks() and deployVirtualMachine() after extending the Ipv4 range of a dual stack network - - - - - CLOUDSTACK-1307 - - - Noticed NPE when we put host in maintenance mode in clustered management setup - - - - - CLOUDSTACK-1310 - - - ASF-build-master-nonoss-rhel63 - create advance zone FAIL - CreatePhysicalNetworkCmd FAIL - MySQLIntegrityConstraintViolationException: Duplicate entry '200-Public' for key 'physical_network_id' - - - - - 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-1313 - - - Working with Volumes Section Is Missing - - - - - CLOUDSTACK-1315 - - - [F5-SRX-InlineMode] Network implement failed with Run time Exception during network upgrade from VR to SRX-F5 - - - - - CLOUDSTACK-1319 - - - createCustomerVpnGateway response gives TypeError: json.createvpncustomergatewayresponse is undefined - - - - - CLOUDSTACK-1320 - - - Routers naming convention is changed to hostname. - - - - - CLOUDSTACK-1321 - - - [Site-to-Site VPN] No events are generated in case of status change in site to site vpn connection - - - - - CLOUDSTACK-1326 - - - KVM - Failed to start cloud agent from SSVM - - - - - CLOUDSTACK-1328 - - - console view unable to connect - CPVM SSVM guest VM - - - - - CLOUDSTACK-1329 - - - "API listRouters response returns hostname instead of Virtual Routers, UI displays host entry for each VR - - - - - 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-1331 - - - Upgrade fails for a 2.2.14 Zone having multiple guest networks using network_tags and Public Vlan - - - - - CLOUDSTACK-1332 - - - IPV6 - Router and guest Vms should be able to use an IPV6 address for external DNS entry - - - - - CLOUDSTACK-1334 - - - vmware.root.disk.controller doesn't work - - - - - CLOUDSTACK-1337 - - - Zone to zone template/ISO copy fails and template/ISO download also fail - - - - - CLOUDSTACK-1338 - - - Deploy VM failed using IS - - - - - CLOUDSTACK-1339 - - - ASF 4.1: Management server becomes unresponsive - - - - - CLOUDSTACK-1341 - - - URL for the KEYs file is wrong in the installation guide - - - - - CLOUDSTACK-1342 - - - Document installation and usage of cloudmonkey for 4.1 docs - - - - - CLOUDSTACK-1343 - - - Porting Baremetal related UI changes to ACS - - - - - CLOUDSTACK-1344 - - - Typo in use.external.dns setting description - - - - - CLOUDSTACK-1345 - - - BigSwitch plugin introduces 'VNS' isolation in UI without backend implementation - - - - - CLOUDSTACK-1346 - - - "Check to see if external devices are used in the network, is hardcoded for specific devices - - - - - CLOUDSTACK-1347 - - - "Not able to delete network. Error - "Unable to insert queue item into database, DB is full?" - - - - - CLOUDSTACK-1348 - - - API/UI: zoneObj is undefined. - - - - - CLOUDSTACK-1349 - - - "VPC network Adding Network ACls, PF rules - Unable to insert queue item into database, DB is full? PF rules and NW Acls in Add state in DB - - - - - CLOUDSTACK-1350 - - - Management server Stop and start causes previously downloaded ISOs and templates to redownload & reinstall. - - - - - CLOUDSTACK-1353 - - - KVM 6.3 snapshot Scheduling snapshot failed due to java.lang.NullPointerException - - - - - CLOUDSTACK-1357 - - - "Autoscale: Provisioned VMs from Netscaler not being added to lb vserver, provserver fails with provserver_err_asynctaskpoll - - - - - CLOUDSTACK-1360 - - - The clusterid field of the createStoragePool API command should be documented as required. - - - - - CLOUDSTACK-1367 - - - NPE noticed in logs while AgentMonitor is monitoring the host ping interval - - - - - CLOUDSTACK-1368 - - - Shared network - Not able to delete network because of java.lang.NullPointerException - - - - - 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-1370 - - - DeployVM Fail - VPC or non-VPC network - - - - - CLOUDSTACK-1375 - - - deploydb failing with acs master - - - - - CLOUDSTACK-1376 - - - Unable to migrate VM due to internal error process exited while connecting to monitor - - - - - CLOUDSTACK-1377 - - - HA fail - when host is shutdown, VMs and SSVMs are not failover to second host in cluster. - - - - - CLOUDSTACK-1382 - - - vm deploy fails with Error "cannot find DeployPlannerSelector for vm" - - - - - CLOUDSTACK-1383 - - - Deploying basic zone on 4.1 fails in NPE - - - - - CLOUDSTACK-1386 - - - BASIC zone SSVM fail to start due to exception - - - - - CLOUDSTACK-1388 - - - UI - ListUsers doesnt display any User except the Default Root Admin User - - - - - CLOUDSTACK-1391 - - - EventBus is not getting injected after javelin merge - - - - - CLOUDSTACK-1394 - - - [F5-SRX-InlineMode] Failure in static nat configuration on SRX does not result in LB configuration error in CS during LB rule configuration - - - - - CLOUDSTACK-1397 - - - Static Nat configuration is failing with NPE - - - - - CLOUDSTACK-1399 - - - Unhandled exception executing api command: stopVirtualMachine - - - - - CLOUDSTACK-1402 - - - listRouters API response doesn't return linklocal IP and public IP details - - - - - CLOUDSTACK-1403 - - - Storage and console-proxy related error - - - - - CLOUDSTACK-1411 - - - Issues with VMWare Hypervisor host_ids not updated when ESX(i) crashes in instance table - - - - - CLOUDSTACK-1414 - - - Redundant router: BACKUP switch cancelled due to lock timeout after a glitch in network. - - - - - CLOUDSTACK-1417 - - - When invalid values are passed to createNetwork(), error message does not indicate the parameter name that has invalid values. - - - - - CLOUDSTACK-1418 - - - As regular user, we are not allowed to deploy VM on a shared network. - - - - - CLOUDSTACK-1419 - - - Apache-ify and apply trademark logos in the UI - - - - - CLOUDSTACK-1420 - - - Ensure trademarks are properly attributed in publican brand - - - - - CLOUDSTACK-1423 - - - Unable to launch UI [HTTP Status 404]. - - - - - CLOUDSTACK-1425 - - - unhandled exception executing api command: migrateVirtualMachine & recoverVirtualMachine - - - - - CLOUDSTACK-1427 - - - Failed to delete Guestnetwork which has LB with Netscaler - - - - - CLOUDSTACK-1428 - - - [UI] Instance which are created without display name are not visible when added to LB - - - - - CLOUDSTACK-1429 - - - single account is unable to use same vnet across multiple physical network - - - - - CLOUDSTACK-1436 - - - 4.1 management server fails to start from RPM build artifact - - - - - CLOUDSTACK-1443 - - - As domain admin we are allowed to create shared network - - - - - CLOUDSTACK-1446 - - - [UI]VPC Router type should be of type vpc and not system - - - - - CLOUDSTACK-1447 - - - [UI]Persistent Status is not displayed for VPC Tier - - - - - CLOUDSTACK-1449 - - - listAccounts and listProjectAccounts API lists all the users not account-specific users for each account returned - - - - - CLOUDSTACK-1451 - - - Getting EntityExistsException while creating more than one project in CS 4.1 - - - - - CLOUDSTACK-1452 - - - Public IP's are assigned to private interface with VPC Restart [PF/LB rules are not functional - - - - - CLOUDSTACK-1461 - - - "Ipv6 - From a Vm that that is part of 2 networks, non default network router's details should not get programmed in the DNS entries of the guest VM. - - - - - CLOUDSTACK-1463 - - - IPV6 - Ubuntu 12.10 - Multiple Nic - IPV6 address is assigned automatically for 1 nic only. Need to do a manual dhclient request to get the ipv6 for other nic. - - - - - CLOUDSTACK-1464 - - - "IPV6 - Multi nic - Ubuntu 1210 -When Vm is stopped and started/ rebooted, i get multiple global IPV6 addresses being allocated for one of the nics. - - - - - CLOUDSTACK-1465 - - - List Zones returns null under create instance when logged is as user - - - - - CLOUDSTACK-1467 - - - Failed to create Volume for the System VMs - - - - - CLOUDSTACK-1469 - - - kvm agent: agent service fails to start up - - - - - CLOUDSTACK-1470 - - - unhandled exception executing api command: deployVirtualMachine - - - - - CLOUDSTACK-1472 - - - AssignVirtualMachine API with wrong Virtual Instance ID failed with NPE - - - - - CLOUDSTACK-1473 - - - deleteDomain is failing with NPE - - - - - CLOUDSTACK-1481 - - - "IPV6 - When Vm is part of 1 dual network and 1 ipv6 network, name resolution using fqdn fails for the ipv6 network. - - - - - CLOUDSTACK-1482 - - - IPV6 - We are not allowed to create a shared IPV6 network with a VLAN which already is associated with a IPV4 network - - - - - CLOUDSTACK-1484 - - - API Throttling : api.throttling.enabled, Global setting missing - - - - - CLOUDSTACK-1485 - - - Add Baremetal Provider back to 4.1 branch - - - - - CLOUDSTACK-1487 - - - cloudstack-setup-agent fails to set private.network.device on KVM host add - - - - - CLOUDSTACK-1488 - - - "Ipv6 - When Vm is deployed as part of multiple networks, one of the IPV6 address assigned to guest VM is lost. - - - - - CLOUDSTACK-1490 - - - 4.1 deb management fails to start due to tomcat dep problem - - - - - CLOUDSTACK-1496 - - - List API Performance: listAccounts failing with OOME for high values of pagesize (>1000) - - - - - CLOUDSTACK-1499 - - - ListAPI Performance for few APIs not as good as it was before API optimization - - - - - CLOUDSTACK-1503 - - - listHypervisor API not getting fired when logged in as User - - - - - CLOUDSTACK-1505 - - - Unknown column 'domain.region_id' in 'field list' - - - - - CLOUDSTACK-1509 - - - Failed to implement network elements and resources while provisioning for persistent network(createVlanIpRange to an account - - - - - CLOUDSTACK-1511 - - - [UI] Instances NIC details does not have Network Name - - - - - CLOUDSTACK-1512 - - - [UI] Wrong message[message.configure.all.traffic.types] when trying to create zone with mulitple physical networks without providing the traffic label - - - - - CLOUDSTACK-1515 - - - None of the cloudstack packges are marked for upgrade when tried to upgrade from.4.0/4.0.1 to 4.1 - - - - - CLOUDSTACK-1516 - - - Create documentation in languages that have translations available - - - - - CLOUDSTACK-1517 - - - Check UI in languages available - - - - - CLOUDSTACK-1521 - - - Redundant router: Services are not stopped when switch to BACKUP state - - - - - CLOUDSTACK-1526 - - - Template registration fails in the VMware Setup - - - - - CLOUDSTACK-1531 - - - vmware create volume from snapshot will missing date - - - - - CLOUDSTACK-1537 - - - Restart network with clean up set to true causes Autoscaled LB rule to get mangled and unusable - - - - - CLOUDSTACK-1541 - - - NPE while deleting snapshot :Unexpected exception while executing org.apache.cloudstack.api.command.user.snapshot.DeleteSnapshotCmd - - - - - CLOUDSTACK-1542 - - - unhandled exception while creating project - - - - - CLOUDSTACK-1544 - - - The description and the response format for the deleteUser command are incorrect - - - - - CLOUDSTACK-1550 - - - createaccountresponse returns more than the user you requested for creation - - - - - CLOUDSTACK-1553 - - - AWS Regions-Not able to list accounts from the 2nd region after user/account/domain details have been manually synced up from first region - - - - - CLOUDSTACK-1555 - - - "AWS Regions - userapikey and usersecretkey parameters are not returned in the response of addRegion, updateRegion listRegion api calls.. - - - - - CLOUDSTACK-1557 - - - EC2 REST API : cloudbridge database is missing on the CloudStack Installation - - - - - CLOUDSTACK-1562 - - - Replace the short-cut solution of supportting @DB with the formal one - - - - - CLOUDSTACK-1565 - - - "Used Master Branch System VM Template: Default Route on the System VMs (SSVM,CPVM and VR) is missing - - - - - CLOUDSTACK-1566 - - - Baremetal API addBaremetalPxePingServer fail to add PXE PING server to deployment causing create instance with PING style image to fail - - - - - CLOUDSTACK-1569 - - - "AWS Regions - Not able to Edit domain/account/user from a region that is not the owner region.""The content of elements must consist of well-formed character data or markup."" - error message presented to the user. - - - - - CLOUDSTACK-1571 - - - "AWS Regions - When deleting domain/account/user from a region that is not the owner, the request is not being forwarded to the owner region. - - - - - CLOUDSTACK-1574 - - - updateResourceCount API is failed saying to specify valida resource type even after parsing the valid resource type - - - - - CLOUDSTACK-1583 - - - AWS Regions - RabbitMQ Server did not recieve any event notification during account creation - - - - - CLOUDSTACK-1587 - - - Basic zone - CPVM fail to go to running state, Exception while trying to start secondary storage vm - - - - - CLOUDSTACK-1588 - - - AWS Regions - When registerUserKeys() is called for a user from a region that is not the owner, it is handled by this region. - - - - - CLOUDSTACK-1600 - - - Typo in dpkg-buildpackage command - - - - - CLOUDSTACK-1604 - - - deploy VM failed when global setting "vm.allocation.algorithm" is set to "userdispersing - - - - - CLOUDSTACK-1615 - - - "VMware Cluster discovery fails with if ESXi version is 5.0 Update 1, build 721882 - - - - - CLOUDSTACK-1620 - - - Cannot provision CentOS 6 VMs on XenServer 6.1 - - - - - CLOUDSTACK-1621 - - - listProjectInvitations fails with NPE for valid request - - - - - CLOUDSTACK-1624 - - - API is not returning response in details:UI is also not returning any output - - - - - CLOUDSTACK-1625 - - - NPE with updateResourceCount when && is passed thru API - - - - - CLOUDSTACK-1630 - - - 4.0.x cloud-aws-api not properly obsoleted - - - - - CLOUDSTACK-1631 - - - 4.1 RPM packaging broken - - - - - CLOUDSTACK-1636 - - - AWS Regions - Remove the concept of having an owner region for domain/account/user objects - - - - - CLOUDSTACK-1642 - - - Add support CentOS 6.4 - - - - - CLOUDSTACK-1648 - - - Unable to add KVM host. - - - - - CLOUDSTACK-1649 - - - vmware vm os type error - - - - - CLOUDSTACK-1651 - - - agent scripts still pointing to /var/log/cloud - - - - - CLOUDSTACK-1656 - - - NicResponses in a UserVmResponse are not preserving the natural order - - - - - CLOUDSTACK-1663 - - - AWS Regions - Events - There are no events being generated when a new domain is added/edited - - - - - CLOUDSTACK-1664 - - - Action Events are not logged due to spring change - - - - - CLOUDSTACK-1665 - - - AWS Regions - Events - There are no events being generated when a new user is added/edited/enabled/deleted/password changes/api & secret keys are generated - - - - - CLOUDSTACK-1666 - - - KVM VPC NetworkUsage does not work - - - - - CLOUDSTACK-1668 - - - IP conflict in VPC tier - - - - - CLOUDSTACK-1671 - - - AWS Regions - Events - Domain Delete event does not include the UUID of the domain that was deleted - - - - - CLOUDSTACK-1674 - - - AWS Regions - Events - Account Deletion event does not include the UUID of the account deleted - - - - - CLOUDSTACK-1681 - - - Upgrade instructions mention incorrect name and description of systemvm-vmware template in registering template section - - - - - CLOUDSTACK-1684 - - - "api.throttling.enabled configuration setting should be set to ""false"" in Config.java - - - - - CLOUDSTACK-1688 - - - AWS Regions - Domain admin user is not able to use getUser() command to fetch user details - - - - - CLOUDSTACK-1690 - - - NPE from API server when starting mgmt server - - - - - CLOUDSTACK-1694 - - - Issues to start/access Management Server after upgrade from 4.0 to 4.1 - - - - - CLOUDSTACK-1697 - - - Six DB tables are not available with upgraded setup(4.0 to 4.1) when compare to 4.1 newly installation - - - - - CLOUDSTACK-1706 - - - Failed to deploy VM with error "cannot find DeployPlannerSelector" - - - - - CLOUDSTACK-1709 - - - AWS Regions - As part of adding a new region, project related entries should not be synced from accounts table. - - - - - CLOUDSTACK-1710 - - - AWS Regions - As part of adding a new region,default_zone_id column for the account entries should not be synced. - - - - - CLOUDSTACK-1711 - - - AWS Regions - Include all the details of the API call made in the Events payload when changes in Admin/Account/User objects are made. - - - - - CLOUDSTACK-1713 - - - EC2 REST API: AWS API Installation Problem - - - - - CLOUDSTACK-1714 - - - Doc section has wrong title: Setting Zone VLAN and Running VM Maximum - - - - - CLOUDSTACK-1715 - - - "Missing ""host"" config setting in docs on management server load balancing - - - - - CLOUDSTACK-1716 - - - "AWS Regions - listRegions(),removeRegions(),updateRegions() should accept UUID value instead of id. - - - - - CLOUDSTACK-1718 - - - AWS Regions - removeRegion() response returns updateregionresponse - - - - - CLOUDSTACK-1719 - - - EC2 REST API: AWS APIs are not getting translated on the CloudStack Management Server - - - - - CLOUDSTACK-1720 - - - Have an upgrade path from 4.0.x to 4.1 and 4.0.x to 4.2.0 - - - - - CLOUDSTACK-1729 - - - Ensure adapter execution order in runtime - - - - - CLOUDSTACK-1733 - - - [ACS41][UI] Add guest network is missing ip range fields and missing network offering - - - - - CLOUDSTACK-1736 - - - Ubuntu 12.04 cloud-setup-management Failed to configure CloudStack Management Server - - - - - CLOUDSTACK-1738 - - - StatsCollector is not running - - - - - CLOUDSTACK-1740 - - - Failed to view console - - - - - CLOUDSTACK-1746 - - - Cloudstack Usage Server won't start - - - - - CLOUDSTACK-1747 - - - "mvn deploydb only creates 4.0 DB, not 4.1 - - - - - CLOUDSTACK-1750 - - - injectkeys script fails on OSX because cp does not have a -b option (backup of destination file - - - - - CLOUDSTACK-1761 - - - Available local storage disk capacity incorrectly reported in KVM to manager - - - - - CLOUDSTACK-1764 - - - ListTemplateCommand failed with java.lang.NumberFormatException and failed to create default template. - - - - - CLOUDSTACK-1772 - - - the change in vnc listening port will cause live migration doesn't work. - - - - - CLOUDSTACK-1773 - - - Disable baremetal functionality - - - - - CLOUDSTACK-1776 - - - NPE on listSecondaryStorageHostsInAllZones in Upgraded setup from 4.0 to 4.1.0 - - - - - CLOUDSTACK-1785 - - - Redundant Router test cases failing during automation run. - - - - - CLOUDSTACK-1789 - - - Unable to download templates to Primary Storage if a host is in maintenance. - - - - - CLOUDSTACK-1791 - - - Volumes with storage tags can't be attached. - - - - - CLOUDSTACK-1792 - - - "AWS Regions - RuntimeException while executing listAccounts(), when the encryption keys are set to different values between regions. - - - - - CLOUDSTACK-1793 - - - L10n docs don't build in chinese, portuguese and japanese - - - - - CLOUDSTACK-1795 - - - Customize AOP to fully support legacy CloudStack @DB and @ActionEvent semantics. - - - - - CLOUDSTACK-1796 - - - Japanese docs don't build. - - - - - CLOUDSTACK-1802 - - - Upgrade 4.0 -> 4.1 - Not able to start management server becasue of missing /etc/cloudstack/management/tomcat6.conf file - - - - - CLOUDSTACK-1804 - - - Upgrade 4.0 -> 4.1 - DB upgrade fails - - - - - CLOUDSTACK-1805 - - - com.mysql.jdbc.exceptions.jdbc4.CommunicationsException seen after long time of inactivity resulting in not being able to log in to the management server - - - - - CLOUDSTACK-1810 - - - listTemplate API with templatefilter=featured|community is not returning any lists - - - - - CLOUDSTACK-1811 - - - "Upgrade 4.0->4.1 - When upgrade scripts fail, component loading continues and management server starts. - - - - - CLOUDSTACK-1812 - - - create physical network fails while creating basic zone - - - - - CLOUDSTACK-1825 - - - EC2 REST API: AWS APIs fail to execute due to BeanCreationException: Error creating bean with name 'SAclDaoImpl' - - - - - CLOUDSTACK-1826 - - - "Storage migration not working, seemingly due to uuid vs id - - - - - CLOUDSTACK-1827 - - - Redundant router - When VR Master was stopped failover to VR Backup did not occur. - - - - - CLOUDSTACK-1834 - - - "Events are not generated for registerUserKeys(), Enabling account and Editing account. - - - - - CLOUDSTACK-1836 - - - License header failures for ja-JP .po translation file - - - - - CLOUDSTACK-1839 - - - Upgrade 4.0 -> 4.1 - Upgraded DB has lot more keys and indexes for many tables compare to the fresh installed 4.1 DB - - - - - CLOUDSTACK-1841 - - - ASF 4.0 to 4.1 Upgrade: Missing Few Global Configuration parameters on the Upgraded Setup. - - - - - CLOUDSTACK-1842 - - - ASF 4.0 to 4.1 Upgrade: Missing Ubuntu 12.04 Guest OS Types on the Upgraded Setup. - - - - - CLOUDSTACK-1844 - - - Upgrade 4.0 -> 4.1 - KVM host agent.properties is not restored as part of upgrading the binaries from 4.0 to 4.1. - - - - - 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-1848 - - - Cloudstack Packages are not got updated with scenario 4.0 to 4.1 upgrade where MS is on Ubuntu 12.04. - - - - - CLOUDSTACK-1856 - - - Upgrade 4.0 -> 4.1 - Fresh install of 4.1 has 3 parameters missing in db.properties compared to an upgraded 4.0 setup - - - - - CLOUDSTACK-1873 - - - "Installation : JasyptPBEStringDecryptionCLI missing, failed to decrypt db password - - - - - CLOUDSTACK-1874 - - - AWS Regions - Account table in cloud_usage DB has region_id - - - - - CLOUDSTACK-1876 - - - External Devices - network offering for external devices is not returned in API listNetworkOfferings when creating instances. - - - - - CLOUDSTACK-1877 - - - Failed to connect to DB while starting Ubuntu management server after upgrading the packages from 4.0 to 4.1.0 - - - - - CLOUDSTACK-1882 - - - “HTTP Status 404 。 The requested resource () is not available. - - - - - CLOUDSTACK-1890 - - - listProjects is not listing state in the response - - - - - CLOUDSTACK-1900 - - - "Upgrade 4.0 -> 4.1, We do not have a copy of db.properties that comes from a 4.1 installation saved anywhere. - - - - - CLOUDSTACK-1929 - - - ASF 4.1 cloudstack agent fail to install in KVM host CENTOS 6.3 OS: qemu-kvm-0.12.1.2-3.295.el6.10.x86_64 requires libusbredirparser.so.0 - - - - - CLOUDSTACK-1934 - - - NPE with listSupportedNetworkServices after upgrade from 4.0 to 4.1 (Ubuntu MS) - - - - - CLOUDSTACK-1935 - - - Cloud utilities are not renamed to Cloudstack after upgrade from 4.0 to 4.1 [Ubutnu MS] - - - - - CLOUDSTACK-1936 - - - On CentOS, after a upgrade from 4.0.1 to 4.1 on a cloud node (cloud-agent), the new cloustack-agent isn't add as a service (chkconfig) - - - - - CLOUDSTACK-1951 - - - centos packaging: cloud-install-sys-tmplt can't find jasypt jar. - - - - - CLOUDSTACK-1971 - - - VM deployed to incorrect primary storage. - - - - - CLOUDSTACK-1972 - - - VM deployed to incorrect primary storage. - - - - - CLOUDSTACK-1978 - - - openvswitch - unable to start console session for SSVM CPVM user VM - - - - - CLOUDSTACK-1980 - - - "[4.1]cloudstack-setup-bridge, cloudstack-setup-encryption & cloudstack-sysvmadm utilities are not available in Ubuntu 12.04 Management Server. - - - - - CLOUDSTACK-1987 - - - Deleted service offerings owned by a domain show up to domain user. - - - - - CLOUDSTACK-1988 - - - AWS API using SOAP client - User Registration fails - - - - - CLOUDSTACK-1989 - - - "Query service offering by ID returns no result, but querying all returns service offering - - - - - CLOUDSTACK-2003 - - - Deleting domain while deleted account is cleaning up leaves VMs expunging forever due to 'Failed to update resource count - - - - - CLOUDSTACK-2007 - - - Release Notes failing to build on jenkins.cs. - - - - - -
-
- Known Issues in 4.1.0 - - - - - - - - Issue ID - - - Description - - - - - - CLOUDSTACK-1747 - mvn deploydb only creates 4.0 DB, not 4.1 - Due to tooling changes between 4.1 and 4.2, CloudStack's database is created using the 4.0 schema and updated to the 4.1 schema when the management server starts for the first time. It's OK to see the same schema if the management server has not started yet. - - - - CLOUDSTACK-1824 - Service CloudStack-Management is being displayed as cloud-management service - Many scripts and text entries have references to cloud-management rather than cloudstack-management due to the changeover between 4.0 and 4.1 to rename services. This is a minor issue and should be corrected by 4.2. - - - - - CLOUDSTACK-1824 - Service CloudStack-Management is being displayed as cloud-management service - - - - - CLOUDSTACK-1510 - - - NPE when primary storage is added with wrong path - - - - - CLOUDSTACK-1428 - - - [UI] Instance which are created without display name are not visible when added to LB - - - - - CLOUDSTACK-1306 - - - Better Error message when trying to deploy Vm by passing static Ipv4 addresses that are assigned to another VM/IP4 address is outside the iprange. - - - - - CLOUDSTACK-1236 - - - Warning while adding Xen 6.1 host [Unable to create local link network] - - - - - CLOUDSTACK-969 - - - api: zone response lists vlan in it as "vlan range of zone" but the vlan belongs to physical network - - - - - CLOUDSTACK-963 - - - [cloud.utils.AnnotationHelper] class java.lang.Stringdoes not have a Table annotation - - - - - CLOUDSTACK-458 - - - xen:snapshots:Storage gc fail to clean the failed snapshot images from secondarystorage - - - - - CLOUDSTACK-315 - - - Infrastructure view does not show capacity values - - - - - CLOUDSTACK-300 - - - Creation of compute offering allow combination of local storage + HA - - - - - CLOUDSTACK-282 - - - Virtual Routers do not properly resolve DNS SRV Records - - - - - CLOUDSTACK-276 - - - SSVM ID is exposed in the Error Message thrown by AddTrafficType API - - - - - CLOUDSTACK-270 - - - Ui should not ask for a vlan range if the physical network isolation type is not VLAN - - - - - CLOUDSTACK-245 - - - VPC ACLs are not stored and programmed consistently - - - - - CLOUDSTACK-231 - - - Tag creation using special charecters - - - - - CLOUDSTACK-124 - - - NetworkGarbageCollector not cleaning up networks - - - - - CLOUDSTACK-62 - - - console proxy does not support any keymaps besides us, jp - - - - - -
-
- - Upgrade Instructions - This section contains upgrade instructions from prior versions of CloudStack to Apache CloudStack 4.1.0. We include instructions on upgrading to Apache CloudStack from pre-Apache versions of Citrix CloudStack (last version prior to Apache is 3.0.2) and from the releases made while CloudStack was in the Apache Incubator. - If you run into any issues during upgrades, please feel free to ask questions on users@apache.cloudstack.org or dev@apache.cloudstack.org. -
- Upgrade from 4.0.x to 4.1.0 - This section will guide you from &PRODUCT; 4.0.x versions to &PRODUCT; 4.1.0. - Any steps that are hypervisor-specific will be called out with a note. - Package Structure Changes - The package structure for &PRODUCT; has changed significantly since the 4.0.x releases. If you've compiled your own packages, you'll notice that the package names and the number of packages has changed. This is not a bug. - However, this does mean that the procedure is not as simple as an apt-get upgrade or yum update, so please follow this section carefully. - - We recommend reading through this section once or twice before beginning your upgrade procedure, and working through it on a test system before working on a production system. - - - Most users of &PRODUCT; manage the installation and upgrades of &PRODUCT; with one of Linux's predominant package systems, RPM or APT. This guide assumes you'll be using RPM and Yum (for Red Hat Enterprise Linux or CentOS), or APT and Debian packages (for Ubuntu). - Create RPM or Debian packages (as appropriate) and a repository from the 4.1.0 source, or check the Apache CloudStack downloads page at http://cloudstack.apache.org/downloads.html for package repositories supplied by community members. You will need them for step or step . - Instructions for creating packages from the &PRODUCT; source are in the Installation Guide. - - - Stop your management server or servers. Run this on all management server hosts: - # service cloud-management stop - - - If you are running a usage server or usage servers, stop those as well: - # service cloud-usage stop - - - Make a backup of your MySQL database. If you run into any issues or need to roll back the upgrade, this will assist in debugging or restoring your existing environment. You'll be prompted for your password. - # mysqldump -u root -p cloud > cloudstack-backup.sql - - - Whether you're upgrading a Red Hat/CentOS based system or Ubuntu based system, you're going to need to stop the CloudStack management server before proceeding. - # service cloud-management stop - - - If you have made changes to /etc/cloud/management/components.xml, you'll need to carry these over manually to the new file, /etc/cloudstack/management/componentContext.xml. This is not done automatically. (If you're unsure, we recommend making a backup of the original components.xml to be on the safe side. - - - If you are using Ubuntu, follow this procedure to upgrade your packages. If not, skip to step . - Community Packages - This section assumes you're using the community supplied packages for &PRODUCT;. If you've created your own packages and APT repository, substitute your own URL for the ones used in these examples. - - - - The first order of business will be to change the sources list for each system with &PRODUCT; packages. This means all management servers, and any hosts that have the KVM agent. (No changes should be necessary for hosts that are running VMware or Xen.) - Start by opening /etc/apt/sources.list.d/cloudstack.list on any systems that have &PRODUCT; packages installed. - This file should have one line, which contains: - deb http://cloudstack.apt-get.eu/ubuntu precise 4.0 - We'll change it to point to the new package repository: - deb http://cloudstack.apt-get.eu/ubuntu precise 4.1 - If you're using your own package repository, change this line to read as appropriate for your 4.1.0 repository. - - - Now update your apt package list: - $ sudo apt-get update - - - Now that you have the repository configured, it's time to install the cloudstack-management package. This will pull in any other dependencies you need. - $ sudo apt-get install cloudstack-management - - - You will need to manually install the cloudstack-agent package: - $ sudo apt-get install cloudstack-agent - During the installation of cloudstack-agent, APT will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent. - When prompted whether you wish to keep your configuration, say Yes. - - - Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads: - paths.script=/usr/share/cloudstack-common - If not, add the line. - - - Restart the agent: - + + + + Welcome to &PRODUCT; 4.1 + Welcome to the 4.1.0 release of &PRODUCT;, the first major release from the Apache + CloudStack project since its graduation from the Apache Incubator. + This document contains information specific to this release of &PRODUCT;, including + upgrade instructions from prior releases, new features added to &PRODUCT;, API changes, and + issues fixed in the release. For installation instructions, please see the Installation Guide. For usage and administration instructions, please see the + &PRODUCT; Administrator's Guide. Developers and users who wish to work with the API + will find instruction in the &PRODUCT; API Developer's Guide + If you find any errors or problems in this guide, please see . We hope you enjoy + working with &PRODUCT;! + + + Version 4.1.0 +
+ What’s New in 4.1 + Apache CloudStack 4.1.0 includes many new features. This section covers the most + prominent new features and changes. +
+ Localization + The 4.1.0 release adds partial User Interface (UI) support for Catalan, Chinese, + French, German, Italian, Japanese, Korean, Norwegian, Portuguese, Russian, and Spanish. + Not all languages are complete. + The 4.1.0 release also adds documentation translations for Chinese, Chinese (Taiwan), + Italian, Japanese, Korean, and Portuguese. +
+
+ Added Region Support + CLOUDSTACK-241: This feature adds a "region" construct that spans several + management servers. The objective of this feature is to add AWS EC2 like Regions + implementation into CloudStack. Regions are dispersed and located in separate geographic + areas. Availability Zones (or Zones in CloudStack) are distinct locations within a Region + that are engineered to be isolated from failures in other Zones and provide inexpensive, + low latency network connectivity to other Zones in the same Region. + Regions are expected to add the following benefits + + + Higher availability of the services: users can deploy services across AZs and even + if one of the AZ goes down the services are still available to the end-user through + VMs deployed in other zones. + + + Higher availability of the Management Server (MS): Since each MS Cluster only + manages a single Region, if that MS Cluster goes down, only that particular Region is + impacted. Admin should be able to access all the other Regions. + + + Scalability: The scalability limit of CloudStack dramatically improves, as the + scalability limit of MS Cluster is limited to a single Region. + + + Object Store: With Regions construct, CloudStack would also allow users to define + Object Store (Secondary Storage) across AZs. This helps users easily deploy VMs in + different AZs using the same template, offerings. + + + Geographical Grouping: Regions allow admins to group AZs (that have low latency + and are geographically located nearby) into a broader region construct. + + + Currently the Region feature is exposed in the API, but does not have a UI + component. +
+
+ Support for EC2 Query API + CLOUDSTACK-197: This introduces a query API for the AWS APIs that are currently + only supported by SOAP. The AWS Java SDK and AWS PHP SDK should now be supported by the + AWSAPI in CloudStack. + Supported Query APIs in 4.1.0: + + + AllocateAddress + + + AssociateAddress + + + AttachVolume + + + AuthorizeSecurityGroupIngress + + + CreateImage + + + CreateKeyPair + + + CreateSecurityGroup + + + CreateSnapshot + + + CreateTags + + + CreateVolume + + + DeleteKeyPair + + + DeleteSecurityGroup + + + DeleteSnapshot + + + DeleteTags + + + DeleteVolume + + + DeregisterImage + + + DescribeAddresses + + + DescribeAvailabilityZones + + + DescribeImageAttribute + + + DescribeImages + + + DescribeInstanceAttribute + + + DescribeInstances + + + DescribeKeyPairs + + + DescribeSecurityGroups + + + DescribeSnapshots + + + DescribeTags + + + DescribeVolumes + + + DetachVolume + + + DisassociateAddress + + + GetPasswordData + + + ImportkeyPair + + + ModifyImageAttribute + + + RebootInstances + + + RegisterImage + + + ReleaseAddress + + + ResetImageAttribute + + + RevokeSecurityGroupIngress + + + RunInstances + + + StartInstances + + + StopInstances + + + TerminateInstances + + + See the Feature Specification for more information on the Query API support. +
+
+ Auto-Completing Shell for CloudStack (CloudMonkey) + CLOUDSTACK-132: Adds a auto-completing shell and command-line tool for + &PRODUCT; written in Python, called CloudMonkey. + CloudMonkey includes the following features: + + + Usable as a command line tool and interactive shell. + + + All commands are lowercase unlike API. + + + Api Discovery using sync feature, with build time api precaching for failsafe + sync. + + + Raw api execution support. + + + Auto-completion via double tab. + + + Reverse search using Ctrl+R + + + Emacs compatible key bindings. + + + Output that's "pipeable" to other *nix programs. + + + Unix shell execution. + + + Support to handle asynchronous jobs using user defined blocking or non-blocking + way. + + + Tabular or JSON output with filtering of table columns. + + + Colored output. + + + API parameter value completion (based on predication, fuzzy results may fail + sometimes). + + + CloudMonkey has a few requirements above and beyond CloudStack, and does not need to + be run on the same machine as a management server. If you wish to run + CloudMonkey you'll need Python 2.5 or later, + readline, Pygments, and + prettytable. CloudMonkey can be installed with + pip: + $ pip install cloudmonkey + See the Developer's Guide and the CloudStack + wiki for the latest information on CloudMonkey + installation and use. +
+
+ API Discovery Service + CLOUDSTACK-926: CloudStack has more than 300 APIs and more are added in each + major release. CloudStack admins can enable or disable APIs, or add plugins which provide + more APIs. The API Discovery Service is a plugin which will help users discover the APIs + available to them on a CloudStack Management Server. + The discovery service implements a method called listApis which + will return information about APIs for a user. It currently accepts an apiName to list api + information of that particular API. The method ensures that user can only list APIs they + are entitled to. + All CloudStack APIs are implemented by annotated command class and PluggableService is + a contract implemented by all the components such as the Management Server and all the + plugins which provide an API. During load time, API discovery service asks all the + pluggable services to return list of API cmd classes from whose fields and annotations it + gathers information about each API, the information consists of name, description, + parameter name, parameter description, etc. + For more information on the implementation of the API Discovery Service for 4.1.0, see + the CloudStack + wiki. +
+
+ Events Framework + CLOUDSTACK-820: The Events Framework provides a mechanism to publish and + subscribe to events in &PRODUCT;. +
+
+ Additional VMX Settings + ### +
+
+ L3 Router Functionality in Nicira Nvp Plugin + ### +
+
+ Persistent Networks without Running VM + ### +
+
+ Add/Remove Network on VM + ### +
+
+ Resize Volumes Feature + ### +
+
+ Autoscale + ### +
+
+ API Request Throttling + CLOUDSTACK-618: Limits the number of API requests per second that can be placed + against a management server to avoid DoS attacks via API requests. + The throttling is controlled by the api.throttling.enabled, + api.throttling.interval, and api.throttling.max + configuration settings. Note that api.throttling.enabled is set to + false by default. +
+
+ S3 Backed Secondary Storage + CLOUDSTACK-509: This enhancement backs NFS secondary storage with an + S3-compatible object store. Periodically, a reaper thread synchronizes the templates, + ISOs, and snapshots stored on a NFS secondary storage mount with a configured S3 object + store. In addition to permitting the use of commodity or IaaS storage solutions for static + assets, it provides a means of automatically synchronizing template and ISO assets across + multiple zones. + See the &PRODUCT; + wiki for more information on this feature, currently the documentation is + incomplete. +
+
+ User and Domain Admin Can Create API Key and Secret + CLOUDSTACK-437: This feature adds the ability for domain admins and users to + create their own API Key and Secret. Domain admins can create keys for themselves, + subdomain admins, and for regular users, but not for other domain admins. +
+
+ Support Inline Mode for F5 and SRX + CLOUDSTACK-306: For &PRODUCT; deployments using the Juniper SRX (firewall) and + F5 Big IP (load balancer), &PRODUCT; 4.1.0 supports putting the firewall in front of the + load balancer, making the firewall device the gateway and putting the load balancer behind + the public network. +
+
+ Egress Firewall Rules for Guest Networks + CLOUDSTACK-299: This feature allows users to create egress (exit) traffic rules + from private networks to public networks (e.g. from your internal + network to the public Internet). By default all traffic is blocked from internal networks + to the public networks, this allows you to open ports as necessary. + Egress traffic rules are suppored only on virtual routers at this time, physical + devices are not supported. +
+
+ Reset SSH Key to Access VM + CLOUDSTACK-297: &PRODUCT; 4.1.0 introduces a new API + resetSSHKeyForVirtualMachine, that can allow them to set or reset the + SSH keypair assigned to a virtual machine. +
+
+
+ Issues Fixed in 4.1.0 + Apache CloudStack uses Jira to track its issues. All new features and bugs for 4.1.0 have been tracked + in Jira, and have a standard naming convention of "CLOUDSTACK-NNNN" where "NNNN" is the + issue number. + This section includes a summary of known issues against 4.0.0 that were fixed in 4.1.0. + Approximately 470 bugs were resolved or closed in the 4.1.0 cycle. + + + + + + + + Defect + + + Description + + + + + + + CLOUDSTACK-46 + + + Remnants of mycloud remain. + + + + + CLOUDSTACK-70 + + + Improve Network Restart Behaviour for Basic Zone: Restarting Network + Fail + + + + + CLOUDSTACK-94 + + + "API command, listIsos documentation clarity + + + + + CLOUDSTACK-95 + + + IP address allocation not working when a user tries to allocate IP addresses + in a Project + + + + + CLOUDSTACK-97 + + + Vmware network labels are ignored when creating a Zone using basic + networking + + + + + CLOUDSTACK-108 + + + VM should not be allowed to be deployed on two Isolated Networks of an Account + that were created from DefaultNetworkOfferingwithSourceNATService + + + + + CLOUDSTACK-118 + + + Status of host resorce stuck in "ErrorInMaintenance" + + + + + CLOUDSTACK-119 + + + Move Agent-Simulator in to the hypervisor plugin model + + + + + CLOUDSTACK-130 + + + Clarify docs on tags parameter in API reference + + + + + CLOUDSTACK-152 + + + Routes on the User VM are programmed incorrectly on a VM present on both + Isolated and Shared Guest Network + + + + + CLOUDSTACK-178 + + + Expose name parameter of VM in list Vm view. + + + + + CLOUDSTACK-198 + + + vpn:failto add VPN Users deletes all the existing Vpn user + + + + + CLOUDSTACK-222 + + + Admin UI prompts to restart Management server with cancel edit + operation + + + + + CLOUDSTACK-225 + + + API Docs: Request params repeated with different description + + + + + 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-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-228 + + + UI provides an option to reconnect a disconnected host - ServerApiException is + thrown on an attempt + + + + + CLOUDSTACK-232 + + + Zone infrastructure chart -- disable resource total display + + + + + CLOUDSTACK-235 + + + Network rate can be set in 2 places. Clarify docs on how this works + + + + + CLOUDSTACK-249 + + + Add host id to failed VM deploy alerts + + + + + CLOUDSTACK-250 + + + Incorrect description of maintenance mode in admin guide + + + + + CLOUDSTACK-256 + + + "vpn:As an admin user, not able to delete VPN user which is present in a + regular user's network. + + + + + CLOUDSTACK-271 + + + updatePhysicalNetwork dies with an NPE when the vlan range is empty + + + + + CLOUDSTACK-274 + + + Two error codes mapped to same value in API + + + + + CLOUDSTACK-275 + + + hostid not always a UUID + + + + + CLOUDSTACK-277 + + + Message during CloudStack management server Installation: cannot access + /usr/share/cloud/bridge/lib: No such file or directory + + + + + CLOUDSTACK-279 + + + deleteProject fails when executed by the regular user (works fine for + root/domain admin) + + + + + CLOUDSTACK-284 + + + listVirtualMachines does not return deleted machines when zone is + specified + + + + + CLOUDSTACK-290 + + + 3.0.0 template also needed for 2.2.14 to 3.0.5 direct upgrade. + + + + + CLOUDSTACK-293 + + + "We do awful, hacky things in our spec file for client" + + + + + CLOUDSTACK-304 + + + Add synchronization for createSnapshot command per host basis + + + + + CLOUDSTACK-309 + + + iptables rules being deleted from wrong VM after a migration + + + + + CLOUDSTACK-318 + + + Adding XenServer Host Fails - 6.0.2 fails with 4.0.0 + + + + + CLOUDSTACK-320 + + + "sessionKey query parameter should be case-insensitive, now only sessionkey is + accepted" + + + + + CLOUDSTACK-322 + + + During upgrade displays error - a foreign key constraint fails + (`cloud/#sql-f34_6e`.. + + + + + 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-333 + + + When Datacenter name in VCenter has spaces Primary Storage (VMFS) discovery + will fail + + + + + CLOUDSTACK-335 + + + KVM VPC load balancer not working + + + + + CLOUDSTACK-336 + + + listZones doesn't honour paging + + + + + CLOUDSTACK-343 + + + "Document what tools and packages are required to build, package and install + CloudStack 4.0 + + + + + CLOUDSTACK-346 + + + Cannot add Vmware cluster with class loader conflict exception + + + + + CLOUDSTACK-347 + + + listNetworks API: return vlan information only when the caller is ROOT + admin + + + + + CLOUDSTACK-348 + + + deleteNetwork does not clean up network resource count correctly + + + + + CLOUDSTACK-354 + + + Display of storage statistics is wrong + + + + + CLOUDSTACK-355 + + + "Fix ""count"" in a bunch of API commands + + + + + CLOUDSTACK-357 + + + "ISOs can be deleted while still attached to a running VM, and they + subsequently cannot be detached from a running VM + + + + + CLOUDSTACK-359 + + + PropagateResourceEventCommand failes in cluster configuration + + + + + CLOUDSTACK-361 + + + Wrong creation of guest networks on a KVM host in Multiple Physical Networks + with guest traffic + + + + + CLOUDSTACK-364 + + + Docs point to download.cloud.com for AWS API script + + + + + CLOUDSTACK-368 + + + OVM - cannot create guest VM + + + + + CLOUDSTACK-369 + + + ASF 4.0 - unable to support XenServer 6.1 host + + + + + CLOUDSTACK-373 + + + "static NAT and Firewall is not working on external firewall device SRX, it + needs to be implemented + + + + + CLOUDSTACK-377 + + + provide deployment config access to marvin's testcase + + + + + CLOUDSTACK-378 + + + mavenize marvin on master + + + + + CLOUDSTACK-390 + + + Install Guide: Section 4.5.7 (Prepare the System VM Template): Links go to + cloud.com + + + + + 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-404 + + + Update docs on the usage of cloud-setup-database + + + + + CLOUDSTACK-412 + + + Data truncation: Out of range value for column 'ram' at row + + + + + CLOUDSTACK-415 + + + restartNetwork call causes VM to be unreachable when Nicira based SDN is + used + + + + + CLOUDSTACK-416 + + + XCP 1.6beta2 (61002c) - can't add a host + + + + + CLOUDSTACK-417 + + + Handle password server securely to run on port 8080 on VR + + + + + CLOUDSTACK-424 + + + Updated userdata not propagating to the VR + + + + + CLOUDSTACK-427 + + + Change hardcoded step number references to dynamic link + + + + + CLOUDSTACK-428 + + + Storage capacity shown in UI is incorrect + + + + + CLOUDSTACK-435 + + + Vmware network labels are ignored when creating a Zone using basic + networking + + + + + CLOUDSTACK-441 + + + Running mgmt server using jetty fails to start api server + + + + + CLOUDSTACK-446 + + + "Host going to alert state, if you are adding already added host + + + + + CLOUDSTACK-448 + + + SSVM bootstrap failure on XenServer hosts with E3 CPU + + + + + CLOUDSTACK-456 + + + License tag in SPEC isn't what RPM is expecting + + + + + 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-462 + + + A few corrections to make to the 4.0.0 installation guide + + + + + CLOUDSTACK-464 + + + "Regression in AWSAPI docs, entire sections removed + + + + + CLOUDSTACK-465 + + + French language file quotes are dropping javascript syntax error + + + + + CLOUDSTACK-467 + + + Developer's Guide points to cloud.com for API reference + + + + + CLOUDSTACK-479 + + + UpdateVirtualMachine api fails to propagate userdata to domr + + + + + CLOUDSTACK-481 + + + Installation Guide Doc Error + + + + + CLOUDSTACK-493 + + + 2.2.x-3.0 DB upgrade support for Advance SG enabled network + + + + + CLOUDSTACK-499 + + + cloudmonkey CLI can't accept complex parameter + + + + + CLOUDSTACK-500 + + + Passwd-server iptables rules are dropped on domr on fresh start or on + reboot. + + + + + CLOUDSTACK-501 + + + Apidocs and marvin does not know how to handle Autoscaling docs. + + + + + CLOUDSTACK-504 + + + Duplicate guest password scripts in codebase. + + + + + CLOUDSTACK-507 + + + fix api docs for listSSHKeyPair + + + + + CLOUDSTACK-508 + + + CLVM copies template to primary storage unnecessarily. + + + + + CLOUDSTACK-510 + + + Add button not visible when adding public IPs to physical network. + + + + + CLOUDSTACK-514 + + + Marvin and Cloudmonkey don't work when an API target uses https or an + alternate path. + + + + + CLOUDSTACK-518 + + + API refactoring -- change @Parameter annotation and remove the @IdentityMapper + annotation. + + + + + CLOUDSTACK-520 + + + Dependency jar names mismatch with install-non-oss.sh + + + + + CLOUDSTACK-521 + + + Build will hung up when doing test for TestAgentShell + + + + + CLOUDSTACK-522 + + + Log requests in cloudmonkey's log file. + + + + + CLOUDSTACK-527 + + + List API performance optimization by using DB views and removing UUID + conversion. + + + + + CLOUDSTACK-534 + + + Failed to add host + + + + + CLOUDSTACK-536 + + + remove citrix cloudpatform from 4.0 build - CloudStack is ASF project. + + + + + CLOUDSTACK-539 + + + Cropped Text in UI under Quick View. + + + + + 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-553 + + + "SRX - When adding SRX device make "Public Network" - default to "untrusted" + and "Private Network" - default to "trusted" as un-editable fields. + + + + + CLOUDSTACK-556 + + + Erratic window behavior in Quick View tooltip. + + + + + CLOUDSTACK-559 + + + source code import problem + + + + + CLOUDSTACK-560 + + + Usage server doesn't work in 4.0.0 due to missing db changes + + + + + CLOUDSTACK-572 + + + SG Enabled Advanced Zone - Not able to deploy a VM in an account specific + shared network + + + + + 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-578 + + + The already deleted same hostname is not deleted from /etc/hosts of + vRouter + + + + + CLOUDSTACK-584 + + + "typos in + ""Apache_CloudStack-4.0.0-incubating-CloudStack_Nicira_NVP_Guide-en-US"" + + + + + CLOUDSTACK-590 + + + Incorrect Network Gateways Assigned to System VM + + + + + CLOUDSTACK-592 + + + "API bloat, unknown apis cmd classes + + + + + CLOUDSTACK-593 + + + "2 guest network, auto create vlan error + + + + + CLOUDSTACK-596 + + + DeployVM command takes a lot of time to return job id. + + + + + CLOUDSTACK-599 + + + DhcpEntryCommand fails on Router VM on CS4.0 and vSphere5 with Advanced + Network Zone. + + + + + CLOUDSTACK-600 + + + When rebooting KVM local storage VM host, libvirt definitions deleted + + + + + CLOUDSTACK-605 + + + Host physical CPU is incorrectly calculated for Vmware host + + + + + CLOUDSTACK-606 + + + Starting VM fails with 'ConcurrentOperationException' in a clustered MS + scenario + + + + + CLOUDSTACK-614 + + + "ListTemplates API is not returning ""Enable SSH Key"" attribute for any given + template + + + + + CLOUDSTACK-617 + + + Unable to edit a Sub domain + + + + + CLOUDSTACK-639 + + + API Refactoring: Adapters for ACL + + + + + CLOUDSTACK-648 + + + The normal users could change their own login password. + + + + + CLOUDSTACK-660 + + + Network Traffic Labels are not functional in Marvin + + + + + CLOUDSTACK-683 + + + Image Is Missing in the Accessing VM Section + + + + + CLOUDSTACK-689 + + + RVR: Stop pending flag is not cleared when user start the disconnected router + from another host + + + + + CLOUDSTACK-691 + + + A warning dialog box shows after reloading the welcome page. + + + + + CLOUDSTACK-693 + + + Adding a VPC virtual router to a NiciraNVP enabled network fails. + + + + + CLOUDSTACK-694 + + + "Create a new VPC network offering with "connectivity" option needed for SDN + networking) is not allowed / VPC support for SDN networks + + + + + CLOUDSTACK-717 + + + cloudmonkey fails to parse/print response. + + + + + CLOUDSTACK-720 + + + Fail to load a png image when accessing the web console. + + + + + CLOUDSTACK-721 + + + Bytes sent/received in user statistics is empty (CloudStack 4.0) + + + + + CLOUDSTACK-725 + + + UI: Error when the Egress rules tab is selected for a network. + + + + + CLOUDSTACK-734 + + + api_refactoring: CreateAccountCmd fails to send response due to NPE in service + layer + + + + + CLOUDSTACK-735 + + + Integration smoke tests: Fix expunge vm test on api_refactoring + + + + + CLOUDSTACK-736 + + + Integration smoke tests: Fix check for vm name for the deployvm smoke + test. + + + + + CLOUDSTACK-793 + + + "Create cloudmonkey-helper, a plugin that helps autodiscover and sync api info + via an api over some endpoint + + + + + CLOUDSTACK-798 + + + Move usage related cmd classes from cloud-server to cloud-api + + + + + CLOUDSTACK-799 + + + [Load Test] Check router statistics falls behind in gathering stats by more + than 2 times the set value + + + + + CLOUDSTACK-819 + + + Create Account/User API logging password in access log + + + + + 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-870 + + + Client UI: Wrong character encoding for some language + + + + + CLOUDSTACK-928 + + + [Simulator] Latency for Agent Commands - change unit of wait from seconds to + milliseconds + + + + + CLOUDSTACK-938 + + + s2s VPN trouble + + + + + CLOUDSTACK-959 + + + Missing sub-sections in document section System Service Offering + + + + + CLOUDSTACK-968 + + + marvin: vlan should be an attribute of the physical_network and not the + zone + + + + + CLOUDSTACK-977 + + + Document how to use openvswitch with KVM hypervisor + + + + + CLOUDSTACK-978 + + + TypeError: instance.displayname is undefined while adding VM's to the LB + rule + + + + + CLOUDSTACK-985 + + + Different MAC address for RvR caused issue in short term network outage + + + + + CLOUDSTACK-987 + + + Sections missing in Working With Snapshots + + + + + CLOUDSTACK-993 + + + "admin"" user is not getting created when management server is started. + + + + + CLOUDSTACK-995 + + + Not able to add the KVM host + + + + + CLOUDSTACK-1002 + + + Not able to start VM + + + + + CLOUDSTACK-1006 + + + need to disable service libvirt-guests in CentOS packaging RPMs, or in + installation docs + + + + + CLOUDSTACK-1008 + + + "Egress"" tab should not be presented in the UI for Shared Networks + + + + + CLOUDSTACK-1010 + + + Host count and Secondary storage count always shows 1 in UI + + + + + CLOUDSTACK-1011 + + + KVM host getting disconnected in cluster environment + + + + + CLOUDSTACK-1013 + + + running cloudstack overwrites default public/private ssh key + + + + + CLOUDSTACK-1014 + + + Merge ManagementServer and ManagementServerEx + + + + + CLOUDSTACK-1016 + + + Not able to deploy VM + + + + + CLOUDSTACK-1021 + + + the vlan is not creat to right nic. when i creat multi guest network + + + + + CLOUDSTACK-1024 + + + Regression: Unable to add Xenserver host with latest build. + + + + + CLOUDSTACK-1027 + + + "Update SSL certificate" button should properly reflect its + functionality + + + + + CLOUDSTACK-1029 + + + Enter the token to specified project is malfunctioned + + + + + CLOUDSTACK-1037 + + + "Make cloudmonkey awesome-er: Online help docs and api discovery, better + colored output, parameter value autocompletion + + + + + CLOUDSTACK-1050 + + + No Documentation on Adding a Load Balancer Rule + + + + + CLOUDSTACK-1051 + + + API dispatcher unable to find objectVO corresponding to + DeleteTemplatecmd + + + + + CLOUDSTACK-1055 + + + "The overlay still exists when the ""Recurring Snapshots"" dialog is canceled + by pressing esc key. + + + + + CLOUDSTACK-1056 + + + S3 secondary storage fails to upload systemvm template due to KVMHA + directory + + + + + CLOUDSTACK-1057 + + + regression of changeServiceForVirtualMachine API - fails to find service + offering by serviceOfferingId parameter + + + + + 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-1064 + + + A type error occurs when trying to add account/register template... + + + + + CLOUDSTACK-1068 + + + Names in VR list is useless + + + + + CLOUDSTACK-1070 + + + javelin: NPE on executing registerIso API + + + + + CLOUDSTACK-1071 + + + Netscaler element is not getting loaded as part of LoadBalancing Service + Providers + + + + + CLOUDSTACK-1078 + + + Not able to start System Vms on Rhel 6.3 KVM host + + + + + CLOUDSTACK-1079 + + + Deploying AWSAPI with mvn -pl :cloud-awsapi jetty:run fail + + + + + CLOUDSTACK-1082 + + + UI doesn't throw any error message when trying to delete ip range from a + network that is in use. + + + + + CLOUDSTACK-1083 + + + listUsageRecords api: removed project results in NPE + + + + + CLOUDSTACK-1087 + + + Update the Developer Guide for ASFCS 4.1 Release + + + + + CLOUDSTACK-1088 + + + EnableStaticNat error will clear the data in database + + + + + CLOUDSTACK-1094 + + + Ipv6 - hostname/hostname --fqdn does not return the name of the VM. But i am + able to reach the Vm using their names + + + + + CLOUDSTACK-1095 + + + Ipv6 - dhclient command needs to be run manually on the Vms to get the Ipv6 + address + + + + + CLOUDSTACK-1100 + + + Expunge thread is not kicked off based on global configuration if the global + setting is less than 60 seconds + + + + + CLOUDSTACK-1103 + + + "IpV6 - listNetwork() command does not retrun gateway,netmask,cidr + + + + + CLOUDSTACK-1104 + + + Ipv6 - listVlanIpRanges() returns error 530 + + + + + CLOUDSTACK-1105 + + + "IpV6 - listVirtualMachines() does not return netmask, + gateway,ipaddress. + + + + + CLOUDSTACK-1107 + + + Ipv6 - Unable to extend Ip range for a Ipv6 network using craeteVlanIpRange() + command - Error code 530 returned + + + + + CLOUDSTACK-1108 + + + Ipv6 - Not able to restart Networks + + + + + CLOUDSTACK-1109 + + + "Ipv6 - Unable to expunge User Vms that are "Destroyed". + + + + + CLOUDSTACK-1111 + + + Ipv6 - listRouters() does not return guestipaddress/ + + + + + CLOUDSTACK-1112 + + + "Errors in "Prepare the System VM Template" + + + + + CLOUDSTACK-1113 + + + "Ipv6 - Not able to deploy a new VM in this network because of "Unable to + allocate Unique Ipv6 address" + + + + + CLOUDSTACK-1114 + + + unable to execute listegressfirewallrules API due invalid value id + + + + + CLOUDSTACK-1115 + + + In multiple shared network unable to login with default nic - KVM + + + + + CLOUDSTACK-1123 + + + ListStoragePools API broken by refactor + + + + + CLOUDSTACK-1138 + + + "Providing invalid values for gateway, netmask etc in the zoneWizard blocks + the VLAN container to load, throwing an error + + + + + CLOUDSTACK-1139 + + + "After the Vm is "Expunged" we see the entry still being present in the router + in /etc/dhcphosts.txt + + + + + CLOUDSTACK-1141 + + + "Ipv6 - After network restart (and reboot router), we do not see the existing + vms dnsentries not being programmed in the router. + + + + + CLOUDSTACK-1152 + + + Missing tag in host-add.xml + + + + + CLOUDSTACK-1153 + + + "Ipv6 - Vm deployment fails with "n must be positive" error. + + + + + CLOUDSTACK-1154 + + + Account/Users related API failed due to RegionService inject exception. + + + + + CLOUDSTACK-1157 + + + No API Documentation on Listing Custom User Templates Using CS4 API + + + + + CLOUDSTACK-1160 + + + References to version=3.0.3|4|5|6 in API classes needs to be removed. + + + + + CLOUDSTACK-1161 + + + Differences between 4.1 and master in + ongoing-config-of-external-firewalls-lb.xml + + + + + CLOUDSTACK-1163 + + + Failed with NPE while creating firewall rule + + + + + CLOUDSTACK-1168 + + + Create firewall rule broke + + + + + CLOUDSTACK-1173 + + + ConsoleProxyResource instantiation exception. + + + + + CLOUDSTACK-1174 + + + Snapshots related SQL error. + + + + + CLOUDSTACK-1176 + + + Issue with snapshots(create/list) + + + + + CLOUDSTACK-1181 + + + mvn deploy db failing with NPE + + + + + CLOUDSTACK-1190 + + + Make APIChecker interface throw a single sensible exception. + + + + + CLOUDSTACK-1200 + + + "Unknown column 'vm_instance.disk_offering_id' in table vm_instance, db + exception shown in MS log + + + + + CLOUDSTACK-1201 + + + "Failed to create ssh key for user "cloud" + /var/lib/cloud/management/.ssh/id_rsa and failed to start management server + + + + + CLOUDSTACK-1202 + + + Fail to install KVM cloud-agent. + + + + + CLOUDSTACK-1203 + + + Fail to create advance zone with SG enabled when UI allows SG enabled + option. + + + + + CLOUDSTACK-1204 + + + Fail to create advance zone due to fail to add host + + + + + CLOUDSTACK-1205 + + + Ipv6 - Ubuntu 12.10 guest Vms loses 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-1206 + + + Failure in Copy of System template + + + + + CLOUDSTACK-1210 + + + Make all pluggable services return list of api cmd classes + + + + + CLOUDSTACK-1216 + + + UUID is null for admin and failed to register user key with 4.0 + + + + + CLOUDSTACK-1218 + + + "IPv6: Shared Network - After network restart with clean option, router is + assigned a different address. Name resolution for the existing guest Vms in the + network fails. + + + + + 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-1220 + + + Ipv6 - Better error message when deploy Vm fails to get a free Ip + address + + + + + CLOUDSTACK-1222 + + + API rate limit configs: removed double quote in upgrade script + + + + + CLOUDSTACK-1223 + + + Exception while starting jetty server: + org.springframework.beans.factory.BeanCreationException Error creating bean with + name 'apiServer' + + + + + CLOUDSTACK-1224 + + + Volume snapshot creation failing + + + + + CLOUDSTACK-1226 + + + Error while running Cloudstack-setup-database + + + + + CLOUDSTACK-1228 + + + Unable to Create System Vm's in the VMware Hypervisor setup + + + + + CLOUDSTACK-1229 + + + Incorrect SQL syntax to insert api limit related configuration items in + upgrade path script. + + + + + CLOUDSTACK-1231 + + + cloud-install-sys-tmplt failed due to missing path + + + + + CLOUDSTACK-1232 + + + "Ipv6 - Guest Vms are not able to get Ipaddress when executing dhclient + command when using ""/96"" network. + + + + + CLOUDSTACK-1233 + + + Veewee configuration files are inappropriately identified as ASLv2 licensed + file + + + + + CLOUDSTACK-1234 + + + Unable to start KVM agent with 4.1 build. + + + + + CLOUDSTACK-1237 + + + "Register Template fails with ""Cannot find template adapter for + XenServer"" + + + + + CLOUDSTACK-1239 + + + Unable to registerISO :unhandled exception executing api command: + registerIso + + + + + CLOUDSTACK-1240 + + + Unable to registerTemplate : Cannot find template adapter for + XenServer. + + + + + CLOUDSTACK-1241 + + + Network apply rules logic is broken. + + + + + CLOUDSTACK-1242 + + + [F5-SRX-InlineMode] Failed to create LB rule with F5-SRX inlinemode + deployment + + + + + CLOUDSTACK-1243 + + + Failed to cleanup account :java.lang.NullPointerException + + + + + CLOUDSTACK-1244 + + + fail to push sysmvm.iso onto xen host + + + + + CLOUDSTACK-1246 + + + "[ ALU beta CS 4.1 build2] ""Guest network"" missing in Add Zone wizard ( step + 3, Setup Network \ Physical Network) + + + + + CLOUDSTACK-1251 + + + Baremetal zone doesn't need primary/secondary storage in UI wizard. + + + + + CLOUDSTACK-1252 + + + Failed to download default template in VMware. + + + + + CLOUDSTACK-1260 + + + Failed to register template: Unable to find template adapter + + + + + CLOUDSTACK-1261 + + + Cannot find template adapter for XenServer. + + + + + CLOUDSTACK-1262 + + + "Failed to Prepare Secondary Storage in VMware, + + + + + CLOUDSTACK-1265 + + + logrotate dnsmasq configuration is wrong + + + + + CLOUDSTACK-1267 + + + KVM's cloudstack-agent service doesn't log (log4j) + + + + + CLOUDSTACK-1269 + + + Failed to start CPVM java.lang.NullPointerException Unable to start + SSVM + + + + + CLOUDSTACK-1272 + + + Autoscale: createAutoScaleVmProfile fails due to unable to retrieve Service + Offering ip + + + + + CLOUDSTACK-1274 + + + UpdateNetworkCmd throws NP + + + + + CLOUDSTACK-1276 + + + Remove autoscanning for 4.1 + + + + + CLOUDSTACK-1277 + + + ApiResponseHelper.createUserVmResponse failed to populate password field set + from UserVm object + + + + + CLOUDSTACK-1278 + + + Improper permissions on injectkeys.sh + + + + + CLOUDSTACK-1288 + + + [F5-SRX-InlineMode] classCastException during network restart with cleanup + option true + + + + + CLOUDSTACK-1289 + + + [F5-SRX-InlineMode] Usage stats are not generated for Juniper SRX Firewall in + inlinemode + + + + + CLOUDSTACK-1290 + + + listNetoworks API takes too long to respond + + + + + CLOUDSTACK-1292 + + + "[F5-SRX-InlineMode] Update network from SRX,F5 as service provideds to VR as + service provider does not delete firewall rules from SRX + + + + + CLOUDSTACK-1295 + + + NPE in usage parsers due to missing @Component inject + + + + + CLOUDSTACK-1299 + + + Errors in 4.5.5 section of installation guide + + + + + CLOUDSTACK-1300 + + + section in wrong order in installation guide + + + + + CLOUDSTACK-1303 + + + Ipv6 - java.lang.NullPointerException when executing listnetworks() and + deployVirtualMachine() after extending the Ipv4 range of a dual stack + network + + + + + CLOUDSTACK-1307 + + + Noticed NPE when we put host in maintenance mode in clustered management + setup + + + + + CLOUDSTACK-1310 + + + ASF-build-master-nonoss-rhel63 - create advance zone FAIL - + CreatePhysicalNetworkCmd FAIL - MySQLIntegrityConstraintViolationException: + Duplicate entry '200-Public' for key 'physical_network_id' + + + + + 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-1313 + + + Working with Volumes Section Is Missing + + + + + CLOUDSTACK-1315 + + + [F5-SRX-InlineMode] Network implement failed with Run time Exception during + network upgrade from VR to SRX-F5 + + + + + CLOUDSTACK-1319 + + + createCustomerVpnGateway response gives TypeError: + json.createvpncustomergatewayresponse is undefined + + + + + CLOUDSTACK-1320 + + + Routers naming convention is changed to hostname. + + + + + CLOUDSTACK-1321 + + + [Site-to-Site VPN] No events are generated in case of status change in site to + site vpn connection + + + + + CLOUDSTACK-1326 + + + KVM - Failed to start cloud agent from SSVM + + + + + CLOUDSTACK-1328 + + + console view unable to connect - CPVM SSVM guest VM + + + + + CLOUDSTACK-1329 + + + "API listRouters response returns hostname instead of Virtual Routers, UI + displays host entry for each VR + + + + + 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-1331 + + + Upgrade fails for a 2.2.14 Zone having multiple guest networks using + network_tags and Public Vlan + + + + + CLOUDSTACK-1332 + + + IPV6 - Router and guest Vms should be able to use an IPV6 address for external + DNS entry + + + + + CLOUDSTACK-1334 + + + vmware.root.disk.controller doesn't work + + + + + CLOUDSTACK-1337 + + + Zone to zone template/ISO copy fails and template/ISO download also + fail + + + + + CLOUDSTACK-1338 + + + Deploy VM failed using IS + + + + + CLOUDSTACK-1339 + + + ASF 4.1: Management server becomes unresponsive + + + + + CLOUDSTACK-1341 + + + URL for the KEYs file is wrong in the installation guide + + + + + CLOUDSTACK-1342 + + + Document installation and usage of cloudmonkey for 4.1 docs + + + + + CLOUDSTACK-1343 + + + Porting Baremetal related UI changes to ACS + + + + + CLOUDSTACK-1344 + + + Typo in use.external.dns setting description + + + + + CLOUDSTACK-1345 + + + BigSwitch plugin introduces 'VNS' isolation in UI without backend + implementation + + + + + CLOUDSTACK-1346 + + + "Check to see if external devices are used in the network, is hardcoded for + specific devices + + + + + CLOUDSTACK-1347 + + + "Not able to delete network. Error - "Unable to insert queue item into + database, DB is full?" + + + + + CLOUDSTACK-1348 + + + API/UI: zoneObj is undefined. + + + + + CLOUDSTACK-1349 + + + "VPC network Adding Network ACls, PF rules - Unable to insert queue item into + database, DB is full? PF rules and NW Acls in Add state in DB + + + + + CLOUDSTACK-1350 + + + Management server Stop and start causes previously downloaded ISOs and + templates to redownload & reinstall. + + + + + CLOUDSTACK-1353 + + + KVM 6.3 snapshot Scheduling snapshot failed due to + java.lang.NullPointerException + + + + + CLOUDSTACK-1357 + + + "Autoscale: Provisioned VMs from Netscaler not being added to lb vserver, + provserver fails with provserver_err_asynctaskpoll + + + + + CLOUDSTACK-1360 + + + The clusterid field of the createStoragePool API command should be documented + as required. + + + + + CLOUDSTACK-1367 + + + NPE noticed in logs while AgentMonitor is monitoring the host ping + interval + + + + + CLOUDSTACK-1368 + + + Shared network - Not able to delete network because of + java.lang.NullPointerException + + + + + 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-1370 + + + DeployVM Fail - VPC or non-VPC network + + + + + CLOUDSTACK-1375 + + + deploydb failing with acs master + + + + + CLOUDSTACK-1376 + + + Unable to migrate VM due to internal error process exited while connecting to + monitor + + + + + CLOUDSTACK-1377 + + + HA fail - when host is shutdown, VMs and SSVMs are not failover to second host + in cluster. + + + + + CLOUDSTACK-1382 + + + vm deploy fails with Error "cannot find DeployPlannerSelector for vm" + + + + + CLOUDSTACK-1383 + + + Deploying basic zone on 4.1 fails in NPE + + + + + CLOUDSTACK-1386 + + + BASIC zone SSVM fail to start due to exception + + + + + CLOUDSTACK-1388 + + + UI - ListUsers doesnt display any User except the Default Root Admin + User + + + + + CLOUDSTACK-1391 + + + EventBus is not getting injected after javelin merge + + + + + CLOUDSTACK-1394 + + + [F5-SRX-InlineMode] Failure in static nat configuration on SRX does not result + in LB configuration error in CS during LB rule configuration + + + + + CLOUDSTACK-1397 + + + Static Nat configuration is failing with NPE + + + + + CLOUDSTACK-1399 + + + Unhandled exception executing api command: stopVirtualMachine + + + + + CLOUDSTACK-1402 + + + listRouters API response doesn't return linklocal IP and public IP + details + + + + + CLOUDSTACK-1403 + + + Storage and console-proxy related error + + + + + CLOUDSTACK-1411 + + + Issues with VMWare Hypervisor host_ids not updated when ESX(i) crashes in + instance table + + + + + CLOUDSTACK-1414 + + + Redundant router: BACKUP switch cancelled due to lock timeout after a glitch + in network. + + + + + CLOUDSTACK-1417 + + + When invalid values are passed to createNetwork(), error message does not + indicate the parameter name that has invalid values. + + + + + CLOUDSTACK-1418 + + + As regular user, we are not allowed to deploy VM on a shared network. + + + + + CLOUDSTACK-1419 + + + Apache-ify and apply trademark logos in the UI + + + + + CLOUDSTACK-1420 + + + Ensure trademarks are properly attributed in publican brand + + + + + CLOUDSTACK-1423 + + + Unable to launch UI [HTTP Status 404]. + + + + + CLOUDSTACK-1425 + + + unhandled exception executing api command: migrateVirtualMachine & + recoverVirtualMachine + + + + + CLOUDSTACK-1427 + + + Failed to delete Guestnetwork which has LB with Netscaler + + + + + CLOUDSTACK-1428 + + + [UI] Instance which are created without display name are not visible when + added to LB + + + + + CLOUDSTACK-1429 + + + single account is unable to use same vnet across multiple physical + network + + + + + CLOUDSTACK-1436 + + + 4.1 management server fails to start from RPM build artifact + + + + + CLOUDSTACK-1443 + + + As domain admin we are allowed to create shared network + + + + + CLOUDSTACK-1446 + + + [UI]VPC Router type should be of type vpc and not system + + + + + CLOUDSTACK-1447 + + + [UI]Persistent Status is not displayed for VPC Tier + + + + + CLOUDSTACK-1449 + + + listAccounts and listProjectAccounts API lists all the users not + account-specific users for each account returned + + + + + CLOUDSTACK-1451 + + + Getting EntityExistsException while creating more than one project in CS + 4.1 + + + + + CLOUDSTACK-1452 + + + Public IP's are assigned to private interface with VPC Restart [PF/LB rules + are not functional + + + + + CLOUDSTACK-1461 + + + "Ipv6 - From a Vm that that is part of 2 networks, non default network + router's details should not get programmed in the DNS entries of the guest + VM. + + + + + CLOUDSTACK-1463 + + + IPV6 - Ubuntu 12.10 - Multiple Nic - IPV6 address is assigned automatically + for 1 nic only. Need to do a manual dhclient request to get the ipv6 for other + nic. + + + + + CLOUDSTACK-1464 + + + "IPV6 - Multi nic - Ubuntu 1210 -When Vm is stopped and started/ rebooted, i + get multiple global IPV6 addresses being allocated for one of the nics. + + + + + CLOUDSTACK-1465 + + + List Zones returns null under create instance when logged is as user + + + + + CLOUDSTACK-1467 + + + Failed to create Volume for the System VMs + + + + + CLOUDSTACK-1469 + + + kvm agent: agent service fails to start up + + + + + CLOUDSTACK-1470 + + + unhandled exception executing api command: deployVirtualMachine + + + + + CLOUDSTACK-1472 + + + AssignVirtualMachine API with wrong Virtual Instance ID failed with NPE + + + + + CLOUDSTACK-1473 + + + deleteDomain is failing with NPE + + + + + CLOUDSTACK-1481 + + + "IPV6 - When Vm is part of 1 dual network and 1 ipv6 network, name resolution + using fqdn fails for the ipv6 network. + + + + + CLOUDSTACK-1482 + + + IPV6 - We are not allowed to create a shared IPV6 network with a VLAN which + already is associated with a IPV4 network + + + + + CLOUDSTACK-1484 + + + API Throttling : api.throttling.enabled, Global setting missing + + + + + CLOUDSTACK-1485 + + + Add Baremetal Provider back to 4.1 branch + + + + + CLOUDSTACK-1487 + + + cloudstack-setup-agent fails to set private.network.device on KVM host + add + + + + + CLOUDSTACK-1488 + + + "Ipv6 - When Vm is deployed as part of multiple networks, one of the IPV6 + address assigned to guest VM is lost. + + + + + CLOUDSTACK-1490 + + + 4.1 deb management fails to start due to tomcat dep problem + + + + + CLOUDSTACK-1496 + + + List API Performance: listAccounts failing with OOME for high values of + pagesize (>1000) + + + + + CLOUDSTACK-1499 + + + ListAPI Performance for few APIs not as good as it was before API + optimization + + + + + CLOUDSTACK-1503 + + + listHypervisor API not getting fired when logged in as User + + + + + CLOUDSTACK-1505 + + + Unknown column 'domain.region_id' in 'field list' + + + + + CLOUDSTACK-1509 + + + Failed to implement network elements and resources while provisioning for + persistent network(createVlanIpRange to an account + + + + + CLOUDSTACK-1511 + + + [UI] Instances NIC details does not have Network Name + + + + + CLOUDSTACK-1512 + + + [UI] Wrong message[message.configure.all.traffic.types] when trying to create + zone with mulitple physical networks without providing the traffic label + + + + + CLOUDSTACK-1515 + + + None of the cloudstack packges are marked for upgrade when tried to upgrade + from.4.0/4.0.1 to 4.1 + + + + + CLOUDSTACK-1516 + + + Create documentation in languages that have translations available + + + + + CLOUDSTACK-1517 + + + Check UI in languages available + + + + + CLOUDSTACK-1521 + + + Redundant router: Services are not stopped when switch to BACKUP state + + + + + CLOUDSTACK-1526 + + + Template registration fails in the VMware Setup + + + + + CLOUDSTACK-1531 + + + vmware create volume from snapshot will missing date + + + + + CLOUDSTACK-1537 + + + Restart network with clean up set to true causes Autoscaled LB rule to get + mangled and unusable + + + + + CLOUDSTACK-1541 + + + NPE while deleting snapshot :Unexpected exception while executing + org.apache.cloudstack.api.command.user.snapshot.DeleteSnapshotCmd + + + + + CLOUDSTACK-1542 + + + unhandled exception while creating project + + + + + CLOUDSTACK-1544 + + + The description and the response format for the deleteUser command are + incorrect + + + + + CLOUDSTACK-1550 + + + createaccountresponse returns more than the user you requested for + creation + + + + + CLOUDSTACK-1553 + + + AWS Regions-Not able to list accounts from the 2nd region after + user/account/domain details have been manually synced up from first region + + + + + CLOUDSTACK-1555 + + + "AWS Regions - userapikey and usersecretkey parameters are not returned in the + response of addRegion, updateRegion listRegion api calls.. + + + + + CLOUDSTACK-1557 + + + EC2 REST API : cloudbridge database is missing on the CloudStack + Installation + + + + + CLOUDSTACK-1562 + + + Replace the short-cut solution of supportting @DB with the formal one + + + + + CLOUDSTACK-1565 + + + "Used Master Branch System VM Template: Default Route on the System VMs + (SSVM,CPVM and VR) is missing + + + + + CLOUDSTACK-1566 + + + Baremetal API addBaremetalPxePingServer fail to add PXE PING server to + deployment causing create instance with PING style image to fail + + + + + CLOUDSTACK-1569 + + + "AWS Regions - Not able to Edit domain/account/user from a region that is not + the owner region.""The content of elements must consist of well-formed character + data or markup."" - error message presented to the user. + + + + + CLOUDSTACK-1571 + + + "AWS Regions - When deleting domain/account/user from a region that is not the + owner, the request is not being forwarded to the owner region. + + + + + CLOUDSTACK-1574 + + + updateResourceCount API is failed saying to specify valida resource type even + after parsing the valid resource type + + + + + CLOUDSTACK-1583 + + + AWS Regions - RabbitMQ Server did not recieve any event notification during + account creation + + + + + CLOUDSTACK-1587 + + + Basic zone - CPVM fail to go to running state, Exception while trying to start + secondary storage vm + + + + + CLOUDSTACK-1588 + + + AWS Regions - When registerUserKeys() is called for a user from a region that + is not the owner, it is handled by this region. + + + + + CLOUDSTACK-1600 + + + Typo in dpkg-buildpackage command + + + + + CLOUDSTACK-1604 + + + deploy VM failed when global setting "vm.allocation.algorithm" is set to + "userdispersing + + + + + CLOUDSTACK-1615 + + + "VMware Cluster discovery fails with if ESXi version is 5.0 Update 1, build + 721882 + + + + + CLOUDSTACK-1620 + + + Cannot provision CentOS 6 VMs on XenServer 6.1 + + + + + CLOUDSTACK-1621 + + + listProjectInvitations fails with NPE for valid request + + + + + CLOUDSTACK-1624 + + + API is not returning response in details:UI is also not returning any + output + + + + + CLOUDSTACK-1625 + + + NPE with updateResourceCount when && is passed thru API + + + + + CLOUDSTACK-1630 + + + 4.0.x cloud-aws-api not properly obsoleted + + + + + CLOUDSTACK-1631 + + + 4.1 RPM packaging broken + + + + + CLOUDSTACK-1636 + + + AWS Regions - Remove the concept of having an owner region for + domain/account/user objects + + + + + CLOUDSTACK-1642 + + + Add support CentOS 6.4 + + + + + CLOUDSTACK-1648 + + + Unable to add KVM host. + + + + + CLOUDSTACK-1649 + + + vmware vm os type error + + + + + CLOUDSTACK-1651 + + + agent scripts still pointing to /var/log/cloud + + + + + CLOUDSTACK-1656 + + + NicResponses in a UserVmResponse are not preserving the natural order + + + + + CLOUDSTACK-1663 + + + AWS Regions - Events - There are no events being generated when a new domain + is added/edited + + + + + CLOUDSTACK-1664 + + + Action Events are not logged due to spring change + + + + + CLOUDSTACK-1665 + + + AWS Regions - Events - There are no events being generated when a new user is + added/edited/enabled/deleted/password changes/api & secret keys are + generated + + + + + CLOUDSTACK-1666 + + + KVM VPC NetworkUsage does not work + + + + + CLOUDSTACK-1668 + + + IP conflict in VPC tier + + + + + CLOUDSTACK-1671 + + + AWS Regions - Events - Domain Delete event does not include the UUID of the + domain that was deleted + + + + + CLOUDSTACK-1674 + + + AWS Regions - Events - Account Deletion event does not include the UUID of the + account deleted + + + + + CLOUDSTACK-1681 + + + Upgrade instructions mention incorrect name and description of systemvm-vmware + template in registering template section + + + + + CLOUDSTACK-1684 + + + "api.throttling.enabled configuration setting should be set to ""false"" in + Config.java + + + + + CLOUDSTACK-1688 + + + AWS Regions - Domain admin user is not able to use getUser() command to fetch + user details + + + + + CLOUDSTACK-1690 + + + NPE from API server when starting mgmt server + + + + + CLOUDSTACK-1694 + + + Issues to start/access Management Server after upgrade from 4.0 to 4.1 + + + + + CLOUDSTACK-1697 + + + Six DB tables are not available with upgraded setup(4.0 to 4.1) when compare + to 4.1 newly installation + + + + + CLOUDSTACK-1706 + + + Failed to deploy VM with error "cannot find DeployPlannerSelector" + + + + + CLOUDSTACK-1709 + + + AWS Regions - As part of adding a new region, project related entries should + not be synced from accounts table. + + + + + CLOUDSTACK-1710 + + + AWS Regions - As part of adding a new region,default_zone_id column for the + account entries should not be synced. + + + + + CLOUDSTACK-1711 + + + AWS Regions - Include all the details of the API call made in the Events + payload when changes in Admin/Account/User objects are made. + + + + + CLOUDSTACK-1713 + + + EC2 REST API: AWS API Installation Problem + + + + + CLOUDSTACK-1714 + + + Doc section has wrong title: Setting Zone VLAN and Running VM Maximum + + + + + CLOUDSTACK-1715 + + + "Missing ""host"" config setting in docs on management server load + balancing + + + + + CLOUDSTACK-1716 + + + "AWS Regions - listRegions(),removeRegions(),updateRegions() should accept + UUID value instead of id. + + + + + CLOUDSTACK-1718 + + + AWS Regions - removeRegion() response returns updateregionresponse + + + + + CLOUDSTACK-1719 + + + EC2 REST API: AWS APIs are not getting translated on the CloudStack Management + Server + + + + + CLOUDSTACK-1720 + + + Have an upgrade path from 4.0.x to 4.1 and 4.0.x to 4.2.0 + + + + + CLOUDSTACK-1729 + + + Ensure adapter execution order in runtime + + + + + CLOUDSTACK-1733 + + + [ACS41][UI] Add guest network is missing ip range fields and missing network + offering + + + + + CLOUDSTACK-1736 + + + Ubuntu 12.04 cloud-setup-management Failed to configure CloudStack Management + Server + + + + + CLOUDSTACK-1738 + + + StatsCollector is not running + + + + + CLOUDSTACK-1740 + + + Failed to view console + + + + + CLOUDSTACK-1746 + + + Cloudstack Usage Server won't start + + + + + CLOUDSTACK-1747 + + + "mvn deploydb only creates 4.0 DB, not 4.1 + + + + + CLOUDSTACK-1750 + + + injectkeys script fails on OSX because cp does not have a -b option (backup of + destination file + + + + + CLOUDSTACK-1761 + + + Available local storage disk capacity incorrectly reported in KVM to + manager + + + + + CLOUDSTACK-1764 + + + ListTemplateCommand failed with java.lang.NumberFormatException and failed to + create default template. + + + + + CLOUDSTACK-1772 + + + the change in vnc listening port will cause live migration doesn't + work. + + + + + CLOUDSTACK-1773 + + + Disable baremetal functionality + + + + + CLOUDSTACK-1776 + + + NPE on listSecondaryStorageHostsInAllZones in Upgraded setup from 4.0 to + 4.1.0 + + + + + CLOUDSTACK-1785 + + + Redundant Router test cases failing during automation run. + + + + + CLOUDSTACK-1789 + + + Unable to download templates to Primary Storage if a host is in + maintenance. + + + + + CLOUDSTACK-1791 + + + Volumes with storage tags can't be attached. + + + + + CLOUDSTACK-1792 + + + "AWS Regions - RuntimeException while executing listAccounts(), when the + encryption keys are set to different values between regions. + + + + + CLOUDSTACK-1793 + + + L10n docs don't build in chinese, portuguese and japanese + + + + + CLOUDSTACK-1795 + + + Customize AOP to fully support legacy CloudStack @DB and @ActionEvent + semantics. + + + + + CLOUDSTACK-1796 + + + Japanese docs don't build. + + + + + CLOUDSTACK-1802 + + + Upgrade 4.0 -> 4.1 - Not able to start management server becasue of missing + /etc/cloudstack/management/tomcat6.conf file + + + + + CLOUDSTACK-1804 + + + Upgrade 4.0 -> 4.1 - DB upgrade fails + + + + + CLOUDSTACK-1805 + + + com.mysql.jdbc.exceptions.jdbc4.CommunicationsException seen after long time + of inactivity resulting in not being able to log in to the management + server + + + + + CLOUDSTACK-1810 + + + listTemplate API with templatefilter=featured|community is not returning any + lists + + + + + CLOUDSTACK-1811 + + + "Upgrade 4.0->4.1 - When upgrade scripts fail, component loading continues and + management server starts. + + + + + CLOUDSTACK-1812 + + + create physical network fails while creating basic zone + + + + + CLOUDSTACK-1825 + + + EC2 REST API: AWS APIs fail to execute due to BeanCreationException: Error + creating bean with name 'SAclDaoImpl' + + + + + CLOUDSTACK-1826 + + + "Storage migration not working, seemingly due to uuid vs id + + + + + CLOUDSTACK-1827 + + + Redundant router - When VR Master was stopped failover to VR Backup did not + occur. + + + + + CLOUDSTACK-1834 + + + "Events are not generated for registerUserKeys(), Enabling account and Editing + account. + + + + + CLOUDSTACK-1836 + + + License header failures for ja-JP .po translation file + + + + + CLOUDSTACK-1839 + + + Upgrade 4.0 -> 4.1 - Upgraded DB has lot more keys and indexes for many tables + compare to the fresh installed 4.1 DB + + + + + CLOUDSTACK-1841 + + + ASF 4.0 to 4.1 Upgrade: Missing Few Global Configuration parameters on the + Upgraded Setup. + + + + + CLOUDSTACK-1842 + + + ASF 4.0 to 4.1 Upgrade: Missing Ubuntu 12.04 Guest OS Types on the Upgraded + Setup. + + + + + CLOUDSTACK-1844 + + + Upgrade 4.0 -> 4.1 - KVM host agent.properties is not restored as part of + upgrading the binaries from 4.0 to 4.1. + + + + + 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-1848 + + + Cloudstack Packages are not got updated with scenario 4.0 to 4.1 upgrade where + MS is on Ubuntu 12.04. + + + + + CLOUDSTACK-1856 + + + Upgrade 4.0 -> 4.1 - Fresh install of 4.1 has 3 parameters missing in + db.properties compared to an upgraded 4.0 setup + + + + + CLOUDSTACK-1873 + + + "Installation : JasyptPBEStringDecryptionCLI missing, failed to decrypt db + password + + + + + CLOUDSTACK-1874 + + + AWS Regions - Account table in cloud_usage DB has region_id + + + + + CLOUDSTACK-1876 + + + External Devices - network offering for external devices is not returned in + API listNetworkOfferings when creating instances. + + + + + CLOUDSTACK-1877 + + + Failed to connect to DB while starting Ubuntu management server after + upgrading the packages from 4.0 to 4.1.0 + + + + + CLOUDSTACK-1882 + + + “HTTP Status 404 。 The requested resource () is not available. + + + + + CLOUDSTACK-1890 + + + listProjects is not listing state in the response + + + + + CLOUDSTACK-1900 + + + "Upgrade 4.0 -> 4.1, We do not have a copy of db.properties that comes from a + 4.1 installation saved anywhere. + + + + + CLOUDSTACK-1929 + + + ASF 4.1 cloudstack agent fail to install in KVM host CENTOS 6.3 OS: + qemu-kvm-0.12.1.2-3.295.el6.10.x86_64 requires libusbredirparser.so.0 + + + + + CLOUDSTACK-1934 + + + NPE with listSupportedNetworkServices after upgrade from 4.0 to 4.1 (Ubuntu + MS) + + + + + CLOUDSTACK-1935 + + + Cloud utilities are not renamed to Cloudstack after upgrade from 4.0 to 4.1 + [Ubutnu MS] + + + + + CLOUDSTACK-1936 + + + On CentOS, after a upgrade from 4.0.1 to 4.1 on a cloud node (cloud-agent), + the new cloustack-agent isn't add as a service (chkconfig) + + + + + CLOUDSTACK-1951 + + + centos packaging: cloud-install-sys-tmplt can't find jasypt jar. + + + + + CLOUDSTACK-1971 + + + VM deployed to incorrect primary storage. + + + + + CLOUDSTACK-1972 + + + VM deployed to incorrect primary storage. + + + + + CLOUDSTACK-1978 + + + openvswitch - unable to start console session for SSVM CPVM user VM + + + + + CLOUDSTACK-1980 + + + "[4.1]cloudstack-setup-bridge, cloudstack-setup-encryption & + cloudstack-sysvmadm utilities are not available in Ubuntu 12.04 Management + Server. + + + + + CLOUDSTACK-1987 + + + Deleted service offerings owned by a domain show up to domain user. + + + + + CLOUDSTACK-1988 + + + AWS API using SOAP client - User Registration fails + + + + + CLOUDSTACK-1989 + + + "Query service offering by ID returns no result, but querying all returns + service offering + + + + + CLOUDSTACK-2003 + + + Deleting domain while deleted account is cleaning up leaves VMs expunging + forever due to 'Failed to update resource count + + + + + CLOUDSTACK-2007 + + + Release Notes failing to build on jenkins.cs. + + + + + +
+
+ Known Issues in 4.1.0 + + + + + + + + Issue ID + + + Description + + + + + + CLOUDSTACK-1747 + mvn deploydb only creates 4.0 DB, not 4.1 + Due to tooling changes between 4.1 and 4.2, CloudStack's database is created + using the 4.0 schema and updated to the 4.1 schema when the management server + starts for the first time. It's OK to see the same schema if the management server + has not started yet. + + + + CLOUDSTACK-1824 + Service CloudStack-Management is being displayed as cloud-management + service + Many scripts and text entries have references to cloud-management rather than + cloudstack-management due to the changeover between 4.0 and 4.1 to rename + services. This is a minor issue and should be corrected by 4.2. + + + + + CLOUDSTACK-1824 + Service CloudStack-Management is being displayed as cloud-management + service + + + + + CLOUDSTACK-1510 + + + NPE when primary storage is added with wrong path + + + + + CLOUDSTACK-1428 + + + [UI] Instance which are created without display name are not visible when + added to LB + + + + + CLOUDSTACK-1306 + + + Better Error message when trying to deploy Vm by passing static Ipv4 addresses + that are assigned to another VM/IP4 address is outside the iprange. + + + + + CLOUDSTACK-1236 + + + Warning while adding Xen 6.1 host [Unable to create local link network] + + + + + CLOUDSTACK-969 + + + api: zone response lists vlan in it as "vlan range of zone" but the + vlan belongs to physical network + + + + + CLOUDSTACK-963 + + + [cloud.utils.AnnotationHelper] class java.lang.Stringdoes not have a Table + annotation + + + + + CLOUDSTACK-458 + + + xen:snapshots:Storage gc fail to clean the failed snapshot images from + secondarystorage + + + + + CLOUDSTACK-315 + + + Infrastructure view does not show capacity values + + + + + CLOUDSTACK-300 + + + Creation of compute offering allow combination of local storage + HA + + + + + CLOUDSTACK-282 + + + Virtual Routers do not properly resolve DNS SRV Records + + + + + CLOUDSTACK-276 + + + SSVM ID is exposed in the Error Message thrown by AddTrafficType API + + + + + CLOUDSTACK-270 + + + Ui should not ask for a vlan range if the physical network isolation type is + not VLAN + + + + + CLOUDSTACK-245 + + + VPC ACLs are not stored and programmed consistently + + + + + CLOUDSTACK-231 + + + Tag creation using special charecters + + + + + CLOUDSTACK-124 + + + NetworkGarbageCollector not cleaning up networks + + + + + CLOUDSTACK-62 + + + console proxy does not support any keymaps besides us, jp + + + + + +
+
+ + Upgrade Instructions + This section contains upgrade instructions from prior versions of CloudStack to Apache + CloudStack 4.1.0. We include instructions on upgrading to Apache CloudStack from pre-Apache + versions of Citrix CloudStack (last version prior to Apache is 3.0.2) and from the releases + made while CloudStack was in the Apache Incubator. + If you run into any issues during upgrades, please feel free to ask questions on + users@apache.cloudstack.org or dev@apache.cloudstack.org. +
+ Upgrade from 4.0.x to 4.1.0 + This section will guide you from &PRODUCT; 4.0.x versions to &PRODUCT; 4.1.0. + Any steps that are hypervisor-specific will be called out with a note. + + Package Structure Changes + The package structure for &PRODUCT; has changed significantly since the 4.0.x + releases. If you've compiled your own packages, you'll notice that the package names and + the number of packages has changed. This is not a bug. + However, this does mean that the procedure is not as simple as an + apt-get upgrade or yum update, so please follow + this section carefully. + + We recommend reading through this section once or twice before beginning your upgrade + procedure, and working through it on a test system before working on a production + system. + + + Most users of &PRODUCT; manage the installation and upgrades of &PRODUCT; with one + of Linux's predominant package systems, RPM or APT. This guide assumes you'll be using + RPM and Yum (for Red Hat Enterprise Linux or CentOS), or APT and Debian packages (for + Ubuntu). + Create RPM or Debian packages (as appropriate) and a repository from the 4.1.0 + source, or check the Apache CloudStack downloads page at http://cloudstack.apache.org/downloads.html for package repositories supplied + by community members. You will need them for step + or step . + Instructions for creating packages from the &PRODUCT; source are in the Installation + Guide. + + + Stop your management server or servers. Run this on all management server + hosts: + # service cloud-management stop + + + If you are running a usage server or usage servers, stop those as well: + # service cloud-usage stop + + + Make a backup of your MySQL database. If you run into any issues or need to roll + back the upgrade, this will assist in debugging or restoring your existing environment. + You'll be prompted for your password. + # mysqldump -u root -p cloud > cloudstack-backup.sql + + + Whether you're upgrading a Red Hat/CentOS based system or Ubuntu based system, + you're going to need to stop the CloudStack management server before proceeding. + # service cloud-management stop + + + If you have made changes to + /etc/cloud/management/components.xml, you'll need to carry these + over manually to the new file, + /etc/cloudstack/management/componentContext.xml. This is not done + automatically. (If you're unsure, we recommend making a backup of the original + components.xml to be on the safe side. + + + If you are using Ubuntu, follow this procedure to upgrade your packages. If not, + skip to step . + + Community Packages + This section assumes you're using the community supplied packages for &PRODUCT;. + If you've created your own packages and APT repository, substitute your own URL for + the ones used in these examples. + + + + The first order of business will be to change the sources list for each system + with &PRODUCT; packages. This means all management servers, and any hosts that have + the KVM agent. (No changes should be necessary for hosts that are running VMware or + Xen.) + Start by opening /etc/apt/sources.list.d/cloudstack.list on + any systems that have &PRODUCT; packages installed. + This file should have one line, which contains: + deb http://cloudstack.apt-get.eu/ubuntu precise 4.0 + We'll change it to point to the new package repository: + deb http://cloudstack.apt-get.eu/ubuntu precise 4.1 + If you're using your own package repository, change this line to read as + appropriate for your 4.1.0 repository. + + + Now update your apt package list: + $ sudo apt-get update + + + Now that you have the repository configured, it's time to install the + cloudstack-management package. This will pull in any other + dependencies you need. + $ sudo apt-get install cloudstack-management + + + You will need to manually install the cloudstack-agent + package: + $ sudo apt-get install cloudstack-agent + During the installation of cloudstack-agent, APT will copy + your agent.properties, log4j-cloud.xml, + and environment.properties from + /etc/cloud/agent to + /etc/cloudstack/agent. + When prompted whether you wish to keep your configuration, say Yes. + + + Verify that the file + /etc/cloudstack/agent/environment.properties has a line that + reads: + paths.script=/usr/share/cloudstack-common + If not, add the line. + + + Restart the agent: + service cloud-agent stop killall jsvc service cloudstack-agent start - - - During the upgrade, log4j-cloud.xml was simply copied over, so the logs will continue to be added to /var/log/cloud/agent/agent.log. There's nothing wrong with this, but if you prefer to be consistent, you can change this by copying over the sample configuration file: - + + + During the upgrade, log4j-cloud.xml was simply copied over, + so the logs will continue to be added to + /var/log/cloud/agent/agent.log. There's nothing + wrong with this, but if you prefer to be consistent, you can + change this by copying over the sample configuration file: + cd /etc/cloudstack/agent mv log4j-cloud.xml.dpkg-dist log4j-cloud.xml service cloudstack-agent restart - - - Once the agent is running, you can uninstall the old cloud-* packages from your system: - sudo dpkg --purge cloud-agent - - - - - If you are using CentOS or RHEL, follow this procedure to upgrade your packages. If not, skip to step . - Community Packages - This section assumes you're using the community supplied packages for &PRODUCT;. If you've created your own packages and yum repository, substitute your own URL for the ones used in these examples. - - - - The first order of business will be to change the yum repository for each system with &PRODUCT; packages. This means all management servers, and any hosts that have the KVM agent. (No changes should be necessary for hosts that are running VMware or Xen.) - Start by opening /etc/yum.repos.d/cloudstack.repo on any systems that have &PRODUCT; packages installed. - This file should have content similar to the following: - + + + Once the agent is running, you can uninstall the old cloud-* packages from your + system: + sudo dpkg --purge cloud-agent + + + + + If you are using CentOS or RHEL, follow this procedure to upgrade your packages. If + not, skip to step . + + Community Packages + This section assumes you're using the community supplied packages for &PRODUCT;. + If you've created your own packages and yum repository, substitute your own URL for + the ones used in these examples. + + + + The first order of business will be to change the yum repository for each system + with &PRODUCT; packages. This means all management servers, and any hosts that have + the KVM agent. (No changes should be necessary for hosts that are running VMware or + Xen.) + Start by opening /etc/yum.repos.d/cloudstack.repo on any + systems that have &PRODUCT; packages installed. + This file should have content similar to the following: + [apache-cloudstack] name=Apache CloudStack baseurl=http://cloudstack.apt-get.eu/rhel/4.0/ enabled=1 gpgcheck=0 - If you are using the community provided package repository, change the baseurl to http://cloudstack.apt-get.eu/rhel/4.1/ - If you're using your own package repository, change this line to read as appropriate for your 4.1.0 repository. - - - Now that you have the repository configured, it's time to install the cloudstack-management package by upgrading the older cloud-client package. - $ sudo yum upgrade cloud-client - - - For KVM hosts, you will need to upgrade the cloud-agent package, similarly installing the new version as cloudstack-agent. - $ sudo yum upgrade cloud-agent - During the installation of cloudstack-agent, the RPM will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent. - - - Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads: - paths.script=/usr/share/cloudstack-common - If not, add the line. - - - Restart the agent: - + If you are using the community provided package repository, change the baseurl + to http://cloudstack.apt-get.eu/rhel/4.1/ + If you're using your own package repository, change this line to read as + appropriate for your 4.1.0 repository. + + + Now that you have the repository configured, it's time to install the + cloudstack-management package by upgrading the older + cloud-client package. + $ sudo yum upgrade cloud-client + + + For KVM hosts, you will need to upgrade the cloud-agent + package, similarly installing the new version as + cloudstack-agent. + $ sudo yum upgrade cloud-agent + During the installation of cloudstack-agent, the RPM will + copy your agent.properties, + log4j-cloud.xml, and + environment.properties from + /etc/cloud/agent to + /etc/cloudstack/agent. + + + Verify that the file + /etc/cloudstack/agent/environment.properties has a line that + reads: + paths.script=/usr/share/cloudstack-common + If not, add the line. + + + Restart the agent: + service cloud-agent stop killall jsvc service cloudstack-agent start - - - - - Once you've upgraded the packages on your management servers, you'll need to restart the system VMs. Make sure port 8096 is open in your local host firewall to do this. - There is a script that will do this for you, all you need to do is run the script and supply the IP address for your MySQL instance and your MySQL credentials: - # nohup cloudstack-sysvmadm -d IP address -u cloud -p -a > sysvm.log 2>&1 & - You can monitor the log for progress. The process of restarting the system VMs can take an hour or more. - # tail -f sysvm.log - The output to sysvm.log will look something like this: - + + + + + Once you've upgraded the packages on your management servers, you'll need to restart + the system VMs. Make sure port 8096 is open in your local host firewall to do + this. + There is a script that will do this for you, all you need to do is run the script + and supply the IP address for your MySQL instance and your MySQL credentials: + # nohup cloudstack-sysvmadm -d IP address -u cloud -p -a > sysvm.log 2>&1 & + You can monitor the log for progress. The process of restarting the system VMs can + take an hour or more. + # tail -f sysvm.log + The output to sysvm.log will look something like this: + Stopping and starting 1 secondary storage vm(s)... Done stopping and starting secondary storage vm(s) Stopping and starting 1 console proxy vm(s)... @@ -4259,919 +4810,1014 @@ Done stopping and starting console proxy vm(s). Stopping and starting 4 running routing vm(s)... Done restarting router(s). - - - For Xen Hosts: Copy vhd-utils - This step is only for CloudStack installs that are using Xen hosts. - - Copy the file vhd-utils to /usr/share/cloudstack-common/scripts/vm/hypervisor/xenserver. - - -
-
- Upgrade from 3.0.2 to 4.1.0 - This section will guide you from Citrix CloudStack 3.0.2 to Apache CloudStack 4.1.0. Sections that are hypervisor-specific will be called out with a note. - - - - The following upgrade instructions apply only if you're using VMware hosts. If - you're not using VMware hosts, skip this step and move on to . - - In each zone that includes VMware hosts, you need to add a new system VM template. - - - While running the existing 3.0.2 system, log in to the UI as root administrator. - - - In the left navigation bar, click Templates. - - - In Select view, click Templates. - - - Click Register template. - The Register template dialog box is displayed. - - - In the Register template dialog box, specify the following values (do not change these): - - - - - - - Field - Value - - - - - Name - systemvm-vmware-4.1 - - - Description - systemvm-vmware-4.1 - - - URL - http://download.cloud.com/templates/burbank/burbank-systemvm-08012012.ova - - - Zone - Choose the zone where this hypervisor is used - - - Hypervisor - VMware - - - Format - OVA - - - OS Type - Debian GNU/Linux 5.0 (32-bit) - - - Extractable - no - - - Password Enabled - no - - - Public - no - - - Featured - no - - - - - - - Watch the screen to be sure that the template downloads successfully and enters - the READY state. Do not proceed until this is successful. - - - - - Stop all Usage Servers if running. Run this on all Usage Server hosts. - # service cloud-usage stop - - - Stop the Management Servers. Run this on all Management Server hosts. - # service cloud-management stop - - - On the MySQL master, take a backup of the MySQL databases. We recommend performing - this step even in test upgrades. If there is an issue, this will assist with - debugging. - In the following commands, it is assumed that you have set the root password on the - database, which is a CloudStack recommended best practice. Substitute your own MySQL - root password. - # mysqldump -u root -pmysql_password cloud > cloud-backup.dmp + + + + For Xen Hosts: Copy vhd-utils + This step is only for CloudStack installs that are using Xen hosts. + + Copy the file vhd-utils to + /usr/share/cloudstack-common/scripts/vm/hypervisor/xenserver. + + +
+
+ Upgrade from 3.0.2 to 4.1.0 + This section will guide you from Citrix CloudStack 3.0.2 to Apache CloudStack 4.1.0. + Sections that are hypervisor-specific will be called out with a note. + + + + The following upgrade instructions apply only if you're using VMware hosts. If + you're not using VMware hosts, skip this step and move on to . + + In each zone that includes VMware hosts, you need to add a new system VM template. + + + While running the existing 3.0.2 system, log in to the UI as root + administrator. + + + In the left navigation bar, click Templates. + + + In Select view, click Templates. + + + Click Register template. + The Register template dialog box is displayed. + + + In the Register template dialog box, specify the following values (do not change + these): + + + + + + + Field + Value + + + + + Name + systemvm-vmware-4.1 + + + Description + systemvm-vmware-4.1 + + + URL + http://download.cloud.com/templates/burbank/burbank-systemvm-08012012.ova + + + Zone + Choose the zone where this hypervisor is used + + + Hypervisor + VMware + + + Format + OVA + + + OS Type + Debian GNU/Linux 5.0 (32-bit) + + + Extractable + no + + + Password Enabled + no + + + Public + no + + + Featured + no + + + + + + + Watch the screen to be sure that the template downloads successfully and enters + the READY state. Do not proceed until this is successful. + + + + + Stop all Usage Servers if running. Run this on all Usage Server hosts. + # service cloud-usage stop + + + Stop the Management Servers. Run this on all Management Server hosts. + # service cloud-management stop + + + On the MySQL master, take a backup of the MySQL databases. We recommend performing + this step even in test upgrades. If there is an issue, this will assist with + debugging. + In the following commands, it is assumed that you have set the root password on the + database, which is a CloudStack recommended best practice. Substitute your own MySQL + root password. + # mysqldump -u root -pmysql_password cloud > cloud-backup.dmp # mysqldump -u root -pmysql_password cloud_usage > cloud-usage-backup.dmp - - - Either build RPM/DEB packages as detailed in the Installation Guide, or use one of - the community provided yum/apt repositories to gain access to the &PRODUCT; - binaries. - - - If you are using Ubuntu, follow this procedure to upgrade your packages. If not, skip to step . - Community Packages - This section assumes you're using the community supplied packages for &PRODUCT;. If you've created your own packages and APT repository, substitute your own URL for the ones used in these examples. - - - - The first order of business will be to change the sources list for each system with &PRODUCT; packages. This means all management servers, and any hosts that have the KVM agent. (No changes should be necessary for hosts that are running VMware or Xen.) - Start by opening /etc/apt/sources.list.d/cloudstack.list on any systems that have &PRODUCT; packages installed. - This file should have one line, which contains: - deb http://cloudstack.apt-get.eu/ubuntu precise 4.0 - We'll change it to point to the new package repository: - deb http://cloudstack.apt-get.eu/ubuntu precise 4.1 - If you're using your own package repository, change this line to read as appropriate for your 4.1.0 repository. - - - Now update your apt package list: - $ sudo apt-get update - - - Now that you have the repository configured, it's time to install the cloudstack-management package. This will pull in any other dependencies you need. - $ sudo apt-get install cloudstack-management - - - You will need to manually install the cloudstack-agent package: - $ sudo apt-get install cloudstack-agent - During the installation of cloudstack-agent, APT will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent. - When prompted whether you wish to keep your configuration, say Yes. - - - Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads: - paths.script=/usr/share/cloudstack-common - If not, add the line. - - - Restart the agent: - + + + Either build RPM/DEB packages as detailed in the Installation Guide, or use one of + the community provided yum/apt repositories to gain access to the &PRODUCT; + binaries. + + + If you are using Ubuntu, follow this procedure to upgrade your packages. If not, + skip to step . + + Community Packages + This section assumes you're using the community supplied packages for &PRODUCT;. + If you've created your own packages and APT repository, substitute your own URL for + the ones used in these examples. + + + + The first order of business will be to change the sources list for each system + with &PRODUCT; packages. This means all management servers, and any hosts that have + the KVM agent. (No changes should be necessary for hosts that are running VMware or + Xen.) + Start by opening /etc/apt/sources.list.d/cloudstack.list on + any systems that have &PRODUCT; packages installed. + This file should have one line, which contains: + deb http://cloudstack.apt-get.eu/ubuntu precise 4.0 + We'll change it to point to the new package repository: + deb http://cloudstack.apt-get.eu/ubuntu precise 4.1 + If you're using your own package repository, change this line to read as + appropriate for your 4.1.0 repository. + + + Now update your apt package list: + $ sudo apt-get update + + + Now that you have the repository configured, it's time to install the + cloudstack-management package. This will pull in any other + dependencies you need. + $ sudo apt-get install cloudstack-management + + + You will need to manually install the cloudstack-agent + package: + $ sudo apt-get install cloudstack-agent + During the installation of cloudstack-agent, APT will copy + your agent.properties, log4j-cloud.xml, + and environment.properties from + /etc/cloud/agent to + /etc/cloudstack/agent. + When prompted whether you wish to keep your configuration, say Yes. + + + Verify that the file + /etc/cloudstack/agent/environment.properties has a line that + reads: + paths.script=/usr/share/cloudstack-common + If not, add the line. + + + Restart the agent: + service cloud-agent stop killall jsvc service cloudstack-agent start - - - During the upgrade, log4j-cloud.xml was simply copied over, so the logs will continue to be added to /var/log/cloud/agent/agent.log. There's nothing wrong with this, but if you prefer to be consistent, you can change this by copying over the sample configuration file: - + + + During the upgrade, log4j-cloud.xml was simply copied over, + so the logs will continue to be added to + /var/log/cloud/agent/agent.log. There's nothing + wrong with this, but if you prefer to be consistent, you can + change this by copying over the sample configuration file: + cd /etc/cloudstack/agent mv log4j-cloud.xml.dpkg-dist log4j-cloud.xml service cloudstack-agent restart - - - Once the agent is running, you can uninstall the old cloud-* packages from your system: - sudo dpkg --purge cloud-agent - - - - - If you are using CentOS or RHEL, follow this procedure to upgrade your packages. If not, skip to step . - Community Packages - This section assumes you're using the community supplied packages for &PRODUCT;. If you've created your own packages and yum repository, substitute your own URL for the ones used in these examples. - - - - The first order of business will be to change the yum repository for each system with &PRODUCT; packages. This means all management servers, and any hosts that have the KVM agent. (No changes should be necessary for hosts that are running VMware or Xen.) - Start by opening /etc/yum.repos.d/cloudstack.repo on any systems that have &PRODUCT; packages installed. - This file should have content similar to the following: - + + + Once the agent is running, you can uninstall the old cloud-* packages from your + system: + sudo dpkg --purge cloud-agent + + + + + If you are using CentOS or RHEL, follow this procedure to upgrade your packages. If + not, skip to step . + + Community Packages + This section assumes you're using the community supplied packages for &PRODUCT;. + If you've created your own packages and yum repository, substitute your own URL for + the ones used in these examples. + + + + The first order of business will be to change the yum repository for each system + with &PRODUCT; packages. This means all management servers, and any hosts that have + the KVM agent. (No changes should be necessary for hosts that are running VMware or + Xen.) + Start by opening /etc/yum.repos.d/cloudstack.repo on any + systems that have &PRODUCT; packages installed. + This file should have content similar to the following: + [apache-cloudstack] name=Apache CloudStack baseurl=http://cloudstack.apt-get.eu/rhel/4.0/ enabled=1 gpgcheck=0 - If you are using the community provided package repository, change the baseurl to http://cloudstack.apt-get.eu/rhel/4.1/ - If you're using your own package repository, change this line to read as appropriate for your 4.1.0 repository. - - - Now that you have the repository configured, it's time to install the cloudstack-management package by upgrading the older cloud-client package. - $ sudo yum upgrade cloud-client - - - For KVM hosts, you will need to upgrade the cloud-agent package, similarly installing the new version as cloudstack-agent. - $ sudo yum upgrade cloud-agent - During the installation of cloudstack-agent, the RPM will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent. - - - Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads: - paths.script=/usr/share/cloudstack-common - If not, add the line. - - - Restart the agent: - + If you are using the community provided package repository, change the baseurl + to http://cloudstack.apt-get.eu/rhel/4.1/ + If you're using your own package repository, change this line to read as + appropriate for your 4.1.0 repository. + + + Now that you have the repository configured, it's time to install the + cloudstack-management package by upgrading the older + cloud-client package. + $ sudo yum upgrade cloud-client + + + For KVM hosts, you will need to upgrade the cloud-agent + package, similarly installing the new version as + cloudstack-agent. + $ sudo yum upgrade cloud-agent + During the installation of cloudstack-agent, the RPM will + copy your agent.properties, + log4j-cloud.xml, and + environment.properties from + /etc/cloud/agent to + /etc/cloudstack/agent. + + + Verify that the file + /etc/cloudstack/agent/environment.properties has a line that + reads: + paths.script=/usr/share/cloudstack-common + If not, add the line. + + + Restart the agent: + service cloud-agent stop killall jsvc service cloudstack-agent start - - - - - If you have made changes to your copy of - /etc/cloud/management/components.xml the changes will be - preserved in the upgrade. However, you need to do the following steps to place these - changes in a new version of the file which is compatible with version - 4.1.0. - - - Make a backup copy of /etc/cloud/management/components.xml. - For example: - # mv /etc/cloud/management/components.xml /etc/cloud/management/components.xml-backup - - - Copy /etc/cloud/management/components.xml.rpmnew to create - a new /etc/cloud/management/components.xml: - # cp -ap /etc/cloud/management/components.xml.rpmnew /etc/cloud/management/components.xml - - - Merge your changes from the backup file into the new - components.xml. - # vi /etc/cloud/management/components.xml - - - - If you have more than one management server node, repeat the upgrade steps on each - node. - + + + + + If you have made changes to your copy of + /etc/cloud/management/components.xml the changes will be + preserved in the upgrade. However, you need to do the following steps to place these + changes in a new version of the file which is compatible with version 4.1.0. + + + Make a backup copy of /etc/cloud/management/components.xml. + For example: + # mv /etc/cloud/management/components.xml /etc/cloud/management/components.xml-backup + + + Copy /etc/cloud/management/components.xml.rpmnew to create + a new /etc/cloud/management/components.xml: + # cp -ap /etc/cloud/management/components.xml.rpmnew /etc/cloud/management/components.xml + + + Merge your changes from the backup file into the new + components.xml. + # vi /etc/cloud/management/components.xml + + + + If you have more than one management server node, repeat the upgrade steps on each + node. + + + + Start the first Management Server. Do not start any other Management Server nodes + yet. + # service cloud-management start + Wait until the databases are upgraded. Ensure that the database upgrade is complete. + After confirmation, start the other Management Servers one at a time by running the same + command on each node. + + Failing to restart the Management Server indicates a problem in the upgrade. + Having the Management Server restarted without any issues indicates that the upgrade + is successfully completed. + + + + Start all Usage Servers (if they were running on your previous version). Perform + this on each Usage Server host. + # service cloud-usage start + + + + Additional steps are required for each KVM host. These steps will not affect + running guests in the cloud. These steps are required only for clouds using KVM as + hosts and only on the KVM hosts. + + + + Configure a yum or apt respository containing the &PRODUCT; packages as outlined + in the Installation Guide. + + + Stop the running agent. + # service cloud-agent stop + + + Update the agent software with one of the following command sets as appropriate + for your environment. + # yum update cloud-* + # apt-get update + # apt-get upgrade cloud-* + + + Start the agent. + # service cloud-agent start + + + Edit /etc/cloud/agent/agent.properties to change the + resource parameter from + "com.cloud.agent.resource.computing.LibvirtComputingResource" to + "com.cloud.hypervisor.kvm.resource.LibvirtComputingResource". + + + Start the cloud agent and cloud management services. + + + When the Management Server is up and running, log in to the CloudStack UI and + restart the virtual router for proper functioning of all the features. + + + + + Log in to the CloudStack UI as administrator, and check the status of the hosts. All + hosts should come to Up state (except those that you know to be offline). You may need + to wait 20 or 30 minutes, depending on the number of hosts. + + Troubleshooting: If login fails, clear your browser cache and reload the + page. + + + Do not proceed to the next step until the hosts show in Up state. + + + If you are upgrading from 3.0.2, perform the following: + + + Ensure that the admin port is set to 8096 by using the "integration.api.port" + global parameter. + This port is used by the cloud-sysvmadm script at the end of the upgrade + procedure. For information about how to set this parameter, see "Setting Global + Configuration Parameters" in the Installation Guide. + + + Restart the Management Server. + + If you don't want the admin port to remain open, you can set it to null after + the upgrade is done and restart the management server. + + + + + + Run the cloud-sysvmadm script to stop, then start, all Secondary + Storage VMs, Console Proxy VMs, and virtual routers. Run the script once on each + management server. Substitute your own IP address of the MySQL instance, the MySQL user + to connect as, and the password to use for that user. In addition to those parameters, + provide the -c and -r arguments. For + example: + # nohup cloud-sysvmadm -d 192.168.1.5 -u cloud -p password -c -r > + sysvm.log 2>&1 & + # tail -f sysvm.log + This might take up to an hour or more to run, depending on the number of accounts in + the system. + + + If needed, upgrade all Citrix XenServer hypervisor hosts in your cloud to a version + supported by CloudStack 4.1.0. The supported versions are XenServer 5.6 SP2 and 6.0.2. + Instructions for upgrade can be found in the CloudStack 4.1.0 Installation Guide under + "Upgrading XenServer Versions." + + + Now apply the XenServer hotfix XS602E003 (and any other needed hotfixes) to + XenServer v6.0.2 hypervisor hosts. + + + Disconnect the XenServer cluster from CloudStack. + In the left navigation bar of the CloudStack UI, select Infrastructure. Under + Clusters, click View All. Select the XenServer cluster and click Actions - + Unmanage. + This may fail if there are hosts not in one of the states Up, Down, + Disconnected, or Alert. You may need to fix that before unmanaging this + cluster. + Wait until the status of the cluster has reached Unmanaged. Use the CloudStack + UI to check on the status. When the cluster is in the unmanaged state, there is no + connection to the hosts in the cluster. + + + To clean up the VLAN, log in to one XenServer host and run: + /opt/xensource/bin/cloud-clean-vlan.sh + + + Now prepare the upgrade by running the following on one XenServer host: + /opt/xensource/bin/cloud-prepare-upgrade.sh + If you see a message like "can't eject CD", log in to the VM and unmount the CD, + then run this script again. + + + Upload the hotfix to the XenServer hosts. Always start with the Xen pool master, + then the slaves. Using your favorite file copy utility (e.g. WinSCP), copy the + hotfixes to the host. Place them in a temporary folder such as /tmp. + On the Xen pool master, upload the hotfix with this command: + xe patch-upload file-name=XS602E003.xsupdate + Make a note of the output from this command, which is a UUID for the hotfix + file. You'll need it in another step later. + + (Optional) If you are applying other hotfixes as well, you can repeat the + commands in this section with the appropriate hotfix number. For example, + XS602E004.xsupdate. + + + + Manually live migrate all VMs on this host to another host. First, get a list of + the VMs on this host: + # xe vm-list + Then use this command to migrate each VM. Replace the example host name and VM + name with your own: + # xe vm-migrate live=true host=host-name + vm=VM-name + + Troubleshooting + If you see a message like "You attempted an operation on a VM which requires + PV drivers to be installed but the drivers were not detected," run: + /opt/xensource/bin/make_migratable.sh + b6cf79c8-02ee-050b-922f-49583d9f1a14. + + + + Apply the hotfix. First, get the UUID of this host: + # xe host-list + Then use the following command to apply the hotfix. Replace the example host + UUID with the current host ID, and replace the hotfix UUID with the output from the + patch-upload command you ran on this machine earlier. You can also get the hotfix + UUID by running xe patch-list. + xe patch-apply host-uuid=host-uuid uuid=hotfix-uuid + + + Copy the following files from the CloudStack Management Server to the + host. + + + + + + + Copy from here... + ...to here + + + + + /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/xenserver60/NFSSR.py + /opt/xensource/sm/NFSSR.py + + + /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/setupxenserver.sh + /opt/xensource/bin/setupxenserver.sh + + + /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/make_migratable.sh + /opt/xensource/bin/make_migratable.sh + + + + + + + (Only for hotfixes XS602E005 and XS602E007) You need to apply a new Cloud + Support Pack. + + + Download the CSP software onto the XenServer host from one of the following + links: + For hotfix XS602E005: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E005/56710/xe-phase-2/xenserver-cloud-supp.tgz + For hotfix XS602E007: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E007/57824/xe-phase-2/xenserver-cloud-supp.tgz - Start the first Management Server. Do not start any other Management Server nodes - yet. - # service cloud-management start - Wait until the databases are upgraded. Ensure that the database upgrade is complete. - After confirmation, start the other Management Servers one at a time by running the same - command on each node. - - Failing to restart the Management Server indicates a problem in the upgrade. - Having the Management Server restarted without any issues indicates that the upgrade - is successfully completed. - + Extract the file: + # tar xf xenserver-cloud-supp.tgz - Start all Usage Servers (if they were running on your previous version). Perform - this on each Usage Server host. - # service cloud-usage start + Run the following script: + # xe-install-supplemental-pack xenserver-cloud-supp.iso - - Additional steps are required for each KVM host. These steps will not affect - running guests in the cloud. These steps are required only for clouds using KVM as - hosts and only on the KVM hosts. - - - - Configure a yum or apt respository containing the &PRODUCT; packages as outlined - in the Installation Guide. - - - Stop the running agent. - # service cloud-agent stop - - - Update the agent software with one of the following command sets as appropriate - for your environment. - # yum update cloud-* - # apt-get update - # apt-get upgrade cloud-* - - - Start the agent. - # service cloud-agent start - - - Edit /etc/cloud/agent/agent.properties to change the - resource parameter from - "com.cloud.agent.resource.computing.LibvirtComputingResource" to - "com.cloud.hypervisor.kvm.resource.LibvirtComputingResource". - - - Start the cloud agent and cloud management services. - - - When the Management Server is up and running, log in to the CloudStack UI and - restart the virtual router for proper functioning of all the features. - - + If the XenServer host is part of a zone that uses basic networking, disable + Open vSwitch (OVS): + # xe-switch-network-backend bridge - - Log in to the CloudStack UI as administrator, and check the status of the hosts. All - hosts should come to Up state (except those that you know to be offline). You may need - to wait 20 or 30 minutes, depending on the number of hosts. - - Troubleshooting: If login fails, clear your browser cache and reload the - page. - - - Do not proceed to the next step until the hosts show in Up state. - - - If you are upgrading from 3.0.2, perform the following: - - - Ensure that the admin port is set to 8096 by using the "integration.api.port" - global parameter. - This port is used by the cloud-sysvmadm script at the end of the upgrade - procedure. For information about how to set this parameter, see "Setting Global - Configuration Parameters" in the Installation Guide. - - - Restart the Management Server. - - If you don't want the admin port to remain open, you can set it to null after - the upgrade is done and restart the management server. - - - - - - Run the cloud-sysvmadm script to stop, then start, all Secondary - Storage VMs, Console Proxy VMs, and virtual routers. Run the script once on each - management server. Substitute your own IP address of the MySQL instance, the MySQL user - to connect as, and the password to use for that user. In addition to those parameters, - provide the -c and -r arguments. For - example: - # nohup cloud-sysvmadm -d 192.168.1.5 -u cloud -p password -c -r > - sysvm.log 2>&1 & - # tail -f sysvm.log - This might take up to an hour or more to run, depending on the number of accounts in - the system. - - - If needed, upgrade all Citrix XenServer hypervisor hosts in your cloud to a version - supported by CloudStack 4.1.0. The supported versions are XenServer 5.6 SP2 - and 6.0.2. Instructions for upgrade can be found in the CloudStack 4.1.0 - Installation Guide under "Upgrading XenServer Versions." - - - Now apply the XenServer hotfix XS602E003 (and any other needed hotfixes) to - XenServer v6.0.2 hypervisor hosts. - - - Disconnect the XenServer cluster from CloudStack. - In the left navigation bar of the CloudStack UI, select Infrastructure. Under - Clusters, click View All. Select the XenServer cluster and click Actions - - Unmanage. - This may fail if there are hosts not in one of the states Up, Down, - Disconnected, or Alert. You may need to fix that before unmanaging this - cluster. - Wait until the status of the cluster has reached Unmanaged. Use the CloudStack - UI to check on the status. When the cluster is in the unmanaged state, there is no - connection to the hosts in the cluster. - - - To clean up the VLAN, log in to one XenServer host and run: - /opt/xensource/bin/cloud-clean-vlan.sh - - - Now prepare the upgrade by running the following on one XenServer host: - /opt/xensource/bin/cloud-prepare-upgrade.sh - If you see a message like "can't eject CD", log in to the VM and unmount the CD, - then run this script again. - - - Upload the hotfix to the XenServer hosts. Always start with the Xen pool master, - then the slaves. Using your favorite file copy utility (e.g. WinSCP), copy the - hotfixes to the host. Place them in a temporary folder such as /tmp. - On the Xen pool master, upload the hotfix with this command: - xe patch-upload file-name=XS602E003.xsupdate - Make a note of the output from this command, which is a UUID for the hotfix - file. You'll need it in another step later. - - (Optional) If you are applying other hotfixes as well, you can repeat the - commands in this section with the appropriate hotfix number. For example, - XS602E004.xsupdate. - - - - Manually live migrate all VMs on this host to another host. First, get a list of - the VMs on this host: - # xe vm-list - Then use this command to migrate each VM. Replace the example host name and VM - name with your own: - # xe vm-migrate live=true host=host-name - vm=VM-name - - Troubleshooting - If you see a message like "You attempted an operation on a VM which requires - PV drivers to be installed but the drivers were not detected," run: - /opt/xensource/bin/make_migratable.sh - b6cf79c8-02ee-050b-922f-49583d9f1a14. - - - - Apply the hotfix. First, get the UUID of this host: - # xe host-list - Then use the following command to apply the hotfix. Replace the example host - UUID with the current host ID, and replace the hotfix UUID with the output from the - patch-upload command you ran on this machine earlier. You can also get the hotfix - UUID by running xe patch-list. - xe patch-apply host-uuid=host-uuid uuid=hotfix-uuid - - - Copy the following files from the CloudStack Management Server to the - host. - - - - - - - Copy from here... - ...to here - - - - - /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/xenserver60/NFSSR.py - /opt/xensource/sm/NFSSR.py - - - /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/setupxenserver.sh - /opt/xensource/bin/setupxenserver.sh - - - /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/make_migratable.sh - /opt/xensource/bin/make_migratable.sh - - - - - - - (Only for hotfixes XS602E005 and XS602E007) You need to apply a new Cloud - Support Pack. - - - Download the CSP software onto the XenServer host from one of the following - links: - For hotfix XS602E005: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E005/56710/xe-phase-2/xenserver-cloud-supp.tgz - For hotfix XS602E007: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E007/57824/xe-phase-2/xenserver-cloud-supp.tgz - - - Extract the file: - # tar xf xenserver-cloud-supp.tgz - - - Run the following script: - # xe-install-supplemental-pack xenserver-cloud-supp.iso - - - If the XenServer host is part of a zone that uses basic networking, disable - Open vSwitch (OVS): - # xe-switch-network-backend bridge - - - - - Reboot this XenServer host. - - - Run the following: - /opt/xensource/bin/setupxenserver.sh - - If the message "mv: cannot stat `/etc/cron.daily/logrotate': No such file or - directory" appears, you can safely ignore it. - - - - Run the following: - for pbd in `xe pbd-list currently-attached=false| grep ^uuid | awk '{print $NF}'`; do xe pbd-plug uuid=$pbd ; - - - On each slave host in the Xen pool, repeat these steps, starting from "manually - live migrate VMs." - - - - - - Troubleshooting Tip - If passwords which you know to be valid appear not to work after upgrade, or other UI - issues are seen, try clearing your browser cache and reloading the UI page. - -
-
- Upgrade from 2.2.14 to 4.1.0 - - - Ensure that you query your IPaddress usage records and process them; for example, - issue invoices for any usage that you have not yet billed users for. - Starting in 3.0.2, the usage record format for IP addresses is the same as the rest - of the usage types. Instead of a single record with the assignment and release dates, - separate records are generated per aggregation period with start and end dates. After - upgrading to 4.1.0, any existing IP address usage records in the old format - will no longer be available. - - - If you are using version 2.2.0 - 2.2.13, first upgrade to 2.2.14 by using the - instructions in the 2.2.14 Release Notes. - - KVM Hosts - If KVM hypervisor is used in your cloud, be sure you completed the step to insert - a valid username and password into the host_details table on each KVM node as - described in the 2.2.14 Release Notes. This step is critical, as the database will be - encrypted after the upgrade to 4.1.0. - - - - While running the 2.2.14 system, log in to the UI as root administrator. - - - Using the UI, add a new System VM template for each hypervisor type that is used in - your cloud. In each zone, add a system VM template for each hypervisor used in that - zone - - - In the left navigation bar, click Templates. - - - In Select view, click Templates. - - - Click Register template. - The Register template dialog box is displayed. - - - In the Register template dialog box, specify the following values depending on - the hypervisor type (do not change these): - - - - - - - Hypervisor - Description - - - - - XenServer - Name: systemvm-xenserver-4.1.0 - Description: systemvm-xenserver-4.1.0 - URL: - http://download.cloud.com/templates/acton/acton-systemvm-02062012.vhd.bz2 - Zone: Choose the zone where this hypervisor is used - Hypervisor: XenServer - Format: VHD - OS Type: Debian GNU/Linux 5.0 (32-bit) - Extractable: no - Password Enabled: no - Public: no - Featured: no - - - - KVM - Name: systemvm-kvm-4.1.0 - Description: systemvm-kvm-4.1.0 - URL: - http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2 - Zone: Choose the zone where this hypervisor is used - Hypervisor: KVM - Format: QCOW2 - OS Type: Debian GNU/Linux 5.0 (32-bit) - Extractable: no - Password Enabled: no - Public: no - Featured: no - - - - VMware - Name: systemvm-vmware-4.1.0 - Description: systemvm-vmware-4.1.0 - URL: - http://download.cloud.com/templates/burbank/burbank-systemvm-08012012.ova - Zone: Choose the zone where this hypervisor is used - Hypervisor: VMware - Format: OVA - OS Type: Debian GNU/Linux 5.0 (32-bit) - Extractable: no - Password Enabled: no - Public: no - Featured: no - - - - - - - - - - Watch the screen to be sure that the template downloads successfully and enters the - READY state. Do not proceed until this is successful - - - WARNING: If you use more than one type of - hypervisor in your cloud, be sure you have repeated these steps to download the system - VM template for each hypervisor type. Otherwise, the upgrade will fail. - - - Stop all Usage Servers if running. Run this on all Usage Server hosts. - # service cloud-usage stop - - - Stop the Management Servers. Run this on all Management Server hosts. - # service cloud-management stop - - - On the MySQL master, take a backup of the MySQL databases. We recommend performing - this step even in test upgrades. If there is an issue, this will assist with - debugging. - In the following commands, it is assumed that you have set the root password on the - database, which is a CloudStack recommended best practice. Substitute your own MySQL - root password. - # mysqldump -u root -pmysql_password cloud > cloud-backup.dmp + + + + Reboot this XenServer host. + + + Run the following: + /opt/xensource/bin/setupxenserver.sh + + If the message "mv: cannot stat `/etc/cron.daily/logrotate': No such file or + directory" appears, you can safely ignore it. + + + + Run the following: + for pbd in `xe pbd-list currently-attached=false| grep ^uuid | awk '{print $NF}'`; do xe pbd-plug uuid=$pbd ; + + + On each slave host in the Xen pool, repeat these steps, starting from "manually + live migrate VMs." + + + + + + Troubleshooting Tip + If passwords which you know to be valid appear not to work after upgrade, or other UI + issues are seen, try clearing your browser cache and reloading the UI page. + +
+
+ Upgrade from 2.2.14 to 4.1.0 + + + Ensure that you query your IPaddress usage records and process them; for example, + issue invoices for any usage that you have not yet billed users for. + Starting in 3.0.2, the usage record format for IP addresses is the same as the rest + of the usage types. Instead of a single record with the assignment and release dates, + separate records are generated per aggregation period with start and end dates. After + upgrading to 4.1.0, any existing IP address usage records in the old format will no + longer be available. + + + If you are using version 2.2.0 - 2.2.13, first upgrade to 2.2.14 by using the + instructions in the 2.2.14 + Release Notes. + + KVM Hosts + If KVM hypervisor is used in your cloud, be sure you completed the step to insert + a valid username and password into the host_details table on each KVM node as + described in the 2.2.14 Release Notes. This step is critical, as the database will be + encrypted after the upgrade to 4.1.0. + + + + While running the 2.2.14 system, log in to the UI as root administrator. + + + Using the UI, add a new System VM template for each hypervisor type that is used in + your cloud. In each zone, add a system VM template for each hypervisor used in that + zone + + + In the left navigation bar, click Templates. + + + In Select view, click Templates. + + + Click Register template. + The Register template dialog box is displayed. + + + In the Register template dialog box, specify the following values depending on + the hypervisor type (do not change these): + + + + + + + Hypervisor + Description + + + + + XenServer + Name: systemvm-xenserver-4.1.0 + Description: systemvm-xenserver-4.1.0 + URL: + http://download.cloud.com/templates/acton/acton-systemvm-02062012.vhd.bz2 + Zone: Choose the zone where this hypervisor is used + Hypervisor: XenServer + Format: VHD + OS Type: Debian GNU/Linux 5.0 (32-bit) + Extractable: no + Password Enabled: no + Public: no + Featured: no + + + + KVM + Name: systemvm-kvm-4.1.0 + Description: systemvm-kvm-4.1.0 + URL: + http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2 + Zone: Choose the zone where this hypervisor is used + Hypervisor: KVM + Format: QCOW2 + OS Type: Debian GNU/Linux 5.0 (32-bit) + Extractable: no + Password Enabled: no + Public: no + Featured: no + + + + VMware + Name: systemvm-vmware-4.1.0 + Description: systemvm-vmware-4.1.0 + URL: + http://download.cloud.com/templates/burbank/burbank-systemvm-08012012.ova + Zone: Choose the zone where this hypervisor is used + Hypervisor: VMware + Format: OVA + OS Type: Debian GNU/Linux 5.0 (32-bit) + Extractable: no + Password Enabled: no + Public: no + Featured: no + + + + + + + + + + Watch the screen to be sure that the template downloads successfully and enters the + READY state. Do not proceed until this is successful + + + WARNING: If you use more than one type of + hypervisor in your cloud, be sure you have repeated these steps to download the system + VM template for each hypervisor type. Otherwise, the upgrade will fail. + + + Stop all Usage Servers if running. Run this on all Usage Server hosts. + # service cloud-usage stop + + + Stop the Management Servers. Run this on all Management Server hosts. + # service cloud-management stop + + + On the MySQL master, take a backup of the MySQL databases. We recommend performing + this step even in test upgrades. If there is an issue, this will assist with + debugging. + In the following commands, it is assumed that you have set the root password on the + database, which is a CloudStack recommended best practice. Substitute your own MySQL + root password. + # mysqldump -u root -pmysql_password cloud > cloud-backup.dmp # mysqldump -u root -pmysql_password cloud_usage > cloud-usage-backup.dmp - - - Either build RPM/DEB packages as detailed in the Installation Guide, or use one of - the community provided yum/apt repositories to gain access to the &PRODUCT; binaries. - - - - If you are using Ubuntu, follow this procedure to upgrade your packages. If not, skip to step . - Community Packages - This section assumes you're using the community supplied packages for &PRODUCT;. If you've created your own packages and APT repository, substitute your own URL for the ones used in these examples. - - - - The first order of business will be to change the sources list for each system with &PRODUCT; packages. This means all management servers, and any hosts that have the KVM agent. (No changes should be necessary for hosts that are running VMware or Xen.) - Start by opening /etc/apt/sources.list.d/cloudstack.list on any systems that have &PRODUCT; packages installed. - This file should have one line, which contains: - deb http://cloudstack.apt-get.eu/ubuntu precise 4.0 - We'll change it to point to the new package repository: - deb http://cloudstack.apt-get.eu/ubuntu precise 4.1 - If you're using your own package repository, change this line to read as appropriate for your 4.1.0 repository. - - - Now update your apt package list: - $ sudo apt-get update - - - Now that you have the repository configured, it's time to install the cloudstack-management package. This will pull in any other dependencies you need. - $ sudo apt-get install cloudstack-management - - - You will need to manually install the cloudstack-agent package: - $ sudo apt-get install cloudstack-agent - During the installation of cloudstack-agent, APT will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent. - When prompted whether you wish to keep your configuration, say Yes. - - - Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads: - paths.script=/usr/share/cloudstack-common - If not, add the line. - - - Restart the agent: - + + + Either build RPM/DEB packages as detailed in the Installation Guide, or use one of + the community provided yum/apt repositories to gain access to the &PRODUCT; binaries. + + + + If you are using Ubuntu, follow this procedure to upgrade your packages. If not, + skip to step . + + Community Packages + This section assumes you're using the community supplied packages for &PRODUCT;. + If you've created your own packages and APT repository, substitute your own URL for + the ones used in these examples. + + + + The first order of business will be to change the sources list for each system + with &PRODUCT; packages. This means all management servers, and any hosts that have + the KVM agent. (No changes should be necessary for hosts that are running VMware or + Xen.) + Start by opening /etc/apt/sources.list.d/cloudstack.list on + any systems that have &PRODUCT; packages installed. + This file should have one line, which contains: + deb http://cloudstack.apt-get.eu/ubuntu precise 4.0 + We'll change it to point to the new package repository: + deb http://cloudstack.apt-get.eu/ubuntu precise 4.1 + If you're using your own package repository, change this line to read as + appropriate for your 4.1.0 repository. + + + Now update your apt package list: + $ sudo apt-get update + + + Now that you have the repository configured, it's time to install the + cloudstack-management package. This will pull in any other + dependencies you need. + $ sudo apt-get install cloudstack-management + + + You will need to manually install the cloudstack-agent + package: + $ sudo apt-get install cloudstack-agent + During the installation of cloudstack-agent, APT will copy + your agent.properties, log4j-cloud.xml, + and environment.properties from + /etc/cloud/agent to + /etc/cloudstack/agent. + When prompted whether you wish to keep your configuration, say Yes. + + + Verify that the file + /etc/cloudstack/agent/environment.properties has a line that + reads: + paths.script=/usr/share/cloudstack-common + If not, add the line. + + + Restart the agent: + service cloud-agent stop killall jsvc service cloudstack-agent start - - - During the upgrade, log4j-cloud.xml was simply copied over, so the logs will continue to be added to /var/log/cloud/agent/agent.log. There's nothing wrong with this, but if you prefer to be consistent, you can change this by copying over the sample configuration file: - + + + During the upgrade, log4j-cloud.xml was simply copied over, + so the logs will continue to be added to + /var/log/cloud/agent/agent.log. There's nothing + wrong with this, but if you prefer to be consistent, you can + change this by copying over the sample configuration file: + cd /etc/cloudstack/agent mv log4j-cloud.xml.dpkg-dist log4j-cloud.xml service cloudstack-agent restart - - - Once the agent is running, you can uninstall the old cloud-* packages from your system: - sudo dpkg --purge cloud-agent - - - - - If you are using CentOS or RHEL, follow this procedure to upgrade your packages. If not, skip to step . - Community Packages - This section assumes you're using the community supplied packages for &PRODUCT;. If you've created your own packages and yum repository, substitute your own URL for the ones used in these examples. - - - - The first order of business will be to change the yum repository for each system with &PRODUCT; packages. This means all management servers, and any hosts that have the KVM agent. (No changes should be necessary for hosts that are running VMware or Xen.) - Start by opening /etc/yum.repos.d/cloudstack.repo on any systems that have &PRODUCT; packages installed. - This file should have content similar to the following: - + + + Once the agent is running, you can uninstall the old cloud-* packages from your + system: + sudo dpkg --purge cloud-agent + + + + + If you are using CentOS or RHEL, follow this procedure to upgrade your packages. If + not, skip to step . + + Community Packages + This section assumes you're using the community supplied packages for &PRODUCT;. + If you've created your own packages and yum repository, substitute your own URL for + the ones used in these examples. + + + + The first order of business will be to change the yum repository for each system + with &PRODUCT; packages. This means all management servers, and any hosts that have + the KVM agent. (No changes should be necessary for hosts that are running VMware or + Xen.) + Start by opening /etc/yum.repos.d/cloudstack.repo on any + systems that have &PRODUCT; packages installed. + This file should have content similar to the following: + [apache-cloudstack] name=Apache CloudStack baseurl=http://cloudstack.apt-get.eu/rhel/4.0/ enabled=1 gpgcheck=0 - If you are using the community provided package repository, change the baseurl to http://cloudstack.apt-get.eu/rhel/4.1/ - If you're using your own package repository, change this line to read as appropriate for your 4.1.0 repository. - - - Now that you have the repository configured, it's time to install the cloudstack-management package by upgrading the older cloud-client package. - $ sudo yum upgrade cloud-client - - - For KVM hosts, you will need to upgrade the cloud-agent package, similarly installing the new version as cloudstack-agent. - $ sudo yum upgrade cloud-agent - During the installation of cloudstack-agent, the RPM will copy your agent.properties, log4j-cloud.xml, and environment.properties from /etc/cloud/agent to /etc/cloudstack/agent. - - - Verify that the file /etc/cloudstack/agent/environment.properties has a line that reads: - paths.script=/usr/share/cloudstack-common - If not, add the line. - - - Restart the agent: - + If you are using the community provided package repository, change the baseurl + to http://cloudstack.apt-get.eu/rhel/4.1/ + If you're using your own package repository, change this line to read as + appropriate for your 4.1.0 repository. + + + Now that you have the repository configured, it's time to install the + cloudstack-management package by upgrading the older + cloud-client package. + $ sudo yum upgrade cloud-client + + + For KVM hosts, you will need to upgrade the cloud-agent + package, similarly installing the new version as + cloudstack-agent. + $ sudo yum upgrade cloud-agent + During the installation of cloudstack-agent, the RPM will + copy your agent.properties, + log4j-cloud.xml, and + environment.properties from + /etc/cloud/agent to + /etc/cloudstack/agent. + + + Verify that the file + /etc/cloudstack/agent/environment.properties has a line that + reads: + paths.script=/usr/share/cloudstack-common + If not, add the line. + + + Restart the agent: + service cloud-agent stop killall jsvc service cloudstack-agent start - - - - - If you have made changes to your existing copy of the file components.xml in your - previous-version CloudStack installation, the changes will be preserved in the upgrade. - However, you need to do the following steps to place these changes in a new version of - the file which is compatible with version 4.0.0-incubating. - - How will you know whether you need to do this? If the upgrade output in the - previous step included a message like the following, then some custom content was - found in your old components.xml, and you need to merge the two files: - - warning: /etc/cloud/management/components.xml created as /etc/cloud/management/components.xml.rpmnew - - - Make a backup copy of your - /etc/cloud/management/components.xml file. For - example: - # mv /etc/cloud/management/components.xml /etc/cloud/management/components.xml-backup - - - Copy /etc/cloud/management/components.xml.rpmnew to create - a new /etc/cloud/management/components.xml: - # cp -ap /etc/cloud/management/components.xml.rpmnew /etc/cloud/management/components.xml - - - Merge your changes from the backup file into the new components.xml file. - # vi /etc/cloud/management/components.xml + + + + + If you have made changes to your existing copy of the file components.xml in your + previous-version CloudStack installation, the changes will be preserved in the upgrade. + However, you need to do the following steps to place these changes in a new version of + the file which is compatible with version 4.0.0-incubating. + + How will you know whether you need to do this? If the upgrade output in the + previous step included a message like the following, then some custom content was + found in your old components.xml, and you need to merge the two files: + + warning: /etc/cloud/management/components.xml created as /etc/cloud/management/components.xml.rpmnew + + + Make a backup copy of your + /etc/cloud/management/components.xml file. For + example: + # mv /etc/cloud/management/components.xml /etc/cloud/management/components.xml-backup + + + Copy /etc/cloud/management/components.xml.rpmnew to create + a new /etc/cloud/management/components.xml: + # cp -ap /etc/cloud/management/components.xml.rpmnew /etc/cloud/management/components.xml + + + Merge your changes from the backup file into the new components.xml file. + # vi /etc/cloud/management/components.xml - - - - - If you have made changes to your existing copy of the - /etc/cloud/management/db.properties file in your previous-version - CloudStack installation, the changes will be preserved in the upgrade. However, you need - to do the following steps to place these changes in a new version of the file which is - compatible with version 4.0.0-incubating. - - - Make a backup copy of your file - /etc/cloud/management/db.properties. For example: - # mv /etc/cloud/management/db.properties /etc/cloud/management/db.properties-backup - - - Copy /etc/cloud/management/db.properties.rpmnew to create a - new /etc/cloud/management/db.properties: - # cp -ap /etc/cloud/management/db.properties.rpmnew etc/cloud/management/db.properties - - - Merge your changes from the backup file into the new db.properties file. - # vi /etc/cloud/management/db.properties - - - - - On the management server node, run the following command. It is recommended that you - use the command-line flags to provide your own encryption keys. See Password and Key - Encryption in the Installation Guide. - # cloud-setup-encryption -e encryption_type -m management_server_key -k database_key - When used without arguments, as in the following example, the default encryption - type and keys will be used: - - - (Optional) For encryption_type, use file or web to indicate the technique used - to pass in the database encryption password. Default: file. - - - (Optional) For management_server_key, substitute the default key that is used to - encrypt confidential parameters in the properties file. Default: password. It is - highly recommended that you replace this with a more secure value - - - (Optional) For database_key, substitute the default key that is used to encrypt - confidential parameters in the CloudStack database. Default: password. It is highly - recommended that you replace this with a more secure value. - - - - - Repeat steps 10 - 14 on every management server node. If you provided your own - encryption key in step 14, use the same key on all other management servers. - - - Start the first Management Server. Do not start any other Management Server nodes - yet. - # service cloud-management start - Wait until the databases are upgraded. Ensure that the database upgrade is complete. - You should see a message like "Complete! Done." After confirmation, start the other - Management Servers one at a time by running the same command on each node. - - - Start all Usage Servers (if they were running on your previous version). Perform - this on each Usage Server host. - # service cloud-usage start - - - (KVM only) Additional steps are required for each KVM host. These steps will not - affect running guests in the cloud. These steps are required only for clouds using KVM - as hosts and only on the KVM hosts. - - - Configure your CloudStack package repositories as outlined in the Installation - Guide - - - Stop the running agent. - # service cloud-agent stop - - - Update the agent software with one of the following command sets as - appropriate. - # yum update cloud-* - + + + + + If you have made changes to your existing copy of the + /etc/cloud/management/db.properties file in your previous-version + CloudStack installation, the changes will be preserved in the upgrade. However, you need + to do the following steps to place these changes in a new version of the file which is + compatible with version 4.0.0-incubating. + + + Make a backup copy of your file + /etc/cloud/management/db.properties. For example: + # mv /etc/cloud/management/db.properties /etc/cloud/management/db.properties-backup + + + Copy /etc/cloud/management/db.properties.rpmnew to create a + new /etc/cloud/management/db.properties: + # cp -ap /etc/cloud/management/db.properties.rpmnew etc/cloud/management/db.properties + + + Merge your changes from the backup file into the new db.properties file. + # vi /etc/cloud/management/db.properties + + + + + On the management server node, run the following command. It is recommended that you + use the command-line flags to provide your own encryption keys. See Password and Key + Encryption in the Installation Guide. + # cloud-setup-encryption -e encryption_type -m management_server_key -k database_key + When used without arguments, as in the following example, the default encryption + type and keys will be used: + + + (Optional) For encryption_type, use file or web to indicate the technique used + to pass in the database encryption password. Default: file. + + + (Optional) For management_server_key, substitute the default key that is used to + encrypt confidential parameters in the properties file. Default: password. It is + highly recommended that you replace this with a more secure value + + + (Optional) For database_key, substitute the default key that is used to encrypt + confidential parameters in the CloudStack database. Default: password. It is highly + recommended that you replace this with a more secure value. + + + + + Repeat steps 10 - 14 on every management server node. If you provided your own + encryption key in step 14, use the same key on all other management servers. + + + Start the first Management Server. Do not start any other Management Server nodes + yet. + # service cloud-management start + Wait until the databases are upgraded. Ensure that the database upgrade is complete. + You should see a message like "Complete! Done." After confirmation, start the other + Management Servers one at a time by running the same command on each node. + + + Start all Usage Servers (if they were running on your previous version). Perform + this on each Usage Server host. + # service cloud-usage start + + + (KVM only) Additional steps are required for each KVM host. These steps will not + affect running guests in the cloud. These steps are required only for clouds using KVM + as hosts and only on the KVM hosts. + + + Configure your CloudStack package repositories as outlined in the Installation + Guide + + + Stop the running agent. + # service cloud-agent stop + + + Update the agent software with one of the following command sets as + appropriate. + # yum update cloud-* + # apt-get update # apt-get upgrade cloud-* - - - Start the agent. - # service cloud-agent start - - - Copy the contents of the agent.properties file to the new - agent.properties file by using the following command - sed -i 's/com.cloud.agent.resource.computing.LibvirtComputingResource/com.cloud.hypervisor.kvm.resource.LibvirtComputingResource/g' /etc/cloud/agent/agent.properties - - - Start the cloud agent and cloud management services. - - - When the Management Server is up and running, log in to the CloudStack UI and - restart the virtual router for proper functioning of all the features. - - - - - Log in to the CloudStack UI as admin, and check the status of the hosts. All hosts - should come to Up state (except those that you know to be offline). You may need to wait - 20 or 30 minutes, depending on the number of hosts. - Do not proceed to the next step until the hosts show in the Up state. If the hosts - do not come to the Up state, contact support. - - - Run the following script to stop, then start, all Secondary Storage VMs, Console - Proxy VMs, and virtual routers. - - - Run the command once on one management server. Substitute your own IP address of - the MySQL instance, the MySQL user to connect as, and the password to use for that - user. In addition to those parameters, provide the "-c" and "-r" arguments. For - example: - # nohup cloud-sysvmadm -d 192.168.1.5 -u cloud -p password -c -r > sysvm.log 2>&1 & + + + Start the agent. + # service cloud-agent start + + + Copy the contents of the agent.properties file to the new + agent.properties file by using the following command + sed -i 's/com.cloud.agent.resource.computing.LibvirtComputingResource/com.cloud.hypervisor.kvm.resource.LibvirtComputingResource/g' /etc/cloud/agent/agent.properties + + + Start the cloud agent and cloud management services. + + + When the Management Server is up and running, log in to the CloudStack UI and + restart the virtual router for proper functioning of all the features. + + + + + Log in to the CloudStack UI as admin, and check the status of the hosts. All hosts + should come to Up state (except those that you know to be offline). You may need to wait + 20 or 30 minutes, depending on the number of hosts. + Do not proceed to the next step until the hosts show in the Up state. If the hosts + do not come to the Up state, contact support. + + + Run the following script to stop, then start, all Secondary Storage VMs, Console + Proxy VMs, and virtual routers. + + + Run the command once on one management server. Substitute your own IP address of + the MySQL instance, the MySQL user to connect as, and the password to use for that + user. In addition to those parameters, provide the "-c" and "-r" arguments. For + example: + # nohup cloud-sysvmadm -d 192.168.1.5 -u cloud -p password -c -r > sysvm.log 2>&1 & # tail -f sysvm.log - This might take up to an hour or more to run, depending on the number of - accounts in the system. - - - After the script terminates, check the log to verify correct execution: - # tail -f sysvm.log - The content should be like the following: - + This might take up to an hour or more to run, depending on the number of + accounts in the system. + + + After the script terminates, check the log to verify correct execution: + # tail -f sysvm.log + The content should be like the following: + Stopping and starting 1 secondary storage vm(s)... Done stopping and starting secondary storage vm(s) Stopping and starting 1 console proxy vm(s)... @@ -5179,197 +5825,197 @@ service cloudstack-agent start Stopping and starting 4 running routing vm(s)... Done restarting router(s). - - - - - If you would like additional confirmation that the new system VM templates were - correctly applied when these system VMs were rebooted, SSH into the System VM and check - the version. - Use one of the following techniques, depending on the hypervisor. - - XenServer or KVM: - SSH in by using the link local IP address of the system VM. For example, in the - command below, substitute your own path to the private key used to log in to the - system VM and your own link local IP. - - Run the following commands on the XenServer or KVM host on which the system VM is - present: - # ssh -i private-key-path link-local-ip -p 3922 + + + + + If you would like additional confirmation that the new system VM templates were + correctly applied when these system VMs were rebooted, SSH into the System VM and check + the version. + Use one of the following techniques, depending on the hypervisor. + + XenServer or KVM: + SSH in by using the link local IP address of the system VM. For example, in the + command below, substitute your own path to the private key used to log in to the + system VM and your own link local IP. + + Run the following commands on the XenServer or KVM host on which the system VM is + present: + # ssh -i private-key-path link-local-ip -p 3922 # cat /etc/cloudstack-release - The output should be like the following: - Cloudstack Release 4.0.0-incubating Mon Oct 9 15:10:04 PST 2012 - - ESXi - SSH in using the private IP address of the system VM. For example, in the command - below, substitute your own path to the private key used to log in to the system VM and - your own private IP. - - Run the following commands on the Management Server: - # ssh -i private-key-path private-ip -p 3922 + The output should be like the following: + Cloudstack Release 4.0.0-incubating Mon Oct 9 15:10:04 PST 2012 + + ESXi + SSH in using the private IP address of the system VM. For example, in the command + below, substitute your own path to the private key used to log in to the system VM and + your own private IP. + + Run the following commands on the Management Server: + # ssh -i private-key-path private-ip -p 3922 # cat /etc/cloudstack-release - The output should be like the following: - Cloudstack Release 4.0.0-incubating Mon Oct 9 15:10:04 PST 2012 + The output should be like the following: + Cloudstack Release 4.0.0-incubating Mon Oct 9 15:10:04 PST 2012 + + + If needed, upgrade all Citrix XenServer hypervisor hosts in your cloud to a version + supported by CloudStack 4.0.0-incubating. The supported versions are XenServer 5.6 SP2 + and 6.0.2. Instructions for upgrade can be found in the CloudStack 4.0.0-incubating + Installation Guide. + + + Apply the XenServer hotfix XS602E003 (and any other needed hotfixes) to XenServer + v6.0.2 hypervisor hosts. + + + Disconnect the XenServer cluster from CloudStack. + In the left navigation bar of the CloudStack UI, select Infrastructure. Under + Clusters, click View All. Select the XenServer cluster and click Actions - + Unmanage. + This may fail if there are hosts not in one of the states Up, Down, + Disconnected, or Alert. You may need to fix that before unmanaging this + cluster. + Wait until the status of the cluster has reached Unmanaged. Use the CloudStack + UI to check on the status. When the cluster is in the unmanaged state, there is no + connection to the hosts in the cluster. + + + To clean up the VLAN, log in to one XenServer host and run: + /opt/xensource/bin/cloud-clean-vlan.sh + + + Prepare the upgrade by running the following on one XenServer host: + /opt/xensource/bin/cloud-prepare-upgrade.sh + If you see a message like "can't eject CD", log in to the VM and umount the CD, + then run this script again. + + + Upload the hotfix to the XenServer hosts. Always start with the Xen pool master, + then the slaves. Using your favorite file copy utility (e.g. WinSCP), copy the + hotfixes to the host. Place them in a temporary folder such as /root or /tmp. + On the Xen pool master, upload the hotfix with this command: + xe patch-upload file-name=XS602E003.xsupdate + Make a note of the output from this command, which is a UUID for the hotfix + file. You'll need it in another step later. + + (Optional) If you are applying other hotfixes as well, you can repeat the + commands in this section with the appropriate hotfix number. For example, + XS602E004.xsupdate. + + + + Manually live migrate all VMs on this host to another host. First, get a list of + the VMs on this host: + # xe vm-list + Then use this command to migrate each VM. Replace the example host name and VM + name with your own: + # xe vm-migrate live=true host=host-name vm=VM-name + + Troubleshooting + If you see a message like "You attempted an operation on a VM which requires + PV drivers to be installed but the drivers were not detected," run: + /opt/xensource/bin/make_migratable.sh + b6cf79c8-02ee-050b-922f-49583d9f1a14. + + + + Apply the hotfix. First, get the UUID of this host: + # xe host-list + Then use the following command to apply the hotfix. Replace the example host + UUID with the current host ID, and replace the hotfix UUID with the output from the + patch-upload command you ran on this machine earlier. You can also get the hotfix + UUID by running xe patch-list. + xe patch-apply host-uuid=host-uuid + uuid=hotfix-uuid + + + Copy the following files from the CloudStack Management Server to the + host. + + + + + + + Copy from here... + ...to here + + + + + /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/xenserver60/NFSSR.py + /opt/xensource/sm/NFSSR.py + + + /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/setupxenserver.sh + /opt/xensource/bin/setupxenserver.sh + + + /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/make_migratable.sh + /opt/xensource/bin/make_migratable.sh + + + + + + + (Only for hotfixes XS602E005 and XS602E007) You need to apply a new Cloud + Support Pack. + + + Download the CSP software onto the XenServer host from one of the following + links: + For hotfix XS602E005: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E005/56710/xe-phase-2/xenserver-cloud-supp.tgz + For hotfix XS602E007: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E007/57824/xe-phase-2/xenserver-cloud-supp.tgz - If needed, upgrade all Citrix XenServer hypervisor hosts in your cloud to a version - supported by CloudStack 4.0.0-incubating. The supported versions are XenServer 5.6 SP2 - and 6.0.2. Instructions for upgrade can be found in the CloudStack 4.0.0-incubating - Installation Guide. + Extract the file: + # tar xf xenserver-cloud-supp.tgz - Apply the XenServer hotfix XS602E003 (and any other needed hotfixes) to XenServer - v6.0.2 hypervisor hosts. - - - Disconnect the XenServer cluster from CloudStack. - In the left navigation bar of the CloudStack UI, select Infrastructure. Under - Clusters, click View All. Select the XenServer cluster and click Actions - - Unmanage. - This may fail if there are hosts not in one of the states Up, Down, - Disconnected, or Alert. You may need to fix that before unmanaging this - cluster. - Wait until the status of the cluster has reached Unmanaged. Use the CloudStack - UI to check on the status. When the cluster is in the unmanaged state, there is no - connection to the hosts in the cluster. - - - To clean up the VLAN, log in to one XenServer host and run: - /opt/xensource/bin/cloud-clean-vlan.sh - - - Prepare the upgrade by running the following on one XenServer host: - /opt/xensource/bin/cloud-prepare-upgrade.sh - If you see a message like "can't eject CD", log in to the VM and umount the CD, - then run this script again. - - - Upload the hotfix to the XenServer hosts. Always start with the Xen pool master, - then the slaves. Using your favorite file copy utility (e.g. WinSCP), copy the - hotfixes to the host. Place them in a temporary folder such as /root or /tmp. - On the Xen pool master, upload the hotfix with this command: - xe patch-upload file-name=XS602E003.xsupdate - Make a note of the output from this command, which is a UUID for the hotfix - file. You'll need it in another step later. - - (Optional) If you are applying other hotfixes as well, you can repeat the - commands in this section with the appropriate hotfix number. For example, - XS602E004.xsupdate. - - - - Manually live migrate all VMs on this host to another host. First, get a list of - the VMs on this host: - # xe vm-list - Then use this command to migrate each VM. Replace the example host name and VM - name with your own: - # xe vm-migrate live=true host=host-name vm=VM-name - - Troubleshooting - If you see a message like "You attempted an operation on a VM which requires - PV drivers to be installed but the drivers were not detected," run: - /opt/xensource/bin/make_migratable.sh - b6cf79c8-02ee-050b-922f-49583d9f1a14. - - - - Apply the hotfix. First, get the UUID of this host: - # xe host-list - Then use the following command to apply the hotfix. Replace the example host - UUID with the current host ID, and replace the hotfix UUID with the output from the - patch-upload command you ran on this machine earlier. You can also get the hotfix - UUID by running xe patch-list. - xe patch-apply host-uuid=host-uuid - uuid=hotfix-uuid - - - Copy the following files from the CloudStack Management Server to the - host. - - - - - - - Copy from here... - ...to here - - - - - /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/xenserver60/NFSSR.py - /opt/xensource/sm/NFSSR.py - - - /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/setupxenserver.sh - /opt/xensource/bin/setupxenserver.sh - - - /usr/lib64/cloud/common/scripts/vm/hypervisor/xenserver/make_migratable.sh - /opt/xensource/bin/make_migratable.sh - - - - - - - (Only for hotfixes XS602E005 and XS602E007) You need to apply a new Cloud - Support Pack. - - - Download the CSP software onto the XenServer host from one of the following - links: - For hotfix XS602E005: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E005/56710/xe-phase-2/xenserver-cloud-supp.tgz - For hotfix XS602E007: http://coltrane.eng.hq.xensource.com/release/XenServer-6.x/XS-6.0.2/hotfixes/XS602E007/57824/xe-phase-2/xenserver-cloud-supp.tgz - - - Extract the file: - # tar xf xenserver-cloud-supp.tgz - - - Run the following script: - # xe-install-supplemental-pack - xenserver-cloud-supp.iso - - - If the XenServer host is part of a zone that uses basic networking, disable - Open vSwitch (OVS): - # xe-switch-network-backend bridge - - - - - Reboot this XenServer host. - - - Run the following: - /opt/xensource/bin/setupxenserver.sh - - If the message "mv: cannot stat `/etc/cron.daily/logrotate': No such file or - directory" appears, you can safely ignore it. - - - - Run the following: - for pbd in `xe pbd-list currently-attached=false| grep ^uuid | awk - '{print $NF}'`; do xe pbd-plug uuid=$pbd ; - - - - On each slave host in the Xen pool, repeat these steps, starting from "manually - live migrate VMs." - - + Run the following script: + # xe-install-supplemental-pack + xenserver-cloud-supp.iso - -
-
- From 9ae29bb9c78e8a13668a5535e23f5ee953af1b7d Mon Sep 17 00:00:00 2001 From: Radhika PC Date: Mon, 22 Apr 2013 14:59:32 +0530 Subject: [PATCH 338/607] fixing RN build errors --- docs/en-US/Common_Content/feedback.xml | 24 ++++++++++++++++++++++++ docs/en-US/Preface.xml | 2 +- 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 docs/en-US/Common_Content/feedback.xml diff --git a/docs/en-US/Common_Content/feedback.xml b/docs/en-US/Common_Content/feedback.xml new file mode 100644 index 00000000000..4b06c9f3898 --- /dev/null +++ b/docs/en-US/Common_Content/feedback.xml @@ -0,0 +1,24 @@ + + +%BOOK_ENTITIES; +]> + +
+ Feedback + to-do +
diff --git a/docs/en-US/Preface.xml b/docs/en-US/Preface.xml index 28ad48eb5a3..e046410234d 100644 --- a/docs/en-US/Preface.xml +++ b/docs/en-US/Preface.xml @@ -25,7 +25,7 @@ Preface - + From 5118e9e29faeddd2408e925d43c2b8afdf170b6b Mon Sep 17 00:00:00 2001 From: Mice Xia Date: Mon, 22 Apr 2013 19:37:53 +0800 Subject: [PATCH 339/607] 1) fix CLOUDSTACK-2129 and CLOUDSTACK-2128 2) include nicId in network.offerings.assign/remove event 3) use publishUsageEvent instead of saveUsageEvent to track usageEvent --- .../com/cloud/network/NetworkServiceImpl.java | 7 +++++-- .../cloud/usage/UsageNetworkOfferingVO.java | 14 ++++++++++++- .../dao/UsageNetworkOfferingDaoImpl.java | 9 ++++---- .../src/com/cloud/vm/UserVmManagerImpl.java | 2 +- .../src/com/cloud/vm/UserVmStateListener.java | 21 ++++++++++++------- .../cloud/vm/VirtualMachineManagerImpl.java | 11 ++++++++++ setup/db/db/schema-410to420.sql | 4 +++- .../src/com/cloud/usage/UsageManagerImpl.java | 10 +++++++-- 8 files changed, 59 insertions(+), 19 deletions(-) diff --git a/server/src/com/cloud/network/NetworkServiceImpl.java b/server/src/com/cloud/network/NetworkServiceImpl.java index 878d2a82bc6..ac2ac456897 100755 --- a/server/src/com/cloud/network/NetworkServiceImpl.java +++ b/server/src/com/cloud/network/NetworkServiceImpl.java @@ -1988,8 +1988,11 @@ public class NetworkServiceImpl extends ManagerBase implements NetworkService { continue; } long isDefault = (nic.isDefaultNic()) ? 1 : 0; - UsageEventUtils.saveUsageEvent(EventTypes.EVENT_NETWORK_OFFERING_REMOVE, vm.getAccountId(), vm.getDataCenterId(), vm.getId(), null, oldNetworkOfferingId, null, 0L); - UsageEventUtils.saveUsageEvent(EventTypes.EVENT_NETWORK_OFFERING_ASSIGN, vm.getAccountId(), vm.getDataCenterId(), vm.getId(), vm.getHostName(), networkOfferingId, null, isDefault); + String nicIdString = Long.toString(nic.getId()); + UsageEventUtils.publishUsageEvent(EventTypes.EVENT_NETWORK_OFFERING_REMOVE, vm.getAccountId(), vm.getDataCenterId(), + vm.getId(), nicIdString, oldNetworkOfferingId, null, isDefault, VirtualMachine.class.getName(), vm.getUuid()); + UsageEventUtils.publishUsageEvent(EventTypes.EVENT_NETWORK_OFFERING_ASSIGN, vm.getAccountId(), vm.getDataCenterId(), + vm.getId(), nicIdString, networkOfferingId, null, isDefault, VirtualMachine.class.getName(), vm.getUuid()); } txn.commit(); } else { diff --git a/server/src/com/cloud/usage/UsageNetworkOfferingVO.java b/server/src/com/cloud/usage/UsageNetworkOfferingVO.java index 72903345fdc..fdf758bd4e4 100644 --- a/server/src/com/cloud/usage/UsageNetworkOfferingVO.java +++ b/server/src/com/cloud/usage/UsageNetworkOfferingVO.java @@ -53,11 +53,14 @@ public class UsageNetworkOfferingVO { @Column(name="deleted") @Temporal(value=TemporalType.TIMESTAMP) private Date deleted = null; + + @Column(name="nic_id") + private Long nicId; protected UsageNetworkOfferingVO() { } - public UsageNetworkOfferingVO(long zoneId, long accountId, long domainId, long vmInstanceId, long networkOfferingId, boolean isDefault, Date created, Date deleted) { + public UsageNetworkOfferingVO(long zoneId, long accountId, long domainId, long vmInstanceId, long networkOfferingId, long nicId, boolean isDefault, Date created, Date deleted) { this.zoneId = zoneId; this.accountId = accountId; this.domainId = domainId; @@ -66,6 +69,7 @@ public class UsageNetworkOfferingVO { this.isDefault = isDefault; this.created = created; this.deleted = deleted; + this.nicId = nicId; } public long getZoneId() { @@ -102,4 +106,12 @@ public class UsageNetworkOfferingVO { public void setDeleted(Date deleted) { this.deleted = deleted; } + + public Long getNicId() { + return nicId; + } + + public void setNicId(Long nicId) { + this.nicId = nicId; + } } diff --git a/server/src/com/cloud/usage/dao/UsageNetworkOfferingDaoImpl.java b/server/src/com/cloud/usage/dao/UsageNetworkOfferingDaoImpl.java index a6539dd6ebb..c3fc5a6f6c1 100644 --- a/server/src/com/cloud/usage/dao/UsageNetworkOfferingDaoImpl.java +++ b/server/src/com/cloud/usage/dao/UsageNetworkOfferingDaoImpl.java @@ -39,15 +39,15 @@ public class UsageNetworkOfferingDaoImpl extends GenericDaoBase= ?)))"; - protected static final String GET_USAGE_RECORDS_BY_DOMAIN = "SELECT zone_id, account_id, domain_id, vm_instance_id, network_offering_id, is_default, created, deleted " + + protected static final String GET_USAGE_RECORDS_BY_DOMAIN = "SELECT zone_id, account_id, domain_id, vm_instance_id, network_offering_id, nic_id, is_default, created, deleted " + "FROM usage_network_offering " + "WHERE domain_id = ? AND ((deleted IS NULL) OR (created BETWEEN ? AND ?) OR " + " (deleted BETWEEN ? AND ?) OR ((created <= ?) AND (deleted >= ?)))"; - protected static final String GET_ALL_USAGE_RECORDS = "SELECT zone_id, account_id, domain_id, vm_instance_id, network_offering_id, is_default, created, deleted " + + protected static final String GET_ALL_USAGE_RECORDS = "SELECT zone_id, account_id, domain_id, vm_instance_id, network_offering_id, nic_id, is_default, created, deleted " + "FROM usage_network_offering " + "WHERE (deleted IS NULL) OR (created BETWEEN ? AND ?) OR " + " (deleted BETWEEN ? AND ?) OR ((created <= ?) AND (deleted >= ?))"; @@ -124,6 +124,7 @@ public class UsageNetworkOfferingDaoImpl extends GenericDaoBase nics = _nicDao.listByVmId(vo.getId()); for (NicVO nic : nics) { NetworkVO network = _networkDao.findById(nic.getNetworkId()); - UsageEventUtils.saveUsageEvent(EventTypes.EVENT_NETWORK_OFFERING_REMOVE, vo.getAccountId(), vo.getDataCenterId(), vo.getId(), null, network.getNetworkOfferingId(), null, 0L); + UsageEventUtils.publishUsageEvent(EventTypes.EVENT_NETWORK_OFFERING_REMOVE, vo.getAccountId(), vo.getDataCenterId(), + vo.getId(), Long.toString(nic.getId()),network.getNetworkOfferingId(), null, 0L, vo.getClass().getName(), vo.getUuid()); } } else if (VirtualMachine.State.isVmDestroyed(oldState, event, newState)) { - UsageEventUtils.saveUsageEvent(EventTypes.EVENT_VM_DESTROY, vo.getAccountId(), vo.getDataCenterId(), vo.getId(), vo.getHostName(), vo.getServiceOfferingId(), - vo.getTemplateId(), vo.getHypervisorType().toString()); + UsageEventUtils.publishUsageEvent(EventTypes.EVENT_VM_DESTROY, vo.getAccountId(), vo.getDataCenterId(), vo.getId(), + vo.getHostName(), vo.getServiceOfferingId(),vo.getTemplateId(), vo.getHypervisorType().toString(), + vo.getClass().getName(), vo.getUuid()); } return true; } diff --git a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java index 2ecece2891f..b613917edd7 100755 --- a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java +++ b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java @@ -78,6 +78,8 @@ import com.cloud.deploy.DeploymentPlanner; import com.cloud.deploy.DeploymentPlanner.ExcludeList; import com.cloud.deploy.DeploymentPlanningManager; import com.cloud.domain.dao.DomainDao; +import com.cloud.event.EventTypes; +import com.cloud.event.UsageEventUtils; import com.cloud.exception.AffinityConflictException; import com.cloud.exception.AgentUnavailableException; import com.cloud.exception.ConcurrentOperationException; @@ -2751,6 +2753,11 @@ public class VirtualMachineManagerImpl extends ManagerBase implements VirtualMac result = vmGuru.plugNic(network, nicTO, vmTO, context, dest); if (result) { s_logger.debug("Nic is plugged successfully for vm " + vm + " in network " + network + ". Vm is a part of network now"); + long isDefault = (nic.isDefaultNic()) ? 1 : 0; + // insert nic's Id into DB as resource_name + UsageEventUtils.publishUsageEvent(EventTypes.EVENT_NETWORK_OFFERING_ASSIGN, vmVO.getAccountId(), + vmVO.getDataCenterId(), vmVO.getId(), Long.toString(nic.getId()), nic.getNetworkId(), + null, isDefault, VirtualMachine.class.getName(), vmVO.getUuid()); return nic; } else { s_logger.warn("Failed to plug nic to the vm " + vm + " in network " + network); @@ -2814,6 +2821,10 @@ public class VirtualMachineManagerImpl extends ManagerBase implements VirtualMac boolean result = vmGuru.unplugNic(network, nicTO, vmTO, context, dest); if (result) { s_logger.debug("Nic is unplugged successfully for vm " + vm + " in network " + network ); + long isDefault = (nic.isDefaultNic()) ? 1 : 0; + UsageEventUtils.publishUsageEvent(EventTypes.EVENT_NETWORK_OFFERING_REMOVE, vm.getAccountId(), vm.getDataCenterId(), + vm.getId(), Long.toString(nic.getId()), network.getNetworkOfferingId(), null, + isDefault, VirtualMachine.class.getName(), vm.getUuid()); } else { s_logger.warn("Failed to unplug nic for the vm " + vm + " from network " + network); return false; diff --git a/setup/db/db/schema-410to420.sql b/setup/db/db/schema-410to420.sql index 14aa2ebdefa..93a685fbc3a 100644 --- a/setup/db/db/schema-410to420.sql +++ b/setup/db/db/schema-410to420.sql @@ -774,4 +774,6 @@ CREATE VIEW `cloud`.`account_view` AS left join `cloud`.`async_job` ON async_job.instance_id = account.id and async_job.instance_type = 'Account' - and async_job.job_status = 0; \ No newline at end of file + and async_job.job_status = 0; + +alter table `cloud_usage`.`usage_network_offering` add column nic_id bigint(20) unsigned NOT NULL; \ No newline at end of file diff --git a/usage/src/com/cloud/usage/UsageManagerImpl.java b/usage/src/com/cloud/usage/UsageManagerImpl.java index 85ea60bedbc..16fe67bcbec 100644 --- a/usage/src/com/cloud/usage/UsageManagerImpl.java +++ b/usage/src/com/cloud/usage/UsageManagerImpl.java @@ -78,7 +78,6 @@ import com.cloud.utils.db.Filter; import com.cloud.utils.db.GlobalLock; import com.cloud.utils.db.SearchCriteria; import com.cloud.utils.db.Transaction; -import com.cloud.utils.exception.CloudRuntimeException; @Component @Local(value={UsageManager.class}) @@ -1298,6 +1297,12 @@ public class UsageManagerImpl extends ManagerBase implements UsageManager, Runna long vmId = event.getResourceId(); long networkOfferingId = event.getOfferingId(); + long nicId = 0; + try{ + nicId = Long.parseLong(event.getResourceName()); + }catch (Exception e) { + s_logger.warn("failed to get nic id from resource name, resource name is: " + event.getResourceName()); + } if (EventTypes.EVENT_NETWORK_OFFERING_CREATE.equals(event.getType()) || EventTypes.EVENT_NETWORK_OFFERING_ASSIGN.equals(event.getType())) { if (s_logger.isDebugEnabled()) { @@ -1306,12 +1311,13 @@ public class UsageManagerImpl extends ManagerBase implements UsageManager, Runna zoneId = event.getZoneId(); Account acct = m_accountDao.findByIdIncludingRemoved(event.getAccountId()); boolean isDefault = (event.getSize() == 1) ? true : false ; - UsageNetworkOfferingVO networkOffering = new UsageNetworkOfferingVO(zoneId, event.getAccountId(), acct.getDomainId(), vmId, networkOfferingId, isDefault, event.getCreateDate(), null); + UsageNetworkOfferingVO networkOffering = new UsageNetworkOfferingVO(zoneId, event.getAccountId(), acct.getDomainId(), vmId, networkOfferingId, nicId, isDefault, event.getCreateDate(), null); m_usageNetworkOfferingDao.persist(networkOffering); } else if (EventTypes.EVENT_NETWORK_OFFERING_DELETE.equals(event.getType()) || EventTypes.EVENT_NETWORK_OFFERING_REMOVE.equals(event.getType())) { SearchCriteria sc = m_usageNetworkOfferingDao.createSearchCriteria(); sc.addAnd("accountId", SearchCriteria.Op.EQ, event.getAccountId()); sc.addAnd("vmInstanceId", SearchCriteria.Op.EQ, vmId); + sc.addAnd("nicId", SearchCriteria.Op.EQ, nicId); sc.addAnd("networkOfferingId", SearchCriteria.Op.EQ, networkOfferingId); sc.addAnd("deleted", SearchCriteria.Op.NULL); List noVOs = m_usageNetworkOfferingDao.search(sc, null); From 6bd18d99813823bd6f2e036947f1dfb7ebbed815 Mon Sep 17 00:00:00 2001 From: Radhika PC Date: Mon, 22 Apr 2013 17:54:16 +0530 Subject: [PATCH 340/607] CLOUDSTACK-1563 --- docs/en-US/limit-accounts-domains.xml | 98 +++++++++++---------------- 1 file changed, 41 insertions(+), 57 deletions(-) diff --git a/docs/en-US/limit-accounts-domains.xml b/docs/en-US/limit-accounts-domains.xml index da45dabc982..a864ee27ef3 100644 --- a/docs/en-US/limit-accounts-domains.xml +++ b/docs/en-US/limit-accounts-domains.xml @@ -21,15 +21,12 @@ -->
Limiting Resource Usage - In addition to VMs, volumes, and snapshots, &PRODUCT; allows you limit resource types, such - as CPU, RAM, Primary storage, Secondary storage, and Network Rate. - Previously in &PRODUCT;, resource usage limit was imposed based on the resource count, that - is, restrict a user or domain on the basis of the number of VMs, volumes, or snapshots used. A - new set of resource types has been added to the existing pool of resources (VMs, Volumes, and - Snapshots) to support the customization model—need-basis usage, such as large VM or small - VM. The new resource types are now broadly classified as CPU, RAM, Primary storage, Secondary - storage, and Network Rate. &PRODUCT; now allows the root administrator to impose resource usage - limit by the following resource types for Domain, Project and Accounts. + &PRODUCT; allows you to control resource usage based on the types of resources, such as CPU, + RAM, Primary storage, and Secondary storage. A new set of resource types has been added to the + existing pool of resources to support the new customization model—need-basis usage, such + as large VM or small VM. The new resource types are now broadly classified as CPU, RAM, Primary + storage, and Secondary storage. The root administrator is able to impose resource usage limit by + the following resource types for Domain, Project, and Accounts. CPUs @@ -43,9 +40,6 @@ Secondary Storage (Snapshots, Templates, ISOs) - - Network Rate (Mbps) - To control the behaviour of this feature, the following configuration parameters have been added: @@ -71,18 +65,13 @@ max.account.primary.storage (GB) Maximum primary storage space that can be used for an account. - Default is 20*10. + Default is 200. max.account.secondary.storage (GB) Maximum secondary storage space that can be used for an account. - Default is 20*20. - - - max.account.network.rate (Mbps) - Maximum network rate that can be used for an account. - Default is 200. + Default is 400. max.project.cpus @@ -102,21 +91,14 @@ max.project.primary.storage (GB) Maximum primary storage space that can be used for an account. - Default is 20*10. + Default is 200. max.project.secondary.storage (GB) Maximum secondary storage space that can be used for an account. - Default is 20*20. - - - - max.project.network.rate (Mbps) - - Maximum network rate that can be used for an account. - Default is 200. + Default is 400. @@ -136,24 +118,24 @@ for the sub-domains and accounts under their own domain or the sub-domains. - Normal users would have privilege to list resource limits. Use the listResourceLimits + The end users will the privilege to list resource limits. Use the listResourceLimits API.
- Use Cases and Considerations + Limit Usage Considerations - When you refer to Primary or Seconday storage space, it implies that the stated size - of the volume and not the physical size— the actual consumed size on disk in case of - thin provisioning. + Primary or Secondary storage space refers to the stated size of the volume and not the + physical size— the actual consumed size on disk in case of thin provisioning. - If admin reduces the resource limit for an account and set it to less than the - resources currently consumed by that account, the existing VMs/templates/volumes are - destroyed. Using those resources, limits are imposed if the user under that account tries - to execute a new operation. For example, the existing behavior in the case of a VM are: + If the admin reduces the resource limit for an account and set it to less than the + resources that are currently being consumed, the existing VMs/templates/volumes are not + destroyed. Limits are imposed only if the user under that account tries to execute a new + operation using any of these resources. For example, the existing behavior in the case of + a VM are: migrateVirtualMachine: The users under that account will be able to migrate the @@ -165,19 +147,19 @@ - For any resource type, if a domain has limit X, sub-domain or accounts under that - domain can have there own limits, but at any point of time the sum of resource allocated - to sub-domain or accounts under the domain should never exceed the value X. - For example, if a domain has the CPU limit of 40 and sub-domain D1 and account A1 can - have limits of 30 each, but at any point of time the resource allocated to D1 and A1 - should not exceed the limit 40. + For any resource type, if a domain has limit X, sub-domains or accounts under that + domain can have there own limits. However, the sum of resource allocated to a sub-domain + or accounts under the domain at any point of time should not exceed the value X. + For example, if a domain has the CPU limit of 40 and the sub-domain D1 and account A1 + can have limits of 30 each, but at any point of time the resource allocated to D1 and A1 + should not exceed the limit of 40. If any operation needs to pass through two of more resource limit check, then the - lower of 2 limits will be enforced, For e.g. if an account has VM limit of 10 and CPU - limit of 20 and user under that account requests 5 VMs of 4 CPUs each, after this user can - deploy 5 more VMs(because VM limit is 10) but user has exhausted his CPU limit and cannot - deploy any more instance. + lower of 2 limits will be enforced, For example: if an account has the VM limit of 10 and + CPU limit of 20, and a user under that account requests 5 VMs of 4 CPUs each. The user + can deploy 5 more VMs because VM limit is 10. However, the user cannot deploy any more + instances because the CPU limit has been exhausted.
@@ -186,9 +168,9 @@ &PRODUCT; allows the configuration of limits on a domain basis. With a domain limit in place, all users still have their account limits. They are additionally limited, as a group, to not exceed the resource limits set on their domain. Domain limits aggregate the usage of - all accounts in the domain as well as all accounts in all sub-domains of that domain. Limits - set at the root domain level apply to the sum of resource usage by the accounts in all domains - and sub-domains below that root domain. + all accounts in the domain as well as all the accounts in all the sub-domains of that domain. + Limits set at the root domain level apply to the sum of resource usage by the accounts in all + the domains and sub-domains below that root domain. To set a domain limit: @@ -278,12 +260,14 @@ - Click Apply. + + Click Apply. +
Default Account Resource Limits - You can limit resource use by accounts. The default limits are set by using global + You can limit resource use by accounts. The default limits are set by using Global configuration parameters, and they affect all accounts within a cloud. The relevant parameters are those beginning with max.account, for example: max.account.snapshots. To override a default limit for a particular account, set a per-account resource @@ -328,8 +312,7 @@ Public IP Limits - The number of public IP addresses that can be used in an - account. + The number of public IP addresses that can be used in an account. The default is 20. @@ -344,8 +327,7 @@ Template Limits - The number of templates that can be registered in an - account. + The number of templates that can be registered in an account. The default is 20. @@ -381,7 +363,9 @@ - Click Apply. + + Click Apply. +
From f1b9ef858195f8a9c50e9f848547c8abb9c0e8d5 Mon Sep 17 00:00:00 2001 From: Murali Reddy Date: Mon, 22 Apr 2013 19:01:32 +0530 Subject: [PATCH 341/607] CLOUDSTACK-2065: addNetscalerLoadBalancer is faling to persist gslb_site_publicip and privateip in db table `external_load_balancer_devices` --- .../cloud/network/ExternalLoadBalancerDeviceManagerImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java b/server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java index 766639727c7..b4662d13df3 100644 --- a/server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java +++ b/server/src/com/cloud/network/ExternalLoadBalancerDeviceManagerImpl.java @@ -269,11 +269,11 @@ public abstract class ExternalLoadBalancerDeviceManagerImpl extends AdapterBase txn.start(); lbDeviceVO = new ExternalLoadBalancerDeviceVO(host.getId(), pNetwork.getId(), ntwkDevice.getNetworkServiceProvder(), deviceName, capacity, dedicatedUse, gslbProvider); - _externalLoadBalancerDeviceDao.persist(lbDeviceVO); - if (!gslbProvider) { + if (gslbProvider) { lbDeviceVO.setGslbSitePrivateIP(gslbSitePublicIp); lbDeviceVO.setGslbSitePrivateIP(gslbSitePrivateIp); } + _externalLoadBalancerDeviceDao.persist(lbDeviceVO); DetailVO hostDetail = new DetailVO(host.getId(), ApiConstants.LOAD_BALANCER_DEVICE_ID, String.valueOf(lbDeviceVO.getId())); _hostDetailDao.persist(hostDetail); From 9572f576483796beb85c7aeb5e0ce3925aee9e42 Mon Sep 17 00:00:00 2001 From: Talluri Date: Mon, 22 Apr 2013 21:31:31 +0530 Subject: [PATCH 342/607] CLOUDSTACK-2135: fix the string formatting error in cloudstackConnection.py Signed-off-by: Prasanna Santhanam --- tools/marvin/marvin/cloudstackConnection.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/marvin/marvin/cloudstackConnection.py b/tools/marvin/marvin/cloudstackConnection.py index 14b12e7910b..214a8783263 100644 --- a/tools/marvin/marvin/cloudstackConnection.py +++ b/tools/marvin/marvin/cloudstackConnection.py @@ -137,7 +137,7 @@ class cloudConnection(object): else: response = requests.get(self.baseurl, params=payload) except ConnectionError, c: - self.logging.debug("Connection refused. Reason: %s" % + self.logging.debug("Connection refused. Reason: %s : %s" % (self.baseurl, c)) raise c except HTTPError, h: From a1912d9ce21c0798c04d3e38142ff5a89b576328 Mon Sep 17 00:00:00 2001 From: Prasanna Santhanam Date: Mon, 22 Apr 2013 19:34:35 +0530 Subject: [PATCH 343/607] Refactoring vlan and globalsetting tests Refactoring the vlan and global_setting tests to use the marvin libraries instead of command classes. Signed-off-by: Prasanna Santhanam --- .../integration/smoke/test_global_settings.py | 33 ++-- .../smoke/test_non_contigiousvlan.py | 147 +++++++----------- tools/marvin/marvin/integration/lib/base.py | 2 +- 3 files changed, 65 insertions(+), 117 deletions(-) diff --git a/test/integration/smoke/test_global_settings.py b/test/integration/smoke/test_global_settings.py index be501b956d2..12b35d774b7 100644 --- a/test/integration/smoke/test_global_settings.py +++ b/test/integration/smoke/test_global_settings.py @@ -17,40 +17,25 @@ """ P1 tests for updating the granular Configuration parameter with scope and resource id provided. """ #Import Local Modules -import marvin from marvin.cloudstackTestCase import * from marvin.cloudstackAPI import * -from marvin.remoteSSHClient import remoteSSHClient from marvin.integration.lib.utils import * from marvin.integration.lib.base import * from marvin.integration.lib.common import * -from nose.plugins.attrib import attr #Import System modules -import unittest -import hashlib -import random class TestUpdateConfigWithScope(cloudstackTestCase): """ - This test updates the value of a configuration parameter - which is at zone level(scope) + Test to update a configuration (global setting) at various scopes """ def setUp(self): - """ - CloudStack internally saves its passwords in md5 form and that is how we - specify it in the API. Python's hashlib library helps us to quickly hash - strings as follows - """ - mdf = hashlib.md5() - mdf.update('password') - mdf_pass = mdf.hexdigest() - - self.apiClient = self.testClient.getApiClient() #Get ourselves an API client - - + self.apiClient = self.testClient.getApiClient() def test_UpdateConfigParamWithScope(self): - + """ + test update configuration setting at zone level scope + @return: + """ updateConfigurationCmd = updateConfiguration.updateConfigurationCmd() updateConfigurationCmd.name = "use.external.dns" updateConfigurationCmd.value = "true" @@ -70,13 +55,15 @@ class TestUpdateConfigWithScope(cloudstackTestCase): returns a non-empty response") configParam = listConfigurationsResponse[0] - self.assertEqual(configParam.value, updateConfigurationResponse.value, "Check if the update API returned \ is the same as the one we got in the list API") def tearDown(self): - + """ + Reset the configuration back to false + @return: + """ updateConfigurationCmd = updateConfiguration.updateConfigurationCmd() updateConfigurationCmd.name = "use.external.dns" updateConfigurationCmd.value = "false" diff --git a/test/integration/smoke/test_non_contigiousvlan.py b/test/integration/smoke/test_non_contigiousvlan.py index fe70f874f75..91b6325782c 100644 --- a/test/integration/smoke/test_non_contigiousvlan.py +++ b/test/integration/smoke/test_non_contigiousvlan.py @@ -14,112 +14,73 @@ # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. -""" BVT tests for Primary Storage -""" -import marvin + from marvin import cloudstackTestCase -from marvin.cloudstackTestCase import * +from marvin.cloudstackAPI import * +from marvin.cloudstackTestCase import cloudstackTestCase +from marvin.integration.lib.base import Account +from marvin.integration.lib.base import PhysicalNetwork +from nose.plugins.attrib import attr -import unittest -import hashlib -import random +class Services(): + def __init__(self): + self.services = { + "vlan": { + "part": ["4090-4091", "4092-4096"], + "full": "4090-4096", + } + } +@attr(tags = ["simulator", "advanced"]) class TestUpdatePhysicalNetwork(cloudstackTestCase): """ - This test updates the existing physicalnetwork with a new vlan range. + Test to extend physical network vlan range """ def setUp(self): + self.vlan = Services().services["vlan"] + self.apiClient = self.testClient.getApiClient() + + + def test_extendPhysicalNetworkVlan(self): """ - CloudStack internally saves its passwords in md5 form and that is how we - specify it in the API. Python's hashlib library helps us to quickly hash - strings as follows + Test to update a physical network and extend its vlan """ - mdf = hashlib.md5() - mdf.update('password') - mdf_pass = mdf.hexdigest() + phy_networks = PhysicalNetwork.list(self.apiClient) + self.assertNotEqual(len(phy_networks), 0, + msg="There are no physical networks in the zone") - self.apiClient = self.testClient.getApiClient() #Get ourselves an API client + self.network = phy_networks[0] + self.networkid = phy_networks[0].id + vlan1 = self.vlan["part"][0] + updatePhysicalNetworkResponse = self.network.update(self.apiClient, id = self.networkid, vlan = vlan1) + self.assert_(updatePhysicalNetworkResponse is not None, + msg="couldn't extend the physical network with vlan %s"%vlan1) + self.assert_(isinstance(self.network, PhysicalNetwork)) - self.acct = createAccount.createAccountCmd() #The createAccount command - self.acct.accounttype = 0 #We need a regular user. admins have accounttype=1 - self.acct.firstname = 'bharat' - self.acct.lastname = 'kumar' #What's up doc? - self.acct.password = mdf_pass #The md5 hashed password string - self.acct.username = 'bharat' - self.acct.email = 'bharat@kumar.com' - self.acct.account = 'bharat' - self.acct.domainid = 1 #The default ROOT domain - self.acctResponse = self.apiClient.createAccount(self.acct) - # using the default debug logger of the test framework - self.debug("successfully created account: %s, user: %s, id: \ - %s"%(self.acctResponse.account.account, \ - self.acctResponse.account.username, \ - self.acctResponse.account.id)) + vlan2 = self.vlan["part"][1] + updatePhysicalNetworkResponse2 = self.network.update(self.apiClient, id = self.networkid, vlan = vlan2) + self.assert_(updatePhysicalNetworkResponse2 is not None, + msg="couldn't extend the physical network with vlan %s"%vlan2) + self.assert_(isinstance(self.network, PhysicalNetwork)) - def test_UpdatePhysicalNetwork(self): + vlanranges= updatePhysicalNetworkResponse2.vlan + self.assert_(vlanranges is not None, + "No VLAN ranges found on the deployment") + self.assert_(vlanranges.find(self.vlan["full"]) > 0, "vlan ranges are not extended") + + + def tearDown(self): """ - Let's start by defining the attributes of our VM that we will be - deploying on CloudStack. We will be assuming a single zone is available - and is configured and all templates are Ready - - The hardcoded values are used only for brevity. + Teardown to update a physical network and shrink its vlan + @return: """ - listPhysicalNetworksCmd = listPhysicalNetworks.listPhysicalNetworksCmd() - listPhysicalNetworksResponse = self.apiClient.listPhysicalNetworks(listPhysicalNetworksCmd) - - self.assertNotEqual(len(listPhysicalNetworksResponse), 0, "Check if the list API \ - returns a non-empty response") - - networkid = listPhysicalNetworksResponse[0].id - updatePhysicalNetworkCmd = updatePhysicalNetwork.updatePhysicalNetworkCmd() - updatePhysicalNetworkCmd.id = networkid - updatePhysicalNetworkCmd.vlan = "4090-4091" - updatePhysicalNetworkResponse = self.apiClient.updatePhysicalNetwork(updatePhysicalNetworkCmd) - self.assertNotEqual((updatePhysicalNetworkResponse.len), 0, "Check if the list API \ - returns a non-empty response") - - updatePhysicalNetworkCmd = updatePhysicalNetwork.updatePhysicalNetworkCmd() - updatePhysicalNetworkCmd.id = networkid - updatePhysicalNetworkCmd.vlan = "4092-4096" - updatePhysicalNetworkResponse = self.apiClient.updatePhysicalNetwork(updatePhysicalNetworkCmd) - self.assertNotEqual((updatePhysicalNetworkResponse.len), 0, "Check if the list API \ - returns a non-empty response") - - vlanranges= updatePhysicalNetworkResponse.vlan - range = "" - vlanranges = vlanranges.split(";") - for vlan in vlanranges: - if (vlan == "4090-4096"): - range = vlan - - self.assertEqual(range, "4090-4096", "check if adding the range is successful") - - updatePhysicalNetworkCmd = updatePhysicalNetwork.updatePhysicalNetworkCmd() - updatePhysicalNetworkCmd.id = networkid - updatePhysicalNetworkCmd.removevlan = "4090-4096" - updatePhysicalNetworkResponse = self.apiClient.updatePhysicalNetwork(updatePhysicalNetworkCmd) - self.assertNotEqual((updatePhysicalNetworkResponse.len), 0, "Check if the list API \ - returns a non-empty response") - - vlanranges= updatePhysicalNetworkResponse.vlan - range = "" - vlanranges = vlanranges.split(";") - - for vlan in vlanranges: - if (vlan == "4090-4096"): - range = vlan - - - self.assertEqual(range, "", "check if removing the range is successful") - - - def tearDown(self): # Teardown will delete the Account as well as the VM once the VM reaches "Running" state - """ - And finally let us cleanup the resources we created by deleting the - account. All good unittests are atomic and rerunnable this way - """ - deleteAcct = deleteAccount.deleteAccountCmd() - deleteAcct.id = self.acctResponse.account.id - self.apiClient.deleteAccount(deleteAcct) + phy_networks = PhysicalNetwork.list(self.apiClient) + self.assertNotEqual(len(phy_networks), 0, + msg="There are no physical networks in the zone") + self.network = phy_networks[0] + self.networkid = phy_networks[0].id + updateResponse = self.network.update(self.apiClient, id = self.networkid, removevlan = self.vlan["full"]) + self.assert_(updateResponse.vlan.find(self.vlan["full"]) > 0, + "VLAN was not removed successfully") diff --git a/tools/marvin/marvin/integration/lib/base.py b/tools/marvin/marvin/integration/lib/base.py index 915d4783a12..92cdf81fa91 100755 --- a/tools/marvin/marvin/integration/lib/base.py +++ b/tools/marvin/marvin/integration/lib/base.py @@ -1994,7 +1994,7 @@ class PhysicalNetwork: cmd = listPhysicalNetworks.listPhysicalNetworksCmd() [setattr(cmd, k, v) for k, v in kwargs.items()] - return(apiclient.listPhysicalNetworks(cmd)) + return map(lambda pn : PhysicalNetwork(pn.__dict__), apiclient.listPhysicalNetworks(cmd)) class SecurityGroup: """Manage Security Groups""" From c064afe069d6d134271ea7cc4ea5f0f0d5a56043 Mon Sep 17 00:00:00 2001 From: Chip Childers Date: Mon, 22 Apr 2013 12:48:44 -0400 Subject: [PATCH 344/607] Adding new release manager scripts to master (used for 4.1.0 RCs) Signed-off-by: Chip Childers --- tools/build/build_asf.sh | 79 +++++++++++++++++++++++++++++------ tools/build/setnextversion.sh | 75 +++++++++++++++++++++++++++++++++ 2 files changed, 141 insertions(+), 13 deletions(-) create mode 100755 tools/build/setnextversion.sh diff --git a/tools/build/build_asf.sh b/tools/build/build_asf.sh index f58f5e0011d..a4a4706c6d0 100755 --- a/tools/build/build_asf.sh +++ b/tools/build/build_asf.sh @@ -18,33 +18,34 @@ version='TESTBUILD' sourcedir=~/cloudstack/ -outputdir=~/cs-asf-build/ +outputdir=/tmp/cloudstack-build/ branch='master' tag='no' certid='X' +committosvn='X' usage(){ - echo "usage: $0 -v version [-b branch] [-s source dir] [-o output dir] [-t [-u]] [-h]" + echo "usage: $0 -v version [-b branch] [-s source dir] [-o output dir] [-t] [-u] [-c] [-h]" echo " -v sets the version" echo " -b sets the branch (defaults to 'master')" echo " -s sets the source directory (defaults to $sourcedir)" echo " -o sets the output directory (defaults to $outputdir)" echo " -t tags the git repo with the version" - echo " -u sets the certificate ID to sign the tag with (if not provided, the default key is attempted)" - echo " -k sets the key to sign the tarball with" + echo " -u sets the certificate ID to sign with (if not provided, the default key is attempted)" + echo " -c commits build artifacts to cloudstack dev dist dir in svn" echo " -h" } -while getopts v:s:o:b:tu:k:h opt +while getopts v:s:o:b:u:tch opt do case "$opt" in v) version="$OPTARG";; s) sourcedir="$OPTARG";; o) outputdir="$OPTARG";; b) branch="$OPTARG";; - t) tag='yes';; + t) tag="yes";; u) certid="$OPTARG";; - k) keyid="--default-key $OPTARG";; + c) committosvn="yes";; h) usage exit 0;; /?) # unknown flag @@ -54,7 +55,7 @@ do done shift `expr $OPTIND - 1` -if [ $version == 'TESTBUILD' ]; then +if [ $version == "TESTBUILD" ]; then echo >&2 "A version must be specified with the -v option: build_asf.sh -v 4.0.0.RC1" exit 1 fi @@ -63,8 +64,8 @@ echo "Using version: $version" echo "Using source directory: $sourcedir" echo "Using output directory: $outputdir" echo "Using branch: $branch" -if [ $tag == 'yes' ]; then - if [ $certid == 'X' ]; then +if [ "$tag" == "yes" ]; then + if [ "$certid" == "X" ]; then echo "Tagging the branch with the version number, and signing the branch with your default certificate." else echo "Tagging the branch with the version number, and signing the branch with certificate ID $certid." @@ -80,13 +81,38 @@ else fi cd $sourcedir + +echo 'checking out correct branch' +git checkout $branch + +echo 'determining current mvn version' +export currentversion=`mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version | grep -v '\['` +echo "found $currentversion" + +echo 'setting version numbers' +mvn versions:set -DnewVersion=$version -P vmware -P developer -P systemvm -P simulator -P baremetal -P ucs -Dnonoss +mv deps/XenServerJava/pom.xml.versionsBackup deps/XenServerJava/pom.xml +perl -pi -e 's/$ENV{'currentversion'}/$ENV{'version'}/' deps/XenServerJava/pom.xml +perl -pi -e 's/$ENV{'currentversion'}/$ENV{'version'}/' tools/apidoc/pom.xml +git clean -f + +echo 'commit changes' +git commit -a -s -m "Updating pom.xml version numbers for release $version" +export commitsh=`git show HEAD | head -n 1 | cut -d ' ' -f 2` + +echo "committed as $commitsh" + echo 'archiving' git archive --format=tar --prefix=apache-cloudstack-$version-src/ $branch > $outputdir/apache-cloudstack-$version-src.tar bzip2 $outputdir/apache-cloudstack-$version-src.tar cd $outputdir echo 'armor' -gpg -v $keyid --armor --output apache-cloudstack-$version-src.tar.bz2.asc --detach-sig apache-cloudstack-$version-src.tar.bz2 +if [ "$certid" == "X" ]; then + gpg -v --armor --output apache-cloudstack-$version-src.tar.bz2.asc --detach-sig apache-cloudstack-$version-src.tar.bz2 +else + gpg -v --default-key $certid --armor --output apache-cloudstack-$version-src.tar.bz2.asc --detach-sig apache-cloudstack-$version-src.tar.bz2 +fi echo 'md5' gpg -v --print-md MD5 apache-cloudstack-$version-src.tar.bz2 > apache-cloudstack-$version-src.tar.bz2.md5 @@ -97,12 +123,39 @@ gpg -v --print-md SHA512 apache-cloudstack-$version-src.tar.bz2 > apache-cloudst echo 'verify' gpg -v --verify apache-cloudstack-$version-src.tar.bz2.asc apache-cloudstack-$version-src.tar.bz2 -if [ $tag == 'yes' ]; then +if [ "$tag" == "yes" ]; then echo 'tag' cd $sourcedir - if [ $certid == 'X' ]; then + if [ "$certid" == "X" ]; then git tag -s $version -m "Tagging release $version on branch $branch." else git tag -u $certid -s $version -m "Tagging release $version on branch $branch." fi fi + +if [ "$committosvn" == "yes" ]; then + echo 'committing artifacts to svn' + rm -Rf /tmp/cloudstack-dev-dist + cd /tmp + svn co https://dist.apache.org/repos/dist/dev/cloudstack/ cloudstack-dev-dist + cd cloudstack-dev-dist + if [ -d "$version" ]; then + cd $version + svn rm * + else + mkdir $version + svn add $version + cd $version + fi + cp $outputdir/apache-cloudstack-$version-src.tar.bz2 . + cp $outputdir/apache-cloudstack-$version-src.tar.bz2.asc . + cp $outputdir/apache-cloudstack-$version-src.tar.bz2.md5 . + cp $outputdir/apache-cloudstack-$version-src.tar.bz2.sha . + svn add apache-cloudstack-$version-src.tar.bz2 + svn add apache-cloudstack-$version-src.tar.bz2.asc + svn add apache-cloudstack-$version-src.tar.bz2.md5 + svn add apache-cloudstack-$version-src.tar.bz2.sha + svn commit -m "Committing release candidate artifacts for $version to dist/dev/cloudstack in preparation for release vote" +fi + +echo "completed. use commit-sh of $commitsh when starting the VOTE thread" diff --git a/tools/build/setnextversion.sh b/tools/build/setnextversion.sh new file mode 100755 index 00000000000..71173a3a08c --- /dev/null +++ b/tools/build/setnextversion.sh @@ -0,0 +1,75 @@ +#!/bin/sh +# 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. + +version='TESTBUILD' +sourcedir=~/cloudstack/ +branch='master' + +usage(){ + echo "usage: $0 -v version [-b branch] [-s source dir] [-h]" + echo " -v sets the version" + echo " -b sets the branch (defaults to 'master')" + echo " -s sets the source directory (defaults to $sourcedir)" + echo " -h" +} + +while getopts v:s:b:h opt +do + case "$opt" in + v) version="$OPTARG";; + s) sourcedir="$OPTARG";; + b) branch="$OPTARG";; + h) usage + exit 0;; + /?) # unknown flag + usage + exit 1;; + esac +done +shift `expr $OPTIND - 1` + +if [ $version == 'TESTBUILD' ]; then + echo >&2 "A version must be specified with the -v option: $0 -v 4.0.0.RC1" + exit 1 +fi + +echo "Using version: $version" +echo "Using source directory: $sourcedir" +echo "Using branch: $branch" + +cd $sourcedir + +echo 'checking out correct branch' +git checkout $branch + +echo 'determining current mvn version' +export currentversion=`mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version | grep -v '\['` +echo "found $currentversion" + +echo 'setting version numbers' +mvn versions:set -DnewVersion=$version -P vmware -P developer -P systemvm -P simulator -P baremetal -P ucs -Dnonoss +mv deps/XenServerJava/pom.xml.versionsBackup deps/XenServerJava/pom.xml +perl -pi -e 's/$ENV{'currentversion'}/$ENV{'version'}/' deps/XenServerJava/pom.xml +perl -pi -e 's/$ENV{'currentversion'}/$ENV{'version'}/' tools/apidoc/pom.xml +git clean -f + +echo 'commit changes' +git commit -a -s -m "Updating pom.xml version numbers for release $version" +export commitsh=`git show HEAD | head -n 1 | cut -d ' ' -f 2` + +echo "committed as $commitsh" From 2a769cffc02f0c3e6c75389fc6dc027e3b3260cb Mon Sep 17 00:00:00 2001 From: Milamber Date: Mon, 22 Apr 2013 16:04:56 +0000 Subject: [PATCH 345/607] Alphebetical order for keys, remove one duplicate key Signed-off-by: Milamber --- .../classes/resources/messages.properties | 1875 ++++++++--------- 1 file changed, 898 insertions(+), 977 deletions(-) diff --git a/client/WEB-INF/classes/resources/messages.properties b/client/WEB-INF/classes/resources/messages.properties index d62cbaeb99b..fbc04713fb7 100644 --- a/client/WEB-INF/classes/resources/messages.properties +++ b/client/WEB-INF/classes/resources/messages.properties @@ -15,904 +15,141 @@ # specific language governing permissions and limitations # under the License. - -#new labels (begin) ********************************************************************************************** -message.redirecting.region=Redirecting to region... -label.use.vm.ip=Use VM IP: -label.cpu.limits=CPU limits -label.memory.limits=Memory limits (MiB) -label.primary.storage.limits=Primary Storage limits (GiB) -label.secondary.storage.limits=Secondary Storage limits (GiB) -label.max.cpus=Max. CPU cores -label.max.memory=Max. memory (MiB) -label.max.primary.storage=Max. primary (GiB) -label.max.secondary.storage=Max. secondary (GiB) -label.menu.regions=Regions -label.region=Region -label.add.region=Add Region -label.remove.region=Remove Region -message.remove.region=Are you sure you want to remove this region from this management server? -message.add.region=Please specify the required information to add a new region. -label.endpoint=Endpoint -label.plugins=Plugins -label.plugin.details=Plugin details -label.author.name=Author name -label.author.email=Author e-mail -label.external.link=External link -label.egress.rules=Egress rules -message.acquire.new.ip.vpc=Please confirm that you would like to acquire a new IP for this VPC. -label.zoneWizard.trafficType.management=Management: Traffic between CloudStack\'s internal resources, including any components that communicate with the Management Server, such as hosts and CloudStack system VMs -label.zoneWizard.trafficType.public=Public: Traffic between the internet and virtual machines in the cloud. -label.zoneWizard.trafficType.guest=Guest: Traffic between end-user virtual machines -label.zoneWizard.trafficType.storage=Storage: Traffic between primary and secondary storage servers, such as VM templates and snapshots -label.quickview=Quickview -label.migrate.to.host=Migrate to host -label.migrate.to.storage=Migrate to storage -label.stop=Stop -label.reboot=Reboot -label.destroy=Destroy -label.restore=Restore -label.isolation.uri=Isolation URI -label.broadcast.uri=Broadcast URI -label.enable.s3=Enable S3-backed Secondary Storage -confirm.enable.s3=Please fill in the following information to enable support for S3-backed Secondary Storage -message.after.enable.s3=S3-backed Secondary Storage configured. Note: When you leave this page, you will not be able to re-configure S3 again. -label.s3.access_key=Access Key -label.s3.secret_key=Secret Key -label.s3.bucket=Bucket -label.s3.endpoint=Endpoint -label.s3.use_https=Use HTTPS -label.s3.connection_timeout=Connection Timeout -label.s3.max_error_retry=Max Error Retry -label.s3.socket_timeout=Socket Timeout -#new labels (end) ************************************************************************************************ - - -#modified labels (begin) ***************************************************************************************** -label.site.to.site.VPN=Site-to-site VPN -message.zoneWizard.enable.local.storage=WARNING: If you enable local storage for this zone, you must do the following, depending on where you would like your system VMs to launch:

1. If system VMs need to be launched in primary storage, primary storage needs to be added to the zone after creation. You must also start the zone in a disabled state.

2. If system VMs need to be launched in local storage, system.vm.use.local.storage needs to be set to true before you enable the zone.


Would you like to continue? -#modified labels (end) ******************************************************************************************* - -label.configure.network.ACLs=Configure Network ACLs -label.network.ACLs=Network ACLs -label.add.network.ACL=Add network ACL -label.private.Gateway=Private Gateway -label.VPC.router.details=VPC router details -label.VMs.in.tier=VMs in tier -label.local.storage.enabled=Local storage enabled -label.tier.details=Tier details -label.edit.tags=Edit tags -label.action.enable.physical.network=Enable physical network -label.action.disable.physical.network=Disable physical network -message.action.enable.physical.network=Please confirm that you want to enable this physical network. -message.action.disable.physical.network=Please confirm that you want to disable this physical network. - -label.select.tier=Select Tier -label.add.ACL=Add ACL -label.remove.ACL=Remove ACL -label.tier=Tier -label.network.ACL=Network ACL -label.network.ACL.total=Network ACL Total -label.add.new.gateway=Add new gateway -message.add.new.gateway.to.vpc=Please specify the information to add a new gateway to this VPC. -label.delete.gateway=delete gateway -message.delete.gateway=Please confirm you want to delete the gateway -label.CIDR.of.destination.network=CIDR of destination network -label.add.route=Add route -label.add.static.route=Add static route -label.remove.static.route=Remove static route -label.add.VPN.gateway=Add VPN Gateway -message.add.VPN.gateway=Please confirm that you want to add a VPN Gateway -label.VPN.gateway=VPN Gateway -label.delete.VPN.gateway=delete VPN Gateway -message.delete.VPN.gateway=Please confirm that you want to delete this VPN Gateway -label.VPN.connection=VPN Connection -label.IPsec.preshared.key=IPsec Preshared-Key -label.IKE.policy=IKE policy -label.ESP.policy=ESP policy -label.create.VPN.connection=Create VPN Connection -label.VPN.customer.gateway=VPN Customer Gateway -label.CIDR.list=CIDR list -label.IKE.lifetime=IKE Lifetime (second) -label.ESP.lifetime=ESP Lifetime(second) -label.dead.peer.detection=Dead Peer Detection -label.reset.VPN.connection=Reset VPN connection -message.reset.VPN.connection=Please confirm that you want to reset VPN connection -label.delete.VPN.connection=delete VPN connection -message.delete.VPN.connection=Please confirm that you want to delete VPN connection -label.add.new.tier=Add new tier -label.add.VM.to.tier=Add VM to tier -label.remove.tier=Remove tier - -label.local.storage.enabled=Local Storage Enabled -label.associated.network=Associated Network -label.add.port.forwarding.rule=Add port forwarding rule -label.dns=DNS - -label.vpc=VPC -label.vpc.id=VPC ID -label.tier=Tier -label.add.vpc=Add VPC -label.super.cidr.for.guest.networks=Super CIDR for Guest Networks -label.DNS.domain.for.guest.networks=DNS domain for Guest Networks -label.configure.vpc=Configure VPC -label.edit.vpc=Edit VPC -label.restart.vpc=restart VPC -message.restart.vpc=Please confirm that you want to restart the VPC -label.remove.vpc=remove VPC -message.remove.vpc=Please confirm that you want to remove the VPC -label.vpn.customer.gateway=VPN Customer Gateway -label.add.vpn.customer.gateway=Add VPN Customer Gateway -label.IKE.encryption=IKE Encryption -label.IKE.hash=IKE Hash -label.IKE.DH=IKE DH -label.ESP.encryption=ESP Encryption -label.ESP.hash=ESP Hash -label.perfect.forward.secrecy=Perfect Forward Secrecy -label.IKE.lifetime=IKE lifetime (second) -label.ESP.lifetime=ESP Lifetime (second) -label.dead.peer.detection=Dead Peer Detection -label.delete.VPN.customer.gateway=delete VPN Customer Gateway -message.delete.VPN.customer.gateway=Please confirm that you want to delete this VPN Customer Gateway - -label.network.domain.text=Network domain -label.memory.mb=Memory (in MB) -label.cpu.mhz=CPU (in MHz) - -message.action.remove.host=Please confirm that you want to remove this host. - -message.action.reboot.router=All services provided by this virtual router will be interrupted. Please confirm that you want to reboot this router. -message.action.stop.router=All services provided by this virtual router will be interrupted. Please confirm that you want to stop this router. -message.restart.network=All services provided by this network will be interrupted. Please confirm that you want to restart this network. - - -label.ipaddress=IP Address -label.vcdcname=vCenter DC name -label.vcipaddress=vCenter IP Address -label.vsmctrlvlanid=Control VLAN ID -label.vsmpktvlanid=Packet VLAN ID -label.vsmstoragevlanid=Storage VLAN ID -label.nexusVswitch=Nexus 1000v -label.action.delete.nexusVswitch=Delete Nexus 1000v -label.action.enable.nexusVswitch=Enable Nexus 1000v -label.action.disable.nexusVswitch=Disable Nexus 1000v -label.action.list.nexusVswitch=List Nexus 1000v -message.action.delete.nexusVswitch=Please confirm that you want to delete this nexus 1000v -message.action.enable.nexusVswitch=Please confirm that you want to enable this nexus 1000v -message.action.disable.nexusVswitch=Please confirm that you want to disable this nexus 1000v -message.specify.url=Please specify URL -label.select.instance.to.attach.volume.to=Select instance to attach volume to -label.upload=Upload -label.upload.volume=Upload volume -label.virtual.routers=Virtual Routers -label.primary.storage.count=Primary Storage Pools -label.secondary.storage.count=Secondary Storage Pools -label.number.of.system.vms=Number of System VMs -label.number.of.virtual.routers=Number of Virtual Routers -label.action.register.iso=Register ISO -label.isolation.method=Isolation method -label.action.register.template=Register template -label.checksum=MD5 checksum -label.vpn=VPN -label.vlan=VLAN - - -label.management.ips=Management IP Addresses -label.devices=Devices -label.rules=Rules -label.traffic.label=Traffic label -label.vm.state=VM state -message.setup.physical.network.during.zone.creation.basic=When adding a basic zone, you can set up one physical network, which corresponds to a NIC on the hypervisor. The network carries several types of traffic.

You may also drag and drop other traffic types onto the physical network. -label.domain.router=Domain router -label.console.proxy=Console proxy -label.secondary.storage.vm=Secondary storage VM -label.add.netScaler.device=Add Netscaler device -label.add.F5.device=Add F5 device -label.add.SRX.device=Add SRX device -label.account.and.security.group=Account, Security group -label.fetch.latest=Fetch latest -label.system.offering=System Offering -message.validate.instance.name=Instance name can not be longer than 63 characters. Only ASCII letters a~z, A~Z, digits 0~9, hyphen are allowed. Must start with a letter and end with a letter or a digit. - - -label.isolated.networks=Isolated networks -label.latest.events=Latest events -state.Enabled=Enabled -label.system.wide.capacity=System-wide capacity -label.network.service.providers=Network Service Providers -message.launch.zone=Zone is ready to launch; please proceed to the next step. -error.unable.to.reach.management.server=Unable to reach Management Server -label.internal.name=Internal name -message.configure.all.traffic.types=You have multiple physical networks; please configure labels for each traffic type by clicking on the Edit button. -message.edit.traffic.type=Please specify the traffic label you want associated with this traffic type. -label.edit.traffic.type=Edit traffic type -label.label=Label -label.max.networks=Max. networks -error.invalid.username.password=Invalid username or password -message.enabling.security.group.provider=Enabling Security Group provider -message.adding.Netscaler.provider=Adding Netscaler provider -message.creating.guest.network=Creating guest network -label.action.delete.physical.network=Delete physical network -message.action.delete.physical.network=Please confirm that you want to delete this physical network -message.installWizard.copy.whatIsAHost=A host is a single computer. Hosts provide the computing resources that run the guest virtual machines. Each host has hypervisor software installed on it to manage the guest VMs (except for bare metal hosts, which are a special case discussed in the Advanced Installation Guide). For example, a Linux KVM-enabled server, a Citrix XenServer server, and an ESXi server are hosts. In a Basic Installation, we use a single host running XenServer or KVM.

The host is the smallest organizational unit within a CloudStack™ deployment. Hosts are contained within clusters, clusters are contained within pods, and pods are contained within zones. - - -label.add.compute.offering=Add compute offering -label.compute.offering=Compute offering -label.compute.offerings=Compute offerings -label.select.offering=Select offering -label.menu.infrastructure=Infrastructure -label.sticky.tablesize=Table size -label.sticky.expire=Expires -label.sticky.cookie-name=Cookie name -label.sticky.mode=Mode -label.sticky.length=Length -label.sticky.holdtime=Hold time -label.sticky.request-learn=Request learn -label.sticky.prefix=Prefix -label.sticky.nocache=No cache -label.sticky.indirect=Indirect -label.sticky.postonly=Post only -label.sticky.domain=Domain -state.Allocating=Allocating -state.Migrating=Migrating -error.please.specify.physical.network.tags=Network offerings is not available until you specify tags for this physical network. - - -state.Stopping=Stopping -message.add.load.balancer.under.ip=The load balancer rule has been added under IP: -message.select.instance=Please select an instance. -label.select=Select -label.select.vm.for.static.nat=Select VM for static NAT -label.select.instance=Select instance -label.nat.port.range=NAT Port Range -label.static.nat.vm.details=Static NAT VM Details -label.edit.lb.rule=Edit LB rule -message.migrate.instance.to.host=Please confirm that you want to migrate instance to another host. -label.migrate.instance.to.host=Migrate instance to another host -message.migrate.instance.to.ps=Please confirm that you want to migrate instance to another primary storage. -label.migrate.instance.to.ps=Migrate instance to another primary storage -label.corrections.saved=Corrections saved -message.installWizard.copy.whatIsSecondaryStorage=Secondary storage is associated with a zone, and it stores the following:
  • Templates - OS images that can be used to boot VMs and can include additional configuration information, such as installed applications
  • ISO images - OS images that can be bootable or non-bootable
  • Disk volume snapshots - saved copies of VM data which can be used for data recovery or to create new templates
-message.installWizard.copy.whatIsPrimaryStorage=A CloudStack™ cloud infrastructure makes use of two types of storage: primary storage and secondary storage. Both of these can be iSCSI or NFS servers, or localdisk.

Primary storage is associated with a cluster, and it stores the disk volumes of each guest VM for all the VMs running on hosts in that cluster. The primary storage server is typically located close to the hosts. -message.installWizard.copy.whatIsACluster=A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Virtual machine instances (VMs) can be live-migrated from one host to another within the same cluster, without interrupting service to the user. A cluster is the third-largest organizational unit within a CloudStack™ deployment. Clusters are contained within pods, and pods are contained within zones.

CloudStack™ allows multiple clusters in a cloud deployment, but for a Basic Installation, we only need one cluster. -message.installWizard.copy.whatIsAPod=A pod often represents a single rack. Hosts in the same pod are in the same subnet.

A pod is the second-largest organizational unit within a CloudStack™ deployment. Pods are contained within zones. Each zone can contain one or more pods; in the Basic Installation, you will have just one pod in your zone. -message.installWizard.copy.whatIsAZone=A zone is the largest organizational unit within a CloudStack™ deployment. A zone typically corresponds to a single datacenter, although it is permissible to have multiple zones in a datacenter. The benefit of organizing infrastructure into zones is to provide physical isolation and redundancy. For example, each zone can have its own power supply and network uplink, and the zones can be widely separated geographically (though this is not required). -message.installWizard.copy.whatIsCloudStack=CloudStack™ is a software platform that pools computing resources to build public, private, and hybrid Infrastructure as a Service (IaaS) clouds. CloudStack™ manages the network, storage, and compute nodes that make up a cloud infrastructure. Use CloudStack™ to deploy, manage, and configure cloud computing environments.

Extending beyond individual virtual machine images running on commodity hardware, CloudStack™ provides a turnkey cloud infrastructure software stack for delivering virtual datacenters as a service - delivering all of the essential components to build, deploy, and manage multi-tier and multi-tenant cloud applications. Both open-source and Premium versions are available, with the open-source version offering nearly identical features. -message.installWizard.tooltip.addSecondaryStorage.path=The exported path, located on the server you specified above -message.installWizard.tooltip.addSecondaryStorage.nfsServer=The IP address of the NFS server hosting the secondary storage -message.installWizard.tooltip.addPrimaryStorage.path=(for NFS) In NFS this is the exported path from the server. Path (for SharedMountPoint). With KVM this is the path on each host that is where this primary storage is mounted. For example, "/mnt/primary". -message.installWizard.tooltip.addPrimaryStorage.server=(for NFS, iSCSI, or PreSetup) The IP address or DNS name of the storage device. -message.installWizard.tooltip.addPrimaryStorage.name=The name for the storage device. -message.installWizard.tooltip.addHost.password=This is the password for the user named above (from your XenServer install). -message.installWizard.tooltip.addHost.username=Usually root. -message.installWizard.tooltip.addHost.hostname=The DNS name or IP address of the host. -message.installWizard.tooltip.addCluster.name=A name for the cluster. This can be text of your choosing and is not used by CloudStack. -message.installWizard.tooltip.addPod.reservedSystemEndIp=This is the IP range in the private network that the CloudStack uses to manage Secondary Storage VMs and Console Proxy VMs. These IP addresses are taken from the same subnet as computing servers. -message.installWizard.tooltip.addPod.reservedSystemStartIp=This is the IP range in the private network that the CloudStack uses to manage Secondary Storage VMs and Console Proxy VMs. These IP addresses are taken from the same subnet as computing servers. -message.installWizard.tooltip.addPod.reservedSystemNetmask=The netmask in use on the subnet the guests will use. -message.installWizard.tooltip.addPod.reservedSystemGateway=The gateway for the hosts in that pod. -message.installWizard.tooltip.addPod.name=A name for the pod -message.installWizard.tooltip.configureGuestTraffic.guestEndIp=The range of IP addresses that will be available for allocation to guests in this zone. If one NIC is used, these IPs should be in the same CIDR as the pod CIDR. -message.installWizard.tooltip.configureGuestTraffic.guestStartIp=The range of IP addresses that will be available for allocation to guests in this zone. If one NIC is used, these IPs should be in the same CIDR as the pod CIDR. -message.installWizard.tooltip.configureGuestTraffic.guestNetmask=The netmask in use on the subnet that the guests should use -message.installWizard.tooltip.configureGuestTraffic.guestGateway=The gateway that the guests should use -message.installWizard.tooltip.configureGuestTraffic.description=A description for your network -message.installWizard.tooltip.configureGuestTraffic.name=A name for your network -message.installWizard.tooltip.addZone.internaldns2=These are DNS servers for use by system VMs in the zone. These DNS servers will be accessed via the private network interface of the System VMs. The private IP address you provide for the pods must have a route to the DNS server named here. -message.installWizard.tooltip.addZone.internaldns1=These are DNS servers for use by system VMs in the zone. These DNS servers will be accessed via the private network interface of the System VMs. The private IP address you provide for the pods must have a route to the DNS server named here. -message.installWizard.tooltip.addZone.dns2=These are DNS servers for use by guest VMs in the zone. These DNS servers will be accessed via the public network you will add later. The public IP addresses for the zone must have a route to the DNS server named here. -message.installWizard.tooltip.addZone.name=A name for the zone -message.installWizard.tooltip.addZone.dns1=These are DNS servers for use by guest VMs in the zone. These DNS servers will be accessed via the public network you will add later. The public IP addresses for the zone must have a route to the DNS server named here. -message.setup.successful=Cloud setup successful! -label.may.continue=You may now continue. -error.installWizard.message=Something went wrong; you may go back and correct any errors -message.installWizard.now.building=Now building your cloud... -message.installWizard.click.retry=Click the button to retry launch. -label.launch=Launch -label.installWizard.click.launch=Click the launch button. -label.congratulations=Congratulations! -label.installWizard.addSecondaryStorageIntro.subtitle=What is secondary storage? -label.installWizard.addSecondaryStorageIntro.title=Let’s add secondary storage -label.installWizard.addPrimaryStorageIntro.subtitle=What is primary storage? -label.installWizard.addPrimaryStorageIntro.title=Let’s add primary storage -label.installWizard.addHostIntro.subtitle=What is a host? -label.installWizard.addHostIntro.title=Let’s add a host -label.installWizard.addClusterIntro.subtitle=What is a cluster? -label.installWizard.addClusterIntro.title=Let’s add a cluster -label.installWizard.addPodIntro.subtitle=What is a pod? -label.installWizard.addPodIntro.title=Let’s add a pod -label.installWizard.addZone.title=Add zone -label.installWizard.addZoneIntro.subtitle=What is a zone? -label.installWizard.addZoneIntro.title=Let’s add a zone -error.password.not.match=The password fields do not match -label.confirm.password=Confirm password -message.change.password=Please change your password. -label.save.and.continue=Save and continue -label.skip.guide=I have used CloudStack before, skip this guide -label.continue.basic.install=Continue with basic installation -label.introduction.to.cloudstack=Introduction to CloudStack™ -label.what.is.cloudstack=What is CloudStack™? -label.hints=Hints -label.installWizard.subtitle=This tour will aid you in setting up your CloudStack™ installation -label.continue=Continue -label.installWizard.title=Hello and Welcome to CloudStack™ -label.agree=Agree -label.manage.resources=Manage Resources -label.port.forwarding.policies=Port forwarding policies -label.load.balancing.policies=Load balancing policies -label.networking.and.security=Networking and security -label.bandwidth=Bandwidth -label.virtual.machines=Virtual machines -label.compute.and.storage=Compute and Storage -label.task.completed=Task completed -label.update.project.resources=Update project resources -label.remove.project.account=Remove project account -label.item.listing=Item listing -message.select.item=Please select an item. -label.removing=Removing -label.invite=Invite -label.add.by=Add by -label.max.vms=Max. user VMs -label.max.public.ips=Max. public IPs -label.max.volumes=Max. volumes -label.max.snapshots=Max. snapshots -label.max.templates=Max. templates -label.max.vpcs=Max. VPCs -label.project.dashboard=Project dashboard -label.remind.later=Remind me later -label.invited.accounts=Invited accounts -label.invite.to=Invite to -label.add.accounts.to=Add accounts to -label.add.accounts=Add accounts -label.project.name=Project name -label.create.project=Create project -label.networks=Networks -label.launch.vm=Launch VM -label.new.vm=New VM -label.previous=Previous -label.add.to.group=Add to group -message.vm.review.launch=Please review the following information and confirm that your virtual instance is correct before launch. -message.select.security.groups=Please select security group(s) for your new VM -label.new=New -message.please.select.networks=Please select networks for your virtual machine. -message.please.proceed=Please proceed to the next step. -message.zone.no.network.selection=The zone you selected does not have any choices for network selection. -label.no.thanks=No thanks -label.my.templates=My templates -message.select.template=Please select a template for your new virtual instance. -message.select.iso=Please select an ISO for your new virtual instance. -message.template.desc=OS image that can be used to boot VMs -message.iso.desc=Disc image containing data or bootable media for OS -label.select.iso.or.template=Select ISO or template -message.select.a.zone=A zone typically corresponds to a single datacenter. Multiple zones help make the cloud more reliable by providing physical isolation and redundancy. -label.select.a.zone=Select a zone -label.review=Review -label.select.a.template=Select a template -label.setup=Setup -state.Allocated=Allocated changed.item.properties=Changed item properties -label.apply=Apply -label.default=Default -label.viewing=Viewing -label.move.to.top=Move to top -label.move.up.row=Move up one row -label.move.down.row=Move down one row -label.move.to.bottom=Move to bottom -label.drag.new.position=Drag to new position -label.order=Order -label.no.data=No data to show -label.change.value=Change value -label.clear.list=Clear list -label.full.path=Full path -message.add.domain=Please specify the subdomain you want to create under this domain -message.delete.user=Please confirm that you would like to delete this user. -message.enable.user=Please confirm that you would like to enable this user. -message.disable.user=Please confirm that you would like to disable this user. -message.generate.keys=Please confirm that you would like to generate new keys for this user. -message.update.resource.count=Please confirm that you want to update resource counts for this account. -message.edit.account=Edit ("-1" indicates no limit to the amount of resources create) -label.total.of.vm=Total of VM -label.total.of.ip=Total of IP Address -state.enabled=Enabled -message.action.download.iso=Please confirm that you want to download this ISO. -message.action.download.template=Please confirm that you want to download this template. -label.destination.zone=Destination Zone -label.keyboard.type=Keyboard type -label.nic.adapter.type=NIC adapter type -label.root.disk.controller=Root disk controller -label.community=Community -label.remove.egress.rule=Remove egress rule -label.add.egress.rule=Add egress rule -label.egress.rule=Egress rule -label.remove.ingress.rule=Remove ingress rule -label.delete.vpn.user=Delete VPN user -label.add.vpn.user=Add VPN user -label.remove.pf=Remove port forwarding rule -label.remove.vm.from.lb=Remove VM from load balancer rule -label.add.vms.to.lb=Add VM(s) to load balancer rule -label.add.vm=Add VM -label.remove.static.nat.rule=Remove static NAT rule -label.remove.rule=Remove rule -label.add.static.nat.rule=Add static NAT rule -label.add.rule=Add rule -label.configuration=Configuration -message.disable.vpn=Are you sure you want to disable VPN? -label.disable.vpn=Disable VPN -message.enable.vpn=Please confirm that you want VPN access enabled for this IP address. -label.enable.vpn=Enable VPN -message.acquire.new.ip=Please confirm that you would like to acquire a new IP for this network. -label.elastic=Elastic -label.my.network=My network -label.add.vms=Add VMs -label.configure=Configure -label.stickiness=Stickiness -label.source=Source -label.least.connections=Least connections -label.round.robin=Round-robin -label.restart.required=Restart required -label.clean.up=Clean up -label.restart.network=Restart network -label.edit.network.details=Edit network details -label.add.guest.network=Add guest network -label.guest.networks=Guest networks -message.ip.address.changed=Your IP addresses may have changed; would you like to refresh the listing? Note that in this case the details pane will close. -state.BackingUp=Backing Up -state.BackedUp=Backed Up -label.done=Done -label.vm.name=VM name -message.migrate.volume=Please confirm that you want to migrate volume to another primary storage. -label.migrate.volume=Migrate volume to another primary storage -message.create.template=Are you sure you want to create template? -label.create.template=Create template -message.download.volume.confirm=Please confirm that you want to download this volume -message.detach.disk=Are you sure you want to detach this disk? -state.ready=Ready -state.Ready=Ready -label.vm.display.name=VM display name -label.select-view=Select view -label.local.storage=Local Storage -label.direct.ips=Shared Network IPs -label.view.all=View all -label.zone.details=Zone details -message.alert.state.detected=Alert state detected -state.Starting=Starting -state.Expunging=Expunging -state.Creating=Creating -message.decline.invitation=Are you sure you want to decline this project invitation? -label.decline.invitation=Decline invitation -message.confirm.join.project=Please confirm you wish to join this project. -message.join.project=You have now joined a project. Please switch to Project view to see the project. -label.accept.project.invitation=Accept project invitation -label.token=Token -label.project.id=Project ID -message.enter.token=Please enter the token that you were given in your invite e-mail. -label.enter.token=Enter token -state.Accepted=Accepted -state.Pending=Pending -state.Completed=Completed -state.Declined=Declined -label.project=Project -label.invitations=Invitations -label.delete.project=Delete project -message.delete.project=Are you sure you want to delete this project? -message.activate.project=Are you sure you want to activate this project? -label.activate.project=Activate Project -label.suspend.project=Suspend Project -message.suspend.project=Are you sure you want to suspend this project? -state.Suspended=Suspended -label.edit.project.details=Edit project details -label.new.project=New Project -state.Active=Active -state.Disabled=Disabled -label.projects=Projects -label.make.project.owner=Make account project owner -label.remove.project.account=Remove account from project -message.project.invite.sent=Invite sent to user; they will be added to the project once they accept the invitation -label.add.account.to.project=Add account to project -label.revoke.project.invite=Revoke invitation -label.project.invite=Invite to project -label.select.project=Select Project -message.no.projects=You do not have any projects.
Please create a new one from the projects section. -message.no.projects.adminOnly=You do not have any projects.
Please ask your administrator to create a new project. -message.pending.projects.1=You have pending project invitations: -message.pending.projects.2=To view, please go to the projects section, then select invitations from the drop-down. -message.instanceWizard.noTemplates=You do not have any templates available; please add a compatible template, and re-launch the instance wizard. -label.view=View -instances.actions.reboot.label=Reboot instance -label.filterBy=Filter by -label.ok=OK -notification.reboot.instance=Reboot instance -notification.start.instance=Start instance -notification.stop.instance=Stop instance -label.display.name=Display name -label.zone.name=Zone name -ui.listView.filters.all=All -ui.listView.filters.mine=Mine -state.Running=Running -state.Stopped=Stopped -state.Destroyed=Destroyed -state.Error=Error -message.reset.password.warning.notPasswordEnabled=The template of this instance was created without password enabled -message.reset.password.warning.notStopped=Your instance must be stopped before attempting to change its current password -label.notifications=Notifications -label.default.view=Default View -label.project.view=Project View - -message.add.system.service.offering=Please fill in the following data to add a new system service offering. -message.action.delete.system.service.offering=Please confirm that you want to delete this system service offering. -label.action.delete.system.service.offering=Delete System Service Offering -label.hypervisor.capabilities=Hypervisor capabilities -label.hypervisor.version=Hypervisor version -label.max.guest.limit=Max guest limit -label.add.network.offering=Add network offering -label.supported.services=Supported Services -label.service.capabilities=Service Capabilities -label.guest.type=Guest Type -label.specify.IP.ranges=Specify IP ranges -label.conserve.mode=Conserve mode -label.created.by.system=Created by system -label.menu.system.service.offerings=System Offerings -label.add.system.service.offering=Add System Service Offering -label.redundant.router.capability=Redundant router capability -label.supported.source.NAT.type=Supported Source NAT type -label.elastic.LB=Elastic LB -label.LB.isolation=LB isolation -label.elastic.IP=Elastic IP -label.network.label.display.for.blank.value=Use default gateway -label.xen.traffic.label=XenServer traffic label -label.kvm.traffic.label=KVM traffic label -label.vmware.traffic.label=VMware traffic label -label.start.IP=Start IP -label.end.IP=End IP -label.remove.ip.range=Remove IP range -label.ip.ranges=IP Ranges -label.start.vlan=Start Vlan -label.end.vlan=End Vlan -label.broadcast.domain.range=Broadcast domain range -label.compute=Compute -message.add.guest.network=Please confirm that you would like to add a guest network -label.subdomain.access=Subdomain Access -label.guest.start.ip=Guest start IP -label.guest.end.ip=Guest end IP -label.virtual.router=Virtual Router -label.physical.network.ID=Physical network ID -label.destination.physical.network.id=Destination physical network ID -label.dhcp=DHCP -label.destroy.router=Destroy router -message.confirm.destroy.router=Please confirm that you would like to destroy this router -label.change.service.offering=Change service offering -label.view.console=View console -label.redundant.state=Redundant state -label.enable.provider=Enable provider -message.confirm.enable.provider=Please confirm that you would like to enable this provider -label.disable.provider=Disable provider -message.confirm.disable.provider=Please confirm that you would like to disable this provider -label.shutdown.provider=Shutdown provider -message.confirm.shutdown.provider=Please confirm that you would like to shutdown this provider -label.netScaler=NetScaler -label.add.new.NetScaler=Add new NetScaler -label.capacity=Capacity -label.dedicated=Dedicated -label.f5=F5 -label.add.new.F5=Add new F5 -label.srx=SRX -label.providers=Providers -label.add.new.SRX=Add new SRX -label.timeout=Timeout -label.public.network=Public network -label.private.network=Private network -label.enable.swift=Enable Swift +confirm.enable.s3=Please fill in the following information to enable support for S3-backed Secondary Storage confirm.enable.swift=Please fill in the following information to enable support for Swift -message.after.enable.swift=Swift configured. Note: When you leave this page, you will not be able to re-configure Swift again. -label.key=Key -label.delete.NetScaler=Delete NetScaler -message.confirm.delete.NetScaler=Please confirm that you would like to delete NetScaler -label.delete.F5=Delete F5 -message.confirm.delete.F5=Please confirm that you would like to delete F5 -label.delete.SRX=Delete SRX -message.confirm.delete.SRX=Please confirm that you would like to delete SRX -label.pods=Pods -label.pod.name=Pod name -label.reserved.system.gateway=Reserved system gateway -label.reserved.system.netmask=Reserved system netmask -label.start.reserved.system.IP=Start Reserved system IP -label.end.reserved.system.IP=End Reserved system IP -label.clusters=Clusters -label.cluster.name=Cluster Name -label.host.MAC=Host MAC -label.agent.username=Agent Username -label.agent.password=Agent Password -message.confirm.action.force.reconnect=Please confirm that you want to force reconnect this host. -label.resource.state=Resource state -label.LUN.number=LUN # -message.confirm.remove.IP.range=Please confirm that you would like to remove this IP range. -message.tooltip.zone.name=A name for the zone. -message.tooltip.dns.1=Name of a DNS server for use by VMs in the zone. The public IP addresses for the zone must have a route to this server. -message.tooltip.dns.2=A second DNS server name for use by VMs in the zone. The public IP addresses for the zone must have a route to this server. -message.tooltip.internal.dns.1=Name of a DNS server for use by CloudStack internal system VMs in the zone. The private IP address for the pods must have a route to this server. -message.tooltip.internal.dns.2=Name of a DNS server for use by CloudStack internal system VMs in the zone. The private IP address for the pods must have a route to this server. -message.tooltip.network.domain=A DNS suffix that will create a custom domain name for the network that is accessed by guest VMs. -message.tooltip.pod.name=A name for this pod. -message.tooltip.reserved.system.gateway=The gateway for the hosts in the pod. -message.tooltip.reserved.system.netmask=The network prefix that defines the pod subnet. Uses CIDR notation. -message.creating.zone=Creating zone -message.creating.physical.networks=Creating physical networks -message.configuring.physical.networks=Configuring physical networks -message.adding.Netscaler.device=Adding Netscaler device -message.creating.pod=Creating pod -message.configuring.public.traffic=Configuring public traffic -message.configuring.storage.traffic=Configuring storage traffic -message.configuring.guest.traffic=Configuring guest traffic -message.creating.cluster=Creating cluster -message.adding.host=Adding host -message.creating.primary.storage=Creating primary storage -message.creating.secondary.storage=Creating secondary storage -message.Zone.creation.complete=Zone creation complete -message.enabling.zone=Enabling zone -error.something.went.wrong.please.correct.the.following=Something went wrong; please correct the following error.could.not.enable.zone=Could not enable zone -message.zone.creation.complete.would.you.like.to.enable.this.zone=Zone creation complete. Would you like to enable this zone? -message.please.add.at.lease.one.traffic.range=Please add at least one traffic range. -message.you.must.have.at.least.one.physical.network=You must have at least one physical network -message.please.select.a.different.public.and.management.network.before.removing=Please select a different public and management network before removing - -label.zone.type=Zone Type -label.setup.zone=Setup Zone -label.setup.network=Setup Network -label.add.resources=Add Resources -label.launch=Launch -label.set.up.zone.type=Set up zone type -message.please.select.a.configuration.for.your.zone=Please select a configuration for your zone. -message.desc.basic.zone=Provide a single network where each VM instance is assigned an IP directly from the network. Guest isolation can be provided through layer-3 means such as security groups (IP address source filtering). -label.basic=Basic -message.desc.advanced.zone=For more sophisticated network topologies. This network model provides the most flexibility in defining guest networks and providing custom network offerings such as firewall, VPN, or load balancer support. -label.advanced=Advanced -message.desc.zone=A zone is the largest organizational unit in CloudStack, and it typically corresponds to a single datacenter. Zones provide physical isolation and redundancy. A zone consists of one or more pods (each of which contains hosts and primary storage servers) and a secondary storage server which is shared by all pods in the zone. -label.physical.network=Physical Network -label.public.traffic=Public traffic -label.guest.traffic=Guest Traffic -label.storage.traffic=Storage Traffic -message.setup.physical.network.during.zone.creation=When adding an advanced zone, you need to set up one or more physical networks. Each network corresponds to a NIC on the hypervisor. Each physical network can carry one or more types of traffic, with certain restrictions on how they may be combined.

Drag and drop one or more traffic types onto each physical network. -label.add.physical.network=Add physical network -label.traffic.types=Traffic Types -label.management=Management -label.guest=Guest -label.please.specify.netscaler.info=Please specify Netscaler info -message.public.traffic.in.advanced.zone=Public traffic is generated when VMs in the cloud access the internet. Publicly-accessible IPs must be allocated for this purpose. End users can use the CloudStack UI to acquire these IPs to implement NAT between their guest network and their public network.

Provide at least one range of IP addresses for internet traffic. -message.public.traffic.in.basic.zone=Public traffic is generated when VMs in the cloud access the Internet or provide services to clients over the Internet. Publicly accessible IPs must be allocated for this purpose. When a instance is created, an IP from this set of Public IPs will be allocated to the instance in addition to the guest IP address. Static 1-1 NAT will be set up automatically between the public IP and the guest IP. End users can also use the CloudStack UI to acquire additional IPs to implement static NAT between their instances and the public IP. -message.add.pod.during.zone.creation=Each zone must contain in one or more pods, and we will add the first pod now. A pod contains hosts and primary storage servers, which you will add in a later step. First, configure a range of reserved IP addresses for CloudStack's internal management traffic. The reserved IP range must be unique for each zone in the cloud. -message.guest.traffic.in.advanced.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of VLAN IDs to carry guest traffic for each physical network. -message.guest.traffic.in.basic.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of IP addresses that CloudStack can assign to guest VMs. Make sure this range does not overlap the reserved system IP range. -message.storage.traffic=Traffic between CloudStack's internal resources, including any components that communicate with the Management Server, such as hosts and CloudStack system VMs. Please configure storage traffic here. -message.desc.cluster=Each pod must contain one or more clusters, and we will add the first cluster now. A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Each cluster consists of one or more hosts and one or more primary storage servers. -message.desc.host=Each cluster must contain at least one host (computer) for guest VMs to run on, and we will add the first host now. For a host to function in CloudStack, you must install hypervisor software on the host, assign an IP address to the host, and ensure the host is connected to the CloudStack management server.

Give the host's DNS or IP address, the user name (usually root) and password, and any labels you use to categorize hosts. -message.desc.primary.storage=Each cluster must contain one or more primary storage servers, and we will add the first one now. Primary storage contains the disk volumes for all the VMs running on hosts in the cluster. Use any standards-compliant protocol that is supported by the underlying hypervisor. -message.desc.secondary.storage=Each zone must have at least one NFS or secondary storage server, and we will add the first one now. Secondary storage stores VM templates, ISO images, and VM disk volume snapshots. This server must be available to all hosts in the zone.

Provide the IP address and exported path. -label.launch.zone=Launch zone -message.please.wait.while.zone.is.being.created=Please wait while your zone is being created; this may take a while... - -label.load.balancing=Load Balancing -label.static.nat.enabled=Static NAT Enabled -label.zones=Zones -label.view.more=View more -label.number.of.zones=Number of Zones -label.number.of.pods=Number of Pods -label.number.of.clusters=Number of Clusters -label.number.of.hosts=Number of Hosts -label.total.hosts=Total Hosts -label.total.CPU=Total CPU -label.total.memory=Total Memory -label.total.storage=Total Storage -label.purpose=Purpose - - - - -label.action.migrate.router=Migrate Router -label.action.migrate.router.processing=Migrating Router.... -message.migrate.router.confirm=Please confirm the host you wish to migrate the router to: -label.migrate.router.to=Migrate Router to - -label.action.migrate.systemvm=Migrate System VM -label.action.migrate.systemvm.processing=Migrating System VM.... -message.migrate.systemvm.confirm=Please confirm the host you wish to migrate the system VM to: -label.migrate.systemvm.to=Migrate System VM to - - -mode=Mode -side.by.side=Side by Side -inline=Inline - +error.installWizard.message=Something went wrong; you may go back and correct any errors +error.invalid.username.password=Invalid username or password +error.login=Your username/password does not match our records. +error.menu.select=Unable to perform action due to no items being selected. +error.mgmt.server.inaccessible=The Management Server is unaccessible. Please try again later. +error.password.not.match=The password fields do not match +error.please.specify.physical.network.tags=Network offerings is not available until you specify tags for this physical network. +error.session.expired=Your session has expired. +error.something.went.wrong.please.correct.the.following=Something went wrong; please correct the following +error.unable.to.reach.management.server=Unable to reach Management Server +error.unresolved.internet.name=Your internet name cannot be resolved. extractable=Extractable - -label.ocfs2=OCFS2 - -label.action.edit.host=Edit Host - -network.rate=Network Rate - -ICMP.type=ICMP Type -ICMP.code=ICMP Code - -image.directory=Image Directory - -label.action.create.template.from.vm=Create Template from VM -label.action.create.template.from.volume=Create Template from Volume - -message.vm.create.template.confirm=Create Template will reboot the VM automatically. - -label.action.manage.cluster=Manage Cluster -message.action.manage.cluster=Please confirm that you want to manage the cluster. -label.action.manage.cluster.processing=Managing Cluster.... - -label.action.unmanage.cluster=Unmanage Cluster -message.action.unmanage.cluster=Please confirm that you want to unmanage the cluster. -label.action.unmanage.cluster.processing=Unmanaging Cluster.... - -label.allocation.state=Allocation State -managed.state=Managed State - -label.default.use=Default Use -label.host.tags=Host Tags - -label.cidr=CIDR -label.cidr.list=Source CIDR - -label.storage.tags=Storage Tags - -label.redundant.router=Redundant Router -label.is.redundant.router=Redundant - -force.delete=Force Delete force.delete.domain.warning=Warning: Choosing this option will cause the deletion of all child domains and all associated accounts and their resources. - +force.delete=Force Delete force.remove=Force Remove force.remove.host.warning=Warning: Choosing this option will cause CloudStack to forcefully stop all running virtual machines before removing this host from the cluster. - force.stop=Force Stop force.stop.instance.warning=Warning: Forcing a stop on this instance should be your last option. It can lead to data loss as well as inconsistent behavior of the virtual machine state. - -label.PreSetup=PreSetup -label.SR.name = SR Name-Label -label.SharedMountPoint=SharedMountPoint -label.clvm=CLVM -label.volgroup=Volume Group -label.VMFS.datastore=VMFS datastore - -label.network.device=Network Device -label.add.network.device=Add Network Device -label.network.device.type=Network Device Type -label.DHCP.server.type=DHCP Server Type -label.Pxe.server.type=Pxe Server Type -label.PING.storage.IP=PING storage IP -label.PING.dir=PING Directory -label.TFTP.dir=TFTP Directory -label.PING.CIFS.username=PING CIFS username -label.PING.CIFS.password=PING CIFS password -label.CPU.cap=CPU Cap - - -label.action.enable.zone=Enable Zone -label.action.enable.zone.processing=Enabling Zone.... -message.action.enable.zone=Please confirm that you want to enable this zone. -label.action.disable.zone=Disable Zone -label.action.disable.zone.processing=Disabling Zone.... -message.action.disable.zone=Please confirm that you want to disable this zone. - -label.action.enable.pod=Enable Pod -label.action.enable.pod.processing=Enabling Pod.... -message.action.enable.pod=Please confirm that you want to enable this pod. -label.action.disable.pod=Disable Pod -label.action.disable.pod.processing=Disabling Pod.... -message.action.disable.pod=Please confirm that you want to disable this pod. - -label.action.enable.cluster=Enable Cluster -label.action.enable.cluster.processing=Enabling Cluster.... -message.action.enable.cluster=Please confirm that you want to enable this cluster. -label.action.disable.cluster=Disable Cluster -label.action.disable.cluster.processing=Disabling Cluster.... -message.action.disable.cluster=Please confirm that you want to disable this cluster. - +ICMP.code=ICMP Code +ICMP.type=ICMP Type +image.directory=Image Directory +inline=Inline +instances.actions.reboot.label=Reboot instance +label.accept.project.invitation=Accept project invitation +label.account=Account +label.account.and.security.group=Account, Security group label.account.id=Account ID label.account.name=Account Name -label.account.specific=Account-Specific -label.account=Account label.accounts=Accounts +label.account.specific=Account-Specific label.acquire.new.ip=Acquire New IP -label.show.ingress.rule=Show Ingress Rule -label.hide.ingress.rule=Hide Ingress Rule -label.action.attach.disk.processing=Attaching Disk.... label.action.attach.disk=Attach Disk -label.action.attach.iso.processing=Attaching ISO.... +label.action.attach.disk.processing=Attaching Disk.... label.action.attach.iso=Attach ISO -label.action.cancel.maintenance.mode.processing=Cancelling Maintenance Mode.... +label.action.attach.iso.processing=Attaching ISO.... label.action.cancel.maintenance.mode=Cancel Maintenance Mode +label.action.cancel.maintenance.mode.processing=Cancelling Maintenance Mode.... label.action.change.password=Change Password -label.action.change.service.processing=Changing Service.... label.action.change.service=Change Service -label.action.copy.ISO.processing=Coping ISO.... +label.action.change.service.processing=Changing Service.... label.action.copy.ISO=Copy ISO -label.action.copy.template.processing=Coping Template.... +label.action.copy.ISO.processing=Coping ISO.... label.action.copy.template=Copy Template -label.action.create.template.processing=Creating Template.... +label.action.copy.template.processing=Coping Template.... label.action.create.template=Create Template -label.action.create.vm.processing=Creating VM.... +label.action.create.template.from.vm=Create Template from VM +label.action.create.template.from.volume=Create Template from Volume +label.action.create.template.processing=Creating Template.... label.action.create.vm=Create VM -label.action.create.volume.processing=Creating Volume.... +label.action.create.vm.processing=Creating VM.... label.action.create.volume=Create Volume -label.action.delete.IP.range.processing=Deleting IP Range.... -label.action.delete.IP.range=Delete IP Range -label.action.delete.ISO.processing=Deleting ISO.... -label.action.delete.ISO=Delete ISO -label.action.delete.account.processing=Deleting account.... +label.action.create.volume.processing=Creating Volume.... label.action.delete.account=Delete account -label.action.delete.cluster.processing=Deleting Cluster.... +label.action.delete.account.processing=Deleting account.... label.action.delete.cluster=Delete Cluster -label.action.delete.disk.offering.processing=Deleting Disk Offering.... +label.action.delete.cluster.processing=Deleting Cluster.... label.action.delete.disk.offering=Delete Disk Offering - -label.action.update.resource.count=Update Resource Count -label.action.update.resource.count.processing=Updating Resource Count.... - +label.action.delete.disk.offering.processing=Deleting Disk Offering.... label.action.delete.domain=Delete Domain label.action.delete.domain.processing=Deleting Domain.... - -label.action.delete.firewall.processing=Deleting Firewall.... label.action.delete.firewall=Delete firewall rule -label.action.delete.ingress.rule.processing=Deleting Ingress Rule.... +label.action.delete.firewall.processing=Deleting Firewall.... label.action.delete.ingress.rule=Delete Ingress Rule -label.action.delete.load.balancer.processing=Deleting Load Balancer.... +label.action.delete.ingress.rule.processing=Deleting Ingress Rule.... +label.action.delete.IP.range=Delete IP Range +label.action.delete.IP.range.processing=Deleting IP Range.... +label.action.delete.ISO=Delete ISO +label.action.delete.ISO.processing=Deleting ISO.... label.action.delete.load.balancer=Delete load balancer rule -label.action.edit.network.processing=Editing Network.... -label.action.edit.network=Edit Network -label.action.delete.network.processing=Deleting Network.... +label.action.delete.load.balancer.processing=Deleting Load Balancer.... label.action.delete.network=Delete Network -label.action.delete.pod.processing=Deleting Pod.... +label.action.delete.network.processing=Deleting Network.... +label.action.delete.nexusVswitch=Delete Nexus 1000v +label.action.delete.physical.network=Delete physical network label.action.delete.pod=Delete Pod -label.action.delete.primary.storage.processing=Deleting Primary Storage.... +label.action.delete.pod.processing=Deleting Pod.... label.action.delete.primary.storage=Delete Primary Storage -label.action.delete.secondary.storage.processing=Deleting Secondary Storage.... +label.action.delete.primary.storage.processing=Deleting Primary Storage.... label.action.delete.secondary.storage=Delete Secondary Storage -label.action.delete.security.group.processing=Deleting Security Group.... +label.action.delete.secondary.storage.processing=Deleting Secondary Storage.... label.action.delete.security.group=Delete Security Group -label.action.delete.service.offering.processing=Deleting Service Offering.... +label.action.delete.security.group.processing=Deleting Security Group.... label.action.delete.service.offering=Delete Service Offering -label.action.delete.snapshot.processing=Deleting Snapshot.... +label.action.delete.service.offering.processing=Deleting Service Offering.... label.action.delete.snapshot=Delete Snapshot -label.action.delete.template.processing=Deleting Template.... +label.action.delete.snapshot.processing=Deleting Snapshot.... +label.action.delete.system.service.offering=Delete System Service Offering label.action.delete.template=Delete Template -label.action.delete.user.processing=Deleting User.... +label.action.delete.template.processing=Deleting Template.... label.action.delete.user=Delete User -label.action.delete.volume.processing=Deleting Volume.... +label.action.delete.user.processing=Deleting User.... label.action.delete.volume=Delete Volume -label.action.delete.zone.processing=Deleting Zone.... +label.action.delete.volume.processing=Deleting Volume.... label.action.delete.zone=Delete Zone -label.action.destroy.instance.processing=Destroying Instance.... +label.action.delete.zone.processing=Deleting Zone.... label.action.destroy.instance=Destroy Instance -label.action.destroy.systemvm.processing=Destroying System VM.... +label.action.destroy.instance.processing=Destroying Instance.... label.action.destroy.systemvm=Destroy System VM -label.action.detach.disk.processing=Detaching Disk.... +label.action.destroy.systemvm.processing=Destroying System VM.... label.action.detach.disk=Detach Disk -label.action.detach.iso.processing=Detaching ISO.... +label.action.detach.disk.processing=Detaching Disk.... label.action.detach.iso=Detach ISO -label.action.disable.account.processing=Disabling account.... +label.action.detach.iso.processing=Detaching ISO.... label.action.disable.account=Disable account -label.action.disable.static.NAT.processing=Disabling Static NAT.... +label.action.disable.account.processing=Disabling account.... +label.action.disable.cluster=Disable Cluster +label.action.disable.cluster.processing=Disabling Cluster.... +label.action.disable.nexusVswitch=Disable Nexus 1000v +label.action.disable.physical.network=Disable physical network +label.action.disable.pod=Disable Pod +label.action.disable.pod.processing=Disabling Pod.... label.action.disable.static.NAT=Disable Static NAT -label.action.disable.user.processing=Disabling User.... +label.action.disable.static.NAT.processing=Disabling Static NAT.... label.action.disable.user=Disable User +label.action.disable.user.processing=Disabling User.... +label.action.disable.zone=Disable Zone +label.action.disable.zone.processing=Disabling Zone.... label.action.download.ISO=Download ISO label.action.download.template=Download Template -label.action.download.volume.processing=Downloading Volume.... label.action.download.volume=Download Volume -label.action.edit.ISO=Edit ISO +label.action.download.volume.processing=Downloading Volume.... label.action.edit.account=Edit account label.action.edit.disk.offering=Edit Disk Offering label.action.edit.domain=Edit Domain label.action.edit.global.setting=Edit Global Setting +label.action.edit.host=Edit Host label.action.edit.instance=Edit Instance +label.action.edit.ISO=Edit ISO +label.action.edit.network=Edit Network label.action.edit.network.offering=Edit Network Offering +label.action.edit.network.processing=Editing Network.... label.action.edit.pod=Edit Pod label.action.edit.primary.storage=Edit Primary Storage label.action.edit.resource.limits=Edit Resource Limits @@ -920,22 +157,37 @@ label.action.edit.service.offering=Edit Service Offering label.action.edit.template=Edit Template label.action.edit.user=Edit User label.action.edit.zone=Edit Zone -label.action.enable.account.processing=Enabling account.... label.action.enable.account=Enable account -label.action.enable.maintenance.mode.processing=Enabling Maintenance Mode.... +label.action.enable.account.processing=Enabling account.... +label.action.enable.cluster=Enable Cluster +label.action.enable.cluster.processing=Enabling Cluster.... label.action.enable.maintenance.mode=Enable Maintenance Mode -label.action.enable.static.NAT.processing=Enabling Static NAT.... +label.action.enable.maintenance.mode.processing=Enabling Maintenance Mode.... +label.action.enable.nexusVswitch=Enable Nexus 1000v +label.action.enable.physical.network=Enable physical network +label.action.enable.pod=Enable Pod +label.action.enable.pod.processing=Enabling Pod.... label.action.enable.static.NAT=Enable Static NAT -label.action.enable.user.processing=Enabling User.... +label.action.enable.static.NAT.processing=Enabling Static NAT.... label.action.enable.user=Enable User -label.action.force.reconnect.processing=Reconnecting.... +label.action.enable.user.processing=Enabling User.... +label.action.enable.zone=Enable Zone +label.action.enable.zone.processing=Enabling Zone.... label.action.force.reconnect=Force Reconnect -label.action.generate.keys.processing=Generate Keys.... +label.action.force.reconnect.processing=Reconnecting.... label.action.generate.keys=Generate Keys -label.action.lock.account.processing=Locking account.... +label.action.generate.keys.processing=Generate Keys.... +label.action.list.nexusVswitch=List Nexus 1000v label.action.lock.account=Lock account +label.action.lock.account.processing=Locking account.... +label.action.manage.cluster=Manage Cluster +label.action.manage.cluster.processing=Managing Cluster.... label.action.migrate.instance=Migrate Instance label.action.migrate.instance.processing=Migrating Instance.... +label.action.migrate.router=Migrate Router +label.action.migrate.router.processing=Migrating Router.... +label.action.migrate.systemvm=Migrate System VM +label.action.migrate.systemvm.processing=Migrating System VM.... label.action.reboot.instance.processing=Rebooting Instance.... label.action.reboot.instance=Reboot Instance label.action.reboot.router.processing=Rebooting Router.... @@ -943,15 +195,20 @@ label.action.reboot.router=Reboot Router label.action.reboot.systemvm.processing=Rebooting System VM.... label.action.reboot.systemvm=Reboot System VM label.action.recurring.snapshot=Recurring Snapshots +label.action.register.iso=Register ISO +label.action.register.template=Register template label.action.release.ip.processing=Releasing IP.... label.action.release.ip=Release IP label.action.remove.host.processing=Removing Host.... label.action.remove.host=Remove Host label.action.reset.password.processing=Resetting Password.... label.action.reset.password=Reset Password +label.action.resize.volume.processing=Resizing Volume.... +label.action.resize.volume=Resize Volume label.action.resource.limits=Resource limits label.action.restore.instance.processing=Restoring Instance.... label.action.restore.instance=Restore Instance +label.actions=Actions label.action.start.instance.processing=Starting Instance.... label.action.start.instance=Start Instance label.action.start.router.processing=Starting Router.... @@ -966,65 +223,124 @@ label.action.stop.systemvm.processing=Stopping System VM.... label.action.stop.systemvm=Stop System VM label.action.take.snapshot.processing=Taking Snapshot.... label.action.take.snapshot=Take Snapshot +label.action.unmanage.cluster.processing=Unmanaging Cluster.... +label.action.unmanage.cluster=Unmanage Cluster label.action.update.OS.preference.processing=Updating OS Preference.... label.action.update.OS.preference=Update OS Preference -label.actions=Actions +label.action.update.resource.count.processing=Updating Resource Count.... +label.action.update.resource.count=Update Resource Count +label.action.vmsnapshot.create=Take VM Snapshot +label.action.vmsnapshot.delete=Delete VM snapshot +label.action.vmsnapshot.revert=Revert to VM snapshot +label.activate.project=Activate Project label.active.sessions=Active Sessions label.add.account=Add Account +label.add.accounts=Add accounts +label.add.accounts.to=Add accounts to +label.add.account.to.project=Add account to project +label.add.ACL=Add ACL +label.add=Add +label.add.BigSwitchVns.device=Add BigSwitch Vns Controller +label.add.by=Add by label.add.by.cidr=Add By CIDR label.add.by.group=Add By Group label.add.cluster=Add Cluster +label.add.compute.offering=Add compute offering label.add.direct.iprange=Add Direct Ip Range label.add.disk.offering=Add Disk Offering label.add.domain=Add Domain +label.add.egress.rule=Add egress rule +label.add.F5.device=Add F5 device label.add.firewall=Add firewall rule +label.add.guest.network=Add guest network label.add.host=Add Host -label.add.ingress.rule=Add Ingress Rule -label.add.ip.range=Add IP Range -label.add.load.balancer=Add Load Balancer -label.add.more=Add More -label.add.network=Add Network -label.add.pod=Add Pod -label.add.primary.storage=Add Primary Storage -label.add.secondary.storage=Add Secondary Storage -label.add.security.group=Add Security Group -label.add.service.offering=Add Service Offering -label.add.template=Add Template -label.add.user=Add User -label.add.vlan=Add VLAN -label.add.volume=Add Volume -label.add.zone=Add Zone -label.add=Add +label.adding=Adding label.adding.cluster=Adding Cluster label.adding.failed=Adding Failed label.adding.pod=Adding Pod label.adding.processing=Adding.... +label.add.ingress.rule=Add Ingress Rule label.adding.succeeded=Adding Succeeded label.adding.user=Adding User label.adding.zone=Adding Zone -label.adding=Adding +label.add.ip.range=Add IP Range label.additional.networks=Additional Networks +label.add.load.balancer=Add Load Balancer +label.add.more=Add More +label.add.netScaler.device=Add Netscaler device +label.add.network.ACL=Add network ACL +label.add.network=Add Network +label.add.network.device=Add Network Device +label.add.network.offering=Add network offering +label.add.new.F5=Add new F5 +label.add.new.gateway=Add new gateway +label.add.new.NetScaler=Add new NetScaler +label.add.new.SRX=Add new SRX +label.add.new.tier=Add new tier +label.add.NiciraNvp.device=Add Nvp Controller +label.add.physical.network=Add physical network +label.add.pod=Add Pod +label.add.port.forwarding.rule=Add port forwarding rule +label.add.primary.storage=Add Primary Storage +label.add.region=Add Region +label.add.resources=Add Resources +label.add.route=Add route +label.add.rule=Add rule +label.add.secondary.storage=Add Secondary Storage +label.add.security.group=Add Security Group +label.add.service.offering=Add Service Offering +label.add.SRX.device=Add SRX device +label.add.static.nat.rule=Add static NAT rule +label.add.static.route=Add static route +label.add.system.service.offering=Add System Service Offering +label.add.template=Add Template +label.add.to.group=Add to group +label.add.user=Add User +label.add.vlan=Add VLAN +label.add.vm=Add VM +label.add.vms=Add VMs +label.add.vms.to.lb=Add VM(s) to load balancer rule +label.add.VM.to.tier=Add VM to tier +label.add.volume=Add Volume +label.add.vpc=Add VPC +label.add.vpn.customer.gateway=Add VPN Customer Gateway +label.add.VPN.gateway=Add VPN Gateway +label.add.vpn.user=Add VPN user +label.add.zone=Add Zone label.admin.accounts=Admin Accounts label.admin=Admin +label.advanced=Advanced label.advanced.mode=Advanced Mode label.advanced.search=Advance Search -label.advanced=Advanced +label.agent.password=Agent Password +label.agent.username=Agent Username +label.agree=Agree label.alert=Alert label.algorithm=Algorithm label.allocated=Allocated +label.allocation.state=Allocation State label.api.key=API Key -label.assign.to.load.balancer=Assigning instance to load balancer +label.apply=Apply label.assign=Assign +label.assign.to.load.balancer=Assigning instance to load balancer +label.associated.network=Associated Network label.associated.network.id=Associated Network ID label.attached.iso=Attached ISO -label.availability.zone=Availability Zone +label.author.email=Author e-mail +label.author.name=Author name label.availability=Availability -label.available.public.ips=Available Public IP Addresses +label.availability.zone=Availability Zone label.available=Available +label.available.public.ips=Available Public IP Addresses label.back=Back +label.bandwidth=Bandwidth +label.basic=Basic label.basic.mode=Basic Mode +label.bigswitch.controller.address=BigSwitch Vns Controller Address label.bootable=Bootable +label.broadcast.domain.range=Broadcast domain range label.broadcast.domain.type=Broadcast Domain Type +label.broadcast.uri=Broadcast URI label.by.account=By Account label.by.availability=By Availability label.by.domain=By Domain @@ -1034,30 +350,64 @@ label.by.pod=By Pod label.by.role=By Role label.by.start.date=By Start Date label.by.state=By State -label.by.traffic.type=By Traffic Type -label.by.type.id=By Type ID -label.by.type=By Type -label.by.zone=By Zone label.bytes.received=Bytes Received label.bytes.sent=Bytes Sent +label.by.traffic.type=By Traffic Type +label.by.type=By Type +label.by.type.id=By Type ID +label.by.zone=By Zone label.cancel=Cancel +label.capacity=Capacity label.certificate=Certificate -label.privatekey=PKCS#8 Private Key -label.domain.suffix=DNS Domain Suffix (i.e., xyz.com) +label.change.service.offering=Change service offering +label.change.value=Change value label.character=Character +label.checksum=MD5 checksum label.cidr.account=CIDR or Account/Security Group +label.cidr=CIDR +label.CIDR.list=CIDR list +label.cidr.list=Source CIDR +label.CIDR.of.destination.network=CIDR of destination network +label.clean.up=Clean up +label.clear.list=Clear list label.close=Close label.cloud.console=Cloud Management Console label.cloud.managed=Cloud.com Managed -label.cluster.type=Cluster Type label.cluster=Cluster +label.cluster.name=Cluster Name +label.clusters=Clusters +label.cluster.type=Cluster Type +label.clvm=CLVM label.code=Code +label.community=Community +label.compute.and.storage=Compute and Storage +label.compute=Compute +label.compute.offering=Compute offering +label.compute.offerings=Compute offerings +label.configuration=Configuration +label.configure=Configure +label.configure.network.ACLs=Configure Network ACLs +label.configure.vpc=Configure VPC label.confirmation=Confirmation -label.cpu.allocated.for.VMs=CPU Allocated for VMs +label.confirm.password=Confirm password +label.congratulations=Congratulations! +label.conserve.mode=Conserve mode +label.console.proxy=Console proxy +label.continue.basic.install=Continue with basic installation +label.continue=Continue +label.corrections.saved=Corrections saved label.cpu.allocated=CPU Allocated -label.cpu.utilized=CPU Utilized +label.cpu.allocated.for.VMs=CPU Allocated for VMs +label.CPU.cap=CPU Cap label.cpu=CPU +label.cpu.limits=CPU limits +label.cpu.mhz=CPU (in MHz) +label.cpu.utilized=CPU Utilized +label.created.by.system=Created by system label.created=Created +label.create.project=Create project +label.create.template=Create template +label.create.VPN.connection=Create VPN Connection label.cross.zones=Cross Zones label.custom.disk.size=Custom Disk Size label.daily=Daily @@ -1065,47 +415,111 @@ label.data.disk.offering=Data Disk Offering label.date=Date label.day.of.month=Day of Month label.day.of.week=Day of Week +label.dead.peer.detection=Dead Peer Detection +label.decline.invitation=Decline invitation +label.dedicated=Dedicated +label.default=Default +label.default.use=Default Use +label.default.view=Default View +label.delete.BigSwitchVns=Remove BigSwitch Vns Controller label.delete=Delete +label.delete.F5=Delete F5 +label.delete.gateway=delete gateway +label.delete.NetScaler=Delete NetScaler +label.delete.NiciraNvp=Remove Nvp Controller +label.delete.project=Delete project +label.delete.SRX=Delete SRX +label.delete.VPN.connection=delete VPN connection +label.delete.VPN.customer.gateway=delete VPN Customer Gateway +label.delete.VPN.gateway=delete VPN Gateway +label.delete.vpn.user=Delete VPN user label.deleting.failed=Deleting Failed label.deleting.processing=Deleting.... label.description=Description +label.destination.physical.network.id=Destination physical network ID +label.destination.zone=Destination Zone +label.destroy=Destroy +label.destroy.router=Destroy router label.detaching.disk=Detaching Disk label.details=Details label.device.id=Device ID +label.devices=Devices +label.dhcp=DHCP +label.DHCP.server.type=DHCP Server Type +label.direct.ips=Shared Network IPs label.disabled=Disabled +label.disable.provider=Disable provider +label.disable.vpn=Disable VPN label.disabling.vpn.access=Disabling VPN Access label.disk.allocated=Disk Allocated label.disk.offering=Disk Offering -label.disk.size.gb=Disk Size (in GB) label.disk.size=Disk Size +label.disk.size.gb=Disk Size (in GB) label.disk.total=Disk Total label.disk.volume=Disk Volume +label.display.name=Display name label.display.text=Display Text label.dns.1=DNS 1 label.dns.2=DNS 2 +label.dns=DNS +label.DNS.domain.for.guest.networks=DNS domain for Guest Networks label.domain.admin=Domain Admin +label.domain=Domain label.domain.id=Domain ID label.domain.name=Domain Name -label.domain=Domain +label.domain.router=Domain router +label.domain.suffix=DNS Domain Suffix (i.e., xyz.com) +label.done=Done label.double.quotes.are.not.allowed=Double quotes are not allowed label.download.progress=Download Progress +label.drag.new.position=Drag to new position label.edit=Edit +label.edit.lb.rule=Edit LB rule +label.edit.network.details=Edit network details +label.edit.project.details=Edit project details +label.edit.tags=Edit tags +label.edit.traffic.type=Edit traffic type +label.edit.vpc=Edit VPC +label.egress.rule=Egress rule +label.egress.rules=Egress rules +label.elastic=Elastic +label.elastic.IP=Elastic IP +label.elastic.LB=Elastic LB label.email=Email +label.enable.provider=Enable provider +label.enable.s3=Enable S3-backed Secondary Storage +label.enable.swift=Enable Swift +label.enable.vpn=Enable VPN label.enabling.vpn.access=Enabling VPN Access label.enabling.vpn=Enabling VPN -label.end.port=End Port +label.end.IP=End IP +label.endpoint=Endpoint label.endpoint.or.operation=Endpoint or Operation +label.end.port=End Port +label.end.reserved.system.IP=End Reserved system IP +label.end.vlan=End Vlan +label.enter.token=Enter token label.error.code=Error Code label.error=Error +label.ESP.encryption=ESP Encryption +label.ESP.hash=ESP Hash +label.ESP.lifetime=ESP Lifetime (second) +label.ESP.lifetime=ESP Lifetime(second) +label.ESP.policy=ESP policy label.esx.host=ESX/ESXi Host label.example=Example +label.external.link=External link +label.f5=F5 label.failed=Failed label.featured=Featured +label.fetch.latest=Fetch latest +label.filterBy=Filter by label.firewall=Firewall label.first.name=First Name label.format=Format label.friday=Friday label.full=Full +label.full.path=Full path label.gateway=Gateway label.general.alerts=General Alerts label.generating.url=Generating URL @@ -1113,75 +527,157 @@ label.go.step.2=Go to Step 2 label.go.step.3=Go to Step 3 label.go.step.4=Go to Step 4 label.go.step.5=Go to Step 5 -label.group.optional=Group (Optional) label.group=Group +label.group.optional=Group (Optional) label.guest.cidr=Guest CIDR +label.guest.end.ip=Guest end IP label.guest.gateway=Guest Gateway -label.guest.ip.range=Guest IP Range +label.guest=Guest label.guest.ip=Guest IP Address +label.guest.ip.range=Guest IP Range label.guest.netmask=Guest Netmask +label.guest.networks=Guest networks +label.guest.start.ip=Guest start IP +label.guest.traffic=Guest Traffic +label.guest.type=Guest Type label.ha.enabled=HA Enabled label.help=Help +label.hide.ingress.rule=Hide Ingress Rule +label.hints=Hints label.host.alerts=Host Alerts -label.host.name=Host Name label.host=Host +label.host.MAC=Host MAC +label.host.name=Host Name label.hosts=Hosts +label.host.tags=Host Tags label.hourly=Hourly -label.hypervisor.type=Hypervisor Type +label.hypervisor.capabilities=Hypervisor capabilities label.hypervisor=Hypervisor +label.hypervisor.type=Hypervisor Type +label.hypervisor.version=Hypervisor version label.id=ID +label.IKE.DH=IKE DH +label.IKE.encryption=IKE Encryption +label.IKE.hash=IKE Hash +label.IKE.lifetime=IKE lifetime (second) +label.IKE.lifetime=IKE Lifetime (second) +label.IKE.policy=IKE policy label.info=Info label.ingress.rule=Ingress Rule label.initiated.by=Initiated By +label.installWizard.addClusterIntro.subtitle=What is a cluster? +label.installWizard.addClusterIntro.title=Let’s add a cluster +label.installWizard.addHostIntro.subtitle=What is a host? +label.installWizard.addHostIntro.title=Let’s add a host +label.installWizard.addPodIntro.subtitle=What is a pod? +label.installWizard.addPodIntro.title=Let’s add a pod +label.installWizard.addPrimaryStorageIntro.subtitle=What is primary storage? +label.installWizard.addPrimaryStorageIntro.title=Let’s add primary storage +label.installWizard.addSecondaryStorageIntro.subtitle=What is secondary storage? +label.installWizard.addSecondaryStorageIntro.title=Let’s add secondary storage +label.installWizard.addZoneIntro.subtitle=What is a zone? +label.installWizard.addZoneIntro.title=Let’s add a zone +label.installWizard.addZone.title=Add zone +label.installWizard.click.launch=Click the launch button. +label.installWizard.subtitle=This tour will aid you in setting up your CloudStack™ installation +label.installWizard.title=Hello and Welcome to CloudStack™ +label.instance=Instance label.instance.limits=Instance Limits label.instance.name=Instance Name -label.instance=Instance label.instances=Instances label.internal.dns.1=Internal DNS 1 label.internal.dns.2=Internal DNS 2 +label.internal.name=Internal name label.interval.type=Interval Type +label.introduction.to.cloudstack=Introduction to CloudStack™ label.invalid.integer=Invalid Integer label.invalid.number=Invalid Number +label.invitations=Invitations +label.invited.accounts=Invited accounts +label.invite=Invite +label.invite.to=Invite to label.ip.address=IP Address +label.ipaddress=IP Address label.ip.allocations=IP Allocations +label.ip=IP label.ip.limits=Public IP Limits label.ip.or.fqdn=IP or FQDN label.ip.range=IP Range -label.ip=IP +label.ip.ranges=IP Ranges +label.IPsec.preshared.key=IPsec Preshared-Key label.ips=IPs -label.is.default=Is Default -label.is.shared=Is Shared -label.is.system=Is System label.iscsi=iSCSI +label.is.default=Is Default label.iso.boot=ISO Boot label.iso=ISO +label.isolated.networks=Isolated networks +label.isolation.method=Isolation method label.isolation.mode=Isolation Mode +label.isolation.uri=Isolation URI +label.is.redundant.router=Redundant +label.is.shared=Is Shared +label.is.system=Is System +label.item.listing=Item listing label.keep=Keep +label.keyboard.type=Keyboard type +label.key=Key +label.kvm.traffic.label=KVM traffic label +label.label=Label +label.lang.brportugese=Brazilian Portugese label.lang.chinese=Chinese (Simplified) label.lang.english=English +label.lang.french=French label.lang.japanese=Japanese -label.lang.spanish=Spanish label.lang.korean=Korean label.lang.russian=Russian -label.lang.french=French -label.lang.brportugese=Brazilian Portugese +label.lang.spanish=Spanish label.last.disconnected=Last Disconnected label.last.name=Last Name +label.latest.events=Latest events +label.launch=Launch +label.launch.vm=Launch VM +label.launch.zone=Launch zone +label.LB.isolation=LB isolation +label.least.connections=Least connections label.level=Level label.linklocal.ip=Link Local IP Adddress label.load.balancer=Load Balancer +label.load.balancing=Load Balancing +label.load.balancing.policies=Load balancing policies label.loading=Loading label.local=Local +label.local.storage.enabled=Local storage enabled label.local.storage.enabled=Local Storage Enabled +label.local.storage=Local Storage label.login=Login label.logout=Logout label.lun=LUN +label.LUN.number=LUN # +label.make.project.owner=Make account project owner label.manage=Manage +label.management.ips=Management IP Addresses +label.management=Management +label.manage.resources=Manage Resources +label.max.cpus=Max. CPU cores +label.max.guest.limit=Max guest limit label.maximum=Maximum +label.max.memory=Max. memory (MiB) +label.max.networks=Max. networks +label.max.primary.storage=Max. primary (GiB) +label.max.public.ips=Max. public IPs +label.max.secondary.storage=Max. secondary (GiB) +label.max.snapshots=Max. snapshots +label.max.templates=Max. templates +label.max.vms=Max. user VMs +label.max.volumes=Max. volumes +label.max.vpcs=Max. VPCs +label.may.continue=You may now continue. label.memory.allocated=Memory Allocated +label.memory.limits=Memory limits (MiB) +label.memory.mb=Memory (in MB) +label.memory=Memory label.memory.total=Memory Total label.memory.used=Memory Used -label.memory=Memory label.menu.accounts=Accounts label.menu.alerts=Alerts label.menu.all.accounts=All Accounts @@ -1197,6 +693,7 @@ label.menu.events=Events label.menu.featured.isos=Featured ISOs label.menu.featured.templates=Featured Templates label.menu.global.settings=Global Settings +label.menu.infrastructure=Infrastructure label.menu.instances=Instances label.menu.ipaddresses=IP Addresses label.menu.isos=ISOs @@ -1204,65 +701,112 @@ label.menu.my.accounts=My Accounts label.menu.my.instances=My Instances label.menu.my.isos=My ISOs label.menu.my.templates=My Templates -label.menu.network.offerings=Network Offerings label.menu.network=Network +label.menu.network.offerings=Network Offerings label.menu.physical.resources=Physical Resources +label.menu.regions=Regions label.menu.running.instances=Running Instances label.menu.security.groups=Security Groups label.menu.service.offerings=Service Offerings label.menu.snapshots=Snapshots label.menu.stopped.instances=Stopped Instances label.menu.storage=Storage -label.menu.system.vms=System VMs +label.menu.system.service.offerings=System Offerings label.menu.system=System +label.menu.system.vms=System VMs label.menu.templates=Templates label.menu.virtual.appliances=Virtual Appliances label.menu.virtual.resources=Virtual Resources label.menu.volumes=Volumes +label.migrate.instance.to.host=Migrate instance to another host label.migrate.instance.to=Migrate instance to +label.migrate.instance.to.ps=Migrate instance to another primary storage +label.migrate.router.to=Migrate Router to +label.migrate.systemvm.to=Migrate System VM to +label.migrate.to.host=Migrate to host +label.migrate.to.storage=Migrate to storage +label.migrate.volume=Migrate volume to another primary storage label.minimum=Minimum label.minute.past.hour=minute(s) Past the Hour label.monday=Monday label.monthly=Monthly label.more.templates=More Templates +label.move.down.row=Move down one row +label.move.to.bottom=Move to bottom +label.move.to.top=Move to top +label.move.up.row=Move up one row label.my.account=My Account -label.name.optional=Name (Optional) +label.my.network=My network +label.my.templates=My templates label.name=Name +label.name.optional=Name (Optional) +label.nat.port.range=NAT Port Range label.netmask=Netmask +label.netScaler=NetScaler +label.network.ACL=Network ACL +label.network.ACLs=Network ACLs +label.network.ACL.total=Network ACL Total label.network.desc=Network Desc +label.network.device=Network Device +label.network.device.type=Network Device Type label.network.domain=Network Domain +label.network.domain.text=Network domain label.network.id=Network ID +label.networking.and.security=Networking and security +label.network.label.display.for.blank.value=Use default gateway label.network.name=Network Name +label.network=Network label.network.offering.display.text=Network Offering Display Text label.network.offering.id=Network Offering ID label.network.offering.name=Network Offering Name label.network.offering=Network Offering -label.network.rate=Network Rate label.network.rate.megabytes=Network Rate (Mb/s) +label.network.rate=Network Rate label.network.read=Network Read +label.network.service.providers=Network Service Providers +label.networks=Networks label.network.type=Network Type label.network.write=Network Write -label.network=Network +label.new=New label.new.password=New Password +label.new.project=New Project +label.new.vm=New VM label.next=Next +label.nexusVswitch=Nexus 1000v +label.nfs=NFS label.nfs.server=NFS Server label.nfs.storage=NFS Storage -label.nfs=NFS +label.nic.adapter.type=NIC adapter type +label.nicira.controller.address=Controller Address +label.nicira.l3gatewayserviceuuid=L3 Gateway Service Uuid +label.nicira.transportzoneuuid=Transport Zone Uuid label.nics=NICs label.no.actions=No Available Actions label.no.alerts=No Recent Alerts +label.no.data=No data to show label.no.errors=No Recent Errors label.no.isos=No available ISOs label.no.items=No Available Items -label.no.security.groups=No Available Security Groups -label.no.thanks=No Thanks -label.no=No label.none=None +label.no=No +label.no.security.groups=No Available Security Groups label.not.found=Not Found +label.no.thanks=No thanks +label.no.thanks=No Thanks +label.notifications=Notifications +label.number.of.clusters=Number of Clusters +label.number.of.hosts=Number of Hosts +label.number.of.pods=Number of Pods +label.number.of.system.vms=Number of System VMs +label.number.of.virtual.routers=Number of Virtual Routers +label.number.of.zones=Number of Zones label.num.cpu.cores=# of CPU Cores label.numretries=Number of Retries +label.ocfs2=OCFS2 label.offer.ha=Offer HA +label.ok=OK label.optional=Optional +label.order=Order label.os.preference=OS Preference label.os.type=OS Type label.owned.public.ips=Owned Public IP Addresses @@ -1272,110 +816,259 @@ label.parent.domain=Parent Domain label.password.enabled=Password Enabled label.password=Password label.path=Path +label.perfect.forward.secrecy=Perfect Forward Secrecy +label.physical.network.ID=Physical network ID +label.physical.network=Physical Network +label.PING.CIFS.password=PING CIFS password +label.PING.CIFS.username=PING CIFS username +label.PING.dir=PING Directory +label.PING.storage.IP=PING storage IP +label.please.specify.netscaler.info=Please specify Netscaler info label.please.wait=Please Wait +label.plugin.details=Plugin details +label.plugins=Plugins +label.pod.name=Pod name label.pod=Pod +label.pods=Pods +label.port.forwarding.policies=Port forwarding policies label.port.forwarding=Port Forwarding label.port.range=Port Range +label.PreSetup=PreSetup +label.previous=Previous label.prev=Prev label.primary.allocated=Primary Storage Allocated label.primary.network=Primary Network +label.primary.storage.count=Primary Storage Pools +label.primary.storage.limits=Primary Storage limits (GiB) label.primary.storage=Primary Storage label.primary.used=Primary Storage Used +label.private.Gateway=Private Gateway label.private.interface=Private Interface -label.private.ip.range=Private IP Range label.private.ip=Private IP Address +label.private.ip.range=Private IP Range label.private.ips=Private IP Addresses +label.privatekey=PKCS#8 Private Key +label.private.network=Private network label.private.port=Private Port label.private.zone=Private Zone +label.project.dashboard=Project dashboard +label.project.id=Project ID +label.project.invite=Invite to project +label.project.name=Project name +label.project=Project +label.projects=Projects +label.project.view=Project View label.protocol=Protocol +label.providers=Providers label.public.interface=Public Interface label.public.ip=Public IP Address label.public.ips=Public IP Addresses +label.public.network=Public network label.public.port=Public Port -label.public.zone=Public Zone label.public=Public +label.public.traffic=Public traffic +label.public.zone=Public Zone +label.purpose=Purpose +label.Pxe.server.type=Pxe Server Type +label.quickview=Quickview +label.reboot=Reboot label.recent.errors=Recent Errors +label.redundant.router.capability=Redundant router capability +label.redundant.router=Redundant Router +label.redundant.state=Redundant state label.refresh=Refresh +label.region=Region label.related=Related +label.remind.later=Remind me later +label.remove.ACL=Remove ACL +label.remove.egress.rule=Remove egress rule label.remove.from.load.balancer=Removing instance from load balancer +label.remove.ingress.rule=Remove ingress rule +label.remove.ip.range=Remove IP range +label.remove.pf=Remove port forwarding rule +label.remove.project.account=Remove account from project +label.remove.project.account=Remove project account +label.remove.region=Remove Region +label.remove.rule=Remove rule +label.remove.static.nat.rule=Remove static NAT rule +label.remove.static.route=Remove static route +label.remove.tier=Remove tier +label.remove.vm.from.lb=Remove VM from load balancer rule +label.remove.vpc=remove VPC +label.removing=Removing label.removing.user=Removing User label.required=Required +label.reserved.system.gateway=Reserved system gateway label.reserved.system.ip=Reserved System IP +label.reserved.system.netmask=Reserved system netmask +label.reset.VPN.connection=Reset VPN connection +label.resize.new.offering.id=New Offering +label.resize.new.size=New Size(GB) +label.resize.shrink.ok=Shrink OK label.resource.limits=Resource Limits label.resource=Resource label.resources=Resources +label.resource.state=Resource state +label.restart.network=Restart network +label.restart.required=Restart required +label.restart.vpc=restart VPC +label.restore=Restore +label.review=Review +label.revoke.project.invite=Revoke invitation label.role=Role +label.root.disk.controller=Root disk controller label.root.disk.offering=Root Disk Offering +label.round.robin=Round-robin +label.rules=Rules label.running.vms=Running VMs +label.s3.access_key=Access Key +label.s3.bucket=Bucket +label.s3.connection_timeout=Connection Timeout +label.s3.endpoint=Endpoint +label.s3.max_error_retry=Max Error Retry +label.s3.secret_key=Secret Key +label.s3.socket_timeout=Socket Timeout +label.s3.use_https=Use HTTPS label.saturday=Saturday +label.save.and.continue=Save and continue label.save=Save label.saving.processing=Saving.... label.scope=Scope label.search=Search +label.secondary.storage.count=Secondary Storage Pools +label.secondary.storage.limits=Secondary Storage limits (GiB) label.secondary.storage=Secondary Storage +label.secondary.storage.vm=Secondary storage VM label.secondary.used=Secondary Storage Used label.secret.key=Secret Key label.security.group.name=Security Group Name label.security.group=Security Group label.security.groups.enabled=Security Groups Enabled label.security.groups=Security Groups +label.select.a.template=Select a template +label.select.a.zone=Select a zone +label.select.instance=Select instance +label.select.instance.to.attach.volume.to=Select instance to attach volume to +label.select.iso.or.template=Select ISO or template +label.select.offering=Select offering +label.select.project=Select Project +label.select=Select +label.select.tier=Select Tier +label.select-view=Select view +label.select.vm.for.static.nat=Select VM for static NAT label.sent=Sent label.server=Server +label.service.capabilities=Service Capabilities label.service.offering=Service Offering -label.system.service.offering=System Service Offering label.session.expired=Session Expired +label.setup.network=Setup Network +label.setup=Setup +label.setup.zone=Setup Zone +label.set.up.zone.type=Set up zone type +label.SharedMountPoint=SharedMountPoint label.shared=Shared +label.show.ingress.rule=Show Ingress Rule +label.shutdown.provider=Shutdown provider +label.site.to.site.VPN=Site-to-site VPN label.size=Size +label.skip.guide=I have used CloudStack before, skip this guide label.snapshot.limits=Snapshot Limits label.snapshot.name=Snapshot Name -label.snapshot.s=Snapshot (s) label.snapshot.schedule=Setup Recurring Snapshot label.snapshot=Snapshot +label.snapshot.s=Snapshot (s) label.snapshots=Snapshots label.source.nat=Source NAT +label.source=Source +label.specify.IP.ranges=Specify IP ranges label.specify.vlan=Specify VLAN +label.SR.name = SR Name-Label +label.srx=SRX +label.start.IP=Start IP label.start.port=Start Port +label.start.reserved.system.IP=Start Reserved system IP +label.start.vlan=Start Vlan label.state=State -label.static.nat.to=Static NAT to +label.static.nat.enabled=Static NAT Enabled label.static.nat=Static NAT +label.static.nat.to=Static NAT to +label.static.nat.vm.details=Static NAT VM Details label.statistics=Statistics label.status=Status -label.step.1.title=Step 1: Select a Template label.step.1=Step 1 -label.step.2.title=Step 2: Service Offering +label.step.1.title=Step 1: Select a Template label.step.2=Step 2 -label.step.3.title=Step 3: Select a Disk Offering +label.step.2.title=Step 2: Service Offering label.step.3=Step 3 -label.step.4.title=Step 4: Network +label.step.3.title=Step 3: Select a Disk Offering label.step.4=Step 4 -label.step.5.title=Step 5: Review +label.step.4.title=Step 4: Network label.step.5=Step 5 +label.step.5.title=Step 5: Review +label.stickiness=Stickiness +label.sticky.cookie-name=Cookie name +label.sticky.domain=Domain +label.sticky.expire=Expires +label.sticky.holdtime=Hold time +label.sticky.indirect=Indirect +label.sticky.length=Length +label.sticky.mode=Mode +label.sticky.nocache=No cache +label.sticky.postonly=Post only +label.sticky.prefix=Prefix +label.sticky.request-learn=Request learn +label.sticky.tablesize=Table size label.stopped.vms=Stopped VMs -label.storage.type=Storage Type +label.stop=Stop label.storage=Storage +label.storage.tags=Storage Tags +label.storage.traffic=Storage Traffic +label.storage.type=Storage Type +label.subdomain.access=Subdomain Access label.submit=Submit label.submitted.by=[Submitted by: ] label.succeeded=Succeeded label.sunday=Sunday +label.super.cidr.for.guest.networks=Super CIDR for Guest Networks +label.supported.services=Supported Services +label.supported.source.NAT.type=Supported Source NAT type +label.suspend.project=Suspend Project label.system.capacity=System Capacity -label.system.vm.type=System VM Type -label.system.vm=System VM +label.system.offering=System Offering +label.system.service.offering=System Service Offering label.system.vms=System VMs +label.system.vm=System VM +label.system.vm.type=System VM Type +label.system.wide.capacity=System-wide capacity label.tagged=Tagged label.tags=Tags label.target.iqn=Target IQN +label.task.completed=Task completed label.template.limits=Template Limits label.template=Template +label.TFTP.dir=TFTP Directory label.theme.default=Default Theme label.theme.grey=Custom - Grey label.theme.lightblue=Custom - Light Blue label.thursday=Thursday -label.time.zone=Timezone -label.time=Time +label.tier.details=Tier details +label.tier=Tier label.timeout.in.second = Timeout(seconds) +label.timeout=Timeout +label.time=Time +label.time.zone=Timezone label.timezone=Timezone +label.token=Token label.total.cpu=Total CPU +label.total.CPU=Total CPU +label.total.hosts=Total Hosts +label.total.memory=Total Memory +label.total.of.ip=Total of IP Address +label.total.of.vm=Total of VM +label.total.storage=Total Storage label.total.vms=Total VMs +label.traffic.label=Traffic label +label.traffic.types=Traffic Types label.traffic.type=Traffic Type label.tuesday=Tuesday label.type.id=Type ID @@ -1383,39 +1076,77 @@ label.type=Type label.unavailable=Unavailable label.unlimited=Unlimited label.untagged=Untagged +label.update.project.resources=Update project resources label.update.ssl.cert= SSL Certificate label.update.ssl= SSL Certificate label.updating=Updating +label.upload=Upload +label.upload.volume=Upload volume label.url=URL label.usage.interface=Usage Interface label.used=Used -label.user=User label.username=Username label.users=Users +label.user=User +label.use.vm.ip=Use VM IP: label.value=Value +label.vcdcname=vCenter DC name label.vcenter.cluster=vCenter Cluster label.vcenter.datacenter=vCenter Datacenter label.vcenter.datastore=vCenter Datastore label.vcenter.host=vCenter Host label.vcenter.password=vCenter Password label.vcenter.username=vCenter Username +label.vcipaddress=vCenter IP Address label.version=Version -label.virtual.appliance=Virtual Appliance +label.view.all=View all +label.view.console=View console +label.viewing=Viewing +label.view.more=View more +label.view=View label.virtual.appliances=Virtual Appliances +label.virtual.appliance=Virtual Appliance +label.virtual.machines=Virtual machines label.virtual.network=Virtual Network +label.virtual.routers=Virtual Routers +label.virtual.router=Virtual Router label.vlan.id=VLAN ID label.vlan.range=VLAN Range +label.vlan=VLAN label.vm.add=Add Instance label.vm.destroy=Destroy -label.vm.reboot=Reboot -label.vm.start=Start -label.vm.stop=Stop +label.vm.display.name=VM display name +label.VMFS.datastore=VMFS datastore label.vmfs=VMFS +label.vm.name=VM name +label.vm.reboot=Reboot +label.VMs.in.tier=VMs in tier +label.vmsnapshot.current=isCurrent +label.vmsnapshot.memory=Snapshot memory +label.vmsnapshot.parentname=Parent +label.vmsnapshot.type=Type +label.vmsnapshot=VM Snapshots +label.vm.start=Start +label.vm.state=VM state +label.vm.stop=Stop label.vms=VMs +label.vmware.traffic.label=VMware traffic label +label.volgroup=Volume Group label.volume.limits=Volume Limits label.volume.name=Volume Name -label.volume=Volume label.volumes=Volumes +label.volume=Volume +label.vpc.id=VPC ID +label.VPC.router.details=VPC router details +label.vpc=VPC +label.VPN.connection=VPN Connection +label.vpn.customer.gateway=VPN Customer Gateway +label.VPN.customer.gateway=VPN Customer Gateway +label.VPN.gateway=VPN Gateway +label.vpn=VPN +label.vsmctrlvlanid=Control VLAN ID +label.vsmpktvlanid=Packet VLAN ID +label.vsmstoragevlanid=Storage VLAN ID label.vsphere.managed=vSphere Managed label.waiting=Waiting label.warn=Warn @@ -1423,130 +1154,297 @@ label.wednesday=Wednesday label.weekly=Weekly label.welcome.cloud.console=Welcome to Management Console label.welcome=Welcome +label.what.is.cloudstack=What is CloudStack™? +label.xen.traffic.label=XenServer traffic label label.yes=Yes +label.zone.details=Zone details label.zone.id=Zone ID +label.zone.name=Zone name label.zone.step.1.title=Step 1: Select a Network label.zone.step.2.title=Step 2: Add a Zone label.zone.step.3.title=Step 3: Add a Pod label.zone.step.4.title=Step 4: Add an IP range +label.zones=Zones +label.zone.type=Zone Type label.zone.wide=Zone-Wide +label.zoneWizard.trafficType.guest=Guest: Traffic between end-user virtual machines +label.zoneWizard.trafficType.management=Management: Traffic between CloudStack\'s internal resources, including any components that communicate with the Management Server, such as hosts and CloudStack system VMs +label.zoneWizard.trafficType.public=Public: Traffic between the internet and virtual machines in the cloud. +label.zoneWizard.trafficType.storage=Storage: Traffic between primary and secondary storage servers, such as VM templates and snapshots label.zone=Zone - -#VM snapshot label -label.vmsnapshot=VM Snapshots -label.vmsnapshot.type=Type -label.vmsnapshot.parentname=Parent -label.vmsnapshot.current=isCurrent -label.vmsnapshot.memory=Snapshot memory -message.action.vmsnapshot.delete=Please confirm that you want to delete this VM snapshot. -label.action.vmsnapshot.delete=Delete VM snapshot -label.action.vmsnapshot.revert=Revert to VM snapshot -message.action.vmsnapshot.revert=Revert VM snapshot -label.action.vmsnapshot.create=Take VM Snapshot - - - -#Messages +managed.state=Managed State +message.acquire.new.ip=Please confirm that you would like to acquire a new IP for this network. +message.acquire.new.ip.vpc=Please confirm that you would like to acquire a new IP for this VPC. message.acquire.public.ip=Please select a zone from which you want to acquire your new IP from. message.action.cancel.maintenance.mode=Please confirm that you want to cancel this maintenance. message.action.cancel.maintenance=Your host has been successfully canceled for maintenance. This process can take up to several minutes. -message.action.delete.ISO.for.all.zones=The ISO is used by all zones. Please confirm that you want to delete it from all zones. -message.action.delete.ISO=Please confirm that you want to delete this ISO. +message.action.change.service.warning.for.instance=Your instance must be stopped before attempting to change its current service offering. +message.action.change.service.warning.for.router=Your router must be stopped before attempting to change its current service offering. message.action.delete.cluster=Please confirm that you want to delete this cluster. message.action.delete.disk.offering=Please confirm that you want to delete this disk offering. message.action.delete.domain=Please confirm that you want to delete this domain. message.action.delete.external.firewall=Please confirm that you would like to remove this external firewall. Warning: If you are planning to add back the same external firewall, you must reset usage data on the device. message.action.delete.external.load.balancer=Please confirm that you would like to remove this external load balancer. Warning: If you are planning to add back the same external load balancer, you must reset usage data on the device. message.action.delete.ingress.rule=Please confirm that you want to delete this ingress rule. +message.action.delete.ISO.for.all.zones=The ISO is used by all zones. Please confirm that you want to delete it from all zones. +message.action.delete.ISO=Please confirm that you want to delete this ISO. message.action.delete.network=Please confirm that you want to delete this network. +message.action.delete.nexusVswitch=Please confirm that you want to delete this nexus 1000v +message.action.delete.physical.network=Please confirm that you want to delete this physical network message.action.delete.pod=Please confirm that you want to delete this pod. message.action.delete.primary.storage=Please confirm that you want to delete this primary storage. message.action.delete.secondary.storage=Please confirm that you want to delete this secondary storage. message.action.delete.security.group=Please confirm that you want to delete this security group. message.action.delete.service.offering=Please confirm that you want to delete this service offering. message.action.delete.snapshot=Please confirm that you want to delete this snapshot. +message.action.delete.system.service.offering=Please confirm that you want to delete this system service offering. message.action.delete.template.for.all.zones=The template is used by all zones. Please confirm that you want to delete it from all zones. message.action.delete.template=Please confirm that you want to delete this template. message.action.delete.volume=Please confirm that you want to delete this volume. message.action.delete.zone=Please confirm that you want to delete this zone. message.action.destroy.instance=Please confirm that you want to destroy this instance. message.action.destroy.systemvm=Please confirm that you want to destroy this System VM. +message.action.disable.cluster=Please confirm that you want to disable this cluster. +message.action.disable.nexusVswitch=Please confirm that you want to disable this nexus 1000v +message.action.disable.physical.network=Please confirm that you want to disable this physical network. +message.action.disable.pod=Please confirm that you want to disable this pod. message.action.disable.static.NAT=Please confirm that you want to disable static NAT. +message.action.disable.zone=Please confirm that you want to disable this zone. +message.action.download.iso=Please confirm that you want to download this ISO. +message.action.download.template=Please confirm that you want to download this template. +message.action.enable.cluster=Please confirm that you want to enable this cluster. message.action.enable.maintenance=Your host has been successfully prepared for maintenance. This process can take up to several minutes or longer depending on how many VMs are currently on this host. +message.action.enable.nexusVswitch=Please confirm that you want to enable this nexus 1000v +message.action.enable.physical.network=Please confirm that you want to enable this physical network. +message.action.enable.pod=Please confirm that you want to enable this pod. +message.action.enable.zone=Please confirm that you want to enable this zone. message.action.force.reconnect=Your host has been successfully forced to reconnect. This process can take up to several minutes. message.action.host.enable.maintenance.mode=Enabling maintenance mode will cause a live migration of all running instances on this host to any available host. message.action.instance.reset.password=Please confirm that you want to change the ROOT password for this virtual machine. +message.action.manage.cluster=Please confirm that you want to manage the cluster. message.action.primarystorage.enable.maintenance.mode=Warning: placing the primary storage into maintenance mode will cause all VMs using volumes from it to be stopped. Do you want to continue? message.action.reboot.instance=Please confirm that you want to reboot this instance. +message.action.reboot.router=All services provided by this virtual router will be interrupted. Please confirm that you want to reboot this router. message.action.reboot.systemvm=Please confirm that you want to reboot this system VM. message.action.release.ip=Please confirm that you want to release this IP. +message.action.remove.host=Please confirm that you want to remove this host. message.action.remove.host=Removing last/only host in cluster and reinstalling the host will destroy working environment/database on the host and render the VM Guests unuseable. +message.action.reset.password.off=Your instance currently does not support this feature. +message.action.reset.password.warning=Your instance must be stopped before attempting to change its current password. message.action.restore.instance=Please confirm that you want to restore this instance. message.action.start.instance=Please confirm that you want to start this instance. message.action.start.router=Please confirm that you want to start this router. message.action.start.systemvm=Please confirm that you want to start this system VM. message.action.stop.instance=Please confirm that you want to stop this instance. +message.action.stop.router=All services provided by this virtual router will be interrupted. Please confirm that you want to stop this router. message.action.stop.systemvm=Please confirm that you want to stop this system VM. message.action.take.snapshot=Please confirm that you want to take a snapshot of this volume. -message.add.cluster.zone=Add a hypervisor managed cluster for zone +message.action.unmanage.cluster=Please confirm that you want to unmanage the cluster. +message.action.vmsnapshot.delete=Please confirm that you want to delete this VM snapshot. +message.action.vmsnapshot.revert=Revert VM snapshot +message.activate.project=Are you sure you want to activate this project? message.add.cluster=Add a hypervisor managed cluster for zone , pod +message.add.cluster.zone=Add a hypervisor managed cluster for zone message.add.disk.offering=Please specify the following parameters to add a new disk offering +message.add.domain=Please specify the subdomain you want to create under this domain message.add.firewall=Add a firewall to zone +message.add.guest.network=Please confirm that you would like to add a guest network message.add.host=Please specify the following parameters to add a new host +message.adding.host=Adding host +message.adding.Netscaler.device=Adding Netscaler device +message.adding.Netscaler.provider=Adding Netscaler provider +message.add.ip.range=Add an IP range to public network in zone message.add.ip.range.direct.network=Add an IP range to direct network in zone message.add.ip.range.to.pod=

Add an IP range to pod:

-message.add.ip.range=Add an IP range to public network in zone +message.additional.networks.desc=Please select additional network(s) that your virtual instance will be connected to. message.add.load.balancer=Add a load balancer to zone +message.add.load.balancer.under.ip=The load balancer rule has been added under IP: message.add.network=Add a new network for zone: +message.add.new.gateway.to.vpc=Please specify the information to add a new gateway to this VPC. message.add.pod=Add a new pod for zone -message.add.primary.storage=Add a new Primary Storage for zone , pod +message.add.pod.during.zone.creation=Each zone must contain in one or more pods, and we will add the first pod now. A pod contains hosts and primary storage servers, which you will add in a later step. First, configure a range of reserved IP addresses for CloudStack's internal management traffic. The reserved IP range must be unique for each zone in the cloud. message.add.primary=Please specify the following parameters to add a new primary storage +message.add.primary.storage=Add a new Primary Storage for zone , pod +message.add.region=Please specify the required information to add a new region. message.add.secondary.storage=Add a new storage for zone message.add.service.offering=Please fill in the following data to add a new compute offering. +message.add.system.service.offering=Please fill in the following data to add a new system service offering. message.add.template=Please enter the following data to create your new template message.add.volume=Please fill in the following data to add a new volume. -message.additional.networks.desc=Please select additional network(s) that your virtual instance will be connected to. +message.add.VPN.gateway=Please confirm that you want to add a VPN Gateway message.advanced.mode.desc=Choose this network model if you wish to enable VLAN support. This network model provides the most flexibility in allowing administrators to provide custom network offerings such as providing firewall, vpn, or load balancer support as well as enabling direct vs virtual networking. message.advanced.security.group=Choose this if you wish to use security groups to provide guest VM isolation. message.advanced.virtual=Choose this if you wish to use zone-wide VLANs to provide guest VM isolation. +message.after.enable.s3=S3-backed Secondary Storage configured. Note: When you leave this page, you will not be able to re-configure S3 again. +message.after.enable.swift=Swift configured. Note: When you leave this page, you will not be able to re-configure Swift again. +message.alert.state.detected=Alert state detected message.allow.vpn.access=Please enter a username and password of the user that you want to allow VPN access. +message.apply.snapshot.policy=You have successfully updated your current snapshot policy. message.attach.iso.confirm=Please confirm that you want to attach the ISO to this virtual instance. message.attach.volume=Please fill in the following data to attach a new volume. If you are attaching a disk volume to a Windows based virtual machine, you will need to reboot the instance to see the attached disk. message.basic.mode.desc=Choose this network model if you do *not* want to enable any VLAN support. All virtual instances created under this network model will be assigned an IP directly from the network and security groups are used to provide security and segregation. message.change.offering.confirm=Please confirm that you wish to change the service offering of this virtual instance. +message.change.password=Please change your password. +message.configure.all.traffic.types=You have multiple physical networks; please configure labels for each traffic type by clicking on the Edit button. +message.configuring.guest.traffic=Configuring guest traffic +message.configuring.physical.networks=Configuring physical networks +message.configuring.public.traffic=Configuring public traffic +message.configuring.storage.traffic=Configuring storage traffic +message.confirm.action.force.reconnect=Please confirm that you want to force reconnect this host. +message.confirm.delete.F5=Please confirm that you would like to delete F5 +message.confirm.delete.NetScaler=Please confirm that you would like to delete NetScaler +message.confirm.delete.SRX=Please confirm that you would like to delete SRX +message.confirm.destroy.router=Please confirm that you would like to destroy this router +message.confirm.disable.provider=Please confirm that you would like to disable this provider +message.confirm.enable.provider=Please confirm that you would like to enable this provider +message.confirm.join.project=Please confirm you wish to join this project. +message.confirm.remove.IP.range=Please confirm that you would like to remove this IP range. +message.confirm.shutdown.provider=Please confirm that you would like to shutdown this provider message.copy.iso.confirm=Please confirm that you wish to copy your ISO to message.copy.template=Copy template XXX from zone to +message.create.template=Are you sure you want to create template? message.create.template.vm=Create VM from template message.create.template.volume=Please specify the following information before creating a template of your disk volume: . Creation of the template can range from several minutes to longer depending on the size of the volume. +message.creating.cluster=Creating cluster +message.creating.guest.network=Creating guest network +message.creating.physical.networks=Creating physical networks +message.creating.pod=Creating pod +message.creating.primary.storage=Creating primary storage +message.creating.secondary.storage=Creating secondary storage +message.creating.zone=Creating zone +message.decline.invitation=Are you sure you want to decline this project invitation? message.delete.account=Please confirm that you want to delete this account. +message.delete.gateway=Please confirm you want to delete the gateway +message.delete.project=Are you sure you want to delete this project? +message.delete.user=Please confirm that you would like to delete this user. +message.delete.VPN.connection=Please confirm that you want to delete VPN connection +message.delete.VPN.customer.gateway=Please confirm that you want to delete this VPN Customer Gateway +message.delete.VPN.gateway=Please confirm that you want to delete this VPN Gateway +message.desc.advanced.zone=For more sophisticated network topologies. This network model provides the most flexibility in defining guest networks and providing custom network offerings such as firewall, VPN, or load balancer support. +message.desc.basic.zone=Provide a single network where each VM instance is assigned an IP directly from the network. Guest isolation can be provided through layer-3 means such as security groups (IP address source filtering). +message.desc.cluster=Each pod must contain one or more clusters, and we will add the first cluster now. A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Each cluster consists of one or more hosts and one or more primary storage servers. +message.desc.host=Each cluster must contain at least one host (computer) for guest VMs to run on, and we will add the first host now. For a host to function in CloudStack, you must install hypervisor software on the host, assign an IP address to the host, and ensure the host is connected to the CloudStack management server.

Give the host's DNS or IP address, the user name (usually root) and password, and any labels you use to categorize hosts. +message.desc.primary.storage=Each cluster must contain one or more primary storage servers, and we will add the first one now. Primary storage contains the disk volumes for all the VMs running on hosts in the cluster. Use any standards-compliant protocol that is supported by the underlying hypervisor. +message.desc.secondary.storage=Each zone must have at least one NFS or secondary storage server, and we will add the first one now. Secondary storage stores VM templates, ISO images, and VM disk volume snapshots. This server must be available to all hosts in the zone.

Provide the IP address and exported path. +message.desc.zone=A zone is the largest organizational unit in CloudStack, and it typically corresponds to a single datacenter. Zones provide physical isolation and redundancy. A zone consists of one or more pods (each of which contains hosts and primary storage servers) and a secondary storage server which is shared by all pods in the zone. +message.detach.disk=Are you sure you want to detach this disk? message.detach.iso.confirm=Please confirm that you want to detach the ISO from this virtual instance. message.disable.account=Please confirm that you want to disable this account. By disabling the account, all users for this account will no longer have access to their cloud resources. All running virtual machines will be immediately shut down. +message.disable.snapshot.policy=You have successfully disabled your current snapshot policy. +message.disable.user=Please confirm that you would like to disable this user. message.disable.vpn.access=Please confirm that you want to disable VPN Access. +message.disable.vpn=Are you sure you want to disable VPN? message.download.ISO=Please click
00000 to download ISO message.download.template=Please click 00000 to download template +message.download.volume.confirm=Please confirm that you want to download this volume message.download.volume=Please click 00000 to download volume +message.edit.account=Edit ("-1" indicates no limit to the amount of resources create) message.edit.confirm=Please confirm that your changes before clicking "Save". message.edit.limits=Please specify limits to the following resources. A "-1" indicates no limit to the amount of resources create. +message.edit.traffic.type=Please specify the traffic label you want associated with this traffic type. message.enable.account=Please confirm that you want to enable this account. -message.enable.vpn.access=VPN is currently disabled for this IP Address. Would you like to enable VPN access? message.enabled.vpn.ip.sec=Your IPSec pre-shared key is message.enabled.vpn=Your VPN access is currently enabled and can be accessed via the IP +message.enable.user=Please confirm that you would like to enable this user. +message.enable.vpn.access=VPN is currently disabled for this IP Address. Would you like to enable VPN access? +message.enable.vpn=Please confirm that you want VPN access enabled for this IP address. +message.enabling.security.group.provider=Enabling Security Group provider +message.enabling.zone=Enabling zone +message.enter.token=Please enter the token that you were given in your invite e-mail. +message.generate.keys=Please confirm that you would like to generate new keys for this user. +message.guest.traffic.in.advanced.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of VLAN IDs to carry guest traffic for each physical network. +message.guest.traffic.in.basic.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of IP addresses that CloudStack can assign to guest VMs. Make sure this range does not overlap the reserved system IP range. +message.installWizard.click.retry=Click the button to retry launch. +message.installWizard.copy.whatIsACluster=A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Virtual machine instances (VMs) can be live-migrated from one host to another within the same cluster, without interrupting service to the user. A cluster is the third-largest organizational unit within a CloudStack™ deployment. Clusters are contained within pods, and pods are contained within zones.

CloudStack™ allows multiple clusters in a cloud deployment, but for a Basic Installation, we only need one cluster. +message.installWizard.copy.whatIsAHost=A host is a single computer. Hosts provide the computing resources that run the guest virtual machines. Each host has hypervisor software installed on it to manage the guest VMs (except for bare metal hosts, which are a special case discussed in the Advanced Installation Guide). For example, a Linux KVM-enabled server, a Citrix XenServer server, and an ESXi server are hosts. In a Basic Installation, we use a single host running XenServer or KVM.

The host is the smallest organizational unit within a CloudStack™ deployment. Hosts are contained within clusters, clusters are contained within pods, and pods are contained within zones. +message.installWizard.copy.whatIsAPod=A pod often represents a single rack. Hosts in the same pod are in the same subnet.

A pod is the second-largest organizational unit within a CloudStack™ deployment. Pods are contained within zones. Each zone can contain one or more pods; in the Basic Installation, you will have just one pod in your zone. +message.installWizard.copy.whatIsAZone=A zone is the largest organizational unit within a CloudStack™ deployment. A zone typically corresponds to a single datacenter, although it is permissible to have multiple zones in a datacenter. The benefit of organizing infrastructure into zones is to provide physical isolation and redundancy. For example, each zone can have its own power supply and network uplink, and the zones can be widely separated geographically (though this is not required). +message.installWizard.copy.whatIsCloudStack=CloudStack™ is a software platform that pools computing resources to build public, private, and hybrid Infrastructure as a Service (IaaS) clouds. CloudStack™ manages the network, storage, and compute nodes that make up a cloud infrastructure. Use CloudStack™ to deploy, manage, and configure cloud computing environments.

Extending beyond individual virtual machine images running on commodity hardware, CloudStack™ provides a turnkey cloud infrastructure software stack for delivering virtual datacenters as a service - delivering all of the essential components to build, deploy, and manage multi-tier and multi-tenant cloud applications. Both open-source and Premium versions are available, with the open-source version offering nearly identical features. +message.installWizard.copy.whatIsPrimaryStorage=A CloudStack™ cloud infrastructure makes use of two types of storage: primary storage and secondary storage. Both of these can be iSCSI or NFS servers, or localdisk.

Primary storage is associated with a cluster, and it stores the disk volumes of each guest VM for all the VMs running on hosts in that cluster. The primary storage server is typically located close to the hosts. +message.installWizard.copy.whatIsSecondaryStorage=Secondary storage is associated with a zone, and it stores the following:
  • Templates - OS images that can be used to boot VMs and can include additional configuration information, such as installed applications
  • ISO images - OS images that can be bootable or non-bootable
  • Disk volume snapshots - saved copies of VM data which can be used for data recovery or to create new templates
+message.installWizard.now.building=Now building your cloud... +message.installWizard.tooltip.addCluster.name=A name for the cluster. This can be text of your choosing and is not used by CloudStack. +message.installWizard.tooltip.addHost.hostname=The DNS name or IP address of the host. +message.installWizard.tooltip.addHost.password=This is the password for the user named above (from your XenServer install). +message.installWizard.tooltip.addHost.username=Usually root. +message.installWizard.tooltip.addPod.name=A name for the pod +message.installWizard.tooltip.addPod.reservedSystemEndIp=This is the IP range in the private network that the CloudStack uses to manage Secondary Storage VMs and Console Proxy VMs. These IP addresses are taken from the same subnet as computing servers. +message.installWizard.tooltip.addPod.reservedSystemGateway=The gateway for the hosts in that pod. +message.installWizard.tooltip.addPod.reservedSystemNetmask=The netmask in use on the subnet the guests will use. +message.installWizard.tooltip.addPod.reservedSystemStartIp=This is the IP range in the private network that the CloudStack uses to manage Secondary Storage VMs and Console Proxy VMs. These IP addresses are taken from the same subnet as computing servers. +message.installWizard.tooltip.addPrimaryStorage.name=The name for the storage device. +message.installWizard.tooltip.addPrimaryStorage.path=(for NFS) In NFS this is the exported path from the server. Path (for SharedMountPoint). With KVM this is the path on each host that is where this primary storage is mounted. For example, "/mnt/primary". +message.installWizard.tooltip.addPrimaryStorage.server=(for NFS, iSCSI, or PreSetup) The IP address or DNS name of the storage device. +message.installWizard.tooltip.addSecondaryStorage.nfsServer=The IP address of the NFS server hosting the secondary storage +message.installWizard.tooltip.addSecondaryStorage.path=The exported path, located on the server you specified above +message.installWizard.tooltip.addZone.dns1=These are DNS servers for use by guest VMs in the zone. These DNS servers will be accessed via the public network you will add later. The public IP addresses for the zone must have a route to the DNS server named here. +message.installWizard.tooltip.addZone.dns2=These are DNS servers for use by guest VMs in the zone. These DNS servers will be accessed via the public network you will add later. The public IP addresses for the zone must have a route to the DNS server named here. +message.installWizard.tooltip.addZone.internaldns1=These are DNS servers for use by system VMs in the zone. These DNS servers will be accessed via the private network interface of the System VMs. The private IP address you provide for the pods must have a route to the DNS server named here. +message.installWizard.tooltip.addZone.internaldns2=These are DNS servers for use by system VMs in the zone. These DNS servers will be accessed via the private network interface of the System VMs. The private IP address you provide for the pods must have a route to the DNS server named here. +message.installWizard.tooltip.addZone.name=A name for the zone +message.installWizard.tooltip.configureGuestTraffic.description=A description for your network +message.installWizard.tooltip.configureGuestTraffic.guestEndIp=The range of IP addresses that will be available for allocation to guests in this zone. If one NIC is used, these IPs should be in the same CIDR as the pod CIDR. +message.installWizard.tooltip.configureGuestTraffic.guestGateway=The gateway that the guests should use +message.installWizard.tooltip.configureGuestTraffic.guestNetmask=The netmask in use on the subnet that the guests should use +message.installWizard.tooltip.configureGuestTraffic.guestStartIp=The range of IP addresses that will be available for allocation to guests in this zone. If one NIC is used, these IPs should be in the same CIDR as the pod CIDR. +message.installWizard.tooltip.configureGuestTraffic.name=A name for your network +message.instanceWizard.noTemplates=You do not have any templates available; please add a compatible template, and re-launch the instance wizard. +message.ip.address.changed=Your IP addresses may have changed; would you like to refresh the listing? Note that in this case the details pane will close. +message.iso.desc=Disc image containing data or bootable media for OS +message.join.project=You have now joined a project. Please switch to Project view to see the project. message.launch.vm.on.private.network=Do you wish to launch your instance on your own private dedicated network? +message.launch.zone=Zone is ready to launch; please proceed to the next step. message.lock.account=Please confirm that you want to lock this account. By locking the account, all users for this account will no longer be able to manage their cloud resources. Existing resources can still be accessed. message.migrate.instance.confirm=Please confirm the host you wish to migrate the virtual instance to. +message.migrate.instance.to.host=Please confirm that you want to migrate instance to another host. +message.migrate.instance.to.ps=Please confirm that you want to migrate instance to another primary storage. +message.migrate.router.confirm=Please confirm the host you wish to migrate the router to: +message.migrate.systemvm.confirm=Please confirm the host you wish to migrate the system VM to: +message.migrate.volume=Please confirm that you want to migrate volume to another primary storage. message.new.user=Specify the following to add a new user to the account message.no.network.support.configuration.not.true=You do not have any zone that has security group enabled. Thus, no additional network features. Please continue to step 5. message.no.network.support=Your selected hypervisor, vSphere, does not have any additional network features. Please continue to step 5. +message.no.projects.adminOnly=You do not have any projects.
Please ask your administrator to create a new project. +message.no.projects=You do not have any projects.
Please create a new one from the projects section. message.number.clusters=

# of Clusters

message.number.hosts=

# of Hosts

message.number.pods=

# of Pods

message.number.storage=

# of Primary Storage Volumes

message.number.zones=

# of Zones

+message.pending.projects.1=You have pending project invitations: +message.pending.projects.2=To view, please go to the projects section, then select invitations from the drop-down. +message.please.add.at.lease.one.traffic.range=Please add at least one traffic range. +message.please.proceed=Please proceed to the next step. +message.please.select.a.configuration.for.your.zone=Please select a configuration for your zone. +message.please.select.a.different.public.and.management.network.before.removing=Please select a different public and management network before removing +message.please.select.networks=Please select networks for your virtual machine. +message.please.wait.while.zone.is.being.created=Please wait while your zone is being created; this may take a while... +message.project.invite.sent=Invite sent to user; they will be added to the project once they accept the invitation +message.public.traffic.in.advanced.zone=Public traffic is generated when VMs in the cloud access the internet. Publicly-accessible IPs must be allocated for this purpose. End users can use the CloudStack UI to acquire these IPs to implement NAT between their guest network and their public network.

Provide at least one range of IP addresses for internet traffic. +message.public.traffic.in.basic.zone=Public traffic is generated when VMs in the cloud access the Internet or provide services to clients over the Internet. Publicly accessible IPs must be allocated for this purpose. When a instance is created, an IP from this set of Public IPs will be allocated to the instance in addition to the guest IP address. Static 1-1 NAT will be set up automatically between the public IP and the guest IP. End users can also use the CloudStack UI to acquire additional IPs to implement static NAT between their instances and the public IP. +message.redirecting.region=Redirecting to region... +message.remove.region=Are you sure you want to remove this region from this management server? +message.remove.vpc=Please confirm that you want to remove the VPC message.remove.vpn.access=Please confirm that you want to remove VPN access from the following user. +message.reset.password.warning.notPasswordEnabled=The template of this instance was created without password enabled +message.reset.password.warning.notStopped=Your instance must be stopped before attempting to change its current password +message.reset.VPN.connection=Please confirm that you want to reset VPN connection message.restart.mgmt.server=Please restart your management server(s) for your new settings to take effect. message.restart.mgmt.usage.server=Please restart your management server(s) and usage server(s) for your new settings to take effect. +message.restart.network=All services provided by this network will be interrupted. Please confirm that you want to restart this network. +message.restart.vpc=Please confirm that you want to restart the VPC message.security.group.usage=(Use Ctrl-click to select all applicable security groups) +message.select.a.zone=A zone typically corresponds to a single datacenter. Multiple zones help make the cloud more reliable by providing physical isolation and redundancy. +message.select.instance=Please select an instance. +message.select.iso=Please select an ISO for your new virtual instance. +message.select.item=Please select an item. +message.select.security.groups=Please select security group(s) for your new VM +message.select.template=Please select a template for your new virtual instance. +message.setup.physical.network.during.zone.creation.basic=When adding a basic zone, you can set up one physical network, which corresponds to a NIC on the hypervisor. The network carries several types of traffic.

You may also drag and drop other traffic types onto the physical network. +message.setup.physical.network.during.zone.creation=When adding an advanced zone, you need to set up one or more physical networks. Each network corresponds to a NIC on the hypervisor. Each physical network can carry one or more types of traffic, with certain restrictions on how they may be combined.

Drag and drop one or more traffic types onto each physical network. +message.setup.successful=Cloud setup successful! message.snapshot.schedule=You can setup recurring snapshot schedules by selecting from the available options below and applying your policy preference +message.specify.url=Please specify URL message.step.1.continue=Please select a template or ISO to continue message.step.1.desc=Please select a template for your new virtual instance. You can also choose to select a blank template from which an ISO image can be installed onto. message.step.2.continue=Please select a service offering to continue @@ -1555,40 +1453,63 @@ message.step.3.continue=Please select a disk offering to continue message.step.3.desc= message.step.4.continue=Please select at least one network to continue message.step.4.desc=Please select the primary network that your virtual instance will be connected to. +message.storage.traffic=Traffic between CloudStack's internal resources, including any components that communicate with the Management Server, such as hosts and CloudStack system VMs. Please configure storage traffic here. +message.suspend.project=Are you sure you want to suspend this project? +message.template.desc=OS image that can be used to boot VMs +message.tooltip.dns.1=Name of a DNS server for use by VMs in the zone. The public IP addresses for the zone must have a route to this server. +message.tooltip.dns.2=A second DNS server name for use by VMs in the zone. The public IP addresses for the zone must have a route to this server. +message.tooltip.internal.dns.1=Name of a DNS server for use by CloudStack internal system VMs in the zone. The private IP address for the pods must have a route to this server. +message.tooltip.internal.dns.2=Name of a DNS server for use by CloudStack internal system VMs in the zone. The private IP address for the pods must have a route to this server. +message.tooltip.network.domain=A DNS suffix that will create a custom domain name for the network that is accessed by guest VMs. +message.tooltip.pod.name=A name for this pod. +message.tooltip.reserved.system.gateway=The gateway for the hosts in the pod. +message.tooltip.reserved.system.netmask=The network prefix that defines the pod subnet. Uses CIDR notation. +message.tooltip.zone.name=A name for the zone. message.update.os.preference=Please choose a OS preference for this host. All virtual instances with similar preferences will be first allocated to this host before choosing another. +message.update.resource.count=Please confirm that you want to update resource counts for this account. message.update.ssl=Please submit a new X.509 compliant SSL certificate to be updated to each console proxy virtual instance: +message.validate.instance.name=Instance name can not be longer than 63 characters. Only ASCII letters a~z, A~Z, digits 0~9, hyphen are allowed. Must start with a letter and end with a letter or a digit. message.virtual.network.desc=A dedicated virtualized network for your account. The broadcast domain is contained within a VLAN and all public network access is routed out by a virtual router. +message.vm.create.template.confirm=Create Template will reboot the VM automatically. +message.vm.review.launch=Please review the following information and confirm that your virtual instance is correct before launch. message.volume.create.template.confirm=Please confirm that you wish to create a template for this disk volume. Creation of the template can range from several minutes to longer depending on the size of the volume. +message.you.must.have.at.least.one.physical.network=You must have at least one physical network +message.zone.creation.complete.would.you.like.to.enable.this.zone=Zone creation complete. Would you like to enable this zone? +message.Zone.creation.complete=Zone creation complete +message.zone.no.network.selection=The zone you selected does not have any choices for network selection. message.zone.step.1.desc=Please select a network model for your zone. message.zone.step.2.desc=Please enter the following info to add a new zone message.zone.step.3.desc=Please enter the following info to add a new pod -message.apply.snapshot.policy=You have successfully updated your current snapshot policy. -message.disable.snapshot.policy=You have successfully disabled your current snapshot policy. -message.action.change.service.warning.for.instance=Your instance must be stopped before attempting to change its current service offering. -message.action.change.service.warning.for.router=Your router must be stopped before attempting to change its current service offering. -message.action.reset.password.warning=Your instance must be stopped before attempting to change its current password. -message.action.reset.password.off=Your instance currently does not support this feature. - -#Errors -error.login=Your username/password does not match our records. -error.menu.select=Unable to perform action due to no items being selected. -error.mgmt.server.inaccessible=The Management Server is unaccessible. Please try again later. -error.session.expired=Your session has expired. -error.unresolved.internet.name=Your internet name cannot be resolved. - -label.add.NiciraNvp.device=Add Nvp Controller -label.delete.NiciraNvp=Remove Nvp Controller -label.nicira.controller.address=Controller Address -label.nicira.transportzoneuuid=Transport Zone Uuid -label.nicira.l3gatewayserviceuuid=L3 Gateway Service Uuid - -label.add.BigSwitchVns.device=Add BigSwitch Vns Controller -label.delete.BigSwitchVns=Remove BigSwitch Vns Controller -label.bigswitch.controller.address=BigSwitch Vns Controller Address - -#resizeVolumes -label.resize.new.size=New Size(GB) -label.action.resize.volume=Resize Volume -label.action.resize.volume.processing=Resizing Volume.... -label.resize.new.offering.id=New Offering -label.resize.shrink.ok=Shrink OK +message.zoneWizard.enable.local.storage=WARNING: If you enable local storage for this zone, you must do the following, depending on where you would like your system VMs to launch:

1. If system VMs need to be launched in primary storage, primary storage needs to be added to the zone after creation. You must also start the zone in a disabled state.

2. If system VMs need to be launched in local storage, system.vm.use.local.storage needs to be set to true before you enable the zone.


Would you like to continue? +mode=Mode +network.rate=Network Rate +notification.reboot.instance=Reboot instance +notification.start.instance=Start instance +notification.stop.instance=Stop instance +side.by.side=Side by Side +state.Accepted=Accepted +state.Active=Active +state.Allocated=Allocated +state.Allocating=Allocating +state.BackedUp=Backed Up +state.BackingUp=Backing Up +state.Completed=Completed +state.Creating=Creating +state.Declined=Declined +state.Destroyed=Destroyed +state.Disabled=Disabled +state.enabled=Enabled +state.Enabled=Enabled +state.Error=Error +state.Expunging=Expunging +state.Migrating=Migrating +state.Pending=Pending +state.ready=Ready +state.Ready=Ready +state.Running=Running +state.Starting=Starting +state.Stopped=Stopped +state.Stopping=Stopping +state.Suspended=Suspended +ui.listView.filters.all=All +ui.listView.filters.mine=Mine From 612e5fb6726d1b0b9408072e4a95abfe696d2eb3 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Sat, 20 Apr 2013 18:42:18 -0700 Subject: [PATCH 346/607] LOUDSTACK-2120: mixed zone management - extend listVirtualMachines API to return zone type. --- api/src/org/apache/cloudstack/api/ApiConstants.java | 1 + .../cloudstack/api/response/UserVmResponse.java | 7 +++++++ .../com/cloud/api/query/dao/UserVmJoinDaoImpl.java | 1 + server/src/com/cloud/api/query/vo/UserVmJoinVO.java | 13 +++++++++++++ setup/db/db/schema-40to410.sql | 2 ++ setup/db/db/schema-410to420.sql | 1 + 6 files changed, 25 insertions(+) diff --git a/api/src/org/apache/cloudstack/api/ApiConstants.java b/api/src/org/apache/cloudstack/api/ApiConstants.java index d73f309c95f..e774ecc94b6 100755 --- a/api/src/org/apache/cloudstack/api/ApiConstants.java +++ b/api/src/org/apache/cloudstack/api/ApiConstants.java @@ -231,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"; diff --git a/api/src/org/apache/cloudstack/api/response/UserVmResponse.java b/api/src/org/apache/cloudstack/api/response/UserVmResponse.java index 212601ce20c..da08c94074c 100644 --- a/api/src/org/apache/cloudstack/api/response/UserVmResponse.java +++ b/api/src/org/apache/cloudstack/api/response/UserVmResponse.java @@ -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; } diff --git a/server/src/com/cloud/api/query/dao/UserVmJoinDaoImpl.java b/server/src/com/cloud/api/query/dao/UserVmJoinDaoImpl.java index 4ed62262966..2bb7ee9c520 100644 --- a/server/src/com/cloud/api/query/dao/UserVmJoinDaoImpl.java +++ b/server/src/com/cloud/api/query/dao/UserVmJoinDaoImpl.java @@ -101,6 +101,7 @@ public class UserVmJoinDaoImpl extends GenericDaoBase implem } userVmResponse.setZoneId(userVm.getDataCenterUuid()); userVmResponse.setZoneName(userVm.getDataCenterName()); + userVmResponse.setZoneType(userVm.getDataCenterType()); if ((caller == null) || (caller.getType() == Account.ACCOUNT_TYPE_ADMIN)) { userVmResponse.setInstanceName(userVm.getInstanceName()); userVmResponse.setHostId(userVm.getHostUuid()); diff --git a/server/src/com/cloud/api/query/vo/UserVmJoinVO.java b/server/src/com/cloud/api/query/vo/UserVmJoinVO.java index 8d1314eafae..a50906d9e3d 100644 --- a/server/src/com/cloud/api/query/vo/UserVmJoinVO.java +++ b/server/src/com/cloud/api/query/vo/UserVmJoinVO.java @@ -153,6 +153,9 @@ public class UserVmJoinVO extends BaseViewVO implements ControlledViewEntity { @Column(name="data_center_name") private String dataCenterName = null; + @Column(name="data_center_type") + private String dataCenterType = null; + @Column(name="security_group_enabled") private boolean securityGroupEnabled; @@ -800,8 +803,18 @@ public class UserVmJoinVO extends BaseViewVO implements ControlledViewEntity { public void setDataCenterName(String zoneName) { this.dataCenterName = zoneName; } + + + public String getDataCenterType() { + return dataCenterType; + } + public void setDataCenterType(String zoneType) { + this.dataCenterType = zoneType; + } + + public boolean isSecurityGroupEnabled() { return securityGroupEnabled; } diff --git a/setup/db/db/schema-40to410.sql b/setup/db/db/schema-40to410.sql index e2949d93e61..57d6ab96c63 100644 --- a/setup/db/db/schema-40to410.sql +++ b/setup/db/db/schema-40to410.sql @@ -487,6 +487,7 @@ CREATE VIEW `cloud`.`user_vm_view` AS data_center.id data_center_id, data_center.uuid data_center_uuid, data_center.name data_center_name, + data_center.networktype data_center_type, data_center.is_security_group_enabled security_group_enabled, host.id host_id, host.uuid host_uuid, @@ -1456,6 +1457,7 @@ CREATE VIEW `cloud`.`storage_pool_view` AS data_center.id data_center_id, data_center.uuid data_center_uuid, data_center.name data_center_name, + data_center.name data_center_type, host_pod_ref.id pod_id, host_pod_ref.uuid pod_uuid, host_pod_ref.name pod_name, diff --git a/setup/db/db/schema-410to420.sql b/setup/db/db/schema-410to420.sql index 93a685fbc3a..10cdbbad6f9 100644 --- a/setup/db/db/schema-410to420.sql +++ b/setup/db/db/schema-410to420.sql @@ -374,6 +374,7 @@ CREATE VIEW `cloud`.`user_vm_view` AS data_center.id data_center_id, data_center.uuid data_center_uuid, data_center.name data_center_name, + data_center.networktype data_center_type, data_center.is_security_group_enabled security_group_enabled, host.id host_id, host.uuid host_uuid, From 35306d42b3062133d8c0e8384edeeea8f1982cbf Mon Sep 17 00:00:00 2001 From: Milamber Date: Sun, 7 Apr 2013 17:17:02 +0000 Subject: [PATCH 347/607] Improvements for French translation for Admin Web UI (for better display or better meaning). Add some missing translations. Signed-off-by: Milamber --- .../resources/messages_fr_FR.properties | 216 +++++++++--------- 1 file changed, 113 insertions(+), 103 deletions(-) diff --git a/client/WEB-INF/classes/resources/messages_fr_FR.properties b/client/WEB-INF/classes/resources/messages_fr_FR.properties index 267baec0270..6a7cc9a9d55 100644 --- a/client/WEB-INF/classes/resources/messages_fr_FR.properties +++ b/client/WEB-INF/classes/resources/messages_fr_FR.properties @@ -128,8 +128,8 @@ label.action.delete.nexusVswitch=Supprimer le Nexus 1000v label.action.delete.physical.network=Supprimer le r\u00E9seau physique label.action.delete.pod=Supprimer le Pod label.action.delete.pod.processing=Suppression du pod... -label.action.delete.primary.storage=Supprimer le stockage primaire -label.action.delete.primary.storage.processing=Suppression du stockage primaire... +label.action.delete.primary.storage=Supprimer le stockage principal +label.action.delete.primary.storage.processing=Suppression du stockage principal... label.action.delete.secondary.storage=Supprimer le stockage secondaire label.action.delete.secondary.storage.processing=Suppression du stockage secondaire... label.action.delete.security.group=Supprimer le groupe de s\u00E9curit\u00E9 @@ -184,7 +184,7 @@ label.action.edit.network=Modifier le r\u00E9seau label.action.edit.network.offering=Modifier l\\'offre de service r\u00E9seau label.action.edit.network.processing=Modification du R\u00E9seau... label.action.edit.pod=Modifier le pod -label.action.edit.primary.storage=Modifier le stockage primaire +label.action.edit.primary.storage=Modifier le stockage principal label.action.edit.resource.limits=Modifier les limites de ressources label.action.edit.service.offering=Modifier l\\'offre de service label.action.edit.template=Modifier le mod\u00E8le @@ -236,6 +236,8 @@ label.action.remove.host=Supprimer l\\'h\u00F4te label.action.remove.host.processing=Suppression de l\\'h\u00F4te... label.action.reset.password=R\u00E9-initialiser le mot de passe label.action.reset.password.processing=R\u00E9-initialisation du mot de passe... +label.action.resize.volume=Redimensionner Volume +label.action.resize.volume.processing=Redimensionnement en cours... label.action.resource.limits=Limites de ressources label.action.restore.instance=Restaurer l\\'instance label.action.restore.instance.processing=Restauration de l\\'instance... @@ -263,7 +265,7 @@ label.actions=Actions label.activate.project=Activer projet label.active.sessions=Sessions actives label.add=Ajouter -label.add.ACL=Ajouter une r\u00E8gle ACL +label.add.ACL=Ajouter r\u00E8gle ACL label.add.F5.device=Ajouter un F5 label.add.NiciraNvp.device=Ajouter un contr\u00F4leur Nvp label.add.SRX.device=Ajouter un SRX @@ -302,10 +304,10 @@ label.add.new.tier=Ajouter un nouveau tiers label.add.physical.network=Ajouter un r\u00E9seau physique label.add.pod=Ajouter un pod label.add.port.forwarding.rule=Ajouter une r\u00E8gle de transfert de port -label.add.primary.storage=Ajouter un stockage primaire -label.add.resources=Ajouter des ressources -label.add.route=Ajouter une route -label.add.rule=Ajouter une r\u00E8gle +label.add.primary.storage=Ajouter un stockage principal +label.add.resources=Ajouter ressources +label.add.route=Ajouter route +label.add.rule=Ajouter r\u00E8gle label.add.secondary.storage=Ajouter un stockage secondaire label.add.security.group=Ajouter un groupe de s\u00E9curit\u00E9 label.add.service.offering=Ajouter une offre de service @@ -344,7 +346,7 @@ label.agree=Accepter label.alert=Alerte label.algorithm=Algorithme label.allocated=Allou\u00E9 -label.allocation.state=\u00C9tat de l\\'allocation +label.allocation.state=\u00C9tat label.api.key=Cl\u00E9 d\\'API label.apply=Appliquer label.assign=Assigner @@ -402,7 +404,7 @@ label.clvm=CLVM label.code=Code label.community=Communaut\u00E9 label.compute=Processeur -label.compute.and.storage=Processeur et Stockage +label.compute.and.storage=Calcul et Stockage label.compute.offering=Offre de calcul label.compute.offerings=Offres de calcul label.configuration=Configuration @@ -474,7 +476,7 @@ label.disk.size=Taille du disque label.disk.size.gb=Taille du disque (en Go) label.disk.total=Espace disque total label.disk.volume=Volume disque -label.display.name=Nom d\\'affichage +label.display.name=Nom commun label.display.text=Texte affich\u00E9 label.dns=DNS label.dns.1=DNS 1 @@ -508,7 +510,7 @@ label.enable.swift=Activer Swift label.enable.vpn=Activer VPN label.enabling.vpn=Activation du VPN label.enabling.vpn.access=Activation de l\\'acc\u00E8s VPN -label.end.IP=R\u00E9silier l\\'IP +label.end.IP=Fin de plage IP label.end.port=Port de fin label.end.reserved.system.IP=Adresse IP de fin r\u00E9serv\u00E9e Syst\u00E8me label.end.vlan=VLAN de fin @@ -522,7 +524,7 @@ label.f5=F5 label.failed=\u00C9chou\u00E9 label.featured=Sponsoris\u00E9 label.fetch.latest=Rafra\u00EEchir -label.filterBy=Filtrer par +label.filterBy=Filtre label.firewall=Pare-feu label.first.name=Pr\u00E9nom label.format=Format @@ -574,8 +576,8 @@ label.installWizard.addHostIntro.subtitle=Qu\\'est ce qu\\'un h\u00F4te ? label.installWizard.addHostIntro.title=Ajoutons un h\u00F4te label.installWizard.addPodIntro.subtitle=Qu\\'est ce qu\\'un pod ? label.installWizard.addPodIntro.title=Ajoutons un pod -label.installWizard.addPrimaryStorageIntro.subtitle=Qu\\'est ce que le stockage primaire ? -label.installWizard.addPrimaryStorageIntro.title=Ajoutons du stockage primaire +label.installWizard.addPrimaryStorageIntro.subtitle=Qu\\'est ce que le stockage principal ? +label.installWizard.addPrimaryStorageIntro.title=Ajoutons du stockage principal label.installWizard.addSecondaryStorageIntro.subtitle=Qu\\'est ce que le stockage secondaire ? label.installWizard.addSecondaryStorageIntro.title=Ajoutons du stockage secondaire label.installWizard.addZone.title=Ajouter une zone @@ -626,10 +628,15 @@ label.keyboard.type=Type de clavier label.kvm.traffic.label=Libell\u00E9 pour le trafic KVM label.label=Libell\u00E9 label.lang.brportugese=Portuguais Br\u00E9sil +label.lang.catalan=Catalan label.lang.chinese=Chinois (simplifi\u00E9) label.lang.english=Anglais label.lang.french=Fran\u00E7ais +label.lang.german=Allemand +label.lang.italian=Italien label.lang.japanese=Japonais +label.lang.korean=Cor\u00E9en +label.lang.norwegian=Norv\u00E9gien label.lang.russian=Russe label.lang.spanish=Espagnol label.last.disconnected=Derni\u00E8re D\u00E9connexion @@ -712,12 +719,12 @@ label.menu.virtual.resources=Ressources Virtuelles label.menu.volumes=Volumes label.migrate.instance.to=Migrer l\\'instance vers label.migrate.instance.to.host=Migration de l\\'instance sur un autre h\u00F4te -label.migrate.instance.to.ps=Migration de l\\'instance sur un autre stockage primaire +label.migrate.instance.to.ps=Migration de l\\'instance sur un autre stockage principal label.migrate.router.to=Migrer le routeur vers label.migrate.systemvm.to=Migrer la VM syst\u00E8me vers label.migrate.to.host=Migrer vers un h\u00F4te label.migrate.to.storage=Migrer vers un stockage -label.migrate.volume=Migration du volume vers un autre stockage primaire +label.migrate.volume=Migration du volume vers un autre stockage principal label.minimum=Minimum label.minute.past.hour=minute(s) label.monday=Lundi @@ -785,7 +792,7 @@ label.no.thanks=Non merci label.none=Aucun label.not.found=Introuvable label.notifications=Messages -label.num.cpu.cores=Nombre de coeurs de processeur +label.num.cpu.cores=Nombre de c\u0153urs label.number.of.clusters=Nombre de clusters label.number.of.hosts=Nombre d\\'H\u00F4tes label.number.of.pods=Nombre de Pods @@ -798,11 +805,11 @@ label.offer.ha=Offrir la haute disponibilit\u00E9 label.ok=OK label.optional=Facultatif label.order=Ordre -label.os.preference=Pr\u00E9f\u00E9rence du OS +label.os.preference=Pr\u00E9f\u00E9rence OS label.os.type=Type du OS label.owned.public.ips=Adresses IP Publiques d\u00E9tenues -label.owner.account=Propri\u00E9taire du compte -label.owner.domain=Propri\u00E9taire du domaine +label.owner.account=Propri\u00E9taire +label.owner.domain=Propri\u00E9taire label.parent.domain=Parent du Domaine label.password=Mot de passe label.password.enabled=Mot de passe activ\u00E9 @@ -820,11 +827,11 @@ label.port.forwarding.policies=R\u00E8gles de transfert de port label.port.range=Plage de ports label.prev=Pr\u00E9c\u00E9dent label.previous=Retour -label.primary.allocated=Stockage primaire allou\u00E9 -label.primary.network=R\u00E9seau primaire +label.primary.allocated=Stockage principal allou\u00E9 +label.primary.network=R\u00E9seau principal label.primary.storage=Premier stockage -label.primary.storage.count=Groupes de stockage primaire -label.primary.used=Stockage primaire utilis\u00E9 +label.primary.storage.count=Groupes de stockage principal +label.primary.used=Stockage principal utilis\u00E9 label.private.Gateway=Passerelle priv\u00E9e label.private.interface=Interface priv\u00E9e label.private.ip=Adresse IP Priv\u00E9e @@ -881,6 +888,9 @@ label.reserved.system.gateway=Passerelle r\u00E9serv\u00E9e Syst\u00E8me label.reserved.system.ip=Adresse IP Syst\u00E8me r\u00E9serv\u00E9e label.reserved.system.netmask=Masque de sous-r\u00E9seau r\u00E9serv\u00E9 Syst\u00E8me label.reset.VPN.connection=R\u00E9-initialiser la connexion VPN +label.resize.new.offering.id=Nouvelle Offre +label.resize.new.size=Nouvelle Taille (Go) +label.resize.shrink.ok=R\u00E9duction OK label.resource=Ressource label.resource.limits=Limite des ressources label.resource.state=\u00C9tat des ressources @@ -921,7 +931,7 @@ label.security.group.name=Nom du groupe de s\u00E9curit\u00E9 label.security.groups=Groupes de s\u00E9curit\u00E9 label.security.groups.enabled=Groupes de s\u00E9curit\u00E9 Activ\u00E9s label.select=S\u00E9lectionner -label.select-view=S\u00E9lectionner la vue +label.select-view=S\u00E9lectionner la vue label.select.a.template=S\u00E9lectionner un mod\u00E8le label.select.a.zone=S\u00E9lectionner une zone label.select.instance=S\u00E9lectionner une instance @@ -947,8 +957,8 @@ label.site.to.site.VPN=VPN Site-\u00E0-Site label.size=Taille label.skip.guide=J\\'ai d\u00E9j\u00E0 utilis\u00E9 CloudStack avant, passer ce tutoriel label.snapshot=Instantan\u00E9 -label.snapshot.limits=Limites d\\'instantan\u00E9 -label.snapshot.name=Nom de l\\'instantan\u00E9 +label.snapshot.limits=Limites d\\'instantan\u00E9s +label.snapshot.name=Nom Instantan\u00E9 label.snapshot.s=Instantan\u00E9(s) label.snapshot.schedule=Configurer un instantan\u00E9 r\u00E9current label.snapshots=Instantan\u00E9s @@ -957,7 +967,7 @@ label.source.nat=NAT Source label.specify.IP.ranges=Sp\u00E9cifier des plages IP label.specify.vlan=Pr\u00E9ciser le VLAN label.srx=SRX -label.start.IP=D\u00E9marrer l\\'IP +label.start.IP=Plage de d\u00E9but IP label.start.port=Port de d\u00E9but label.start.reserved.system.IP=Adresse IP de d\u00E9but r\u00E9serv\u00E9e Syst\u00E8me label.start.vlan=VLAN de d\u00E9part @@ -1086,7 +1096,7 @@ label.vlan.id=ID du VLAN label.vlan.range=Plage du VLAN label.vm.add=Ajouter une instance label.vm.destroy=D\u00E9truire -label.vm.display.name=Nom d\\'affichage de la VM +label.vm.display.name=Nom commun VM label.vm.name=Nom de la VM label.vm.reboot=Red\u00E9marrer label.vm.start=D\u00E9marrer @@ -1120,7 +1130,7 @@ label.yes=Oui label.zone=Zone label.zone.details=D\u00E9tails de la zone label.zone.id=ID de la zone -label.zone.name=Nom de la zone +label.zone.name=Nom de zone label.zone.step.1.title=\u00C9tape 1 \: S\u00E9lectionnez un r\u00E9seau label.zone.step.2.title=\u00C9tape 2 \: Ajoutez une zone label.zone.step.3.title=\u00C9tape 3 \: Ajoutez un Pod @@ -1130,7 +1140,7 @@ label.zone.wide=Transverse \u00E0 la zone label.zoneWizard.trafficType.guest=Invit\u00E9 \: Trafic entre les machines virtuelles utilisateurs label.zoneWizard.trafficType.management=Administration \: Trafic entre les ressources internes de CloudStack, incluant tous les composants qui communiquent avec le serveur d\\'administration, tels que les h\u00F4tes and les machines virtuelles Syst\u00E8mes CloudStack label.zoneWizard.trafficType.public=Public \: Trafic entre Internet et les machines virtuelles dans le nuage -label.zoneWizard.trafficType.storage=Stockage \: Trafic entre les serveurs de stockages primaires et secondaires, tel que le transfert de machines virtuelles mod\u00E8les et des instantan\u00E9s de disques +label.zoneWizard.trafficType.storage=Stockage \: Trafic entre les serveurs de stockages principaux et secondaires, tel que le transfert de machines virtuelles mod\u00E8les et des instantan\u00E9s de disques label.zones=Zones managed.state=\u00C9tat de la gestion message.Zone.creation.complete=Cr\u00E9ation de la zone termin\u00E9e @@ -1141,63 +1151,63 @@ message.action.cancel.maintenance=Votre h\u00F4te a quitt\u00E9 la maintenance. message.action.cancel.maintenance.mode=Confirmer l\\'annulation de cette maintenance. message.action.change.service.warning.for.instance=Votre instance doit \u00EAtre arr\u00EAt\u00E9e avant d\\'essayer de changer son offre de service. message.action.change.service.warning.for.router=Votre routeur doit \u00EAtre arr\u00EAt\u00E9 avant d\\'essayer de changer son offre de service. -message.action.delete.ISO=Confirmer que vous souhaitez supprimer cette ISO. +message.action.delete.ISO=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cette ISO. message.action.delete.ISO.for.all.zones=L\\'ISO est utilis\u00E9 par toutes les zones. S\\'il vous pla\u00EEt confirmer que vous voulez le supprimer de toutes les zones. -message.action.delete.cluster=Confirmer que vous voulez supprimer ce cluster. -message.action.delete.disk.offering=Confirmer que vous souhaitez supprimer cette offre de disque. -message.action.delete.domain=Confirmer que vous voulez supprimer ce domaine. -message.action.delete.external.firewall=Confirmer que vous souhaitez supprimer ce pare-feu externe. Attention \: Si vous pr\u00E9voyez de rajouter le m\u00EAme pare-feu externe de nouveau, vous devez r\u00E9-initialiser les donn\u00E9es d\\'utilisation sur l\\'appareil. -message.action.delete.external.load.balancer=Confirmez que vous souhaitez supprimer ce r\u00E9partiteur de charge externe. Attention \: Si vous pensez ajouter le m\u00EAme r\u00E9partiteur de charge plus tard, vous devez remettre \u00E0 z\u00E9ro les statistiques d\\'utilisation de cet \u00E9quipement. -message.action.delete.ingress.rule=Confirmez que vous souhaitez supprimer cette r\u00E8gle d\\'entr\u00E9e. -message.action.delete.network=Confirmer que vous voulez supprimer ce r\u00E9seau. +message.action.delete.cluster=\u00CAtes-vous s\u00FBr que vous voulez supprimer ce cluster. +message.action.delete.disk.offering=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cette offre de disque. +message.action.delete.domain=\u00CAtes-vous s\u00FBr que vous voulez supprimer ce domaine. +message.action.delete.external.firewall=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce pare-feu externe. Attention \: Si vous pr\u00E9voyez de rajouter le m\u00EAme pare-feu externe de nouveau, vous devez r\u00E9-initialiser les donn\u00E9es d\\'utilisation sur l\\'appareil. +message.action.delete.external.load.balancer=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce r\u00E9partiteur de charge externe. Attention \: Si vous pensez ajouter le m\u00EAme r\u00E9partiteur de charge plus tard, vous devez remettre \u00E0 z\u00E9ro les statistiques d\\'utilisation de cet \u00E9quipement. +message.action.delete.ingress.rule=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cette r\u00E8gle d\\'entr\u00E9e. +message.action.delete.network=\u00CAtes-vous s\u00FBr que vous voulez supprimer ce r\u00E9seau. message.action.delete.nexusVswitch=Confirmer la suppession de ce Nexus 1000v message.action.delete.physical.network=Confirmer la suppression du r\u00E9seau physique -message.action.delete.pod=Confirmez que vous souhaitez supprimer ce pod. -message.action.delete.primary.storage=Confirmer que vous voulez supprimer ce stockage primaire. -message.action.delete.secondary.storage=Confirmez que vous souhaitez supprimer ce stockage secondaire. -message.action.delete.security.group=Confirmez que vous souhaitez supprimer ce groupe de s\u00E9curit\u00E9. -message.action.delete.service.offering=Confirmez que vous souhaitez supprimer cette offre de service. -message.action.delete.snapshot=Confirmez que vous souhaitez supprimer cet instantan\u00E9 -message.action.delete.system.service.offering=Confirmer la suppression de l\\'offre syst\u00E8me. -message.action.delete.template=Confirmez que vous souhaitez supprimer ce mod\u00E8le. -message.action.delete.template.for.all.zones=Ce mod\u00E8le est utilis\u00E9 par toutes les zones. Confirmez que vous souhaitez le supprimer de toutes les zones. -message.action.delete.volume=Confirmez que vous souhaitez supprimer ce volume. -message.action.delete.zone=Confirmez que vous souhaitez supprimer cette zone. -message.action.destroy.instance=Confirmez que vous souhaitez supprimer cette instance. -message.action.destroy.systemvm=Confirmez que vous souhaitez supprimer cette VM Syst\u00E8me. -message.action.disable.cluster=Confirmez que vous souhaitez d\u00E9sactiver ce cluster +message.action.delete.pod=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce pod. +message.action.delete.primary.storage=\u00CAtes-vous s\u00FBr que vous voulez supprimer ce stockage principal. +message.action.delete.secondary.storage=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce stockage secondaire. +message.action.delete.security.group=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce groupe de s\u00E9curit\u00E9. +message.action.delete.service.offering=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cette offre de service. +message.action.delete.snapshot=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cet instantan\u00E9 +message.action.delete.system.service.offering=\u00CAtes-vous s\u00FBr que vous voulez supprimer l\\'offre syst\u00E8me. +message.action.delete.template=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce mod\u00E8le. +message.action.delete.template.for.all.zones=Ce mod\u00E8le est utilis\u00E9 par toutes les zones. \u00CAtes-vous s\u00FBr que vous souhaitez le supprimer de toutes les zones. +message.action.delete.volume=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce volume. +message.action.delete.zone=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cette zone. +message.action.destroy.instance=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cette instance. +message.action.destroy.systemvm=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cette VM Syst\u00E8me. +message.action.disable.cluster=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9sactiver ce cluster message.action.disable.nexusVswitch=Confirmer la d\u00E9sactivation de ce Nexus 1000v message.action.disable.physical.network=Confirmer l\\'activation de ce r\u00E9seau physique. -message.action.disable.pod=Confirmez que vous voulez d\u00E9sactiver ce Pod -message.action.disable.static.NAT=Confirmez que vous souhaitez d\u00E9sactiver le NAT statique. -message.action.disable.zone=Confirmez que vous voulez d\u00E9sactiver cette zone +message.action.disable.pod=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9sactiver ce Pod +message.action.disable.static.NAT=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9sactiver le NAT statique. +message.action.disable.zone=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9sactiver cette zone message.action.download.iso=Confirmer le t\u00E9l\u00E9chargement de cet ISO message.action.download.template=Confirmer le t\u00E9l\u00E9chargement de ce mod\u00E8le -message.action.enable.cluster=Confirmez que vous souhaitez activer ce cluster +message.action.enable.cluster=\u00CAtes-vous s\u00FBr que vous souhaitez activer ce cluster message.action.enable.maintenance=Votre h\u00F4te a \u00E9t\u00E9 mis en mode maintenance avec succ\u00E8s. Ce processus peut durer plusieurs minutes ou plus, suivant le nombre de VMs actives sur cet h\u00F4te. message.action.enable.nexusVswitch=Confirmer l\\'activation de ce Nexus 1000v message.action.enable.physical.network=Confirmer l\\'activation de ce r\u00E9seau physique. -message.action.enable.pod=Confirmez que vous souhaitez activer ce Pod -message.action.enable.zone=Confirmez que vous voulez activer cette zone +message.action.enable.pod=\u00CAtes-vous s\u00FBr que vous souhaitez activer ce Pod +message.action.enable.zone=\u00CAtes-vous s\u00FBr que vous souhaitez activer cette zone message.action.force.reconnect=Votre h\u00F4te a \u00E9t\u00E9 forc\u00E9e \u00E0 se reconnecter avec succ\u00E8s. Ce processus peut prendre jusqu\\'\u00E0 plusieurs minutes. message.action.host.enable.maintenance.mode=Activer le mode maintenance va causer la migration \u00E0 chaud de l\\'ensemble des instances de cet h\u00F4te sur les autres h\u00F4tes disponibles. message.action.instance.reset.password=Confirmer le changement du mot de passe ROOT pour cette machine virtuelle. -message.action.manage.cluster=Confirmez que vous voulez g\u00E9rer le cluster -message.action.primarystorage.enable.maintenance.mode=Attention \: placer ce stockage primaire en mode maintenance va provoquer l\\'arr\u00EAt de l\\'ensemble des VMs utilisant des volumes sur ce stockage. Souhaitez-vous continuer ? -message.action.reboot.instance=Confirmez que vous souhaitez red\u00E9marrer cette instance. +message.action.manage.cluster=\u00CAtes-vous s\u00FBr que vous souhaitez g\u00E9rer le cluster +message.action.primarystorage.enable.maintenance.mode=Attention \: placer ce stockage principal en mode maintenance va provoquer l\\'arr\u00EAt de l\\'ensemble des VMs utilisant des volumes sur ce stockage. Souhaitez-vous continuer ? +message.action.reboot.instance=\u00CAtes-vous s\u00FBr que vous souhaitez red\u00E9marrer cette instance. message.action.reboot.router=Tous les services fournit par ce routeur virtuel vont \u00EAtre interrompus. Confirmer le r\u00E9-amor\u00E7age de ce routeur. -message.action.reboot.systemvm=Confirmez que vous souhaitez red\u00E9marrer cette VM Syst\u00E8me -message.action.release.ip=Confirmez que vous souhaitez lib\u00E9rer cette IP. -message.action.remove.host=Confirmer la suppression de cet h\u00F4te. +message.action.reboot.systemvm=\u00CAtes-vous s\u00FBr que vous souhaitez red\u00E9marrer cette VM Syst\u00E8me +message.action.release.ip=\u00CAtes-vous s\u00FBr que vous souhaitez lib\u00E9rer cette IP. +message.action.remove.host=\u00CAtes-vous s\u00FBr que vous voulez supprimer cet h\u00F4te. message.action.reset.password.off=Votre instance ne supporte pas pour le moment cette fonctionnalit\u00E9. message.action.reset.password.warning=Votre instance doit \u00EAtre arr\u00EAt\u00E9e avant d\\'essayer de changer son mot de passe. -message.action.restore.instance=Confirmez que vous souhaitez restaurer cette instance. -message.action.start.instance=Confirmez que vous souhaitez d\u00E9marrer cette instance. -message.action.start.router=Confirmez que vous souhaitez d\u00E9marrer ce routeur. -message.action.start.systemvm=Confirmez que vous souhaitez red\u00E9marrer cette VM syst\u00E8me. -message.action.stop.instance=Confirmez que vous souhaitez arr\u00EAter cette instance. +message.action.restore.instance=\u00CAtes-vous s\u00FBr que vous souhaitez restaurer cette instance. +message.action.start.instance=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9marrer cette instance. +message.action.start.router=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9marrer ce routeur. +message.action.start.systemvm=\u00CAtes-vous s\u00FBr que vous souhaitez red\u00E9marrer cette VM syst\u00E8me. +message.action.stop.instance=\u00CAtes-vous s\u00FBr que vous souhaitez arr\u00EAter cette instance. message.action.stop.router=Tous les services fournit par ce routeur virtuel vont \u00EAtre interrompus. Confirmer l\\'arr\u00EAt de ce routeur. -message.action.stop.systemvm=Confirmez que vous souhaitez arr\u00EAter cette VM. +message.action.stop.systemvm=\u00CAtes-vous s\u00FBr que vous souhaitez arr\u00EAter cette VM. message.action.take.snapshot=Confirmer la prise d\\'un instantan\u00E9 pour ce volume. message.action.unmanage.cluster=Confirmez que vous ne voulez plus g\u00E9rer le cluster message.activate.project=\u00CAtes-vous s\u00FBr de vouloir activer ce projet ? @@ -1217,9 +1227,9 @@ message.add.load.balancer.under.ip=La r\u00E8gle de r\u00E9partition de charge \ message.add.network=Ajouter un nouveau r\u00E9seau \u00E0 la zone\: message.add.new.gateway.to.vpc=Renseigner les informations suivantes pour ajouter une nouvelle passerelle pour ce VPC message.add.pod=Ajouter un nouveau pod \u00E0 la zone -message.add.pod.during.zone.creation=Chaque zone doit contenir un ou plusieurs pods, et le premier pod sera ajout\u00E9 maintenant. Une pod contient les h\u00F4tes et les serveurs de stockage primaire, qui seront ajout\u00E9s dans une \u00E9tape ult\u00E9rieure. Configurer une plage d\\'adresses IP r\u00E9serv\u00E9es pour le trafic de gestion interne de CloudStack. La plage d\\'IP r\u00E9serv\u00E9e doit \u00EAtre unique pour chaque zone dans le nuage. -message.add.primary=Renseignez les param\u00E8tres suivants pour ajouter un stockage primaire -message.add.primary.storage=Ajouter un nouveau stockage primaire \u00E0 la zone , pod +message.add.pod.during.zone.creation=Chaque zone doit contenir un ou plusieurs pods, et le premier pod sera ajout\u00E9 maintenant. Une pod contient les h\u00F4tes et les serveurs de stockage principal, qui seront ajout\u00E9s dans une \u00E9tape ult\u00E9rieure. Configurer une plage d\\'adresses IP r\u00E9serv\u00E9es pour le trafic de gestion interne de CloudStack. La plage d\\'IP r\u00E9serv\u00E9e doit \u00EAtre unique pour chaque zone dans le nuage. +message.add.primary=Renseignez les param\u00E8tres suivants pour ajouter un stockage principal +message.add.primary.storage=Ajouter un nouveau stockage principal \u00E0 la zone , pod message.add.secondary.storage=Ajouter un nouveau stockage pour la zone message.add.service.offering=Renseigner les informations suivantes pour ajouter une nouvelle offre de service de calcul. message.add.system.service.offering=Ajouter les informations suivantes pour cr\u00E9er une nouvelle offre syst\u00E8me. @@ -1237,10 +1247,10 @@ message.after.enable.swift=Swift configur\u00E9. Remarque \: une fois que vous q message.alert.state.detected=\u00C9tat d\\'alerte d\u00E9tect\u00E9 message.allow.vpn.access=Entrez un nom d\\'utilisateur et un mot de passe pour l\\'utilisateur que vous souhaitez autoriser \u00E0 utiliser l\\'acc\u00E8s VPN. message.apply.snapshot.policy=Vous avez mis \u00E0 jour votre politique d\\'instantan\u00E9s avec succ\u00E8s. -message.attach.iso.confirm=Confirmez que vous souhaitez attacher l\\'image ISO \u00E0 cette instance. +message.attach.iso.confirm=\u00CAtes-vous s\u00FBr que vous souhaitez attacher l\\'image ISO \u00E0 cette instance. message.attach.volume=Renseignez les donn\u00E9es suivantes pour attacher un nouveau volume. Si vous attachez un volume disque \u00E0 une machine virtuelle sous Windows, vous aurez besoin de red\u00E9marrer l\\'instance pour voir le nouveau disque. message.basic.mode.desc=Choisissez ce mod\u00E8le de r\u00E9seau si vous *ne voulez pas* activer le support des VLANs. Toutes les instances cr\u00E9\u00E9es avec ce mod\u00E8le de r\u00E9seau se verront assigner une adresse IP et les groupes de s\u00E9curit\u00E9 seront utilis\u00E9s pour fournir l\\'isolation entre les VMs. -message.change.offering.confirm=Confirmez que vous souhaitez changer l\\'offre de service de cette instance. +message.change.offering.confirm=\u00CAtes-vous s\u00FBr que vous souhaitez changer l\\'offre de service de cette instance. message.change.password=Merci de modifier votre mot de passe. message.configure.all.traffic.types=Vous avez de multiples r\u00E9seaux physiques ; veuillez configurer les libell\u00E9s pour chaque type de trafic en cliquant sur le bouton Modifier. message.configuring.guest.traffic=Configuration du r\u00E9seau VM @@ -1251,13 +1261,13 @@ message.confirm.action.force.reconnect=Confirmer la re-connexion forc\u00E9e de message.confirm.delete.F5=Confirmer la suppression du F5 message.confirm.delete.NetScaler=Confirmer la suppression du Netscaler message.confirm.delete.SRX=Confirmer la suppression du SRX -message.confirm.destroy.router=Confirmer la suppression de ce routeur +message.confirm.destroy.router=\u00CAtes-vous s\u00FBr que vous voulez supprimer ce routeur message.confirm.disable.provider=Confirmer la d\u00E9sactivation de ce fournisseur message.confirm.enable.provider=Confirmer l\\'activation de ce fournisseur -message.confirm.join.project=Confirmer que vous souhaitez rejoindre ce projet. -message.confirm.remove.IP.range=Confirmer la suppression de cette plage d\\'adresses IP +message.confirm.join.project=\u00CAtes-vous s\u00FBr que vous souhaitez rejoindre ce projet. +message.confirm.remove.IP.range=\u00CAtes-vous s\u00FBr que vous voulez supprimer cette plage d\\'adresses IP message.confirm.shutdown.provider=Confirmer l\\'arr\u00EAt de ce fournisseur -message.copy.iso.confirm=Confirmez que vous souhaitez copier votre image ISO vers +message.copy.iso.confirm=\u00CAtes-vous s\u00FBr que vous souhaitez copier votre image ISO vers message.copy.template=Copier le mod\u00E8le XXX de la zone vers message.create.template=Voulez vous cr\u00E9er un mod\u00E8le ? message.create.template.vm=Cr\u00E9er la VM depuis le mod\u00E8le @@ -1266,31 +1276,31 @@ message.creating.cluster=Cr\u00E9ation du cluster message.creating.guest.network=Cr\u00E9ation du r\u00E9seau pour les invit\u00E9s message.creating.physical.networks=Cr\u00E9ation des r\u00E9seaux physiques message.creating.pod=Cr\u00E9ation d\\'un pod -message.creating.primary.storage=Cr\u00E9ation du stockage primaire +message.creating.primary.storage=Cr\u00E9ation du stockage principal message.creating.secondary.storage=Cr\u00E9ation du stockage secondaire message.creating.zone=Cr\u00E9ation de la zone message.decline.invitation=Voulez-vous refuser cette invitation au projet ? -message.delete.VPN.connection=Confirmer la suppression de la connexion VPN -message.delete.VPN.customer.gateway=Confirmer la suppression de cette passerelle VPN client -message.delete.VPN.gateway=Confirmer la suppression de cette passerelle VPN -message.delete.account=Confirmez que vous souhaitez supprimer ce compte. -message.delete.gateway=Confirmer la suppression de cette passerelle +message.delete.VPN.connection=\u00CAtes-vous s\u00FBr que vous voulez supprimer la connexion VPN +message.delete.VPN.customer.gateway=\u00CAtes-vous s\u00FBr que vous voulez supprimer cette passerelle VPN client +message.delete.VPN.gateway=\u00CAtes-vous s\u00FBr que vous voulez supprimer cette passerelle VPN +message.delete.account=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce compte. +message.delete.gateway=\u00CAtes-vous s\u00FBr que vous voulez supprimer cette passerelle message.delete.project=\u00CAtes-vous s\u00FBr de vouloir supprimer ce projet ? -message.delete.user=Confirmer la suppression de cet utilisateur. +message.delete.user=\u00CAtes-vous s\u00FBr que vous voulez supprimer cet utilisateur. message.desc.advanced.zone=Pour des topologies de r\u00E9seau plus sophistiqu\u00E9es. Ce mod\u00E8le de r\u00E9seau permet plus de flexibilit\u00E9 dans la d\u00E9finition des r\u00E9seaux d\\'invit\u00E9s et propose des offres personnalis\u00E9es telles que le support de pare-feu, VPN ou d\\'\u00E9quilibrage de charge. message.desc.basic.zone=Fournit un r\u00E9seau unique o\u00F9 chaque instance de machine virtuelle se voit attribuer une adresse IP directement depuis le r\u00E9seau. L\\'isolation des invit\u00E9s peut \u00EAtre assur\u00E9 au niveau de la couche r\u00E9seau-3 tels que les groupes de s\u00E9curit\u00E9 (filtrage d\\'adresse IP source). -message.desc.cluster=Chaque pod doit contenir un ou plusieurs clusters, et le premier cluster sera ajout\u00E9 tout de suite. Un cluster est un regroupement pour h\u00F4tes. Les h\u00F4tes d\\'un cluster ont tous un mat\u00E9riel identique, ex\u00E9cutent le m\u00EAme hyperviseur, sont dans le m\u00EAme sous-r\u00E9seau, et acc\u00E8dent au m\u00EAme stockage partag\u00E9. Chaque cluster comprend une ou plusieurs h\u00F4tes et un ou plusieurs serveurs de stockage primaire. +message.desc.cluster=Chaque pod doit contenir un ou plusieurs clusters, et le premier cluster sera ajout\u00E9 tout de suite. Un cluster est un regroupement pour h\u00F4tes. Les h\u00F4tes d\\'un cluster ont tous un mat\u00E9riel identique, ex\u00E9cutent le m\u00EAme hyperviseur, sont dans le m\u00EAme sous-r\u00E9seau, et acc\u00E8dent au m\u00EAme stockage partag\u00E9. Chaque cluster comprend une ou plusieurs h\u00F4tes et un ou plusieurs serveurs de stockage principal. message.desc.host=Chaque cluster doit contenir au moins un h\u00F4te (machine) pour ex\u00E9cuter des machines virtuelles invit\u00E9es, et le premier h\u00F4te sera ajout\u00E9 tout de suite. Pour un h\u00F4te fonctionnant dans CloudStack, vous devez installer un logiciel hyperviseur sur l\\'h\u00F4te, attribuer une adresse IP \u00E0 l\\'h\u00F4te, et s\\'assurer que l\\'h\u00F4te est connect\u00E9 au serveur d\\'administration CloudStack.

Indiquer le nom de l\\'h\u00F4te ou son adresse IP, l\\'identifiant de connexion (g\u00E9n\u00E9ralement root) et le mot de passe ainsi que toutes les \u00E9tiquettes permettant de classer les h\u00F4tes. -message.desc.primary.storage=Chaque cluster doit contenir un ou plusieurs serveurs de stockage primaire, et le premier sera ajout\u00E9 tout de suite. Le stockage principal contient les volumes de disque pour les machines virtuelles s\\'ex\u00E9cutant sur les h\u00F4tes dans le cluster. Utiliser les protocoles standards pris en charge par l\\'hyperviseur sous-jacent. +message.desc.primary.storage=Chaque cluster doit contenir un ou plusieurs serveurs de stockage principal, et le premier sera ajout\u00E9 tout de suite. Le stockage principal contient les volumes de disque pour les machines virtuelles s\\'ex\u00E9cutant sur les h\u00F4tes dans le cluster. Utiliser les protocoles standards pris en charge par l\\'hyperviseur sous-jacent. message.desc.secondary.storage=Chaque zone doit avoir au moins un serveur NFS ou un serveur de stockage secondaire, et sera ajout\u00E9 en premier tout de suite. Le stockage secondaire entrepose les mod\u00E8les de machines virtuelles, les images ISO et les images disques des volumes des machines virtuelles. Ce serveur doit \u00EAtre accessible pour toutes les machines h\u00F4tes dans la zone.

Saisir l\\'adresse IP et le chemin d\\'export. -message.desc.zone=Une zone est la plus grande unit\u00E9 organisationnelle dans CloudStack, et correspond typiquement \u00E0 un centre de donn\u00E9es. Les zones fournissent un isolement physique et de la redondance. Une zone est constitu\u00E9e d\\'un ou plusieurs pods (dont chacun contient les h\u00F4tes et les serveurs de stockage primaire) et un serveur de stockage secondaire qui est partag\u00E9e par tous les pods dans la zone. +message.desc.zone=Une zone est la plus grande unit\u00E9 organisationnelle dans CloudStack, et correspond typiquement \u00E0 un centre de donn\u00E9es. Les zones fournissent un isolement physique et de la redondance. Une zone est constitu\u00E9e d\\'un ou plusieurs pods (dont chacun contient les h\u00F4tes et les serveurs de stockage principal) et un serveur de stockage secondaire qui est partag\u00E9e par tous les pods dans la zone. message.detach.disk=Voulez-vous d\u00E9tacher ce disque ? -message.detach.iso.confirm=Confirmez que vous souhaitez d\u00E9tacher l\\'image ISO de cette instance. +message.detach.iso.confirm=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9tacher l\\'image ISO de cette instance. message.disable.account=Veuillez confirmer que vous voulez d\u00E9sactiver ce compte. En d\u00E9sactivant le compte, tous les utilisateurs pour ce compte n\\'auront plus acc\u00E8s \u00E0 leurs ressources sur le cloud. Toutes les machines virtuelles vont \u00EAtre arr\u00EAt\u00E9es imm\u00E9diatement. message.disable.snapshot.policy=Vous avez d\u00E9sactiv\u00E9 votre politique d\\'instantan\u00E9 avec succ\u00E8s. message.disable.user=Confirmer la d\u00E9sactivation de cet utilisateur. message.disable.vpn=\u00CAtes-vous s\u00FBr de vouloir d\u00E9sactiver le VPN ? -message.disable.vpn.access=Confirmez que vous souhaitez d\u00E9sactiver l\\'acc\u00E8s VPN. +message.disable.vpn.access=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9sactiver l\\'acc\u00E8s VPN. message.download.ISO=Cliquer 00000 pour t\u00E9l\u00E9charger une image ISO message.download.template=Cliquer sur 00000 pour t\u00E9l\u00E9charger le mod\u00E8le message.download.volume=Cliquer sur 00000 pour t\u00E9l\u00E9charger le volume @@ -1299,7 +1309,7 @@ message.edit.account=Modifier ("-1" signifie pas de limite de ressources) message.edit.confirm=Confirmer les changements avant de cliquer sur "Enregistrer". message.edit.limits=Renseignez les limites pour les ressources suivantes. "-1" indique qu\\'il n\\'y a pas de limites pour la cr\u00E9ation de ressources. message.edit.traffic.type=Sp\u00E9cifier le libell\u00E9 de trafic associ\u00E9 avec ce type de trafic. -message.enable.account=Confirmez que vous souhaitez activer ce compte. +message.enable.account=\u00CAtes-vous s\u00FBr que vous souhaitez activer ce compte. message.enable.user=Confirmer l\\'activation de cet utilisateur. message.enable.vpn=Confirmer l\\'activation de l\\'acc\u00E8s VPN pour cette adresse IP. message.enable.vpn.access=Le VPN est d\u00E9sactiv\u00E9 pour cette adresse IP. Voulez vous activer l\\'acc\u00E8s VPN ? @@ -1317,7 +1327,7 @@ message.installWizard.copy.whatIsAHost=Un h\u00F4te est une machine. Les h\u00F4 message.installWizard.copy.whatIsAPod=Un pod repr\u00E9sente souvent un seul rack. Les h\u00F4tes dans le m\u00EAme pod sont dans le m\u00EAme sous-r\u00E9seau.
Un pod est la deuxi\u00E8me plus grande unit\u00E9 organisationnelle au sein d\\'un d\u00E9ploiement CloudStack&\#8482;. Les pods sont contenus dans les zones. Chaque zone peut contenir un ou plusieurs pods ; dans l\\'Installation Basique, vous aurez juste un pod dans votre zone. message.installWizard.copy.whatIsAZone=Une zone est la plus grande unit\u00E9 organisationnelle au sein d\\'un d\u00E9ploiement CloudStack&\#8482;. Une zone correspond typiquement \u00E0 un centre de donn\u00E9es, mais il est permis d\\'avoir plusieurs zones dans un centre de donn\u00E9es. L\\'avantage d\\'organiser une infrastructure en zones est de fournir une isolation physique et de la redondance. Par exemple, chaque zone peut avoir sa propre alimentation et de liaison avec le r\u00E9seau, et les zones peuvent \u00EAtre tr\u00E8s \u00E9loign\u00E9es g\u00E9ographiquement (m\u00EAme si ce n\\'est pas une obligation). message.installWizard.copy.whatIsCloudStack=CloudStack&\#8482; est une plate-forme logicielle de pools de ressources informatiques pour construire des infrastructures publiques, priv\u00E9es et hybrides en tant que services (IaaS) dans les nuages. CloudStack&\#8482; g\u00E8re le r\u00E9seau, le stockage et les noeuds de calcul qui composent une infrastructure dans les nuages. Utilisez CloudStack&\#8482; pour d\u00E9ployer, g\u00E9rer et configurer les environnements d\\'informatiques dans les nuages.

S\\'\u00E9tendant au-del\u00E0 des machines virtuelles individuelles fonctionnant sur du mat\u00E9riel standard, CloudStack&\#8482; offre une solution d\\'informatique en nuage cl\u00E9 en main pour fournir des centres de donn\u00E9es virtuels comme service - fournissant tous les composants essentiels pour construire, d\u00E9ployer et g\u00E9rer des applications \\'cloud\\' multi-niveaux et multi-locataire. Les versions libre et Premium sont disponibles, la version Libre offrant des caract\u00E9ristiques presque identiques. -message.installWizard.copy.whatIsPrimaryStorage=Une infrastructure CloudStack&\#8482; utilise deux types de stockage \: stockage primaire et stockage secondaire. Les deux peuvent \u00EAtre des serveurs iSCSI ou NFS, ou sur disque local.

Le stockage primaire est associ\u00E9 \u00E0 un cluster, et stocke les volumes disques de chaque machine virtuelle pour toutes les VMs s\\'ex\u00E9cutant sur les h\u00F4tes dans le cluster. Le serveur de stockage primaire est typiquement proche des h\u00F4tes. +message.installWizard.copy.whatIsPrimaryStorage=Une infrastructure CloudStack&\#8482; utilise deux types de stockage \: stockage principal et stockage secondaire. Les deux peuvent \u00EAtre des serveurs iSCSI ou NFS, ou sur disque local.

Le stockage principal est associ\u00E9 \u00E0 un cluster, et stocke les volumes disques de chaque machine virtuelle pour toutes les VMs s\\'ex\u00E9cutant sur les h\u00F4tes dans le cluster. Le serveur de stockage principal est typiquement proche des h\u00F4tes. message.installWizard.copy.whatIsSecondaryStorage=Le stockage secondaire est associ\u00E9 \u00E0 une zone, et il stocke les \u00E9l\u00E9ments suivants\:
  • Mod\u00E8les - images de syst\u00E8mes d\\'exploitation qui peuvent \u00EAtre utilis\u00E9es pour d\u00E9marrer les machines virtuelles et peuvent inclure des informations de configuration suppl\u00E9mentaires, telles que les applications pr\u00E9-install\u00E9es
  • Images ISO - images de syst\u00E8me d\\'exploitation ou d\\'installation d\\'OS qui peuvent \u00EAtre amor\u00E7able ou non-amor\u00E7able
  • Images de volume disque - capture des donn\u00E9es de machines virtuelles qui peuvent \u00EAtre utilis\u00E9es pour la r\u00E9cup\u00E9ration des donn\u00E9es ou cr\u00E9er des mod\u00E8les
message.installWizard.now.building=Construction de votre Cloud en cours message.installWizard.tooltip.addCluster.name=Un nom pour le cluster. Ce choix est libre et n\\'est pas utilis\u00E9 par CloudStack. @@ -1330,7 +1340,7 @@ message.installWizard.tooltip.addPod.reservedSystemGateway=Passerelle pour les s message.installWizard.tooltip.addPod.reservedSystemNetmask=Le masque r\u00E9seau que les instances utiliseront sur le r\u00E9seau message.installWizard.tooltip.addPod.reservedSystemStartIp=Ceci est la plage d\\'adresses IP dans le r\u00E9seau priv\u00E9 que CloudStack utilise la gestion des VMs du stockage secondaire et les VMs Console Proxy. Ces adresses IP sont prises dans le m\u00EAme sous-r\u00E9seau que les serveurs h\u00F4tes. message.installWizard.tooltip.addPrimaryStorage.name=Nom pour ce stockage -message.installWizard.tooltip.addPrimaryStorage.path=(pour NFS) Dans NFS, ceci est le chemin d\\'export depuis le serveur. (pour SharedMountPoint) Le chemin. Avec KVM, c\\'est le chemin sur chaque h\u00F4te o\u00F9 ce stockage primaire est mont\u00E9. Par exemple, "/mnt/primary". +message.installWizard.tooltip.addPrimaryStorage.path=(pour NFS) Dans NFS, ceci est le chemin d\\'export depuis le serveur. (pour SharedMountPoint) Le chemin. Avec KVM, c\\'est le chemin sur chaque h\u00F4te o\u00F9 ce stockage principal est mont\u00E9. Par exemple, "/mnt/primary". message.installWizard.tooltip.addPrimaryStorage.server=(pour NFS, iSCSI ou PreSetup) Adresse IP ou nom DNS du stockage message.installWizard.tooltip.addSecondaryStorage.nfsServer=Adresse IP du serveur NFS supportant le stockage secondaire message.installWizard.tooltip.addSecondaryStorage.path=Le chemin export\u00E9, situ\u00E9 sur le serveur sp\u00E9cifi\u00E9 pr\u00E9c\u00E9demment @@ -1351,13 +1361,13 @@ message.iso.desc=Image disque contenant des donn\u00E9es ou un support amor\u00E message.join.project=Vous avez rejoint un projet. S\u00E9lectionnez la vue Projet pour le voir. message.launch.vm.on.private.network=Souhaitez vous d\u00E9marrer cette instance sur votre propre r\u00E9seau priv\u00E9 ? message.launch.zone=La zone est pr\u00EAte \u00E0 d\u00E9marrer ; passer \u00E0 l\\'\u00E9tape suivante. -message.lock.account=Confirmez que vous souhaitez verrouiller ce compte. En le verrouillant, les utilisateurs de ce compte ne seront plus capables de g\u00E9rer leurs ressources. Les ressources existantes resteront toutefois accessibles. +message.lock.account=\u00CAtes-vous s\u00FBr que vous souhaitez verrouiller ce compte. En le verrouillant, les utilisateurs de ce compte ne seront plus capables de g\u00E9rer leurs ressources. Les ressources existantes resteront toutefois accessibles. message.migrate.instance.confirm=Confirmez l\\'h\u00F4te vers lequel vous souhaitez migrer cette instance message.migrate.instance.to.host=Confirmer la migration de l\\'instance vers un autre h\u00F4te -message.migrate.instance.to.ps=Confirmer la migration de l\\'instance vers un autre stockage primaire +message.migrate.instance.to.ps=Confirmer la migration de l\\'instance vers un autre stockage principal message.migrate.router.confirm=Confirmer la migration du routeur vers \: message.migrate.systemvm.confirm=Confirmer la migration de la VM syst\u00E8me vers \: -message.migrate.volume=Confirmer la migration du volume vers un autre stockage primaire. +message.migrate.volume=Confirmer la migration du volume vers un autre stockage principal. message.new.user=Renseigner les informations suivantes pour ajouter un nouveau compte utilisateur message.no.network.support=S\u00E9lectionnez l\\'hyperviseur. vSphere, n\\'a pas de fonctionnalit\u00E9s suppl\u00E9mentaires pour le r\u00E9seau. Continuez \u00E0 l\\'\u00E9tape 5. message.no.network.support.configuration.not.true=Il n\\'y a pas de zone avec la fonction groupe de s\u00E9curit\u00E9 active. D\u00E8s lors, pas de fonction r\u00E9seau suppl\u00E9mentaires disponibles. Continuer \u00E0 l\\'\u00E9tape 5. @@ -1366,7 +1376,7 @@ message.no.projects.adminOnly=Vous n\\'avez pas de projet.
Contacter votre a message.number.clusters=

\# de Clusters

message.number.hosts=

\# d\\' H\u00F4tes

message.number.pods=

\# de Pods

-message.number.storage=

\# de Volumes de Stockage Primaire

+message.number.storage=

\# de Volumes de Stockage Principal

message.number.zones=

\# de Zones

message.pending.projects.1=Vous avez des invitations projet en attente \: message.pending.projects.2=Pour les visualiser, aller dans la section projets, puis s\u00E9lectionner invitation dans la liste d\u00E9roulante. @@ -1380,7 +1390,7 @@ message.project.invite.sent=Invitation envoy\u00E9e ; les utilisateurs seront aj message.public.traffic.in.advanced.zone=Le trafic public est g\u00E9n\u00E9r\u00E9 lorsque les machines virtuelles dans le nuage acc\u00E8dent \u00E0 Internet. Des adresses IP publiquement accessibles doivent \u00EAtre pr\u00E9vues \u00E0 cet effet. Les utilisateurs peuvent utiliser l\\'interface d\\'administration de CloudStack pour acqu\u00E9rir ces adresses IP qui impl\u00E9menteront une translation d\\'adresse NAT entre le r\u00E9seau d\\'invit\u00E9 et le r\u00E9seau public.

Fournir au moins une plage d\\'adresses IP pour le trafic Internet. message.public.traffic.in.basic.zone=Le trafic public est g\u00E9n\u00E9r\u00E9 lorsque les machines virtuelles dans le nuage acc\u00E8dent \u00E0 Internet ou fournissent des services \u00E0 des utilisateurs sur Internet. Des adresses IP publiquement accessibles doivent \u00EAtre pr\u00E9vus \u00E0 cet effet. Quand une instance est cr\u00E9\u00E9e, une adresse IP publique depuis un ensemble d\\'adresses IP publiques sera allou\u00E9e \u00E0 l\\'instance, en plus de l\\'adresse IP de l\\'invit\u00E9. La translation d\\'adresses statique NAT 1-1 sera mises en place automatiquement entre l\\'adresse IP publique et l\\'adresse IP de l\\'invit\u00E9. Les utilisateurs peuvent \u00E9galement utiliser l\\'interface d\\'administration CloudStack pour acqu\u00E9rir des adresses IP suppl\u00E9mentaires pour ajouter une translation d\\'adresse statique NAT entre leurs instances et le r\u00E9seau d\\'adresses IP publiques. message.remove.vpc=Confirmer la suppression du VPC -message.remove.vpn.access=Confirmez que vous souhaitez supprimer l\\'acc\u00E8s VPN \u00E0 l\\'utilisateur suivant. +message.remove.vpn.access=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer l\\'acc\u00E8s VPN \u00E0 l\\'utilisateur suivant. message.reset.VPN.connection=Confirmer le r\u00E9-initialisation de la connexion VPN message.reset.password.warning.notPasswordEnabled=Le mod\u00E8le de cette instance a \u00E9t\u00E9 cr\u00E9\u00E9 sans la gestion de mot de passe message.reset.password.warning.notStopped=Votre instance doit \u00EAtre arr\u00EAt\u00E9e avant de changer son mot de passe @@ -1425,14 +1435,14 @@ message.validate.instance.name=Le nom de l\\'instance ne peut d\u00E9passer 63 c message.virtual.network.desc=Un r\u00E9seau virtuel d\u00E9di\u00E9 pour votre compte. Ce domaine de multi-diffusion est contenu dans un VLAN et l\\'ensemble des r\u00E9seaux d\\'acc\u00E8s publique sont rout\u00E9s par un routeur virtuel. message.vm.create.template.confirm=Cr\u00E9er un mod\u00E8le va red\u00E9marrer la VM automatiquement message.vm.review.launch=Merci de v\u00E9rifier les informations suivantes et de confirmer que votre instance virtuelle est correcte avant de la d\u00E9marrer. -message.volume.create.template.confirm=Confirmez que vous souhaitez cr\u00E9er un mod\u00E8le pour ce disque. La cr\u00E9ation peut prendre plusieurs minutes, voire plus, selon la taille du volume. +message.volume.create.template.confirm=\u00CAtes-vous s\u00FBr que vous souhaitez cr\u00E9er un mod\u00E8le pour ce disque. La cr\u00E9ation peut prendre plusieurs minutes, voire plus, selon la taille du volume. message.you.must.have.at.least.one.physical.network=Vous devez avoir au moins un r\u00E9seau physique message.zone.creation.complete.would.you.like.to.enable.this.zone=Cr\u00E9ation de la zone termin\u00E9e. Voulez-vous l\\'activer ? message.zone.no.network.selection=La zone s\u00E9lectionn\u00E9e ne propose pas le r\u00E9seau choisi message.zone.step.1.desc=S\u00E9lectionnez un mod\u00E8le de r\u00E9seau pour votre zone. message.zone.step.2.desc=Renseigner les informations suivantes pour ajouter une nouvelle zone message.zone.step.3.desc=Renseigner les informations suivantes pour ajouter un nouveau pod -message.zoneWizard.enable.local.storage=ATTENTION \: si vous activez le stockage local pour cette zone, vous devez effectuer les op\u00E9rations suivantes, selon l\\'endroit o\u00F9 vous souhaitez lancer vos machines virtuelles Syst\u00E8mes \:

1. Si les machines virtuelles Syst\u00E8mes doivent \u00EAtre lanc\u00E9es depuis le stockage primaire, ce dernier doit \u00EAtre ajout\u00E9 \u00E0 la zone apr\u00E8s la cr\u00E9ation. Vous devez \u00E9galement d\u00E9marrer la zone dans un \u00E9tat d\u00E9sactiv\u00E9.

2. Si les machines virtuelles Syst\u00E8mes doivent \u00EAtre lanc\u00E9es depuis le stockage local, le param\u00E8tre system.vm.use.local.storage doit \u00EAtre d\u00E9fini \u00E0 \\'true\\' avant d\\'activer la zone.


Voulez-vous continuer ? +message.zoneWizard.enable.local.storage=ATTENTION \: si vous activez le stockage local pour cette zone, vous devez effectuer les op\u00E9rations suivantes, selon l\\'endroit o\u00F9 vous souhaitez lancer vos machines virtuelles Syst\u00E8mes \:

1. Si les machines virtuelles Syst\u00E8mes doivent \u00EAtre lanc\u00E9es depuis le stockage principal, ce dernier doit \u00EAtre ajout\u00E9 \u00E0 la zone apr\u00E8s la cr\u00E9ation. Vous devez \u00E9galement d\u00E9marrer la zone dans un \u00E9tat d\u00E9sactiv\u00E9.

2. Si les machines virtuelles Syst\u00E8mes doivent \u00EAtre lanc\u00E9es depuis le stockage local, le param\u00E8tre system.vm.use.local.storage doit \u00EAtre d\u00E9fini \u00E0 \\'true\\' avant d\\'activer la zone.


Voulez-vous continuer ? mode=Mode network.rate=D\u00E9bit R\u00E9seau notification.reboot.instance=Red\u00E9marrer l\\'instance From 72da1ae96960bc89f64a50bbcb9c9c6ac97662d2 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Mon, 22 Apr 2013 11:26:24 -0700 Subject: [PATCH 348/607] listView, custom checkbox UI: Fix pre-checked checkbox state Fixes pre-checked checkboxes not having multi-edit-selected class, preventing item data from being passed to custom widget actions. --- ui/scripts/ui/widgets/listView.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ui/scripts/ui/widgets/listView.js b/ui/scripts/ui/widgets/listView.js index 4bd4a42dd8e..f368951f256 100644 --- a/ui/scripts/ui/widgets/listView.js +++ b/ui/scripts/ui/widgets/listView.js @@ -780,6 +780,10 @@ .data('list-view-action-id', actionName) ); + if ($td.find('input[type=checkbox]').is(':checked')) { + $tr.addClass('multi-edit-selected'); + } + return true; } From 382e8f36f377b8508e759a2976b0a6d47345ce89 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Mon, 22 Apr 2013 11:27:16 -0700 Subject: [PATCH 349/607] Change affinity UI: Allow 0 checkbox selections --- ui/scripts/ui-custom/affinity.js | 8 -------- 1 file changed, 8 deletions(-) diff --git a/ui/scripts/ui-custom/affinity.js b/ui/scripts/ui-custom/affinity.js index f3356dd8b2c..6c237ed92eb 100644 --- a/ui/scripts/ui-custom/affinity.js +++ b/ui/scripts/ui-custom/affinity.js @@ -80,14 +80,6 @@ return false; } - if (!$dataList.find( - 'input[type=radio]:checked, input[type=checkbox]:checked' - ).size()) { - cloudStack.dialog.notice({ message: _l('message.select.instance')}); - - return false; - } - var complete = args.complete; var start = args.start; From 57686aeeaffed74832c20a96a7eaf403ba8c90a1 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Mon, 22 Apr 2013 11:27:37 -0700 Subject: [PATCH 350/607] Affinity UI: Pass _custom to fix broken async poll --- ui/scripts/ui-custom/affinity.js | 1 + 1 file changed, 1 insertion(+) diff --git a/ui/scripts/ui-custom/affinity.js b/ui/scripts/ui-custom/affinity.js index 6c237ed92eb..1f51b52ec59 100644 --- a/ui/scripts/ui-custom/affinity.js +++ b/ui/scripts/ui-custom/affinity.js @@ -103,6 +103,7 @@ response: { success: function(args) { complete({ + _custom: args._custom, $item: $instanceRow }); }, From 2be8368f449e49ac1629c230268c8af15912ffc5 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Mon, 22 Apr 2013 11:27:47 -0700 Subject: [PATCH 351/607] Affinity UI: Cleanup dialog on close --- ui/scripts/ui-custom/affinity.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ui/scripts/ui-custom/affinity.js b/ui/scripts/ui-custom/affinity.js index 1f51b52ec59..1a23ff763ee 100644 --- a/ui/scripts/ui-custom/affinity.js +++ b/ui/scripts/ui-custom/affinity.js @@ -117,6 +117,7 @@ $('div.overlay').fadeOut(function() { $('div.overlay').remove(); + $(':ui-dialog').dialog('destroy'); }); } }, @@ -129,6 +130,7 @@ }); $('div.overlay').fadeOut(function() { $('div.overlay').remove(); + $(':ui-dialog').dialog('destroy'); }); } } From 0978df95adae173a00ef11ae26106b561c0927f4 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Mon, 22 Apr 2013 11:43:24 -0700 Subject: [PATCH 352/607] CLOUDSTACK-2120: mixed zone management - revert change in schema-40to410.sql since listVirtualMachines API change will be in 4.2 release only. --- setup/db/db/schema-40to410.sql | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/setup/db/db/schema-40to410.sql b/setup/db/db/schema-40to410.sql index 57d6ab96c63..ff1d9085329 100644 --- a/setup/db/db/schema-40to410.sql +++ b/setup/db/db/schema-40to410.sql @@ -486,8 +486,7 @@ CREATE VIEW `cloud`.`user_vm_view` AS vm_instance.vm_type vm_type, data_center.id data_center_id, data_center.uuid data_center_uuid, - data_center.name data_center_name, - data_center.networktype data_center_type, + data_center.name data_center_name, data_center.is_security_group_enabled security_group_enabled, host.id host_id, host.uuid host_uuid, @@ -1456,8 +1455,7 @@ CREATE VIEW `cloud`.`storage_pool_view` AS cluster.cluster_type, data_center.id data_center_id, data_center.uuid data_center_uuid, - data_center.name data_center_name, - data_center.name data_center_type, + data_center.name data_center_name, host_pod_ref.id pod_id, host_pod_ref.uuid pod_uuid, host_pod_ref.name pod_name, From e5cea0204b36e3634e173fb7d510bc79ac40e478 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Mon, 22 Apr 2013 11:52:52 -0700 Subject: [PATCH 353/607] detailView UI: Fix quickview actions not updating list view row --- ui/scripts/ui/widgets/detailView.js | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/ui/scripts/ui/widgets/detailView.js b/ui/scripts/ui/widgets/detailView.js index 4b520f934ba..0146b362948 100644 --- a/ui/scripts/ui/widgets/detailView.js +++ b/ui/scripts/ui/widgets/detailView.js @@ -15,8 +15,9 @@ // specific language governing permissions and limitations // under the License. (function($, cloudStack, _l) { - var replaceListViewItem = function($detailView, newData) { - var $row = $detailView.data('list-view-row'); + var replaceListViewItem = function($detailView, newData, options) { + var $row = $detailView ? $detailView.data('list-view-row') : + options.$row; if (!$row) return; @@ -32,7 +33,9 @@ $row: $row, data: $.extend(jsonObj, newData), after: function($newRow) { - $detailView.data('list-view-row', $newRow); + if ($detailView) { + $detailView.data('list-view-row', $newRow); + } setTimeout(function() { $('.data-table').dataTable('selectRow', $newRow.index()); @@ -42,11 +45,13 @@ } // Refresh detail view context - $.extend( - $detailView.data('view-args').context[ - $detailView.data('view-args').section - ][0], newData - ); + if ($detailView) { + $.extend( + $detailView.data('view-args').context[ + $detailView.data('view-args').section + ][0], newData + ); + } }; /** @@ -125,6 +130,7 @@ args = args ? args : {}; var $item = args.$item; + var $row = $detailView.data('list-view-row'); notification.desc = messages.notification(args.messageArgs); notification._custom = $.extend(args._custom ? args._custom : {}, { @@ -140,11 +146,14 @@ viewArgs.onActionComplete(); } - if (!$detailView.parents('html').size()) return; + if (!$detailView.parents('html').size()) { + replaceListViewItem(null, args.data, { $row: $row }); + return; + } + replaceListViewItem($detailView, args.data); $loading.remove(); $detailView.removeClass('detail-view-loading-state'); - replaceListViewItem($detailView, args.data); if (!noRefresh) { updateTabContent(args.data); From b30e39b0e30f61bc7c485fa537649bd32d418795 Mon Sep 17 00:00:00 2001 From: Edison Su Date: Fri, 19 Apr 2013 18:36:44 -0700 Subject: [PATCH 354/607] CLOUDSTACK-1392: add create template from snapshot and volume --- .../storage/image/ImageServiceImpl.java | 85 ++++++++++++++++++- .../motion/AncientDataMotionStrategy.java | 5 +- .../cloud/template/TemplateManagerImpl.java | 17 +++- 3 files changed, 97 insertions(+), 10 deletions(-) diff --git a/engine/storage/image/src/org/apache/cloudstack/storage/image/ImageServiceImpl.java b/engine/storage/image/src/org/apache/cloudstack/storage/image/ImageServiceImpl.java index 5898b1b0794..99b1013f964 100644 --- a/engine/storage/image/src/org/apache/cloudstack/storage/image/ImageServiceImpl.java +++ b/engine/storage/image/src/org/apache/cloudstack/storage/image/ImageServiceImpl.java @@ -21,11 +21,13 @@ package org.apache.cloudstack.storage.image; import javax.inject.Inject; import org.apache.cloudstack.engine.subsystem.api.storage.CommandResult; +import org.apache.cloudstack.engine.subsystem.api.storage.CopyCommandResult; import org.apache.cloudstack.engine.subsystem.api.storage.CreateCmdResult; import org.apache.cloudstack.engine.subsystem.api.storage.DataObject; import org.apache.cloudstack.engine.subsystem.api.storage.DataStore; import org.apache.cloudstack.engine.subsystem.api.storage.ImageService; import org.apache.cloudstack.engine.subsystem.api.storage.ObjectInDataStoreStateMachine; +import org.apache.cloudstack.engine.subsystem.api.storage.ObjectInDataStoreStateMachine.Event; import org.apache.cloudstack.engine.subsystem.api.storage.SnapshotInfo; import org.apache.cloudstack.engine.subsystem.api.storage.TemplateEvent; import org.apache.cloudstack.engine.subsystem.api.storage.TemplateInfo; @@ -37,6 +39,7 @@ import org.apache.cloudstack.framework.async.AsyncRpcConext; import org.apache.cloudstack.storage.datastore.DataObjectManager; import org.apache.cloudstack.storage.datastore.ObjectInDataStoreManager; import org.apache.cloudstack.storage.image.store.TemplateObject; +import org.apache.cloudstack.storage.motion.DataMotionService; import org.apache.log4j.Logger; import org.springframework.stereotype.Component; @@ -49,6 +52,8 @@ public class ImageServiceImpl implements ImageService { ObjectInDataStoreManager objectInDataStoreMgr; @Inject DataObjectManager dataObjectMgr; + @Inject + DataMotionService motionSrv; class CreateTemplateContext extends AsyncRpcConext { final TemplateInfo srcTemplate; @@ -140,17 +145,91 @@ public class ImageServiceImpl implements ImageService { return null; } + private class CopyTemplateContext extends AsyncRpcConext { + final AsyncCallFuture future; + final DataObject object; + /** + * @param callback + */ + public CopyTemplateContext(AsyncCompletionCallback callback, AsyncCallFuture future, DataObject object) { + super(callback); + this.future = future; + this.object = object; + } + + } @Override public AsyncCallFuture createTemplateFromSnapshotAsync( SnapshotInfo snapshot, TemplateInfo template, DataStore store) { - // TODO Auto-generated method stub + AsyncCallFuture future = new AsyncCallFuture(); + DataObject templateOnStore = null; + try { + templateOnStore = store.create(template); + templateOnStore.processEvent(Event.CreateOnlyRequested); + + CopyTemplateContext context = new CopyTemplateContext(null, future, templateOnStore); + AsyncCallbackDispatcher caller = AsyncCallbackDispatcher.create(this); + caller.setCallback(caller.getTarget().copyTemplateAsyncCallback(null, null)) + .setContext(context); + this.motionSrv.copyAsync(snapshot, templateOnStore, caller); + } catch (Exception e) { + s_logger.debug("Failed to create template: " + template.getId() + "from snapshot: " + snapshot.getId() + ", due to " + e.toString()); + if (templateOnStore != null) { + try { + templateOnStore.processEvent(Event.OperationFailed); + } catch (Exception e1) { + + } + } + CommandResult result = new CommandResult(); + result.setResult(e.toString()); + future.complete(result); + } + return future; + } + + protected Void copyTemplateAsyncCallback(AsyncCallbackDispatcher callback, CopyTemplateContext context) { + CopyCommandResult result = callback.getResult(); + AsyncCallFuture future = context.future; + DataObject object = context.object; + CommandResult res = new CommandResult(); + if (result.isFailed()) { + res.setResult(result.getResult()); + object.processEvent(Event.OperationFailed); + } else { + object.processEvent(Event.OperationSuccessed); + } + future.complete(res); return null; } @Override public AsyncCallFuture createTemplateFromVolumeAsync( VolumeInfo volume, TemplateInfo template, DataStore store) { - // TODO Auto-generated method stub - return null; + AsyncCallFuture future = new AsyncCallFuture(); + DataObject templateOnStore = null; + try { + templateOnStore = store.create(template); + templateOnStore.processEvent(Event.CreateOnlyRequested); + + CopyTemplateContext context = new CopyTemplateContext(null, future, templateOnStore); + AsyncCallbackDispatcher caller = AsyncCallbackDispatcher.create(this); + caller.setCallback(caller.getTarget().copyTemplateAsyncCallback(null, null)) + .setContext(context); + this.motionSrv.copyAsync(volume, templateOnStore, caller); + } catch (Exception e) { + s_logger.debug("Failed to create template: " + template.getId() + "from volume: " + volume.getId() + ", due to " + e.toString()); + if (templateOnStore != null) { + try { + templateOnStore.processEvent(Event.OperationFailed); + } catch (Exception e1) { + + } + } + CommandResult result = new CommandResult(); + result.setResult(e.toString()); + future.complete(result); + } + return future; } } diff --git a/engine/storage/src/org/apache/cloudstack/storage/motion/AncientDataMotionStrategy.java b/engine/storage/src/org/apache/cloudstack/storage/motion/AncientDataMotionStrategy.java index ad9238a937d..a6880c3f548 100644 --- a/engine/storage/src/org/apache/cloudstack/storage/motion/AncientDataMotionStrategy.java +++ b/engine/storage/src/org/apache/cloudstack/storage/motion/AncientDataMotionStrategy.java @@ -668,9 +668,7 @@ public class AncientDataMotionStrategy implements DataMotionStrategy { String checkSum = this.templateMgr .getChecksum(hostId, answer.getPath()); - Transaction txn = Transaction.currentTxn(); - txn.start(); privateTemplate.setChecksum(checkSum); templateDao.update(privateTemplate.getId(), privateTemplate); @@ -685,8 +683,9 @@ public class AncientDataMotionStrategy implements DataMotionStrategy { templateHostVO.setLastUpdated(new Date()); templateHostVO.setSize(answer.getVirtualSize()); templateHostVO.setPhysicalSize(answer.getphysicalSize()); + templateHostDao.persist(templateHostVO); - txn.close(); + return answer; } diff --git a/server/src/com/cloud/template/TemplateManagerImpl.java b/server/src/com/cloud/template/TemplateManagerImpl.java index 576440a2ce7..c7eaa64335e 100755 --- a/server/src/com/cloud/template/TemplateManagerImpl.java +++ b/server/src/com/cloud/template/TemplateManagerImpl.java @@ -1716,8 +1716,17 @@ public class TemplateManagerImpl extends ManagerBase implements TemplateManager, try { TemplateInfo tmplInfo = this.tmplFactory.getTemplate(templateId); - snapshot = _snapshotDao.findById(snapshotId); - ZoneScope scope = new ZoneScope(snapshot.getDataCenterId()); + ZoneScope scope = null; + Long zoneId = null; + if (snapshotId != null) { + snapshot = _snapshotDao.findById(snapshotId); + zoneId = snapshot.getDataCenterId(); + + } else if (volumeId != null) { + volume = _volumeDao.findById(volumeId); + zoneId = volume.getDataCenterId(); + } + scope = new ZoneScope(zoneId); List store = this.dataStoreMgr.getImageStores(scope); if (store.size() > 1) { throw new CloudRuntimeException("muliple image data store, don't know which one to use"); @@ -1727,7 +1736,6 @@ public class TemplateManagerImpl extends ManagerBase implements TemplateManager, SnapshotInfo snapInfo = this.snapshotFactory.getSnapshot(snapshotId); future = this.imageSvr.createTemplateFromSnapshotAsync(snapInfo, tmplInfo, store.get(0)); } else if (volumeId != null) { - volume = _volumeDao.findById(volumeId); VolumeInfo volInfo = this.volFactory.getVolume(volumeId); future = this.imageSvr.createTemplateFromVolumeAsync(volInfo, tmplInfo, store.get(0)); } else { @@ -1748,7 +1756,7 @@ public class TemplateManagerImpl extends ManagerBase implements TemplateManager, UsageEventVO usageEvent = new UsageEventVO( EventTypes.EVENT_TEMPLATE_CREATE, privateTemplate.getAccountId(), - snapshot.getDataCenterId(), + zoneId, privateTemplate.getId(), privateTemplate.getName(), null, privateTemplate.getSourceTemplateId(), privateTemplate.getSize()); @@ -1971,6 +1979,7 @@ public class TemplateManagerImpl extends ManagerBase implements TemplateManager, } } privateTemplate.setSourceTemplateId(sourceTemplateId); + privateTemplate.setImageDataStoreId(1); VMTemplateVO template = this._tmpltDao.persist(privateTemplate); // Increment the number of templates From df039aab7f36d221bd9bf1800166fbcbe461c46d Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Mon, 22 Apr 2013 13:30:12 -0700 Subject: [PATCH 355/607] CLOUDSTACK-1730: cloudstack UI - IPv6 - network menu - guest network detailView - add IPv6 Gateway, IPv6 CIDR. --- ui/scripts/network.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ui/scripts/network.js b/ui/scripts/network.js index f9a8778a806..9ba725a8574 100755 --- a/ui/scripts/network.js +++ b/ui/scripts/network.js @@ -1031,6 +1031,11 @@ networkcidr:{label:'Network CIDR'}, + ip6gateway: { label: 'IPv6 Gateway' }, + + ip6cidr: { label: 'IPv6 CIDR' }, + + reservediprange:{label:'Reserved IP Range'}, From c9c2c5902d0e9bc865683529a90d968686512425 Mon Sep 17 00:00:00 2001 From: Alena Prokharchyk Date: Mon, 22 Apr 2013 12:05:49 -0700 Subject: [PATCH 356/607] CLOUDSTACK-751: added a support for blacklisting certain routes on a zone level so they can't be used when create Static Route for VPC Private Gateway --- .../src/com/cloud/configuration/Config.java | 17 +++++--- .../ConfigurationManagerImpl.java | 12 +++++- .../src/com/cloud/dc/dao/DataCenterDao.java | 2 + .../com/cloud/dc/dao/DataCenterDaoImpl.java | 8 ++++ .../com/cloud/network/vpc/VpcManagerImpl.java | 42 ++++++++++++++++++- 5 files changed, 73 insertions(+), 8 deletions(-) diff --git a/server/src/com/cloud/configuration/Config.java b/server/src/com/cloud/configuration/Config.java index 4d1185a973b..dbcbc5332d0 100755 --- a/server/src/com/cloud/configuration/Config.java +++ b/server/src/com/cloud/configuration/Config.java @@ -16,7 +16,10 @@ // under the License. package com.cloud.configuration; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.StringTokenizer; import org.apache.cloudstack.engine.subsystem.api.storage.StoragePoolAllocator; @@ -26,6 +29,7 @@ import com.cloud.ha.HighAvailabilityManager; import com.cloud.hypervisor.Hypervisor.HypervisorType; import com.cloud.network.NetworkManager; import com.cloud.network.router.VpcVirtualNetworkApplianceManager; +import com.cloud.network.vpc.VpcManager; import com.cloud.server.ManagementServer; import com.cloud.storage.StorageManager; import com.cloud.storage.secondary.SecondaryStorageVmManager; @@ -34,10 +38,6 @@ import com.cloud.template.TemplateManager; import com.cloud.vm.UserVmManager; import com.cloud.vm.snapshot.VMSnapshotManager; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; - public enum Config { // Alert @@ -400,7 +400,10 @@ public enum Config { VMSnapshotMax("Advanced", VMSnapshotManager.class, Integer.class, "vmsnapshot.max", "10", "Maximum vm snapshots for a vm", null), VMSnapshotCreateWait("Advanced", VMSnapshotManager.class, Integer.class, "vmsnapshot.create.wait", "1800", "In second, timeout for create vm snapshot", null), - CloudDnsName("Advanced", ManagementServer.class, String.class, "cloud.dns.name", "default", " DNS name of the cloud", null); + CloudDnsName("Advanced", ManagementServer.class, String.class, "cloud.dns.name", "default", " DNS name of the cloud", null), + + BlacklistedRoutes("Advanced", VpcManager.class, String.class, "blacklisted.routes", null, "Routes that are blacklisted, can not be used for Static Routes creation for the VPC Private Gateway", + "routes", ConfigurationParameterScope.zone.toString()); private final String _category; @@ -532,6 +535,8 @@ public enum Config { return "StorageManager"; } else if (_componentClass == TemplateManager.class) { return "TemplateManager"; + } else if (_componentClass == VpcManager.class) { + return "VpcManager"; }else { return "none"; } diff --git a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java index b5734a290ce..a2a62919eff 100755 --- a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java +++ b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java @@ -342,7 +342,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati } DcDetailVO dcDetailVO = _zoneDetailsDao.findDetail(resourceId, name.toLowerCase()); if (dcDetailVO == null) { - dcDetailVO = new DcDetailVO(dcDetailVO.getId(), name, value); + dcDetailVO = new DcDetailVO(zone.getId(), name, value); _zoneDetailsDao.persist(dcDetailVO); } else { dcDetailVO.setValue(value); @@ -584,6 +584,16 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati if (!NetUtils.verifyInstanceName(value)) { return "Instance name can not contain hyphen, spaces and plus sign"; } + } else if (range.equals("routes")) { + String[] routes = value.split(","); + for (String route : routes) { + if (route != null) { + String routeToVerify = route.trim(); + if (!NetUtils.isValidCIDR(routeToVerify)) { + throw new InvalidParameterValueException("Invalid value for blacklisted route: " + route); + } + } + } } else { String[] options = range.split(","); for (String option : options) { diff --git a/server/src/com/cloud/dc/dao/DataCenterDao.java b/server/src/com/cloud/dc/dao/DataCenterDao.java index ee228f1ab5b..e54b9bbbe29 100755 --- a/server/src/com/cloud/dc/dao/DataCenterDao.java +++ b/server/src/com/cloud/dc/dao/DataCenterDao.java @@ -77,4 +77,6 @@ public interface DataCenterDao extends GenericDao { List findZonesByDomainId(Long domainId, String keyword); List findByKeyword(String keyword); + + List listAllZones(); } diff --git a/server/src/com/cloud/dc/dao/DataCenterDaoImpl.java b/server/src/com/cloud/dc/dao/DataCenterDaoImpl.java index 2a6c2ecb252..4afd640d314 100755 --- a/server/src/com/cloud/dc/dao/DataCenterDaoImpl.java +++ b/server/src/com/cloud/dc/dao/DataCenterDaoImpl.java @@ -401,4 +401,12 @@ public class DataCenterDaoImpl extends GenericDaoBase implem txn.commit(); return result; } + + @Override + public List listAllZones(){ + SearchCriteria sc = NameSearch.create(); + List dcs = listBy(sc); + + return dcs; + } } diff --git a/server/src/com/cloud/network/vpc/VpcManagerImpl.java b/server/src/com/cloud/network/vpc/VpcManagerImpl.java index dbd36ae0cf7..425f551b049 100644 --- a/server/src/com/cloud/network/vpc/VpcManagerImpl.java +++ b/server/src/com/cloud/network/vpc/VpcManagerImpl.java @@ -39,11 +39,14 @@ import org.springframework.stereotype.Component; import com.cloud.configuration.Config; import com.cloud.configuration.ConfigurationManager; +import com.cloud.configuration.ConfigurationVO; import com.cloud.configuration.Resource.ResourceType; import com.cloud.configuration.dao.ConfigurationDao; import com.cloud.dc.DataCenter; +import com.cloud.dc.DataCenterVO; import com.cloud.dc.Vlan.VlanType; import com.cloud.dc.VlanVO; +import com.cloud.dc.dao.DataCenterDao; import com.cloud.dc.dao.VlanDao; import com.cloud.deploy.DeployDestination; import com.cloud.event.ActionEvent; @@ -92,6 +95,7 @@ import com.cloud.offerings.NetworkOfferingServiceMapVO; import com.cloud.offerings.dao.NetworkOfferingServiceMapDao; import com.cloud.org.Grouping; import com.cloud.projects.Project.ListProjectResourcesCriteria; +import com.cloud.server.ConfigurationServer; import com.cloud.server.ResourceTag.TaggedResourceType; import com.cloud.tags.ResourceTagVO; import com.cloud.tags.dao.ResourceTagDao; @@ -115,7 +119,6 @@ import com.cloud.utils.db.SearchCriteria.Op; import com.cloud.utils.db.Transaction; import com.cloud.utils.exception.CloudRuntimeException; import com.cloud.utils.net.NetUtils; -import com.cloud.vm.DomainRouterVO; import com.cloud.vm.ReservationContext; import com.cloud.vm.ReservationContextImpl; import com.cloud.vm.dao.DomainRouterDao; @@ -175,11 +178,17 @@ public class VpcManagerImpl extends ManagerBase implements VpcManager, VpcProvis ResourceLimitService _resourceLimitMgr; @Inject VpcServiceMapDao _vpcSrvcDao; + @Inject + DataCenterDao _dcDao; + @Inject + ConfigurationServer _configServer; private final ScheduledExecutorService _executor = Executors.newScheduledThreadPool(1, new NamedThreadFactory("VpcChecker")); private List vpcElements = null; private final List nonSupportedServices = Arrays.asList(Service.SecurityGroup, Service.Firewall); private final List supportedProviders = Arrays.asList(Provider.VPCVirtualRouter, Provider.NiciraNvp); + + private Map> zoneBlackListedRoutes; int _cleanupInterval; int _maxNetworks; @@ -231,6 +240,26 @@ public class VpcManagerImpl extends ManagerBase implements VpcManager, VpcProvis IpAddressSearch.join("virtualNetworkVlanSB", virtualNetworkVlanSB, IpAddressSearch.entity().getVlanId(), virtualNetworkVlanSB.entity().getId(), JoinBuilder.JoinType.INNER); IpAddressSearch.done(); + //populate blacklisted routes + List zones = _dcDao.listAllZones(); + zoneBlackListedRoutes = new HashMap>(); + for (DataCenterVO zone : zones) { + List confs = _configServer.getConfigListByScope(Config.ConfigurationParameterScope.zone.toString(), zone.getId()); + for (ConfigurationVO conf : confs) { + String routeStr = conf.getValue(); + if (conf.getName().equalsIgnoreCase(Config.BlacklistedRoutes.key()) && routeStr != null && !routeStr.isEmpty()) { + String[] routes = routeStr.split(","); + Set cidrs = new HashSet(); + for (String route : routes) { + cidrs.add(route); + } + + zoneBlackListedRoutes.put(zone.getId(), cidrs); + break; + } + } + } + return true; } @@ -1653,6 +1682,17 @@ public class VpcManagerImpl extends ManagerBase implements VpcManager, VpcProvis if (NetUtils.isNetworksOverlap(vpc.getCidr(), NetUtils.getLinkLocalCIDR())) { throw new InvalidParameterValueException("CIDR should be outside of link local cidr " + NetUtils.getLinkLocalCIDR()); } + + //3) Verify against blacklisted routes + Set cidrBlackList = zoneBlackListedRoutes.get(vpc.getZoneId()); + + if (cidrBlackList != null && !cidrBlackList.isEmpty()) { + for (String blackListedRoute : cidrBlackList) { + if (NetUtils.isNetworksOverlap(blackListedRoute, cidr)) { + throw new InvalidParameterValueException("The static gateway cidr overlaps with one of the blacklisted routes of the VPC zone"); + } + } + } Transaction txn = Transaction.currentTxn(); txn.start(); From 922b51ca79f7658b8391d0be2bf894617834d6a5 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Mon, 22 Apr 2013 14:02:58 -0700 Subject: [PATCH 357/607] Fix review step label -- should be step 7, not 6 --- ui/index.jsp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ui/index.jsp b/ui/index.jsp index 1fbd6622194..bbb8b368131 100644 --- a/ui/index.jsp +++ b/ui/index.jsp @@ -91,7 +91,7 @@ under the License.
  • 4
  • 5
  • 6
  • -
  • 6
  • +
  • 7
  • @@ -329,7 +329,7 @@ under the License.
    - +
    From 27900695f4146630ef424fda57eca33379dfdfee Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Mon, 22 Apr 2013 14:04:47 -0700 Subject: [PATCH 358/607] CLOUDSTACK-1735: cloudstack UI - IPv6 - instances detailView - Nics tab - add IPv6 IP Address, IPv6 Gateway, IPv6 CIDR field. --- ui/scripts/instances.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ui/scripts/instances.js b/ui/scripts/instances.js index bd8b7f64c09..3a43c608ac1 100644 --- a/ui/scripts/instances.js +++ b/ui/scripts/instances.js @@ -1326,10 +1326,15 @@ { name: { label: 'label.name', header: true }, networkname: {label: 'Network Name' }, - ipaddress: { label: 'label.ip.address' }, type: { label: 'label.type' }, + ipaddress: { label: 'label.ip.address' }, gateway: { label: 'label.gateway' }, netmask: { label: 'label.netmask' }, + + ip6address: { label: 'IPv6 IP Address' }, + ip6gateway: { label: 'IPv6 Gateway' }, + ip6cidr: { label: 'IPv6 CIDR' }, + isdefault: { label: 'label.is.default', converter: function(data) { From b9d8955f4d9467467baa33416c4f939bdb76e08b Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Mon, 22 Apr 2013 14:24:03 -0700 Subject: [PATCH 359/607] CLOUDSTACK-1617: cloudstack UI - IPv6 - zone wizard - hide IPv6 DNS 1, IPv6 DNS2 when Advanced SG-Enabled mode is selected. --- ui/scripts/zoneWizard.js | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/ui/scripts/zoneWizard.js b/ui/scripts/zoneWizard.js index aa2c2facb7c..b28258544b7 100755 --- a/ui/scripts/zoneWizard.js +++ b/ui/scripts/zoneWizard.js @@ -323,23 +323,30 @@ preFilter: function(args) { var $form = args.$form; - if (args.data['network-model'] == 'Basic') { + if (args.data['network-model'] == 'Basic') { //Basic zone args.$form.find('[rel=networkOfferingId]').show(); args.$form.find('[rel=guestcidraddress]').hide(); - args.$form.find('[rel=ip6dns1]').hide(); - args.$form.find('[rel=ip6dns2]').hide(); + + args.$form.find('[rel=ip6dns1]').hide(); + args.$form.find('[rel=ip6dns2]').hide(); } - else { //args.data['network-model'] == 'Advanced' + else { //Advanced zone args.$form.find('[rel=networkOfferingId]').hide(); - if(args.data["zone-advanced-sg-enabled"] != "on") + if(args.data["zone-advanced-sg-enabled"] != "on") { //Advanced SG-disabled zone args.$form.find('[rel=guestcidraddress]').show(); - else //args.data["zone-advanced-sg-enabled"] == "on - args.$form.find('[rel=guestcidraddress]').hide(); - - args.$form.find('[rel=ip6dns1]').show(); - args.$form.find('[rel=ip6dns2]').show(); - } + + args.$form.find('[rel=ip6dns1]').show(); + args.$form.find('[rel=ip6dns2]').show(); + } + else { //Advanced SG-enabled zone + args.$form.find('[rel=guestcidraddress]').hide(); + + args.$form.find('[rel=ip6dns1]').hide(); + args.$form.find('[rel=ip6dns2]').hide(); + } + + } setTimeout(function() { if ($form.find('input[name=ispublic]').is(':checked')) { From b2b8f0e9f48e529d936f9cd976d0fd5389f340f5 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Mon, 22 Apr 2013 15:07:31 -0700 Subject: [PATCH 360/607] CLOUDSTACK-2010: cloudstack UI - IPv6 - Infrastructure menu - zone detail - add IPv6 DNS1, IPv6 DNS 2 field. --- ui/scripts/system.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/ui/scripts/system.js b/ui/scripts/system.js index a92506bb2b2..20580650a9e 100644 --- a/ui/scripts/system.js +++ b/ui/scripts/system.js @@ -4893,14 +4893,16 @@ var array1 = []; array1.push("&name=" +todb(args.data.name)); array1.push("&dns1=" + todb(args.data.dns1)); - array1.push("&dns2=" + todb(args.data.dns2)); //dns2 can be empty ("") when passed to API + array1.push("&dns2=" + todb(args.data.dns2)); //dns2 can be empty ("") when passed to API, so a user gets to update this field from an existing value to blank. + array1.push("&ip6dns1=" + todb(args.data.ip6dns1)); //p6dns1 can be empty ("") when passed to API, so a user gets to update this field from an existing value to blank. + array1.push("&ip6dns2=" + todb(args.data.ip6dns2)); //ip6dns2 can be empty ("") when passed to API, so a user gets to update this field from an existing value to blank. if (selectedZoneObj.networktype == "Advanced" && args.data.guestcidraddress) { array1.push("&guestcidraddress=" + todb(args.data.guestcidraddress)); } array1.push("&internaldns1=" + todb(args.data.internaldns1)); - array1.push("&internaldns2=" + todb(args.data.internaldns2)); //internaldns2 can be empty ("") when passed to API + array1.push("&internaldns2=" + todb(args.data.internaldns2)); //internaldns2 can be empty ("") when passed to API, so a user gets to update this field from an existing value to blank. array1.push("&domain=" + todb(args.data.domain)); array1.push("&localstorageenabled=" + (args.data.localstorageenabled == 'on')); $.ajax({ @@ -4938,6 +4940,8 @@ allocationstate: { label: 'label.allocation.state' }, dns1: { label: 'label.dns.1', isEditable: true, validation: { required: true } }, dns2: { label: 'label.dns.2', isEditable: true }, + ip6dns1: { label: 'IPv6 DNS1', isEditable: true }, + ip6dns2: { label: 'IPv6 DNS2', isEditable: true }, internaldns1: { label: 'label.internal.dns.1', isEditable: true, validation: { required: true } }, internaldns2: { label: 'label.internal.dns.2', isEditable: true }, domainname: { label: 'label.domain' }, @@ -4950,8 +4954,8 @@ localstorageenabled: { label: 'label.local.storage.enabled', isBoolean: true, - isEditable: true, - converter:cloudStack.converters.toBooleanText + isEditable: true, + converter:cloudStack.converters.toBooleanText } } ], From e23d6b2af414a5789800a5b848f1a527dfdf66ce Mon Sep 17 00:00:00 2001 From: Jessica Tomechak Date: Mon, 22 Apr 2013 23:07:29 -0700 Subject: [PATCH 361/607] CLOUDSTACK-1561. Docs. Update VM Snapshots section. --- docs/en-US/vm-snapshots.xml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/docs/en-US/vm-snapshots.xml b/docs/en-US/vm-snapshots.xml index 8d4bcf9bca1..3e72fe40ff6 100644 --- a/docs/en-US/vm-snapshots.xml +++ b/docs/en-US/vm-snapshots.xml @@ -24,8 +24,8 @@
    Virtual Machine Snapshots for VMware (VMware hosts only) - In addition to the existing &PRODUCT; ability to snapshot VM volumes, - you can now take a VM snapshot to preserve all of the VM's state and data. + In addition to the existing &PRODUCT; ability to snapshot individual VM volumes, + you can now take a VM snapshot to preserve all the VM's data volumes as well as (optionally) its CPU/memory state. This is useful for quick restore of a VM. For example, you can snapshot a VM, then make changes such as software upgrades. If anything goes wrong, simply restore the VM to its previous state using the previously saved VM snapshot. @@ -51,7 +51,9 @@ If a VM has some stored snapshots, you can't attach new volume to the VM or delete any existing volumes. If you change the volumes on the VM, it would become impossible to restore the VM snapshot - which was created with the previous volume structure. + which was created with the previous volume structure. + If you want to attach a volume to such a VM, first delete its snapshots. + VM snapshots which include both data volumes and memory can't be kept if you change the VM's service offering. Any existing VM snapshots of this type will be discarded. @@ -72,7 +74,7 @@
    Configuring VM Snapshots The cloud administrator can use global configuration variables to control the behavior of VM snapshots. - To set these variables, go through the Global Settings are of the UI. + To set these variables, go through the Global Settings area of the &PRODUCT; UI. From 7dd88fbbc6e26097454ff8e387dbcc971d590dc4 Mon Sep 17 00:00:00 2001 From: Mice Xia Date: Tue, 23 Apr 2013 14:26:28 +0800 Subject: [PATCH 362/607] fix CLOUDSTACK-2139 When VM is live migrated to a different host , stopped and started , It starts on the original host where it was before live migration. --- server/src/com/cloud/vm/VirtualMachineManagerImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java index b613917edd7..c1f3f1533aa 100755 --- a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java +++ b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java @@ -1159,7 +1159,7 @@ public class VirtualMachineManagerImpl extends ManagerBase implements VirtualMac _workDao.update(work.getId(), work); } - return stateTransitTo(vm, Event.OperationSucceeded, null, null); + return stateTransitTo(vm, Event.OperationSucceeded, null); } catch (NoTransitionException e) { s_logger.warn(e.getMessage()); return false; From f6fb4d2f6a9abe6f00ce359691bfe843f6b88895 Mon Sep 17 00:00:00 2001 From: Mice Xia Date: Tue, 23 Apr 2013 14:44:59 +0800 Subject: [PATCH 363/607] fix CLOUDSTACK-2142 migrateVirtua lMachine() API errors out when passing a valid uuid for storageid. --- .../apache/cloudstack/api/command/admin/vm/MigrateVMCmd.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/src/org/apache/cloudstack/api/command/admin/vm/MigrateVMCmd.java b/api/src/org/apache/cloudstack/api/command/admin/vm/MigrateVMCmd.java index ddba78ea083..e9779ce6135 100644 --- a/api/src/org/apache/cloudstack/api/command/admin/vm/MigrateVMCmd.java +++ b/api/src/org/apache/cloudstack/api/command/admin/vm/MigrateVMCmd.java @@ -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; From bdd5634924db84144c05887c6552c89aa4e78051 Mon Sep 17 00:00:00 2001 From: Hugo Trippaers Date: Tue, 23 Apr 2013 14:54:41 +0200 Subject: [PATCH 364/607] CLOUDSTACK-2152 Set REALVER properly --- packaging/centos63/package.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/packaging/centos63/package.sh b/packaging/centos63/package.sh index d9d5b1c81f2..faa089b73fa 100755 --- a/packaging/centos63/package.sh +++ b/packaging/centos63/package.sh @@ -75,6 +75,7 @@ if echo $VERSION | grep SNAPSHOT ; then DEFPRE="-D_prerelease 1" DEFREL="-D_rel SNAPSHOT" else + REALVER=`echo $VERSION` DEFVER="-D_ver $REALVER" DEFPRE= DEFREL= From 9abc21ceb98dd9064b7816e3f675637cbc54726c Mon Sep 17 00:00:00 2001 From: Chip Childers Date: Tue, 23 Apr 2013 16:35:39 +0100 Subject: [PATCH 365/607] Adding an optional env variable for DEB packaging to pick up additional profiles to package Signed-off-by: Chip Childers Conflicts: debian/rules --- debian/rules | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/debian/rules b/debian/rules index f5f68aba03d..c5875e75c99 100755 --- a/debian/rules +++ b/debian/rules @@ -34,8 +34,9 @@ build: build-indep build-indep: build-indep-stamp build-indep-stamp: configure - mvn -Pawsapi package -DskipTests -Dsystemvm \ - -Dcs.replace.properties=replace.properties.tmp + mvn package -Pawsapi -DskipTests -Dsystemvm \ + -Dcs.replace.properties=replace.properties.tmp \ + ${ACS_BUILD_OPTS} touch $@ clean: From 2712ddda26551117fea0149a7a5f7aceeedac3b1 Mon Sep 17 00:00:00 2001 From: Prasanna Santhanam Date: Tue, 23 Apr 2013 20:38:14 +0530 Subject: [PATCH 366/607] CLOUDSTACK-2154: create account command returns user response Fix the annotation so cloudmonkey, marvin and apidocs can process the response of createAccount as AccountResponse and not UserResponse as was previously mapped. Signed-off-by: Prasanna Santhanam --- .../command/admin/account/CreateAccountCmd.java | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/api/src/org/apache/cloudstack/api/command/admin/account/CreateAccountCmd.java b/api/src/org/apache/cloudstack/api/command/admin/account/CreateAccountCmd.java index 95d0d07d9ce..cc74eb2007e 100644 --- a/api/src/org/apache/cloudstack/api/command/admin/account/CreateAccountCmd.java +++ b/api/src/org/apache/cloudstack/api/command/admin/account/CreateAccountCmd.java @@ -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()); From ba4b8f170569ea5e04cfdae37cee043aaa3ee3a6 Mon Sep 17 00:00:00 2001 From: Alena Prokharchyk Date: Tue, 23 Apr 2013 12:19:14 -0700 Subject: [PATCH 367/607] LOUDSTACK-751: changed the way the code retrieves the blacklisted.routes config. Now it always reads it from the DB while before we used to load it only on the management server start, and the update happened only after MS restart --- .../ConfigurationManagerImpl.java | 3 +- .../com/cloud/network/vpc/VpcManagerImpl.java | 53 +++++++------------ 2 files changed, 22 insertions(+), 34 deletions(-) diff --git a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java index a2a62919eff..d5e405d5395 100755 --- a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java +++ b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java @@ -590,7 +590,8 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati if (route != null) { String routeToVerify = route.trim(); if (!NetUtils.isValidCIDR(routeToVerify)) { - throw new InvalidParameterValueException("Invalid value for blacklisted route: " + route); + throw new InvalidParameterValueException("Invalid value for blacklisted route: " + route + ". Valid format is list" + + " of cidrs separated by coma. Example: 10.1.1.0/24,192.168.0.0/24"); } } } diff --git a/server/src/com/cloud/network/vpc/VpcManagerImpl.java b/server/src/com/cloud/network/vpc/VpcManagerImpl.java index 425f551b049..224a6800326 100644 --- a/server/src/com/cloud/network/vpc/VpcManagerImpl.java +++ b/server/src/com/cloud/network/vpc/VpcManagerImpl.java @@ -39,11 +39,9 @@ import org.springframework.stereotype.Component; import com.cloud.configuration.Config; import com.cloud.configuration.ConfigurationManager; -import com.cloud.configuration.ConfigurationVO; import com.cloud.configuration.Resource.ResourceType; import com.cloud.configuration.dao.ConfigurationDao; import com.cloud.dc.DataCenter; -import com.cloud.dc.DataCenterVO; import com.cloud.dc.Vlan.VlanType; import com.cloud.dc.VlanVO; import com.cloud.dc.dao.DataCenterDao; @@ -187,9 +185,7 @@ public class VpcManagerImpl extends ManagerBase implements VpcManager, VpcProvis private List vpcElements = null; private final List nonSupportedServices = Arrays.asList(Service.SecurityGroup, Service.Firewall); private final List supportedProviders = Arrays.asList(Provider.VPCVirtualRouter, Provider.NiciraNvp); - - private Map> zoneBlackListedRoutes; - + int _cleanupInterval; int _maxNetworks; SearchBuilder IpAddressSearch; @@ -240,26 +236,6 @@ public class VpcManagerImpl extends ManagerBase implements VpcManager, VpcProvis IpAddressSearch.join("virtualNetworkVlanSB", virtualNetworkVlanSB, IpAddressSearch.entity().getVlanId(), virtualNetworkVlanSB.entity().getId(), JoinBuilder.JoinType.INNER); IpAddressSearch.done(); - //populate blacklisted routes - List zones = _dcDao.listAllZones(); - zoneBlackListedRoutes = new HashMap>(); - for (DataCenterVO zone : zones) { - List confs = _configServer.getConfigListByScope(Config.ConfigurationParameterScope.zone.toString(), zone.getId()); - for (ConfigurationVO conf : confs) { - String routeStr = conf.getValue(); - if (conf.getName().equalsIgnoreCase(Config.BlacklistedRoutes.key()) && routeStr != null && !routeStr.isEmpty()) { - String[] routes = routeStr.split(","); - Set cidrs = new HashSet(); - for (String route : routes) { - cidrs.add(route); - } - - zoneBlackListedRoutes.put(zone.getId(), cidrs); - break; - } - } - } - return true; } @@ -1684,14 +1660,8 @@ public class VpcManagerImpl extends ManagerBase implements VpcManager, VpcProvis } //3) Verify against blacklisted routes - Set cidrBlackList = zoneBlackListedRoutes.get(vpc.getZoneId()); - - if (cidrBlackList != null && !cidrBlackList.isEmpty()) { - for (String blackListedRoute : cidrBlackList) { - if (NetUtils.isNetworksOverlap(blackListedRoute, cidr)) { - throw new InvalidParameterValueException("The static gateway cidr overlaps with one of the blacklisted routes of the VPC zone"); - } - } + if (isCidrBlacklisted(cidr, vpc.getZoneId())) { + throw new InvalidParameterValueException("The static gateway cidr overlaps with one of the blacklisted routes of the zone the VPC belongs to"); } Transaction txn = Transaction.currentTxn(); @@ -1713,6 +1683,23 @@ public class VpcManagerImpl extends ManagerBase implements VpcManager, VpcProvis return newRoute; } + protected boolean isCidrBlacklisted(String cidr, long zoneId) { + String routesStr = _configServer.getConfigValue(Config.BlacklistedRoutes.key(), Config.ConfigurationParameterScope.zone.toString(), zoneId); + if (routesStr != null && !routesStr.isEmpty()) { + String[] cidrBlackList = routesStr.split(","); + + if (cidrBlackList != null && cidrBlackList.length > 0) { + for (String blackListedRoute : cidrBlackList) { + if (NetUtils.isNetworksOverlap(blackListedRoute, cidr)) { + return true; + } + } + } + } + + return false; + } + @Override public Pair, Integer> listStaticRoutes(ListStaticRoutesCmd cmd) { Long id = cmd.getId(); From 35e2072660d20b538bf6929d9c68eecb16ac8318 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Tue, 23 Apr 2013 11:23:49 -0700 Subject: [PATCH 368/607] CLOUDSTACK-2120: mixed zone management - extend listVolumes API to return zone type. --- .../api/response/VolumeResponse.java | 8 ++ .../api/query/dao/VolumeJoinDaoImpl.java | 3 +- .../com/cloud/api/query/vo/VolumeJoinVO.java | 15 +++ setup/db/db/schema-410to420.sql | 102 ++++++++++++++++++ 4 files changed, 127 insertions(+), 1 deletion(-) diff --git a/api/src/org/apache/cloudstack/api/response/VolumeResponse.java b/api/src/org/apache/cloudstack/api/response/VolumeResponse.java index d5054f0bc26..b928fcd90d0 100644 --- a/api/src/org/apache/cloudstack/api/response/VolumeResponse.java +++ b/api/src/org/apache/cloudstack/api/response/VolumeResponse.java @@ -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; } diff --git a/server/src/com/cloud/api/query/dao/VolumeJoinDaoImpl.java b/server/src/com/cloud/api/query/dao/VolumeJoinDaoImpl.java index 495c0ebc18c..a7a0bf0b435 100644 --- a/server/src/com/cloud/api/query/dao/VolumeJoinDaoImpl.java +++ b/server/src/com/cloud/api/query/dao/VolumeJoinDaoImpl.java @@ -86,7 +86,8 @@ public class VolumeJoinDaoImpl extends GenericDaoBase implem volResponse.setZoneId(volume.getDataCenterUuid()); volResponse.setZoneName(volume.getDataCenterName()); - + volResponse.setZoneType(volume.getDataCenterType()); + volResponse.setVolumeType(volume.getVolumeType().toString()); volResponse.setDeviceId(volume.getDeviceId()); diff --git a/server/src/com/cloud/api/query/vo/VolumeJoinVO.java b/server/src/com/cloud/api/query/vo/VolumeJoinVO.java index 4f6b35bab82..8a4bfe5c0fa 100644 --- a/server/src/com/cloud/api/query/vo/VolumeJoinVO.java +++ b/server/src/com/cloud/api/query/vo/VolumeJoinVO.java @@ -117,6 +117,9 @@ public class VolumeJoinVO extends BaseViewVO implements ControlledViewEntity { @Column(name="data_center_name") private String dataCenterName; + + @Column(name="data_center_type") + private String dataCenterType; @Column(name="vm_id") private long vmId; @@ -1004,8 +1007,20 @@ public class VolumeJoinVO extends BaseViewVO implements ControlledViewEntity { this.dataCenterName = dataCenterName; } + + + public String getDataCenterType() { + return dataCenterType; + } + + public void setDataCenterType(String dataCenterType) { + this.dataCenterType = dataCenterType; + } + + + public long getPodId() { return podId; } diff --git a/setup/db/db/schema-410to420.sql b/setup/db/db/schema-410to420.sql index 10cdbbad6f9..ac52f530578 100644 --- a/setup/db/db/schema-410to420.sql +++ b/setup/db/db/schema-410to420.sql @@ -544,6 +544,108 @@ CREATE VIEW `cloud`.`affinity_group_view` AS left join `cloud`.`user_vm` ON user_vm.id = vm_instance.id; +DROP VIEW IF EXISTS `cloud`.`volume_view`; +CREATE VIEW `cloud`.`volume_view` AS + select + volumes.id, + volumes.uuid, + volumes.name, + volumes.device_id, + volumes.volume_type, + volumes.size, + volumes.created, + volumes.state, + volumes.attached, + volumes.removed, + volumes.pod_id, + account.id account_id, + account.uuid account_uuid, + account.account_name account_name, + account.type account_type, + domain.id domain_id, + domain.uuid domain_uuid, + domain.name domain_name, + domain.path domain_path, + projects.id project_id, + projects.uuid project_uuid, + projects.name project_name, + data_center.id data_center_id, + data_center.uuid data_center_uuid, + data_center.name data_center_name, + data_center.networktype data_center_type, + vm_instance.id vm_id, + vm_instance.uuid vm_uuid, + vm_instance.name vm_name, + vm_instance.state vm_state, + vm_instance.vm_type, + user_vm.display_name vm_display_name, + volume_host_ref.size volume_host_size, + volume_host_ref.created volume_host_created, + volume_host_ref.format, + volume_host_ref.download_pct, + volume_host_ref.download_state, + volume_host_ref.error_str, + disk_offering.id disk_offering_id, + disk_offering.uuid disk_offering_uuid, + disk_offering.name disk_offering_name, + disk_offering.display_text disk_offering_display_text, + disk_offering.use_local_storage, + disk_offering.system_use, + storage_pool.id pool_id, + storage_pool.uuid pool_uuid, + storage_pool.name pool_name, + cluster.hypervisor_type, + vm_template.id template_id, + vm_template.uuid template_uuid, + vm_template.extractable, + vm_template.type template_type, + resource_tags.id tag_id, + resource_tags.uuid tag_uuid, + resource_tags.key tag_key, + resource_tags.value tag_value, + resource_tags.domain_id tag_domain_id, + resource_tags.account_id tag_account_id, + resource_tags.resource_id tag_resource_id, + resource_tags.resource_uuid tag_resource_uuid, + resource_tags.resource_type tag_resource_type, + resource_tags.customer tag_customer, + async_job.id job_id, + async_job.uuid job_uuid, + async_job.job_status job_status, + async_job.account_id job_account_id + from + `cloud`.`volumes` + inner join + `cloud`.`account` ON volumes.account_id = account.id + inner join + `cloud`.`domain` ON volumes.domain_id = domain.id + left join + `cloud`.`projects` ON projects.project_account_id = account.id + left join + `cloud`.`data_center` ON volumes.data_center_id = data_center.id + left join + `cloud`.`vm_instance` ON volumes.instance_id = vm_instance.id + left join + `cloud`.`user_vm` ON user_vm.id = vm_instance.id + left join + `cloud`.`volume_host_ref` ON volumes.id = volume_host_ref.volume_id + and volumes.data_center_id = volume_host_ref.zone_id + left join + `cloud`.`disk_offering` ON volumes.disk_offering_id = disk_offering.id + left join + `cloud`.`storage_pool` ON volumes.pool_id = storage_pool.id + left join + `cloud`.`cluster` ON storage_pool.cluster_id = cluster.id + left join + `cloud`.`vm_template` ON volumes.template_id = vm_template.id + left join + `cloud`.`resource_tags` ON resource_tags.resource_id = volumes.id + and resource_tags.resource_type = 'Volume' + left join + `cloud`.`async_job` ON async_job.instance_id = volumes.id + and async_job.instance_type = 'Volume' + and async_job.job_status = 0; + CREATE TABLE `cloud`.`external_cisco_vnmc_devices` ( `id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT 'id', `uuid` varchar(255) UNIQUE, From 16ba999bf1102938779f0b773984695b75ccd77e Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Tue, 23 Apr 2013 12:25:34 -0700 Subject: [PATCH 369/607] CLOUDSTACK-2120: mixed zone management - extend listNetworks API to return zone type. --- .../apache/cloudstack/api/response/NetworkResponse.java | 7 +++++++ server/src/com/cloud/api/ApiResponseHelper.java | 1 + 2 files changed, 8 insertions(+) diff --git a/api/src/org/apache/cloudstack/api/response/NetworkResponse.java b/api/src/org/apache/cloudstack/api/response/NetworkResponse.java index cd32dede3c8..3f366e2e576 100644 --- a/api/src/org/apache/cloudstack/api/response/NetworkResponse.java +++ b/api/src/org/apache/cloudstack/api/response/NetworkResponse.java @@ -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; } diff --git a/server/src/com/cloud/api/ApiResponseHelper.java b/server/src/com/cloud/api/ApiResponseHelper.java index a7d6165e6ae..84dc46e52f4 100755 --- a/server/src/com/cloud/api/ApiResponseHelper.java +++ b/server/src/com/cloud/api/ApiResponseHelper.java @@ -2354,6 +2354,7 @@ public class ApiResponseHelper implements ResponseGenerator { if (zone != null) { response.setZoneId(zone.getUuid()); response.setZoneName(zone.getName()); + response.setZoneType(zone.getNetworkType().toString()); } if (network.getPhysicalNetworkId() != null) { PhysicalNetworkVO pnet = ApiDBUtils.findPhysicalNetworkById(network.getPhysicalNetworkId()); From f7f1279d81f32a908b552f38f724e4d5ba4dab7e Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Tue, 23 Apr 2013 13:01:09 -0700 Subject: [PATCH 370/607] CLOUDSTACK-2120: mixed zone management - extend listTemplates API to return zone type. --- .../apache/cloudstack/api/response/TemplateResponse.java | 7 +++++++ server/src/com/cloud/api/ApiResponseHelper.java | 1 + 2 files changed, 8 insertions(+) diff --git a/api/src/org/apache/cloudstack/api/response/TemplateResponse.java b/api/src/org/apache/cloudstack/api/response/TemplateResponse.java index ed933ff18c3..896154aa9e9 100644 --- a/api/src/org/apache/cloudstack/api/response/TemplateResponse.java +++ b/api/src/org/apache/cloudstack/api/response/TemplateResponse.java @@ -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; } diff --git a/server/src/com/cloud/api/ApiResponseHelper.java b/server/src/com/cloud/api/ApiResponseHelper.java index 84dc46e52f4..0b996c98b38 100755 --- a/server/src/com/cloud/api/ApiResponseHelper.java +++ b/server/src/com/cloud/api/ApiResponseHelper.java @@ -1449,6 +1449,7 @@ public class ApiResponseHelper implements ResponseGenerator { // Add the zone ID templateResponse.setZoneId(datacenter.getUuid()); templateResponse.setZoneName(datacenter.getName()); + templateResponse.setZoneType(datacenter.getNetworkType().toString()); } boolean isAdmin = false; From 6230e5b77bf701494e3b416a5b7cd04adacfcd24 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Tue, 23 Apr 2013 13:46:36 -0700 Subject: [PATCH 371/607] CLOUDSTACK-2120 - mixed zone management - extend listIsos API to return zone type. --- server/src/com/cloud/api/ApiResponseHelper.java | 1 + 1 file changed, 1 insertion(+) diff --git a/server/src/com/cloud/api/ApiResponseHelper.java b/server/src/com/cloud/api/ApiResponseHelper.java index 0b996c98b38..f4567c0a236 100755 --- a/server/src/com/cloud/api/ApiResponseHelper.java +++ b/server/src/com/cloud/api/ApiResponseHelper.java @@ -1738,6 +1738,7 @@ public class ApiResponseHelper implements ResponseGenerator { if (datacenter != null) { isoResponse.setZoneId(datacenter.getUuid()); isoResponse.setZoneName(datacenter.getName()); + isoResponse.setZoneType(datacenter.getNetworkType().toString()); } // If the user is an admin, add the template download status From 15e2bc463f05ff8b77f6b6a79bbcb391216778d8 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Tue, 23 Apr 2013 14:03:35 -0700 Subject: [PATCH 372/607] CLOUDSTACK-2120: mixed zone management - extend listSnapshots API to return zone type. --- .../api/response/SnapshotResponse.java | 16 ++++++++++++++++ server/src/com/cloud/api/ApiResponseHelper.java | 6 ++++++ 2 files changed, 22 insertions(+) diff --git a/api/src/org/apache/cloudstack/api/response/SnapshotResponse.java b/api/src/org/apache/cloudstack/api/response/SnapshotResponse.java index 5b77fb2f360..7484ac965fd 100644 --- a/api/src/org/apache/cloudstack/api/response/SnapshotResponse.java +++ b/api/src/org/apache/cloudstack/api/response/SnapshotResponse.java @@ -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 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 tags) { this.tags = tags; } diff --git a/server/src/com/cloud/api/ApiResponseHelper.java b/server/src/com/cloud/api/ApiResponseHelper.java index f4567c0a236..ba5322f0938 100755 --- a/server/src/com/cloud/api/ApiResponseHelper.java +++ b/server/src/com/cloud/api/ApiResponseHelper.java @@ -443,6 +443,12 @@ public class ApiResponseHelper implements ResponseGenerator { snapshotResponse.setVolumeId(volume.getUuid()); snapshotResponse.setVolumeName(volume.getName()); snapshotResponse.setVolumeType(volume.getVolumeType().name()); + + DataCenter zone = ApiDBUtils.findZoneById(volume.getDataCenterId()); + if (zone != null) { + snapshotResponse.setZoneName(zone.getName()); + snapshotResponse.setZoneType(zone.getNetworkType().toString()); + } } snapshotResponse.setCreated(snapshot.getCreated()); snapshotResponse.setName(snapshot.getName()); From 04a2b2d326c34e234e78852b28fa18a5f96fcc00 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Tue, 23 Apr 2013 16:32:19 -0700 Subject: [PATCH 373/607] CLOUDSTACK-2120: mixed zone management - extend listPods, listClusters, listHosts, listStoragePools, listSystemVms, listRouters API to return zone type. --- .../api/response/ClusterResponse.java | 9 +- .../api/response/DomainRouterResponse.java | 11 + .../cloudstack/api/response/HostResponse.java | 9 +- .../cloudstack/api/response/PodResponse.java | 9 +- .../api/response/StoragePoolResponse.java | 15 +- .../api/response/SystemVmResponse.java | 11 + .../src/com/cloud/api/ApiResponseHelper.java | 3 + .../query/dao/DomainRouterJoinDaoImpl.java | 1 + .../cloud/api/query/dao/HostJoinDaoImpl.java | 1 + .../api/query/dao/StoragePoolJoinDaoImpl.java | 1 + .../api/query/vo/DomainRouterJoinVO.java | 12 + .../com/cloud/api/query/vo/HostJoinVO.java | 11 + .../cloud/api/query/vo/StoragePoolJoinVO.java | 11 + setup/db/db/schema-410to420.sql | 230 +++++++++++++++++- 14 files changed, 328 insertions(+), 6 deletions(-) diff --git a/api/src/org/apache/cloudstack/api/response/ClusterResponse.java b/api/src/org/apache/cloudstack/api/response/ClusterResponse.java index a90acde6145..cfd772d7115 100644 --- a/api/src/org/apache/cloudstack/api/response/ClusterResponse.java +++ b/api/src/org/apache/cloudstack/api/response/ClusterResponse.java @@ -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; } diff --git a/api/src/org/apache/cloudstack/api/response/DomainRouterResponse.java b/api/src/org/apache/cloudstack/api/response/DomainRouterResponse.java index b2bc02e9b83..79c8596a8d1 100644 --- a/api/src/org/apache/cloudstack/api/response/DomainRouterResponse.java +++ b/api/src/org/apache/cloudstack/api/response/DomainRouterResponse.java @@ -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; } diff --git a/api/src/org/apache/cloudstack/api/response/HostResponse.java b/api/src/org/apache/cloudstack/api/response/HostResponse.java index 687687d37fc..be1a4b443be 100644 --- a/api/src/org/apache/cloudstack/api/response/HostResponse.java +++ b/api/src/org/apache/cloudstack/api/response/HostResponse.java @@ -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; } diff --git a/api/src/org/apache/cloudstack/api/response/PodResponse.java b/api/src/org/apache/cloudstack/api/response/PodResponse.java index f31c289217e..471cac1aa47 100644 --- a/api/src/org/apache/cloudstack/api/response/PodResponse.java +++ b/api/src/org/apache/cloudstack/api/response/PodResponse.java @@ -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; } diff --git a/api/src/org/apache/cloudstack/api/response/StoragePoolResponse.java b/api/src/org/apache/cloudstack/api/response/StoragePoolResponse.java index e034b17e8ea..4411ddcb112 100644 --- a/api/src/org/apache/cloudstack/api/response/StoragePoolResponse.java +++ b/api/src/org/apache/cloudstack/api/response/StoragePoolResponse.java @@ -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; @@ -126,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; } diff --git a/api/src/org/apache/cloudstack/api/response/SystemVmResponse.java b/api/src/org/apache/cloudstack/api/response/SystemVmResponse.java index 8d2798a9d04..3439dc025e3 100644 --- a/api/src/org/apache/cloudstack/api/response/SystemVmResponse.java +++ b/api/src/org/apache/cloudstack/api/response/SystemVmResponse.java @@ -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; } diff --git a/server/src/com/cloud/api/ApiResponseHelper.java b/server/src/com/cloud/api/ApiResponseHelper.java index ba5322f0938..cd0158d074e 100755 --- a/server/src/com/cloud/api/ApiResponseHelper.java +++ b/server/src/com/cloud/api/ApiResponseHelper.java @@ -817,6 +817,7 @@ public class ApiResponseHelper implements ResponseGenerator { if (zone != null) { podResponse.setZoneId(zone.getUuid()); podResponse.setZoneName(zone.getName()); + podResponse.setZoneType(zone.getNetworkType().toString()); } podResponse.setNetmask(NetUtils.getCidrNetmask(pod.getCidrSize())); podResponse.setStartIp(ipRange[0]); @@ -961,6 +962,7 @@ public class ApiResponseHelper implements ResponseGenerator { if (dc != null) { clusterResponse.setZoneId(dc.getUuid()); clusterResponse.setZoneName(dc.getName()); + clusterResponse.setZoneType(dc.getNetworkType().toString()); } clusterResponse.setHypervisorType(cluster.getHypervisorType().toString()); clusterResponse.setClusterType(cluster.getClusterType().toString()); @@ -1165,6 +1167,7 @@ public class ApiResponseHelper implements ResponseGenerator { if (zone != null) { vmResponse.setZoneId(zone.getUuid()); vmResponse.setZoneName(zone.getName()); + vmResponse.setZoneType(zone.getNetworkType().toString()); vmResponse.setDns1(zone.getDns1()); vmResponse.setDns2(zone.getDns2()); } diff --git a/server/src/com/cloud/api/query/dao/DomainRouterJoinDaoImpl.java b/server/src/com/cloud/api/query/dao/DomainRouterJoinDaoImpl.java index 488c4e494e1..25cd62faf7b 100644 --- a/server/src/com/cloud/api/query/dao/DomainRouterJoinDaoImpl.java +++ b/server/src/com/cloud/api/query/dao/DomainRouterJoinDaoImpl.java @@ -148,6 +148,7 @@ public class DomainRouterJoinDaoImpl extends GenericDaoBase implements hostResponse.setOsCategoryId(host.getOsCategoryUuid()); hostResponse.setOsCategoryName(host.getOsCategoryName()); hostResponse.setZoneName(host.getZoneName()); + hostResponse.setZoneType(host.getZoneType().toString()); hostResponse.setPodName(host.getPodName()); if ( host.getClusterId() > 0) { hostResponse.setClusterName(host.getClusterName()); diff --git a/server/src/com/cloud/api/query/dao/StoragePoolJoinDaoImpl.java b/server/src/com/cloud/api/query/dao/StoragePoolJoinDaoImpl.java index 34b88baa897..260ff4d18e3 100644 --- a/server/src/com/cloud/api/query/dao/StoragePoolJoinDaoImpl.java +++ b/server/src/com/cloud/api/query/dao/StoragePoolJoinDaoImpl.java @@ -77,6 +77,7 @@ public class StoragePoolJoinDaoImpl extends GenericDaoBase Date: Wed, 24 Apr 2013 11:12:34 +0800 Subject: [PATCH 374/607] fix CLOUDSTACK-2149 and related unit test --- .../src/com/cloud/vm/UserVmManagerImpl.java | 2 +- .../test/com/cloud/vm/UserVmManagerTest.java | 45 +++++++++++-------- 2 files changed, 28 insertions(+), 19 deletions(-) diff --git a/server/src/com/cloud/vm/UserVmManagerImpl.java b/server/src/com/cloud/vm/UserVmManagerImpl.java index 1843f602cb0..35d09fc5d00 100755 --- a/server/src/com/cloud/vm/UserVmManagerImpl.java +++ b/server/src/com/cloud/vm/UserVmManagerImpl.java @@ -4096,7 +4096,7 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use needRestart = true; } - List rootVols = _volsDao.findByInstance(vmId); + List rootVols = _volsDao.findByInstanceAndType(vmId, Volume.Type.ROOT); if (rootVols.isEmpty()) { InvalidParameterValueException ex = new InvalidParameterValueException( "Can not find root volume for VM " + vm.getUuid()); diff --git a/server/test/com/cloud/vm/UserVmManagerTest.java b/server/test/com/cloud/vm/UserVmManagerTest.java index bb1c07b2784..e5e2ff2c0a8 100755 --- a/server/test/com/cloud/vm/UserVmManagerTest.java +++ b/server/test/com/cloud/vm/UserVmManagerTest.java @@ -17,45 +17,54 @@ package com.cloud.vm; +import static org.mockito.Matchers.anyBoolean; +import static org.mockito.Matchers.anyFloat; +import static org.mockito.Matchers.anyInt; +import static org.mockito.Matchers.anyLong; +import static org.mockito.Matchers.eq; +import static org.mockito.Mockito.doNothing; +import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.when; + import java.lang.reflect.Field; import java.util.List; -import com.cloud.api.ApiDBUtils; -import com.cloud.capacity.CapacityManager; -import com.cloud.configuration.ConfigurationManager; -import com.cloud.configuration.dao.ConfigurationDao; -import com.cloud.hypervisor.Hypervisor; -import com.cloud.offering.ServiceOffering; -import com.cloud.service.ServiceOfferingVO; -import com.cloud.user.*; -import com.cloud.vm.dao.VMInstanceDao; import org.apache.cloudstack.api.ServerApiException; import org.apache.cloudstack.api.command.user.vm.RestoreVMCmd; import org.apache.cloudstack.api.command.user.vm.ScaleVMCmd; -import org.apache.log4j.Logger; -import org.junit.Test; import org.junit.Before; +import org.junit.Test; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.mockito.Spy; +import com.cloud.capacity.CapacityManager; +import com.cloud.configuration.ConfigurationManager; +import com.cloud.configuration.dao.ConfigurationDao; import com.cloud.exception.ConcurrentOperationException; import com.cloud.exception.InsufficientCapacityException; import com.cloud.exception.InvalidParameterValueException; import com.cloud.exception.ResourceAllocationException; import com.cloud.exception.ResourceUnavailableException; -import com.cloud.storage.StorageManager; +import com.cloud.hypervisor.Hypervisor; +import com.cloud.offering.ServiceOffering; +import com.cloud.service.ServiceOfferingVO; import com.cloud.storage.VMTemplateVO; +import com.cloud.storage.Volume; import com.cloud.storage.VolumeManager; import com.cloud.storage.VolumeVO; import com.cloud.storage.dao.VMTemplateDao; import com.cloud.storage.dao.VolumeDao; +import com.cloud.user.Account; +import com.cloud.user.AccountManager; +import com.cloud.user.AccountVO; +import com.cloud.user.UserContext; +import com.cloud.user.UserVO; import com.cloud.user.dao.AccountDao; import com.cloud.user.dao.UserDao; import com.cloud.utils.exception.CloudRuntimeException; import com.cloud.vm.dao.UserVmDao; - -import static org.mockito.Mockito.*; +import com.cloud.vm.dao.VMInstanceDao; public class UserVmManagerTest { @@ -127,7 +136,7 @@ public class UserVmManagerTest { doReturn(VirtualMachine.State.Stopped).when(_vmMock).getState(); when(_vmDao.findById(anyLong())).thenReturn(_vmMock); - when(_volsDao.findByInstance(anyLong())).thenReturn(_rootVols); + when(_volsDao.findByInstanceAndType(314L,Volume.Type.ROOT)).thenReturn(_rootVols); doReturn(false).when(_rootVols).isEmpty(); when(_rootVols.get(eq(0))).thenReturn(_volumeMock); doReturn(3L).when(_volumeMock).getTemplateId(); @@ -150,7 +159,7 @@ public class UserVmManagerTest { doReturn(VirtualMachine.State.Running).when(_vmMock).getState(); when(_vmDao.findById(anyLong())).thenReturn(_vmMock); - when(_volsDao.findByInstance(anyLong())).thenReturn(_rootVols); + when(_volsDao.findByInstanceAndType(314L,Volume.Type.ROOT)).thenReturn(_rootVols); doReturn(false).when(_rootVols).isEmpty(); when(_rootVols.get(eq(0))).thenReturn(_volumeMock); doReturn(3L).when(_volumeMock).getTemplateId(); @@ -174,7 +183,7 @@ public class UserVmManagerTest { ConcurrentOperationException, ResourceAllocationException { doReturn(VirtualMachine.State.Running).when(_vmMock).getState(); when(_vmDao.findById(anyLong())).thenReturn(_vmMock); - when(_volsDao.findByInstance(anyLong())).thenReturn(_rootVols); + when(_volsDao.findByInstanceAndType(314L,Volume.Type.ROOT)).thenReturn(_rootVols); doReturn(false).when(_rootVols).isEmpty(); when(_rootVols.get(eq(0))).thenReturn(_volumeMock); doReturn(3L).when(_volumeMock).getTemplateId(); @@ -361,6 +370,6 @@ public class UserVmManagerTest { return serviceOffering; } - + } \ No newline at end of file From 0bca34963686930735e141e39c884289dd19424f Mon Sep 17 00:00:00 2001 From: Radhika PC Date: Wed, 24 Apr 2013 11:33:25 +0530 Subject: [PATCH 375/607] CLOUDSTACK-804 api changes --- docs/en-US/changed-API-commands-4.2.xml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/docs/en-US/changed-API-commands-4.2.xml b/docs/en-US/changed-API-commands-4.2.xml index cbaa2e3fa92..26f10ff6037 100644 --- a/docs/en-US/changed-API-commands-4.2.xml +++ b/docs/en-US/changed-API-commands-4.2.xml @@ -101,6 +101,22 @@ + + UpdatePhysicalNetwork + + Added the following request parameters: + + + vlan (adds a new VLAN range to the existing VLAN range) + + + removelan (removes the specified VLAN range) + + + The removevlan and vlan parameters can be used together. If the VLAN range that you are trying + to remove is in use, the operation will not succeed. + + From 932946bbe2b76c8f87ff429c96e576d3fdc889ef Mon Sep 17 00:00:00 2001 From: Pranav Saxena Date: Wed, 24 Apr 2013 12:19:21 +0530 Subject: [PATCH 376/607] CLOUDSTACK-2164:Add Vlan Button for non-contiguous VLAN Range --- ui/css/cloudstack3.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ui/css/cloudstack3.css b/ui/css/cloudstack3.css index da8e4480f61..1d5d72b48d2 100644 --- a/ui/css/cloudstack3.css +++ b/ui/css/cloudstack3.css @@ -11846,11 +11846,11 @@ div.ui-dialog div.autoscaler div.field-group div.form-container form div.form-it } .addVlanRange .icon { - background-position: -168px -31px; + background-position: -37px -62px; } .addVlanRange:hover .icon { - background-position: -168px -613px; + background-position: -37px -62px; } .resize .icon, From 94d5d3de50cd8d8e9de9703e5874d41a46466109 Mon Sep 17 00:00:00 2001 From: Pranav Saxena Date: Wed, 24 Apr 2013 12:40:38 +0530 Subject: [PATCH 377/607] CLOUDSTACK-2166:UI Support for remove Vlan for the non-contiguous vlan support --- ui/css/cloudstack3.css | 11 ++++++++++ ui/scripts/system.js | 46 ++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 55 insertions(+), 2 deletions(-) diff --git a/ui/css/cloudstack3.css b/ui/css/cloudstack3.css index 1d5d72b48d2..1140d912058 100644 --- a/ui/css/cloudstack3.css +++ b/ui/css/cloudstack3.css @@ -11853,6 +11853,17 @@ div.ui-dialog div.autoscaler div.field-group div.form-container form div.form-it background-position: -37px -62px; } +.removeVlanRange .icon { + + background-position: 1px -92px; +} + +.removeVlanRange:hover .icon{ + + background-position: 1px -92px; +} + + .resize .icon, .updateResourceCount .icon { background-position: -167px -66px; diff --git a/ui/scripts/system.js b/ui/scripts/system.js index 20580650a9e..4f5925c39d2 100644 --- a/ui/scripts/system.js +++ b/ui/scripts/system.js @@ -1036,8 +1036,50 @@ notification:{poll:pollAsyncJobResult} - } + }, + removeVlanRange:{ + label:'Remove VLAN Range', + messages: { + confirm: function(args) { + return 'Are you sure you want to remove an existing VLAN Range from this guest network?'; + }, + notification: function(args) { + return 'VLAN Range removed'; + } + }, + + createForm:{ + title:'Remove VLAN Range', + fields:{ + startvlan: {label:'Vlan Start', validation:{required:true}}, + endvlan:{label:'Vlan End', validation:{required:true}} + } + + }, + + action:function(args){ + + var array1=[]; + if(args.data.startvlan != "" && args.data.endvlan != ""){ + array1.push("&removevlan=" + args.data.startvlan + "-" + args.data.endvlan); + } + $.ajax({ + url: createURL("updatePhysicalNetwork&id=" + selectedPhysicalNetworkObj.id + array1.join("")), + dataType: "json", + success: function(json) { + var jobId = json.updatephysicalnetworkresponse.jobid; + var trafficType = getTrafficType(selectedPhysicalNetworkObj, 'Guest'); + updateTrafficLabels(trafficType, args.data, function() { + args.response.success({ _custom: { jobId: jobId }}); + }); + } + }); + + }, + notification:{poll:pollAsyncJobResult} + + } }, @@ -1120,7 +1162,7 @@ args.response.success({ actionFilter: function() { - var allowedActions = ['edit' , 'addVlanRange']; + var allowedActions = ['edit' , 'addVlanRange','removeVlanRange']; return allowedActions; }, data: selectedPhysicalNetworkObj From b0caae6b33347f36721f28dca1fa12e7b18f1cd1 Mon Sep 17 00:00:00 2001 From: Vijayendra Bhamidipati Date: Wed, 17 Apr 2013 05:36:33 -0700 Subject: [PATCH 378/607] CLOUDSTACK-1086: DeployVirtualMachine userdata enhancements Description: Currently, userdata sent over to the DeployVMCmd and updateVMCmd commands can be upto 2K in length, whether sent over GET or POST. We remove this limitation for POST to change this limit to 32K. Also enabling lazy load on userdata to improve performance during reads of large sized userdata from user VM records. Signed-off-by: Min Chen --- api/src/com/cloud/vm/UserVmService.java | 27 ++- .../org/apache/cloudstack/api/BaseCmd.java | 24 +++ .../api/command/user/vm/DeployVMCmd.java | 12 +- .../api/command/user/vm/UpdateVMCmd.java | 2 +- core/src/com/cloud/vm/UserVmVO.java | 6 +- server/src/com/cloud/api/ApiDispatcher.java | 9 - server/src/com/cloud/api/ApiServer.java | 155 +++++++++++++----- .../src/com/cloud/api/ApiServerService.java | 1 + server/src/com/cloud/api/ApiServlet.java | 6 +- .../src/com/cloud/vm/UserVmManagerImpl.java | 96 +++++++---- .../com/cloud/vm/MockUserVmManagerImpl.java | 48 ++++-- .../com/cloud/vm/dao/UserVmDaoImplTest.java | 43 +++-- .../vm/dao/UserVmDaoTestConfiguration.java | 50 ++++++ .../test/resources/UserVMDaoTestContext.xml | 44 +++++ setup/db/db/schema-410to420.sql | 4 +- .../component/test_deploy_vm_with_userdata.py | 108 ++++++++++++ 16 files changed, 501 insertions(+), 134 deletions(-) create mode 100644 server/test/com/cloud/vm/dao/UserVmDaoTestConfiguration.java create mode 100644 server/test/resources/UserVMDaoTestContext.xml create mode 100644 test/integration/component/test_deploy_vm_with_userdata.py diff --git a/api/src/com/cloud/vm/UserVmService.java b/api/src/com/cloud/vm/UserVmService.java index aa2113617bd..7e89cd3e618 100755 --- a/api/src/com/cloud/vm/UserVmService.java +++ b/api/src/com/cloud/vm/UserVmService.java @@ -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 securityGroupIdList, Account owner, String hostName, String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, - String userData, String sshKeyPair, Map requestedIps, IpAddresses defaultIp, - String keyboard, List affinityGroupIdList) + HTTPMethod httpmethod, String userData, String sshKeyPair, Map requestedIps, + IpAddresses defaultIp, String keyboard, List 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 networkIdList, List securityGroupIdList, - Account owner, String hostName, String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, String userData, String sshKeyPair, Map requestedIps, - IpAddresses defaultIps, String keyboard, List affinityGroupIdList) + Account owner, String hostName, String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, HTTPMethod httpmethod, String userData, String sshKeyPair, + Map requestedIps, IpAddresses defaultIps, String keyboard, List affinityGroupIdList) throws InsufficientCapacityException, ConcurrentOperationException, ResourceUnavailableException, StorageUnavailableException, ResourceAllocationException; /** @@ -327,8 +340,8 @@ public interface UserVmService { */ UserVm createAdvancedVirtualMachine(DataCenter zone, ServiceOffering serviceOffering, VirtualMachineTemplate template, List networkIdList, Account owner, String hostName, String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, - String userData, String sshKeyPair, Map requestedIps, IpAddresses defaultIps, - String keyboard, List affinityGroupIdList) + HTTPMethod httpmethod, String userData, String sshKeyPair, Map requestedIps, + IpAddresses defaultIps, String keyboard, List affinityGroupIdList) throws InsufficientCapacityException, ConcurrentOperationException, ResourceUnavailableException, StorageUnavailableException, ResourceAllocationException; /** diff --git a/api/src/org/apache/cloudstack/api/BaseCmd.java b/api/src/org/apache/cloudstack/api/BaseCmd.java index 42c0680ce0f..200675ddaca 100644 --- a/api/src/org/apache/cloudstack/api/BaseCmd.java +++ b/api/src/org/apache/cloudstack/api/BaseCmd.java @@ -95,6 +95,11 @@ public abstract class BaseCmd { private Object _responseObject = null; private Map 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; diff --git a/api/src/org/apache/cloudstack/api/command/user/vm/DeployVMCmd.java b/api/src/org/apache/cloudstack/api/command/user/vm/DeployVMCmd.java index 70c0159dffe..3ed08d26be0 100755 --- a/api/src/org/apache/cloudstack/api/command/user/vm/DeployVMCmd.java +++ b/api/src/org/apache/cloudstack/api/command/user/vm/DeployVMCmd.java @@ -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") @@ -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(); } @@ -481,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()); } } diff --git a/api/src/org/apache/cloudstack/api/command/user/vm/UpdateVMCmd.java b/api/src/org/apache/cloudstack/api/command/user/vm/UpdateVMCmd.java index ff8fff1c19f..bbf9b259201 100644 --- a/api/src/org/apache/cloudstack/api/command/user/vm/UpdateVMCmd.java +++ b/api/src/org/apache/cloudstack/api/command/user/vm/UpdateVMCmd.java @@ -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; diff --git a/core/src/com/cloud/vm/UserVmVO.java b/core/src/com/cloud/vm/UserVmVO.java index a16eaf9dca0..2e9bdf51b5d 100755 --- a/core/src/com/cloud/vm/UserVmVO.java +++ b/core/src/com/cloud/vm/UserVmVO.java @@ -18,9 +18,11 @@ package com.cloud.vm; import java.util.HashMap; +import javax.persistence.Basic; import javax.persistence.Column; import javax.persistence.DiscriminatorValue; import javax.persistence.Entity; +import javax.persistence.FetchType; import javax.persistence.PrimaryKeyJoinColumn; import javax.persistence.Table; @@ -36,7 +38,8 @@ public class UserVmVO extends VMInstanceVO implements UserVm { @Column(name="iso_id", nullable=true, length=17) private Long isoId = null; - @Column(name="user_data", updatable=true, nullable=true, length=2048) + @Column(name="user_data", updatable=true, nullable=true, length=32768) + @Basic(fetch = FetchType.LAZY) private String userData; @Column(name="display_name", updatable=true, nullable=true) @@ -119,6 +122,7 @@ public class UserVmVO extends VMInstanceVO implements UserVm { return details != null ? details.get(name) : null; } + @Override public void setAccountId(long accountId){ this.accountId = accountId; } diff --git a/server/src/com/cloud/api/ApiDispatcher.java b/server/src/com/cloud/api/ApiDispatcher.java index 925d90a697d..b4437ce6193 100755 --- a/server/src/com/cloud/api/ApiDispatcher.java +++ b/server/src/com/cloud/api/ApiDispatcher.java @@ -27,7 +27,6 @@ import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.Set; import java.util.StringTokenizer; import java.util.regex.Matcher; @@ -56,21 +55,14 @@ import org.apache.cloudstack.api.command.user.event.ListEventsCmd; import org.apache.log4j.Logger; import org.springframework.stereotype.Component; -import com.cloud.async.AsyncCommandQueued; import com.cloud.async.AsyncJobManager; import com.cloud.dao.EntityManager; -import com.cloud.exception.AccountLimitException; -import com.cloud.exception.InsufficientCapacityException; import com.cloud.exception.InvalidParameterValueException; -import com.cloud.exception.PermissionDeniedException; -import com.cloud.exception.ResourceAllocationException; -import com.cloud.exception.ResourceUnavailableException; import com.cloud.user.Account; import com.cloud.user.AccountManager; import com.cloud.user.UserContext; import com.cloud.utils.DateUtil; import com.cloud.utils.ReflectUtil; -import com.cloud.utils.component.ComponentContext; import com.cloud.utils.exception.CSExceptionErrorCode; import com.cloud.utils.exception.CloudRuntimeException; @@ -160,7 +152,6 @@ public class ApiDispatcher { } } } - cmd.execute(); } diff --git a/server/src/com/cloud/api/ApiServer.java b/server/src/com/cloud/api/ApiServer.java index d842819ee48..dd5fd4d5657 100755 --- a/server/src/com/cloud/api/ApiServer.java +++ b/server/src/com/cloud/api/ApiServer.java @@ -16,30 +16,51 @@ // under the License. package com.cloud.api; -import com.cloud.api.response.ApiResponseSerializer; -import com.cloud.async.AsyncCommandQueued; -import com.cloud.async.AsyncJob; -import com.cloud.async.AsyncJobManager; -import com.cloud.async.AsyncJobVO; -import com.cloud.configuration.Config; -import com.cloud.configuration.ConfigurationVO; -import com.cloud.configuration.dao.ConfigurationDao; -import com.cloud.domain.Domain; -import com.cloud.domain.DomainVO; -import com.cloud.event.ActionEventUtils; -import com.cloud.exception.*; -import com.cloud.user.*; -import com.cloud.utils.NumbersUtil; -import com.cloud.utils.Pair; -import com.cloud.utils.StringUtils; -import com.cloud.utils.component.ComponentContext; -import com.cloud.utils.component.PluggableService; -import com.cloud.utils.concurrency.NamedThreadFactory; -import com.cloud.utils.db.SearchCriteria; -import com.cloud.utils.db.Transaction; -import com.cloud.utils.exception.CloudRuntimeException; +import java.io.ByteArrayInputStream; +import java.io.IOException; +import java.io.InterruptedIOException; +import java.net.InetAddress; +import java.net.ServerSocket; +import java.net.Socket; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URLEncoder; +import java.security.SecureRandom; +import java.text.DateFormat; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Date; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.TimeZone; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.ThreadPoolExecutor; +import java.util.concurrent.TimeUnit; + +import javax.annotation.PostConstruct; +import javax.crypto.Mac; +import javax.crypto.spec.SecretKeySpec; +import javax.inject.Inject; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; + import org.apache.cloudstack.acl.APIChecker; -import org.apache.cloudstack.api.*; +import org.apache.cloudstack.api.APICommand; +import org.apache.cloudstack.api.ApiErrorCode; +import org.apache.cloudstack.api.BaseAsyncCmd; +import org.apache.cloudstack.api.BaseAsyncCreateCmd; +import org.apache.cloudstack.api.BaseCmd; +import org.apache.cloudstack.api.BaseListCmd; +import org.apache.cloudstack.api.ResponseObject; +import org.apache.cloudstack.api.ServerApiException; import org.apache.cloudstack.api.command.admin.host.ListHostsCmd; import org.apache.cloudstack.api.command.admin.router.ListRoutersCmd; import org.apache.cloudstack.api.command.admin.storage.ListStoragePoolsCmd; @@ -61,7 +82,13 @@ import org.apache.cloudstack.api.response.ExceptionResponse; import org.apache.cloudstack.api.response.ListResponse; import org.apache.cloudstack.region.RegionManager; import org.apache.commons.codec.binary.Base64; -import org.apache.http.*; +import org.apache.http.ConnectionClosedException; +import org.apache.http.HttpException; +import org.apache.http.HttpRequest; +import org.apache.http.HttpResponse; +import org.apache.http.HttpServerConnection; +import org.apache.http.HttpStatus; +import org.apache.http.NameValuePair; import org.apache.http.client.utils.URLEncodedUtils; import org.apache.http.entity.BasicHttpEntity; import org.apache.http.impl.DefaultHttpResponseFactory; @@ -72,29 +99,54 @@ import org.apache.http.params.BasicHttpParams; import org.apache.http.params.CoreConnectionPNames; import org.apache.http.params.CoreProtocolPNames; import org.apache.http.params.HttpParams; -import org.apache.http.protocol.*; +import org.apache.http.protocol.BasicHttpContext; +import org.apache.http.protocol.BasicHttpProcessor; +import org.apache.http.protocol.HttpContext; +import org.apache.http.protocol.HttpRequestHandler; +import org.apache.http.protocol.HttpRequestHandlerRegistry; +import org.apache.http.protocol.HttpService; +import org.apache.http.protocol.ResponseConnControl; +import org.apache.http.protocol.ResponseContent; +import org.apache.http.protocol.ResponseDate; +import org.apache.http.protocol.ResponseServer; import org.apache.log4j.Logger; import org.springframework.stereotype.Component; -import javax.annotation.PostConstruct; -import javax.crypto.Mac; -import javax.crypto.spec.SecretKeySpec; -import javax.inject.Inject; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InterruptedIOException; -import java.net.*; -import java.security.SecureRandom; -import java.text.DateFormat; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.*; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.LinkedBlockingQueue; -import java.util.concurrent.ThreadPoolExecutor; -import java.util.concurrent.TimeUnit; +import com.cloud.api.response.ApiResponseSerializer; +import com.cloud.async.AsyncCommandQueued; +import com.cloud.async.AsyncJob; +import com.cloud.async.AsyncJobManager; +import com.cloud.async.AsyncJobVO; +import com.cloud.configuration.Config; +import com.cloud.configuration.ConfigurationVO; +import com.cloud.configuration.dao.ConfigurationDao; +import com.cloud.domain.Domain; +import com.cloud.domain.DomainVO; +import com.cloud.event.ActionEventUtils; +import com.cloud.exception.AccountLimitException; +import com.cloud.exception.CloudAuthenticationException; +import com.cloud.exception.InsufficientCapacityException; +import com.cloud.exception.InvalidParameterValueException; +import com.cloud.exception.PermissionDeniedException; +import com.cloud.exception.RequestLimitException; +import com.cloud.exception.ResourceAllocationException; +import com.cloud.exception.ResourceUnavailableException; +import com.cloud.user.Account; +import com.cloud.user.AccountManager; +import com.cloud.user.DomainManager; +import com.cloud.user.User; +import com.cloud.user.UserAccount; +import com.cloud.user.UserContext; +import com.cloud.user.UserVO; +import com.cloud.utils.NumbersUtil; +import com.cloud.utils.Pair; +import com.cloud.utils.StringUtils; +import com.cloud.utils.component.ComponentContext; +import com.cloud.utils.component.PluggableService; +import com.cloud.utils.concurrency.NamedThreadFactory; +import com.cloud.utils.db.SearchCriteria; +import com.cloud.utils.db.Transaction; +import com.cloud.utils.exception.CloudRuntimeException; @Component public class ApiServer implements HttpRequestHandler, ApiServerService { @@ -113,7 +165,7 @@ public class ApiServer implements HttpRequestHandler, ApiServerService { @Inject List _pluggableServices; @Inject List _apiAccessCheckers; - @Inject private RegionManager _regionMgr = null; + @Inject private final RegionManager _regionMgr = null; private static int _workerCount = 0; private static ApiServer s_instance = null; @@ -227,6 +279,9 @@ public class ApiServer implements HttpRequestHandler, ApiServerService { parameterMap.put(param.getName(), new String[] { param.getValue() }); } + // Get the type of http method being used. + parameterMap.put("httpmethod", new String[] { request.getRequestLine().getMethod() }); + // Check responseType, if not among valid types, fallback to JSON if (!(responseType.equals(BaseCmd.RESPONSE_TYPE_JSON) || responseType.equals(BaseCmd.RESPONSE_TYPE_XML))) responseType = BaseCmd.RESPONSE_TYPE_XML; @@ -254,10 +309,12 @@ public class ApiServer implements HttpRequestHandler, ApiServerService { } } + @Override @SuppressWarnings("rawtypes") public String handleRequest(Map params, String responseType, StringBuffer auditTrailSb) throws ServerApiException { String response = null; String[] command = null; + try { command = (String[]) params.get("command"); if (command == null) { @@ -299,6 +356,7 @@ public class ApiServer implements HttpRequestHandler, ApiServerService { cmdObj.configure(); cmdObj.setFullUrlParams(paramMap); cmdObj.setResponseType(responseType); + cmdObj.setHttpMethod(paramMap.get("httpmethod").toString()); // This is where the command is either serialized, or directly dispatched response = queueCommand(cmdObj, paramMap); @@ -530,6 +588,7 @@ public class ApiServer implements HttpRequestHandler, ApiServerService { } } + @Override public boolean verifyRequest(Map requestParameters, Long userId) throws ServerApiException { try { String apiKey = null; @@ -692,10 +751,12 @@ public class ApiServer implements HttpRequestHandler, ApiServerService { return false; } + @Override public Long fetchDomainId(String domainUUID) { return _domainMgr.getDomain(domainUUID).getId(); } + @Override public void loginUser(HttpSession session, String username, String password, Long domainId, String domainPath, String loginIpAddress ,Map requestParameters) throws CloudAuthenticationException { // We will always use domainId first. If that does not exist, we will use domain name. If THAT doesn't exist // we will default to ROOT @@ -770,11 +831,13 @@ public class ApiServer implements HttpRequestHandler, ApiServerService { throw new CloudAuthenticationException("Failed to authenticate user " + username + " in domain " + domainId + "; please provide valid credentials"); } + @Override public void logoutUser(long userId) { _accountMgr.logoutUser(Long.valueOf(userId)); return; } + @Override public boolean verifyUser(Long userId) { User user = _accountMgr.getUserIncludingRemoved(userId); Account account = null; @@ -931,6 +994,7 @@ public class ApiServer implements HttpRequestHandler, ApiServerService { } } + @Override public String getSerializedApiError(int errorCode, String errorText, Map apiCommandParams, String responseType) { String responseName = null; Class cmdClass = null; @@ -965,6 +1029,7 @@ public class ApiServer implements HttpRequestHandler, ApiServerService { return responseText; } + @Override public String getSerializedApiError(ServerApiException ex, Map apiCommandParams, String responseType) { String responseName = null; Class cmdClass = null; diff --git a/server/src/com/cloud/api/ApiServerService.java b/server/src/com/cloud/api/ApiServerService.java index 12d8b52fa83..dac81c665c4 100644 --- a/server/src/com/cloud/api/ApiServerService.java +++ b/server/src/com/cloud/api/ApiServerService.java @@ -21,6 +21,7 @@ import java.util.Map; import javax.servlet.http.HttpSession; import org.apache.cloudstack.api.ServerApiException; + import com.cloud.exception.CloudAuthenticationException; public interface ApiServerService { diff --git a/server/src/com/cloud/api/ApiServlet.java b/server/src/com/cloud/api/ApiServlet.java index 03bfb5f2d49..7525b61e84a 100755 --- a/server/src/com/cloud/api/ApiServlet.java +++ b/server/src/com/cloud/api/ApiServlet.java @@ -299,8 +299,10 @@ public class ApiServlet extends HttpServlet { auditTrailSb.insert(0, "(userId=" + UserContext.current().getCallerUserId() + " accountId=" + UserContext.current().getCaller().getId() + " sessionId=" + (session != null ? session.getId() : null) + ")"); - String response = _apiServer.handleRequest(params, responseType, auditTrailSb); - writeResponse(resp, response != null ? response : "", HttpServletResponse.SC_OK, responseType); + // Add the HTTP method (GET/POST/PUT/DELETE) as well into the params map. + params.put("httpmethod", new String[] { req.getMethod() }); + String response = _apiServer.handleRequest(params, responseType, auditTrailSb); + writeResponse(resp, response != null ? response : "", HttpServletResponse.SC_OK, responseType); } else { if (session != null) { try { diff --git a/server/src/com/cloud/vm/UserVmManagerImpl.java b/server/src/com/cloud/vm/UserVmManagerImpl.java index 35d09fc5d00..45b313fdb5f 100755 --- a/server/src/com/cloud/vm/UserVmManagerImpl.java +++ b/server/src/com/cloud/vm/UserVmManagerImpl.java @@ -32,15 +32,27 @@ import javax.ejb.Local; import javax.inject.Inject; import javax.naming.ConfigurationException; -import com.cloud.api.ApiDBUtils; import org.apache.cloudstack.acl.ControlledEntity.ACLType; import org.apache.cloudstack.acl.SecurityChecker.AccessType; import org.apache.cloudstack.affinity.AffinityGroupVO; import org.apache.cloudstack.affinity.dao.AffinityGroupDao; import org.apache.cloudstack.affinity.dao.AffinityGroupVMMapDao; +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 org.apache.cloudstack.engine.cloud.entity.api.VirtualMachineEntity; @@ -67,6 +79,7 @@ import com.cloud.agent.api.to.VirtualMachineTO; import com.cloud.agent.api.to.VolumeTO; import com.cloud.agent.manager.Commands; import com.cloud.alert.AlertManager; +import com.cloud.api.ApiDBUtils; import com.cloud.api.query.dao.UserVmJoinDao; import com.cloud.api.query.vo.UserVmJoinVO; import com.cloud.async.AsyncJobManager; @@ -405,6 +418,8 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use private int _createprivatetemplatefromvolumewait; private int _createprivatetemplatefromsnapshotwait; private final int MAX_VM_NAME_LEN = 80; + private final int MAX_HTTP_GET_LENGTH = 2 * MAX_USER_DATA_LENGTH_BYTES; + private final int MAX_HTTP_POST_LENGTH = 16 * MAX_USER_DATA_LENGTH_BYTES; @Inject protected OrchestrationService _orchSrvc; @@ -1604,7 +1619,7 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use if (userData != null) { // check and replace newlines userData = userData.replace("\\n", ""); - validateUserData(userData); + validateUserData(userData, cmd.getHttpMethod()); // update userData on domain router. updateUserdata = true; } else { @@ -1926,10 +1941,10 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use @Override public UserVm createBasicSecurityGroupVirtualMachine(DataCenter zone, ServiceOffering serviceOffering, VirtualMachineTemplate template, List securityGroupIdList, Account owner, - String hostName, - String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, - String userData, String sshKeyPair, Map requestedIps, IpAddresses defaultIps, - String keyboard, List affinityGroupIdList) + String hostName, String displayName, Long diskOfferingId, Long diskSize, String group, + HypervisorType hypervisor, HTTPMethod httpmethod, String userData, String sshKeyPair, + Map requestedIps, IpAddresses defaultIps, String keyboard, + List affinityGroupIdList) throws InsufficientCapacityException, ConcurrentOperationException, ResourceUnavailableException, StorageUnavailableException, ResourceAllocationException { Account caller = UserContext.current().getCaller(); @@ -1979,18 +1994,17 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use } return createVirtualMachine(zone, serviceOffering, template, hostName, displayName, owner, diskOfferingId, - diskSize, networkList, securityGroupIdList, group, userData, sshKeyPair, hypervisor, caller, - requestedIps, defaultIps, keyboard, affinityGroupIdList); + diskSize, networkList, securityGroupIdList, group, httpmethod, userData, sshKeyPair, hypervisor, + caller, requestedIps, defaultIps, keyboard, affinityGroupIdList); } @Override public UserVm createAdvancedSecurityGroupVirtualMachine(DataCenter zone, ServiceOffering serviceOffering, VirtualMachineTemplate template, List networkIdList, - List securityGroupIdList, Account owner, String hostName, String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, String userData, - String sshKeyPair, Map requestedIps, - IpAddresses defaultIps, String keyboard, List affinityGroupIdList) - throws InsufficientCapacityException, ConcurrentOperationException, ResourceUnavailableException, - StorageUnavailableException, - ResourceAllocationException { + List securityGroupIdList, Account owner, String hostName, String displayName, Long diskOfferingId, + Long diskSize, String group, HypervisorType hypervisor, HTTPMethod httpmethod, String userData, + String sshKeyPair, Map requestedIps, IpAddresses defaultIps, String keyboard, + List affinityGroupIdList) throws InsufficientCapacityException, ConcurrentOperationException, + ResourceUnavailableException, StorageUnavailableException, ResourceAllocationException { Account caller = UserContext.current().getCaller(); List networkList = new ArrayList(); @@ -2096,15 +2110,15 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use } return createVirtualMachine(zone, serviceOffering, template, hostName, displayName, owner, diskOfferingId, - diskSize, networkList, securityGroupIdList, group, userData, sshKeyPair, hypervisor, caller, - requestedIps, defaultIps, keyboard, affinityGroupIdList); + diskSize, networkList, securityGroupIdList, group, httpmethod, userData, sshKeyPair, hypervisor, + caller, requestedIps, defaultIps, keyboard, affinityGroupIdList); } @Override public UserVm createAdvancedVirtualMachine(DataCenter zone, ServiceOffering serviceOffering, VirtualMachineTemplate template, List networkIdList, Account owner, String hostName, String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, - String userData, String sshKeyPair, Map requestedIps, IpAddresses defaultIps, - String keyboard, List affinityGroupIdList) + HTTPMethod httpmethod, String userData, String sshKeyPair, Map requestedIps, + IpAddresses defaultIps, String keyboard, List affinityGroupIdList) throws InsufficientCapacityException, ConcurrentOperationException, ResourceUnavailableException, StorageUnavailableException, ResourceAllocationException { Account caller = UserContext.current().getCaller(); @@ -2213,8 +2227,8 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use } return createVirtualMachine(zone, serviceOffering, template, hostName, displayName, owner, diskOfferingId, - diskSize, networkList, null, group, userData, sshKeyPair, hypervisor, caller, requestedIps, defaultIps, - keyboard, affinityGroupIdList); + diskSize, networkList, null, group, httpmethod, userData, sshKeyPair, hypervisor, caller, requestedIps, + defaultIps, keyboard, affinityGroupIdList); } @@ -2227,9 +2241,9 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use @DB @ActionEvent(eventType = EventTypes.EVENT_VM_CREATE, eventDescription = "deploying Vm", create = true) protected UserVm createVirtualMachine(DataCenter zone, ServiceOffering serviceOffering, VirtualMachineTemplate template, String hostName, String displayName, Account owner, Long diskOfferingId, - Long diskSize, List networkList, List securityGroupIdList, String group, String userData, - String sshKeyPair, HypervisorType hypervisor, Account caller, Map requestedIps, - IpAddresses defaultIps, String keyboard, List affinityGroupIdList) + Long diskSize, List networkList, List securityGroupIdList, String group, HTTPMethod httpmethod, + String userData, String sshKeyPair, HypervisorType hypervisor, Account caller, Map requestedIps, + IpAddresses defaultIps, String keyboard, List affinityGroupIdList) throws InsufficientCapacityException, ResourceUnavailableException, ConcurrentOperationException, StorageUnavailableException, ResourceAllocationException { _accountMgr.checkAccess(caller, null, true, owner); @@ -2337,7 +2351,7 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use } // check if the user data is correct - validateUserData(userData); + validateUserData(userData, httpmethod); // Find an SSH public key corresponding to the key pair name, if one is // given @@ -2601,22 +2615,36 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use return vm; } - private void validateUserData(String userData) { + private void validateUserData(String userData, HTTPMethod httpmethod) { byte[] decodedUserData = null; if (userData != null) { if (!Base64.isBase64(userData)) { throw new InvalidParameterValueException( "User data is not base64 encoded"); } - if (userData.length() >= 2 * MAX_USER_DATA_LENGTH_BYTES) { - throw new InvalidParameterValueException( - "User data is too long"); - } - decodedUserData = Base64.decodeBase64(userData.getBytes()); - if (decodedUserData.length > MAX_USER_DATA_LENGTH_BYTES) { - throw new InvalidParameterValueException( - "User data is too long"); + // If GET, use 4K. If POST, support upto 32K. + if (httpmethod.equals(HTTPMethod.GET)) { + if (userData.length() >= MAX_HTTP_GET_LENGTH) { + throw new InvalidParameterValueException( + "User data is too long for an http GET request"); + } + decodedUserData = Base64.decodeBase64(userData.getBytes()); + if (decodedUserData.length > MAX_HTTP_GET_LENGTH) { + throw new InvalidParameterValueException( + "User data is too long for GET request"); + } + } else if (httpmethod.equals(HTTPMethod.POST)) { + if (userData.length() >= MAX_HTTP_POST_LENGTH) { + throw new InvalidParameterValueException( + "User data is too long for an http POST request"); + } + decodedUserData = Base64.decodeBase64(userData.getBytes()); + if (decodedUserData.length > MAX_HTTP_POST_LENGTH) { + throw new InvalidParameterValueException( + "User data is too long for POST request"); + } } + if (decodedUserData.length < 1) { throw new InvalidParameterValueException( "User data is too short"); diff --git a/server/test/com/cloud/vm/MockUserVmManagerImpl.java b/server/test/com/cloud/vm/MockUserVmManagerImpl.java index 0d0a8f4a323..d886fd8697f 100644 --- a/server/test/com/cloud/vm/MockUserVmManagerImpl.java +++ b/server/test/com/cloud/vm/MockUserVmManagerImpl.java @@ -23,9 +23,22 @@ import java.util.Map; import javax.ejb.Local; import javax.naming.ConfigurationException; +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 org.springframework.stereotype.Component; @@ -40,13 +53,13 @@ import com.cloud.dc.DataCenter; import com.cloud.deploy.DeployDestination; import com.cloud.exception.ConcurrentOperationException; import com.cloud.exception.InsufficientCapacityException; +import com.cloud.exception.InvalidParameterValueException; import com.cloud.exception.ManagementServerException; +import com.cloud.exception.PermissionDeniedException; import com.cloud.exception.ResourceAllocationException; import com.cloud.exception.ResourceUnavailableException; import com.cloud.exception.StorageUnavailableException; import com.cloud.exception.VirtualMachineMigrationException; -import com.cloud.exception.InvalidParameterValueException; -import com.cloud.exception.PermissionDeniedException; import com.cloud.host.Host; import com.cloud.hypervisor.Hypervisor.HypervisorType; import com.cloud.network.Network; @@ -59,10 +72,9 @@ import com.cloud.template.VirtualMachineTemplate; import com.cloud.user.Account; import com.cloud.uservm.UserVm; import com.cloud.utils.Pair; -import com.cloud.utils.component.Manager; import com.cloud.utils.component.ManagerBase; -import com.cloud.utils.exception.ExecutionException; import com.cloud.utils.exception.CloudRuntimeException; +import com.cloud.utils.exception.ExecutionException; @Component @Local(value = { UserVmManager.class, UserVmService.class }) @@ -329,10 +341,10 @@ public class MockUserVmManagerImpl extends ManagerBase implements UserVmManager, @Override public UserVm createBasicSecurityGroupVirtualMachine(DataCenter zone, ServiceOffering serviceOffering, VirtualMachineTemplate template, List securityGroupIdList, Account owner, - String hostName, String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, String userData, String sshKeyPair, Map requestedIps, - IpAddresses defaultIp, - String keyboard, List affinityGroupIdList) throws InsufficientCapacityException, - ConcurrentOperationException, ResourceUnavailableException, StorageUnavailableException, + String hostName, String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, + HTTPMethod httpmethod, String userData, String sshKeyPair, Map requestedIps, + IpAddresses defaultIp, String keyboard, List affinityGroupIdList) + throws InsufficientCapacityException, ConcurrentOperationException, ResourceUnavailableException, StorageUnavailableException, ResourceAllocationException { // TODO Auto-generated method stub return null; @@ -340,21 +352,21 @@ public class MockUserVmManagerImpl extends ManagerBase implements UserVmManager, @Override public UserVm createAdvancedSecurityGroupVirtualMachine(DataCenter zone, ServiceOffering serviceOffering, VirtualMachineTemplate template, List networkIdList, - List securityGroupIdList, Account owner, String hostName, String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, String userData, - String sshKeyPair, Map requestedIps, - IpAddresses defaultIps, String keyboard, List affinityGroupIdList) - throws InsufficientCapacityException, ConcurrentOperationException, ResourceUnavailableException, - StorageUnavailableException, ResourceAllocationException { + List securityGroupIdList, Account owner, String hostName, String displayName, Long diskOfferingId, Long diskSize, + String group, HypervisorType hypervisor, HTTPMethod httpmethod, String userData, + String sshKeyPair, Map requestedIps, IpAddresses defaultIps, + String keyboard, List affinityGroupIdList) throws InsufficientCapacityException, + ConcurrentOperationException, ResourceUnavailableException, StorageUnavailableException, ResourceAllocationException { // TODO Auto-generated method stub return null; } @Override public UserVm createAdvancedVirtualMachine(DataCenter zone, ServiceOffering serviceOffering, VirtualMachineTemplate template, List networkIdList, Account owner, String hostName, - String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, String userData, String sshKeyPair, Map requestedIps, IpAddresses defaultIps, - String keyboard, List affinityGroupIdList) throws InsufficientCapacityException, - ConcurrentOperationException, ResourceUnavailableException, StorageUnavailableException, - ResourceAllocationException { + String displayName, Long diskOfferingId, Long diskSize, String group, HypervisorType hypervisor, + HTTPMethod httpmethod, String userData, String sshKeyPair, Map requestedIps, + IpAddresses defaultIps, String keyboard, List affinityGroupIdList) throws InsufficientCapacityException, + ConcurrentOperationException, ResourceUnavailableException, StorageUnavailableException, ResourceAllocationException { // TODO Auto-generated method stub return null; } diff --git a/server/test/com/cloud/vm/dao/UserVmDaoImplTest.java b/server/test/com/cloud/vm/dao/UserVmDaoImplTest.java index 0936180383a..12d08ec3b51 100644 --- a/server/test/com/cloud/vm/dao/UserVmDaoImplTest.java +++ b/server/test/com/cloud/vm/dao/UserVmDaoImplTest.java @@ -20,24 +20,47 @@ import javax.inject.Inject; import junit.framework.TestCase; -import com.cloud.hypervisor.Hypervisor.HypervisorType; +import org.apache.commons.lang.RandomStringUtils; +import org.junit.Test; +import com.cloud.hypervisor.Hypervisor; import com.cloud.vm.UserVmVO; import com.cloud.vm.VirtualMachine; - public class UserVmDaoImplTest extends TestCase { @Inject UserVmDao dao; - - public void testPersist() { - - dao.expunge(1000l); - - UserVmVO vo = new UserVmVO(1000l, "instancename", "displayname", 1, HypervisorType.XenServer, 1, true, true, 1, 1, 1, "userdata", "name", null); + + public void makeAndVerifyEntry(Long vmId, String instanceName, String displayName, long templateId, boolean userdataFlag, Hypervisor.HypervisorType hypervisor, + long guestOsId, boolean haEnabled, boolean limitCpuUse, long domainId, long accountId, long serviceOfferingId, String name, Long diskOfferingId) { + + dao.expunge(vmId); + String userdata; + + if (userdataFlag) { + // Generate large userdata to simulate 32k of random string data for userdata submitted through HTTP POST requests. + userdata = RandomStringUtils.randomAlphanumeric(32*1024); + } else { + // Generate normal sized userdata to simulate 2k of random string data. + userdata = RandomStringUtils.randomAlphanumeric(2*1024); + } + + // Persist the data. + UserVmVO vo = new UserVmVO(vmId, instanceName, displayName, templateId, hypervisor, guestOsId, haEnabled, limitCpuUse, domainId, accountId, serviceOfferingId, userdata, name, diskOfferingId); dao.persist(vo); - - vo = dao.findById(1000l); + + vo = dao.findById(vmId); assert (vo.getType() == VirtualMachine.Type.User) : "Incorrect type " + vo.getType(); + + // Check whether the userdata matches what we generated. + assert (vo.getUserData().equals(userdata)) : "User data retrieved does not match userdata generated as input"; + + } + + @Test + public void testPersist() { + Long vmId = 2222l; + makeAndVerifyEntry(vmId, "vm1", "vmdisp1", 1l, false, Hypervisor.HypervisorType.KVM, 1l, false, true, 1l, 1l, 1l, "uservm1", 1l); + makeAndVerifyEntry(vmId, "vm1", "vmdisp1", 1l, true, Hypervisor.HypervisorType.KVM, 1l, false, true, 1l, 1l, 1l, "uservm1", 1l); } } diff --git a/server/test/com/cloud/vm/dao/UserVmDaoTestConfiguration.java b/server/test/com/cloud/vm/dao/UserVmDaoTestConfiguration.java new file mode 100644 index 00000000000..6a63fabd44b --- /dev/null +++ b/server/test/com/cloud/vm/dao/UserVmDaoTestConfiguration.java @@ -0,0 +1,50 @@ +// 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 +// 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.vm.dao; + +import java.io.IOException; + +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.ComponentScan.Filter; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.FilterType; +import org.springframework.core.type.classreading.MetadataReader; +import org.springframework.core.type.classreading.MetadataReaderFactory; +import org.springframework.core.type.filter.TypeFilter; + +import com.cloud.utils.component.SpringComponentScanUtils; + +@Configuration +@ComponentScan(basePackageClasses={ + UserVmDaoImpl.class}, + includeFilters={@Filter(value=UserVmDaoTestConfiguration.Library.class, type=FilterType.CUSTOM)}, + useDefaultFilters=false + ) + +public class UserVmDaoTestConfiguration { + public static class Library implements TypeFilter { + + @Override + public boolean match(MetadataReader mdr, MetadataReaderFactory arg1) throws IOException { + mdr.getClassMetadata().getClassName(); + ComponentScan cs = UserVmDaoTestConfiguration.class.getAnnotation(ComponentScan.class); + return SpringComponentScanUtils.includedInBasePackageClasses(mdr.getClassMetadata().getClassName(), cs); + } + + } +} \ No newline at end of file diff --git a/server/test/resources/UserVMDaoTestContext.xml b/server/test/resources/UserVMDaoTestContext.xml new file mode 100644 index 00000000000..6045f590229 --- /dev/null +++ b/server/test/resources/UserVMDaoTestContext.xml @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/setup/db/db/schema-410to420.sql b/setup/db/db/schema-410to420.sql index cfce81f7fd1..78444fd5576 100644 --- a/setup/db/db/schema-410to420.sql +++ b/setup/db/db/schema-410to420.sql @@ -296,6 +296,8 @@ UPDATE configuration SET value='KVM,XenServer,VMware,BareMetal,Ovm,LXC' WHERE na INSERT INTO `cloud`.`vm_template` (id, unique_name, name, public, created, type, hvm, bits, account_id, url, checksum, enable_password, display_text, format, guest_os_id, featured, cross_zones, hypervisor_type) VALUES (10, 'routing-10', 'SystemVM Template (LXC)', 0, now(), 'SYSTEM', 0, 64, 1, 'http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2', '2755de1f9ef2ce4d6f2bee2efbb4da92', 0, 'SystemVM Template (LXC)', 'QCOW2', 15, 0, 1, 'LXC'); +ALTER TABLE `cloud`.`user_vm` MODIFY user_data TEXT(32768); + -- END: support for LXC CREATE TABLE `cloud`.`vm_snapshots` ( @@ -1107,4 +1109,4 @@ CREATE VIEW `cloud`.`account_view` AS and async_job.instance_type = 'Account' and async_job.job_status = 0; -alter table `cloud_usage`.`usage_network_offering` add column nic_id bigint(20) unsigned NOT NULL; \ No newline at end of file +alter table `cloud_usage`.`usage_network_offering` add column nic_id bigint(20) unsigned NOT NULL; diff --git a/test/integration/component/test_deploy_vm_with_userdata.py b/test/integration/component/test_deploy_vm_with_userdata.py new file mode 100644 index 00000000000..6b5767b6e1e --- /dev/null +++ b/test/integration/component/test_deploy_vm_with_userdata.py @@ -0,0 +1,108 @@ +#!/usr/bin/env python + +import marvin +from marvin import cloudstackTestCase +from marvin.cloudstackTestCase import * +from marvin.integration.lib.base import * + +import unittest +import hashlib +import random +import os +import string + +class TestDeployVmWithUserData(cloudstackTestCase): + """ + This test deploys a virtual machine into a user account + using the small service offering and builtin template + """ + def setUp(self): + password = "password" + + self.apiClient = self.testClient.getApiClient() #Get ourselves an API client + + self.acct = createAccount.createAccountCmd() #The createAccount command + self.acct.accounttype = 0 #We need a regular user. admins have accounttype=1 + self.acct.firstname = 'firstname' + self.acct.lastname = 'lastname' + self.acct.password = password + self.acct.username = 'user1' + self.acct.email = 'user1@user.com' + self.acct.account = 'user1' + self.acct.domainid = 1 #The default ROOT domain + self.acctResponse = self.apiClient.createAccount(self.acct) + + self.debug("Successfully created account: %s, user: %s, id: \ + %s"%(self.acctResponse.account.account, \ + self.acctResponse.account.username, \ + self.acctResponse.account.id)) + + # Generate userdata of 2500 bytes. This is larger than the 2048 bytes limit. + # CS however allows for upto 4K bytes in the code. So this must succeed. + # Overall, the query length must not exceed 4K, for then the json decoder + # will fail this operation at the marvin client side itself. + user_data = ''.join(random.choice(string.ascii_uppercase + string.digits) for x in range(2500)) + + self.virtual_machine = { + "displayname": "Test VM", + "username": "root", + "password": "password", + "ssh_port": 22, + "hypervisor": 'VMware', + "privateport": 22, + "publicport": 22, + "protocol": 'TCP', + } + #self.virtual_machine["userdata"] = base64.b64encode(user_data) + self.virtual_machine["userdata"] = user_data + + def test_DeployVm(self): + """ + Let's start by defining the attributes of our VM that we will be + deploying on CloudStack. We will be assuming a single zone is available + and is configured and all templates are Ready + """ + deployVmCmd = deployVirtualMachine.deployVirtualMachineCmd() + deployVmCmd.zoneid = 1 + deployVmCmd.account = self.acct.account + deployVmCmd.domainid = self.acct.domainid + deployVmCmd.templateid = 7 + deployVmCmd.serviceofferingid = 1 + + # Userdata is passed in the virtual_machine dictionary. + deployVmResponse = VirtualMachine.create( + self.apiClient, + self.virtual_machine, + accountid=self.acct.account, + domainid=self.acct.domainid, + serviceofferingid=deployVmCmd.serviceofferingid, + templateid=deployVmCmd.templateid, + zoneid=deployVmCmd.zoneid + ) + + # At this point our VM is expected to be Running. Let's find out what + # listVirtualMachines tells us about VMs in this account + + listVmCmd = listVirtualMachines.listVirtualMachinesCmd() + listVmCmd.id = deployVmResponse.id + listVmResponse = self.apiClient.listVirtualMachines(listVmCmd) + + self.assertNotEqual(len(listVmResponse), 0, "Check if the list API \ + returns a non-empty response") + + vm = listVmResponse[0] + + self.assertEqual(vm.id, deployVmResponse.id, "Check if the VM returned \ + is the same as the one we deployed") + + + self.assertEqual(vm.state, "Running", "Check if VM has reached \ + a state of running") + + def tearDown(self): + """ + Delete the account created. This will clear the VM belonging to that account as well. + """ + deleteAcct = deleteAccount.deleteAccountCmd() + deleteAcct.id = self.acctResponse.account.id + self.apiClient.deleteAccount(deleteAcct) From 4e9e7937ed5e56cbd7f678b2ed9863a56af16635 Mon Sep 17 00:00:00 2001 From: Prasanna Santhanam Date: Wed, 24 Apr 2013 00:06:44 +0530 Subject: [PATCH 379/607] Fix Vijay's test to use the marvin integratin libararies Changes to marvin_request and base libraries to accomadate POST requests. Additional tests for sending userdata through GET Userdata tests - send size>2k data via GET and POST. Signed-off-by: Prasanna Santhanam --- .../component/test_deploy_vm_with_userdata.py | 108 ------------- .../smoke/test_deploy_vm_with_userdata.py | 144 ++++++++++++++++++ tools/marvin/marvin/cloudstackConnection.py | 34 ++--- tools/marvin/marvin/codegenerator.py | 4 +- tools/marvin/marvin/integration/lib/base.py | 11 +- 5 files changed, 165 insertions(+), 136 deletions(-) delete mode 100644 test/integration/component/test_deploy_vm_with_userdata.py create mode 100644 test/integration/smoke/test_deploy_vm_with_userdata.py diff --git a/test/integration/component/test_deploy_vm_with_userdata.py b/test/integration/component/test_deploy_vm_with_userdata.py deleted file mode 100644 index 6b5767b6e1e..00000000000 --- a/test/integration/component/test_deploy_vm_with_userdata.py +++ /dev/null @@ -1,108 +0,0 @@ -#!/usr/bin/env python - -import marvin -from marvin import cloudstackTestCase -from marvin.cloudstackTestCase import * -from marvin.integration.lib.base import * - -import unittest -import hashlib -import random -import os -import string - -class TestDeployVmWithUserData(cloudstackTestCase): - """ - This test deploys a virtual machine into a user account - using the small service offering and builtin template - """ - def setUp(self): - password = "password" - - self.apiClient = self.testClient.getApiClient() #Get ourselves an API client - - self.acct = createAccount.createAccountCmd() #The createAccount command - self.acct.accounttype = 0 #We need a regular user. admins have accounttype=1 - self.acct.firstname = 'firstname' - self.acct.lastname = 'lastname' - self.acct.password = password - self.acct.username = 'user1' - self.acct.email = 'user1@user.com' - self.acct.account = 'user1' - self.acct.domainid = 1 #The default ROOT domain - self.acctResponse = self.apiClient.createAccount(self.acct) - - self.debug("Successfully created account: %s, user: %s, id: \ - %s"%(self.acctResponse.account.account, \ - self.acctResponse.account.username, \ - self.acctResponse.account.id)) - - # Generate userdata of 2500 bytes. This is larger than the 2048 bytes limit. - # CS however allows for upto 4K bytes in the code. So this must succeed. - # Overall, the query length must not exceed 4K, for then the json decoder - # will fail this operation at the marvin client side itself. - user_data = ''.join(random.choice(string.ascii_uppercase + string.digits) for x in range(2500)) - - self.virtual_machine = { - "displayname": "Test VM", - "username": "root", - "password": "password", - "ssh_port": 22, - "hypervisor": 'VMware', - "privateport": 22, - "publicport": 22, - "protocol": 'TCP', - } - #self.virtual_machine["userdata"] = base64.b64encode(user_data) - self.virtual_machine["userdata"] = user_data - - def test_DeployVm(self): - """ - Let's start by defining the attributes of our VM that we will be - deploying on CloudStack. We will be assuming a single zone is available - and is configured and all templates are Ready - """ - deployVmCmd = deployVirtualMachine.deployVirtualMachineCmd() - deployVmCmd.zoneid = 1 - deployVmCmd.account = self.acct.account - deployVmCmd.domainid = self.acct.domainid - deployVmCmd.templateid = 7 - deployVmCmd.serviceofferingid = 1 - - # Userdata is passed in the virtual_machine dictionary. - deployVmResponse = VirtualMachine.create( - self.apiClient, - self.virtual_machine, - accountid=self.acct.account, - domainid=self.acct.domainid, - serviceofferingid=deployVmCmd.serviceofferingid, - templateid=deployVmCmd.templateid, - zoneid=deployVmCmd.zoneid - ) - - # At this point our VM is expected to be Running. Let's find out what - # listVirtualMachines tells us about VMs in this account - - listVmCmd = listVirtualMachines.listVirtualMachinesCmd() - listVmCmd.id = deployVmResponse.id - listVmResponse = self.apiClient.listVirtualMachines(listVmCmd) - - self.assertNotEqual(len(listVmResponse), 0, "Check if the list API \ - returns a non-empty response") - - vm = listVmResponse[0] - - self.assertEqual(vm.id, deployVmResponse.id, "Check if the VM returned \ - is the same as the one we deployed") - - - self.assertEqual(vm.state, "Running", "Check if VM has reached \ - a state of running") - - def tearDown(self): - """ - Delete the account created. This will clear the VM belonging to that account as well. - """ - deleteAcct = deleteAccount.deleteAccountCmd() - deleteAcct.id = self.acctResponse.account.id - self.apiClient.deleteAccount(deleteAcct) diff --git a/test/integration/smoke/test_deploy_vm_with_userdata.py b/test/integration/smoke/test_deploy_vm_with_userdata.py new file mode 100644 index 00000000000..fd9e320addc --- /dev/null +++ b/test/integration/smoke/test_deploy_vm_with_userdata.py @@ -0,0 +1,144 @@ +# 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. + +from marvin.cloudstackTestCase import cloudstackTestCase +from marvin.integration.lib.base import * +from marvin.integration.lib.common import get_template, get_zone, list_virtual_machines, cleanup_resources +from nose.plugins.attrib import attr + +import random +import string + +class Services: + def __init__(self): + self.services = { + "account": { + "email": "test@test.com", + "firstname": "Test", + "lastname": "User", + "username": "test", + "password": "password", + }, + "virtual_machine": { + "displayname": "Test VM", + "username": "root", + "password": "password", + "ssh_port": 22, + "hypervisor": 'XenServer', + "privateport": 22, + "publicport": 22, + "protocol": 'TCP', + }, + "ostype": 'CentOS 5.3 (64-bit)', + "service_offering": { + "name": "Tiny Instance", + "displaytext": "Tiny Instance", + "cpunumber": 1, + "cpuspeed": 100, + "memory": 256, + }, + } + + +class TestDeployVmWithUserData(cloudstackTestCase): + """Tests for UserData + """ + + @classmethod + def setUpClass(cls): + cls.apiClient = super(TestDeployVmWithUserData, cls).getClsTestClient().getApiClient() + cls.services = Services().services + cls.zone = get_zone(cls.apiClient, cls.services) + if cls.zone.localstorageenabled: + #For devcloud since localstroage is enabled + cls.services["service_offering"]["storagetype"] = "local" + cls.service_offering = ServiceOffering.create( + cls.apiClient, + cls.services["service_offering"] + ) + cls.account = Account.create(cls.apiClient, services=cls.services["account"]) + cls.template = get_template( + cls.apiClient, + cls.zone.id, + cls.services["ostype"] + ) + cls.debug("Successfully created account: %s, id: \ + %s" % (cls.account.name,\ + cls.account.id)) + cls.cleanup = [cls.account] + + # Generate userdata of 2500 bytes. This is larger than the 2048 bytes limit. + # CS however allows for upto 4K bytes in the code. So this must succeed. + # Overall, the query length must not exceed 4K, for then the json decoder + # will fail this operation at the marvin client side itcls. + user_data = ''.join(random.choice(string.ascii_uppercase + string.digits) for x in range(2500)) + cls.services["virtual_machine"]["userdata"] = user_data + + @attr(tags=["simulator", "devcloud", "basic", "advanced"]) + def test_deployvm_userdata_post(self): + """Test userdata as POST, size > 2k + """ + deployVmResponse = VirtualMachine.create( + self.apiClient, + services=self.services["virtual_machine"], + accountid=self.account.name, + domainid=self.account.domainid, + serviceofferingid=self.service_offering.id, + templateid=self.template.id, + zoneid=self.zone.id, + method='POST' + ) + vms = list_virtual_machines( + self.apiClient, + account=self.account.name, + domainid=self.account.domainid + ) + self.assert_(len(vms) > 0, "There are no Vms deployed in the account %s" % self.account.name) + vm = vms[0] + self.assert_(vm.id == str(deployVmResponse.id), "Vm deployed is different from the test") + self.assert_(vm.state == "Running", "VM is not in Running state") + + @attr(tags=["simulator", "devcloud", "basic", "advanced"]) + def test_deployvm_userdata(self): + """Test userdata as GET, size > 2k + """ + deployVmResponse = VirtualMachine.create( + self.apiClient, + services=self.services["virtual_machine"], + accountid=self.account.name, + domainid=self.account.domainid, + serviceofferingid=self.service_offering.id, + templateid=self.template.id, + zoneid=self.zone.id + ) + vms = list_virtual_machines( + self.apiClient, + account=self.account.name, + domainid=self.account.domainid + ) + self.assert_(len(vms) > 0, "There are no Vms deployed in the account %s" % self.account.name) + vm = vms[0] + self.assert_(vm.id == str(deployVmResponse.id), "Vm deployed is different from the test") + self.assert_(vm.state == "Running", "VM is not in Running state") + + @classmethod + def tearDownClass(cls): + try: + #Cleanup resources used + cleanup_resources(cls.apiClient, cls.cleanup) + except Exception as e: + raise Exception("Warning: Exception during cleanup : %s" % e) diff --git a/tools/marvin/marvin/cloudstackConnection.py b/tools/marvin/marvin/cloudstackConnection.py index 214a8783263..5d30803d930 100644 --- a/tools/marvin/marvin/cloudstackConnection.py +++ b/tools/marvin/marvin/cloudstackConnection.py @@ -110,16 +110,15 @@ class cloudConnection(object): self.logging.info("Computed Signature by Marvin: %s" % signature) return signature - def request(self, command, auth=True, payload={}, data={}): + def request(self, command, auth=True, payload={}, method='GET'): """ Makes requests using auth or over integration port @param command: cloudstack API command name eg: deployVirtualMachineCommand @param auth: Authentication (apikey,secretKey) => True else False for integration.api.port - @param payload: GET param data composed as a dictionary - of key,value pairs - @param data: POST data as a dictionary + @param payload: request data composed as a dictionary + @param method: GET/POST via HTTP @return: """ payload["command"] = command @@ -131,9 +130,8 @@ class cloudConnection(object): payload["signature"] = signature try: - if data: - response = requests.get(self.baseurl, params=payload, - data=data) + if method == 'POST': + response = requests.post(self.baseurl, params=payload) else: response = requests.get(self.baseurl, params=payload) except ConnectionError, c: @@ -161,7 +159,7 @@ class cloudConnection(object): requests = {} required = [] for attribute in dir(cmd): - if attribute != "__doc__" and attribute != "__init__" and \ + if attribute != "__doc__" and attribute != "__init__" and\ attribute != "__module__": if attribute == "isAsync": isAsync = getattr(cmd, attribute) @@ -193,26 +191,20 @@ class cloudConnection(object): i = i + 1 return cmdname, isAsync, requests - def marvin_request(self, cmd, data={}, response_type=None): + def marvin_request(self, cmd, response_type=None, method='GET'): """ Requester for marvin command objects @param cmd: marvin's command from cloudstackAPI - @param data: any data to be sent in as POST @param response_type: response type of the command in cmd - @param raw: + @param method: HTTP GET/POST, defaults to GET @return: """ cmdname, isAsync, payload = self.sanitize_command(cmd) - self.logging.info("sending command: %s %s" % (cmdname, str(payload))) - if self.auth: - response = self.request( - cmdname, auth=True, payload=payload, data=data) - else: - response = self.request( - cmdname, auth=False, payload=payload, data=data) - - self.logging.info("Request: %s Response: %s" % - (response.url, response.text)) + self.logging.debug("sending %s request: %s %s" % (method, cmdname, str(payload))) + response = self.request( + cmdname, self.auth, payload=payload, method=method) + self.logging.debug("Request: %s Response: %s" % + (response.url, response.text)) response = jsonHelper.getResultObj(response.json(), response_type) if isAsync == "false": diff --git a/tools/marvin/marvin/codegenerator.py b/tools/marvin/marvin/codegenerator.py index b3b2a863029..36ba1800081 100644 --- a/tools/marvin/marvin/codegenerator.py +++ b/tools/marvin/marvin/codegenerator.py @@ -184,9 +184,9 @@ class codeGenerator: body += "\n" for cmdName in self.cmdsName: - body += self.space + 'def %s(self, command, postdata={}):\n'%cmdName + body += self.space + 'def %s(self, command, method="GET"):\n'%cmdName body += self.space + self.space + 'response = %sResponse()\n'%cmdName - body += self.space + self.space + 'response = self.connection.marvin_request(command, data=postdata, response_type=response)\n' + body += self.space + self.space + 'response = self.connection.marvin_request(command, response_type=response, method=method)\n' body += self.space + self.space + 'return response\n' body += '\n' diff --git a/tools/marvin/marvin/integration/lib/base.py b/tools/marvin/marvin/integration/lib/base.py index 92cdf81fa91..6c285233a82 100755 --- a/tools/marvin/marvin/integration/lib/base.py +++ b/tools/marvin/marvin/integration/lib/base.py @@ -102,7 +102,7 @@ class Account: def delete(self, apiclient): """Delete an account""" cmd = deleteAccount.deleteAccountCmd() - cmd.id = self.account.id + cmd.id = self.id apiclient.deleteAccount(cmd) @classmethod @@ -220,7 +220,7 @@ class VirtualMachine: def create(cls, apiclient, services, templateid=None, accountid=None, domainid=None, zoneid=None, networkids=None, serviceofferingid=None, securitygroupids=None, projectid=None, startvm=None, - diskofferingid=None, affinitygroupnames=None, hostid=None, mode='basic'): + diskofferingid=None, affinitygroupnames=None, hostid=None, mode='basic', method='GET'): """Create the instance""" cmd = deployVirtualMachine.deployVirtualMachineCmd() @@ -262,8 +262,6 @@ class VirtualMachine: if securitygroupids: cmd.securitygroupids = [str(sg_id) for sg_id in securitygroupids] - if "userdata" in services: - cmd.userdata = base64.b64encode(services["userdata"]) if "affinitygroupnames" in services: cmd.affinitygroupnames = services["affinitygroupnames"] @@ -279,7 +277,10 @@ class VirtualMachine: if hostid: cmd.hostid = hostid - virtual_machine = apiclient.deployVirtualMachine(cmd) + if "userdata" in services: + cmd.userdata = base64.b64encode(services["userdata"]) + + virtual_machine = apiclient.deployVirtualMachine(cmd, method=method) # VM should be in Running state after deploy timeout = 10 From fa7049a5838b2d1c5436cfd8fb13c1a1cf884d88 Mon Sep 17 00:00:00 2001 From: Pranav Saxena Date: Wed, 24 Apr 2013 14:02:30 +0530 Subject: [PATCH 380/607] CLOUDSTACK-2166:UI Support for remove Vlan for the non-contiguous vlan support:Exception handling --- ui/scripts/system.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/ui/scripts/system.js b/ui/scripts/system.js index 4f5925c39d2..b2bd42b8cc0 100644 --- a/ui/scripts/system.js +++ b/ui/scripts/system.js @@ -1028,7 +1028,13 @@ updateTrafficLabels(trafficType, args.data, function() { args.response.success({ _custom: { jobId: jobId }}); }); + }, + + error:function(json){ + args.response.error(parseXMLHttpResponse(json)); + } + }); @@ -1073,7 +1079,13 @@ updateTrafficLabels(trafficType, args.data, function() { args.response.success({ _custom: { jobId: jobId }}); }); + }, + + error:function(json){ + args.response.error(parseXMLHttpResponse(json)); + } + }); }, From 4b7fe3bc29ae847ca9622bf9df5860169f8622f0 Mon Sep 17 00:00:00 2001 From: Pranav Saxena Date: Wed, 24 Apr 2013 14:21:39 +0530 Subject: [PATCH 381/607] CLOUDSTACK-2151:Vlan values in the UI Detail view are not updated properly --- ui/scripts/system.js | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/ui/scripts/system.js b/ui/scripts/system.js index b2bd42b8cc0..50dd66d4d69 100644 --- a/ui/scripts/system.js +++ b/ui/scripts/system.js @@ -1110,23 +1110,24 @@ preFilter: function(args) { var hiddenFields = []; if(selectedZoneObj.networktype == "Basic") { - hiddenFields.push("startVlan"); - hiddenFields.push("endVlan"); + hiddenFields.push("vlan"); + // hiddenFields.push("endVlan"); } return hiddenFields; }, fields: [ { //updatePhysicalNetwork API state: { label: 'label.state' }, - startVlan: { - label: 'label.start.vlan', + vlan: { + label: 'VLAN Range(s)', isEditable: true }, - endVlan: { + /* endVlan: { label: 'label.end.vlan', isEditable: true - }, - tags: { label: 'Tags', isEditable: true }, + },*/ + + tags: { label: 'Tags', isEditable: true }, broadcastdomainrange: { label: 'label.broadcast.domain.range' } }, { //updateTrafficType API @@ -1148,9 +1149,9 @@ success: function(json) { selectedPhysicalNetworkObj = json.listphysicalnetworksresponse.physicalnetwork[0]; - var startVlan, endVlan; + // var startVlan, endVlan; var vlan = selectedPhysicalNetworkObj.vlan; - if(vlan != null && vlan.length > 0) { + /* if(vlan != null && vlan.length > 0) { if(vlan.indexOf("-") != -1) { var vlanArray = vlan.split("-"); startVlan = vlanArray[0]; @@ -1161,7 +1162,7 @@ } selectedPhysicalNetworkObj["startVlan"] = startVlan; selectedPhysicalNetworkObj["endVlan"] = endVlan; - } + }*/ //traffic type var xentrafficlabel, kvmtrafficlabel, vmwaretrafficlabel; From 403f7b5b87170009ce6ba08848e6409747382608 Mon Sep 17 00:00:00 2001 From: Pranav Saxena Date: Wed, 24 Apr 2013 14:34:36 +0530 Subject: [PATCH 382/607] CLOUDSTACK-2114:Scale Up VM icon --- ui/css/cloudstack3.css | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/ui/css/cloudstack3.css b/ui/css/cloudstack3.css index 1140d912058..85f7dff433d 100644 --- a/ui/css/cloudstack3.css +++ b/ui/css/cloudstack3.css @@ -11889,18 +11889,21 @@ div.ui-dialog div.autoscaler div.field-group div.form-container form div.form-it background-position: -168px -31px; } -.reset .icon, -.scaleUp .icon { +.reset .icon { background-position: -168px -31px; } +.scaleUp .icon{ + background-position: -167px -66px; + +} + .restoreVM:hover .icon, .restore:hover .icon { background-position: -168px -613px; } -.reset:hover .icon, -.scaleUp:hover .icon { +.reset:hover .icon { background-position: -168px -613px; } From 762977d7c6f35c6f412dddc87a832a0bafc4db87 Mon Sep 17 00:00:00 2001 From: Prasanna Santhanam Date: Wed, 24 Apr 2013 14:37:39 +0530 Subject: [PATCH 383/607] Account object dereferences as account.name Previously the jsonHelper would incorrectly deserialize the json response if the object returned had an attribute of the same name resulting in an additional level of indirection to refer to the entity's attributes. eg: account.account.name instead of account.name This fixes the tests that have still the same indirection exposed. Signed-off-by: Prasanna Santhanam --- .../integration/smoke/test_affinity_groups.py | 10 +++---- .../integration/smoke/test_public_ip_range.py | 6 ++-- test/integration/smoke/test_vm_life_cycle.py | 28 +++++++++---------- 3 files changed, 22 insertions(+), 22 deletions(-) diff --git a/test/integration/smoke/test_affinity_groups.py b/test/integration/smoke/test_affinity_groups.py index 832c4a4e1fa..3ed31152643 100644 --- a/test/integration/smoke/test_affinity_groups.py +++ b/test/integration/smoke/test_affinity_groups.py @@ -91,7 +91,7 @@ class TestDeployVmWithAffinityGroup(cloudstackTestCase): domainid=cls.domain.id ) - cls.services["account"] = cls.account.account.name + cls.services["account"] = cls.account.name cls.service_offering = ServiceOffering.create( cls.api_client, @@ -120,8 +120,8 @@ class TestDeployVmWithAffinityGroup(cloudstackTestCase): self.api_client, self.services["virtual_machine"], templateid=self.template.id, - accountid=self.account.account.name, - domainid=self.account.account.domainid, + accountid=self.account.name, + domainid=self.account.domainid, serviceofferingid=self.service_offering.id, affinitygroupnames=[self.ag.name] ) @@ -153,8 +153,8 @@ class TestDeployVmWithAffinityGroup(cloudstackTestCase): self.api_client, self.services["virtual_machine"], templateid=self.template.id, - accountid=self.account.account.name, - domainid=self.account.account.domainid, + accountid=self.account.name, + domainid=self.account.domainid, serviceofferingid=self.service_offering.id, affinitygroupnames=[self.ag.name] ) diff --git a/test/integration/smoke/test_public_ip_range.py b/test/integration/smoke/test_public_ip_range.py index 7c965ea1d94..f2099ff432a 100644 --- a/test/integration/smoke/test_public_ip_range.py +++ b/test/integration/smoke/test_public_ip_range.py @@ -139,8 +139,8 @@ class TesDedicatePublicIPRange(cloudstackTestCase): dedicate_public_ip_range_response = PublicIpRange.dedicate( self.apiclient, self.public_ip_range.vlan.id, - account=self.account.account.name, - domainid=self.account.account.domainid + account=self.account.name, + domainid=self.account.domainid ) list_public_ip_range_response = PublicIpRange.list( self.apiclient, @@ -149,7 +149,7 @@ class TesDedicatePublicIPRange(cloudstackTestCase): public_ip_response = list_public_ip_range_response[0] self.assertEqual( public_ip_response.account, - self.account.account.name, + self.account.name, "Check account name is in listVlanIpRanges as the account public ip range is dedicated to" ) diff --git a/test/integration/smoke/test_vm_life_cycle.py b/test/integration/smoke/test_vm_life_cycle.py index cf9fd7530f1..ae36c648e0a 100644 --- a/test/integration/smoke/test_vm_life_cycle.py +++ b/test/integration/smoke/test_vm_life_cycle.py @@ -172,8 +172,8 @@ class TestDeployVM(cloudstackTestCase): cls.virtual_machine = VirtualMachine.create( cls.apiclient, cls.services["small"], - accountid=cls.account.account.name, - domainid=cls.account.account.domainid, + accountid=cls.account.name, + domainid=cls.account.domainid, serviceofferingid=cls.service_offering.id, mode=cls.services['mode'] ) @@ -250,12 +250,12 @@ class TestDeployVM(cloudstackTestCase): 3. Has a linklocalip, publicip and a guestip @return: """ - routers = list_routers(self.apiclient, account=self.account.account.name) + routers = list_routers(self.apiclient, account=self.account.name) self.assertTrue(len(routers) > 0, msg = "No virtual router found") router = routers[0] self.assertEqual(router.state, 'Running', msg="Router is not in running state") - self.assertEqual(router.account, self.account.account.name, msg="Router does not belong to the account") + self.assertEqual(router.account, self.account.name, msg="Router does not belong to the account") #Has linklocal, public and guest ips self.assertIsNotNone(router.linklocalip, msg="Router has no linklocal ip") @@ -271,12 +271,12 @@ class TestDeployVM(cloudstackTestCase): 2. is in the account the VM was deployed in @return: """ - routers = list_routers(self.apiclient, account=self.account.account.name) + routers = list_routers(self.apiclient, account=self.account.name) self.assertTrue(len(routers) > 0, msg = "No virtual router found") router = routers[0] self.assertEqual(router.state, 'Running', msg="Router is not in running state") - self.assertEqual(router.account, self.account.account.name, msg="Router does not belong to the account") + self.assertEqual(router.account, self.account.name, msg="Router does not belong to the account") def tearDown(self): pass @@ -334,24 +334,24 @@ class TestVMLifeCycle(cloudstackTestCase): cls.small_virtual_machine = VirtualMachine.create( cls.api_client, cls.services["small"], - accountid=cls.account.account.name, - domainid=cls.account.account.domainid, + accountid=cls.account.name, + domainid=cls.account.domainid, serviceofferingid=cls.small_offering.id, mode=cls.services["mode"] ) cls.medium_virtual_machine = VirtualMachine.create( cls.api_client, cls.services["medium"], - accountid=cls.account.account.name, - domainid=cls.account.account.domainid, + accountid=cls.account.name, + domainid=cls.account.domainid, serviceofferingid=cls.medium_offering.id, mode=cls.services["mode"] ) cls.virtual_machine = VirtualMachine.create( cls.api_client, cls.services["small"], - accountid=cls.account.account.name, - domainid=cls.account.account.domainid, + accountid=cls.account.name, + domainid=cls.account.domainid, serviceofferingid=cls.small_offering.id, mode=cls.services["mode"] ) @@ -939,8 +939,8 @@ class TestVMLifeCycle(cloudstackTestCase): iso = Iso.create( self.apiclient, self.services["iso"], - account=self.account.account.name, - domainid=self.account.account.domainid + account=self.account.name, + domainid=self.account.domainid ) self.debug("Successfully created ISO with ID: %s" % iso.id) From 39f772eee81863ec51fb1a2668c85e863167182f Mon Sep 17 00:00:00 2001 From: Jayapal Date: Wed, 24 Apr 2013 12:49:59 +0530 Subject: [PATCH 384/607] CLOUDSTACK-2161 updated cloud-early-config to copy iptables-* to rules.v4 In iptables-persistent, iptables-restore is loading config from the /etc/iptables/rule.v4 Signed-off-by: Abhinandan Prateek --- .../debian/config/etc/init.d/cloud-early-config | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/patches/systemvm/debian/config/etc/init.d/cloud-early-config b/patches/systemvm/debian/config/etc/init.d/cloud-early-config index b8ddaf1bcc3..4b3cb5f7013 100755 --- a/patches/systemvm/debian/config/etc/init.d/cloud-early-config +++ b/patches/systemvm/debian/config/etc/init.d/cloud-early-config @@ -691,7 +691,7 @@ setup_router() { disable_rpfilter_domR enable_fwding 1 chkconfig nfs-common off - cp /etc/iptables/iptables-router /etc/iptables/rules + cp /etc/iptables/iptables-router /etc/iptables/rules.v4 setup_sshd $ETH1_IP "eth1" } @@ -763,7 +763,7 @@ EOF enable_svc cloud 0 disable_rpfilter enable_fwding 1 - cp /etc/iptables/iptables-vpcrouter /etc/iptables/rules + cp /etc/iptables/iptables-vpcrouter /etc/iptables/rules.v4 setup_sshd $ETH0_IP "eth0" cp /etc/vpcdnsmasq.conf /etc/dnsmasq.conf cp /etc/cloud-nic.rules /etc/udev/rules.d/cloud-nic.rules @@ -789,7 +789,7 @@ setup_dhcpsrvr() { enable_svc cloud 0 enable_fwding 0 chkconfig nfs-common off - cp /etc/iptables/iptables-router /etc/iptables/rules + cp /etc/iptables/iptables-router /etc/iptables/rules.v4 if [ "$SSHONGUEST" == "true" ] then setup_sshd $ETH0_IP "eth0" @@ -824,7 +824,7 @@ setup_secstorage() { [ "$ETH2_IP" == "0.0.0.0" ] && public_ip=$ETH1_IP echo "$public_ip $NAME" >> /etc/hosts - cp /etc/iptables/iptables-secstorage /etc/iptables/rules + cp /etc/iptables/iptables-secstorage /etc/iptables/rules.v4 if [ "$hyp" == "vmware" ]; then setup_sshd $ETH1_IP "eth1" else @@ -848,7 +848,7 @@ setup_console_proxy() { [ "$ETH2_IP" == "0.0.0.0" ] && public_ip=$ETH1_IP sed -i /gateway/d /etc/hosts echo "$public_ip $NAME" >> /etc/hosts - cp /etc/iptables/iptables-consoleproxy /etc/iptables/rules + cp /etc/iptables/iptables-consoleproxy /etc/iptables/rules.v4 if [ "$hyp" == "vmware" ]; then setup_sshd $ETH1_IP "eth1" else @@ -873,7 +873,7 @@ setup_elbvm() { [ "$ETH2_IP" == "0.0.0.0" ] || [ "$ETH2_IP" == "" ] && public_ip=$ETH0_IP echo "$public_ip $NAME" >> /etc/hosts - cp /etc/iptables/iptables-elbvm /etc/iptables/rules + cp /etc/iptables/iptables-elbvm /etc/iptables/rules.v4 if [ "$SSHONGUEST" == "true" ] then setup_sshd $ETH0_IP "eth0" From 8ff442bbeb056f3da755b31019014ab6f5dd6525 Mon Sep 17 00:00:00 2001 From: Mice Xia Date: Wed, 24 Apr 2013 20:10:35 +0800 Subject: [PATCH 385/607] fix CLOUDSTACK-1944 Destruction of a VM with StaticNAT/FW throws a NullPointerException during VM Expunge --- server/src/com/cloud/vm/UserVmManagerImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/server/src/com/cloud/vm/UserVmManagerImpl.java b/server/src/com/cloud/vm/UserVmManagerImpl.java index 45b313fdb5f..f24288a4415 100755 --- a/server/src/com/cloud/vm/UserVmManagerImpl.java +++ b/server/src/com/cloud/vm/UserVmManagerImpl.java @@ -1520,6 +1520,7 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use @Override public void run() { + UserContext.registerContext(_accountMgr.getSystemUser().getId(), _accountMgr.getSystemAccount(), null, false); GlobalLock scanLock = GlobalLock.getInternLock("UserVMExpunge"); try { if (scanLock.lock(ACQUIRE_GLOBAL_LOCK_TIMEOUT_FOR_COOPERATION)) { From 2c271e0f1db88b10c31a7c257664bdf3045a1eae Mon Sep 17 00:00:00 2001 From: Milamber Date: Wed, 24 Apr 2013 13:54:47 +0000 Subject: [PATCH 386/607] Convert zh_CH (chinese) resource file to ASCII with unicode, merge with 4.1 files, synchronize with transifex 4.2 resources file --- .../resources/messages_zh_CN.properties | 2962 ++++++++--------- 1 file changed, 1459 insertions(+), 1503 deletions(-) diff --git a/client/WEB-INF/classes/resources/messages_zh_CN.properties b/client/WEB-INF/classes/resources/messages_zh_CN.properties index d49cefacff5..1f22105b068 100644 --- a/client/WEB-INF/classes/resources/messages_zh_CN.properties +++ b/client/WEB-INF/classes/resources/messages_zh_CN.properties @@ -1,1520 +1,1476 @@ -# 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. - - -#new labels (begin) ********************************************************************************************** - - -#new labels (end) ************************************************************************************************ - - -#modified labels (begin) ***************************************************************************************** - - -#modified labels (end) ******************************************************************************************* - -label.configure.network.ACLs=é…置网络 ACL -label.network.ACLs=网络 ACL -label.add.network.ACL=添加网络 ACL -label.private.Gateway=专用网关 -label.VPC.router.details=VPC è·¯ç”±å™¨è¯¦ç»†ä¿¡æ¯ -label.VMs.in.tier=层中的 VM - -message.zoneWizard.enable.local.storage=警告: 如果为此区域å¯ç”¨äº†æœ¬åœ°å­˜å‚¨ï¼Œåˆ™å¿…须执行以下æ“作,具体å–决于希望å¯åŠ¨ç³»ç»Ÿ VM çš„ä½ç½®:

    1. 如果è¦åœ¨ä¸»å­˜å‚¨ä¸­å¯åŠ¨ç³»ç»Ÿ VM,则需è¦åœ¨åˆ›å»ºåŽå°†ä¸»å­˜å‚¨æ·»åŠ åˆ°æ­¤åŒºåŸŸä¸­ã€‚æ­¤å¤–ï¼Œè¿˜å¿…é¡»å¯åŠ¨å¤„äºŽç¦ç”¨çжæ€çš„区域。

    2. 如果è¦åœ¨æœ¬åœ°å­˜å‚¨ä¸­å¯åŠ¨ç³»ç»Ÿ VM,则需è¦å…ˆå°† system.vm.use.local.storage 设置为 True,然åŽå†å¯ç”¨æ­¤åŒºåŸŸã€‚


    是å¦è¦ç»§ç»­? -label.local.storage.enabled=å·²å¯ç”¨æœ¬åœ°å­˜å‚¨ -label.tier.details=å±‚è¯¦ç»†ä¿¡æ¯ -label.edit.tags=编辑标签 -label.network.rate.megabytes=网络速率(MB/ç§’) -label.action.enable.physical.network=å¯ç”¨ç‰©ç†ç½‘络 -label.action.disable.physical.network=ç¦ç”¨ç‰©ç†ç½‘络 -message.action.enable.physical.network=请确认您确实è¦å¯ç”¨æ­¤ç‰©ç†ç½‘络。 -message.action.disable.physical.network=请确认您确实è¦ç¦ç”¨æ­¤ç‰©ç†ç½‘络。 - -label.select.tier=选择层 -label.add.ACL=添加 ACL -label.remove.ACL=删除 ACL -label.tier=层 -label.network.ACL=网络 ACL -label.network.ACL.total=网络 ACL 总数 -label.add.new.gateway=添加新网关 -message.add.new.gateway.to.vpc=请指定将新网关添加到此 VPC 所需的信æ¯ã€‚ -label.delete.gateway=删除网关 -message.delete.gateway=请确认您确实è¦åˆ é™¤æ­¤ç½‘å…³ -label.CIDR.of.destination.network=目的地网络的 CIDR -label.add.route=添加路由 -label.add.static.route=æ·»åŠ é™æ€è·¯ç”± -label.remove.static.route=åˆ é™¤é™æ€è·¯ç”± -label.site.to.site.VPN=站点到站点 VPN -label.add.VPN.gateway=添加 VPN 网关 -message.add.VPN.gateway=è¯·ç¡®è®¤æ‚¨ç¡®å®žè¦æ·»åŠ  VPN 网关 -label.VPN.gateway=VPN 网关 -label.delete.VPN.gateway=删除 VPN 网关 -message.delete.VPN.gateway=请确认您确实è¦åˆ é™¤æ­¤ VPN 网关 -label.VPN.connection=VPN 连接 -label.IPsec.preshared.key=IPsec 预共享密钥 -label.IKE.policy=IKE ç­–ç•¥ -label.ESP.policy=ESP ç­–ç•¥ -label.create.VPN.connection=创建 VPN 连接 -label.VPN.customer.gateway=VPN 客户网关 -label.CIDR.list=CIDR 列表 -label.IKE.lifetime=IKE 使用期é™(第二阶段) -label.ESP.lifetime=ESP 使用期é™(第二阶段) -label.dead.peer.detection=失效对等体检测 -label.reset.VPN.connection=é‡ç½® VPN 连接 -message.reset.VPN.connection=请确认您确实è¦é‡ç½® VPN 连接 -label.delete.VPN.connection=删除 VPN 连接 -message.delete.VPN.connection=请确认您确实è¦åˆ é™¤ VPN 连接 -label.add.new.tier=添加新层 -label.add.VM.to.tier=å‘层中添加 VM -label.remove.tier=删除层 - -label.local.storage.enabled=å·²å¯ç”¨æœ¬åœ°å­˜å‚¨ -label.associated.network=å…³è”网络 -label.add.port.forwarding.rule=添加端å£è½¬å‘规则 -label.dns=DNS - -label.vpc=VPC -label.vpc.id=VPC ID -label.tier=层 -label.add.vpc=添加 VPC -label.super.cidr.for.guest.networks=æ¥å®¾ç½‘络的超级 CIDR -label.DNS.domain.for.guest.networks=æ¥å®¾ç½‘络的 DNS 域 -label.configure.vpc=é…ç½® VPC -label.edit.vpc=编辑 VPC -label.restart.vpc=釿–°å¯åЍ VPC -message.restart.vpc=请确认您确实è¦é‡æ–°å¯åЍ VPC -label.remove.vpc=删除 VPC -message.remove.vpc=请确认您确实è¦åˆ é™¤ VPC -label.vpn.customer.gateway=VPN 客户网关 -label.add.vpn.customer.gateway=添加 VPN 客户网关 -label.IKE.encryption=IKE 加密算法 -label.IKE.hash=IKE 哈希算法 -label.IKE.DH=IKE DH 算法 -label.ESP.encryption=ESP 加密算法 -label.ESP.hash=ESP 哈希算法 -label.perfect.forward.secrecy=完全正å‘ä¿å¯† -label.IKE.lifetime=IKE 使用期é™(第二阶段) -label.ESP.lifetime=ESP 使用期é™(第二阶段) -label.dead.peer.detection=失效对等体检测 -label.delete.VPN.customer.gateway=删除 VPN 客户网关 -message.delete.VPN.customer.gateway=请确认您确实è¦åˆ é™¤æ­¤ VPN 客户网关 - -label.network.domain.text=网络域 -label.memory.mb=内存(MB) -label.cpu.mhz=CPU (MHz) -message.action.remove.host=请确认您确实è¦åˆ é™¤æ­¤ä¸»æœºã€‚ - -message.action.reboot.router=此虚拟路由器æä¾›çš„æ‰€æœ‰æœåŠ¡éƒ½å°†ä¸­æ–­ã€‚è¯·ç¡®è®¤æ‚¨ç¡®å®žè¦é‡æ–°å¯åŠ¨æ­¤è·¯ç”±å™¨ã€‚ -message.action.stop.router=此虚拟路由器æä¾›çš„æ‰€æœ‰æœåŠ¡éƒ½å°†ä¸­æ–­ã€‚è¯·ç¡®è®¤æ‚¨ç¡®å®žè¦åœæ­¢æ­¤è·¯ç”±å™¨ã€‚ -message.restart.network=此网络æä¾›çš„æ‰€æœ‰æœåŠ¡éƒ½å°†ä¸­æ–­ã€‚è¯·ç¡®è®¤æ‚¨ç¡®å®žè¦é‡æ–°å¯åŠ¨æ­¤ç½‘ç»œã€‚ - - -label.ipaddress=IP åœ°å€ -label.vcdcname=vCenter DC åç§° -label.vcipaddress=vCenter IP åœ°å€ -label.vsmctrlvlanid=控制 VLAN ID -label.vsmpktvlanid=æ•°æ®åŒ… VLAN ID -label.vsmstoragevlanid=存储 VLAN ID -label.nexusVswitch=Nexus 1000v -label.action.delete.nexusVswitch=删除 Nexus 1000v -label.action.enable.nexusVswitch=å¯ç”¨ Nexus 1000v -label.action.disable.nexusVswitch=ç¦ç”¨ Nexus 1000v -label.action.list.nexusVswitch=列出 Nexus 1000v -message.action.delete.nexusVswitch=请确认您确实è¦åˆ é™¤æ­¤ Nexus 1000v -message.action.enable.nexusVswitch=请确认您确实è¦å¯ç”¨æ­¤ Nexus 1000v -message.action.disable.nexusVswitch=请确认您确实è¦ç¦ç”¨æ­¤ Nexus 1000v -message.specify.url=请指定 URL -label.select.instance.to.attach.volume.to=选择è¦å°†å·é™„加到的实例 -label.upload=上载 -label.upload.volume=ä¸Šè½½å· -label.virtual.routers=虚拟路由器 -label.primary.storage.count=主存储池 -label.secondary.storage.count=辅助存储池 -label.number.of.system.vms=系统 VM æ•° -label.number.of.virtual.routers=虚拟路由器数 -label.action.register.iso=注册 ISO -label.isolation.method=隔离方法 -label.action.register.template=æ³¨å†Œæ¨¡æ¿ -label.checksum=MD5 校验和 -label.vpn=VPN -label.vlan=VLAN - - -label.management.ips=管ç†ç±» IP åœ°å€ -label.devices=设备 -label.rules=规则 -label.traffic.label=æµé‡æ ‡ç­¾ -label.vm.state=VM çŠ¶æ€ -message.setup.physical.network.during.zone.creation.basic=添加基础区域时,å¯ä»¥è®¾ç½®ä¸€ä¸ªç‰©ç†ç½‘络,此网络应与虚拟机管ç†ç¨‹åºä¸­çš„ NIC 相对应。此网络å¯ä»¥æ‰¿è½½å¤šç§æµé‡ç±»åž‹ã€‚

    此外,还å¯ä»¥å°†å…¶ä»–æµé‡ç±»åž‹æ‹–放到此物ç†ç½‘络。 -label.domain.router=域路由器 -label.console.proxy=控制å°ä»£ç† -label.secondary.storage.vm=辅助存储 VM -label.add.netScaler.device=添加 Netscaler 设备 -label.add.F5.device=添加 F5 设备 -label.add.SRX.device=添加 SRX 设备 -label.account.and.security.group=叿ˆ·ã€å®‰å…¨ç»„ -label.fetch.latest=æå–最新内容 -label.system.offering=系统方案 -message.validate.instance.name=实例åç§°ä¸å¾—超过 63 个字符。仅å…许使用 ASCII å­—æ¯ a - z 或 A - Zã€æ•°å­— 0 - 9 以åŠè¿žå­—符。实例å称必须以字æ¯å¼€å¤´å¹¶ä»¥å­—æ¯æˆ–数字结æŸã€‚ - - -label.isolated.networks=隔离网络 -label.latest.events=最新事件 -state.Enabled=å·²å¯ç”¨ -label.system.wide.capacity=å…¨ç³»ç»Ÿå®¹é‡ -label.network.service.providers=网络æœåŠ¡æä¾›ç¨‹åº -message.launch.zone=区域已准备就绪,å¯éšæ—¶å¯åŠ¨ï¼›è¯·ç»§ç»­æ‰§è¡Œä¸‹ä¸€æ­¥éª¤ã€‚ -error.unable.to.reach.management.server=æ— æ³•è®¿é—®ç®¡ç†æœåС噍 -label.internal.name=内部åç§° -message.configure.all.traffic.types=您有多个物ç†ç½‘络,请å•å‡»â€œç¼–è¾‘â€æŒ‰é’®ä¸ºæ¯ç§æµé‡ç±»åž‹é…置标签。 -message.edit.traffic.type=请指定您希望与此æµé‡ç±»åž‹å…³è”çš„æµé‡æ ‡ç­¾ã€‚ -label.edit.traffic.type=编辑æµé‡ç±»åž‹ -label.label=标签 -label.max.networks=最大网络数 -error.invalid.username.password=ç”¨æˆ·åæˆ–å¯†ç æ— æ•ˆ -message.enabling.security.group.provider=正在å¯ç”¨å®‰å…¨ç»„æä¾›ç¨‹åº -message.adding.Netscaler.provider=正在添加 Netscaler æä¾›ç¨‹åº -message.creating.guest.network=正在创建æ¥å®¾ç½‘络 -label.action.delete.physical.network=删除物ç†ç½‘络 -message.action.delete.physical.network=请确认您确实è¦åˆ é™¤æ­¤ç‰©ç†ç½‘络 -message.installWizard.copy.whatIsAHost=主机是指一å°è®¡ç®—机。主机æä¾›è¿è¡Œæ¥å®¾è™šæ‹Ÿæœºçš„计算资æºã€‚æ¯å°ä¸»æœºä¸Šéƒ½å®‰è£…有虚拟机管ç†ç¨‹åºè½¯ä»¶ï¼Œç”¨äºŽç®¡ç†æ¥å®¾ VM (裸机主机除外,将在“高级安装指å—â€ä¸­è®¨è®ºè¿™ä¸€ç‰¹æ®Šæ¡ˆä¾‹)。例如,å¯ç”¨äº† KVM çš„ Linux æœåС噍ã€Citrix XenServer æœåŠ¡å™¨å’Œ ESXi æœåŠ¡å™¨éƒ½å¯ç”¨ä½œä¸»æœºã€‚在基本安装中,我们将使用一å°è¿è¡Œ XenServer 的主机。

    主机是 CloudStack™ 部署中最å°çš„组织å•ä½ã€‚主机包å«åœ¨ç¾¤é›†ä¸­ï¼Œç¾¤é›†åŒ…å«åœ¨æä¾›ç‚¹ä¸­ï¼Œæä¾›ç‚¹åŒ…å«åœ¨åŒºåŸŸä¸­ã€‚ - - -label.add.compute.offering=添加计算方案 -label.compute.offering=计算方案 -label.compute.offerings=计算方案 -label.select.offering=选择方案 -label.menu.infrastructure=基础架构 -label.sticky.tablesize=è¡¨å¤§å° -label.sticky.expire=过期日期 -label.sticky.cookie-name=Cookie åç§° -label.sticky.mode=æ¨¡å¼ -label.sticky.length=长度 -label.sticky.holdtime=æŒç»­æ—¶é—´ -label.sticky.request-learn=request-learn -label.sticky.prefix=prefix -label.sticky.nocache=nocache -label.sticky.indirect=indirect -label.sticky.postonly=postonly -label.sticky.domain=域 -state.Allocating=æ­£åœ¨åˆ†é… -state.Migrating=正在è¿ç§» -error.please.specify.physical.network.tags=网络方案在您为此物ç†ç½‘ç»œæŒ‡å®šæ ‡ç­¾ä¹‹åŽæ‰å¯ç”¨ã€‚ - - -state.Stopping=æ­£åœ¨åœæ­¢ -message.add.load.balancer.under.ip=已在以下 IP 下添加负载平衡器规则: -message.select.instance=请选择一个实例。 -label.select=选择 -label.select.vm.for.static.nat=ä¸ºé™æ€ NAT 选择 VM -label.select.instance=选择实例 -label.nat.port.range=NAT 端å£èŒƒå›´ -label.static.nat.vm.details=陿€ NAT VM 详情 -label.edit.lb.rule=编辑负载平衡器规则 -message.migrate.instance.to.host=请确认您确实è¦å°†å®žä¾‹è¿ç§»åˆ°å…¶ä»–主机。 -label.migrate.instance.to.host=将实例è¿ç§»åˆ°å…¶ä»–主机 -message.migrate.instance.to.ps=请确认您确实è¦å°†å®žä¾‹è¿ç§»åˆ°å…¶ä»–主存储。 -label.migrate.instance.to.ps=将实例è¿ç§»åˆ°å…¶ä»–主存储 -label.corrections.saved=å·²ä¿å­˜ä¿®æ­£ -message.installWizard.copy.whatIsSecondaryStorage=辅助存储与区域相关è”,用于存储以下项目:
    • æ¨¡æ¿ - å¯ç”¨äºŽå¯åЍ VM å¹¶å¯ä»¥åŒ…å«å…¶ä»–é…置信æ¯(例如,已安装的应用程åº)çš„æ“作系统映åƒ
    • ISO æ˜ åƒ - å¯é‡æ–°å¯åŠ¨æˆ–ä¸å¯é‡æ–°å¯åŠ¨çš„æ“作系统映åƒ
    • ç£ç›˜å·å¿«ç…§ - å·²ä¿å­˜çš„ VM æ•°æ®å‰¯æœ¬ï¼Œå¯ç”¨äºŽæ‰§è¡Œæ•°æ®æ¢å¤æˆ–创建新模æ¿
    -message.installWizard.copy.whatIsPrimaryStorage=CloudStack™ 云基础架构使用以下两ç§ç±»åž‹çš„存储: 主存储和辅助存储。这两ç§ç±»åž‹çš„存储å¯ä»¥æ˜¯ iSCSI 或 NFS æœåŠ¡å™¨ï¼Œä¹Ÿå¯ä»¥æ˜¯æœ¬åœ°ç£ç›˜ã€‚

    主存储与群集相关è”,用于存储该群集中的主机上正在è¿è¡Œçš„æ‰€æœ‰ VM 对应的æ¯ä¸ªæ¥å®¾ VM çš„ç£ç›˜å·ã€‚主存储æœåŠ¡å™¨é€šå¸¸ä½äºŽé è¿‘主机的ä½ç½®ã€‚ -message.installWizard.copy.whatIsACluster=群集æä¾›äº†ä¸€ç§ç¼–组主机的方法。群集中的所有主机都具有相åŒçš„硬件,è¿è¡Œç›¸åŒçš„虚拟机管ç†ç¨‹åºï¼Œä½äºŽåŒä¸€å­ç½‘中,并访问相åŒçš„共享存储。å¯ä»¥å®žæ—¶å°†è™šæ‹Ÿæœºå®žä¾‹(VM)从一å°ä¸»æœºè¿ç§»åˆ°åŒä¸€ç¾¤é›†å†…的其他主机,而无需中断å‘用户æä¾›æœåŠ¡ã€‚ç¾¤é›†æ˜¯ CloudStack™ 部署中的第三大组织å•ä½ã€‚群集包å«åœ¨æä¾›ç‚¹ä¸­ï¼Œæä¾›ç‚¹åŒ…å«åœ¨åŒºåŸŸä¸­ã€‚

    CloudStack™ å…许云部署中存在多个群集,但对于基本安装,我们åªéœ€è¦ä¸€ä¸ªç¾¤é›†ã€‚ -message.installWizard.copy.whatIsAPod=一个æä¾›ç‚¹é€šå¸¸ä»£è¡¨ä¸€ä¸ªæœºæž¶ã€‚åŒä¸€æä¾›ç‚¹ä¸­çš„主机ä½äºŽåŒä¸€å­ç½‘中。

    æä¾›ç‚¹æ˜¯ CloudStack™ 部署中的第二大组织å•ä½ã€‚æä¾›ç‚¹åŒ…å«åœ¨åŒºåŸŸä¸­ã€‚æ¯ä¸ªåŒºåŸŸä¸­å¯ä»¥åŒ…å«ä¸€ä¸ªæˆ–多个æä¾›ç‚¹ï¼›åœ¨åŸºæœ¬å®‰è£…中,您的区域中将仅包å«ä¸€ä¸ªæä¾›ç‚¹ã€‚ -message.installWizard.copy.whatIsAZone=区域是 CloudStack™ 部署中最大的组织å•ä½ã€‚虽然å…许一个数æ®ä¸­å¿ƒä¸­å­˜åœ¨å¤šä¸ªåŒºåŸŸï¼Œä½†æ˜¯ä¸€ä¸ªåŒºåŸŸé€šå¸¸ä¸Žä¸€ä¸ªæ•°æ®ä¸­å¿ƒç›¸å¯¹åº”。将基础架构编组到区域中的好处是å¯ä»¥æä¾›ç‰©ç†éš”离和冗余。例如,æ¯ä¸ªåŒºåŸŸéƒ½å¯ä»¥æ‹¥æœ‰å„自的电æºä¾›åº”和网络上行方案,并且å„区域å¯ä»¥åœ¨åœ°ç†ä½ç½®ä¸Šç›¸éš”很远(虽然并éžå¿…须相隔很远)。 -message.installWizard.copy.whatIsCloudStack=CloudStack™ 是一个软件平å°ï¼Œå¯å°†è®¡ç®—资æºé›†ä¸­åœ¨ä¸€èµ·ä»¥æž„建公共ã€ç§æœ‰å’Œæ··åˆåŸºç¡€è®¾æ–½å³æœåŠ¡(IaaS)云。CloudStack™ 负责管ç†ç»„æˆäº‘基础架构的网络ã€å­˜å‚¨å’Œè®¡ç®—节点。使用 CloudStack™ å¯ä»¥éƒ¨ç½²ã€ç®¡ç†å’Œé…置云计算环境。

    CloudStack™ 通过扩展商用硬件上è¿è¡Œçš„æ¯ä¸ªè™šæ‹Ÿæœºæ˜ åƒçš„范围,æä¾›äº†ä¸€ä¸ªå®žæ—¶å¯ç”¨çš„云基础架构软件堆栈用于以æœåŠ¡æ–¹å¼äº¤ä»˜è™šæ‹Ÿæ•°æ®ä¸­å¿ƒï¼Œå³äº¤ä»˜æž„建ã€éƒ¨ç½²å’Œç®¡ç†å¤šå±‚次和多租户云应用程åºå¿…需的所有组件。开æºç‰ˆæœ¬å’Œ Premium 版本都已å¯ç”¨ï¼Œä¸”æä¾›çš„功能几乎完全相åŒã€‚ -message.installWizard.tooltip.addSecondaryStorage.path=导出路径(ä½äºŽä¸Šè¿°æŒ‡å®šæœåŠ¡å™¨ä¸Š) -message.installWizard.tooltip.addSecondaryStorage.nfsServer=托管辅助存储的 NFS æœåŠ¡å™¨çš„ IP åœ°å€ -message.installWizard.tooltip.addPrimaryStorage.path=(适用于 NFS)在 NFS 中,此路径为æœåŠ¡å™¨çš„å¯¼å‡ºè·¯å¾„ã€‚è·¯å¾„(针对 SharedMountPoint)。对于 KVM,此路径为装载了辅助存储的æ¯ä¸ªä¸»æœºä¸Šçš„路径。例如,/mnt/primary。 -message.installWizard.tooltip.addPrimaryStorage.server=(适用于 NFSã€iSCSI 或 PreSetup)存储设备的 IP åœ°å€æˆ– DNS å称。 -message.installWizard.tooltip.addPrimaryStorage.name=存储设备的å称。 -message.installWizard.tooltip.addHost.password=此为上述用户的密ç (æ¥è‡ª XenServer 安装)。 -message.installWizard.tooltip.addHost.username=通常为 root。 -message.installWizard.tooltip.addHost.hostname=主机的 DNS å称或 IP 地å€ã€‚ -message.installWizard.tooltip.addCluster.name=群集的å称。此åç§°å¯ä»¥æ˜¯æ‚¨é€‰æ‹©çš„æ–‡æœ¬ï¼Œä¸”未由 CloudStack 使用。 -message.installWizard.tooltip.addPod.reservedSystemEndIp=此为 CloudStack 用于管ç†è¾…助存储 VM 和控制å°ä»£ç† VM 的专用网络中的 IP 范围。这些 IP åœ°å€æ¥è‡ªä¸Žè®¡ç®—æœåŠ¡å™¨ç›¸åŒçš„å­ç½‘。 -message.installWizard.tooltip.addPod.reservedSystemStartIp=此为 CloudStack 用于管ç†è¾…助存储 VM 和控制å°ä»£ç† VM 的专用网络中的 IP 范围。这些 IP åœ°å€æ¥è‡ªä¸Žè®¡ç®—æœåŠ¡å™¨ç›¸åŒçš„å­ç½‘。 -message.installWizard.tooltip.addPod.reservedSystemNetmask=æ¥å®¾å°†è¦ä½¿ç”¨çš„å­ç½‘上正在使用的网络掩ç ã€‚ -message.installWizard.tooltip.addPod.reservedSystemGateway=该æä¾›ç‚¹ä¸­çš„主机网关。 -message.installWizard.tooltip.addPod.name=æä¾›ç‚¹çš„åç§° -message.installWizard.tooltip.configureGuestTraffic.guestEndIp=能够分é…给此区域中的æ¥å®¾çš„ IP 地å€èŒƒå›´ã€‚如果使用一个 NIC,这些 IP 应ä½äºŽä¸Žæä¾›ç‚¹ CIDR 相åŒçš„ CIDR 中。 -message.installWizard.tooltip.configureGuestTraffic.guestStartIp=能够分é…给此区域中的æ¥å®¾çš„ IP 地å€èŒƒå›´ã€‚如果使用一个 NIC,这些 IP 应ä½äºŽä¸Žæä¾›ç‚¹ CIDR 相åŒçš„ CIDR 中。 -message.installWizard.tooltip.configureGuestTraffic.guestNetmask=æ¥å®¾åº”使用的å­ç½‘ä¸Šæ­£åœ¨ä½¿ç”¨çš„ç½‘ç»œæŽ©ç  -message.installWizard.tooltip.configureGuestTraffic.guestGateway=æ¥å®¾åº”使用的网关 -message.installWizard.tooltip.configureGuestTraffic.description=您的网络说明 -message.installWizard.tooltip.configureGuestTraffic.name=您的网络åç§° -message.installWizard.tooltip.addZone.internaldns2=这些æœåŠ¡å™¨æ˜¯ä¾›æ­¤åŒºåŸŸä¸­çš„ç³»ç»Ÿ VM 使用的 DNS æœåŠ¡å™¨ï¼Œå°†é€šè¿‡ç³»ç»Ÿ VM 的专用网络接å£è¿›è¡Œè®¿é—®ã€‚您为æä¾›ç‚¹æä¾›çš„专用 IP 地å€å¿…须路由到在此处指定的 DNS æœåŠ¡å™¨ã€‚ -message.installWizard.tooltip.addZone.internaldns1=这些æœåŠ¡å™¨æ˜¯ä¾›æ­¤åŒºåŸŸä¸­çš„ç³»ç»Ÿ VM 使用的 DNS æœåŠ¡å™¨ï¼Œå°†é€šè¿‡ç³»ç»Ÿ VM 的专用网络接å£è¿›è¡Œè®¿é—®ã€‚您为æä¾›ç‚¹æä¾›çš„专用 IP 地å€å¿…须路由到在此处指定的 DNS æœåŠ¡å™¨ã€‚ -message.installWizard.tooltip.addZone.dns2=这些æœåŠ¡å™¨æ˜¯ä¾›æ­¤åŒºåŸŸä¸­çš„æ¥å®¾ VM 使用的 DNS æœåŠ¡å™¨ï¼Œå°†é€šè¿‡æ‚¨ç¨åŽè¦æ·»åŠ çš„å…¬ç”¨ç½‘ç»œè¿›è¡Œè®¿é—®ã€‚æ­¤åŒºåŸŸçš„å…¬ç”¨ IP 地å€å¿…须路由到在此处指定的 DNS æœåŠ¡å™¨ã€‚ -message.installWizard.tooltip.addZone.name=区域åç§° -message.installWizard.tooltip.addZone.dns1=这些æœåŠ¡å™¨æ˜¯ä¾›æ­¤åŒºåŸŸä¸­çš„æ¥å®¾ VM 使用的 DNS æœåŠ¡å™¨ï¼Œå°†é€šè¿‡æ‚¨ç¨åŽè¦æ·»åŠ çš„å…¬ç”¨ç½‘ç»œè¿›è¡Œè®¿é—®ã€‚æ­¤åŒºåŸŸçš„å…¬ç”¨ IP 地å€å¿…须路由到在此处指定的 DNS æœåŠ¡å™¨ã€‚ -message.setup.successful=å·²æˆåŠŸè®¾ç½®äº‘! -label.may.continue=您现在å¯ä»¥ç»§ç»­è¿›è¡Œæ“作。 -error.installWizard.message=出现问题;请返回并更正任何错误 -message.installWizard.now.building=现在正在构建您的云... -message.installWizard.click.retry=请å•å‡»æ­¤æŒ‰é’®é‡æ–°å°è¯•å¯åŠ¨ã€‚ -label.launch=å¯åЍ -label.installWizard.click.launch=请å•击“å¯åŠ¨â€æŒ‰é’®ã€‚ -label.congratulations=ç¥è´ºæ‚¨! -label.installWizard.addSecondaryStorageIntro.subtitle=什么是辅助存储? -label.installWizard.addSecondaryStorageIntro.title=添加一个辅助存储 -label.installWizard.addPrimaryStorageIntro.subtitle=什么是主存储? -label.installWizard.addPrimaryStorageIntro.title=添加一个主存储 -label.installWizard.addHostIntro.subtitle=什么是主机? -label.installWizard.addHostIntro.title=添加一个主机 -label.installWizard.addClusterIntro.subtitle=什么是群集? -label.installWizard.addClusterIntro.title=添加一个群集 -label.installWizard.addPodIntro.subtitle=什么是æä¾›ç‚¹? -label.installWizard.addPodIntro.title=添加一个æä¾›ç‚¹ -label.installWizard.addZone.title=添加区域 -label.installWizard.addZoneIntro.subtitle=什么是区域? -label.installWizard.addZoneIntro.title=添加一个区域 -error.password.not.match=密ç å­—段ä¸ä¸€è‡´ -label.confirm.password=ç¡®è®¤å¯†ç  -message.change.password=请更改您的密ç ã€‚ -label.save.and.continue=ä¿å­˜å¹¶ç»§ç»­ -label.skip.guide=我以å‰ä½¿ç”¨è¿‡ CloudStackï¼Œè·³è¿‡æ­¤æŒ‡å— -label.continue.basic.install=继续执行基本安装 -label.introduction.to.cloudstack=CloudStack™ 简介 -label.what.is.cloudstack=什么是 CloudStack™? -label.hints=æç¤º -label.installWizard.subtitle=此教程将帮助您设置 CloudStack™ 安装 -label.continue=ç»§ç»­ -label.installWizard.title=您好,欢迎使用 CloudStack™ -label.agree=åŒæ„ -label.manage.resources=管ç†èµ„æº -label.port.forwarding.policies=端å£è½¬å‘ç­–ç•¥ -label.load.balancing.policies=负载平衡策略 -label.networking.and.security=网络连接与安全 -label.bandwidth=带宽 -label.virtual.machines=虚拟机 -label.compute.and.storage=计算与存储 -label.task.completed=已完æˆä»»åŠ¡ -label.update.project.resources=æ›´æ–°é¡¹ç›®èµ„æº -label.remove.project.account=åˆ é™¤é¡¹ç›®å¸æˆ· -label.item.listing=项目列表 -message.select.item=请选择一个项目。 -label.removing=正在删除 -label.invite=邀请 -label.add.by=æ·»åŠ æ–¹å¼ -label.max.vms=最大用户 VM æ•° -label.max.public.ips=最大公用 IP æ•° -label.max.volumes=æœ€å¤§å·æ•° -label.max.snapshots=最大快照数 -label.max.templates=æœ€å¤§æ¨¡æ¿æ•° -label.project.dashboard=é¡¹ç›®æŽ§åˆ¶æ¿ -label.remind.later=ä»¥åŽæé†’æˆ‘ -label.invited.accounts=å·²é‚€è¯·çš„å¸æˆ· -label.invite.to=邀请加入 -label.add.accounts.to=æ·»åŠ å¸æˆ·è‡³ -label.add.accounts=æ·»åŠ å¸æˆ· -label.project.name=项目åç§° -label.create.project=创建项目 -label.networks=网络 -label.launch.vm=å¯åЍ VM -label.new.vm=新建 VM -label.previous=上一步 -label.add.to.group=添加到组 -message.vm.review.launch=请先核对以下信æ¯ï¼Œç¡®è®¤æ‚¨çš„虚拟实例正确无误,然åŽå†å¯åŠ¨ã€‚ -message.select.security.groups=请为您的新 VM 选择安全组 -label.new=新建 -message.please.select.networks=请为您的虚拟机选择网络。 -message.please.proceed=请继续执行下个步骤。 -message.zone.no.network.selection=所选区域无任何网络选项。 -label.no.thanks=ä¸ï¼Œè°¢è°¢ -label.my.templates=æˆ‘çš„æ¨¡æ¿ -message.select.template=请为您的新虚拟实例选择一个模æ¿ã€‚ -message.select.iso=请为您的新虚拟实例选择一个 ISO。 -message.template.desc=å¯ç”¨äºŽå¯åЍ VM çš„æ“ä½œç³»ç»Ÿæ˜ åƒ -message.iso.desc=åŒ…å«æ“ä½œç³»ç»Ÿçš„æ•°æ®æˆ–å¯å¯åŠ¨ä»‹è´¨çš„ç£ç›˜æ˜ åƒ -label.select.iso.or.template=选择 ISO æˆ–æ¨¡æ¿ -message.select.a.zone=一个区域通常与一个数æ®ä¸­å¿ƒç›¸å¯¹åº”。多个区域å¯ä»¥æä¾›ç‰©ç†éš”离和冗余,有助于使云更加å¯é ã€‚ -label.select.a.zone=选择一个区域 -label.review=核对 -label.select.a.template=é€‰æ‹©ä¸€ä¸ªæ¨¡æ¿ -label.setup=设置 -state.Allocated=å·²åˆ†é… -changed.item.properties=更改项目属性 -label.apply=应用 -label.default=默认值 -label.viewing=正在查看 -label.move.to.top=移至顶部 -label.move.up.row=å‘上移动一行 -label.move.down.row=å‘下移动一行 -label.move.to.bottom=移至底部 -label.drag.new.position=拖动到新ä½ç½® -label.order=æŽ’åº -label.no.data=æ— å¯æ˜¾ç¤ºçš„æ•°æ® -label.change.value=更改值 -label.clear.list=清除列表 -label.full.path=完整路径 -message.add.domain=请指定è¦åœ¨æ­¤åŸŸä¸‹åˆ›å»ºçš„å­åŸŸ -message.delete.user=请确认您确实è¦åˆ é™¤æ­¤ç”¨æˆ·ã€‚ -message.enable.user=请确认您确实è¦å¯ç”¨æ­¤ç”¨æˆ·ã€‚ -message.disable.user=请确认您确实è¦ç¦ç”¨æ­¤ç”¨æˆ·ã€‚ -message.generate.keys=请确认您确实è¦ä¸ºæ­¤ç”¨æˆ·ç”Ÿæˆæ–°å¯†é’¥ã€‚ -message.update.resource.count=è¯·ç¡®è®¤æ‚¨ç¡®å®žè¦æ›´æ–°æ­¤å¸æˆ·çš„èµ„æºæ•°ã€‚ -message.edit.account=编辑(“-1â€è¡¨ç¤ºå¯¹è¦åˆ›å»ºçš„èµ„æºæ•°é‡æ²¡æœ‰ä»»ä½•é™åˆ¶) -label.total.of.vm=总 VM æ•° -label.total.of.ip=总 IP åœ°å€æ•° -state.enabled=å·²å¯ç”¨ -message.action.download.iso=请确认您确实è¦ä¸‹è½½æ­¤ ISO。 -message.action.download.template=请确认您确实è¦ä¸‹è½½æ­¤æ¨¡æ¿ã€‚ -label.destination.zone=目标区域 -label.keyboard.type=键盘类型 -label.nic.adapter.type=NIC 适é…器类型 -label.root.disk.controller=æ ¹ç£ç›˜æŽ§åˆ¶å™¨ -label.community=社区 -label.remove.egress.rule=删除出å£è§„则 -label.add.egress.rule=添加出å£è§„则 -label.egress.rule=出å£è§„则 -label.remove.ingress.rule=删除入å£è§„则 -label.delete.vpn.user=删除 VPN 用户 -label.add.vpn.user=添加 VPN 用户 -label.remove.pf=删除端å£è½¬å‘规则 -label.remove.vm.from.lb=从负载平衡器规则中删除 VM -label.add.vms.to.lb=å‘负载平衡器规则中添加 VM -label.add.vm=添加 VM -label.remove.static.nat.rule=åˆ é™¤é™æ€ NAT 规则 -label.remove.rule=删除规则 -label.add.static.nat.rule=æ·»åŠ é™æ€ NAT 规则 -label.add.rule=添加规则 -label.configuration=é…ç½® -message.disable.vpn=是å¦ç¡®å®žè¦ç¦ç”¨ VPN? -label.disable.vpn=ç¦ç”¨ VPN -message.enable.vpn=请确认您确实è¦å¯¹æ­¤ IP 地å€å¯ç”¨ VPN 访问。 -label.enable.vpn=å¯ç”¨ VPN -message.acquire.new.ip=请确认您确实è¦ä¸ºæ­¤ç½‘络获å–一个新 IP。 -label.elastic=弹性 -label.my.network=我的网络 -label.add.vms=添加 VM -label.configure=é…ç½® -label.stickiness=粘性 -label.source=æºç®—法 -label.least.connections=最少连接算法 -label.round.robin=轮询算法 -label.restart.required=需è¦é‡æ–°å¯åЍ -label.clean.up=清除 -label.restart.network=釿–°å¯åŠ¨ç½‘ç»œ -label.edit.network.details=编辑网络详情 -label.add.guest.network=添加æ¥å®¾ç½‘络 -label.guest.networks=æ¥å®¾ç½‘络 -message.ip.address.changed=您的 IP 地å€å¯èƒ½å·²å‘生å˜åŒ–;是å¦è¦åˆ·æ–°æ­¤åˆ—表? 请注æ„,刷新此列表时,“详细信æ¯â€çª—格将关闭。 -state.BackingUp=正在备份 -state.BackedUp=已备份 -label.done=å®Œæˆ -label.vm.name=VM åç§° -message.migrate.volume=请确认您确实è¦å°†å·è¿ç§»åˆ°å…¶ä»–主存储。 -label.migrate.volume=å°†å·è¿ç§»åˆ°å…¶ä»–主存储 -message.create.template=是å¦ç¡®å®žè¦åˆ›å»ºæ¨¡æ¿? -label.create.template=åˆ›å»ºæ¨¡æ¿ -message.download.volume.confirm=请确认您确实è¦ä¸‹è½½æ­¤å· -message.detach.disk=是å¦ç¡®å®žè¦å–消附加此ç£ç›˜? -state.ready=已就绪 -state.Ready=已就绪 -label.vm.display.name=VM 显示åç§° -label.select-view=选择视图 -label.local.storage=本地存储 -label.direct.ips=直接 IP -label.view.all=查看全部 -label.zone.details=区域详情 -message.alert.state.detected=æ£€æµ‹åˆ°è­¦æŠ¥çŠ¶æ€ -state.Starting=正在å¯åЍ -state.Expunging=正在删除 -state.Creating=正在创建 -message.decline.invitation=是å¦ç¡®å®žè¦æ‹’ç»æ­¤é¡¹ç›®é‚€è¯·? -label.decline.invitation=æ‹’ç»é‚€è¯· -message.confirm.join.project=请确认您确实è¦åŠ å…¥æ­¤é¡¹ç›®ã€‚ -message.join.project=您现在已加入了一个项目。请切æ¢åˆ°â€œé¡¹ç›®è§†å›¾â€ä»¥æŸ¥çœ‹é¡¹ç›®ã€‚ -label.accept.project.invitation=接å—项目邀请 -label.token=令牌 -label.project.id=项目 ID -message.enter.token=请输入您在邀请电å­é‚®ä»¶ä¸­æ”¶åˆ°çš„令牌。 -label.enter.token=输入令牌 -state.Accepted=å·²æŽ¥å— -state.Pending=待定 -state.Completed=å·²å®Œæˆ -state.Declined=å·²æ‹’ç» -label.project=项目 -label.invitations=邀请 -label.delete.project=删除项目 -message.delete.project=是å¦ç¡®å®žè¦åˆ é™¤æ­¤é¡¹ç›®? -message.activate.project=是å¦ç¡®å®žè¦æ¿€æ´»æ­¤é¡¹ç›®? -label.activate.project=激活项目 -label.suspend.project=æš‚åœé¡¹ç›® -message.suspend.project=是å¦ç¡®å®žè¦æš‚åœæ­¤é¡¹ç›®? -state.Suspended=å·²æš‚åœ -label.edit.project.details=编辑项目详情 -label.new.project=新建项目 -state.Active=活动 -state.Disabled=å·²ç¦ç”¨ -label.projects=项目 -label.make.project.owner=è®¾ä¸ºå¸æˆ·é¡¹ç›®æ‰€æœ‰è€… -label.remove.project.account=ä»Žé¡¹ç›®ä¸­åˆ é™¤å¸æˆ· -message.project.invite.sent=å‘é€ç»™ç”¨æˆ·çš„邀请;用户接å—邀请åŽï¼Œå°†åŠ å…¥åˆ°é¡¹ç›®ä¸­ -label.add.account.to.project=å‘é¡¹ç›®ä¸­æ·»åŠ å¸æˆ· -label.revoke.project.invite=撤销邀请 -label.project.invite=邀请加入项目 -label.select.project=选择项目 -message.no.projects=您没有任何项目。
    请从“项目â€éƒ¨åˆ†ä¸­åˆ›å»ºä¸€ä¸ªæ–°é¡¹ç›®ã€‚ -message.no.projects.adminOnly=您没有任何项目。
    è¯·è¦æ±‚管ç†å‘˜åˆ›å»ºä¸€ä¸ªæ–°é¡¹ç›®ã€‚ -message.pending.projects.1=您有待定项目邀请: -message.pending.projects.2=è¦æŸ¥çœ‹ï¼Œè¯·è½¬è‡³â€œé¡¹ç›®â€éƒ¨åˆ†ï¼Œç„¶åŽä»Žä¸‹æ‹‰åˆ—表中选择“邀请â€ã€‚ -message.instanceWizard.noTemplates=您没有任何å¯ç”¨æ¨¡æ¿ï¼›è¯·æ·»åŠ ä¸€ä¸ªå…¼å®¹çš„æ¨¡æ¿ï¼Œç„¶åŽé‡æ–°å¯åŠ¨å®žä¾‹å‘导。 -label.view=查看 -instances.actions.reboot.label=釿–°å¯åŠ¨å®žä¾‹ -label.filterBy=è¿‡æ»¤ä¾æ® -label.ok=确定 -notification.reboot.instance=釿–°å¯åŠ¨å®žä¾‹ -notification.start.instance=å¯åŠ¨å®žä¾‹ -notification.stop.instance=åœæ­¢å®žä¾‹ -label.display.name=显示åç§° -label.zone.name=区域åç§° -ui.listView.filters.all=全部 -ui.listView.filters.mine=本用户 -state.Running=正在è¿è¡Œ -state.Stopped=å·²åœæ­¢ -state.Destroyed=å·²é”€æ¯ -state.Error=错误 -message.reset.password.warning.notPasswordEnabled=åˆ›å»ºæ­¤å®žä¾‹çš„æ¨¡æ¿æ—¶æœªå¯ç”¨å¯†ç  -message.reset.password.warning.notStopped=å¿…é¡»å…ˆåœæ­¢æ‚¨çš„实例,æ‰èƒ½å°è¯•更改其当å‰å¯†ç  -label.notifications=通知 -label.default.view=默认视图 -label.project.view=项目视图 - -message.add.system.service.offering=请填写以下数æ®ä»¥æ·»åŠ ä¸€ä¸ªæ–°çš„ç³»ç»ŸæœåŠ¡æ–¹æ¡ˆã€‚ -message.action.delete.system.service.offering=请确认您确实è¦åˆ é™¤æ­¤ç³»ç»ŸæœåŠ¡æ–¹æ¡ˆã€‚ -label.action.delete.system.service.offering=删除系统æœåŠ¡æ–¹æ¡ˆ -label.hypervisor.capabilities=虚拟机管ç†ç¨‹åºåŠŸèƒ½ -label.hypervisor.version=虚拟机管ç†ç¨‹åºç‰ˆæœ¬ -label.max.guest.limit=最大æ¥å®¾æ•°é™åˆ¶ -label.add.network.offering=添加网络方案 -label.supported.services=支æŒçš„æœåŠ¡ -label.service.capabilities=æœåŠ¡åŠŸèƒ½ -label.guest.type=æ¥å®¾ç±»åž‹ -label.specify.IP.ranges=指定 IP 范围 -label.conserve.mode=ä¿æŠ¤æ¨¡å¼ -label.created.by.system=由系统创建 -label.menu.system.service.offerings=系统方案 -label.add.system.service.offering=添加系统æœåŠ¡æ–¹æ¡ˆ -label.redundant.router.capability=冗余路由器功能 -label.supported.source.NAT.type=支æŒçš„æº NAT 类型 -label.elastic.LB=弹性负载平衡器 -label.LB.isolation=负载平衡器隔离 -label.elastic.IP=弹性 IP -label.network.label.display.for.blank.value=使用默认网关 -label.xen.traffic.label=XenServer æµé‡æ ‡ç­¾ -label.kvm.traffic.label=KVM æµé‡æ ‡ç­¾ -label.vmware.traffic.label=VMware æµé‡æ ‡ç­¾ -label.start.IP=èµ·å§‹ IP -label.end.IP=ç»“æŸ IP -label.remove.ip.range=删除 IP 范围 -label.ip.ranges=IP 范围 -label.start.vlan=èµ·å§‹ VLAN -label.end.vlan=ç»“æŸ VLAN -label.broadcast.domain.range=广播域范围 -label.compute=计算 -message.add.guest.network=è¯·ç¡®è®¤æ‚¨ç¡®å®žè¦æ·»åŠ ä¸€ä¸ªæ¥å®¾ç½‘络 -label.subdomain.access=å­åŸŸè®¿é—® -label.guest.start.ip=æ¥å®¾èµ·å§‹ IP -label.guest.end.ip=æ¥å®¾ç»“æŸ IP -label.virtual.router=虚拟路由器 -label.physical.network.ID=物ç†ç½‘络 ID -label.destination.physical.network.id=目标物ç†ç½‘络 ID -label.dhcp=DHCP -label.destroy.router=销æ¯è·¯ç”±å™¨ -message.confirm.destroy.router=请确认您确实è¦é”€æ¯æ­¤è·¯ç”±å™¨ -label.change.service.offering=更改æœåŠ¡æ–¹æ¡ˆ -label.view.console=æŸ¥çœ‹æŽ§åˆ¶å° -label.redundant.state=å†—ä½™çŠ¶æ€ -label.enable.provider=å¯ç”¨æä¾›ç¨‹åº -message.confirm.enable.provider=请确认您确实è¦å¯ç”¨æ­¤æä¾›ç¨‹åº -label.disable.provider=ç¦ç”¨æä¾›ç¨‹åº -message.confirm.disable.provider=请确认您确实è¦ç¦ç”¨æ­¤æä¾›ç¨‹åº -label.shutdown.provider=关闭æä¾›ç¨‹åº -message.confirm.shutdown.provider=请确认您确实è¦å…³é—­æ­¤æä¾›ç¨‹åº -label.netScaler=NetScaler -label.add.new.NetScaler=添加新 NetScaler -label.capacity=å®¹é‡ -label.dedicated=专用 -label.f5=F5 -label.add.new.F5=添加新 F5 -label.srx=SRX -label.providers=æä¾›ç¨‹åº -label.add.new.SRX=添加新 SRX -label.timeout=è¶…æ—¶ -label.public.network=公用网络 -label.private.network=专用网络 -label.enable.swift=å¯ç”¨ SWIFT -confirm.enable.swift=请填写以下信æ¯ä»¥å¯ç”¨å¯¹ SWIFT çš„æ”¯æŒ -message.after.enable.swift=å·²é…ç½® SWIFT。注æ„: 退出此页é¢åŽï¼Œæ‚¨å°†æ— æ³•冿¬¡é‡æ–°é…ç½® SWIFT。 -label.key=密钥 -label.delete.NetScaler=删除 NetScaler -message.confirm.delete.NetScaler=请确认您确实è¦åˆ é™¤ NetScaler -label.delete.F5=删除 F5 -message.confirm.delete.F5=请确认您确实è¦åˆ é™¤ F5 -label.delete.SRX=删除 SRX -message.confirm.delete.SRX=请确认您确实è¦åˆ é™¤ SRX -label.pods=æä¾›ç‚¹ -label.pod.name=æä¾›ç‚¹åç§° -label.reserved.system.gateway=预留的系统网关 -label.reserved.system.netmask=é¢„ç•™çš„ç³»ç»Ÿç½‘ç»œæŽ©ç  -label.start.reserved.system.IP=起始预留系统 IP -label.end.reserved.system.IP=结æŸé¢„留系统 IP -label.clusters=群集 -label.cluster.name=群集åç§° -label.host.MAC=主机 MAC -label.agent.username=代ç†ç”¨æˆ·å -label.agent.password=代ç†å¯†ç  -message.confirm.action.force.reconnect=请确认您确实è¦å¼ºåˆ¶é‡æ–°è¿žæŽ¥æ­¤ä¸»æœºã€‚ -label.resource.state=资æºçŠ¶æ€ -label.LUN.number=LUN å· -message.confirm.remove.IP.range=请确认您确实è¦åˆ é™¤æ­¤ IP 范围。 -message.tooltip.zone.name=区域å称。 -message.tooltip.dns.1=供区域中的 VM 使用的 DNS æœåС噍å称。区域的公用 IP 地å€å¿…须路由到此æœåŠ¡å™¨ã€‚ -message.tooltip.dns.2=供区域中的 VM 使用的辅助 DNS æœåС噍å称。区域的公用 IP 地å€å¿…须路由到此æœåŠ¡å™¨ã€‚ -message.tooltip.internal.dns.1=供区域中的 CloudStack 内部系统 VM 使用的 DNS æœåС噍å称。æä¾›ç‚¹çš„专用 IP 地å€å¿…须路由到此æœåŠ¡å™¨ã€‚ -message.tooltip.internal.dns.2=供区域中的 CloudStack 内部系统 VM 使用的 DNS æœåС噍å称。æä¾›ç‚¹çš„专用 IP 地å€å¿…须路由到此æœåŠ¡å™¨ã€‚ -message.tooltip.network.domain=DNS åŽç¼€ï¼Œå°†ä¸ºç”±æ¥å®¾ VM 访问的网络创建一个自定义域å。 -message.tooltip.pod.name=æ­¤æä¾›ç‚¹çš„å称。 -message.tooltip.reserved.system.gateway=æä¾›ç‚¹ä¸­çš„主机网关。 -message.tooltip.reserved.system.netmask=用于定义æä¾›ç‚¹å­ç½‘的网络å‰ç¼€ã€‚请使用 CIDR 符å·ã€‚ -message.creating.zone=正在创建区域 -message.creating.physical.networks=正在创建物ç†ç½‘络 -message.configuring.physical.networks=正在é…置物ç†ç½‘络 -message.adding.Netscaler.device=正在添加 Netscaler 设备 -message.creating.pod=正在创建æä¾›ç‚¹ -message.configuring.public.traffic=正在é…置公共æµé‡ -message.configuring.storage.traffic=正在é…置存储æµé‡ -message.configuring.guest.traffic=正在é…ç½®æ¥å®¾æµé‡ -message.creating.cluster=正在创建群集 -message.adding.host=正在添加主机 -message.creating.primary.storage=正在创建主存储 -message.creating.secondary.storage=正在创建辅助存储 -message.Zone.creation.complete=已完æˆåˆ›å»ºåŒºåŸŸ -message.enabling.zone=正在å¯ç”¨åŒºåŸŸ -error.something.went.wrong.please.correct.the.following=出现问题;请更正以下å„项 -error.could.not.enable.zone=无法å¯ç”¨åŒºåŸŸ -message.zone.creation.complete.would.you.like.to.enable.this.zone=已完æˆåˆ›å»ºåŒºåŸŸã€‚是å¦è¦å¯ç”¨æ­¤åŒºåŸŸ? -message.please.add.at.lease.one.traffic.range=请至少添加一个æµé‡èŒƒå›´ã€‚ -message.you.must.have.at.least.one.physical.network=您必须至少拥有一个物ç†ç½‘络 -message.please.select.a.different.public.and.management.network.before.removing=请先选择其他公共管ç†ç½‘络,然åŽå†åˆ é™¤ - -label.zone.type=区域类型 -label.setup.zone=设置区域 -label.setup.network=设置网络 -label.add.resources=æ·»åŠ èµ„æº -label.launch=å¯åЍ -label.set.up.zone.type=设置区域类型 -message.please.select.a.configuration.for.your.zone=请为您的区域选择一ç§é…置。 -message.desc.basic.zone=æä¾›ä¸€ä¸ªç½‘络,将直接从此网络中为æ¯ä¸ª VM 实例分é…一个 IP。å¯ä»¥é€šè¿‡å®‰å…¨ç»„等第 3 å±‚æ–¹å¼æä¾›æ¥å®¾éš”离(IP åœ°å€æºè¿‡æ»¤)。 -label.basic=基本 -message.desc.advanced.zone=é€‚ç”¨äºŽæ›´åŠ å¤æ‚的网络拓扑。此网络模å¼åœ¨å®šä¹‰æ¥å®¾ç½‘络并æä¾›é˜²ç«å¢™ã€VPN 或负载平衡器支æŒç­‰è‡ªå®šä¹‰ç½‘ç»œæ–¹æ¡ˆæ–¹é¢æä¾›äº†æœ€å¤§çš„çµæ´»æ€§ã€‚ -label.advanced=高级 -message.desc.zone=区域是 CloudStack 中最大的组织å•ä½ï¼Œä¸€ä¸ªåŒºåŸŸé€šå¸¸ä¸Žä¸€ä¸ªæ•°æ®ä¸­å¿ƒç›¸å¯¹åº”ã€‚åŒºåŸŸå¯æä¾›ç‰©ç†éš”离和冗余。一个区域由一个或多个æä¾›ç‚¹ä»¥åŠç”±åŒºåŸŸä¸­çš„æ‰€æœ‰æä¾›ç‚¹å…±äº«çš„一个辅助存储æœåŠ¡å™¨ç»„æˆï¼Œå…¶ä¸­æ¯ä¸ªæä¾›ç‚¹ä¸­åŒ…å«å¤šä¸ªä¸»æœºå’Œä¸»å­˜å‚¨æœåŠ¡å™¨ã€‚ -label.physical.network=物ç†ç½‘络 -label.public.traffic=公共æµé‡ -label.guest.traffic=æ¥å®¾æµé‡ -label.storage.traffic=存储æµé‡ -message.setup.physical.network.during.zone.creation=添加高级区域时,需è¦è®¾ç½®ä¸€ä¸ªæˆ–多个物ç†ç½‘络。æ¯ä¸ªç½‘络都与虚拟机管ç†ç¨‹åºä¸­çš„一个 NIC 相对应。æ¯ä¸ªç‰©ç†ç½‘络中å¯ä»¥åŒ…å«ä¸€ç§æˆ–å¤šç§æµé‡ç±»åž‹ï¼Œå¹¶å¯¹è¿™äº›æµé‡ç±»åž‹å¯èƒ½çš„ç»„åˆæ–¹å¼è®¾ç½®äº†æŸäº›é™åˆ¶ã€‚

    å¯ä»¥å°†ä¸€ç§æˆ–å¤šç§æµé‡ç±»åž‹æ‹–放到æ¯ä¸ªç‰©ç†ç½‘络中。 -label.add.physical.network=添加物ç†ç½‘络 -label.traffic.types=æµé‡ç±»åž‹ -label.management=ç®¡ç† -label.guest=æ¥å®¾ -label.please.specify.netscaler.info=请指定 Netscaler ä¿¡æ¯ -message.public.traffic.in.advanced.zone=云中的 VM 访问 Internet 时将生æˆå…¬å…±æµé‡ï¼Œä½†å¿…须分é…å¯å…¬å¼€è®¿é—®çš„ IP æ‰èƒ½å®žçŽ°ã€‚æœ€ç»ˆç”¨æˆ·å¯ä»¥ä½¿ç”¨ CloudStack UI 获å–这些 IP,以在其æ¥å®¾ç½‘络与公用网络之间执行 NAT。

    请至少为 Internet æµé‡æä¾›ä¸€ä¸ª IP 地å€èŒƒå›´ã€‚ -message.public.traffic.in.basic.zone=云中的 VM 访问 Internet 或通过 Internet å‘客户端æä¾›æœåŠ¡æ—¶å°†ç”Ÿæˆå…¬å…±æµé‡ï¼Œä½†å¿…须分é…å¯å…¬å¼€è®¿é—®çš„ IP æ‰èƒ½å®žçŽ°ã€‚åˆ›å»ºå®žä¾‹æ—¶ï¼Œå°†æŠŠè¿™ä¸€ç»„å…¬ç”¨ IP 中的 IP (æ¥å®¾ IP 地å€é™¤å¤–)分é…ç»™æ­¤å®žä¾‹ã€‚é™æ€ 1-1 NAT 将在公用 IP 与æ¥å®¾ IP 之间自动设置。最终用户还å¯ä»¥ä½¿ç”¨ CloudStack UI 获å–å…¶ä»– IP,以在其实例与公用 IP ä¹‹é—´æ‰§è¡Œé™æ€ NAT。 -message.add.pod.during.zone.creation=æ¯ä¸ªåŒºåŸŸä¸­å¿…须包å«ä¸€ä¸ªæˆ–多个æä¾›ç‚¹ï¼ŒçŽ°åœ¨æˆ‘ä»¬å°†æ·»åŠ ç¬¬ä¸€ä¸ªæä¾›ç‚¹ã€‚æä¾›ç‚¹ä¸­åŒ…å«ä¸»æœºå’Œä¸»å­˜å‚¨æœåŠ¡å™¨ï¼Œæ‚¨å°†åœ¨éšåŽçš„æŸä¸ªæ­¥éª¤ä¸­æ·»åŠ è¿™äº›ä¸»æœºå’ŒæœåŠ¡å™¨ã€‚é¦–å…ˆï¼Œè¯·ä¸º CloudStack çš„å†…éƒ¨ç®¡ç†æµé‡é…置一个预留 IP 地å€èŒƒå›´ã€‚预留的 IP 范围对云中的æ¯ä¸ªåŒºåŸŸæ¥è¯´å¿…须唯一。 -message.guest.traffic.in.advanced.zone=æ¥å®¾ç½‘络æµé‡æ˜¯æŒ‡æœ€ç»ˆç”¨æˆ·è™šæ‹Ÿæœºä¹‹é—´çš„通信。指定一个 VLAN ID 范围å¯ä¼ é€æ¯ä¸ªç‰©ç†ç½‘络的æ¥å®¾æµé‡ã€‚ -message.guest.traffic.in.basic.zone=æ¥å®¾ç½‘络æµé‡æ˜¯æŒ‡æœ€ç»ˆç”¨æˆ·è™šæ‹Ÿæœºä¹‹é—´çš„通信。应指定一个 CloudStack å¯ä»¥åˆ†é…ç»™æ¥å®¾ VM çš„ IP 地å€èŒƒå›´ã€‚è¯·ç¡®ä¿æ­¤èŒƒå›´ä¸Žé¢„留的系统 IP 范围ä¸é‡å ã€‚ -message.storage.traffic=CloudStack 内部资æº(åŒ…æ‹¬ä¸Žç®¡ç†æœåŠ¡å™¨é€šä¿¡çš„ä»»ä½•ç»„ä»¶ï¼Œä¾‹å¦‚ä¸»æœºå’Œ CloudStack 系统 VM)之间的æµé‡ã€‚请在此处é…置存储æµé‡ã€‚ -message.desc.cluster=æ¯ä¸ªæä¾›ç‚¹ä¸­å¿…须包å«ä¸€ä¸ªæˆ–多个群集,现在我们将添加第一个群集。群集æä¾›äº†ä¸€ç§ç¼–组主机的方法。群集中的所有主机都具有相åŒçš„硬件,è¿è¡Œç›¸åŒçš„虚拟机管ç†ç¨‹åºï¼Œä½äºŽç›¸åŒçš„å­ç½‘中,并访问相åŒçš„共享存储。æ¯ä¸ªç¾¤é›†ç”±ä¸€ä¸ªæˆ–多个主机以åŠä¸€ä¸ªæˆ–多个主存储æœåŠ¡å™¨ç»„æˆã€‚ -message.desc.host=æ¯ä¸ªç¾¤é›†ä¸­å¿…须至少包å«ä¸€ä¸ªä¸»æœºä»¥ä¾›æ¥å®¾ VM 在上é¢è¿è¡Œï¼ŒçŽ°åœ¨æˆ‘ä»¬å°†æ·»åŠ ç¬¬ä¸€ä¸ªä¸»æœºã€‚è¦ä½¿ä¸»æœºåœ¨ CloudStack 中è¿è¡Œï¼Œå¿…须在此主机上安装虚拟机管ç†ç¨‹åºè½¯ä»¶ï¼Œä¸ºå…¶åˆ†é…一个 IP 地å€ï¼Œå¹¶ç¡®ä¿å°†å…¶è¿žæŽ¥åˆ° CloudStack ç®¡ç†æœåŠ¡å™¨ã€‚

    请æä¾›ä¸»æœºçš„ DNS 或 IP 地å€ã€ç”¨æˆ·å(通常为 root)和密ç ï¼Œä»¥åŠç”¨äºŽå¯¹ä¸»æœºè¿›è¡Œåˆ†ç±»çš„任何标签。 -message.desc.primary.storage=æ¯ä¸ªç¾¤é›†ä¸­å¿…须包å«ä¸€ä¸ªæˆ–多个主存储æœåŠ¡å™¨ï¼ŒçŽ°åœ¨æˆ‘ä»¬å°†æ·»åŠ ç¬¬ä¸€ä¸ªä¸»å­˜å‚¨æœåŠ¡å™¨ã€‚ä¸»å­˜å‚¨ä¸­åŒ…å«åœ¨ç¾¤é›†ä¸­çš„主机上è¿è¡Œçš„æ‰€æœ‰ VM çš„ç£ç›˜å·ã€‚请使用底层虚拟机管ç†ç¨‹åºæ”¯æŒçš„ç¬¦åˆæ ‡å‡†çš„å议。 -message.desc.secondary.storage=æ¯ä¸ªåŒºåŸŸä¸­å¿…须至少包å«ä¸€ä¸ª NFS 或辅助存储æœåŠ¡å™¨ï¼ŒçŽ°åœ¨æˆ‘ä»¬å°†æ·»åŠ ç¬¬ä¸€ä¸ª NFS 或辅助存储æœåŠ¡å™¨ã€‚è¾…åŠ©å­˜å‚¨ç”¨äºŽå­˜å‚¨ VM 模æ¿ã€ISO 映åƒå’Œ VM ç£ç›˜å·å¿«ç…§ã€‚æ­¤æœåŠ¡å™¨å¿…é¡»å¯¹åŒºåŸŸä¸­çš„æ‰€æœ‰æœåС噍å¯ç”¨ã€‚

    请æä¾› IP 地å€å’Œå¯¼å‡ºè·¯å¾„。 -label.launch.zone=å¯åŠ¨åŒºåŸŸ -message.please.wait.while.zone.is.being.created=正在创建区域,请ç¨å€™ï¼›æ­¤æ“作å¯èƒ½éœ€è¦ä¸€æ®µæ—¶é—´æ‰èƒ½å®Œæˆ... - -label.load.balancing=负载平衡 -label.static.nat.enabled=å·²å¯ç”¨é™æ€ NAT -label.zones=区域 -label.view.more=查看更多 -label.number.of.zones=åŒºåŸŸæ•°é‡ -label.number.of.pods=æä¾›ç‚¹æ•°é‡ -label.number.of.clusters=ç¾¤é›†æ•°é‡ -label.number.of.hosts=ä¸»æœºæ•°é‡ -label.total.hosts=总主机数 -label.total.CPU=CPU æ€»é‡ -label.total.memory=å†…å­˜æ€»é‡ -label.total.storage=å­˜å‚¨æ€»é‡ -label.purpose=目的 - - - - -label.action.migrate.router=è¿ç§»è·¯ç”±å™¨ -label.action.migrate.router.processing=正在è¿ç§»è·¯ç”±å™¨... -message.migrate.router.confirm=请确认您è¦å°†è·¯ç”±å™¨è¿ç§»åˆ°çš„主机: -label.migrate.router.to=è¿ç§»è·¯ç”±å™¨è‡³ - -label.action.migrate.systemvm=è¿ç§»ç³»ç»Ÿ VM -label.action.migrate.systemvm.processing=正在è¿ç§»ç³»ç»Ÿ VM... -message.migrate.systemvm.confirm=请确认您è¦å°†ç³»ç»Ÿ VM è¿ç§»åˆ°çš„主机: -label.migrate.systemvm.to=è¿ç§»ç³»ç»Ÿ VM 至 - - -mode=æ¨¡å¼ -side.by.side=并行 -inline=å†…è” - -extractable=å¯æå– - -label.ocfs2=OCFS2 - -label.action.edit.host=编辑主机 - -network.rate=网络速率 - -ICMP.type=ICMP 类型 -ICMP.code=ICMP ä»£ç  - -image.directory=图片目录 - -label.action.create.template.from.vm=基于 VM åˆ›å»ºæ¨¡æ¿ -label.action.create.template.from.volume=基于å·åˆ›å»ºæ¨¡æ¿ - -message.vm.create.template.confirm=创建模æ¿å°†è‡ªåЍ釿–°å¯åЍ VM。 - -label.action.manage.cluster=托管群集 -message.action.manage.cluster=è¯·ç¡®è®¤æ‚¨ç¡®å®žè¦æ‰˜ç®¡æ­¤ç¾¤é›†ã€‚ -label.action.manage.cluster.processing=正在托管群集... - -label.action.unmanage.cluster=å–æ¶ˆæ‰˜ç®¡ç¾¤é›† -message.action.unmanage.cluster=请确认您确实è¦å–消托管此群集。 -label.action.unmanage.cluster.processing=æ­£åœ¨å–æ¶ˆæ‰˜ç®¡ç¾¤é›†... - -label.allocation.state=分é…çŠ¶æ€ -managed.state=æ‰˜ç®¡çŠ¶æ€ - -label.default.use=默认使用 -label.host.tags=主机标签 +# 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=\u66f4\u6539\u9879\u76ee\u5c5e\u6027 +confirm.enable.s3=\u8bf7\u586b\u5199\u4e0b\u5217\u4fe1\u606f\u4ee5\u542f\u7528\u652f\u6301S3\u7684\u4e8c\u7ea7\u5b58\u50a8 +confirm.enable.swift=\u8bf7\u586b\u5199\u4ee5\u4e0b\u4fe1\u606f\u4ee5\u542f\u7528\u5bf9 SWIFT \u7684\u652f\u6301 +error.could.not.enable.zone=\u65e0\u6cd5\u542f\u7528\u533a\u57df +error.installWizard.message=\u51fa\u73b0\u95ee\u9898\uff1b\u8bf7\u8fd4\u56de\u5e76\u66f4\u6b63\u4efb\u4f55\u9519\u8bef +error.invalid.username.password=\u7528\u6237\u540d\u6216\u5bc6\u7801\u65e0\u6548 +error.login=\u60a8\u7684\u7528\u6237\u540d/\u5bc6\u7801\u4e0e\u6211\u4eec\u7684\u8bb0\u5f55\u4e0d\u4e00\u81f4\u3002 +error.menu.select=\u6b63\u5728\u9009\u62e9\u9879\u76ee\uff0c\u65e0\u6cd5\u6267\u884c\u64cd\u4f5c\u3002 +error.mgmt.server.inaccessible=\u65e0\u6cd5\u8bbf\u95ee\u7ba1\u7406\u670d\u52a1\u5668\u3002\u8bf7\u7a0d\u540e\u518d\u8bd5\u3002 +error.password.not.match=\u5bc6\u7801\u5b57\u6bb5\u4e0d\u4e00\u81f4 +error.please.specify.physical.network.tags=\u7f51\u7edc\u65b9\u6848\u5728\u60a8\u4e3a\u6b64\u7269\u7406\u7f51\u7edc\u6307\u5b9a\u6807\u7b7e\u4e4b\u540e\u624d\u53ef\u7528\u3002 +error.session.expired=\u60a8\u7684\u4f1a\u8bdd\u5df2\u8fc7\u671f\u3002 +error.something.went.wrong.please.correct.the.following=\u51fa\u73b0\u95ee\u9898\uff1b\u8bf7\u66f4\u6b63\u4ee5\u4e0b\u5404\u9879 +error.unable.to.reach.management.server=\u65e0\u6cd5\u8bbf\u95ee\u7ba1\u7406\u670d\u52a1\u5668 +error.unresolved.internet.name=\u65e0\u6cd5\u89e3\u6790\u60a8\u7684 Internet \u540d\u79f0\u3002 +extractable=\u53ef\u63d0\u53d6 +force.delete.domain.warning=\u8b66\u544a\: \u9009\u62e9\u6b64\u9009\u9879\u5c06\u5bfc\u81f4\u5220\u9664\u6240\u6709\u5b50\u57df\u4ee5\u53ca\u6240\u6709\u76f8\u5173\u8054\u7684\u5e10\u6237\u53ca\u5176\u8d44\u6e90\u3002 +force.delete=\u5f3a\u5236\u5220\u9664 +force.remove.host.warning=\u8b66\u544a\: \u9009\u62e9\u6b64\u9009\u9879\u5c06\u5bfc\u81f4 CloudStack \u5728\u4ece\u7fa4\u96c6\u4e2d\u79fb\u9664\u6b64\u4e3b\u673a\u4e4b\u524d\uff0c\u5f3a\u5236\u505c\u6b62\u6240\u6709\u6b63\u5728\u8fd0\u884c\u7684\u865a\u62df\u673a\u3002 +force.remove=\u5f3a\u5236\u79fb\u9664 +force.stop.instance.warning=\u8b66\u544a\: \u9664\u975e\u4e07\u4e0d\u5f97\u5df2\uff0c\u5426\u5219\u4e0d\u5e94\u5f3a\u5236\u505c\u6b62\u6b64\u5b9e\u4f8b\u3002\u505c\u6b62\u6b64\u5b9e\u4f8b\u53ef\u80fd\u4f1a\u5bfc\u81f4\u6570\u636e\u4e22\u5931\u4ee5\u53ca\u81f4\u4f7f\u865a\u62df\u673a\u72b6\u6001\u4e0d\u4e00\u81f4\u3002 +force.stop=\u5f3a\u5236\u505c\u6b62 +ICMP.code=ICMP \u4ee3\u7801 +ICMP.type=ICMP \u7c7b\u578b +image.directory=\u56fe\u7247\u76ee\u5f55 +inline=\u5185\u8054 +instances.actions.reboot.label=\u91cd\u65b0\u542f\u52a8\u5b9e\u4f8b +label.accept.project.invitation=\u63a5\u53d7\u9879\u76ee\u9080\u8bf7 +label.account.and.security.group=\u5e10\u6237\u3001\u5b89\u5168\u7ec4 +label.account.id=\u5e10\u6237 ID +label.account.name=\u5e10\u6237\u540d\u79f0 +label.account.specific=\u5e10\u6237\u4e13\u7528 +label.accounts=\u5e10\u53f7 +label.account=\u5e10\u6237 +label.acquire.new.ip=\u83b7\u53d6\u65b0 IP +label.action.attach.disk.processing=\u6b63\u5728\u9644\u52a0\u78c1\u76d8... +label.action.attach.disk=\u9644\u52a0\u78c1\u76d8 +label.action.attach.iso.processing=\u6b63\u5728\u9644\u52a0 ISO... +label.action.attach.iso=\u9644\u52a0 ISO +label.action.cancel.maintenance.mode.processing=\u6b63\u5728\u53d6\u6d88\u7ef4\u62a4\u6a21\u5f0f... +label.action.cancel.maintenance.mode=\u53d6\u6d88\u7ef4\u62a4\u6a21\u5f0f +label.action.change.password=\u66f4\u6539\u5bc6\u7801 +label.action.change.service.processing=\u6b63\u5728\u66f4\u6539\u670d\u52a1... +label.action.change.service=\u66f4\u6539\u670d\u52a1 +label.action.copy.ISO.processing=\u6b63\u5728\u590d\u5236 ISO... +label.action.copy.ISO=\u590d\u5236 ISO +label.action.copy.template.processing=\u6b63\u5728\u590d\u5236\u6a21\u677f... +label.action.copy.template=\u590d\u5236\u6a21\u677f +label.action.create.template.from.vm=\u57fa\u4e8e VM \u521b\u5efa\u6a21\u677f +label.action.create.template.from.volume=\u57fa\u4e8e\u5377\u521b\u5efa\u6a21\u677f +label.action.create.template.processing=\u6b63\u5728\u521b\u5efa\u6a21\u677f... +label.action.create.template=\u521b\u5efa\u6a21\u677f +label.action.create.vm.processing=\u6b63\u5728\u521b\u5efa VM... +label.action.create.vm=\u521b\u5efa VM +label.action.create.volume.processing=\u6b63\u5728\u521b\u5efa\u5377... +label.action.create.volume=\u521b\u5efa\u5377 +label.action.delete.account.processing=\u6b63\u5728\u5220\u9664\u5e10\u6237... +label.action.delete.account=\u5220\u9664\u5e10\u6237 +label.action.delete.cluster.processing=\u6b63\u5728\u5220\u9664\u7fa4\u96c6... +label.action.delete.cluster=\u5220\u9664\u7fa4\u96c6 +label.action.delete.disk.offering.processing=\u6b63\u5728\u5220\u9664\u78c1\u76d8\u65b9\u6848... +label.action.delete.disk.offering=\u5220\u9664\u78c1\u76d8\u65b9\u6848 +label.action.delete.domain.processing=\u6b63\u5728\u5220\u9664\u57df... +label.action.delete.domain=\u5220\u9664\u57df +label.action.delete.firewall.processing=\u6b63\u5728\u5220\u9664\u9632\u706b\u5899... +label.action.delete.firewall=\u5220\u9664\u9632\u706b\u5899\u89c4\u5219 +label.action.delete.ingress.rule.processing=\u6b63\u5728\u5220\u9664\u5165\u53e3\u89c4\u5219... +label.action.delete.ingress.rule=\u5220\u9664\u5165\u53e3\u89c4\u5219 +label.action.delete.IP.range.processing=\u6b63\u5728\u5220\u9664 IP \u8303\u56f4... +label.action.delete.IP.range=\u5220\u9664 IP \u8303\u56f4 +label.action.delete.ISO.processing=\u6b63\u5728\u5220\u9664 ISO... +label.action.delete.ISO=\u5220\u9664 ISO +label.action.delete.load.balancer.processing=\u6b63\u5728\u5220\u9664\u8d1f\u8f7d\u5e73\u8861\u5668... +label.action.delete.load.balancer=\u5220\u9664\u8d1f\u8f7d\u5e73\u8861\u5668\u89c4\u5219 +label.action.delete.network.processing=\u6b63\u5728\u5220\u9664\u7f51\u7edc... +label.action.delete.network=\u5220\u9664\u7f51\u7edc +label.action.delete.nexusVswitch=\u5220\u9664 Nexus 1000v +label.action.delete.physical.network=\u5220\u9664\u7269\u7406\u7f51\u7edc +label.action.delete.pod.processing=\u6b63\u5728\u5220\u9664\u63d0\u4f9b\u70b9... +label.action.delete.pod=\u5220\u9664\u63d0\u4f9b\u70b9 +label.action.delete.primary.storage.processing=\u6b63\u5728\u5220\u9664\u4e3b\u5b58\u50a8... +label.action.delete.primary.storage=\u5220\u9664\u4e3b\u5b58\u50a8 +label.action.delete.secondary.storage.processing=\u6b63\u5728\u5220\u9664\u8f85\u52a9\u5b58\u50a8... +label.action.delete.secondary.storage=\u5220\u9664\u8f85\u52a9\u5b58\u50a8 +label.action.delete.security.group.processing=\u6b63\u5728\u5220\u9664\u5b89\u5168\u7ec4... +label.action.delete.security.group=\u5220\u9664\u5b89\u5168\u7ec4 +label.action.delete.service.offering.processing=\u6b63\u5728\u5220\u9664\u670d\u52a1\u65b9\u6848... +label.action.delete.service.offering=\u5220\u9664\u670d\u52a1\u65b9\u6848 +label.action.delete.snapshot.processing=\u6b63\u5728\u5220\u9664\u5feb\u7167... +label.action.delete.snapshot=\u5220\u9664\u5feb\u7167 +label.action.delete.system.service.offering=\u5220\u9664\u7cfb\u7edf\u670d\u52a1\u65b9\u6848 +label.action.delete.template.processing=\u6b63\u5728\u5220\u9664\u6a21\u677f... +label.action.delete.template=\u5220\u9664\u6a21\u677f +label.action.delete.user.processing=\u6b63\u5728\u5220\u9664\u7528\u6237... +label.action.delete.user=\u5220\u9664\u7528\u6237 +label.action.delete.volume.processing=\u6b63\u5728\u5220\u9664\u5377... +label.action.delete.volume=\u5220\u9664\u5377 +label.action.delete.zone.processing=\u6b63\u5728\u5220\u9664\u533a\u57df... +label.action.delete.zone=\u5220\u9664\u533a\u57df +label.action.destroy.instance.processing=\u6b63\u5728\u9500\u6bc1\u5b9e\u4f8b... +label.action.destroy.instance=\u9500\u6bc1\u5b9e\u4f8b +label.action.destroy.systemvm.processing=\u6b63\u5728\u9500\u6bc1\u7cfb\u7edf VM... +label.action.destroy.systemvm=\u9500\u6bc1\u7cfb\u7edf VM +label.action.detach.disk.processing=\u6b63\u5728\u53d6\u6d88\u9644\u52a0\u78c1\u76d8... +label.action.detach.disk=\u53d6\u6d88\u9644\u52a0\u78c1\u76d8 +label.action.detach.iso.processing=\u6b63\u5728\u53d6\u6d88\u9644\u52a0 ISO... +label.action.detach.iso=\u53d6\u6d88\u9644\u52a0 ISO +label.action.disable.account.processing=\u6b63\u5728\u7981\u7528\u5e10\u6237... +label.action.disable.account=\u7981\u7528\u5e10\u6237 +label.action.disable.cluster.processing=\u6b63\u5728\u7981\u7528\u7fa4\u96c6... +label.action.disable.cluster=\u7981\u7528\u7fa4\u96c6 +label.action.disable.nexusVswitch=\u7981\u7528 Nexus 1000v +label.action.disable.physical.network=\u7981\u7528\u7269\u7406\u7f51\u7edc +label.action.disable.pod.processing=\u6b63\u5728\u7981\u7528\u63d0\u4f9b\u70b9... +label.action.disable.pod=\u7981\u7528\u63d0\u4f9b\u70b9 +label.action.disable.static.NAT.processing=\u6b63\u5728\u7981\u7528\u9759\u6001 NAT... +label.action.disable.static.NAT=\u7981\u7528\u9759\u6001 NAT +label.action.disable.user.processing=\u6b63\u5728\u7981\u7528\u7528\u6237... +label.action.disable.user=\u7981\u7528\u7528\u6237 +label.action.disable.zone.processing=\u6b63\u5728\u7981\u7528\u533a\u57df... +label.action.disable.zone=\u7981\u7528\u533a\u57df +label.action.download.ISO=\u4e0b\u8f7d ISO +label.action.download.template=\u4e0b\u8f7d\u6a21\u677f +label.action.download.volume.processing=\u6b63\u5728\u4e0b\u8f7d\u5377... +label.action.download.volume=\u4e0b\u8f7d\u5377 +label.action.edit.account=\u7f16\u8f91\u5e10\u6237 +label.action.edit.disk.offering=\u7f16\u8f91\u78c1\u76d8\u65b9\u6848 +label.action.edit.domain=\u7f16\u8f91\u57df +label.action.edit.global.setting=\u7f16\u8f91\u5168\u5c40\u8bbe\u7f6e +label.action.edit.host=\u7f16\u8f91\u4e3b\u673a +label.action.edit.instance=\u7f16\u8f91\u5b9e\u4f8b +label.action.edit.ISO=\u7f16\u8f91 ISO +label.action.edit.network.offering=\u7f16\u8f91\u7f51\u7edc\u65b9\u6848 +label.action.edit.network.processing=\u6b63\u5728\u7f16\u8f91\u7f51\u7edc... +label.action.edit.network=\u7f16\u8f91\u7f51\u7edc +label.action.edit.pod=\u7f16\u8f91\u63d0\u4f9b\u70b9 +label.action.edit.primary.storage=\u7f16\u8f91\u4e3b\u5b58\u50a8 +label.action.edit.resource.limits=\u7f16\u8f91\u8d44\u6e90\u9650\u5236 +label.action.edit.service.offering=\u7f16\u8f91\u670d\u52a1\u65b9\u6848 +label.action.edit.template=\u7f16\u8f91\u6a21\u677f +label.action.edit.user=\u7f16\u8f91\u7528\u6237 +label.action.edit.zone=\u7f16\u8f91\u533a\u57df +label.action.enable.account.processing=\u6b63\u5728\u542f\u7528\u5e10\u6237... +label.action.enable.account=\u542f\u7528\u5e10\u6237 +label.action.enable.cluster.processing=\u6b63\u5728\u542f\u7528\u7fa4\u96c6... +label.action.enable.cluster=\u542f\u7528\u7fa4\u96c6 +label.action.enable.maintenance.mode.processing=\u6b63\u5728\u542f\u7528\u7ef4\u62a4\u6a21\u5f0f... +label.action.enable.maintenance.mode=\u542f\u7528\u7ef4\u62a4\u6a21\u5f0f +label.action.enable.nexusVswitch=\u542f\u7528 Nexus 1000v +label.action.enable.physical.network=\u542f\u7528\u7269\u7406\u7f51\u7edc +label.action.enable.pod.processing=\u6b63\u5728\u542f\u7528\u63d0\u4f9b\u70b9... +label.action.enable.pod=\u542f\u7528\u63d0\u4f9b\u70b9 +label.action.enable.static.NAT.processing=\u6b63\u5728\u542f\u7528\u9759\u6001 NAT... +label.action.enable.static.NAT=\u542f\u7528\u9759\u6001 NAT +label.action.enable.user.processing=\u6b63\u5728\u542f\u7528\u7528\u6237... +label.action.enable.user=\u542f\u7528\u7528\u6237 +label.action.enable.zone.processing=\u6b63\u5728\u542f\u7528\u533a\u57df... +label.action.enable.zone=\u542f\u7528\u533a\u57df +label.action.force.reconnect.processing=\u6b63\u5728\u91cd\u65b0\u8fde\u63a5... +label.action.force.reconnect=\u5f3a\u5236\u91cd\u65b0\u8fde\u63a5 +label.action.generate.keys.processing=\u6b63\u5728\u751f\u6210\u5bc6\u94a5... +label.action.generate.keys=\u751f\u6210\u5bc6\u94a5 +label.action.list.nexusVswitch=\u5217\u51fa Nexus 1000v +label.action.lock.account.processing=\u6b63\u5728\u9501\u5b9a\u5e10\u6237... +label.action.lock.account=\u9501\u5b9a\u5e10\u6237 +label.action.manage.cluster.processing=\u6b63\u5728\u6258\u7ba1\u7fa4\u96c6... +label.action.manage.cluster=\u6258\u7ba1\u7fa4\u96c6 +label.action.migrate.instance.processing=\u6b63\u5728\u8fc1\u79fb\u5b9e\u4f8b... +label.action.migrate.instance=\u8fc1\u79fb\u5b9e\u4f8b +label.action.migrate.router.processing=\u6b63\u5728\u8fc1\u79fb\u8def\u7531\u5668... +label.action.migrate.router=\u8fc1\u79fb\u8def\u7531\u5668 +label.action.migrate.systemvm.processing=\u6b63\u5728\u8fc1\u79fb\u7cfb\u7edf VM... +label.action.migrate.systemvm=\u8fc1\u79fb\u7cfb\u7edf VM +label.action.reboot.instance.processing=\u6b63\u5728\u91cd\u65b0\u542f\u52a8\u5b9e\u4f8b... +label.action.reboot.instance=\u91cd\u65b0\u542f\u52a8\u5b9e\u4f8b +label.action.reboot.router.processing=\u6b63\u5728\u91cd\u65b0\u542f\u52a8\u8def\u7531\u5668... +label.action.reboot.router=\u91cd\u65b0\u542f\u52a8\u8def\u7531\u5668 +label.action.reboot.systemvm.processing=\u6b63\u5728\u91cd\u65b0\u542f\u52a8\u7cfb\u7edf VM... +label.action.reboot.systemvm=\u91cd\u65b0\u542f\u52a8\u7cfb\u7edf VM +label.action.recurring.snapshot=\u91cd\u73b0\u5feb\u7167 +label.action.register.iso=\u6ce8\u518c ISO +label.action.register.template=\u6ce8\u518c\u6a21\u677f +label.action.release.ip.processing=\u6b63\u5728\u91ca\u653e IP... +label.action.release.ip=\u91ca\u653e IP +label.action.remove.host.processing=\u6b63\u5728\u5220\u9664\u4e3b\u673a... +label.action.remove.host=\u5220\u9664\u4e3b\u673a +label.action.reset.password.processing=\u6b63\u5728\u91cd\u7f6e\u5bc6\u7801... +label.action.reset.password=\u91cd\u7f6e\u5bc6\u7801 +label.action.resize.volume.processing=Resizing Volume.... +label.action.resize.volume=Resize Volume +label.action.resource.limits=\u8d44\u6e90\u9650\u5236 +label.action.restore.instance.processing=\u6b63\u5728\u8fd8\u539f\u5b9e\u4f8b... +label.action.restore.instance=\u8fd8\u539f\u5b9e\u4f8b +label.action.start.instance.processing=\u6b63\u5728\u542f\u52a8\u5b9e\u4f8b... +label.action.start.instance=\u542f\u52a8\u5b9e\u4f8b +label.action.start.router.processing=\u6b63\u5728\u542f\u52a8\u8def\u7531\u5668... +label.action.start.router=\u542f\u52a8\u8def\u7531\u5668 +label.action.start.systemvm.processing=\u6b63\u5728\u542f\u52a8\u7cfb\u7edf VM... +label.action.start.systemvm=\u542f\u52a8\u7cfb\u7edf VM +label.action.stop.instance.processing=\u6b63\u5728\u505c\u6b62\u5b9e\u4f8b... +label.action.stop.instance=\u505c\u6b62\u5b9e\u4f8b +label.action.stop.router.processing=\u6b63\u5728\u505c\u6b62\u8def\u7531\u5668... +label.action.stop.router=\u505c\u6b62\u8def\u7531\u5668 +label.action.stop.systemvm.processing=\u6b63\u5728\u505c\u6b62\u7cfb\u7edf VM... +label.action.stop.systemvm=\u505c\u6b62\u7cfb\u7edf VM +label.actions=\u64cd\u4f5c +label.action.take.snapshot.processing=\u6b63\u5728\u521b\u5efa\u5feb\u7167... +label.action.take.snapshot=\u521b\u5efa\u5feb\u7167 +label.action.unmanage.cluster.processing=\u6b63\u5728\u53d6\u6d88\u6258\u7ba1\u7fa4\u96c6... +label.action.unmanage.cluster=\u53d6\u6d88\u6258\u7ba1\u7fa4\u96c6 +label.action.update.OS.preference.processing=\u6b63\u5728\u66f4\u65b0\u64cd\u4f5c\u7cfb\u7edf\u9996\u9009\u9879... +label.action.update.OS.preference=\u66f4\u65b0\u64cd\u4f5c\u7cfb\u7edf\u9996\u9009\u9879 +label.action.update.resource.count.processing=\u6b63\u5728\u66f4\u65b0\u8d44\u6e90\u6570\u91cf... +label.action.update.resource.count=\u66f4\u65b0\u8d44\u6e90\u6570\u91cf +label.activate.project=\u6fc0\u6d3b\u9879\u76ee +label.active.sessions=\u6d3b\u52a8\u4f1a\u8bdd +label.add.accounts.to=\u6dfb\u52a0\u5e10\u6237\u81f3 +label.add.accounts=\u6dfb\u52a0\u5e10\u6237 +label.add.account.to.project=\u5411\u9879\u76ee\u4e2d\u6dfb\u52a0\u5e10\u6237 +label.add.account=\u6dfb\u52a0\u5e10\u6237 +label.add.ACL=\u6dfb\u52a0 ACL +label.add.by.cidr=\u6309 CIDR \u6dfb\u52a0 +label.add.by.group=\u6309\u7ec4\u6dfb\u52a0 +label.add.by=\u6dfb\u52a0\u65b9\u5f0f +label.add.cluster=\u6dfb\u52a0\u7fa4\u96c6 +label.add.compute.offering=\u6dfb\u52a0\u8ba1\u7b97\u65b9\u6848 +label.add.direct.iprange=\u6dfb\u52a0\u76f4\u63a5 IP \u8303\u56f4 +label.add.disk.offering=\u6dfb\u52a0\u78c1\u76d8\u65b9\u6848 +label.add.domain=\u6dfb\u52a0\u57df +label.add.egress.rule=\u6dfb\u52a0\u51fa\u53e3\u89c4\u5219 +label.add.F5.device=\u6dfb\u52a0 F5 \u8bbe\u5907 +label.add.firewall=\u6dfb\u52a0\u9632\u706b\u5899\u89c4\u5219 +label.add.guest.network=\u6dfb\u52a0\u6765\u5bbe\u7f51\u7edc +label.add.host=\u6dfb\u52a0\u4e3b\u673a +label.adding.cluster=\u6b63\u5728\u6dfb\u52a0\u7fa4\u96c6 +label.adding.failed=\u6dfb\u52a0\u5931\u8d25 +label.adding.pod=\u6b63\u5728\u6dfb\u52a0\u63d0\u4f9b\u70b9 +label.adding.processing=\u6b63\u5728\u6dfb\u52a0... +label.add.ingress.rule=\u6dfb\u52a0\u5165\u53e3\u89c4\u5219 +label.adding.succeeded=\u5df2\u6210\u529f\u6dfb\u52a0 +label.adding=\u6b63\u5728\u6dfb\u52a0 +label.adding.user=\u6b63\u5728\u6dfb\u52a0\u7528\u6237 +label.adding.zone=\u6b63\u5728\u6dfb\u52a0\u533a\u57df +label.add.ip.range=\u6dfb\u52a0 IP \u8303\u56f4 +label.additional.networks=\u5176\u4ed6\u7f51\u7edc +label.add.load.balancer=\u6dfb\u52a0\u8d1f\u8f7d\u5e73\u8861\u5668 +label.add.more=\u6dfb\u52a0\u66f4\u591a +label.add.netScaler.device=\u6dfb\u52a0 Netscaler \u8bbe\u5907 +label.add.network.ACL=\u6dfb\u52a0\u7f51\u7edc ACL +label.add.network.device=\u6dfb\u52a0\u7f51\u7edc\u8bbe\u5907 +label.add.network.offering=\u6dfb\u52a0\u7f51\u7edc\u65b9\u6848 +label.add.network=\u6dfb\u52a0\u7f51\u7edc +label.add.new.F5=\u6dfb\u52a0\u65b0 F5 +label.add.new.gateway=\u6dfb\u52a0\u65b0\u7f51\u5173 +label.add.new.NetScaler=\u6dfb\u52a0\u65b0 NetScaler +label.add.new.SRX=\u6dfb\u52a0\u65b0 SRX +label.add.new.tier=\u6dfb\u52a0\u65b0\u5c42 +label.add.NiciraNvp.device=\u6dfb\u52a0Nvp\u63a7\u5236\u5668 +label.add.physical.network=\u6dfb\u52a0\u7269\u7406\u7f51\u7edc +label.add.pod=\u6dfb\u52a0\u63d0\u4f9b\u70b9 +label.add.port.forwarding.rule=\u6dfb\u52a0\u7aef\u53e3\u8f6c\u53d1\u89c4\u5219 +label.add.primary.storage=\u6dfb\u52a0\u4e3b\u5b58\u50a8 +label.add.resources=\u6dfb\u52a0\u8d44\u6e90 +label.add.route=\u6dfb\u52a0\u8def\u7531 +label.add.rule=\u6dfb\u52a0\u89c4\u5219 +label.add.secondary.storage=\u6dfb\u52a0\u8f85\u52a9\u5b58\u50a8 +label.add.security.group=\u6dfb\u52a0\u5b89\u5168\u7ec4 +label.add.service.offering=\u6dfb\u52a0\u670d\u52a1\u65b9\u6848 +label.add.SRX.device=\u6dfb\u52a0 SRX \u8bbe\u5907 +label.add.static.nat.rule=\u6dfb\u52a0\u9759\u6001 NAT \u89c4\u5219 +label.add.static.route=\u6dfb\u52a0\u9759\u6001\u8def\u7531 +label.add.system.service.offering=\u6dfb\u52a0\u7cfb\u7edf\u670d\u52a1\u65b9\u6848 +label.add.template=\u6dfb\u52a0\u6a21\u677f +label.add.to.group=\u6dfb\u52a0\u5230\u7ec4 +label.add=\u6dfb\u52a0 +label.add.user=\u6dfb\u52a0\u7528\u6237 +label.add.vlan=\u6dfb\u52a0 VLAN +label.add.vms.to.lb=\u5411\u8d1f\u8f7d\u5e73\u8861\u5668\u89c4\u5219\u4e2d\u6dfb\u52a0 VM +label.add.vms=\u6dfb\u52a0 VM +label.add.VM.to.tier=\u5411\u5c42\u4e2d\u6dfb\u52a0 VM +label.add.vm=\u6dfb\u52a0 VM +label.add.volume=\u6dfb\u52a0\u5377 +label.add.vpc=\u6dfb\u52a0 VPC +label.add.vpn.customer.gateway=\u6dfb\u52a0 VPN \u5ba2\u6237\u7f51\u5173 +label.add.VPN.gateway=\u6dfb\u52a0 VPN \u7f51\u5173 +label.add.vpn.user=\u6dfb\u52a0 VPN \u7528\u6237 +label.add.zone=\u6dfb\u52a0\u533a\u57df +label.admin.accounts=\u7ba1\u7406\u5458\u5e10\u6237 +label.admin=\u7ba1\u7406\u5458 +label.advanced.mode=\u9ad8\u7ea7\u6a21\u5f0f +label.advanced.search=\u9ad8\u7ea7\u641c\u7d22 +label.advanced=\u9ad8\u7ea7 +label.agent.password=\u4ee3\u7406\u5bc6\u7801 +label.agent.username=\u4ee3\u7406\u7528\u6237\u540d +label.agree=\u540c\u610f +label.alert=\u8b66\u62a5 +label.algorithm=\u7b97\u6cd5 +label.allocated=\u5df2\u5206\u914d +label.allocation.state=\u5206\u914d\u72b6\u6001 +label.api.key=API \u5bc6\u94a5 +label.apply=\u5e94\u7528 +label.assign.to.load.balancer=\u6b63\u5728\u5c06\u5b9e\u4f8b\u5206\u914d\u7ed9\u8d1f\u8f7d\u5e73\u8861\u5668 +label.assign=\u5206\u914d +label.associated.network.id=\u5df2\u5173\u8054\u7f51\u7edc ID +label.associated.network=\u5173\u8054\u7f51\u7edc +label.attached.iso=\u5df2\u9644\u52a0 ISO +label.availability=\u53ef\u7528\u6027 +label.availability.zone=\u53ef\u7528\u533a\u57df +label.available.public.ips=\u53ef\u7528\u516c\u7528 IP \u5730\u5740 +label.available=\u53ef\u7528 +label.back=\u8fd4\u56de +label.bandwidth=\u5e26\u5bbd +label.basic.mode=\u57fa\u672c\u6a21\u5f0f +label.basic=\u57fa\u672c +label.bootable=\u53ef\u542f\u52a8 +label.broadcast.domain.range=\u5e7f\u64ad\u57df\u8303\u56f4 +label.broadcast.domain.type=\u5e7f\u64ad\u57df\u7c7b\u578b +label.broadcast.uri=\u5e7f\u64adURI +label.by.account=\u6309\u5e10\u6237 +label.by.availability=\u6309\u53ef\u7528\u6027 +label.by.domain=\u6309\u57df +label.by.end.date=\u6309\u7ed3\u675f\u65e5\u671f +label.by.level=\u6309\u7ea7\u522b +label.by.pod=\u6309\u63d0\u4f9b\u70b9 +label.by.role=\u6309\u89d2\u8272 +label.by.start.date=\u6309\u5f00\u59cb\u65e5\u671f +label.by.state=\u6309\u72b6\u6001 +label.bytes.received=\u63a5\u6536\u7684\u5b57\u8282\u6570 +label.bytes.sent=\u53d1\u9001\u7684\u5b57\u8282\u6570 +label.by.traffic.type=\u6309\u6d41\u91cf\u7c7b\u578b +label.by.type.id=\u6309\u7c7b\u578b ID +label.by.type=\u6309\u7c7b\u578b +label.by.zone=\u6309\u533a\u57df +label.cancel=\u53d6\u6d88 +label.capacity=\u5bb9\u91cf +label.certificate=\u8bc1\u4e66 +label.change.service.offering=\u66f4\u6539\u670d\u52a1\u65b9\u6848 +label.change.value=\u66f4\u6539\u503c +label.character=\u5b57\u7b26 +label.checksum=MD5 \u6821\u9a8c\u548c +label.cidr.account=CIDR \u6216\u5e10\u6237/\u5b89\u5168\u7ec4 label.cidr=CIDR -label.cidr.list=æº CIDR - -label.storage.tags=存储标签 - -label.redundant.router=冗余路由器 -label.is.redundant.router=冗余 - -force.delete=强制删除 -force.delete.domain.warning=警告: 选择此选项将导致删除所有å­åŸŸä»¥åŠæ‰€æœ‰ç›¸å…³è”çš„å¸æˆ·åŠå…¶èµ„æºã€‚ - -force.remove=强制移除 -force.remove.host.warning=警告: 选择此选项将导致 CloudStack 在从群集中移除此主机之å‰ï¼Œå¼ºåˆ¶åœæ­¢æ‰€æœ‰æ­£åœ¨è¿è¡Œçš„虚拟机。 - -force.stop=å¼ºåˆ¶åœæ­¢ -force.stop.instance.warning=警告: 除éžä¸‡ä¸å¾—已,å¦åˆ™ä¸åº”å¼ºåˆ¶åœæ­¢æ­¤å®žä¾‹ã€‚åœæ­¢æ­¤å®žä¾‹å¯èƒ½ä¼šå¯¼è‡´æ•°æ®ä¸¢å¤±ä»¥åŠè‡´ä½¿è™šæ‹Ÿæœºçжæ€ä¸ä¸€è‡´ã€‚ - -label.PreSetup=PreSetup -label.SR.name = SR å称标签 -label.SharedMountPoint=SharedMountPoint +label.CIDR.list=CIDR \u5217\u8868 +label.cidr.list=\u6e90 CIDR +label.CIDR.of.destination.network=\u76ee\u7684\u5730\u7f51\u7edc\u7684 CIDR +label.clean.up=\u6e05\u9664 +label.clear.list=\u6e05\u9664\u5217\u8868 +label.close=\u5173\u95ed +label.cloud.console=\u4e91\u7ba1\u7406\u63a7\u5236\u53f0 +label.cloud.managed=\u7531 Cloud.com \u7ba1\u7406 +label.cluster.name=\u7fa4\u96c6\u540d\u79f0 +label.clusters=\u7fa4\u96c6 +label.cluster.type=\u7fa4\u96c6\u7c7b\u578b +label.cluster=\u7fa4\u96c6 label.clvm=CLVM -label.volgroup=å·ç»„ -label.VMFS.datastore=VMFS æ•°æ®å­˜å‚¨ - -label.network.device=网络设备 -label.add.network.device=添加网络设备 -label.network.device.type=网络设备类型 -label.DHCP.server.type=DHCP æœåŠ¡å™¨ç±»åž‹ -label.Pxe.server.type=Pxe æœåŠ¡å™¨ç±»åž‹ -label.PING.storage.IP=PING 存储 IP -label.PING.dir=PING 目录 -label.TFTP.dir=TFTP 目录 -label.PING.CIFS.username=PING CIFS 用户å -label.PING.CIFS.password=PING CIFS å¯†ç  -label.CPU.cap=CPU ä¸Šé™ - - -label.action.enable.zone=å¯ç”¨åŒºåŸŸ -label.action.enable.zone.processing=正在å¯ç”¨åŒºåŸŸ... -message.action.enable.zone=请确认您确实è¦å¯ç”¨æ­¤åŒºåŸŸã€‚ -label.action.disable.zone=ç¦ç”¨åŒºåŸŸ -label.action.disable.zone.processing=正在ç¦ç”¨åŒºåŸŸ... -message.action.disable.zone=请确认您确实è¦ç¦ç”¨æ­¤åŒºåŸŸã€‚ - -label.action.enable.pod=å¯ç”¨æä¾›ç‚¹ -label.action.enable.pod.processing=正在å¯ç”¨æä¾›ç‚¹... -message.action.enable.pod=请确认您确实è¦å¯ç”¨æ­¤æä¾›ç‚¹ã€‚ -label.action.disable.pod=ç¦ç”¨æä¾›ç‚¹ -label.action.disable.pod.processing=正在ç¦ç”¨æä¾›ç‚¹... -message.action.disable.pod=请确认您确实è¦ç¦ç”¨æ­¤æä¾›ç‚¹ã€‚ - -label.action.enable.cluster=å¯ç”¨ç¾¤é›† -label.action.enable.cluster.processing=正在å¯ç”¨ç¾¤é›†... -message.action.enable.cluster=请确认您确实è¦å¯ç”¨æ­¤ç¾¤é›†ã€‚ -label.action.disable.cluster=ç¦ç”¨ç¾¤é›† -label.action.disable.cluster.processing=正在ç¦ç”¨ç¾¤é›†... -message.action.disable.cluster=请确认您确实è¦ç¦ç”¨æ­¤ç¾¤é›†ã€‚ - -label.account.id=叿ˆ· ID -label.account.name=叿ˆ·åç§° -label.account.specific=叿ˆ·ä¸“用 -label.account=叿ˆ· -label.accounts=叿ˆ· -label.acquire.new.ip=èŽ·å–æ–° IP -label.show.ingress.rule=显示入å£è§„则 -label.hide.ingress.rule=éšè—å…¥å£è§„则 -label.action.attach.disk.processing=正在附加ç£ç›˜... -label.action.attach.disk=附加ç£ç›˜ -label.action.attach.iso.processing=正在附加 ISO... -label.action.attach.iso=附加 ISO -label.action.cancel.maintenance.mode.processing=æ­£åœ¨å–æ¶ˆç»´æŠ¤æ¨¡å¼... -label.action.cancel.maintenance.mode=å–æ¶ˆç»´æŠ¤æ¨¡å¼ -label.action.change.password=æ›´æ”¹å¯†ç  -label.action.change.service.processing=正在更改æœåŠ¡... -label.action.change.service=更改æœåŠ¡ -label.action.copy.ISO.processing=正在å¤åˆ¶ ISO... -label.action.copy.ISO=å¤åˆ¶ ISO -label.action.copy.template.processing=正在å¤åˆ¶æ¨¡æ¿... -label.action.copy.template=å¤åˆ¶æ¨¡æ¿ -label.action.create.template.processing=正在创建模æ¿... -label.action.create.template=åˆ›å»ºæ¨¡æ¿ -label.action.create.vm.processing=正在创建 VM... -label.action.create.vm=创建 VM -label.action.create.volume.processing=正在创建å·... -label.action.create.volume=åˆ›å»ºå· -label.action.delete.IP.range.processing=正在删除 IP 范围... -label.action.delete.IP.range=删除 IP 范围 -label.action.delete.ISO.processing=正在删除 ISO... -label.action.delete.ISO=删除 ISO -label.action.delete.account.processing=æ­£åœ¨åˆ é™¤å¸æˆ·... -label.action.delete.account=åˆ é™¤å¸æˆ· -label.action.delete.cluster.processing=正在删除群集... -label.action.delete.cluster=删除群集 -label.action.delete.disk.offering.processing=正在删除ç£ç›˜æ–¹æ¡ˆ... -label.action.delete.disk.offering=删除ç£ç›˜æ–¹æ¡ˆ - -label.action.update.resource.count=æ›´æ–°èµ„æºæ•°é‡ -label.action.update.resource.count.processing=æ­£åœ¨æ›´æ–°èµ„æºæ•°é‡... - -label.action.delete.domain=删除域 -label.action.delete.domain.processing=正在删除域... - -label.action.delete.firewall.processing=正在删除防ç«å¢™... -label.action.delete.firewall=删除防ç«å¢™è§„则 -label.action.delete.ingress.rule.processing=正在删除入å£è§„则... -label.action.delete.ingress.rule=删除入å£è§„则 -label.action.delete.load.balancer.processing=正在删除负载平衡器... -label.action.delete.load.balancer=删除负载平衡器规则 -label.action.edit.network.processing=正在编辑网络... -label.action.edit.network=编辑网络 -label.action.delete.network.processing=正在删除网络... -label.action.delete.network=删除网络 -label.action.delete.pod.processing=正在删除æä¾›ç‚¹... -label.action.delete.pod=删除æä¾›ç‚¹ -label.action.delete.primary.storage.processing=正在删除主存储... -label.action.delete.primary.storage=删除主存储 -label.action.delete.secondary.storage.processing=正在删除辅助存储... -label.action.delete.secondary.storage=删除辅助存储 -label.action.delete.security.group.processing=正在删除安全组... -label.action.delete.security.group=删除安全组 -label.action.delete.service.offering.processing=正在删除æœåŠ¡æ–¹æ¡ˆ... -label.action.delete.service.offering=删除æœåŠ¡æ–¹æ¡ˆ -label.action.delete.snapshot.processing=正在删除快照... -label.action.delete.snapshot=删除快照 -label.action.delete.template.processing=正在删除模æ¿... -label.action.delete.template=åˆ é™¤æ¨¡æ¿ -label.action.delete.user.processing=正在删除用户... -label.action.delete.user=删除用户 -label.action.delete.volume.processing=正在删除å·... -label.action.delete.volume=åˆ é™¤å· -label.action.delete.zone.processing=正在删除区域... -label.action.delete.zone=删除区域 -label.action.destroy.instance.processing=正在销æ¯å®žä¾‹... -label.action.destroy.instance=销æ¯å®žä¾‹ -label.action.destroy.systemvm.processing=正在销æ¯ç³»ç»Ÿ VM... -label.action.destroy.systemvm=销æ¯ç³»ç»Ÿ VM -label.action.detach.disk.processing=æ­£åœ¨å–æ¶ˆé™„加ç£ç›˜... -label.action.detach.disk=å–æ¶ˆé™„加ç£ç›˜ -label.action.detach.iso.processing=æ­£åœ¨å–æ¶ˆé™„加 ISO... -label.action.detach.iso=å–æ¶ˆé™„加 ISO -label.action.disable.account.processing=正在ç¦ç”¨å¸æˆ·... -label.action.disable.account=ç¦ç”¨å¸æˆ· -label.action.disable.static.NAT.processing=正在ç¦ç”¨é™æ€ NAT... -label.action.disable.static.NAT=ç¦ç”¨é™æ€ NAT -label.action.disable.user.processing=正在ç¦ç”¨ç”¨æˆ·... -label.action.disable.user=ç¦ç”¨ç”¨æˆ· -label.action.download.ISO=下载 ISO -label.action.download.template=ä¸‹è½½æ¨¡æ¿ -label.action.download.volume.processing=正在下载å·... -label.action.download.volume=ä¸‹è½½å· -label.action.edit.ISO=编辑 ISO -label.action.edit.account=ç¼–è¾‘å¸æˆ· -label.action.edit.disk.offering=编辑ç£ç›˜æ–¹æ¡ˆ -label.action.edit.domain=编辑域 -label.action.edit.global.setting=编辑全局设置 -label.action.edit.instance=编辑实例 -label.action.edit.network.offering=编辑网络方案 -label.action.edit.pod=编辑æä¾›ç‚¹ -label.action.edit.primary.storage=编辑主存储 -label.action.edit.resource.limits=编辑资æºé™åˆ¶ -label.action.edit.service.offering=编辑æœåŠ¡æ–¹æ¡ˆ -label.action.edit.template=ç¼–è¾‘æ¨¡æ¿ -label.action.edit.user=编辑用户 -label.action.edit.zone=编辑区域 -label.action.enable.account.processing=正在å¯ç”¨å¸æˆ·... -label.action.enable.account=å¯ç”¨å¸æˆ· -label.action.enable.maintenance.mode.processing=正在å¯ç”¨ç»´æŠ¤æ¨¡å¼... -label.action.enable.maintenance.mode=å¯ç”¨ç»´æŠ¤æ¨¡å¼ -label.action.enable.static.NAT.processing=正在å¯ç”¨é™æ€ NAT... -label.action.enable.static.NAT=å¯ç”¨é™æ€ NAT -label.action.enable.user.processing=正在å¯ç”¨ç”¨æˆ·... -label.action.enable.user=å¯ç”¨ç”¨æˆ· -label.action.force.reconnect.processing=æ­£åœ¨é‡æ–°è¿žæŽ¥... -label.action.force.reconnect=å¼ºåˆ¶é‡æ–°è¿žæŽ¥ -label.action.generate.keys.processing=正在生æˆå¯†é’¥... -label.action.generate.keys=生æˆå¯†é’¥ -label.action.lock.account.processing=正在é”å®šå¸æˆ·... -label.action.lock.account=é”å®šå¸æˆ· -label.action.migrate.instance=è¿ç§»å®žä¾‹ -label.action.migrate.instance.processing=正在è¿ç§»å®žä¾‹... -label.action.reboot.instance.processing=æ­£åœ¨é‡æ–°å¯åŠ¨å®žä¾‹... -label.action.reboot.instance=釿–°å¯åŠ¨å®žä¾‹ -label.action.reboot.router.processing=æ­£åœ¨é‡æ–°å¯åŠ¨è·¯ç”±å™¨... -label.action.reboot.router=釿–°å¯åŠ¨è·¯ç”±å™¨ -label.action.reboot.systemvm.processing=æ­£åœ¨é‡æ–°å¯åŠ¨ç³»ç»Ÿ VM... -label.action.reboot.systemvm=釿–°å¯åŠ¨ç³»ç»Ÿ VM -label.action.recurring.snapshot=é‡çŽ°å¿«ç…§ -label.action.release.ip.processing=正在释放 IP... -label.action.release.ip=释放 IP -label.action.remove.host.processing=正在删除主机... -label.action.remove.host=删除主机 -label.action.reset.password.processing=正在é‡ç½®å¯†ç ... -label.action.reset.password=é‡ç½®å¯†ç  -label.action.resource.limits=资æºé™åˆ¶ -label.action.restore.instance.processing=正在还原实例... -label.action.restore.instance=还原实例 -label.action.start.instance.processing=正在å¯åŠ¨å®žä¾‹... -label.action.start.instance=å¯åŠ¨å®žä¾‹ -label.action.start.router.processing=正在å¯åŠ¨è·¯ç”±å™¨... -label.action.start.router=å¯åŠ¨è·¯ç”±å™¨ -label.action.start.systemvm.processing=正在å¯åŠ¨ç³»ç»Ÿ VM... -label.action.start.systemvm=å¯åŠ¨ç³»ç»Ÿ VM -label.action.stop.instance.processing=æ­£åœ¨åœæ­¢å®žä¾‹... -label.action.stop.instance=åœæ­¢å®žä¾‹ -label.action.stop.router.processing=æ­£åœ¨åœæ­¢è·¯ç”±å™¨... -label.action.stop.router=åœæ­¢è·¯ç”±å™¨ -label.action.stop.systemvm.processing=æ­£åœ¨åœæ­¢ç³»ç»Ÿ VM... -label.action.stop.systemvm=åœæ­¢ç³»ç»Ÿ VM -label.action.take.snapshot.processing=正在创建快照... -label.action.take.snapshot=创建快照 -label.action.update.OS.preference.processing=正在更新æ“作系统首选项... -label.action.update.OS.preference=æ›´æ–°æ“作系统首选项 -label.actions=æ“作 -label.active.sessions=æ´»åŠ¨ä¼šè¯ -label.add.account=æ·»åŠ å¸æˆ· -label.add.by.cidr=按 CIDR 添加 -label.add.by.group=按组添加 -label.add.cluster=添加群集 -label.add.direct.iprange=添加直接 IP 范围 -label.add.disk.offering=添加ç£ç›˜æ–¹æ¡ˆ -label.add.domain=添加域 -label.add.firewall=添加防ç«å¢™è§„则 -label.add.host=添加主机 -label.add.ingress.rule=添加入å£è§„则 -label.add.ip.range=添加 IP 范围 -label.add.load.balancer=添加负载平衡器 -label.add.more=添加更多 -label.add.network=添加网络 -label.add.pod=添加æä¾›ç‚¹ -label.add.primary.storage=添加主存储 -label.add.secondary.storage=添加辅助存储 -label.add.security.group=添加安全组 -label.add.service.offering=添加æœåŠ¡æ–¹æ¡ˆ -label.add.template=æ·»åŠ æ¨¡æ¿ -label.add.user=添加用户 -label.add.vlan=添加 VLAN -label.add.volume=æ·»åŠ å· -label.add.zone=添加区域 -label.add=添加 -label.adding.cluster=正在添加群集 -label.adding.failed=添加失败 -label.adding.pod=正在添加æä¾›ç‚¹ -label.adding.processing=正在添加... -label.adding.succeeded=å·²æˆåŠŸæ·»åŠ  -label.adding.user=正在添加用户 -label.adding.zone=正在添加区域 -label.adding=正在添加 -label.additional.networks=其他网络 -label.admin.accounts=管ç†å‘˜å¸æˆ· -label.admin=管ç†å‘˜ -label.advanced.mode=é«˜çº§æ¨¡å¼ -label.advanced.search=高级æœç´¢ -label.advanced=高级 -label.alert=警报 -label.algorithm=算法 -label.allocated=å·²åˆ†é… -label.api.key=API 密钥 -label.assign.to.load.balancer=正在将实例分é…给负载平衡器 -label.assign=åˆ†é… -label.associated.network.id=已关è”网络 ID -label.attached.iso=已附加 ISO -label.availability.zone=å¯ç”¨åŒºåŸŸ -label.availability=å¯ç”¨æ€§ -label.available.public.ips=å¯ç”¨å…¬ç”¨ IP åœ°å€ -label.available=å¯ç”¨ -label.back=返回 -label.basic.mode=åŸºæœ¬æ¨¡å¼ -label.bootable=å¯å¯åЍ -label.broadcast.domain.type=广播域类型 -label.by.account=æŒ‰å¸æˆ· -label.by.availability=按å¯ç”¨æ€§ -label.by.domain=按域 -label.by.end.date=æŒ‰ç»“æŸæ—¥æœŸ -label.by.level=按级别 -label.by.pod=按æä¾›ç‚¹ -label.by.role=按角色 -label.by.start.date=按开始日期 -label.by.state=æŒ‰çŠ¶æ€ -label.by.traffic.type=按æµé‡ç±»åž‹ -label.by.type.id=按类型 ID -label.by.type=按类型 -label.by.zone=按区域 -label.bytes.received=接收的字节数 -label.bytes.sent=å‘é€çš„字节数 -label.cancel=å–æ¶ˆ -label.certificate=è¯ä¹¦ -label.privatekey=PKCS#8 ç§é’¥ -label.domain.suffix=DNS 域åŽç¼€(例如 xyz.com) -label.character=字符 -label.cidr.account=CIDR æˆ–å¸æˆ·/安全组 -label.close=关闭 -label.cloud.console=äº‘ç®¡ç†æŽ§åˆ¶å° -label.cloud.managed=ç”± Cloud.com ç®¡ç† -label.cluster.type=群集类型 -label.cluster=群集 -label.code=ä»£ç  -label.confirmation=确认 -label.cpu.allocated.for.VMs=已分é…ç»™ VM çš„ CPU -label.cpu.allocated=已分é…çš„ CPU -label.cpu.utilized=CPU 利用率 +label.code=\u4ee3\u7801 +label.community=\u793e\u533a +label.compute.and.storage=\u8ba1\u7b97\u4e0e\u5b58\u50a8 +label.compute.offerings=\u8ba1\u7b97\u65b9\u6848 +label.compute.offering=\u8ba1\u7b97\u65b9\u6848 +label.compute=\u8ba1\u7b97 +label.configuration=\u4e91\u5e73\u53f0\u914d\u7f6e +label.configure.network.ACLs=\u914d\u7f6e\u7f51\u7edc ACL +label.configure=\u914d\u7f6e +label.configure.vpc=\u914d\u7f6e VPC +label.confirmation=\u786e\u8ba4 +label.confirm.password=\u786e\u8ba4\u5bc6\u7801 +label.congratulations=\u795d\u8d3a\u60a8\! +label.conserve.mode=\u4fdd\u62a4\u6a21\u5f0f +label.console.proxy=\u63a7\u5236\u53f0\u4ee3\u7406 +label.continue.basic.install=\u7ee7\u7eed\u6267\u884c\u57fa\u672c\u5b89\u88c5 +label.continue=\u7ee7\u7eed +label.corrections.saved=\u5df2\u4fdd\u5b58\u4fee\u6b63 +label.cpu.allocated.for.VMs=\u5df2\u5206\u914d\u7ed9 VM \u7684 CPU +label.cpu.allocated=\u5df2\u5206\u914d\u7684 CPU +label.CPU.cap=CPU \u4e0a\u9650 label.cpu=CPU -label.created=创建日期 -label.cross.zones=跨区域 -label.custom.disk.size=自定义ç£ç›˜å¤§å° -label.daily=æ¯å¤©ä¸€æ¬¡ -label.data.disk.offering=æ•°æ®ç£ç›˜æ–¹æ¡ˆ -label.date=日期 -label.day.of.month=日期 -label.day.of.week=星期 -label.delete=删除 -label.deleting.failed=删除失败 -label.deleting.processing=正在删除... -label.description=说明 -label.detaching.disk=æ­£åœ¨å–æ¶ˆé™„加ç£ç›˜ -label.details=è¯¦ç»†ä¿¡æ¯ -label.device.id=设备 ID -label.disabled=å·²ç¦ç”¨ -label.disabling.vpn.access=正在ç¦ç”¨ VPN 访问 -label.disk.allocated=已分é…çš„ç£ç›˜ -label.disk.offering=ç£ç›˜æ–¹æ¡ˆ -label.disk.size.gb=ç£ç›˜å¤§å°(GB) -label.disk.size=ç£ç›˜å¤§å° -label.disk.total=ç£ç›˜æ€»é‡ -label.disk.volume=ç£ç›˜å· -label.display.text=显示文本 +label.cpu.mhz=CPU (MHz) +label.cpu.utilized=CPU \u5229\u7528\u7387 +label.created.by.system=\u7531\u7cfb\u7edf\u521b\u5efa +label.created=\u521b\u5efa\u65e5\u671f +label.create.project=\u521b\u5efa\u9879\u76ee +label.create.template=\u521b\u5efa\u6a21\u677f +label.create.VPN.connection=\u521b\u5efa VPN \u8fde\u63a5 +label.cross.zones=\u8de8\u533a\u57df +label.custom.disk.size=\u81ea\u5b9a\u4e49\u78c1\u76d8\u5927\u5c0f +label.daily=\u6bcf\u5929\u4e00\u6b21 +label.data.disk.offering=\u6570\u636e\u78c1\u76d8\u65b9\u6848 +label.date=\u65e5\u671f +label.day.of.month=\u65e5\u671f +label.day.of.week=\u661f\u671f +label.dead.peer.detection=\u5931\u6548\u5bf9\u7b49\u4f53\u68c0\u6d4b +label.decline.invitation=\u62d2\u7edd\u9080\u8bf7 +label.dedicated=\u4e13\u7528 +label.default=\u9ed8\u8ba4\u503c +label.default.use=\u9ed8\u8ba4\u4f7f\u7528 +label.default.view=\u9ed8\u8ba4\u89c6\u56fe +label.delete.F5=\u5220\u9664 F5 +label.delete.gateway=\u5220\u9664\u7f51\u5173 +label.delete.NetScaler=\u5220\u9664 NetScaler +label.delete.NiciraNvp=\u5220\u9664Nvp\u63a7\u5236\u5668 +label.delete.project=\u5220\u9664\u9879\u76ee +label.delete.SRX=\u5220\u9664 SRX +label.delete=\u5220\u9664 +label.delete.VPN.connection=\u5220\u9664 VPN \u8fde\u63a5 +label.delete.VPN.customer.gateway=\u5220\u9664 VPN \u5ba2\u6237\u7f51\u5173 +label.delete.VPN.gateway=\u5220\u9664 VPN \u7f51\u5173 +label.delete.vpn.user=\u5220\u9664 VPN \u7528\u6237 +label.deleting.failed=\u5220\u9664\u5931\u8d25 +label.deleting.processing=\u6b63\u5728\u5220\u9664... +label.description=\u8bf4\u660e +label.destination.physical.network.id=\u76ee\u6807\u7269\u7406\u7f51\u7edc ID +label.destination.zone=\u76ee\u6807\u533a\u57df +label.destroy.router=\u9500\u6bc1\u8def\u7531\u5668 +label.destroy=\u00e9\u0094\u0080\u00e6\u00af\u0081 +label.detaching.disk=\u6b63\u5728\u53d6\u6d88\u9644\u52a0\u78c1\u76d8 +label.details=\u8be6\u7ec6\u4fe1\u606f +label.device.id=\u8bbe\u5907 ID +label.devices=\u8bbe\u5907 +label.dhcp=DHCP +label.DHCP.server.type=DHCP \u670d\u52a1\u5668\u7c7b\u578b +label.direct.ips=\u76f4\u63a5 IP +label.disabled=\u5df2\u7981\u7528 +label.disable.provider=\u7981\u7528\u63d0\u4f9b\u7a0b\u5e8f +label.disable.vpn=\u7981\u7528 VPN +label.disabling.vpn.access=\u6b63\u5728\u7981\u7528 VPN \u8bbf\u95ee +label.disk.allocated=\u5df2\u5206\u914d\u7684\u78c1\u76d8 +label.disk.offering=\u78c1\u76d8\u65b9\u6848 +label.disk.size.gb=\u78c1\u76d8\u5927\u5c0f(GB) +label.disk.size=\u78c1\u76d8\u5927\u5c0f +label.disk.total=\u78c1\u76d8\u603b\u91cf +label.disk.volume=\u78c1\u76d8\u5377 +label.display.name=\u663e\u793a\u540d\u79f0 +label.display.text=\u663e\u793a\u6587\u672c label.dns.1=DNS 1 label.dns.2=DNS 2 -label.domain.admin=域管ç†å‘˜ -label.domain.id=域 ID -label.domain.name=域å -label.domain=域 -label.double.quotes.are.not.allowed=ä¸å…许使用åŒå¼•å· -label.download.progress=下载进度 -label.edit=编辑 -label.email=电å­é‚®ä»¶ -label.enabling.vpn.access=正在å¯ç”¨ VPN 访问 -label.enabling.vpn=正在å¯ç”¨ VPN -label.end.port=结æŸç«¯å£ -label.endpoint.or.operation=端点或æ“作 -label.error.code=é”™è¯¯ä»£ç  -label.error=错误 -label.esx.host=ESX/ESXi 主机 -label.example=示例 -label.failed=失败 -label.featured=精选 -label.firewall=防ç«å¢™ -label.first.name=åå­— -label.format=æ ¼å¼ -label.friday=星期五 -label.full=满载 -label.gateway=网关 -label.general.alerts=常规警报 -label.generating.url=æ­£åœ¨ç”Ÿæˆ URL -label.go.step.2=转至步骤 2 -label.go.step.3=转至步骤 3 -label.go.step.4=转至步骤 4 -label.go.step.5=转至步骤 5 -label.group.optional=组(å¯é€‰) -label.group=组 -label.guest.cidr=æ¥å®¾ CIDR -label.guest.gateway=æ¥å®¾ç½‘å…³ -label.guest.ip.range=æ¥å®¾ IP 范围 -label.guest.ip=æ¥å®¾ IP åœ°å€ -label.guest.netmask=æ¥å®¾ç½‘ç»œæŽ©ç  -label.ha.enabled=å·²å¯ç”¨é«˜å¯ç”¨æ€§ -label.help=帮助 -label.host.alerts=主机警报 -label.host.name=主机åç§° -label.host=主机 -label.hosts=主机 -label.hourly=æ¯å°æ—¶ä¸€æ¬¡ -label.hypervisor.type=虚拟机管ç†ç¨‹åºç±»åž‹ -label.hypervisor=虚拟机管ç†ç¨‹åº +label.dns=DNS +label.DNS.domain.for.guest.networks=\u6765\u5bbe\u7f51\u7edc\u7684 DNS \u57df +label.domain.admin=\u57df\u7ba1\u7406\u5458 +label.domain.id=\u57df ID +label.domain.name=\u57df\u540d +label.domain.router=\u57df\u8def\u7531\u5668 +label.domain.suffix=DNS \u57df\u540e\u7f00(\u4f8b\u5982 xyz.com) +label.domain=\u57df +label.done=\u5b8c\u6210 +label.double.quotes.are.not.allowed=\u4e0d\u5141\u8bb8\u4f7f\u7528\u53cc\u5f15\u53f7 +label.download.progress=\u4e0b\u8f7d\u8fdb\u5ea6 +label.drag.new.position=\u62d6\u52a8\u5230\u65b0\u4f4d\u7f6e +label.edit.lb.rule=\u7f16\u8f91\u8d1f\u8f7d\u5e73\u8861\u5668\u89c4\u5219 +label.edit.network.details=\u7f16\u8f91\u7f51\u7edc\u8be6\u60c5 +label.edit.project.details=\u7f16\u8f91\u9879\u76ee\u8be6\u60c5 +label.edit.tags=\u7f16\u8f91\u6807\u7b7e +label.edit.traffic.type=\u7f16\u8f91\u6d41\u91cf\u7c7b\u578b +label.edit=\u7f16\u8f91 +label.edit.vpc=\u7f16\u8f91 VPC +label.egress.rules=\u51fa\u53e3\u89c4\u5219 +label.egress.rule=\u51fa\u53e3\u89c4\u5219 +label.elastic.IP=\u5f39\u6027 IP +label.elastic.LB=\u5f39\u6027\u8d1f\u8f7d\u5e73\u8861\u5668 +label.elastic=\u5f39\u6027 +label.email=\u7535\u5b50\u90ae\u4ef6 +label.enable.provider=\u542f\u7528\u63d0\u4f9b\u7a0b\u5e8f +label.enable.s3=\u542f\u7528\u652f\u6301S3\u7684\u4e8c\u7ea7\u5b58\u50a8 +label.enable.swift=\u542f\u7528 SWIFT +label.enable.vpn=\u542f\u7528 VPN +label.enabling.vpn.access=\u6b63\u5728\u542f\u7528 VPN \u8bbf\u95ee +label.enabling.vpn=\u6b63\u5728\u542f\u7528 VPN +label.end.IP=\u7ed3\u675f IP +label.endpoint.or.operation=\u7aef\u70b9\u6216\u64cd\u4f5c +label.endpoint=\u7aef\u70b9 +label.end.port=\u7ed3\u675f\u7aef\u53e3 +label.end.reserved.system.IP=\u7ed3\u675f\u9884\u7559\u7cfb\u7edf IP +label.end.vlan=\u7ed3\u675f VLAN +label.enter.token=\u8f93\u5165\u4ee4\u724c +label.error.code=\u9519\u8bef\u4ee3\u7801 +label.error=\u9519\u8bef +label.ESP.encryption=ESP \u52a0\u5bc6\u7b97\u6cd5 +label.ESP.hash=ESP \u54c8\u5e0c\u7b97\u6cd5 +label.ESP.lifetime=ESP \u4f7f\u7528\u671f\u9650(\u7b2c\u4e8c\u9636\u6bb5) +label.ESP.policy=ESP \u7b56\u7565 +label.esx.host=ESX/ESXi \u4e3b\u673a +label.example=\u793a\u4f8b +label.f5=F5 +label.failed=\u5931\u8d25 +label.featured=\u7cbe\u9009 +label.fetch.latest=\u63d0\u53d6\u6700\u65b0\u5185\u5bb9 +label.filterBy=\u8fc7\u6ee4\u4f9d\u636e +label.firewall=\u9632\u706b\u5899 +label.first.name=\u540d\u5b57 +label.format=\u683c\u5f0f +label.friday=\u661f\u671f\u4e94 +label.full.path=\u5b8c\u6574\u8def\u5f84 +label.full=\u6ee1\u8f7d +label.gateway=\u7f51\u5173 +label.general.alerts=\u5e38\u89c4\u8b66\u62a5 +label.generating.url=\u6b63\u5728\u751f\u6210 URL +label.go.step.2=\u8f6c\u81f3\u6b65\u9aa4 2 +label.go.step.3=\u8f6c\u81f3\u6b65\u9aa4 3 +label.go.step.4=\u8f6c\u81f3\u6b65\u9aa4 4 +label.go.step.5=\u8f6c\u81f3\u6b65\u9aa4 5 +label.group.optional=\u7ec4(\u53ef\u9009) +label.group=\u7ec4 +label.guest.cidr=\u6765\u5bbe CIDR +label.guest.end.ip=\u6765\u5bbe\u7ed3\u675f IP +label.guest.gateway=\u6765\u5bbe\u7f51\u5173 +label.guest.ip.range=\u6765\u5bbe IP \u8303\u56f4 +label.guest.ip=\u6765\u5bbe IP \u5730\u5740 +label.guest.netmask=\u6765\u5bbe\u7f51\u7edc\u63a9\u7801 +label.guest.networks=\u6765\u5bbe\u7f51\u7edc +label.guest.start.ip=\u6765\u5bbe\u8d77\u59cb IP +label.guest.traffic=\u6765\u5bbe\u6d41\u91cf +label.guest.type=\u6765\u5bbe\u7c7b\u578b +label.guest=\u6765\u5bbe +label.ha.enabled=\u5df2\u542f\u7528\u9ad8\u53ef\u7528\u6027 +label.help=\u5e2e\u52a9 +label.hide.ingress.rule=\u9690\u85cf\u5165\u53e3\u89c4\u5219 +label.hints=\u63d0\u793a +label.host.alerts=\u4e3b\u673a\u8b66\u62a5 +label.host.MAC=\u4e3b\u673a MAC +label.host.name=\u4e3b\u673a\u540d\u79f0 +label.hosts=\u4e3b\u673a +label.host.tags=\u4e3b\u673a\u6807\u7b7e +label.host=\u4e3b\u673a +label.hourly=\u6bcf\u5c0f\u65f6\u4e00\u6b21 +label.hypervisor.capabilities=\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\u529f\u80fd +label.hypervisor.type=\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\u7c7b\u578b +label.hypervisor=\u865a\u62df\u673a\u5e73\u53f0 +label.hypervisor.version=\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\u7248\u672c label.id=ID -label.info=ä¿¡æ¯ -label.ingress.rule=å…¥å£è§„则 -label.initiated.by=å¯åŠ¨è€… -label.instance.limits=实例é™åˆ¶ -label.instance.name=实例åç§° -label.instance=实例 -label.instances=实例 -label.internal.dns.1=内部 DNS 1 -label.internal.dns.2=内部 DNS 2 -label.interval.type=间隔类型 -label.invalid.integer=无效整数 -label.invalid.number=无效数字 -label.ip.address=IP åœ°å€ -label.ip.allocations=IP åˆ†é… -label.ip.limits=公用 IP é™åˆ¶ -label.ip.or.fqdn=IP 或 FQDN -label.ip.range=IP 范围 +label.IKE.DH=IKE DH \u7b97\u6cd5 +label.IKE.encryption=IKE \u52a0\u5bc6\u7b97\u6cd5 +label.IKE.hash=IKE \u54c8\u5e0c\u7b97\u6cd5 +label.IKE.lifetime=IKE \u4f7f\u7528\u671f\u9650(\u7b2c\u4e8c\u9636\u6bb5) +label.IKE.policy=IKE \u7b56\u7565 +label.info=\u4fe1\u606f +label.ingress.rule=\u5165\u53e3\u89c4\u5219 +label.initiated.by=\u542f\u52a8\u8005 +label.installWizard.addClusterIntro.subtitle=\u4ec0\u4e48\u662f\u7fa4\u96c6? +label.installWizard.addClusterIntro.title=\u6dfb\u52a0\u4e00\u4e2a\u7fa4\u96c6 +label.installWizard.addHostIntro.subtitle=\u4ec0\u4e48\u662f\u4e3b\u673a? +label.installWizard.addHostIntro.title=\u6dfb\u52a0\u4e00\u4e2a\u4e3b\u673a +label.installWizard.addPodIntro.subtitle=\u4ec0\u4e48\u662f\u63d0\u4f9b\u70b9? +label.installWizard.addPodIntro.title=\u6dfb\u52a0\u4e00\u4e2a\u63d0\u4f9b\u70b9 +label.installWizard.addPrimaryStorageIntro.subtitle=\u4ec0\u4e48\u662f\u4e3b\u5b58\u50a8? +label.installWizard.addPrimaryStorageIntro.title=\u6dfb\u52a0\u4e00\u4e2a\u4e3b\u5b58\u50a8 +label.installWizard.addSecondaryStorageIntro.subtitle=\u4ec0\u4e48\u662f\u8f85\u52a9\u5b58\u50a8? +label.installWizard.addSecondaryStorageIntro.title=\u6dfb\u52a0\u4e00\u4e2a\u8f85\u52a9\u5b58\u50a8 +label.installWizard.addZoneIntro.subtitle=\u4ec0\u4e48\u662f\u533a\u57df? +label.installWizard.addZoneIntro.title=\u6dfb\u52a0\u4e00\u4e2a\u533a\u57df +label.installWizard.addZone.title=\u6dfb\u52a0\u533a\u57df +label.installWizard.click.launch=\u8bf7\u5355\u51fb\u201c\u542f\u52a8\u201d\u6309\u94ae\u3002 +label.installWizard.subtitle=\u6b64\u6559\u7a0b\u5c06\u5e2e\u52a9\u60a8\u8bbe\u7f6e CloudStack&\#8482 \u5b89\u88c5 +label.installWizard.title=\u60a8\u597d\uff0c\u6b22\u8fce\u4f7f\u7528 CloudStack&\#8482 +label.instance.limits=\u5b9e\u4f8b\u9650\u5236 +label.instance.name=\u5b9e\u4f8b\u540d\u79f0 +label.instances=\u5b9e\u4f8b +label.instance=\u5b9e\u4f8b +label.internal.dns.1=\u5185\u90e8 DNS 1 +label.internal.dns.2=\u5185\u90e8 DNS 2 +label.internal.name=\u5185\u90e8\u540d\u79f0 +label.interval.type=\u95f4\u9694\u7c7b\u578b +label.introduction.to.cloudstack=CloudStack&\#8482 \u7b80\u4ecb +label.invalid.integer=\u65e0\u6548\u6574\u6570 +label.invalid.number=\u65e0\u6548\u6570\u5b57 +label.invitations=\u9080\u8bf7 +label.invited.accounts=\u5df2\u9080\u8bf7\u7684\u5e10\u6237 +label.invite.to=\u9080\u8bf7\u52a0\u5165 +label.invite=\u9080\u8bf7 +label.ip.address=IP \u5730\u5740 +label.ipaddress=IP \u5730\u5740 +label.ip.allocations=IP \u5206\u914d label.ip=IP +label.ip.limits=\u516c\u7528 IP \u9650\u5236 +label.ip.or.fqdn=IP \u6216 FQDN +label.ip.range=IP \u8303\u56f4 +label.ip.ranges=IP \u8303\u56f4 +label.IPsec.preshared.key=IPsec \u9884\u5171\u4eab\u5bc6\u94a5 label.ips=IP -label.is.default=是å¦ä¸ºé»˜è®¤å€¼ -label.is.shared=是å¦å…±äº« -label.is.system=是å¦ä¸ºç³»ç»Ÿ label.iscsi=iSCSI -label.iso.boot=ISO å¯åЍ +label.is.default=\u662f\u5426\u4e3a\u9ed8\u8ba4\u503c +label.iso.boot=ISO \u542f\u52a8 label.iso=ISO -label.isolation.mode=éš”ç¦»æ¨¡å¼ -label.keep=ä¿ç•™ -label.lang.chinese=简体中文 -label.lang.english=英语 -label.lang.japanese=日语 -label.lang.korean=韩国语 -label.lang.spanish=西ç­ç‰™è¯­ -label.last.disconnected=上次断开连接时间 -label.last.name=å§“æ° -label.level=级别 -label.linklocal.ip=链接本地 IP åœ°å€ -label.load.balancer=负载平衡器 -label.loading=正在加载 -label.local=本地 -label.login=登录 -label.logout=注销 +label.isolated.networks=\u9694\u79bb\u7f51\u7edc +label.isolation.method=\u9694\u79bb\u65b9\u6cd5 +label.isolation.mode=\u9694\u79bb\u6a21\u5f0f +label.isolation.uri=\u9694\u79bbURI +label.is.redundant.router=\u5197\u4f59 +label.is.shared=\u662f\u5426\u5171\u4eab +label.is.system=\u662f\u5426\u4e3a\u7cfb\u7edf +label.item.listing=\u9879\u76ee\u5217\u8868 +label.keep=\u4fdd\u7559 +label.keyboard.type=\u952e\u76d8\u7c7b\u578b +label.key=\u5bc6\u94a5 +label.kvm.traffic.label=KVM \u6d41\u91cf\u6807\u7b7e +label.label=\u6807\u7b7e +label.lang.brportugese=\u5df4\u897f\u8461\u8404\u7259\u8bed +label.lang.chinese=\u7b80\u4f53\u4e2d\u6587 +label.lang.english=\u82f1\u8bed +label.lang.french=\u6cd5\u8bed +label.lang.japanese=\u65e5\u8bed +label.lang.korean=\u97e9\u56fd\u8bed +label.lang.russian=\u4fc4\u8bed +label.lang.spanish=\u897f\u73ed\u7259\u8bed +label.last.disconnected=\u4e0a\u6b21\u65ad\u5f00\u8fde\u63a5\u65f6\u95f4 +label.last.name=\u59d3\u6c0f +label.latest.events=\u6700\u65b0\u4e8b\u4ef6 +label.launch=\u542f\u52a8 +label.launch.vm=\u542f\u52a8 VM +label.launch.zone=\u542f\u52a8\u533a\u57df +label.LB.isolation=\u8d1f\u8f7d\u5e73\u8861\u5668\u9694\u79bb +label.least.connections=\u6700\u5c11\u8fde\u63a5\u7b97\u6cd5 +label.level=\u7ea7\u522b +label.linklocal.ip=\u94fe\u63a5\u672c\u5730 IP \u5730\u5740 +label.load.balancer=\u8d1f\u8f7d\u5e73\u8861\u5668 +label.load.balancing.policies=\u8d1f\u8f7d\u5e73\u8861\u7b56\u7565 +label.load.balancing=\u8d1f\u8f7d\u5e73\u8861 +label.loading=\u6b63\u5728\u52a0\u8f7d +label.local.storage.enabled=\u5df2\u542f\u7528\u672c\u5730\u5b58\u50a8 +label.local.storage=\u672c\u5730\u5b58\u50a8 +label.local=\u672c\u5730 +label.login=\u767b\u5f55 +label.logout=\u6ce8\u9500 label.lun=LUN -label.manage=托管 -label.maximum=最大值 -label.memory.allocated=已分é…的内存 -label.memory.total=å†…å­˜æ€»é‡ -label.memory.used=已使用的内存 -label.memory=内存 -label.menu.accounts=叿ˆ· -label.menu.alerts=警报 -label.menu.all.accounts=æ‰€æœ‰å¸æˆ· -label.menu.all.instances=所有实例 -label.menu.community.isos=社区 ISO -label.menu.community.templates=ç¤¾åŒºæ¨¡æ¿ -label.menu.configuration=é…ç½® -label.menu.dashboard=æŽ§åˆ¶æ¿ -label.menu.destroyed.instances=已销æ¯çš„实例 -label.menu.disk.offerings=ç£ç›˜æ–¹æ¡ˆ -label.menu.domains=域 -label.menu.events=事件 -label.menu.featured.isos=精选 ISO -label.menu.featured.templates=ç²¾é€‰æ¨¡æ¿ -label.menu.global.settings=全局设置 -label.menu.instances=实例 -label.menu.ipaddresses=IP åœ°å€ +label.LUN.number=LUN \u53f7 +label.make.project.owner=\u8bbe\u4e3a\u5e10\u6237\u9879\u76ee\u6240\u6709\u8005 +label.management.ips=\u7ba1\u7406\u7c7b IP \u5730\u5740 +label.management=\u7ba1\u7406 +label.manage.resources=\u7ba1\u7406\u8d44\u6e90 +label.manage=\u6258\u7ba1 +label.max.guest.limit=\u6700\u5927\u6765\u5bbe\u6570\u9650\u5236 +label.maximum=\u6700\u5927\u503c +label.max.networks=\u6700\u5927\u7f51\u7edc\u6570 +label.max.public.ips=\u6700\u5927\u516c\u7528 IP \u6570 +label.max.snapshots=\u6700\u5927\u5feb\u7167\u6570 +label.max.templates=\u6700\u5927\u6a21\u677f\u6570 +label.max.vms=\u6700\u5927\u7528\u6237 VM \u6570 +label.max.volumes=\u6700\u5927\u5377\u6570 +label.max.vpcs=\u6700\u591aVPC\u5c42\u6570 +label.may.continue=\u60a8\u73b0\u5728\u53ef\u4ee5\u7ee7\u7eed\u8fdb\u884c\u64cd\u4f5c\u3002 +label.memory.allocated=\u5df2\u5206\u914d\u7684\u5185\u5b58 +label.memory.mb=\u5185\u5b58(MB) +label.memory.total=\u5185\u5b58\u603b\u91cf +label.memory=\u5185\u5b58 +label.memory.used=\u5df2\u4f7f\u7528\u7684\u5185\u5b58 +label.menu.accounts=\u5e10\u53f7 +label.menu.alerts=\u8b66\u62a5 +label.menu.all.accounts=\u6240\u6709\u5e10\u6237 +label.menu.all.instances=\u6240\u6709\u5b9e\u4f8b +label.menu.community.isos=\u793e\u533a ISO +label.menu.community.templates=\u793e\u533a\u6a21\u677f +label.menu.configuration=\u4e91\u5e73\u53f0\u914d\u7f6e +label.menu.dashboard=\u63a7\u5236\u677f +label.menu.destroyed.instances=\u5df2\u9500\u6bc1\u7684\u5b9e\u4f8b +label.menu.disk.offerings=\u78c1\u76d8\u65b9\u6848 +label.menu.domains=\u57df +label.menu.events=\u4e8b\u4ef6 +label.menu.featured.isos=\u7cbe\u9009 ISO +label.menu.featured.templates=\u7cbe\u9009\u6a21\u677f +label.menu.global.settings=\u5168\u5c40\u8bbe\u7f6e +label.menu.infrastructure=\u57fa\u7840\u67b6\u6784 +label.menu.instances=\u5b9e\u4f8b +label.menu.ipaddresses=IP\u5730\u5740 label.menu.isos=ISO -label.menu.my.accounts=æˆ‘çš„å¸æˆ· -label.menu.my.instances=我的实例 -label.menu.my.isos=我的 ISO -label.menu.my.templates=æˆ‘çš„æ¨¡æ¿ -label.menu.network.offerings=网络方案 -label.menu.network=网络 -label.menu.physical.resources=物ç†èµ„æº -label.menu.running.instances=正在è¿è¡Œçš„实例 -label.menu.security.groups=安全组 -label.menu.service.offerings=æœåŠ¡æ–¹æ¡ˆ -label.menu.snapshots=å¿«ç…§ -label.menu.stopped.instances=å·²åœæ­¢çš„实例 -label.menu.storage=存储 -label.menu.system.vms=系统 VM -label.menu.system=系统 -label.menu.templates=æ¨¡æ¿ -label.menu.virtual.appliances=虚拟设备 -label.menu.virtual.resources=è™šæ‹Ÿèµ„æº -label.menu.volumes=å· -label.migrate.instance.to=è¿ç§»å®žä¾‹è‡³ -label.minimum=最å°å€¼ -label.minute.past.hour=分钟时 -label.monday=星期一 -label.monthly=æ¯æœˆä¸€æ¬¡ -label.more.templates=æ›´å¤šæ¨¡æ¿ -label.my.account=æˆ‘çš„å¸æˆ· -label.name.optional=åç§°(å¯é€‰) -label.name=åç§° -label.netmask=ç½‘ç»œæŽ©ç  -label.network.desc=网络æè¿° -label.network.domain=网络域 -label.network.id=网络 ID -label.network.name=网络åç§° -label.network.offering.display.text=网络方案显示文本 -label.network.offering.id=网络方案 ID -label.network.offering.name=网络方案åç§° -label.network.offering=网络方案 -label.network.rate=网络速率 -label.network.read=网络读å–é‡ -label.network.type=网络类型 -label.network.write=ç½‘ç»œå†™å…¥é‡ -label.network=网络 -label.new.password=æ–°å¯†ç  -label.next=下一步 -label.nfs.server=NFS æœåС噍 -label.nfs.storage=NFS 存储 +label.menu.my.accounts=\u6211\u7684\u5e10\u6237 +label.menu.my.instances=\u6211\u7684\u5b9e\u4f8b +label.menu.my.isos=\u6211\u7684 ISO +label.menu.my.templates=\u6211\u7684\u6a21\u677f +label.menu.network.offerings=\u7f51\u7edc\u65b9\u6848 +label.menu.network=\u7f51\u7edc +label.menu.physical.resources=\u7269\u7406\u8d44\u6e90 +label.menu.running.instances=\u6b63\u5728\u8fd0\u884c\u7684\u5b9e\u4f8b +label.menu.security.groups=\u5b89\u5168\u5206\u7ec4 +label.menu.service.offerings=\u670d\u52a1\u63d0\u4f9b +label.menu.snapshots=\u5feb\u7167 +label.menu.stopped.instances=\u5df2\u505c\u6b62\u7684\u5b9e\u4f8b +label.menu.storage=\u5b58\u50a8 +label.menu.system.service.offerings=\u7cfb\u7edf\u65b9\u6848 +label.menu.system=\u7cfb\u7edf +label.menu.system.vms=\u7cfb\u7edf VM +label.menu.templates=\u6a21\u677f +label.menu.virtual.appliances=\u865a\u62df\u8bbe\u5907 +label.menu.virtual.resources=\u865a\u62df\u8d44\u6e90 +label.menu.volumes=\u5377 +label.migrate.instance.to.host=\u5c06\u5b9e\u4f8b\u8fc1\u79fb\u5230\u5176\u4ed6\u4e3b\u673a +label.migrate.instance.to.ps=\u5c06\u5b9e\u4f8b\u8fc1\u79fb\u5230\u5176\u4ed6\u4e3b\u5b58\u50a8 +label.migrate.instance.to=\u8fc1\u79fb\u5b9e\u4f8b\u81f3 +label.migrate.router.to=\u8fc1\u79fb\u8def\u7531\u5668\u81f3 +label.migrate.systemvm.to=\u8fc1\u79fb\u7cfb\u7edf VM \u81f3 +label.migrate.to.host=\u8fc1\u79fb\u5230\u4e3b\u673a +label.migrate.to.storage=\u8fc1\u79fb\u5230\u5b58\u50a8 +label.migrate.volume=\u5c06\u5377\u8fc1\u79fb\u5230\u5176\u4ed6\u4e3b\u5b58\u50a8 +label.minimum=\u6700\u5c0f\u503c +label.minute.past.hour=\u5206\u949f\u65f6 +label.monday=\u661f\u671f\u4e00 +label.monthly=\u6bcf\u6708\u4e00\u6b21 +label.more.templates=\u66f4\u591a\u6a21\u677f +label.move.down.row=\u5411\u4e0b\u79fb\u52a8\u4e00\u884c +label.move.to.bottom=\u79fb\u81f3\u5e95\u90e8 +label.move.to.top=\u79fb\u81f3\u9876\u90e8 +label.move.up.row=\u5411\u4e0a\u79fb\u52a8\u4e00\u884c +label.my.account=\u6211\u7684\u5e10\u6237 +label.my.network=\u6211\u7684\u7f51\u7edc +label.my.templates=\u6211\u7684\u6a21\u677f +label.name.optional=\u540d\u79f0(\u53ef\u9009) +label.name=\u540d\u79f0 +label.nat.port.range=NAT \u7aef\u53e3\u8303\u56f4 +label.netmask=\u7f51\u7edc\u63a9\u7801 +label.netScaler=NetScaler +label.network.ACLs=\u7f51\u7edc ACL +label.network.ACL.total=\u7f51\u7edc ACL \u603b\u6570 +label.network.ACL=\u7f51\u7edc ACL +label.network.desc=\u7f51\u7edc\u63cf\u8ff0 +label.network.device.type=\u7f51\u7edc\u8bbe\u5907\u7c7b\u578b +label.network.device=\u7f51\u7edc\u8bbe\u5907 +label.network.domain.text=\u7f51\u7edc\u57df +label.network.domain=\u7f51\u7edc\u57df +label.network.id=\u7f51\u7edc ID +label.networking.and.security=\u7f51\u7edc\u8fde\u63a5\u4e0e\u5b89\u5168 +label.network.label.display.for.blank.value=\u4f7f\u7528\u9ed8\u8ba4\u7f51\u5173 +label.network.name=\u7f51\u7edc\u540d\u79f0 +label.network.offering.display.text=\u7f51\u7edc\u65b9\u6848\u663e\u793a\u6587\u672c +label.network.offering.id=\u7f51\u7edc\u65b9\u6848 ID +label.network.offering.name=\u7f51\u7edc\u65b9\u6848\u540d\u79f0 +label.network.offering=\u7f51\u7edc\u65b9\u6848 +label.network.rate.megabytes=\u7f51\u7edc\u901f\u7387(MB/\u79d2) +label.network.rate=\u7f51\u7edc\u901f\u7387 +label.network.read=\u7f51\u7edc\u8bfb\u53d6\u91cf +label.network.service.providers=\u7f51\u7edc\u670d\u52a1\u63d0\u4f9b\u65b9\u6848 +label.networks=\u7f51\u7edc +label.network.type=\u7f51\u7edc\u7c7b\u578b +label.network=\u7f51\u7edc +label.network.write=\u7f51\u7edc\u5199\u5165\u91cf +label.new.password=\u65b0\u5bc6\u7801 +label.new.project=\u65b0\u5efa\u9879\u76ee +label.new=\u65b0\u5efa +label.new.vm=\u65b0\u5efa VM +label.next=\u4e0b\u4e00\u6b65 +label.nexusVswitch=Nexus 1000v label.nfs=NFS +label.nfs.server=NFS \u670d\u52a1\u5668 +label.nfs.storage=NFS \u5b58\u50a8 +label.nic.adapter.type=NIC \u9002\u914d\u5668\u7c7b\u578b +label.nicira.controller.address=\u63a7\u5236\u5668\u5730\u5740 +label.nicira.l3gatewayserviceuuid=3\u5c42\u7f51\u5173\u670d\u52a1UUID +label.nicira.transportzoneuuid=\u4f20\u8f93\u8d44\u6e90\u57dfUUID label.nics=NIC -label.no.actions=æ— å¯ç”¨æ“作 -label.no.alerts=无最近å‘出的警报 -label.no.errors=无最近出现的错误 -label.no.isos=æ— å¯ç”¨ ISO -label.no.items=æ— å¯ç”¨é¡¹ç›® -label.no.security.groups=æ— å¯ç”¨å®‰å…¨ç»„ -label.no.thanks=ä¸ï¼Œè°¢è°¢ -label.no=å¦ -label.none=æ—  -label.not.found=未找到 -label.num.cpu.cores=CPU 内核数 -label.numretries=é‡è¯•次数 -label.offer.ha=æä¾›é«˜å¯ç”¨æ€§ -label.optional=å¯é€‰ -label.os.preference=æ“作系统首选项 -label.os.type=æ“作系统类型 -label.owned.public.ips=拥有的公用 IP åœ°å€æ•° -label.owner.account=æ‰€æœ‰è€…å¸æˆ· -label.owner.domain=所有者域 -label.parent.domain=父域 -label.password.enabled=å·²å¯ç”¨å¯†ç  -label.password=å¯†ç  -label.path=路径 -label.please.wait=请ç¨å€™ -label.pod=æä¾›ç‚¹ -label.port.forwarding=端å£è½¬å‘ -label.port.range=端å£èŒƒå›´ -label.prev=上一页 -label.primary.allocated=已分é…的主存储 -label.primary.network=主网络 -label.primary.storage=主存储 -label.primary.used=已使用的主存储 -label.private.interface=ä¸“ç”¨æŽ¥å£ -label.private.ip.range=专用 IP 范围 -label.private.ip=专用 IP åœ°å€ -label.private.ips=专用 IP åœ°å€ -label.private.port=ä¸“ç”¨ç«¯å£ -label.private.zone=专用区域 -label.protocol=åè®® -label.public.interface=å…¬ç”¨æŽ¥å£ -label.public.ip=公用 IP åœ°å€ -label.public.ips=公用 IP åœ°å€ -label.public.port=å…¬ç”¨ç«¯å£ -label.public.zone=公用区域 -label.public=公用 -label.recent.errors=最近出现的错误 -label.refresh=刷新 -label.related=ç›¸å…³è” -label.remove.from.load.balancer=正在从负载平衡器中删除实例 -label.removing.user=正在删除用户 -label.required=必填项 -label.reserved.system.ip=预留的系统 IP -label.resource.limits=资æºé™åˆ¶ -label.resource=èµ„æº -label.resources=èµ„æº -label.role=角色 -label.root.disk.offering=æ ¹ç£ç›˜æ–¹æ¡ˆ -label.running.vms=正在è¿è¡Œçš„ VM -label.saturday=星期六 -label.save=ä¿å­˜ -label.saving.processing=正在ä¿å­˜... -label.scope=范围 -label.search=æœç´¢ -label.secondary.storage=辅助存储 -label.secondary.used=已使用的辅助存储 -label.secret.key=密钥 -label.security.group.name=安全组åç§° -label.security.group=安全组 -label.security.groups.enabled=å·²å¯ç”¨å®‰å…¨ç»„ -label.security.groups=安全组 -label.sent=å·²å‘é€ -label.server=æœåС噍 -label.service.offering=æœåŠ¡æ–¹æ¡ˆ -label.system.service.offering=系统æœåŠ¡æ–¹æ¡ˆ -label.session.expired=会è¯å·²è¿‡æœŸ -label.shared=已共享 -label.size=å¤§å° -label.snapshot.limits=å¿«ç…§é™åˆ¶ -label.snapshot.name=å¿«ç…§åç§° -label.snapshot.s=å¿«ç…§ -label.snapshot.schedule=设置é‡çŽ°å¿«ç…§ -label.snapshot=å¿«ç…§ -label.snapshots=å¿«ç…§ -label.source.nat=æº NAT -label.specify.vlan=指定 VLAN -label.start.port=èµ·å§‹ç«¯å£ -label.state=çŠ¶æ€ -label.static.nat.to=陿€ NAT 目标 -label.static.nat=陿€ NAT -label.statistics=ç»Ÿè®¡æ•°æ® -label.status=çŠ¶æ€ -label.step.1.title=步骤 1: é€‰æ‹©ä¸€ä¸ªæ¨¡æ¿ -label.step.1=步骤 1 -label.step.2.title=步骤 2: æœåŠ¡æ–¹æ¡ˆ -label.step.2=步骤 2 -label.step.3.title=步骤 3: 选择一ç§ç£ç›˜æ–¹æ¡ˆ -label.step.3=步骤 3 -label.step.4.title=步骤 4: 网络 -label.step.4=步骤 4 -label.step.5.title=步骤 5: 核对 -label.step.5=步骤 5 -label.stopped.vms=å·²åœæ­¢çš„ VM -label.storage.type=存储类型 -label.storage=存储 -label.submit=æäº¤ -label.submitted.by=[æäº¤è€…: ] -label.succeeded=æˆåŠŸ -label.sunday=星期日 -label.system.capacity=ç³»ç»Ÿå®¹é‡ -label.system.vm.type=系统 VM 类型 -label.system.vm=系统 VM -label.system.vms=系统 VM -label.tagged=已标记 -label.tags=标签 -label.target.iqn=目标 IQN -label.template.limits=模æ¿é™åˆ¶ -label.template=æ¨¡æ¿ -label.theme.default=默认主题 -label.theme.grey=自定义 - ç°è‰² -label.theme.lightblue=自定义 - æ·¡è“色 -label.thursday=星期四 -label.time.zone=时区 -label.time=æ—¶é—´ -label.timeout.in.second = è¶…æ—¶(ç§’) -label.timezone=时区 -label.total.cpu=CPU æ€»é‡ -label.total.vms=总 VM æ•° -label.traffic.type=æµé‡ç±»åž‹ -label.tuesday=星期二 -label.type.id=类型 ID -label.type=类型 -label.unavailable=ä¸å¯ç”¨ -label.unlimited=æ— é™åˆ¶ -label.untagged=已喿¶ˆæ ‡è®° -label.update.ssl.cert=æ›´æ–° SSL è¯ä¹¦ -label.update.ssl=æ›´æ–° SSL è¯ä¹¦ -label.updating=正在更新 -label.url=URL -label.usage.interface=ä½¿ç”¨ç•Œé¢ -label.used=已使用 -label.user=用户 -label.username=用户å -label.users=用户 -label.value=值 -label.vcenter.cluster=vCenter 群集 -label.vcenter.datacenter=vCenter æ•°æ®ä¸­å¿ƒ -label.vcenter.datastore=vCenter æ•°æ®å­˜å‚¨ -label.vcenter.host=vCenter 主机 -label.vcenter.password=vCenter å¯†ç  -label.vcenter.username=vCenter 用户å -label.version=版本 -label.virtual.appliance=虚拟设备 -label.virtual.appliances=虚拟设备 -label.virtual.network=虚拟网络 -label.vlan.id=VLAN ID -label.vlan.range=VLAN 范围 -label.vm.add=添加实例 -label.vm.destroy=é”€æ¯ -label.vm.reboot=釿–°å¯åЍ -label.vm.start=å¯åЍ -label.vm.stop=åœæ­¢ -label.vmfs=VMFS -label.vms=VM -label.volume.limits=å·é™åˆ¶ -label.volume.name=å·åç§° -label.volume=å· -label.volumes=å· -label.vsphere.managed=ç”± vSphere ç®¡ç† -label.waiting=正在等待 -label.warn=警告 -label.wednesday=星期三 -label.weekly=æ¯å‘¨ä¸€æ¬¡ -label.welcome.cloud.console=æ¬¢è¿Žä½¿ç”¨ç®¡ç†æŽ§åˆ¶å° -label.welcome=欢迎 -label.yes=是 -label.zone.id=区域 ID -label.zone.step.1.title=步骤 1: 选择一个网络 -label.zone.step.2.title=步骤 2: 添加一个区域 -label.zone.step.3.title=步骤 3: 添加一个æä¾›ç‚¹ -label.zone.step.4.title=步骤 4: 添加一个 IP 范围 -label.zone.wide=整个区域 -label.zone=区域 - -#Messages -message.acquire.public.ip=请选择一个è¦ä»Žä¸­èŽ·å–æ–° IP 的区域。 -message.action.cancel.maintenance.mode=请确认您确实è¦å–消此维护。 -message.action.cancel.maintenance=å·²æˆåŠŸå–æ¶ˆç»´æŠ¤æ‚¨çš„主机。此过程å¯èƒ½éœ€è¦é•¿è¾¾å‡ åˆ†é’Ÿæ—¶é—´ã€‚ -message.action.delete.ISO.for.all.zones=æ­¤ ISO 由所有区域使用。请确认您确实è¦å°†å…¶ä»Žæ‰€æœ‰åŒºåŸŸä¸­åˆ é™¤ã€‚ -message.action.delete.ISO=请确认您确实è¦åˆ é™¤æ­¤ ISO。 -message.action.delete.cluster=请确认您确实è¦åˆ é™¤æ­¤ç¾¤é›†ã€‚ -message.action.delete.disk.offering=请确认您确实è¦åˆ é™¤æ­¤ç£ç›˜æ–¹æ¡ˆã€‚ -message.action.delete.domain=请确认您确实è¦åˆ é™¤æ­¤åŸŸã€‚ -message.action.delete.external.firewall=请确认您确实è¦åˆ é™¤æ­¤å¤–部防ç«å¢™ã€‚警告: å¦‚æžœæ‚¨è®¡åˆ’é‡æ–°æ·»åŠ åŒä¸€ä¸ªå¤–部防ç«å¢™ï¼Œåˆ™å¿…须在设备上é‡ç½®ä½¿ç”¨æ•°æ®ã€‚ -message.action.delete.external.load.balancer=请确认您确实è¦åˆ é™¤æ­¤å¤–部负载平衡器。警告: å¦‚æžœæ‚¨è®¡åˆ’é‡æ–°æ·»åŠ åŒä¸€ä¸ªå¤–部负载平衡器,则必须在设备上é‡ç½®ä½¿ç”¨æ•°æ®ã€‚ -message.action.delete.ingress.rule=请确认您确实è¦åˆ é™¤æ­¤å…¥å£è§„则。 -message.action.delete.network=请确认您确实è¦åˆ é™¤æ­¤ç½‘络。 -message.action.delete.pod=请确认您确实è¦åˆ é™¤æ­¤æä¾›ç‚¹ã€‚ -message.action.delete.primary.storage=请确认您确实è¦åˆ é™¤æ­¤ä¸»å­˜å‚¨ã€‚ -message.action.delete.secondary.storage=请确认您确实è¦åˆ é™¤æ­¤è¾…助存储。 -message.action.delete.security.group=请确认您确实è¦åˆ é™¤æ­¤å®‰å…¨ç»„。 -message.action.delete.service.offering=请确认您确实è¦åˆ é™¤æ­¤æœåŠ¡æ–¹æ¡ˆã€‚ -message.action.delete.snapshot=请确认您确实è¦åˆ é™¤æ­¤å¿«ç…§ã€‚ -message.action.delete.template.for.all.zones=此模æ¿ç”±æ‰€æœ‰åŒºåŸŸä½¿ç”¨ã€‚请确认您确实è¦å°†å…¶ä»Žæ‰€æœ‰åŒºåŸŸä¸­åˆ é™¤ã€‚ -message.action.delete.template=请确认您确实è¦åˆ é™¤æ­¤æ¨¡æ¿ã€‚ -message.action.delete.volume=请确认您确实è¦åˆ é™¤æ­¤å·ã€‚ -message.action.delete.zone=请确认您确实è¦åˆ é™¤æ­¤åŒºåŸŸã€‚ -message.action.destroy.instance=请确认您确实è¦é”€æ¯æ­¤å®žä¾‹ã€‚ -message.action.destroy.systemvm=请确认您确实è¦é”€æ¯æ­¤ç³»ç»Ÿ VM。 -message.action.disable.static.NAT=请确认您确实è¦ç¦ç”¨é™æ€ NAT。 -message.action.enable.maintenance=å·²æˆåŠŸå‡†å¤‡å¥½ç»´æŠ¤æ‚¨çš„ä¸»æœºã€‚æ­¤è¿‡ç¨‹å¯èƒ½éœ€è¦é•¿è¾¾å‡ åˆ†é’Ÿæˆ–更长时间,具体å–å†³äºŽå½“å‰æ­¤ä¸»æœºä¸Šçš„ VM æ•°é‡ã€‚ -message.action.force.reconnect=å·²æˆåŠŸå¼ºåˆ¶é‡æ–°è¿žæŽ¥æ‚¨çš„主机。此过程å¯èƒ½éœ€è¦é•¿è¾¾å‡ åˆ†é’Ÿæ—¶é—´ã€‚ -message.action.host.enable.maintenance.mode=å¯ç”¨ç»´æŠ¤æ¨¡å¼å°†å¯¼è‡´å°†æ­¤ä¸»æœºä¸Šæ­£åœ¨è¿è¡Œçš„æ‰€æœ‰å®žä¾‹å®žæ—¶è¿ç§»åˆ°ä»»ä½•å¯ç”¨çš„主机。 -message.action.instance.reset.password=è¯·ç¡®è®¤æ‚¨ç¡®å®žè¦æ›´æ”¹æ­¤è™šæ‹Ÿæœºçš„ ROOT 用户密ç ã€‚ -message.action.primarystorage.enable.maintenance.mode=警告: 将主存储置于维护模å¼å°†å¯¼è‡´ä½¿ç”¨ä¸»å­˜å‚¨ä¸­çš„å·çš„æ‰€æœ‰ VM åœæ­¢è¿è¡Œã€‚是å¦è¦ç»§ç»­? -message.action.reboot.instance=请确认您确实è¦é‡æ–°å¯åŠ¨æ­¤å®žä¾‹ã€‚ -message.action.reboot.systemvm=请确认您确实è¦é‡æ–°å¯åŠ¨æ­¤ç³»ç»Ÿ VM。 -message.action.release.ip=请确认您确实è¦é‡Šæ”¾æ­¤ IP。 -message.action.restore.instance=请确认您确实è¦è¿˜åŽŸæ­¤å®žä¾‹ã€‚ -message.action.start.instance=请确认您确实è¦å¯åŠ¨æ­¤å®žä¾‹ã€‚ -message.action.start.router=请确认您确实è¦å¯åŠ¨æ­¤è·¯ç”±å™¨ã€‚ -message.action.start.systemvm=请确认您确实è¦å¯åŠ¨æ­¤ç³»ç»Ÿ VM。 -message.action.stop.instance=请确认您确实è¦åœæ­¢æ­¤å®žä¾‹ã€‚ -message.action.stop.systemvm=请确认您确实è¦åœæ­¢æ­¤ç³»ç»Ÿ VM。 -message.action.take.snapshot=请确认您确实è¦åˆ›å»ºæ­¤å·çš„快照。 -message.add.cluster.zone=å‘区域 中添加一个虚拟机管ç†ç¨‹åºæ‰˜ç®¡çš„群集 -message.add.cluster=å‘区域 ã€æä¾›ç‚¹ 中添加一个虚拟机管ç†ç¨‹åºæ‰˜ç®¡çš„群集 -message.add.disk.offering=è¯·æŒ‡å®šä»¥ä¸‹å‚æ•°ä»¥æ·»åŠ ä¸€ä¸ªæ–°çš„ç£ç›˜æ–¹æ¡ˆ -message.add.firewall=å‘区域中添加一个防ç«å¢™ -message.add.host=è¯·æŒ‡å®šä»¥ä¸‹å‚æ•°ä»¥æ·»åР䏀尿–°ä¸»æœº -message.add.ip.range.direct.network=å‘区域 中的直接网络 添加一个 IP 范围 -message.add.ip.range.to.pod=

    å‘æä¾›ç‚¹æ·»åŠ ä¸€ä¸ª IP 范围:

    -message.add.ip.range=å‘区域中的公用网络添加一个 IP 范围 -message.add.load.balancer=å‘区域中添加一个负载平衡器 -message.add.network=为区域添加一个新网络: -message.add.pod=为区域 添加一个新æä¾›ç‚¹ -message.add.primary.storage=为区域 ã€æä¾›ç‚¹ 添加一个新的主存储 -message.add.primary=è¯·æŒ‡å®šä»¥ä¸‹å‚æ•°ä»¥æ·»åŠ ä¸€ä¸ªæ–°ä¸»å­˜å‚¨ -message.add.secondary.storage=为区域 添加一个新存储 -message.add.service.offering=请填写以下数æ®ä»¥æ·»åŠ ä¸€ä¸ªæ–°è®¡ç®—æ–¹æ¡ˆã€‚ -message.add.template=请输入以下数æ®ä»¥åˆ›å»ºæ–°æ¨¡æ¿ -message.add.volume=请填写以下数æ®ä»¥æ·»åŠ ä¸€ä¸ªæ–°å·ã€‚ -message.additional.networks.desc=请选择虚拟机è¦è¿žæŽ¥åˆ°çš„其他网络。 -message.advanced.mode.desc=如果您希望å¯ç”¨ VLAN 支æŒï¼Œè¯·é€‰æ‹©æ­¤ç½‘络模å¼ã€‚此网络模å¼åœ¨å…许管ç†å‘˜æä¾›é˜²ç«å¢™ã€VPN 或负载平衡器支æŒç­‰è‡ªå®šä¹‰ç½‘络方案以åŠå¯ç”¨ç›´æŽ¥ç½‘ç»œè¿žæŽ¥ä¸Žè™šæ‹Ÿç½‘ç»œè¿žæŽ¥ç­‰æ–¹é¢æä¾›äº†æœ€å¤§çš„çµæ´»æ€§ã€‚ -message.advanced.security.group=如果è¦ä½¿ç”¨å®‰å…¨ç»„æä¾›æ¥å®¾ VM 隔离,请选择此模å¼ã€‚ -message.advanced.virtual=如果è¦ä½¿ç”¨æ•´ä¸ªåŒºåŸŸçš„ VLAN æä¾›æ¥å®¾ VM 隔离,请选择此模å¼ã€‚ -message.allow.vpn.access=请输入è¦å…许进行 VPN 访问的用户的用户å和密ç ã€‚ -message.attach.iso.confirm=请确认您确实è¦å°†æ­¤ ISO 附加到此虚拟实例。 -message.attach.volume=请填写以下数æ®ä»¥é™„加一个新å·ã€‚如果è¦å°†ç£ç›˜å·é™„加到基于 Windows 的虚拟机,需è¦é‡æ–°å¯åŠ¨æ­¤å®žä¾‹æ‰èƒ½æ˜¾ç¤ºå·²è¿žæŽ¥çš„ç£ç›˜ã€‚ -message.basic.mode.desc=如果您*ä¸*希望å¯ç”¨ä»»ä½• VLAN 支æŒï¼Œè¯·é€‰æ‹©æ­¤ç½‘络模å¼ã€‚将直接从此网络中为在此网络模å¼ä¸‹åˆ›å»ºçš„æ‰€æœ‰è™šæ‹Ÿæœºå®žä¾‹åˆ†é…一个 IP,并使用安全组æä¾›å®‰å…¨æ€§å’Œéš”离。 -message.change.offering.confirm=è¯·ç¡®è®¤æ‚¨ç¡®å®žè¦æ›´æ”¹æ­¤è™šæ‹Ÿå®žä¾‹çš„æœåŠ¡æ–¹æ¡ˆã€‚ -message.copy.iso.confirm=请确认您确实è¦å°† ISO å¤åˆ¶åˆ° -message.copy.template=å°†æ¨¡æ¿ XXX 从区域 å¤åˆ¶åˆ° -message.create.template.vm=åŸºäºŽæ¨¡æ¿ åˆ›å»º VM -message.create.template.volume=请先指定以下信æ¯ï¼Œç„¶åŽå†åˆ›å»ºç£ç›˜å·çš„æ¨¡æ¿: 。创建模æ¿å¯èƒ½éœ€è¦å‡ åˆ†é’Ÿåˆ°æ›´é•¿çš„æ—¶é—´ï¼Œå…·ä½“å–决于ç£ç›˜å·çš„大å°ã€‚ -message.delete.account=请确认您确实è¦åˆ é™¤æ­¤å¸æˆ·ã€‚ -message.detach.iso.confirm=请确认您确实è¦ä»Žæ­¤è™šæ‹Ÿæœºä¸­å–消附加此 ISO。 -message.disable.account=请确认您确实è¦ç¦ç”¨æ­¤å¸æˆ·ã€‚通过ç¦ç”¨æ­¤å¸æˆ·ï¼Œæ­¤å¸æˆ·çš„æ‰€æœ‰ç”¨æˆ·å°†ä¸å†æœ‰æƒè®¿é—®å„自的云资æºã€‚所有正在è¿è¡Œçš„虚拟机将立å³å…³é—­ã€‚ -message.disable.vpn.access=请确认您确实è¦ç¦ç”¨ VPN 访问。 -message.download.ISO=请å•击 00000 下载 ISO -message.download.template=请å•击 00000 ä¸‹è½½æ¨¡æ¿ -message.download.volume=请å•击 00000 ä¸‹è½½å· -message.edit.confirm=请先确认您所åšçš„æ›´æ”¹ï¼Œç„¶åŽå•击“ä¿å­˜â€ã€‚ -message.edit.limits=请指定对以下资æºçš„é™åˆ¶ã€‚“-1â€è¡¨ç¤ºä¸é™åˆ¶è¦åˆ›å»ºçš„èµ„æºæ•°ã€‚ -message.enable.account=请确认您确实è¦å¯ç”¨æ­¤å¸æˆ·ã€‚ -message.enable.vpn.access=当å‰å·²å¯¹æ­¤ IP 地å€ç¦ç”¨äº† VPN。是å¦è¦å¯ç”¨ VPN 访问? -message.enabled.vpn.ip.sec=您的 IPSec 预共享密钥 -message.enabled.vpn=您的 VPN 访问功能当å‰å·²å¯ç”¨ï¼Œå¯ä»¥é€šè¿‡ IP 进行访问 -message.launch.vm.on.private.network=是å¦è¦åœ¨æ‚¨çš„ç§äººä¸“用网络中å¯åŠ¨å®žä¾‹? -message.lock.account=请确认您确实è¦é”å®šæ­¤å¸æˆ·ã€‚通过é”å®šæ­¤å¸æˆ·ï¼Œæ­¤å¸æˆ·çš„æ‰€æœ‰ç”¨æˆ·å°†ä¸å†èƒ½å¤Ÿç®¡ç†å„自的云资æºï¼Œä½†ä»ç„¶å¯ä»¥è®¿é—®çŽ°æœ‰èµ„æºã€‚ -message.migrate.instance.confirm=请确认è¦å°†è™šæ‹Ÿå®žä¾‹è¿ç§»åˆ°çš„主机。 -message.new.user=请指定以下信æ¯ä»¥å‘叿ˆ·ä¸­æ·»åŠ ä¸€ä¸ªæ–°ç”¨æˆ· -message.no.network.support.configuration.not.true=您的所有区域都未å¯ç”¨å®‰å…¨ç»„,因此无其他网络功能。请继续执行步骤 5。 -message.no.network.support=您选择的虚拟机管ç†ç¨‹åº vSphere 没有任何其他网络功能。请继续执行步骤 5。 -message.number.clusters=

    群集数

    -message.number.hosts=

    主机数

    -message.number.pods=

    æä¾›ç‚¹æ•°

    -message.number.storage=

    ä¸»å­˜å‚¨å·æ•°

    -message.number.zones=

    区域数

    -message.remove.vpn.access=请确认您确实è¦åˆ é™¤ä»¥ä¸‹ç”¨æˆ·çš„ VPN 访问。 -message.restart.mgmt.server=è¯·é‡æ–°å¯åŠ¨ç®¡ç†æœåŠ¡å™¨ä»¥ä½¿æ‚¨çš„æ–°è®¾ç½®ç”Ÿæ•ˆã€‚ -message.restart.mgmt.usage.server=è¯·é‡æ–°å¯åŠ¨ç®¡ç†æœåŠ¡å™¨å’Œä½¿ç”¨æœåŠ¡å™¨ä»¥ä½¿æ‚¨çš„æ–°è®¾ç½®ç”Ÿæ•ˆã€‚ -message.security.group.usage=(æŒ‰ä½ Ctrl 键并å•击鼠标å¯é€‰æ‹©æ‰€æœ‰é€‚用的安全组) -message.snapshot.schedule=å¯ä»¥é€šè¿‡ä»Žä»¥ä¸‹å¯ç”¨é€‰é¡¹ä¸­è¿›è¡Œé€‰æ‹©å¹¶åº”用您的策略首选项æ¥è®¾ç½®é‡çŽ°å¿«ç…§è®¡åˆ’ -message.step.1.continue=è¯·é€‰æ‹©ä¸€ä¸ªæ¨¡æ¿æˆ– ISO 以继续 -message.step.1.desc=请为您的新虚拟实例选择一个模æ¿ã€‚还å¯ä»¥é€‰æ‹©ä¸€ä¸ªå¯å°† ISO 映åƒå®‰è£…到其中的空模æ¿ã€‚ -message.step.2.continue=è¯·é€‰æ‹©ä¸€ç§æœåŠ¡æ–¹æ¡ˆä»¥ç»§ç»­ -message.step.2.desc= -message.step.3.continue=请选择一ç§ç£ç›˜æ–¹æ¡ˆä»¥ç»§ç»­ -message.step.3.desc= -message.step.4.continue=请至少选择一个网络以继续 -message.step.4.desc=请选择虚拟实例è¦è¿žæŽ¥åˆ°çš„主网络。 -message.update.os.preference=请为此主机选择一个æ“作系统首选项。首先将具有相似首选项的所有虚拟实例分é…至此主机,然åŽå†é€‰æ‹©å…¶ä»–实例。 -message.update.ssl=请æäº¤ä¸€ä¸ªæ–°çš„ X.509 兼容的 SSL è¯ä¹¦ï¼Œä»¥å°†å…¶æ›´æ–°åˆ°æ¯ä¸ªæŽ§åˆ¶å°ä»£ç†è™šæ‹Ÿå®žä¾‹: -message.virtual.network.desc=æ‚¨çš„å¸æˆ·çš„专用虚拟网络。广播域包å«åœ¨ VLAN 中,并且所有公用网络访问都由虚拟路由器路由出去。 -message.volume.create.template.confirm=请确认您确实è¦ä¸ºæ­¤ç£ç›˜å·åˆ›å»ºä¸€ä¸ªæ¨¡æ¿ã€‚创建模æ¿å¯èƒ½éœ€è¦å‡ åˆ†é’Ÿåˆ°æ›´é•¿çš„æ—¶é—´ï¼Œå…·ä½“å–决于å·çš„大å°ã€‚ -message.zone.step.1.desc=请为您的区域选择一ç§ç½‘络模å¼ã€‚ -message.zone.step.2.desc=请输入以下信æ¯ä»¥æ·»åŠ ä¸€ä¸ªæ–°åŒºåŸŸ -message.zone.step.3.desc=请输入以下信æ¯ä»¥æ·»åŠ ä¸€ä¸ªæ–°æä¾›ç‚¹ -message.apply.snapshot.policy=您已æˆåŠŸæ›´æ–°å½“å‰çš„快照策略。 -message.disable.snapshot.policy=您已æˆåŠŸç¦ç”¨å½“å‰çš„快照策略。 -message.action.change.service.warning.for.instance=必须先ç¦ç”¨æ‚¨çš„实例,然åŽå†å°è¯•更改其当å‰çš„æœåŠ¡æ–¹æ¡ˆã€‚ -message.action.change.service.warning.for.router=å¿…é¡»å…ˆåœæ­¢æ‚¨çš„路由器,然åŽå†å°è¯•更改其当å‰çš„æœåŠ¡æ–¹æ¡ˆã€‚ -message.action.reset.password.warning=å¿…é¡»å…ˆåœæ­¢æ‚¨çš„实例,然åŽå†å°è¯•更改其当å‰çš„密ç ã€‚ -message.action.reset.password.off=您的实例当å‰ä¸æ”¯æŒæ­¤åŠŸèƒ½ã€‚ - -#Errors -error.login=您的用户å/密ç ä¸Žæˆ‘们的记录ä¸ä¸€è‡´ã€‚ -error.menu.select=正在选择项目,无法执行æ“作。 -error.mgmt.server.inaccessible=æ— æ³•è®¿é—®ç®¡ç†æœåŠ¡å™¨ã€‚è¯·ç¨åŽå†è¯•。 -error.session.expired=您的会è¯å·²è¿‡æœŸã€‚ -error.unresolved.internet.name=æ— æ³•è§£æžæ‚¨çš„ Internet å称。 - -#resizeVolumes -label.resize.new.size=New Size(GB) -label.action.resize.volume=Resize Volume -label.action.resize.volume.processing=Resizing Volume.... +label.no.actions=\u65e0\u53ef\u7528\u64cd\u4f5c +label.no.alerts=\u65e0\u6700\u8fd1\u53d1\u51fa\u7684\u8b66\u62a5 +label.no.data=\u65e0\u53ef\u663e\u793a\u7684\u6570\u636e +label.no.errors=\u65e0\u6700\u8fd1\u51fa\u73b0\u7684\u9519\u8bef +label.no.isos=\u65e0\u53ef\u7528 ISO +label.no.items=\u65e0\u53ef\u7528\u9879\u76ee +label.none=\u65e0 +label.no.security.groups=\u65e0\u53ef\u7528\u5b89\u5168\u7ec4 +label.not.found=\u672a\u627e\u5230 +label.no.thanks=\u4e0d\uff0c\u8c22\u8c22 +label.notifications=\u901a\u77e5 +label.no=\u5426 +label.number.of.clusters=\u7fa4\u96c6\u6570\u91cf +label.number.of.hosts=\u4e3b\u673a\u6570\u91cf +label.number.of.pods=\u63d0\u4f9b\u70b9\u6570\u91cf +label.number.of.system.vms=\u7cfb\u7edf VM \u6570 +label.number.of.virtual.routers=\u865a\u62df\u8def\u7531\u5668\u6570 +label.number.of.zones=\u533a\u57df\u6570\u91cf +label.num.cpu.cores=CPU \u5185\u6838\u6570 +label.numretries=\u91cd\u8bd5\u6b21\u6570 +label.ocfs2=OCFS2 +label.offer.ha=\u63d0\u4f9b\u9ad8\u53ef\u7528\u6027 +label.ok=\u786e\u5b9a +label.optional=\u53ef\u9009\u7684 +label.order=\u6392\u5e8f +label.os.preference=\u64cd\u4f5c\u7cfb\u7edf\u9996\u9009\u9879 +label.os.type=\u64cd\u4f5c\u7cfb\u7edf\u7c7b\u578b +label.owned.public.ips=\u62e5\u6709\u7684\u516c\u7528 IP \u5730\u5740\u6570 +label.owner.account=\u6240\u6709\u8005\u5e10\u6237 +label.owner.domain=\u6240\u6709\u8005\u57df +label.parent.domain=\u7236\u57df +label.password.enabled=\u5df2\u542f\u7528\u5bc6\u7801 +label.password=\u5bc6\u7801 +label.path=\u8def\u5f84 +label.perfect.forward.secrecy=\u5b8c\u5168\u6b63\u5411\u4fdd\u5bc6 +label.physical.network.ID=\u7269\u7406\u7f51\u7edc ID +label.physical.network=\u7269\u7406\u7f51\u7edc +label.PING.CIFS.password=PING CIFS \u5bc6\u7801 +label.PING.CIFS.username=PING CIFS \u7528\u6237\u540d +label.PING.dir=PING \u76ee\u5f55 +label.PING.storage.IP=PING \u5b58\u50a8 IP +label.please.specify.netscaler.info=\u8bf7\u6307\u5b9a Netscaler \u4fe1\u606f +label.please.wait=\u8bf7\u7a0d\u5019 +label.pod.name=\u63d0\u4f9b\u70b9\u540d\u79f0 +label.pods=\u63d0\u4f9b\u70b9 +label.pod=\u63d0\u4f9b\u70b9 +label.port.forwarding.policies=\u7aef\u53e3\u8f6c\u53d1\u7b56\u7565 +label.port.forwarding=\u7aef\u53e3\u8f6c\u53d1 +label.port.range=\u7aef\u53e3\u8303\u56f4 +label.PreSetup=PreSetup +label.previous=\u4e0a\u4e00\u6b65 +label.prev=\u4e0a\u4e00\u9875 +label.primary.allocated=\u5df2\u5206\u914d\u7684\u4e3b\u5b58\u50a8 +label.primary.network=\u4e3b\u7f51\u7edc +label.primary.storage.count=\u4e3b\u5b58\u50a8\u6c60 +label.primary.storage=\u4e3b\u5b58\u50a8 +label.primary.used=\u5df2\u4f7f\u7528\u7684\u4e3b\u5b58\u50a8 +label.private.Gateway=\u4e13\u7528\u7f51\u5173 +label.private.interface=\u4e13\u7528\u63a5\u53e3 +label.private.ip.range=\u4e13\u7528 IP \u8303\u56f4 +label.private.ips=\u4e13\u7528 IP \u5730\u5740 +label.private.ip=\u4e13\u7528 IP \u5730\u5740 +label.privatekey=PKCS\#8 \u79c1\u94a5 +label.private.network=\u4e13\u7528\u7f51\u7edc +label.private.port=\u4e13\u7528\u7aef\u53e3 +label.private.zone=\u4e13\u7528\u533a\u57df +label.project.dashboard=\u9879\u76ee\u63a7\u5236\u677f +label.project.id=\u9879\u76ee ID +label.project.invite=\u9080\u8bf7\u52a0\u5165\u9879\u76ee +label.project.name=\u9879\u76ee\u540d\u79f0 +label.projects=\u9879\u76ee +label.project=\u9879\u76ee +label.project.view=\u9879\u76ee\u89c6\u56fe +label.protocol=\u534f\u8bae +label.providers=\u63d0\u4f9b\u7a0b\u5e8f +label.public.interface=\u516c\u7528\u63a5\u53e3 +label.public.ips=\u516c\u7528 IP \u5730\u5740 +label.public.ip=\u516c\u7528 IP \u5730\u5740 +label.public.network=\u516c\u7528\u7f51\u7edc +label.public.port=\u516c\u7528\u7aef\u53e3 +label.public.traffic=\u516c\u5171\u6d41\u91cf +label.public=\u516c\u7528 +label.public.zone=\u516c\u7528\u533a\u57df +label.purpose=\u76ee\u7684 +label.Pxe.server.type=Pxe \u670d\u52a1\u5668\u7c7b\u578b +label.quickview=\u5feb\u901f\u67e5\u770b +label.reboot=\u00e9\u0087\u008d\u00e6\u0096\u00b0\u00e5\u0090\u00af\u00e5\u008a\u00a8 +label.recent.errors=\u6700\u8fd1\u51fa\u73b0\u7684\u9519\u8bef +label.redundant.router.capability=\u5197\u4f59\u8def\u7531\u5668\u529f\u80fd +label.redundant.router=\u5197\u4f59\u8def\u7531\u5668 +label.redundant.state=\u5197\u4f59\u72b6\u6001 +label.refresh=\u5237\u65b0 +label.related=\u76f8\u5173\u8054 +label.remind.later=\u4ee5\u540e\u63d0\u9192\u6211 +label.remove.ACL=\u5220\u9664 ACL +label.remove.egress.rule=\u5220\u9664\u51fa\u53e3\u89c4\u5219 +label.remove.from.load.balancer=\u6b63\u5728\u4ece\u8d1f\u8f7d\u5e73\u8861\u5668\u4e2d\u5220\u9664\u5b9e\u4f8b +label.remove.ingress.rule=\u5220\u9664\u5165\u53e3\u89c4\u5219 +label.remove.ip.range=\u5220\u9664 IP \u8303\u56f4 +label.remove.pf=\u5220\u9664\u7aef\u53e3\u8f6c\u53d1\u89c4\u5219 +label.remove.project.account=\u4ece\u9879\u76ee\u4e2d\u5220\u9664\u5e10\u6237 +label.remove.rule=\u5220\u9664\u89c4\u5219 +label.remove.static.nat.rule=\u5220\u9664\u9759\u6001 NAT \u89c4\u5219 +label.remove.static.route=\u5220\u9664\u9759\u6001\u8def\u7531 +label.remove.tier=\u5220\u9664\u5c42 +label.remove.vm.from.lb=\u4ece\u8d1f\u8f7d\u5e73\u8861\u5668\u89c4\u5219\u4e2d\u5220\u9664 VM +label.remove.vpc=\u5220\u9664 VPC +label.removing=\u6b63\u5728\u5220\u9664 +label.removing.user=\u6b63\u5728\u5220\u9664\u7528\u6237 +label.required=\u5fc5\u987b\u7684 +label.reserved.system.gateway=\u9884\u7559\u7684\u7cfb\u7edf\u7f51\u5173 +label.reserved.system.ip=\u9884\u7559\u7684\u7cfb\u7edf IP +label.reserved.system.netmask=\u9884\u7559\u7684\u7cfb\u7edf\u7f51\u7edc\u63a9\u7801 +label.reset.VPN.connection=\u91cd\u7f6e VPN \u8fde\u63a5 label.resize.new.offering.id=New Offering +label.resize.new.size=New Size(GB) label.resize.shrink.ok=Shrink OK +label.resource.limits=\u8d44\u6e90\u9650\u5236 +label.resource.state=\u8d44\u6e90\u72b6\u6001 +label.resources=\u8d44\u6e90 +label.resource=\u8d44\u6e90 +label.restart.network=\u91cd\u65b0\u542f\u52a8\u7f51\u7edc +label.restart.required=\u9700\u8981\u91cd\u65b0\u542f\u52a8 +label.restart.vpc=\u91cd\u65b0\u542f\u52a8 VPC +label.restore=\u6062\u590d +label.review=\u6838\u5bf9 +label.revoke.project.invite=\u64a4\u9500\u9080\u8bf7 +label.role=\u89d2\u8272 +label.root.disk.controller=\u6839\u78c1\u76d8\u63a7\u5236\u5668 +label.root.disk.offering=\u6839\u78c1\u76d8\u65b9\u6848 +label.round.robin=\u8f6e\u8be2\u7b97\u6cd5 +label.rules=\u89c4\u5219 +label.running.vms=\u6b63\u5728\u8fd0\u884c\u7684 VM +label.s3.access_key=\u8bbf\u95ee\u952e +label.s3.bucket=Bucket +label.s3.connection_timeout=\u8fde\u63a5\u8d85\u65f6 +label.s3.endpoint=\u7aef\u70b9 +label.s3.max_error_retry=\u6700\u5927\u9519\u8bef\u91cd\u8bd5 +label.s3.secret_key=\u00e5\u00af\u0086\u00e9\u0092\u00a5 +label.s3.socket_timeout=Socket\u8d85\u65f6 +label.s3.use_https=\u4f7f\u7528HTTPS +label.saturday=\u661f\u671f\u516d +label.save.and.continue=\u4fdd\u5b58\u5e76\u7ee7\u7eed +label.save=\u4fdd\u5b58 +label.saving.processing=\u6b63\u5728\u4fdd\u5b58... +label.scope=\u8303\u56f4 +label.search=\u641c\u7d22 +label.secondary.storage.count=\u8f85\u52a9\u5b58\u50a8\u6c60 +label.secondary.storage=\u4e8c\u7ea7\u5b58\u50a8 +label.secondary.storage.vm=\u8f85\u52a9\u5b58\u50a8 VM +label.secondary.used=\u5df2\u4f7f\u7528\u7684\u8f85\u52a9\u5b58\u50a8 +label.secret.key=\u5bc6\u94a5 +label.security.group.name=\u5b89\u5168\u7ec4\u540d\u79f0 +label.security.groups.enabled=\u5df2\u542f\u7528\u5b89\u5168\u7ec4 +label.security.groups=\u5b89\u5168\u5206\u7ec4 +label.security.group=\u5b89\u5168\u7ec4 +label.select.a.template=\u9009\u62e9\u4e00\u4e2a\u6a21\u677f +label.select.a.zone=\u9009\u62e9\u4e00\u4e2a\u533a\u57df +label.select.instance.to.attach.volume.to=\u9009\u62e9\u8981\u5c06\u5377\u9644\u52a0\u5230\u7684\u5b9e\u4f8b +label.select.instance=\u9009\u62e9\u5b9e\u4f8b +label.select.iso.or.template=\u9009\u62e9 ISO \u6216\u6a21\u677f +label.select.offering=\u9009\u62e9\u65b9\u6848 +label.select.project=\u9009\u62e9\u9879\u76ee +label.select.tier=\u9009\u62e9\u5c42 +label.select=\u9009\u62e9 +label.select-view=\u9009\u62e9\u89c6\u56fe +label.select.vm.for.static.nat=\u4e3a\u9759\u6001 NAT \u9009\u62e9 VM +label.sent=\u5df2\u53d1\u9001 +label.server=\u670d\u52a1\u5668 +label.service.capabilities=\u670d\u52a1\u529f\u80fd +label.service.offering=\u670d\u52a1\u65b9\u6848 +label.session.expired=\u4f1a\u8bdd\u5df2\u8fc7\u671f +label.setup.network=\u8bbe\u7f6e\u7f51\u7edc +label.setup=\u8bbe\u7f6e +label.set.up.zone.type=\u8bbe\u7f6e\u533a\u57df\u7c7b\u578b +label.setup.zone=\u8bbe\u7f6e\u533a\u57df +label.SharedMountPoint=SharedMountPoint +label.shared=\u5df2\u5171\u4eab +label.show.ingress.rule=\u663e\u793a\u5165\u53e3\u89c4\u5219 +label.shutdown.provider=\u5173\u95ed\u63d0\u4f9b\u7a0b\u5e8f +label.site.to.site.VPN=\u7ad9\u70b9\u5230\u7ad9\u70b9 VPN +label.size=\u5927\u5c0f +label.skip.guide=\u6211\u4ee5\u524d\u4f7f\u7528\u8fc7 CloudStack\uff0c\u8df3\u8fc7\u6b64\u6307\u5357 +label.snapshot.limits=\u5feb\u7167\u9650\u5236 +label.snapshot.name=\u5feb\u7167\u540d\u79f0 +label.snapshot.schedule=\u8bbe\u7f6e\u91cd\u73b0\u5feb\u7167 +label.snapshot.s=\u5feb\u7167 +label.snapshots=\u5feb\u7167 +label.snapshot=\u5feb\u7167 +label.source.nat=\u6e90 NAT +label.source=\u6e90\u7b97\u6cd5 +label.specify.IP.ranges=\u6307\u5b9a IP \u8303\u56f4 +label.specify.vlan=\u6307\u5b9a VLAN +label.SR.name = SR \u540d\u79f0\u6807\u7b7e +label.srx=SRX +label.start.IP=\u8d77\u59cb IP +label.start.port=\u8d77\u59cb\u7aef\u53e3 +label.start.reserved.system.IP=\u8d77\u59cb\u9884\u7559\u7cfb\u7edf IP +label.start.vlan=\u8d77\u59cb VLAN +label.state=\u72b6\u6001 +label.static.nat.enabled=\u5df2\u542f\u7528\u9759\u6001 NAT +label.static.nat.to=\u9759\u6001 NAT \u76ee\u6807 +label.static.nat=\u9759\u6001 NAT +label.static.nat.vm.details=\u9759\u6001 NAT VM \u8be6\u60c5 +label.statistics=\u7edf\u8ba1\u6570\u636e +label.status=\u72b6\u6001 +label.step.1.title=\u6b65\u9aa4 1\: \u9009\u62e9\u4e00\u4e2a\u6a21\u677f +label.step.1=\u6b65\u9aa4 1 +label.step.2.title=\u6b65\u9aa4 2\: \u670d\u52a1\u65b9\u6848 +label.step.2=\u6b65\u9aa4 2 +label.step.3.title=\u6b65\u9aa4 3\: \u9009\u62e9\u4e00\u79cd\u78c1\u76d8\u65b9\u6848 +label.step.3=\u6b65\u9aa4 3 +label.step.4.title=\u6b65\u9aa4 4\: \u7f51\u7edc +label.step.4=\u6b65\u9aa4 4 +label.step.5.title=\u6b65\u9aa4 5\: \u6838\u5bf9 +label.step.5=\u6b65\u9aa4 5 +label.stickiness=\u7c98\u6027 +label.sticky.cookie-name=Cookie \u540d\u79f0 +label.sticky.domain=\u57df +label.sticky.expire=\u8fc7\u671f\u65e5\u671f +label.sticky.holdtime=\u6301\u7eed\u65f6\u95f4 +label.sticky.indirect=indirect +label.sticky.length=\u957f\u5ea6 +label.sticky.mode=\u6a21\u5f0f +label.sticky.nocache=nocache +label.sticky.postonly=postonly +label.sticky.prefix=prefix +label.sticky.request-learn=request-learn +label.sticky.tablesize=\u8868\u5927\u5c0f +label.stopped.vms=\u5df2\u505c\u6b62\u7684 VM +label.stop=\u00e5\u0081\u009c\u00e6\u00ad\u00a2 +label.storage.tags=\u5b58\u50a8\u6807\u7b7e +label.storage.traffic=\u5b58\u50a8\u6d41\u91cf +label.storage.type=\u5b58\u50a8\u7c7b\u578b +label.storage=\u5b58\u50a8 +label.subdomain.access=\u5b50\u57df\u8bbf\u95ee +label.submitted.by=[\u63d0\u4ea4\u8005\: ] +label.submit=\u63d0\u4ea4 +label.succeeded=\u6210\u529f +label.sunday=\u661f\u671f\u65e5 +label.super.cidr.for.guest.networks=\u6765\u5bbe\u7f51\u7edc\u7684\u8d85\u7ea7 CIDR +label.supported.services=\u652f\u6301\u7684\u670d\u52a1 +label.supported.source.NAT.type=\u652f\u6301\u7684\u6e90 NAT \u7c7b\u578b +label.suspend.project=\u6682\u505c\u9879\u76ee +label.system.capacity=\u7cfb\u7edf\u5bb9\u91cf +label.system.offering=\u7cfb\u7edf\u65b9\u6848 +label.system.service.offering=\u7cfb\u7edf\u670d\u52a1\u65b9\u6848 +label.system.vms=\u7cfb\u7edf VM +label.system.vm.type=\u7cfb\u7edf VM \u7c7b\u578b +label.system.vm=\u7cfb\u7edf VM +label.system.wide.capacity=\u5168\u7cfb\u7edf\u5bb9\u91cf +label.tagged=\u5df2\u6807\u8bb0 +label.tags=\u6807\u7b7e +label.target.iqn=\u76ee\u6807 IQN +label.task.completed=\u5df2\u5b8c\u6210\u4efb\u52a1 +label.template.limits=\u6a21\u677f\u9650\u5236 +label.template=\u6a21\u677f +label.TFTP.dir=TFTP \u76ee\u5f55 +label.theme.default=\u9ed8\u8ba4\u4e3b\u9898 +label.theme.grey=\u81ea\u5b9a\u4e49 - \u7070\u8272 +label.theme.lightblue=\u81ea\u5b9a\u4e49 - \u6de1\u84dd\u8272 +label.thursday=\u661f\u671f\u56db +label.tier.details=\u5c42\u8be6\u7ec6\u4fe1\u606f +label.tier=\u5c42 +label.timeout.in.second = \u8d85\u65f6(\u79d2) +label.timeout=\u8d85\u65f6 +label.time=\u65f6\u95f4 +label.time.zone=\u65f6\u533a +label.timezone=\u65f6\u533a +label.token=\u4ee4\u724c +label.total.cpu=CPU \u603b\u91cf +label.total.CPU=CPU \u603b\u91cf +label.total.hosts=\u603b\u4e3b\u673a\u6570 +label.total.memory=\u5185\u5b58\u603b\u91cf +label.total.of.ip=\u603b IP \u5730\u5740\u6570 +label.total.of.vm=\u603b VM \u6570 +label.total.storage=\u5b58\u50a8\u603b\u91cf +label.total.vms=\u603b VM \u6570 +label.traffic.label=\u6d41\u91cf\u6807\u7b7e +label.traffic.types=\u6d41\u91cf\u7c7b\u578b +label.traffic.type=\u6d41\u91cf\u7c7b\u578b +label.tuesday=\u661f\u671f\u4e8c +label.type.id=\u7c7b\u578b ID +label.type=\u7c7b\u578b +label.unavailable=\u4e0d\u53ef\u7528 +label.unlimited=\u65e0\u9650\u5236 +label.untagged=\u5df2\u53d6\u6d88\u6807\u8bb0 +label.update.project.resources=\u66f4\u65b0\u9879\u76ee\u8d44\u6e90 +label.update.ssl.cert= \u66f4\u65b0 SSL \u8bc1\u4e66 +label.update.ssl= \u66f4\u65b0 SSL \u8bc1\u4e66 +label.updating=\u6b63\u5728\u66f4\u65b0 +label.upload=\u4e0a\u8f7d +label.upload.volume=\u4e0a\u8f7d\u5377 +label.url=URL +label.usage.interface=\u4f7f\u7528\u754c\u9762 +label.used=\u5df2\u4f7f\u7528 +label.username=\u7528\u6237\u540d +label.users=\u666e\u901a\u7528\u6237 +label.user=\u7528\u6237 +label.value=\u503c +label.vcdcname=vCenter DC \u540d\u79f0 +label.vcenter.cluster=vCenter \u7fa4\u96c6 +label.vcenter.datacenter=vCenter \u6570\u636e\u4e2d\u5fc3 +label.vcenter.datastore=vCenter \u6570\u636e\u5b58\u50a8 +label.vcenter.host=vCenter \u4e3b\u673a +label.vcenter.password=vCenter \u5bc6\u7801 +label.vcenter.username=vCenter \u7528\u6237\u540d +label.vcipaddress=vCenter IP \u5730\u5740 +label.version=\u7248\u672c +label.view.all=\u67e5\u770b\u5168\u90e8 +label.view.console=\u67e5\u770b\u63a7\u5236\u53f0 +label.viewing=\u6b63\u5728\u67e5\u770b +label.view.more=\u67e5\u770b\u66f4\u591a +label.view=\u67e5\u770b +label.virtual.appliances=\u865a\u62df\u8bbe\u5907 +label.virtual.appliance=\u865a\u62df\u8bbe\u5907 +label.virtual.machines=\u865a\u62df\u673a +label.virtual.network=\u865a\u62df\u7f51\u7edc +label.virtual.routers=\u865a\u62df\u8def\u7531\u5668 +label.virtual.router=\u865a\u62df\u8def\u7531\u5668 +label.vlan.id=VLAN ID +label.vlan.range=VLAN \u8303\u56f4 +label.vlan=VLAN +label.vm.add=\u6dfb\u52a0\u5b9e\u4f8b +label.vm.destroy=\u9500\u6bc1 +label.vm.display.name=VM \u663e\u793a\u540d\u79f0 +label.VMFS.datastore=VMFS \u6570\u636e\u5b58\u50a8 +label.vmfs=VMFS +label.vm.name=VM \u540d\u79f0 +label.vm.reboot=\u91cd\u65b0\u542f\u52a8 +label.VMs.in.tier=\u5c42\u4e2d\u7684 VM +label.vmsnapshot.type=\u00e7\u00b1\u00bb\u00e5\u009e\u008b +label.vm.start=\u542f\u52a8 +label.vm.state=VM \u72b6\u6001 +label.vm.stop=\u505c\u6b62 +label.vms=VM +label.vmware.traffic.label=VMware \u6d41\u91cf\u6807\u7b7e +label.volgroup=\u5377\u7ec4 +label.volume.limits=\u5377\u9650\u5236 +label.volume.name=\u5377\u540d\u79f0 +label.volumes=\u5377 +label.volume=\u5377 +label.vpc.id=VPC ID +label.VPC.router.details=VPC \u8def\u7531\u5668\u8be6\u7ec6\u4fe1\u606f +label.vpc=VPC +label.VPN.connection=VPN \u8fde\u63a5 +label.vpn.customer.gateway=VPN \u5ba2\u6237\u7f51\u5173 +label.VPN.customer.gateway=VPN \u5ba2\u6237\u7f51\u5173 +label.VPN.gateway=VPN \u7f51\u5173 +label.vpn=VPN +label.vsmctrlvlanid=\u63a7\u5236 VLAN ID +label.vsmpktvlanid=\u6570\u636e\u5305 VLAN ID +label.vsmstoragevlanid=\u5b58\u50a8 VLAN ID +label.vsphere.managed=\u7531 vSphere \u7ba1\u7406 +label.waiting=\u6b63\u5728\u7b49\u5f85 +label.warn=\u8b66\u544a +label.wednesday=\u661f\u671f\u4e09 +label.weekly=\u6bcf\u5468\u4e00\u6b21 +label.welcome.cloud.console=\u6b22\u8fce\u4f7f\u7528\u7ba1\u7406\u63a7\u5236\u53f0 +label.welcome=\u6b22\u8fce +label.what.is.cloudstack=\u4ec0\u4e48\u662f CloudStack&\#8482? +label.xen.traffic.label=XenServer \u6d41\u91cf\u6807\u7b7e +label.yes=\u662f +label.zone.details=\u533a\u57df\u8be6\u60c5 +label.zone.id=\u533a\u57df ID +label.zone.name=\u533a\u57df\u540d\u79f0 +label.zone.step.1.title=\u6b65\u9aa4 1\: \u9009\u62e9\u4e00\u4e2a\u7f51\u7edc +label.zone.step.2.title=\u6b65\u9aa4 2\: \u6dfb\u52a0\u4e00\u4e2a\u533a\u57df +label.zone.step.3.title=\u6b65\u9aa4 3\: \u6dfb\u52a0\u4e00\u4e2a\u63d0\u4f9b\u70b9 +label.zone.step.4.title=\u6b65\u9aa4 4\: \u6dfb\u52a0\u4e00\u4e2a IP \u8303\u56f4 +label.zones=\u533a\u57df +label.zone.type=\u533a\u57df\u7c7b\u578b +label.zone=\u533a\u57df +label.zone.wide=\u6574\u4e2a\u533a\u57df +label.zoneWizard.trafficType.guest=\u6765\u5bbe\u7f51\u7edc\: \u5ba2\u6237\u865a\u62df\u673a\u4e4b\u95f4\u7684\u7f51\u7edc\u6d41\u91cf +label.zoneWizard.trafficType.management=\u7ba1\u7406\u7f51\: CloudStack\u5185\u90e8\u8d44\u6e90\u4e4b\u95f4\u7684\u7f51\u7edc\u6d41\u91cf, \u5305\u62ec\u4e0e\u7ba1\u7406\u670d\u52a1\u5668\u4ea4\u4e92\u7684\u4efb\u4f55\u7ec4\u4ef6, \u6bd4\u5982\u4e3b\u673a\u548cCloudStack\u7cfb\u7edf\u865a\u62df\u673a +label.zoneWizard.trafficType.public=\u516c\u5171\u7f51\u7edc\: \u4e91\u73af\u5883\u4e2d\u865a\u62df\u673a\u4e0e\u56e0\u7279\u7f51\u4e4b\u95f4\u7684\u7f51\u7edc\u6d41\u91cf. +label.zoneWizard.trafficType.storage=\u5b58\u50a8\u7f51\: \u4e3b\u5b58\u50a8\u4e0e\u4e8c\u7ea7\u5b58\u50a8\u670d\u52a1\u5668\u4e4b\u95f4\u7684\u6d41\u91cf, \u6bd4\u5982\u865a\u673a\u6a21\u677f\u548c\u5feb\u7167 +managed.state=\u6258\u7ba1\u72b6\u6001 +message.acquire.new.ip=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u4e3a\u6b64\u7f51\u7edc\u83b7\u53d6\u4e00\u4e2a\u65b0 IP\u3002 +message.acquire.new.ip.vpc=\u8bf7\u786e\u8ba4\u4f60\u60f3\u8981\u4e3a\u6b64VPC\u83b7\u5f97\u65b0\u7684IP +message.acquire.public.ip=\u8bf7\u9009\u62e9\u4e00\u4e2a\u8981\u4ece\u4e2d\u83b7\u53d6\u65b0 IP \u7684\u533a\u57df\u3002 +message.action.cancel.maintenance.mode=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u53d6\u6d88\u6b64\u7ef4\u62a4\u3002 +message.action.cancel.maintenance=\u5df2\u6210\u529f\u53d6\u6d88\u7ef4\u62a4\u60a8\u7684\u4e3b\u673a\u3002\u6b64\u8fc7\u7a0b\u53ef\u80fd\u9700\u8981\u957f\u8fbe\u51e0\u5206\u949f\u65f6\u95f4\u3002 +message.action.change.service.warning.for.instance=\u5fc5\u987b\u5148\u7981\u7528\u60a8\u7684\u5b9e\u4f8b\uff0c\u7136\u540e\u518d\u5c1d\u8bd5\u66f4\u6539\u5176\u5f53\u524d\u7684\u670d\u52a1\u65b9\u6848\u3002 +message.action.change.service.warning.for.router=\u5fc5\u987b\u5148\u505c\u6b62\u60a8\u7684\u8def\u7531\u5668\uff0c\u7136\u540e\u518d\u5c1d\u8bd5\u66f4\u6539\u5176\u5f53\u524d\u7684\u670d\u52a1\u65b9\u6848\u3002 +message.action.delete.cluster=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u7fa4\u96c6\u3002 +message.action.delete.disk.offering=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u78c1\u76d8\u65b9\u6848\u3002 +message.action.delete.domain=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u57df\u3002 +message.action.delete.external.firewall=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u5916\u90e8\u9632\u706b\u5899\u3002\u8b66\u544a\: \u5982\u679c\u60a8\u8ba1\u5212\u91cd\u65b0\u6dfb\u52a0\u540c\u4e00\u4e2a\u5916\u90e8\u9632\u706b\u5899\uff0c\u5219\u5fc5\u987b\u5728\u8bbe\u5907\u4e0a\u91cd\u7f6e\u4f7f\u7528\u6570\u636e\u3002 +message.action.delete.external.load.balancer=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u5916\u90e8\u8d1f\u8f7d\u5e73\u8861\u5668\u3002\u8b66\u544a\: \u5982\u679c\u60a8\u8ba1\u5212\u91cd\u65b0\u6dfb\u52a0\u540c\u4e00\u4e2a\u5916\u90e8\u8d1f\u8f7d\u5e73\u8861\u5668\uff0c\u5219\u5fc5\u987b\u5728\u8bbe\u5907\u4e0a\u91cd\u7f6e\u4f7f\u7528\u6570\u636e\u3002 +message.action.delete.ingress.rule=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u5165\u53e3\u89c4\u5219\u3002 +message.action.delete.ISO.for.all.zones=\u6b64 ISO \u7531\u6240\u6709\u533a\u57df\u4f7f\u7528\u3002\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5c06\u5176\u4ece\u6240\u6709\u533a\u57df\u4e2d\u5220\u9664\u3002 +message.action.delete.ISO=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64 ISO\u3002 +message.action.delete.network=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u7f51\u7edc\u3002 +message.action.delete.nexusVswitch=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64 Nexus 1000v +message.action.delete.physical.network=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u7269\u7406\u7f51\u7edc +message.action.delete.pod=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u63d0\u4f9b\u70b9\u3002 +message.action.delete.primary.storage=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u4e3b\u5b58\u50a8\u3002 +message.action.delete.secondary.storage=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u8f85\u52a9\u5b58\u50a8\u3002 +message.action.delete.security.group=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u5b89\u5168\u7ec4\u3002 +message.action.delete.service.offering=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u670d\u52a1\u65b9\u6848\u3002 +message.action.delete.snapshot=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u5feb\u7167\u3002 +message.action.delete.system.service.offering=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u7cfb\u7edf\u670d\u52a1\u65b9\u6848\u3002 +message.action.delete.template.for.all.zones=\u6b64\u6a21\u677f\u7531\u6240\u6709\u533a\u57df\u4f7f\u7528\u3002\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5c06\u5176\u4ece\u6240\u6709\u533a\u57df\u4e2d\u5220\u9664\u3002 +message.action.delete.template=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u6a21\u677f\u3002 +message.action.delete.volume=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u5377\u3002 +message.action.delete.zone=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u533a\u57df\u3002 +message.action.destroy.instance=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u9500\u6bc1\u6b64\u5b9e\u4f8b\u3002 +message.action.destroy.systemvm=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u9500\u6bc1\u6b64\u7cfb\u7edf VM\u3002 +message.action.disable.cluster=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u7981\u7528\u6b64\u7fa4\u96c6\u3002 +message.action.disable.nexusVswitch=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u7981\u7528\u6b64 Nexus 1000v +message.action.disable.physical.network=\u8bf7\u4f60\u786e\u8ba4\u662f\u662f\u5426\u9700\u8981\u7981\u7528\u8fd9\u4e2a\u7269\u7406\u7f51\u7edc\u3002 +message.action.disable.pod=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u7981\u7528\u6b64\u63d0\u4f9b\u70b9\u3002 +message.action.disable.static.NAT=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u7981\u7528\u9759\u6001 NAT\u3002 +message.action.disable.zone=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u7981\u7528\u6b64\u533a\u57df\u3002 +message.action.download.iso=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u4e0b\u8f7d\u6b64 ISO\u3002 +message.action.download.template=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u4e0b\u8f7d\u6b64\u6a21\u677f\u3002 +message.action.enable.cluster=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u542f\u7528\u6b64\u7fa4\u96c6\u3002 +message.action.enable.maintenance=\u5df2\u6210\u529f\u51c6\u5907\u597d\u7ef4\u62a4\u60a8\u7684\u4e3b\u673a\u3002\u6b64\u8fc7\u7a0b\u53ef\u80fd\u9700\u8981\u957f\u8fbe\u51e0\u5206\u949f\u6216\u66f4\u957f\u65f6\u95f4\uff0c\u5177\u4f53\u53d6\u51b3\u4e8e\u5f53\u524d\u6b64\u4e3b\u673a\u4e0a\u7684 VM \u6570\u91cf\u3002 +message.action.enable.nexusVswitch=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u542f\u7528\u6b64 Nexus 1000v +message.action.enable.physical.network=\u8bf7\u4f60\u786e\u8ba4\u662f\u662f\u5426\u9700\u8981\u542f\u7528\u8fd9\u4e2a\u7269\u7406\u7f51\u7edc\u3002 +message.action.enable.pod=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u542f\u7528\u6b64\u63d0\u4f9b\u70b9\u3002 +message.action.enable.zone=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u542f\u7528\u6b64\u533a\u57df\u3002 +message.action.force.reconnect=\u5df2\u6210\u529f\u5f3a\u5236\u91cd\u65b0\u8fde\u63a5\u60a8\u7684\u4e3b\u673a\u3002\u6b64\u8fc7\u7a0b\u53ef\u80fd\u9700\u8981\u957f\u8fbe\u51e0\u5206\u949f\u65f6\u95f4\u3002 +message.action.host.enable.maintenance.mode=\u542f\u7528\u7ef4\u62a4\u6a21\u5f0f\u5c06\u5bfc\u81f4\u5c06\u6b64\u4e3b\u673a\u4e0a\u6b63\u5728\u8fd0\u884c\u7684\u6240\u6709\u5b9e\u4f8b\u5b9e\u65f6\u8fc1\u79fb\u5230\u4efb\u4f55\u53ef\u7528\u7684\u4e3b\u673a\u3002 +message.action.instance.reset.password=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u66f4\u6539\u6b64\u865a\u62df\u673a\u7684 ROOT \u7528\u6237\u5bc6\u7801\u3002 +message.action.manage.cluster=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u6258\u7ba1\u6b64\u7fa4\u96c6\u3002 +message.action.primarystorage.enable.maintenance.mode=\u8b66\u544a\: \u5c06\u4e3b\u5b58\u50a8\u7f6e\u4e8e\u7ef4\u62a4\u6a21\u5f0f\u5c06\u5bfc\u81f4\u4f7f\u7528\u4e3b\u5b58\u50a8\u4e2d\u7684\u5377\u7684\u6240\u6709 VM \u505c\u6b62\u8fd0\u884c\u3002\u662f\u5426\u8981\u7ee7\u7eed? +message.action.reboot.instance=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u91cd\u65b0\u542f\u52a8\u6b64\u5b9e\u4f8b\u3002 +message.action.reboot.router=\u6b64\u865a\u62df\u8def\u7531\u5668\u63d0\u4f9b\u7684\u6240\u6709\u670d\u52a1\u90fd\u5c06\u4e2d\u65ad\u3002\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u91cd\u65b0\u542f\u52a8\u6b64\u8def\u7531\u5668\u3002 +message.action.reboot.systemvm=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u91cd\u65b0\u542f\u52a8\u6b64\u7cfb\u7edf VM\u3002 +message.action.release.ip=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u91ca\u653e\u6b64 IP\u3002 +message.action.remove.host=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u4e3b\u673a\u3002 +message.action.reset.password.off=\u60a8\u7684\u5b9e\u4f8b\u5f53\u524d\u4e0d\u652f\u6301\u6b64\u529f\u80fd\u3002 +message.action.reset.password.warning=\u5fc5\u987b\u5148\u505c\u6b62\u60a8\u7684\u5b9e\u4f8b\uff0c\u7136\u540e\u518d\u5c1d\u8bd5\u66f4\u6539\u5176\u5f53\u524d\u7684\u5bc6\u7801\u3002 +message.action.restore.instance=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u8fd8\u539f\u6b64\u5b9e\u4f8b\u3002 +message.action.start.instance=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u542f\u52a8\u6b64\u5b9e\u4f8b\u3002 +message.action.start.router=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u542f\u52a8\u6b64\u8def\u7531\u5668\u3002 +message.action.start.systemvm=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u542f\u52a8\u6b64\u7cfb\u7edf VM\u3002 +message.action.stop.instance=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u505c\u6b62\u6b64\u5b9e\u4f8b\u3002 +message.action.stop.router=\u6b64\u865a\u62df\u8def\u7531\u5668\u63d0\u4f9b\u7684\u6240\u6709\u670d\u52a1\u90fd\u5c06\u4e2d\u65ad\u3002\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u505c\u6b62\u6b64\u8def\u7531\u5668\u3002 +message.action.stop.systemvm=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u505c\u6b62\u6b64\u7cfb\u7edf VM\u3002 +message.action.take.snapshot=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u521b\u5efa\u6b64\u5377\u7684\u5feb\u7167\u3002 +message.action.unmanage.cluster=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u53d6\u6d88\u6258\u7ba1\u6b64\u7fa4\u96c6\u3002 +message.activate.project=\u662f\u5426\u786e\u5b9e\u8981\u6fc0\u6d3b\u6b64\u9879\u76ee? +message.add.cluster=\u5411\u533a\u57df \u3001\u63d0\u4f9b\u70b9 \u4e2d\u6dfb\u52a0\u4e00\u4e2a\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\u6258\u7ba1\u7684\u7fa4\u96c6 +message.add.cluster.zone=\u5411\u533a\u57df \u4e2d\u6dfb\u52a0\u4e00\u4e2a\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\u6258\u7ba1\u7684\u7fa4\u96c6 +message.add.disk.offering=\u8bf7\u6307\u5b9a\u4ee5\u4e0b\u53c2\u6570\u4ee5\u6dfb\u52a0\u4e00\u4e2a\u65b0\u7684\u78c1\u76d8\u65b9\u6848 +message.add.domain=\u8bf7\u6307\u5b9a\u8981\u5728\u6b64\u57df\u4e0b\u521b\u5efa\u7684\u5b50\u57df +message.add.firewall=\u5411\u533a\u57df\u4e2d\u6dfb\u52a0\u4e00\u4e2a\u9632\u706b\u5899 +message.add.guest.network=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u6dfb\u52a0\u4e00\u4e2a\u6765\u5bbe\u7f51\u7edc +message.add.host=\u8bf7\u6307\u5b9a\u4ee5\u4e0b\u53c2\u6570\u4ee5\u6dfb\u52a0\u4e00\u53f0\u65b0\u4e3b\u673a +message.adding.host=\u6b63\u5728\u6dfb\u52a0\u4e3b\u673a +message.adding.Netscaler.device=\u6b63\u5728\u6dfb\u52a0 Netscaler \u8bbe\u5907 +message.adding.Netscaler.provider=\u6b63\u5728\u6dfb\u52a0 Netscaler \u63d0\u4f9b\u7a0b\u5e8f +message.add.ip.range.direct.network=\u5411\u533a\u57df \u4e2d\u7684\u76f4\u63a5\u7f51\u7edc \u6dfb\u52a0\u4e00\u4e2a IP \u8303\u56f4 +message.add.ip.range.to.pod=

    \u5411\u63d0\u4f9b\u70b9\u6dfb\u52a0\u4e00\u4e2a IP \u8303\u56f4\:

    +message.add.ip.range=\u5411\u533a\u57df\u4e2d\u7684\u516c\u7528\u7f51\u7edc\u6dfb\u52a0\u4e00\u4e2a IP \u8303\u56f4 +message.additional.networks.desc=\u8bf7\u9009\u62e9\u865a\u62df\u673a\u8981\u8fde\u63a5\u5230\u7684\u5176\u4ed6\u7f51\u7edc\u3002 +message.add.load.balancer=\u5411\u533a\u57df\u4e2d\u6dfb\u52a0\u4e00\u4e2a\u8d1f\u8f7d\u5e73\u8861\u5668 +message.add.load.balancer.under.ip=\u5df2\u5728\u4ee5\u4e0b IP \u4e0b\u6dfb\u52a0\u8d1f\u8f7d\u5e73\u8861\u5668\u89c4\u5219\: +message.add.network=\u4e3a\u533a\u57df\u6dfb\u52a0\u4e00\u4e2a\u65b0\u7f51\u7edc\: +message.add.new.gateway.to.vpc=\u8bf7\u6307\u5b9a\u5c06\u65b0\u7f51\u5173\u6dfb\u52a0\u5230\u6b64 VPC \u6240\u9700\u7684\u4fe1\u606f\u3002 +message.add.pod.during.zone.creation=\u6bcf\u4e2a\u533a\u57df\u4e2d\u5fc5\u987b\u5305\u542b\u4e00\u4e2a\u6216\u591a\u4e2a\u63d0\u4f9b\u70b9\uff0c\u73b0\u5728\u6211\u4eec\u5c06\u6dfb\u52a0\u7b2c\u4e00\u4e2a\u63d0\u4f9b\u70b9\u3002\u63d0\u4f9b\u70b9\u4e2d\u5305\u542b\u4e3b\u673a\u548c\u4e3b\u5b58\u50a8\u670d\u52a1\u5668\uff0c\u60a8\u5c06\u5728\u968f\u540e\u7684\u67d0\u4e2a\u6b65\u9aa4\u4e2d\u6dfb\u52a0\u8fd9\u4e9b\u4e3b\u673a\u548c\u670d\u52a1\u5668\u3002\u9996\u5148\uff0c\u8bf7\u4e3a CloudStack \u7684\u5185\u90e8\u7ba1\u7406\u6d41\u91cf\u914d\u7f6e\u4e00\u4e2a\u9884\u7559 IP \u5730\u5740\u8303\u56f4\u3002\u9884\u7559\u7684 IP \u8303\u56f4\u5bf9\u4e91\u4e2d\u7684\u6bcf\u4e2a\u533a\u57df\u6765\u8bf4\u5fc5\u987b\u552f\u4e00\u3002 +message.add.pod=\u4e3a\u533a\u57df \u6dfb\u52a0\u4e00\u4e2a\u65b0\u63d0\u4f9b\u70b9 +message.add.primary.storage=\u4e3a\u533a\u57df \u3001\u63d0\u4f9b\u70b9 \u6dfb\u52a0\u4e00\u4e2a\u65b0\u7684\u4e3b\u5b58\u50a8 +message.add.primary=\u8bf7\u6307\u5b9a\u4ee5\u4e0b\u53c2\u6570\u4ee5\u6dfb\u52a0\u4e00\u4e2a\u65b0\u4e3b\u5b58\u50a8 +message.add.secondary.storage=\u4e3a\u533a\u57df \u6dfb\u52a0\u4e00\u4e2a\u65b0\u5b58\u50a8 +message.add.service.offering=\u8bf7\u586b\u5199\u4ee5\u4e0b\u6570\u636e\u4ee5\u6dfb\u52a0\u4e00\u4e2a\u65b0\u8ba1\u7b97\u65b9\u6848\u3002 +message.add.system.service.offering=\u8bf7\u586b\u5199\u4ee5\u4e0b\u6570\u636e\u4ee5\u6dfb\u52a0\u4e00\u4e2a\u65b0\u7684\u7cfb\u7edf\u670d\u52a1\u65b9\u6848\u3002 +message.add.template=\u8bf7\u8f93\u5165\u4ee5\u4e0b\u6570\u636e\u4ee5\u521b\u5efa\u65b0\u6a21\u677f +message.add.volume=\u8bf7\u586b\u5199\u4ee5\u4e0b\u6570\u636e\u4ee5\u6dfb\u52a0\u4e00\u4e2a\u65b0\u5377\u3002 +message.add.VPN.gateway=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u6dfb\u52a0 VPN \u7f51\u5173 +message.advanced.mode.desc=\u5982\u679c\u60a8\u5e0c\u671b\u542f\u7528 VLAN \u652f\u6301\uff0c\u8bf7\u9009\u62e9\u6b64\u7f51\u7edc\u6a21\u5f0f\u3002\u6b64\u7f51\u7edc\u6a21\u5f0f\u5728\u5141\u8bb8\u7ba1\u7406\u5458\u63d0\u4f9b\u9632\u706b\u5899\u3001VPN \u6216\u8d1f\u8f7d\u5e73\u8861\u5668\u652f\u6301\u7b49\u81ea\u5b9a\u4e49\u7f51\u7edc\u65b9\u6848\u4ee5\u53ca\u542f\u7528\u76f4\u63a5\u7f51\u7edc\u8fde\u63a5\u4e0e\u865a\u62df\u7f51\u7edc\u8fde\u63a5\u7b49\u65b9\u9762\u63d0\u4f9b\u4e86\u6700\u5927\u7684\u7075\u6d3b\u6027\u3002 +message.advanced.security.group=\u5982\u679c\u8981\u4f7f\u7528\u5b89\u5168\u7ec4\u63d0\u4f9b\u6765\u5bbe VM \u9694\u79bb\uff0c\u8bf7\u9009\u62e9\u6b64\u6a21\u5f0f\u3002 +message.advanced.virtual=\u5982\u679c\u8981\u4f7f\u7528\u6574\u4e2a\u533a\u57df\u7684 VLAN \u63d0\u4f9b\u6765\u5bbe VM \u9694\u79bb\uff0c\u8bf7\u9009\u62e9\u6b64\u6a21\u5f0f\u3002 +message.after.enable.s3=\u5df2\u914d\u7f6e\u652f\u6301S3\u7684\u4e8c\u7ea7\u5b58\u50a8. \u6ce8\u610f\: \u5f53\u4f60\u79bb\u5f00\u6b64\u9875\u9762, \u4f60\u5c06\u65e0\u6cd5\u518d\u6b21\u914d\u7f6eS3. +message.after.enable.swift=\u5df2\u914d\u7f6e SWIFT\u3002\u6ce8\u610f\: \u9000\u51fa\u6b64\u9875\u9762\u540e\uff0c\u60a8\u5c06\u65e0\u6cd5\u518d\u6b21\u91cd\u65b0\u914d\u7f6e SWIFT\u3002 +message.alert.state.detected=\u68c0\u6d4b\u5230\u8b66\u62a5\u72b6\u6001 +message.allow.vpn.access=\u8bf7\u8f93\u5165\u8981\u5141\u8bb8\u8fdb\u884c VPN \u8bbf\u95ee\u7684\u7528\u6237\u7684\u7528\u6237\u540d\u548c\u5bc6\u7801\u3002 +message.apply.snapshot.policy=\u60a8\u5df2\u6210\u529f\u66f4\u65b0\u5f53\u524d\u7684\u5feb\u7167\u7b56\u7565\u3002 +message.attach.iso.confirm=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5c06\u6b64 ISO \u9644\u52a0\u5230\u6b64\u865a\u62df\u5b9e\u4f8b\u3002 +message.attach.volume=\u8bf7\u586b\u5199\u4ee5\u4e0b\u6570\u636e\u4ee5\u9644\u52a0\u4e00\u4e2a\u65b0\u5377\u3002\u5982\u679c\u8981\u5c06\u78c1\u76d8\u5377\u9644\u52a0\u5230\u57fa\u4e8e Windows \u7684\u865a\u62df\u673a\uff0c\u9700\u8981\u91cd\u65b0\u542f\u52a8\u6b64\u5b9e\u4f8b\u624d\u80fd\u663e\u793a\u5df2\u8fde\u63a5\u7684\u78c1\u76d8\u3002 +message.basic.mode.desc=\u5982\u679c\u60a8*\u4e0d*\u5e0c\u671b\u542f\u7528\u4efb\u4f55 VLAN \u652f\u6301\uff0c\u8bf7\u9009\u62e9\u6b64\u7f51\u7edc\u6a21\u5f0f\u3002\u5c06\u76f4\u63a5\u4ece\u6b64\u7f51\u7edc\u4e2d\u4e3a\u5728\u6b64\u7f51\u7edc\u6a21\u5f0f\u4e0b\u521b\u5efa\u7684\u6240\u6709\u865a\u62df\u673a\u5b9e\u4f8b\u5206\u914d\u4e00\u4e2a IP\uff0c\u5e76\u4f7f\u7528\u5b89\u5168\u7ec4\u63d0\u4f9b\u5b89\u5168\u6027\u548c\u9694\u79bb\u3002 +message.change.offering.confirm=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u66f4\u6539\u6b64\u865a\u62df\u5b9e\u4f8b\u7684\u670d\u52a1\u65b9\u6848\u3002 +message.change.password=\u8bf7\u66f4\u6539\u60a8\u7684\u5bc6\u7801\u3002 +message.configure.all.traffic.types=\u60a8\u6709\u591a\u4e2a\u7269\u7406\u7f51\u7edc\uff0c\u8bf7\u5355\u51fb\u201c\u7f16\u8f91\u201d\u6309\u94ae\u4e3a\u6bcf\u79cd\u6d41\u91cf\u7c7b\u578b\u914d\u7f6e\u6807\u7b7e\u3002 +message.configuring.guest.traffic=\u6b63\u5728\u914d\u7f6e\u6765\u5bbe\u6d41\u91cf +message.configuring.physical.networks=\u6b63\u5728\u914d\u7f6e\u7269\u7406\u7f51\u7edc +message.configuring.public.traffic=\u6b63\u5728\u914d\u7f6e\u516c\u5171\u6d41\u91cf +message.configuring.storage.traffic=\u6b63\u5728\u914d\u7f6e\u5b58\u50a8\u6d41\u91cf +message.confirm.action.force.reconnect=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5f3a\u5236\u91cd\u65b0\u8fde\u63a5\u6b64\u4e3b\u673a\u3002 +message.confirm.delete.F5=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664 F5 +message.confirm.delete.NetScaler=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664 NetScaler +message.confirm.delete.SRX=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664 SRX +message.confirm.destroy.router=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u9500\u6bc1\u6b64\u8def\u7531\u5668 +message.confirm.disable.provider=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u7981\u7528\u6b64\u63d0\u4f9b\u7a0b\u5e8f +message.confirm.enable.provider=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u542f\u7528\u6b64\u63d0\u4f9b\u7a0b\u5e8f +message.confirm.join.project=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u52a0\u5165\u6b64\u9879\u76ee\u3002 +message.confirm.remove.IP.range=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64 IP \u8303\u56f4\u3002 +message.confirm.shutdown.provider=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5173\u95ed\u6b64\u63d0\u4f9b\u7a0b\u5e8f +message.copy.iso.confirm=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5c06 ISO \u590d\u5236\u5230 +message.copy.template=\u5c06\u6a21\u677f XXX \u4ece\u533a\u57df \u590d\u5236\u5230 +message.create.template=\u662f\u5426\u786e\u5b9e\u8981\u521b\u5efa\u6a21\u677f? +message.create.template.vm=\u57fa\u4e8e\u6a21\u677f \u521b\u5efa VM +message.create.template.volume=\u8bf7\u5148\u6307\u5b9a\u4ee5\u4e0b\u4fe1\u606f\uff0c\u7136\u540e\u518d\u521b\u5efa\u78c1\u76d8\u5377\u7684\u6a21\u677f\: \u3002\u521b\u5efa\u6a21\u677f\u53ef\u80fd\u9700\u8981\u51e0\u5206\u949f\u5230\u66f4\u957f\u7684\u65f6\u95f4\uff0c\u5177\u4f53\u53d6\u51b3\u4e8e\u78c1\u76d8\u5377\u7684\u5927\u5c0f\u3002 +message.creating.cluster=\u6b63\u5728\u521b\u5efa\u7fa4\u96c6 +message.creating.guest.network=\u6b63\u5728\u521b\u5efa\u6765\u5bbe\u7f51\u7edc +message.creating.physical.networks=\u6b63\u5728\u521b\u5efa\u7269\u7406\u7f51\u7edc +message.creating.pod=\u6b63\u5728\u521b\u5efa\u63d0\u4f9b\u70b9 +message.creating.primary.storage=\u6b63\u5728\u521b\u5efa\u4e3b\u5b58\u50a8 +message.creating.secondary.storage=\u6b63\u5728\u521b\u5efa\u8f85\u52a9\u5b58\u50a8 +message.creating.zone=\u6b63\u5728\u521b\u5efa\u533a\u57df +message.decline.invitation=\u662f\u5426\u786e\u5b9e\u8981\u62d2\u7edd\u6b64\u9879\u76ee\u9080\u8bf7? +message.delete.account=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u5e10\u6237\u3002 +message.delete.gateway=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u7f51\u5173 +message.delete.project=\u662f\u5426\u786e\u5b9e\u8981\u5220\u9664\u6b64\u9879\u76ee? +message.delete.user=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64\u7528\u6237\u3002 +message.delete.VPN.connection=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664 VPN \u8fde\u63a5 +message.delete.VPN.customer.gateway=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64 VPN \u5ba2\u6237\u7f51\u5173 +message.delete.VPN.gateway=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u6b64 VPN \u7f51\u5173 +message.desc.advanced.zone=\u9002\u7528\u4e8e\u66f4\u52a0\u590d\u6742\u7684\u7f51\u7edc\u62d3\u6251\u3002\u6b64\u7f51\u7edc\u6a21\u5f0f\u5728\u5b9a\u4e49\u6765\u5bbe\u7f51\u7edc\u5e76\u63d0\u4f9b\u9632\u706b\u5899\u3001VPN \u6216\u8d1f\u8f7d\u5e73\u8861\u5668\u652f\u6301\u7b49\u81ea\u5b9a\u4e49\u7f51\u7edc\u65b9\u6848\u65b9\u9762\u63d0\u4f9b\u4e86\u6700\u5927\u7684\u7075\u6d3b\u6027\u3002 +message.desc.basic.zone=\u63d0\u4f9b\u4e00\u4e2a\u7f51\u7edc\uff0c\u5c06\u76f4\u63a5\u4ece\u6b64\u7f51\u7edc\u4e2d\u4e3a\u6bcf\u4e2a VM \u5b9e\u4f8b\u5206\u914d\u4e00\u4e2a IP\u3002\u53ef\u4ee5\u901a\u8fc7\u5b89\u5168\u7ec4\u7b49\u7b2c 3 \u5c42\u65b9\u5f0f\u63d0\u4f9b\u6765\u5bbe\u9694\u79bb(IP \u5730\u5740\u6e90\u8fc7\u6ee4)\u3002 +message.desc.cluster=\u6bcf\u4e2a\u63d0\u4f9b\u70b9\u4e2d\u5fc5\u987b\u5305\u542b\u4e00\u4e2a\u6216\u591a\u4e2a\u7fa4\u96c6\uff0c\u73b0\u5728\u6211\u4eec\u5c06\u6dfb\u52a0\u7b2c\u4e00\u4e2a\u7fa4\u96c6\u3002\u7fa4\u96c6\u63d0\u4f9b\u4e86\u4e00\u79cd\u7f16\u7ec4\u4e3b\u673a\u7684\u65b9\u6cd5\u3002\u7fa4\u96c6\u4e2d\u7684\u6240\u6709\u4e3b\u673a\u90fd\u5177\u6709\u76f8\u540c\u7684\u786c\u4ef6\uff0c\u8fd0\u884c\u76f8\u540c\u7684\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\uff0c\u4f4d\u4e8e\u76f8\u540c\u7684\u5b50\u7f51\u4e2d\uff0c\u5e76\u8bbf\u95ee\u76f8\u540c\u7684\u5171\u4eab\u5b58\u50a8\u3002\u6bcf\u4e2a\u7fa4\u96c6\u7531\u4e00\u4e2a\u6216\u591a\u4e2a\u4e3b\u673a\u4ee5\u53ca\u4e00\u4e2a\u6216\u591a\u4e2a\u4e3b\u5b58\u50a8\u670d\u52a1\u5668\u7ec4\u6210\u3002 +message.desc.host=\u6bcf\u4e2a\u7fa4\u96c6\u4e2d\u5fc5\u987b\u81f3\u5c11\u5305\u542b\u4e00\u4e2a\u4e3b\u673a\u4ee5\u4f9b\u6765\u5bbe VM \u5728\u4e0a\u9762\u8fd0\u884c\uff0c\u73b0\u5728\u6211\u4eec\u5c06\u6dfb\u52a0\u7b2c\u4e00\u4e2a\u4e3b\u673a\u3002\u8981\u4f7f\u4e3b\u673a\u5728 CloudStack \u4e2d\u8fd0\u884c\uff0c\u5fc5\u987b\u5728\u6b64\u4e3b\u673a\u4e0a\u5b89\u88c5\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\u8f6f\u4ef6\uff0c\u4e3a\u5176\u5206\u914d\u4e00\u4e2a IP \u5730\u5740\uff0c\u5e76\u786e\u4fdd\u5c06\u5176\u8fde\u63a5\u5230 CloudStack \u7ba1\u7406\u670d\u52a1\u5668\u3002

    \u8bf7\u63d0\u4f9b\u4e3b\u673a\u7684 DNS \u6216 IP \u5730\u5740\u3001\u7528\u6237\u540d(\u901a\u5e38\u4e3a root)\u548c\u5bc6\u7801\uff0c\u4ee5\u53ca\u7528\u4e8e\u5bf9\u4e3b\u673a\u8fdb\u884c\u5206\u7c7b\u7684\u4efb\u4f55\u6807\u7b7e\u3002 +message.desc.primary.storage=\u6bcf\u4e2a\u7fa4\u96c6\u4e2d\u5fc5\u987b\u5305\u542b\u4e00\u4e2a\u6216\u591a\u4e2a\u4e3b\u5b58\u50a8\u670d\u52a1\u5668\uff0c\u73b0\u5728\u6211\u4eec\u5c06\u6dfb\u52a0\u7b2c\u4e00\u4e2a\u4e3b\u5b58\u50a8\u670d\u52a1\u5668\u3002\u4e3b\u5b58\u50a8\u4e2d\u5305\u542b\u5728\u7fa4\u96c6\u4e2d\u7684\u4e3b\u673a\u4e0a\u8fd0\u884c\u7684\u6240\u6709 VM \u7684\u78c1\u76d8\u5377\u3002\u8bf7\u4f7f\u7528\u5e95\u5c42\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\u652f\u6301\u7684\u7b26\u5408\u6807\u51c6\u7684\u534f\u8bae\u3002 +message.desc.secondary.storage=\u6bcf\u4e2a\u533a\u57df\u4e2d\u5fc5\u987b\u81f3\u5c11\u5305\u542b\u4e00\u4e2a NFS \u6216\u8f85\u52a9\u5b58\u50a8\u670d\u52a1\u5668\uff0c\u73b0\u5728\u6211\u4eec\u5c06\u6dfb\u52a0\u7b2c\u4e00\u4e2a NFS \u6216\u8f85\u52a9\u5b58\u50a8\u670d\u52a1\u5668\u3002\u8f85\u52a9\u5b58\u50a8\u7528\u4e8e\u5b58\u50a8 VM \u6a21\u677f\u3001ISO \u6620\u50cf\u548c VM \u78c1\u76d8\u5377\u5feb\u7167\u3002\u6b64\u670d\u52a1\u5668\u5fc5\u987b\u5bf9\u533a\u57df\u4e2d\u7684\u6240\u6709\u670d\u52a1\u5668\u53ef\u7528\u3002

    \u8bf7\u63d0\u4f9b IP \u5730\u5740\u548c\u5bfc\u51fa\u8def\u5f84\u3002 +message.desc.zone=\u533a\u57df\u662f CloudStack \u4e2d\u6700\u5927\u7684\u7ec4\u7ec7\u5355\u4f4d\uff0c\u4e00\u4e2a\u533a\u57df\u901a\u5e38\u4e0e\u4e00\u4e2a\u6570\u636e\u4e2d\u5fc3\u76f8\u5bf9\u5e94\u3002\u533a\u57df\u53ef\u63d0\u4f9b\u7269\u7406\u9694\u79bb\u548c\u5197\u4f59\u3002\u4e00\u4e2a\u533a\u57df\u7531\u4e00\u4e2a\u6216\u591a\u4e2a\u63d0\u4f9b\u70b9\u4ee5\u53ca\u7531\u533a\u57df\u4e2d\u7684\u6240\u6709\u63d0\u4f9b\u70b9\u5171\u4eab\u7684\u4e00\u4e2a\u8f85\u52a9\u5b58\u50a8\u670d\u52a1\u5668\u7ec4\u6210\uff0c\u5176\u4e2d\u6bcf\u4e2a\u63d0\u4f9b\u70b9\u4e2d\u5305\u542b\u591a\u4e2a\u4e3b\u673a\u548c\u4e3b\u5b58\u50a8\u670d\u52a1\u5668\u3002 +message.detach.disk=\u662f\u5426\u786e\u5b9e\u8981\u53d6\u6d88\u9644\u52a0\u6b64\u78c1\u76d8? +message.detach.iso.confirm=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u4ece\u6b64\u865a\u62df\u673a\u4e2d\u53d6\u6d88\u9644\u52a0\u6b64 ISO\u3002 +message.disable.account=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u7981\u7528\u6b64\u5e10\u6237\u3002\u901a\u8fc7\u7981\u7528\u6b64\u5e10\u6237\uff0c\u6b64\u5e10\u6237\u7684\u6240\u6709\u7528\u6237\u5c06\u4e0d\u518d\u6709\u6743\u8bbf\u95ee\u5404\u81ea\u7684\u4e91\u8d44\u6e90\u3002\u6240\u6709\u6b63\u5728\u8fd0\u884c\u7684\u865a\u62df\u673a\u5c06\u7acb\u5373\u5173\u95ed\u3002 +message.disable.snapshot.policy=\u60a8\u5df2\u6210\u529f\u7981\u7528\u5f53\u524d\u7684\u5feb\u7167\u7b56\u7565\u3002 +message.disable.user=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u7981\u7528\u6b64\u7528\u6237\u3002 +message.disable.vpn.access=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u7981\u7528 VPN \u8bbf\u95ee\u3002 +message.disable.vpn=\u662f\u5426\u786e\u5b9e\u8981\u7981\u7528 VPN? +message.download.ISO=\u8bf7\u5355\u51fb 00000 \u4e0b\u8f7d ISO +message.download.template=\u8bf7\u5355\u51fb 00000 \u4e0b\u8f7d\u6a21\u677f +message.download.volume.confirm=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u4e0b\u8f7d\u6b64\u5377 +message.download.volume=\u8bf7\u5355\u51fb 00000 \u4e0b\u8f7d\u5377 +message.edit.account=\u7f16\u8f91(\u201c-1\u201d\u8868\u793a\u5bf9\u8981\u521b\u5efa\u7684\u8d44\u6e90\u6570\u91cf\u6ca1\u6709\u4efb\u4f55\u9650\u5236) +message.edit.confirm=\u8bf7\u5148\u786e\u8ba4\u60a8\u6240\u505a\u7684\u66f4\u6539\uff0c\u7136\u540e\u5355\u51fb\u201c\u4fdd\u5b58\u201d\u3002 +message.edit.limits=\u8bf7\u6307\u5b9a\u5bf9\u4ee5\u4e0b\u8d44\u6e90\u7684\u9650\u5236\u3002\u201c-1\u201d\u8868\u793a\u4e0d\u9650\u5236\u8981\u521b\u5efa\u7684\u8d44\u6e90\u6570\u3002 +message.edit.traffic.type=\u8bf7\u6307\u5b9a\u60a8\u5e0c\u671b\u4e0e\u6b64\u6d41\u91cf\u7c7b\u578b\u5173\u8054\u7684\u6d41\u91cf\u6807\u7b7e\u3002 +message.enable.account=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u542f\u7528\u6b64\u5e10\u6237\u3002 +message.enabled.vpn.ip.sec=\u60a8\u7684 IPSec \u9884\u5171\u4eab\u5bc6\u94a5 +message.enabled.vpn=\u60a8\u7684 VPN \u8bbf\u95ee\u529f\u80fd\u5f53\u524d\u5df2\u542f\u7528\uff0c\u53ef\u4ee5\u901a\u8fc7 IP \u8fdb\u884c\u8bbf\u95ee +message.enable.user=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u542f\u7528\u6b64\u7528\u6237\u3002 +message.enable.vpn.access=\u5f53\u524d\u5df2\u5bf9\u6b64 IP \u5730\u5740\u7981\u7528\u4e86 VPN\u3002\u662f\u5426\u8981\u542f\u7528 VPN \u8bbf\u95ee? +message.enable.vpn=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5bf9\u6b64 IP \u5730\u5740\u542f\u7528 VPN \u8bbf\u95ee\u3002 +message.enabling.security.group.provider=\u6b63\u5728\u542f\u7528\u5b89\u5168\u7ec4\u63d0\u4f9b\u7a0b\u5e8f +message.enabling.zone=\u6b63\u5728\u542f\u7528\u533a\u57df +message.enter.token=\u8bf7\u8f93\u5165\u60a8\u5728\u9080\u8bf7\u7535\u5b50\u90ae\u4ef6\u4e2d\u6536\u5230\u7684\u4ee4\u724c\u3002 +message.generate.keys=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u4e3a\u6b64\u7528\u6237\u751f\u6210\u65b0\u5bc6\u94a5\u3002 +message.guest.traffic.in.advanced.zone=\u6765\u5bbe\u7f51\u7edc\u6d41\u91cf\u662f\u6307\u6700\u7ec8\u7528\u6237\u865a\u62df\u673a\u4e4b\u95f4\u7684\u901a\u4fe1\u3002\u6307\u5b9a\u4e00\u4e2a VLAN ID \u8303\u56f4\u53ef\u4f20\u9001\u6bcf\u4e2a\u7269\u7406\u7f51\u7edc\u7684\u6765\u5bbe\u6d41\u91cf\u3002 +message.guest.traffic.in.basic.zone=\u6765\u5bbe\u7f51\u7edc\u6d41\u91cf\u662f\u6307\u6700\u7ec8\u7528\u6237\u865a\u62df\u673a\u4e4b\u95f4\u7684\u901a\u4fe1\u3002\u5e94\u6307\u5b9a\u4e00\u4e2a CloudStack \u53ef\u4ee5\u5206\u914d\u7ed9\u6765\u5bbe VM \u7684 IP \u5730\u5740\u8303\u56f4\u3002\u8bf7\u786e\u4fdd\u6b64\u8303\u56f4\u4e0e\u9884\u7559\u7684\u7cfb\u7edf IP \u8303\u56f4\u4e0d\u91cd\u53e0\u3002 +message.installWizard.click.retry=\u8bf7\u5355\u51fb\u6b64\u6309\u94ae\u91cd\u65b0\u5c1d\u8bd5\u542f\u52a8\u3002 +message.installWizard.copy.whatIsACluster=\u7fa4\u96c6\u63d0\u4f9b\u4e86\u4e00\u79cd\u7f16\u7ec4\u4e3b\u673a\u7684\u65b9\u6cd5\u3002\u7fa4\u96c6\u4e2d\u7684\u6240\u6709\u4e3b\u673a\u90fd\u5177\u6709\u76f8\u540c\u7684\u786c\u4ef6\uff0c\u8fd0\u884c\u76f8\u540c\u7684\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\uff0c\u4f4d\u4e8e\u540c\u4e00\u5b50\u7f51\u4e2d\uff0c\u5e76\u8bbf\u95ee\u76f8\u540c\u7684\u5171\u4eab\u5b58\u50a8\u3002\u53ef\u4ee5\u5b9e\u65f6\u5c06\u865a\u62df\u673a\u5b9e\u4f8b(VM)\u4ece\u4e00\u53f0\u4e3b\u673a\u8fc1\u79fb\u5230\u540c\u4e00\u7fa4\u96c6\u5185\u7684\u5176\u4ed6\u4e3b\u673a\uff0c\u800c\u65e0\u9700\u4e2d\u65ad\u5411\u7528\u6237\u63d0\u4f9b\u670d\u52a1\u3002\u7fa4\u96c6\u662f CloudStack&\#8482; \u90e8\u7f72\u4e2d\u7684\u7b2c\u4e09\u5927\u7ec4\u7ec7\u5355\u4f4d\u3002\u7fa4\u96c6\u5305\u542b\u5728\u63d0\u4f9b\u70b9\u4e2d\uff0c\u63d0\u4f9b\u70b9\u5305\u542b\u5728\u533a\u57df\u4e2d\u3002

    CloudStack&\#8482; \u5141\u8bb8\u4e91\u90e8\u7f72\u4e2d\u5b58\u5728\u591a\u4e2a\u7fa4\u96c6\uff0c\u4f46\u5bf9\u4e8e\u57fa\u672c\u5b89\u88c5\uff0c\u6211\u4eec\u53ea\u9700\u8981\u4e00\u4e2a\u7fa4\u96c6\u3002 +message.installWizard.copy.whatIsAHost=\u4e3b\u673a\u662f\u6307\u4e00\u53f0\u8ba1\u7b97\u673a\u3002\u4e3b\u673a\u63d0\u4f9b\u8fd0\u884c\u6765\u5bbe\u865a\u62df\u673a\u7684\u8ba1\u7b97\u8d44\u6e90\u3002\u6bcf\u53f0\u4e3b\u673a\u4e0a\u90fd\u5b89\u88c5\u6709\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\u8f6f\u4ef6\uff0c\u7528\u4e8e\u7ba1\u7406\u6765\u5bbe VM (\u88f8\u673a\u4e3b\u673a\u9664\u5916\uff0c\u5c06\u5728\u201c\u9ad8\u7ea7\u5b89\u88c5\u6307\u5357\u201d\u4e2d\u8ba8\u8bba\u8fd9\u4e00\u7279\u6b8a\u6848\u4f8b)\u3002\u4f8b\u5982\uff0c\u542f\u7528\u4e86 KVM \u7684 Linux \u670d\u52a1\u5668\u3001Citrix XenServer \u670d\u52a1\u5668\u548c ESXi \u670d\u52a1\u5668\u90fd\u53ef\u7528\u4f5c\u4e3b\u673a\u3002\u5728\u57fa\u672c\u5b89\u88c5\u4e2d\uff0c\u6211\u4eec\u5c06\u4f7f\u7528\u4e00\u53f0\u8fd0\u884c XenServer \u7684\u4e3b\u673a\u3002

    \u4e3b\u673a\u662f CloudStack&\#8482; \u90e8\u7f72\u4e2d\u6700\u5c0f\u7684\u7ec4\u7ec7\u5355\u4f4d\u3002\u4e3b\u673a\u5305\u542b\u5728\u7fa4\u96c6\u4e2d\uff0c\u7fa4\u96c6\u5305\u542b\u5728\u63d0\u4f9b\u70b9\u4e2d\uff0c\u63d0\u4f9b\u70b9\u5305\u542b\u5728\u533a\u57df\u4e2d\u3002 +message.installWizard.copy.whatIsAPod=\u4e00\u4e2a\u63d0\u4f9b\u70b9\u901a\u5e38\u4ee3\u8868\u4e00\u4e2a\u673a\u67b6\u3002\u540c\u4e00\u63d0\u4f9b\u70b9\u4e2d\u7684\u4e3b\u673a\u4f4d\u4e8e\u540c\u4e00\u5b50\u7f51\u4e2d\u3002

    \u63d0\u4f9b\u70b9\u662f CloudStack&\#8482; \u90e8\u7f72\u4e2d\u7684\u7b2c\u4e8c\u5927\u7ec4\u7ec7\u5355\u4f4d\u3002\u63d0\u4f9b\u70b9\u5305\u542b\u5728\u533a\u57df\u4e2d\u3002\u6bcf\u4e2a\u533a\u57df\u4e2d\u53ef\u4ee5\u5305\u542b\u4e00\u4e2a\u6216\u591a\u4e2a\u63d0\u4f9b\u70b9\uff1b\u5728\u57fa\u672c\u5b89\u88c5\u4e2d\uff0c\u60a8\u7684\u533a\u57df\u4e2d\u5c06\u4ec5\u5305\u542b\u4e00\u4e2a\u63d0\u4f9b\u70b9\u3002 +message.installWizard.copy.whatIsAZone=\u533a\u57df\u662f CloudStack&\#8482; \u90e8\u7f72\u4e2d\u6700\u5927\u7684\u7ec4\u7ec7\u5355\u4f4d\u3002\u867d\u7136\u5141\u8bb8\u4e00\u4e2a\u6570\u636e\u4e2d\u5fc3\u4e2d\u5b58\u5728\u591a\u4e2a\u533a\u57df\uff0c\u4f46\u662f\u4e00\u4e2a\u533a\u57df\u901a\u5e38\u4e0e\u4e00\u4e2a\u6570\u636e\u4e2d\u5fc3\u76f8\u5bf9\u5e94\u3002\u5c06\u57fa\u7840\u67b6\u6784\u7f16\u7ec4\u5230\u533a\u57df\u4e2d\u7684\u597d\u5904\u662f\u53ef\u4ee5\u63d0\u4f9b\u7269\u7406\u9694\u79bb\u548c\u5197\u4f59\u3002\u4f8b\u5982\uff0c\u6bcf\u4e2a\u533a\u57df\u90fd\u53ef\u4ee5\u62e5\u6709\u5404\u81ea\u7684\u7535\u6e90\u4f9b\u5e94\u548c\u7f51\u7edc\u4e0a\u884c\u65b9\u6848\uff0c\u5e76\u4e14\u5404\u533a\u57df\u53ef\u4ee5\u5728\u5730\u7406\u4f4d\u7f6e\u4e0a\u76f8\u9694\u5f88\u8fdc(\u867d\u7136\u5e76\u975e\u5fc5\u987b\u76f8\u9694\u5f88\u8fdc)\u3002 +message.installWizard.copy.whatIsCloudStack=CloudStack&\#8482 \u662f\u4e00\u4e2a\u8f6f\u4ef6\u5e73\u53f0\uff0c\u53ef\u5c06\u8ba1\u7b97\u8d44\u6e90\u96c6\u4e2d\u5728\u4e00\u8d77\u4ee5\u6784\u5efa\u516c\u5171\u3001\u79c1\u6709\u548c\u6df7\u5408\u57fa\u7840\u8bbe\u65bd\u5373\u670d\u52a1(IaaS)\u4e91\u3002CloudStack&\#8482 \u8d1f\u8d23\u7ba1\u7406\u7ec4\u6210\u4e91\u57fa\u7840\u67b6\u6784\u7684\u7f51\u7edc\u3001\u5b58\u50a8\u548c\u8ba1\u7b97\u8282\u70b9\u3002\u4f7f\u7528 CloudStack&\#8482 \u53ef\u4ee5\u90e8\u7f72\u3001\u7ba1\u7406\u548c\u914d\u7f6e\u4e91\u8ba1\u7b97\u73af\u5883\u3002

    CloudStack&\#8482 \u901a\u8fc7\u6269\u5c55\u5546\u7528\u786c\u4ef6\u4e0a\u8fd0\u884c\u7684\u6bcf\u4e2a\u865a\u62df\u673a\u6620\u50cf\u7684\u8303\u56f4\uff0c\u63d0\u4f9b\u4e86\u4e00\u4e2a\u5b9e\u65f6\u53ef\u7528\u7684\u4e91\u57fa\u7840\u67b6\u6784\u8f6f\u4ef6\u5806\u6808\u7528\u4e8e\u4ee5\u670d\u52a1\u65b9\u5f0f\u4ea4\u4ed8\u865a\u62df\u6570\u636e\u4e2d\u5fc3\uff0c\u5373\u4ea4\u4ed8\u6784\u5efa\u3001\u90e8\u7f72\u548c\u7ba1\u7406\u591a\u5c42\u6b21\u548c\u591a\u79df\u6237\u4e91\u5e94\u7528\u7a0b\u5e8f\u5fc5\u9700\u7684\u6240\u6709\u7ec4\u4ef6\u3002\u5f00\u6e90\u7248\u672c\u548c Premium \u7248\u672c\u90fd\u5df2\u53ef\u7528\uff0c\u4e14\u63d0\u4f9b\u7684\u529f\u80fd\u51e0\u4e4e\u5b8c\u5168\u76f8\u540c\u3002 +message.installWizard.copy.whatIsPrimaryStorage=CloudStack&\#8482; \u4e91\u57fa\u7840\u67b6\u6784\u4f7f\u7528\u4ee5\u4e0b\u4e24\u79cd\u7c7b\u578b\u7684\u5b58\u50a8\: \u4e3b\u5b58\u50a8\u548c\u8f85\u52a9\u5b58\u50a8\u3002\u8fd9\u4e24\u79cd\u7c7b\u578b\u7684\u5b58\u50a8\u53ef\u4ee5\u662f iSCSI \u6216 NFS \u670d\u52a1\u5668\uff0c\u4e5f\u53ef\u4ee5\u662f\u672c\u5730\u78c1\u76d8\u3002

    \u4e3b\u5b58\u50a8\u4e0e\u7fa4\u96c6\u76f8\u5173\u8054\uff0c\u7528\u4e8e\u5b58\u50a8\u8be5\u7fa4\u96c6\u4e2d\u7684\u4e3b\u673a\u4e0a\u6b63\u5728\u8fd0\u884c\u7684\u6240\u6709 VM \u5bf9\u5e94\u7684\u6bcf\u4e2a\u6765\u5bbe VM \u7684\u78c1\u76d8\u5377\u3002\u4e3b\u5b58\u50a8\u670d\u52a1\u5668\u901a\u5e38\u4f4d\u4e8e\u9760\u8fd1\u4e3b\u673a\u7684\u4f4d\u7f6e\u3002 +message.installWizard.copy.whatIsSecondaryStorage=\u8f85\u52a9\u5b58\u50a8\u4e0e\u533a\u57df\u76f8\u5173\u8054\uff0c\u7528\u4e8e\u5b58\u50a8\u4ee5\u4e0b\u9879\u76ee\:
    • \u6a21\u677f - \u53ef\u7528\u4e8e\u542f\u52a8 VM \u5e76\u53ef\u4ee5\u5305\u542b\u5176\u4ed6\u914d\u7f6e\u4fe1\u606f(\u4f8b\u5982\uff0c\u5df2\u5b89\u88c5\u7684\u5e94\u7528\u7a0b\u5e8f)\u7684\u64cd\u4f5c\u7cfb\u7edf\u6620\u50cf
    • ISO \u6620\u50cf - \u53ef\u91cd\u65b0\u542f\u52a8\u6216\u4e0d\u53ef\u91cd\u65b0\u542f\u52a8\u7684\u64cd\u4f5c\u7cfb\u7edf\u6620\u50cf
    • \u78c1\u76d8\u5377\u5feb\u7167 - \u5df2\u4fdd\u5b58\u7684 VM \u6570\u636e\u526f\u672c\uff0c\u53ef\u7528\u4e8e\u6267\u884c\u6570\u636e\u6062\u590d\u6216\u521b\u5efa\u65b0\u6a21\u677f
    +message.installWizard.now.building=\u73b0\u5728\u6b63\u5728\u6784\u5efa\u60a8\u7684\u4e91... +message.installWizard.tooltip.addCluster.name=\u7fa4\u96c6\u7684\u540d\u79f0\u3002\u6b64\u540d\u79f0\u53ef\u4ee5\u662f\u60a8\u9009\u62e9\u7684\u6587\u672c\uff0c\u4e14\u672a\u7531 CloudStack \u4f7f\u7528\u3002 +message.installWizard.tooltip.addHost.hostname=\u4e3b\u673a\u7684 DNS \u540d\u79f0\u6216 IP \u5730\u5740\u3002 +message.installWizard.tooltip.addHost.password=\u6b64\u4e3a\u4e0a\u8ff0\u7528\u6237\u7684\u5bc6\u7801(\u6765\u81ea XenServer \u5b89\u88c5)\u3002 +message.installWizard.tooltip.addHost.username=\u901a\u5e38\u4e3a root\u3002 +message.installWizard.tooltip.addPod.name=\u63d0\u4f9b\u70b9\u7684\u540d\u79f0 +message.installWizard.tooltip.addPod.reservedSystemEndIp=\u6b64\u4e3a CloudStack \u7528\u4e8e\u7ba1\u7406\u8f85\u52a9\u5b58\u50a8 VM \u548c\u63a7\u5236\u53f0\u4ee3\u7406 VM \u7684\u4e13\u7528\u7f51\u7edc\u4e2d\u7684 IP \u8303\u56f4\u3002\u8fd9\u4e9b IP \u5730\u5740\u6765\u81ea\u4e0e\u8ba1\u7b97\u670d\u52a1\u5668\u76f8\u540c\u7684\u5b50\u7f51\u3002 +message.installWizard.tooltip.addPod.reservedSystemGateway=\u8be5\u63d0\u4f9b\u70b9\u4e2d\u7684\u4e3b\u673a\u7f51\u5173\u3002 +message.installWizard.tooltip.addPod.reservedSystemNetmask=\u6765\u5bbe\u5c06\u8981\u4f7f\u7528\u7684\u5b50\u7f51\u4e0a\u6b63\u5728\u4f7f\u7528\u7684\u7f51\u7edc\u63a9\u7801\u3002 +message.installWizard.tooltip.addPod.reservedSystemStartIp=\u6b64\u4e3a CloudStack \u7528\u4e8e\u7ba1\u7406\u8f85\u52a9\u5b58\u50a8 VM \u548c\u63a7\u5236\u53f0\u4ee3\u7406 VM \u7684\u4e13\u7528\u7f51\u7edc\u4e2d\u7684 IP \u8303\u56f4\u3002\u8fd9\u4e9b IP \u5730\u5740\u6765\u81ea\u4e0e\u8ba1\u7b97\u670d\u52a1\u5668\u76f8\u540c\u7684\u5b50\u7f51\u3002 +message.installWizard.tooltip.addPrimaryStorage.name=\u5b58\u50a8\u8bbe\u5907\u7684\u540d\u79f0\u3002 +message.installWizard.tooltip.addPrimaryStorage.path=(\u9002\u7528\u4e8e NFS)\u5728 NFS \u4e2d\uff0c\u6b64\u8def\u5f84\u4e3a\u670d\u52a1\u5668\u7684\u5bfc\u51fa\u8def\u5f84\u3002\u8def\u5f84(\u9488\u5bf9 SharedMountPoint)\u3002\u5bf9\u4e8e KVM\uff0c\u6b64\u8def\u5f84\u4e3a\u88c5\u8f7d\u4e86\u8f85\u52a9\u5b58\u50a8\u7684\u6bcf\u4e2a\u4e3b\u673a\u4e0a\u7684\u8def\u5f84\u3002\u4f8b\u5982\uff0c/mnt/primary\u3002 +message.installWizard.tooltip.addPrimaryStorage.server=(\u9002\u7528\u4e8e NFS\u3001iSCSI \u6216 PreSetup)\u5b58\u50a8\u8bbe\u5907\u7684 IP \u5730\u5740\u6216 DNS \u540d\u79f0\u3002 +message.installWizard.tooltip.addSecondaryStorage.nfsServer=\u6258\u7ba1\u8f85\u52a9\u5b58\u50a8\u7684 NFS \u670d\u52a1\u5668\u7684 IP \u5730\u5740 +message.installWizard.tooltip.addSecondaryStorage.path=\u5bfc\u51fa\u8def\u5f84(\u4f4d\u4e8e\u4e0a\u8ff0\u6307\u5b9a\u670d\u52a1\u5668\u4e0a) +message.installWizard.tooltip.addZone.dns1=\u8fd9\u4e9b\u670d\u52a1\u5668\u662f\u4f9b\u6b64\u533a\u57df\u4e2d\u7684\u6765\u5bbe VM \u4f7f\u7528\u7684 DNS \u670d\u52a1\u5668\uff0c\u5c06\u901a\u8fc7\u60a8\u7a0d\u540e\u8981\u6dfb\u52a0\u7684\u516c\u7528\u7f51\u7edc\u8fdb\u884c\u8bbf\u95ee\u3002\u6b64\u533a\u57df\u7684\u516c\u7528 IP \u5730\u5740\u5fc5\u987b\u8def\u7531\u5230\u5728\u6b64\u5904\u6307\u5b9a\u7684 DNS \u670d\u52a1\u5668\u3002 +message.installWizard.tooltip.addZone.dns2=\u8fd9\u4e9b\u670d\u52a1\u5668\u662f\u4f9b\u6b64\u533a\u57df\u4e2d\u7684\u6765\u5bbe VM \u4f7f\u7528\u7684 DNS \u670d\u52a1\u5668\uff0c\u5c06\u901a\u8fc7\u60a8\u7a0d\u540e\u8981\u6dfb\u52a0\u7684\u516c\u7528\u7f51\u7edc\u8fdb\u884c\u8bbf\u95ee\u3002\u6b64\u533a\u57df\u7684\u516c\u7528 IP \u5730\u5740\u5fc5\u987b\u8def\u7531\u5230\u5728\u6b64\u5904\u6307\u5b9a\u7684 DNS \u670d\u52a1\u5668\u3002 +message.installWizard.tooltip.addZone.internaldns1=\u8fd9\u4e9b\u670d\u52a1\u5668\u662f\u4f9b\u6b64\u533a\u57df\u4e2d\u7684\u7cfb\u7edf VM \u4f7f\u7528\u7684 DNS \u670d\u52a1\u5668\uff0c\u5c06\u901a\u8fc7\u7cfb\u7edf VM \u7684\u4e13\u7528\u7f51\u7edc\u63a5\u53e3\u8fdb\u884c\u8bbf\u95ee\u3002\u60a8\u4e3a\u63d0\u4f9b\u70b9\u63d0\u4f9b\u7684\u4e13\u7528 IP \u5730\u5740\u5fc5\u987b\u8def\u7531\u5230\u5728\u6b64\u5904\u6307\u5b9a\u7684 DNS \u670d\u52a1\u5668\u3002 +message.installWizard.tooltip.addZone.internaldns2=\u8fd9\u4e9b\u670d\u52a1\u5668\u662f\u4f9b\u6b64\u533a\u57df\u4e2d\u7684\u7cfb\u7edf VM \u4f7f\u7528\u7684 DNS \u670d\u52a1\u5668\uff0c\u5c06\u901a\u8fc7\u7cfb\u7edf VM \u7684\u4e13\u7528\u7f51\u7edc\u63a5\u53e3\u8fdb\u884c\u8bbf\u95ee\u3002\u60a8\u4e3a\u63d0\u4f9b\u70b9\u63d0\u4f9b\u7684\u4e13\u7528 IP \u5730\u5740\u5fc5\u987b\u8def\u7531\u5230\u5728\u6b64\u5904\u6307\u5b9a\u7684 DNS \u670d\u52a1\u5668\u3002 +message.installWizard.tooltip.addZone.name=\u533a\u57df\u540d\u79f0 +message.installWizard.tooltip.configureGuestTraffic.description=\u60a8\u7684\u7f51\u7edc\u8bf4\u660e +message.installWizard.tooltip.configureGuestTraffic.guestEndIp=\u80fd\u591f\u5206\u914d\u7ed9\u6b64\u533a\u57df\u4e2d\u7684\u6765\u5bbe\u7684 IP \u5730\u5740\u8303\u56f4\u3002\u5982\u679c\u4f7f\u7528\u4e00\u4e2a NIC\uff0c\u8fd9\u4e9b IP \u5e94\u4f4d\u4e8e\u4e0e\u63d0\u4f9b\u70b9 CIDR \u76f8\u540c\u7684 CIDR \u4e2d\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestGateway=\u6765\u5bbe\u5e94\u4f7f\u7528\u7684\u7f51\u5173 +message.installWizard.tooltip.configureGuestTraffic.guestNetmask=\u6765\u5bbe\u5e94\u4f7f\u7528\u7684\u5b50\u7f51\u4e0a\u6b63\u5728\u4f7f\u7528\u7684\u7f51\u7edc\u63a9\u7801 +message.installWizard.tooltip.configureGuestTraffic.guestStartIp=\u80fd\u591f\u5206\u914d\u7ed9\u6b64\u533a\u57df\u4e2d\u7684\u6765\u5bbe\u7684 IP \u5730\u5740\u8303\u56f4\u3002\u5982\u679c\u4f7f\u7528\u4e00\u4e2a NIC\uff0c\u8fd9\u4e9b IP \u5e94\u4f4d\u4e8e\u4e0e\u63d0\u4f9b\u70b9 CIDR \u76f8\u540c\u7684 CIDR \u4e2d\u3002 +message.installWizard.tooltip.configureGuestTraffic.name=\u60a8\u7684\u7f51\u7edc\u540d\u79f0 +message.instanceWizard.noTemplates=\u60a8\u6ca1\u6709\u4efb\u4f55\u53ef\u7528\u6a21\u677f\uff1b\u8bf7\u6dfb\u52a0\u4e00\u4e2a\u517c\u5bb9\u7684\u6a21\u677f\uff0c\u7136\u540e\u91cd\u65b0\u542f\u52a8\u5b9e\u4f8b\u5411\u5bfc\u3002 +message.ip.address.changed=\u60a8\u7684 IP \u5730\u5740\u53ef\u80fd\u5df2\u53d1\u751f\u53d8\u5316\uff1b\u662f\u5426\u8981\u5237\u65b0\u6b64\u5217\u8868? \u8bf7\u6ce8\u610f\uff0c\u5237\u65b0\u6b64\u5217\u8868\u65f6\uff0c\u201c\u8be6\u7ec6\u4fe1\u606f\u201d\u7a97\u683c\u5c06\u5173\u95ed\u3002 +message.iso.desc=\u5305\u542b\u64cd\u4f5c\u7cfb\u7edf\u7684\u6570\u636e\u6216\u53ef\u542f\u52a8\u4ecb\u8d28\u7684\u78c1\u76d8\u6620\u50cf +message.join.project=\u60a8\u73b0\u5728\u5df2\u52a0\u5165\u4e86\u4e00\u4e2a\u9879\u76ee\u3002\u8bf7\u5207\u6362\u5230\u201c\u9879\u76ee\u89c6\u56fe\u201d\u4ee5\u67e5\u770b\u9879\u76ee\u3002 +message.launch.vm.on.private.network=\u662f\u5426\u8981\u5728\u60a8\u7684\u79c1\u4eba\u4e13\u7528\u7f51\u7edc\u4e2d\u542f\u52a8\u5b9e\u4f8b? +message.launch.zone=\u533a\u57df\u5df2\u51c6\u5907\u5c31\u7eea\uff0c\u53ef\u968f\u65f6\u542f\u52a8\uff1b\u8bf7\u7ee7\u7eed\u6267\u884c\u4e0b\u4e00\u6b65\u9aa4\u3002 +message.lock.account=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u9501\u5b9a\u6b64\u5e10\u6237\u3002\u901a\u8fc7\u9501\u5b9a\u6b64\u5e10\u6237\uff0c\u6b64\u5e10\u6237\u7684\u6240\u6709\u7528\u6237\u5c06\u4e0d\u518d\u80fd\u591f\u7ba1\u7406\u5404\u81ea\u7684\u4e91\u8d44\u6e90\uff0c\u4f46\u4ecd\u7136\u53ef\u4ee5\u8bbf\u95ee\u73b0\u6709\u8d44\u6e90\u3002 +message.migrate.instance.confirm=\u8bf7\u786e\u8ba4\u8981\u5c06\u865a\u62df\u5b9e\u4f8b\u8fc1\u79fb\u5230\u7684\u4e3b\u673a\u3002 +message.migrate.instance.to.host=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5c06\u5b9e\u4f8b\u8fc1\u79fb\u5230\u5176\u4ed6\u4e3b\u673a\u3002 +message.migrate.instance.to.ps=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5c06\u5b9e\u4f8b\u8fc1\u79fb\u5230\u5176\u4ed6\u4e3b\u5b58\u50a8\u3002 +message.migrate.router.confirm=\u8bf7\u786e\u8ba4\u60a8\u8981\u5c06\u8def\u7531\u5668\u8fc1\u79fb\u5230\u7684\u4e3b\u673a\: +message.migrate.systemvm.confirm=\u8bf7\u786e\u8ba4\u60a8\u8981\u5c06\u7cfb\u7edf VM \u8fc1\u79fb\u5230\u7684\u4e3b\u673a\: +message.migrate.volume=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5c06\u5377\u8fc1\u79fb\u5230\u5176\u4ed6\u4e3b\u5b58\u50a8\u3002 +message.new.user=\u8bf7\u6307\u5b9a\u4ee5\u4e0b\u4fe1\u606f\u4ee5\u5411\u5e10\u6237\u4e2d\u6dfb\u52a0\u4e00\u4e2a\u65b0\u7528\u6237 +message.no.network.support.configuration.not.true=\u60a8\u7684\u6240\u6709\u533a\u57df\u90fd\u672a\u542f\u7528\u5b89\u5168\u7ec4\uff0c\u56e0\u6b64\u65e0\u5176\u4ed6\u7f51\u7edc\u529f\u80fd\u3002\u8bf7\u7ee7\u7eed\u6267\u884c\u6b65\u9aa4 5\u3002 +message.no.network.support=\u60a8\u9009\u62e9\u7684\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f vSphere \u6ca1\u6709\u4efb\u4f55\u5176\u4ed6\u7f51\u7edc\u529f\u80fd\u3002\u8bf7\u7ee7\u7eed\u6267\u884c\u6b65\u9aa4 5\u3002 +message.no.projects.adminOnly=\u60a8\u6ca1\u6709\u4efb\u4f55\u9879\u76ee\u3002
    \u8bf7\u8981\u6c42\u7ba1\u7406\u5458\u521b\u5efa\u4e00\u4e2a\u65b0\u9879\u76ee\u3002 +message.no.projects=\u60a8\u6ca1\u6709\u4efb\u4f55\u9879\u76ee\u3002
    \u8bf7\u4ece\u201c\u9879\u76ee\u201d\u90e8\u5206\u4e2d\u521b\u5efa\u4e00\u4e2a\u65b0\u9879\u76ee\u3002 +message.number.clusters=

    \u7fa4\u96c6\u6570

    +message.number.hosts=

    \u4e3b\u673a\u6570

    +message.number.pods=

    \u63d0\u4f9b\u70b9\u6570

    +message.number.storage=

    \u4e3b\u5b58\u50a8\u5377\u6570

    +message.number.zones=

    \u533a\u57df\u6570

    +message.pending.projects.1=\u60a8\u6709\u5f85\u5b9a\u9879\u76ee\u9080\u8bf7\: +message.pending.projects.2=\u8981\u67e5\u770b\uff0c\u8bf7\u8f6c\u81f3\u201c\u9879\u76ee\u201d\u90e8\u5206\uff0c\u7136\u540e\u4ece\u4e0b\u62c9\u5217\u8868\u4e2d\u9009\u62e9\u201c\u9080\u8bf7\u201d\u3002 +message.please.add.at.lease.one.traffic.range=\u8bf7\u81f3\u5c11\u6dfb\u52a0\u4e00\u4e2a\u6d41\u91cf\u8303\u56f4\u3002 +message.please.proceed=\u8bf7\u7ee7\u7eed\u6267\u884c\u4e0b\u4e2a\u6b65\u9aa4\u3002 +message.please.select.a.configuration.for.your.zone=\u8bf7\u4e3a\u60a8\u7684\u533a\u57df\u9009\u62e9\u4e00\u79cd\u914d\u7f6e\u3002 +message.please.select.a.different.public.and.management.network.before.removing=\u8bf7\u5148\u9009\u62e9\u5176\u4ed6\u516c\u5171\u7ba1\u7406\u7f51\u7edc\uff0c\u7136\u540e\u518d\u5220\u9664 +message.please.select.networks=\u8bf7\u4e3a\u60a8\u7684\u865a\u62df\u673a\u9009\u62e9\u7f51\u7edc\u3002 +message.please.wait.while.zone.is.being.created=\u6b63\u5728\u521b\u5efa\u533a\u57df\uff0c\u8bf7\u7a0d\u5019\uff1b\u6b64\u64cd\u4f5c\u53ef\u80fd\u9700\u8981\u4e00\u6bb5\u65f6\u95f4\u624d\u80fd\u5b8c\u6210... +message.project.invite.sent=\u53d1\u9001\u7ed9\u7528\u6237\u7684\u9080\u8bf7\uff1b\u7528\u6237\u63a5\u53d7\u9080\u8bf7\u540e\uff0c\u5c06\u52a0\u5165\u5230\u9879\u76ee\u4e2d +message.public.traffic.in.advanced.zone=\u4e91\u4e2d\u7684 VM \u8bbf\u95ee Internet \u65f6\u5c06\u751f\u6210\u516c\u5171\u6d41\u91cf\uff0c\u4f46\u5fc5\u987b\u5206\u914d\u53ef\u516c\u5f00\u8bbf\u95ee\u7684 IP \u624d\u80fd\u5b9e\u73b0\u3002\u6700\u7ec8\u7528\u6237\u53ef\u4ee5\u4f7f\u7528 CloudStack UI \u83b7\u53d6\u8fd9\u4e9b IP\uff0c\u4ee5\u5728\u5176\u6765\u5bbe\u7f51\u7edc\u4e0e\u516c\u7528\u7f51\u7edc\u4e4b\u95f4\u6267\u884c NAT\u3002

    \u8bf7\u81f3\u5c11\u4e3a Internet \u6d41\u91cf\u63d0\u4f9b\u4e00\u4e2a IP \u5730\u5740\u8303\u56f4\u3002 +message.public.traffic.in.basic.zone=\u4e91\u4e2d\u7684 VM \u8bbf\u95ee Internet \u6216\u901a\u8fc7 Internet \u5411\u5ba2\u6237\u7aef\u63d0\u4f9b\u670d\u52a1\u65f6\u5c06\u751f\u6210\u516c\u5171\u6d41\u91cf\uff0c\u4f46\u5fc5\u987b\u5206\u914d\u53ef\u516c\u5f00\u8bbf\u95ee\u7684 IP \u624d\u80fd\u5b9e\u73b0\u3002\u521b\u5efa\u5b9e\u4f8b\u65f6\uff0c\u5c06\u628a\u8fd9\u4e00\u7ec4\u516c\u7528 IP \u4e2d\u7684 IP (\u6765\u5bbe IP \u5730\u5740\u9664\u5916)\u5206\u914d\u7ed9\u6b64\u5b9e\u4f8b\u3002\u9759\u6001 1-1 NAT \u5c06\u5728\u516c\u7528 IP \u4e0e\u6765\u5bbe IP \u4e4b\u95f4\u81ea\u52a8\u8bbe\u7f6e\u3002\u6700\u7ec8\u7528\u6237\u8fd8\u53ef\u4ee5\u4f7f\u7528 CloudStack UI \u83b7\u53d6\u5176\u4ed6 IP\uff0c\u4ee5\u5728\u5176\u5b9e\u4f8b\u4e0e\u516c\u7528 IP \u4e4b\u95f4\u6267\u884c\u9759\u6001 NAT\u3002 +message.remove.vpc=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664 VPC +message.remove.vpn.access=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u4ee5\u4e0b\u7528\u6237\u7684 VPN \u8bbf\u95ee\u3002 +message.reset.password.warning.notPasswordEnabled=\u521b\u5efa\u6b64\u5b9e\u4f8b\u7684\u6a21\u677f\u65f6\u672a\u542f\u7528\u5bc6\u7801 +message.reset.password.warning.notStopped=\u5fc5\u987b\u5148\u505c\u6b62\u60a8\u7684\u5b9e\u4f8b\uff0c\u624d\u80fd\u5c1d\u8bd5\u66f4\u6539\u5176\u5f53\u524d\u5bc6\u7801 +message.reset.VPN.connection=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u91cd\u7f6e VPN \u8fde\u63a5 +message.restart.mgmt.server=\u8bf7\u91cd\u65b0\u542f\u52a8\u7ba1\u7406\u670d\u52a1\u5668\u4ee5\u4f7f\u60a8\u7684\u65b0\u8bbe\u7f6e\u751f\u6548\u3002 +message.restart.mgmt.usage.server=\u4e3a\u4e86\u4f7f\u4f60\u7684\u65b0\u8bbe\u7f6e\u751f\u6548\uff0c\u8bf7\u91cd\u65b0\u542f\u52a8\u4f60\u7684\u7ba1\u7406\u670d\u52a1\u5668\u548c\u4f7f\u7528\u670d\u52a1\u5668\u3002 +message.restart.network=\u6b64\u7f51\u7edc\u63d0\u4f9b\u7684\u6240\u6709\u670d\u52a1\u90fd\u5c06\u4e2d\u65ad\u3002\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u91cd\u65b0\u542f\u52a8\u6b64\u7f51\u7edc\u3002 +message.restart.vpc=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u91cd\u65b0\u542f\u52a8 VPC +message.security.group.usage=(\u6309\u4f4f Ctrl \u952e\u5e76\u5355\u51fb\u9f20\u6807\u53ef\u9009\u62e9\u6240\u6709\u9002\u7528\u7684\u5b89\u5168\u7ec4) +message.select.a.zone=\u4e00\u4e2a\u533a\u57df\u901a\u5e38\u4e0e\u4e00\u4e2a\u6570\u636e\u4e2d\u5fc3\u76f8\u5bf9\u5e94\u3002\u591a\u4e2a\u533a\u57df\u53ef\u4ee5\u63d0\u4f9b\u7269\u7406\u9694\u79bb\u548c\u5197\u4f59\uff0c\u6709\u52a9\u4e8e\u4f7f\u4e91\u66f4\u52a0\u53ef\u9760\u3002 +message.select.instance=\u8bf7\u9009\u62e9\u4e00\u4e2a\u5b9e\u4f8b\u3002 +message.select.iso=\u8bf7\u4e3a\u60a8\u7684\u65b0\u865a\u62df\u5b9e\u4f8b\u9009\u62e9\u4e00\u4e2a ISO\u3002 +message.select.item=\u8bf7\u9009\u62e9\u4e00\u4e2a\u9879\u76ee\u3002 +message.select.security.groups=\u8bf7\u4e3a\u60a8\u7684\u65b0 VM \u9009\u62e9\u5b89\u5168\u7ec4 +message.select.template=\u8bf7\u4e3a\u60a8\u7684\u65b0\u865a\u62df\u5b9e\u4f8b\u9009\u62e9\u4e00\u4e2a\u6a21\u677f\u3002 +message.setup.physical.network.during.zone.creation.basic=\u6dfb\u52a0\u57fa\u7840\u533a\u57df\u65f6\uff0c\u53ef\u4ee5\u8bbe\u7f6e\u4e00\u4e2a\u7269\u7406\u7f51\u7edc\uff0c\u6b64\u7f51\u7edc\u5e94\u4e0e\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\u4e2d\u7684 NIC \u76f8\u5bf9\u5e94\u3002\u6b64\u7f51\u7edc\u53ef\u4ee5\u627f\u8f7d\u591a\u79cd\u6d41\u91cf\u7c7b\u578b\u3002

    \u6b64\u5916\uff0c\u8fd8\u53ef\u4ee5\u5c06\u5176\u4ed6\u6d41\u91cf\u7c7b\u578b\u62d6\u653e\u5230\u6b64\u7269\u7406\u7f51\u7edc\u3002 +message.setup.physical.network.during.zone.creation=\u6dfb\u52a0\u9ad8\u7ea7\u533a\u57df\u65f6\uff0c\u9700\u8981\u8bbe\u7f6e\u4e00\u4e2a\u6216\u591a\u4e2a\u7269\u7406\u7f51\u7edc\u3002\u6bcf\u4e2a\u7f51\u7edc\u90fd\u4e0e\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\u4e2d\u7684\u4e00\u4e2a NIC \u76f8\u5bf9\u5e94\u3002\u6bcf\u4e2a\u7269\u7406\u7f51\u7edc\u4e2d\u53ef\u4ee5\u5305\u542b\u4e00\u79cd\u6216\u591a\u79cd\u6d41\u91cf\u7c7b\u578b\uff0c\u5e76\u5bf9\u8fd9\u4e9b\u6d41\u91cf\u7c7b\u578b\u53ef\u80fd\u7684\u7ec4\u5408\u65b9\u5f0f\u8bbe\u7f6e\u4e86\u67d0\u4e9b\u9650\u5236\u3002

    \u53ef\u4ee5\u5c06\u4e00\u79cd\u6216\u591a\u79cd\u6d41\u91cf\u7c7b\u578b\u62d6\u653e\u5230\u6bcf\u4e2a\u7269\u7406\u7f51\u7edc\u4e2d\u3002 +message.setup.successful=\u5df2\u6210\u529f\u8bbe\u7f6e\u4e91\! +message.snapshot.schedule=\u53ef\u4ee5\u901a\u8fc7\u4ece\u4ee5\u4e0b\u53ef\u7528\u9009\u9879\u4e2d\u8fdb\u884c\u9009\u62e9\u5e76\u5e94\u7528\u60a8\u7684\u7b56\u7565\u9996\u9009\u9879\u6765\u8bbe\u7f6e\u91cd\u73b0\u5feb\u7167\u8ba1\u5212 +message.specify.url=\u8bf7\u6307\u5b9a URL +message.step.1.continue=\u8bf7\u9009\u62e9\u4e00\u4e2a\u6a21\u677f\u6216 ISO \u4ee5\u7ee7\u7eed +message.step.1.desc=\u8bf7\u4e3a\u60a8\u7684\u65b0\u865a\u62df\u5b9e\u4f8b\u9009\u62e9\u4e00\u4e2a\u6a21\u677f\u3002\u8fd8\u53ef\u4ee5\u9009\u62e9\u4e00\u4e2a\u53ef\u5c06 ISO \u6620\u50cf\u5b89\u88c5\u5230\u5176\u4e2d\u7684\u7a7a\u6a21\u677f\u3002 +message.step.2.continue=\u8bf7\u9009\u62e9\u4e00\u79cd\u670d\u52a1\u65b9\u6848\u4ee5\u7ee7\u7eed +message.step.2.desc= +message.step.3.continue=\u8bf7\u9009\u62e9\u4e00\u79cd\u78c1\u76d8\u65b9\u6848\u4ee5\u7ee7\u7eed +message.step.3.desc= +message.step.4.continue=\u8bf7\u81f3\u5c11\u9009\u62e9\u4e00\u4e2a\u7f51\u7edc\u4ee5\u7ee7\u7eed +message.step.4.desc=\u8bf7\u9009\u62e9\u865a\u62df\u5b9e\u4f8b\u8981\u8fde\u63a5\u5230\u7684\u4e3b\u7f51\u7edc\u3002 +message.storage.traffic=CloudStack \u5185\u90e8\u8d44\u6e90(\u5305\u62ec\u4e0e\u7ba1\u7406\u670d\u52a1\u5668\u901a\u4fe1\u7684\u4efb\u4f55\u7ec4\u4ef6\uff0c\u4f8b\u5982\u4e3b\u673a\u548c CloudStack \u7cfb\u7edf VM)\u4e4b\u95f4\u7684\u6d41\u91cf\u3002\u8bf7\u5728\u6b64\u5904\u914d\u7f6e\u5b58\u50a8\u6d41\u91cf\u3002 +message.suspend.project=\u662f\u5426\u786e\u5b9e\u8981\u6682\u505c\u6b64\u9879\u76ee? +message.template.desc=\u53ef\u7528\u4e8e\u542f\u52a8 VM \u7684\u64cd\u4f5c\u7cfb\u7edf\u6620\u50cf +message.tooltip.dns.1=\u4f9b\u533a\u57df\u4e2d\u7684 VM \u4f7f\u7528\u7684 DNS \u670d\u52a1\u5668\u540d\u79f0\u3002\u533a\u57df\u7684\u516c\u7528 IP \u5730\u5740\u5fc5\u987b\u8def\u7531\u5230\u6b64\u670d\u52a1\u5668\u3002 +message.tooltip.dns.2=\u4f9b\u533a\u57df\u4e2d\u7684 VM \u4f7f\u7528\u7684\u8f85\u52a9 DNS \u670d\u52a1\u5668\u540d\u79f0\u3002\u533a\u57df\u7684\u516c\u7528 IP \u5730\u5740\u5fc5\u987b\u8def\u7531\u5230\u6b64\u670d\u52a1\u5668\u3002 +message.tooltip.internal.dns.1=\u4f9b\u533a\u57df\u4e2d\u7684 CloudStack \u5185\u90e8\u7cfb\u7edf VM \u4f7f\u7528\u7684 DNS \u670d\u52a1\u5668\u540d\u79f0\u3002\u63d0\u4f9b\u70b9\u7684\u4e13\u7528 IP \u5730\u5740\u5fc5\u987b\u8def\u7531\u5230\u6b64\u670d\u52a1\u5668\u3002 +message.tooltip.internal.dns.2=\u4f9b\u533a\u57df\u4e2d\u7684 CloudStack \u5185\u90e8\u7cfb\u7edf VM \u4f7f\u7528\u7684 DNS \u670d\u52a1\u5668\u540d\u79f0\u3002\u63d0\u4f9b\u70b9\u7684\u4e13\u7528 IP \u5730\u5740\u5fc5\u987b\u8def\u7531\u5230\u6b64\u670d\u52a1\u5668\u3002 +message.tooltip.network.domain=DNS \u540e\u7f00\uff0c\u5c06\u4e3a\u7531\u6765\u5bbe VM \u8bbf\u95ee\u7684\u7f51\u7edc\u521b\u5efa\u4e00\u4e2a\u81ea\u5b9a\u4e49\u57df\u540d\u3002 +message.tooltip.pod.name=\u6b64\u63d0\u4f9b\u70b9\u7684\u540d\u79f0\u3002 +message.tooltip.reserved.system.gateway=\u63d0\u4f9b\u70b9\u4e2d\u7684\u4e3b\u673a\u7f51\u5173\u3002 +message.tooltip.reserved.system.netmask=\u7528\u4e8e\u5b9a\u4e49\u63d0\u4f9b\u70b9\u5b50\u7f51\u7684\u7f51\u7edc\u524d\u7f00\u3002\u8bf7\u4f7f\u7528 CIDR \u7b26\u53f7\u3002 +message.tooltip.zone.name=\u533a\u57df\u540d\u79f0\u3002 +message.update.os.preference=\u8bf7\u4e3a\u6b64\u4e3b\u673a\u9009\u62e9\u4e00\u4e2a\u64cd\u4f5c\u7cfb\u7edf\u9996\u9009\u9879\u3002\u9996\u5148\u5c06\u5177\u6709\u76f8\u4f3c\u9996\u9009\u9879\u7684\u6240\u6709\u865a\u62df\u5b9e\u4f8b\u5206\u914d\u81f3\u6b64\u4e3b\u673a\uff0c\u7136\u540e\u518d\u9009\u62e9\u5176\u4ed6\u5b9e\u4f8b\u3002 +message.update.resource.count=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u66f4\u65b0\u6b64\u5e10\u6237\u7684\u8d44\u6e90\u6570\u3002 +message.update.ssl=\u8bf7\u63d0\u4ea4\u4e00\u4e2a\u65b0\u7684 X.509 \u517c\u5bb9\u7684 SSL \u8bc1\u4e66\uff0c\u4ee5\u5c06\u5176\u66f4\u65b0\u5230\u6bcf\u4e2a\u63a7\u5236\u53f0\u4ee3\u7406\u865a\u62df\u5b9e\u4f8b\: +message.validate.instance.name=\u5b9e\u4f8b\u540d\u79f0\u4e0d\u5f97\u8d85\u8fc7 63 \u4e2a\u5b57\u7b26\u3002\u4ec5\u5141\u8bb8\u4f7f\u7528 ASCII \u5b57\u6bcd a - z \u6216 A - Z\u3001\u6570\u5b57 0 - 9 \u4ee5\u53ca\u8fde\u5b57\u7b26\u3002\u5b9e\u4f8b\u540d\u79f0\u5fc5\u987b\u4ee5\u5b57\u6bcd\u5f00\u5934\u5e76\u4ee5\u5b57\u6bcd\u6216\u6570\u5b57\u7ed3\u675f\u3002 +message.virtual.network.desc=\u60a8\u7684\u5e10\u6237\u7684\u4e13\u7528\u865a\u62df\u7f51\u7edc\u3002\u5e7f\u64ad\u57df\u5305\u542b\u5728 VLAN \u4e2d\uff0c\u5e76\u4e14\u6240\u6709\u516c\u7528\u7f51\u7edc\u8bbf\u95ee\u90fd\u7531\u865a\u62df\u8def\u7531\u5668\u8def\u7531\u51fa\u53bb\u3002 +message.vm.create.template.confirm=\u521b\u5efa\u6a21\u677f\u5c06\u81ea\u52a8\u91cd\u65b0\u542f\u52a8 VM\u3002 +message.vm.review.launch=\u8bf7\u5148\u6838\u5bf9\u4ee5\u4e0b\u4fe1\u606f\uff0c\u786e\u8ba4\u60a8\u7684\u865a\u62df\u5b9e\u4f8b\u6b63\u786e\u65e0\u8bef\uff0c\u7136\u540e\u518d\u542f\u52a8\u3002 +message.volume.create.template.confirm=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u4e3a\u6b64\u78c1\u76d8\u5377\u521b\u5efa\u4e00\u4e2a\u6a21\u677f\u3002\u521b\u5efa\u6a21\u677f\u53ef\u80fd\u9700\u8981\u51e0\u5206\u949f\u5230\u66f4\u957f\u7684\u65f6\u95f4\uff0c\u5177\u4f53\u53d6\u51b3\u4e8e\u5377\u7684\u5927\u5c0f\u3002 +message.you.must.have.at.least.one.physical.network=\u60a8\u5fc5\u987b\u81f3\u5c11\u62e5\u6709\u4e00\u4e2a\u7269\u7406\u7f51\u7edc +message.Zone.creation.complete=\u5df2\u5b8c\u6210\u521b\u5efa\u533a\u57df +message.zone.creation.complete.would.you.like.to.enable.this.zone=\u5df2\u5b8c\u6210\u521b\u5efa\u533a\u57df\u3002\u662f\u5426\u8981\u542f\u7528\u6b64\u533a\u57df? +message.zone.no.network.selection=\u6240\u9009\u533a\u57df\u65e0\u4efb\u4f55\u7f51\u7edc\u9009\u9879\u3002 +message.zone.step.1.desc=\u8bf7\u4e3a\u60a8\u7684\u533a\u57df\u9009\u62e9\u4e00\u79cd\u7f51\u7edc\u6a21\u5f0f\u3002 +message.zone.step.2.desc=\u8bf7\u8f93\u5165\u4ee5\u4e0b\u4fe1\u606f\u4ee5\u6dfb\u52a0\u4e00\u4e2a\u65b0\u533a\u57df +message.zone.step.3.desc=\u8bf7\u8f93\u5165\u4ee5\u4e0b\u4fe1\u606f\u4ee5\u6dfb\u52a0\u4e00\u4e2a\u65b0\u63d0\u4f9b\u70b9 +message.zoneWizard.enable.local.storage=\u8b66\u544a\: \u5982\u679c\u4e3a\u6b64\u533a\u57df\u542f\u7528\u4e86\u672c\u5730\u5b58\u50a8\uff0c\u5219\u5fc5\u987b\u6267\u884c\u4ee5\u4e0b\u64cd\u4f5c\uff0c\u5177\u4f53\u53d6\u51b3\u4e8e\u5e0c\u671b\u542f\u52a8\u7cfb\u7edf VM \u7684\u4f4d\u7f6e\:

    1. \u5982\u679c\u8981\u5728\u4e3b\u5b58\u50a8\u4e2d\u542f\u52a8\u7cfb\u7edf VM\uff0c\u5219\u9700\u8981\u5728\u521b\u5efa\u540e\u5c06\u4e3b\u5b58\u50a8\u6dfb\u52a0\u5230\u6b64\u533a\u57df\u4e2d\u3002\u6b64\u5916\uff0c\u8fd8\u5fc5\u987b\u542f\u52a8\u5904\u4e8e\u7981\u7528\u72b6\u6001\u7684\u533a\u57df\u3002

    2. \u5982\u679c\u8981\u5728\u672c\u5730\u5b58\u50a8\u4e2d\u542f\u52a8\u7cfb\u7edf VM\uff0c\u5219\u9700\u8981\u5148\u5c06 system.vm.use.local.storage \u8bbe\u7f6e\u4e3a True\uff0c\u7136\u540e\u518d\u542f\u7528\u6b64\u533a\u57df\u3002


    \u662f\u5426\u8981\u7ee7\u7eed? +mode=\u6a21\u5f0f +network.rate=\u7f51\u7edc\u901f\u7387 +notification.reboot.instance=\u91cd\u65b0\u542f\u52a8\u5b9e\u4f8b +notification.start.instance=\u542f\u52a8\u5b9e\u4f8b +notification.stop.instance=\u505c\u6b62\u5b9e\u4f8b +side.by.side=\u5e76\u884c +state.Accepted=\u5df2\u63a5\u53d7 +state.Active=\u6d3b\u52a8 +state.Allocated=\u5df2\u5206\u914d +state.Allocating=\u6b63\u5728\u5206\u914d +state.BackedUp=\u5df2\u5907\u4efd +state.BackingUp=\u6b63\u5728\u5907\u4efd +state.Completed=\u5df2\u5b8c\u6210 +state.Creating=\u6b63\u5728\u521b\u5efa +state.Declined=\u5df2\u62d2\u7edd +state.Destroyed=\u5df2\u9500\u6bc1 +state.Disabled=\u5df2\u7981\u7528 +state.enabled=\u5df2\u542f\u7528 +state.Enabled=\u5df2\u542f\u7528 +state.Error=\u9519\u8bef +state.Expunging=\u6b63\u5728\u5220\u9664 +state.Migrating=\u6b63\u5728\u8fc1\u79fb +state.Pending=\u5f85\u5b9a +state.ready=\u5df2\u5c31\u7eea +state.Ready=\u5df2\u5c31\u7eea +state.Running=\u6b63\u5728\u8fd0\u884c +state.Starting=\u6b63\u5728\u542f\u52a8 +state.Stopped=\u5df2\u505c\u6b62 +state.Stopping=\u6b63\u5728\u505c\u6b62 +state.Suspended=\u5df2\u6682\u505c +ui.listView.filters.all=\u5168\u90e8 +ui.listView.filters.mine=\u672c\u7528\u6237 From ff7112a074916514d00e01fecad73bd3a54b9161 Mon Sep 17 00:00:00 2001 From: Pranav Saxena Date: Wed, 24 Apr 2013 19:58:10 +0530 Subject: [PATCH 387/607] Correcting the spelling errors in the Non contigous Vlan range code --- awsapi/src/com/cloud/bridge/service/core/s3/S3Engine.java | 2 +- .../com/cloud/network/ExternalFirewallDeviceManagerImpl.java | 2 +- server/src/com/cloud/network/NetworkServiceImpl.java | 2 +- server/src/com/cloud/network/guru/GuestNetworkGuru.java | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/awsapi/src/com/cloud/bridge/service/core/s3/S3Engine.java b/awsapi/src/com/cloud/bridge/service/core/s3/S3Engine.java index e1ccd4c4d1f..7beb012d4b7 100644 --- a/awsapi/src/com/cloud/bridge/service/core/s3/S3Engine.java +++ b/awsapi/src/com/cloud/bridge/service/core/s3/S3Engine.java @@ -1126,7 +1126,7 @@ public class S3Engine { SBucketVO sbucket = bucketDao.getByName( bucketName ); if (sbucket == null) { response.setResultCode(404); - response.setResultDescription("Bucket dosen't existsBucket " + bucketName + " does not exist"); + response.setResultDescription("Bucket doesn't existsBucket " + bucketName + " does not exist"); return response; } diff --git a/server/src/com/cloud/network/ExternalFirewallDeviceManagerImpl.java b/server/src/com/cloud/network/ExternalFirewallDeviceManagerImpl.java index ac00bc14d36..4a90a77f428 100644 --- a/server/src/com/cloud/network/ExternalFirewallDeviceManagerImpl.java +++ b/server/src/com/cloud/network/ExternalFirewallDeviceManagerImpl.java @@ -725,7 +725,7 @@ public abstract class ExternalFirewallDeviceManagerImpl extends AdapterBase impl } } if (lowestVlanTag == null) { - throw new InvalidParameterValueException ("The vlan tag dose not belong to any of the existing vlan ranges"); + throw new InvalidParameterValueException ("The vlan tag does not belong to any of the existing vlan ranges"); } return vlanTag - lowestVlanTag; } diff --git a/server/src/com/cloud/network/NetworkServiceImpl.java b/server/src/com/cloud/network/NetworkServiceImpl.java index ac2ac456897..7653a0816f0 100755 --- a/server/src/com/cloud/network/NetworkServiceImpl.java +++ b/server/src/com/cloud/network/NetworkServiceImpl.java @@ -2529,7 +2529,7 @@ public class NetworkServiceImpl extends ManagerBase implements NetworkService { } if (temp == 0){ - throw new InvalidParameterValueException("The vlan range you are trying to delete dose not exist."); + throw new InvalidParameterValueException("The vlan range you are trying to delete does not exist."); } if(existingRanges.get(i).first() > existingRanges.get(i).second()){ existingRanges.remove(i); diff --git a/server/src/com/cloud/network/guru/GuestNetworkGuru.java b/server/src/com/cloud/network/guru/GuestNetworkGuru.java index 92607e2fcd0..291e3ccbc77 100755 --- a/server/src/com/cloud/network/guru/GuestNetworkGuru.java +++ b/server/src/com/cloud/network/guru/GuestNetworkGuru.java @@ -284,7 +284,7 @@ public abstract class GuestNetworkGuru extends AdapterBase implements NetworkGur } } if (lowestVlanTag == null) { - throw new InvalidParameterValueException ("The vlan tag dose not belong to any of the existing vlan ranges"); + throw new InvalidParameterValueException ("The vlan tag does not belong to any of the existing vlan ranges"); } return vlanTag - lowestVlanTag; } From f65f3b9d50f7ece9ef1c72af0f3518d8813f2951 Mon Sep 17 00:00:00 2001 From: Murali Reddy Date: Wed, 24 Apr 2013 21:02:42 +0530 Subject: [PATCH 388/607] CLOUDSTACK-1958: List GSLB response should have the GSLB site (zone load balancer rule) details as well --- .../region/ha/GlobalLoadBalancingRulesService.java | 3 +++ .../org/apache/cloudstack/api/ApiConstants.java | 1 + .../api/response/GlobalLoadBalancerResponse.java | 10 ++++++++++ server/src/com/cloud/api/ApiDBUtils.java | 9 +++++++++ server/src/com/cloud/api/ApiResponseHelper.java | 8 ++++++++ .../gslb/GlobalLoadBalancingRulesServiceImpl.java | 14 ++++++++++++++ 6 files changed, 45 insertions(+) diff --git a/api/src/com/cloud/region/ha/GlobalLoadBalancingRulesService.java b/api/src/com/cloud/region/ha/GlobalLoadBalancingRulesService.java index e2f097e29a3..186faf75f78 100644 --- a/api/src/com/cloud/region/ha/GlobalLoadBalancingRulesService.java +++ b/api/src/com/cloud/region/ha/GlobalLoadBalancingRulesService.java @@ -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 listGlobalLoadBalancerRule(ListGlobalLoadBalancerRuleCmd listGslbCmd); + List listSiteLoadBalancers(long gslbRuleId); + } diff --git a/api/src/org/apache/cloudstack/api/ApiConstants.java b/api/src/org/apache/cloudstack/api/ApiConstants.java index e774ecc94b6..1165c7b34f6 100755 --- a/api/src/org/apache/cloudstack/api/ApiConstants.java +++ b/api/src/org/apache/cloudstack/api/ApiConstants.java @@ -335,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"; diff --git a/api/src/org/apache/cloudstack/api/response/GlobalLoadBalancerResponse.java b/api/src/org/apache/cloudstack/api/response/GlobalLoadBalancerResponse.java index 38e080bd28a..9f5139db947 100644 --- a/api/src/org/apache/cloudstack/api/response/GlobalLoadBalancerResponse.java +++ b/api/src/org/apache/cloudstack/api/response/GlobalLoadBalancerResponse.java @@ -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 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 siteLoadBalancers) { + this.siteLoadBalancers = siteLoadBalancers; + } } diff --git a/server/src/com/cloud/api/ApiDBUtils.java b/server/src/com/cloud/api/ApiDBUtils.java index c60af279d4f..21ce63b8ae8 100755 --- a/server/src/com/cloud/api/ApiDBUtils.java +++ b/server/src/com/cloud/api/ApiDBUtils.java @@ -25,6 +25,8 @@ import java.util.Set; import javax.annotation.PostConstruct; import javax.inject.Inject; +import com.cloud.network.rules.LoadBalancer; +import com.cloud.region.ha.GlobalLoadBalancingRulesService; import org.apache.cloudstack.affinity.AffinityGroup; import org.apache.cloudstack.affinity.AffinityGroupResponse; import org.apache.cloudstack.affinity.dao.AffinityGroupDao; @@ -388,6 +390,7 @@ public class ApiDBUtils { static VpcProvisioningService _vpcProvSvc; static AffinityGroupDao _affinityGroupDao; static AffinityGroupJoinDao _affinityGroupJoinDao; + static GlobalLoadBalancingRulesService _gslbService; @Inject private ManagementServer ms; @Inject public AsyncJobManager asyncMgr; @@ -494,6 +497,7 @@ public class ApiDBUtils { @Inject private VpcProvisioningService vpcProvSvc; @Inject private AffinityGroupDao affinityGroupDao; @Inject private AffinityGroupJoinDao affinityGroupJoinDao; + @Inject private GlobalLoadBalancingRulesService gslbService; @PostConstruct void init() { @@ -599,6 +603,7 @@ public class ApiDBUtils { _vpcProvSvc = vpcProvSvc; _affinityGroupDao = affinityGroupDao; _affinityGroupJoinDao = affinityGroupJoinDao; + _gslbService = gslbService; // Note: stats collector should already have been initialized by this time, otherwise a null instance is returned _statsCollector = StatsCollector.getInstance(); } @@ -1630,4 +1635,8 @@ public class ApiDBUtils { public static AffinityGroupResponse fillAffinityGroupDetails(AffinityGroupResponse resp, AffinityGroupJoinVO group) { return _affinityGroupJoinDao.setAffinityGroupResponse(resp, group); } + + public static List listSiteLoadBalancers(long gslbRuleId) { + return _gslbService.listSiteLoadBalancers(gslbRuleId); + } } diff --git a/server/src/com/cloud/api/ApiResponseHelper.java b/server/src/com/cloud/api/ApiResponseHelper.java index cd0158d074e..894ec8d0e97 100755 --- a/server/src/com/cloud/api/ApiResponseHelper.java +++ b/server/src/com/cloud/api/ApiResponseHelper.java @@ -798,6 +798,14 @@ public class ApiResponseHelper implements ResponseGenerator { response.setId(globalLoadBalancerRule.getUuid()); populateOwner(response, globalLoadBalancerRule); response.setObjectName("globalloadbalancer"); + + List siteLbResponses = new ArrayList(); + List siteLoadBalaners = ApiDBUtils.listSiteLoadBalancers(globalLoadBalancerRule.getId()); + for (LoadBalancer siteLb : siteLoadBalaners) { + LoadBalancerResponse siteLbResponse = createLoadBalancerResponse(siteLb); + siteLbResponses.add(siteLbResponse); + } + response.setSiteLoadBalancers(siteLbResponses); return response; } diff --git a/server/src/org/apache/cloudstack/region/gslb/GlobalLoadBalancingRulesServiceImpl.java b/server/src/org/apache/cloudstack/region/gslb/GlobalLoadBalancingRulesServiceImpl.java index 1ed2618f6cb..56c46b01c79 100644 --- a/server/src/org/apache/cloudstack/region/gslb/GlobalLoadBalancingRulesServiceImpl.java +++ b/server/src/org/apache/cloudstack/region/gslb/GlobalLoadBalancingRulesServiceImpl.java @@ -511,6 +511,20 @@ public class GlobalLoadBalancingRulesServiceImpl implements GlobalLoadBalancingR return null; } + @Override + public List listSiteLoadBalancers(long gslbRuleId) { + List gslbLbMapVos = _gslbLbMapDao.listByGslbRuleId(gslbRuleId); + List siteLoadBalancers = new ArrayList(); + if (gslbLbMapVos != null) { + for (GlobalLoadBalancerLbRuleMapVO gslbLbMapVo : gslbLbMapVos) { + LoadBalancerVO loadBalancer = _lbDao.findById(gslbLbMapVo.getLoadBalancerId()); + siteLoadBalancers.add(loadBalancer); + } + return siteLoadBalancers; + } + return null; + } + private boolean applyGlobalLoadBalancerRuleConfig(long gslbRuleId, boolean revoke) throws ResourceUnavailableException { GlobalLoadBalancerRuleVO gslbRule = _gslbRuleDao.findById(gslbRuleId); From 7e5fd88f7c1d5072c774d5278229de2a76d6da78 Mon Sep 17 00:00:00 2001 From: Radhika PC Date: Wed, 24 Apr 2013 17:54:21 +0530 Subject: [PATCH 389/607] CLOUDSTACK-804 ui changes --- docs/en-US/images/add-vlan-icon.png | Bin 0 -> 860 bytes docs/en-US/non-contiguous-vlan.xml | 68 ++++++++++++++++++++++++++++ docs/en-US/vlan-provisioning.xml | 2 + 3 files changed, 70 insertions(+) create mode 100644 docs/en-US/images/add-vlan-icon.png create mode 100644 docs/en-US/non-contiguous-vlan.xml diff --git a/docs/en-US/images/add-vlan-icon.png b/docs/en-US/images/add-vlan-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..04655dc37ada249faf43d58b9628357ed7b649c8 GIT binary patch literal 860 zcmV-i1Ec(jP)X0ssI2saFY200001b5ch_0Itp) z=>Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0`W;iK~zXf<&;@Z zT2T~*@4su)m!|1MHA+e4Szj^x(F@d$(J>ht!NApw3=JLtpDyZJLPhDQO6Hn!JdJ~>N8W@5hP?&KP z204Mn6J|8qd!W?O@+4Xv9;r+T-PD^uvxRmJbOzW69F9bj$aDsaOQtcgQ-l#X^3x!U z!&?kRlO0_x(Q0?E$rMoS<~EVex8w1L6{<}dV~#b)V{;aG{ADh0iArZpO_PRTqY{}i zlE`#40`csJOCps+)mkH-%C(csT;&R7v(>&R5YMvbcXqY@U|6}a1>S%_q##jPlf}`| z2t>2hxeB5y)p{(M?Z#!kE<$7?5h$PbX~53 zjq5=?l?C$}O=qAdnn-W&YC$w{h9;3Jy15Le7V(M%Di%xrP~;gFoAayo8%WU`OrR8w zC8CK`t4FR>gB>SRXTi;FH@1``!--HN2GQ64Q1}_z{lkI5;rAatj=~W-z2T_}JY*`P z6}`8A&~9ugM+W1+=tA+@7Yskc?eWj^mvHzmV~7b1W=grCIn?RZnr%Fuh{oaROb(AP zaJW3}#+LH^*tjh05*@gR*qv_ff`CF}qA-)-f{%=i4}Ts*qHz>Di^=95pPUB6(bq(K z0~g^~(&0K6t*lWQYyycgIZXsBcm@~TaAJ + +%BOOK_ENTITIES; +]> + + +
    + Non Contiguous VLAN Ranges + &PRODUCT; provides you with the flexibility to add non contiguous VLAN ranges to your + network. The administrator can either update an existing VLAN range or add multiple non + contiguous VLAN ranges while creating a zone. You can also use the UpdatephysicalNetwork API to + extend the VLAN range. +
    + Adding a New VLAN Range + + Log in to the CloudPlatform UI as an administrator or end user. + + Ensure that the VLAN range does not already exist. + + + Check whether the new VLAN range overlaps with any existing ones. If overlaps, extend + the existing range. If does not overlap, add the new range. + + + In the left navigation, choose Infrastructure. On Zones, click View More, then click the zone to + which you want to work with. + + + Click Physical Network. + + + In the Guest node of the diagram, click Configure. + + + Click Add VLAN Ranges button + + + + + add-vlan-ico.png: button to add a VLAN range. + + + The Add VLAN Ranges dialog is displayed. + + + Specify the start and end of the VLAN range. + + + Click OK. + + +
    +
    diff --git a/docs/en-US/vlan-provisioning.xml b/docs/en-US/vlan-provisioning.xml index 9345647d47a..d37be16fe5e 100644 --- a/docs/en-US/vlan-provisioning.xml +++ b/docs/en-US/vlan-provisioning.xml @@ -40,4 +40,6 @@ different physical NIC and use the same set of VLANs if you run out of VLANs. Another advantage is that you can use the same set of IPs for different customers, each one with their own routers and the guest networks on different physical NICs. + +
    From b7f5197c850f772980b5f4f416878589c3d3e853 Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 24 Apr 2013 23:06:25 +0530 Subject: [PATCH 390/607] CLOUDSTACK-832, CLOUDSTACK-812,CLOUDSTACK-808 --- docs/en-US/about-working-with-vms.xml | 85 +++++++---- docs/en-US/append-displayname-vms.xml | 84 +++++++++++ docs/en-US/creating-network-offerings.xml | 45 ++++++ docs/en-US/elastic-ip.xml | 90 ++++++++++++ docs/en-US/network-offerings.xml | 83 ++++++++--- docs/en-US/networks.xml | 1 + docs/en-US/set-up-network-for-users.xml | 13 +- docs/en-US/using-netscaler-load-balancers.xml | 132 +++++++++++------- docs/en-US/virtual-machines.xml | 1 + 9 files changed, 425 insertions(+), 109 deletions(-) create mode 100644 docs/en-US/append-displayname-vms.xml create mode 100644 docs/en-US/elastic-ip.xml diff --git a/docs/en-US/about-working-with-vms.xml b/docs/en-US/about-working-with-vms.xml index 259c61bc814..90e5abf07f8 100644 --- a/docs/en-US/about-working-with-vms.xml +++ b/docs/en-US/about-working-with-vms.xml @@ -3,37 +3,62 @@ %BOOK_ENTITIES; ]> - -
    - About Working with Virtual Machines - &PRODUCT; provides administrators with complete control over the lifecycle of all guest VMs executing in the cloud. &PRODUCT; provides several guest management operations for end users and administrators. VMs may be stopped, started, rebooted, and destroyed. - Guest VMs have a name and group. VM names and groups are opaque to &PRODUCT; and are available for end users to organize their VMs. Each VM can have three names for use in different contexts. Only two of these names can be controlled by the user: - - Instance name – a unique, immutable ID that is generated by &PRODUCT;, and can not be modified by the user. This name conforms to the requirements in IETF RFC 1123. - Display name – the name displayed in the &PRODUCT; web UI. Can be set by the user. Defaults to instance name. - Name – host name that the DHCP server assigns to the VM. Can be set by the user. Defaults to instance name - - Guest VMs can be configured to be Highly Available (HA). An HA-enabled VM is monitored by the system. If the system detects that the VM is down, it will attempt to restart the VM, possibly on a different host. For more information, see HA-Enabled Virtual Machines on - Each new VM is allocated one public IP address. When the VM is started, &PRODUCT; automatically creates a static NAT between this public IP address and the private IP address of the VM. - If elastic IP is in use (with the NetScaler load balancer), the IP address initially allocated to the new VM is not marked as elastic. The user must replace the automatically configured IP with a specifically acquired elastic IP, and set up the static NAT mapping between this new IP and the guest VM’s private IP. The VM’s original IP address is then released and returned to the pool of available public IPs. - &PRODUCT; cannot distinguish a guest VM that was shut down by the user (such as with the “shutdown†command in Linux) from a VM that shut down unexpectedly. If an HA-enabled VM is shut down from inside the VM, &PRODUCT; will restart it. To shut down an HA-enabled VM, you must go through the &PRODUCT; UI or API. + About Working with Virtual Machines + &PRODUCT; provides administrators with complete control over the lifecycle of all guest VMs + executing in the cloud. &PRODUCT; provides several guest management operations for end users and + administrators. VMs may be stopped, started, rebooted, and destroyed. + Guest VMs have a name and group. VM names and groups are opaque to &PRODUCT; and are + available for end users to organize their VMs. Each VM can have three names for use in different + contexts. Only two of these names can be controlled by the user: + + + Instance name – a unique, immutable ID that is generated by &PRODUCT; and can not + be modified by the user. This name conforms to the requirements in IETF RFC 1123. + + + Display name – the name displayed in the &PRODUCT; web UI. Can be set by the user. + Defaults to instance name. + + + Name – host name that the DHCP server assigns to the VM. Can be set by the user. + Defaults to instance name + + + + You can append the display name of a guest VM to its internal name. For more information, + see . + + Guest VMs can be configured to be Highly Available (HA). An HA-enabled VM is monitored by + the system. If the system detects that the VM is down, it will attempt to restart the VM, + possibly on a different host. For more information, see HA-Enabled Virtual Machines on + Each new VM is allocated one public IP address. When the VM is started, &PRODUCT; + automatically creates a static NAT between this public IP address and the private IP address of + the VM. + If elastic IP is in use (with the NetScaler load balancer), the IP address initially + allocated to the new VM is not marked as elastic. The user must replace the automatically + configured IP with a specifically acquired elastic IP, and set up the static NAT mapping between + this new IP and the guest VM’s private IP. The VM’s original IP address is then released and + returned to the pool of available public IPs. Optionally, you can also decide not to allocate a + public IP to a VM in an EIP-enabled Basic zone. For more information on Elastic IP, see . + &PRODUCT; cannot distinguish a guest VM that was shut down by the user (such as with the + “shutdown†command in Linux) from a VM that shut down unexpectedly. If an HA-enabled VM is shut + down from inside the VM, &PRODUCT; will restart it. To shut down an HA-enabled VM, you must go + through the &PRODUCT; UI or API.
    - diff --git a/docs/en-US/append-displayname-vms.xml b/docs/en-US/append-displayname-vms.xml new file mode 100644 index 00000000000..592a6e863e8 --- /dev/null +++ b/docs/en-US/append-displayname-vms.xml @@ -0,0 +1,84 @@ + + +%BOOK_ENTITIES; +]> + +
    + Appending a Display Name to the Guest VM’s Internal Name + Every guest VM has an internal name. The host uses the internal name to identify the guest + VMs. &PRODUCT; gives you an option to provide a guest VM with a display name. You can set this + display name as the internal name so that the vCenter can use it to identify the guest VM. A new + global parameter, vm.instancename.flag, has now been added to achieve this functionality. + The default format of the internal name is + i-<user_id>-<vm_id>-<instance.name>, where instance.name is a global + parameter. However, If vm.instancename.flag is set to true, and if a display name is provided + during the creation of a guest VM, the display name is appended to the internal name of the + guest VM on the host. This makes the internal name format as + i-<user_id>-<vm_id>-<displayName>. The default value of vm.instancename.flag + is set to false. This feature is intended to make the correlation between instance names and + internal names easier in large data center deployments. + The following table explains how a VM name is displayed in different scenarios. + + + + + + + + + + User-Provided Display Name + vm.instancename.flag + Hostname on the VM + Name on vCenter + Internal Name + + + + + Yes + True + Display name + i-<user_id>-<vm_id>-displayName + i-<user_id>-<vm_id>-displayName + + + No + True + UUID + i-<user_id>-<vm_id>-<instance.name> + i-<user_id>-<vm_id>-<instance.name> + + + Yes + False + Display name + i-<user_id>-<vm_id>-<instance.name> + i-<user_id>-<vm_id>-<instance.name> + + + No + False + UUID + i-<user_id>-<vm_id>-<instance.name> + i-<user_id>-<vm_id>-<instance.name> + + + + +
    diff --git a/docs/en-US/creating-network-offerings.xml b/docs/en-US/creating-network-offerings.xml index 1f79fb166ce..2b23ca89a1f 100644 --- a/docs/en-US/creating-network-offerings.xml +++ b/docs/en-US/creating-network-offerings.xml @@ -193,6 +193,51 @@ For more information, see . For more information, see the Administration Guide.
    + + LB Isolation: Specify what type of load balancer + isolation you want for the network: Shared or Dedicated. + Dedicated: If you select dedicated LB isolation, a + dedicated load balancer device is assigned for the network from the pool of dedicated + load balancer devices provisioned in the zone. If no sufficient dedicated load balancer + devices are available in the zone, network creation fails. Dedicated device is a good + choice for the high-traffic networks that make full use of the device's + resources. + Shared: If you select shared LB isolation, a shared + load balancer device is assigned for the network from the pool of shared load balancer + devices provisioned in the zone. While provisioning &PRODUCT; picks the shared load + balancer device that is used by the least number of accounts. Once the device reaches + its maximum capacity, the device will not be allocated to a new account. + + + Mode: You can select either Inline mode or Side by + Side mode: + Inline mode: Supported only for Juniper SRX + firewall and BigF5 load balancer devices. In inline mode, a firewall device is placed in + front of a load balancing device. The firewall acts as the gateway for all the incoming + traffic, then redirect the load balancing traffic to the load balancer behind it. The + load balancer in this case will not have the direct access to the public network. + Side by Side: In side by side mode, a firewall + device is deployed in parallel with the load balancer device. So the traffic to the load + balancer public IP is not routed through the firewall, and therefore, is exposed to the + public network. + + + Associate Public IP: Select this option if you want + to assign a public IP address to the VMs deployed in the guest network. This option is + available only if + + + Guest network is shared. + + + StaticNAT is enabled. + + + Elastic IP is enabled. + + + For information on Elastic IP, see . + Redundant router capability. Available only when Virtual Router is selected as the Source NAT provider. Select this option if you want to diff --git a/docs/en-US/elastic-ip.xml b/docs/en-US/elastic-ip.xml new file mode 100644 index 00000000000..b09d37d43e1 --- /dev/null +++ b/docs/en-US/elastic-ip.xml @@ -0,0 +1,90 @@ + + +%BOOK_ENTITIES; +]> + +
    + About Elastic IP + Elastic IP (EIP) addresses are the IP addresses that are associated with an account, and act + as static IP addresses. The account owner has complete control over the Elastic IP addresses + that belong to the account. You can allocate an Elastic IP to a VM of your choice from the EIP + pool of your account. Later if required you can reassign the IP address to a different VM. This + feature is extremely helpful during VM failure. Instead of replacing the VM which is down, the + IP address can be reassigned to a new VM in your account. Elastic IP service provides Static NAT + (1:1) service in an EIP-enabled basic zone. The default network offering, + DefaultSharedNetscalerEIPandELBNetworkOffering, provides your network with EIP and ELB network + services if a NetScaler device is deployed in your zone. Similar to the public IP address, + Elastic IP addresses are also mapped to their associated private IP addresses by using Stactic + NAT. + The EIP work flow is as follows: + + + When a user VM is deployed, a public IP is automatically acquired from the pool of + public IPs configured in the zone. This IP is owned by the VM's account. + + + Each VM will have its own private IP. When the user VM starts, Static NAT is provisioned + on the NetScaler device by using the Inbound Network Address Translation (INAT) and Reverse + NAT (RNAT) rules between the public IP and the private IP. + + Inbound NAT (INAT) is a type of NAT supported by NetScaler, in which the destination + IP address is replaced in the packets from the public network, such as the Internet, with + the private IP address of a VM in the private network. Reverse NAT (RNAT) is a type of NAT + supported by NetScaler, in which the source IP address is replaced in the packets + generated by a VM in the private network with the public IP address. + + + + + This default public IP will be released in two cases: + + + When the VM is stopped. When the VM starts, it again receives a new public IP, not + necessarily the same one allocated initially, from the pool of Public IPs. + + + The user acquires a public IP (Elastic IP). This public IP is associated with the + account, but will not be mapped to any private IP. However, the user can enable Static + NAT to associate this IP to the private IP of a VM in the account. The Static NAT rule + for the public IP can be disabled at any time. When Static NAT is disabled, a new public + IP is allocated from the pool, which is not necessarily be the same one allocated + initially. + + + + + However, for the deployments where public IPs are limited resources, you have the + flexibility to choose not to allocate a public IP by default. You can use the Associate Public + IP option to turn on or off the automatic public IP assignment in the EIP-enabled Basic zones. + If you turn off the automatic public IP assignment while creating a network offering, only a + private IP is assigned to a VM when the VM is deployed with that network offering. Later, the + user can acquire an IP for the VM and enable static NAT. + For more information on the Associate Public IP option, see . + For more information on the Associate Public IP option, see the + Administration Guide. + + The Associate Public IP feature is designed only for use with user VMs. The System VMs + continue to get both public IP and private by default, irrespective of the network offering + configuration. + + + New deployments which use the default shared network offering with EIP and ELB services to + create a shared network in the Basic zone will continue allocating public IPs to each user + VM. +
    diff --git a/docs/en-US/network-offerings.xml b/docs/en-US/network-offerings.xml index 0a7b8e78e3b..8c685bfc903 100644 --- a/docs/en-US/network-offerings.xml +++ b/docs/en-US/network-offerings.xml @@ -22,25 +22,66 @@ under the License. -->
    - Network Offerings - For the most up-to-date list of supported network services, see the &PRODUCT; UI or call listNetworkServices. - A network offering is a named set of network services, such as: - - DHCP - DNS - Source NAT - Static NAT - Port Forwarding - Load Balancing - Firewall - VPN - Optional) Name one of several available providers to use for a given service, such as Juniper for the firewall - (Optional) Network tag to specify which physical network to use - - When creating a new VM, the user chooses one of the available network offerings, and that determines which network services the VM can use. - The &PRODUCT; administrator can create any number of custom network offerings, in addition to the default network offerings provided by &PRODUCT;. By creating multiple custom network offerings, you can set up your cloud to offer different classes of service on a single multi-tenant physical network. For example, while the underlying physical wiring may be the same for two tenants, tenant A may only need simple firewall protection for their website, while tenant B may be running a web server farm and require a scalable firewall solution, load balancing solution, and alternate networks for accessing the database backend. - If you create load balancing rules while using a network service offering that includes an external load balancer device such as NetScaler, and later change the network service offering to one that uses the &PRODUCT; virtual router, you must create a firewall rule on the virtual router for each of your existing load balancing rules so that they continue to function. - When creating a new virtual network, the &PRODUCT; administrator chooses which network offering to enable for that network. Each virtual network is associated with one network offering. A virtual network can be upgraded or downgraded by changing its associated network offering. If you do this, be sure to reprogram the physical network to match. - &PRODUCT; also has internal network offerings for use by &PRODUCT; system VMs. These network offerings are not visible to users but can be modified by administrators. - + Network Offerings + + For the most up-to-date list of supported network services, see the &PRODUCT; UI or call + listNetworkServices. + + A network offering is a named set of network services, such as: + + + DHCP + + + DNS + + + Source NAT + + + Static NAT + + + Port Forwarding + + + Load Balancing + + + Firewall + + + VPN + + + (Optional) Name one of several available providers to use for a given service, such as + Juniper for the firewall + + + (Optional) Network tag to specify which physical network to use + + + When creating a new VM, the user chooses one of the available network offerings, and that + determines which network services the VM can use. + The &PRODUCT; administrator can create any number of custom network offerings, in addition + to the default network offerings provided by &PRODUCT;. By creating multiple custom network + offerings, you can set up your cloud to offer different classes of service on a single + multi-tenant physical network. For example, while the underlying physical wiring may be the same + for two tenants, tenant A may only need simple firewall protection for their website, while + tenant B may be running a web server farm and require a scalable firewall solution, load + balancing solution, and alternate networks for accessing the database backend. + + If you create load balancing rules while using a network service offering that includes an + external load balancer device such as NetScaler, and later change the network service offering + to one that uses the &PRODUCT; virtual router, you must create a firewall rule on the virtual + router for each of your existing load balancing rules so that they continue to + function. + + When creating a new virtual network, the &PRODUCT; administrator chooses which network + offering to enable for that network. Each virtual network is associated with one network + offering. A virtual network can be upgraded or downgraded by changing its associated network + offering. If you do this, be sure to reprogram the physical network to match. + &PRODUCT; also has internal network offerings for use by &PRODUCT; system VMs. These network + offerings are not visible to users but can be modified by administrators. +
    diff --git a/docs/en-US/networks.xml b/docs/en-US/networks.xml index cb7493cc945..c2090d2b1b4 100644 --- a/docs/en-US/networks.xml +++ b/docs/en-US/networks.xml @@ -45,6 +45,7 @@ + diff --git a/docs/en-US/set-up-network-for-users.xml b/docs/en-US/set-up-network-for-users.xml index c91565a5456..c22babc7232 100644 --- a/docs/en-US/set-up-network-for-users.xml +++ b/docs/en-US/set-up-network-for-users.xml @@ -1,5 +1,5 @@ - %BOOK_ENTITIES; ]> @@ -21,11 +21,10 @@ specific language governing permissions and limitations under the License. --> - - Setting Up Networking for Users - - - - + Setting Up Networking for Users + + + + diff --git a/docs/en-US/using-netscaler-load-balancers.xml b/docs/en-US/using-netscaler-load-balancers.xml index c2044de527b..7d18331f106 100644 --- a/docs/en-US/using-netscaler-load-balancers.xml +++ b/docs/en-US/using-netscaler-load-balancers.xml @@ -3,58 +3,88 @@ %BOOK_ENTITIES; ]> - -
    - About Using a NetScaler Load Balancer - Citrix NetScaler is supported as an external network element for load balancing in zones that use advanced networking (also called advanced zones). Set up an external load balancer when you want to provide load balancing through means other than &PRODUCT;’s provided virtual router. - The NetScaler can be set up in direct (outside the firewall) mode. It must be added before any load balancing rules are deployed on guest VMs in the zone. - The functional behavior of the NetScaler with &PRODUCT; is the same as described in the &PRODUCT; documentation for using an F5 external load balancer. The only exception is that the F5 supports routing domains, and NetScaler does not. NetScaler can not yet be used as a firewall. - The Citrix NetScaler comes in three varieties. The following table summarizes how these variants are treated in &PRODUCT;. - - - - - NetScaler ADC Type - Description of Capabilities - &PRODUCT; Supported Features - - - - - MPX - Physical appliance. Capable of deep packet inspection. Can act as application firewall and load balancer - In advanced zones, load balancer functionality fully supported without limitation. In basic zones, static NAT, elastic IP (EIP), and elastic load balancing (ELB) are also provided - - - - VPX - Virtual appliance. Can run as VM on XenServer, ESXi, and Hyper-V hypervisors. Same functionality as MPX - Supported only on ESXi. Same functional support as for MPX. &PRODUCT; will treat VPX and MPX as the same device type - - - SDX - Physical appliance. Can create multiple fully isolated VPX instances on a single appliance to support multi-tenant usage - &PRODUCT; will dynamically provision, configure, and manage the lifecycle of VPX instances on the SDX. Provisioned instances are added into &PRODUCT; automatically – no manual configuration by the administrator is required. Once a VPX instance is added into &PRODUCT;, it is treated the same as a VPX on an ESXi host. - - - - + About Using a NetScaler Load Balancer + Citrix NetScaler is supported as an external network element for load balancing in zones + that use isolated networking in advanced zones. Set up an external load balancer when you want + to provide load balancing through means other than &PRODUCT;’s provided virtual router. + + In a Basic zone, load balancing service is supported only if Elastic IP or Elastic LB + services are enabled. + + When NetScaler load balancer is used to provide EIP or ELB services in a Basic zone, ensure + that all guest VM traffic must enter and exit through the NetScaler device. When inbound traffic + goes through the NetScaler device, traffic is routed by using the NAT protocol depending on the + EIP/ELB configured on the public IP to the private IP. The traffic that is originated from the + guest VMs usually goes through the layer 3 router. To ensure that outbound traffic goes through + NetScaler device providing EIP/ELB, layer 3 router must have a policy-based routing. A + policy-based route must be set up so that all traffic originated from the guest VM's are + directed to NetScaler device. This is required to ensure that the outbound traffic from the + guest VM's is routed to a public IP by using NAT.For more information on Elastic IP, see . + The NetScaler can be set up in direct (outside the firewall) mode. It must be added before + any load balancing rules are deployed on guest VMs in the zone. + The functional behavior of the NetScaler with &PRODUCT; is the same as described in the + &PRODUCT; documentation for using an F5 external load balancer. The only exception is that the + F5 supports routing domains, and NetScaler does not. NetScaler can not yet be used as a + firewall. + To install and enable an external load balancer for &PRODUCT; management, see . + External Guest Load Balancer Integration in the Installation + Guide. + + The Citrix NetScaler comes in three varieties. The following table summarizes how these + variants are treated in &PRODUCT;. + + + + + NetScaler ADC Type + Description of Capabilities + &PRODUCT; Supported Features + + + + + MPX + Physical appliance. Capable of deep packet inspection. Can act as application + firewall and load balancer + In advanced zones, load balancer functionality fully supported without + limitation. In basic zones, static NAT, elastic IP (EIP), and elastic load balancing + (ELB) are also provided. + + + VPX + Virtual appliance. Can run as VM on XenServer, ESXi, and Hyper-V hypervisors. + Same functionality as MPX + Supported on ESXi and XenServer. Same functional support as for MPX. + &PRODUCT; will treat VPX and MPX as the same device type. + + + SDX + Physical appliance. Can create multiple fully isolated VPX instances on a + single appliance to support multi-tenant usage + &PRODUCT; will dynamically provision, configure, and manage the life cycle of + VPX instances on the SDX. Provisioned instances are added into &PRODUCT; automatically + – no manual configuration by the administrator is required. Once a VPX instance is + added into &PRODUCT;, it is treated the same as a VPX on an ESXi host. + + + +
    diff --git a/docs/en-US/virtual-machines.xml b/docs/en-US/virtual-machines.xml index 20018da8dfb..802e8e1702f 100644 --- a/docs/en-US/virtual-machines.xml +++ b/docs/en-US/virtual-machines.xml @@ -28,6 +28,7 @@ + From cdd459bb0bfb502df056a553a42735d4bd8f0e31 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Wed, 24 Apr 2013 10:35:47 -0700 Subject: [PATCH 391/607] CLOUDSTACK-2120: mixed zone management - (1) extend listVirtualMachines API to to take in zonetype. (2) UI: populate Instances list page with instances whose zonetype matches selected option in zone type dropdown on top menu. --- .../api/command/user/vm/ListVMsCmd.java | 7 ++++ .../com/cloud/api/query/QueryManagerImpl.java | 14 +++++-- server/src/com/cloud/server/Criteria.java | 1 + ui/scripts/instances.js | 38 +++++++------------ 4 files changed, 32 insertions(+), 28 deletions(-) diff --git a/api/src/org/apache/cloudstack/api/command/user/vm/ListVMsCmd.java b/api/src/org/apache/cloudstack/api/command/user/vm/ListVMsCmd.java index dae9df311cd..d93d65708b4 100644 --- a/api/src/org/apache/cloudstack/api/command/user/vm/ListVMsCmd.java +++ b/api/src/org/apache/cloudstack/api/command/user/vm/ListVMsCmd.java @@ -79,6 +79,9 @@ public class ListVMsCmd extends BaseListTaggedResourcesCmd { 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; @@ -147,6 +150,10 @@ public class ListVMsCmd extends BaseListTaggedResourcesCmd { return zoneId; } + public String getZoneType() { + return zoneType; + } + public Boolean getForVirtualNetwork() { return forVirtualNetwork; } diff --git a/server/src/com/cloud/api/query/QueryManagerImpl.java b/server/src/com/cloud/api/query/QueryManagerImpl.java index 22982525046..d0b42378340 100644 --- a/server/src/com/cloud/api/query/QueryManagerImpl.java +++ b/server/src/com/cloud/api/query/QueryManagerImpl.java @@ -632,6 +632,7 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { c.addCriteria(Criteria.NAME, cmd.getInstanceName()); c.addCriteria(Criteria.STATE, cmd.getState()); c.addCriteria(Criteria.DATACENTERID, cmd.getZoneId()); + c.addCriteria(Criteria.DATACENTERTYPE, cmd.getZoneType()); c.addCriteria(Criteria.GROUPID, cmd.getGroupId()); c.addCriteria(Criteria.FOR_VIRTUAL_NETWORK, cmd.getForVirtualNetwork()); c.addCriteria(Criteria.NETWORKID, cmd.getNetworkId()); @@ -680,7 +681,8 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { Object name = c.getCriteria(Criteria.NAME); Object state = c.getCriteria(Criteria.STATE); Object notState = c.getCriteria(Criteria.NOTSTATE); - Object zone = c.getCriteria(Criteria.DATACENTERID); + Object zoneId = c.getCriteria(Criteria.DATACENTERID); + Object zoneType = c.getCriteria(Criteria.DATACENTERTYPE); Object pod = c.getCriteria(Criteria.PODID); Object hostId = c.getCriteria(Criteria.HOSTID); Object hostName = c.getCriteria(Criteria.HOSTNAME); @@ -703,6 +705,7 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { sb.and("stateNEQ", sb.entity().getState(), SearchCriteria.Op.NEQ); sb.and("stateNIN", sb.entity().getState(), SearchCriteria.Op.NIN); sb.and("dataCenterId", sb.entity().getDataCenterId(), SearchCriteria.Op.EQ); + sb.and("dataCenterType", sb.entity().getDataCenterType(), SearchCriteria.Op.EQ); sb.and("podId", sb.entity().getPodId(), SearchCriteria.Op.EQ); sb.and("hypervisorType", sb.entity().getHypervisorType(), SearchCriteria.Op.EQ); sb.and("hostIdEQ", sb.entity().getHostId(), SearchCriteria.Op.EQ); @@ -809,13 +812,18 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { sc.setParameters("stateNIN", "Destroyed", "Expunging"); } - if (zone != null) { - sc.setParameters("dataCenterId", zone); + if (zoneId != null) { + sc.setParameters("dataCenterId", zoneId); if (state == null) { sc.setParameters("stateNEQ", "Destroyed"); } } + + if (zoneType != null) { + sc.setParameters("dataCenterType", zoneType); + } + if (pod != null) { sc.setParameters("podId", pod); diff --git a/server/src/com/cloud/server/Criteria.java b/server/src/com/cloud/server/Criteria.java index d54aaf59429..cbe022a3508 100755 --- a/server/src/com/cloud/server/Criteria.java +++ b/server/src/com/cloud/server/Criteria.java @@ -32,6 +32,7 @@ public class Criteria { public static final String NOTSTATE = "notState"; public static final String STATE = "state"; public static final String DATACENTERID = "dataCenterId"; + public static final String DATACENTERTYPE = "dataCenterType"; public static final String DESCRIPTION = "description"; public static final String PODID = "podId"; public static final String CLUSTERID = "clusterId"; diff --git a/ui/scripts/instances.js b/ui/scripts/instances.js index 3a43c608ac1..0c4c7d2172a 100644 --- a/ui/scripts/instances.js +++ b/ui/scripts/instances.js @@ -194,38 +194,26 @@ } if("hosts" in args.context) { - $.extend(data, { - hostid: args.context.hosts[0].id - }); - } - + $.extend(data, { + hostid: args.context.hosts[0].id + }); + } + + if(args.context.zoneType != null && args.context.zoneType.length > 0) { //Basic type or Advanced type + $.extend(data, { + zonetype: args.context.zoneType + }); + } + $.ajax({ url: createURL('listVirtualMachines'), data: data, success: function(json) { - var items = json.listvirtualmachinesresponse.virtualmachine; - // Code for hiding "Expunged VMs" - /* if(items != null) { - var i=0; - for( i=0;i< items.length;i++){ - if(items[i].state == 'Expunging') - args.response.success ({ - - }); - else { + var items = json.listvirtualmachinesresponse.virtualmachine; args.response.success({ - actionFilter: vmActionfilter, - data: items[i] - }); - } - } - } - else {*/ - args.response.success({ actionFilter: vmActionfilter, data: items - }); - + }); } }); }, From 435f4bceb27f7b7bc96ad1ee46f4688b9a971355 Mon Sep 17 00:00:00 2001 From: Edison Su Date: Wed, 24 Apr 2013 10:38:14 -0700 Subject: [PATCH 392/607] in case vm doesn't exist on kvm host, getconnectionbyname will throw exception, need to catch the exception, and return the default connection --- .../hypervisor/kvm/resource/LibvirtConnection.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtConnection.java b/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtConnection.java index 2ad16166c42..2fc54253f57 100644 --- a/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtConnection.java +++ b/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtConnection.java @@ -61,13 +61,19 @@ public class LibvirtConnection { static public Connect getConnectionByVmName(String vmName) throws LibvirtException { HypervisorType[] hypervisors = new HypervisorType[] {HypervisorType.KVM, Hypervisor.HypervisorType.LXC}; + for (HypervisorType hypervisor : hypervisors) { - Connect conn = LibvirtConnection.getConnectionByType(hypervisor.toString()); - if (conn.domainLookupByUUID(UUID.nameUUIDFromBytes(vmName.getBytes())) != null) { - return conn; - } + try { + Connect conn = LibvirtConnection.getConnectionByType(hypervisor.toString()); + if (conn.domainLookupByUUID(UUID.nameUUIDFromBytes(vmName.getBytes())) != null) { + return conn; + } + } catch (Exception e) { + s_logger.debug("can't find connection: " + hypervisor.toString() + ", for vm: " + vmName + ", continue"); + } } + s_logger.debug("can't find which hypervisor the vm used , then use the default hypervisor"); // return the default connection return getConnection(); } From d893ba881b6ea00de00910a0d5f259b1397e16de Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Wed, 24 Apr 2013 11:26:43 -0700 Subject: [PATCH 393/607] CLOUDSTACK-2120: mixed zone management - (1) extend listVolumes API to to take in zonetype. (2) UI: populate Volumes list page with instances whose zonetype matches selected option in zone type dropdown on top menu. --- .../cloudstack/api/command/user/vm/ListVMsCmd.java | 3 +-- .../api/command/user/volume/ListVolumesCmd.java | 7 +++++++ server/src/com/cloud/api/query/QueryManagerImpl.java | 5 +++++ ui/scripts/storage.js | 12 +++++++++--- 4 files changed, 22 insertions(+), 5 deletions(-) diff --git a/api/src/org/apache/cloudstack/api/command/user/vm/ListVMsCmd.java b/api/src/org/apache/cloudstack/api/command/user/vm/ListVMsCmd.java index d93d65708b4..b2a2ce071f1 100644 --- a/api/src/org/apache/cloudstack/api/command/user/vm/ListVMsCmd.java +++ b/api/src/org/apache/cloudstack/api/command/user/vm/ListVMsCmd.java @@ -75,8 +75,7 @@ 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") diff --git a/api/src/org/apache/cloudstack/api/command/user/volume/ListVolumesCmd.java b/api/src/org/apache/cloudstack/api/command/user/volume/ListVolumesCmd.java index 4c78eedeb08..91316b02167 100644 --- a/api/src/org/apache/cloudstack/api/command/user/volume/ListVolumesCmd.java +++ b/api/src/org/apache/cloudstack/api/command/user/volume/ListVolumesCmd.java @@ -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/////////////////// ///////////////////////////////////////////////////// diff --git a/server/src/com/cloud/api/query/QueryManagerImpl.java b/server/src/com/cloud/api/query/QueryManagerImpl.java index d0b42378340..ea260c37a89 100644 --- a/server/src/com/cloud/api/query/QueryManagerImpl.java +++ b/server/src/com/cloud/api/query/QueryManagerImpl.java @@ -1522,6 +1522,7 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { Map tags = cmd.getTags(); Long zoneId = cmd.getZoneId(); + String zoneType = cmd.getZoneType(); Long podId = null; if (_accountMgr.isAdmin(caller.getType())) { podId = cmd.getPodId(); @@ -1549,6 +1550,7 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { sb.and("volumeType", sb.entity().getVolumeType(), SearchCriteria.Op.LIKE); sb.and("instanceId", sb.entity().getVmId(), SearchCriteria.Op.EQ); sb.and("dataCenterId", sb.entity().getDataCenterId(), SearchCriteria.Op.EQ); + sb.and("dataCenterType", sb.entity().getDataCenterType(), SearchCriteria.Op.EQ); sb.and("podId", sb.entity().getPodId(), SearchCriteria.Op.EQ); // Only return volumes that are not destroyed sb.and("state", sb.entity().getState(), SearchCriteria.Op.NEQ); @@ -1608,6 +1610,9 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { if (zoneId != null) { sc.setParameters("dataCenterId", zoneId); } + if (zoneType != null) { + sc.setParameters("dataCenterType", zoneType); + } if (podId != null) { sc.setParameters("podId", podId); } diff --git a/ui/scripts/storage.js b/ui/scripts/storage.js index 1acc9c792e4..cf4076945ac 100644 --- a/ui/scripts/storage.js +++ b/ui/scripts/storage.js @@ -398,12 +398,18 @@ if(args.context != null) { if("instances" in args.context) { - $.extend(data, { - virtualMachineId: args.context.instances[0].id - }); + $.extend(data, { + virtualMachineId: args.context.instances[0].id + }); } } + if(args.context.zoneType != null && args.context.zoneType.length > 0) { //Basic type or Advanced type + $.extend(data, { + zonetype: args.context.zoneType + }); + } + $.ajax({ url: createURL('listVolumes'), data: data, From 7fa57922a40428d73e80f5f2a48ff67c8cecd148 Mon Sep 17 00:00:00 2001 From: Marcus Sorensen Date: Wed, 24 Apr 2013 15:20:25 -0600 Subject: [PATCH 394/607] Detail: Delete KVMHA dir contents if found when deleting templates, volumes from Nfs Secondary storage BUG-ID: CLOUDSTACK-2173 Bugfix-for: 4.2 Signed-off-by: Marcus Sorensen 1366838425 -0600 --- .../resource/NfsSecondaryStorageResource.java | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/services/secondary-storage/src/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java index 1176d762f95..638d5cad99d 100755 --- a/services/secondary-storage/src/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java +++ b/services/secondary-storage/src/org/apache/cloudstack/storage/resource/NfsSecondaryStorageResource.java @@ -1291,6 +1291,17 @@ SecondaryStorageResource { if (!found && f.getName().equals("template.properties")) { found = true; } + + // KVM HA monitor makes a mess in the templates with its heartbeat tests + // Don't let this stop us from cleaning up the template + if (f.isDirectory() && f.getName().equals("KVMHA")) { + s_logger.debug("Deleting KVMHA directory contents from template location"); + File[] haFiles = f.listFiles(); + for (File haFile : haFiles) { + haFile.delete(); + } + } + if (!f.delete()) { return new Answer(cmd, false, "Unable to delete file " + f.getName() + " under Template path " + relativeTemplatePath); @@ -1339,6 +1350,17 @@ SecondaryStorageResource { if (!found && f.getName().equals("volume.properties")) { found = true; } + + // KVM HA monitor makes a mess in the templates with its heartbeat tests + // Don't let this stop us from cleaning up the template + if (f.isDirectory() && f.getName().equals("KVMHA")) { + s_logger.debug("Deleting KVMHA directory contents from template location"); + File[] haFiles = f.listFiles(); + for (File haFile : haFiles) { + haFile.delete(); + } + } + if (!f.delete()) { return new Answer(cmd, false, "Unable to delete file " + f.getName() + " under Volume path " + relativeVolumePath); From 1c89bc78fd02f394f933a6bc0f8c2e029b8d514d Mon Sep 17 00:00:00 2001 From: Edison Su Date: Wed, 24 Apr 2013 14:52:44 -0700 Subject: [PATCH 395/607] regression, need to modify iptables rules in rules.v4 --- patches/systemvm/debian/config/etc/init.d/cloud-early-config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/patches/systemvm/debian/config/etc/init.d/cloud-early-config b/patches/systemvm/debian/config/etc/init.d/cloud-early-config index 4b3cb5f7013..187ae25c40c 100755 --- a/patches/systemvm/debian/config/etc/init.d/cloud-early-config +++ b/patches/systemvm/debian/config/etc/init.d/cloud-early-config @@ -519,7 +519,7 @@ setup_sshd(){ local ip=$1 local eth=$2 [ -f /etc/ssh/sshd_config ] && sed -i -e "s/^[#]*ListenAddress.*$/ListenAddress $ip/" /etc/ssh/sshd_config - sed -i "/3922/s/eth./$eth/" /etc/iptables/rules + sed -i "/3922/s/eth./$eth/" /etc/iptables/rules.v4 } From 8f5d8d505243372d241e1ce90a16cbaa9991c1d2 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Wed, 24 Apr 2013 14:55:50 -0700 Subject: [PATCH 396/607] CLOUDSTACK-1910: cloudstack UI - Regions menu - GSLB - assigned load balancing - display assigned load balancing in listView and exclude assigned one from LB dropdown in Assign more load balancing dialog. --- ui/scripts/regions.js | 111 ++++++++++++++++++++++-------------------- 1 file changed, 58 insertions(+), 53 deletions(-) diff --git a/ui/scripts/regions.js b/ui/scripts/regions.js index ef6f976b014..334eb267bd8 100644 --- a/ui/scripts/regions.js +++ b/ui/scripts/regions.js @@ -382,7 +382,7 @@ detailView: { name: 'GSLB details', - viewAll: { path: 'regions.lbUnderGSLB', label: 'load balancer rules' }, + viewAll: { path: 'regions.lbUnderGSLB', label: 'assigned load balancing' }, actions: { remove: { label: 'delete GSLB', @@ -452,77 +452,82 @@ } }, - lbUnderGSLB: { + lbUnderGSLB: { id: 'lbUnderGSLB', type: 'select', - title: 'assigned load balancer rules', + title: 'assigned load balancing', listView: { section: 'lbUnderGSLB', id: 'lbUnderGSLB', - label: 'assigned load balancer rules', + label: 'assigned load balancing', fields: { - name: { label: 'label.name' }, + 'name': { label: 'label.name' }, publicport: { label: 'label.public.port' }, - privateport: { label: 'label.private.port' }, - algorithm: { label: 'label.algorithm' } + privateport: { label: 'label.private.port' }, + algorithm: { label: 'label.algorithm' } }, - dataProvider: function(args) { - var data = { - globalloadbalancerruleid: args.context.GSLB[0].id, - listAll: true - }; - $.ajax({ - url: createURL('listLoadBalancerRules'), - data: data, - success: function(json) { - var items = json.listloadbalancerrulesresponse.loadbalancerrule; - args.response.success({ - data: items - }); - } + dataProvider: function(args) { + var items = args.context.GSLB[0].loadbalancerrule; + args.response.success({ + data: items }); }, - actions: { + actions: { add: { - label: 'assign load balancer rule to GSLB', - messages: { - confirm: function(args) { - return 'Please confirm you want to assign load balancer rule to GSLB'; - }, + label: 'assign more load balancing', + messages: { notification: function(args) { - return 'assign load balancer rule to GSLB'; + return 'assign more load balancing'; } }, createForm: { - title: 'assign load balancer rule to GSLB', + title: 'assign more load balancing', fields: { loadbalancerrule: { - label: 'load balancer rule', + label: 'load balancing rule', select: function(args) { - var data = { - globalloadbalancerruleid: args.context.GSLB[0].id, - listAll: true - }; - $.ajax({ - url: createURL('listLoadBalancerRules'), - data: data, - success: function(json) { - var items = json.listloadbalancerrulesresponse.loadbalancerrule; - args.response.success({ - data: items, - descriptionField: 'name' - }); - } - }); + var data = { + globalloadbalancerruleid: args.context.GSLB[0].id, + listAll: true + }; + $.ajax({ + url: createURL('listLoadBalancerRules'), + data: data, + success: function(json) { + var allLbRules = json.listloadbalancerrulesresponse.loadbalancerrule; + var assignedLbRules = args.context.GSLB[0].loadbalancerrule; + var items = []; + if(allLbRules != null) { + for(var i = 0; i < allLbRules.length; i++) { + var isAssigned = false; + if(assignedLbRules != null) { + for(var k = 0; k < assignedLbRules.length; k++) { + if(allLbRules[i].id == assignedLbRules[k].id) { + isAssigned = true; + break; + } + } + } + if(isAssigned == false) { + items.push(allLbRules[i]); + } + } + } + args.response.success({ + data: items, + descriptionField: 'name' + }); + } + }); } } } }, action: function(args) { - var data = { - id: args.context.GSLB[0].id, - loadbalancerrulelist: args.data.loadbalancerrule - }; + var data = { + id: args.context.GSLB[0].id, + loadbalancerrulelist: args.data.loadbalancerrule + }; $.ajax({ url: createURL('assignToGlobalLoadBalancerRule'), data: data, @@ -547,16 +552,16 @@ }, detailView: { - name: 'load balancer rule details', + name: 'load balancing details', actions: { remove: { - label: 'remove load balancer rule from this GSLB', + label: 'remove load balancing from this GSLB', messages: { notification: function() { - return 'remove load balancer rule from GSLB'; + return 'remove load balancing from GSLB'; }, confirm: function() { - return 'Please confirm you want to remove load balancer rule from GSLB'; + return 'Please confirm you want to remove load balancing from GSLB'; } }, action: function(args) { From 48b82a6f91d9ef762a2a301d408ba72bc50a922a Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Wed, 24 Apr 2013 16:36:07 -0700 Subject: [PATCH 397/607] CLOUDSTACK-2120: mixed zone management - (1) extend listStoragePools API to to take in zonetype. (2) UI: populate Primary Storages list page with ones whose zonetype matches selected option in zone type dropdown on top menu. --- .../admin/storage/ListStoragePoolsCmd.java | 7 ++++ .../com/cloud/api/query/QueryManagerImpl.java | 5 +++ ui/scripts/system.js | 33 ++++++++++--------- 3 files changed, 29 insertions(+), 16 deletions(-) diff --git a/api/src/org/apache/cloudstack/api/command/admin/storage/ListStoragePoolsCmd.java b/api/src/org/apache/cloudstack/api/command/admin/storage/ListStoragePoolsCmd.java index 02b98037b2e..17adb18ecc8 100644 --- a/api/src/org/apache/cloudstack/api/command/admin/storage/ListStoragePoolsCmd.java +++ b/api/src/org/apache/cloudstack/api/command/admin/storage/ListStoragePoolsCmd.java @@ -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; } diff --git a/server/src/com/cloud/api/query/QueryManagerImpl.java b/server/src/com/cloud/api/query/QueryManagerImpl.java index ea260c37a89..6690b24ca69 100644 --- a/server/src/com/cloud/api/query/QueryManagerImpl.java +++ b/server/src/com/cloud/api/query/QueryManagerImpl.java @@ -1859,6 +1859,7 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { private Pair, Integer> searchForStoragePoolsInternal(ListStoragePoolsCmd cmd) { Long zoneId = _accountMgr.checkAccessAndSpecifyAuthority(UserContext.current().getCaller(), cmd.getZoneId()); + String zoneType = cmd.getZoneType(); Object id = cmd.getId(); Object name = cmd.getStoragePoolName(); Object path = cmd.getPath(); @@ -1878,6 +1879,7 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { sb.and("name", sb.entity().getName(), SearchCriteria.Op.LIKE); sb.and("path", sb.entity().getPath(), SearchCriteria.Op.EQ); sb.and("dataCenterId", sb.entity().getZoneId(), SearchCriteria.Op.EQ); + sb.and("dataCenterType", sb.entity().getZoneType(), SearchCriteria.Op.EQ); sb.and("podId", sb.entity().getPodId(), SearchCriteria.Op.EQ); sb.and("clusterId", sb.entity().getClusterId(), SearchCriteria.Op.EQ); sb.and("hostAddress", sb.entity().getHostAddress(), SearchCriteria.Op.EQ); @@ -1908,6 +1910,9 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { if (zoneId != null) { sc.setParameters("dataCenterId", zoneId); } + if (zoneType != null) { + sc.setParameters("dataCenterType", zoneType); + } if (pod != null) { sc.setParameters("podId", pod); } diff --git a/ui/scripts/system.js b/ui/scripts/system.js index 50dd66d4d69..8f07ee46251 100644 --- a/ui/scripts/system.js +++ b/ui/scripts/system.js @@ -258,24 +258,15 @@ primaryStorageCount: function(data) { $.ajax({ url: createURL('listStoragePools'), - data: { - page: 1, - pagesize: 1 //specifying pagesize as 1 because we don't need any embedded objects to be returned here. The only thing we need from API response is "count" property. - }, + data: { + page: 1, + pagesize: 1 //specifying pagesize as 1 because we don't need any embedded objects to be returned here. The only thing we need from API response is "count" property. + }, success: function(json) { - dataFns.secondaryStorageCount($.extend(data, { + dataFns.secondaryStorageCount($.extend(data, { primaryStorageCount: json.liststoragepoolsresponse.count ? json.liststoragepoolsresponse.count : 0 - })); - - //comment the 4 lines above and uncomment the following 4 lines if listHosts API still responds slowly. - - /* - dataFns.systemVmCount($.extend(data, { - primaryStorageCount: json.liststoragepoolsresponse.count ? - json.liststoragepoolsresponse.count : 0 - })); - */ + })); } }); }, @@ -5585,9 +5576,19 @@ var searchByArgs = args.filterBy.search.value.length ? '&name=' + args.filterBy.search.value : ''; + var data = { + page: args.page, + pageSize: pageSize, + listAll: true + }; + if(args.context.zoneType != null && args.context.zoneType.length > 0) { //Basic type or Advanced type + $.extend(data, { + zonetype: args.context.zoneType + }); + } $.ajax({ url: createURL('listStoragePools' + searchByArgs), - data: { page: args.page, pageSize: pageSize, listAll: true }, + data: data, success: function (json) { args.response.success({ data: json.liststoragepoolsresponse.storagepool }); }, From 7cef52122796414e18e5d23b1bcdb2caed93361f Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Wed, 24 Apr 2013 16:46:17 -0700 Subject: [PATCH 398/607] Add icon for 'change affinity' action --- ui/css/cloudstack3.css | 19 +++++++++++-------- ui/images/sprites.png | Bin 188552 -> 189677 bytes 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/ui/css/cloudstack3.css b/ui/css/cloudstack3.css index 5f916a67016..15190d446d9 100644 --- a/ui/css/cloudstack3.css +++ b/ui/css/cloudstack3.css @@ -11690,7 +11690,6 @@ div.ui-dialog div.autoscaler div.field-group div.form-container form div.form-it background-position: 0px -707px; } - .attach .icon, .attachISO .icon, .attachDisk .icon { @@ -11874,16 +11873,13 @@ div.ui-dialog div.autoscaler div.field-group div.form-container form div.form-it } .removeVlanRange .icon { - background-position: 1px -92px; } -.removeVlanRange:hover .icon{ - +.removeVlanRange:hover .icon { background-position: 1px -92px; } - .resize .icon, .updateResourceCount .icon { background-position: -167px -66px; @@ -11913,9 +11909,8 @@ div.ui-dialog div.autoscaler div.field-group div.form-container form div.form-it background-position: -168px -31px; } -.scaleUp .icon{ - background-position: -167px -66px; - +.scaleUp .icon { + background-position: -167px -66px; } .restoreVM:hover .icon, @@ -12047,6 +12042,14 @@ div.ui-dialog div.autoscaler div.field-group div.form-container form div.form-it background-position: -228px -646px; } +.changeAffinity .icon { + background-position: -264px -2px; +} + +.changeAffinity:hover .icon { + background-position: -263px -583px; +} + .label-hovered { cursor: pointer; color: #0000FF !important; diff --git a/ui/images/sprites.png b/ui/images/sprites.png index 03b01b32fa118795756d73db565d603096e3c7c3..ac7a276e091569406018ae03186bb4894c9c61c1 100644 GIT binary patch literal 189677 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

    r!WTTO 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�+J@JVoTuOO?!NCj>ypGDLu_O?XEow(d)_d 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 z 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 From f1bdae006ad9d9345a9f1707437b051b27c55492 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Wed, 24 Apr 2013 16:53:22 -0700 Subject: [PATCH 399/607] Add icons for 'add account,' 'release from account' --- ui/css/cloudstack3.css | 16 ++++++++++++++++ ui/images/sprites.png | Bin 189677 -> 192407 bytes 2 files changed, 16 insertions(+) diff --git a/ui/css/cloudstack3.css b/ui/css/cloudstack3.css index 15190d446d9..340b089c4e6 100644 --- a/ui/css/cloudstack3.css +++ b/ui/css/cloudstack3.css @@ -12050,6 +12050,22 @@ div.ui-dialog div.autoscaler div.field-group div.form-container form div.form-it background-position: -263px -583px; } +.releaseFromAccount .icon { + background-position: -230px -123px; +} + +.releaseFromAccount:hover .icon { + background-position: -229px -704px; +} + +.addAccount .icon { + background-position: -231px -96px; +} + +.addAccount:hover .icon { + background-position: -230px -677px; +} + .label-hovered { cursor: pointer; color: #0000FF !important; diff --git a/ui/images/sprites.png b/ui/images/sprites.png index ac7a276e091569406018ae03186bb4894c9c61c1..132588d10049a3d4058d35ba137015ac988fa27d 100644 GIT binary patch literal 192407 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 z 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�p8PyK1SrAsU9Zb+&BQd6Ky#R2kz91uPadNZ@nSTd_q_DaK3 zahV4Py>yDL!H|5YctPWxOG^qS0~xuQxxwb} zrH%#Hma}QIDMK@Duf4J59yhi$C1GJf!JtkEWZiGT-PE3kJ%^ckL8czCW)ZJZhg2B( zHU>b6BhQpH>$X{?98KH>wP`?dQYe1Nn~ruCYO}sh>)-1uk@}~=C}Bfe*pI&N(a@~k zzts1ZIvNbiTqJ!D5jP_vBar}FNWAgi&Xo6lWe3P6LVSGG6cmBTXFq(uF-mf4S-ENp zU*G=bwiC(`{lZa@w&Dr=?gkF)xL8sKq<5o>)bW>u!=nT+HSC0}(A_|>WB$Sfe)DJX zEv9N;+Y5Kh5&fcxz-YJ(|^~FFN$uv8qI(OQsy{D_W5IZTBy7*Sm(Q zpg3UbPdNetrY_TE2SXGvCO}3_&dayRgCgCs-}Cd))0vtjA2UvR1z zQYwj_zOKDqe`>|U!LjV_KbNqhJbooSkKLgO(pKWc>}27S`N(T-km=LDy4QZQ=e8O~ zi=w+bce`s`ff7Ij4^Z59;aT2$E3-9L+H5J|CAI}Dh7@l!E3{MF2@UY{?|o{c=wEp^ zl6h^2j&R{86jf%AWByeWlcjaQq7< zCZ@#SV{9ekQ#1PwE-`^p_k~Zc)bFmOt&GkS*H^lE7?MU-Lr<=anH`o<0aVH~5rLY}E;eBEx6vmJ%64@L zd~9fJ^7so4wN|yR&@klY`a6AC(?0AV0 z6=$Fs0|K|z5KyjWrnlezam>);FLotjNgB3R~b|I!0DKtd^;7amk(aHl=&;VD5E`UqW5BY$$K?`&Hc*>Qa$ z5?^OcN$G%oFSaY|K+UdaGJ%1Y!=^UF6*ER!xx5jx=^Z<|MD|duQtn8=j_QmB;#jb} z_ZJnxU}>C=H`g%_ljC5&o6!Jtmhs8SdTY>6Sqd}b6d>RiunXRUFexbi(n$IF zI}`NRQ#Egtg`6=dS`AN*$sFK(4ruu(4M{e9HjEpNZq(>ZAN?F~nxrW98E7ZJiWf9p7BVCkEcsLLoU`2RY=@Hl<5`JC zH&5?H5DGY$8^pM}?&A%5m3Odo%ycg7w762tHB2pQyUDD!|&;vq1hwgwu5n8zIrTXWW-zo5$_3QdTGHRY7}6K|w)P^FRSu zj5586sksc50dzYoN%Q>ergn7wI|Hj~S7&tBYnd`Y(g9_zo??R9dj2F*>%^M z06tDicpo;}c2BLvYBXZ=uSFj4!@nP~@r|8=&?dIwZ@}uC^oh5@zlZ*w2!>pZ-Q9Gl z(~A0^3WJXoz^BYg6BE?pzMp}6cw$U#C&6Fqd{d53q;YUQgz(@${ARD1ZZw-l@Upsd zDy+c9pxL1h=0z<51MD%r%9x$jH4jlkBg4PWF6&)4!!XoQlDgzs;I-fX?a0^bTKgw~ zYi!^mhk^~!jyVZew+b=!8fql_m6mUN@4cQY-fjNcOpZMVpYQu|^e}(zW9j`Hi;wrM zohvJQcUx}y-kfWd->vWOJj>4n?8!PFP8DEj$*kXdZ0T(&^}==GoVlkDmC4B5K2{nl zb6j!uN#G5g+j2i2|Ns5}yOmQ;H_EddJo4npmE!8}a$jrfXQT-9oquFv1D?U^nBK7K z%D(FAZ}K+p&%3*+Z(DSwZM7`OWoI7ldw1@zN^oz?H=%ss5a^zNb`eWu7BFmK{(C?w zLEr^zl&70xbX4}-vne{~KflQ_%T6_x)Si4YqVI9W@j{*3+omqvdg-NA!Plua42v|3 z3T0+1@H|%Fc%;CwC~K`4u=l$ISS?J=GUaJf=zDD8)x3gVq|x&MPl3^0x5mf?Nj;oT z!OICN3U7x0V*Fig^}V;p?~KHbNX^vvUh~u*PEni7*Y8@gMPz=c*cm#V$1`;;+muTU zQ?qZ#TOR0q95G#6G<01^iPV(W(|d2X&SMu_emOJeT(9)DU)eL+mo*e7sMY3v6}$<$ zEdW>&9B1GVkS>loJf{&jNc?WP#h>29GsU&GbGLr^dw0X@-*GMm-BM21U8J793bp7@ z`6Z{#TYGvtutuG${%2;JZc^sw&rZfBo|E$pdFzB#rXEPDs{LW~cMhn$l2&0jW|$Fs z=|e{&-_k2(3!b{x>2E$Z!&buh=Kaf=nf_dA1C%}P21_JVuLxcoG~juU6){5 zEUG8%oS=Gl)ywZj9N_3i^Sx0%GtpCZMOs+W@~E{TN6$Lf2R(+* zcnrKZ?bC1G8!PlLX#W2v>SzD*+XSrNr_0~`jq9PmE_WU944cQQ&p8@T1B<=@anqcy z3NQ3`$AL@7Vg{Z=4L6S5n8rJ;wXMojfOWH)%N0qcg|p_Sm$tpD}M8#>p;U> zDmr66Rx+%gR27`IcUOsPZ2xD5x`)B@cfGiM52#VxI&<-^BOl66GQN+B3kIHF-BNLr z4LsWhoI=06i5r+6;HwTepex~_tNwvg&!7^EO46h*V1T$0=lTY`($G~DL%=`bcmCTm YtQCG_bZUnHKLZeWy85}Sb4q9e0ENfp+5i9m literal 189677 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

    r!WTTO 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 Date: Thu, 25 Apr 2013 00:18:21 +0000 Subject: [PATCH 400/607] =?UTF-8?q?CLOUDSTACK-2138=20:=20add=20ca,=20de=5F?= =?UTF-8?q?DE,=20it=5FIT=20ja,=20ko=C3=A7KR,nb=5FNO=20pt=5FBR,=20ru=5FRU?= =?UTF-8?q?=20resource=20files=20for=20UI=20with=20ASCII=20with=20unicode?= =?UTF-8?q?=20encoding.=20(Merging=20for=204.1/Transifex,=20sync=20with=20?= =?UTF-8?q?transifex),=20add=20some=20languages=20in=20combo=20list=20on?= =?UTF-8?q?=20login=20page=20on=20UI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../classes/resources/messages_ca.properties | 306 ++ .../resources/messages_de_DE.properties | 747 +++++ .../resources/messages_it_IT.properties | 618 ++++ .../classes/resources/messages_ja.properties | 2909 ++++++++--------- .../resources/messages_ko_KR.properties | 2887 ++++++++-------- .../resources/messages_nb_NO.properties | 365 +++ .../resources/messages_pt_BR.properties | 2100 ++++++------ .../resources/messages_ru_RU.properties | 2892 ++++++++-------- 8 files changed, 7247 insertions(+), 5577 deletions(-) create mode 100644 client/WEB-INF/classes/resources/messages_ca.properties create mode 100644 client/WEB-INF/classes/resources/messages_de_DE.properties create mode 100644 client/WEB-INF/classes/resources/messages_it_IT.properties create mode 100644 client/WEB-INF/classes/resources/messages_nb_NO.properties diff --git a/client/WEB-INF/classes/resources/messages_ca.properties b/client/WEB-INF/classes/resources/messages_ca.properties new file mode 100644 index 00000000000..2d8e953419f --- /dev/null +++ b/client/WEB-INF/classes/resources/messages_ca.properties @@ -0,0 +1,306 @@ +# 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\:

    +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.
    Si us plau demaneu a l\\'administrador que us en crei un. +message.no.projects=No teniu cap projecte.
    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 diff --git a/client/WEB-INF/classes/resources/messages_de_DE.properties b/client/WEB-INF/classes/resources/messages_de_DE.properties new file mode 100644 index 00000000000..45812687d2f --- /dev/null +++ b/client/WEB-INF/classes/resources/messages_de_DE.properties @@ -0,0 +1,747 @@ +# 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 diff --git a/client/WEB-INF/classes/resources/messages_it_IT.properties b/client/WEB-INF/classes/resources/messages_it_IT.properties new file mode 100644 index 00000000000..c6bc2dba127 --- /dev/null +++ b/client/WEB-INF/classes/resources/messages_it_IT.properties @@ -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.management=Management\: Traffico di rete tra le risorse interne di CloudStack, incluso qualsiasi componente che comunichi con il Management Server, come ad esempio gli host e le VM di Sistema di CloudStack +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.

    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\:
    • 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
    • Immagini ISO - Immagini OS utilizzabili che possono anche essere non-bootable
    • Snapshot di volumi disco - copie salvate di dati delle VM utilizzabili per il recupero di dati o per la creazione di nuovi template
    +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.
    Si prega di chiedere la creazione di un nuovo progetto al proprio amministratore. +message.no.projects=Non si possiedono progetti.
    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.

    E\\' possibile anche spostare altri tipi di traffico sulla rete fisica in modalit\u00e0 drag and drop. +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\:

    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.

    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.


    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 diff --git a/client/WEB-INF/classes/resources/messages_ja.properties b/client/WEB-INF/classes/resources/messages_ja.properties index 977c0109f7b..7873a2de9a3 100644 --- a/client/WEB-INF/classes/resources/messages_ja.properties +++ b/client/WEB-INF/classes/resources/messages_ja.properties @@ -5,9 +5,9 @@ # 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 @@ -15,1505 +15,1444 @@ # specific language governing permissions and limitations # under the License. - -#new labels (begin) ********************************************************************************************** - - -#new labels (end) ************************************************************************************************ - - -#modified labels (begin) ***************************************************************************************** - - -#modified labels (end) ******************************************************************************************* - -label.configure.network.ACLs=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ACL ã®æ§‹æˆ -label.network.ACLs=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ACL -label.add.network.ACL=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ACL ã®è¿½åŠ  -label.private.Gateway=プライベート ゲートウェイ -label.VPC.router.details=VPC ルーターã®è©³ç´° -label.VMs.in.tier=階層内㮠VM - -message.zoneWizard.enable.local.storage=警告: ã“ã®ã‚¾ãƒ¼ãƒ³ã®ãƒ­ãƒ¼ã‚«ãƒ« ストレージを有効ã«ã™ã‚‹å ´åˆã¯ã€ã‚·ã‚¹ãƒ†ãƒ  VM ã®èµ·å‹•場所ã«å¿œã˜ã¦æ¬¡ã®æ“作ãŒå¿…è¦ã§ã™ã€‚

    1. システム VM をプライマリ ストレージã§èµ·å‹•ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã¯ã€ãƒ—ライマリ ストレージを作æˆã—ãŸå¾Œã§ã‚¾ãƒ¼ãƒ³ã«è¿½åŠ ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ã¾ãŸã€ç„¡åŠ¹çŠ¶æ…‹ã®ã‚¾ãƒ¼ãƒ³ã‚’èµ·å‹•ã™ã‚‹å¿…è¦ã‚‚ã‚りã¾ã™ã€‚

    2. システム VM をローカル ストレージã§èµ·å‹•ã™ã‚‹å¿…è¦ãŒã‚ã‚‹å ´åˆã¯ã€system.vm.use.local.storage ã‚’ true ã«è¨­å®šã—ã¦ã‹ã‚‰ã‚¾ãƒ¼ãƒ³ã‚’有効ã«ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚


    続行ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.local.storage.enabled=ローカル ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ã¯æœ‰åйã§ã™ -label.tier.details=階層ã®è©³ç´° -label.edit.tags=ã‚¿ã‚°ã®ç·¨é›† -label.network.rate.megabytes=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯é€Ÿåº¦ (MB/ç§’) -label.action.enable.physical.network=物ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®æœ‰åŠ¹åŒ– -label.action.disable.physical.network=物ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®ç„¡åŠ¹åŒ– -message.action.enable.physical.network=ã“ã®ç‰©ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’有効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.disable.physical.network=ã“ã®ç‰©ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’無効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? - -label.select.tier=階層ã®é¸æŠž -label.add.ACL=ACL ã®è¿½åŠ  -label.remove.ACL=ACL ã®å‰Šé™¤ -label.tier=階層 -label.network.ACL=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ACL -label.network.ACL.total=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ACL åˆè¨ˆ -label.add.new.gateway=æ–°ã—ã„ゲートウェイã®è¿½åŠ  -message.add.new.gateway.to.vpc=ã“ã® VPC ã«æ–°ã—ã„ゲートウェイを追加ã™ã‚‹ãŸã‚ã®æƒ…報を指定ã—ã¦ãã ã•ã„。 -label.delete.gateway=ゲートウェイã®å‰Šé™¤ -message.delete.gateway=ã“ã®ã‚²ãƒ¼ãƒˆã‚¦ã‚§ã‚¤ã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.CIDR.of.destination.network=宛先ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã® CIDR -label.add.route=ルートã®è¿½åŠ  -label.add.static.route=é™çš„ルートã®è¿½åŠ  -label.remove.static.route=é™çš„ルートã®å‰Šé™¤ -label.site.to.site.VPN=サイト間 VPN -label.add.VPN.gateway=VPN ゲートウェイã®è¿½åŠ  -message.add.VPN.gateway=VPN ゲートウェイを追加ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.VPN.gateway=VPN ゲートウェイ -label.delete.VPN.gateway=VPN ゲートウェイã®å‰Šé™¤ -message.delete.VPN.gateway=ã“ã® VPN ゲートウェイを削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.VPN.connection=VPN 接続 -label.IPsec.preshared.key=IPsec 事å‰å…±æœ‰ã‚­ãƒ¼ -label.IKE.policy=IKE ãƒãƒªã‚·ãƒ¼ -label.ESP.policy=ESP ãƒãƒªã‚·ãƒ¼ -label.create.VPN.connection=VPN 接続ã®ä½œæˆ -label.VPN.customer.gateway=VPN カスタマー ゲートウェイ -label.CIDR.list=CIDR 一覧 -label.IKE.lifetime=IKE 有効期間 (ç§’) -label.ESP.lifetime=ESP 有効期間 (ç§’) -label.dead.peer.detection=åœæ­¢ãƒ”ã‚¢ã®æ¤œå‡º -label.reset.VPN.connection=VPN 接続ã®ãƒªã‚»ãƒƒãƒˆ -message.reset.VPN.connection=VPN 接続をリセットã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.delete.VPN.connection=VPN 接続ã®å‰Šé™¤ -message.delete.VPN.connection=VPN 接続を削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.add.new.tier=æ–°ã—ã„階層ã®è¿½åŠ  -label.add.VM.to.tier=階層ã¸ã® VM ã®è¿½åŠ  -label.remove.tier=階層ã®å‰Šé™¤ - -label.local.storage.enabled=ローカル ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ã¯æœ‰åйã§ã™ -label.associated.network=関連ã¥ã‘られãŸãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ -label.add.port.forwarding.rule=ãƒãƒ¼ãƒˆè»¢é€è¦å‰‡ã®è¿½åŠ  -label.dns=DNS - -label.vpc=VPC -label.vpc.id=VPC ID -label.tier=階層 -label.add.vpc=VPC ã®è¿½åŠ  -label.super.cidr.for.guest.networks=ゲスト ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®ã‚¹ãƒ¼ãƒ‘ー CIDR -label.DNS.domain.for.guest.networks=ゲスト ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã® DNS ドメイン -label.configure.vpc=VPC ã®æ§‹æˆ -label.edit.vpc=VPC ã®ç·¨é›† -label.restart.vpc=VPC ã®å†èµ·å‹• -message.restart.vpc=VPC ã‚’å†èµ·å‹•ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.remove.vpc=VPC ã®å‰Šé™¤ -message.remove.vpc=VPC を削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.vpn.customer.gateway=VPN カスタマー ゲートウェイ -label.add.vpn.customer.gateway=VPN カスタマー ゲートウェイã®è¿½åŠ  -label.IKE.encryption=IKE æš—å·åŒ– -label.IKE.hash=IKE ãƒãƒƒã‚·ãƒ¥ -label.IKE.DH=IKE DH -label.ESP.encryption=ESP æš—å·åŒ– -label.ESP.hash=ESP ãƒãƒƒã‚·ãƒ¥ -label.perfect.forward.secrecy=Perfect Forward Secrecy -label.IKE.lifetime=IKE 有効期間 (ç§’) -label.ESP.lifetime=ESP 有効期間 (ç§’) -label.dead.peer.detection=åœæ­¢ãƒ”ã‚¢ã®æ¤œå‡º -label.delete.VPN.customer.gateway=VPN カスタマー ゲートウェイã®å‰Šé™¤ -message.delete.VPN.customer.gateway=ã“ã® VPN カスタマー ゲートウェイを削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? - -label.network.domain.text=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ドメイン -label.memory.mb=メモリ (MB) -label.cpu.mhz=CPU (MHz) -message.action.remove.host=ã“ã®ãƒ›ã‚¹ãƒˆã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? - -message.action.reboot.router=ã“ã®ä»®æƒ³ãƒ«ãƒ¼ã‚¿ãƒ¼ã§æä¾›ã™ã‚‹ã™ã¹ã¦ã®ã‚µãƒ¼ãƒ“スãŒä¸­æ–­ã•れã¾ã™ã€‚ã“ã®ãƒ«ãƒ¼ã‚¿ãƒ¼ã‚’å†èµ·å‹•ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.stop.router=ã“ã®ä»®æƒ³ãƒ«ãƒ¼ã‚¿ãƒ¼ã§æä¾›ã™ã‚‹ã™ã¹ã¦ã®ã‚µãƒ¼ãƒ“スãŒä¸­æ–­ã•れã¾ã™ã€‚ã“ã®ãƒ«ãƒ¼ã‚¿ãƒ¼ã‚’åœæ­¢ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.restart.network=ã“ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã§æä¾›ã™ã‚‹ã™ã¹ã¦ã®ã‚µãƒ¼ãƒ“スãŒä¸­æ–­ã•れã¾ã™ã€‚ã“ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’å†èµ·å‹•ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? - - -label.ipaddress=IP アドレス -label.vcdcname=vCenter DC å -label.vcipaddress=vCenter IP アドレス -label.vsmctrlvlanid=コントロール VLAN ID -label.vsmpktvlanid=パケット VLAN ID -label.vsmstoragevlanid=ストレージ VLAN ID -label.nexusVswitch=Nexus 1000V -label.action.delete.nexusVswitch=Nexus 1000V ã®å‰Šé™¤ -label.action.enable.nexusVswitch=Nexus 1000V ã®æœ‰åŠ¹åŒ– -label.action.disable.nexusVswitch=Nexus 1000V ã®ç„¡åŠ¹åŒ– -label.action.list.nexusVswitch=Nexus 1000V ã®ä¸€è¦§è¡¨ç¤º -message.action.delete.nexusVswitch=ã“ã® Nexus 1000V を削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.enable.nexusVswitch=ã“ã® Nexus 1000V を有効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.disable.nexusVswitch=ã“ã® Nexus 1000V を無効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.specify.url=URL を指定ã—ã¦ãã ã•ã„ -label.select.instance.to.attach.volume.to=ボリュームをアタッãƒã™ã‚‹ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’é¸æŠžã—ã¦ãã ã•ã„ -label.upload=アップロード -label.upload.volume=ボリュームã®ã‚¢ãƒƒãƒ—ロード -label.virtual.routers=仮想ルーター -label.primary.storage.count=プライマリ ストレージ プール -label.secondary.storage.count=セカンダリ ストレージ プール -label.number.of.system.vms=システム VM æ•° -label.number.of.virtual.routers=仮想ルーター数 -label.action.register.iso=ISO ã®ç™»éŒ² -label.isolation.method=分離方法 -label.action.register.template=テンプレートã®ç™»éŒ² -label.checksum=MD5 ãƒã‚§ãƒƒã‚¯ã‚µãƒ  -label.vpn=VPN -label.vlan=VLAN - - -label.management.ips=ç®¡ç† IP アドレス -label.devices=デãƒã‚¤ã‚¹ -label.rules=è¦å‰‡ -label.traffic.label=トラフィック ラベル -label.vm.state=VM ã®çŠ¶æ…‹ -message.setup.physical.network.during.zone.creation.basic=基本ゾーンを追加ã™ã‚‹ã¨ãã¯ã€ãƒã‚¤ãƒ‘ーãƒã‚¤ã‚¶ãƒ¼ä¸Šã® NIC ã«å¯¾å¿œã™ã‚‹ 1 ã¤ã®ç‰©ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’セットアップã§ãã¾ã™ã€‚ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã¯ã„ãã¤ã‹ã®ç¨®é¡žã®ãƒˆãƒ©ãƒ•ィックをä¼é€ã—ã¾ã™ã€‚

    物ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã«ã»ã‹ã®ãƒˆãƒ©ãƒ•ィックã®ç¨®é¡žã‚’ドラッグ アンド ドロップã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ -label.domain.router=ドメイン ルーター -label.console.proxy=コンソール プロキシ -label.secondary.storage.vm=セカンダリ ストレージ VM -label.add.netScaler.device=Netscaler デãƒã‚¤ã‚¹ã®è¿½åŠ  -label.add.F5.device=F5 デãƒã‚¤ã‚¹ã®è¿½åŠ  -label.add.SRX.device=SRX デãƒã‚¤ã‚¹ã®è¿½åŠ  -label.account.and.security.group=アカウントã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ グループ -label.fetch.latest=最新情報ã®å–å¾— -label.system.offering=システム オファリング -message.validate.instance.name=インスタンスå㯠63 æ–‡å­—ä»¥å†…ã§æŒ‡å®šã—ã¦ãã ã•ã„。ASCII 文字㮠a~zã€A~Zã€æ•°å­—ã® 0~9ã€ãŠã‚ˆã³ãƒã‚¤ãƒ•ンã®ã¿ã‚’使用ã§ãã¾ã™ã€‚文字ã§å§‹ã¾ã‚Šã€æ–‡å­—ã¾ãŸã¯æ•°å­—ã§çµ‚ã‚ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ - - -label.isolated.networks=分離ã•れãŸãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ -label.latest.events=最新イベント -state.Enabled=有効 -label.system.wide.capacity=システム全体ã®å‡¦ç†èƒ½åŠ› -label.network.service.providers=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ サービス プロãƒã‚¤ãƒ€ãƒ¼ -message.launch.zone=ゾーンを起動ã™ã‚‹æº–å‚™ãŒã§ãã¾ã—ãŸã€‚æ¬¡ã®æ‰‹é †ã«é€²ã‚“ã§ãã ã•ã„。 -error.unable.to.reach.management.server=管ç†ã‚µãƒ¼ãƒãƒ¼ã¨é€šä¿¡ã§ãã¾ã›ã‚“ -label.internal.name=内部å -message.configure.all.traffic.types=複数ã®ç‰©ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãŒã‚りã¾ã™ã€‚[編集] をクリックã—ã¦ãƒˆãƒ©ãƒ•ィックã®ç¨®é¡žã”ã¨ã«ãƒ©ãƒ™ãƒ«ã‚’æ§‹æˆã—ã¦ãã ã•ã„。 -message.edit.traffic.type=ã“ã®ãƒˆãƒ©ãƒ•ィックã®ç¨®é¡žã«é–¢é€£ä»˜ã‘るトラフィック ラベルを指定ã—ã¦ãã ã•ã„。 -label.edit.traffic.type=トラフィックã®ç¨®é¡žã®ç·¨é›† -label.label=ラベル -label.max.networks=最大ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯æ•° -error.invalid.username.password=無効ãªãƒ¦ãƒ¼ã‚¶ãƒ¼åã¾ãŸã¯ãƒ‘スワード -message.enabling.security.group.provider=セキュリティ グループ プロãƒã‚¤ãƒ€ãƒ¼ã‚’有効ã«ã—ã¦ã„ã¾ã™ -message.adding.Netscaler.provider=Netscaler プロãƒã‚¤ãƒ€ãƒ¼ã‚’追加ã—ã¦ã„ã¾ã™ -message.creating.guest.network=ゲスト ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’作æˆã—ã¦ã„ã¾ã™ -label.action.delete.physical.network=物ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®å‰Šé™¤ -message.action.delete.physical.network=ã“ã®ç‰©ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.installWizard.copy.whatIsAHost=ホストã¯å˜ä¸€ã®ã‚³ãƒ³ãƒ”ューターã§ã€ã‚²ã‚¹ãƒˆä»®æƒ³ãƒžã‚·ãƒ³ã‚’実行ã™ã‚‹ã‚³ãƒ³ãƒ”ューティング リソースをæä¾›ã—ã¾ã™ã€‚ベア メタル ホストを除ã„ã¦ã€å„ホストã«ã¯ã‚²ã‚¹ãƒˆä»®æƒ³ãƒžã‚·ãƒ³ã‚’管ç†ã™ã‚‹ãŸã‚ã®ãƒã‚¤ãƒ‘ーãƒã‚¤ã‚¶ãƒ¼ ソフトウェアをインストールã—ã¾ã™ã€‚ベア メタル ホストã«ã¤ã„ã¦ã¯ã€ã€Žã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã‚¬ã‚¤ãƒ‰ä¸Šç´šç·¨ã€ã§ç‰¹æ®Šä¾‹ã¨ã—ã¦èª¬æ˜Žã—ã¾ã™ã€‚ãŸã¨ãˆã°ã€KVM ãŒæœ‰åŠ¹ãª Linux サーãƒãƒ¼ã€Citrix XenServer ãŒå‹•作ã™ã‚‹ã‚µãƒ¼ãƒãƒ¼ã€ãŠã‚ˆã³ ESXi サーãƒãƒ¼ãŒãƒ›ã‚¹ãƒˆã§ã™ã€‚基本インストールã§ã¯ã€XenServer ã¾ãŸã¯ KVM を実行ã™ã‚‹å˜ä¸€ã®ãƒ›ã‚¹ãƒˆã‚’使用ã—ã¾ã™ã€‚

    ホスト㯠CloudStack™ ç’°å¢ƒå†…ã®æœ€å°ã®çµ„ç¹”å˜ä½ã§ã™ã€‚ホストã¯ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼ã«å«ã¾ã‚Œã€ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼ã¯ãƒãƒƒãƒ‰ã«å«ã¾ã‚Œã€ãƒãƒƒãƒ‰ã¯ã‚¾ãƒ¼ãƒ³ã«å«ã¾ã‚Œã¾ã™ã€‚ - - -label.add.compute.offering=コンピューティング オファリングã®è¿½åŠ  -label.compute.offering=コンピューティング オファリング -label.compute.offerings=コンピューティング オファリング -label.select.offering=オファリングã®é¸æŠž -label.menu.infrastructure=インフラストラクãƒãƒ£ -label.sticky.tablesize=テーブル サイズ -label.sticky.expire=失効 -label.sticky.cookie-name=Cookie å -label.sticky.mode=モード -label.sticky.length=é•·ã• -label.sticky.holdtime=ä¿æŒæ™‚é–“ -label.sticky.request-learn=ラーニングã®è¦æ±‚ -label.sticky.prefix=プレフィックス -label.sticky.nocache=キャッシュãªã— -label.sticky.indirect=間接 -label.sticky.postonly=ãƒã‚¹ãƒˆã®ã¿ -label.sticky.domain=ドメイン -state.Allocating=割り当ã¦ä¸­ -state.Migrating=移行中 -error.please.specify.physical.network.tags=ã“ã®ç‰©ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®ã‚¿ã‚°ã‚’指定ã—ãªã‘れã°ã€ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ オファリングã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。 - - -state.Stopping=åœæ­¢ã—ã¦ã„ã¾ã™ -message.add.load.balancer.under.ip=è² è·åˆ†æ•£è¦å‰‡ãŒæ¬¡ã® IP アドレスã«å¯¾ã—ã¦è¿½åŠ ã•れã¾ã—ãŸ: -message.select.instance=ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’é¸æŠžã—ã¦ãã ã•ã„。 -label.select=é¸æŠž -label.select.vm.for.static.nat=é™çš„ NAT 用 VM ã®é¸æŠž -label.select.instance=インスタンスã®é¸æŠž -label.nat.port.range=NAT ãƒãƒ¼ãƒˆã®ç¯„囲 -label.static.nat.vm.details=é™çš„ NAT VM ã®è©³ç´° -label.edit.lb.rule=è² è·åˆ†æ•£è¦å‰‡ã®ç·¨é›† -message.migrate.instance.to.host=別ã®ãƒ›ã‚¹ãƒˆã«ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’移行ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.migrate.instance.to.host=別ã®ãƒ›ã‚¹ãƒˆã¸ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®ç§»è¡Œ -message.migrate.instance.to.ps=別ã®ãƒ—ライマリ ストレージã«ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’移行ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.migrate.instance.to.ps=別ã®ãƒ—ライマリ ストレージã¸ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®ç§»è¡Œ -label.corrections.saved=接続ãŒä¿å­˜ã•れã¾ã—㟠-message.installWizard.copy.whatIsSecondaryStorage=セカンダリ ストレージã¯ã‚¾ãƒ¼ãƒ³ã¨é–¢é€£ä»˜ã‘ã‚‰ã‚Œã€æ¬¡ã®é …目を格ç´ã—ã¾ã™ã€‚
    • テンプレート - VM ã®èµ·å‹•ã«ä½¿ç”¨ã§ãã‚‹ OS イメージã§ã€ã‚¢ãƒ—リケーションã®ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãªã©è¿½åŠ ã®æ§‹æˆã‚’å«ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
    • ISO イメージ - èµ·å‹•å¯èƒ½ã¾ãŸã¯èµ·å‹•ä¸å¯ã® OS イメージã§ã™ã€‚
    • ディスク ボリュームã®ã‚¹ãƒŠãƒƒãƒ—ショット - VM データã®ä¿å­˜ã‚³ãƒ”ーã§ã™ã€‚データã®å¾©å…ƒã¾ãŸã¯æ–°ã—ã„テンプレートã®ä½œæˆã«ä½¿ç”¨ã§ãã¾ã™ã€‚
    -message.installWizard.copy.whatIsPrimaryStorage=CloudStack™ ã®ã‚¯ãƒ©ã‚¦ãƒ‰ インフラストラクãƒãƒ£ã§ã¯ã€ãƒ—ライマリ ストレージã¨ã‚»ã‚«ãƒ³ãƒ€ãƒª ストレージ㮠2 種類ã®ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ã‚’使用ã—ã¾ã™ã€‚ã©ã¡ã‚‰ã®ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ã«ã‚‚ã€iSCSIã€NFS サーãƒãƒ¼ã€ã¾ãŸã¯ãƒ­ãƒ¼ã‚«ãƒ« ディスクを使用ã§ãã¾ã™ã€‚

    プライマリ ストレージã¯ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼ã«é–¢é€£ä»˜ã‘られã€ãã®ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼å†…ã®ãƒ›ã‚¹ãƒˆã§å‹•作ã™ã‚‹ã™ã¹ã¦ã® VM ã®å„ゲスト VM ã®ãƒ‡ã‚£ã‚¹ã‚¯ ボリュームを格ç´ã—ã¾ã™ã€‚通常ã€ãƒ—ライマリ ストレージ サーãƒãƒ¼ã¯ãƒ›ã‚¹ãƒˆã®è¿‘ãã«è¨­ç½®ã—ã¾ã™ã€‚ -message.installWizard.copy.whatIsACluster=クラスターã¯ãƒ›ã‚¹ãƒˆã‚’グループ化ã™ã‚‹æ–¹æ³•ã§ã™ã€‚1 ã¤ã®ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼å†…ã®ãƒ›ã‚¹ãƒˆã¯ã™ã¹ã¦åŒä¸€ã®ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ã‹ã‚‰æ§‹æˆã•れã€åŒã˜ãƒã‚¤ãƒ‘ーãƒã‚¤ã‚¶ãƒ¼ã‚’実行ã—ã€åŒã˜ã‚µãƒ–ãƒãƒƒãƒˆä¸Šã«ã‚りã€åŒã˜å…±æœ‰ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ã«ã‚¢ã‚¯ã‚»ã‚¹ã—ã¾ã™ã€‚åŒã˜ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼å†…ã®ãƒ›ã‚¹ãƒˆé–“ã§ã¯ã€ãƒ¦ãƒ¼ã‚¶ãƒ¼ã¸ã®ã‚µãƒ¼ãƒ“スを中断ã›ãšã«ã€ä»®æƒ³ãƒžã‚·ãƒ³ インスタンスをライブ マイグレーションã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚クラスター㯠CloudStack™ 環境内㮠3 番目ã«å¤§ããªçµ„ç¹”å˜ä½ã§ã™ã€‚クラスターã¯ãƒãƒƒãƒ‰ã«å«ã¾ã‚Œã€ãƒãƒƒãƒ‰ã¯ã‚¾ãƒ¼ãƒ³ã«å«ã¾ã‚Œã¾ã™ã€‚

    CloudStack™ ã§ã¯ 1 ã¤ã®ã‚¯ãƒ©ã‚¦ãƒ‰ç’°å¢ƒã«è¤‡æ•°ã®ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼ã‚’設定ã§ãã¾ã™ãŒã€åŸºæœ¬ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã§ã¯ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼ã¯ 1 ã¤ã§ã™ã€‚ -message.installWizard.copy.whatIsAPod=通常ã€1 ã¤ã®ãƒãƒƒãƒ‰ã¯å˜ä¸€ã®ãƒ©ãƒƒã‚¯ã‚’表ã—ã¾ã™ã€‚åŒã˜ãƒãƒƒãƒ‰å†…ã®ãƒ›ã‚¹ãƒˆã¯åŒã˜ã‚µãƒ–ãƒãƒƒãƒˆã«å«ã¾ã‚Œã¾ã™ã€‚

    ãƒãƒƒãƒ‰ã¯ CloudStack™ 環境内㮠2 番目ã«å¤§ããªçµ„ç¹”å˜ä½ã§ã™ã€‚ãƒãƒƒãƒ‰ã¯ã‚¾ãƒ¼ãƒ³ã«å«ã¾ã‚Œã¾ã™ã€‚å„ゾーン㯠1 ã¤ä»¥ä¸Šã®ãƒãƒƒãƒ‰ã‚’å«ã‚€ã“ã¨ãŒã§ãã¾ã™ã€‚基本インストールã§ã¯ã€ã‚¾ãƒ¼ãƒ³å†…ã®ãƒãƒƒãƒ‰ã¯ 1 ã¤ã§ã™ã€‚ -message.installWizard.copy.whatIsAZone=ゾーン㯠CloudStack™ ç’°å¢ƒå†…ã®æœ€å¤§ã®çµ„ç¹”å˜ä½ã§ã™ã€‚1 ã¤ã®ãƒ‡ãƒ¼ã‚¿ã‚»ãƒ³ã‚¿ãƒ¼å†…ã«è¤‡æ•°ã®ã‚¾ãƒ¼ãƒ³ã‚’設定ã§ãã¾ã™ãŒã€é€šå¸¸ã€ã‚¾ãƒ¼ãƒ³ã¯å˜ä¸€ã®ãƒ‡ãƒ¼ã‚¿ã‚»ãƒ³ã‚¿ãƒ¼ã«ç›¸å½“ã—ã¾ã™ã€‚インフラストラクãƒãƒ£ã‚’ゾーンã«çµ„織化ã™ã‚‹ã¨ã€ã‚¾ãƒ¼ãƒ³ã‚’物ç†çš„ã«åˆ†é›¢ã—ã¦å†—長化ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ãŸã¨ãˆã°ã€å„ゾーンã«é›»æºã¨ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ アップリンクをé…å‚™ã—ã¾ã™ã€‚å¿…é ˆã§ã¯ã‚りã¾ã›ã‚“ãŒã€ã‚¾ãƒ¼ãƒ³ã¯é éš”地ã«åˆ†æ•£ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ -message.installWizard.copy.whatIsCloudStack=CloudStack™ ã¯ã‚³ãƒ³ãƒ”ューティング リソースをプールã™ã‚‹ã‚½ãƒ•トウェア プラットフォームã§ã€ãƒ‘ブリックã€ãƒ—ライベートã€ãŠã‚ˆã³ãƒã‚¤ãƒ–リッド㮠Infrastructure as a Service (IaaS) クラウドを構築ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚CloudStack™ を使用ã—ã¦ã€ã‚¯ãƒ©ã‚¦ãƒ‰ インフラストラクãƒãƒ£ã‚’æ§‹æˆã™ã‚‹ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã€ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ã€ãŠã‚ˆã³ã‚³ãƒ³ãƒ”ューティング ノードを管ç†ã—ã€ã‚¯ãƒ©ã‚¦ãƒ‰ コンピューティング環境を展開ã€ç®¡ç†ã€ãŠã‚ˆã³æ§‹æˆã—ã¾ã™ã€‚

    CloudStack™ ã¯ã‚³ãƒ¢ãƒ‡ã‚£ãƒ†ã‚£åŒ–ã—ãŸãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ä¸Šã§å‹•作ã™ã‚‹å€‹åˆ¥ã®ä»®æƒ³ãƒžã‚·ãƒ³ イメージを超ãˆã¦æ‹¡å¼µã™ã‚‹ã“ã¨ãŒã§ãã€ç°¡å˜ãªè¨­å®šã§å‹•作ã™ã‚‹ã‚¯ãƒ©ã‚¦ãƒ‰ インフラストラクãƒãƒ£ã®ã‚½ãƒ•トウェア スタックã«ã‚ˆã£ã¦ã€ä»®æƒ³ãƒ‡ãƒ¼ã‚¿ã‚»ãƒ³ã‚¿ãƒ¼ã¤ã¾ã‚Šå¤šå±¤åž‹ã®ãƒžãƒ«ãƒãƒ†ãƒŠãƒ³ãƒˆ クラウド アプリケーションをサービスã¨ã—ã¦æ§‹ç¯‰ã—ã€å±•é–‹ã—ã€ç®¡ç†ã™ã‚‹ãŸã‚ã«ä¸å¯æ¬ ãªã‚³ãƒ³ãƒãƒ¼ãƒãƒ³ãƒˆãŒã™ã¹ã¦æä¾›ã•れã¾ã™ã€‚オープン ソース ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã¨ãƒ—レミアム ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ä¸¡æ–¹ãŒæä¾›ã•れã¾ã™ãŒã€ã‚ªãƒ¼ãƒ—ン ソース ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ã‚‚ã»ã¨ã‚“ã©ã®æ©Ÿèƒ½ã‚’使用ã§ãã¾ã™ã€‚ -message.installWizard.tooltip.addSecondaryStorage.path=ä¸Šã«æŒ‡å®šã—ãŸã‚µãƒ¼ãƒãƒ¼ã«å­˜åœ¨ã™ã‚‹ã€ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã•れãŸãƒ‘スã§ã™ã€‚ -message.installWizard.tooltip.addSecondaryStorage.nfsServer=セカンダリ ストレージをホストã™ã‚‹ NFS サーãƒãƒ¼ã® IP アドレスã§ã™ã€‚ -message.installWizard.tooltip.addPrimaryStorage.path=(NFS ã®å ´åˆ) サーãƒãƒ¼ã‹ã‚‰ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã•れãŸãƒ‘スã§ã™ã€‚(SharedMountPoint ã®å ´åˆ) パスã§ã™ã€‚KVM ã§ã¯ã“ã®ãƒ—ライマリ ストレージãŒãƒžã‚¦ãƒ³ãƒˆã•れるå„ホスト上ã®ãƒ‘スã§ã™ã€‚ãŸã¨ãˆã°ã€/mnt/primary ã§ã™ã€‚ -message.installWizard.tooltip.addPrimaryStorage.server=(NFSã€iSCSIã€ã¾ãŸã¯ PreSetup ã®å ´åˆ) ストレージ デãƒã‚¤ã‚¹ã® IP アドレスã¾ãŸã¯ DNS åã§ã™ã€‚ -message.installWizard.tooltip.addPrimaryStorage.name=ストレージ デãƒã‚¤ã‚¹ã®åå‰ã§ã™ã€‚ -message.installWizard.tooltip.addHost.password=XenServer å´ã§æŒ‡å®šã—ãŸã€ä¸Šã®ãƒ¦ãƒ¼ã‚¶ãƒ¼åã«å¯¾ã™ã‚‹ãƒ‘スワードã§ã™ã€‚ -message.installWizard.tooltip.addHost.username=通常㯠root ã§ã™ã€‚ -message.installWizard.tooltip.addHost.hostname=ホスト㮠DNS åã¾ãŸã¯ IP アドレスã§ã™ã€‚ -message.installWizard.tooltip.addCluster.name=クラスターã®åå‰ã§ã™ã€‚CloudStack ã§ä½¿ç”¨ã•れã¦ã„ãªã„ã€ä»»æ„ã®ãƒ†ã‚­ã‚¹ãƒˆã‚’指定ã§ãã¾ã™ã€‚ -message.installWizard.tooltip.addPod.reservedSystemEndIp=ã“れã¯ã€ã‚»ã‚«ãƒ³ãƒ€ãƒª ストレージ VM ãŠã‚ˆã³ã‚³ãƒ³ã‚½ãƒ¼ãƒ« プロキシ VM を管ç†ã™ã‚‹ãŸã‚ã« CloudStack ã§ä½¿ç”¨ã™ã‚‹ã€ãƒ—ライベート ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯å†…ã® IP アドレスã®ç¯„囲ã§ã™ã€‚ã“れら㮠IP アドレスã¯ã‚³ãƒ³ãƒ”ューティング サーãƒãƒ¼ã¨åŒã˜ã‚µãƒ–ãƒãƒƒãƒˆã‹ã‚‰å‰²ã‚Šå½“ã¦ã¾ã™ã€‚ -message.installWizard.tooltip.addPod.reservedSystemStartIp=ã“れã¯ã€ã‚»ã‚«ãƒ³ãƒ€ãƒª ストレージ VM ãŠã‚ˆã³ã‚³ãƒ³ã‚½ãƒ¼ãƒ« プロキシ VM を管ç†ã™ã‚‹ãŸã‚ã« CloudStack ã§ä½¿ç”¨ã™ã‚‹ã€ãƒ—ライベート ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯å†…ã® IP アドレスã®ç¯„囲ã§ã™ã€‚ã“れら㮠IP アドレスã¯ã‚³ãƒ³ãƒ”ューティング サーãƒãƒ¼ã¨åŒã˜ã‚µãƒ–ãƒãƒƒãƒˆã‹ã‚‰å‰²ã‚Šå½“ã¦ã¾ã™ã€‚ -message.installWizard.tooltip.addPod.reservedSystemNetmask=ゲストã®ä½¿ç”¨ã™ã‚‹ã‚µãƒ–ãƒãƒƒãƒˆä¸Šã§ä½¿ç”¨ã•れるãƒãƒƒãƒˆãƒžã‚¹ã‚¯ã§ã™ã€‚ -message.installWizard.tooltip.addPod.reservedSystemGateway=ã“ã®ãƒãƒƒãƒ‰å†…ã®ãƒ›ã‚¹ãƒˆã®ã‚²ãƒ¼ãƒˆã‚¦ã‚§ã‚¤ã§ã™ã€‚ -message.installWizard.tooltip.addPod.name=ãƒãƒƒãƒ‰ã®åå‰ã§ã™ã€‚ -message.installWizard.tooltip.configureGuestTraffic.guestEndIp=ã“ã®ã‚¾ãƒ¼ãƒ³ã®ã‚²ã‚¹ãƒˆã«å‰²ã‚Šå½“ã¦ã‚‹ã“ã¨ãŒã§ãã‚‹ IP アドレスã®ç¯„囲ã§ã™ã€‚使用ã™ã‚‹ NIC ㌠1 ã¤ã®å ´åˆã¯ã€ã“れら㮠IP アドレスã¯ãƒãƒƒãƒ‰ã® CIDR ã¨åŒã˜ CIDR ã«å«ã¾ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.installWizard.tooltip.configureGuestTraffic.guestStartIp=ã“ã®ã‚¾ãƒ¼ãƒ³ã®ã‚²ã‚¹ãƒˆã«å‰²ã‚Šå½“ã¦ã‚‹ã“ã¨ãŒã§ãã‚‹ IP アドレスã®ç¯„囲ã§ã™ã€‚使用ã™ã‚‹ NIC ㌠1 ã¤ã®å ´åˆã¯ã€ã“れら㮠IP アドレスã¯ãƒãƒƒãƒ‰ã® CIDR ã¨åŒã˜ CIDR ã«å«ã¾ã‚Œã¦ã„ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.installWizard.tooltip.configureGuestTraffic.guestNetmask=ゲストã®ä½¿ç”¨ã™ã‚‹ã‚µãƒ–ãƒãƒƒãƒˆä¸Šã§ä½¿ç”¨ã•れるãƒãƒƒãƒˆãƒžã‚¹ã‚¯ã§ã™ã€‚ -message.installWizard.tooltip.configureGuestTraffic.guestGateway=ゲストã®ä½¿ç”¨ã™ã‚‹ã‚²ãƒ¼ãƒˆã‚¦ã‚§ã‚¤ã§ã™ã€‚ -message.installWizard.tooltip.configureGuestTraffic.description=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®èª¬æ˜Žã§ã™ã€‚ -message.installWizard.tooltip.configureGuestTraffic.name=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®åå‰ã§ã™ã€‚ -message.installWizard.tooltip.addZone.internaldns2=ゾーン内ã®ã‚·ã‚¹ãƒ†ãƒ  VM ã§ä½¿ç”¨ã™ã‚‹ DNS サーãƒãƒ¼ã§ã™ã€‚ã“れら㮠DNS サーãƒãƒ¼ã¯ã€ã‚·ã‚¹ãƒ†ãƒ  VM ã®ãƒ—ライベート ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ インターフェイスを介ã—ã¦ã‚¢ã‚¯ã‚»ã‚¹ã•れã¾ã™ã€‚ãƒãƒƒãƒ‰ã®ãƒ—ライベート IP アドレスã‹ã‚‰ã€ã“ã“ã§æŒ‡å®šã™ã‚‹ DNS サーãƒãƒ¼ã«é€šä¿¡ã§ãã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.installWizard.tooltip.addZone.internaldns1=ゾーン内ã®ã‚·ã‚¹ãƒ†ãƒ  VM ã§ä½¿ç”¨ã™ã‚‹ DNS サーãƒãƒ¼ã§ã™ã€‚ã“れら㮠DNS サーãƒãƒ¼ã¯ã€ã‚·ã‚¹ãƒ†ãƒ  VM ã®ãƒ—ライベート ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ インターフェイスを介ã—ã¦ã‚¢ã‚¯ã‚»ã‚¹ã•れã¾ã™ã€‚ãƒãƒƒãƒ‰ã®ãƒ—ライベート IP アドレスã‹ã‚‰ã€ã“ã“ã§æŒ‡å®šã™ã‚‹ DNS サーãƒãƒ¼ã«é€šä¿¡ã§ãã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.installWizard.tooltip.addZone.dns2=ゾーン内ã®ã‚²ã‚¹ãƒˆ VM ã§ä½¿ç”¨ã™ã‚‹ DNS サーãƒãƒ¼ã§ã™ã€‚ã“れら㮠DNS サーãƒãƒ¼ã«ã¯ã€å¾Œã§è¿½åŠ ã™ã‚‹ãƒ‘ブリック ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯çµŒç”±ã§ã‚¢ã‚¯ã‚»ã‚¹ã—ã¾ã™ã€‚ゾーンã®ãƒ‘ブリック IP アドレスã‹ã‚‰ã€ã“ã“ã§æŒ‡å®šã™ã‚‹ãƒ‘ブリック DNS サーãƒãƒ¼ã«é€šä¿¡ã§ãã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.installWizard.tooltip.addZone.name=ゾーンã®åå‰ã§ã™ã€‚ -message.installWizard.tooltip.addZone.dns1=ゾーン内ã®ã‚²ã‚¹ãƒˆ VM ã§ä½¿ç”¨ã™ã‚‹ DNS サーãƒãƒ¼ã§ã™ã€‚ã“れら㮠DNS サーãƒãƒ¼ã«ã¯ã€å¾Œã§è¿½åŠ ã™ã‚‹ãƒ‘ブリック ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯çµŒç”±ã§ã‚¢ã‚¯ã‚»ã‚¹ã—ã¾ã™ã€‚ゾーンã®ãƒ‘ブリック IP アドレスã‹ã‚‰ã€ã“ã“ã§æŒ‡å®šã™ã‚‹ãƒ‘ブリック DNS サーãƒãƒ¼ã«é€šä¿¡ã§ãã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.setup.successful=クラウドãŒã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ—ã•れã¾ã—ãŸã€‚ -label.may.continue=続行ã§ãã¾ã™ã€‚ -error.installWizard.message=å•題ãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚戻ã£ã¦ã‚¨ãƒ©ãƒ¼ã‚’修正ã§ãã¾ã™ã€‚ -message.installWizard.now.building=クラウドを構築ã—ã¦ã„ã¾ã™... -message.installWizard.click.retry=èµ·å‹•ã‚’å†è©¦è¡Œã™ã‚‹ã«ã¯ãƒœã‚¿ãƒ³ã‚’クリックã—ã¦ãã ã•ã„。 -label.launch=èµ·å‹• -label.installWizard.click.launch=[èµ·å‹•] をクリックã—ã¦ãã ã•ã„。 -label.congratulations=セットアップã¯ã“れã§å®Œäº†ã§ã™ã€‚ -label.installWizard.addSecondaryStorageIntro.subtitle=セカンダリ ストレージã«ã¤ã„㦠-label.installWizard.addSecondaryStorageIntro.title=セカンダリ ストレージを追加ã—ã¾ã—ょㆠ-label.installWizard.addPrimaryStorageIntro.subtitle=プライマリ ストレージã«ã¤ã„㦠-label.installWizard.addPrimaryStorageIntro.title=プライマリ ストレージを追加ã—ã¾ã—ょㆠ-label.installWizard.addHostIntro.subtitle=ホストã«ã¤ã„㦠-label.installWizard.addHostIntro.title=ホストを追加ã—ã¾ã—ょㆠ-label.installWizard.addClusterIntro.subtitle=クラスターã«ã¤ã„㦠-label.installWizard.addClusterIntro.title=クラスターを追加ã—ã¾ã—ょㆠ-label.installWizard.addPodIntro.subtitle=ãƒãƒƒãƒ‰ã«ã¤ã„㦠-label.installWizard.addPodIntro.title=ãƒãƒƒãƒ‰ã‚’追加ã—ã¾ã—ょㆠ-label.installWizard.addZone.title=ゾーンã®è¿½åŠ  -label.installWizard.addZoneIntro.subtitle=ゾーンã«ã¤ã„㦠-label.installWizard.addZoneIntro.title=ゾーンを追加ã—ã¾ã—ょㆠ-error.password.not.match=パスワードãŒä¸€è‡´ã—ã¾ã›ã‚“ -label.confirm.password=パスワードã®ç¢ºèªå…¥åŠ› -message.change.password=パスワードを変更ã—ã¦ãã ã•ã„。 -label.save.and.continue=ä¿å­˜ã—ã¦ç¶šè¡Œ -label.skip.guide=CloudStack を使用ã—ãŸã“ã¨ãŒã‚ã‚‹ã®ã§ã€ã“ã®ã‚¬ã‚¤ãƒ‰ã‚’スキップã™ã‚‹ -label.continue.basic.install=基本インストールを続行ã™ã‚‹ -label.introduction.to.cloudstack=CloudStack™ ã®ç´¹ä»‹ -label.what.is.cloudstack=CloudStack™ ã«ã¤ã„㦠-label.hints=ヒント -label.installWizard.subtitle=ã“ã®ã‚¬ã‚¤ãƒ‰ ツアー㯠CloudStack™ 環境ã®ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ—ã«å½¹ç«‹ã¡ã¾ã™ -label.continue=続行 -label.installWizard.title=CloudStack™ ã¸ã‚ˆã†ã“ã -label.agree=åŒæ„ã™ã‚‹ -label.manage.resources=リソースã®ç®¡ç† -label.port.forwarding.policies=ãƒãƒ¼ãƒˆè»¢é€ãƒãƒªã‚·ãƒ¼ -label.load.balancing.policies=è² è·åˆ†æ•£ãƒãƒªã‚·ãƒ¼ -label.networking.and.security=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã¨ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ -label.bandwidth=帯域幅 -label.virtual.machines=仮想マシン -label.compute.and.storage=コンピューティングã¨ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ -label.task.completed=タスクãŒå®Œäº†ã—ã¾ã—㟠-label.update.project.resources=プロジェクト ãƒªã‚½ãƒ¼ã‚¹ã®æ›´æ–° -label.remove.project.account=プロジェクト アカウントã®å‰Šé™¤ -label.item.listing=項目一覧 -message.select.item=é …ç›®ã‚’é¸æŠžã—ã¦ãã ã•ã„。 -label.removing=削除ã—ã¦ã„ã¾ã™ -label.invite=招待 -label.add.by=追加å˜ä½ -label.max.vms=最大ユーザー VM æ•° -label.max.public.ips=最大パブリック IP アドレス数 -label.max.volumes=最大ボリューム数 -label.max.snapshots=最大スナップショット数 -label.max.templates=最大テンプレート数 -label.project.dashboard=プロジェクト ダッシュボード -label.remind.later=アラームを表示ã™ã‚‹ -label.invited.accounts=招待済ã¿ã‚¢ã‚«ã‚¦ãƒ³ãƒˆ -label.invite.to=招待ã™ã‚‹ãƒ—ロジェクト: -label.add.accounts.to=アカウントã®è¿½åŠ å…ˆ: -label.add.accounts=アカウントã®è¿½åŠ  -label.project.name=プロジェクトå -label.create.project=プロジェクトã®ä½œæˆ -label.networks=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ -label.launch.vm=VM ã®èµ·å‹• -label.new.vm=æ–°ã—ã„ VM -label.previous=戻る -label.add.to.group=グループã¸ã®è¿½åŠ  -message.vm.review.launch=æ¬¡ã®æƒ…報をå‚ç…§ã—ã¦ã€ä»®æƒ³ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’æ­£ã—ã設定ã—ãŸã“ã¨ã‚’確èªã—ã¦ã‹ã‚‰èµ·å‹•ã—ã¦ãã ã•ã„。 -message.select.security.groups=æ–°ã—ã„仮想マシンã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ ã‚°ãƒ«ãƒ¼ãƒ—ã‚’é¸æŠžã—ã¦ãã ã•ã„。 -label.new=æ–°è¦ -message.please.select.networks=仮想マシンã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’é¸æŠžã—ã¦ãã ã•ã„。 -message.please.proceed=æ¬¡ã®æ‰‹é †ã«é€²ã‚“ã§ãã ã•ã„。 -message.zone.no.network.selection=é¸æŠžã—ãŸã‚¾ãƒ¼ãƒ³ã§ã¯ã€ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’é¸æŠžã§ãã¾ã›ã‚“。 -label.no.thanks=設定ã—ãªã„ -label.my.templates=マイ テンプレート -message.select.template=æ–°ã—ã„仮想インスタンスã®ãƒ†ãƒ³ãƒ—ãƒ¬ãƒ¼ãƒˆã‚’é¸æŠžã—ã¦ãã ã•ã„。 -message.select.iso=æ–°ã—ã„仮想インスタンス㮠ISO ã‚’é¸æŠžã—ã¦ãã ã•ã„。 -message.template.desc=VM ã®èµ·å‹•ã«ä½¿ç”¨ã§ãã‚‹ OS イメージ -message.iso.desc=データã¾ãŸã¯ OS èµ·å‹•å¯èƒ½ãƒ¡ãƒ‡ã‚£ã‚¢ã‚’å«ã‚€ãƒ‡ã‚£ã‚¹ã‚¯ イメージ -label.select.iso.or.template=ISO ã¾ãŸã¯ãƒ†ãƒ³ãƒ—レートã®é¸æŠž -message.select.a.zone=ゾーンã¯é€šå¸¸ã€å˜ä¸€ã®ãƒ‡ãƒ¼ã‚¿ã‚»ãƒ³ã‚¿ãƒ¼ã«ç›¸å½“ã—ã¾ã™ã€‚複数ã®ã‚¾ãƒ¼ãƒ³ã‚’設定ã—ã€ç‰©ç†çš„ã«åˆ†é›¢ã—ã¦å†—長性をæŒãŸã›ã‚‹ã“ã¨ã«ã‚ˆã‚Šã€ã‚¯ãƒ©ã‚¦ãƒ‰ã®ä¿¡é ¼æ€§ã‚’高ã‚ã¾ã™ã€‚ -label.select.a.zone=ゾーンã®é¸æŠž -label.review=ç¢ºèª -label.select.a.template=テンプレートã®é¸æŠž -label.setup=セットアップ -state.Allocated=å‰²ã‚Šå½“ã¦æ¸ˆã¿ -changed.item.properties=é …ç›®ã®ãƒ—ロパティã®å¤‰æ›´ -label.apply=é©ç”¨ -label.default=デフォルト -label.viewing=表示項目: -label.move.to.top=最上ä½ã«ç§»å‹• -label.move.up.row=1 行上ã«ç§»å‹• -label.move.down.row=1 行下ã«ç§»å‹• -label.move.to.bottom=最下ä½ã«ç§»å‹• -label.drag.new.position=æ–°ã—ã„ä½ç½®ã«ãƒ‰ãƒ©ãƒƒã‚° -label.order=é †åº -label.no.data=表示ã™ã‚‹ãƒ‡ãƒ¼ã‚¿ãŒã‚りã¾ã›ã‚“ -label.change.value=値ã®å¤‰æ›´ -label.clear.list=ä¸€è¦§ã®æ¶ˆåŽ» -label.full.path=フル パス -message.add.domain=ã“ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã«ä½œæˆã™ã‚‹ã‚µãƒ–ドメインを指定ã—ã¦ãã ã•ã„。 -message.delete.user=ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.enable.user=ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’有効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.disable.user=ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’無効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.generate.keys=ã“ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«æ–°ã—ã„キーを生æˆã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.update.resource.count=ã“ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã®ãƒªã‚½ãƒ¼ã‚¹æ•°ã‚’æ›´æ–°ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.edit.account=編集 ("-1" ã¯ã€ãƒªã‚½ãƒ¼ã‚¹ä½œæˆã®é‡ã«åˆ¶é™ãŒãªã„ã“ã¨ã‚’示ã—ã¾ã™) -label.total.of.vm=VM åˆè¨ˆ -label.total.of.ip=IP アドレスåˆè¨ˆ -state.enabled=有効 -message.action.download.iso=ã“ã® ISO をダウンロードã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.download.template=ã“ã®ãƒ†ãƒ³ãƒ—レートをダウンロードã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.destination.zone=コピー先ゾーン -label.keyboard.type=キーボードã®ç¨®é¡ž -label.nic.adapter.type=NIC アダプターã®ç¨®é¡ž -label.root.disk.controller=ルート ディスク コントローラー -label.community=コミュニティ -label.remove.egress.rule=é€ä¿¡è¦å‰‡ã®å‰Šé™¤ -label.add.egress.rule=é€ä¿¡è¦å‰‡ã®è¿½åŠ  -label.egress.rule=é€ä¿¡è¦å‰‡ -label.remove.ingress.rule=å—ä¿¡è¦å‰‡ã®å‰Šé™¤ -label.delete.vpn.user=VPN ユーザーã®å‰Šé™¤ -label.add.vpn.user=VPN ユーザーã®è¿½åŠ  -label.remove.pf=ãƒãƒ¼ãƒˆè»¢é€è¦å‰‡ã®å‰Šé™¤ -label.remove.vm.from.lb=è² è·åˆ†æ•£è¦å‰‡ã‹ã‚‰ã® VM ã®å‰Šé™¤ -label.add.vms.to.lb=è² è·åˆ†æ•£è¦å‰‡ã¸ã® VM ã®è¿½åŠ  -label.add.vm=VM ã®è¿½åŠ  -label.remove.static.nat.rule=é™çš„ NAT è¦å‰‡ã®å‰Šé™¤ -label.remove.rule=è¦å‰‡ã®å‰Šé™¤ -label.add.static.nat.rule=é™çš„ NAT è¦å‰‡ã®è¿½åŠ  -label.add.rule=è¦å‰‡ã®è¿½åŠ  -label.configuration=æ§‹æˆ -message.disable.vpn=VPN を無効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.disable.vpn=VPN ã®ç„¡åŠ¹åŒ– -message.enable.vpn=ã“ã® IP アドレスã«å¯¾ã™ã‚‹ VPN アクセスを有効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.enable.vpn=VPN ã®æœ‰åŠ¹åŒ– -message.acquire.new.ip=ã“ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®æ–°ã—ã„ IP アドレスをå–å¾—ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.elastic=エラスティック -label.my.network=マイ ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ -label.add.vms=VM ã®è¿½åŠ  -label.configure=æ§‹æˆ -label.stickiness=æŒç¶šæ€§ -label.source=é€ä¿¡å…ƒ -label.least.connections=æœ€å°æŽ¥ç¶š -label.round.robin=ラウンドロビン -label.restart.required=å†èµ·å‹•ãŒå¿…è¦ -label.clean.up=クリーン アップ -label.restart.network=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®å†èµ·å‹• -label.edit.network.details=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®è©³ç´°ã®ç·¨é›† -label.add.guest.network=ゲスト ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®è¿½åŠ  -label.guest.networks=ゲスト ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ -message.ip.address.changed=ãŠä½¿ã„ã® IP アドレスãŒå¤‰æ›´ã•れã¦ã„ã‚‹å¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚一覧を更新ã—ã¾ã™ã‹? ãã®å ´åˆã¯ã€è©³ç´°ãƒšã‚¤ãƒ³ãŒé–‰ã˜ã‚‹ã“ã¨ã«æ³¨æ„ã—ã¦ãã ã•ã„。 -state.BackingUp=ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—中 -state.BackedUp=ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—済㿠-label.done=完了 -label.vm.name=VM å -message.migrate.volume=別ã®ãƒ—ライマリ ストレージã«ãƒœãƒªãƒ¥ãƒ¼ãƒ ã‚’移行ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.migrate.volume=別ã®ãƒ—ライマリ ストレージã¸ã®ãƒœãƒªãƒ¥ãƒ¼ãƒ ã®ç§»è¡Œ -message.create.template=テンプレートを作æˆã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.create.template=テンプレートã®ä½œæˆ -message.download.volume.confirm=ã“ã®ãƒœãƒªãƒ¥ãƒ¼ãƒ ã‚’ダウンロードã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.detach.disk=ã“ã®ãƒ‡ã‚£ã‚¹ã‚¯ã‚’デタッãƒã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -state.ready=準備完了 -state.Ready=準備完了 -label.vm.display.name=VM 表示å -label.select-view=ビューã®é¸æŠž -label.local.storage=ローカル ストレージ -label.direct.ips=直接 IP アドレス -label.view.all=ã™ã¹ã¦è¡¨ç¤º -label.zone.details=ゾーンã®è©³ç´° -message.alert.state.detected=ã‚¢ãƒ©ãƒ¼ãƒˆçŠ¶æ…‹ãŒæ¤œå‡ºã•れã¾ã—㟠-state.Starting=開始中 -state.Expunging=抹消中 -state.Creating=作æˆä¸­ -message.decline.invitation=ã“ã®ãƒ—ロジェクトã¸ã®æ‹›å¾…を辞退ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.decline.invitation=招待ã®è¾žé€€ -message.confirm.join.project=ã“ã®ãƒ—ロジェクトã«å‚加ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.join.project=ã“れã§ã€ãƒ—ロジェクトã«å‚加ã—ã¾ã—ãŸã€‚プロジェクトをå‚ç…§ã™ã‚‹ã«ã¯ãƒ—ロジェクト ビューã«åˆ‡ã‚Šæ›¿ãˆã¦ãã ã•ã„。 -label.accept.project.invitation=プロジェクトã¸ã®æ‹›å¾…ã®æ‰¿è«¾ -label.token=トークン -label.project.id=プロジェクト ID -message.enter.token=é›»å­ãƒ¡ãƒ¼ãƒ«ã®æ‹›å¾…状ã«è¨˜è¼‰ã•れã¦ã„るトークンを入力ã—ã¦ãã ã•ã„。 -label.enter.token=トークンã®å…¥åŠ› -state.Accepted=承諾済㿠-state.Pending=ä¿ç•™ -state.Completed=完了 -state.Declined=辞退 -label.project=プロジェクト -label.invitations=招待状 -label.delete.project=プロジェクトã®å‰Šé™¤ -message.delete.project=ã“ã®ãƒ—ロジェクトを削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.activate.project=ã“ã®ãƒ—ロジェクトをアクティブã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.activate.project=プロジェクトã®ã‚¢ã‚¯ãƒ†ã‚£ãƒ–化 -label.suspend.project=プロジェクトã®ä¸€æ™‚åœæ­¢ -message.suspend.project=ã“ã®ãƒ—ãƒ­ã‚¸ã‚§ã‚¯ãƒˆã‚’ä¸€æ™‚åœæ­¢ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -state.Suspended=ä¸€æ™‚åœæ­¢ -label.edit.project.details=プロジェクトã®è©³ç´°ã®ç·¨é›† -label.new.project=æ–°ã—ã„プロジェクト -state.Active=アクティブ -state.Disabled=無効 -label.projects=プロジェクト -label.make.project.owner=アカウントã®ãƒ—ロジェクト所有者化 -label.remove.project.account=アカウントã®ãƒ—ロジェクトã‹ã‚‰ã®å‰Šé™¤ -message.project.invite.sent=ãƒ¦ãƒ¼ã‚¶ãƒ¼ã«æ‹›å¾…状ãŒé€ä¿¡ã•れã¾ã—ãŸã€‚ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒæ‹›å¾…を承諾ã™ã‚‹ã¨ã€ãƒ—ロジェクトã«è¿½åŠ ã•れã¾ã™ã€‚ -label.add.account.to.project=アカウントã®ãƒ—ロジェクトã¸ã®è¿½åŠ  -label.revoke.project.invite=招待ã®å–り消㗠-label.project.invite=プロジェクトã¸ã®æ‹›å¾… -label.select.project=プロジェクトã®é¸æŠž -message.no.projects=プロジェクトãŒã‚りã¾ã›ã‚“。
    プロジェクト セクションã‹ã‚‰æ–°ã—ã„プロジェクトを作æˆã—ã¦ãã ã•ã„。 -message.no.projects.adminOnly=プロジェクトãŒã‚りã¾ã›ã‚“。
    管ç†è€…ã«æ–°ã—ã„プロジェクトã®ä½œæˆã‚’ä¾é ¼ã—ã¦ãã ã•ã„。 -message.pending.projects.1=ä¿ç•™ä¸­ã®ãƒ—ロジェクト招待状ãŒã‚りã¾ã™ã€‚ -message.pending.projects.2=表示ã™ã‚‹ã«ã¯ãƒ—ロジェクト セクションã«ç§»å‹•ã—ã¦ã€ä¸€è¦§ã‹ã‚‰æ‹›å¾…çŠ¶ã‚’é¸æŠžã—ã¾ã™ã€‚ -message.instanceWizard.noTemplates=使用å¯èƒ½ãªãƒ†ãƒ³ãƒ—レートãŒã‚りã¾ã›ã‚“ã€‚äº’æ›æ€§ã®ã‚るテンプレートを追加ã—ã¦ã€ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ ウィザードをå†èµ·å‹•ã—ã¦ãã ã•ã„。 -label.view=表示 - -instances.actions.reboot.label=インスタンスã®å†èµ·å‹• -label.filterBy=フィルター -label.ok=OK -notification.reboot.instance=インスタンスã®å†èµ·å‹• -notification.start.instance=インスタンスã®èµ·å‹• -notification.stop.instance=インスタンスã®åœæ­¢ -label.display.name=表示å -label.zone.name=ゾーンå -ui.listView.filters.all=ã™ã¹ã¦ -ui.listView.filters.mine=自分ã®ã‚‚ã® -state.Running=実行中 -state.Stopped=åœæ­¢æ¸ˆã¿ -state.Destroyed=破棄済㿠-state.Error=エラー -message.reset.password.warning.notPasswordEnabled=ã“ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®ãƒ†ãƒ³ãƒ—レートã¯ã€ãƒ‘スワード管ç†ã‚’有効ã«ã›ãšã«ä½œæˆã•れã¾ã—ãŸã€‚ -message.reset.password.warning.notStopped=ç¾åœ¨ã®ãƒ‘スワードを変更ã™ã‚‹å‰ã«ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’åœæ­¢ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -label.notifications=通知 -label.default.view=デフォルト ビュー -label.project.view=プロジェクト ビュー - -message.add.system.service.offering=æ–°ã—ã„システム サービス オファリングを追加ã™ã‚‹ãŸã‚ã«ã€æ¬¡ã®ãƒ‡ãƒ¼ã‚¿ã‚’入力ã—ã¦ãã ã•ã„。 -message.action.delete.system.service.offering=ã“ã®ã‚·ã‚¹ãƒ†ãƒ  サービス オファリングを削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.action.delete.system.service.offering=システム サービス オファリングã®å‰Šé™¤ -label.hypervisor.capabilities=ãƒã‚¤ãƒ‘ーãƒã‚¤ã‚¶ãƒ¼ã®æ©Ÿèƒ½ -label.hypervisor.version=ãƒã‚¤ãƒ‘ーãƒã‚¤ã‚¶ãƒ¼ã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ -label.max.guest.limit=æœ€å¤§ã‚²ã‚¹ãƒˆåˆ¶é™ -label.add.network.offering=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ オファリングã®è¿½åŠ  -label.supported.services=サãƒãƒ¼ãƒˆã•れるサービス -label.service.capabilities=ã‚µãƒ¼ãƒ“ã‚¹ã®æ©Ÿèƒ½ -label.guest.type=ゲストã®ç¨®é¡ž -label.specify.IP.ranges=IP アドレスã®ç¯„å›²ã®æŒ‡å®š -label.conserve.mode=節約モード -label.created.by.system=ã‚·ã‚¹ãƒ†ãƒ ä½œæˆ -label.menu.system.service.offerings=システム オファリング -label.add.system.service.offering=システム サービス オファリングã®è¿½åŠ  -label.redundant.router.capability=冗長ルーター機能 -label.supported.source.NAT.type=サãƒãƒ¼ãƒˆã•れるé€ä¿¡å…ƒ NAT ã®ç¨®é¡ž -label.elastic.LB=エラスティック負è·åˆ†æ•£ -label.LB.isolation=è² è·åˆ†æ•£åˆ†é›¢ -label.elastic.IP=エラスティック IP アドレス -label.network.label.display.for.blank.value=デフォルト ゲートウェイを使用 -label.xen.traffic.label=XenServer トラフィックã®ãƒ©ãƒ™ãƒ« -label.kvm.traffic.label=KVM トラフィックã®ãƒ©ãƒ™ãƒ« -label.vmware.traffic.label=VMware トラフィックã®ãƒ©ãƒ™ãƒ« -label.start.IP=é–‹å§‹ IP アドレス -label.end.IP=終了 IP アドレス -label.remove.ip.range=IP アドレスã®ç¯„囲ã®å‰Šé™¤ -label.ip.ranges=IP アドレスã®ç¯„囲 -label.start.vlan=é–‹å§‹ VLAN -label.end.vlan=終了 VLAN -label.broadcast.domain.range=ブロードキャスト ドメインã®ç¯„囲 -label.compute=コンピューティング -message.add.guest.network=ゲスト ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’追加ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.subdomain.access=サブドメイン アクセス -label.guest.start.ip=ゲストã®é–‹å§‹ IP アドレス -label.guest.end.ip=ゲストã®çµ‚了 IP アドレス -label.virtual.router=仮想ルーター -label.physical.network.ID=物ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ID -label.destination.physical.network.id=ブリッジ先物ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ID -label.dhcp=DHCP -label.destroy.router=ルーターã®ç ´æ£„ -message.confirm.destroy.router=ã“ã®ãƒ«ãƒ¼ã‚¿ãƒ¼ã‚’破棄ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.change.service.offering=サービス オファリングã®å¤‰æ›´ -label.view.console=コンソールã®è¡¨ç¤º -label.redundant.state=冗長状態 -label.enable.provider=プロãƒã‚¤ãƒ€ãƒ¼ã®æœ‰åŠ¹åŒ– -message.confirm.enable.provider=ã“ã®ãƒ—ロãƒã‚¤ãƒ€ãƒ¼ã‚’有効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.disable.provider=プロãƒã‚¤ãƒ€ãƒ¼ã®ç„¡åŠ¹åŒ– -message.confirm.disable.provider=ã“ã®ãƒ—ロãƒã‚¤ãƒ€ãƒ¼ã‚’無効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.shutdown.provider=プロãƒã‚¤ãƒ€ãƒ¼ã®ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³ -message.confirm.shutdown.provider=ã“ã®ãƒ—ロãƒã‚¤ãƒ€ãƒ¼ã‚’シャットダウンã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.netScaler=NetScaler -label.add.new.NetScaler=æ–°ã—ã„ NetScaler ã®è¿½åŠ  -label.capacity=処ç†èƒ½åŠ› -label.dedicated=専用 -label.f5=F5 -label.add.new.F5=æ–°ã—ã„ F5 ã®è¿½åŠ  -label.srx=SRX -label.providers=プロãƒã‚¤ãƒ€ãƒ¼ -label.add.new.SRX=æ–°ã—ã„ SRX ã®è¿½åŠ  -label.timeout=タイムアウト -label.public.network=パブリック ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ -label.private.network=プライベート ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ -label.enable.swift=Swift ã®æœ‰åŠ¹åŒ– -confirm.enable.swift=Swift ã®ã‚µãƒãƒ¼ãƒˆã‚’有効ã«ã™ã‚‹ã«ã¯ã€æ¬¡ã®æƒ…報を入力ã—ã¦ãã ã•ã„。 -message.after.enable.swift=Swift ãŒæ§‹æˆã•れã¾ã—ãŸã€‚注: ã“ã®ãƒšãƒ¼ã‚¸ã‚’é–‰ã˜ã‚‹ã¨ã€Swift ã‚’å†æ§‹æˆã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。 -label.key=キー -label.delete.NetScaler=NetScaler ã®å‰Šé™¤ -message.confirm.delete.NetScaler=NetScaler を削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.delete.F5=F5 ã®å‰Šé™¤ -message.confirm.delete.F5=F5 を削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.delete.SRX=SRX ã®å‰Šé™¤ -message.confirm.delete.SRX=SRX を削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.pods=ãƒãƒƒãƒ‰ -label.pod.name=ãƒãƒƒãƒ‰å -label.reserved.system.gateway=予約済ã¿ã‚·ã‚¹ãƒ†ãƒ  ゲートウェイ -label.reserved.system.netmask=予約済ã¿ã‚·ã‚¹ãƒ†ãƒ  ãƒãƒƒãƒˆãƒžã‚¹ã‚¯ -label.start.reserved.system.IP=予約済ã¿é–‹å§‹ã‚·ã‚¹ãƒ†ãƒ  IP アドレス -label.end.reserved.system.IP=予約済ã¿çµ‚了システム IP アドレス -label.clusters=クラスター -label.cluster.name=クラスターå -label.host.MAC=ホスト㮠MAC -label.agent.username=エージェント ユーザーå -label.agent.password=エージェント パスワード -message.confirm.action.force.reconnect=ã“ã®ãƒ›ã‚¹ãƒˆã‚’å¼·åˆ¶å†æŽ¥ç¶šã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.resource.state=リソースã®çŠ¶æ…‹ -label.LUN.number=LUN ç•ªå· -message.confirm.remove.IP.range=ã“ã® IP アドレスã®ç¯„囲を削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.tooltip.zone.name=ゾーンã®åå‰ã§ã™ã€‚ -message.tooltip.dns.1=ゾーン内㮠VM ã§ä½¿ç”¨ã™ã‚‹ DNS サーãƒãƒ¼ã®åå‰ã§ã™ã€‚ゾーンã®ãƒ‘ブリック IP アドレスã‹ã‚‰ã€ã“ã®ã‚µãƒ¼ãƒãƒ¼ã«é€šä¿¡ã§ãã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.tooltip.dns.2=ゾーン内㮠VM ã§ä½¿ç”¨ã™ã‚‹ 2 番目㮠DNS サーãƒãƒ¼ã®åå‰ã§ã™ã€‚ゾーンã®ãƒ‘ブリック IP アドレスã‹ã‚‰ã€ã“ã®ã‚µãƒ¼ãƒãƒ¼ã«é€šä¿¡ã§ãã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.tooltip.internal.dns.1=ゾーン内㮠CloudStack 内部システム VM ã§ä½¿ç”¨ã™ã‚‹ DNS サーãƒãƒ¼ã®åå‰ã§ã™ã€‚ãƒãƒƒãƒ‰ã®ãƒ—ライベート IP アドレスã‹ã‚‰ã€ã“ã®ã‚µãƒ¼ãƒãƒ¼ã«é€šä¿¡ã§ãã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.tooltip.internal.dns.2=ゾーン内㮠CloudStack 内部システム VM ã§ä½¿ç”¨ã™ã‚‹ DNS サーãƒãƒ¼ã®åå‰ã§ã™ã€‚ãƒãƒƒãƒ‰ã®ãƒ—ライベート IP アドレスã‹ã‚‰ã€ã“ã®ã‚µãƒ¼ãƒãƒ¼ã«é€šä¿¡ã§ãã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.tooltip.network.domain=DNS サフィックスã§ã™ã€‚ã“ã®ã‚µãƒ•ィックスã‹ã‚‰ã‚²ã‚¹ãƒˆ VM ã§ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®ã‚«ã‚¹ã‚¿ãƒ  ドメインåãŒä½œæˆã•れã¾ã™ã€‚ -message.tooltip.pod.name=ã“ã®ãƒãƒƒãƒ‰ã®åå‰ã§ã™ã€‚ -message.tooltip.reserved.system.gateway=ãƒãƒƒãƒ‰å†…ã®ãƒ›ã‚¹ãƒˆã®ã‚²ãƒ¼ãƒˆã‚¦ã‚§ã‚¤ã§ã™ã€‚ -message.tooltip.reserved.system.netmask=ãƒãƒƒãƒ‰ã®ã‚µãƒ–ãƒãƒƒãƒˆã‚’定義ã™ã‚‹ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ プレフィックスã§ã™ã€‚CIDR 表記を使用ã—ã¾ã™ã€‚ -message.creating.zone=ゾーンを作æˆã—ã¦ã„ã¾ã™ -message.creating.physical.networks=物ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’作æˆã—ã¦ã„ã¾ã™ -message.configuring.physical.networks=物ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’æ§‹æˆã—ã¦ã„ã¾ã™ -message.adding.Netscaler.device=Netscaler デãƒã‚¤ã‚¹ã‚’追加ã—ã¦ã„ã¾ã™ -message.creating.pod=ãƒãƒƒãƒ‰ã‚’作æˆã—ã¦ã„ã¾ã™ -message.configuring.public.traffic=パブリック トラフィックを構æˆã—ã¦ã„ã¾ã™ -message.configuring.storage.traffic=ストレージ トラフィックを構æˆã—ã¦ã„ã¾ã™ -message.configuring.guest.traffic=ゲスト トラフィックを構æˆã—ã¦ã„ã¾ã™ -message.creating.cluster=クラスターを作æˆã—ã¦ã„ã¾ã™ -message.adding.host=ホストを追加ã—ã¦ã„ã¾ã™ -message.creating.primary.storage=プライマリ ストレージを作æˆã—ã¦ã„ã¾ã™ -message.creating.secondary.storage=セカンダリ ストレージを作æˆã—ã¦ã„ã¾ã™ -message.Zone.creation.complete=ゾーンãŒä½œæˆã•れã¾ã—㟠-message.enabling.zone=ゾーンを有効ã«ã—ã¦ã„ã¾ã™ -error.something.went.wrong.please.correct.the.following=å•題ãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚次ã®å†…容を修正ã—ã¦ãã ã•ã„ -error.could.not.enable.zone=ゾーンを有効ã«ã§ãã¾ã›ã‚“ã§ã—㟠-message.zone.creation.complete.would.you.like.to.enable.this.zone=ゾーンãŒä½œæˆã•れã¾ã—ãŸã€‚ã“ã®ã‚¾ãƒ¼ãƒ³ã‚’有効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.please.add.at.lease.one.traffic.range=å°‘ãªãã¨ã‚‚ 1 ã¤ãƒˆãƒ©ãƒ•ィックã®ç¯„囲を追加ã—ã¦ãã ã•ã„。 -message.you.must.have.at.least.one.physical.network=å°‘ãªãã¨ã‚‚ 1 ã¤ç‰©ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ãŒå¿…è¦ã§ã™ -message.please.select.a.different.public.and.management.network.before.removing=削除ã®å‰ã«ç•°ãªã‚‹ãƒ‘ブリックãŠã‚ˆã³ç®¡ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’é¸æŠžã—ã¦ãã ã•ã„。 - -label.zone.type=ゾーンã®ç¨®é¡ž -label.setup.zone=ゾーンã®ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ— -label.setup.network=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ— -label.add.resources=リソースã®è¿½åŠ  -label.launch=èµ·å‹• -label.set.up.zone.type=ゾーンã®ç¨®é¡žã®ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ— -message.please.select.a.configuration.for.your.zone=ã‚¾ãƒ¼ãƒ³ã®æ§‹æˆã‚’é¸æŠžã—ã¦ãã ã•ã„。 -message.desc.basic.zone=å„ VM インスタンス㫠IP アドレスãŒãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‹ã‚‰ç›´æŽ¥å‰²ã‚Šå½“ã¦ã‚‰ã‚Œã‚‹ã€å˜ä¸€ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’æä¾›ã—ã¾ã™ã€‚セキュリティ グループ (é€ä¿¡å…ƒ IP アドレスã®ãƒ•ィルター) ã®ã‚ˆã†ãªãƒ¬ã‚¤ãƒ¤ãƒ¼ 3 ãƒ¬ãƒ™ãƒ«ã®æ–¹æ³•ã§ã‚²ã‚¹ãƒˆã‚’分離ã§ãã¾ã™ã€‚ -label.basic=基本 -message.desc.advanced.zone=より洗練ã•れãŸãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯æŠ€è¡“をサãƒãƒ¼ãƒˆã—ã¾ã™ã€‚ã“ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ãƒ¢ãƒ‡ãƒ«ã‚’é¸æŠžã™ã‚‹ã¨ã€ã‚ˆã‚ŠæŸ”軟ã«ã‚²ã‚¹ãƒˆã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’定義ã—ã€ãƒ•ァイアウォールã€VPNã€è² è·åˆ†æ•£è£…ç½®ã®ã‚µãƒãƒ¼ãƒˆã®ã‚ˆã†ãªã‚«ã‚¹ã‚¿ãƒžã‚¤ã‚ºã—ãŸãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ オファリングをæä¾›ã§ãã¾ã™ã€‚ -label.advanced=æ‹¡å¼µ -message.desc.zone=ゾーン㯠CloudStack ç’°å¢ƒå†…ã®æœ€å¤§ã®çµ„ç¹”å˜ä½ã§ã€é€šå¸¸ã€å˜ä¸€ã®ãƒ‡ãƒ¼ã‚¿ã‚»ãƒ³ã‚¿ãƒ¼ã«ç›¸å½“ã—ã¾ã™ã€‚ゾーンã«ã‚ˆã£ã¦ç‰©ç†çš„ãªåˆ†é›¢ã¨å†—é•·æ€§ãŒæä¾›ã•れã¾ã™ã€‚ゾーン㯠1 ã¤ä»¥ä¸Šã®ãƒãƒƒãƒ‰ (å„ãƒãƒƒãƒ‰ã¯ãƒ›ã‚¹ãƒˆã¨ãƒ—ライマリ ストレージ サーãƒãƒ¼ã‹ã‚‰æ§‹æˆã•れã¾ã™) ã¨ã€ã‚¾ãƒ¼ãƒ³å†…ã®ã™ã¹ã¦ã®ãƒãƒƒãƒ‰ã§å…±æœ‰ã•れるセカンダリ ストレージ サーãƒãƒ¼ã‹ã‚‰æ§‹æˆã•れã¾ã™ã€‚ -label.physical.network=物ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ -label.public.traffic=パブリック トラフィック -label.guest.traffic=ゲスト トラフィック -label.storage.traffic=ストレージ トラフィック -message.setup.physical.network.during.zone.creation=拡張ゾーンを追加ã™ã‚‹ã¨ãã¯ã€1 ã¤ä»¥ä¸Šã®ç‰©ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’セットアップã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚å„ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã¯ãƒã‚¤ãƒ‘ーãƒã‚¤ã‚¶ãƒ¼ä¸Šã® 1 ã¤ã® NIC ã«å¯¾å¿œã—ã¾ã™ã€‚å„物ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã§ã¯ã€çµ„ã¿åˆã‚ã›ã«åˆ¶é™ãŒã‚りã¾ã™ãŒã€1 ã¤ä»¥ä¸Šã®ç¨®é¡žã®ãƒˆãƒ©ãƒ•ィックを通信ã§ãã¾ã™ã€‚

    å„物ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã«å¯¾ã—ã¦ãƒˆãƒ©ãƒ•ィックã®ç¨®é¡žã‚’ドラッグ アンド ドロップã—ã¦ãã ã•ã„。 -label.add.physical.network=物ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®è¿½åŠ  -label.traffic.types=トラフィックã®ç¨®é¡ž -label.management=ç®¡ç† -label.guest=ゲスト -label.please.specify.netscaler.info=Netscaler 情報を指定ã—ã¦ãã ã•ã„ -message.public.traffic.in.advanced.zone=クラウド内㮠VM ãŒã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã¨ã€ãƒ‘ブリック トラフィックãŒç”Ÿæˆã•れã¾ã™ã€‚ã“ã®ãŸã‚ã«ã€ä¸€èˆ¬ã«ã‚¢ã‚¯ã‚»ã‚¹å¯èƒ½ãª IP アドレスを割り当ã¦ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚エンド ユーザー㯠CloudStack ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ インターフェイスを使用ã—ã¦ã“れら㮠IP アドレスをå–å¾—ã—ã€ã‚²ã‚¹ãƒˆ ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã¨ãƒ‘ブリック ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®é–“ã« NAT を実装ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚

    インターãƒãƒƒãƒˆ トラフィックã®ãŸã‚ã«ã€å°‘ãªãã¨ã‚‚ 1 㤠IP アドレスã®ç¯„囲を入力ã—ã¦ãã ã•ã„。 -message.public.traffic.in.basic.zone=クラウド内㮠VM ãŒã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆã«ã‚¢ã‚¯ã‚»ã‚¹ã™ã‚‹ã‹ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆçµŒç”±ã§ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã«ã‚µãƒ¼ãƒ“スをæä¾›ã™ã‚‹ã¨ã€ãƒ‘ブリック トラフィックãŒç”Ÿæˆã•れã¾ã™ã€‚ã“ã®ãŸã‚ã«ã€ä¸€èˆ¬ã«ã‚¢ã‚¯ã‚»ã‚¹å¯èƒ½ãª IP アドレスを割り当ã¦ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚インスタンスを作æˆã™ã‚‹ã¨ã€ã‚²ã‚¹ãƒˆ IP アドレスã®ã»ã‹ã«ã“ã®ãƒ‘ブリック IP アドレスã®ç¯„囲ã‹ã‚‰ã‚¢ãƒ‰ãƒ¬ã‚¹ãŒ 1 ã¤ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚Œã¾ã™ã€‚パブリック IP アドレスã¨ã‚²ã‚¹ãƒˆ IP アドレスã®é–“ã«ã€é™çš„㪠1 対 1 ã® NAT ãŒè‡ªå‹•çš„ã«ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ—ã•れã¾ã™ã€‚エンド ユーザー㯠CloudStack ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ インターフェイスを使用ã—ã¦è¿½åŠ ã® IP アドレスをå–å¾—ã—ã€ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã¨ãƒ‘ブリック IP アドレスã®é–“ã«é™çš„ NAT を実装ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ -message.add.pod.during.zone.creation=å„ゾーンã«ã¯ 1 ã¤ä»¥ä¸Šã®ãƒãƒƒãƒ‰ãŒå¿…è¦ã§ã™ã€‚今ã“ã“ã§æœ€åˆã®ãƒãƒƒãƒ‰ã‚’追加ã—ã¾ã™ã€‚ãƒãƒƒãƒ‰ã¯ãƒ›ã‚¹ãƒˆã¨ãƒ—ライマリ ストレージ サーãƒãƒ¼ã‹ã‚‰æ§‹æˆã•れã¾ã™ãŒã€ã“れらã¯å¾Œã®æ‰‹é †ã§è¿½åŠ ã—ã¾ã™ã€‚最åˆã«ã€CloudStack ã®å†…部管ç†ãƒˆãƒ©ãƒ•ィックã®ãŸã‚ã« IP アドレスã®ç¯„囲を予約ã—ã¾ã™ã€‚IP アドレスã®ç¯„囲ã¯ã€ã‚¯ãƒ©ã‚¦ãƒ‰å†…ã®å„ゾーンã§é‡è¤‡ã—ãªã„よã†ã«äºˆç´„ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.guest.traffic.in.advanced.zone=ゲスト ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ トラフィックã¯ã€ã‚¨ãƒ³ãƒ‰ ユーザーã®ä»®æƒ³ãƒžã‚·ãƒ³é–“ã®é€šä¿¡ã§ã™ã€‚å„物ç†ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®ã‚²ã‚¹ãƒˆ トラフィックを通信ã™ã‚‹ãŸã‚ã® VLAN ID ã®ç¯„囲を指定ã—ã¦ãã ã•ã„。 -message.guest.traffic.in.basic.zone=ゲスト ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ トラフィックã¯ã€ã‚¨ãƒ³ãƒ‰ ユーザーã®ä»®æƒ³ãƒžã‚·ãƒ³é–“ã®é€šä¿¡ã§ã™ã€‚CloudStack ã§ã‚²ã‚¹ãƒˆ VM ã«å‰²ã‚Šå½“ã¦ã‚‰ã‚Œã‚‹ IP アドレスã®ç¯„囲を指定ã—ã¦ãã ã•ã„。ã“ã®ç¯„囲ãŒäºˆç´„済ã¿ã®ã‚·ã‚¹ãƒ†ãƒ  IP アドレスã®ç¯„囲ã¨é‡è¤‡ã—ãªã„よã†ã«æ³¨æ„ã—ã¦ãã ã•ã„。 -message.storage.traffic=ホストや CloudStack システム VM ãªã©ã€ç®¡ç†ã‚µãƒ¼ãƒãƒ¼ã¨é€šä¿¡ã™ã‚‹ CloudStack ã®å†…部リソース間ã®ãƒˆãƒ©ãƒ•ィックã§ã™ã€‚ã“ã“ã§ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ トラフィックを構æˆã—ã¦ãã ã•ã„。 -message.desc.cluster=å„ãƒãƒƒãƒ‰ã«ã¯ 1 ã¤ä»¥ä¸Šã®ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼ãŒå¿…è¦ã§ã™ã€‚今ã“ã“ã§æœ€åˆã®ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼ã‚’追加ã—ã¾ã™ã€‚クラスターã¯ãƒ›ã‚¹ãƒˆã‚’グループ化ã™ã‚‹æ–¹æ³•ã§ã™ã€‚1 ã¤ã®ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼å†…ã®ãƒ›ã‚¹ãƒˆã¯ã™ã¹ã¦åŒä¸€ã®ãƒãƒ¼ãƒ‰ã‚¦ã‚§ã‚¢ã‹ã‚‰æ§‹æˆã•れã€åŒã˜ãƒã‚¤ãƒ‘ーãƒã‚¤ã‚¶ãƒ¼ã‚’実行ã—ã€åŒã˜ã‚µãƒ–ãƒãƒƒãƒˆä¸Šã«ã‚りã€åŒã˜å…±æœ‰ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ã«ã‚¢ã‚¯ã‚»ã‚¹ã—ã¾ã™ã€‚å„クラスター㯠1 ã¤ä»¥ä¸Šã®ãƒ›ã‚¹ãƒˆã¨ 1 ã¤ä»¥ä¸Šã®ãƒ—ライマリ ストレージ サーãƒãƒ¼ã‹ã‚‰æ§‹æˆã•れã¾ã™ã€‚ -message.desc.host=å„クラスターã«ã¯å°‘ãªãã¨ã‚‚ 1 ã¤ã€ã‚²ã‚¹ãƒˆ VM を実行ã™ã‚‹ãŸã‚ã®ãƒ›ã‚¹ãƒˆ (コンピューター) ãŒå¿…è¦ã§ã™ã€‚今ã“ã“ã§æœ€åˆã®ãƒ›ã‚¹ãƒˆã‚’追加ã—ã¾ã™ã€‚CloudStack ã§ãƒ›ã‚¹ãƒˆã‚’機能ã•ã›ã‚‹ã«ã¯ã€ãƒ›ã‚¹ãƒˆã«ãƒã‚¤ãƒ‘ーãƒã‚¤ã‚¶ãƒ¼ã‚’インストールã—㦠IP アドレスを割り当ã¦ã€ãƒ›ã‚¹ãƒˆãŒ CloudStack 管ç†ã‚µãƒ¼ãƒãƒ¼ã«æŽ¥ç¶šã—ã¦ã„ã‚‹ã“ã¨ã‚’確èªã—ã¾ã™ã€‚

    ホスト㮠DNS åã¾ãŸã¯ IP アドレスã€ãƒ¦ãƒ¼ã‚¶ãƒ¼å (通常㯠root) ã¨ãƒ‘スワードã€ãŠã‚ˆã³ãƒ›ã‚¹ãƒˆã®åˆ†é¡žã«ä½¿ç”¨ã™ã‚‹ãƒ©ãƒ™ãƒ«ã‚’入力ã—ã¦ãã ã•ã„。 -message.desc.primary.storage=å„クラスターã«ã¯å°‘ãªãã¨ã‚‚ 1 ã¤ã€ãƒ—ライマリ ストレージ サーãƒãƒ¼ãŒå¿…è¦ã§ã™ã€‚今ã“ã“ã§æœ€åˆã®ã‚µãƒ¼ãƒãƒ¼ã‚’追加ã—ã¾ã™ã€‚プライマリ ストレージã¯ã€ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼å†…ã®ãƒ›ã‚¹ãƒˆä¸Šã§å‹•作ã™ã‚‹ã™ã¹ã¦ã® VM ã®ãƒ‡ã‚£ã‚¹ã‚¯ ボリュームを格ç´ã—ã¾ã™ã€‚基礎ã¨ãªã‚‹ãƒã‚¤ãƒ‘ーãƒã‚¤ã‚¶ãƒ¼ã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã‚‹ã€æ¨™æº–ã«æº–æ‹ ã—ãŸãƒ—ロトコルを使用ã—ã¦ãã ã•ã„。 -message.desc.secondary.storage=å„ゾーンã«ã¯å°‘ãªãã¨ã‚‚ 1 ã¤ã€NFS ã¤ã¾ã‚Šã‚»ã‚«ãƒ³ãƒ€ãƒª ストレージ サーãƒãƒ¼ãŒå¿…è¦ã§ã™ã€‚今ã“ã“ã§æœ€åˆã®ã‚µãƒ¼ãƒãƒ¼ã‚’追加ã—ã¾ã™ã€‚セカンダリ ストレージ㯠VM テンプレートã€ISO イメージã€ãŠã‚ˆã³VM ディスク ボリュームã®ã‚¹ãƒŠãƒƒãƒ—ショットを格ç´ã—ã¾ã™ã€‚ã“ã®ã‚µãƒ¼ãƒãƒ¼ã¯ã‚¾ãƒ¼ãƒ³å†…ã®ã™ã¹ã¦ã®ãƒ›ã‚¹ãƒˆã§ä½¿ç”¨ã§ãã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚

    IP アドレスã¨ã‚¨ã‚¯ã‚¹ãƒãƒ¼ãƒˆã•れãŸãƒ‘スを入力ã—ã¦ãã ã•ã„。 -label.launch.zone=ゾーンã®èµ·å‹• -message.please.wait.while.zone.is.being.created=ゾーンãŒä½œæˆã•れるã¾ã§ã—ã°ã‚‰ããŠå¾…ã¡ãã ã•ã„... - -label.load.balancing=è² è·åˆ†æ•£ -label.static.nat.enabled=é™çš„ NAT 有効 -label.zones=ゾーン -label.view.more=詳細表示 -label.number.of.zones=ゾーン数 -label.number.of.pods=ãƒãƒƒãƒ‰æ•° -label.number.of.clusters=クラスター数 -label.number.of.hosts=ホスト数 -label.total.hosts=ホストåˆè¨ˆ -label.total.CPU=CPU åˆè¨ˆ -label.total.memory=メモリåˆè¨ˆ -label.total.storage=ストレージåˆè¨ˆ -label.purpose=目的 - - - - -label.action.migrate.router=ルーターã®ç§»è¡Œ -label.action.migrate.router.processing=ルーターを移行ã—ã¦ã„ã¾ã™... -message.migrate.router.confirm=ルーターã®ç§»è¡Œå…ˆã¯æ¬¡ã®ãƒ›ã‚¹ãƒˆã§ã‚ˆã‚ã—ã„ã§ã™ã‹? -label.migrate.router.to=ルーターã®ç§»è¡Œå…ˆ: - -label.action.migrate.systemvm=システム VM ã®ç§»è¡Œ -label.action.migrate.systemvm.processing=システム VM を移行ã—ã¦ã„ã¾ã™... -message.migrate.systemvm.confirm=システム VM ã®ç§»è¡Œå…ˆã¯æ¬¡ã®ãƒ›ã‚¹ãƒˆã§ã‚ˆã‚ã—ã„ã§ã™ã‹? -label.migrate.systemvm.to=システム VM ã®ç§»è¡Œå…ˆ: - - -mode=モード -side.by.side=並列 -inline=直列 - -extractable=抽出å¯èƒ½ - -label.ocfs2=OCFS2 - -label.action.edit.host=ホストã®ç·¨é›† - -network.rate=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯é€Ÿåº¦ - -ICMP.type=ICMP ã®ç¨®é¡ž -ICMP.code=ICMP コード - -image.directory=ç”»åƒãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒª - -label.action.create.template.from.vm=VM ã‹ã‚‰ã®ãƒ†ãƒ³ãƒ—ãƒ¬ãƒ¼ãƒˆä½œæˆ -label.action.create.template.from.volume=ボリュームã‹ã‚‰ã®ãƒ†ãƒ³ãƒ—ãƒ¬ãƒ¼ãƒˆä½œæˆ - -message.vm.create.template.confirm=テンプレートを作æˆã™ã‚‹ã¨ VM ãŒè‡ªå‹•çš„ã«å†èµ·å‹•ã•れã¾ã™ã€‚ - -label.action.manage.cluster=クラスターã®ç®¡ç†å¯¾è±¡åŒ– -message.action.manage.cluster=クラスターを管ç†å¯¾è±¡ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.action.manage.cluster.processing=クラスターを管ç†å¯¾è±¡ã«ã—ã¦ã„ã¾ã™... - -label.action.unmanage.cluster=クラスターã®éžç®¡ç†å¯¾è±¡åŒ– -message.action.unmanage.cluster=クラスターをéžç®¡ç†å¯¾è±¡ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.action.unmanage.cluster.processing=クラスターをéžç®¡ç†å¯¾è±¡ã«ã—ã¦ã„ã¾ã™... - -label.allocation.state=割り当ã¦çŠ¶æ…‹ -managed.state=管ç†å¯¾è±¡çŠ¶æ…‹ - -label.default.use=デフォルト使用 -label.host.tags=ホスト ã‚¿ã‚° - +changed.item.properties=\\u9805\\u76EE\\u306E\\u30D7\\u30ED\\u30D1\\u30C6\\u30A3\\u306E\\u5909\\u66F4 +confirm.enable.s3=S3\u57fa\u76e4\u30bb\u30ab\u30f3\u30c0\u30ea\u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u6709\u52b9\u5316\u3059\u308b\u305f\u3081\u306b\u306f\u3001\u4ee5\u4e0b\u306e\u60c5\u5831\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044 +confirm.enable.swift=Swift1 \\u306E\\u30B5\\u30DD\\u30FC\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u306B\\u306F\\u3001\\u6B21\\u306E\\u60C5\\u5831\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +error.could.not.enable.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3067\\u304D\\u307E\\u305B\\u3093\\u3067\\u3057\\u305F +error.installWizard.message=\\u554F\\u984C\\u304C\\u767A\\u751F\\u3057\\u307E\\u3057\\u305F\\u3002\\u623B\\u3063\\u3066\\u30A8\\u30E9\\u30FC\\u3092\\u4FEE\\u6B63\\u3067\\u304D\\u307E\\u3059\\u3002 +error.invalid.username.password=\\u7121\\u52B9\\u306A\\u30E6\\u30FC\\u30B6\\u30FC\\u540D\\u307E\\u305F\\u306F\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 +error.login=\\u30E6\\u30FC\\u30B6\\u30FC\\u540D/\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u304C\\u8A18\\u9332\\u3068\\u4E00\\u81F4\\u3057\\u307E\\u305B\\u3093\\u3002 +error.menu.select=\u00e3\u0082\u00a2\u00e3\u0082\u00a4\u00e3\u0083\u0086\u00e3\u0083\u00a0\u00e3\u0081\u008c\u00e9\u0081\u00b8\u00e6\u008a\u009e\u00e3\u0081\u0095\u00e3\u0082\u008c\u00e3\u0081\u00a6\u00e3\u0081\u0084\u00e3\u0081\u00aa\u00e3\u0081\u0084\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0082\u00a2\u00e3\u0082\u00af\u00e3\u0082\u00b7\u00e3\u0083\u00a7\u00e3\u0083\u00b3\u00e3\u0082\u0092\u00e5\u00ae\u009f\u00e8\u00a1\u008c\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u0093\u00e3\u0081\u00a8\u00e3\u0081\u008c\u00e3\u0081\u00a7\u00e3\u0081\u008d\u00e3\u0081\u00be\u00e3\u0081\u009b\u00e3\u0082\u0093 +error.mgmt.server.inaccessible=\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002\\u5F8C\\u3067\\u518D\\u5B9F\\u884C\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +error.password.not.match=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u304C\\u4E00\\u81F4\\u3057\\u307E\\u305B\\u3093 +error.please.specify.physical.network.tags=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30BF\\u30B0\\u3092\\u6307\\u5B9A\\u3057\\u306A\\u3051\\u308C\\u3070\\u3001\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306F\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002 +error.session.expired=\\u30BB\\u30C3\\u30B7\\u30E7\\u30F3\\u306E\\u6709\\u52B9\\u671F\\u9650\\u304C\\u5207\\u308C\\u307E\\u3057\\u305F\\u3002 +error.something.went.wrong.please.correct.the.following=\\u554F\\u984C\\u304C\\u767A\\u751F\\u3057\\u307E\\u3057\\u305F\\u3002\\u6B21\\u306E\\u5185\\u5BB9\\u3092\\u4FEE\\u6B63\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +error.unable.to.reach.management.server=\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u901A\\u4FE1\\u3067\\u304D\\u307E\\u305B\\u3093 +error.unresolved.internet.name=\u3042\u306a\u305f\u306e\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u540d\u306f\u89e3\u6c7a\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002 +extractable=\\u62BD\\u51FA\\u53EF\\u80FD +force.delete.domain.warning=\\u8B66\\u544A\: \\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3059\\u308B\\u3068\\u3001\\u3059\\u3079\\u3066\\u306E\\u5B50\\u30C9\\u30E1\\u30A4\\u30F3\\u304A\\u3088\\u3073\\u95A2\\u9023\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3068\\u305D\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u304C\\u524A\\u9664\\u3055\\u308C\\u307E\\u3059\\u3002 +force.delete=\\u5F37\\u5236\\u524A\\u9664 +force.remove.host.warning=\\u8B66\\u544A\: \\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3059\\u308B\\u3068\\u3001\\u5B9F\\u884C\\u4E2D\\u306E\\u3059\\u3079\\u3066\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u304C\\u5F37\\u5236\\u7684\\u306B\\u505C\\u6B62\\u3055\\u308C\\u3001\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u304B\\u3089\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u304C\\u5F37\\u5236\\u7684\\u306B\\u89E3\\u9664\\u3055\\u308C\\u307E\\u3059\\u3002 +force.remove=\\u5F37\\u5236\\u89E3\\u9664 +force.stop.instance.warning=\\u8B66\\u544A\: \\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u5F37\\u5236\\u505C\\u6B62\\u306F\\u3001\\u6700\\u7D42\\u624B\\u6BB5\\u306B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u30C7\\u30FC\\u30BF\\u3092\\u640D\\u5931\\u3059\\u308B\\u3060\\u3051\\u3067\\u306A\\u304F\\u3001\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306E\\u52D5\\u4F5C\\u304C\\u4E00\\u8CAB\\u3057\\u306A\\u304F\\u306A\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +force.stop=\\u5F37\\u5236\\u505C\\u6B62 +ICMP.code=ICMP \\u30B3\\u30FC\\u30C9 +ICMP.type=ICMP \\u306E\\u7A2E\\u985E +image.directory=\\u753B\\u50CF\\u30C7\\u30A3\\u30EC\\u30AF\\u30C8\\u30EA +inline=\\u76F4\\u5217 +instances.actions.reboot.label=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u518D\\u8D77\\u52D5 +label.accept.project.invitation=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u62DB\\u5F85\\u306E\\u627F\\u8AFE +label.account.and.security.group=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3001\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 +label.account.id=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 ID +label.account.name=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u540D +label.account.specific=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u56FA\\u6709 +label.accounts=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.acquire.new.ip=\\u65B0\\u3057\\u3044 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u53D6\\u5F97 +label.action.attach.disk.processing=\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.attach.disk=\\u30C7\\u30A3\\u30B9\\u30AF\\u306E\\u30A2\\u30BF\\u30C3\\u30C1 +label.action.attach.iso=ISO \\u306E\\u30A2\\u30BF\\u30C3\\u30C1 +label.action.attach.iso.processing=ISO \\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.cancel.maintenance.mode.processing=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u3092\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.cancel.maintenance.mode=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u306E\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB +label.action.change.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u306E\\u5909\\u66F4 +label.action.change.service.processing=\\u30B5\\u30FC\\u30D3\\u30B9\\u3092\\u5909\\u66F4\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.change.service=\\u30B5\\u30FC\\u30D3\\u30B9\\u306E\\u5909\\u66F4 +label.action.copy.ISO=ISO \\u306E\\u30B3\\u30D4\\u30FC +label.action.copy.ISO.processing=ISO \\u3092\\u30B3\\u30D4\\u30FC\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.copy.template.processing=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u30B3\\u30D4\\u30FC\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.copy.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u30B3\\u30D4\\u30FC +label.action.create.template.from.vm=VM \\u304B\\u3089\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u4F5C\\u6210 +label.action.create.template.from.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u304B\\u3089\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u4F5C\\u6210 +label.action.create.template.processing=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.create.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210 +label.action.create.vm.processing=VM \\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.create.vm=VM \\u306E\\u4F5C\\u6210 +label.action.create.volume.processing=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.create.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u4F5C\\u6210 +label.action.delete.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u524A\\u9664 +label.action.delete.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u524A\\u9664 +label.action.delete.disk.offering.processing=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u524A\\u9664 +label.action.delete.domain.processing=\\u30C9\\u30E1\\u30A4\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.domain=\\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u524A\\u9664 +label.action.delete.firewall.processing=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.firewall=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u898F\\u5247\\u306E\\u524A\\u9664 +label.action.delete.ingress.rule.processing=\\u53D7\\u4FE1\\u898F\\u5247\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u524A\\u9664 +label.action.delete.IP.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u524A\\u9664 +label.action.delete.IP.range.processing=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.ISO=ISO \\u306E\\u524A\\u9664 +label.action.delete.ISO.processing=ISO \\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.load.balancer.processing=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u306E\\u524A\\u9664 +label.action.delete.network.processing=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u524A\\u9664 +label.action.delete.nexusVswitch=Nexus 1000V \\u306E\\u524A\\u9664 +label.action.delete.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u524A\\u9664 +label.action.delete.pod.processing=\\u30DD\\u30C3\\u30C9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u524A\\u9664 +label.action.delete.primary.storage.processing=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u524A\\u9664 +label.action.delete.secondary.storage.processing=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u524A\\u9664 +label.action.delete.security.group.processing=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.security.group=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u306E\\u524A\\u9664 +label.action.delete.service.offering.processing=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u524A\\u9664 +label.action.delete.snapshot.processing=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.snapshot=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u524A\\u9664 +label.action.delete.system.service.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u524A\\u9664 +label.action.delete.template.processing=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u524A\\u9664 +label.action.delete.user.processing=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u524A\\u9664 +label.action.delete.volume.processing=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u524A\\u9664 +label.action.delete.zone.processing=\\u30BE\\u30FC\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u524A\\u9664 +label.action.destroy.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u7834\\u68C4\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.destroy.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u7834\\u68C4 +label.action.destroy.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u7834\\u68C4\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.destroy.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u7834\\u68C4 +label.action.detach.disk.processing=\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.detach.disk=\\u30C7\\u30A3\\u30B9\\u30AF\\u306E\\u30C7\\u30BF\\u30C3\\u30C1 +label.action.detach.iso=ISO \\u306E\\u30C7\\u30BF\\u30C3\\u30C1 +label.action.detach.iso.processing=ISO \\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.disable.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.disable.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u7121\\u52B9\\u5316 +label.action.disable.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.disable.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u7121\\u52B9\\u5316 +label.action.disable.nexusVswitch=Nexus 1000V \\u306E\\u7121\\u52B9\\u5316 +label.action.disable.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u7121\\u52B9\\u5316 +label.action.disable.pod.processing=\\u30DD\\u30C3\\u30C9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.disable.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u7121\\u52B9\\u5316 +label.action.disable.static.NAT.processing=\\u9759\\u7684 NAT \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.disable.static.NAT=\\u9759\\u7684 NAT \\u306E\\u7121\\u52B9\\u5316 +label.action.disable.user.processing=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.disable.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u7121\\u52B9\\u5316 +label.action.disable.zone.processing=\\u30BE\\u30FC\\u30F3\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.disable.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u7121\\u52B9\\u5316 +label.action.download.ISO=ISO \\u306E\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9 +label.action.download.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9 +label.action.download.volume.processing=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.download.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9 +label.action.edit.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u7DE8\\u96C6 +label.action.edit.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u7DE8\\u96C6 +label.action.edit.domain=\\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u7DE8\\u96C6 +label.action.edit.global.setting=\\u30B0\\u30ED\\u30FC\\u30D0\\u30EB\\u8A2D\\u5B9A\\u306E\\u7DE8\\u96C6 +label.action.edit.host=\\u30DB\\u30B9\\u30C8\\u306E\\u7DE8\\u96C6 +label.action.edit.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u7DE8\\u96C6 +label.action.edit.ISO=ISO \\u306E\\u7DE8\\u96C6 +label.action.edit.network.offering=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u7DE8\\u96C6 +label.action.edit.network.processing=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u7DE8\\u96C6\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.edit.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u7DE8\\u96C6 +label.action.edit.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u7DE8\\u96C6 +label.action.edit.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u7DE8\\u96C6 +label.action.edit.resource.limits=\\u30EA\\u30BD\\u30FC\\u30B9\\u5236\\u9650\\u306E\\u7DE8\\u96C6 +label.action.edit.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u7DE8\\u96C6 +label.action.edit.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u7DE8\\u96C6 +label.action.edit.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u7DE8\\u96C6 +label.action.edit.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u7DE8\\u96C6 +label.action.enable.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.enable.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u6709\\u52B9\\u5316 +label.action.enable.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.enable.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u6709\\u52B9\\u5316 +label.action.enable.maintenance.mode.processing=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.enable.maintenance.mode=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u306E\\u6709\\u52B9\\u5316 +label.action.enable.nexusVswitch=Nexus 1000V \\u306E\\u6709\\u52B9\\u5316 +label.action.enable.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u6709\\u52B9\\u5316 +label.action.enable.pod.processing=\\u30DD\\u30C3\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.enable.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u6709\\u52B9\\u5316 +label.action.enable.static.NAT.processing=\\u9759\\u7684 NAT \\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.enable.static.NAT=\\u9759\\u7684 NAT \\u306E\\u6709\\u52B9\\u5316 +label.action.enable.user.processing=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.enable.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u6709\\u52B9\\u5316 +label.action.enable.zone.processing=\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.enable.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u6709\\u52B9\\u5316 +label.action.force.reconnect.processing=\\u518D\\u63A5\\u7D9A\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.force.reconnect=\\u5F37\\u5236\\u518D\\u63A5\\u7D9A +label.action.generate.keys.processing=\\u30AD\\u30FC\\u3092\\u751F\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.generate.keys=\\u30AD\\u30FC\\u306E\\u751F\\u6210 +label.action.list.nexusVswitch=Nexus 1000V \\u306E\\u4E00\\u89A7\\u8868\\u793A +label.action.lock.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u30ED\\u30C3\\u30AF\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.lock.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30ED\\u30C3\\u30AF +label.action.manage.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.manage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u7BA1\\u7406\\u5BFE\\u8C61\\u5316 +label.action.migrate.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.migrate.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C +label.action.migrate.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.migrate.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u79FB\\u884C +label.action.migrate.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u79FB\\u884C\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.migrate.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u79FB\\u884C +label.action.reboot.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.reboot.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u518D\\u8D77\\u52D5 +label.action.reboot.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.reboot.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u518D\\u8D77\\u52D5 +label.action.reboot.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.reboot.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u518D\\u8D77\\u52D5 +label.action.recurring.snapshot=\\u5B9A\\u671F\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 +label.action.register.iso=ISO \\u306E\\u767B\\u9332 +label.action.register.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u767B\\u9332 +label.action.release.ip=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u89E3\\u653E +label.action.release.ip.processing=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u89E3\\u653E\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.remove.host.processing=\\u30DB\\u30B9\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.remove.host=\\u30DB\\u30B9\\u30C8\\u306E\\u524A\\u9664 +label.action.reset.password.processing=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.reset.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u306E\\u30EA\\u30BB\\u30C3\\u30C8 +label.action.resource.limits=\\u30EA\\u30BD\\u30FC\\u30B9\\u5236\\u9650 +label.action.restore.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u5FA9\\u5143\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.restore.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u5FA9\\u5143 +label.action.start.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.start.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u8D77\\u52D5 +label.action.start.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.start.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u8D77\\u52D5 +label.action.start.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.start.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u8D77\\u52D5 +label.action.stop.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.stop.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u505C\\u6B62 +label.action.stop.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.stop.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u505C\\u6B62 +label.action.stop.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.stop.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u505C\\u6B62 +label.actions=\\u64CD\\u4F5C +label.action.take.snapshot.processing=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059.... +label.action.take.snapshot=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u4F5C\\u6210 +label.action.unmanage.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u975E\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.unmanage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u975E\\u7BA1\\u7406\\u5BFE\\u8C61\\u5316 +label.action.update.OS.preference=OS \\u57FA\\u672C\\u8A2D\\u5B9A\\u306E\\u66F4\\u65B0 +label.action.update.OS.preference.processing=OS \\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u66F4\\u65B0\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.update.resource.count.processing=\\u30EA\\u30BD\\u30FC\\u30B9\\u6570\\u3092\\u66F4\\u65B0\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.update.resource.count=\\u30EA\\u30BD\\u30FC\\u30B9\\u6570\\u306E\\u66F4\\u65B0 +label.activate.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6\\u5316 +label.active.sessions=\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6\\u306A\\u30BB\\u30C3\\u30B7\\u30E7\\u30F3 +label.add.accounts.to=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u8FFD\\u52A0\\u5148\: +label.add.accounts=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u8FFD\\u52A0 +label.add.account.to.project=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u8FFD\\u52A0 +label.add.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u8FFD\\u52A0 +label.add.ACL=ACL \\u306E\\u8FFD\\u52A0 +label.add.by.cidr=CIDR \\u3067\\u8FFD\\u52A0 +label.add.by.group=\\u30B0\\u30EB\\u30FC\\u30D7\\u3067\\u8FFD\\u52A0 +label.add.by=\\u8FFD\\u52A0\\u5358\\u4F4D +label.add.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u8FFD\\u52A0 +label.add.compute.offering=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 +label.add.direct.iprange=\\u76F4\\u63A5 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u8FFD\\u52A0 +label.add.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 +label.add.domain=\\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u8FFD\\u52A0 +label.add.egress.rule=\\u9001\\u4FE1\\u898F\\u5247\\u306E\\u8FFD\\u52A0 +label.add.F5.device=F5 \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 +label.add.firewall=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u898F\\u5247\\u306E\\u8FFD\\u52A0 +label.add.guest.network=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8FFD\\u52A0 +label.add.host=\\u30DB\\u30B9\\u30C8\\u306E\\u8FFD\\u52A0 +label.adding.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +label.adding.failed=\\u8FFD\\u52A0\\u3067\\u304D\\u307E\\u305B\\u3093\\u3067\\u3057\\u305F +label.adding.pod=\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +label.adding.processing=\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059... +label.add.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u8FFD\\u52A0 +label.adding.succeeded=\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u305F +label.adding=\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +label.adding.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +label.adding.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +label.add.ip.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u8FFD\\u52A0 +label.additional.networks=\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.add.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306E\\u8FFD\\u52A0 +label.add.more=\\u305D\\u306E\\u307B\\u304B\\u306E\\u9805\\u76EE\\u306E\\u8FFD\\u52A0 +label.add.netScaler.device=Netscaler \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 +label.add.network.ACL=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL \\u306E\\u8FFD\\u52A0 +label.add.network.device=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 +label.add.network.offering=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 +label.add.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8FFD\\u52A0 +label.add.new.F5=\\u65B0\\u3057\\u3044 F5 \\u306E\\u8FFD\\u52A0 +label.add.new.gateway=\\u65B0\\u3057\\u3044\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u8FFD\\u52A0 +label.add.new.NetScaler=\\u65B0\\u3057\\u3044 NetScaler \\u306E\\u8FFD\\u52A0 +label.add.new.SRX=\\u65B0\\u3057\\u3044 SRX \\u306E\\u8FFD\\u52A0 +label.add.new.tier=\\u65B0\\u3057\\u3044\\u968E\\u5C64\\u306E\\u8FFD\\u52A0 +label.add.NiciraNvp.device=NVP\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u8ffd\u52a0 +label.add.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8FFD\\u52A0 +label.add.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u8FFD\\u52A0 +label.add.port.forwarding.rule=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001\\u898F\\u5247\\u306E\\u8FFD\\u52A0 +label.add.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u8FFD\\u52A0 +label.add.resources=\\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u8FFD\\u52A0 +label.add.route=\\u30EB\\u30FC\\u30C8\\u306E\\u8FFD\\u52A0 +label.add.rule=\\u898F\\u5247\\u306E\\u8FFD\\u52A0 +label.add.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u8FFD\\u52A0 +label.add.security.group=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u306E\\u8FFD\\u52A0 +label.add.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 +label.add.SRX.device=SRX \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 +label.add.static.nat.rule=\\u9759\\u7684 NAT \\u898F\\u5247\\u306E\\u8FFD\\u52A0 +label.add.static.route=\\u9759\\u7684\\u30EB\\u30FC\\u30C8\\u306E\\u8FFD\\u52A0 +label.add.system.service.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 +label.add.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u8FFD\\u52A0 +label.add.to.group=\\u30B0\\u30EB\\u30FC\\u30D7\\u3078\\u306E\\u8FFD\\u52A0 +label.add=\\u8FFD\\u52A0 +label.add.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u8FFD\\u52A0 +label.add.vlan=VLAN \\u306E\\u8FFD\\u52A0 +label.add.vms.to.lb=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u3078\\u306E VM \\u306E\\u8FFD\\u52A0 +label.add.vms=VM \\u306E\\u8FFD\\u52A0 +label.add.VM.to.tier=\\u968E\\u5C64\\u3078\\u306E VM \\u306E\\u8FFD\\u52A0 +label.add.vm=VM \\u306E\\u8FFD\\u52A0 +label.add.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u8FFD\\u52A0 +label.add.vpc=VPC \\u306E\\u8FFD\\u52A0 +label.add.vpn.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u8FFD\\u52A0 +label.add.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u8FFD\\u52A0 +label.add.vpn.user=VPN \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u8FFD\\u52A0 +label.add.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u8FFD\\u52A0 +label.admin.accounts=\\u7BA1\\u7406\\u8005\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.admin=\\u7BA1\\u7406\\u8005 +label.advanced.mode=\\u62E1\\u5F35\\u30E2\\u30FC\\u30C9 +label.advanced.search=\\u9AD8\\u5EA6\\u306A\\u691C\\u7D22 +label.advanced=\\u62E1\\u5F35 +label.agent.password=\\u30A8\\u30FC\\u30B8\\u30A7\\u30F3\\u30C8 \\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 +label.agent.username=\\u30A8\\u30FC\\u30B8\\u30A7\\u30F3\\u30C8 \\u30E6\\u30FC\\u30B6\\u30FC\\u540D +label.agree=\\u540C\\u610F\\u3059\\u308B +label.alert=\\u30A2\\u30E9\\u30FC\\u30C8 +label.algorithm=\\u30A2\\u30EB\\u30B4\\u30EA\\u30BA\\u30E0 +label.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F +label.allocation.state=\\u5272\\u308A\\u5F53\\u3066\\u72B6\\u614B +label.api.key=API \\u30AD\\u30FC +label.apply=\\u9069\\u7528 +label.assign.to.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u3066\\u3044\\u307E\\u3059 +label.assign=\\u5272\\u308A\\u5F53\\u3066 +label.associated.network.id=\\u95A2\\u9023\\u3065\\u3051\\u3089\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID +label.associated.network=\\u95A2\\u9023\\u3065\\u3051\\u3089\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.attached.iso=\\u30A2\\u30BF\\u30C3\\u30C1\\u3055\\u308C\\u305F ISO +label.availability=\\u53EF\\u7528\\u6027 +label.availability.zone=\\u5229\\u7528\\u53EF\\u80FD\\u30BE\\u30FC\\u30F3 +label.available.public.ips=\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.available=\\u4F7F\\u7528\\u53EF\\u80FD +label.back=\\u623B\\u308B +label.bandwidth=\\u5E2F\\u57DF\\u5E45 +label.basic.mode=\\u57FA\\u672C\\u30E2\\u30FC\\u30C9 +label.basic=\\u57FA\\u672C +label.bootable=\\u8D77\\u52D5\\u53EF\\u80FD +label.broadcast.domain.range=\\u30D6\\u30ED\\u30FC\\u30C9\\u30AD\\u30E3\\u30B9\\u30C8 \\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u7BC4\\u56F2 +label.broadcast.domain.type=\\u30D6\\u30ED\\u30FC\\u30C9\\u30AD\\u30E3\\u30B9\\u30C8 \\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u7A2E\\u985E +label.broadcast.uri=Broadcast URI +label.by.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.by.availability=\\u53EF\\u7528\\u6027 +label.by.domain=\\u30C9\\u30E1\\u30A4\\u30F3 +label.by.end.date=\\u7D42\\u4E86\\u65E5 +label.by.level=\\u30EC\\u30D9\\u30EB +label.by.pod=\\u30DD\\u30C3\\u30C9 +label.by.role=\\u5F79\\u5272 +label.by.start.date=\\u958B\\u59CB\\u65E5 +label.by.state=\\u72B6\\u614B +label.bytes.received=\\u53D7\\u4FE1\\u30D0\\u30A4\\u30C8 +label.bytes.sent=\\u9001\\u4FE1\\u30D0\\u30A4\\u30C8 +label.by.traffic.type=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E +label.by.type.id=\\u7A2E\\u985E ID +label.by.type=\\u7A2E\\u985E +label.by.zone=\\u30BE\\u30FC\\u30F3 +label.cancel=\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB +label.capacity=\\u51E6\\u7406\\u80FD\\u529B +label.certificate=\\u8A3C\\u660E\\u66F8 +label.change.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u5909\\u66F4 +label.change.value=\\u5024\\u306E\\u5909\\u66F4 +label.character=\\u6587\\u5B57 +label.checksum=MD5 \\u30C1\\u30A7\\u30C3\\u30AF\\u30B5\\u30E0 +label.cidr.account=CIDR \\u307E\\u305F\\u306F\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8/\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 label.cidr=CIDR -label.cidr.list=é€ä¿¡å…ƒ CIDR - -label.storage.tags=ストレージ ã‚¿ã‚° - -label.redundant.router=冗長ルーター -label.is.redundant.router=冗長 - -force.delete=強制削除 -force.delete.domain.warning=警告: ã“ã®ã‚ªãƒ—ã‚·ãƒ§ãƒ³ã‚’é¸æŠžã™ã‚‹ã¨ã€ã™ã¹ã¦ã®å­ãƒ‰ãƒ¡ã‚¤ãƒ³ãŠã‚ˆã³é–¢é€£ã™ã‚‹ã™ã¹ã¦ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã¨ãã®ãƒªã‚½ãƒ¼ã‚¹ãŒå‰Šé™¤ã•れã¾ã™ã€‚ - -force.remove=強制解除 -force.remove.host.warning=警告: ã“ã®ã‚ªãƒ—ã‚·ãƒ§ãƒ³ã‚’é¸æŠžã™ã‚‹ã¨ã€å®Ÿè¡Œä¸­ã®ã™ã¹ã¦ã®ä»®æƒ³ãƒžã‚·ãƒ³ãŒå¼·åˆ¶çš„ã«åœæ­¢ã•れã€ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼ã‹ã‚‰ã“ã®ãƒ›ã‚¹ãƒˆãŒå¼·åˆ¶çš„ã«è§£é™¤ã•れã¾ã™ã€‚ - -force.stop=å¼·åˆ¶åœæ­¢ -force.stop.instance.warning=警告: インスタンスã®å¼·åˆ¶åœæ­¢ã¯ã€æœ€çµ‚手段ã«ã—ã¦ãã ã•ã„。データをæå¤±ã™ã‚‹ã ã‘ã§ãªãã€ä»®æƒ³ãƒžã‚·ãƒ³ã®å‹•作ãŒä¸€è²«ã—ãªããªã‚‹å¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚ - -label.PreSetup=PreSetup -label.SR.name = SR åラベル -label.SharedMountPoint=SharedMountPoint +label.CIDR.list=CIDR \\u4E00\\u89A7 +label.cidr.list=\\u9001\\u4FE1\\u5143 CIDR +label.CIDR.of.destination.network=\\u5B9B\\u5148\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E CIDR +label.clean.up=\\u30AF\\u30EA\\u30FC\\u30F3 \\u30A2\\u30C3\\u30D7 +label.clear.list=\\u4E00\\u89A7\\u306E\\u6D88\\u53BB +label.close=\\u9589\\u3058\\u308B +label.cloud.console=\\u30AF\\u30E9\\u30A6\\u30C9\\u7BA1\\u7406\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB +label.cloud.managed=Cloud.com \\u306B\\u3088\\u308B\\u7BA1\\u7406 +label.cluster.name=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u540D +label.clusters=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC +label.cluster.type=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u7A2E\\u985E +label.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC label.clvm=CLVM -label.volgroup=ボリューム グループ -label.VMFS.datastore=VMFS データストア - -label.network.device=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ デãƒã‚¤ã‚¹ -label.add.network.device=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ デãƒã‚¤ã‚¹ã®è¿½åŠ  -label.network.device.type=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ デãƒã‚¤ã‚¹ã®ç¨®é¡ž -label.DHCP.server.type=DHCP サーãƒãƒ¼ã®ç¨®é¡ž -label.Pxe.server.type=PXE サーãƒãƒ¼ã®ç¨®é¡ž -label.PING.storage.IP=PING 対象ã®ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ IP アドレス -label.PING.dir=PING ディレクトリ -label.TFTP.dir=TFTP ディレクトリ -label.PING.CIFS.username=PING CIFS ユーザーå -label.PING.CIFS.password=PING CIFS パスワード -label.CPU.cap=CPU åˆ¶é™ - - -label.action.enable.zone=ã‚¾ãƒ¼ãƒ³ã®æœ‰åŠ¹åŒ– -label.action.enable.zone.processing=ゾーンを有効ã«ã—ã¦ã„ã¾ã™... -message.action.enable.zone=ã“ã®ã‚¾ãƒ¼ãƒ³ã‚’有効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.action.disable.zone=ゾーンã®ç„¡åŠ¹åŒ– -label.action.disable.zone.processing=ゾーンを無効ã«ã—ã¦ã„ã¾ã™... -message.action.disable.zone=ã“ã®ã‚¾ãƒ¼ãƒ³ã‚’無効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? - -label.action.enable.pod=ãƒãƒƒãƒ‰ã®æœ‰åŠ¹åŒ– -label.action.enable.pod.processing=ãƒãƒƒãƒ‰ã‚’有効ã«ã—ã¦ã„ã¾ã™... -message.action.enable.pod=ã“ã®ãƒãƒƒãƒ‰ã‚’有効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.action.disable.pod=ãƒãƒƒãƒ‰ã®ç„¡åŠ¹åŒ– -label.action.disable.pod.processing=ãƒãƒƒãƒ‰ã‚’無効ã«ã—ã¦ã„ã¾ã™... -message.action.disable.pod=ã“ã®ãƒãƒƒãƒ‰ã‚’無効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? - -label.action.enable.cluster=ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼ã®æœ‰åŠ¹åŒ– -label.action.enable.cluster.processing=クラスターを有効ã«ã—ã¦ã„ã¾ã™... -message.action.enable.cluster=ã“ã®ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼ã‚’有効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -label.action.disable.cluster=クラスターã®ç„¡åŠ¹åŒ– -label.action.disable.cluster.processing=クラスターを無効ã«ã—ã¦ã„ã¾ã™... -message.action.disable.cluster=ã“ã®ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼ã‚’無効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? - -label.account.id=アカウント ID -label.account.name=アカウントå -label.account.specific=アカウント固有 -label.account=アカウント -label.accounts=アカウント -label.acquire.new.ip=æ–°ã—ã„ IP アドレスã®å–å¾— -label.show.ingress.rule=å—ä¿¡è¦å‰‡ã®è¡¨ç¤º -label.hide.ingress.rule=å—ä¿¡è¦å‰‡ã‚’éš ã™ -label.action.attach.disk.processing=ディスクをアタッãƒã—ã¦ã„ã¾ã™... -label.action.attach.disk=ディスクã®ã‚¢ã‚¿ãƒƒãƒ -label.action.attach.iso.processing=ISO をアタッãƒã—ã¦ã„ã¾ã™... -label.action.attach.iso=ISO ã®ã‚¢ã‚¿ãƒƒãƒ -label.action.cancel.maintenance.mode.processing=ä¿å®ˆãƒ¢ãƒ¼ãƒ‰ã‚’キャンセルã—ã¦ã„ã¾ã™... -label.action.cancel.maintenance.mode=ä¿å®ˆãƒ¢ãƒ¼ãƒ‰ã®ã‚­ãƒ£ãƒ³ã‚»ãƒ« -label.action.change.password=パスワードã®å¤‰æ›´ -label.action.change.service.processing=サービスを変更ã—ã¦ã„ã¾ã™... -label.action.change.service=サービスã®å¤‰æ›´ -label.action.copy.ISO.processing=ISO をコピーã—ã¦ã„ã¾ã™... -label.action.copy.ISO=ISO ã®ã‚³ãƒ”ー -label.action.copy.template.processing=テンプレートをコピーã—ã¦ã„ã¾ã™... -label.action.copy.template=テンプレートã®ã‚³ãƒ”ー -label.action.create.template.processing=テンプレートを作æˆã—ã¦ã„ã¾ã™... -label.action.create.template=テンプレートã®ä½œæˆ -label.action.create.vm.processing=VM を作æˆã—ã¦ã„ã¾ã™... -label.action.create.vm=VM ã®ä½œæˆ -label.action.create.volume.processing=ボリュームを作æˆã—ã¦ã„ã¾ã™... -label.action.create.volume=ボリュームã®ä½œæˆ -label.action.delete.IP.range.processing=IP アドレスã®ç¯„囲を削除ã—ã¦ã„ã¾ã™... -label.action.delete.IP.range=IP アドレスã®ç¯„囲ã®å‰Šé™¤ -label.action.delete.ISO.processing=ISO を削除ã—ã¦ã„ã¾ã™... -label.action.delete.ISO=ISO ã®å‰Šé™¤ -label.action.delete.account.processing=アカウントを削除ã—ã¦ã„ã¾ã™... -label.action.delete.account=アカウントã®å‰Šé™¤ -label.action.delete.cluster.processing=クラスターを削除ã—ã¦ã„ã¾ã™... -label.action.delete.cluster=クラスターã®å‰Šé™¤ -label.action.delete.disk.offering.processing=ディスク オファリングを削除ã—ã¦ã„ã¾ã™... -label.action.delete.disk.offering=ディスク オファリングã®å‰Šé™¤ - -label.action.update.resource.count=ãƒªã‚½ãƒ¼ã‚¹æ•°ã®æ›´æ–° -label.action.update.resource.count.processing=リソース数を更新ã—ã¦ã„ã¾ã™... - -label.action.delete.domain=ドメインã®å‰Šé™¤ -label.action.delete.domain.processing=ドメインを削除ã—ã¦ã„ã¾ã™... - -label.action.delete.firewall.processing=ファイアウォールを削除ã—ã¦ã„ã¾ã™... -label.action.delete.firewall=ファイアウォールè¦å‰‡ã®å‰Šé™¤ -label.action.delete.ingress.rule.processing=å—ä¿¡è¦å‰‡ã‚’削除ã—ã¦ã„ã¾ã™... -label.action.delete.ingress.rule=å—ä¿¡è¦å‰‡ã®å‰Šé™¤ -label.action.delete.load.balancer.processing=è² è·åˆ†æ•£è£…置を削除ã—ã¦ã„ã¾ã™... -label.action.delete.load.balancer=è² è·åˆ†æ•£è¦å‰‡ã®å‰Šé™¤ -label.action.edit.network.processing=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’編集ã—ã¦ã„ã¾ã™... -label.action.edit.network=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®ç·¨é›† -label.action.delete.network.processing=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’削除ã—ã¦ã„ã¾ã™... -label.action.delete.network=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®å‰Šé™¤ -label.action.delete.pod.processing=ãƒãƒƒãƒ‰ã‚’削除ã—ã¦ã„ã¾ã™... -label.action.delete.pod=ãƒãƒƒãƒ‰ã®å‰Šé™¤ -label.action.delete.primary.storage.processing=プライマリ ストレージを削除ã—ã¦ã„ã¾ã™... -label.action.delete.primary.storage=プライマリ ストレージã®å‰Šé™¤ -label.action.delete.secondary.storage.processing=セカンダリ ストレージを削除ã—ã¦ã„ã¾ã™... -label.action.delete.secondary.storage=セカンダリ ストレージã®å‰Šé™¤ -label.action.delete.security.group.processing=セキュリティ グループを削除ã—ã¦ã„ã¾ã™... -label.action.delete.security.group=セキュリティ グループã®å‰Šé™¤ -label.action.delete.service.offering.processing=サービス オファリングを削除ã—ã¦ã„ã¾ã™... -label.action.delete.service.offering=サービス オファリングã®å‰Šé™¤ -label.action.delete.snapshot.processing=スナップショットを削除ã—ã¦ã„ã¾ã™... -label.action.delete.snapshot=スナップショットã®å‰Šé™¤ -label.action.delete.template.processing=テンプレートを削除ã—ã¦ã„ã¾ã™... -label.action.delete.template=テンプレートã®å‰Šé™¤ -label.action.delete.user.processing=ユーザーを削除ã—ã¦ã„ã¾ã™... -label.action.delete.user=ユーザーã®å‰Šé™¤ -label.action.delete.volume.processing=ボリュームを削除ã—ã¦ã„ã¾ã™... -label.action.delete.volume=ボリュームã®å‰Šé™¤ -label.action.delete.zone.processing=ゾーンを削除ã—ã¦ã„ã¾ã™... -label.action.delete.zone=ゾーンã®å‰Šé™¤ -label.action.destroy.instance.processing=インスタンスを破棄ã—ã¦ã„ã¾ã™... -label.action.destroy.instance=インスタンスã®ç ´æ£„ -label.action.destroy.systemvm.processing=システム VM を破棄ã—ã¦ã„ã¾ã™... -label.action.destroy.systemvm=システム VM ã®ç ´æ£„ -label.action.detach.disk.processing=ディスクをデタッãƒã—ã¦ã„ã¾ã™... -label.action.detach.disk=ディスクã®ãƒ‡ã‚¿ãƒƒãƒ -label.action.detach.iso.processing=ISO をデタッãƒã—ã¦ã„ã¾ã™... -label.action.detach.iso=ISO ã®ãƒ‡ã‚¿ãƒƒãƒ -label.action.disable.account.processing=アカウントを無効ã«ã—ã¦ã„ã¾ã™... -label.action.disable.account=アカウントã®ç„¡åŠ¹åŒ– -label.action.disable.static.NAT.processing=é™çš„ NAT を無効ã«ã—ã¦ã„ã¾ã™... -label.action.disable.static.NAT=é™çš„ NAT ã®ç„¡åŠ¹åŒ– -label.action.disable.user.processing=ユーザーを無効ã«ã—ã¦ã„ã¾ã™... -label.action.disable.user=ユーザーã®ç„¡åŠ¹åŒ– -label.action.download.ISO=ISO ã®ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ -label.action.download.template=テンプレートã®ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ -label.action.download.volume.processing=ボリュームをダウンロードã—ã¦ã„ã¾ã™... -label.action.download.volume=ボリュームã®ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ -label.action.edit.ISO=ISO ã®ç·¨é›† -label.action.edit.account=アカウントã®ç·¨é›† -label.action.edit.disk.offering=ディスク オファリングã®ç·¨é›† -label.action.edit.domain=ドメインã®ç·¨é›† -label.action.edit.global.setting=グローãƒãƒ«è¨­å®šã®ç·¨é›† -label.action.edit.instance=インスタンスã®ç·¨é›† -label.action.edit.network.offering=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ オファリングã®ç·¨é›† -label.action.edit.pod=ãƒãƒƒãƒ‰ã®ç·¨é›† -label.action.edit.primary.storage=プライマリ ストレージã®ç·¨é›† -label.action.edit.resource.limits=リソース制é™ã®ç·¨é›† -label.action.edit.service.offering=サービス オファリングã®ç·¨é›† -label.action.edit.template=テンプレートã®ç·¨é›† -label.action.edit.user=ユーザーã®ç·¨é›† -label.action.edit.zone=ゾーンã®ç·¨é›† -label.action.enable.account.processing=アカウントを有効ã«ã—ã¦ã„ã¾ã™... -label.action.enable.account=ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã®æœ‰åŠ¹åŒ– -label.action.enable.maintenance.mode.processing=ä¿å®ˆãƒ¢ãƒ¼ãƒ‰ã‚’有効ã«ã—ã¦ã„ã¾ã™... -label.action.enable.maintenance.mode=ä¿å®ˆãƒ¢ãƒ¼ãƒ‰ã®æœ‰åŠ¹åŒ– -label.action.enable.static.NAT.processing=é™çš„ NAT を有効ã«ã—ã¦ã„ã¾ã™... -label.action.enable.static.NAT=é™çš„ NAT ã®æœ‰åŠ¹åŒ– -label.action.enable.user.processing=ユーザーを有効ã«ã—ã¦ã„ã¾ã™... -label.action.enable.user=ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®æœ‰åŠ¹åŒ– -label.action.force.reconnect.processing=å†æŽ¥ç¶šã—ã¦ã„ã¾ã™... -label.action.force.reconnect=å¼·åˆ¶å†æŽ¥ç¶š -label.action.generate.keys.processing=キーを生æˆã—ã¦ã„ã¾ã™... -label.action.generate.keys=キーã®ç”Ÿæˆ -label.action.lock.account.processing=アカウントをロックã—ã¦ã„ã¾ã™... -label.action.lock.account=アカウントã®ãƒ­ãƒƒã‚¯ -label.action.migrate.instance=インスタンスã®ç§»è¡Œ -label.action.migrate.instance.processing=インスタンスを移行ã—ã¦ã„ã¾ã™... -label.action.reboot.instance.processing=インスタンスをå†èµ·å‹•ã—ã¦ã„ã¾ã™... -label.action.reboot.instance=インスタンスã®å†èµ·å‹• -label.action.reboot.router.processing=ルーターをå†èµ·å‹•ã—ã¦ã„ã¾ã™... -label.action.reboot.router=ルーターã®å†èµ·å‹• -label.action.reboot.systemvm.processing=システム VM ã‚’å†èµ·å‹•ã—ã¦ã„ã¾ã™... -label.action.reboot.systemvm=システム VM ã®å†èµ·å‹• -label.action.recurring.snapshot=定期スナップショット -label.action.release.ip.processing=IP アドレスを解放ã—ã¦ã„ã¾ã™... -label.action.release.ip=IP アドレスã®è§£æ”¾ -label.action.remove.host.processing=ホストを削除ã—ã¦ã„ã¾ã™... -label.action.remove.host=ホストã®å‰Šé™¤ -label.action.reset.password.processing=パスワードをリセットã—ã¦ã„ã¾ã™... -label.action.reset.password=パスワードã®ãƒªã‚»ãƒƒãƒˆ -label.action.resource.limits=ãƒªã‚½ãƒ¼ã‚¹åˆ¶é™ -label.action.restore.instance.processing=インスタンスを復元ã—ã¦ã„ã¾ã™... -label.action.restore.instance=インスタンスã®å¾©å…ƒ -label.action.start.instance.processing=インスタンスを起動ã—ã¦ã„ã¾ã™... -label.action.start.instance=インスタンスã®èµ·å‹• -label.action.start.router.processing=ルーターを起動ã—ã¦ã„ã¾ã™... -label.action.start.router=ルーターã®èµ·å‹• -label.action.start.systemvm.processing=システム VM ã‚’èµ·å‹•ã—ã¦ã„ã¾ã™... -label.action.start.systemvm=システム VM ã®èµ·å‹• -label.action.stop.instance.processing=ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’åœæ­¢ã—ã¦ã„ã¾ã™... -label.action.stop.instance=インスタンスã®åœæ­¢ -label.action.stop.router.processing=ãƒ«ãƒ¼ã‚¿ãƒ¼ã‚’åœæ­¢ã—ã¦ã„ã¾ã™... -label.action.stop.router=ルーターã®åœæ­¢ -label.action.stop.systemvm.processing=システム VM ã‚’åœæ­¢ã—ã¦ã„ã¾ã™... -label.action.stop.systemvm=システム VM ã®åœæ­¢ -label.action.take.snapshot.processing=スナップショットを作æˆã—ã¦ã„ã¾ã™.... -label.action.take.snapshot=スナップショットã®ä½œæˆ -label.action.update.OS.preference.processing=OS 基本設定を更新ã—ã¦ã„ã¾ã™... -label.action.update.OS.preference=OS åŸºæœ¬è¨­å®šã®æ›´æ–° -label.actions=æ“作 -label.active.sessions=アクティブãªã‚»ãƒƒã‚·ãƒ§ãƒ³ -label.add.account=アカウントã®è¿½åŠ  -label.add.by.cidr=CIDR ã§è¿½åŠ  -label.add.by.group=グループã§è¿½åŠ  -label.add.cluster=クラスターã®è¿½åŠ  -label.add.direct.iprange=直接 IP アドレスã®ç¯„囲ã®è¿½åŠ  -label.add.disk.offering=ディスク オファリングã®è¿½åŠ  -label.add.domain=ドメインã®è¿½åŠ  -label.add.firewall=ファイアウォールè¦å‰‡ã®è¿½åŠ  -label.add.host=ホストã®è¿½åŠ  -label.add.ingress.rule=å—ä¿¡è¦å‰‡ã®è¿½åŠ  -label.add.ip.range=IP アドレスã®ç¯„囲ã®è¿½åŠ  -label.add.load.balancer=è² è·åˆ†æ•£è£…ç½®ã®è¿½åŠ  -label.add.more=ãã®ã»ã‹ã®é …ç›®ã®è¿½åŠ  -label.add.network=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®è¿½åŠ  -label.add.pod=ãƒãƒƒãƒ‰ã®è¿½åŠ  -label.add.primary.storage=プライマリ ストレージã®è¿½åŠ  -label.add.secondary.storage=セカンダリ ストレージã®è¿½åŠ  -label.add.security.group=セキュリティ グループã®è¿½åŠ  -label.add.service.offering=サービス オファリングã®è¿½åŠ  -label.add.template=テンプレートã®è¿½åŠ  -label.add.user=ユーザーã®è¿½åŠ  -label.add.vlan=VLAN ã®è¿½åŠ  -label.add.volume=ボリュームã®è¿½åŠ  -label.add.zone=ゾーンã®è¿½åŠ  -label.add=追加 -label.adding.cluster=クラスターを追加ã—ã¦ã„ã¾ã™ -label.adding.failed=追加ã§ãã¾ã›ã‚“ã§ã—㟠-label.adding.pod=ãƒãƒƒãƒ‰ã‚’追加ã—ã¦ã„ã¾ã™ -label.adding.processing=追加ã—ã¦ã„ã¾ã™... -label.adding.succeeded=追加ã—ã¾ã—㟠-label.adding.user=ユーザーを追加ã—ã¦ã„ã¾ã™ -label.adding.zone=ゾーンを追加ã—ã¦ã„ã¾ã™ -label.adding=追加ã—ã¦ã„ã¾ã™ -label.additional.networks=追加ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ -label.admin.accounts=管ç†è€…アカウント -label.admin=管ç†è€… -label.advanced.mode=拡張モード -label.advanced.search=é«˜åº¦ãªæ¤œç´¢ -label.advanced=æ‹¡å¼µ -label.alert=アラート -label.algorithm=アルゴリズム -label.allocated=å‰²ã‚Šå½“ã¦æ¸ˆã¿ -label.api.key=API キー -label.assign.to.load.balancer=è² è·åˆ†æ•£è£…ç½®ã«ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’割り当ã¦ã¦ã„ã¾ã™ -label.assign=割り当㦠-label.associated.network.id=関連ã¥ã‘られãŸãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ID -label.attached.iso=アタッãƒã•れ㟠ISO -label.availability.zone=利用å¯èƒ½ã‚¾ãƒ¼ãƒ³ -label.availability=å¯ç”¨æ€§ -label.available.public.ips=使用ã§ãるパブリック IP アドレス -label.available=使用å¯èƒ½ -label.back=戻る -label.basic.mode=基本モード -label.bootable=èµ·å‹•å¯èƒ½ -label.broadcast.domain.type=ブロードキャスト ドメインã®ç¨®é¡ž -label.by.account=アカウント -label.by.availability=å¯ç”¨æ€§ -label.by.domain=ドメイン -label.by.end.date=終了日 -label.by.level=レベル -label.by.pod=ãƒãƒƒãƒ‰ -label.by.role=役割 -label.by.start.date=é–‹å§‹æ—¥ -label.by.state=状態 -label.by.traffic.type=トラフィックã®ç¨®é¡ž -label.by.type.id=種類 ID -label.by.type=種類 -label.by.zone=ゾーン -label.bytes.received=å—ä¿¡ãƒã‚¤ãƒˆ -label.bytes.sent=é€ä¿¡ãƒã‚¤ãƒˆ -label.cancel=キャンセル -label.certificate=証明書 -label.privatekey=PKC#8 秘密キー -label.domain.suffix=DNS ドメイン サフィックス (例: xyz.com) -label.character=文字 -label.cidr.account=CIDR ã¾ãŸã¯ã‚¢ã‚«ã‚¦ãƒ³ãƒˆ/セキュリティ グループ -label.close=é–‰ã˜ã‚‹ -label.cloud.console=クラウド管ç†ã‚³ãƒ³ã‚½ãƒ¼ãƒ« -label.cloud.managed=Cloud.com ã«ã‚ˆã‚‹ç®¡ç† -label.cluster.type=クラスターã®ç¨®é¡ž -label.cluster=クラスター -label.code=コード -label.confirmation=ç¢ºèª -label.cpu.allocated.for.VMs=VM ã«å‰²ã‚Šå½“ã¦æ¸ˆã¿ã® CPU -label.cpu.allocated=å‰²ã‚Šå½“ã¦æ¸ˆã¿ã® CPU -label.cpu.utilized=CPU 使用率 +label.code=\\u30B3\\u30FC\\u30C9 +label.community=\\u30B3\\u30DF\\u30E5\\u30CB\\u30C6\\u30A3 +label.compute.and.storage=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0\\u3068\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.compute.offerings=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.compute.offering=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.compute=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 +label.configuration=\\u69CB\\u6210 +label.configure.network.ACLs=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL \\u306E\\u69CB\\u6210 +label.configure=\\u69CB\\u6210 +label.configure.vpc=VPC \\u306E\\u69CB\\u6210 +label.confirmation=\\u78BA\\u8A8D +label.confirm.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u306E\\u78BA\\u8A8D\\u5165\\u529B +label.congratulations=\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u306F\\u3053\\u308C\\u3067\\u5B8C\\u4E86\\u3067\\u3059\\u3002 +label.conserve.mode=\\u7BC0\\u7D04\\u30E2\\u30FC\\u30C9 +label.console.proxy=\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7 +label.continue.basic.install=\\u57FA\\u672C\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3092\\u7D9A\\u884C\\u3059\\u308B +label.continue=\\u7D9A\\u884C +label.corrections.saved=\\u63A5\\u7D9A\\u304C\\u4FDD\\u5B58\\u3055\\u308C\\u307E\\u3057\\u305F +label.cpu.allocated.for.VMs=VM \\u306B\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E CPU +label.cpu.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E CPU +label.CPU.cap=CPU \\u5236\\u9650 label.cpu=CPU -label.created=ä½œæˆæ—¥æ™‚ -label.cross.zones=クロス ゾーン -label.custom.disk.size=カスタム ディスク サイズ -label.daily=毎日 -label.data.disk.offering=データ ディスク オファリング -label.date=日時 -label.day.of.month=毎月指定日 -label.day.of.week=毎週指定日 -label.delete=削除 -label.deleting.failed=削除ã§ãã¾ã›ã‚“ã§ã—㟠-label.deleting.processing=削除ã—ã¦ã„ã¾ã™... -label.description=説明 -label.detaching.disk=ディスクをデタッãƒã—ã¦ã„ã¾ã™ -label.details=詳細 -label.device.id=デãƒã‚¤ã‚¹ ID -label.disabled=無効 -label.disabling.vpn.access=VPN アクセスを無効ã«ã—ã¦ã„ã¾ã™ -label.disk.allocated=å‰²ã‚Šå½“ã¦æ¸ˆã¿ã®ãƒ‡ã‚£ã‚¹ã‚¯ -label.disk.offering=ディスク オファリング -label.disk.size.gb=ディスク サイズ (GB å˜ä½) -label.disk.size=ディスク サイズ -label.disk.total=ディスクåˆè¨ˆ -label.disk.volume=ディスク ボリューム -label.display.text=表示テキスト +label.cpu.mhz=CPU (MHz) +label.cpu.utilized=CPU \\u4F7F\\u7528\\u7387 +label.created.by.system=\\u30B7\\u30B9\\u30C6\\u30E0\\u4F5C\\u6210 +label.created=\\u4F5C\\u6210\\u65E5\\u6642 +label.create.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u4F5C\\u6210 +label.create.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210 +label.create.VPN.connection=VPN \\u63A5\\u7D9A\\u306E\\u4F5C\\u6210 +label.cross.zones=\\u30AF\\u30ED\\u30B9 \\u30BE\\u30FC\\u30F3 +label.custom.disk.size=\\u30AB\\u30B9\\u30BF\\u30E0 \\u30C7\\u30A3\\u30B9\\u30AF \\u30B5\\u30A4\\u30BA +label.daily=\\u6BCE\\u65E5 +label.data.disk.offering=\\u30C7\\u30FC\\u30BF \\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.date=\\u65E5\\u6642 +label.day.of.month=\\u6BCE\\u6708\\u6307\\u5B9A\\u65E5 +label.day.of.week=\\u6BCE\\u9031\\u6307\\u5B9A\\u65E5 +label.dead.peer.detection=\\u505C\\u6B62\\u30D4\\u30A2\\u306E\\u691C\\u51FA +label.decline.invitation=\\u62DB\\u5F85\\u306E\\u8F9E\\u9000 +label.dedicated=\\u5C02\\u7528 +label.default=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 +label.default.use=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8\\u4F7F\\u7528 +label.default.view=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 \\u30D3\\u30E5\\u30FC +label.delete.F5=F5 \\u306E\\u524A\\u9664 +label.delete.gateway=\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u524A\\u9664 +label.delete.NetScaler=NetScaler \\u306E\\u524A\\u9664 +label.delete.NiciraNvp=NVP\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u524a\u9664 +label.delete.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u524A\\u9664 +label.delete.SRX=SRX \\u306E\\u524A\\u9664 +label.delete=\\u524A\\u9664 +label.delete.VPN.connection=VPN \\u63A5\\u7D9A\\u306E\\u524A\\u9664 +label.delete.VPN.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u524A\\u9664 +label.delete.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u524A\\u9664 +label.delete.vpn.user=VPN \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u524A\\u9664 +label.deleting.failed=\\u524A\\u9664\\u3067\\u304D\\u307E\\u305B\\u3093\\u3067\\u3057\\u305F +label.deleting.processing=\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.description=\\u8AAC\\u660E +label.destination.physical.network.id=\\u30D6\\u30EA\\u30C3\\u30B8\\u5148\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID +label.destination.zone=\\u30B3\\u30D4\\u30FC\\u5148\\u30BE\\u30FC\\u30F3 +label.destroy.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u7834\\u68C4 +label.destroy=\u7834\u68c4 +label.detaching.disk=\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059 +label.details=\\u8A73\\u7D30 +label.device.id=\\u30C7\\u30D0\\u30A4\\u30B9 ID +label.devices=\\u30C7\\u30D0\\u30A4\\u30B9 +label.dhcp=DHCP +label.DHCP.server.type=DHCP \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u7A2E\\u985E +label.direct.ips=\\u76F4\\u63A5 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.disabled=\\u7121\\u52B9 +label.disable.provider=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u306E\\u7121\\u52B9\\u5316 +label.disable.vpn=VPN \\u306E\\u7121\\u52B9\\u5316 +label.disabling.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 +label.disk.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E\\u30C7\\u30A3\\u30B9\\u30AF +label.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.disk.size.gb=\\u30C7\\u30A3\\u30B9\\u30AF \\u30B5\\u30A4\\u30BA (GB \\u5358\\u4F4D) +label.disk.size=\\u30C7\\u30A3\\u30B9\\u30AF \\u30B5\\u30A4\\u30BA +label.disk.total=\\u30C7\\u30A3\\u30B9\\u30AF\\u5408\\u8A08 +label.disk.volume=\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 +label.display.name=\\u8868\\u793A\\u540D +label.display.text=\\u8868\\u793A\\u30C6\\u30AD\\u30B9\\u30C8 label.dns.1=DNS 1 label.dns.2=DNS 2 -label.domain.admin=ドメイン管ç†è€… -label.domain.id=ドメイン ID -label.domain.name=ドメインå -label.domain=ドメイン -label.double.quotes.are.not.allowed=二é‡å¼•用符ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“ -label.download.progress=ダウンロードã®é€²æ—çŠ¶æ³ -label.edit=編集 -label.email=é›»å­ãƒ¡ãƒ¼ãƒ« -label.enabling.vpn.access=VPN アクセスを有効ã«ã—ã¦ã„ã¾ã™ -label.enabling.vpn=VPN を有効ã«ã—ã¦ã„ã¾ã™ -label.end.port=終了ãƒãƒ¼ãƒˆ -label.endpoint.or.operation=エンドãƒã‚¤ãƒ³ãƒˆã¾ãŸã¯æ“作 -label.error.code=エラー コード -label.error=エラー -label.esx.host=ESX/ESXi ホスト -label.example=例 -label.failed=失敗 -label.featured=ãŠã™ã™ã‚ -label.firewall=ファイアウォール -label.first.name=å -label.format=å½¢å¼ -label.friday=金曜日 -label.full=完全 -label.gateway=ゲートウェイ -label.general.alerts=一般アラート -label.generating.url=URL を生æˆã—ã¦ã„ã¾ã™ -label.go.step.2=手順 2 ã«é€²ã‚€ -label.go.step.3=手順 3 ã«é€²ã‚€ -label.go.step.4=手順 4 ã«é€²ã‚€ -label.go.step.5=手順 5 ã«é€²ã‚€ -label.group.optional=グループ (オプション) -label.group=グループ -label.guest.cidr=ゲスト CIDR -label.guest.gateway=ゲスト ゲートウェイ -label.guest.ip.range=ゲスト IP アドレスã®ç¯„囲 -label.guest.ip=ゲスト IP アドレス -label.guest.netmask=ゲスト ãƒãƒƒãƒˆãƒžã‚¹ã‚¯ -label.ha.enabled=高å¯ç”¨æ€§æœ‰åй -label.help=ヘルプ -label.host.alerts=ホスト アラート -label.host.name=ホストå -label.host=ホスト -label.hosts=ホスト -label.hourly=毎時 -label.hypervisor.type=ãƒã‚¤ãƒ‘ーãƒã‚¤ã‚¶ãƒ¼ã®ç¨®é¡ž -label.hypervisor=ãƒã‚¤ãƒ‘ーãƒã‚¤ã‚¶ãƒ¼ +label.dns=DNS +label.DNS.domain.for.guest.networks=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E DNS \\u30C9\\u30E1\\u30A4\\u30F3 +label.domain.admin=\\u30C9\\u30E1\\u30A4\\u30F3\\u7BA1\\u7406\\u8005 +label.domain.id=\\u30C9\\u30E1\\u30A4\\u30F3 ID +label.domain.name=\\u30C9\\u30E1\\u30A4\\u30F3\\u540D +label.domain.router=\\u30C9\\u30E1\\u30A4\\u30F3 \\u30EB\\u30FC\\u30BF\\u30FC +label.domain.suffix=DNS \\u30C9\\u30E1\\u30A4\\u30F3 \\u30B5\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9 (\\u4F8B\: xyz.com) +label.domain=\\u30C9\\u30E1\\u30A4\\u30F3 +label.done=\\u5B8C\\u4E86 +label.double.quotes.are.not.allowed=\\u4E8C\\u91CD\\u5F15\\u7528\\u7B26\\u306F\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u305B\\u3093 +label.download.progress=\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u306E\\u9032\\u6357\\u72B6\\u6CC1 +label.drag.new.position=\\u65B0\\u3057\\u3044\\u4F4D\\u7F6E\\u306B\\u30C9\\u30E9\\u30C3\\u30B0 +label.edit.lb.rule=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u306E\\u7DE8\\u96C6 +label.edit.network.details=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8A73\\u7D30\\u306E\\u7DE8\\u96C6 +label.edit.project.details=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u8A73\\u7D30\\u306E\\u7DE8\\u96C6 +label.edit.tags=\\u30BF\\u30B0\\u306E\\u7DE8\\u96C6 +label.edit.traffic.type=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u306E\\u7DE8\\u96C6 +label.edit=\\u7DE8\\u96C6 +label.edit.vpc=VPC \\u306E\\u7DE8\\u96C6 +label.egress.rules=\u9001\u4fe1\u30eb\u30fc\u30eb +label.egress.rule=\\u9001\\u4FE1\\u898F\\u5247 +label.elastic.IP=\\u30A8\\u30E9\\u30B9\\u30C6\\u30A3\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.elastic.LB=\\u30A8\\u30E9\\u30B9\\u30C6\\u30A3\\u30C3\\u30AF\\u8CA0\\u8377\\u5206\\u6563 +label.elastic=\\u30A8\\u30E9\\u30B9\\u30C6\\u30A3\\u30C3\\u30AF +label.email=\\u96FB\\u5B50\\u30E1\\u30FC\\u30EB +label.enable.provider=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u306E\\u6709\\u52B9\\u5316 +label.enable.s3=S3\u57fa\u76e4\u30bb\u30ab\u30f3\u30c0\u30ea\u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u6709\u52b9\u5316 +label.enable.swift=Swift \\u306E\\u6709\\u52B9\\u5316 +label.enable.vpn=VPN \\u306E\\u6709\\u52B9\\u5316 +label.enabling.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 +label.enabling.vpn=VPN \\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 +label.end.IP=\\u7D42\\u4E86 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.endpoint.or.operation=\\u30A8\\u30F3\\u30C9\\u30DD\\u30A4\\u30F3\\u30C8\\u307E\\u305F\\u306F\\u64CD\\u4F5C +label.endpoint=\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8 +label.end.port=\\u7D42\\u4E86\\u30DD\\u30FC\\u30C8 +label.end.reserved.system.IP=\\u4E88\\u7D04\\u6E08\\u307F\\u7D42\\u4E86\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.end.vlan=\\u7D42\\u4E86 VLAN +label.enter.token=\\u30C8\\u30FC\\u30AF\\u30F3\\u306E\\u5165\\u529B +label.error.code=\\u30A8\\u30E9\\u30FC \\u30B3\\u30FC\\u30C9 +label.error=\\u30A8\\u30E9\\u30FC +label.ESP.encryption=ESP \\u6697\\u53F7\\u5316 +label.ESP.hash=ESP \\u30CF\\u30C3\\u30B7\\u30E5 +label.ESP.policy=ESP \\u30DD\\u30EA\\u30B7\\u30FC +label.esx.host=ESX/ESXi \\u30DB\\u30B9\\u30C8 +label.example=\\u4F8B +label.f5=F5 +label.failed=\\u5931\\u6557 +label.featured=\\u304A\\u3059\\u3059\\u3081 +label.fetch.latest=\\u6700\\u65B0\\u60C5\\u5831\\u306E\\u53D6\\u5F97 +label.filterBy=\\u30D5\\u30A3\\u30EB\\u30BF\\u30FC +label.firewall=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB +label.first.name=\\u540D +label.format=\\u5F62\\u5F0F +label.friday=\\u91D1\\u66DC\\u65E5 +label.full.path=\\u30D5\\u30EB \\u30D1\\u30B9 +label.full=\\u5B8C\\u5168 +label.gateway=\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 +label.general.alerts=\\u4E00\\u822C\\u30A2\\u30E9\\u30FC\\u30C8 +label.generating.url=URL \\u3092\\u751F\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +label.go.step.2=\\u624B\\u9806 2 \\u306B\\u9032\\u3080 +label.go.step.3=\\u624B\\u9806 3 \\u306B\\u9032\\u3080 +label.go.step.4=\\u624B\\u9806 4 \\u306B\\u9032\\u3080 +label.go.step.5=\\u624B\\u9806 5 \\u306B\\u9032\\u3080 +label.group.optional=\\u30B0\\u30EB\\u30FC\\u30D7 (\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3) +label.group=\\u30B0\\u30EB\\u30FC\\u30D7 +label.guest.cidr=\\u30B2\\u30B9\\u30C8 CIDR +label.guest.end.ip=\\u30B2\\u30B9\\u30C8\\u306E\\u7D42\\u4E86 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.guest.gateway=\\u30B2\\u30B9\\u30C8 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 +label.guest.ip.range=\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 +label.guest.ip=\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.guest.netmask=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF +label.guest.networks=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.guest.start.ip=\\u30B2\\u30B9\\u30C8\\u306E\\u958B\\u59CB IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.guest.traffic=\\u30B2\\u30B9\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF +label.guest.type=\\u30B2\\u30B9\\u30C8\\u306E\\u7A2E\\u985E +label.guest=\\u30B2\\u30B9\\u30C8 +label.ha.enabled=\\u9AD8\\u53EF\\u7528\\u6027\\u6709\\u52B9 +label.help=\\u30D8\\u30EB\\u30D7 +label.hide.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u3092\\u96A0\\u3059 +label.hints=\\u30D2\\u30F3\\u30C8 +label.host.alerts=\\u30DB\\u30B9\\u30C8 \\u30A2\\u30E9\\u30FC\\u30C8 +label.host.MAC=\\u30DB\\u30B9\\u30C8\\u306E MAC +label.host.name=\\u30DB\\u30B9\\u30C8\\u540D +label.hosts=\\u30DB\\u30B9\\u30C8 +label.host.tags=\u00e3\u0083\u009b\u00e3\u0082\u00b9\u00e3\u0083\u0088\u00e3\u0082\u00bf\u00e3\u0082\u00b0 +label.host=\\u30DB\\u30B9\\u30C8 +label.hourly=\\u6BCE\\u6642 +label.hypervisor.capabilities=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306E\\u6A5F\\u80FD +label.hypervisor.type=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306E\\u7A2E\\u985E +label.hypervisor=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC +label.hypervisor.version=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306E\\u30D0\\u30FC\\u30B8\\u30E7\\u30F3 label.id=ID -label.info=情報 -label.ingress.rule=å—ä¿¡è¦å‰‡ -label.initiated.by=開始ユーザー -label.instance.limits=ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹åˆ¶é™ -label.instance.name=インスタンスå -label.instance=インスタンス -label.instances=インスタンス -label.internal.dns.1=内部 DNS 1 -label.internal.dns.2=内部 DNS 2 -label.interval.type=é–“éš”ã®ç¨®é¡ž -label.invalid.integer=ç„¡åŠ¹ãªæ•´æ•° -label.invalid.number=ç„¡åŠ¹ãªæ•° -label.ip.address=IP アドレス -label.ip.allocations=IP アドレスã®å‰²ã‚Šå½“㦠-label.ip.limits=パブリック IP アドレスã®åˆ¶é™ -label.ip.or.fqdn=IP アドレスã¾ãŸã¯ FQDN -label.ip.range=IP アドレスã®ç¯„囲 +label.IKE.DH=IKE DH +label.IKE.encryption=IKE \\u6697\\u53F7\\u5316 +label.IKE.hash=IKE \\u30CF\\u30C3\\u30B7\\u30E5 +label.IKE.policy=IKE \\u30DD\\u30EA\\u30B7\\u30FC +label.info=\\u60C5\\u5831 +label.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247 +label.initiated.by=\\u958B\\u59CB\\u30E6\\u30FC\\u30B6\\u30FC +label.installWizard.addClusterIntro.subtitle=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306B\\u3064\\u3044\\u3066 +label.installWizard.addClusterIntro.title=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 +label.installWizard.addHostIntro.subtitle=\\u30DB\\u30B9\\u30C8\\u306B\\u3064\\u3044\\u3066 +label.installWizard.addHostIntro.title=\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 +label.installWizard.addPodIntro.subtitle=\\u30DD\\u30C3\\u30C9\\u306B\\u3064\\u3044\\u3066 +label.installWizard.addPodIntro.title=\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 +label.installWizard.addPrimaryStorageIntro.subtitle=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u3064\\u3044\\u3066 +label.installWizard.addPrimaryStorageIntro.title=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 +label.installWizard.addSecondaryStorageIntro.subtitle=\u30bb\u30ab\u30f3\u30c0\u30ea\u30fc\u30b9\u30c8\u30ec\u30fc\u30b8\u3068\u306f\uff1f +label.installWizard.addSecondaryStorageIntro.title=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 +label.installWizard.addZoneIntro.subtitle=\\u30BE\\u30FC\\u30F3\\u306B\\u3064\\u3044\\u3066 +label.installWizard.addZoneIntro.title=\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 +label.installWizard.addZone.title=\\u30BE\\u30FC\\u30F3\\u306E\\u8FFD\\u52A0 +label.installWizard.click.launch=[\\u8D77\\u52D5] \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +label.installWizard.subtitle=\\u3053\\u306E\\u30AC\\u30A4\\u30C9 \\u30C4\\u30A2\\u30FC\\u306F CloudStack&\#8482; \\u74B0\\u5883\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u306B\\u5F79\\u7ACB\\u3061\\u307E\\u3059 +label.installWizard.title=CloudStack&\#8482; \\u3078\\u3088\\u3046\\u3053\\u305D +label.instance.limits=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u5236\\u9650 +label.instance.name=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u540D +label.instances=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.internal.dns.1=\\u5185\\u90E8 DNS 1 +label.internal.dns.2=\\u5185\\u90E8 DNS 2 +label.internal.name=\\u5185\\u90E8\\u540D +label.interval.type=\\u9593\\u9694\\u306E\\u7A2E\\u985E +label.introduction.to.cloudstack=CloudStack&\#8482; \\u306E\\u7D39\\u4ECB +label.invalid.integer=\\u7121\\u52B9\\u306A\\u6574\\u6570 +label.invalid.number=\\u7121\\u52B9\\u306A\\u6570 +label.invitations=\\u62DB\\u5F85\\u72B6 +label.invited.accounts=\\u62DB\\u5F85\\u6E08\\u307F\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.invite.to=\\u62DB\\u5F85\\u3059\\u308B\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\: +label.invite=\\u62DB\\u5F85 +label.ip.address=IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.ipaddress=IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.ip.allocations=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u5272\\u308A\\u5F53\\u3066 label.ip=IP +label.ip.limits=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u5236\\u9650 +label.ip.or.fqdn=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u307E\\u305F\\u306F FQDN +label.ip.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 +label.ip.ranges=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 +label.IPsec.preshared.key=IPsec \\u4E8B\\u524D\\u5171\\u6709\\u30AD\\u30FC label.ips=IP -label.is.default=デフォルト -label.is.shared=共有 -label.is.system=システム label.iscsi=iSCSI -label.iso.boot=ISO èµ·å‹• -label.iso=ISO -label.isolation.mode=分離モード -label.keep=ç¶­æŒ -label.lang.chinese=簡体字中国語 -label.lang.english=英語 -label.lang.japanese=日本語 -label.lang.korean=韓国語 -label.lang.spanish=スペイン語 -label.last.disconnected=最終切断日時 -label.last.name=å§“ -label.level=レベル -label.linklocal.ip=リンク ローカル IP アドレス -label.load.balancer=è² è·åˆ†æ•£è£…ç½® -label.loading=ロードã—ã¦ã„ã¾ã™ -label.local=ローカル -label.login=ログオン -label.logout=ログオフ +label.is.default=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 +label.iso.boot=ISO \\u8D77\\u52D5 +label.iso=ISO +label.isolated.networks=\\u5206\\u96E2\\u3055\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.isolation.method=\\u5206\\u96E2\\u65B9\\u6CD5 +label.isolation.mode=\\u5206\\u96E2\\u30E2\\u30FC\\u30C9 +label.isolation.uri=Isolation URI +label.is.redundant.router=\\u5197\\u9577 +label.is.shared=\\u5171\\u6709 +label.is.system=\\u30B7\\u30B9\\u30C6\\u30E0 +label.item.listing=\\u9805\\u76EE\\u4E00\\u89A7 +label.keep=\\u7DAD\\u6301 +label.keyboard.type=\\u30AD\\u30FC\\u30DC\\u30FC\\u30C9\\u306E\\u7A2E\\u985E +label.key=\\u30AD\\u30FC +label.kvm.traffic.label=KVM \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u30E9\\u30D9\\u30EB +label.label=\\u30E9\\u30D9\\u30EB +label.lang.brportugese=Brazilian Portugese +label.lang.chinese=\\u7C21\\u4F53\\u5B57\\u4E2D\\u56FD\\u8A9E +label.lang.english=\\u82F1\\u8A9E +label.lang.french=French +label.lang.japanese=\\u65E5\\u672C\\u8A9E +label.lang.russian=Russian +label.lang.spanish=\\u30B9\\u30DA\\u30A4\\u30F3\\u8A9E +label.last.disconnected=\\u6700\\u7D42\\u5207\\u65AD\\u65E5\\u6642 +label.last.name=\\u59D3 +label.latest.events=\\u6700\\u65B0\\u30A4\\u30D9\\u30F3\\u30C8 +label.launch=\\u8D77\\u52D5 +label.launch.vm=VM \\u306E\\u8D77\\u52D5 +label.LB.isolation=\\u8CA0\\u8377\\u5206\\u6563\\u5206\\u96E2 +label.least.connections=\\u6700\\u5C0F\\u63A5\\u7D9A +label.level=\\u30EC\\u30D9\\u30EB +label.linklocal.ip=\\u30EA\\u30F3\\u30AF \\u30ED\\u30FC\\u30AB\\u30EB IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E +label.load.balancing.policies=\\u8CA0\\u8377\\u5206\\u6563\\u30DD\\u30EA\\u30B7\\u30FC +label.load.balancing=\\u8CA0\\u8377\\u5206\\u6563 +label.loading=\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3044\\u307E\\u3059 +label.local.storage.enabled=\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F\\u6709\\u52B9\\u3067\\u3059 +label.local.storage=\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.local=\\u30ED\\u30FC\\u30AB\\u30EB +label.login=\\u30ED\\u30B0\\u30AA\\u30F3 +label.logout=\\u30ED\\u30B0\\u30AA\\u30D5 label.lun=LUN -label.manage=ç®¡ç† -label.maximum=最大 -label.memory.allocated=å‰²ã‚Šå½“ã¦æ¸ˆã¿ã®ãƒ¡ãƒ¢ãƒª -label.memory.total=メモリåˆè¨ˆ -label.memory.used=ãƒ¡ãƒ¢ãƒªä½¿ç”¨é‡ -label.memory=メモリ -label.menu.accounts=アカウント -label.menu.alerts=アラート -label.menu.all.accounts=ã™ã¹ã¦ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆ -label.menu.all.instances=ã™ã¹ã¦ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ -label.menu.community.isos=コミュニティ ISO -label.menu.community.templates=コミュニティ テンプレート -label.menu.configuration=æ§‹æˆ -label.menu.dashboard=ダッシュボード -label.menu.destroyed.instances=破棄ã•れãŸã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ -label.menu.disk.offerings=ディスク オファリング -label.menu.domains=ドメイン -label.menu.events=イベント -label.menu.featured.isos=ãŠã™ã™ã‚ã® ISO -label.menu.featured.templates=ãŠã™ã™ã‚ã®ãƒ†ãƒ³ãƒ—レート -label.menu.global.settings=グローãƒãƒ«è¨­å®š -label.menu.instances=インスタンス -label.menu.ipaddresses=IP アドレス +label.LUN.number=LUN \\u756A\\u53F7 +label.make.project.owner=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u6240\\u6709\\u8005\\u5316 +label.management.ips=\\u7BA1\\u7406 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.management=\\u7BA1\\u7406 +label.manage.resources=\\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u7BA1\\u7406 +label.manage=\\u7BA1\\u7406 +label.max.guest.limit=\\u6700\\u5927\\u30B2\\u30B9\\u30C8\\u5236\\u9650 +label.maximum=\\u6700\\u5927 +label.max.networks=\\u6700\\u5927\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6570 +label.max.public.ips=\\u6700\\u5927\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u6570 +label.max.snapshots=\\u6700\\u5927\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u6570 +label.max.templates=\\u6700\\u5927\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u6570 +label.max.vms=\\u6700\\u5927\\u30E6\\u30FC\\u30B6\\u30FC VM \\u6570 +label.max.volumes=\\u6700\\u5927\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u6570 +label.max.vpcs=Max. VPCs +label.may.continue=\\u7D9A\\u884C\\u3067\\u304D\\u307E\\u3059\\u3002 +label.memory.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E\\u30E1\\u30E2\\u30EA +label.memory.mb=\\u30E1\\u30E2\\u30EA (MB) +label.memory.total=\\u30E1\\u30E2\\u30EA\\u5408\\u8A08 +label.memory=\\u30E1\\u30E2\\u30EA +label.memory.used=\\u30E1\\u30E2\\u30EA\\u4F7F\\u7528\\u91CF +label.menu.accounts=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.menu.alerts=\\u30A2\\u30E9\\u30FC\\u30C8 +label.menu.all.accounts=\\u3059\\u3079\\u3066\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.menu.all.instances=\\u3059\\u3079\\u3066\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.menu.community.isos=\\u30B3\\u30DF\\u30E5\\u30CB\\u30C6\\u30A3 ISO +label.menu.community.templates=\\u30B3\\u30DF\\u30E5\\u30CB\\u30C6\\u30A3 \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 +label.menu.configuration=\\u69CB\\u6210 +label.menu.dashboard=\\u30C0\\u30C3\\u30B7\\u30E5\\u30DC\\u30FC\\u30C9 +label.menu.destroyed.instances=\\u7834\\u68C4\\u3055\\u308C\\u305F\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.menu.disk.offerings=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.menu.domains=\\u30C9\\u30E1\\u30A4\\u30F3 +label.menu.events=\\u30A4\\u30D9\\u30F3\\u30C8 +label.menu.featured.isos=\\u304A\\u3059\\u3059\\u3081\\u306E ISO +label.menu.featured.templates=\\u304A\\u3059\\u3059\\u3081\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 +label.menu.global.settings=\\u30B0\\u30ED\\u30FC\\u30D0\\u30EB\\u8A2D\\u5B9A +label.menu.infrastructure=\\u30A4\\u30F3\\u30D5\\u30E9\\u30B9\\u30C8\\u30E9\\u30AF\\u30C1\\u30E3 +label.menu.instances=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.menu.ipaddresses=IP \\u30A2\\u30C9\\u30EC\\u30B9 label.menu.isos=ISO -label.menu.my.accounts=マイ アカウント -label.menu.my.instances=マイ インスタンス -label.menu.my.isos=マイ ISO -label.menu.my.templates=マイ テンプレート -label.menu.network.offerings=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ オファリング -label.menu.network=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ -label.menu.physical.resources=物ç†ãƒªã‚½ãƒ¼ã‚¹ -label.menu.running.instances=実行中ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ -label.menu.security.groups=セキュリティ グループ -label.menu.service.offerings=サービス オファリング -label.menu.snapshots=スナップショット -label.menu.stopped.instances=åœæ­¢ã•れãŸã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ -label.menu.storage=ストレージ -label.menu.system.vms=システム VM -label.menu.system=システム -label.menu.templates=テンプレート -label.menu.virtual.appliances=仮想アプライアンス -label.menu.virtual.resources=仮想リソース -label.menu.volumes=ボリューム -label.migrate.instance.to=インスタンスã®ç§»è¡Œå…ˆ: -label.minimum=æœ€å° -label.minute.past.hour=分 (毎時) -label.monday=月曜日 -label.monthly=毎月 -label.more.templates=ãã®ã»ã‹ã®ãƒ†ãƒ³ãƒ—レート -label.my.account=マイ アカウント -label.name.optional=åå‰ (オプション) -label.name=åå‰ -label.netmask=ãƒãƒƒãƒˆãƒžã‚¹ã‚¯ -label.network.desc=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®èª¬æ˜Ž -label.network.domain=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ドメイン -label.network.id=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ID -label.network.name=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯å -label.network.offering.display.text=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ オファリング表示テキスト -label.network.offering.id=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ オファリング ID -label.network.offering.name=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ オファリングå -label.network.offering=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ オファリング -label.network.rate=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯é€Ÿåº¦ -label.network.read=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®èª­ã¿å–り -label.network.type=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®ç¨®é¡ž -label.network.write=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®æ›¸ã込㿠-label.network=ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ -label.new.password=æ–°ã—ã„パスワード -label.next=次㸠-label.nfs.server=NFS サーãƒãƒ¼ -label.nfs.storage=NFS ストレージ +label.menu.my.accounts=\\u30DE\\u30A4 \\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.menu.my.instances=\\u30DE\\u30A4 \\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.menu.my.isos=\\u30DE\\u30A4 ISO +label.menu.my.templates=\\u30DE\\u30A4 \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 +label.menu.network.offerings=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.menu.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.menu.physical.resources=\\u7269\\u7406\\u30EA\\u30BD\\u30FC\\u30B9 +label.menu.running.instances=\\u5B9F\\u884C\\u4E2D\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.menu.security.groups=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 +label.menu.service.offerings=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.menu.snapshots=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 +label.menu.stopped.instances=\\u505C\\u6B62\\u3055\\u308C\\u305F\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.menu.storage=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.menu.system.service.offerings=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.menu.system=\\u30B7\\u30B9\\u30C6\\u30E0 +label.menu.system.vms=\\u30B7\\u30B9\\u30C6\\u30E0 VM +label.menu.templates=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 +label.menu.virtual.appliances=\\u4EEE\\u60F3\\u30A2\\u30D7\\u30E9\\u30A4\\u30A2\\u30F3\\u30B9 +label.menu.virtual.resources=\\u4EEE\\u60F3\\u30EA\\u30BD\\u30FC\\u30B9 +label.menu.volumes=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 +label.migrate.instance.to.host=\\u5225\\u306E\\u30DB\\u30B9\\u30C8\\u3078\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C +label.migrate.instance.to.ps=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3078\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C +label.migrate.instance.to=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C\\u5148\: +label.migrate.router.to=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u79FB\\u884C\\u5148\: +label.migrate.systemvm.to=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u79FB\\u884C\\u5148\: +label.migrate.to.host=\u30db\u30b9\u30c8\u3078\u79fb\u884c +label.migrate.to.storage=\u30b9\u30c8\u30ec\u30fc\u30b8\u3078\u79fb\u884c +label.migrate.volume=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3078\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u79FB\\u884C +label.minimum=\\u6700\\u5C0F +label.minute.past.hour=\\u5206 (\\u6BCE\\u6642) +label.monday=\\u6708\\u66DC\\u65E5 +label.monthly=\\u6BCE\\u6708 +label.more.templates=\\u305D\\u306E\\u307B\\u304B\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 +label.move.down.row=1 \\u884C\\u4E0B\\u306B\\u79FB\\u52D5 +label.move.to.bottom=\\u6700\\u4E0B\\u4F4D\\u306B\\u79FB\\u52D5 +label.move.to.top=\\u6700\\u4E0A\\u4F4D\\u306B\\u79FB\\u52D5 +label.move.up.row=1 \\u884C\\u4E0A\\u306B\\u79FB\\u52D5 +label.my.account=\\u30DE\\u30A4 \\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.my.network=\\u30DE\\u30A4 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.my.templates=\\u30DE\\u30A4 \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 +label.name.optional=\\u540D\\u524D (\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3) +label.name=\\u540D\\u524D +label.nat.port.range=NAT \\u30DD\\u30FC\\u30C8\\u306E\\u7BC4\\u56F2 +label.netmask=\\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF +label.netScaler=NetScaler +label.network.ACLs=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL +label.network.ACL.total=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL \\u5408\\u8A08 +label.network.ACL=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL +label.network.desc=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8AAC\\u660E +label.network.device.type=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u7A2E\\u985E +label.network.device=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C7\\u30D0\\u30A4\\u30B9 +label.network.domain.text=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C9\\u30E1\\u30A4\\u30F3 +label.network.domain=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C9\\u30E1\\u30A4\\u30F3 +label.network.id=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID +label.networking.and.security=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3068\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 +label.network.label.display.for.blank.value=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u4F7F\\u7528 +label.network.name=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u540D +label.network.offering.display.text=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u8868\\u793A\\u30C6\\u30AD\\u30B9\\u30C8 +label.network.offering.id=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 ID +label.network.offering.name=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u540D +label.network.offering=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.network.rate.megabytes=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u901F\\u5EA6 (MB/\\u79D2) +label.network.rate=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u901F\\u5EA6 +label.network.read=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8AAD\\u307F\\u53D6\\u308A +label.network.service.providers=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30B5\\u30FC\\u30D3\\u30B9 \\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC +label.networks=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.network.type=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u7A2E\\u985E +label.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.network.write=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u66F8\\u304D\\u8FBC\\u307F +label.new.password=\\u65B0\\u3057\\u3044\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 +label.new.project=\\u65B0\\u3057\\u3044\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 +label.new=\\u65B0\\u898F +label.new.vm=\\u65B0\\u3057\\u3044 VM +label.next=\\u6B21\\u3078 +label.nexusVswitch=Nexus 1000V label.nfs=NFS +label.nfs.server=NFS \\u30B5\\u30FC\\u30D0\\u30FC +label.nfs.storage=NFS \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.nic.adapter.type=NIC \\u30A2\\u30C0\\u30D7\\u30BF\\u30FC\\u306E\\u7A2E\\u985E +label.nicira.controller.address=\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u30a2\u30c9\u30ec\u30b9 +label.nicira.l3gatewayserviceuuid=L3 \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u30b5\u30fc\u30d3\u30b9UUID +label.nicira.transportzoneuuid=Transport Zone Uuid label.nics=NIC -label.no.actions=実行ã§ãã‚‹æ“作ã¯ã‚りã¾ã›ã‚“ -label.no.alerts=最近ã®ã‚¢ãƒ©ãƒ¼ãƒˆã¯ã‚りã¾ã›ã‚“ -label.no.errors=最近ã®ã‚¨ãƒ©ãƒ¼ã¯ã‚りã¾ã›ã‚“ -label.no.isos=使用ã§ãã‚‹ ISO ã¯ã‚りã¾ã›ã‚“ -label.no.items=使用ã§ãã‚‹é …ç›®ã¯ã‚りã¾ã›ã‚“ -label.no.security.groups=使用ã§ãるセキュリティ グループã¯ã‚りã¾ã›ã‚“ -label.no.thanks=設定ã—ãªã„ -label.no=ã„ã„㈠-label.none=ãªã— -label.not.found=見ã¤ã‹ã‚Šã¾ã›ã‚“ -label.num.cpu.cores=CPU コア数 -label.numretries=å†è©¦è¡Œå›žæ•° -label.offer.ha=高å¯ç”¨æ€§ã®æä¾› -label.optional=オプション -label.os.preference=OS 基本設定 -label.os.type=OS ã®ç¨®é¡ž -label.owned.public.ips=所有ã™ã‚‹ãƒ‘ブリック IP アドレス -label.owner.account=所有者アカウント -label.owner.domain=所有者ドメイン -label.parent.domain=親ドメイン -label.password.enabled=ãƒ‘ã‚¹ãƒ¯ãƒ¼ãƒ‰ç®¡ç†æœ‰åй -label.password=パスワード -label.path=パス -label.please.wait=ãŠå¾…ã¡ãã ã•ã„ -label.pod=ãƒãƒƒãƒ‰ -label.port.forwarding=ãƒãƒ¼ãƒˆè»¢é€ -label.port.range=ãƒãƒ¼ãƒˆã®ç¯„囲 -label.prev=戻る -label.primary.allocated=å‰²ã‚Šå½“ã¦æ¸ˆã¿ã®ãƒ—ライマリ ストレージ -label.primary.network=プライマリ ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ -label.primary.storage=プライマリ ストレージ -label.primary.used=プライマリ ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ä½¿ç”¨é‡ -label.private.interface=プライベート インターフェイス -label.private.ip.range=プライベート IP アドレスã®ç¯„囲 -label.private.ip=プライベート IP アドレス -label.private.ips=プライベート IP アドレス -label.private.port=プライベート ãƒãƒ¼ãƒˆ -label.private.zone=プライベート ゾーン -label.protocol=プロトコル -label.public.interface=パブリック インターフェイス -label.public.ip=パブリック IP アドレス -label.public.ips=パブリック IP アドレス -label.public.port=パブリック ãƒãƒ¼ãƒˆ -label.public.zone=パブリック ゾーン -label.public=パブリック -label.recent.errors=最近ã®ã‚¨ãƒ©ãƒ¼ -label.refresh=æ›´æ–° -label.related=関連 -label.remove.from.load.balancer=è² è·åˆ†æ•£è£…ç½®ã‹ã‚‰ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’削除ã—ã¦ã„ã¾ã™ -label.removing.user=ユーザーを削除ã—ã¦ã„ã¾ã™ -label.required=å¿…é ˆã§ã™ -label.reserved.system.ip=予約済ã¿ã‚·ã‚¹ãƒ†ãƒ  IP アドレス -label.resource.limits=ãƒªã‚½ãƒ¼ã‚¹åˆ¶é™ -label.resource=リソース -label.resources=リソース -label.role=役割 -label.root.disk.offering=ルート ディスク オファリング -label.running.vms=実行中㮠VM -label.saturday=土曜日 -label.save=ä¿å­˜ -label.saving.processing=ä¿å­˜ã—ã¦ã„ã¾ã™... -label.scope=スコープ -label.search=検索 -label.secondary.storage=セカンダリ ストレージ -label.secondary.used=セカンダリ ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ä½¿ç”¨é‡ -label.secret.key=秘密キー -label.security.group.name=セキュリティ グループå -label.security.group=セキュリティ グループ -label.security.groups.enabled=セキュリティ グループ有効 -label.security.groups=セキュリティ グループ -label.sent=é€ä¿¡æ¸ˆã¿ -label.server=サーãƒãƒ¼ -label.service.offering=サービス オファリング -label.system.service.offering=システム サービス オファリング -label.session.expired=ã‚»ãƒƒã‚·ãƒ§ãƒ³ã®æœ‰åŠ¹æœŸé™ãŒåˆ‡ã‚Œã¾ã—㟠-label.shared=共有 -label.size=サイズ -label.snapshot.limits=ã‚¹ãƒŠãƒƒãƒ—ã‚·ãƒ§ãƒƒãƒˆåˆ¶é™ -label.snapshot.name=スナップショットå -label.snapshot.s=スナップショット -label.snapshot.schedule=定期スナップショットã®ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ— -label.snapshot=スナップショット -label.snapshots=スナップショット -label.source.nat=é€ä¿¡å…ƒ NAT -label.specify.vlan=VLAN ã®æŒ‡å®š -label.start.port=é–‹å§‹ãƒãƒ¼ãƒˆ -label.state=状態 -label.static.nat.to=é™çš„ NAT ã®è¨­å®šå…ˆ: -label.static.nat=é™çš„ NAT -label.statistics=統計 -label.status=状態 -label.step.1.title=手順 1. テンプレートã®é¸æŠž -label.step.1=手順 1 -label.step.2.title=手順 2. サービス オファリング -label.step.2=手順 2 -label.step.3.title=手順 3. ディスク オファリングã®é¸æŠž -label.step.3=手順 3 -label.step.4.title=手順 4. ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ -label.step.4=手順 4 -label.step.5.title=手順 5. ç¢ºèª -label.step.5=手順 5 -label.stopped.vms=åœæ­¢ä¸­ã® VM -label.storage.type=ストレージã®ç¨®é¡ž -label.storage=ストレージ -label.submit=é€ä¿¡ -label.submitted.by=[é€ä¿¡ãƒ¦ãƒ¼ã‚¶ãƒ¼: ] -label.succeeded=æˆåŠŸ -label.sunday=日曜日 -label.system.capacity=システムã®å‡¦ç†èƒ½åŠ› -label.system.vm.type=システム VM ã®ç¨®é¡ž -label.system.vm=システム VM -label.system.vms=システム VM -label.tagged=ã‚¿ã‚°ã‚り -label.tags=ã‚¿ã‚° -label.target.iqn=ターゲット IQN -label.template.limits=ãƒ†ãƒ³ãƒ—ãƒ¬ãƒ¼ãƒˆåˆ¶é™ -label.template=テンプレート -label.theme.default=デフォルト テーマ -label.theme.grey=カスタム - グレー -label.theme.lightblue=カスタム - ライト ブルー -label.thursday=木曜日 -label.time.zone=タイムゾーン -label.time=時刻 -label.timeout.in.second = タイムアウト (ç§’) -label.timezone=タイムゾーン -label.total.cpu=CPU åˆè¨ˆ -label.total.vms=VM åˆè¨ˆ -label.traffic.type=トラフィックã®ç¨®é¡ž -label.tuesday=ç«æ›œæ—¥ -label.type.id=種類 ID -label.type=種類 -label.unavailable=使用ä¸èƒ½ -label.unlimited=ç„¡åˆ¶é™ -label.untagged=ã‚¿ã‚°ãªã— -label.update.ssl.cert=SSL è¨¼æ˜Žæ›¸ã®æ›´æ–° -label.update.ssl=SSL è¨¼æ˜Žæ›¸ã®æ›´æ–° -label.updating=æ›´æ–°ã—ã¦ã„ã¾ã™ +label.no.actions=\\u5B9F\\u884C\\u3067\\u304D\\u308B\\u64CD\\u4F5C\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 +label.no.alerts=\\u6700\\u8FD1\\u306E\\u30A2\\u30E9\\u30FC\\u30C8\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 +label.no.data=\\u8868\\u793A\\u3059\\u308B\\u30C7\\u30FC\\u30BF\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093 +label.no.errors=\\u6700\\u8FD1\\u306E\\u30A8\\u30E9\\u30FC\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 +label.no.isos=\\u4F7F\\u7528\\u3067\\u304D\\u308B ISO \\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 +label.no.items=\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u9805\\u76EE\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 +label.none=\\u306A\\u3057 +label.no.security.groups=\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 +label.not.found=\\u898B\\u3064\\u304B\\u308A\\u307E\\u305B\\u3093 +label.no.thanks=\\u8A2D\\u5B9A\\u3057\\u306A\\u3044 +label.notifications=\\u901A\\u77E5 +label.no=\\u3044\\u3044\\u3048 +label.number.of.clusters=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u6570 +label.number.of.hosts=\\u30DB\\u30B9\\u30C8\\u6570 +label.number.of.pods=\\u30DD\\u30C3\\u30C9\\u6570 +label.number.of.system.vms=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u6570 +label.number.of.virtual.routers=\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u6570 +label.number.of.zones=\\u30BE\\u30FC\\u30F3\\u6570 +label.num.cpu.cores=CPU \\u30B3\\u30A2\\u6570 +label.numretries=\\u518D\\u8A66\\u884C\\u56DE\\u6570 +label.ocfs2=OCFS2 +label.offer.ha=\\u9AD8\\u53EF\\u7528\\u6027\\u306E\\u63D0\\u4F9B +label.ok=OK +label.optional=\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3 +label.order=\\u9806\\u5E8F +label.os.preference=OS \\u57FA\\u672C\\u8A2D\\u5B9A +label.os.type=OS \\u306E\\u7A2E\\u985E +label.owned.public.ips=\\u6240\\u6709\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.owner.account=\\u6240\\u6709\\u8005\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.owner.domain=\u00e6\u0089\u0080\u00e6\u009c\u0089\u00e8\u0080\u0085\u00e3\u0083\u0089\u00e3\u0083\u00a1\u00e3\u0082\u00a4\u00e3\u0083\u00b3 +label.parent.domain=\\u89AA\\u30C9\\u30E1\\u30A4\\u30F3 +label.password.enabled=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u7BA1\\u7406\\u6709\\u52B9 +label.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 +label.path=\\u30D1\\u30B9 +label.perfect.forward.secrecy=Perfect Forward Secrecy +label.physical.network.ID=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID +label.PING.CIFS.password=PING CIFS \\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 +label.PING.CIFS.username=PING CIFS \\u30E6\\u30FC\\u30B6\\u30FC\\u540D +label.PING.dir=PING \\u30C7\\u30A3\\u30EC\\u30AF\\u30C8\\u30EA +label.PING.storage.IP=PING \\u5BFE\\u8C61\\u306E\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.please.specify.netscaler.info=Netscaler \\u60C5\\u5831\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +label.please.wait=\\u304A\\u5F85\\u3061\\u304F\\u3060\\u3055\\u3044 +label.pod.name=\\u30DD\\u30C3\\u30C9\\u540D +label.pods=\\u30DD\\u30C3\\u30C9 +label.pod=\\u30DD\\u30C3\\u30C9 +label.port.forwarding.policies=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001\\u30DD\\u30EA\\u30B7\\u30FC +label.port.forwarding=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001 +label.port.range=\\u30DD\\u30FC\\u30C8\\u306E\\u7BC4\\u56F2 +label.PreSetup=PreSetup +label.previous=\\u623B\\u308B +label.prev=\\u623B\\u308B +label.primary.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.primary.network=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.primary.storage.count=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30D7\\u30FC\\u30EB +label.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.primary.used=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u4F7F\\u7528\\u91CF +label.private.Gateway=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 +label.private.interface=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9 +label.private.ip.range=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 +label.private.ips=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.private.ip=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.privatekey=PKC\#8 \\u79D8\\u5BC6\\u30AD\\u30FC +label.private.network=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.private.port=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30DD\\u30FC\\u30C8 +label.private.zone=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30BE\\u30FC\\u30F3 +label.project.dashboard=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30C0\\u30C3\\u30B7\\u30E5\\u30DC\\u30FC\\u30C9 +label.project.id=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 ID +label.project.invite=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u62DB\\u5F85 +label.project.name=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u540D +label.projects=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 +label.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 +label.project.view=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30D3\\u30E5\\u30FC +label.protocol=\\u30D7\\u30ED\\u30C8\\u30B3\\u30EB +label.providers=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC +label.public.interface=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9 +label.public.ips=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.public.ip=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.public.network=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.public.port=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30DD\\u30FC\\u30C8 +label.public=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF +label.public.zone=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30BE\\u30FC\\u30F3 +label.purpose=\\u76EE\\u7684 +label.Pxe.server.type=PXE \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u7A2E\\u985E +label.quickview=\u30af\u30a4\u30c3\u30af\u30d3\u30e5\u30fc +label.reboot=\u518d\u8d77\u52d5 +label.recent.errors=\\u6700\\u8FD1\\u306E\\u30A8\\u30E9\\u30FC +label.redundant.router.capability=\\u5197\\u9577\\u30EB\\u30FC\\u30BF\\u30FC\\u6A5F\\u80FD +label.redundant.router=\\u5197\\u9577\\u30EB\\u30FC\\u30BF\\u30FC +label.redundant.state=\\u5197\\u9577\\u72B6\\u614B +label.refresh=\\u66F4\\u65B0 +label.related=\\u95A2\\u9023 +label.remind.later=\\u30A2\\u30E9\\u30FC\\u30E0\\u3092\\u8868\\u793A\\u3059\\u308B +label.remove.ACL=ACL \\u306E\\u524A\\u9664 +label.remove.egress.rule=\\u9001\\u4FE1\\u898F\\u5247\\u306E\\u524A\\u9664 +label.remove.from.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u304B\\u3089\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059 +label.remove.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u524A\\u9664 +label.remove.ip.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u524A\\u9664 +label.remove.pf=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001\\u898F\\u5247\\u306E\\u524A\\u9664 +label.remove.rule=\\u898F\\u5247\\u306E\\u524A\\u9664 +label.remove.static.nat.rule=\\u9759\\u7684 NAT \\u898F\\u5247\\u306E\\u524A\\u9664 +label.remove.static.route=\\u9759\\u7684\\u30EB\\u30FC\\u30C8\\u306E\\u524A\\u9664 +label.remove.tier=\\u968E\\u5C64\\u306E\\u524A\\u9664 +label.remove.vm.from.lb=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u304B\\u3089\\u306E VM \\u306E\\u524A\\u9664 +label.remove.vpc=VPC \\u306E\\u524A\\u9664 +label.removing=\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059 +label.removing.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059 +label.required=\\u5FC5\\u9808\\u3067\\u3059 +label.reserved.system.gateway=\\u4E88\\u7D04\\u6E08\\u307F\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 +label.reserved.system.ip=\\u4E88\\u7D04\\u6E08\\u307F\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.reserved.system.netmask=\\u4E88\\u7D04\\u6E08\\u307F\\u30B7\\u30B9\\u30C6\\u30E0 \\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF +label.reset.VPN.connection=VPN \\u63A5\\u7D9A\\u306E\\u30EA\\u30BB\\u30C3\\u30C8 +label.resource.limits=\\u30EA\\u30BD\\u30FC\\u30B9\\u5236\\u9650 +label.resource.state=\\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u72B6\\u614B +label.resources=\\u30EA\\u30BD\\u30FC\\u30B9 +label.resource=\\u30EA\\u30BD\\u30FC\\u30B9 +label.restart.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u518D\\u8D77\\u52D5 +label.restart.required=\\u518D\\u8D77\\u52D5\\u304C\\u5FC5\\u8981 +label.restart.vpc=VPC \\u306E\\u518D\\u8D77\\u52D5 +label.restore=\u30ea\u30b9\u30c8\u30a2 +label.review=\\u78BA\\u8A8D +label.revoke.project.invite=\\u62DB\\u5F85\\u306E\\u53D6\\u308A\\u6D88\\u3057 +label.role=\\u5F79\\u5272 +label.root.disk.controller=\\u30EB\\u30FC\\u30C8 \\u30C7\\u30A3\\u30B9\\u30AF \\u30B3\\u30F3\\u30C8\\u30ED\\u30FC\\u30E9\\u30FC +label.root.disk.offering=\\u30EB\\u30FC\\u30C8 \\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.round.robin=\\u30E9\\u30A6\\u30F3\\u30C9\\u30ED\\u30D3\\u30F3 +label.rules=\\u898F\\u5247 +label.running.vms=\\u5B9F\\u884C\\u4E2D\\u306E VM +label.s3.access_key=\u30a2\u30af\u30bb\u30b9\u30ad\u30fc +label.s3.bucket=\u30d0\u30b1\u30c3\u30c8 +label.s3.connection_timeout=\u30b3\u30cd\u30af\u30b7\u30e7\u30f3\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8 +label.s3.endpoint=\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8 +label.s3.max_error_retry=\u30a8\u30e9\u30fc\u6642\u306e\u6700\u5927\u30ea\u30c8\u30e9\u30a4\u6570 +label.s3.secret_key=\u79d8\u5bc6\u9375 +label.s3.socket_timeout=\u30bd\u30b1\u30c3\u30c8\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8 +label.s3.use_https=HTTPS\u306e\u4f7f\u7528 +label.saturday=\\u571F\\u66DC\\u65E5 +label.save.and.continue=\\u4FDD\\u5B58\\u3057\\u3066\\u7D9A\\u884C +label.save=\\u4FDD\\u5B58 +label.saving.processing=\\u4FDD\\u5B58\\u3057\\u3066\\u3044\\u307E\\u3059... +label.scope=\\u30B9\\u30B3\\u30FC\\u30D7 +label.search=\\u691C\\u7D22 +label.secondary.storage.count=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30D7\\u30FC\\u30EB +label.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.secondary.storage.vm=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VM +label.secondary.used=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u4F7F\\u7528\\u91CF +label.secret.key=\u79d8\u5bc6\u9375 +label.security.group.name=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u540D +label.security.groups.enabled=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u6709\\u52B9 +label.security.groups=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 +label.security.group=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 +label.select.a.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u9078\\u629E +label.select.a.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u9078\\u629E +label.select.instance.to.attach.volume.to=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3059\\u308B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +label.select.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u9078\\u629E +label.select.iso.or.template=ISO \\u307E\\u305F\\u306F\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u9078\\u629E +label.select.offering=\\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u9078\\u629E +label.select.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u9078\\u629E +label.select.tier=\\u968E\\u5C64\\u306E\\u9078\\u629E +label.select=\\u9078\\u629E +label.select-view=\\u30D3\\u30E5\\u30FC\\u306E\\u9078\\u629E +label.select.vm.for.static.nat=\\u9759\\u7684 NAT \\u7528 VM \\u306E\\u9078\\u629E +label.sent=\\u9001\\u4FE1\\u6E08\\u307F +label.server=\\u30B5\\u30FC\\u30D0\\u30FC +label.service.capabilities=\\u30B5\\u30FC\\u30D3\\u30B9\\u306E\\u6A5F\\u80FD +label.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.session.expired=\\u30BB\\u30C3\\u30B7\\u30E7\\u30F3\\u306E\\u6709\\u52B9\\u671F\\u9650\\u304C\\u5207\\u308C\\u307E\\u3057\\u305F +label.setup.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 +label.setup=\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 +label.set.up.zone.type=\\u30BE\\u30FC\\u30F3\\u306E\\u7A2E\\u985E\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 +label.setup.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 +label.SharedMountPoint=SharedMountPoint +label.shared=\\u5171\\u6709 +label.show.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u8868\\u793A +label.shutdown.provider=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u306E\\u30B7\\u30E3\\u30C3\\u30C8\\u30C0\\u30A6\\u30F3 +label.site.to.site.VPN=\\u30B5\\u30A4\\u30C8\\u9593 VPN +label.size=\\u30B5\\u30A4\\u30BA +label.skip.guide=CloudStack \\u3092\\u4F7F\\u7528\\u3057\\u305F\\u3053\\u3068\\u304C\\u3042\\u308B\\u306E\\u3067\\u3001\\u3053\\u306E\\u30AC\\u30A4\\u30C9\\u3092\\u30B9\\u30AD\\u30C3\\u30D7\\u3059\\u308B +label.snapshot.limits=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u5236\\u9650 +label.snapshot.name=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u540D +label.snapshot.schedule=\\u5B9A\\u671F\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 +label.snapshot.s=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 +label.snapshots=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 +label.snapshot=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 +label.source.nat=\\u9001\\u4FE1\\u5143 NAT +label.source=\\u9001\\u4FE1\\u5143 +label.specify.IP.ranges=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u6307\\u5B9A +label.specify.vlan=VLAN \\u306E\\u6307\\u5B9A +label.SR.name = SR \\u540D\\u30E9\\u30D9\\u30EB +label.srx=SRX +label.start.IP=\\u958B\\u59CB IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.start.port=\\u958B\\u59CB\\u30DD\\u30FC\\u30C8 +label.start.reserved.system.IP=\\u4E88\\u7D04\\u6E08\\u307F\\u958B\\u59CB\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.start.vlan=\\u958B\\u59CB VLAN +label.state=\\u72B6\\u614B +label.static.nat.enabled=\\u9759\\u7684 NAT \\u6709\\u52B9 +label.static.nat.to=\\u9759\\u7684 NAT \\u306E\\u8A2D\\u5B9A\\u5148\: +label.static.nat=\\u9759\\u7684 NAT +label.static.nat.vm.details=\\u9759\\u7684 NAT VM \\u306E\\u8A73\\u7D30 +label.statistics=\\u7D71\\u8A08 +label.status=\\u72B6\\u614B +label.step.1.title=\\u624B\\u9806 1. \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u9078\\u629E +label.step.1=\\u624B\\u9806 1 +label.step.2.title=\\u624B\\u9806 2. \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.step.2=\\u624B\\u9806 2 +label.step.3.title=\\u624B\\u9806 3. \\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u9078\\u629E +label.step.3=\\u624B\\u9806 3 +label.step.4.title=\\u624B\\u9806 4. \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.step.4=\\u624B\\u9806 4 +label.step.5.title=\\u624B\\u9806 5. \\u78BA\\u8A8D +label.step.5=\\u624B\\u9806 5 +label.stickiness=\\u6301\\u7D9A\\u6027 +label.sticky.cookie-name=Cookie \\u540D +label.sticky.domain=\\u30C9\\u30E1\\u30A4\\u30F3 +label.sticky.expire=\\u5931\\u52B9 +label.sticky.holdtime=\\u4FDD\\u6301\\u6642\\u9593 +label.sticky.indirect=\\u9593\\u63A5 +label.sticky.length=\\u9577\\u3055 +label.sticky.mode=\\u30E2\\u30FC\\u30C9 +label.sticky.nocache=\\u30AD\\u30E3\\u30C3\\u30B7\\u30E5\\u306A\\u3057 +label.sticky.postonly=\\u30DD\\u30B9\\u30C8\\u306E\\u307F +label.sticky.prefix=\\u30D7\\u30EC\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9 +label.sticky.request-learn=\\u30E9\\u30FC\\u30CB\\u30F3\\u30B0\\u306E\\u8981\\u6C42 +label.sticky.tablesize=\\u30C6\\u30FC\\u30D6\\u30EB \\u30B5\\u30A4\\u30BA +label.stopped.vms=\\u505C\\u6B62\\u4E2D\\u306E VM +label.stop=\u505c\u6b62 +label.storage.tags=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30BF\\u30B0 +label.storage.traffic=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF +label.storage.type=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u7A2E\\u985E +label.storage=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.subdomain.access=\\u30B5\\u30D6\\u30C9\\u30E1\\u30A4\\u30F3 \\u30A2\\u30AF\\u30BB\\u30B9 +label.submitted.by=[\\u9001\\u4FE1\\u30E6\\u30FC\\u30B6\\u30FC\: ] +label.submit=\\u9001\\u4FE1 +label.succeeded=\\u6210\\u529F +label.sunday=\\u65E5\\u66DC\\u65E5 +label.super.cidr.for.guest.networks=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30B9\\u30FC\\u30D1\\u30FC CIDR +label.supported.services=\\u30B5\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u308B\\u30B5\\u30FC\\u30D3\\u30B9 +label.supported.source.NAT.type=\\u30B5\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u308B\\u9001\\u4FE1\\u5143 NAT \\u306E\\u7A2E\\u985E +label.suspend.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u4E00\\u6642\\u505C\\u6B62 +label.system.capacity=\\u30B7\\u30B9\\u30C6\\u30E0\\u306E\\u51E6\\u7406\\u80FD\\u529B +label.system.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.system.service.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.system.vms=\\u30B7\\u30B9\\u30C6\\u30E0 VM +label.system.vm.type=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u7A2E\\u985E +label.system.vm=\\u30B7\\u30B9\\u30C6\\u30E0 VM +label.system.wide.capacity=\\u30B7\\u30B9\\u30C6\\u30E0\\u5168\\u4F53\\u306E\\u51E6\\u7406\\u80FD\\u529B +label.tagged=\\u30BF\\u30B0\\u3042\\u308A +label.tags=\\u30BF\\u30B0 +label.target.iqn=\\u30BF\\u30FC\\u30B2\\u30C3\\u30C8 IQN +label.task.completed=\\u30BF\\u30B9\\u30AF\\u304C\\u5B8C\\u4E86\\u3057\\u307E\\u3057\\u305F +label.template.limits=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u5236\\u9650 +label.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 +label.TFTP.dir=TFTP \\u30C7\\u30A3\\u30EC\\u30AF\\u30C8\\u30EA +label.theme.default=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 \\u30C6\\u30FC\\u30DE +label.theme.grey=\\u30AB\\u30B9\\u30BF\\u30E0 - \\u30B0\\u30EC\\u30FC +label.theme.lightblue=\\u30AB\\u30B9\\u30BF\\u30E0 - \\u30E9\\u30A4\\u30C8 \\u30D6\\u30EB\\u30FC +label.thursday=\\u6728\\u66DC\\u65E5 +label.tier.details=\\u968E\\u5C64\\u306E\\u8A73\\u7D30 +label.tier=\\u968E\\u5C64 +label.timeout.in.second = \\u30BF\\u30A4\\u30E0\\u30A2\\u30A6\\u30C8 (\\u79D2) +label.timeout=\\u30BF\\u30A4\\u30E0\\u30A2\\u30A6\\u30C8 +label.time=\\u6642\\u523B +label.time.zone=\\u30BF\\u30A4\\u30E0\\u30BE\\u30FC\\u30F3 +label.timezone=\\u30BF\\u30A4\\u30E0\\u30BE\\u30FC\\u30F3 +label.token=\\u30C8\\u30FC\\u30AF\\u30F3 +label.total.cpu=CPU \\u5408\\u8A08 +label.total.CPU=CPU \\u5408\\u8A08 +label.total.hosts=\\u30DB\\u30B9\\u30C8\\u5408\\u8A08 +label.total.memory=\\u30E1\\u30E2\\u30EA\\u5408\\u8A08 +label.total.of.ip=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u5408\\u8A08 +label.total.of.vm=VM \\u5408\\u8A08 +label.total.storage=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u5408\\u8A08 +label.total.vms=VM \\u5408\\u8A08 +label.traffic.label=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF \\u30E9\\u30D9\\u30EB +label.traffic.types=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E +label.traffic.type=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E +label.tuesday=\\u706B\\u66DC\\u65E5 +label.type.id=\\u7A2E\\u985E ID +label.type=\\u7A2E\\u985E +label.unavailable=\\u4F7F\\u7528\\u4E0D\\u80FD +label.unlimited=\\u7121\\u5236\\u9650 +label.untagged=\\u30BF\\u30B0\\u306A\\u3057 +label.update.project.resources=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u66F4\\u65B0 +label.update.ssl.cert= SSL \\u8A3C\\u660E\\u66F8\\u306E\\u66F4\\u65B0 +label.update.ssl= SSL \\u8A3C\\u660E\\u66F8\\u306E\\u66F4\\u65B0 +label.updating=\\u66F4\\u65B0\\u3057\\u3066\\u3044\\u307E\\u3059 +label.upload=\\u30A2\\u30C3\\u30D7\\u30ED\\u30FC\\u30C9 +label.upload.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30A2\\u30C3\\u30D7\\u30ED\\u30FC\\u30C9 label.url=URL -label.usage.interface=ä½¿ç”¨çŠ¶æ³æ¸¬å®šã‚¤ãƒ³ã‚¿ãƒ¼ãƒ•ェイス -label.used=使用中 -label.user=ユーザー -label.username=ユーザーå -label.users=ユーザー -label.value=値 -label.vcenter.cluster=vCenter クラスター -label.vcenter.datacenter=vCenter データセンター -label.vcenter.datastore=vCenter データストア -label.vcenter.host=vCenter ホスト -label.vcenter.password=vCenter パスワード -label.vcenter.username=vCenter ユーザーå -label.version=ãƒãƒ¼ã‚¸ãƒ§ãƒ³ -label.virtual.appliance=仮想アプライアンス -label.virtual.appliances=仮想アプライアンス -label.virtual.network=仮想ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ +label.usage.interface=\\u4F7F\\u7528\\u72B6\\u6CC1\\u6E2C\\u5B9A\\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9 +label.used=\\u4F7F\\u7528\\u4E2D +label.username=\\u30E6\\u30FC\\u30B6\\u30FC\\u540D +label.users=\\u30E6\\u30FC\\u30B6\\u30FC +label.user=\\u30E6\\u30FC\\u30B6\\u30FC +label.value=\\u5024 +label.vcdcname=vCenter DC \\u540D +label.vcenter.cluster=vCenter \\u30AF\\u30E9\\u30B9\\u30BF\\u30FC +label.vcenter.datacenter=vCenter \\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC +label.vcenter.datastore=vCenter \\u30C7\\u30FC\\u30BF\\u30B9\\u30C8\\u30A2 +label.vcenter.host=vCenter \\u30DB\\u30B9\\u30C8 +label.vcenter.password=vCenter \\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 +label.vcenter.username=vCenter \\u30E6\\u30FC\\u30B6\\u30FC\\u540D +label.vcipaddress=vCenter IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.version=\\u30D0\\u30FC\\u30B8\\u30E7\\u30F3 +label.view.all=\\u3059\\u3079\\u3066\\u8868\\u793A +label.view.console=\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB\\u306E\\u8868\\u793A +label.viewing=\\u8868\\u793A\\u9805\\u76EE\: +label.view.more=\\u8A73\\u7D30\\u8868\\u793A +label.view=\\u8868\\u793A - +label.virtual.appliances=\\u4EEE\\u60F3\\u30A2\\u30D7\\u30E9\\u30A4\\u30A2\\u30F3\\u30B9 +label.virtual.appliance=\\u4EEE\\u60F3\\u30A2\\u30D7\\u30E9\\u30A4\\u30A2\\u30F3\\u30B9 +label.virtual.machines=\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3 +label.virtual.network=\\u4EEE\\u60F3\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.virtual.routers=\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC +label.virtual.router=\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC label.vlan.id=VLAN ID -label.vlan.range=VLAN ã®ç¯„囲 -label.vm.add=インスタンスã®è¿½åŠ  -label.vm.destroy=破棄 -label.vm.reboot=å†èµ·å‹• -label.vm.start=èµ·å‹• -label.vm.stop=åœæ­¢ +label.vlan.range=VLAN \\u306E\\u7BC4\\u56F2 +label.vlan=VLAN +label.vm.add=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u8FFD\\u52A0 +label.vm.destroy=\u7834\u68c4 +label.vm.display.name=VM \\u8868\\u793A\\u540D +label.VMFS.datastore=VMFS \\u30C7\\u30FC\\u30BF\\u30B9\\u30C8\\u30A2 label.vmfs=VMFS +label.vm.name=VM \\u540D +label.vm.reboot=\u518d\u8d77\u52d5 +label.VMs.in.tier=\\u968E\\u5C64\\u5185\\u306E VM +label.vmsnapshot.type=\\u7A2E\\u985E +label.vm.start=\\u8D77\\u52D5 +label.vm.state=VM \\u306E\\u72B6\\u614B +label.vm.stop=\u505c\u6b62 label.vms=VM -label.volume.limits=ãƒœãƒªãƒ¥ãƒ¼ãƒ åˆ¶é™ -label.volume.name=ボリュームå -label.volume=ボリューム -label.volumes=ボリューム -label.vsphere.managed=vSphere ã«ã‚ˆã‚‹ç®¡ç† -label.waiting=待機ã—ã¦ã„ã¾ã™ -label.warn=警告 -label.wednesday=水曜日 -label.weekly=毎週 -label.welcome.cloud.console=管ç†ã‚³ãƒ³ã‚½ãƒ¼ãƒ«ã¸ã‚ˆã†ã“ã -label.welcome=よã†ã“ã -label.yes=ã¯ã„ -label.zone.id=ゾーン ID -label.zone.step.1.title=手順 1. ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã®é¸æŠž -label.zone.step.2.title=手順 2. ゾーンã®è¿½åŠ  -label.zone.step.3.title=手順 3. ãƒãƒƒãƒ‰ã®è¿½åŠ  -label.zone.step.4.title=手順 4. IP アドレス範囲ã®è¿½åŠ  -label.zone.wide=ゾーン全体 -label.zone=ゾーン - -#Messages -message.acquire.public.ip=æ–°ã—ã„ IP アドレスをå–å¾—ã™ã‚‹ã‚¾ãƒ¼ãƒ³ã‚’é¸æŠžã—ã¦ãã ã•ã„。 -message.action.cancel.maintenance.mode=ã“ã®ä¿å®ˆã‚’キャンセルã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.cancel.maintenance=ホストã®ä¿å®ˆã¯æ­£å¸¸ã«ã‚­ãƒ£ãƒ³ã‚»ãƒ«ã•れã¾ã—ãŸã€‚ã“ã®å‡¦ç†ã«ã¯æ•°åˆ†ã‹ã‹ã‚‹å¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚ -message.action.delete.ISO.for.all.zones=ãã® ISO ã¯ã™ã¹ã¦ã®ã‚¾ãƒ¼ãƒ³ã§ä½¿ç”¨ã•れã¦ã„ã¾ã™ã€‚ã™ã¹ã¦ã®ã‚¾ãƒ¼ãƒ³ã‹ã‚‰å‰Šé™¤ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.ISO=ã“ã® ISO を削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.cluster=ã“ã®ã‚¯ãƒ©ã‚¹ã‚¿ãƒ¼ã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.disk.offering=ã“ã®ãƒ‡ã‚£ã‚¹ã‚¯ オファリングを削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.domain=ã“ã®ãƒ‰ãƒ¡ã‚¤ãƒ³ã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.external.firewall=ã“ã®å¤–部ファイアウォールを削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? 警告: åŒã˜å¤–部ファイアウォールをå†åº¦è¿½åŠ ã™ã‚‹äºˆå®šã§ã‚ã‚‹å ´åˆã¯ã€ãƒ‡ãƒã‚¤ã‚¹ã®ä½¿ç”¨çжæ³ãƒ‡ãƒ¼ã‚¿ã‚’リセットã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.action.delete.external.load.balancer=ã“ã®å¤–部負è·åˆ†æ•£è£…置を削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? 警告: åŒã˜å¤–部負è·åˆ†æ•£è£…置をå†åº¦è¿½åŠ ã™ã‚‹äºˆå®šã§ã‚ã‚‹å ´åˆã¯ã€ãƒ‡ãƒã‚¤ã‚¹ã®ä½¿ç”¨çжæ³ãƒ‡ãƒ¼ã‚¿ã‚’リセットã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.action.delete.ingress.rule=ã“ã®å—ä¿¡è¦å‰‡ã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.network=ã“ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.pod=ã“ã®ãƒãƒƒãƒ‰ã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.primary.storage=ã“ã®ãƒ—ライマリ ストレージを削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.secondary.storage=ã“ã®ã‚»ã‚«ãƒ³ãƒ€ãƒª ストレージを削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.security.group=ã“ã®ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ グループを削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.service.offering=ã“ã®ã‚µãƒ¼ãƒ“ス オファリングを削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.snapshot=ã“ã®ã‚¹ãƒŠãƒƒãƒ—ショットを削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.template.for.all.zones=ãã®ãƒ†ãƒ³ãƒ—レートã¯ã™ã¹ã¦ã®ã‚¾ãƒ¼ãƒ³ã§ä½¿ç”¨ã•れã¦ã„ã¾ã™ã€‚ã™ã¹ã¦ã®ã‚¾ãƒ¼ãƒ³ã‹ã‚‰å‰Šé™¤ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.template=ã“ã®ãƒ†ãƒ³ãƒ—レートを削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.volume=ã“ã®ãƒœãƒªãƒ¥ãƒ¼ãƒ ã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.delete.zone=ã“ã®ã‚¾ãƒ¼ãƒ³ã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.destroy.instance=ã“ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’破棄ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.destroy.systemvm=ã“ã®ã‚·ã‚¹ãƒ†ãƒ  VM を破棄ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.disable.static.NAT=é™çš„ NAT を無効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.enable.maintenance=ホストをä¿å®ˆã™ã‚‹æº–å‚™ãŒã§ãã¾ã—ãŸã€‚ã“ã®ãƒ›ã‚¹ãƒˆä¸Šã® VM æ•°ã«ã‚ˆã£ã¦ã¯ã€ã“ã®å‡¦ç†ã«ã¯æ•°åˆ†ä»¥ä¸Šã‹ã‹ã‚‹å¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚ -message.action.force.reconnect=ホストã¯å¼·åˆ¶çš„ã«å†æŽ¥ç¶šã—ã¾ã—ãŸã€‚ã“ã®å‡¦ç†ã«ã¯æ•°åˆ†ã‹ã‹ã‚‹å¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚ -message.action.host.enable.maintenance.mode=ä¿å®ˆãƒ¢ãƒ¼ãƒ‰ã‚’有効ã«ã™ã‚‹ã¨ã€ã“ã®ãƒ›ã‚¹ãƒˆã§å®Ÿè¡Œä¸­ã®ã™ã¹ã¦ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ãŒã»ã‹ã®ä½¿ç”¨ã§ãるホストã«ãƒ©ã‚¤ãƒ– マイグレーションã•れã¾ã™ã€‚ -message.action.instance.reset.password=ã“ã®ä»®æƒ³ãƒžã‚·ãƒ³ã®ãƒ«ãƒ¼ãƒˆ パスワードを変更ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.primarystorage.enable.maintenance.mode=警告: プライマリ ストレージをä¿å®ˆãƒ¢ãƒ¼ãƒ‰ã«ã™ã‚‹ã¨ã€ãã®ã‚¹ãƒˆãƒ¬ãƒ¼ã‚¸ä¸Šã®ãƒœãƒªãƒ¥ãƒ¼ãƒ ã‚’使用ã™ã‚‹ã™ã¹ã¦ã® VM ãŒåœæ­¢ã—ã¾ã™ã€‚続行ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.reboot.instance=ã“ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’å†èµ·å‹•ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.reboot.systemvm=ã“ã®ã‚·ã‚¹ãƒ†ãƒ  VM ã‚’å†èµ·å‹•ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.release.ip=ã“ã® IP アドレスを解放ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.restore.instance=ã“ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’復元ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.start.instance=ã“ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’èµ·å‹•ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.start.router=ã“ã®ãƒ«ãƒ¼ã‚¿ãƒ¼ã‚’èµ·å‹•ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.start.systemvm=ã“ã®ã‚·ã‚¹ãƒ†ãƒ  VM ã‚’èµ·å‹•ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.stop.instance=ã“ã®ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’åœæ­¢ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.stop.systemvm=ã“ã®ã‚·ã‚¹ãƒ†ãƒ  VM ã‚’åœæ­¢ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.action.take.snapshot=ã“ã®ãƒœãƒªãƒ¥ãƒ¼ãƒ ã®ã‚¹ãƒŠãƒƒãƒ—ショットを作æˆã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.add.cluster.zone=ゾーン ã«ãƒã‚¤ãƒ‘ーãƒã‚¤ã‚¶ãƒ¼ã§ç®¡ç†ã•れるクラスターを追加ã—ã¾ã™ -message.add.cluster=ゾーン ã®ãƒãƒƒãƒ‰ ã«ãƒã‚¤ãƒ‘ーãƒã‚¤ã‚¶ãƒ¼ã§ç®¡ç†ã•れるクラスターを追加ã—ã¾ã™ -message.add.disk.offering=æ–°ã—ã„ディスク オファリングを追加ã™ã‚‹ãŸã‚ã«ã€æ¬¡ã®ãƒ‘ラメーターを指定ã—ã¦ãã ã•ã„。 -message.add.firewall=ゾーンã«ãƒ•ァイアウォールを追加ã—ã¾ã™ -message.add.host=æ–°ã—ã„ホストを追加ã™ã‚‹ãŸã‚ã«ã€æ¬¡ã®ãƒ‘ラメーターを指定ã—ã¦ãã ã•ã„。 -message.add.ip.range.direct.network=ゾーン ã®ç›´æŽ¥ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ã« IP アドレスã®ç¯„囲を追加ã—ã¾ã™ -message.add.ip.range.to.pod=

    ãƒãƒƒãƒ‰ ã« IP アドレスã®ç¯„囲を追加ã—ã¾ã™

    -message.add.ip.range=ゾーンã®ãƒ‘ブリック ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã« IP アドレスã®ç¯„囲を追加ã—ã¾ã™ -message.add.load.balancer=ゾーンã«è² è·åˆ†æ•£è£…置を追加ã—ã¾ã™ -message.add.network=ゾーン ã«æ–°ã—ã„ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’追加ã—ã¾ã™ -message.add.pod=ゾーン ã«æ–°ã—ã„ãƒãƒƒãƒ‰ã‚’追加ã—ã¾ã™ -message.add.primary.storage=ゾーン ã®ãƒãƒƒãƒ‰ ã«æ–°ã—ã„プライマリ ストレージを追加ã—ã¾ã™ -message.add.primary=æ–°ã—ã„プライマリ ストレージを追加ã™ã‚‹ãŸã‚ã«ã€æ¬¡ã®ãƒ‘ラメーターを指定ã—ã¦ãã ã•ã„。 -message.add.secondary.storage=ゾーン ã«æ–°ã—ã„ストレージを追加ã—ã¾ã™ -message.add.service.offering=æ–°ã—ã„コンピューティング オファリングを追加ã™ã‚‹ãŸã‚ã«ã€æ¬¡ã®ãƒ‡ãƒ¼ã‚¿ã‚’入力ã—ã¦ãã ã•ã„。 -message.add.template=æ–°ã—ã„テンプレートを作æˆã™ã‚‹ãŸã‚ã«ã€æ¬¡ã®ãƒ‡ãƒ¼ã‚¿ã‚’入力ã—ã¦ãã ã•ã„。 -message.add.volume=æ–°ã—ã„ボリュームを追加ã™ã‚‹ãŸã‚ã«ã€æ¬¡ã®ãƒ‡ãƒ¼ã‚¿ã‚’入力ã—ã¦ãã ã•ã„。 -message.additional.networks.desc=ä»®æƒ³ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ãŒæŽ¥ç¶šã™ã‚‹è¿½åŠ ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’é¸æŠžã—ã¦ãã ã•ã„。 -message.advanced.mode.desc=VLAN サãƒãƒ¼ãƒˆã‚’有効ã«ã™ã‚‹å ´åˆã¯ã€ã“ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ãƒ¢ãƒ‡ãƒ«ã‚’é¸æŠžã—ã¦ãã ã•ã„。ã“ã®ãƒ¢ãƒ‡ãƒ«ã§ã¯æœ€ã‚‚柔軟ã«ã‚«ã‚¹ã‚¿ãƒ  ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ オファリングをæä¾›ã§ãã€ãƒ•ァイアウォールã€VPNã€è² è·åˆ†æ•£è£…ç½®ã®ã‚µãƒãƒ¼ãƒˆã®ã»ã‹ã«ã€ç›´æŽ¥ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã¨ä»®æƒ³ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚‚有効ã«ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ -message.advanced.security.group=ゲスト VM を分離ã™ã‚‹ãŸã‚ã«ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ グループを使用ã™ã‚‹å ´åˆã¯ã€ã“ã®ã‚ªãƒ—ã‚·ãƒ§ãƒ³ã‚’é¸æŠžã—ã¦ãã ã•ã„。 -message.advanced.virtual=ゲスト VM を分離ã™ã‚‹ãŸã‚ã«ã‚¾ãƒ¼ãƒ³å…¨ä½“ã® VLAN を使用ã™ã‚‹å ´åˆã¯ã€ã“ã®ã‚ªãƒ—ã‚·ãƒ§ãƒ³ã‚’é¸æŠžã—ã¦ãã ã•ã„。 -message.allow.vpn.access=VPN アクセスを許å¯ã™ã‚‹ãƒ¦ãƒ¼ã‚¶ãƒ¼ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼åã¨ãƒ‘スワードを入力ã—ã¦ãã ã•ã„。 -message.attach.iso.confirm=ã“ã®ä»®æƒ³ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã« ISO ファイルをアタッãƒã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.attach.volume=æ–°ã—ã„ボリュームをアタッãƒã™ã‚‹ãŸã‚ã«ã€æ¬¡ã®ãƒ‡ãƒ¼ã‚¿ã‚’入力ã—ã¦ãã ã•ã„。Windows ベースã®ä»®æƒ³ãƒžã‚·ãƒ³ã«ãƒ‡ã‚£ã‚¹ã‚¯ ボリュームをアタッãƒã™ã‚‹å ´åˆã¯ã€ã‚¢ã‚¿ãƒƒãƒã—ãŸãƒ‡ã‚£ã‚¹ã‚¯ã‚’èªè­˜ã™ã‚‹ãŸã‚ã«ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’å†èµ·å‹•ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.basic.mode.desc=VLAN サãƒãƒ¼ãƒˆãŒä¸è¦ã§ã‚ã‚‹å ´åˆã¯ã€ã“ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ãƒ¢ãƒ‡ãƒ«ã‚’é¸æŠžã—ã¦ãã ã•ã„。ã“ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ モデルã§ä½œæˆã•れるã™ã¹ã¦ã®ä»®æƒ³ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã«ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‹ã‚‰ç›´æŽ¥ IP アドレスãŒå‰²ã‚Šå½“ã¦ã‚‰ã‚Œã€ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ グループを使用ã—ã¦ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ã¨åˆ†é›¢ãŒæä¾›ã•れã¾ã™ã€‚ -message.change.offering.confirm=ã“ã®ä»®æƒ³ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã®ã‚µãƒ¼ãƒ“ス オファリングを変更ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.copy.iso.confirm=ISO を次ã®å ´æ‰€ã«ã‚³ãƒ”ーã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.copy.template=ゾーン ã‹ã‚‰ãƒ†ãƒ³ãƒ—レート XXX を次ã®å ´æ‰€ã«ã‚³ãƒ”ーã—ã¾ã™: -message.create.template.vm=テンプレート ã‹ã‚‰ VM を作æˆã—ã¾ã™ -message.create.template.volume=ディスク ボリューム ã®ãƒ†ãƒ³ãƒ—レートを作æˆã™ã‚‹å‰ã«ã€æ¬¡ã®æƒ…報を指定ã—ã¦ãã ã•ã„。ボリューム サイズã«ã‚ˆã£ã¦ã¯ã€ãƒ†ãƒ³ãƒ—レートã®ä½œæˆã«ã¯æ•°åˆ†ä»¥ä¸Šã‹ã‹ã‚‹å¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚ -message.delete.account=ã“ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.detach.iso.confirm=ã“ã®ä»®æƒ³ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‹ã‚‰ ISO ファイルをデタッãƒã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.disable.account=ã“ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’無効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? ã“ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã®ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒã‚¯ãƒ©ã‚¦ãƒ‰ リソースã«ã‚¢ã‚¯ã‚»ã‚¹ã§ããªããªã‚Šã¾ã™ã€‚実行中ã®ã™ã¹ã¦ã®ä»®æƒ³ãƒžã‚·ãƒ³ã¯ä»Šã™ãã«ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³ã•れã¾ã™ã€‚ -message.disable.vpn.access=VPN アクセスを無効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.download.ISO=ISO をダウンロードã™ã‚‹ã«ã¯
    00000 をクリックã—ã¾ã™ -message.download.template=テンプレートをダウンロードã™ã‚‹ã«ã¯ 00000 をクリックã—ã¾ã™ -message.download.volume=ボリュームをダウンロードã™ã‚‹ã«ã¯ 00000 をクリックã—ã¾ã™ -message.edit.confirm=[ä¿å­˜] をクリックã™ã‚‹å‰ã«å¤‰æ›´å†…容を確èªã—ã¦ãã ã•ã„。 -message.edit.limits=次ã®ãƒªã‚½ãƒ¼ã‚¹ã«åˆ¶é™ã‚’指定ã—ã¦ãã ã•ã„。「-1ã€ã¯ã€ãƒªã‚½ãƒ¼ã‚¹ä½œæˆã«åˆ¶é™ãŒãªã„ã“ã¨ã‚’示ã—ã¾ã™ã€‚ -message.enable.account=ã“ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’有効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.enable.vpn.access=ç¾åœ¨ã“ã® IP アドレスã«å¯¾ã™ã‚‹ VPN ã¯ç„¡åйã§ã™ã€‚VPN アクセスを有効ã«ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.enabled.vpn.ip.sec=IPSec 事å‰å…±æœ‰ã‚­ãƒ¼: -message.enabled.vpn=ç¾åœ¨ã€VPN ã‚¢ã‚¯ã‚»ã‚¹ãŒæœ‰åйã«ãªã£ã¦ã„ã¾ã™ã€‚次㮠IP アドレス経由ã§ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚ -message.launch.vm.on.private.network=プライベートãªå°‚用ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã§ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’èµ·å‹•ã—ã¾ã™ã‹? -message.lock.account=ã“ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’ロックã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? ã“ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã®ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ãŒã‚¯ãƒ©ã‚¦ãƒ‰ リソースを管ç†ã§ããªããªã‚Šã¾ã™ã€‚ãã®å¾Œã‚‚既存ã®ãƒªã‚½ãƒ¼ã‚¹ã«ã¯ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã™ã€‚ -message.migrate.instance.confirm=仮想インスタンスã®ç§»è¡Œå…ˆã¯æ¬¡ã®ãƒ›ã‚¹ãƒˆã§ã‚ˆã‚ã—ã„ã§ã™ã‹? -message.new.user=ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã«æ–°ã—ã„ユーザーを追加ã™ã‚‹ãŸã‚ã«ã€æ¬¡ã®æƒ…報を指定ã—ã¦ãã ã•ã„。 -message.no.network.support.configuration.not.true=セキュリティ ã‚°ãƒ«ãƒ¼ãƒ—ãŒæœ‰åйãªã‚¾ãƒ¼ãƒ³ãŒç„¡ã„ãŸã‚ã€è¿½åŠ ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯æ©Ÿèƒ½ã¯ã‚りã¾ã›ã‚“。手順 5. ã«é€²ã‚“ã§ãã ã•ã„。 -message.no.network.support=ãƒã‚¤ãƒ‘ーãƒã‚¤ã‚¶ãƒ¼ã¨ã—㦠vSphere ã‚’é¸æŠžã—ã¾ã—ãŸãŒã€ã“ã®ãƒã‚¤ãƒ‘ーãƒã‚¤ã‚¶ãƒ¼ã«è¿½åŠ ã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯æ©Ÿèƒ½ã¯ã‚りã¾ã›ã‚“。手順 5. ã«é€²ã‚“ã§ãã ã•ã„。 -message.number.clusters=

    クラスター数

    -message.number.hosts=

    ホスト数

    -message.number.pods=

    ãƒãƒƒãƒ‰æ•°

    -message.number.storage=

    プライマリ ストレージ ボリューム数

    -message.number.zones=

    ゾーン数

    -message.remove.vpn.access=次ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‹ã‚‰ VPN アクセスを削除ã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? -message.restart.mgmt.server=æ–°ã—ã„設定を有効ã«ã™ã‚‹ãŸã‚ã«ã€ç®¡ç†ã‚µãƒ¼ãƒãƒ¼ã‚’å†èµ·å‹•ã—ã¦ãã ã•ã„。 -message.restart.mgmt.usage.server=æ–°ã—ã„設定を有効ã«ã™ã‚‹ãŸã‚ã«ã€ç®¡ç†ã‚µãƒ¼ãƒãƒ¼ã¨ä½¿ç”¨çŠ¶æ³æ¸¬å®šã‚µãƒ¼ãƒãƒ¼ã‚’å†èµ·å‹•ã—ã¦ãã ã•ã„。 -message.security.group.usage=(該当ã™ã‚‹ã‚»ã‚­ãƒ¥ãƒªãƒ†ã‚£ グループをã™ã¹ã¦é¸æŠžã™ã‚‹ã«ã¯ã€Ctrl キーを押ã—ãªãŒã‚‰ã‚¯ãƒªãƒƒã‚¯ã—ã¦ãã ã•ã„) -message.snapshot.schedule=次ã®ã‚ªãƒ—ションã‹ã‚‰é¸æŠžã—ã¦ãƒãƒªã‚·ãƒ¼ã®åŸºæœ¬è¨­å®šã‚’é©ç”¨ã™ã‚‹ã“ã¨ã«ã‚ˆã‚Šã€å®šæœŸã‚¹ãƒŠãƒƒãƒ—ショットã®ã‚¹ã‚±ã‚¸ãƒ¥ãƒ¼ãƒ«ã‚’セットアップã§ãã¾ã™ã€‚ -message.step.1.continue=続行ã™ã‚‹ã«ã¯ãƒ†ãƒ³ãƒ—レートã¾ãŸã¯ ISO ã‚’é¸æŠžã—ã¦ãã ã•ã„ -message.step.1.desc=æ–°ã—ã„仮想インスタンス用ã®ãƒ†ãƒ³ãƒ—ãƒ¬ãƒ¼ãƒˆã‚’é¸æŠžã—ã¦ãã ã•ã„。ISO をインストールã§ãる空白ã®ãƒ†ãƒ³ãƒ—ãƒ¬ãƒ¼ãƒˆã‚’é¸æŠžã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚ -message.step.2.continue=続行ã™ã‚‹ã«ã¯ã‚µãƒ¼ãƒ“ス ã‚ªãƒ•ã‚¡ãƒªãƒ³ã‚°ã‚’é¸æŠžã—ã¦ãã ã•ã„ +label.vmware.traffic.label=VMware \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u30E9\\u30D9\\u30EB +label.volgroup=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u30B0\\u30EB\\u30FC\\u30D7 +label.volume.limits=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u5236\\u9650 +label.volume.name=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u540D +label.volumes=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 +label.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 +label.vpc.id=VPC ID +label.VPC.router.details=VPC \\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u8A73\\u7D30 +label.vpc=VPC +label.VPN.connection=VPN \\u63A5\\u7D9A +label.vpn.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 +label.VPN.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 +label.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 +label.vpn=VPN +label.vsmctrlvlanid=\\u30B3\\u30F3\\u30C8\\u30ED\\u30FC\\u30EB VLAN ID +label.vsmpktvlanid=\\u30D1\\u30B1\\u30C3\\u30C8 VLAN ID +label.vsmstoragevlanid=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VLAN ID +label.vsphere.managed=vSphere \\u306B\\u3088\\u308B\\u7BA1\\u7406 +label.waiting=\\u5F85\\u6A5F\\u3057\\u3066\\u3044\\u307E\\u3059 +label.warn=\\u8B66\\u544A +label.wednesday=\\u6C34\\u66DC\\u65E5 +label.weekly=\\u6BCE\\u9031 +label.welcome.cloud.console=\\u7BA1\\u7406\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB\\u3078\\u3088\\u3046\\u3053\\u305D +label.welcome=\\u3088\\u3046\\u3053\\u305D +label.what.is.cloudstack=CloudStack&\#8482; \\u306B\\u3064\\u3044\\u3066 +label.xen.traffic.label=XenServer \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u30E9\\u30D9\\u30EB +label.yes=\\u306F\\u3044 +label.zone.details=\\u30BE\\u30FC\\u30F3\\u306E\\u8A73\\u7D30 +label.zone.id=\\u30BE\\u30FC\\u30F3 ID +label.zone.name=\\u30BE\\u30FC\\u30F3\\u540D +label.zone.step.1.title=\\u624B\\u9806 1. \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u9078\\u629E +label.zone.step.2.title=\\u624B\\u9806 2. \\u30BE\\u30FC\\u30F3\\u306E\\u8FFD\\u52A0 +label.zone.step.3.title=\\u624B\\u9806 3. \\u30DD\\u30C3\\u30C9\\u306E\\u8FFD\\u52A0 +label.zone.step.4.title=\\u624B\\u9806 4. IP \\u30A2\\u30C9\\u30EC\\u30B9\\u7BC4\\u56F2\\u306E\\u8FFD\\u52A0 +label.zones=\\u30BE\\u30FC\\u30F3 +label.zone.type=\\u30BE\\u30FC\\u30F3\\u306E\\u7A2E\\u985E +label.zone=\\u30BE\\u30FC\\u30F3 +label.zone.wide=\\u30BE\\u30FC\\u30F3\\u5168\\u4F53 +label.zoneWizard.trafficType.guest=\u30b2\u30b9\u30c8\: \u30a8\u30f3\u30c9\u30e6\u30fc\u30b6\u30fc\u4eee\u60f3\u30de\u30b7\u30f3\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af +label.zoneWizard.trafficType.management=\u7ba1\u7406\: \u30db\u30b9\u30c8\u3084\u30b7\u30b9\u30c6\u30e0VM\u306a\u3069\u3001\u7ba1\u7406\u30b5\u30fc\u30d0\u30fc\u3068\u901a\u4fe1\u3059\u308b\u3042\u3089\u3086\u308b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u542b\u3081\u305f\u3001CloudStack\u5185\u90e8\u306e\u30ea\u30bd\u30fc\u30b9\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af +label.zoneWizard.trafficType.public=\u30d1\u30d6\u30ea\u30c3\u30af\: \u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u3068\u30af\u30e9\u30a6\u30c9\u5185\u306e\u4eee\u60f3\u30de\u30b7\u30f3\u306e\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af +label.zoneWizard.trafficType.storage=\u30b9\u30c8\u30ec\u30fc\u30b8\: VM\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3068\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u306e\u3088\u3046\u306a\u3001\u30d7\u30e9\u30a4\u30de\u30ea\u3068\u30bb\u30ab\u30f3\u30c0\u30ea\u306e\u30b9\u30c8\u30ec\u30fc\u30b8\u30b5\u30fc\u30d0\u30fc\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3002 +managed.state=\\u7BA1\\u7406\\u5BFE\\u8C61\\u72B6\\u614B +message.acquire.new.ip=\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u65B0\\u3057\\u3044 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.acquire.new.ip.vpc=VPC\u306e\u65b0\u3057\u3044IP\u3092\u53d6\u5f97\u3059\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.acquire.public.ip=\\u65B0\\u3057\\u3044 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3059\\u308B\\u30BE\\u30FC\\u30F3\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.action.cancel.maintenance.mode=\\u3053\\u306E\\u4FDD\\u5B88\\u3092\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.cancel.maintenance=\\u30DB\\u30B9\\u30C8\\u306E\\u4FDD\\u5B88\\u306F\\u6B63\\u5E38\\u306B\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u51E6\\u7406\\u306B\\u306F\\u6570\\u5206\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.change.service.warning.for.instance=\\u73FE\\u5728\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.change.service.warning.for.router=\\u73FE\\u5728\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.delete.cluster=\\u3053\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.disk.offering=\\u3053\\u306E\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.domain=\\u3053\\u306E\\u30C9\\u30E1\\u30A4\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.external.firewall=\\u3053\\u306E\\u5916\\u90E8\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u8B66\\u544A\: \\u540C\\u3058\\u5916\\u90E8\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u518D\\u5EA6\\u8FFD\\u52A0\\u3059\\u308B\\u4E88\\u5B9A\\u3067\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u4F7F\\u7528\\u72B6\\u6CC1\\u30C7\\u30FC\\u30BF\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.delete.external.load.balancer=\\u3053\\u306E\\u5916\\u90E8\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u8B66\\u544A\: \\u540C\\u3058\\u5916\\u90E8\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u518D\\u5EA6\\u8FFD\\u52A0\\u3059\\u308B\\u4E88\\u5B9A\\u3067\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u4F7F\\u7528\\u72B6\\u6CC1\\u30C7\\u30FC\\u30BF\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.delete.ingress.rule=\\u3053\\u306E\\u53D7\\u4FE1\\u898F\\u5247\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.ISO.for.all.zones=\\u305D\\u306E ISO \\u306F\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u3066\\u3044\\u307E\\u3059\\u3002\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u304B\\u3089\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.ISO=\\u3053\\u306E ISO \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.network=\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.nexusVswitch=\\u3053\\u306E Nexus 1000V \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.physical.network=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.pod=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.primary.storage=\\u3053\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.secondary.storage=\\u3053\\u306E\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.security.group=\\u3053\\u306E\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.service.offering=\\u3053\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.snapshot=\\u3053\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.system.service.offering=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.template.for.all.zones=\\u305D\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306F\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u3066\\u3044\\u307E\\u3059\\u3002\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u304B\\u3089\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.template=\\u3053\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.volume=\\u3053\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.zone=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.destroy.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u7834\\u68C4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.destroy.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u7834\\u68C4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.disable.cluster=\\u3053\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.disable.nexusVswitch=\\u3053\\u306E Nexus 1000V \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.disable.physical.network=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.disable.pod=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.disable.static.NAT=\\u9759\\u7684 NAT \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.disable.zone=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.download.iso=\\u3053\\u306E ISO \\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.download.template=\\u3053\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.enable.cluster=\\u3053\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.enable.maintenance=\\u30DB\\u30B9\\u30C8\\u3092\\u4FDD\\u5B88\\u3059\\u308B\\u6E96\\u5099\\u304C\\u3067\\u304D\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u4E0A\\u306E VM \\u6570\\u306B\\u3088\\u3063\\u3066\\u306F\\u3001\\u3053\\u306E\\u51E6\\u7406\\u306B\\u306F\\u6570\\u5206\\u4EE5\\u4E0A\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.enable.nexusVswitch=\\u3053\\u306E Nexus 1000V \\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.enable.physical.network=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.enable.pod=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.enable.zone=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.force.reconnect=\\u30DB\\u30B9\\u30C8\\u306F\\u5F37\\u5236\\u7684\\u306B\\u518D\\u63A5\\u7D9A\\u3057\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u51E6\\u7406\\u306B\\u306F\\u6570\\u5206\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.host.enable.maintenance.mode=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u3068\\u3001\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u5B9F\\u884C\\u4E2D\\u306E\\u3059\\u3079\\u3066\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304C\\u307B\\u304B\\u306E\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u30DB\\u30B9\\u30C8\\u306B\\u30E9\\u30A4\\u30D6 \\u30DE\\u30A4\\u30B0\\u30EC\\u30FC\\u30B7\\u30E7\\u30F3\\u3055\\u308C\\u307E\\u3059\\u3002 +message.action.instance.reset.password=\u00e3\u0081\u0093\u00e3\u0081\u00ae\u00e4\u00bb\u00ae\u00e6\u0083\u00b3\u00e3\u0083\u009e\u00e3\u0082\u00b7\u00e3\u0083\u00b3\u00e3\u0081\u00ae\u00e3\u0083\u00ab\u00e3\u0083\u00bc\u00e3\u0083\u0088\u00e3\u0083\u0091\u00e3\u0082\u00b9\u00e3\u0083\u00af\u00e3\u0083\u00bc\u00e3\u0083\u0089\u00e3\u0082\u0092\u00e5\u00a4\u0089\u00e6\u009b\u00b4\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0082\u0082\u00e3\u0082\u0088\u00e3\u0082\u008d\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0081\u00a7\u00e3\u0081\u0099\u00e3\u0081\u008b? +message.action.manage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.primarystorage.enable.maintenance.mode=\\u8B66\\u544A\: \\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u306B\\u3059\\u308B\\u3068\\u3001\\u305D\\u306E\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u4E0A\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u4F7F\\u7528\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E VM \\u304C\\u505C\\u6B62\\u3057\\u307E\\u3059\\u3002\\u7D9A\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.reboot.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.reboot.router=\\u3053\\u306E\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u3067\\u63D0\\u4F9B\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30B5\\u30FC\\u30D3\\u30B9\\u304C\\u4E2D\\u65AD\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.reboot.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.release.ip=\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u89E3\\u653E\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.remove.host=\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.reset.password.off=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306F\\u73FE\\u5728\\u3053\\u306E\\u6A5F\\u80FD\\u3092\\u30B5\\u30DD\\u30FC\\u30C8\\u3057\\u3066\\u3044\\u307E\\u305B\\u3093\\u3002 +message.action.reset.password.warning=\\u73FE\\u5728\\u306E\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.restore.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u5FA9\\u5143\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.start.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.start.router=\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.start.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.stop.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.stop.router=\\u3053\\u306E\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u3067\\u63D0\\u4F9B\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30B5\\u30FC\\u30D3\\u30B9\\u304C\\u4E2D\\u65AD\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.stop.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.take.snapshot=\\u3053\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.unmanage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u975E\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.activate.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.add.cluster=\\u30BE\\u30FC\\u30F3 \\u306E\\u30DD\\u30C3\\u30C9 \\u306B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3067\\u7BA1\\u7406\\u3055\\u308C\\u308B\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.cluster.zone=\\u30BE\\u30FC\\u30F3 \\u306B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3067\\u7BA1\\u7406\\u3055\\u308C\\u308B\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.disk.offering=\\u65B0\\u3057\\u3044\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30D1\\u30E9\\u30E1\\u30FC\\u30BF\\u30FC\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.domain=\\u3053\\u306E\\u30C9\\u30E1\\u30A4\\u30F3\\u306B\\u4F5C\\u6210\\u3059\\u308B\\u30B5\\u30D6\\u30C9\\u30E1\\u30A4\\u30F3\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.firewall=\\u30BE\\u30FC\\u30F3\\u306B\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.guest.network=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.add.host=\\u65B0\\u3057\\u3044\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30D1\\u30E9\\u30E1\\u30FC\\u30BF\\u30FC\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.adding.host=\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +message.adding.Netscaler.device=Netscaler \\u30C7\\u30D0\\u30A4\\u30B9\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +message.adding.Netscaler.provider=Netscaler \\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +message.add.ip.range.direct.network=\\u30BE\\u30FC\\u30F3 \\u306E\\u76F4\\u63A5\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.ip.range.to.pod=

    \\u30DD\\u30C3\\u30C9 \\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059

    +message.add.ip.range=\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.additional.networks.desc=\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304C\\u63A5\\u7D9A\\u3059\\u308B\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.load.balancer=\\u30BE\\u30FC\\u30F3\\u306B\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.load.balancer.under.ip=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u304C\\u6B21\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306B\\u5BFE\\u3057\\u3066\\u8FFD\\u52A0\\u3055\\u308C\\u307E\\u3057\\u305F\: +message.add.network=\\u30BE\\u30FC\\u30F3 \\u306B\\u65B0\\u3057\\u3044\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.new.gateway.to.vpc=\\u3053\\u306E VPC \\u306B\\u65B0\\u3057\\u3044\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306E\\u60C5\\u5831\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.pod.during.zone.creation=\\u5404\\u30BE\\u30FC\\u30F3\\u306B\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DD\\u30C3\\u30C9\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306F\\u30DB\\u30B9\\u30C8\\u3068\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059\\u304C\\u3001\\u3053\\u308C\\u3089\\u306F\\u5F8C\\u306E\\u624B\\u9806\\u3067\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u6700\\u521D\\u306B\\u3001CloudStack \\u306E\\u5185\\u90E8\\u7BA1\\u7406\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u305F\\u3081\\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u4E88\\u7D04\\u3057\\u307E\\u3059\\u3002IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306F\\u3001\\u30AF\\u30E9\\u30A6\\u30C9\\u5185\\u306E\\u5404\\u30BE\\u30FC\\u30F3\\u3067\\u91CD\\u8907\\u3057\\u306A\\u3044\\u3088\\u3046\\u306B\\u4E88\\u7D04\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.add.pod=\\u30BE\\u30FC\\u30F3 \\u306B\\u65B0\\u3057\\u3044\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.primary.storage=\\u30BE\\u30FC\\u30F3 \\u306E\\u30DD\\u30C3\\u30C9 \\u306B\\u65B0\\u3057\\u3044\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.primary=\\u65B0\\u3057\\u3044\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30D1\\u30E9\\u30E1\\u30FC\\u30BF\\u30FC\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.secondary.storage=\\u30BE\\u30FC\\u30F3 \\u306B\\u65B0\\u3057\\u3044\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.service.offering=\\u65B0\\u3057\\u3044\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.system.service.offering=\\u65B0\\u3057\\u3044\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.template=\\u65B0\\u3057\\u3044\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.volume=\\u65B0\\u3057\\u3044\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.advanced.mode.desc=VLAN \\u30B5\\u30DD\\u30FC\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u3053\\u306E\\u30E2\\u30C7\\u30EB\\u3067\\u306F\\u6700\\u3082\\u67D4\\u8EDF\\u306B\\u30AB\\u30B9\\u30BF\\u30E0 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u63D0\\u4F9B\\u3067\\u304D\\u3001\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3001VPN\\u3001\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306E\\u30B5\\u30DD\\u30FC\\u30C8\\u306E\\u307B\\u304B\\u306B\\u3001\\u76F4\\u63A5\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3068\\u4EEE\\u60F3\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3082\\u6709\\u52B9\\u306B\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002 +message.advanced.security.group=\\u30B2\\u30B9\\u30C8 VM \\u3092\\u5206\\u96E2\\u3059\\u308B\\u305F\\u3081\\u306B\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u4F7F\\u7528\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.advanced.virtual=\\u30B2\\u30B9\\u30C8 VM \\u3092\\u5206\\u96E2\\u3059\\u308B\\u305F\\u3081\\u306B\\u30BE\\u30FC\\u30F3\\u5168\\u4F53\\u306E VLAN \\u3092\\u4F7F\\u7528\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.after.enable.s3=S3\u57fa\u76e4\u30bb\u30ab\u30f3\u30c0\u30ea\u30b9\u30c8\u30ec\u30fc\u30b8\u304c\u8a2d\u5b9a\u3055\u308c\u307e\u3057\u305f\u3002 \u30ce\u30fc\u30c8\:\u3053\u306e\u30da\u30fc\u30b8\u3092\u9589\u3058\u308b\u3068S3\u3092\u518d\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002 +message.after.enable.swift=Swift \\u304C\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u6CE8\: \\u3053\\u306E\\u30DA\\u30FC\\u30B8\\u3092\\u9589\\u3058\\u308B\\u3068\\u3001Swift \\u3092\\u518D\\u69CB\\u6210\\u3059\\u308B\\u3053\\u3068\\u306F\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002 +message.alert.state.detected=\\u30A2\\u30E9\\u30FC\\u30C8\\u72B6\\u614B\\u304C\\u691C\\u51FA\\u3055\\u308C\\u307E\\u3057\\u305F +message.allow.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u8A31\\u53EF\\u3059\\u308B\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u540D\\u3068\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.apply.snapshot.policy=\\u73FE\\u5728\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 \\u30DD\\u30EA\\u30B7\\u30FC\\u3092\\u66F4\\u65B0\\u3057\\u307E\\u3057\\u305F\\u3002 +message.attach.iso.confirm=\\u3053\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B ISO \\u30D5\\u30A1\\u30A4\\u30EB\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.attach.volume=\\u65B0\\u3057\\u3044\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002Windows \\u30D9\\u30FC\\u30B9\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306B\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u305F\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u8A8D\\u8B58\\u3059\\u308B\\u305F\\u3081\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u518D\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.basic.mode.desc=VLAN \\u30B5\\u30DD\\u30FC\\u30C8\\u304C\\u4E0D\\u8981\\u3067\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3067\\u4F5C\\u6210\\u3055\\u308C\\u308B\\u3059\\u3079\\u3066\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304B\\u3089\\u76F4\\u63A5 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304C\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u3001\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3\\u3068\\u5206\\u96E2\\u304C\\u63D0\\u4F9B\\u3055\\u308C\\u307E\\u3059\\u3002 +message.change.offering.confirm=\\u3053\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u5909\\u66F4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.change.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5909\\u66F4\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.configure.all.traffic.types=\\u8907\\u6570\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002[\\u7DE8\\u96C6] \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u3054\\u3068\\u306B\\u30E9\\u30D9\\u30EB\\u3092\\u69CB\\u6210\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.configuring.guest.traffic=\\u30B2\\u30B9\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.configuring.physical.networks=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.configuring.public.traffic=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.configuring.storage.traffic=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.confirm.action.force.reconnect=\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u5F37\\u5236\\u518D\\u63A5\\u7D9A\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.delete.F5=F5 \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.delete.NetScaler=NetScaler \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.delete.SRX=SRX \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.destroy.router=\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u7834\\u68C4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.disable.provider=\\u3053\\u306E\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.enable.provider=\\u3053\\u306E\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.join.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306B\\u53C2\\u52A0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.remove.IP.range=\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.shutdown.provider=\\u3053\\u306E\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u30B7\\u30E3\\u30C3\\u30C8\\u30C0\\u30A6\\u30F3\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.copy.iso.confirm=ISO \\u3092\\u6B21\\u306E\\u5834\\u6240\\u306B\\u30B3\\u30D4\\u30FC\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.copy.template=\\u30BE\\u30FC\\u30F3 \\u304B\\u3089\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 XXX \\u3092\\u6B21\\u306E\\u5834\\u6240\\u306B\\u30B3\\u30D4\\u30FC\\u3057\\u307E\\u3059\: +message.create.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.create.template.vm=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 \\u304B\\u3089 VM \\u3092\\u4F5C\\u6210\\u3057\\u307E\\u3059 +message.create.template.volume=\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u524D\\u306B\\u3001\\u6B21\\u306E\\u60C5\\u5831\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u30B5\\u30A4\\u30BA\\u306B\\u3088\\u3063\\u3066\\u306F\\u3001\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210\\u306B\\u306F\\u6570\\u5206\\u4EE5\\u4E0A\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.creating.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.creating.guest.network=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.creating.physical.networks=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.creating.pod=\\u30DD\\u30C3\\u30C9\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.creating.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.creating.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.creating.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.decline.invitation=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u62DB\\u5F85\\u3092\\u8F9E\\u9000\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.delete.account=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.delete.gateway=\\u3053\\u306E\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.delete.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.delete.user=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.delete.VPN.connection=VPN \\u63A5\\u7D9A\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.delete.VPN.customer.gateway=\\u3053\\u306E VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.delete.VPN.gateway=\\u3053\\u306E VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.desc.advanced.zone=\\u3088\\u308A\\u6D17\\u7DF4\\u3055\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6280\\u8853\\u3092\\u30B5\\u30DD\\u30FC\\u30C8\\u3057\\u307E\\u3059\\u3002\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3059\\u308B\\u3068\\u3001\\u3088\\u308A\\u67D4\\u8EDF\\u306B\\u30B2\\u30B9\\u30C8\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u5B9A\\u7FA9\\u3057\\u3001\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3001VPN\\u3001\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306E\\u30B5\\u30DD\\u30FC\\u30C8\\u306E\\u3088\\u3046\\u306A\\u30AB\\u30B9\\u30BF\\u30DE\\u30A4\\u30BA\\u3057\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u63D0\\u4F9B\\u3067\\u304D\\u307E\\u3059\\u3002 +message.desc.basic.zone=\\u5404 VM \\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304C\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304B\\u3089\\u76F4\\u63A5\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u308B\\u3001\\u5358\\u4E00\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u63D0\\u4F9B\\u3057\\u307E\\u3059\\u3002\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 (\\u9001\\u4FE1\\u5143 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u30D5\\u30A3\\u30EB\\u30BF\\u30FC) \\u306E\\u3088\\u3046\\u306A\\u30EC\\u30A4\\u30E4\\u30FC 3 \\u30EC\\u30D9\\u30EB\\u306E\\u65B9\\u6CD5\\u3067\\u30B2\\u30B9\\u30C8\\u3092\\u5206\\u96E2\\u3067\\u304D\\u307E\\u3059\\u3002 +message.desc.cluster=\\u5404\\u30DD\\u30C3\\u30C9\\u306B\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306F\\u30DB\\u30B9\\u30C8\\u3092\\u30B0\\u30EB\\u30FC\\u30D7\\u5316\\u3059\\u308B\\u65B9\\u6CD5\\u3067\\u3059\\u30021 \\u3064\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306F\\u3059\\u3079\\u3066\\u540C\\u4E00\\u306E\\u30CF\\u30FC\\u30C9\\u30A6\\u30A7\\u30A2\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u3001\\u540C\\u3058\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3092\\u5B9F\\u884C\\u3057\\u3001\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u4E0A\\u306B\\u3042\\u308A\\u3001\\u540C\\u3058\\u5171\\u6709\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3057\\u307E\\u3059\\u3002\\u5404\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DB\\u30B9\\u30C8\\u3068 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002 +message.desc.host=\\u5404\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306B\\u306F\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u3001\\u30B2\\u30B9\\u30C8 VM \\u3092\\u5B9F\\u884C\\u3059\\u308B\\u305F\\u3081\\u306E\\u30DB\\u30B9\\u30C8 (\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30BF\\u30FC) \\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002CloudStack \\u3067\\u30DB\\u30B9\\u30C8\\u3092\\u6A5F\\u80FD\\u3055\\u305B\\u308B\\u306B\\u306F\\u3001\\u30DB\\u30B9\\u30C8\\u306B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3092\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3057\\u3066 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u3001\\u30DB\\u30B9\\u30C8\\u304C CloudStack \\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u63A5\\u7D9A\\u3057\\u3066\\u3044\\u308B\\u3053\\u3068\\u3092\\u78BA\\u8A8D\\u3057\\u307E\\u3059\\u3002

    \\u30DB\\u30B9\\u30C8\\u306E DNS \\u540D\\u307E\\u305F\\u306F IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3001\\u30E6\\u30FC\\u30B6\\u30FC\\u540D (\\u901A\\u5E38\\u306F root) \\u3068\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3001\\u304A\\u3088\\u3073\\u30DB\\u30B9\\u30C8\\u306E\\u5206\\u985E\\u306B\\u4F7F\\u7528\\u3059\\u308B\\u30E9\\u30D9\\u30EB\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.desc.primary.storage=\\u5404\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306B\\u306F\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u3001\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F\\u3001\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u4E0A\\u3067\\u52D5\\u4F5C\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E VM \\u306E\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u683C\\u7D0D\\u3057\\u307E\\u3059\\u3002\\u57FA\\u790E\\u3068\\u306A\\u308B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3067\\u30B5\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u308B\\u3001\\u6A19\\u6E96\\u306B\\u6E96\\u62E0\\u3057\\u305F\\u30D7\\u30ED\\u30C8\\u30B3\\u30EB\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.desc.secondary.storage=\\u5404\\u30BE\\u30FC\\u30F3\\u306B\\u306F\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u3001NFS \\u3064\\u307E\\u308A\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F VM \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3001ISO \\u30A4\\u30E1\\u30FC\\u30B8\\u3001\\u304A\\u3088\\u3073VM \\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u683C\\u7D0D\\u3057\\u307E\\u3059\\u3002\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306F\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u3059\\u3079\\u3066\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002

    IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3068\\u30A8\\u30AF\\u30B9\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u305F\\u30D1\\u30B9\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.desc.zone=\\u30BE\\u30FC\\u30F3\\u306F CloudStack \\u74B0\\u5883\\u5185\\u306E\\u6700\\u5927\\u306E\\u7D44\\u7E54\\u5358\\u4F4D\\u3067\\u3001\\u901A\\u5E38\\u3001\\u5358\\u4E00\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u306B\\u76F8\\u5F53\\u3057\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306B\\u3088\\u3063\\u3066\\u7269\\u7406\\u7684\\u306A\\u5206\\u96E2\\u3068\\u5197\\u9577\\u6027\\u304C\\u63D0\\u4F9B\\u3055\\u308C\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DD\\u30C3\\u30C9 (\\u5404\\u30DD\\u30C3\\u30C9\\u306F\\u30DB\\u30B9\\u30C8\\u3068\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059) \\u3068\\u3001\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u3059\\u3079\\u3066\\u306E\\u30DD\\u30C3\\u30C9\\u3067\\u5171\\u6709\\u3055\\u308C\\u308B\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002 +message.detach.disk=\\u3053\\u306E\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.detach.iso.confirm=\\u3053\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304B\\u3089 ISO \\u30D5\\u30A1\\u30A4\\u30EB\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.disable.account=\u00e3\u0081\u0093\u00e3\u0081\u00ae\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0082\u0092\u00e7\u0084\u00a1\u00e5\u008a\u00b9\u00e3\u0081\u00ab\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0082\u0082\u00e3\u0082\u0088\u00e3\u0082\u008d\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0081\u00a7\u00e3\u0081\u0099\u00e3\u0081\u008b? \u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0082\u0092\u00e7\u0084\u00a1\u00e5\u008a\u00b9\u00e3\u0081\u00ab\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u0093\u00e3\u0081\u00a8\u00e3\u0081\u00ab\u00e3\u0082\u0088\u00e3\u0082\u008a\u00e3\u0080\u0081\u00e3\u0081\u0093\u00e3\u0081\u00ae\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0081\u00ae\u00e3\u0081\u0099\u00e3\u0081\u00b9\u00e3\u0081\u00a6\u00e3\u0081\u00ae\u00e3\u0083\u00a6\u00e3\u0083\u00bc\u00e3\u0082\u00b6\u00e3\u0083\u00bc\u00e3\u0081\u00af\u00e3\u0082\u00af\u00e3\u0083\u00a9\u00e3\u0082\u00a6\u00e3\u0083\u0089\u00e3\u0083\u00aa\u00e3\u0082\u00bd\u00e3\u0083\u00bc\u00e3\u0082\u00b9\u00e3\u0081\u00ab\u00e3\u0082\u00a2\u00e3\u0082\u00af\u00e3\u0082\u00bb\u00e3\u0082\u00b9\u00e3\u0081\u00a7\u00e3\u0081\u008d\u00e3\u0081\u00aa\u00e3\u0081\u008f\u00e3\u0081\u00aa\u00e3\u0082\u008a\u00e3\u0081\u00be\u00e3\u0081\u0099\u00e3\u0080\u0082\u00e5\u00ae\u009f\u00e8\u00a1\u008c\u00e4\u00b8\u00ad\u00e3\u0081\u00ae\u00e3\u0081\u0099\u00e3\u0081\u00b9\u00e3\u0081\u00a6\u00e3\u0081\u00ae\u00e4\u00bb\u00ae\u00e6\u0083\u00b3\u00e3\u0083\u009e\u00e3\u0082\u00b7\u00e3\u0083\u00b3\u00e3\u0081\u00af\u00e3\u0081\u0099\u00e3\u0081\u0090\u00e3\u0081\u00ab\u00e3\u0082\u00b7\u00e3\u0083\u00a3\u00e3\u0083\u0083\u00e3\u0083\u0088\u00e3\u0083\u0080\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0081\u0095\u00e3\u0082\u008c\u00e3\u0081\u00be\u00e3\u0081\u0099\u00e3\u0080\u0082 +message.disable.snapshot.policy=\\u73FE\\u5728\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 \\u30DD\\u30EA\\u30B7\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u307E\\u3057\\u305F\\u3002 +message.disable.user=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.disable.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.disable.vpn=VPN \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.download.ISO=ISO\u00e3\u0082\u0092\u00e3\u0083\u0080\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u00ad\u00e3\u0083\u00bc\u00e3\u0083\u0089\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab00000\u00e3\u0082\u0092\u00e3\u0082\u00af\u00e3\u0083\u00aa\u00e3\u0083\u0083\u00e3\u0082\u00af\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 +message.download.template=\u00e3\u0083\u0086\u00e3\u0083\u00b3\u00e3\u0083\u0097\u00e3\u0083\u00ac\u00e3\u0083\u00bc\u00e3\u0083\u0088\u00e3\u0082\u0092\u00e3\u0083\u0080\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u00ad\u00e3\u0083\u00bc\u00e3\u0083\u0089\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab00000\u00e3\u0082\u0092\u00e3\u0082\u00af\u00e3\u0083\u00aa\u00e3\u0083\u0083\u00e3\u0082\u00af\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 +message.download.volume.confirm=\\u3053\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.download.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3059\\u308B\\u306B\\u306F 00000 \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u307E\\u3059 +message.edit.account=\\u7DE8\\u96C6 ("-1" \\u306F\\u3001\\u30EA\\u30BD\\u30FC\\u30B9\\u4F5C\\u6210\\u306E\\u91CF\\u306B\\u5236\\u9650\\u304C\\u306A\\u3044\\u3053\\u3068\\u3092\\u793A\\u3057\\u307E\\u3059) +message.edit.confirm=[\\u4FDD\\u5B58] \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3059\\u308B\\u524D\\u306B\\u5909\\u66F4\\u5185\\u5BB9\\u3092\\u78BA\\u8A8D\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.edit.limits=\\u6B21\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u306B\\u5236\\u9650\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u300C-1\\u300D\\u306F\\u3001\\u30EA\\u30BD\\u30FC\\u30B9\\u4F5C\\u6210\\u306B\\u5236\\u9650\\u304C\\u306A\\u3044\\u3053\\u3068\\u3092\\u793A\\u3057\\u307E\\u3059\\u3002 +message.edit.traffic.type=\\u3053\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u306B\\u95A2\\u9023\\u4ED8\\u3051\\u308B\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF \\u30E9\\u30D9\\u30EB\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.enable.account=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.enabled.vpn.ip.sec=IPSec \\u4E8B\\u524D\\u5171\\u6709\\u30AD\\u30FC\: +message.enabled.vpn=\\u73FE\\u5728\\u3001VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u304C\\u6709\\u52B9\\u306B\\u306A\\u3063\\u3066\\u3044\\u307E\\u3059\\u3002\\u6B21\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u7D4C\\u7531\\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3067\\u304D\\u307E\\u3059\\u3002 +message.enable.user=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.enable.vpn.access=\\u73FE\\u5728\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306B\\u5BFE\\u3059\\u308B VPN \\u306F\\u7121\\u52B9\\u3067\\u3059\\u3002VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.enable.vpn=\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306B\\u5BFE\\u3059\\u308B VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.enabling.security.group.provider=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 \\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 +message.enabling.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 +message.enter.token=\\u96FB\\u5B50\\u30E1\\u30FC\\u30EB\\u306E\\u62DB\\u5F85\\u72B6\\u306B\\u8A18\\u8F09\\u3055\\u308C\\u3066\\u3044\\u308B\\u30C8\\u30FC\\u30AF\\u30F3\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.generate.keys=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u306B\\u65B0\\u3057\\u3044\\u30AD\\u30FC\\u3092\\u751F\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.guest.traffic.in.advanced.zone=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306F\\u3001\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u9593\\u306E\\u901A\\u4FE1\\u3067\\u3059\\u3002\\u5404\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30B2\\u30B9\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u901A\\u4FE1\\u3059\\u308B\\u305F\\u3081\\u306E VLAN ID \\u306E\\u7BC4\\u56F2\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.guest.traffic.in.basic.zone=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306F\\u3001\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u9593\\u306E\\u901A\\u4FE1\\u3067\\u3059\\u3002CloudStack \\u3067\\u30B2\\u30B9\\u30C8 VM \\u306B\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u308B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u3053\\u306E\\u7BC4\\u56F2\\u304C\\u4E88\\u7D04\\u6E08\\u307F\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3068\\u91CD\\u8907\\u3057\\u306A\\u3044\\u3088\\u3046\\u306B\\u6CE8\\u610F\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.installWizard.click.retry=\\u8D77\\u52D5\\u3092\\u518D\\u8A66\\u884C\\u3059\\u308B\\u306B\\u306F\\u30DC\\u30BF\\u30F3\\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.installWizard.copy.whatIsAPod=\\u901A\\u5E38\\u30011 \\u3064\\u306E\\u30DD\\u30C3\\u30C9\\u306F\\u5358\\u4E00\\u306E\\u30E9\\u30C3\\u30AF\\u3092\\u8868\\u3057\\u307E\\u3059\\u3002\\u540C\\u3058\\u30DD\\u30C3\\u30C9\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306F\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u306B\\u542B\\u307E\\u308C\\u307E\\u3059\\u3002

    \\u30DD\\u30C3\\u30C9\\u306F CloudStack&\#8482; \\u74B0\\u5883\\u5185\\u306E 2 \\u756A\\u76EE\\u306B\\u5927\\u304D\\u306A\\u7D44\\u7E54\\u5358\\u4F4D\\u3067\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306F\\u30BE\\u30FC\\u30F3\\u306B\\u542B\\u307E\\u308C\\u307E\\u3059\\u3002\\u5404\\u30BE\\u30FC\\u30F3\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u542B\\u3080\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002\\u57FA\\u672C\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3067\\u306F\\u3001\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30DD\\u30C3\\u30C9\\u306F 1 \\u3064\\u3067\\u3059\\u3002 +message.installWizard.copy.whatIsAZone=\\u30BE\\u30FC\\u30F3\\u306F CloudStack&\#8482; \\u74B0\\u5883\\u5185\\u306E\\u6700\\u5927\\u306E\\u7D44\\u7E54\\u5358\\u4F4D\\u3067\\u3059\\u30021 \\u3064\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u5185\\u306B\\u8907\\u6570\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u8A2D\\u5B9A\\u3067\\u304D\\u307E\\u3059\\u304C\\u3001\\u901A\\u5E38\\u3001\\u30BE\\u30FC\\u30F3\\u306F\\u5358\\u4E00\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u306B\\u76F8\\u5F53\\u3057\\u307E\\u3059\\u3002\\u30A4\\u30F3\\u30D5\\u30E9\\u30B9\\u30C8\\u30E9\\u30AF\\u30C1\\u30E3\\u3092\\u30BE\\u30FC\\u30F3\\u306B\\u7D44\\u7E54\\u5316\\u3059\\u308B\\u3068\\u3001\\u30BE\\u30FC\\u30F3\\u3092\\u7269\\u7406\\u7684\\u306B\\u5206\\u96E2\\u3057\\u3066\\u5197\\u9577\\u5316\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002\\u305F\\u3068\\u3048\\u3070\\u3001\\u5404\\u30BE\\u30FC\\u30F3\\u306B\\u96FB\\u6E90\\u3068\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30A2\\u30C3\\u30D7\\u30EA\\u30F3\\u30AF\\u3092\\u914D\\u5099\\u3057\\u307E\\u3059\\u3002\\u5FC5\\u9808\\u3067\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093\\u304C\\u3001\\u30BE\\u30FC\\u30F3\\u306F\\u9060\\u9694\\u5730\\u306B\\u5206\\u6563\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002 +message.installWizard.copy.whatIsSecondaryStorage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F\\u30BE\\u30FC\\u30F3\\u3068\\u95A2\\u9023\\u4ED8\\u3051\\u3089\\u308C\\u3001\\u6B21\\u306E\\u9805\\u76EE\\u3092\\u683C\\u7D0D\\u3057\\u307E\\u3059\\u3002
    • \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 - VM \\u306E\\u8D77\\u52D5\\u306B\\u4F7F\\u7528\\u3067\\u304D\\u308B OS \\u30A4\\u30E1\\u30FC\\u30B8\\u3067\\u3001\\u30A2\\u30D7\\u30EA\\u30B1\\u30FC\\u30B7\\u30E7\\u30F3\\u306E\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u306A\\u3069\\u8FFD\\u52A0\\u306E\\u69CB\\u6210\\u3092\\u542B\\u3081\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002
    • ISO \\u30A4\\u30E1\\u30FC\\u30B8 - \\u8D77\\u52D5\\u53EF\\u80FD\\u307E\\u305F\\u306F\\u8D77\\u52D5\\u4E0D\\u53EF\\u306E OS \\u30A4\\u30E1\\u30FC\\u30B8\\u3067\\u3059\\u3002
    • \\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 - VM \\u30C7\\u30FC\\u30BF\\u306E\\u4FDD\\u5B58\\u30B3\\u30D4\\u30FC\\u3067\\u3059\\u3002\\u30C7\\u30FC\\u30BF\\u306E\\u5FA9\\u5143\\u307E\\u305F\\u306F\\u65B0\\u3057\\u3044\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210\\u306B\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u3059\\u3002
    +message.installWizard.tooltip.addCluster.name=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002CloudStack \\u3067\\u4F7F\\u7528\\u3055\\u308C\\u3066\\u3044\\u306A\\u3044\\u3001\\u4EFB\\u610F\\u306E\\u30C6\\u30AD\\u30B9\\u30C8\\u3092\\u6307\\u5B9A\\u3067\\u304D\\u307E\\u3059\\u3002 +message.installWizard.tooltip.addHost.hostname=\\u30DB\\u30B9\\u30C8\\u306E DNS \\u540D\\u307E\\u305F\\u306F IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addHost.password=XenServer \\u5074\\u3067\\u6307\\u5B9A\\u3057\\u305F\\u3001\\u4E0A\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u540D\\u306B\\u5BFE\\u3059\\u308B\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addHost.username=\\u901A\\u5E38\\u306F root \\u3067\\u3059\\u3002 +message.installWizard.tooltip.addPod.name=\\u30DD\\u30C3\\u30C9\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addPod.reservedSystemEndIp=\\u3053\\u308C\\u306F\\u3001\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VM \\u304A\\u3088\\u3073\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7 VM \\u3092\\u7BA1\\u7406\\u3059\\u308B\\u305F\\u3081\\u306B CloudStack \\u3067\\u4F7F\\u7528\\u3059\\u308B\\u3001\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u5185\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u304B\\u3089\\u5272\\u308A\\u5F53\\u3066\\u307E\\u3059\\u3002 +message.installWizard.tooltip.addPod.reservedSystemGateway=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306E\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addPod.reservedSystemNetmask=\\u30B2\\u30B9\\u30C8\\u306E\\u4F7F\\u7528\\u3059\\u308B\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u4E0A\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u308B\\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addPod.reservedSystemStartIp=\\u3053\\u308C\\u306F\\u3001\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VM \\u304A\\u3088\\u3073\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7 VM \\u3092\\u7BA1\\u7406\\u3059\\u308B\\u305F\\u3081\\u306B CloudStack \\u3067\\u4F7F\\u7528\\u3059\\u308B\\u3001\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u5185\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u304B\\u3089\\u5272\\u308A\\u5F53\\u3066\\u307E\\u3059\\u3002 +message.installWizard.tooltip.addPrimaryStorage.name=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addPrimaryStorage.path=(NFS \\u306E\\u5834\\u5408) \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u30A8\\u30AF\\u30B9\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u305F\\u30D1\\u30B9\\u3067\\u3059\\u3002(SharedMountPoint \\u306E\\u5834\\u5408) \\u30D1\\u30B9\\u3067\\u3059\\u3002KVM \\u3067\\u306F\\u3053\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u304C\\u30DE\\u30A6\\u30F3\\u30C8\\u3055\\u308C\\u308B\\u5404\\u30DB\\u30B9\\u30C8\\u4E0A\\u306E\\u30D1\\u30B9\\u3067\\u3059\\u3002\\u305F\\u3068\\u3048\\u3070\\u3001/mnt/primary \\u3067\\u3059\\u3002 +message.installWizard.tooltip.addPrimaryStorage.server=(NFS\\u3001iSCSI\\u3001\\u307E\\u305F\\u306F PreSetup \\u306E\\u5834\\u5408) \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C7\\u30D0\\u30A4\\u30B9\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u307E\\u305F\\u306F DNS \\u540D\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addSecondaryStorage.nfsServer=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u30DB\\u30B9\\u30C8\\u3059\\u308B NFS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addSecondaryStorage.path=\\u4E0A\\u306B\\u6307\\u5B9A\\u3057\\u305F\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u5B58\\u5728\\u3059\\u308B\\u3001\\u30A8\\u30AF\\u30B9\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u305F\\u30D1\\u30B9\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addZone.dns1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B2\\u30B9\\u30C8 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u306F\\u3001\\u5F8C\\u3067\\u8FFD\\u52A0\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u7D4C\\u7531\\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3057\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.installWizard.tooltip.addZone.dns2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B2\\u30B9\\u30C8 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u306F\\u3001\\u5F8C\\u3067\\u8FFD\\u52A0\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u7D4C\\u7531\\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3057\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.installWizard.tooltip.addZone.internaldns1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306F\\u3001\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4ECB\\u3057\\u3066\\u30A2\\u30AF\\u30BB\\u30B9\\u3055\\u308C\\u307E\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.installWizard.tooltip.addZone.internaldns2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306F\\u3001\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4ECB\\u3057\\u3066\\u30A2\\u30AF\\u30BB\\u30B9\\u3055\\u308C\\u307E\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.installWizard.tooltip.addZone.name=\\u30BE\\u30FC\\u30F3\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 +message.installWizard.tooltip.configureGuestTraffic.description=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8AAC\\u660E\\u3067\\u3059\\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestEndIp=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u306E\\u30B2\\u30B9\\u30C8\\u306B\\u5272\\u308A\\u5F53\\u3066\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u308B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u4F7F\\u7528\\u3059\\u308B NIC \\u304C 1 \\u3064\\u306E\\u5834\\u5408\\u306F\\u3001\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30DD\\u30C3\\u30C9\\u306E CIDR \\u3068\\u540C\\u3058 CIDR \\u306B\\u542B\\u307E\\u308C\\u3066\\u3044\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestGateway=\\u30B2\\u30B9\\u30C8\\u306E\\u4F7F\\u7528\\u3059\\u308B\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3067\\u3059\\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestNetmask=\\u30B2\\u30B9\\u30C8\\u306E\\u4F7F\\u7528\\u3059\\u308B\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u4E0A\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u308B\\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF\\u3067\\u3059\\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestStartIp=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u306E\\u30B2\\u30B9\\u30C8\\u306B\\u5272\\u308A\\u5F53\\u3066\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u308B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u4F7F\\u7528\\u3059\\u308B NIC \\u304C 1 \\u3064\\u306E\\u5834\\u5408\\u306F\\u3001\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30DD\\u30C3\\u30C9\\u306E CIDR \\u3068\\u540C\\u3058 CIDR \\u306B\\u542B\\u307E\\u308C\\u3066\\u3044\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.installWizard.tooltip.configureGuestTraffic.name=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 +message.instanceWizard.noTemplates=\\u4F7F\\u7528\\u53EF\\u80FD\\u306A\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002\\u4E92\\u63DB\\u6027\\u306E\\u3042\\u308B\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3001\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 \\u30A6\\u30A3\\u30B6\\u30FC\\u30C9\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.ip.address.changed=\\u304A\\u4F7F\\u3044\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304C\\u5909\\u66F4\\u3055\\u308C\\u3066\\u3044\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u4E00\\u89A7\\u3092\\u66F4\\u65B0\\u3057\\u307E\\u3059\\u304B? \\u305D\\u306E\\u5834\\u5408\\u306F\\u3001\\u8A73\\u7D30\\u30DA\\u30A4\\u30F3\\u304C\\u9589\\u3058\\u308B\\u3053\\u3068\\u306B\\u6CE8\\u610F\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.iso.desc=\\u30C7\\u30FC\\u30BF\\u307E\\u305F\\u306F OS \\u8D77\\u52D5\\u53EF\\u80FD\\u30E1\\u30C7\\u30A3\\u30A2\\u3092\\u542B\\u3080\\u30C7\\u30A3\\u30B9\\u30AF \\u30A4\\u30E1\\u30FC\\u30B8 +message.join.project=\\u3053\\u308C\\u3067\\u3001\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306B\\u53C2\\u52A0\\u3057\\u307E\\u3057\\u305F\\u3002\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u53C2\\u7167\\u3059\\u308B\\u306B\\u306F\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30D3\\u30E5\\u30FC\\u306B\\u5207\\u308A\\u66FF\\u3048\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.launch.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u8D77\\u52D5\\u3059\\u308B\\u6E96\\u5099\\u304C\\u3067\\u304D\\u307E\\u3057\\u305F\\u3002\\u6B21\\u306E\\u624B\\u9806\\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 +message.lock.account=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u30ED\\u30C3\\u30AF\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u3059\\u3079\\u3066\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u304C\\u30AF\\u30E9\\u30A6\\u30C9 \\u30EA\\u30BD\\u30FC\\u30B9\\u3092\\u7BA1\\u7406\\u3067\\u304D\\u306A\\u304F\\u306A\\u308A\\u307E\\u3059\\u3002\\u305D\\u306E\\u5F8C\\u3082\\u65E2\\u5B58\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u306B\\u306F\\u30A2\\u30AF\\u30BB\\u30B9\\u3067\\u304D\\u307E\\u3059\\u3002 +message.migrate.instance.confirm=\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C\\u5148\\u306F\\u6B21\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.migrate.instance.to.host=\\u5225\\u306E\\u30DB\\u30B9\\u30C8\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.migrate.instance.to.ps=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.migrate.router.confirm=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u79FB\\u884C\\u5148\\u306F\\u6B21\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.migrate.systemvm.confirm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u79FB\\u884C\\u5148\\u306F\\u6B21\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.migrate.volume=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.new.user=\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0081\u00ab\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0083\u00a6\u00e3\u0083\u00bc\u00e3\u0082\u00b6\u00e3\u0083\u00bc\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e8\u00a8\u00ad\u00e5\u00ae\u009a\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084 +message.no.network.support.configuration.not.true=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u304C\\u6709\\u52B9\\u306A\\u30BE\\u30FC\\u30F3\\u304C\\u7121\\u3044\\u305F\\u3081\\u3001\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6A5F\\u80FD\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002\\u624B\\u9806 5. \\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 +message.no.network.support=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3068\\u3057\\u3066 vSphere \\u3092\\u9078\\u629E\\u3057\\u307E\\u3057\\u305F\\u304C\\u3001\\u3053\\u306E\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306B\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6A5F\\u80FD\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002\\u624B\\u9806 5. \\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 +message.no.projects.adminOnly=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002
    \\u7BA1\\u7406\\u8005\\u306B\\u65B0\\u3057\\u3044\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u4F5C\\u6210\\u3092\\u4F9D\\u983C\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.no.projects=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002
    \\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30BB\\u30AF\\u30B7\\u30E7\\u30F3\\u304B\\u3089\\u65B0\\u3057\\u3044\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.number.clusters=

    \\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u6570

    +message.number.hosts=

    \\u30DB\\u30B9\\u30C8\\u6570

    +message.number.pods=

    \\u30DD\\u30C3\\u30C9\\u6570

    +message.number.storage=

    \\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u6570

    +message.number.zones=

    \\u30BE\\u30FC\\u30F3\\u6570

    +message.pending.projects.1=\\u4FDD\\u7559\\u4E2D\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u62DB\\u5F85\\u72B6\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.pending.projects.2=\\u8868\\u793A\\u3059\\u308B\\u306B\\u306F\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30BB\\u30AF\\u30B7\\u30E7\\u30F3\\u306B\\u79FB\\u52D5\\u3057\\u3066\\u3001\\u4E00\\u89A7\\u304B\\u3089\\u62DB\\u5F85\\u72B6\\u3092\\u9078\\u629E\\u3057\\u307E\\u3059\\u3002 +message.please.add.at.lease.one.traffic.range=\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.please.proceed=\\u6B21\\u306E\\u624B\\u9806\\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 +message.please.select.a.configuration.for.your.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u69CB\\u6210\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.please.select.a.different.public.and.management.network.before.removing=\\u524A\\u9664\\u306E\\u524D\\u306B\\u7570\\u306A\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF\\u304A\\u3088\\u3073\\u7BA1\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.please.select.networks=\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.please.wait.while.zone.is.being.created=\\u30BE\\u30FC\\u30F3\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u308B\\u307E\\u3067\\u3057\\u3070\\u3089\\u304F\\u304A\\u5F85\\u3061\\u304F\\u3060\\u3055\\u3044... +message.project.invite.sent=\\u30E6\\u30FC\\u30B6\\u30FC\\u306B\\u62DB\\u5F85\\u72B6\\u304C\\u9001\\u4FE1\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u30E6\\u30FC\\u30B6\\u30FC\\u304C\\u62DB\\u5F85\\u3092\\u627F\\u8AFE\\u3059\\u308B\\u3068\\u3001\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306B\\u8FFD\\u52A0\\u3055\\u308C\\u307E\\u3059\\u3002 +message.public.traffic.in.advanced.zone=\\u30AF\\u30E9\\u30A6\\u30C9\\u5185\\u306E VM \\u304C\\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3059\\u308B\\u3068\\u3001\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u304C\\u751F\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u305F\\u3081\\u306B\\u3001\\u4E00\\u822C\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u53EF\\u80FD\\u306A IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306F CloudStack \\u306E\\u30E6\\u30FC\\u30B6\\u30FC \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3057\\u3001\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3068\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u9593\\u306B NAT \\u3092\\u5B9F\\u88C5\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002

    \\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u305F\\u3081\\u306B\\u3001\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.public.traffic.in.basic.zone=\\u30AF\\u30E9\\u30A6\\u30C9\\u5185\\u306E VM \\u304C\\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3059\\u308B\\u304B\\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8\\u7D4C\\u7531\\u3067\\u30AF\\u30E9\\u30A4\\u30A2\\u30F3\\u30C8\\u306B\\u30B5\\u30FC\\u30D3\\u30B9\\u3092\\u63D0\\u4F9B\\u3059\\u308B\\u3068\\u3001\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u304C\\u751F\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u305F\\u3081\\u306B\\u3001\\u4E00\\u822C\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u53EF\\u80FD\\u306A IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u3068\\u3001\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u307B\\u304B\\u306B\\u3053\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u304B\\u3089\\u30A2\\u30C9\\u30EC\\u30B9\\u304C 1 \\u3064\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u307E\\u3059\\u3002\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3068\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u9593\\u306B\\u3001\\u9759\\u7684\\u306A 1 \\u5BFE 1 \\u306E NAT \\u304C\\u81EA\\u52D5\\u7684\\u306B\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3055\\u308C\\u307E\\u3059\\u3002\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306F CloudStack \\u306E\\u30E6\\u30FC\\u30B6\\u30FC \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u8FFD\\u52A0\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3057\\u3001\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3068\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u9593\\u306B\\u9759\\u7684 NAT \\u3092\\u5B9F\\u88C5\\u3059\\u308B\\u3053\\u3068\\u3082\\u3067\\u304D\\u307E\\u3059\\u3002 +message.remove.vpc=VPC \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.remove.vpn.access=\\u6B21\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u304B\\u3089 VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.reset.password.warning.notPasswordEnabled=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306F\\u3001\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u7BA1\\u7406\\u3092\\u6709\\u52B9\\u306B\\u305B\\u305A\\u306B\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002 +message.reset.password.warning.notStopped=\\u73FE\\u5728\\u306E\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.reset.VPN.connection=VPN \\u63A5\\u7D9A\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.restart.mgmt.server=\\u65B0\\u3057\\u3044\\u8A2D\\u5B9A\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.restart.mgmt.usage.server=\\u65B0\\u3057\\u3044\\u8A2D\\u5B9A\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u4F7F\\u7528\\u72B6\\u6CC1\\u6E2C\\u5B9A\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.restart.network=\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3067\\u63D0\\u4F9B\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30B5\\u30FC\\u30D3\\u30B9\\u304C\\u4E2D\\u65AD\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.restart.vpc=VPC \\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.security.group.usage=(\\u8A72\\u5F53\\u3059\\u308B\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u3059\\u3079\\u3066\\u9078\\u629E\\u3059\\u308B\\u306B\\u306F\\u3001Ctrl \\u30AD\\u30FC\\u3092\\u62BC\\u3057\\u306A\\u304C\\u3089\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044) +message.select.a.zone=\\u30BE\\u30FC\\u30F3\\u306F\\u901A\\u5E38\\u3001\\u5358\\u4E00\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u306B\\u76F8\\u5F53\\u3057\\u307E\\u3059\\u3002\\u8907\\u6570\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u8A2D\\u5B9A\\u3057\\u3001\\u7269\\u7406\\u7684\\u306B\\u5206\\u96E2\\u3057\\u3066\\u5197\\u9577\\u6027\\u3092\\u6301\\u305F\\u305B\\u308B\\u3053\\u3068\\u306B\\u3088\\u308A\\u3001\\u30AF\\u30E9\\u30A6\\u30C9\\u306E\\u4FE1\\u983C\\u6027\\u3092\\u9AD8\\u3081\\u307E\\u3059\\u3002 +message.select.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.select.iso=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E ISO \\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.select.item=\\u9805\\u76EE\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.select.security.groups=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306E\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.select.template=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.setup.physical.network.during.zone.creation.basic=\\u57FA\\u672C\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u3068\\u304D\\u306F\\u3001\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u4E0A\\u306E NIC \\u306B\\u5BFE\\u5FDC\\u3059\\u308B 1 \\u3064\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3067\\u304D\\u307E\\u3059\\u3002\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306F\\u3044\\u304F\\u3064\\u304B\\u306E\\u7A2E\\u985E\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u4F1D\\u9001\\u3057\\u307E\\u3059\\u3002

    \\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306B\\u307B\\u304B\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u3092\\u30C9\\u30E9\\u30C3\\u30B0 \\u30A2\\u30F3\\u30C9 \\u30C9\\u30ED\\u30C3\\u30D7\\u3059\\u308B\\u3053\\u3068\\u3082\\u3067\\u304D\\u307E\\u3059\\u3002 +message.setup.physical.network.during.zone.creation=\\u62E1\\u5F35\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u3068\\u304D\\u306F\\u30011 \\u3064\\u4EE5\\u4E0A\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u5404\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306F\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u4E0A\\u306E 1 \\u3064\\u306E NIC \\u306B\\u5BFE\\u5FDC\\u3057\\u307E\\u3059\\u3002\\u5404\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3067\\u306F\\u3001\\u7D44\\u307F\\u5408\\u308F\\u305B\\u306B\\u5236\\u9650\\u304C\\u3042\\u308A\\u307E\\u3059\\u304C\\u30011 \\u3064\\u4EE5\\u4E0A\\u306E\\u7A2E\\u985E\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u901A\\u4FE1\\u3067\\u304D\\u307E\\u3059\\u3002

    \\u5404\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306B\\u5BFE\\u3057\\u3066\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u3092\\u30C9\\u30E9\\u30C3\\u30B0 \\u30A2\\u30F3\\u30C9 \\u30C9\\u30ED\\u30C3\\u30D7\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.setup.successful=\\u30AF\\u30E9\\u30A6\\u30C9\\u304C\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002 +message.snapshot.schedule=\\u6B21\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u304B\\u3089\\u9078\\u629E\\u3057\\u3066\\u30DD\\u30EA\\u30B7\\u30FC\\u306E\\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u9069\\u7528\\u3059\\u308B\\u3053\\u3068\\u306B\\u3088\\u308A\\u3001\\u5B9A\\u671F\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u30B9\\u30B1\\u30B8\\u30E5\\u30FC\\u30EB\\u3092\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3067\\u304D\\u307E\\u3059\\u3002 +message.specify.url=URL \\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +message.step.1.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u307E\\u305F\\u306F ISO \\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +message.step.1.desc=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u7528\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002ISO \\u3092\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3067\\u304D\\u308B\\u7A7A\\u767D\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u9078\\u629E\\u3059\\u308B\\u3053\\u3068\\u3082\\u3067\\u304D\\u307E\\u3059\\u3002 +message.step.2.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 message.step.2.desc= -message.step.3.continue=続行ã™ã‚‹ã«ã¯ãƒ‡ã‚£ã‚¹ã‚¯ ã‚ªãƒ•ã‚¡ãƒªãƒ³ã‚°ã‚’é¸æŠžã—ã¦ãã ã•ã„ +message.step.3.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 message.step.3.desc= -message.step.4.continue=続行ã™ã‚‹ã«ã¯ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’å°‘ãªãã¨ã‚‚ 1 ã¤é¸æŠžã—ã¦ãã ã•ã„ -message.step.4.desc=ä»®æƒ³ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ãŒæŽ¥ç¶šã™ã‚‹ãƒ—ライマリ ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã‚’é¸æŠžã—ã¦ãã ã•ã„。 -message.update.os.preference=ã“ã®ãƒ›ã‚¹ãƒˆã® OS åŸºæœ¬è¨­å®šã‚’é¸æŠžã—ã¦ãã ã•ã„ã€‚åŒæ§˜ã®åŸºæœ¬è¨­å®šã‚’æŒã¤ã™ã¹ã¦ã®ä»®æƒ³ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã¯ã€åˆ¥ã®ãƒ›ã‚¹ãƒˆã‚’é¸æŠžã™ã‚‹å‰ã«ã¾ãšã“ã®ãƒ›ã‚¹ãƒˆã«å‰²ã‚Šå½“ã¦ã‚‰ã‚Œã¾ã™ã€‚ -message.update.ssl=å„コンソール プロキシã®ä»®æƒ³ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã§æ›´æ–°ã™ã‚‹ã€X.509 æº–æ‹ ã®æ–°ã—ã„ SSL 証明書をé€ä¿¡ã—ã¦ãã ã•ã„: -message.virtual.network.desc=アカウントã®å°‚用仮想ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã§ã™ã€‚ブロードキャスト ドメイン㯠VLAN 内ã«é…ç½®ã•れã€ãƒ‘ブリック ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã¯ã™ã¹ã¦ä»®æƒ³ãƒ«ãƒ¼ã‚¿ãƒ¼ã«ã‚ˆã£ã¦ãƒ«ãƒ¼ãƒ†ã‚£ãƒ³ã‚°ã•れã¾ã™ã€‚ -message.volume.create.template.confirm=ã“ã®ãƒ‡ã‚£ã‚¹ã‚¯ ボリュームã®ãƒ†ãƒ³ãƒ—レートを作æˆã—ã¦ã‚‚よã‚ã—ã„ã§ã™ã‹? ボリューム サイズã«ã‚ˆã£ã¦ã¯ã€ãƒ†ãƒ³ãƒ—レートã®ä½œæˆã«ã¯æ•°åˆ†ä»¥ä¸Šã‹ã‹ã‚‹å¯èƒ½æ€§ãŒã‚りã¾ã™ã€‚ -message.zone.step.1.desc=ゾーンã®ãƒãƒƒãƒˆãƒ¯ãƒ¼ã‚¯ ãƒ¢ãƒ‡ãƒ«ã‚’é¸æŠžã—ã¦ãã ã•ã„。 -message.zone.step.2.desc=æ–°ã—ã„ゾーンを追加ã™ã‚‹ãŸã‚ã«ã€æ¬¡ã®æƒ…報を入力ã—ã¦ãã ã•ã„。 -message.zone.step.3.desc=æ–°ã—ã„ãƒãƒƒãƒ‰ã‚’追加ã™ã‚‹ãŸã‚ã«ã€æ¬¡ã®æƒ…報を入力ã—ã¦ãã ã•ã„。 -message.apply.snapshot.policy=ç¾åœ¨ã®ã‚¹ãƒŠãƒƒãƒ—ショット ãƒãƒªã‚·ãƒ¼ã‚’æ›´æ–°ã—ã¾ã—ãŸã€‚ -message.disable.snapshot.policy=ç¾åœ¨ã®ã‚¹ãƒŠãƒƒãƒ—ショット ãƒãƒªã‚·ãƒ¼ã‚’無効ã«ã—ã¾ã—ãŸã€‚ -message.action.change.service.warning.for.instance=ç¾åœ¨ã®ã‚µãƒ¼ãƒ“ス オファリングを変更ã™ã‚‹å‰ã«ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’åœæ­¢ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.action.change.service.warning.for.router=ç¾åœ¨ã®ã‚µãƒ¼ãƒ“ス オファリングを変更ã™ã‚‹å‰ã«ãƒ«ãƒ¼ã‚¿ãƒ¼ã‚’åœæ­¢ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.action.reset.password.warning=ç¾åœ¨ã®ãƒ‘スワードを変更ã™ã‚‹å‰ã«ã‚¤ãƒ³ã‚¹ã‚¿ãƒ³ã‚¹ã‚’åœæ­¢ã™ã‚‹å¿…è¦ãŒã‚りã¾ã™ã€‚ -message.action.reset.password.off=インスタンスã¯ç¾åœ¨ã“ã®æ©Ÿèƒ½ã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã¾ã›ã‚“。 - -#Errors -error.login=ユーザーå/パスワードãŒè¨˜éŒ²ã¨ä¸€è‡´ã—ã¾ã›ã‚“。 -error.menu.select=é …ç›®ãŒé¸æŠžã•れã¦ã„ãªã„ãŸã‚æ“作を実行ã§ãã¾ã›ã‚“。 -error.mgmt.server.inaccessible=管ç†ã‚µãƒ¼ãƒãƒ¼ã«ã‚¢ã‚¯ã‚»ã‚¹ã§ãã¾ã›ã‚“。後ã§å†å®Ÿè¡Œã—ã¦ãã ã•ã„。 -error.session.expired=ã‚»ãƒƒã‚·ãƒ§ãƒ³ã®æœ‰åŠ¹æœŸé™ãŒåˆ‡ã‚Œã¾ã—ãŸã€‚ - -#resizeVolumes -label.resize.new.size=New Size(GB) -label.action.resize.volume=Resize Volume -label.action.resize.volume.processing=Resizing Volume.... -label.resize.new.offering.id=New Offering -label.resize.shrink.ok=Shrink OK +message.step.4.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +message.step.4.desc=\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304C\\u63A5\\u7D9A\\u3059\\u308B\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.storage.traffic=\\u30DB\\u30B9\\u30C8\\u3084 CloudStack \\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306A\\u3069\\u3001\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u901A\\u4FE1\\u3059\\u308B CloudStack \\u306E\\u5185\\u90E8\\u30EA\\u30BD\\u30FC\\u30B9\\u9593\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3067\\u3059\\u3002\\u3053\\u3053\\u3067\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.suspend.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u4E00\\u6642\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.template.desc=VM \\u306E\\u8D77\\u52D5\\u306B\\u4F7F\\u7528\\u3067\\u304D\\u308B OS \\u30A4\\u30E1\\u30FC\\u30B8 +message.tooltip.dns.1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.tooltip.dns.2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E VM \\u3067\\u4F7F\\u7528\\u3059\\u308B 2 \\u756A\\u76EE\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.tooltip.internal.dns.1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E CloudStack \\u5185\\u90E8\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.tooltip.internal.dns.2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E CloudStack \\u5185\\u90E8\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.tooltip.network.domain=DNS \\u30B5\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9\\u3067\\u3059\\u3002\\u3053\\u306E\\u30B5\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9\\u304B\\u3089\\u30B2\\u30B9\\u30C8 VM \\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3059\\u308B\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30AB\\u30B9\\u30BF\\u30E0 \\u30C9\\u30E1\\u30A4\\u30F3\\u540D\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002 +message.tooltip.pod.name=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 +message.tooltip.reserved.system.gateway=\\u30DD\\u30C3\\u30C9\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306E\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3067\\u3059\\u3002 +message.tooltip.reserved.system.netmask=\\u30DD\\u30C3\\u30C9\\u306E\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u3092\\u5B9A\\u7FA9\\u3059\\u308B\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30D7\\u30EC\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9\\u3067\\u3059\\u3002CIDR \\u8868\\u8A18\\u3092\\u4F7F\\u7528\\u3057\\u307E\\u3059\\u3002 +message.tooltip.zone.name=\\u30BE\\u30FC\\u30F3\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 +message.update.os.preference=\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u306E OS \\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u540C\\u69D8\\u306E\\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u6301\\u3064\\u3059\\u3079\\u3066\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306F\\u3001\\u5225\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u9078\\u629E\\u3059\\u308B\\u524D\\u306B\\u307E\\u305A\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u306B\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u307E\\u3059\\u3002 +message.update.resource.count=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u6570\\u3092\\u66F4\\u65B0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.update.ssl=\\u5404\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3067\\u66F4\\u65B0\\u3059\\u308B\\u3001X.509 \\u6E96\\u62E0\\u306E\\u65B0\\u3057\\u3044 SSL \\u8A3C\\u660E\\u66F8\\u3092\\u9001\\u4FE1\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\: +message.validate.instance.name=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u540D\\u306F 63 \\u6587\\u5B57\\u4EE5\\u5185\\u3067\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002ASCII \\u6587\\u5B57\\u306E a\\uFF5Ez\\u3001A\\uFF5EZ\\u3001\\u6570\\u5B57\\u306E 0\\uFF5E9\\u3001\\u304A\\u3088\\u3073\\u30CF\\u30A4\\u30D5\\u30F3\\u306E\\u307F\\u3092\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u3059\\u3002\\u6587\\u5B57\\u3067\\u59CB\\u307E\\u308A\\u3001\\u6587\\u5B57\\u307E\\u305F\\u306F\\u6570\\u5B57\\u3067\\u7D42\\u308F\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.virtual.network.desc=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u5C02\\u7528\\u4EEE\\u60F3\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3067\\u3059\\u3002\\u30D6\\u30ED\\u30FC\\u30C9\\u30AD\\u30E3\\u30B9\\u30C8 \\u30C9\\u30E1\\u30A4\\u30F3\\u306F VLAN \\u5185\\u306B\\u914D\\u7F6E\\u3055\\u308C\\u3001\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3078\\u306E\\u30A2\\u30AF\\u30BB\\u30B9\\u306F\\u3059\\u3079\\u3066\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u306B\\u3088\\u3063\\u3066\\u30EB\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0\\u3055\\u308C\\u307E\\u3059\\u3002 +message.vm.create.template.confirm=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u3068 VM \\u304C\\u81EA\\u52D5\\u7684\\u306B\\u518D\\u8D77\\u52D5\\u3055\\u308C\\u307E\\u3059\\u3002 +message.vm.review.launch=\\u6B21\\u306E\\u60C5\\u5831\\u3092\\u53C2\\u7167\\u3057\\u3066\\u3001\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u6B63\\u3057\\u304F\\u8A2D\\u5B9A\\u3057\\u305F\\u3053\\u3068\\u3092\\u78BA\\u8A8D\\u3057\\u3066\\u304B\\u3089\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.volume.create.template.confirm=\\u3053\\u306E\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u30B5\\u30A4\\u30BA\\u306B\\u3088\\u3063\\u3066\\u306F\\u3001\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210\\u306B\\u306F\\u6570\\u5206\\u4EE5\\u4E0A\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.you.must.have.at.least.one.physical.network=\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304C\\u5FC5\\u8981\\u3067\\u3059 +message.Zone.creation.complete=\\u30BE\\u30FC\\u30F3\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F +message.zone.creation.complete.would.you.like.to.enable.this.zone=\\u30BE\\u30FC\\u30F3\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.zone.no.network.selection=\\u9078\\u629E\\u3057\\u305F\\u30BE\\u30FC\\u30F3\\u3067\\u306F\\u3001\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002 +message.zone.step.1.desc=\\u30BE\\u30FC\\u30F3\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.zone.step.2.desc=\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084Zone\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e5\u0085\u00a5\u00e5\u008a\u009b\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 +message.zone.step.3.desc=\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084Pod\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e5\u0085\u00a5\u00e5\u008a\u009b\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 +message.zoneWizard.enable.local.storage=\\u8B66\\u544A\: \\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u306E\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u8D77\\u52D5\\u5834\\u6240\\u306B\\u5FDC\\u3058\\u3066\\u6B21\\u306E\\u64CD\\u4F5C\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002

    1. \\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3067\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4F5C\\u6210\\u3057\\u305F\\u5F8C\\u3067\\u30BE\\u30FC\\u30F3\\u306B\\u8FFD\\u52A0\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u307E\\u305F\\u3001\\u7121\\u52B9\\u72B6\\u614B\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u3082\\u3042\\u308A\\u307E\\u3059\\u3002

    2. \\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3067\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001system.vm.use.local.storage \\u3092 true \\u306B\\u8A2D\\u5B9A\\u3057\\u3066\\u304B\\u3089\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002


    \\u7D9A\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +mode=\\u30E2\\u30FC\\u30C9 +network.rate=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u901F\\u5EA6 +notification.reboot.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u518D\\u8D77\\u52D5 +notification.start.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u8D77\\u52D5 +notification.stop.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u505C\\u6B62 +side.by.side=\\u4E26\\u5217 +state.Accepted=\\u627F\\u8AFE\\u6E08\\u307F +state.Active=\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6 +state.Allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F +state.Allocating=\\u5272\\u308A\\u5F53\\u3066\\u4E2D +state.BackedUp=\\u30D0\\u30C3\\u30AF\\u30A2\\u30C3\\u30D7\\u6E08\\u307F +state.BackingUp=\\u30D0\\u30C3\\u30AF\\u30A2\\u30C3\\u30D7\\u4E2D +state.Completed=\\u5B8C\\u4E86 +state.Creating=\\u4F5C\\u6210\\u4E2D +state.Declined=\\u8F9E\\u9000 +state.Destroyed=\\u7834\\u68C4\\u6E08\\u307F +state.Disabled=\\u7121\\u52B9 +state.enabled=\\u6709\\u52B9 +state.Enabled=\\u6709\\u52B9 +state.Error=\\u30A8\\u30E9\\u30FC +state.Expunging=\\u62B9\\u6D88\\u4E2D +state.Migrating=\\u79FB\\u884C\\u4E2D +state.Pending=\\u4FDD\\u7559 +state.ready=\\u6E96\\u5099\\u5B8C\\u4E86 +state.Ready=\\u6E96\\u5099\\u5B8C\\u4E86 +state.Running=\\u5B9F\\u884C\\u4E2D +state.Starting=\\u958B\\u59CB\\u4E2D +state.Stopped=\\u505C\\u6B62\\u6E08\\u307F +state.Stopping=\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059 +state.Suspended=\\u4E00\\u6642\\u505C\\u6B62 +ui.listView.filters.all=\\u3059\\u3079\\u3066 +ui.listView.filters.mine=\\u81EA\\u5206\\u306E\\u3082\\u306E diff --git a/client/WEB-INF/classes/resources/messages_ko_KR.properties b/client/WEB-INF/classes/resources/messages_ko_KR.properties index a7b534aa3cd..757871acde0 100644 --- a/client/WEB-INF/classes/resources/messages_ko_KR.properties +++ b/client/WEB-INF/classes/resources/messages_ko_KR.properties @@ -1,1514 +1,1443 @@ # Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file +# or more contributor license agreements. See the NOTICE file # distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file +# 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 +# with the License. You may obtain a copy of the License at # -# http://www.apache.org/licenses/LICENSE-2.0 +# 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 +# KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. -#new labels (begin) ********************************************************************************************** - - -#new labels (end) ************************************************************************************************ - - -#modified labels (begin) ***************************************************************************************** - - -#modified labels (end) ******************************************************************************************* - -label.configure.network.ACLs=ë„¤íŠ¸ì›Œí¬ ê¶Œí•œ 관리(ACL) 구성 -label.network.ACLs=ë„¤íŠ¸ì›Œí¬ ê¶Œí•œ 관리(ACL) -label.add.network.ACL=ë„¤íŠ¸ì›Œí¬ ê¶Œí•œ 관리(ACL) 추가 -label.private.Gateway=사설 게ì´íŠ¸ì›¨ì´ -label.VPC.router.details=VPC ë¼ìš°í„° ìƒì„¸ -label.VMs.in.tier=계층 ë‚´ë¶€ ê°€ìƒë¨¸ì‹  - -message.zoneWizard.enable.local.storage=경고:현재 Zoneì˜ ë¡œì»¬ 스토리지를 사용 하는 경우는 시스템 VMì˜ ì‹œìž‘ ìž¥ì†Œì— ë”°ë¼ ë‹¤ìŒ ìž‘ì—…ì´ í•„ìš”í•©ë‹ˆë‹¤.

    1. 시스템 VMì„ ê¸°ë³¸ 스토리지로 시작해야 하는 경우 기본 스토리지를 만들기한 다ìŒì— Zoneì— ì¶”ê°€í•´ì•¼ 합니다. ë˜í•œ, 유효하지 ì•Šì€ ìƒíƒœì˜ Zoneì„ ì‹œìž‘í•´ì•¼ 합니다.

    2. 시스템 VM를 로컬 스토리지로 시작할 필요가 있는 경우 system.vm.use.local.storage를 true 로 설정하고 나서 Zoneì„ ì‚¬ìš©í•´ì•¼ 합니다.


    ì§„í–‰ 하시겠습니까? -label.local.storage.enabled=로컬 스토리지는 유효 -label.tier.details=계층 ìƒì„¸ 장버 -label.edit.tags=태그 편집 -label.network.rate.megabytes=ë„¤íŠ¸ì›Œí¬ ì†ë„ (MB/ì´ˆ) -label.action.enable.physical.network=물리 ë„¤íŠ¸ì›Œí¬ ì‚¬ìš©í•¨ -label.action.disable.physical.network=물리 ë„¤íŠ¸ì›Œí¬ ì‚¬ìš© 안 함 -message.action.enable.physical.network=현재 물리 네트워í¬ë¥¼ 사용하시겠습니까? -message.action.disable.physical.network=현재 물리 네트워í¬ë¥¼ 사용 안 함으로 하시겠습니까? - -label.select.tier=계층 ì„ íƒ -label.add.ACL=권한 관리(ACL) 추가 -label.remove.ACL=권한 관리(ACL) ì‚­ì œ -label.tier=계층 -label.network.ACL=ë„¤íŠ¸ì›Œí¬ ê¶Œí•œ 관리(ACL) -label.network.ACL.total=ë„¤íŠ¸ì›Œí¬ ê¶Œí•œ 관리(ACL) 합계 -label.add.new.gateway=새 게ì´íŠ¸ì›¨ì´ ì¶”ê°€í•˜ê¸° -message.add.new.gateway.to.vpc=현재 VPCì— ìƒˆë¡œìš´ 게ì´íŠ¸ì›¨ì´ë¥¼ 추가하기 위한 정보를 지정해 주십시오. -label.delete.gateway=게ì´íŠ¸ì›¨ì´ ì‚­ì œ -message.delete.gateway=현재 게ì´íŠ¸ì›¨ì´ë¥¼ 삭제하시겠습니까? -label.CIDR.of.destination.network=ëŒ€ìƒ ë„¤íŠ¸ì›Œí¬ CIDR -label.add.route=ë¼ìš°íЏ 추가 -label.add.static.route=ì •ì  ë¼ìš°íЏ 추가 -label.remove.static.route=ì •ì  ë¼ìš°íЏ ì‚­ì œ -label.site.to.site.VPN=사ì´íŠ¸ê°„ 사설네트워í¬(VPN) -label.add.VPN.gateway=VPN 게ì´íŠ¸ì›¨ì´ ì¶”ê°€ -message.add.VPN.gateway=VPN 게ì´íŠ¸ì›¨ì´ë¥¼ 추가하시겠습니까? -label.VPN.gateway=VPN 게ì´íŠ¸ì›¨ì´ -label.delete.VPN.gateway=VPN 게ì´íŠ¸ì›¨ì´ì‚­ì œ -message.delete.VPN.gateway=현재 VPN 게ì´íŠ¸ì›¨ì´ë¥¼ 삭제하시겠습니까? -label.VPN.connection=VPN ì ‘ì† -label.IPsec.preshared.key=IPsec 사전 공유 키 -label.IKE.policy=IKE ì •ì±… -label.ESP.policy=ESP ì •ì±… -label.create.VPN.connection=VPN ì ‘ì† ë§Œë“¤ê¸° -label.VPN.customer.gateway=VPN ê³ ê° ê²Œì´íŠ¸ì›¨ì´ -label.CIDR.list=CIDR ëª©ë¡ -label.IKE.lifetime=IKE 유효기간(ì´ˆ) -label.ESP.lifetime=ESP 유효기간(ì´ˆ) -label.dead.peer.detection=ì •ì§€ 피어 ê°ì§€ -label.reset.VPN.connection=VPN ì ‘ì† ìž¬ì„¤ì • -message.reset.VPN.connection=VPN ì ‘ì†ì„ 재설정 하시겠습니까? -label.delete.VPN.connection=VPN ì ‘ì† ì‚­ì œ -message.delete.VPN.connection=VPN ì ‘ì†ì„ 삭제하시겠습니까? -label.add.new.tier=새 계층 추가 -label.add.VM.to.tier=ê³„ì¸µì— VM 추가 -label.remove.tier=계층 ì‚­ì œ - -label.local.storage.enabled=로컬 스토리지 사용함 -label.associated.network=관련 ë„¤íŠ¸ì›Œí¬ -label.add.port.forwarding.rule=í¬í†  전송 ê·œì¹™ì˜ ì¶”ê°€ -label.dns=DNS - -label.vpc=VPC -label.vpc.id=VPC ID -label.tier=계층 -label.add.vpc=VPC 추가 -label.super.cidr.for.guest.networks=ì†ë‹˜ ë„¤íŠ¸ì›Œí¬ ìŠˆí¼ CIDR -label.DNS.domain.for.guest.networks=ì†ë‹˜ ë„¤íŠ¸ì›Œí¬ DNS ë„ë©”ì¸ -label.configure.vpc=VPC 구성 -label.edit.vpc=VPC 편집 -label.restart.vpc=VPC 재시작 -message.restart.vpc=VPC를 재시작하시겠습니까? -label.remove.vpc=VPC ì‚­ì œ -message.remove.vpc=VPC를 삭제하시겠습니까? -label.vpn.customer.gateway=VPN ê³ ê° ê²Œì´íŠ¸ì›¨ì´ -label.add.vpn.customer.gateway=VPN ê³ ê° ê²Œì´íŠ¸ì›¨ì´ ì¶”ê°€ -label.IKE.encryption=IKE 암호화 -label.IKE.hash=IKE 해시 -label.IKE.DH=IKE DH -label.ESP.encryption=ESP 암호화 -label.ESP.hash=ESP 해시 -label.perfect.forward.secrecy=Perfect Forward Secrecy -label.IKE.lifetime=IKE 유효기간(ì´ˆ) -label.ESP.lifetime=ESP 유효기간(ì´ˆ) -label.dead.peer.detection=ì •ì§€ 피어 ê°ì§€ -label.delete.VPN.customer.gateway=VPN ê³ ê° ê²Œì´íŠ¸ì›¨ì´ ì‚­ì œ -message.delete.VPN.customer.gateway=현재 VPN ê³ ê° ê²Œì´íŠ¸ì›¨ì´ë¥¼ 삭제하시겠습니까? - -label.network.domain.text=ë„¤íŠ¸ì›Œí¬ ë„ë©”ì¸ -label.memory.mb=메모리 (MB) -label.cpu.mhz=CPU (MHz) -message.action.remove.host=현재 호스트를 삭제하시겠습니까? - -message.action.reboot.router=현재 ê°€ìƒ ë¼ìš°í„°ë¡œ 제공하는 모든 서비스가 중단ë©ë‹ˆë‹¤. ì´ ë¼ìš°í„°ë¥¼ 재시작하시겠습니까? -message.action.stop.router=현재 ê°€ìƒ ë¼ìš°í„°ë¡œ 제공하는 모든 서비스가 중단ë©ë‹ˆë‹¤. ì´ ë¼ìš°í„°ë¥¼ 정지하시겠습니까? -message.restart.network=현재 네트워í¬ë¡œ 제공하는 모든 서비스가 중단ë©ë‹ˆë‹¤. ì´ ë„¤íŠ¸ì›Œí¬ë¥¼ 재시작하시겠습니까? - - -label.ipaddress=IP 주소 -label.vcdcname=vCenter DC 명 -label.vcipaddress=vCenter IP 주소 -label.vsmctrlvlanid=제어 VLAN ID -label.vsmpktvlanid=패킷 VLAN ID -label.vsmstoragevlanid=스토리지 VLAN ID -label.nexusVswitch=Nexus 1000V -label.action.delete.nexusVswitch=Nexus 1000V ì‚­ì œ -label.action.enable.nexusVswitch=Nexus 1000V 사용함 -label.action.disable.nexusVswitch=Nexus 1000V 사용 안 함 -label.action.list.nexusVswitch=Nexus 1000V ëª©ë¡ í‘œì‹œ -message.action.delete.nexusVswitch=현재 Nexus 1000V를 삭제하시겠습니까? -message.action.enable.nexusVswitch=현재 Nexus 1000V를 사용 하시겠습니까? -message.action.disable.nexusVswitch=현재 Nexus 1000V를 사용 안 함으로 하시겠습니까? -message.specify.url=URL를 지정해 주십시오 -label.select.instance.to.attach.volume.to=ë³¼ë¥¨ì„ ì—°ê²°í•˜ëŠ” ì¸ìŠ¤í„´ìŠ¤ë¥¼ ì„ íƒí•´ 주십시오 -label.upload=업로드 -label.upload.volume=ë³¼ë¥¨ì˜ ì—…ë¡œë“œ -label.virtual.routers=ê°€ìƒ ë¼ìš°í„° -label.primary.storage.count=기본 스토리지 그룹 -label.secondary.storage.count=2ì°¨ 스토리지 그룹 -label.number.of.system.vms=시스템 VM 수 -label.number.of.virtual.routers=ê°€ìƒ ë¼ìš°í„°ìˆ˜ -label.action.register.iso=ISO ë“±ë¡ -label.isolation.method=분리 방법 -label.action.register.template=템플릿 ë“±ë¡ -label.checksum=MD5 ì²´í¬ì„¬ -label.vpn=ê°€ìƒ ì‚¬ì„¤ë§(VPN) -label.vlan=ê°€ìƒ ë„¤íŠ¸ì›Œí¬(VLAN) - - -label.management.ips=관리 IP 주소 -label.devices=기기 -label.rules=규칙 -label.traffic.label=트래픽 ë¼ë²¨ -label.vm.state=VM ìƒíƒœ -message.setup.physical.network.during.zone.creation.basic=기본 Zoneì„ ì¶”ê°€í•  때는 하ì´í¼ ë°”ì´ì €ìƒì˜ 네트ì›ì¹´ë“œ(NIC)ì— ëŒ€ì‘하는 한 가지 물리 네트워í¬ë¥¼ 설정 í•  수 있습니다. 네트워í¬ëŠ” 몇 가지 ì¢…ë¥˜ì˜ íŠ¸ëž˜í”½ì„ ì „ì†¡í•©ë‹ˆë‹¤.

    물리 네트워í¬ì— 다른 íŠ¸ëž˜í”½ì˜ ì¢…ë¥˜ë¥¼ë“œëž˜ê·¸ 앤 드롭 í•  ìˆ˜ë„ ìžˆìŠµë‹ˆë‹¤. -label.domain.router=ë„ë©”ì¸ ë¼ìš°í„° -label.console.proxy=콘솔 프ë¡ì‹œ -label.secondary.storage.vm=2ì°¨ 스토리지 VM -label.add.netScaler.device=Netscaler 기기 추가 -label.add.F5.device=F5 기기 추가 -label.add.SRX.device=SRX 기기 추가 -label.account.and.security.group=계정 ì •ë³´, 보안 그룹 -label.fetch.latest=최신 ì •ë³´ ì·¨ë“ -label.system.offering=시스템 제공 -message.validate.instance.name=ì¸ìŠ¤í„´ìŠ¤ëª…ì€ 63 ë¬¸ìž ì´ë‚´ì—서 지정해 주십시오. ASCII 문ìžì˜ a-z, A-Z, 숫ìžì˜ 0-9 ë° í•˜ì´í”ˆë§Œì„ 사용할 수 있습니다. 문ìžë¡œ 시작하여 ë¬¸ìž ë˜ëŠ” 숫ìžë¡œ ë내야 합니다. - - -label.isolated.networks=분리 ë„¤íŠ¸ì›Œí¬ -label.latest.events=최신 ì´ë²¤íЏ -state.Enabled=사용함 -label.system.wide.capacity=시스템 ì „ì²´ 처리 능력 -label.network.service.providers=ë„¤íŠ¸ì›Œí¬ ì„œë¹„ìŠ¤ ì œê³µìž -message.launch.zone=Zoneì„ ì‹œìž‘í•  준비가 ë˜ì—ˆìŠµë‹ˆë‹¤. ë‹¤ìŒ ìˆœì„œì— ë”°ë¼ ì§„í–‰í•´ 주십시오. -error.unable.to.reach.management.server=관리 서버와 통신할 수 없습니다. -label.internal.name=내부명 -message.configure.all.traffic.types=ë³µìˆ˜ì˜ ë¬¼ë¦¬ 네트워í¬ê°€ 있습니다. [편집]ì„ í´ë¦­í•´ íŠ¸ëž˜í”½ì˜ ì¢…ë¥˜ 마다 ë¼ë²¨ì„ 구성해 주십시오. -message.edit.traffic.type=현재 íŠ¸ëž˜í”½ì˜ ì¢…ë¥˜ì— ê´€ë ¨ 트래픽 ë¼ë²¨ì„ 지정해 주십시오. -label.edit.traffic.type=트래픽 종류 편집 -label.label=ë¼ë²¨ -label.max.networks=최대 네트워í¬ìˆ˜ -error.invalid.username.password=유효하지 ì•Šì€ ì‚¬ìš©ìžëª… ë˜ëŠ” 암호 -message.enabling.security.group.provider=보안 그룹 제공ìžë¥¼ 사용 하고 있습니다. -message.adding.Netscaler.provider=Netscaler 제공ìžë¥¼ 추가하고 있습니다. -message.creating.guest.network=ì†ë‹˜ 네트워í¬ë¥¼ 만듭니다. -label.action.delete.physical.network=물리 ë„¤íŠ¸ì›Œí¬ ì‚­ì œ -message.action.delete.physical.network=현재 물리 네트워í¬ë¥¼ 삭제하시겠습니까? -message.installWizard.copy.whatIsAHost=호스트는 ë‹¨ì¼ ì»´í“¨í„°ë¡œ ì†ë‹˜ ê°€ìƒ ë¨¸ì‹ ì„ ì‹¤í–‰í•˜ëŠ” 컴퓨팅 ìžì›ì„ 제공합니다. ë² ì–´ 메탈 호스트를 제외하고, ê° í˜¸ìŠ¤íŠ¸ëŠ” 게스트 ê°€ìƒ ë¨¸ì‹ ì„ ê´€ë¦¬í•˜ê¸° 위한 하ì´í¼ ë°”ì´ì € 소프트웨어를 설치합니다. ë² ì–´ 메탈 í˜¸ìŠ¤íŠ¸ì— ëŒ€í•´ì„œëŠ” 설치 ê°€ì´ë“œ 고급편 특수 사례로서 설명합니다. 예를 들어, KVMì€ ìœ íš¨í•œ Linux 서버, Citrix XenServerê°€ ë™ìž‘하는 서버 ë° ESXi 서버가 호스트입니다. 기본 설치ì—서는 XenServer ë˜ëŠ” KVM를 실행하는 ë‹¨ì¼ í˜¸ìŠ¤íŠ¸ë¥¼ 사용합니다.

    호스트는 CloudStackâ„¢ í™˜ê²½ë‚´ì˜ ìµœì†Œì˜ ì¡°ì§ ë‹¨ìœ„ìž…ë‹ˆë‹¤. 호스트는 í´ëŸ¬ìŠ¤í„°ì— í¬í•¨ë˜ì–´ í´ëŸ¬ìŠ¤í„°ëŠ” Podì— í¬í•¨ë˜ì–´ Pod는 Zoneì— í¬í•¨ë©ë‹ˆë‹¤. - - -label.add.compute.offering=컴퓨팅 ìžì› 추가 -label.compute.offering=컴퓨팅 ìžì› 제공 -label.compute.offerings=컴퓨팅 ìžì› 제공 -label.select.offering=제공 ì„ íƒ -label.menu.infrastructure=ì¸í”„ë¼ìŠ¤íŠ¸ëŸ­ì³ -label.sticky.tablesize=í…Œì´ë¸” í¬ê¸° -label.sticky.expire=만료시간 -label.sticky.cookie-name=Cookie 명 -label.sticky.mode=모드 -label.sticky.length=ê¸¸ì´ -label.sticky.holdtime=ë³´ê´€ 유지 시간 -label.sticky.request-learn=ëŸ¬ë‹ ìš”êµ¬ -label.sticky.prefix=프레픽스 -label.sticky.nocache=ìºì‹œ ì—†ìŒ -label.sticky.indirect=ê°„ì ‘ -label.sticky.postonly=í¬ìŠ¤íŠ¸ë§Œ -label.sticky.domain=ë„ë©”ì¸ -state.Allocating=할당 중 -state.Migrating=ì´ì „ 중 -error.please.specify.physical.network.tags=현재 물리 ë„¤íŠ¸ì›Œí¬ íƒœê·¸ë¥¼ 지정하지 않으면, ë„¤íŠ¸ì›Œí¬ ì œê³µì€ ì‚¬ìš©í•  수 없습니다. - - -state.Stopping=정지하고 있는 중 -message.add.load.balancer.under.ip=ë‹¤ìŒ IP ì£¼ì†Œì— ëŒ€í•´ì„œ ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 ê·œì¹™ì„ ì¶”ê°€í•©ë‹ˆë‹¤: -message.select.instance=ì¸ìŠ¤í„´ìŠ¤ë¥¼ ì„ íƒí•´ 주십시오. -label.select=ì„ íƒ -label.select.vm.for.static.nat=ì •ì  NATìš© VM ì„ íƒ -label.select.instance=ì¸ìŠ¤í„´ìŠ¤ ì„ íƒ -label.nat.port.range=NAT í¬í†  범위 -label.static.nat.vm.details=ì •ì  NAT VM ìƒì„¸ ì •ë³´ -label.edit.lb.rule=ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 규칙 편집 -message.migrate.instance.to.host=다른 호스트ì—게 ì¸ìŠ¤í„´ìŠ¤ë¥¼ ì´ì „하시겠습니까? -label.migrate.instance.to.host=다른 호스트ì—게 ì¸ìŠ¤í„´ìŠ¤ ì´ì „ -message.migrate.instance.to.ps=다른 기본 ìŠ¤í† ë¦¬ì§€ì— ì¸ìŠ¤í„´ìŠ¤ë¥¼ ì´ì „하시겠습니까? -label.migrate.instance.to.ps=다른 기본 ìŠ¤í† ë¦¬ì§€ì— ì¸ìŠ¤í„´ìŠ¤ ì´ì „ -label.corrections.saved=ì ‘ì† ì •ë³´ 저장 -message.installWizard.copy.whatIsSecondaryStorage=2ì°¨ 스토리지는 Zoneê³¼ ê´€ë ¨ë¤ ì•„ëž˜ì˜ í•­ëª©ì„ í¬í•¨í•©ë‹ˆë‹¤.
    • 템플릿 - VM 시작 시 사용할 수 있는 OS ì´ë¯¸ì§€ë¡œ 애플리케ì´ì…˜ì˜ 설치 등 추가 êµ¬ì„±ì„ í¬í•¨í•  수 있습니다.
    • ISO ì´ë¯¸ì§€ - 바로 시작 가능 ë˜ëŠ” 시작 ë¶ˆê°€ì˜ OS ì´ë¯¸ì§€ìž…니다.
    • ë””ìŠ¤í¬ ë³¼ë¥¨ 스냅샷 - VM ë°ì´í„° 저장 복사본입니다. ë°ì´í„°ì˜ ë³µì› ë˜ëŠ” 새로운 템플릿 ë§Œë“¤ê¸°ì— ì‚¬ìš©í•  수 있습니다.
    -message.installWizard.copy.whatIsPrimaryStorage=CloudStackâ„¢ í´ë¼ìš°ë“œ ì¸í”„ë¼ìŠ¤íŠ¸ëŸ­ì³ì—서는 기본 스토리지와 2ì°¨ 스토리지 ë‘ ì¢…ë¥˜ì˜ ìŠ¤í† ë¦¬ì§€ë¥¼ 사용합니다. 양쪽 스토리지ì—서 iSCSI, NFS 서버, ë˜ëŠ” 로컬 디스í¬ë¥¼ 사용할 수 있습니다.

    기본 스토리지는 í´ëŸ¬ìŠ¤í„°ì— ê´€ë ¨ë˜ì–´ê·¸ í´ëŸ¬ìŠ¤í„°ë‚´ì˜ í˜¸ìŠ¤íŠ¸ë¡œ ë™ìž‘하는 모든 VM 중 ê° ê²ŒìŠ¤íŠ¸ VMì˜ ë””ìŠ¤í¬ ë³¼ë¥¨ì„ í¬í•¨í•©ë‹ˆë‹¤. ì›ëž˜, 기본 스토리지 서버는 호스트 ê·¼ì²˜ì— ì„¤ì¹˜í•©ë‹ˆë‹¤. -message.installWizard.copy.whatIsACluster=í´ëŸ¬ìŠ¤í„°ëŠ” 호스트를 그룹화 하는 방법입니다. 한 가지 í´ëŸ¬ìŠ¤í„°ë‚´ 호스트는 ëª¨ë‘ ë™ì¼í•œ 하드웨어ì—서 구성ë˜ì–´ ê°™ì€ í•˜ì´í¼ ë°”ì´ì €ë¥¼ 실행하고 ê°™ì€ ì„œë¸Œ 네트워í¬ìƒì— 있어서 ê°™ì€ ê³µìœ  ìŠ¤í† ë¦¬ì§€ì— ì ‘ê·¼ 합니다. ê°™ì€ í´ëŸ¬ìŠ¤í„°ë‚´ì˜ í˜¸ìŠ¤íŠ¸ 사ì´ì—서는 사용ìžì—게 서비스를 중단하지 않고 ê°€ìƒ ë¨¸ì‹  ì¸ìŠ¤í„´ìŠ¤ë¥¼ 실시간 ì´ì „ í•  수 있습니다. í´ëŸ¬ìŠ¤í„°ëŠ” CloudStackâ„¢ í™˜ê²½ë‚´ì˜ ì„¸ 번째로 í° ì¡°ì§ ë‹¨ìœ„ìž…ë‹ˆë‹¤. í´ëŸ¬ìŠ¤í„°ëŠ” Podì— í¬í•¨ë˜ì–´ Pod는 Zoneì— í¬í•¨ë©ë‹ˆë‹¤.

    CloudStackâ„¢ ì—서는 한 가지 í´ë¼ìš°ë“œ í™˜ê²½ì— ë³µìˆ˜ í´ëŸ¬ìŠ¤í„°ë¥¼ 설정할 수 있으나 기본 설치ì—서는 í´ëŸ¬ìŠ¤í„°ëŠ” 한 개입니다. -message.installWizard.copy.whatIsAPod=ì›ëž˜ 한 가지 Pod는 ë‹¨ì¼ ìž ê¸ˆì„ ë‚˜íƒ€ëƒ…ë‹ˆë‹¤. ê°™ì€ Podë‚´ 호스트는 ê°™ì€ ì„œë¸Œ 네트워í¬ì— í¬í•¨ë©ë‹ˆë‹¤.

    Pod는 CloudStackâ„¢ í™˜ê²½ë‚´ì˜ ë‘ ë²ˆì§¸ë¡œ í° ì¡°ì§ ë‹¨ìœ„ìž…ë‹ˆë‹¤. Pod는 Zoneì— í¬í•¨ë©ë‹ˆë‹¤. ê° Zoneì€ í•œ ê°œ ì´ìƒì˜ Pod를 í¬í•¨í•  수 있습니다. 기본 설치ì—서는 Zoneë‚´ Pod는 한 개입니다. -message.installWizard.copy.whatIsAZone=Zoneì€ CloudStackâ„¢ 환경내 최대 ì¡°ì§ ë‹¨ìœ„ìž…ë‹ˆë‹¤. 한 가지 ë°ì´í„° ì„¼í„°ë‚´ì— ë³µìˆ˜ Zoneì„ ì„¤ì •í•  수 있으나 ì›ëž˜ Zoneì€ ë‹¨ì¼ì˜ ë°ì´í„° ì„¼í„°ì— í• ë‹¹í•©ë‹ˆë‹¤. ì¸í”„ë¼ìŠ¤íŠ¸ëŸ­ì³ë¥¼ Zoneì— ì¡°ì§í™”하면, Zoneì„ ë¬¼ë¦¬ì ìš°ë¡œ 분리해 설정할 수 있습니다. 예를 들어, ê° Zoneì— ì „ì›ê³¼ ë„¤íŠ¸ì›Œí¬ ì—…ë§í¬ë¥¼ 배치합니다. 필수가 아니지만 ì›ê²©ì§€ì— ë¶„ì‚°í•  수 있습니다. -message.installWizard.copy.whatIsCloudStack=CloudStack™는 컴퓨팅 ìžì›ì„ í¬í•¨í•˜ëŠ” 소프트웨어 플랫웹 ì–‘ì‹ì—서 공개, 사설, ë° í•˜ì´ë¸Œë¦¬ë“œì˜ Infrastructure as a Service (IaaS) í´ë¼ìš°ë“œë¥¼ 구축할 수 있습니다. CloudStack™를 사용하고, í´ë¼ìš°ë“œ ì¸í”„ë¼ìŠ¤íŠ¸ëŸ­ì³ë¥¼ 구성하는 네트워í¬, 스토리지 ë° ì»´í“¨íŒ… 노드를 관리하고 í´ë¼ìš°ë“œ 컴퓨팅 í™˜ê²½ì„ ì„¤ì •, 관리 ë° êµ¬ì„±í•©ë‹ˆë‹¤.

    CloudStackâ„¢ì€ í•˜ë“œì›¨ì–´ìƒì—서 ë™ìž‘하는 개별 ê°€ìƒ ë¨¸ì‹  ì´ë¯¸ì§€ë¥¼ 넘어 확장할 수 있기 ë•Œë¬¸ì— ê°„ë‹¨í•œ 설정으로 ë™ìž‘하는 í´ë¼ìš°ë“œ ì¸í”„ë¼ìŠ¤íŠ¸ëŸ­ì³ ì†Œí”„íŠ¸ì›¨ì–´ 스íƒì— ì˜í•´ ê°€ìƒ ë°ì´í„° 센터 즉 여러 층형 멀티 ì„¸ìž…ìž í´ë¼ìš°ë“œ 애플리케ì´ì…˜ì„ 서비스로서 구축하고 설정하고 관리하기 위해서 불가결한 í•­ëª©ì„ ëª¨ë‘ ì œê³µí•©ë‹ˆë‹¤. 오픈 소스 버전과 프리미엄 버전 양쪽 모ë‘ì— ì œê³µí•˜ë©° 오픈 소스 버전ì—ì„œë„ ëŒ€ë¶€ë¶„ ê¸°ëŠ¥ì„ ì‚¬ìš©í•  수 있습니다. -message.installWizard.tooltip.addSecondaryStorage.path=위ì—서 지정한 ì„œë²„ì— ì¡´ìž¬í•˜ëŠ” 내보내기 경로입니다. -message.installWizard.tooltip.addSecondaryStorage.nfsServer=2ì°¨ 스토리지를 호스트 하는 NFS 서버 IP 주소입니다. -message.installWizard.tooltip.addPrimaryStorage.path=(NFSì˜ ê²½ìš°) 서버ì—서 내보내기 경로입니다. (SharedMountPointì˜ ê²½ìš°) ì¼ë°˜ 경로입니다. KVMì—서는 기본 스토리지가 마운트ë˜ëŠ” ê° í˜¸ìŠ¤íŠ¸ìƒì˜ 경로입니다. 예를 들어, /mnt/primary 입니다. -message.installWizard.tooltip.addPrimaryStorage.server=(NFS, iSCSI ë˜ëŠ” PreSetupì˜ ê²½ìš°) 스토리지 ê¸°ê¸°ì˜ IP 주소 ë˜ëŠ” DNS 명입니다. -message.installWizard.tooltip.addPrimaryStorage.name=스토리지 ê¸°ê¸°ì˜ ì´ë¦„입니다. -message.installWizard.tooltip.addHost.password=XenServer 측ì—서 지정한 ìœ„ì˜ ì‚¬ìš©ìžëª…ì— ëŒ€í•œ 암호입니다. -message.installWizard.tooltip.addHost.username=ì›ëž˜ root 입니다. -message.installWizard.tooltip.addHost.hostname=호스트 DNS 명 ë˜ëŠ” IP 주소입니다. -message.installWizard.tooltip.addCluster.name=í´ëŸ¬ìŠ¤í„° ì´ë¦„입니다. CloudStackì—서 예약하지 ì•Šì€ ìž„ì˜ í…스트를 지정할 수 있습니다. -message.installWizard.tooltip.addPod.reservedSystemEndIp=ì´ê²ƒì€ 2ì°¨ 스토리지 VM ë° ì½˜ì†” 프ë¡ì‹œ VM를 관리하기 위해서 CloudStackì—서 사용하는 사설 네트워í¬ë‚´ IP 주소 범위입니다. ì´ëŸ¬í•œ IP 주소는 컴퓨팅 서버와 ê°™ì€ ì„œë¸Œë„¤íŠ¸ì›Œí¬ì—서 할당합니다. -message.installWizard.tooltip.addPod.reservedSystemStartIp=ì´ê²ƒì€ 2ì°¨ 스토리지 VM ë° ì½˜ì†” 프ë¡ì‹œ VM를 관리하기 위해서 CloudStackì—서 사용하는 사설 네트워í¬ë‚´ì˜ IP 주소 범위입니다. ì´ëŸ¬í•œ IP 주소는 컴퓨팅 서버와 ê°™ì€ ì„œë¸Œë„¤íŠ¸ì›Œí¬ì—서 할당합니다. -message.installWizard.tooltip.addPod.reservedSystemNetmask=게스트가 사용하는 서브네트워í¬ìƒì—서 지정한 ë„· 마스í¬ìž…니다. -message.installWizard.tooltip.addPod.reservedSystemGateway=현재 Podë‚´ 호스트 게ì´íŠ¸ì›¨ì´ìž…니다. -message.installWizard.tooltip.addPod.name=Pod ì´ë¦„입니다. -message.installWizard.tooltip.configureGuestTraffic.guestEndIp=현재 Zoneì˜ ê²ŒìŠ¤íŠ¸ì—게 할당할 수 있는 IP 주소 범위입니다. 사용하는 NICê°€ 한 ê°€ì§€ì¸ ê²½ìš°ëŠ” ì´ëŸ¬í•œ IP 주소는 Podì˜ CIDR와 ê°™ì€ CIDRì— í¬í•¨ë˜ì–´ 있어야 합니다. -message.installWizard.tooltip.configureGuestTraffic.guestStartIp=현재 Zoneì˜ ê²ŒìŠ¤íŠ¸ì—게 할당할 수 있는 IP 주소 범위입니다. 사용하는 NICê°€ 한 가지 경우는 ì´ëŸ¬í•œ IP 주소는 Podì˜ CIDR와 ê°™ì€ CIDRì— í¬í•¨ë˜ì–´ 있어야 합니다. -message.installWizard.tooltip.configureGuestTraffic.guestNetmask=게스트ì—서 사용하는 서브네트워í¬ìƒì—서 사용ë˜ëŠ” ë„· 마스í¬ìž…니다. -message.installWizard.tooltip.configureGuestTraffic.guestGateway=게스트ì—서 사용하는 게ì´íŠ¸ì›¨ì´ìž…니다. -message.installWizard.tooltip.configureGuestTraffic.description=ë„¤íŠ¸ì›Œí¬ ì„¤ëª…ìž…ë‹ˆë‹¤. -message.installWizard.tooltip.configureGuestTraffic.name=ë„¤íŠ¸ì›Œí¬ ì´ë¦„입니다. -message.installWizard.tooltip.addZone.internaldns2=Zoneë‚´ 시스템 VM으로 사용하는 DNS 서버입니다. 현재 DNS 서버는 시스템 VMì˜ ì‚¬ì„¤ ë„¤íŠ¸ì›Œí¬ ì¸í„°íŽ˜ì´ìŠ¤ë¥¼ 개입시켜 접근합니다. Podì˜ ì‚¬ì„¤ IP 주소ì—서 여기서 지정하는 DNS ì„œë²„ì— í†µì‹ í•  수 있어야 합니다. -message.installWizard.tooltip.addZone.internaldns1=Zoneë‚´ì˜ ì‹œìŠ¤í…œ VM 로 사용하는 DNS 서버입니다. 현재 DNS 서버는 시스템 VMì˜ ì‚¬ì„¤ ë„¤íŠ¸ì›Œí¬ ì¸í„°íŽ˜ì´ìŠ¤ë¥¼ 개입시켜 접근합니다. Podì˜ ì‚¬ì„¤ IP 주소ì—서 여기서 지정하는 DNS ì„œë²„ì— í†µì‹ í•  수 있어야 합니다. -message.installWizard.tooltip.addZone.dns2=Zoneë‚´ 게스트 VM 로 사용하는 DNS 서버입니다. 현재 DNS 서버ì—는 다ìŒì— 추가하는 공개 ë„¤íŠ¸ì›Œí¬ ê²½ìœ ë¡œ 접근합니다. Zoneì˜ ê³µê°œ IP 주소ì—서 여기서 지정하는 공개 DNS ì„œë²„ì— í†µì‹ í•  수 있어야 합니다. -message.installWizard.tooltip.addZone.name=Zoneì˜ ì´ë¦„입니다. -message.installWizard.tooltip.addZone.dns1=Zoneë‚´ì˜ ê²ŒìŠ¤íŠ¸ VM으로 사용하는 DNS 서버입니다. ì´ëŸ¬í•œ DNS 서버ì—는 다ìŒì— 추가하는 공개 ë„¤íŠ¸ì›Œí¬ ê²½ìœ ë¡œ ì ‘ê·¼ 합니다. Zoneì˜ ê³µê°œ IP 주소ì—서 여기서 지정하는 공개 DNS ì„œë²„ì— í†µì‹ í•  수 있어야 합니다. -message.setup.successful=í´ë¼ìš°ë“œê°€ 설정 ë˜ì—ˆìŠµë‹ˆë‹¤. -label.may.continue=실행 í•  수 ìžˆìŒ -error.installWizard.message=문제가 ë°œìƒí–ˆìŠµë‹ˆë‹¤. 다시 오류를 수정할 수 있습니다. -message.installWizard.now.building=í´ë¼ìš°ë“œë¥¼ 구축하고 있는 중... -message.installWizard.click.retry=ì‹œìž‘ì„ ìž¬ì‹œí–‰í•˜ë ¤ë©´ ë²„íŠ¼ì„ í´ë¦­í•´ 주십시오. -label.launch=시작 -label.installWizard.click.launch=[시작]ì„ í´ë¦­í•´ 주십시오. -label.congratulations=ì„¤ì •ì´ ê³§ 완료입니다. -label.installWizard.addSecondaryStorageIntro.subtitle=2ì°¨ ìŠ¤í† ë¦¬ì§€ì— ëŒ€í•´ -label.installWizard.addSecondaryStorageIntro.title=2ì°¨ 스토리지 추가 -label.installWizard.addPrimaryStorageIntro.subtitle=기본 ìŠ¤í† ë¦¬ì§€ì— ëŒ€í•´ -label.installWizard.addPrimaryStorageIntro.title=기본 스토리지 추가 -label.installWizard.addHostIntro.subtitle=í˜¸ìŠ¤íŠ¸ì— ëŒ€í•´ -label.installWizard.addHostIntro.title=호스트 추가 -label.installWizard.addClusterIntro.subtitle=í´ëŸ¬ìŠ¤í„° 대한 ì •ë³´ -label.installWizard.addClusterIntro.title=í´ëŸ¬ìŠ¤í„° 추가 -label.installWizard.addPodIntro.subtitle=Podì— ëŒ€í•œ ì •ë³´ -label.installWizard.addPodIntro.title=Pod 추가 -label.installWizard.addZone.title=Zone 추가 -label.installWizard.addZoneIntro.subtitle=Zoneì— ëŒ€í•œ ì •ë³´ -label.installWizard.addZoneIntro.title=Zone 추가 -error.password.not.match=암호가 ì¼ì¹˜í•˜ì§€ ì•ŠìŒ -label.confirm.password=암호 í™•ì¸ ìž…ë ¥ -message.change.password=암호를 변경해 주십시오. -label.save.and.continue=저장하기 -label.skip.guide=CloudStack 사용 ê°€ì´ë“œ 건너뛰기 -label.continue.basic.install=기본 설치 실행 -label.introduction.to.cloudstack=CloudStackâ„¢ 소개 -label.what.is.cloudstack=CloudStackâ„¢ ì •ë³´ -label.hints=ì •ë³´ -label.installWizard.subtitle=현재 ê°€ì´ë“œ 투어는 CloudStackâ„¢ 환경 ì„¤ì •ì— ë„ì›€ì´ ë©ë‹ˆë‹¤ -label.continue=실행 -label.installWizard.title=CloudStackâ„¢ 마법사 -label.agree=ë™ì˜ -label.manage.resources=ìžì› 관리 -label.port.forwarding.policies=í¬í†  전송 ì •ì±… -label.load.balancing.policies=ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 ì •ì±… -label.networking.and.security=네트워í¬ì™€ 보안 -label.bandwidth=ëŒ€ì—­í­ -label.virtual.machines=ê°€ìƒ ë¨¸ì‹  -label.compute.and.storage=컴퓨팅과 스토리지 -label.task.completed=작업 완료 -label.update.project.resources=프로ì íЏ ìžì› ì—…ë°ì´íЏ -label.remove.project.account=프로ì íЏ 계정 ì •ë³´ ì‚­ì œ -label.item.listing=항목 ëª©ë¡ -message.select.item=í•­ëª©ì„ ì„ íƒí•´ 주십시오. -label.removing=삭제하는 중 -label.invite=초대 -label.add.by=추가 단위 -label.max.vms=최대 ì‚¬ìš©ìž VM수 -label.max.public.ips=최대 공개 IP 주소수 -label.max.volumes=최대 볼륨수 -label.max.snapshots=최대 스냅샷수 -label.max.templates=최대 템플릿수 -label.project.dashboard=프로ì íЏ 대시 보드 -label.remind.later=알림 표시 -label.invited.accounts=초대가 ë난 계정 ì •ë³´ -label.invite.to=초대 프로ì íЏ: -label.add.accounts.to=계정 ì •ë³´ 추가: -label.add.accounts=계정 ì •ë³´ 추가 -label.project.name=프로ì íŠ¸ëª… -label.create.project=프로ì íЏ 만들기 -label.networks=ë„¤íŠ¸ì›Œí¬ -label.launch.vm=VM 시작 -label.new.vm=새 VM -label.previous=뒤로 -label.add.to.group=ê·¸ë£¹ì— ì¶”ê°€ -message.vm.review.launch=다ìŒì˜ 정보를 참조하고 ê°€ìƒ ì¸ìŠ¤í„´ìŠ¤ë¥¼ 올바르게 설정한 ê²ƒì„ í™•ì¸í•˜ê³  나서 시작해 주십시오. -message.select.security.groups=새로운 ê°€ìƒ ë¨¸ì‹  보안 ê·¸ë£¹ì„ ì„ íƒí•´ 주십시오. -label.new=ì‹ ê·œ -message.please.select.networks=ê°€ìƒ ë¨¸ì‹  네트워í¬ë¥¼ ì„ íƒí•´ 주십시오. -message.please.proceed=다ìŒì˜ ìˆœì„œì— ì§„í–‰í•´ 주십시오. -message.zone.no.network.selection=ì„ íƒí•œ Zoneì—서는 네트워í¬ë¥¼ ì„ íƒí•  수 없습니다. -label.no.thanks=설정 안함 -label.my.templates=ë‚˜ì˜ í…œí”Œë¦¿ -message.select.template=새로운 ê°€ìƒ ì¸ìŠ¤í„´ìŠ¤ í…œí”Œë¦¿ì„ ì„ íƒí•´ 주십시오. -message.select.iso=새로운 ê°€ìƒ ì¸ìŠ¤í„´ìŠ¤ ISO를 ì„ íƒí•´ 주십시오. -message.template.desc=VMì˜ ì‹œìž‘ì— ì‚¬ìš©í•  수 있는 OS ì´ë¯¸ì§€ -message.iso.desc=ë°ì´í„° ë˜ëŠ” OS 시작 가능 미디어를 í¬í•¨í•œ ë””ìŠ¤í¬ ì´ë¯¸ì§€ -label.select.iso.or.template=ISO ë˜ëŠ” 템플릿 ì„ íƒ -message.select.a.zone=Zoneì€ ì›ëž˜ ë‹¨ì¼ ë°ì´í„° ì„¼í„°ì— í•´ë‹¹í•©ë‹ˆë‹¤. 복수 Zoneì„ ì„¤ì •í•˜ê³  물리ì ìœ¼ë¡œ 분리하는 방법으로 í´ë¼ìš°ë“œì˜ ì‹ ë¢°ì„±ì„ ë†’ì¼ ìˆ˜ 있습니다. -label.select.a.zone=Zone ì„ íƒ -label.review=í™•ì¸ -label.select.a.template=템플릿 ì„ íƒ -label.setup=설정 -state.Allocated=할당 ë난 ìƒíƒœ -changed.item.properties=항목 ì†ì„± 변경 -label.apply=ì ìš© -label.default=기본 -label.viewing=표시 항목: -label.move.to.top=처ìŒìœ¼ë¡œ ì´ë™ -label.move.up.row=위로 ì´ë™ -label.move.down.row=아래로 ì´ë™ -label.move.to.bottom=마지막으로 ì´ë™ -label.drag.new.position=새로운 ìœ„ì¹˜ì— ëŒì–´ì˜¤ê¸° -label.order=순서 -label.no.data=표시할 ë°ì´í„°ê°€ ì—†ìŒ -label.change.value=ê°’ 변경 -label.clear.list=ëª©ë¡ ì‚­ì œ -label.full.path=ì „ì²´ 경로 -message.add.domain=현재 ë„ë©”ì¸ì— ë§Œë“¤ê³ ìž í•˜ëŠ” 서브 ë„ë©”ì¸ì„ 지정해 주십시오. -message.delete.user=현재 사용ìžë¥¼ 삭제하시겠습니까? -message.enable.user=현재 사용ìžë¥¼ 사용 하시겠습니까? -message.disable.user=현재 사용ìžë¥¼ 사용 안 함으로 하시겠습니까? -message.generate.keys=현재 사용ìžì—게 새로운 키를 ìƒì„±í•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.update.resource.count=현재 계정 ì •ë³´ ìžì›ìˆ˜ë¥¼ ì—…ë°ì´íŠ¸í•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.edit.account=편집 ("-1"는 ìžì› 만들기 숫ìžì— ì œí•œì´ ì—†ëŠ” 값입니다.) -label.total.of.vm=VM 합계 -label.total.of.ip=IP 주소 합계 -state.enabled=유효함 -message.action.download.iso=현재 ISO를 다운로드하시겠습니까? -message.action.download.template=현재 í…œí”Œë¦¿ì„ ë‹¤ìš´ë¡œë“œí•˜ì‹œê² ìŠµë‹ˆê¹Œ? -label.destination.zone=복사할 Zone -label.keyboard.type=키보드 종류 -label.nic.adapter.type=NIC 아답터 종류 -label.root.disk.controller=루트 ë””ìŠ¤í¬ ì½˜íŠ¸ë¡¤ëŸ¬ -label.community=커뮤니티 -label.remove.egress.rule=전송 규칙 ì‚­ì œ -label.add.egress.rule=전송 규칙 추가 -label.egress.rule=전송 규칙 -label.remove.ingress.rule=수신 규칙 ì‚­ì œ -label.delete.vpn.user=VPN ì‚¬ìš©ìž ì‚­ì œ -label.add.vpn.user=VPN ì‚¬ìš©ìž ì¶”ê°€ -label.remove.pf=í¬í†  전송 규칙 ì‚­ì œ -label.remove.vm.from.lb=ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 ê·œì¹™ì— VM ì‚­ì œ -label.add.vms.to.lb=ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 ê·œì¹™ì— VM 추가 -label.add.vm=VM 추가 -label.remove.static.nat.rule=ì •ì  NAT 규칙 ì‚­ì œ -label.remove.rule=규칙 ì‚­ì œ -label.add.static.nat.rule=ì •ì  NAT 규칙 추가 -label.add.rule=규칙 추가 -label.configuration=구성 -message.disable.vpn=VPN를 사용 안 함으로 하시겠습니까? -label.disable.vpn=VPN 사용 안 함 -message.enable.vpn=현재 IP ì£¼ì†Œì— ëŒ€í•œ VPN 접근를 사용 하시겠습니까? -label.enable.vpn=VPN 사용함 -message.acquire.new.ip=현재 네트워í¬ê°€ 새로운 IP 주소를 ì·¨ë“하시겠습니까? -label.elastic=오류 스틱 -label.my.network=ë‚´ ë„¤íŠ¸ì›Œí¬ -label.add.vms=VM 추가 -label.configure=구성 -label.stickiness=ì§€ì†ì„± -label.source=시작 위치 -label.least.connections=최소 ì ‘ì† -label.round.robin=ë¼ìš´ë“œ 로빈 -label.restart.required=재시작 í•„ìš” -label.clean.up=삭제하기 -label.restart.network=ë„¤íŠ¸ì›Œí¬ ìž¬ì‹œìž‘ -label.edit.network.details=ë„¤íŠ¸ì›Œí¬ ìƒì„¸í•œ 편집 -label.add.guest.network=ì†ë‹˜ ë„¤íŠ¸ì›Œí¬ ì¶”ê°€ -label.guest.networks=ì†ë‹˜ ë„¤íŠ¸ì›Œí¬ -message.ip.address.changed=사용 IP 주소가 ë³€ê²½ëœ ê°€ëŠ¥ì„±ì´ ìžˆìŠµë‹ˆë‹¤. 목ë¡ì„ ì—…ë°ì´íŠ¸í•©ë‹ˆê¹Œ? ê·¸ 경우는 ìƒì„¸ ì„¤ì •ì°½ì´ ë‹«ëŠ” ê²ƒì— ì£¼ì˜í•´ 주십시오. -state.BackingUp=백업 중 -state.BackedUp=백업 완료 -label.done=완료 -label.vm.name=VM 명 -message.migrate.volume=다른 기본 ìŠ¤í† ë¦¬ì§€ì— ë³¼ë¥¨ì„ ì´ì „하시겠습니까? -label.migrate.volume=다른 기본 ìŠ¤í† ë¦¬ì§€ì— ë³¼ë¥¨ ì´ì „ -message.create.template=í…œí”Œë¦¿ì„ ë§Œë“¤ê¸°í•˜ì‹œê² ìŠµë‹ˆê¹Œ? -label.create.template=템플릿 만들기 -message.download.volume.confirm=현재 ë³¼ë¥¨ì„ ë‹¤ìš´ë¡œë“œí•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.detach.disk=현재 디스í¬ë¥¼ 분리 하시겠습니까? -state.ready=준비 완료 -state.Ready=준비 완료 -label.vm.display.name=VM 표시명 -label.select-view=표시 방법 ì„ íƒ -label.local.storage=로컬 스토리지 -label.direct.ips=ì§ì ‘ IP 주소 -label.view.all=ëª¨ë‘ í‘œì‹œ -label.zone.details=Zone ìƒì„¸ -message.alert.state.detected=경계체제 ìƒíƒœê°€ ê°ì§€ë˜ì—ˆìŠµë‹ˆë‹¤ -state.Starting=시작 중 -state.Expunging=제거 중 -state.Creating=ìƒì„± 중 -message.decline.invitation=현재 프로ì íŠ¸ì— ì´ˆëŒ€ë¥¼ 거절하시겠습니까? -label.decline.invitation=초대 ê±°ì ˆ -message.confirm.join.project=현재 프로ì íŠ¸ì— ì°¸ì—¬í•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.join.project=ì´ê²ƒìœ¼ë¡œ, 프로ì íŠ¸ì— ì°¸ì—¬í–ˆìŠµë‹ˆë‹¤. 프로ì íŠ¸ë¥¼ 참조하려면 프로ì íЏ 보기로 전환해 주십시오. -label.accept.project.invitation=프로ì íЏ 초대 ìŠ¹ì¸ -label.token=í† í° -label.project.id=프로ì íЏ ID -message.enter.token=ì „ìž ë©”ì¼ ì´ˆëŒ€ìž¥ì— ì„¤ëª…ë˜ì–´ 있는 토í°ì„ 입력해 주십시오. -label.enter.token=í† í° ìž…ë ¥ -state.Accepted=ìŠ¹ì¸ ì™„ë£Œ -state.Pending=보류 -state.Completed=완료 -state.Declined=ê±°ì ˆ -label.project=프로ì íЏ -label.invitations=초대장 -label.delete.project=프로ì íЏ ì‚­ì œ -message.delete.project=현재 프로ì íŠ¸ë¥¼ 삭제하시겠습니까? -message.activate.project=현재 프로ì íŠ¸ë¥¼ 활성화 하시겠습니까? -label.activate.project=프로ì íЏ 활성화 -label.suspend.project=프로ì íЏ ì¼ì‹œì •ì§€ -message.suspend.project=현재 프로ì íŠ¸ë¥¼ ì¼ì‹œì •지하시겠습니까? -state.Suspended=ì¼ì‹œì •ì§€ -label.edit.project.details=프로ì íЏ ìƒì„¸ 편집 -label.new.project=새 프로ì íЏ -state.Active=활성 -state.Disabled=유효하지 ì•Šì€ -label.projects=프로ì íЏ -label.make.project.owner=계정 ì •ë³´ 프로ì íЏ ì†Œìœ ìž -label.remove.project.account=계정 ì •ë³´ 프로ì íЏì—서 ì‚­ì œ -message.project.invite.sent=사용ìžì—게 ì´ˆëŒ€ìž¥ì´ ì „ì†¡ë˜ì—ˆìŠµë‹ˆë‹¤. 사용ìžê°€ 초대를 승ì¸í•˜ë©´, 프로ì íŠ¸ì— ì¶”ê°€ë©ë‹ˆë‹¤. -label.add.account.to.project=계정 ì •ë³´ 프로ì íŠ¸ì— ì¶”ê°€ -label.revoke.project.invite=초대 취소 -label.project.invite=프로ì íŠ¸ì— ì´ˆëŒ€ -label.select.project=프로ì íЏ ì„ íƒ -message.no.projects=프로ì íŠ¸ê°€ 없습니다.
    프로ì íЏ 섹션ì—서 새로운 프로ì íŠ¸ë¥¼ 만들어 주십시오. -message.no.projects.adminOnly=프로ì íŠ¸ê°€ 없습니다.
    관리ìžì—게 새로운 프로ì íЏ ìƒì„±ì„ ì˜ë¢°í•˜ì‹­ì‹œì˜¤. -message.pending.projects.1=ë³´ë¥˜ì¤‘ì¸ í”„ë¡œì íЏ ì´ˆëŒ€ìž¥ì´ ìžˆìŠµë‹ˆë‹¤. -message.pending.projects.2=표시하려면 프로ì íЏ 섹션으로 ì´ë™í•˜ê³  목ë¡ì—서 ì´ˆëŒ€ìž¥ì„ ì„ íƒí•©ë‹ˆë‹¤. -message.instanceWizard.noTemplates=사용 가능한 í…œí”Œë¦¿ì´ ì—†ìŠµë‹ˆë‹¤. í˜¸í™˜ì„±ì´ ìžˆëŠ” í…œí”Œë¦¿ì„ ì¶”ê°€í•˜ê³ , ì¸ìŠ¤í„´ìŠ¤ 위저드를 재시작해 주십시오. -label.view=표시 - -instances.actions.reboot.label=ì¸ìŠ¤í„´ìŠ¤ 재시작 -label.filterBy=í•„í„° -label.ok=í™•ì¸ -notification.reboot.instance=ì¸ìŠ¤í„´ìŠ¤ 재시작 -notification.start.instance=ì¸ìŠ¤í„´ìŠ¤ 시작 -notification.stop.instance=ì¸ìŠ¤í„´ìŠ¤ ì •ì§€ -label.display.name=표시명 -label.zone.name=Zone ì´ë¦„ -ui.listView.filters.all=ëª¨ë‘ -ui.listView.filters.mine=ë‚´ ì •ë³´ë§Œ -state.Running=실행 중 -state.Stopped=ì •ì§€ëœ ìƒíƒœ -state.Destroyed=íŒŒê¸°ëœ ìƒíƒœ -state.Error=오류 -message.reset.password.warning.notPasswordEnabled=현재 ì¸ìŠ¤í„´ìŠ¤ í…œí”Œë¦¿ì€ ì•”í˜¸ 관리를 사용 하지 않고 ìƒì„±ë˜ì—ˆìŠµë‹ˆë‹¤. -message.reset.password.warning.notStopped=현재 암호를 변경하기 ì „ì— ì¸ìŠ¤í„´ìŠ¤ë¥¼ 정지해야 합니다. -label.notifications=알림 -label.default.view=기본 보기 -label.project.view=프로ì íЏ 보기 - -message.add.system.service.offering=새로운 시스템 서비스 ì œê³µì„ ì¶”ê°€í•˜ê¸° 위해 ë‹¤ìŒ ë°ì´í„°ë¥¼ 입력해 주십시오. -message.action.delete.system.service.offering=현재 시스템 서비스 ì œê³µì„ ì‚­ì œí•˜ì‹œê² ìŠµë‹ˆê¹Œ? -label.action.delete.system.service.offering=시스템 서비스 제공 ì‚­ì œ -label.hypervisor.capabilities=하ì´í¼ ë°”ì´ì € 기능 -label.hypervisor.version=하ì´í¼ ë°”ì´ì € 버전 -label.max.guest.limit=최대 게스트 제한 -label.add.network.offering=ë„¤íŠ¸ì›Œí¬ ì œê³µ 추가 -label.supported.services=기술 ì§€ì›ë˜ëŠ” 서비스 -label.service.capabilities=서비스 기능 -label.guest.type=게스트 종류 -label.specify.IP.ranges=IP 주소 범위 지정 -label.conserve.mode=절약 모드 -label.created.by.system=시스템 만들기 -label.menu.system.service.offerings=시스템 제공 -label.add.system.service.offering=시스템 서비스 제공 추가 -label.redundant.router.capability=중복 ë¼ìš°í„° 기능 -label.supported.source.NAT.type=기술 ì§€ì›ë˜ëŠ” 전송 NAT 종류 -label.elastic.LB=íƒ„ë ¥ì  ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 -label.LB.isolation=ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 분리 -label.elastic.IP=íƒ„ë ¥ì  IP 주소 -label.network.label.display.for.blank.value=기본 게ì´íŠ¸ì›¨ì´ë¥¼ 사용 -label.xen.traffic.label=XenServer 트래픽 ë¼ë²¨ -label.kvm.traffic.label=KVM 트래픽 ë¼ë²¨ -label.vmware.traffic.label=VMware 트래픽 ë¼ë²¨ -label.start.IP=시작 IP 주소 -label.end.IP=종료 IP 주소 -label.remove.ip.range=IP 주소 범위 ì‚­ì œ -label.ip.ranges=IP 주소 범위 -label.start.vlan=시작 VLAN -label.end.vlan=종료 VLAN -label.broadcast.domain.range=브로드ìºìŠ¤íŠ¸ ë„ë©”ì¸ ë²”ìœ„ -label.compute=컴퓨팅 -message.add.guest.network=ì†ë‹˜ 네트워í¬ë¥¼ 추가하시겠습니까? -label.subdomain.access=서브 ë„ë©”ì¸ ì ‘ê·¼ -label.guest.start.ip=게스트 시작 IP 주소 -label.guest.end.ip=게스트 종료 IP 주소 -label.virtual.router=ê°€ìƒ ë¼ìš°í„° -label.physical.network.ID=물리 ë„¤íŠ¸ì›Œí¬ ID -label.destination.physical.network.id=ëª©ì  ë¬¼ë¦¬ ë„¤íŠ¸ì›Œí¬ ID -label.dhcp=DHCP -label.destroy.router=ë¼ìš°í„° 파기 -message.confirm.destroy.router=현재 ë¼ìš°í„°ë¥¼ 파기하시겠습니까? -label.change.service.offering=서비스 제공 변경 -label.view.console=콘솔 표시 -label.redundant.state=중복 ìƒíƒœ -label.enable.provider=ì œê³µìž ì‚¬ìš©í•¨ -message.confirm.enable.provider=현재 제공ìžë¥¼ 사용하시겠습니까? -label.disable.provider=ì œê³µìž ì‚¬ìš© 안 함 -message.confirm.disable.provider=현재 제공ìžë¥¼ 사용 안 함으로 하시겠습니까? -label.shutdown.provider=ì œê³µìž ì¢…ë£Œ -message.confirm.shutdown.provider=현재 제공ìžë¥¼ 종료하시겠습니까? -label.netScaler=NetScaler -label.add.new.NetScaler=새로운 NetScaler 추가 -label.capacity=처리 능력 -label.dedicated=ì „ìš© -label.f5=F5 -label.add.new.F5=새로운 F5 추가 -label.srx=SRX -label.providers=ì œê³µìž -label.add.new.SRX=새로운 SRX 추가 -label.timeout=시간 초과 -label.public.network=공개 ë„¤íŠ¸ì›Œí¬ -label.private.network=사설 ë„¤íŠ¸ì›Œí¬ -label.enable.swift=Swift 사용함 -confirm.enable.swift=Swift 기술 ì§€ì›ë¥¼ 사용 하려면 ë‹¤ìŒ ì •ë³´ë¥¼ 입력해 주십시오. -message.after.enable.swift=Swiftê°€ 구성ë˜ì—ˆìŠµë‹ˆë‹¤. 주ì˜:ì´ íŽ˜ì´ì§€ë¥¼ 닫으면 Swift를 재구성할 수 없습니다. -label.key=키 -label.delete.NetScaler=NetScaler ì‚­ì œ -message.confirm.delete.NetScaler=NetScaler를 삭제하시겠습니까? -label.delete.F5=F5 ì‚­ì œ -message.confirm.delete.F5=F5를 삭제하시겠습니까? -label.delete.SRX=SRX ì‚­ì œ -message.confirm.delete.SRX=SRX를 삭제하시겠습니까? -label.pods=Pod -label.pod.name=Pod명 -label.reserved.system.gateway=ì˜ˆì•½ëœ ì‹œìŠ¤í…œ 게ì´íŠ¸ì›¨ì´ -label.reserved.system.netmask=ì˜ˆì•½ëœ ì‹œìŠ¤í…œ ë„· ë§ˆìŠ¤í¬ -label.start.reserved.system.IP=ì˜ˆì•½ëœ ì‹œìž‘ 시스템 IP 주소 -label.end.reserved.system.IP=ì˜ˆì•½ëœ ì¢…ë£Œ 시스템 IP 주소 -label.clusters=í´ëŸ¬ìŠ¤í„° -label.cluster.name=í´ëŸ¬ìŠ¤í„°ëª… -label.host.MAC=호스트 MAC -label.agent.username=ì—ì´ì „트 사용ìžëª… -label.agent.password=ì—ì´ì „트 암호 -message.confirm.action.force.reconnect=현재 호스트를 ê°•ì œ 재접ì†í•˜ì‹œê² ìŠµë‹ˆê¹Œ? -label.resource.state=ìžì› ìƒíƒœ -label.LUN.number=LUN 번호 -message.confirm.remove.IP.range=현재 IP 주소 범위를 삭제하시겠습니까? -message.tooltip.zone.name=Zone ì´ë¦„입니다. -message.tooltip.dns.1=Zoneë‚´ VM 로 사용하는 DNS 서버 ì´ë¦„입니다. Zone 공개 IP 주소ì—서 ì´ ì„œë²„ì— í†µì‹ í•  수 있어야 합니다. -message.tooltip.dns.2=Zoneë‚´ VM 로 사용하는 ë‘번째 DNS 서버 ì´ë¦„입니다. Zone 공개 IP 주소ì—서 ì´ ì„œë²„ì— í†µì‹ í•  수 있어야 합니다. -message.tooltip.internal.dns.1=Zoneë‚´ CloudStack ë‚´ë¶€ 시스템 VM 로 사용하는 DNS 서버 ì´ë¦„입니다. Pod 사설 IP 주소ì—서 ì´ ì„œë²„ì— í†µì‹ í•  수 있어야 합니다. -message.tooltip.internal.dns.2=Zoneë‚´ CloudStack ë‚´ë¶€ 시스템 VM 로 사용하는 DNS 서버 ì´ë¦„입니다. Pod 사설 IP 주소ì—서 ì´ ì„œë²„ì— í†µì‹ í•  수 있어야 합니다. -message.tooltip.network.domain=DNS 서픽스입니다. ì´ ì„œí”½ìŠ¤ì—서 게스트 VM 로 ì ‘ê·¼ 하는 ë„¤íŠ¸ì›Œí¬ ë§žì¶¤í˜• ë„ë©”ì¸ëª…ì„ ë§Œë“­ë‹ˆë‹¤. -message.tooltip.pod.name=현재 Pod ì´ë¦„입니다. -message.tooltip.reserved.system.gateway=Podë‚´ 호스트 게ì´íŠ¸ì›¨ì´ìž…니다. -message.tooltip.reserved.system.netmask=Pod 서브네트워í¬ë¥¼ 정하는 ë„¤íŠ¸ì›Œí¬ í”„ë ˆí”½ìŠ¤ìž…ë‹ˆë‹¤. CIDR 표기를 사용합니다. -message.creating.zone=Zoneì„ ë§Œë“¤ì—ˆìŠµë‹ˆë‹¤. -message.creating.physical.networks=물리 네트워í¬ë¥¼ 만들었습니다. -message.configuring.physical.networks=물리 네트워í¬ë¥¼ 구성해 있습니다 -message.adding.Netscaler.device=Netscaler 기기를 추가하고 있습니다 -message.creating.pod=Pod를 만들었습니다. -message.configuring.public.traffic=공개 íŠ¸ëž˜í”½ì„ êµ¬ì„±í•´ 있습니다 -message.configuring.storage.traffic=스토리지 íŠ¸ëž˜í”½ì„ êµ¬ì„±í•´ 있습니다 -message.configuring.guest.traffic=게스트 íŠ¸ëž˜í”½ì„ êµ¬ì„±í•´ 있습니다 -message.creating.cluster=í´ëŸ¬ìŠ¤í„°ë¥¼ 만들었습니다. -message.adding.host=호스트를 추가하고 있습니다 -message.creating.primary.storage=기본 스토리지를 만들었습니다. -message.creating.secondary.storage=2ì°¨ 스토리지를 만들었습니다. -message.Zone.creation.complete=Zoneì„ ë§Œë“¤ì—ˆìŠµë‹ˆë‹¤. -message.enabling.zone=Zoneì„ ì‚¬ìš©í•˜ê³  있습니다 -error.something.went.wrong.please.correct.the.following=문제가 ë°œìƒí–ˆìŠµë‹ˆë‹¤. ë‹¤ìŒ ë‚´ìš©ì„ ìˆ˜ì •í•´ 주십시오 -error.could.not.enable.zone=Zoneì„ ì‚¬ìš© í•  수 없습니다. -message.zone.creation.complete.would.you.like.to.enable.this.zone=Zoneì„ ë§Œë“¤ì—ˆìŠµë‹ˆë‹¤. ì´ Zoneì„ ì‚¬ìš© 하시겠습니까? -message.please.add.at.lease.one.traffic.range=ì ì–´ë„ 한 ê°œ ì´ìƒ 트래픽 범위를 추가해 주십시오. -message.you.must.have.at.least.one.physical.network=ì ì–´ë„ 한 ê°œ ì´ìƒ 물리 네트워í¬ê°€ 필요합니다 -message.please.select.a.different.public.and.management.network.before.removing=ì‚­ì œ ì „ì— ë‹¤ë¥¸ 공개 ë° ê´€ë¦¬ 네트워í¬ë¥¼ ì„ íƒí•´ 주십시오. - -label.zone.type=Zone 종류 -label.setup.zone=Zone 설정 -label.setup.network=ë„¤íŠ¸ì›Œí¬ ì„¤ì • -label.add.resources=ìžì› 추가 -label.launch=시작 -label.set.up.zone.type=Zone 종류 설정 -message.please.select.a.configuration.for.your.zone=Zone êµ¬ì„±ì„ ì„ íƒí•´ 주십시오. -message.desc.basic.zone= ê° VM ì¸ìŠ¤í„´ìŠ¤ì— IP 주소가 네트워í¬ì—서 ì§ì ‘ 할당할 수 있는 ë‹¨ì¼ ë„¤íŠ¸ì›Œí¬ë¥¼ 제공합니다. 보안 그룹 (ì „ì†¡ì› IP 주소 í•„í„°)ê³¼ ê°™ì€ ì¸µ 세 가지 레벨 방법으로 게스트를 분리할 수 있습니다. -label.basic=기본 -message.desc.advanced.zone=보다 ì„¸ë ¨ëœ ë„¤íŠ¸ì›Œí¬ ê¸°ìˆ ì„ ì§€ì›í•©ë‹ˆë‹¤. ì´ ë„¤íŠ¸ì›Œí¬ ëª¨ë¸ì„ ì„ íƒí•˜ë©´, 보다 유연하게 게스트 네트워í¬ë¥¼ 정하고 방화벽(fire wall), VPN, ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 장치 기술 ì§€ì›ì™€ ê°™ì€ ì‚¬ìš©ìž ì§€ì • 한 ë„¤íŠ¸ì›Œí¬ ì œê³µì„ ì œê³µí•  수 있습니다. -label.advanced=확장 -message.desc.zone=Zoneì€ CloudStack 환경내 최대 ì¡°ì§ ë‹¨ìœ„ë¡œ ì›ëž˜ ë‹¨ì¼ ë°ì´í„° ì„¼í„°ì— í•´ë‹¹í•©ë‹ˆë‹¤. Zoneì— í•´ì„œ 물리ì ì¸ 분리와 ì¤‘ë³µì„±ì´ ì œê³µë©ë‹ˆë‹¤. Zoneì€ í•œ ê°œ ì´ìƒ Pod( ê° Pod는 호스트와 기본 스토리지 서버ì—서 구성)와 Zoneë‚´ 모든 Pod로 공유ë˜ëŠ” 2ì°¨ 스토리지 서버로 구성ë©ë‹ˆë‹¤. -label.physical.network=물리 ë„¤íŠ¸ì›Œí¬ -label.public.traffic=공개 트래픽 -label.guest.traffic=게스트 트래픽 -label.storage.traffic=스토리지 트래픽 -message.setup.physical.network.during.zone.creation=확장 Zoneì„ ì¶”ê°€í•  때는 한 ê°œ ì´ìƒ 물리 네트워í¬ë¥¼ 설정해야 합니다. ê° ë„¤íŠ¸ì›Œí¬ëŠ” 하ì´í¼ ë°”ì´ì €ìƒ 한 가지 ë„¤íŠ¸ì›Œí¬ ì¹´ë“œ(NIC)ì— ëŒ€ì‘합니다. ê° ë¬¼ë¦¬ 네트워í¬ì—서는 êµ¬ì„±ì— ì œí•œì´ ìžˆìœ¼ë‚˜, 한 가지 종류 ì´ìƒ íŠ¸ëž˜í”½ì„ í†µì‹ í•  수 있습니다.

    ê° ë¬¼ë¦¬ 네트워í¬ì— 대해서트래픽 종류를 드래그 앤 드롭해 주십시오. -label.add.physical.network=물리 ë„¤íŠ¸ì›Œí¬ ì¶”ê°€ -label.traffic.types=트래픽 종류 -label.management=관리 -label.guest=게스트 -label.please.specify.netscaler.info=Netscaler 정보를 지정해 주십시오 -message.public.traffic.in.advanced.zone=í´ë¼ìš°ë“œ ë‚´ë¶€ VMì´ ì¸í„°ë„·ì— ì ‘ê·¼ 하면, 공개 íŠ¸ëž˜í”½ì´ ìƒì„±ë©ë‹ˆë‹¤. ì´ ë•Œë¬¸ì— ì¼ë°˜ì ìœ¼ë¡œ ì ‘ê·¼ 가능한 IP 주소를 할당할 필요가 있습니다. 최종 사용ìžëŠ” CloudStack ì‚¬ìš©ìž ì¸í„°íŽ˜ì´ìŠ¤ë¥¼ 사용해 ì´ëŸ¬í•œ IP 주소를 ì·¨ë“하고 ì†ë‹˜ 네트워í¬ì™€ 공개 ë„¤íŠ¸ì›Œí¬ ì‚¬ì´ì— NAT를 구현할 수 있습니다.

    ì¸í„°ë„· íŠ¸ëž˜í”½ì„ ìœ„í•´ ì ì–´ë„ 한 ê°œ ì´ìƒ IP 주소 범위를 입력해 주십시오. -message.public.traffic.in.basic.zone=í´ë¼ìš°ë“œ ë‚´ë¶€ VMì´ ì¸í„°ë„·ì— ì ‘ê·¼ í•  때 ì¸í„°ë„· 경유로 í´ë¼ì´ì–¸íŠ¸ì— ì„œë¹„ìŠ¤ë¥¼ 제공하면, 공개 íŠ¸ëž˜í”½ì´ ìƒì„±ë©ë‹ˆë‹¤. ì´ ë•Œë¬¸ì— ì¼ë°˜ì ìœ¼ë¡œ ì ‘ê·¼ 가능한 IP 주소를 할당할 필요가 있습니다. ì¸ìŠ¤í„´ìŠ¤ë¥¼ 만들기하면, 게스트 IP 주소 외ì—ì´ ê³µê°œ IP 주소 범위ì—서 주소가 í•˜ë‚˜ì˜ ì¸ìŠ¤í„´ìŠ¤ì— í• ë‹¹í•  수 있습니다. 공개 IP 주소와 게스트 IP 주소 사ì´ì— ì •ì ì¸ 1대 1 NATê°€ ìžë™ìœ¼ë¡œ 설정 ë©ë‹ˆë‹¤. 최종 사용ìžëŠ” CloudStack ì‚¬ìš©ìž ì¸í„°íŽ˜ì´ìŠ¤ë¥¼ 사용해 추가 IP 주소를 ì·¨ë“하고 ì¸ìŠ¤í„´ìŠ¤ì™€ 공개 IP 주소 사ì´ì— ì •ì  NAT를 구현할 ìˆ˜ë„ ìžˆìŠµë‹ˆë‹¤. -message.add.pod.during.zone.creation= ê° Zoneì—는 한 ê°œ ì´ìƒ Podê°€ 필요합니다. 지금 여기서 첫번째 Pod를 추가합니다. Pod는 호스트와 기본 스토리지 서버ì—서 구성합니다만 ì´ëŠ” ë‹¤ìŒ ìˆœì„œë¡œ 추가합니다. 맨 ì²˜ìŒ CloudStack ë‚´ë¶€ 관리 íŠ¸ëž˜í”½ì„ ìœ„í•´ì„œ IP 주소 범위를 예약합니다. IP 주소 범위는 í´ë¼ìš°ë“œ ë‚´ë¶€ ê° Zoneì—서 중복 하지 않게 예약할 필요가 있습니다. -message.guest.traffic.in.advanced.zone=ì†ë‹˜ ë„¤íŠ¸ì›Œí¬ íŠ¸ëž˜í”½ì€ ìµœì¢… ì‚¬ìš©ìž ê°€ìƒ ë¨¸ì‹ ê°„ 통신입니다. ê° ë¬¼ë¦¬ ë„¤íŠ¸ì›Œí¬ ê²ŒìŠ¤íŠ¸ íŠ¸ëž˜í”½ì„ í†µì‹ í•˜ê¸° 위한 VLAN ID 범위를 지정해 주십시오. -message.guest.traffic.in.basic.zone=ì†ë‹˜ ë„¤íŠ¸ì›Œí¬ íŠ¸ëž˜í”½ì€ ìµœì¢… 사용ìžì˜ ê°€ìƒ ë¨¸ì‹ ê°„ 통신입니다. CloudStackì— ê²ŒìŠ¤íŠ¸ VMì— í• ë‹¹í•  수 있는 IP 주소 범위를 지정해 주십시오.ì´ ë²”ìœ„ê°€ 예약 ë난 시스템 IP 주소 범위와 중복 하지 않게 주ì˜í•´ 주십시오. -message.storage.traffic=호스트나 CloudStack 시스템 VM 등 관리 서버와 통신하는 CloudStack ë‚´ë¶€ ìžì›ê°„ 트래픽입니다. 여기서 스토리지 íŠ¸ëž˜í”½ì„ êµ¬ì„±í•´ 주십시오. -message.desc.cluster= ê° Podì—는 한 ê°œ ì´ìƒ í´ëŸ¬ìŠ¤í„°ê°€ 필요합니다. 지금 여기서 최초 í´ëŸ¬ìŠ¤í„°ë¥¼ 추가합니다. í´ëŸ¬ìŠ¤í„°ëŠ” 호스트를 그룹화 하는 방법입니다. 한 í´ëŸ¬ìŠ¤í„° ë‚´ë¶€ 호스트는 ëª¨ë‘ ë™ì¼í•œ 하드웨어ì—서 구성ë˜ì–´ ê°™ì€ í•˜ì´í¼ ë°”ì´ì €ë¥¼ 실행하고 ê°™ì€ ì„œë¸Œ 네트워í¬ìƒì— 있어 ê°™ì€ ê³µìœ  ìŠ¤í† ë¦¬ì§€ì— ì ‘ê·¼ 합니다. ê° í´ëŸ¬ìŠ¤í„°ëŠ” 한 ê°œ ì´ìƒ 호스트와 한 ê°œ ì´ìƒ 기본 스토리지 서버ì—서 구성ë©ë‹ˆë‹¤. -message.desc.host= ê° í´ëŸ¬ìŠ¤í„°ì—는 ì ì–´ë„ 한 ê°œ ì´ìƒ 게스트 VM를 실행하기 위한 호스트 (컴퓨터)ê°€ 필요합니다. 지금 여기서 첫번째 호스트를 추가합니다. CloudStack으로 호스트를 ë™ìž‘하려면 호스트ì—게 하ì´í¼ ë°”ì´ì €ë¥¼ 설치하고 IP 주소를 할당해 호스트가 CloudStack 관리 ì„œë²„ì— ì ‘ì†í•˜ë„ë¡ í•©ë‹ˆë‹¤.

    호스트 DNS 명 ë˜ëŠ” IP 주소, 사용ìžëª…(ì›ëž˜ root)ê³¼ 암호 ë° í˜¸ìŠ¤íŠ¸ ë¶„ë¥˜ì— ì‚¬ìš©í•˜ëŠ” ë¼ë²¨ì„ 입력해 주십시오. -message.desc.primary.storage= ê° í´ëŸ¬ìŠ¤í„°ì—는 ì ì–´ë„ 한 ê°œ ì´ìƒì˜ 기본 스토리지 서버가 필요합니다. 지금 여기서 첫번째 서버를 추가합니다. 기본 스토리지는 í´ëŸ¬ìŠ¤í„° ë‚´ ë¶€ 호스트ìƒì—서 ë™ìž‘하는 모든 VM ë””ìŠ¤í¬ ë³¼ë¥¨ì„ í¬í•¨í•©ë‹ˆë‹¤. 기본ì ìœ¼ë¡œ 하ì´í¼ ë°”ì´ì €ì—서 기술 ì§€ì›ë˜ëŠ” í‘œì¤€ì— ì¤€ê±°í•œ í”„ë¡œí† ì½œì„ ì‚¬ìš©í•´ 주십시오. -message.desc.secondary.storage= ê° Zoneì—는 ì ì–´ë„ 한 ê°œ ì´ìƒì˜ NFS 즉 2ì°¨ 스토리지 서버가 필요합니다. 지금 여기서 첫번째 서버를 추가합니다. 2ì°¨ 스토리지는 VM 템플릿, ISO ì´ë¯¸ì§€ ë° VM ë””ìŠ¤í¬ ë³¼ë¥¨ ìŠ¤ëƒ…ìƒ·ì„ í¬í•¨í•©ë‹ˆë‹¤. ì´ ì„œë²„ëŠ” Zoneë‚´ 모든 호스트ì—서 사용할 수 있어야 합니다.

    IP 주소와 내보내낼 경로를 입력해 주십시오. -label.launch.zone=Zone 시작 -message.please.wait.while.zone.is.being.created=Zoneì´ ë§Œë“¤ê¸°ë  ë•Œê¹Œì§€ ìž ê¹ ê¸°ë‹¤ë ¤ 주십시오... - -label.load.balancing=ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 -label.static.nat.enabled=ì •ì  NAT 유효 -label.zones=Zone -label.view.more=ìƒì„¸ 표시 -label.number.of.zones=Zone수 -label.number.of.pods=Pod수 -label.number.of.clusters=í´ëŸ¬ìŠ¤í„°ìˆ˜ -label.number.of.hosts=호스트수 -label.total.hosts=호스트 합계 -label.total.CPU=CPU 합계 -label.total.memory=메모리 합계 -label.total.storage=스토리지 합계 -label.purpose=ëª©ì  - -label.action.migrate.router=ë¼ìš°í„° ì´ì „ -label.action.migrate.router.processing=ë¼ìš°í„°ë¥¼ ì´ì „하는 중... -message.migrate.router.confirm=ë¼ìš°í„° ì´ì „ 위치로 호스트를 ì„ íƒì‹­ì‹œì˜¤. -label.migrate.router.to=ë¼ìš°í„° ì´ì „ 위치: - -label.action.migrate.systemvm=시스템 VM ì´ì „ -label.action.migrate.systemvm.processing=시스템 VM를 ì´ì „하는 중 -message.migrate.systemvm.confirm=시스템 VM ì´ì „ ì´ì „ 위치로 호스트를 ì„ íƒì‹­ì‹œì˜¤. -label.migrate.systemvm.to=시스템 VM ì´ì „ 위치: - -mode=모드 -side.by.side=병렬 -inline=ì§ë ¬ - -extractable=추출 가능 - -label.ocfs2=OCFS2 - -label.action.edit.host=호스트 편집 - -network.rate=ë„¤íŠ¸ì›Œí¬ ì†ë„ - -ICMP.type=ICMP 종류 -ICMP.code=ICMP 코드 - -image.directory=ì´ë¯¸ì§€ 디렉토리 - -label.action.create.template.from.vm=VMì—서 템플릿 만들기 -label.action.create.template.from.volume=볼륨ì—서 템플릿 만들기 - -message.vm.create.template.confirm=템플릿 만들기하면 VMì´ ìžë™ìœ¼ë¡œ 재시작ë©ë‹ˆë‹¤. - -label.action.manage.cluster=í´ëŸ¬ìŠ¤í„° 관리 ë™ìž‘ -message.action.manage.cluster=í´ëŸ¬ìŠ¤í„°ë¥¼ 관리 대ìƒìœ¼ë¡œ 하시겠습니까? -label.action.manage.cluster.processing=í´ëŸ¬ìŠ¤í„°ë¥¼ 관리 대ìƒìœ¼ë¡œ 하는 중... - -label.action.unmanage.cluster=í´ëŸ¬ìŠ¤í„° 비관리 ë™ìž‘ -message.action.unmanage.cluster=í´ëŸ¬ìŠ¤í„°ë¥¼ 비관리 대ìƒìœ¼ë¡œ 하시겠습니까? -label.action.unmanage.cluster.processing=í´ëŸ¬ìŠ¤í„°ë¥¼ 비관리 대ìƒìœ¼ë¡œ 하는 중... - -label.allocation.state=할당 ìƒíƒœ -managed.state=관리 ëŒ€ìƒ ìƒíƒœ - -label.default.use=기본 사용 -label.host.tags=호스트 태그 - -label.cidr=CIDR -label.cidr.list=ì „ì†¡ì› CIDR - -label.storage.tags=스토리지 태그 - -label.redundant.router=중복 ë¼ìš°í„° -label.is.redundant.router=중복 - -force.delete=ê°•ì œ ì‚­ì œ -force.delete.domain.warning=경고:ì´ ì˜µì…˜ì„ ì„ íƒí•˜ë©´, 모든 ë‚´ë¶€ ë„ë©”ì¸ ë° ê´€ë ¨í•˜ëŠ” 모든 계정 정보와 ê·¸ ìžì›ì´ ì‚­ì œë©ë‹ˆë‹¤. - -force.remove=ê°•ì œ í•´ì œ -force.remove.host.warning=경고:ì´ ì˜µì…˜ì„ ì„ íƒí•˜ë©´, 실행중 모든 ê°€ìƒ ë¨¸ì‹ ì´ ê°•ì œì ìœ¼ë¡œ ì •ì§€ë˜ì–´ í´ëŸ¬ìŠ¤í„°ì—서 호스트가 ê°•ì œì ìœ¼ë¡œ í•´ì œë©ë‹ˆë‹¤. - -force.stop=ê°•ì œ ì •ì§€ -force.stop.instance.warning=경고: ì¸ìŠ¤í„´ìŠ¤ ê°•ì œ 정지는 최종 수단으로 í•´ 주십시오. ë°ì´í„°ê°€ ì†ì‹¤ë  ë¿ë§Œ ì•„ë‹ˆë¼ ê°€ìƒ ë¨¸ì‹  ë™ìž‘ì´ ì¼ê´€í•˜ì§€ 않게 ë  ê°€ëŠ¥ì„±ì´ ìžˆìŠµë‹ˆë‹¤. - -label.PreSetup=PreSetup -label.SR.name = SR 명 ë¼ë²¨ -label.SharedMountPoint=SharedMountPoint -label.clvm=CLVM -label.volgroup=볼륨 그룹 -label.VMFS.datastore=VMFS ë°ì´í„° 스토어 - -label.network.device=ë„¤íŠ¸ì›Œí¬ ê¸°ê¸° -label.add.network.device=ë„¤íŠ¸ì›Œí¬ ê¸°ê¸° 추가 -label.network.device.type=ë„¤íŠ¸ì›Œí¬ ê¸°ê¸° 종류 -label.DHCP.server.type=DHCP 서버 종류 -label.Pxe.server.type=PXE 서버 종류 -label.PING.storage.IP=PING ëŒ€ìƒ ìŠ¤í† ë¦¬ì§€ IP 주소 -label.PING.dir=PING 디렉토리 -label.TFTP.dir=TFTP 디렉토리 -label.PING.CIFS.username=PING CIFS 사용ìžëª… -label.PING.CIFS.password=PING CIFS 암호 -label.CPU.cap=CPU 제한 - - -label.action.enable.zone=Zone 사용함 -label.action.enable.zone.processing=Zoneì„ ì‚¬ìš© 설정 중... -message.action.enable.zone=현재 Zoneì„ ì‚¬ìš© 하시겠습니까? -label.action.disable.zone=Zone 사용 안 함 -label.action.disable.zone.processing=Zoneì„ ì‚¬ìš© 안 함으로 설정 중... -message.action.disable.zone=현재 Zoneì„ ì‚¬ìš© 안 함으로 하시겠습니까? - -label.action.enable.pod=Pod 사용함 -label.action.enable.pod.processing=Pod를 사용 설정 중... -message.action.enable.pod=현재 Pod를 사용 하시겠습니까? -label.action.disable.pod=Pod 사용 안 함 -label.action.disable.pod.processing=Pod를 사용 안 함으로 설정 중... -message.action.disable.pod=현재 Pod를 사용 안 함으로 하시겠습니까? - -label.action.enable.cluster=í´ëŸ¬ìŠ¤í„° 사용함 -label.action.enable.cluster.processing=í´ëŸ¬ìŠ¤í„°ë¥¼ 사용 설정 중... -message.action.enable.cluster=현재 í´ëŸ¬ìŠ¤í„°ë¥¼ 사용 하시겠습니까? -label.action.disable.cluster=í´ëŸ¬ìŠ¤í„° 사용 안 함 -label.action.disable.cluster.processing=í´ëŸ¬ìŠ¤í„°ë¥¼ 사용 안 함으로 설정 중... -message.action.disable.cluster=현재 í´ëŸ¬ìŠ¤í„°ë¥¼ 사용 안 함으로 하시겠습니까? - -label.account.id=계정 ì •ë³´ ID -label.account.name=계정 정보명 -label.account.specific=계정 ì •ë³´ 고유 -label.account=계정 ì •ë³´ -label.accounts=계정 ì •ë³´ -label.acquire.new.ip=새로운 IP 주소 ì·¨ë“ -label.show.ingress.rule=수신 규칙 표시 -label.hide.ingress.rule=수신 ê·œì¹™ì„ ìˆ¨ê¸°ê¸° -label.action.attach.disk.processing=디스í¬ë¥¼ 연결하는 중... -label.action.attach.disk=ë””ìŠ¤í¬ ì—°ê²° -label.action.attach.iso.processing=ISO를 연결하는 중... -label.action.attach.iso=ISO ì—°ê²° -label.action.cancel.maintenance.mode.processing=유지 보수 모드를 취소하는 중... -label.action.cancel.maintenance.mode=유지 보수 모드 취소 -label.action.change.password=암호 변경 -label.action.change.service.processing=서비스를 변경하는 중... -label.action.change.service=서비스 변경 -label.action.copy.ISO.processing=ISO를 복사하는 중... -label.action.copy.ISO=ISO 복사 -label.action.copy.template.processing=í…œí”Œë¦¿ì„ ë³µì‚¬í•˜ëŠ” 중... -label.action.copy.template=템플릿 복사 -label.action.create.template.processing=í…œí”Œë¦¿ì„ ë§Œë“œëŠ” 중... -label.action.create.template=템플릿 만들기 -label.action.create.vm.processing=VM를 만드는 중... -label.action.create.vm=VM 만들기 -label.action.create.volume.processing=ë³¼ë¥¨ì„ ë§Œë“œëŠ” 중... -label.action.create.volume=볼륨 만들기 -label.action.delete.IP.range.processing=IP 주소 범위를 삭제하는 중... -label.action.delete.IP.range=IP 주소 범위 ì‚­ì œ -label.action.delete.ISO.processing=ISO를 삭제하는 중... -label.action.delete.ISO=ISO ì‚­ì œ -label.action.delete.account.processing=계정 정보를 삭제하는 중... -label.action.delete.account=계정 ì •ë³´ ì‚­ì œ -label.action.delete.cluster.processing=í´ëŸ¬ìŠ¤í„°ë¥¼ 삭제하는 중... -label.action.delete.cluster=í´ëŸ¬ìŠ¤í„° ì‚­ì œ -label.action.delete.disk.offering.processing=ë””ìŠ¤í¬ ì œê³µì„ ì‚­ì œí•˜ëŠ” 중... -label.action.delete.disk.offering=ë””ìŠ¤í¬ ì œê³µ ì‚­ì œ - -label.action.update.resource.count=ìžì› 수 ì—…ë°ì´íЏ -label.action.update.resource.count.processing=ìžì› 수를 ì—…ë°ì´íŠ¸í•˜ëŠ” 중... - -label.action.delete.domain=ë„ë©”ì¸ ì‚­ì œ -label.action.delete.domain.processing=ë„ë©”ì¸ì„ 삭제하는 중... - -label.action.delete.firewall.processing=방화벽(fire wall)를 삭제하는 중... -label.action.delete.firewall=방화벽(fire wall) 규칙 ì‚­ì œ -label.action.delete.ingress.rule.processing=수신 ê·œì¹™ì„ ì‚­ì œí•˜ëŠ” 중... -label.action.delete.ingress.rule=수신 규칙 ì‚­ì œ -label.action.delete.load.balancer.processing=ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 장치를 삭제하는 중... -label.action.delete.load.balancer=ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 규칙 ì‚­ì œ -label.action.edit.network.processing=네트워í¬ë¥¼ 편집하는 중... -label.action.edit.network=ë„¤íŠ¸ì›Œí¬ íŽ¸ì§‘ -label.action.delete.network.processing=네트워í¬ë¥¼ 삭제하는 중... -label.action.delete.network=ë„¤íŠ¸ì›Œí¬ ì‚­ì œ -label.action.delete.pod.processing=Pod를 삭제하는 중... -label.action.delete.pod=Pod ì‚­ì œ -label.action.delete.primary.storage.processing=기본 스토리지를 삭제하는 중... -label.action.delete.primary.storage=기본 스토리지 ì‚­ì œ -label.action.delete.secondary.storage.processing=2ì°¨ 스토리지를 삭제하는 중... -label.action.delete.secondary.storage=2ì°¨ 스토리지 ì‚­ì œ -label.action.delete.security.group.processing=보안 ê·¸ë£¹ì„ ì‚­ì œí•˜ëŠ” 중... -label.action.delete.security.group=보안 그룹 ì‚­ì œ -label.action.delete.service.offering.processing=ì„œë¹„ìŠ¤ì œê³µì„ ì‚­ì œí•˜ëŠ” 중... -label.action.delete.service.offering=서비스제공 ì‚­ì œ -label.action.delete.snapshot.processing=ìŠ¤ëƒ…ìƒ·ì„ ì‚­ì œí•˜ëŠ” 중... -label.action.delete.snapshot=스냅샷 ì‚­ì œ -label.action.delete.template.processing=í…œí”Œë¦¿ì„ ì‚­ì œí•˜ëŠ” 중... -label.action.delete.template=템플릿 ì‚­ì œ -label.action.delete.user.processing=사용ìžë¥¼ 삭제하는 중... -label.action.delete.user=ì‚¬ìš©ìž ì‚­ì œ -label.action.delete.volume.processing=ë³¼ë¥¨ì„ ì‚­ì œí•˜ëŠ” 중... -label.action.delete.volume=볼륨 ì‚­ì œ -label.action.delete.zone.processing=Zoneì„ ì‚­ì œí•˜ëŠ” 중... -label.action.delete.zone=Zone ì‚­ì œ -label.action.destroy.instance.processing=ì¸ìŠ¤í„´ìŠ¤ë¥¼ 파기하는 중... -label.action.destroy.instance=ì¸ìŠ¤í„´ìŠ¤ 파기 -label.action.destroy.systemvm.processing=시스템 VM를 파기하는 중... -label.action.destroy.systemvm=시스템 VM 파기 -label.action.detach.disk.processing=디스í¬ë¥¼ 분리 하는 중... -label.action.detach.disk=ë””ìŠ¤í¬ ë¶„ë¦¬ -label.action.detach.iso.processing=ISO를 분리 하는 중... -label.action.detach.iso=ISO 분리 -label.action.disable.account.processing=계정 정보를 중지하는 중... -label.action.disable.account=계정 ì •ë³´ 중지 -label.action.disable.static.NAT.processing=ì •ì  NAT를 중지하는 중... -label.action.disable.static.NAT=ì •ì  NAT 사용 안 함 -label.action.disable.user.processing=사용ìžë¥¼ 중지하는 중... -label.action.disable.user=ì‚¬ìš©ìž ì¤‘ì§€ -label.action.download.ISO=ISO 다운로드 -label.action.download.template=템플릿 다운로드 -label.action.download.volume.processing=ë³¼ë¥¨ì„ ë‹¤ìš´ë¡œë“œí•˜ëŠ” 중... -label.action.download.volume=볼륨 다운로드 -label.action.edit.ISO=ISO 편집 -label.action.edit.account=계정 ì •ë³´ 편집 -label.action.edit.disk.offering=ë””ìŠ¤í¬ ì œê³µ 편집 -label.action.edit.domain=ë„ë©”ì¸ íŽ¸ì§‘ -label.action.edit.global.setting=글로벌 설정 편집 -label.action.edit.instance=ì¸ìŠ¤í„´ìŠ¤ 편집 -label.action.edit.network.offering=ë„¤íŠ¸ì›Œí¬ ì œê³µ 편집 -label.action.edit.pod=Pod 편집 -label.action.edit.primary.storage=기본 스토리지 편집 -label.action.edit.resource.limits=ìžì› 제한 편집 -label.action.edit.service.offering=서비스 제공 편집 -label.action.edit.template=템플릿 편집 -label.action.edit.user=ì‚¬ìš©ìž íŽ¸ì§‘ -label.action.edit.zone=Zone 편집 -label.action.enable.account.processing=계정 정보를 사용 설정 중... -label.action.enable.account=계정 ì •ë³´ 사용함 -label.action.enable.maintenance.mode.processing=유지 보수 모드를 사용 설정 중... -label.action.enable.maintenance.mode=유지 보수 모드 사용함 -label.action.enable.static.NAT.processing=ì •ì  NAT를 사용 설정 중... -label.action.enable.static.NAT=ì •ì  NAT 사용함 -label.action.enable.user.processing=사용ìžë¥¼ 사용 설정 중... -label.action.enable.user=ì‚¬ìš©ìž ì‚¬ìš©í•¨ -label.action.force.reconnect.processing=재접ì†í•˜ëŠ” 중... -label.action.force.reconnect=ê°•ì œìž¬ì ‘ì† -label.action.generate.keys.processing=키를 ìƒì„±í•˜ëŠ” 중... -label.action.generate.keys=키 ìƒì„± -label.action.lock.account.processing=계정 정보를 잠그는 중... -label.action.lock.account=계정 ì •ë³´ 잠금 -label.action.migrate.instance=ì¸ìŠ¤í„´ìŠ¤ ì´ì „ -label.action.migrate.instance.processing=ì¸ìŠ¤í„´ìŠ¤ë¥¼ ì´ì „하는 중... -label.action.reboot.instance.processing=ì¸ìŠ¤í„´ìŠ¤ë¥¼ 재시작하는 중... -label.action.reboot.instance=ì¸ìŠ¤í„´ìŠ¤ 재시작 -label.action.reboot.router.processing=ë¼ìš°í„°ë¥¼ 재시작하는 중... -label.action.reboot.router=ë¼ìš°í„° 재시작 -label.action.reboot.systemvm.processing=시스템 VM를 재시작하는 중... -label.action.reboot.systemvm=시스템 VM 재시작 -label.action.recurring.snapshot=정기 스냅샷 -label.action.release.ip.processing=IP 주소를 해제하는 중... -label.action.release.ip=IP 주소 í•´ì œ -label.action.remove.host.processing=호스트를 삭제하는 중... -label.action.remove.host=호스트 ì‚­ì œ -label.action.reset.password.processing=암호를 재설정 하는 중... -label.action.reset.password=암호 재설정 -label.action.resource.limits=ìžì› 제한 -label.action.restore.instance.processing=ì¸ìŠ¤í„´ìŠ¤ë¥¼ ë³µì›í•˜ëŠ” 중... -label.action.restore.instance=ì¸ìŠ¤í„´ìŠ¤ ë³µì› -label.action.start.instance.processing=ì¸ìŠ¤í„´ìŠ¤ë¥¼ 시작하는 중... -label.action.start.instance=ì¸ìŠ¤í„´ìŠ¤ 시작 -label.action.start.router.processing=ë¼ìš°í„°ë¥¼ 시작하는 중... -label.action.start.router=ë¼ìš°í„° 시작 -label.action.start.systemvm.processing=시스템 VM를 시작하는 중... -label.action.start.systemvm=시스템 VM 시작 -label.action.stop.instance.processing=ì¸ìŠ¤í„´ìŠ¤ë¥¼ 정지하는 중... -label.action.stop.instance=ì¸ìŠ¤í„´ìŠ¤ ì •ì§€ -label.action.stop.router.processing=ë¼ìš°í„°ë¥¼ 정지하는 중... -label.action.stop.router=ë¼ìš°í„° ì •ì§€ -label.action.stop.systemvm.processing=시스템 VM를 정지하는 중... -label.action.stop.systemvm=시스템 VM ì •ì§€ -label.action.take.snapshot.processing=ìŠ¤ëƒ…ìƒ·ì„ ë§Œë“œëŠ” 중.... -label.action.take.snapshot=스냅샷 만들기 -label.action.update.OS.preference.processing=OS 기본 ì„¤ì •ì„ ì—…ë°ì´íŠ¸í•˜ëŠ” 중... -label.action.update.OS.preference=OS 기본 설정 ì—…ë°ì´íЏ -label.actions=작업 -label.active.sessions=활성 세션 -label.add.account=계정 ì •ë³´ 추가 -label.add.by.cidr=CIDR 로 추가 -label.add.by.group=그룹ì—서 추가 -label.add.cluster=í´ëŸ¬ìŠ¤í„° 추가 -label.add.direct.iprange=ì§ì ‘ IP 주소 범위 추가 -label.add.disk.offering=ë””ìŠ¤í¬ ì œê³µ 추가 -label.add.domain=ë„ë©”ì¸ ì¶”ê°€ -label.add.firewall=방화벽(fire wall) 규칙 추가 -label.add.host=호스트 추가 -label.add.ingress.rule=수신 규칙 추가 -label.add.ip.range=IP 주소 범위 추가 -label.add.load.balancer=ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 장치 추가 -label.add.more=다른 항목 추가 -label.add.network=ë„¤íŠ¸ì›Œí¬ ì¶”ê°€ -label.add.pod=Pod 추가 -label.add.primary.storage=기본 스토리지 추가 -label.add.secondary.storage=2ì°¨ 스토리지 추가 -label.add.security.group=보안 그룹 추가 -label.add.service.offering=서비스제공 추가 -label.add.template=템플릿 추가 -label.add.user=ì‚¬ìš©ìž ì¶”ê°€ -label.add.vlan=VLAN 추가 -label.add.volume=볼륨 추가 -label.add.zone=Zone 추가 -label.add=추가 -label.adding.cluster=í´ëŸ¬ìŠ¤í„°ë¥¼ 추가중... -label.adding.failed=추가할 수 ì—†ìŒ -label.adding.pod=Pod를 추가 가능 -label.adding.processing=추가하는 중... -label.adding.succeeded=추가 완료 -label.adding.user=ì‚¬ìš©ìž ì¶”ê°€ -label.adding.zone=Zone 추가 -label.adding=ì •ë³´ 추가 -label.additional.networks=추가 ë„¤íŠ¸ì›Œí¬ -label.admin.accounts=ê´€ë¦¬ìž ê³„ì • ì •ë³´ -label.admin=ê´€ë¦¬ìž -label.advanced.mode=확장 모드 -label.advanced.search=ê³ ë„ ê²€ìƒ‰ -label.advanced=확장 -label.alert=알림 ì²´ì œ -label.algorithm=알고리즘 -label.allocated=할당 완료 ìƒíƒœ -label.api.key=API 키 -label.assign.to.load.balancer=ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 ìž¥ì¹˜ì— ì¸ìŠ¤í„´ìŠ¤ë¥¼ 할당 -label.assign=할당 -label.associated.network.id=관련 ë„¤íŠ¸ì›Œí¬ ID -label.attached.iso=ì—°ê²° ISO -label.availability.zone=ì´ìš© 가능 Zone -label.availability=가용성 -label.available.public.ips=사용 가능 공개 IP 주소 -label.available=사용 가능 -label.back=뒤로 -label.basic.mode=기본 모드 -label.bootable=부팅 가능 -label.broadcast.domain.type=브로드ìºìŠ¤íŠ¸ ë„ë©”ì¸ ì¢…ë¥˜ -label.by.account=계정 ì •ë³´ -label.by.availability=가용성 -label.by.domain=ë„ë©”ì¸ -label.by.end.date=ì¢…ë£Œì¼ -label.by.level=레벨 +changed.item.properties=\ud56d\ubaa9 \uc18d\uc131 \ubcc0\uacbd +confirm.enable.swift=Swift \uae30\uc220 \uc9c0\uc6d0\ub97c \uc0ac\uc6a9 \ud558\ub824\uba74 \ub2e4\uc74c \uc815\ubcf4\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. +error.could.not.enable.zone=Zone\uc744 \uc0ac\uc6a9 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +error.installWizard.message=\ubb38\uc81c\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4. \ub2e4\uc2dc \uc624\ub958\ub97c \uc218\uc815\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. +error.invalid.username.password=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc0ac\uc6a9\uc790\uba85 \ub610\ub294 \uc554\ud638 +error.login=\uc0ac\uc6a9\uc790\uba85/\uc554\ud638\uac00 \uae30\ub85d\uacfc \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. +error.menu.select=\ud56d\ubaa9\uc774 \uc120\ud0dd\ub418\uc5b4 \uc788\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc791\uc5c5\uc744 \uc2e4\ud589\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +error.mgmt.server.inaccessible=\uad00\ub9ac \uc11c\ubc84\uc5d0 \uc811\uadfc \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. \ub2e4\uc74c\uc5d0 \uc7ac\uc2e4\ud589\ud574 \uc8fc\uc2ed\uc2dc\uc624. +error.password.not.match=\uc554\ud638\uac00 \uc77c\uce58\ud558\uc9c0 \uc54a\uc74c +error.please.specify.physical.network.tags=\ud604\uc7ac \ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c \ud0dc\uadf8\ub97c \uc9c0\uc815\ud558\uc9c0 \uc54a\uc73c\uba74, \ub124\ud2b8\uc6cc\ud06c \uc81c\uacf5\uc740 \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +error.session.expired=\uc138\uc158 \uc720\ud6a8\uae30\uac04\uc774 \ub04a\uc5b4\uc84c\uc2b5\ub2c8\ub2e4. +error.something.went.wrong.please.correct.the.following=\ubb38\uc81c\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4. \ub2e4\uc74c \ub0b4\uc6a9\uc744 \uc218\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624 +error.unable.to.reach.management.server=\uad00\ub9ac \uc11c\ubc84\uc640 \ud1b5\uc2e0\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +extractable=\ucd94\ucd9c \uac00\ub2a5 +force.delete.domain.warning=\uacbd\uace0\:\uc774 \uc635\uc158\uc744 \uc120\ud0dd\ud558\uba74, \ubaa8\ub4e0 \ub0b4\ubd80 \ub3c4\uba54\uc778 \ubc0f \uad00\ub828\ud558\ub294 \ubaa8\ub4e0 \uacc4\uc815 \uc815\ubcf4\uc640 \uadf8 \uc790\uc6d0\uc774 \uc0ad\uc81c\ub429\ub2c8\ub2e4. +force.delete=\uac15\uc81c \uc0ad\uc81c +force.remove.host.warning=\uacbd\uace0\:\uc774 \uc635\uc158\uc744 \uc120\ud0dd\ud558\uba74, \uc2e4\ud589\uc911 \ubaa8\ub4e0 \uac00\uc0c1 \uba38\uc2e0\uc774 \uac15\uc81c\uc801\uc73c\ub85c \uc815\uc9c0\ub418\uc5b4 \ud074\ub7ec\uc2a4\ud130\uc5d0\uc11c \ud638\uc2a4\ud2b8\uac00 \uac15\uc81c\uc801\uc73c\ub85c \ud574\uc81c\ub429\ub2c8\ub2e4. +force.remove=\uac15\uc81c \ud574\uc81c +force.stop.instance.warning=\uacbd\uace0\: \uc778\uc2a4\ud134\uc2a4 \uac15\uc81c \uc815\uc9c0\ub294 \ucd5c\uc885 \uc218\ub2e8\uc73c\ub85c \ud574 \uc8fc\uc2ed\uc2dc\uc624. \ub370\uc774\ud130\uac00 \uc190\uc2e4\ub420 \ubfd0\ub9cc \uc544\ub2c8\ub77c \uac00\uc0c1 \uba38\uc2e0 \ub3d9\uc791\uc774 \uc77c\uad00\ud558\uc9c0 \uc54a\uac8c \ub420 \uac00\ub2a5\uc131\uc774 \uc788\uc2b5\ub2c8\ub2e4. +force.stop=\uac15\uc81c \uc815\uc9c0 +ICMP.code=ICMP \ucf54\ub4dc +ICMP.type=ICMP \uc885\ub958 +image.directory=\uc774\ubbf8\uc9c0 \ub514\ub809\ud1a0\ub9ac +inline=\uc9c1\ub82c +instances.actions.reboot.label=\uc778\uc2a4\ud134\uc2a4 \uc7ac\uc2dc\uc791 +label.accept.project.invitation=\ud504\ub85c\uc81d\ud2b8 \ucd08\ub300 \uc2b9\uc778 +label.account.and.security.group=\uacc4\uc815 \uc815\ubcf4, \ubcf4\uc548 \uadf8\ub8f9 +label.account.id=\uacc4\uc815 \uc815\ubcf4 ID +label.account.name=\uacc4\uc815 \uc815\ubcf4\uba85 +label.account.specific=\uacc4\uc815 \uc815\ubcf4 \uace0\uc720 +label.accounts=\uacc4\uc815 \uc815\ubcf4 +label.account=\uacc4\uc815 \uc815\ubcf4 +label.acquire.new.ip=\uc0c8\ub85c\uc6b4 IP \uc8fc\uc18c \ucde8\ub4dd +label.action.attach.disk.processing=\ub514\uc2a4\ud06c\ub97c \uc5f0\uacb0\ud558\ub294 \uc911... +label.action.attach.disk=\ub514\uc2a4\ud06c \uc5f0\uacb0 +label.action.attach.iso=ISO \uc5f0\uacb0 +label.action.attach.iso.processing=ISO\ub97c \uc5f0\uacb0\ud558\ub294 \uc911... +label.action.cancel.maintenance.mode.processing=\uc720\uc9c0 \ubcf4\uc218 \ubaa8\ub4dc\ub97c \ucde8\uc18c\ud558\ub294 \uc911... +label.action.cancel.maintenance.mode=\uc720\uc9c0 \ubcf4\uc218 \ubaa8\ub4dc \ucde8\uc18c +label.action.change.password=\uc554\ud638 \ubcc0\uacbd +label.action.change.service.processing=\uc11c\ube44\uc2a4\ub97c \ubcc0\uacbd\ud558\ub294 \uc911... +label.action.change.service=\uc11c\ube44\uc2a4 \ubcc0\uacbd +label.action.copy.ISO=ISO \ubcf5\uc0ac +label.action.copy.ISO.processing=ISO\ub97c \ubcf5\uc0ac\ud558\ub294 \uc911... +label.action.copy.template.processing=\ud15c\ud50c\ub9bf\uc744 \ubcf5\uc0ac\ud558\ub294 \uc911... +label.action.copy.template=\ud15c\ud50c\ub9bf \ubcf5\uc0ac +label.action.create.template.from.vm=VM\uc5d0\uc11c \ud15c\ud50c\ub9bf \ub9cc\ub4e4\uae30 +label.action.create.template.from.volume=\ubcfc\ub968\uc5d0\uc11c \ud15c\ud50c\ub9bf \ub9cc\ub4e4\uae30 +label.action.create.template.processing=\ud15c\ud50c\ub9bf\uc744 \ub9cc\ub4dc\ub294 \uc911... +label.action.create.template=\ud15c\ud50c\ub9bf \ub9cc\ub4e4\uae30 +label.action.create.vm.processing=VM\ub97c \ub9cc\ub4dc\ub294 \uc911... +label.action.create.vm=VM \ub9cc\ub4e4\uae30 +label.action.create.volume.processing=\ubcfc\ub968\uc744 \ub9cc\ub4dc\ub294 \uc911... +label.action.create.volume=\ubcfc\ub968 \ub9cc\ub4e4\uae30 +label.action.delete.account.processing=\uacc4\uc815 \uc815\ubcf4\ub97c \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.account=\uacc4\uc815 \uc815\ubcf4 \uc0ad\uc81c +label.action.delete.cluster.processing=\ud074\ub7ec\uc2a4\ud130\ub97c \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.cluster=\ud074\ub7ec\uc2a4\ud130 \uc0ad\uc81c +label.action.delete.disk.offering.processing=\ub514\uc2a4\ud06c \uc81c\uacf5\uc744 \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.disk.offering=\ub514\uc2a4\ud06c \uc81c\uacf5 \uc0ad\uc81c +label.action.delete.domain.processing=\ub3c4\uba54\uc778\uc744 \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.domain=\ub3c4\uba54\uc778 \uc0ad\uc81c +label.action.delete.firewall.processing=\ubc29\ud654\ubcbd(fire wall)\ub97c \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.firewall=\ubc29\ud654\ubcbd(fire wall) \uaddc\uce59 \uc0ad\uc81c +label.action.delete.ingress.rule.processing=\uc218\uc2e0 \uaddc\uce59\uc744 \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.ingress.rule=\uc218\uc2e0 \uaddc\uce59 \uc0ad\uc81c +label.action.delete.IP.range=IP \uc8fc\uc18c \ubc94\uc704 \uc0ad\uc81c +label.action.delete.IP.range.processing=IP \uc8fc\uc18c \ubc94\uc704\ub97c \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.ISO=ISO \uc0ad\uc81c +label.action.delete.ISO.processing=ISO\ub97c \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.load.balancer.processing=\ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uc7a5\uce58\ub97c \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.load.balancer=\ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uaddc\uce59 \uc0ad\uc81c +label.action.delete.network.processing=\ub124\ud2b8\uc6cc\ud06c\ub97c \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.network=\ub124\ud2b8\uc6cc\ud06c \uc0ad\uc81c +label.action.delete.nexusVswitch=Nexus 1000V \uc0ad\uc81c +label.action.delete.physical.network=\ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c \uc0ad\uc81c +label.action.delete.pod=Pod \uc0ad\uc81c +label.action.delete.pod.processing=Pod\ub97c \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.primary.storage.processing=\uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.primary.storage=\uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \uc0ad\uc81c +label.action.delete.secondary.storage=2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0 \uc0ad\uc81c +label.action.delete.secondary.storage.processing=2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.security.group.processing=\ubcf4\uc548 \uadf8\ub8f9\uc744 \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.security.group=\ubcf4\uc548 \uadf8\ub8f9 \uc0ad\uc81c +label.action.delete.service.offering.processing=\uc11c\ube44\uc2a4\uc81c\uacf5\uc744 \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.service.offering=\uc11c\ube44\uc2a4\uc81c\uacf5 \uc0ad\uc81c +label.action.delete.snapshot.processing=\uc2a4\ub0c5\uc0f7\uc744 \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.snapshot=\uc2a4\ub0c5\uc0f7 \uc0ad\uc81c +label.action.delete.system.service.offering=\uc2dc\uc2a4\ud15c \uc11c\ube44\uc2a4 \uc81c\uacf5 \uc0ad\uc81c +label.action.delete.template.processing=\ud15c\ud50c\ub9bf\uc744 \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.template=\ud15c\ud50c\ub9bf \uc0ad\uc81c +label.action.delete.user.processing=\uc0ac\uc6a9\uc790\ub97c \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.user=\uc0ac\uc6a9\uc790 \uc0ad\uc81c +label.action.delete.volume.processing=\ubcfc\ub968\uc744 \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.volume=\ubcfc\ub968 \uc0ad\uc81c +label.action.delete.zone.processing=Zone\uc744 \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.delete.zone=Zone \uc0ad\uc81c +label.action.destroy.instance.processing=\uc778\uc2a4\ud134\uc2a4\ub97c \ud30c\uae30\ud558\ub294 \uc911... +label.action.destroy.instance=\uc778\uc2a4\ud134\uc2a4 \ud30c\uae30 +label.action.destroy.systemvm.processing=\uc2dc\uc2a4\ud15c VM\ub97c \ud30c\uae30\ud558\ub294 \uc911... +label.action.destroy.systemvm=\uc2dc\uc2a4\ud15c VM \ud30c\uae30 +label.action.detach.disk.processing=\ub514\uc2a4\ud06c\ub97c \ubd84\ub9ac \ud558\ub294 \uc911... +label.action.detach.disk=\ub514\uc2a4\ud06c \ubd84\ub9ac +label.action.detach.iso=ISO \ubd84\ub9ac +label.action.detach.iso.processing=ISO\ub97c \ubd84\ub9ac \ud558\ub294 \uc911... +label.action.disable.account.processing=\uacc4\uc815 \uc815\ubcf4\ub97c \uc911\uc9c0\ud558\ub294 \uc911... +label.action.disable.account=\uacc4\uc815 \uc815\ubcf4 \uc911\uc9c0 +label.action.disable.cluster.processing=\ud074\ub7ec\uc2a4\ud130\ub97c \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \uc124\uc815 \uc911... +label.action.disable.cluster=\ud074\ub7ec\uc2a4\ud130 \uc0ac\uc6a9 \uc548 \ud568 +label.action.disable.nexusVswitch=Nexus 1000V \uc0ac\uc6a9 \uc548 \ud568 +label.action.disable.physical.network=\ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c \uc0ac\uc6a9 \uc548 \ud568 +label.action.disable.pod=Pod \uc0ac\uc6a9 \uc548 \ud568 +label.action.disable.pod.processing=Pod\ub97c \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \uc124\uc815 \uc911... +label.action.disable.static.NAT.processing=\uc815\uc801 NAT\ub97c \uc911\uc9c0\ud558\ub294 \uc911... +label.action.disable.static.NAT=\uc815\uc801 NAT \uc0ac\uc6a9 \uc548 \ud568 +label.action.disable.user.processing=\uc0ac\uc6a9\uc790\ub97c \uc911\uc9c0\ud558\ub294 \uc911... +label.action.disable.user=\uc0ac\uc6a9\uc790 \uc911\uc9c0 +label.action.disable.zone.processing=Zone\uc744 \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \uc124\uc815 \uc911... +label.action.disable.zone=Zone \uc0ac\uc6a9 \uc548 \ud568 +label.action.download.ISO=ISO \ub2e4\uc6b4\ub85c\ub4dc +label.action.download.template=\ud15c\ud50c\ub9bf \ub2e4\uc6b4\ub85c\ub4dc +label.action.download.volume.processing=\ubcfc\ub968\uc744 \ub2e4\uc6b4\ub85c\ub4dc\ud558\ub294 \uc911... +label.action.download.volume=\ubcfc\ub968 \ub2e4\uc6b4\ub85c\ub4dc +label.action.edit.account=\uacc4\uc815 \uc815\ubcf4 \ud3b8\uc9d1 +label.action.edit.disk.offering=\ub514\uc2a4\ud06c \uc81c\uacf5 \ud3b8\uc9d1 +label.action.edit.domain=\ub3c4\uba54\uc778 \ud3b8\uc9d1 +label.action.edit.global.setting=\uae00\ub85c\ubc8c \uc124\uc815 \ud3b8\uc9d1 +label.action.edit.host=\ud638\uc2a4\ud2b8 \ud3b8\uc9d1 +label.action.edit.instance=\uc778\uc2a4\ud134\uc2a4 \ud3b8\uc9d1 +label.action.edit.ISO=ISO \ud3b8\uc9d1 +label.action.edit.network.offering=\ub124\ud2b8\uc6cc\ud06c \uc81c\uacf5 \ud3b8\uc9d1 +label.action.edit.network.processing=\ub124\ud2b8\uc6cc\ud06c\ub97c \ud3b8\uc9d1\ud558\ub294 \uc911... +label.action.edit.network=\ub124\ud2b8\uc6cc\ud06c \ud3b8\uc9d1 +label.action.edit.pod=Pod \ud3b8\uc9d1 +label.action.edit.primary.storage=\uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \ud3b8\uc9d1 +label.action.edit.resource.limits=\uc790\uc6d0 \uc81c\ud55c \ud3b8\uc9d1 +label.action.edit.service.offering=\uc11c\ube44\uc2a4 \uc81c\uacf5 \ud3b8\uc9d1 +label.action.edit.template=\ud15c\ud50c\ub9bf \ud3b8\uc9d1 +label.action.edit.user=\uc0ac\uc6a9\uc790 \ud3b8\uc9d1 +label.action.edit.zone=Zone \ud3b8\uc9d1 +label.action.enable.account.processing=\uacc4\uc815 \uc815\ubcf4\ub97c \uc0ac\uc6a9 \uc124\uc815 \uc911... +label.action.enable.account=\uacc4\uc815 \uc815\ubcf4 \uc0ac\uc6a9\ud568 +label.action.enable.cluster.processing=\ud074\ub7ec\uc2a4\ud130\ub97c \uc0ac\uc6a9 \uc124\uc815 \uc911... +label.action.enable.cluster=\ud074\ub7ec\uc2a4\ud130 \uc0ac\uc6a9\ud568 +label.action.enable.maintenance.mode.processing=\uc720\uc9c0 \ubcf4\uc218 \ubaa8\ub4dc\ub97c \uc0ac\uc6a9 \uc124\uc815 \uc911... +label.action.enable.maintenance.mode=\uc720\uc9c0 \ubcf4\uc218 \ubaa8\ub4dc \uc0ac\uc6a9\ud568 +label.action.enable.nexusVswitch=Nexus 1000V \uc0ac\uc6a9\ud568 +label.action.enable.physical.network=\ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c \uc0ac\uc6a9\ud568 +label.action.enable.pod=Pod \uc0ac\uc6a9\ud568 +label.action.enable.pod.processing=Pod\ub97c \uc0ac\uc6a9 \uc124\uc815 \uc911... +label.action.enable.static.NAT.processing=\uc815\uc801 NAT\ub97c \uc0ac\uc6a9 \uc124\uc815 \uc911... +label.action.enable.static.NAT=\uc815\uc801 NAT \uc0ac\uc6a9\ud568 +label.action.enable.user.processing=\uc0ac\uc6a9\uc790\ub97c \uc0ac\uc6a9 \uc124\uc815 \uc911... +label.action.enable.user=\uc0ac\uc6a9\uc790 \uc0ac\uc6a9\ud568 +label.action.enable.zone.processing=Zone\uc744 \uc0ac\uc6a9 \uc124\uc815 \uc911... +label.action.enable.zone=Zone \uc0ac\uc6a9\ud568 +label.action.force.reconnect.processing=\uc7ac\uc811\uc18d\ud558\ub294 \uc911... +label.action.force.reconnect=\uac15\uc81c\uc7ac\uc811\uc18d +label.action.generate.keys.processing=\ud0a4\ub97c \uc0dd\uc131\ud558\ub294 \uc911... +label.action.generate.keys=\ud0a4 \uc0dd\uc131 +label.action.list.nexusVswitch=Nexus 1000V \ubaa9\ub85d \ud45c\uc2dc +label.action.lock.account.processing=\uacc4\uc815 \uc815\ubcf4\ub97c \uc7a0\uadf8\ub294 \uc911... +label.action.lock.account=\uacc4\uc815 \uc815\ubcf4 \uc7a0\uae08 +label.action.manage.cluster.processing=\ud074\ub7ec\uc2a4\ud130\ub97c \uad00\ub9ac \ub300\uc0c1\uc73c\ub85c \ud558\ub294 \uc911... +label.action.manage.cluster=\ud074\ub7ec\uc2a4\ud130 \uad00\ub9ac \ub3d9\uc791 +label.action.migrate.instance.processing=\uc778\uc2a4\ud134\uc2a4\ub97c \uc774\uc804\ud558\ub294 \uc911... +label.action.migrate.instance=\uc778\uc2a4\ud134\uc2a4 \uc774\uc804 +label.action.migrate.router.processing=\ub77c\uc6b0\ud130\ub97c \uc774\uc804\ud558\ub294 \uc911... +label.action.migrate.router=\ub77c\uc6b0\ud130 \uc774\uc804 +label.action.migrate.systemvm.processing=\uc2dc\uc2a4\ud15c VM\ub97c \uc774\uc804\ud558\ub294 \uc911 +label.action.migrate.systemvm=\uc2dc\uc2a4\ud15c VM \uc774\uc804 +label.action.reboot.instance.processing=\uc778\uc2a4\ud134\uc2a4\ub97c \uc7ac\uc2dc\uc791\ud558\ub294 \uc911... +label.action.reboot.instance=\uc778\uc2a4\ud134\uc2a4 \uc7ac\uc2dc\uc791 +label.action.reboot.router.processing=\ub77c\uc6b0\ud130\ub97c \uc7ac\uc2dc\uc791\ud558\ub294 \uc911... +label.action.reboot.router=\ub77c\uc6b0\ud130 \uc7ac\uc2dc\uc791 +label.action.reboot.systemvm.processing=\uc2dc\uc2a4\ud15c VM\ub97c \uc7ac\uc2dc\uc791\ud558\ub294 \uc911... +label.action.reboot.systemvm=\uc2dc\uc2a4\ud15c VM \uc7ac\uc2dc\uc791 +label.action.recurring.snapshot=\uc815\uae30 \uc2a4\ub0c5\uc0f7 +label.action.register.iso=ISO \ub4f1\ub85d +label.action.register.template=\ud15c\ud50c\ub9bf \ub4f1\ub85d +label.action.release.ip=IP \uc8fc\uc18c \ud574\uc81c +label.action.release.ip.processing=IP \uc8fc\uc18c\ub97c \ud574\uc81c\ud558\ub294 \uc911... +label.action.remove.host.processing=\ud638\uc2a4\ud2b8\ub97c \uc0ad\uc81c\ud558\ub294 \uc911... +label.action.remove.host=\ud638\uc2a4\ud2b8 \uc0ad\uc81c +label.action.reset.password.processing=\uc554\ud638\ub97c \uc7ac\uc124\uc815 \ud558\ub294 \uc911... +label.action.reset.password=\uc554\ud638 \uc7ac\uc124\uc815 +label.action.resize.volume.processing=\ubcfc\ub968 \ud06c\uae30 \ubcc0\uacbd \uc911... +label.action.resize.volume=\ubcfc\ub968 \ud06c\uae30 \ubcc0\uacbd +label.action.resource.limits=\uc790\uc6d0 \uc81c\ud55c +label.action.restore.instance.processing=\uc778\uc2a4\ud134\uc2a4\ub97c \ubcf5\uc6d0\ud558\ub294 \uc911... +label.action.restore.instance=\uc778\uc2a4\ud134\uc2a4 \ubcf5\uc6d0 +label.action.start.instance.processing=\uc778\uc2a4\ud134\uc2a4\ub97c \uc2dc\uc791\ud558\ub294 \uc911... +label.action.start.instance=\uc778\uc2a4\ud134\uc2a4 \uc2dc\uc791 +label.action.start.router.processing=\ub77c\uc6b0\ud130\ub97c \uc2dc\uc791\ud558\ub294 \uc911... +label.action.start.router=\ub77c\uc6b0\ud130 \uc2dc\uc791 +label.action.start.systemvm.processing=\uc2dc\uc2a4\ud15c VM\ub97c \uc2dc\uc791\ud558\ub294 \uc911... +label.action.start.systemvm=\uc2dc\uc2a4\ud15c VM \uc2dc\uc791 +label.action.stop.instance.processing=\uc778\uc2a4\ud134\uc2a4\ub97c \uc815\uc9c0\ud558\ub294 \uc911... +label.action.stop.instance=\uc778\uc2a4\ud134\uc2a4 \uc815\uc9c0 +label.action.stop.router.processing=\ub77c\uc6b0\ud130\ub97c \uc815\uc9c0\ud558\ub294 \uc911... +label.action.stop.router=\ub77c\uc6b0\ud130 \uc815\uc9c0 +label.action.stop.systemvm.processing=\uc2dc\uc2a4\ud15c VM\ub97c \uc815\uc9c0\ud558\ub294 \uc911... +label.action.stop.systemvm=\uc2dc\uc2a4\ud15c VM \uc815\uc9c0 +label.actions=\uc791\uc5c5 +label.action.take.snapshot.processing=\uc2a4\ub0c5\uc0f7\uc744 \ub9cc\ub4dc\ub294 \uc911.... +label.action.take.snapshot=\uc2a4\ub0c5\uc0f7 \ub9cc\ub4e4\uae30 +label.action.unmanage.cluster.processing=\ud074\ub7ec\uc2a4\ud130\ub97c \ube44\uad00\ub9ac \ub300\uc0c1\uc73c\ub85c \ud558\ub294 \uc911... +label.action.unmanage.cluster=\ud074\ub7ec\uc2a4\ud130 \ube44\uad00\ub9ac \ub3d9\uc791 +label.action.update.OS.preference=OS \uae30\ubcf8 \uc124\uc815 \uc5c5\ub370\uc774\ud2b8 +label.action.update.OS.preference.processing=OS \uae30\ubcf8 \uc124\uc815\uc744 \uc5c5\ub370\uc774\ud2b8\ud558\ub294 \uc911... +label.action.update.resource.count.processing=\uc790\uc6d0 \uc218\ub97c \uc5c5\ub370\uc774\ud2b8\ud558\ub294 \uc911... +label.action.update.resource.count=\uc790\uc6d0 \uc218 \uc5c5\ub370\uc774\ud2b8 +label.activate.project=\ud504\ub85c\uc81d\ud2b8 \ud65c\uc131\ud654 +label.active.sessions=\ud65c\uc131 \uc138\uc158 +label.add.accounts.to=\uacc4\uc815 \uc815\ubcf4 \ucd94\uac00\: +label.add.accounts=\uacc4\uc815 \uc815\ubcf4 \ucd94\uac00 +label.add.account.to.project=\uacc4\uc815 \uc815\ubcf4 \ud504\ub85c\uc81d\ud2b8\uc5d0 \ucd94\uac00 +label.add.account=\uacc4\uc815 \uc815\ubcf4 \ucd94\uac00 +label.add.ACL=\uad8c\ud55c \uad00\ub9ac(ACL) \ucd94\uac00 +label.add.by.cidr=CIDR \ub85c \ucd94\uac00 +label.add.by.group=\uadf8\ub8f9\uc5d0\uc11c \ucd94\uac00 +label.add.by=\ucd94\uac00 \ub2e8\uc704 +label.add.cluster=\ud074\ub7ec\uc2a4\ud130 \ucd94\uac00 +label.add.compute.offering=\ucef4\ud4e8\ud305 \uc790\uc6d0 \ucd94\uac00 +label.add.direct.iprange=\uc9c1\uc811 IP \uc8fc\uc18c \ubc94\uc704 \ucd94\uac00 +label.add.disk.offering=\ub514\uc2a4\ud06c \uc81c\uacf5 \ucd94\uac00 +label.add.domain=\ub3c4\uba54\uc778 \ucd94\uac00 +label.add.egress.rule=\uc804\uc1a1 \uaddc\uce59 \ucd94\uac00 +label.add.F5.device=F5 \uae30\uae30 \ucd94\uac00 +label.add.firewall=\ubc29\ud654\ubcbd(fire wall) \uaddc\uce59 \ucd94\uac00 +label.add.guest.network=\uc190\ub2d8 \ub124\ud2b8\uc6cc\ud06c \ucd94\uac00 +label.add.host=\ud638\uc2a4\ud2b8 \ucd94\uac00 +label.adding.cluster=\ud074\ub7ec\uc2a4\ud130\ub97c \ucd94\uac00\uc911... +label.adding.failed=\ucd94\uac00\ud560 \uc218 \uc5c6\uc74c +label.adding.pod=Pod\ub97c \ucd94\uac00 \uac00\ub2a5 +label.adding.processing=\ucd94\uac00\ud558\ub294 \uc911... +label.add.ingress.rule=\uc218\uc2e0 \uaddc\uce59 \ucd94\uac00 +label.adding.succeeded=\ucd94\uac00 \uc644\ub8cc +label.adding=\uc815\ubcf4 \ucd94\uac00 +label.adding.user=\uc0ac\uc6a9\uc790 \ucd94\uac00 +label.adding.zone=Zone \ucd94\uac00 +label.add.ip.range=IP \uc8fc\uc18c \ubc94\uc704 \ucd94\uac00 +label.additional.networks=\ucd94\uac00 \ub124\ud2b8\uc6cc\ud06c +label.add.load.balancer=\ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uc7a5\uce58 \ucd94\uac00 +label.add.more=\ub2e4\ub978 \ud56d\ubaa9 \ucd94\uac00 +label.add.netScaler.device=Netscaler \uae30\uae30 \ucd94\uac00 +label.add.network.ACL=\ub124\ud2b8\uc6cc\ud06c \uad8c\ud55c \uad00\ub9ac(ACL) \ucd94\uac00 +label.add.network.device=\ub124\ud2b8\uc6cc\ud06c \uae30\uae30 \ucd94\uac00 +label.add.network.offering=\ub124\ud2b8\uc6cc\ud06c \uc81c\uacf5 \ucd94\uac00 +label.add.network=\ub124\ud2b8\uc6cc\ud06c \ucd94\uac00 +label.add.new.F5=\uc0c8\ub85c\uc6b4 F5 \ucd94\uac00 +label.add.new.gateway=\uc0c8 \uac8c\uc774\ud2b8\uc6e8\uc774 \ucd94\uac00\ud558\uae30 +label.add.new.NetScaler=\uc0c8\ub85c\uc6b4 NetScaler \ucd94\uac00 +label.add.new.SRX=\uc0c8\ub85c\uc6b4 SRX \ucd94\uac00 +label.add.new.tier=\uc0c8 \uacc4\uce35 \ucd94\uac00 +label.add.physical.network=\ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c \ucd94\uac00 +label.add.pod=Pod \ucd94\uac00 +label.add.port.forwarding.rule=\ud3ec\ud1a0 \uc804\uc1a1 \uaddc\uce59\uc758 \ucd94\uac00 +label.add.primary.storage=\uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \ucd94\uac00 +label.add.resources=\uc790\uc6d0 \ucd94\uac00 +label.add.route=\ub77c\uc6b0\ud2b8 \ucd94\uac00 +label.add.rule=\uaddc\uce59 \ucd94\uac00 +label.add.secondary.storage=2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0 \ucd94\uac00 +label.add.security.group=\ubcf4\uc548 \uadf8\ub8f9 \ucd94\uac00 +label.add.service.offering=\uc11c\ube44\uc2a4\uc81c\uacf5 \ucd94\uac00 +label.add.SRX.device=SRX \uae30\uae30 \ucd94\uac00 +label.add.static.nat.rule=\uc815\uc801 NAT \uaddc\uce59 \ucd94\uac00 +label.add.static.route=\uc815\uc801 \ub77c\uc6b0\ud2b8 \ucd94\uac00 +label.add.system.service.offering=\uc2dc\uc2a4\ud15c \uc11c\ube44\uc2a4 \uc81c\uacf5 \ucd94\uac00 +label.add.template=\ud15c\ud50c\ub9bf \ucd94\uac00 +label.add.to.group=\uadf8\ub8f9\uc5d0 \ucd94\uac00 +label.add=\ucd94\uac00 +label.add.user=\uc0ac\uc6a9\uc790 \ucd94\uac00 +label.add.vlan=VLAN \ucd94\uac00 +label.add.vms.to.lb=\ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uaddc\uce59\uc5d0 VM \ucd94\uac00 +label.add.vms=VM \ucd94\uac00 +label.add.VM.to.tier=\uacc4\uce35\uc5d0 VM \ucd94\uac00 +label.add.vm=VM \ucd94\uac00 +label.add.volume=\ubcfc\ub968 \ucd94\uac00 +label.add.vpc=VPC \ucd94\uac00 +label.add.vpn.customer.gateway=VPN \uace0\uac1d \uac8c\uc774\ud2b8\uc6e8\uc774 \ucd94\uac00 +label.add.VPN.gateway=VPN \uac8c\uc774\ud2b8\uc6e8\uc774 \ucd94\uac00 +label.add.vpn.user=VPN \uc0ac\uc6a9\uc790 \ucd94\uac00 +label.add.zone=Zone \ucd94\uac00 +label.admin.accounts=\uad00\ub9ac\uc790 \uacc4\uc815 \uc815\ubcf4 +label.admin=\uad00\ub9ac\uc790 +label.advanced.mode=\ud655\uc7a5 \ubaa8\ub4dc +label.advanced.search=\uace0\ub3c4 \uac80\uc0c9 +label.advanced=\ud655\uc7a5 +label.agent.password=\uc5d0\uc774\uc804\ud2b8 \uc554\ud638 +label.agent.username=\uc5d0\uc774\uc804\ud2b8 \uc0ac\uc6a9\uc790\uba85 +label.agree=\ub3d9\uc758 +label.alert=\uc54c\ub9bc \uccb4\uc81c +label.algorithm=\uc54c\uace0\ub9ac\uc998 +label.allocated=\ud560\ub2f9 \uc644\ub8cc \uc0c1\ud0dc +label.allocation.state=\ud560\ub2f9 \uc0c1\ud0dc +label.api.key=API \ud0a4 +label.apply=\uc801\uc6a9 +label.assign.to.load.balancer=\ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uc7a5\uce58\uc5d0 \uc778\uc2a4\ud134\uc2a4\ub97c \ud560\ub2f9 +label.assign=\ud560\ub2f9 +label.associated.network.id=\uad00\ub828 \ub124\ud2b8\uc6cc\ud06c ID +label.associated.network=\uad00\ub828 \ub124\ud2b8\uc6cc\ud06c +label.attached.iso=\uc5f0\uacb0 ISO +label.availability=\uac00\uc6a9\uc131 +label.availability.zone=\uc774\uc6a9 \uac00\ub2a5 Zone +label.available.public.ips=\uc0ac\uc6a9 \uac00\ub2a5 \uacf5\uac1c IP \uc8fc\uc18c +label.available=\uc0ac\uc6a9 \uac00\ub2a5 +label.back=\ub4a4\ub85c +label.bandwidth=\ub300\uc5ed\ud3ed +label.basic.mode=\uae30\ubcf8 \ubaa8\ub4dc +label.basic=\uae30\ubcf8 +label.bootable=\ubd80\ud305 \uac00\ub2a5 +label.broadcast.domain.range=\ube0c\ub85c\ub4dc\uce90\uc2a4\ud2b8 \ub3c4\uba54\uc778 \ubc94\uc704 +label.broadcast.domain.type=\ube0c\ub85c\ub4dc\uce90\uc2a4\ud2b8 \ub3c4\uba54\uc778 \uc885\ub958 +label.by.account=\uacc4\uc815 \uc815\ubcf4 +label.by.availability=\uac00\uc6a9\uc131 +label.by.domain=\ub3c4\uba54\uc778 +label.by.end.date=\uc885\ub8cc\uc77c +label.by.level=\ub808\ubca8 label.by.pod=Pod -label.by.role=ì—­í•  -label.by.start.date=ì‹œìž‘ì¼ -label.by.state=ìƒíƒœ -label.by.traffic.type=트래픽 종류 -label.by.type.id=종류 ID -label.by.type=종류 +label.by.role=\uc5ed\ud560 +label.by.start.date=\uc2dc\uc791\uc77c +label.by.state=\uc0c1\ud0dc +label.bytes.received=\uc218\uc2e0 \ubc14\uc774\ud2b8 +label.bytes.sent=\uc804\uc1a1 \ubc14\uc774\ud2b8 +label.by.traffic.type=\ud2b8\ub798\ud53d \uc885\ub958 +label.by.type.id=\uc885\ub958 ID +label.by.type=\uc885\ub958 label.by.zone=Zone -label.bytes.received=수신 ë°”ì´íЏ -label.bytes.sent=전송 ë°”ì´íЏ -label.cancel=취소 -label.certificate=ì¸ì¦ì„œ -label.privatekey=PKC#8 비밀 키 -label.domain.suffix=DNS ë„ë©”ì¸ (예: xyz.com) -label.character=ë¬¸ìž -label.cidr.account=CIDR ë˜ëŠ” 계정 ì •ë³´/보안 그룹 -label.close=닫기 -label.cloud.console=í´ë¼ìš°ë“œ 관리 콘솔 -label.cloud.managed=Cloud.com 관리 -label.cluster.type=í´ëŸ¬ìŠ¤í„° 종류 -label.cluster=í´ëŸ¬ìŠ¤í„° -label.code=코드 -label.confirmation=í™•ì¸ -label.cpu.allocated.for.VMs=VMì— í• ë‹¹ 완료 CPU -label.cpu.allocated=할당 완료 CPU -label.cpu.utilized=CPU 사용율 +label.cancel=\ucde8\uc18c +label.capacity=\ucc98\ub9ac \ub2a5\ub825 +label.certificate=\uc778\uc99d\uc11c +label.change.service.offering=\uc11c\ube44\uc2a4 \uc81c\uacf5 \ubcc0\uacbd +label.change.value=\uac12 \ubcc0\uacbd +label.character=\ubb38\uc790 +label.checksum=MD5 \uccb4\ud06c\uc12c +label.cidr.account=CIDR \ub610\ub294 \uacc4\uc815 \uc815\ubcf4/\ubcf4\uc548 \uadf8\ub8f9 +label.cidr=CIDR +label.CIDR.list=CIDR \ubaa9\ub85d +label.cidr.list=\uc804\uc1a1\uc6d0 CIDR +label.CIDR.of.destination.network=\ub300\uc0c1 \ub124\ud2b8\uc6cc\ud06c CIDR +label.clean.up=\uc0ad\uc81c\ud558\uae30 +label.clear.list=\ubaa9\ub85d \uc0ad\uc81c +label.close=\ub2eb\uae30 +label.cloud.console=\ud074\ub77c\uc6b0\ub4dc \uad00\ub9ac \ucf58\uc194 +label.cloud.managed=Cloud.com \uad00\ub9ac +label.cluster.name=\ud074\ub7ec\uc2a4\ud130\uba85 +label.clusters=\ud074\ub7ec\uc2a4\ud130 +label.cluster.type=\ud074\ub7ec\uc2a4\ud130 \uc885\ub958 +label.cluster=\ud074\ub7ec\uc2a4\ud130 +label.clvm=CLVM +label.code=\ucf54\ub4dc +label.community=\ucee4\ubba4\ub2c8\ud2f0 +label.compute.and.storage=\ucef4\ud4e8\ud305\uacfc \uc2a4\ud1a0\ub9ac\uc9c0 +label.compute.offerings=\ucef4\ud4e8\ud305 \uc790\uc6d0 \uc81c\uacf5 +label.compute.offering=\ucef4\ud4e8\ud305 \uc790\uc6d0 \uc81c\uacf5 +label.compute=\ucef4\ud4e8\ud305 +label.configuration=\uad6c\uc131 +label.configure.network.ACLs=\ub124\ud2b8\uc6cc\ud06c \uad8c\ud55c \uad00\ub9ac(ACL) \uad6c\uc131 +label.configure=\uad6c\uc131 +label.configure.vpc=VPC \uad6c\uc131 +label.confirmation=\ud655\uc778 +label.confirm.password=\uc554\ud638 \ud655\uc778 \uc785\ub825 +label.congratulations=\uc124\uc815\uc774 \uace7 \uc644\ub8cc\uc785\ub2c8\ub2e4. +label.conserve.mode=\uc808\uc57d \ubaa8\ub4dc +label.console.proxy=\ucf58\uc194 \ud504\ub85d\uc2dc +label.continue.basic.install=\uae30\ubcf8 \uc124\uce58 \uc2e4\ud589 +label.continue=\uc2e4\ud589 +label.corrections.saved=\uc811\uc18d \uc815\ubcf4 \uc800\uc7a5 +label.cpu.allocated.for.VMs=VM\uc5d0 \ud560\ub2f9 \uc644\ub8cc CPU +label.cpu.allocated=\ud560\ub2f9 \uc644\ub8cc CPU +label.CPU.cap=CPU \uc81c\ud55c label.cpu=CPU -label.created=ì¼ì‹œ 만들기 -label.cross.zones=í¬ë¡œìФ ì¡´ -label.custom.disk.size=맞춤 ë””ìŠ¤í¬ í¬ê¸° -label.daily=ë§¤ì¼ -label.data.disk.offering=ë°ì´íƒ€ ë””ìŠ¤í¬ ì œê³µ -label.date=ë‚ ì§œ -label.day.of.month=매월 ì§€ì •ì¼ -label.day.of.week=매주 ì§€ì •ì¼ -label.delete=ì‚­ì œ -label.deleting.failed=삭제할 수 ì—†ìŒ -label.deleting.processing=삭제하는 중... -label.description=설명 -label.detaching.disk=디스í¬ë¥¼ 분리함 -label.details=ìƒì„¸ -label.device.id=기기 ID -label.disabled=사용 안함 -label.disabling.vpn.access=VPN 접근를 사용 안 함으로 설정 중 -label.disk.allocated=할당 완료 ë””ìŠ¤í¬ -label.disk.offering=ë””ìŠ¤í¬ ì œê³µ -label.disk.size.gb=ë””ìŠ¤í¬ í¬ê¸°(GB 단위) -label.disk.size=ë””ìŠ¤í¬ í¬ê¸° -label.disk.total=ë””ìŠ¤í¬ í•©ê³„ -label.disk.volume=ë””ìŠ¤í¬ ë³¼ë¥¨ -label.display.text=표시 í…스트 +label.cpu.mhz=CPU (MHz) +label.cpu.utilized=CPU \uc0ac\uc6a9\uc728 +label.created.by.system=\uc2dc\uc2a4\ud15c \ub9cc\ub4e4\uae30 +label.created=\uc77c\uc2dc \ub9cc\ub4e4\uae30 +label.create.project=\ud504\ub85c\uc81d\ud2b8 \ub9cc\ub4e4\uae30 +label.create.template=\ud15c\ud50c\ub9bf \ub9cc\ub4e4\uae30 +label.create.VPN.connection=VPN \uc811\uc18d \ub9cc\ub4e4\uae30 +label.cross.zones=\ud06c\ub85c\uc2a4 \uc874 +label.custom.disk.size=\ub9de\ucda4 \ub514\uc2a4\ud06c \ud06c\uae30 +label.daily=\ub9e4\uc77c +label.data.disk.offering=\ub370\uc774\ud0c0 \ub514\uc2a4\ud06c \uc81c\uacf5 +label.date=\ub0a0\uc9dc +label.day.of.month=\ub9e4\uc6d4 \uc9c0\uc815\uc77c +label.day.of.week=\ub9e4\uc8fc \uc9c0\uc815\uc77c +label.dead.peer.detection=\uc815\uc9c0 \ud53c\uc5b4 \uac10\uc9c0 +label.decline.invitation=\ucd08\ub300 \uac70\uc808 +label.dedicated=\uc804\uc6a9 +label.default=\uae30\ubcf8 +label.default.use=\uae30\ubcf8 \uc0ac\uc6a9 +label.default.view=\uae30\ubcf8 \ubcf4\uae30 +label.delete.F5=F5 \uc0ad\uc81c +label.delete.gateway=\uac8c\uc774\ud2b8\uc6e8\uc774 \uc0ad\uc81c +label.delete.NetScaler=NetScaler \uc0ad\uc81c +label.delete.project=\ud504\ub85c\uc81d\ud2b8 \uc0ad\uc81c +label.delete.SRX=SRX \uc0ad\uc81c +label.delete=\uc0ad\uc81c +label.delete.VPN.connection=VPN \uc811\uc18d \uc0ad\uc81c +label.delete.VPN.customer.gateway=VPN \uace0\uac1d \uac8c\uc774\ud2b8\uc6e8\uc774 \uc0ad\uc81c +label.delete.VPN.gateway=VPN \uac8c\uc774\ud2b8\uc6e8\uc774\uc0ad\uc81c +label.delete.vpn.user=VPN \uc0ac\uc6a9\uc790 \uc0ad\uc81c +label.deleting.failed=\uc0ad\uc81c\ud560 \uc218 \uc5c6\uc74c +label.deleting.processing=\uc0ad\uc81c\ud558\ub294 \uc911... +label.description=\uc124\uba85 +label.destination.physical.network.id=\ubaa9\uc801 \ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c ID +label.destination.zone=\ubcf5\uc0ac\ud560 Zone +label.destroy.router=\ub77c\uc6b0\ud130 \ud30c\uae30 +label.destroy=\ud30c\uae30 +label.detaching.disk=\ub514\uc2a4\ud06c\ub97c \ubd84\ub9ac\ud568 +label.details=\uc0c1\uc138 +label.device.id=\uae30\uae30 ID +label.devices=\uae30\uae30 +label.dhcp=DHCP +label.DHCP.server.type=DHCP \uc11c\ubc84 \uc885\ub958 +label.direct.ips=\uc9c1\uc811 IP \uc8fc\uc18c +label.disabled=\uc0ac\uc6a9 \uc548\ud568 +label.disable.provider=\uc81c\uacf5\uc790 \uc0ac\uc6a9 \uc548 \ud568 +label.disable.vpn=VPN \uc0ac\uc6a9 \uc548 \ud568 +label.disabling.vpn.access=VPN \uc811\uadfc\ub97c \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \uc124\uc815 \uc911 +label.disk.allocated=\ud560\ub2f9 \uc644\ub8cc \ub514\uc2a4\ud06c +label.disk.offering=\ub514\uc2a4\ud06c \uc81c\uacf5 +label.disk.size.gb=\ub514\uc2a4\ud06c \ud06c\uae30(GB \ub2e8\uc704) +label.disk.size=\ub514\uc2a4\ud06c \ud06c\uae30 +label.disk.total=\ub514\uc2a4\ud06c \ud569\uacc4 +label.disk.volume=\ub514\uc2a4\ud06c \ubcfc\ub968 +label.display.name=\ud45c\uc2dc\uba85 +label.display.text=\ud45c\uc2dc \ud14d\uc2a4\ud2b8 label.dns.1=DNS 1 label.dns.2=DNS 2 -label.domain.admin=ë„ë©”ì¸ ê´€ë¦¬ìž -label.domain.id=ë„ë©”ì¸ ID -label.domain.name=ë„ë©”ì¸ëª… -label.domain=ë„ë©”ì¸ -label.double.quotes.are.not.allowed=í° ë”°ì˜´í‘œ 사용할 수 ì—†ìŒ -label.download.progress=다운로드 ì§„í–‰ 사항 -label.edit=편집 -label.email=ì „ìž ë©”ì¼ -label.enabling.vpn.access=VPN 접근를 사용 하고 ìžˆìŒ -label.enabling.vpn=VPN를 사용 하고 ìžˆìŒ -label.end.port=종료 í¬í†  -label.endpoint.or.operation=엔드 í¬ì¸íЏ ë˜ëŠ” 작업 -label.error.code=오류 코드 -label.error=오류 -label.esx.host=ESX/ESXi 호스트 -label.example=예 -label.failed=실패 -label.featured=추천 -label.firewall=방화벽(fire wall) -label.first.name=ì´ë¦„ -label.format=í˜•ì‹ -label.friday=ê¸ˆìš”ì¼ -label.full=ì „ì²´ -label.gateway=게ì´íŠ¸ì›¨ì´ -label.general.alerts=ì¼ë°˜ 알림 ì²´ì œ -label.generating.url=URL를 ìƒì„±í•˜ê³  ìžˆìŒ -label.go.step.2=단계 2으로 -label.go.step.3=단계 3으로 -label.go.step.4=단계 4으로 -label.go.step.5=단계 5으로 -label.group.optional=그룹(옵션) -label.group=그룹 -label.guest.cidr=게스트 CIDR -label.guest.gateway=게스트 게ì´íŠ¸ì›¨ì´ -label.guest.ip.range=게스트 IP 주소 범위 -label.guest.ip=게스트 IP 주소 -label.guest.netmask=게스트 ë„· ë§ˆìŠ¤í¬ -label.ha.enabled=고가용성 사용함 -label.help=ë„ì›€ë§ -label.host.alerts=호스트 알림 체계 -label.host.name=호스트명 -label.host=호스트 -label.hosts=호스트 -label.hourly=매시간 -label.hypervisor.type=하ì´í¼ ë°”ì´ì € 종류 -label.hypervisor=하ì´í¼ ë°”ì´ì € +label.dns=DNS +label.DNS.domain.for.guest.networks=\uc190\ub2d8 \ub124\ud2b8\uc6cc\ud06c DNS \ub3c4\uba54\uc778 +label.domain.admin=\ub3c4\uba54\uc778 \uad00\ub9ac\uc790 +label.domain.id=\ub3c4\uba54\uc778 ID +label.domain.name=\ub3c4\uba54\uc778\uba85 +label.domain.router=\ub3c4\uba54\uc778 \ub77c\uc6b0\ud130 +label.domain.suffix=DNS \ub3c4\uba54\uc778 (\uc608\: xyz.com) +label.domain=\ub3c4\uba54\uc778 +label.done=\uc644\ub8cc +label.double.quotes.are.not.allowed=\ud070 \ub530\uc634\ud45c \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc74c +label.download.progress=\ub2e4\uc6b4\ub85c\ub4dc \uc9c4\ud589 \uc0ac\ud56d +label.drag.new.position=\uc0c8\ub85c\uc6b4 \uc704\uce58\uc5d0 \ub04c\uc5b4\uc624\uae30 +label.edit.lb.rule=\ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uaddc\uce59 \ud3b8\uc9d1 +label.edit.network.details=\ub124\ud2b8\uc6cc\ud06c \uc0c1\uc138\ud55c \ud3b8\uc9d1 +label.edit.project.details=\ud504\ub85c\uc81d\ud2b8 \uc0c1\uc138 \ud3b8\uc9d1 +label.edit.tags=\ud0dc\uadf8 \ud3b8\uc9d1 +label.edit.traffic.type=\ud2b8\ub798\ud53d \uc885\ub958 \ud3b8\uc9d1 +label.edit=\ud3b8\uc9d1 +label.edit.vpc=VPC \ud3b8\uc9d1 +label.egress.rule=\uc804\uc1a1 \uaddc\uce59 +label.elastic.IP=\ud0c4\ub825\uc801 IP \uc8fc\uc18c +label.elastic.LB=\ud0c4\ub825\uc801 \ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 +label.elastic=\uc624\ub958 \uc2a4\ud2f1 +label.email=\uc804\uc790 \uba54\uc77c +label.enable.provider=\uc81c\uacf5\uc790 \uc0ac\uc6a9\ud568 +label.enable.swift=Swift \uc0ac\uc6a9\ud568 +label.enable.vpn=VPN \uc0ac\uc6a9\ud568 +label.enabling.vpn.access=VPN \uc811\uadfc\ub97c \uc0ac\uc6a9 \ud558\uace0 \uc788\uc74c +label.enabling.vpn=VPN\ub97c \uc0ac\uc6a9 \ud558\uace0 \uc788\uc74c +label.end.IP=\uc885\ub8cc IP \uc8fc\uc18c +label.endpoint.or.operation=\uc5d4\ub4dc \ud3ec\uc778\ud2b8 \ub610\ub294 \uc791\uc5c5 +label.end.port=\uc885\ub8cc \ud3ec\ud1a0 +label.end.reserved.system.IP=\uc608\uc57d\ub41c \uc885\ub8cc \uc2dc\uc2a4\ud15c IP \uc8fc\uc18c +label.end.vlan=\uc885\ub8cc VLAN +label.enter.token=\ud1a0\ud070 \uc785\ub825 +label.error.code=\uc624\ub958 \ucf54\ub4dc +label.error=\uc624\ub958 +label.ESP.encryption=ESP \uc554\ud638\ud654 +label.ESP.hash=ESP \ud574\uc2dc +label.ESP.lifetime=ESP \uc720\ud6a8\uae30\uac04(\ucd08) +label.ESP.policy=ESP \uc815\ucc45 +label.esx.host=ESX/ESXi \ud638\uc2a4\ud2b8 +label.example=\uc608 +label.f5=F5 +label.failed=\uc2e4\ud328 +label.featured=\ucd94\ucc9c +label.fetch.latest=\ucd5c\uc2e0 \uc815\ubcf4 \ucde8\ub4dd +label.filterBy=\ud544\ud130 +label.firewall=\ubc29\ud654\ubcbd(fire wall) +label.first.name=\uc774\ub984 +label.format=\ud615\uc2dd +label.friday=\uae08\uc694\uc77c +label.full.path=\uc804\uccb4 \uacbd\ub85c +label.full=\uc804\uccb4 +label.gateway=\uac8c\uc774\ud2b8\uc6e8\uc774 +label.general.alerts=\uc77c\ubc18 \uc54c\ub9bc \uccb4\uc81c +label.generating.url=URL\ub97c \uc0dd\uc131\ud558\uace0 \uc788\uc74c +label.go.step.2=\ub2e8\uacc4 2\uc73c\ub85c +label.go.step.3=\ub2e8\uacc4 3\uc73c\ub85c +label.go.step.4=\ub2e8\uacc4 4\uc73c\ub85c +label.go.step.5=\ub2e8\uacc4 5\uc73c\ub85c +label.group.optional=\uadf8\ub8f9(\uc635\uc158) +label.group=\uadf8\ub8f9 +label.guest.cidr=\uac8c\uc2a4\ud2b8 CIDR +label.guest.end.ip=\uac8c\uc2a4\ud2b8 \uc885\ub8cc IP \uc8fc\uc18c +label.guest.gateway=\uac8c\uc2a4\ud2b8 \uac8c\uc774\ud2b8\uc6e8\uc774 +label.guest.ip.range=\uac8c\uc2a4\ud2b8 IP \uc8fc\uc18c \ubc94\uc704 +label.guest.ip=\uac8c\uc2a4\ud2b8 IP \uc8fc\uc18c +label.guest.netmask=\uac8c\uc2a4\ud2b8 \ub137 \ub9c8\uc2a4\ud06c +label.guest.networks=\uc190\ub2d8 \ub124\ud2b8\uc6cc\ud06c +label.guest.start.ip=\uac8c\uc2a4\ud2b8 \uc2dc\uc791 IP \uc8fc\uc18c +label.guest.traffic=\uac8c\uc2a4\ud2b8 \ud2b8\ub798\ud53d +label.guest.type=\uac8c\uc2a4\ud2b8 \uc885\ub958 +label.guest=\uac8c\uc2a4\ud2b8 +label.ha.enabled=\uace0\uac00\uc6a9\uc131 \uc0ac\uc6a9\ud568 +label.help=\ub3c4\uc6c0\ub9d0 +label.hide.ingress.rule=\uc218\uc2e0 \uaddc\uce59\uc744 \uc228\uae30\uae30 +label.hints=\uc815\ubcf4 +label.host.alerts=\ud638\uc2a4\ud2b8 \uc54c\ub9bc \uccb4\uacc4 +label.host.MAC=\ud638\uc2a4\ud2b8 MAC +label.host.name=\ud638\uc2a4\ud2b8\uba85 +label.hosts=\ud638\uc2a4\ud2b8 +label.host.tags=\ud638\uc2a4\ud2b8 \ud0dc\uadf8 +label.host=\ud638\uc2a4\ud2b8 +label.hourly=\ub9e4\uc2dc\uac04 +label.hypervisor.capabilities=\ud558\uc774\ud37c \ubc14\uc774\uc800 \uae30\ub2a5 +label.hypervisor.type=\ud558\uc774\ud37c \ubc14\uc774\uc800 \uc885\ub958 +label.hypervisor=\ud558\uc774\ud37c \ubc14\uc774\uc800 +label.hypervisor.version=\ud558\uc774\ud37c \ubc14\uc774\uc800 \ubc84\uc804 label.id=ID -label.info=ì •ë³´ -label.ingress.rule=수신 규칙 -label.initiated.by=시작 ì‚¬ìš©ìž -label.instance.limits=ì¸ìŠ¤í„´ìŠ¤ 제한 -label.instance.name=ì¸ìŠ¤í„´ìŠ¤ëª… -label.instance=ì¸ìŠ¤í„´ìŠ¤ -label.instances=ì¸ìŠ¤í„´ìŠ¤ -label.internal.dns.1=ë‚´ë¶€ DNS 1 -label.internal.dns.2=ë‚´ë¶€ DNS 2 -label.interval.type=간격 종류 -label.invalid.integer=유효하지 ì•Šì€ ì •ìˆ˜ê°’ -label.invalid.number=유효하지 ì•Šì€ ìˆ«ìžê°’ -label.ip.address=IP 주소 -label.ip.allocations=IP 주소 할당 -label.ip.limits=공개 IP 주소 제한 -label.ip.or.fqdn=IP 주소 ë˜ëŠ” FQDN -label.ip.range=IP 주소 범위 +label.IKE.DH=IKE DH +label.IKE.encryption=IKE \uc554\ud638\ud654 +label.IKE.hash=IKE \ud574\uc2dc +label.IKE.lifetime=IKE \uc720\ud6a8\uae30\uac04(\ucd08) +label.IKE.policy=IKE \uc815\ucc45 +label.info=\uc815\ubcf4 +label.ingress.rule=\uc218\uc2e0 \uaddc\uce59 +label.initiated.by=\uc2dc\uc791 \uc0ac\uc6a9\uc790 +label.installWizard.addClusterIntro.subtitle=\ud074\ub7ec\uc2a4\ud130 \ub300\ud55c \uc815\ubcf4 +label.installWizard.addClusterIntro.title=\ud074\ub7ec\uc2a4\ud130 \ucd94\uac00 +label.installWizard.addHostIntro.subtitle=\ud638\uc2a4\ud2b8\uc5d0 \ub300\ud574 +label.installWizard.addHostIntro.title=\ud638\uc2a4\ud2b8 \ucd94\uac00 +label.installWizard.addPodIntro.subtitle=Pod\uc5d0 \ub300\ud55c \uc815\ubcf4 +label.installWizard.addPodIntro.title=Pod \ucd94\uac00 +label.installWizard.addPrimaryStorageIntro.subtitle=\uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\uc5d0 \ub300\ud574 +label.installWizard.addPrimaryStorageIntro.title=\uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \ucd94\uac00 +label.installWizard.addSecondaryStorageIntro.subtitle=2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0\uc5d0 \ub300\ud574 +label.installWizard.addSecondaryStorageIntro.title=2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0 \ucd94\uac00 +label.installWizard.addZoneIntro.subtitle=Zone\uc5d0 \ub300\ud55c \uc815\ubcf4 +label.installWizard.addZoneIntro.title=Zone \ucd94\uac00 +label.installWizard.addZone.title=Zone \ucd94\uac00 +label.installWizard.click.launch=[\uc2dc\uc791]\uc744 \ud074\ub9ad\ud574 \uc8fc\uc2ed\uc2dc\uc624. +label.installWizard.subtitle=\ud604\uc7ac \uac00\uc774\ub4dc \ud22c\uc5b4\ub294 CloudStack\u2122 \ud658\uacbd \uc124\uc815\uc5d0 \ub3c4\uc6c0\uc774 \ub429\ub2c8\ub2e4 +label.installWizard.title=CloudStack\u2122 \ub9c8\ubc95\uc0ac +label.instance.limits=\uc778\uc2a4\ud134\uc2a4 \uc81c\ud55c +label.instance.name=\uc778\uc2a4\ud134\uc2a4\uba85 +label.instances=\uc778\uc2a4\ud134\uc2a4 +label.instance=\uc778\uc2a4\ud134\uc2a4 +label.internal.dns.1=\ub0b4\ubd80 DNS 1 +label.internal.dns.2=\ub0b4\ubd80 DNS 2 +label.internal.name=\ub0b4\ubd80\uba85 +label.interval.type=\uac04\uaca9 \uc885\ub958 +label.introduction.to.cloudstack=CloudStack\u2122 \uc18c\uac1c +label.invalid.integer=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc815\uc218\uac12 +label.invalid.number=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc22b\uc790\uac12 +label.invitations=\ucd08\ub300\uc7a5 +label.invited.accounts=\ucd08\ub300\uac00 \ub05d\ub09c \uacc4\uc815 \uc815\ubcf4 +label.invite.to=\ucd08\ub300 \ud504\ub85c\uc81d\ud2b8\: +label.invite=\ucd08\ub300 +label.ip.address=IP \uc8fc\uc18c +label.ipaddress=IP \uc8fc\uc18c +label.ip.allocations=IP \uc8fc\uc18c \ud560\ub2f9 label.ip=IP +label.ip.limits=\uacf5\uac1c IP \uc8fc\uc18c \uc81c\ud55c +label.ip.or.fqdn=IP \uc8fc\uc18c \ub610\ub294 FQDN +label.ip.range=IP \uc8fc\uc18c \ubc94\uc704 +label.ip.ranges=IP \uc8fc\uc18c \ubc94\uc704 +label.IPsec.preshared.key=IPsec \uc0ac\uc804 \uacf5\uc720 \ud0a4 label.ips=IP -label.is.default=기본 -label.is.shared=공유 -label.is.system=시스템 label.iscsi=iSCSI -label.iso.boot=ISO 시작 +label.is.default=\uae30\ubcf8 +label.iso.boot=ISO \uc2dc\uc791 label.iso=ISO -label.isolation.mode=분리 모드 -label.keep=유지 -label.lang.chinese=중국어(ê°„ì²´) -label.lang.english=ì˜ì–´ -label.lang.japanese=ì¼ë³¸ì–´ -label.lang.korean=한국어 -label.lang.spanish=스페ì¸ì–´ -label.last.disconnected=마지막 종료 ì‹œì  -label.last.name=성 -label.level=레벨 -label.linklocal.ip=ë§í¬ 로컬 IP 주소 -label.load.balancer=ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 장치 -label.loading=로드 하는 중 -label.local=로컬 -label.login=ë¡œê·¸ì¸ -label.logout=로그아웃 +label.isolated.networks=\ubd84\ub9ac \ub124\ud2b8\uc6cc\ud06c +label.isolation.method=\ubd84\ub9ac \ubc29\ubc95 +label.isolation.mode=\ubd84\ub9ac \ubaa8\ub4dc +label.is.redundant.router=\uc911\ubcf5 +label.is.shared=\uacf5\uc720 +label.is.system=\uc2dc\uc2a4\ud15c +label.item.listing=\ud56d\ubaa9 \ubaa9\ub85d +label.keep=\uc720\uc9c0 +label.keyboard.type=\ud0a4\ubcf4\ub4dc \uc885\ub958 +label.key=\ud0a4 +label.kvm.traffic.label=KVM \ud2b8\ub798\ud53d \ub77c\ubca8 +label.label=\ub77c\ubca8 +label.lang.chinese=\uc911\uad6d\uc5b4(\uac04\uccb4) +label.lang.english=\uc601\uc5b4 +label.lang.japanese=\uc77c\ubcf8\uc5b4 +label.lang.korean=\ud55c\uad6d\uc5b4 +label.lang.spanish=\uc2a4\ud398\uc778\uc5b4 +label.last.disconnected=\ub9c8\uc9c0\ub9c9 \uc885\ub8cc \uc2dc\uc810 +label.last.name=\uc131 +label.latest.events=\ucd5c\uc2e0 \uc774\ubca4\ud2b8 +label.launch=\uc2dc\uc791 +label.launch.vm=VM \uc2dc\uc791 +label.launch.zone=Zone \uc2dc\uc791 +label.LB.isolation=\ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \ubd84\ub9ac +label.least.connections=\ucd5c\uc18c \uc811\uc18d +label.level=\ub808\ubca8 +label.linklocal.ip=\ub9c1\ud06c \ub85c\uceec IP \uc8fc\uc18c +label.load.balancer=\ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uc7a5\uce58 +label.load.balancing.policies=\ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uc815\ucc45 +label.load.balancing=\ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 +label.loading=\ub85c\ub4dc \ud558\ub294 \uc911 +label.local.storage.enabled=\ub85c\uceec \uc2a4\ud1a0\ub9ac\uc9c0\ub294 \uc720\ud6a8 +label.local.storage=\ub85c\uceec \uc2a4\ud1a0\ub9ac\uc9c0 +label.local=\ub85c\uceec +label.login=\ub85c\uadf8\uc778 +label.logout=\ub85c\uadf8\uc544\uc6c3 label.lun=LUN -label.manage=관리 -label.maximum=최대 -label.memory.allocated=할당완료 메모리 -label.memory.total=메모리 합계 -label.memory.used=메모리 사용량 -label.memory=메모리 -label.menu.accounts=계정 ì •ë³´ -label.menu.alerts=알림 체계 -label.menu.all.accounts=모든 계정 ì •ë³´ -label.menu.all.instances=모든 ì¸ìŠ¤í„´ìŠ¤ -label.menu.community.isos=커뮤니티 ISO -label.menu.community.templates=커뮤니티 템플릿 -label.menu.configuration=구성 -label.menu.dashboard=대시 보드 -label.menu.destroyed.instances=íŒŒê¸°ëœ ì¸ìŠ¤í„´ìŠ¤ -label.menu.disk.offerings=디스í¬ì œê³µ -label.menu.domains=ë„ë©”ì¸ -label.menu.events=ì´ë²¤íЏ -label.menu.featured.isos=추천 ISO -label.menu.featured.templates=추천 템플릿 -label.menu.global.settings=글로벌 설정 -label.menu.instances=ì¸ìŠ¤í„´ìŠ¤ -label.menu.ipaddresses=IP 주소 +label.LUN.number=LUN \ubc88\ud638 +label.make.project.owner=\uacc4\uc815 \uc815\ubcf4 \ud504\ub85c\uc81d\ud2b8 \uc18c\uc720\uc790 +label.management.ips=\uad00\ub9ac IP \uc8fc\uc18c +label.management=\uad00\ub9ac +label.manage.resources=\uc790\uc6d0 \uad00\ub9ac +label.manage=\uad00\ub9ac +label.max.guest.limit=\ucd5c\ub300 \uac8c\uc2a4\ud2b8 \uc81c\ud55c +label.maximum=\ucd5c\ub300 +label.max.networks=\ucd5c\ub300 \ub124\ud2b8\uc6cc\ud06c\uc218 +label.max.public.ips=\ucd5c\ub300 \uacf5\uac1c IP \uc8fc\uc18c\uc218 +label.max.snapshots=\ucd5c\ub300 \uc2a4\ub0c5\uc0f7\uc218 +label.max.templates=\ucd5c\ub300 \ud15c\ud50c\ub9bf\uc218 +label.max.vms=\ucd5c\ub300 \uc0ac\uc6a9\uc790 VM\uc218 +label.max.volumes=\ucd5c\ub300 \ubcfc\ub968\uc218 +label.may.continue=\uc2e4\ud589 \ud560 \uc218 \uc788\uc74c +label.memory.allocated=\ud560\ub2f9\uc644\ub8cc \uba54\ubaa8\ub9ac +label.memory.mb=\uba54\ubaa8\ub9ac (MB) +label.memory.total=\uba54\ubaa8\ub9ac \ud569\uacc4 +label.memory=\uba54\ubaa8\ub9ac +label.memory.used=\uba54\ubaa8\ub9ac \uc0ac\uc6a9\ub7c9 +label.menu.accounts=\uacc4\uc815 \uc815\ubcf4 +label.menu.alerts=\uc54c\ub9bc \uccb4\uacc4 +label.menu.all.accounts=\ubaa8\ub4e0 \uacc4\uc815 \uc815\ubcf4 +label.menu.all.instances=\ubaa8\ub4e0 \uc778\uc2a4\ud134\uc2a4 +label.menu.community.isos=\ucee4\ubba4\ub2c8\ud2f0 ISO +label.menu.community.templates=\ucee4\ubba4\ub2c8\ud2f0 \ud15c\ud50c\ub9bf +label.menu.configuration=\uad6c\uc131 +label.menu.dashboard=\ub300\uc2dc \ubcf4\ub4dc +label.menu.destroyed.instances=\ud30c\uae30\ub41c \uc778\uc2a4\ud134\uc2a4 +label.menu.disk.offerings=\ub514\uc2a4\ud06c\uc81c\uacf5 +label.menu.domains=\ub3c4\uba54\uc778 +label.menu.events=\uc774\ubca4\ud2b8 +label.menu.featured.isos=\ucd94\ucc9c ISO +label.menu.featured.templates=\ucd94\ucc9c \ud15c\ud50c\ub9bf +label.menu.global.settings=\uae00\ub85c\ubc8c \uc124\uc815 +label.menu.infrastructure=\uc778\ud504\ub77c\uc2a4\ud2b8\ub7ed\uccd0 +label.menu.instances=\uc778\uc2a4\ud134\uc2a4 +label.menu.ipaddresses=IP \uc8fc\uc18c label.menu.isos=ISO -label.menu.my.accounts=ë‚˜ì˜ ê³„ì • ì •ë³´ -label.menu.my.instances=ë‚˜ì˜ ì¸ìŠ¤í„´ìŠ¤ -label.menu.my.isos=ë‚˜ì˜ ISO -label.menu.my.templates=ë‚˜ì˜ í…œí”Œë¦¿ -label.menu.network.offerings=ë„¤íŠ¸ì›Œí¬ ì œê³µ -label.menu.network=ë„¤íŠ¸ì›Œí¬ -label.menu.physical.resources=물리 ìžì› -label.menu.running.instances=실행 중 ì¸ìŠ¤í„´ìŠ¤ -label.menu.security.groups=보안 그룹 -label.menu.service.offerings=서비스제공 -label.menu.snapshots=스냅샷 -label.menu.stopped.instances=ì •ì§€ëœ ì¸ìŠ¤í„´ìŠ¤ -label.menu.storage=스토리지 -label.menu.system.vms=시스템 VM -label.menu.system=시스템 -label.menu.templates=템플릿 -label.menu.virtual.appliances=ê°€ìƒ ì•„í”„ë¼ì´ì•ˆìФ -label.menu.virtual.resources=ê°€ìƒ ìžì› -label.menu.volumes=볼륨 -label.migrate.instance.to=ì¸ìŠ¤í„´ìŠ¤ ì´ì „ 위치: -label.minimum=최소 -label.minute.past.hour=ë¶„(매시) -label.monday=ì›”ìš”ì¼ -label.monthly=매월 -label.more.templates=다른 템플릿 -label.my.account=ë‚˜ì˜ ê³„ì • ì •ë³´ -label.name.optional=ì´ë¦„(옵션) -label.name=ì´ë¦„ -label.netmask=ë„· ë§ˆìŠ¤í¬ -label.network.desc=ë„¤íŠ¸ì›Œí¬ ì„¤ëª… -label.network.domain=ë„¤íŠ¸ì›Œí¬ ë„ë©”ì¸ -label.network.id=ë„¤íŠ¸ì›Œí¬ ID -label.network.name=네트워í¬ëª… -label.network.offering.display.text=ë„¤íŠ¸ì›Œí¬ ì œê³µ 표시 í…스트 -label.network.offering.id=ë„¤íŠ¸ì›Œí¬ ì œê³µ ID -label.network.offering.name=ë„¤íŠ¸ì›Œí¬ ì œê³µëª… -label.network.offering=ë„¤íŠ¸ì›Œí¬ ì œê³µ -label.network.rate=ë„¤íŠ¸ì›Œí¬ ì†ë„ -label.network.read=ë„¤íŠ¸ì›Œí¬ ì½ê¸° -label.network.type=ë„¤íŠ¸ì›Œí¬ ì¢…ë¥˜ -label.network.write=ë„¤íŠ¸ì›Œí¬ ê¸°ìž… -label.network=ë„¤íŠ¸ì›Œí¬ -label.new.password=새로운 암호 -label.next=ë‹¤ìŒ -label.nfs.server=NFS 서버 -label.nfs.storage=NFS 스토리지 +label.menu.my.accounts=\ub098\uc758 \uacc4\uc815 \uc815\ubcf4 +label.menu.my.instances=\ub098\uc758 \uc778\uc2a4\ud134\uc2a4 +label.menu.my.isos=\ub098\uc758 ISO +label.menu.my.templates=\ub098\uc758 \ud15c\ud50c\ub9bf +label.menu.network.offerings=\ub124\ud2b8\uc6cc\ud06c \uc81c\uacf5 +label.menu.network=\ub124\ud2b8\uc6cc\ud06c +label.menu.physical.resources=\ubb3c\ub9ac \uc790\uc6d0 +label.menu.running.instances=\uc2e4\ud589 \uc911 \uc778\uc2a4\ud134\uc2a4 +label.menu.security.groups=\ubcf4\uc548 \uadf8\ub8f9 +label.menu.service.offerings=\uc11c\ube44\uc2a4\uc81c\uacf5 +label.menu.snapshots=\uc2a4\ub0c5\uc0f7 +label.menu.stopped.instances=\uc815\uc9c0\ub41c \uc778\uc2a4\ud134\uc2a4 +label.menu.storage=\uc2a4\ud1a0\ub9ac\uc9c0 +label.menu.system.service.offerings=\uc2dc\uc2a4\ud15c \uc81c\uacf5 +label.menu.system=\uc2dc\uc2a4\ud15c +label.menu.system.vms=\uc2dc\uc2a4\ud15c VM +label.menu.templates=\ud15c\ud50c\ub9bf +label.menu.virtual.appliances=\uac00\uc0c1 \uc544\ud504\ub77c\uc774\uc548\uc2a4 +label.menu.virtual.resources=\uac00\uc0c1 \uc790\uc6d0 +label.menu.volumes=\ubcfc\ub968 +label.migrate.instance.to.host=\ub2e4\ub978 \ud638\uc2a4\ud2b8\uc5d0\uac8c \uc778\uc2a4\ud134\uc2a4 \uc774\uc804 +label.migrate.instance.to.ps=\ub2e4\ub978 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\uc5d0 \uc778\uc2a4\ud134\uc2a4 \uc774\uc804 +label.migrate.instance.to=\uc778\uc2a4\ud134\uc2a4 \uc774\uc804 \uc704\uce58\: +label.migrate.router.to=\ub77c\uc6b0\ud130 \uc774\uc804 \uc704\uce58\: +label.migrate.systemvm.to=\uc2dc\uc2a4\ud15c VM \uc774\uc804 \uc704\uce58\: +label.migrate.volume=\ub2e4\ub978 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\uc5d0 \ubcfc\ub968 \uc774\uc804 +label.minimum=\ucd5c\uc18c +label.minute.past.hour=\ubd84(\ub9e4\uc2dc) +label.monday=\uc6d4\uc694\uc77c +label.monthly=\ub9e4\uc6d4 +label.more.templates=\ub2e4\ub978 \ud15c\ud50c\ub9bf +label.move.down.row=\uc544\ub798\ub85c \uc774\ub3d9 +label.move.to.bottom=\ub9c8\uc9c0\ub9c9\uc73c\ub85c \uc774\ub3d9 +label.move.to.top=\ucc98\uc74c\uc73c\ub85c \uc774\ub3d9 +label.move.up.row=\uc704\ub85c \uc774\ub3d9 +label.my.account=\ub098\uc758 \uacc4\uc815 \uc815\ubcf4 +label.my.network=\ub0b4 \ub124\ud2b8\uc6cc\ud06c +label.my.templates=\ub098\uc758 \ud15c\ud50c\ub9bf +label.name.optional=\uc774\ub984(\uc635\uc158) +label.name=\uc774\ub984 +label.nat.port.range=NAT \ud3ec\ud1a0 \ubc94\uc704 +label.netmask=\ub137 \ub9c8\uc2a4\ud06c +label.netScaler=NetScaler +label.network.ACLs=\ub124\ud2b8\uc6cc\ud06c \uad8c\ud55c \uad00\ub9ac(ACL) +label.network.ACL.total=\ub124\ud2b8\uc6cc\ud06c \uad8c\ud55c \uad00\ub9ac(ACL) \ud569\uacc4 +label.network.ACL=\ub124\ud2b8\uc6cc\ud06c \uad8c\ud55c \uad00\ub9ac(ACL) +label.network.desc=\ub124\ud2b8\uc6cc\ud06c \uc124\uba85 +label.network.device.type=\ub124\ud2b8\uc6cc\ud06c \uae30\uae30 \uc885\ub958 +label.network.device=\ub124\ud2b8\uc6cc\ud06c \uae30\uae30 +label.network.domain.text=\ub124\ud2b8\uc6cc\ud06c \ub3c4\uba54\uc778 +label.network.domain=\ub124\ud2b8\uc6cc\ud06c \ub3c4\uba54\uc778 +label.network.id=\ub124\ud2b8\uc6cc\ud06c ID +label.networking.and.security=\ub124\ud2b8\uc6cc\ud06c\uc640 \ubcf4\uc548 +label.network.label.display.for.blank.value=\uae30\ubcf8 \uac8c\uc774\ud2b8\uc6e8\uc774\ub97c \uc0ac\uc6a9 +label.network.name=\ub124\ud2b8\uc6cc\ud06c\uba85 +label.network.offering.display.text=\ub124\ud2b8\uc6cc\ud06c \uc81c\uacf5 \ud45c\uc2dc \ud14d\uc2a4\ud2b8 +label.network.offering.id=\ub124\ud2b8\uc6cc\ud06c \uc81c\uacf5 ID +label.network.offering.name=\ub124\ud2b8\uc6cc\ud06c \uc81c\uacf5\uba85 +label.network.offering=\ub124\ud2b8\uc6cc\ud06c \uc81c\uacf5 +label.network.rate.megabytes=\ub124\ud2b8\uc6cc\ud06c \uc18d\ub3c4 (MB/\ucd08) +label.network.rate=\ub124\ud2b8\uc6cc\ud06c \uc18d\ub3c4 +label.network.read=\ub124\ud2b8\uc6cc\ud06c \uc77d\uae30 +label.network.service.providers=\ub124\ud2b8\uc6cc\ud06c \uc11c\ube44\uc2a4 \uc81c\uacf5\uc790 +label.networks=\ub124\ud2b8\uc6cc\ud06c +label.network.type=\ub124\ud2b8\uc6cc\ud06c \uc885\ub958 +label.network=\ub124\ud2b8\uc6cc\ud06c +label.network.write=\ub124\ud2b8\uc6cc\ud06c \uae30\uc785 +label.new.password=\uc0c8\ub85c\uc6b4 \uc554\ud638 +label.new.project=\uc0c8 \ud504\ub85c\uc81d\ud2b8 +label.new=\uc2e0\uaddc +label.new.vm=\uc0c8 VM +label.next=\ub2e4\uc74c +label.nexusVswitch=Nexus 1000V label.nfs=NFS +label.nfs.server=NFS \uc11c\ubc84 +label.nfs.storage=NFS \uc2a4\ud1a0\ub9ac\uc9c0 +label.nic.adapter.type=NIC \uc544\ub2f5\ud130 \uc885\ub958 label.nics=NIC -label.no.actions=실행할 수 있는 작업 ì—†ìŒ -label.no.alerts=최근 알림 체계 ì—†ìŒ -label.no.errors=최근 오류는 ì—†ìŒ -label.no.isos=사용할 수 있는 ISO ì—†ìŒ -label.no.items=사용할 수 있는 항목 ì—†ìŒ -label.no.security.groups=사용할 수 있는 보안 그룹 ì—†ìŒ -label.no.thanks=설정 안 함 -label.no=아니오 -label.none=ì—†ìŒ -label.not.found=검색 ê²°ê³¼ ì—†ìŒ -label.num.cpu.cores=CPU 코어수 -label.numretries=재시행 회수 -label.offer.ha=고가용성 제공 -label.optional=옵션 -label.os.preference=OS 기본 설정 -label.os.type=OS 종류 -label.owned.public.ips=소유 공개 IP 주소 -label.owner.account=ì†Œìœ ìž ê³„ì • ì •ë³´ -label.owner.domain=ì†Œìœ ìž ë„ë©”ì¸ -label.parent.domain=부모 ë„ë©”ì¸ -label.password.enabled=암호 관리 사용 -label.password=암호 -label.path=경로 -label.please.wait=기다려 주십시오... +label.no.actions=\uc2e4\ud589\ud560 \uc218 \uc788\ub294 \uc791\uc5c5 \uc5c6\uc74c +label.no.alerts=\ucd5c\uadfc \uc54c\ub9bc \uccb4\uacc4 \uc5c6\uc74c +label.no.data=\ud45c\uc2dc\ud560 \ub370\uc774\ud130\uac00 \uc5c6\uc74c +label.no.errors=\ucd5c\uadfc \uc624\ub958\ub294 \uc5c6\uc74c +label.no.isos=\uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 ISO \uc5c6\uc74c +label.no.items=\uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \ud56d\ubaa9 \uc5c6\uc74c +label.none=\uc5c6\uc74c +label.no.security.groups=\uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \ubcf4\uc548 \uadf8\ub8f9 \uc5c6\uc74c +label.not.found=\uac80\uc0c9 \uacb0\uacfc \uc5c6\uc74c +label.no.thanks=\uc124\uc815 \uc548\ud568 +label.notifications=\uc54c\ub9bc +label.no=\uc544\ub2c8\uc624 +label.number.of.clusters=\ud074\ub7ec\uc2a4\ud130\uc218 +label.number.of.hosts=\ud638\uc2a4\ud2b8\uc218 +label.number.of.pods=Pod\uc218 +label.number.of.system.vms=\uc2dc\uc2a4\ud15c VM \uc218 +label.number.of.virtual.routers=\uac00\uc0c1 \ub77c\uc6b0\ud130\uc218 +label.number.of.zones=Zone\uc218 +label.num.cpu.cores=CPU \ucf54\uc5b4\uc218 +label.numretries=\uc7ac\uc2dc\ud589 \ud68c\uc218 +label.ocfs2=OCFS2 +label.offer.ha=\uace0\uac00\uc6a9\uc131 \uc81c\uacf5 +label.ok=\ud655\uc778 +label.optional=\uc635\uc158 +label.order=\uc21c\uc11c +label.os.preference=OS \uae30\ubcf8 \uc124\uc815 +label.os.type=OS \uc885\ub958 +label.owned.public.ips=\uc18c\uc720 \uacf5\uac1c IP \uc8fc\uc18c +label.owner.account=\uc18c\uc720\uc790 \uacc4\uc815 \uc815\ubcf4 +label.owner.domain=\uc18c\uc720\uc790 \ub3c4\uba54\uc778 +label.parent.domain=\ubd80\ubaa8 \ub3c4\uba54\uc778 +label.password.enabled=\uc554\ud638 \uad00\ub9ac \uc0ac\uc6a9 +label.password=\uc554\ud638 +label.path=\uacbd\ub85c +label.perfect.forward.secrecy=Perfect Forward Secrecy +label.physical.network.ID=\ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c ID +label.physical.network=\ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c +label.PING.CIFS.password=PING CIFS \uc554\ud638 +label.PING.CIFS.username=PING CIFS \uc0ac\uc6a9\uc790\uba85 +label.PING.dir=PING \ub514\ub809\ud1a0\ub9ac +label.PING.storage.IP=PING \ub300\uc0c1 \uc2a4\ud1a0\ub9ac\uc9c0 IP \uc8fc\uc18c +label.please.specify.netscaler.info=Netscaler \uc815\ubcf4\ub97c \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624 +label.please.wait=\uae30\ub2e4\ub824 \uc8fc\uc2ed\uc2dc\uc624... +label.pod.name=Pod\uba85 label.pod=Pod -label.port.forwarding=í¬í†  전송 -label.port.range=í¬í†  범위 -label.prev=뒤로 -label.primary.allocated=할당 완료 기본 스토리지 -label.primary.network=기본 ë„¤íŠ¸ì›Œí¬ -label.primary.storage=기본 스토리지 -label.primary.used=기본 스토리지 사용량 -label.private.interface=사설 ì¸í„°íŽ˜ì´ìФ -label.private.ip.range=사설 IP 주소 범위 -label.private.ip=사설 IP 주소 -label.private.ips=사설 IP 주소 -label.private.port=사설 í¬íЏ -label.private.zone=사설 Zone -label.protocol=프로토콜 -label.public.interface=공개 ì¸í„°íŽ˜ì´ìФ -label.public.ip=공개 IP 주소 -label.public.ips=공개 IP 주소 -label.public.port=공개 í¬íЏ -label.public.zone=공개 Zone -label.public=공개 -label.recent.errors=최근 오류 -label.refresh=ì—…ë°ì´íЏ -label.related=관련 -label.remove.from.load.balancer=ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 장치ì—서 ì¸ìŠ¤í„´ìŠ¤ë¥¼ 삭제하는 중 -label.removing.user=사용ìžë¥¼ 삭제하는 중 -label.required=필수 사항 -label.reserved.system.ip=ì˜ˆì•½ëœ ì‹œìŠ¤í…œ IP 주소 -label.resource.limits=ìžì› 제한 -label.resource=ìžì› -label.resources=ìžì› -label.role=ì—­í•  -label.root.disk.offering=루트 디스í¬ì œê³µ -label.running.vms=실행중 VM -label.saturday=í† ìš”ì¼ -label.save=저장 -label.saving.processing=저장하는 중... -label.scope=범위 -label.search=검색 -label.secondary.storage=2ì°¨ 스토리지 -label.secondary.used=2ì°¨ 스토리지 사용량 -label.secret.key=비밀 키 -label.security.group.name=보안 그룹명 -label.security.group=보안 그룹 -label.security.groups.enabled=보안 그룹 유효 -label.security.groups=보안 그룹 -label.sent=ì „ì†¡ëœ ìƒíƒœ -label.server=서버 -label.service.offering=서비스제공 -label.system.service.offering=시스템 서비스 제공 -label.session.expired=세션 ìœ íš¨ê¸°ê°„ì´ ëŠì–´ì§ -label.shared=공유 -label.size=í¬ê¸° -label.snapshot.limits=스냅샷 제한 -label.snapshot.name=스냅샷 ì´ë¦„ -label.snapshot.s=스냅샷 -label.snapshot.schedule=정기 스냅샷 설정 -label.snapshot=스냅샷 -label.snapshots=스냅샷 -label.source.nat=ì „ì†¡ì› NAT -label.specify.vlan=VLAN 지정 -label.start.port=시작 í¬í†  -label.state=ìƒíƒœ -label.static.nat.to=ì •ì  NAT 설정 위치: -label.static.nat=ì •ì  NAT -label.statistics=통계 -label.status=ìƒíƒœ -label.step.1.title=단계 1. 템플릿 ì„ íƒ -label.step.1=단계 1 -label.step.2.title=단계 2. 서비스 제공 -label.step.2=단계 2 -label.step.3.title=단계 3. ë””ìŠ¤í¬ ì œê³µ ì„ íƒ -label.step.3=단계 3 -label.step.4.title=단계 4. ë„¤íŠ¸ì›Œí¬ -label.step.4=단계 4 -label.step.5.title=단계 5. 최종 í™•ì¸ -label.step.5=단계 5 -label.stopped.vms=ì •ì§€ 중 VM -label.storage.type=스토리지 종류 -label.storage=스토리지 -label.submit=보내기 -label.submitted.by=[사용ìž: ] -label.succeeded=완료 -label.sunday=ì¼ìš”ì¼ -label.system.capacity=시스템 처리 능력 -label.system.vm.type=시스템 VM 종류 -label.system.vm=시스템 VM -label.system.vms=시스템 VM -label.tagged=태그 -label.tags=태그 -label.target.iqn=타겟 IQN -label.template.limits=템플릿 제한 -label.template=템플릿 -label.theme.default=기본 테마 -label.theme.grey=맞춤- 회색조 -label.theme.lightblue=맞춤 - ë¼ì´íЏ 블루 -label.thursday=ëª©ìš”ì¼ -label.time.zone=시간대 -label.time=ì‹œê° -label.timeout.in.second = 시간 초과 (ì´ˆ) -label.timezone=시간대 -label.total.cpu=CPU 합계 -label.total.vms=VM 합계 -label.traffic.type=트래픽 종류 -label.tuesday=í™”ìš”ì¼ -label.type.id=종류 ID -label.type=종류 -label.unavailable=사용 불가 -label.unlimited=무제한 -label.untagged=태그 ì—†ìŒ -label.update.ssl.cert=SSL ì¸ì¦ì„œ ì—…ë°ì´íЏ -label.update.ssl=SSL ì¸ì¦ì„œ ì—…ë°ì´íЏ -label.updating=ì—…ë°ì´íŠ¸í•˜ê³  있는 중 +label.pods=Pod +label.port.forwarding.policies=\ud3ec\ud1a0 \uc804\uc1a1 \uc815\ucc45 +label.port.forwarding=\ud3ec\ud1a0 \uc804\uc1a1 +label.port.range=\ud3ec\ud1a0 \ubc94\uc704 +label.PreSetup=PreSetup +label.previous=\ub4a4\ub85c +label.prev=\ub4a4\ub85c +label.primary.allocated=\ud560\ub2f9 \uc644\ub8cc \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 +label.primary.network=\uae30\ubcf8 \ub124\ud2b8\uc6cc\ud06c +label.primary.storage.count=\uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \uadf8\ub8f9 +label.primary.storage=\uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 +label.primary.used=\uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \uc0ac\uc6a9\ub7c9 +label.private.Gateway=\uc0ac\uc124 \uac8c\uc774\ud2b8\uc6e8\uc774 +label.private.interface=\uc0ac\uc124 \uc778\ud130\ud398\uc774\uc2a4 +label.private.ip.range=\uc0ac\uc124 IP \uc8fc\uc18c \ubc94\uc704 +label.private.ips=\uc0ac\uc124 IP \uc8fc\uc18c +label.private.ip=\uc0ac\uc124 IP \uc8fc\uc18c +label.privatekey=PKC\#8 \ube44\ubc00 \ud0a4 +label.private.network=\uc0ac\uc124 \ub124\ud2b8\uc6cc\ud06c +label.private.port=\uc0ac\uc124 \ud3ec\ud2b8 +label.private.zone=\uc0ac\uc124 Zone +label.project.dashboard=\ud504\ub85c\uc81d\ud2b8 \ub300\uc2dc \ubcf4\ub4dc +label.project.id=\ud504\ub85c\uc81d\ud2b8 ID +label.project.invite=\ud504\ub85c\uc81d\ud2b8\uc5d0 \ucd08\ub300 +label.project.name=\ud504\ub85c\uc81d\ud2b8\uba85 +label.projects=\ud504\ub85c\uc81d\ud2b8 +label.project=\ud504\ub85c\uc81d\ud2b8 +label.project.view=\ud504\ub85c\uc81d\ud2b8 \ubcf4\uae30 +label.protocol=\ud504\ub85c\ud1a0\ucf5c +label.providers=\uc81c\uacf5\uc790 +label.public.interface=\uacf5\uac1c \uc778\ud130\ud398\uc774\uc2a4 +label.public.ips=\uacf5\uac1c IP \uc8fc\uc18c +label.public.ip=\uacf5\uac1c IP \uc8fc\uc18c +label.public.network=\uacf5\uac1c \ub124\ud2b8\uc6cc\ud06c +label.public.port=\uacf5\uac1c \ud3ec\ud2b8 +label.public.traffic=\uacf5\uac1c \ud2b8\ub798\ud53d +label.public=\uacf5\uac1c +label.public.zone=\uacf5\uac1c Zone +label.purpose=\ubaa9\uc801 +label.Pxe.server.type=PXE \uc11c\ubc84 \uc885\ub958 +label.reboot=\uc7ac\uc2dc\uc791 +label.recent.errors=\ucd5c\uadfc \uc624\ub958 +label.redundant.router.capability=\uc911\ubcf5 \ub77c\uc6b0\ud130 \uae30\ub2a5 +label.redundant.router=\uc911\ubcf5 \ub77c\uc6b0\ud130 +label.redundant.state=\uc911\ubcf5 \uc0c1\ud0dc +label.refresh=\uc5c5\ub370\uc774\ud2b8 +label.related=\uad00\ub828 +label.remind.later=\uc54c\ub9bc \ud45c\uc2dc +label.remove.ACL=\uad8c\ud55c \uad00\ub9ac(ACL) \uc0ad\uc81c +label.remove.egress.rule=\uc804\uc1a1 \uaddc\uce59 \uc0ad\uc81c +label.remove.from.load.balancer=\ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uc7a5\uce58\uc5d0\uc11c \uc778\uc2a4\ud134\uc2a4\ub97c \uc0ad\uc81c\ud558\ub294 \uc911 +label.remove.ingress.rule=\uc218\uc2e0 \uaddc\uce59 \uc0ad\uc81c +label.remove.ip.range=IP \uc8fc\uc18c \ubc94\uc704 \uc0ad\uc81c +label.remove.pf=\ud3ec\ud1a0 \uc804\uc1a1 \uaddc\uce59 \uc0ad\uc81c +label.remove.project.account=\ud504\ub85c\uc81d\ud2b8 \uacc4\uc815 \uc815\ubcf4 \uc0ad\uc81c +label.remove.rule=\uaddc\uce59 \uc0ad\uc81c +label.remove.static.nat.rule=\uc815\uc801 NAT \uaddc\uce59 \uc0ad\uc81c +label.remove.static.route=\uc815\uc801 \ub77c\uc6b0\ud2b8 \uc0ad\uc81c +label.remove.tier=\uacc4\uce35 \uc0ad\uc81c +label.remove.vm.from.lb=\ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uaddc\uce59\uc5d0 VM \uc0ad\uc81c +label.remove.vpc=VPC \uc0ad\uc81c +label.removing=\uc0ad\uc81c\ud558\ub294 \uc911 +label.removing.user=\uc0ac\uc6a9\uc790\ub97c \uc0ad\uc81c\ud558\ub294 \uc911 +label.required=\ud544\uc218 \uc0ac\ud56d +label.reserved.system.gateway=\uc608\uc57d\ub41c \uc2dc\uc2a4\ud15c \uac8c\uc774\ud2b8\uc6e8\uc774 +label.reserved.system.ip=\uc608\uc57d\ub41c \uc2dc\uc2a4\ud15c IP \uc8fc\uc18c +label.reserved.system.netmask=\uc608\uc57d\ub41c \uc2dc\uc2a4\ud15c \ub137 \ub9c8\uc2a4\ud06c +label.reset.VPN.connection=VPN \uc811\uc18d \uc7ac\uc124\uc815 +label.resize.new.offering.id=\uc0c8\ub85c \uc81c\uacf5 +label.resize.new.size=\uc0c8 \ud06c\uae30(GB) +label.resize.shrink.ok=\ubcc0\uacbd \uc644\ub8cc +label.resource.limits=\uc790\uc6d0 \uc81c\ud55c +label.resource.state=\uc790\uc6d0 \uc0c1\ud0dc +label.resources=\uc790\uc6d0 +label.resource=\uc790\uc6d0 +label.restart.network=\ub124\ud2b8\uc6cc\ud06c \uc7ac\uc2dc\uc791 +label.restart.required=\uc7ac\uc2dc\uc791 \ud544\uc694 +label.restart.vpc=VPC \uc7ac\uc2dc\uc791 +label.review=\ud655\uc778 +label.revoke.project.invite=\ucd08\ub300 \ucde8\uc18c +label.role=\uc5ed\ud560 +label.root.disk.controller=\ub8e8\ud2b8 \ub514\uc2a4\ud06c \ucf58\ud2b8\ub864\ub7ec +label.root.disk.offering=\ub8e8\ud2b8 \ub514\uc2a4\ud06c\uc81c\uacf5 +label.round.robin=\ub77c\uc6b4\ub4dc \ub85c\ube48 +label.rules=\uaddc\uce59 +label.running.vms=\uc2e4\ud589\uc911 VM +label.s3.secret_key=\ube44\ubc00 \ud0a4 +label.saturday=\ud1a0\uc694\uc77c +label.save.and.continue=\uc800\uc7a5\ud558\uae30 +label.save=\uc800\uc7a5 +label.saving.processing=\uc800\uc7a5\ud558\ub294 \uc911... +label.scope=\ubc94\uc704 +label.search=\uac80\uc0c9 +label.secondary.storage=2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0 +label.secondary.storage.count=2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0 \uadf8\ub8f9 +label.secondary.storage.vm=2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0 VM +label.secondary.used=2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0 \uc0ac\uc6a9\ub7c9 +label.secret.key=\ube44\ubc00 \ud0a4 +label.security.group.name=\ubcf4\uc548 \uadf8\ub8f9\uba85 +label.security.groups.enabled=\ubcf4\uc548 \uadf8\ub8f9 \uc720\ud6a8 +label.security.groups=\ubcf4\uc548 \uadf8\ub8f9 +label.security.group=\ubcf4\uc548 \uadf8\ub8f9 +label.select.a.template=\ud15c\ud50c\ub9bf \uc120\ud0dd +label.select.a.zone=Zone \uc120\ud0dd +label.select.instance.to.attach.volume.to=\ubcfc\ub968\uc744 \uc5f0\uacb0\ud558\ub294 \uc778\uc2a4\ud134\uc2a4\ub97c \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624 +label.select.instance=\uc778\uc2a4\ud134\uc2a4 \uc120\ud0dd +label.select.iso.or.template=ISO \ub610\ub294 \ud15c\ud50c\ub9bf \uc120\ud0dd +label.select.offering=\uc81c\uacf5 \uc120\ud0dd +label.select.project=\ud504\ub85c\uc81d\ud2b8 \uc120\ud0dd +label.select.tier=\uacc4\uce35 \uc120\ud0dd +label.select=\uc120\ud0dd +label.select-view=\ud45c\uc2dc \ubc29\ubc95 \uc120\ud0dd +label.select.vm.for.static.nat=\uc815\uc801 NAT\uc6a9 VM \uc120\ud0dd +label.sent=\uc804\uc1a1\ub41c \uc0c1\ud0dc +label.server=\uc11c\ubc84 +label.service.capabilities=\uc11c\ube44\uc2a4 \uae30\ub2a5 +label.service.offering=\uc11c\ube44\uc2a4\uc81c\uacf5 +label.session.expired=\uc138\uc158 \uc720\ud6a8\uae30\uac04\uc774 \ub04a\uc5b4\uc9d0 +label.setup.network=\ub124\ud2b8\uc6cc\ud06c \uc124\uc815 +label.setup=\uc124\uc815 +label.set.up.zone.type=Zone \uc885\ub958 \uc124\uc815 +label.setup.zone=Zone \uc124\uc815 +label.SharedMountPoint=SharedMountPoint +label.shared=\uacf5\uc720 +label.show.ingress.rule=\uc218\uc2e0 \uaddc\uce59 \ud45c\uc2dc +label.shutdown.provider=\uc81c\uacf5\uc790 \uc885\ub8cc +label.site.to.site.VPN=\uc0ac\uc774\ud2b8\uac04 \uc0ac\uc124\ub124\ud2b8\uc6cc\ud06c(VPN) +label.size=\ud06c\uae30 +label.skip.guide=CloudStack \uc0ac\uc6a9 \uac00\uc774\ub4dc \uac74\ub108\ub6f0\uae30 +label.snapshot.limits=\uc2a4\ub0c5\uc0f7 \uc81c\ud55c +label.snapshot.name=\uc2a4\ub0c5\uc0f7 \uc774\ub984 +label.snapshot.schedule=\uc815\uae30 \uc2a4\ub0c5\uc0f7 \uc124\uc815 +label.snapshot.s=\uc2a4\ub0c5\uc0f7 +label.snapshots=\uc2a4\ub0c5\uc0f7 +label.snapshot=\uc2a4\ub0c5\uc0f7 +label.source.nat=\uc804\uc1a1\uc6d0 NAT +label.source=\uc2dc\uc791 \uc704\uce58 +label.specify.IP.ranges=IP \uc8fc\uc18c \ubc94\uc704 \uc9c0\uc815 +label.specify.vlan=VLAN \uc9c0\uc815 +label.SR.name = SR \uba85 \ub77c\ubca8 +label.srx=SRX +label.start.IP=\uc2dc\uc791 IP \uc8fc\uc18c +label.start.port=\uc2dc\uc791 \ud3ec\ud1a0 +label.start.reserved.system.IP=\uc608\uc57d\ub41c \uc2dc\uc791 \uc2dc\uc2a4\ud15c IP \uc8fc\uc18c +label.start.vlan=\uc2dc\uc791 VLAN +label.state=\uc0c1\ud0dc +label.static.nat.enabled=\uc815\uc801 NAT \uc720\ud6a8 +label.static.nat.to=\uc815\uc801 NAT \uc124\uc815 \uc704\uce58\: +label.static.nat=\uc815\uc801 NAT +label.static.nat.vm.details=\uc815\uc801 NAT VM \uc0c1\uc138 \uc815\ubcf4 +label.statistics=\ud1b5\uacc4 +label.status=\uc0c1\ud0dc +label.step.1.title=\ub2e8\uacc4 1. \ud15c\ud50c\ub9bf \uc120\ud0dd +label.step.1=\ub2e8\uacc4 1 +label.step.2.title=\ub2e8\uacc4 2. \uc11c\ube44\uc2a4 \uc81c\uacf5 +label.step.2=\ub2e8\uacc4 2 +label.step.3.title=\ub2e8\uacc4 3. \ub514\uc2a4\ud06c \uc81c\uacf5 \uc120\ud0dd +label.step.3=\ub2e8\uacc4 3 +label.step.4.title=\ub2e8\uacc4 4. \ub124\ud2b8\uc6cc\ud06c +label.step.4=\ub2e8\uacc4 4 +label.step.5.title=\ub2e8\uacc4 5. \ucd5c\uc885 \ud655\uc778 +label.step.5=\ub2e8\uacc4 5 +label.stickiness=\uc9c0\uc18d\uc131 +label.sticky.cookie-name=Cookie \uba85 +label.sticky.domain=\ub3c4\uba54\uc778 +label.sticky.expire=\ub9cc\ub8cc\uc2dc\uac04 +label.sticky.holdtime=\ubcf4\uad00 \uc720\uc9c0 \uc2dc\uac04 +label.sticky.indirect=\uac04\uc811 +label.sticky.length=\uae38\uc774 +label.sticky.mode=\ubaa8\ub4dc +label.sticky.nocache=\uce90\uc2dc \uc5c6\uc74c +label.sticky.postonly=\ud3ec\uc2a4\ud2b8\ub9cc +label.sticky.prefix=\ud504\ub808\ud53d\uc2a4 +label.sticky.request-learn=\ub7ec\ub2dd \uc694\uad6c +label.sticky.tablesize=\ud14c\uc774\ube14 \ud06c\uae30 +label.stopped.vms=\uc815\uc9c0 \uc911 VM +label.stop=\uc815\uc9c0 +label.storage.tags=\uc2a4\ud1a0\ub9ac\uc9c0 \ud0dc\uadf8 +label.storage.traffic=\uc2a4\ud1a0\ub9ac\uc9c0 \ud2b8\ub798\ud53d +label.storage.type=\uc2a4\ud1a0\ub9ac\uc9c0 \uc885\ub958 +label.storage=\uc2a4\ud1a0\ub9ac\uc9c0 +label.subdomain.access=\uc11c\ube0c \ub3c4\uba54\uc778 \uc811\uadfc +label.submitted.by=[\uc0ac\uc6a9\uc790\: ] +label.submit=\ubcf4\ub0b4\uae30 +label.succeeded=\uc644\ub8cc +label.sunday=\uc77c\uc694\uc77c +label.super.cidr.for.guest.networks=\uc190\ub2d8 \ub124\ud2b8\uc6cc\ud06c \uc288\ud37c CIDR +label.supported.services=\uae30\uc220 \uc9c0\uc6d0\ub418\ub294 \uc11c\ube44\uc2a4 +label.supported.source.NAT.type=\uae30\uc220 \uc9c0\uc6d0\ub418\ub294 \uc804\uc1a1 NAT \uc885\ub958 +label.suspend.project=\ud504\ub85c\uc81d\ud2b8 \uc77c\uc2dc\uc815\uc9c0 +label.system.capacity=\uc2dc\uc2a4\ud15c \ucc98\ub9ac \ub2a5\ub825 +label.system.offering=\uc2dc\uc2a4\ud15c \uc81c\uacf5 +label.system.service.offering=\uc2dc\uc2a4\ud15c \uc11c\ube44\uc2a4 \uc81c\uacf5 +label.system.vms=\uc2dc\uc2a4\ud15c VM +label.system.vm.type=\uc2dc\uc2a4\ud15c VM \uc885\ub958 +label.system.vm=\uc2dc\uc2a4\ud15c VM +label.system.wide.capacity=\uc2dc\uc2a4\ud15c \uc804\uccb4 \ucc98\ub9ac \ub2a5\ub825 +label.tagged=\ud0dc\uadf8 +label.tags=\ud0dc\uadf8 +label.target.iqn=\ud0c0\uac9f IQN +label.task.completed=\uc791\uc5c5 \uc644\ub8cc +label.template.limits=\ud15c\ud50c\ub9bf \uc81c\ud55c +label.template=\ud15c\ud50c\ub9bf +label.TFTP.dir=TFTP \ub514\ub809\ud1a0\ub9ac +label.theme.default=\uae30\ubcf8 \ud14c\ub9c8 +label.theme.grey=\ub9de\ucda4- \ud68c\uc0c9\uc870 +label.theme.lightblue=\ub9de\ucda4 - \ub77c\uc774\ud2b8 \ube14\ub8e8 +label.thursday=\ubaa9\uc694\uc77c +label.tier.details=\uacc4\uce35 \uc0c1\uc138 \uc7a5\ubc84 +label.tier=\uacc4\uce35 +label.timeout.in.second = \uc2dc\uac04 \ucd08\uacfc (\ucd08) +label.timeout=\uc2dc\uac04 \ucd08\uacfc +label.time=\uc2dc\uac01 +label.time.zone=\uc2dc\uac04\ub300 +label.timezone=\uc2dc\uac04\ub300 +label.token=\ud1a0\ud070 +label.total.cpu=CPU \ud569\uacc4 +label.total.CPU=CPU \ud569\uacc4 +label.total.hosts=\ud638\uc2a4\ud2b8 \ud569\uacc4 +label.total.memory=\uba54\ubaa8\ub9ac \ud569\uacc4 +label.total.of.ip=IP \uc8fc\uc18c \ud569\uacc4 +label.total.of.vm=VM \ud569\uacc4 +label.total.storage=\uc2a4\ud1a0\ub9ac\uc9c0 \ud569\uacc4 +label.total.vms=VM \ud569\uacc4 +label.traffic.label=\ud2b8\ub798\ud53d \ub77c\ubca8 +label.traffic.types=\ud2b8\ub798\ud53d \uc885\ub958 +label.traffic.type=\ud2b8\ub798\ud53d \uc885\ub958 +label.tuesday=\ud654\uc694\uc77c +label.type.id=\uc885\ub958 ID +label.type=\uc885\ub958 +label.unavailable=\uc0ac\uc6a9 \ubd88\uac00 +label.unlimited=\ubb34\uc81c\ud55c +label.untagged=\ud0dc\uadf8 \uc5c6\uc74c +label.update.project.resources=\ud504\ub85c\uc81d\ud2b8 \uc790\uc6d0 \uc5c5\ub370\uc774\ud2b8 +label.update.ssl.cert= SSL \uc778\uc99d\uc11c \uc5c5\ub370\uc774\ud2b8 +label.update.ssl= SSL \uc778\uc99d\uc11c \uc5c5\ub370\uc774\ud2b8 +label.updating=\uc5c5\ub370\uc774\ud2b8\ud558\uace0 \uc788\ub294 \uc911 +label.upload=\uc5c5\ub85c\ub4dc +label.upload.volume=\ubcfc\ub968\uc758 \uc5c5\ub85c\ub4dc label.url=URL -label.usage.interface=사용 ìƒí™© 측정 ì¸í„°íŽ˜ì´ìФ -label.used=사용 중 -label.user=ì‚¬ìš©ìž -label.username=사용ìžëª… -label.users=ì‚¬ìš©ìž -label.value=ê°’ -label.vcenter.cluster=vCenter í´ëŸ¬ìŠ¤í„° -label.vcenter.datacenter=vCenter ë°ì´í„° 센터 -label.vcenter.datastore=vCenter ë°ì´í„° 스토어 -label.vcenter.host=vCenter 호스트 -label.vcenter.password=vCenter 암호 -label.vcenter.username=vCenter 사용ìžëª… -label.version=버전 -label.virtual.appliance=ê°€ìƒ ì–´í”Œë¼ì´ì–¸ìФ -label.virtual.appliances=ê°€ìƒ ì–´í”Œë¼ì´ì–¸ìФ -label.virtual.network=ê°€ìƒ ë„¤íŠ¸ì›Œí¬ +label.usage.interface=\uc0ac\uc6a9 \uc0c1\ud669 \uce21\uc815 \uc778\ud130\ud398\uc774\uc2a4 +label.used=\uc0ac\uc6a9 \uc911 +label.username=\uc0ac\uc6a9\uc790\uba85 +label.users=\uc0ac\uc6a9\uc790 +label.user=\uc0ac\uc6a9\uc790 +label.value=\uac12 +label.vcdcname=vCenter DC \uba85 +label.vcenter.cluster=vCenter \ud074\ub7ec\uc2a4\ud130 +label.vcenter.datacenter=vCenter \ub370\uc774\ud130 \uc13c\ud130 +label.vcenter.datastore=vCenter \ub370\uc774\ud130 \uc2a4\ud1a0\uc5b4 +label.vcenter.host=vCenter \ud638\uc2a4\ud2b8 +label.vcenter.password=vCenter \uc554\ud638 +label.vcenter.username=vCenter \uc0ac\uc6a9\uc790\uba85 +label.vcipaddress=vCenter IP \uc8fc\uc18c +label.version=\ubc84\uc804 +label.view.all=\ubaa8\ub450 \ud45c\uc2dc +label.view.console=\ucf58\uc194 \ud45c\uc2dc +label.viewing=\ud45c\uc2dc \ud56d\ubaa9\: +label.view.more=\uc0c1\uc138 \ud45c\uc2dc +label.view=\ud45c\uc2dc - +label.virtual.appliances=\uac00\uc0c1 \uc5b4\ud50c\ub77c\uc774\uc5b8\uc2a4 +label.virtual.appliance=\uac00\uc0c1 \uc5b4\ud50c\ub77c\uc774\uc5b8\uc2a4 +label.virtual.machines=\uac00\uc0c1 \uba38\uc2e0 +label.virtual.network=\uac00\uc0c1 \ub124\ud2b8\uc6cc\ud06c +label.virtual.routers=\uac00\uc0c1 \ub77c\uc6b0\ud130 +label.virtual.router=\uac00\uc0c1 \ub77c\uc6b0\ud130 label.vlan.id=VLAN ID -label.vlan.range=VLAN 범위 -label.vm.add=ì¸ìŠ¤í„´ìŠ¤ 추가 -label.vm.destroy=파기 -label.vm.reboot=재시작 -label.vm.start=시작 -label.vm.stop=ì •ì§€ +label.vlan.range=VLAN \ubc94\uc704 +label.vlan=\uac00\uc0c1 \ub124\ud2b8\uc6cc\ud06c(VLAN) +label.vm.add=\uc778\uc2a4\ud134\uc2a4 \ucd94\uac00 +label.vm.destroy=\ud30c\uae30 +label.vm.display.name=VM \ud45c\uc2dc\uba85 +label.VMFS.datastore=VMFS \ub370\uc774\ud130 \uc2a4\ud1a0\uc5b4 label.vmfs=VMFS +label.vm.name=VM \uba85 +label.vm.reboot=\uc7ac\uc2dc\uc791 +label.VMs.in.tier=\uacc4\uce35 \ub0b4\ubd80 \uac00\uc0c1\uba38\uc2e0 +label.vmsnapshot.type=\uc885\ub958 +label.vm.start=\uc2dc\uc791 +label.vm.state=VM \uc0c1\ud0dc +label.vm.stop=\uc815\uc9c0 label.vms=VM -label.volume.limits=볼륨 제한 -label.volume.name=볼륨명 -label.volume=볼륨 -label.volumes=볼륨 -label.vsphere.managed=vSphere 관리 -label.waiting=대기하는 중 -label.warn=경고 -label.wednesday=ìˆ˜ìš”ì¼ -label.weekly=매주 -label.welcome.cloud.console=관리 ì½˜ì†”ì— ì˜¤ì‹ ê²ƒì„ í™˜ì˜í•©ë‹ˆë‹¤! -label.welcome=어서 오십시오 -label.yes=예 +label.vmware.traffic.label=VMware \ud2b8\ub798\ud53d \ub77c\ubca8 +label.volgroup=\ubcfc\ub968 \uadf8\ub8f9 +label.volume.limits=\ubcfc\ub968 \uc81c\ud55c +label.volume.name=\ubcfc\ub968\uba85 +label.volumes=\ubcfc\ub968 +label.volume=\ubcfc\ub968 +label.vpc.id=VPC ID +label.VPC.router.details=VPC \ub77c\uc6b0\ud130 \uc0c1\uc138 +label.vpc=VPC +label.VPN.connection=VPN \uc811\uc18d +label.vpn.customer.gateway=VPN \uace0\uac1d \uac8c\uc774\ud2b8\uc6e8\uc774 +label.VPN.customer.gateway=VPN \uace0\uac1d \uac8c\uc774\ud2b8\uc6e8\uc774 +label.VPN.gateway=VPN \uac8c\uc774\ud2b8\uc6e8\uc774 +label.vpn=\uac00\uc0c1 \uc0ac\uc124\ub9dd(VPN) +label.vsmctrlvlanid=\uc81c\uc5b4 VLAN ID +label.vsmpktvlanid=\ud328\ud0b7 VLAN ID +label.vsmstoragevlanid=\uc2a4\ud1a0\ub9ac\uc9c0 VLAN ID +label.vsphere.managed=vSphere \uad00\ub9ac +label.waiting=\ub300\uae30\ud558\ub294 \uc911 +label.warn=\uacbd\uace0 +label.wednesday=\uc218\uc694\uc77c +label.weekly=\ub9e4\uc8fc +label.welcome.cloud.console=\uad00\ub9ac \ucf58\uc194\uc5d0 \uc624\uc2e0\uac83\uc744 \ud658\uc601\ud569\ub2c8\ub2e4\! +label.welcome=\uc5b4\uc11c \uc624\uc2ed\uc2dc\uc624 +label.what.is.cloudstack=CloudStack\u2122 \uc815\ubcf4 +label.xen.traffic.label=XenServer \ud2b8\ub798\ud53d \ub77c\ubca8 +label.yes=\uc608 +label.zone.details=Zone \uc0c1\uc138 label.zone.id=Zone ID -label.zone.step.1.title=단계 1. ë„¤íŠ¸ì›Œí¬ ì„ íƒ -label.zone.step.2.title=단계 2. Zone 추가 -label.zone.step.3.title=단계 3. Pod 추가 -label.zone.step.4.title=단계 4. IP 주소 범위 추가 -label.zone.wide=Zone ì „ì²´ +label.zone.name=Zone \uc774\ub984 +label.zone.step.1.title=\ub2e8\uacc4 1. \ub124\ud2b8\uc6cc\ud06c \uc120\ud0dd +label.zone.step.2.title=\ub2e8\uacc4 2. Zone \ucd94\uac00 +label.zone.step.3.title=\ub2e8\uacc4 3. Pod \ucd94\uac00 +label.zone.step.4.title=\ub2e8\uacc4 4. IP \uc8fc\uc18c \ubc94\uc704 \ucd94\uac00 +label.zones=Zone +label.zone.type=Zone \uc885\ub958 +label.zone.wide=Zone \uc804\uccb4 label.zone=Zone - -#Messages -message.acquire.public.ip=새로운 IP 주소를 ì·¨ë“하는 Zoneì„ ì„ íƒí•´ 주십시오. -message.action.cancel.maintenance.mode=현재 유지 보수를 취소하시겠습니까? -message.action.cancel.maintenance=호스트 유지 보수는 ì •ìƒì ìœ¼ë¡œ 취소ë˜ì—ˆìŠµë‹ˆë‹¤. 처리ì—는 몇 ë¶„ ì •ë„ ê±¸ë¦´ 수 있습니다. -message.action.delete.ISO.for.all.zones=ì´ ISO는 모든 Zoneì—서 사용하고 있습니다. 모든 Zoneì—서 삭제하시겠습니까? -message.action.delete.ISO=현재 ISO를 삭제하시겠습니까? -message.action.delete.cluster=현재 í´ëŸ¬ìŠ¤í„°ë¥¼ 삭제하시겠습니까? -message.action.delete.disk.offering=현재 디스í¬ì œê³µì„ 삭제하시겠습니까? -message.action.delete.domain=현재 ë„ë©”ì¸ì„ 삭제하시겠습니까? -message.action.delete.external.firewall=현재 외부 방화벽(fire wall)를 삭제하시겠습니까? 경고: ê°™ì€ ì™¸ë¶€ 방화벽(fire wall)를 다시 추가할 경우는 기기 사용 ìƒí™© ë°ì´í„°ë¥¼ 재설정해야 합니다. -message.action.delete.external.load.balancer=현재 외부 ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 장치를 삭제하시겠습니까? 경고: ê°™ì€ ì™¸ë¶€ ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 장치를 다시 추가할 경우는 기기 사용 ìƒí™© ë°ì´í„°ë¥¼ 재설정해야 합니다. -message.action.delete.ingress.rule=현재 수신 ê·œì¹™ì„ ì‚­ì œí•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.action.delete.network=현재 네트워í¬ë¥¼ 삭제하시겠습니까? -message.action.delete.pod=현재 Pod를 삭제하시겠습니까? -message.action.delete.primary.storage=현재 기본 스토리지를 삭제하시겠습니까? -message.action.delete.secondary.storage=현재 2ì°¨ 스토리지를 삭제하시겠습니까? -message.action.delete.security.group=현재 보안 ê·¸ë£¹ì„ ì‚­ì œí•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.action.delete.service.offering=현재 ì„œë¹„ìŠ¤ì œê³µì„ ì‚­ì œí•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.action.delete.snapshot=현재 ìŠ¤ëƒ…ìƒ·ì„ ì‚­ì œí•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.action.delete.template.for.all.zones=ê·¸ í…œí”Œë¦¿ì€ ëª¨ë“  Zoneì—서 사용ë˜ì–´ 있습니다. 모든 Zoneì—서 삭제하시겠습니까? -message.action.delete.template=현재 í…œí”Œë¦¿ì„ ì‚­ì œí•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.action.delete.volume=현재 ë³¼ë¥¨ì„ ì‚­ì œí•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.action.delete.zone=현재 Zoneì„ ì‚­ì œí•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.action.destroy.instance=현재 ì¸ìŠ¤í„´ìŠ¤ë¥¼ 파기하시겠습니까? -message.action.destroy.systemvm=현재 시스템 VM를 파기하시겠습니까? -message.action.disable.static.NAT=ì •ì  NAT를 사용 안 함으로 설정하시겠습니까? -message.action.enable.maintenance=호스트를 유지 보수할 준비를 í•  수 있었습니다. ì´ í˜¸ìŠ¤íŠ¸ìƒ VM ìˆ˜ì— ë”°ë¼ì„œ ì²˜ë¦¬ì— ëª‡ ë¶„ ì´ìƒ 걸릴 ê°€ëŠ¥ì„±ì´ ìžˆìŠµë‹ˆë‹¤. -message.action.force.reconnect=호스트는 ê°•ì œì ìœ¼ë¡œ 재접ì†í–ˆìŠµë‹ˆë‹¤. ì´ ì²˜ë¦¬ì—는 몇 ë¶„ ì´ìƒ 걸릴 ê°€ëŠ¥ì„±ì´ ìžˆìŠµë‹ˆë‹¤ -message.action.host.enable.maintenance.mode=유지 보수 모드를 사용 하면, ì´ í˜¸ìŠ¤íŠ¸ë¡œ 실행 ì¤‘ì¸ ëª¨ë“  ì¸ìŠ¤í„´ìŠ¤ë¥¼ 다른 사용가능 호스트ì—게 실시간 ì´ì „ë©ë‹ˆë‹¤. -message.action.instance.reset.password=현재 ê°€ìƒ ë¨¸ì‹  루트 암호를 변경하시겠습니까? -message.action.primarystorage.enable.maintenance.mode=경고: 기본 스토리지를 유지 보수 모드로 하면 ê·¸ ìŠ¤í† ë¦¬ì§€ìƒ ë³¼ë¥¨ì„ ì‚¬ìš©í•˜ëŠ” 모든 VMê°€ 정지합니다. 실행하시겠습니까? -message.action.reboot.instance=현재 ì¸ìŠ¤í„´ìŠ¤ë¥¼ 재시작하시겠습니까? -message.action.reboot.systemvm=현재 시스템 VMì„ ìž¬ì‹œìž‘í•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.action.release.ip=현재 IP 주소를 해제하시겠습니까? -message.action.restore.instance=현재 ì¸ìŠ¤í„´ìŠ¤ë¥¼ ë³µì›í•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.action.start.instance=현재 ì¸ìŠ¤í„´ìŠ¤ë¥¼ 시작하시겠습니까? -message.action.start.router=현재 ë¼ìš°í„°ë¥¼ 시작하시겠습니까? -message.action.start.systemvm=현재 시스템 VMì„ ì‹œìž‘í•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.action.stop.instance=현재 ì¸ìŠ¤í„´ìŠ¤ë¥¼ 정지하시겠습니까? -message.action.stop.systemvm=현재 시스템 VMì„ ì •ì§€í•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.action.take.snapshot=현재 볼륨 ìŠ¤ëƒ…ìƒ·ì„ ë§Œë“œì‹œê² ìŠµë‹ˆê¹Œ? -message.add.cluster.zone=Zone ì— í•˜ì´í¼ ë°”ì´ì €ë¡œ 관리ë˜ëŠ” í´ëŸ¬ìŠ¤í„°ë¥¼ 추가합니다. -message.add.cluster=Zone Pod ì— í•˜ì´í¼ ë°”ì´ì €ë¡œ 관리ë˜ëŠ” í´ëŸ¬ìŠ¤í„°ë¥¼ 추가합니다. -message.add.disk.offering=새로운 ë””ìŠ¤í¬ ì œê³µì„ ì¶”ê°€í•˜ê¸° 위해 ë‹¤ìŒ íŒŒë¼ë¯¸í„°ë¥¼ 지정해 주십시오. -message.add.firewall=Zoneì— ë°©í™”ë²½(fire wall)ì„ ì¶”ê°€í•©ë‹ˆë‹¤. -message.add.host=새로운 호스트를 추가하기 위해 아래 파ë¼ë¯¸í„°ë¥¼ 지정해 주십시오. -message.add.ip.range.direct.network=Zone ì§ì ‘ ë„¤íŠ¸ì›Œí¬ ì— IP 주소 범위를 추가합니다 -message.add.ip.range.to.pod=

    Pod ì— IP 주소 범위를 추가합니다.

    -message.add.ip.range=Zone 공개 네트워í¬ì— IP 주소 범위를 추가합니다. -message.add.load.balancer=Zoneì— ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 장치를 추가합니다. -message.add.network=Zone ì— ìƒˆë¡œìš´ 네트워í¬ë¥¼ 추가합니다. -message.add.pod=Zone ì— ìƒˆë¡œìš´ Pod를 추가합니다. -message.add.primary.storage=Zone Pod ì— ìƒˆë¡œìš´ 기본 스토리지를 추가합니다. -message.add.primary=새로운 기본 스토리지를 추가하기 위해 아래 파ë¼ë¯¸í„°ë¥¼ 지정해 주십시오. -message.add.secondary.storage=Zone ì— ìƒˆë¡œìš´ 스토리지를 추가합니다 -message.add.service.offering=새로운 컴퓨팅 ìžì› ì œê³µì„ ì¶”ê°€í•˜ê¸° 위해서, ë‹¤ìŒ ë°ì´í„°ë¥¼ 입력해 주십시오. -message.add.template=새로운 í…œí”Œë¦¿ì„ ë§Œë“¤ê¸°í•˜ê¸° 위해 아래 ë°ì´í„°ë¥¼ 입력해 주십시오. -message.add.volume=새로운 ë³¼ë¥¨ì„ ì¶”ê°€í•˜ê¸° 위해 아래 ë°ì´í„°ë¥¼ 입력해 주십시오. -message.additional.networks.desc=ê°€ìƒ ì¸ìŠ¤í„´ìŠ¤ê°€ ì ‘ì†í•˜ëŠ” 추가 네트워í¬ë¥¼ ì„ íƒí•´ 주십시오. -message.advanced.mode.desc=VLAN 기술 ì§€ì›ë¥¼ 사용 하는 경우는 ì´ ë„¤íŠ¸ì›Œí¬ ëª¨ë¸ì„ ì„ íƒí•´ 주십시오.ì´ ëª¨ë¸ì—서는 가장 유연하게 카스íƒë„¤íŠ¸ì›Œí¬ ì œê³µì„ ì œê³µí•  수 있어 방화벽(fire wall), VPN, ë„¤íŠ¸ì›Œí¬ ë¡œë“œ 공유 장치 기술 ì§€ì› ì™¸ì—, ì§ì ‘ 네트워í¬ì™€ ê°€ìƒ ë„¤íŠ¸ì›Œí¬ë„ 사용 í•  수 있습니다. -message.advanced.security.group=게스트 VM를 분리하기 위해서 보안 ê·¸ë£¹ì„ ì‚¬ìš©í•˜ëŠ” 경우는 ì´ ì˜µì…˜ì„ ì„ íƒí•´ 주십시오. -message.advanced.virtual=게스트 VM를 분리하기 위해서 ì¡´ ì „ì²´ VLAN를 사용하는 경우는 ì´ ì˜µì…˜ì„ ì„ íƒí•´ 주십시오. -message.allow.vpn.access=VPN 접근를 허가하는 ì‚¬ìš©ìž ì‚¬ìš©ìžëª…ê³¼ 암호를 입력해 주십시오. -message.attach.iso.confirm=현재 ê°€ìƒ ì¸ìŠ¤í„´ìŠ¤ì— ISO 파ì¼ì„ ì—°ê²° 하시겠습니까? -message.attach.volume=새로운 ë³¼ë¥¨ì„ ì—°ê²° 하기 위해 아래 ë°ì´í„°ë¥¼ 입력해 주십시오.Windows ë² ì´ìФ ê°€ìƒ ë¨¸ì‹ ì— ë””ìŠ¤í¬ ë³¼ë¥¨ì„ ì—°ê²° 하는 경우는 ì—°ê²° 한 디스í¬ë¥¼ ì¸ì‹í•˜ê¸° 위해서 ì¸ìŠ¤í„´ìŠ¤ë¥¼ 재시작할 필요가 있습니다. -message.basic.mode.desc=VLAN 기술 ì§€ì›ê°€ë¶ˆí•„요한경우는 ì´ ë„¤íŠ¸ì›Œí¬ ëª¨ë¸ì„ ì„ íƒí•´ 주십시오.ì´ ë„¤íŠ¸ì›Œí¬ ëª¨ë¸ë¡œ 만들기ë˜ëŠ” 모든 ê°€ìƒ ì¸ìŠ¤í„´ìŠ¤ì— ë„¤íŠ¸ì›Œí¬ì—서 ì§ì ‘ IP 주소를 할당할 수 있어 보안 ê·¸ë£¹ì„ ì‚¬ìš©í•´ 보안와 분리가 제공ë©ë‹ˆë‹¤. -message.change.offering.confirm=현재 ê°€ìƒ ì¸ìŠ¤í„´ìŠ¤ ì„œë¹„ìŠ¤ì œê³µì„ ë³€ê²½í•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.copy.iso.confirm=ISO를 ë‹¤ìŒ ìž¥ì†Œì— ë³µì‚¬í•˜ì‹œê² ìŠµë‹ˆê¹Œ? -message.copy.template=ì¡´ 으ì—서 템플릿 XXX를 ë‹¤ìŒ ìž¥ì†Œì— ë³µì‚¬í•©ë‹ˆë‹¤: -message.create.template.vm=템플릿 으ì—서 VM를 만들었습니다. -message.create.template.volume=ë””ìŠ¤í¬ ë³¼ë¥¨ í…œí”Œë¦¿ì„ ë§Œë“¤ê¸°í•˜ê¸° ì „ì—, ë‹¤ìŒ ì •ë³´ë¥¼ 지정해 주십시오.볼륨 í¬ê¸°ì— ë”°ë¼ì„œëŠ” 템플릿 만들기ì—는 몇분 ì´ìƒ 걸릴 ê°€ëŠ¥ì„±ì´ ìžˆìŠµë‹ˆë‹¤. -message.delete.account=현재 계정 정보를 삭제하시겠습니까? -message.detach.iso.confirm=현재 ê°€ìƒ ì¸ìŠ¤í„´ìŠ¤ì—서 ISO 파ì¼ì„ 분리 하시겠습니까? -message.disable.account=현재 계정 정보를 사용 안 함으로 하시겠습니까?ì´ ê³„ì • ì •ë³´ 모든 사용ìžê°€ í´ë¼ìš°ë“œ ìžì›ì— ì ‘ê·¼ í•  수 없게 ë©ë‹ˆë‹¤. 실행중 모든 ê°€ìƒ ë¨¸ì‹ ì€ ê¸ˆë°©ì— ì¢…ë£Œ ë©ë‹ˆë‹¤. -message.disable.vpn.access=VPN 접근를 사용 안 함으로 하시겠습니까? -message.download.ISO=ISO를 다운로드하려면 00000ì„ í´ë¦­í•©ë‹ˆë‹¤. -message.download.template=í…œí”Œë¦¿ì„ ë‹¤ìš´ë¡œë“œí•˜ë ¤ë©´ 00000ì„ í´ë¦­í•©ë‹ˆë‹¤. -message.download.volume=ë³¼ë¥¨ì„ ë‹¤ìš´ë¡œë“œí•˜ë ¤ë©´ 00000ì„ í´ë¦­í•©ë‹ˆë‹¤. -message.edit.confirm=[저장]ì„ í´ë¦­í•˜ê¸° 전으로 변경 ë‚´ìš©ì„ í™•ì¸í•´ 주십시오. -message.edit.limits=ë‹¤ìŒ ìžì›ì— ì œí•œì„ ì§€ì •í•´ 주십시오.「-1ã€ì€ ìžì› ë§Œë“¤ê¸°ì— ì œí•œì´ ì—†ë‹¤ëŠ” ì˜ë¯¸ìž…니다. -message.enable.account=현재 계정 정보를 사용 하시겠습니까? -message.enable.vpn.access=í˜„ìž¬ì´ IP ì£¼ì†Œì— ëŒ€í•œ VPN는 유효하지 않ì€ìž…니다. VPN 접근를 사용 하시겠습니까? -message.enabled.vpn.ip.sec=IPSec 사전 공유 키: -message.enabled.vpn=현재 VPN ì ‘ê·¼ 사용 설정ë˜ì–´ 있습니다. ë‹¤ìŒ IP 주소 경유로 ì ‘ê·¼ í•  수 있습니다. -message.launch.vm.on.private.network=ì‚¬ì  ì „ìš© 네트워í¬ë¡œ ì¸ìŠ¤í„´ìŠ¤ë¥¼ 시작합니까? -message.lock.account=현재 계정 정보를 ìž ê·¸ì–´ë„ ì¢‹ìŠµë‹ˆê¹Œ? ì´ ê³„ì • ì •ë³´ 모든 사용ìžê°€ í´ë¼ìš°ë“œ ìžì›ì„ 관리할 수 없게 ë©ë‹ˆë‹¤. ê·¸ í›„ë„ ê¸°ì¡´ Zone ìžì›ì—는 ì ‘ê·¼ í•  수 있습니다. -message.migrate.instance.confirm=ê°€ìƒ ì¸ìŠ¤í„´ìŠ¤ ì´ì „ 위치는 ë‹¤ìŒ í˜¸ìŠ¤íŠ¸ë¡œ 하시겠습니까? -message.new.user=계정 ì •ë³´ì— ìƒˆë¡œìš´ 사용ìžë¥¼ 추가하기 위해 아래 정보를 지정해 주십시오. -message.no.network.support.configuration.not.true=보안 ê·¸ë£¹ì´ ìœ íš¨í•œ Zoneì´ ì—†ê¸° ë•Œë¬¸ì— ì¶”ê°€ ë„¤íŠ¸ì›Œí¬ ê¸°ëŠ¥ì€ ì—†ìŠµë‹ˆë‹¤. 단계 5로 진행해 주십시오. -message.no.network.support=하ì´í¼ ë°”ì´ì €ë¡œì„œ vSphere를 ì„ íƒí–ˆìœ¼ë‚˜ ì´ í•˜ì´í¼ ë°”ì´ì €ì— 추가 ë„¤íŠ¸ì›Œí¬ ê¸°ëŠ¥ì€ ì—†ìŠµë‹ˆë‹¤. 단계 5로 진행해 주십시오. -message.number.clusters=

    í´ëŸ¬ìŠ¤í„°ìˆ˜

    -message.number.hosts=

    호스트수

    -message.number.pods=

    Pod수

    -message.number.storage=

    기본 스토리지 볼륨수

    -message.number.zones=

    Zone수

    -message.remove.vpn.access=ë‹¤ìŒ ì‚¬ìš©ìžì—서 VPN 접근를 삭제하시겠습니까? -message.restart.mgmt.server=새로운 ì„¤ì •ì„ ì‚¬ìš© 하기 위해 관리 서버를 재시작해 주십시오. -message.restart.mgmt.usage.server=새로운 ì„¤ì •ì„ ì‚¬ìš© 하기 위해 관리 서버와 사용 ìƒí™© 측정 서버를 재시작해 주십시오. -message.security.group.usage=(해당하는 보안 ê·¸ë£¹ì„ ëª¨ë‘ ì„ íƒí•˜ë ¤ë©´ Ctrl 키를 누르면서 í´ë¦­í•´ 주십시오) -message.snapshot.schedule=ë‹¤ìŒ ì˜µì…˜ì—서 ì„ íƒí•œ ì •ì±… 기본 ì„¤ì •ì„ ì ìš©í•˜ì—¬ 정기 스냅샷 ìŠ¤ì¼€ì¤„ì„ ì„¤ì • í•  수 있습니다. -message.step.1.continue=실행하려면 템플릿 ë˜ëŠ” ISO를 ì„ íƒí•´ 주십시오. -message.step.1.desc=새로운 ê°€ìƒ ì¸ìŠ¤í„´ìŠ¤ìš© í…œí”Œë¦¿ì„ ì„ íƒí•´ 주십시오.ISO를 설치 í•  수 있는 공백 í…œí”Œë¦¿ì„ ì„ íƒí•  ìˆ˜ë„ ìžˆìŠµë‹ˆë‹¤. -message.step.2.continue=실행하려면 ì„œë¹„ìŠ¤ì œê³µì„ ì„ íƒí•´ 주십시오. +managed.state=\uad00\ub9ac \ub300\uc0c1 \uc0c1\ud0dc +message.acquire.new.ip=\ud604\uc7ac \ub124\ud2b8\uc6cc\ud06c\uac00 \uc0c8\ub85c\uc6b4 IP \uc8fc\uc18c\ub97c \ucde8\ub4dd\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.acquire.public.ip=\uc0c8\ub85c\uc6b4 IP \uc8fc\uc18c\ub97c \ucde8\ub4dd\ud558\ub294 Zone\uc744 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.action.cancel.maintenance.mode=\ud604\uc7ac \uc720\uc9c0 \ubcf4\uc218\ub97c \ucde8\uc18c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.cancel.maintenance=\ud638\uc2a4\ud2b8 \uc720\uc9c0 \ubcf4\uc218\ub294 \uc815\uc0c1\uc801\uc73c\ub85c \ucde8\uc18c\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \ucc98\ub9ac\uc5d0\ub294 \uba87 \ubd84 \uc815\ub3c4 \uac78\ub9b4 \uc218 \uc788\uc2b5\ub2c8\ub2e4. +message.action.change.service.warning.for.instance=\ud604\uc7ac \uc11c\ube44\uc2a4 \uc81c\uacf5\uc744 \ubcc0\uacbd\ud558\uae30 \uc804\uc5d0 \uc778\uc2a4\ud134\uc2a4\ub97c \uc815\uc9c0\ud574\uc57c \ud569\ub2c8\ub2e4. +message.action.change.service.warning.for.router=\ud604\uc7ac \uc11c\ube44\uc2a4 \uc81c\uacf5\uc744 \ubcc0\uacbd\ud558\uae30 \uc804\uc5d0 \ub77c\uc6b0\ud130\ub97c \uc815\uc9c0\ud574\uc57c \ud569\ub2c8\ub2e4. +message.action.delete.cluster=\ud604\uc7ac \ud074\ub7ec\uc2a4\ud130\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.disk.offering=\ud604\uc7ac \ub514\uc2a4\ud06c\uc81c\uacf5\uc744 \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.domain=\ud604\uc7ac \ub3c4\uba54\uc778\uc744 \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.external.firewall=\ud604\uc7ac \uc678\ubd80 \ubc29\ud654\ubcbd(fire wall)\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? \uacbd\uace0\: \uac19\uc740 \uc678\ubd80 \ubc29\ud654\ubcbd(fire wall)\ub97c \ub2e4\uc2dc \ucd94\uac00\ud560 \uacbd\uc6b0\ub294 \uae30\uae30 \uc0ac\uc6a9 \uc0c1\ud669 \ub370\uc774\ud130\ub97c \uc7ac\uc124\uc815\ud574\uc57c \ud569\ub2c8\ub2e4. +message.action.delete.external.load.balancer=\ud604\uc7ac \uc678\ubd80 \ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uc7a5\uce58\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? \uacbd\uace0\: \uac19\uc740 \uc678\ubd80 \ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uc7a5\uce58\ub97c \ub2e4\uc2dc \ucd94\uac00\ud560 \uacbd\uc6b0\ub294 \uae30\uae30 \uc0ac\uc6a9 \uc0c1\ud669 \ub370\uc774\ud130\ub97c \uc7ac\uc124\uc815\ud574\uc57c \ud569\ub2c8\ub2e4. +message.action.delete.ingress.rule=\ud604\uc7ac \uc218\uc2e0 \uaddc\uce59\uc744 \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.ISO.for.all.zones=\uc774 ISO\ub294 \ubaa8\ub4e0 Zone\uc5d0\uc11c \uc0ac\uc6a9\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \ubaa8\ub4e0 Zone\uc5d0\uc11c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.ISO=\ud604\uc7ac ISO\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.network=\ud604\uc7ac \ub124\ud2b8\uc6cc\ud06c\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.nexusVswitch=\ud604\uc7ac Nexus 1000V\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.physical.network=\ud604\uc7ac \ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.pod=\ud604\uc7ac Pod\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.primary.storage=\ud604\uc7ac \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.secondary.storage=\ud604\uc7ac 2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.security.group=\ud604\uc7ac \ubcf4\uc548 \uadf8\ub8f9\uc744 \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.service.offering=\ud604\uc7ac \uc11c\ube44\uc2a4\uc81c\uacf5\uc744 \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.snapshot=\ud604\uc7ac \uc2a4\ub0c5\uc0f7\uc744 \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.system.service.offering=\ud604\uc7ac \uc2dc\uc2a4\ud15c \uc11c\ube44\uc2a4 \uc81c\uacf5\uc744 \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.template.for.all.zones=\uadf8 \ud15c\ud50c\ub9bf\uc740 \ubaa8\ub4e0 Zone\uc5d0\uc11c \uc0ac\uc6a9\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4. \ubaa8\ub4e0 Zone\uc5d0\uc11c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.template=\ud604\uc7ac \ud15c\ud50c\ub9bf\uc744 \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.volume=\ud604\uc7ac \ubcfc\ub968\uc744 \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.delete.zone=\ud604\uc7ac Zone\uc744 \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.destroy.instance=\ud604\uc7ac \uc778\uc2a4\ud134\uc2a4\ub97c \ud30c\uae30\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.destroy.systemvm=\ud604\uc7ac \uc2dc\uc2a4\ud15c VM\ub97c \ud30c\uae30\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.disable.cluster=\ud604\uc7ac \ud074\ub7ec\uc2a4\ud130\ub97c \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.disable.nexusVswitch=\ud604\uc7ac Nexus 1000V\ub97c \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.disable.physical.network=\ud604\uc7ac \ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c\ub97c \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.disable.pod=\ud604\uc7ac Pod\ub97c \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.disable.static.NAT=\uc815\uc801 NAT\ub97c \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \uc124\uc815\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.disable.zone=\ud604\uc7ac Zone\uc744 \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.download.iso=\ud604\uc7ac ISO\ub97c \ub2e4\uc6b4\ub85c\ub4dc\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.download.template=\ud604\uc7ac \ud15c\ud50c\ub9bf\uc744 \ub2e4\uc6b4\ub85c\ub4dc\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.enable.cluster=\ud604\uc7ac \ud074\ub7ec\uc2a4\ud130\ub97c \uc0ac\uc6a9 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.enable.maintenance=\ud638\uc2a4\ud2b8\ub97c \uc720\uc9c0 \ubcf4\uc218\ud560 \uc900\ube44\ub97c \ud560 \uc218 \uc788\uc5c8\uc2b5\ub2c8\ub2e4. \uc774 \ud638\uc2a4\ud2b8\uc0c1 VM \uc218\uc5d0 \ub530\ub77c\uc11c \ucc98\ub9ac\uc5d0 \uba87 \ubd84 \uc774\uc0c1 \uac78\ub9b4 \uac00\ub2a5\uc131\uc774 \uc788\uc2b5\ub2c8\ub2e4. +message.action.enable.nexusVswitch=\ud604\uc7ac Nexus 1000V\ub97c \uc0ac\uc6a9 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.enable.physical.network=\ud604\uc7ac \ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c\ub97c \uc0ac\uc6a9\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.enable.pod=\ud604\uc7ac Pod\ub97c \uc0ac\uc6a9 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.enable.zone=\ud604\uc7ac Zone\uc744 \uc0ac\uc6a9 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.force.reconnect=\ud638\uc2a4\ud2b8\ub294 \uac15\uc81c\uc801\uc73c\ub85c \uc7ac\uc811\uc18d\ud588\uc2b5\ub2c8\ub2e4. \uc774 \ucc98\ub9ac\uc5d0\ub294 \uba87 \ubd84 \uc774\uc0c1 \uac78\ub9b4 \uac00\ub2a5\uc131\uc774 \uc788\uc2b5\ub2c8\ub2e4 +message.action.host.enable.maintenance.mode=\uc720\uc9c0 \ubcf4\uc218 \ubaa8\ub4dc\ub97c \uc0ac\uc6a9 \ud558\uba74, \uc774 \ud638\uc2a4\ud2b8\ub85c \uc2e4\ud589 \uc911\uc778 \ubaa8\ub4e0 \uc778\uc2a4\ud134\uc2a4\ub97c \ub2e4\ub978 \uc0ac\uc6a9\uac00\ub2a5 \ud638\uc2a4\ud2b8\uc5d0\uac8c \uc2e4\uc2dc\uac04 \uc774\uc804\ub429\ub2c8\ub2e4. +message.action.instance.reset.password=\ud604\uc7ac \uac00\uc0c1 \uba38\uc2e0 \ub8e8\ud2b8 \uc554\ud638\ub97c \ubcc0\uacbd\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.manage.cluster=\ud074\ub7ec\uc2a4\ud130\ub97c \uad00\ub9ac \ub300\uc0c1\uc73c\ub85c \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.primarystorage.enable.maintenance.mode=\uacbd\uace0\: \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \uc720\uc9c0 \ubcf4\uc218 \ubaa8\ub4dc\ub85c \ud558\uba74 \uadf8 \uc2a4\ud1a0\ub9ac\uc9c0\uc0c1 \ubcfc\ub968\uc744 \uc0ac\uc6a9\ud558\ub294 \ubaa8\ub4e0 VM\uac00 \uc815\uc9c0\ud569\ub2c8\ub2e4. \uc2e4\ud589\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.reboot.instance=\ud604\uc7ac \uc778\uc2a4\ud134\uc2a4\ub97c \uc7ac\uc2dc\uc791\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.reboot.router=\ud604\uc7ac \uac00\uc0c1 \ub77c\uc6b0\ud130\ub85c \uc81c\uacf5\ud558\ub294 \ubaa8\ub4e0 \uc11c\ube44\uc2a4\uac00 \uc911\ub2e8\ub429\ub2c8\ub2e4. \uc774 \ub77c\uc6b0\ud130\ub97c \uc7ac\uc2dc\uc791\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.reboot.systemvm=\ud604\uc7ac \uc2dc\uc2a4\ud15c VM\uc744 \uc7ac\uc2dc\uc791\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.release.ip=\ud604\uc7ac IP \uc8fc\uc18c\ub97c \ud574\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.remove.host=\ud604\uc7ac \ud638\uc2a4\ud2b8\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.reset.password.off=\uc778\uc2a4\ud134\uc2a4\ub294 \ud604\uc7ac \uae30\ub2a5\uc744 \uc9c0\uc6d0 \ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. +message.action.reset.password.warning=\ud604\uc7ac \uc554\ud638\ub97c \ubcc0\uacbd\ud558\uae30 \uc804\uc5d0 \uc778\uc2a4\ud134\uc2a4\ub97c \uc815\uc9c0\ud574\uc57c \ud569\ub2c8\ub2e4. +message.action.restore.instance=\ud604\uc7ac \uc778\uc2a4\ud134\uc2a4\ub97c \ubcf5\uc6d0\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.start.instance=\ud604\uc7ac \uc778\uc2a4\ud134\uc2a4\ub97c \uc2dc\uc791\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.start.router=\ud604\uc7ac \ub77c\uc6b0\ud130\ub97c \uc2dc\uc791\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.start.systemvm=\ud604\uc7ac \uc2dc\uc2a4\ud15c VM\uc744 \uc2dc\uc791\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.stop.instance=\ud604\uc7ac \uc778\uc2a4\ud134\uc2a4\ub97c \uc815\uc9c0\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.stop.router=\ud604\uc7ac \uac00\uc0c1 \ub77c\uc6b0\ud130\ub85c \uc81c\uacf5\ud558\ub294 \ubaa8\ub4e0 \uc11c\ube44\uc2a4\uac00 \uc911\ub2e8\ub429\ub2c8\ub2e4. \uc774 \ub77c\uc6b0\ud130\ub97c \uc815\uc9c0\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.stop.systemvm=\ud604\uc7ac \uc2dc\uc2a4\ud15c VM\uc744 \uc815\uc9c0\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.take.snapshot=\ud604\uc7ac \ubcfc\ub968 \uc2a4\ub0c5\uc0f7\uc744 \ub9cc\ub4dc\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.action.unmanage.cluster=\ud074\ub7ec\uc2a4\ud130\ub97c \ube44\uad00\ub9ac \ub300\uc0c1\uc73c\ub85c \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.activate.project=\ud604\uc7ac \ud504\ub85c\uc81d\ud2b8\ub97c \ud65c\uc131\ud654 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.add.cluster=Zone Pod \uc5d0 \ud558\uc774\ud37c \ubc14\uc774\uc800\ub85c \uad00\ub9ac\ub418\ub294 \ud074\ub7ec\uc2a4\ud130\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. +message.add.cluster.zone=Zone \uc5d0 \ud558\uc774\ud37c \ubc14\uc774\uc800\ub85c \uad00\ub9ac\ub418\ub294 \ud074\ub7ec\uc2a4\ud130\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. +message.add.disk.offering=\uc0c8\ub85c\uc6b4 \ub514\uc2a4\ud06c \uc81c\uacf5\uc744 \ucd94\uac00\ud558\uae30 \uc704\ud574 \ub2e4\uc74c \ud30c\ub77c\ubbf8\ud130\ub97c \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.add.domain=\ud604\uc7ac \ub3c4\uba54\uc778\uc5d0 \ub9cc\ub4e4\uace0\uc790 \ud558\ub294 \uc11c\ube0c \ub3c4\uba54\uc778\uc744 \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.add.firewall=Zone\uc5d0 \ubc29\ud654\ubcbd(fire wall)\uc744 \ucd94\uac00\ud569\ub2c8\ub2e4. +message.add.guest.network=\uc190\ub2d8 \ub124\ud2b8\uc6cc\ud06c\ub97c \ucd94\uac00\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.add.host=\uc0c8\ub85c\uc6b4 \ud638\uc2a4\ud2b8\ub97c \ucd94\uac00\ud558\uae30 \uc704\ud574 \uc544\ub798 \ud30c\ub77c\ubbf8\ud130\ub97c \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.adding.host=\ud638\uc2a4\ud2b8\ub97c \ucd94\uac00\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4 +message.adding.Netscaler.device=Netscaler \uae30\uae30\ub97c \ucd94\uac00\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4 +message.adding.Netscaler.provider=Netscaler \uc81c\uacf5\uc790\ub97c \ucd94\uac00\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. +message.add.ip.range.direct.network=Zone \uc9c1\uc811 \ub124\ud2b8\uc6cc\ud06c \uc5d0 IP \uc8fc\uc18c \ubc94\uc704\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4 +message.add.ip.range.to.pod=

    Pod \uc5d0 IP \uc8fc\uc18c \ubc94\uc704\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4.

    +message.add.ip.range=Zone \uacf5\uac1c \ub124\ud2b8\uc6cc\ud06c\uc5d0 IP \uc8fc\uc18c \ubc94\uc704\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. +message.additional.networks.desc=\uac00\uc0c1 \uc778\uc2a4\ud134\uc2a4\uac00 \uc811\uc18d\ud558\ub294 \ucd94\uac00 \ub124\ud2b8\uc6cc\ud06c\ub97c \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.add.load.balancer.under.ip=\ub2e4\uc74c IP \uc8fc\uc18c\uc5d0 \ub300\ud574\uc11c \ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uaddc\uce59\uc744 \ucd94\uac00\ud569\ub2c8\ub2e4\: +message.add.load.balancer=Zone\uc5d0 \ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uc7a5\uce58\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. +message.add.network=Zone \uc5d0 \uc0c8\ub85c\uc6b4 \ub124\ud2b8\uc6cc\ud06c\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. +message.add.new.gateway.to.vpc=\ud604\uc7ac VPC\uc5d0 \uc0c8\ub85c\uc6b4 \uac8c\uc774\ud2b8\uc6e8\uc774\ub97c \ucd94\uac00\ud558\uae30 \uc704\ud55c \uc815\ubcf4\ub97c \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.add.pod.during.zone.creation=\uac01 Zone\uc5d0\ub294 \ud55c \uac1c \uc774\uc0c1 Pod\uac00 \ud544\uc694\ud569\ub2c8\ub2e4. \uc9c0\uae08 \uc5ec\uae30\uc11c \uccab\ubc88\uc9f8 Pod\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. Pod\ub294 \ud638\uc2a4\ud2b8\uc640 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \uc11c\ubc84\uc5d0\uc11c \uad6c\uc131\ud569\ub2c8\ub2e4\ub9cc \uc774\ub294 \ub2e4\uc74c \uc21c\uc11c\ub85c \ucd94\uac00\ud569\ub2c8\ub2e4. \ub9e8 \ucc98\uc74c CloudStack \ub0b4\ubd80 \uad00\ub9ac \ud2b8\ub798\ud53d\uc744 \uc704\ud574\uc11c IP \uc8fc\uc18c \ubc94\uc704\ub97c \uc608\uc57d\ud569\ub2c8\ub2e4. IP \uc8fc\uc18c \ubc94\uc704\ub294 \ud074\ub77c\uc6b0\ub4dc \ub0b4\ubd80 \uac01 Zone\uc5d0\uc11c \uc911\ubcf5 \ud558\uc9c0 \uc54a\uac8c \uc608\uc57d\ud560 \ud544\uc694\uac00 \uc788\uc2b5\ub2c8\ub2e4. +message.add.pod=Zone \uc5d0 \uc0c8\ub85c\uc6b4 Pod\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. +message.add.primary.storage=Zone Pod \uc5d0 \uc0c8\ub85c\uc6b4 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. +message.add.primary=\uc0c8\ub85c\uc6b4 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \ucd94\uac00\ud558\uae30 \uc704\ud574 \uc544\ub798 \ud30c\ub77c\ubbf8\ud130\ub97c \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.add.secondary.storage=Zone \uc5d0 \uc0c8\ub85c\uc6b4 \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4 +message.add.service.offering=\uc0c8\ub85c\uc6b4 \ucef4\ud4e8\ud305 \uc790\uc6d0 \uc81c\uacf5\uc744 \ucd94\uac00\ud558\uae30 \uc704\ud574\uc11c, \ub2e4\uc74c \ub370\uc774\ud130\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.add.system.service.offering=\uc0c8\ub85c\uc6b4 \uc2dc\uc2a4\ud15c \uc11c\ube44\uc2a4 \uc81c\uacf5\uc744 \ucd94\uac00\ud558\uae30 \uc704\ud574 \ub2e4\uc74c \ub370\uc774\ud130\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.add.template=\uc0c8\ub85c\uc6b4 \ud15c\ud50c\ub9bf\uc744 \ub9cc\ub4e4\uae30\ud558\uae30 \uc704\ud574 \uc544\ub798 \ub370\uc774\ud130\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.add.volume=\uc0c8\ub85c\uc6b4 \ubcfc\ub968\uc744 \ucd94\uac00\ud558\uae30 \uc704\ud574 \uc544\ub798 \ub370\uc774\ud130\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.add.VPN.gateway=VPN \uac8c\uc774\ud2b8\uc6e8\uc774\ub97c \ucd94\uac00\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.advanced.mode.desc=VLAN \uae30\uc220 \uc9c0\uc6d0\ub97c \uc0ac\uc6a9 \ud558\ub294 \uacbd\uc6b0\ub294 \uc774 \ub124\ud2b8\uc6cc\ud06c \ubaa8\ub378\uc744 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624.\uc774 \ubaa8\ub378\uc5d0\uc11c\ub294 \uac00\uc7a5 \uc720\uc5f0\ud558\uac8c \uce74\uc2a4\ud0d0\ub124\ud2b8\uc6cc\ud06c \uc81c\uacf5\uc744 \uc81c\uacf5\ud560 \uc218 \uc788\uc5b4 \ubc29\ud654\ubcbd(fire wall), VPN, \ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uc7a5\uce58 \uae30\uc220 \uc9c0\uc6d0 \uc678\uc5d0, \uc9c1\uc811 \ub124\ud2b8\uc6cc\ud06c\uc640 \uac00\uc0c1 \ub124\ud2b8\uc6cc\ud06c\ub3c4 \uc0ac\uc6a9 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. +message.advanced.security.group=\uac8c\uc2a4\ud2b8 VM\ub97c \ubd84\ub9ac\ud558\uae30 \uc704\ud574\uc11c \ubcf4\uc548 \uadf8\ub8f9\uc744 \uc0ac\uc6a9\ud558\ub294 \uacbd\uc6b0\ub294 \uc774 \uc635\uc158\uc744 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.advanced.virtual=\uac8c\uc2a4\ud2b8 VM\ub97c \ubd84\ub9ac\ud558\uae30 \uc704\ud574\uc11c \uc874 \uc804\uccb4 VLAN\ub97c \uc0ac\uc6a9\ud558\ub294 \uacbd\uc6b0\ub294 \uc774 \uc635\uc158\uc744 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.after.enable.swift=Swift\uac00 \uad6c\uc131\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \uc8fc\uc758\:\uc774 \ud398\uc774\uc9c0\ub97c \ub2eb\uc73c\uba74 Swift\ub97c \uc7ac\uad6c\uc131\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +message.alert.state.detected=\uacbd\uacc4\uccb4\uc81c \uc0c1\ud0dc\uac00 \uac10\uc9c0\ub418\uc5c8\uc2b5\ub2c8\ub2e4 +message.allow.vpn.access=VPN \uc811\uadfc\ub97c \ud5c8\uac00\ud558\ub294 \uc0ac\uc6a9\uc790 \uc0ac\uc6a9\uc790\uba85\uacfc \uc554\ud638\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.apply.snapshot.policy=\ud604\uc7ac \uc2a4\ub0c5\uc0f7 \uc815\ucc45\ub97c \uc5c5\ub370\uc774\ud2b8\ud588\uc2b5\ub2c8\ub2e4. +message.attach.iso.confirm=\ud604\uc7ac \uac00\uc0c1 \uc778\uc2a4\ud134\uc2a4\uc5d0 ISO \ud30c\uc77c\uc744 \uc5f0\uacb0 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.attach.volume=\uc0c8\ub85c\uc6b4 \ubcfc\ub968\uc744 \uc5f0\uacb0 \ud558\uae30 \uc704\ud574 \uc544\ub798 \ub370\uc774\ud130\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624.Windows \ubca0\uc774\uc2a4 \uac00\uc0c1 \uba38\uc2e0\uc5d0 \ub514\uc2a4\ud06c \ubcfc\ub968\uc744 \uc5f0\uacb0 \ud558\ub294 \uacbd\uc6b0\ub294 \uc5f0\uacb0 \ud55c \ub514\uc2a4\ud06c\ub97c \uc778\uc2dd\ud558\uae30 \uc704\ud574\uc11c \uc778\uc2a4\ud134\uc2a4\ub97c \uc7ac\uc2dc\uc791\ud560 \ud544\uc694\uac00 \uc788\uc2b5\ub2c8\ub2e4. +message.basic.mode.desc=VLAN \uae30\uc220 \uc9c0\uc6d0\uac00\ubd88\ud544\uc694\ud55c\uacbd\uc6b0\ub294 \uc774 \ub124\ud2b8\uc6cc\ud06c \ubaa8\ub378\uc744 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624.\uc774 \ub124\ud2b8\uc6cc\ud06c \ubaa8\ub378\ub85c \ub9cc\ub4e4\uae30\ub418\ub294 \ubaa8\ub4e0 \uac00\uc0c1 \uc778\uc2a4\ud134\uc2a4\uc5d0 \ub124\ud2b8\uc6cc\ud06c\uc5d0\uc11c \uc9c1\uc811 IP \uc8fc\uc18c\ub97c \ud560\ub2f9\ud560 \uc218 \uc788\uc5b4 \ubcf4\uc548 \uadf8\ub8f9\uc744 \uc0ac\uc6a9\ud574 \ubcf4\uc548\uc640 \ubd84\ub9ac\uac00 \uc81c\uacf5\ub429\ub2c8\ub2e4. +message.change.offering.confirm=\ud604\uc7ac \uac00\uc0c1 \uc778\uc2a4\ud134\uc2a4 \uc11c\ube44\uc2a4\uc81c\uacf5\uc744 \ubcc0\uacbd\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.change.password=\uc554\ud638\ub97c \ubcc0\uacbd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.configure.all.traffic.types=\ubcf5\uc218\uc758 \ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c\uac00 \uc788\uc2b5\ub2c8\ub2e4. [\ud3b8\uc9d1]\uc744 \ud074\ub9ad\ud574 \ud2b8\ub798\ud53d\uc758 \uc885\ub958 \ub9c8\ub2e4 \ub77c\ubca8\uc744 \uad6c\uc131\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.configuring.guest.traffic=\uac8c\uc2a4\ud2b8 \ud2b8\ub798\ud53d\uc744 \uad6c\uc131\ud574 \uc788\uc2b5\ub2c8\ub2e4 +message.configuring.physical.networks=\ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c\ub97c \uad6c\uc131\ud574 \uc788\uc2b5\ub2c8\ub2e4 +message.configuring.public.traffic=\uacf5\uac1c \ud2b8\ub798\ud53d\uc744 \uad6c\uc131\ud574 \uc788\uc2b5\ub2c8\ub2e4 +message.configuring.storage.traffic=\uc2a4\ud1a0\ub9ac\uc9c0 \ud2b8\ub798\ud53d\uc744 \uad6c\uc131\ud574 \uc788\uc2b5\ub2c8\ub2e4 +message.confirm.action.force.reconnect=\ud604\uc7ac \ud638\uc2a4\ud2b8\ub97c \uac15\uc81c \uc7ac\uc811\uc18d\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.confirm.delete.F5=F5\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.confirm.delete.NetScaler=NetScaler\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.confirm.delete.SRX=SRX\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.confirm.destroy.router=\ud604\uc7ac \ub77c\uc6b0\ud130\ub97c \ud30c\uae30\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.confirm.disable.provider=\ud604\uc7ac \uc81c\uacf5\uc790\ub97c \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.confirm.enable.provider=\ud604\uc7ac \uc81c\uacf5\uc790\ub97c \uc0ac\uc6a9\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.confirm.join.project=\ud604\uc7ac \ud504\ub85c\uc81d\ud2b8\uc5d0 \ucc38\uc5ec\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.confirm.remove.IP.range=\ud604\uc7ac IP \uc8fc\uc18c \ubc94\uc704\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.confirm.shutdown.provider=\ud604\uc7ac \uc81c\uacf5\uc790\ub97c \uc885\ub8cc\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.copy.iso.confirm=ISO\ub97c \ub2e4\uc74c \uc7a5\uc18c\uc5d0 \ubcf5\uc0ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.copy.template=\uc874 \uc73c\uc5d0\uc11c \ud15c\ud50c\ub9bf XXX\ub97c \ub2e4\uc74c \uc7a5\uc18c\uc5d0 \ubcf5\uc0ac\ud569\ub2c8\ub2e4\: +message.create.template=\ud15c\ud50c\ub9bf\uc744 \ub9cc\ub4e4\uae30\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.create.template.vm=\ud15c\ud50c\ub9bf \uc73c\uc5d0\uc11c VM\ub97c \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4. +message.create.template.volume=\ub514\uc2a4\ud06c \ubcfc\ub968 \ud15c\ud50c\ub9bf\uc744 \ub9cc\ub4e4\uae30\ud558\uae30 \uc804\uc5d0, \ub2e4\uc74c \uc815\ubcf4\ub97c \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624.\ubcfc\ub968 \ud06c\uae30\uc5d0 \ub530\ub77c\uc11c\ub294 \ud15c\ud50c\ub9bf \ub9cc\ub4e4\uae30\uc5d0\ub294 \uba87\ubd84 \uc774\uc0c1 \uac78\ub9b4 \uac00\ub2a5\uc131\uc774 \uc788\uc2b5\ub2c8\ub2e4. +message.creating.cluster=\ud074\ub7ec\uc2a4\ud130\ub97c \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4. +message.creating.guest.network=\uc190\ub2d8 \ub124\ud2b8\uc6cc\ud06c\ub97c \ub9cc\ub4ed\ub2c8\ub2e4. +message.creating.physical.networks=\ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c\ub97c \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4. +message.creating.pod=Pod\ub97c \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4. +message.creating.primary.storage=\uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4. +message.creating.secondary.storage=2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4. +message.creating.zone=Zone\uc744 \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4. +message.decline.invitation=\ud604\uc7ac \ud504\ub85c\uc81d\ud2b8\uc5d0 \ucd08\ub300\ub97c \uac70\uc808\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.delete.account=\ud604\uc7ac \uacc4\uc815 \uc815\ubcf4\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.delete.gateway=\ud604\uc7ac \uac8c\uc774\ud2b8\uc6e8\uc774\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.delete.project=\ud604\uc7ac \ud504\ub85c\uc81d\ud2b8\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.delete.user=\ud604\uc7ac \uc0ac\uc6a9\uc790\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.delete.VPN.connection=VPN \uc811\uc18d\uc744 \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.delete.VPN.customer.gateway=\ud604\uc7ac VPN \uace0\uac1d \uac8c\uc774\ud2b8\uc6e8\uc774\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.delete.VPN.gateway=\ud604\uc7ac VPN \uac8c\uc774\ud2b8\uc6e8\uc774\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.desc.advanced.zone=\ubcf4\ub2e4 \uc138\ub828\ub41c \ub124\ud2b8\uc6cc\ud06c \uae30\uc220\uc744 \uc9c0\uc6d0\ud569\ub2c8\ub2e4. \uc774 \ub124\ud2b8\uc6cc\ud06c \ubaa8\ub378\uc744 \uc120\ud0dd\ud558\uba74, \ubcf4\ub2e4 \uc720\uc5f0\ud558\uac8c \uac8c\uc2a4\ud2b8 \ub124\ud2b8\uc6cc\ud06c\ub97c \uc815\ud558\uace0 \ubc29\ud654\ubcbd(fire wall), VPN, \ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uc7a5\uce58 \uae30\uc220 \uc9c0\uc6d0\uc640 \uac19\uc740 \uc0ac\uc6a9\uc790 \uc9c0\uc815 \ud55c \ub124\ud2b8\uc6cc\ud06c \uc81c\uacf5\uc744 \uc81c\uacf5\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. +message.desc.basic.zone=\uac01 VM \uc778\uc2a4\ud134\uc2a4\uc5d0 IP \uc8fc\uc18c\uac00 \ub124\ud2b8\uc6cc\ud06c\uc5d0\uc11c \uc9c1\uc811 \ud560\ub2f9\ud560 \uc218 \uc788\ub294 \ub2e8\uc77c \ub124\ud2b8\uc6cc\ud06c\ub97c \uc81c\uacf5\ud569\ub2c8\ub2e4. \ubcf4\uc548 \uadf8\ub8f9 (\uc804\uc1a1\uc6d0 IP \uc8fc\uc18c \ud544\ud130)\uacfc \uac19\uc740 \uce35 \uc138 \uac00\uc9c0 \ub808\ubca8 \ubc29\ubc95\uc73c\ub85c \uac8c\uc2a4\ud2b8\ub97c \ubd84\ub9ac\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. +message.desc.cluster=\uac01 Pod\uc5d0\ub294 \ud55c \uac1c \uc774\uc0c1 \ud074\ub7ec\uc2a4\ud130\uac00 \ud544\uc694\ud569\ub2c8\ub2e4. \uc9c0\uae08 \uc5ec\uae30\uc11c \ucd5c\ucd08 \ud074\ub7ec\uc2a4\ud130\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. \ud074\ub7ec\uc2a4\ud130\ub294 \ud638\uc2a4\ud2b8\ub97c \uadf8\ub8f9\ud654 \ud558\ub294 \ubc29\ubc95\uc785\ub2c8\ub2e4. \ud55c \ud074\ub7ec\uc2a4\ud130 \ub0b4\ubd80 \ud638\uc2a4\ud2b8\ub294 \ubaa8\ub450 \ub3d9\uc77c\ud55c \ud558\ub4dc\uc6e8\uc5b4\uc5d0\uc11c \uad6c\uc131\ub418\uc5b4 \uac19\uc740 \ud558\uc774\ud37c \ubc14\uc774\uc800\ub97c \uc2e4\ud589\ud558\uace0 \uac19\uc740 \uc11c\ube0c \ub124\ud2b8\uc6cc\ud06c\uc0c1\uc5d0 \uc788\uc5b4 \uac19\uc740 \uacf5\uc720 \uc2a4\ud1a0\ub9ac\uc9c0\uc5d0 \uc811\uadfc \ud569\ub2c8\ub2e4. \uac01 \ud074\ub7ec\uc2a4\ud130\ub294 \ud55c \uac1c \uc774\uc0c1 \ud638\uc2a4\ud2b8\uc640 \ud55c \uac1c \uc774\uc0c1 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \uc11c\ubc84\uc5d0\uc11c \uad6c\uc131\ub429\ub2c8\ub2e4. +message.desc.host=\uac01 \ud074\ub7ec\uc2a4\ud130\uc5d0\ub294 \uc801\uc5b4\ub3c4 \ud55c \uac1c \uc774\uc0c1 \uac8c\uc2a4\ud2b8 VM\ub97c \uc2e4\ud589\ud558\uae30 \uc704\ud55c \ud638\uc2a4\ud2b8 (\ucef4\ud4e8\ud130)\uac00 \ud544\uc694\ud569\ub2c8\ub2e4. \uc9c0\uae08 \uc5ec\uae30\uc11c \uccab\ubc88\uc9f8 \ud638\uc2a4\ud2b8\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. CloudStack\uc73c\ub85c \ud638\uc2a4\ud2b8\ub97c \ub3d9\uc791\ud558\ub824\uba74 \ud638\uc2a4\ud2b8\uc5d0\uac8c \ud558\uc774\ud37c \ubc14\uc774\uc800\ub97c \uc124\uce58\ud558\uace0 IP \uc8fc\uc18c\ub97c \ud560\ub2f9\ud574 \ud638\uc2a4\ud2b8\uac00 CloudStack \uad00\ub9ac \uc11c\ubc84\uc5d0 \uc811\uc18d\ud558\ub3c4\ub85d \ud569\ub2c8\ub2e4.

    \ud638\uc2a4\ud2b8 DNS \uba85 \ub610\ub294 IP \uc8fc\uc18c, \uc0ac\uc6a9\uc790\uba85(\uc6d0\ub798 root)\uacfc \uc554\ud638 \ubc0f \ud638\uc2a4\ud2b8 \ubd84\ub958\uc5d0 \uc0ac\uc6a9\ud558\ub294 \ub77c\ubca8\uc744 \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.desc.primary.storage=\uac01 \ud074\ub7ec\uc2a4\ud130\uc5d0\ub294 \uc801\uc5b4\ub3c4 \ud55c \uac1c \uc774\uc0c1\uc758 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \uc11c\ubc84\uac00 \ud544\uc694\ud569\ub2c8\ub2e4. \uc9c0\uae08 \uc5ec\uae30\uc11c \uccab\ubc88\uc9f8 \uc11c\ubc84\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\ub294 \ud074\ub7ec\uc2a4\ud130 \ub0b4 \ubd80 \ud638\uc2a4\ud2b8\uc0c1\uc5d0\uc11c \ub3d9\uc791\ud558\ub294 \ubaa8\ub4e0 VM \ub514\uc2a4\ud06c \ubcfc\ub968\uc744 \ud3ec\ud568\ud569\ub2c8\ub2e4. \uae30\ubcf8\uc801\uc73c\ub85c \ud558\uc774\ud37c \ubc14\uc774\uc800\uc5d0\uc11c \uae30\uc220 \uc9c0\uc6d0\ub418\ub294 \ud45c\uc900\uc5d0 \uc900\uac70\ud55c \ud504\ub85c\ud1a0\ucf5c\uc744 \uc0ac\uc6a9\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.desc.secondary.storage=\uac01 Zone\uc5d0\ub294 \uc801\uc5b4\ub3c4 \ud55c \uac1c \uc774\uc0c1\uc758 NFS \uc989 2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0 \uc11c\ubc84\uac00 \ud544\uc694\ud569\ub2c8\ub2e4. \uc9c0\uae08 \uc5ec\uae30\uc11c \uccab\ubc88\uc9f8 \uc11c\ubc84\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. 2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0\ub294 VM \ud15c\ud50c\ub9bf, ISO \uc774\ubbf8\uc9c0 \ubc0f VM \ub514\uc2a4\ud06c \ubcfc\ub968 \uc2a4\ub0c5\uc0f7\uc744 \ud3ec\ud568\ud569\ub2c8\ub2e4. \uc774 \uc11c\ubc84\ub294 Zone\ub0b4 \ubaa8\ub4e0 \ud638\uc2a4\ud2b8\uc5d0\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4.

    IP \uc8fc\uc18c\uc640 \ub0b4\ubcf4\ub0b4\ub0bc \uacbd\ub85c\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.desc.zone=Zone\uc740 CloudStack \ud658\uacbd\ub0b4 \ucd5c\ub300 \uc870\uc9c1 \ub2e8\uc704\ub85c \uc6d0\ub798 \ub2e8\uc77c \ub370\uc774\ud130 \uc13c\ud130\uc5d0 \ud574\ub2f9\ud569\ub2c8\ub2e4. Zone\uc5d0 \ud574\uc11c \ubb3c\ub9ac\uc801\uc778 \ubd84\ub9ac\uc640 \uc911\ubcf5\uc131\uc774 \uc81c\uacf5\ub429\ub2c8\ub2e4. Zone\uc740 \ud55c \uac1c \uc774\uc0c1 Pod( \uac01 Pod\ub294 \ud638\uc2a4\ud2b8\uc640 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \uc11c\ubc84\uc5d0\uc11c \uad6c\uc131)\uc640 Zone\ub0b4 \ubaa8\ub4e0 Pod\ub85c \uacf5\uc720\ub418\ub294 2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0 \uc11c\ubc84\ub85c \uad6c\uc131\ub429\ub2c8\ub2e4. +message.detach.disk=\ud604\uc7ac \ub514\uc2a4\ud06c\ub97c \ubd84\ub9ac \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.detach.iso.confirm=\ud604\uc7ac \uac00\uc0c1 \uc778\uc2a4\ud134\uc2a4\uc5d0\uc11c ISO \ud30c\uc77c\uc744 \ubd84\ub9ac \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.disable.account=\ud604\uc7ac \uacc4\uc815 \uc815\ubcf4\ub97c \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?\uc774 \uacc4\uc815 \uc815\ubcf4 \ubaa8\ub4e0 \uc0ac\uc6a9\uc790\uac00 \ud074\ub77c\uc6b0\ub4dc \uc790\uc6d0\uc5d0 \uc811\uadfc \ud560 \uc218 \uc5c6\uac8c \ub429\ub2c8\ub2e4. \uc2e4\ud589\uc911 \ubaa8\ub4e0 \uac00\uc0c1 \uba38\uc2e0\uc740 \uae08\ubc29\uc5d0 \uc885\ub8cc \ub429\ub2c8\ub2e4. +message.disable.snapshot.policy=\ud604\uc7ac \uc2a4\ub0c5\uc0f7 \uc815\ucc45\ub97c \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \uc124\uc815\ud588\uc2b5\ub2c8\ub2e4. +message.disable.user=\ud604\uc7ac \uc0ac\uc6a9\uc790\ub97c \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.disable.vpn.access=VPN \uc811\uadfc\ub97c \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.disable.vpn=VPN\ub97c \uc0ac\uc6a9 \uc548 \ud568\uc73c\ub85c \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.download.ISO=ISO\ub97c \ub2e4\uc6b4\ub85c\ub4dc\ud558\ub824\uba74 00000\uc744 \ud074\ub9ad\ud569\ub2c8\ub2e4. +message.download.template=\ud15c\ud50c\ub9bf\uc744 \ub2e4\uc6b4\ub85c\ub4dc\ud558\ub824\uba74 00000\uc744 \ud074\ub9ad\ud569\ub2c8\ub2e4. +message.download.volume.confirm=\ud604\uc7ac \ubcfc\ub968\uc744 \ub2e4\uc6b4\ub85c\ub4dc\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.download.volume=\ubcfc\ub968\uc744 \ub2e4\uc6b4\ub85c\ub4dc\ud558\ub824\uba74 00000\uc744 \ud074\ub9ad\ud569\ub2c8\ub2e4. +message.edit.account=\ud3b8\uc9d1 ("-1"\ub294 \uc790\uc6d0 \ub9cc\ub4e4\uae30 \uc22b\uc790\uc5d0 \uc81c\ud55c\uc774 \uc5c6\ub294 \uac12\uc785\ub2c8\ub2e4.) +message.edit.confirm=[\uc800\uc7a5]\uc744 \ud074\ub9ad\ud558\uae30 \uc804\uc73c\ub85c \ubcc0\uacbd \ub0b4\uc6a9\uc744 \ud655\uc778\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.edit.limits=\ub2e4\uc74c \uc790\uc6d0\uc5d0 \uc81c\ud55c\uc744 \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624.\u300c-1\u300d\uc740 \uc790\uc6d0 \ub9cc\ub4e4\uae30\uc5d0 \uc81c\ud55c\uc774 \uc5c6\ub2e4\ub294 \uc758\ubbf8\uc785\ub2c8\ub2e4. +message.edit.traffic.type=\ud604\uc7ac \ud2b8\ub798\ud53d\uc758 \uc885\ub958\uc5d0 \uad00\ub828 \ud2b8\ub798\ud53d \ub77c\ubca8\uc744 \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.enable.account=\ud604\uc7ac \uacc4\uc815 \uc815\ubcf4\ub97c \uc0ac\uc6a9 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.enabled.vpn.ip.sec=IPSec \uc0ac\uc804 \uacf5\uc720 \ud0a4\: +message.enabled.vpn=\ud604\uc7ac VPN \uc811\uadfc \uc0ac\uc6a9 \uc124\uc815\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4. \ub2e4\uc74c IP \uc8fc\uc18c \uacbd\uc720\ub85c \uc811\uadfc \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. +message.enable.user=\ud604\uc7ac \uc0ac\uc6a9\uc790\ub97c \uc0ac\uc6a9 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.enable.vpn.access=\ud604\uc7ac\uc774 IP \uc8fc\uc18c\uc5d0 \ub300\ud55c VPN\ub294 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740\uc785\ub2c8\ub2e4. VPN \uc811\uadfc\ub97c \uc0ac\uc6a9 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.enable.vpn=\ud604\uc7ac IP \uc8fc\uc18c\uc5d0 \ub300\ud55c VPN \uc811\uadfc\ub97c \uc0ac\uc6a9 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.enabling.security.group.provider=\ubcf4\uc548 \uadf8\ub8f9 \uc81c\uacf5\uc790\ub97c \uc0ac\uc6a9 \ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. +message.enabling.zone=Zone\uc744 \uc0ac\uc6a9\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4 +message.enter.token=\uc804\uc790 \uba54\uc77c \ucd08\ub300\uc7a5\uc5d0 \uc124\uba85\ub418\uc5b4 \uc788\ub294 \ud1a0\ud070\uc744 \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.generate.keys=\ud604\uc7ac \uc0ac\uc6a9\uc790\uc5d0\uac8c \uc0c8\ub85c\uc6b4 \ud0a4\ub97c \uc0dd\uc131\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.guest.traffic.in.advanced.zone=\uc190\ub2d8 \ub124\ud2b8\uc6cc\ud06c \ud2b8\ub798\ud53d\uc740 \ucd5c\uc885 \uc0ac\uc6a9\uc790 \uac00\uc0c1 \uba38\uc2e0\uac04 \ud1b5\uc2e0\uc785\ub2c8\ub2e4. \uac01 \ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c \uac8c\uc2a4\ud2b8 \ud2b8\ub798\ud53d\uc744 \ud1b5\uc2e0\ud558\uae30 \uc704\ud55c VLAN ID \ubc94\uc704\ub97c \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.guest.traffic.in.basic.zone=\uc190\ub2d8 \ub124\ud2b8\uc6cc\ud06c \ud2b8\ub798\ud53d\uc740 \ucd5c\uc885 \uc0ac\uc6a9\uc790\uc758 \uac00\uc0c1 \uba38\uc2e0\uac04 \ud1b5\uc2e0\uc785\ub2c8\ub2e4. CloudStack\uc5d0 \uac8c\uc2a4\ud2b8 VM\uc5d0 \ud560\ub2f9\ud560 \uc218 \uc788\ub294 IP \uc8fc\uc18c \ubc94\uc704\ub97c \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624.\uc774 \ubc94\uc704\uac00 \uc608\uc57d \ub05d\ub09c \uc2dc\uc2a4\ud15c IP \uc8fc\uc18c \ubc94\uc704\uc640 \uc911\ubcf5 \ud558\uc9c0 \uc54a\uac8c \uc8fc\uc758\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.installWizard.click.retry=\uc2dc\uc791\uc744 \uc7ac\uc2dc\ud589\ud558\ub824\uba74 \ubc84\ud2bc\uc744 \ud074\ub9ad\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.installWizard.copy.whatIsACluster=\ud074\ub7ec\uc2a4\ud130\ub294 \ud638\uc2a4\ud2b8\ub97c \uadf8\ub8f9\ud654 \ud558\ub294 \ubc29\ubc95\uc785\ub2c8\ub2e4. \ud55c \uac00\uc9c0 \ud074\ub7ec\uc2a4\ud130\ub0b4 \ud638\uc2a4\ud2b8\ub294 \ubaa8\ub450 \ub3d9\uc77c\ud55c \ud558\ub4dc\uc6e8\uc5b4\uc5d0\uc11c \uad6c\uc131\ub418\uc5b4 \uac19\uc740 \ud558\uc774\ud37c \ubc14\uc774\uc800\ub97c \uc2e4\ud589\ud558\uace0 \uac19\uc740 \uc11c\ube0c \ub124\ud2b8\uc6cc\ud06c\uc0c1\uc5d0 \uc788\uc5b4\uc11c \uac19\uc740 \uacf5\uc720 \uc2a4\ud1a0\ub9ac\uc9c0\uc5d0 \uc811\uadfc \ud569\ub2c8\ub2e4. \uac19\uc740 \ud074\ub7ec\uc2a4\ud130\ub0b4\uc758 \ud638\uc2a4\ud2b8 \uc0ac\uc774\uc5d0\uc11c\ub294 \uc0ac\uc6a9\uc790\uc5d0\uac8c \uc11c\ube44\uc2a4\ub97c \uc911\ub2e8\ud558\uc9c0 \uc54a\uace0 \uac00\uc0c1 \uba38\uc2e0 \uc778\uc2a4\ud134\uc2a4\ub97c \uc2e4\uc2dc\uac04 \uc774\uc804 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ud074\ub7ec\uc2a4\ud130\ub294 CloudStack\u2122 \ud658\uacbd\ub0b4\uc758 \uc138 \ubc88\uc9f8\ub85c \ud070 \uc870\uc9c1 \ub2e8\uc704\uc785\ub2c8\ub2e4. \ud074\ub7ec\uc2a4\ud130\ub294 Pod\uc5d0 \ud3ec\ud568\ub418\uc5b4 Pod\ub294 Zone\uc5d0 \ud3ec\ud568\ub429\ub2c8\ub2e4.

    CloudStack\u2122 \uc5d0\uc11c\ub294 \ud55c \uac00\uc9c0 \ud074\ub77c\uc6b0\ub4dc \ud658\uacbd\uc5d0 \ubcf5\uc218 \ud074\ub7ec\uc2a4\ud130\ub97c \uc124\uc815\ud560 \uc218 \uc788\uc73c\ub098 \uae30\ubcf8 \uc124\uce58\uc5d0\uc11c\ub294 \ud074\ub7ec\uc2a4\ud130\ub294 \ud55c \uac1c\uc785\ub2c8\ub2e4. +message.installWizard.copy.whatIsAHost=\ud638\uc2a4\ud2b8\ub294 \ub2e8\uc77c \ucef4\ud4e8\ud130\ub85c \uc190\ub2d8 \uac00\uc0c1 \uba38\uc2e0\uc744 \uc2e4\ud589\ud558\ub294 \ucef4\ud4e8\ud305 \uc790\uc6d0\uc744 \uc81c\uacf5\ud569\ub2c8\ub2e4. \ubca0\uc5b4 \uba54\ud0c8 \ud638\uc2a4\ud2b8\ub97c \uc81c\uc678\ud558\uace0, \uac01 \ud638\uc2a4\ud2b8\ub294 \uac8c\uc2a4\ud2b8 \uac00\uc0c1 \uba38\uc2e0\uc744 \uad00\ub9ac\ud558\uae30 \uc704\ud55c \ud558\uc774\ud37c \ubc14\uc774\uc800 \uc18c\ud504\ud2b8\uc6e8\uc5b4\ub97c \uc124\uce58\ud569\ub2c8\ub2e4. \ubca0\uc5b4 \uba54\ud0c8 \ud638\uc2a4\ud2b8\uc5d0 \ub300\ud574\uc11c\ub294 \uc124\uce58 \uac00\uc774\ub4dc \uace0\uae09\ud3b8 \ud2b9\uc218 \uc0ac\ub840\ub85c\uc11c \uc124\uba85\ud569\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4, KVM\uc740 \uc720\ud6a8\ud55c Linux \uc11c\ubc84, Citrix XenServer\uac00 \ub3d9\uc791\ud558\ub294 \uc11c\ubc84 \ubc0f ESXi \uc11c\ubc84\uac00 \ud638\uc2a4\ud2b8\uc785\ub2c8\ub2e4. \uae30\ubcf8 \uc124\uce58\uc5d0\uc11c\ub294 XenServer \ub610\ub294 KVM\ub97c \uc2e4\ud589\ud558\ub294 \ub2e8\uc77c \ud638\uc2a4\ud2b8\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4.

    \ud638\uc2a4\ud2b8\ub294 CloudStack\u2122 \ud658\uacbd\ub0b4\uc758 \ucd5c\uc18c\uc758 \uc870\uc9c1 \ub2e8\uc704\uc785\ub2c8\ub2e4. \ud638\uc2a4\ud2b8\ub294 \ud074\ub7ec\uc2a4\ud130\uc5d0 \ud3ec\ud568\ub418\uc5b4 \ud074\ub7ec\uc2a4\ud130\ub294 Pod\uc5d0 \ud3ec\ud568\ub418\uc5b4 Pod\ub294 Zone\uc5d0 \ud3ec\ud568\ub429\ub2c8\ub2e4. +message.installWizard.copy.whatIsAPod=\uc6d0\ub798 \ud55c \uac00\uc9c0 Pod\ub294 \ub2e8\uc77c \uc7a0\uae08\uc744 \ub098\ud0c0\ub0c5\ub2c8\ub2e4. \uac19\uc740 Pod\ub0b4 \ud638\uc2a4\ud2b8\ub294 \uac19\uc740 \uc11c\ube0c \ub124\ud2b8\uc6cc\ud06c\uc5d0 \ud3ec\ud568\ub429\ub2c8\ub2e4.

    Pod\ub294 CloudStack\u2122 \ud658\uacbd\ub0b4\uc758 \ub450 \ubc88\uc9f8\ub85c \ud070 \uc870\uc9c1 \ub2e8\uc704\uc785\ub2c8\ub2e4. Pod\ub294 Zone\uc5d0 \ud3ec\ud568\ub429\ub2c8\ub2e4. \uac01 Zone\uc740 \ud55c \uac1c \uc774\uc0c1\uc758 Pod\ub97c \ud3ec\ud568\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uae30\ubcf8 \uc124\uce58\uc5d0\uc11c\ub294 Zone\ub0b4 Pod\ub294 \ud55c \uac1c\uc785\ub2c8\ub2e4. +message.installWizard.copy.whatIsAZone=Zone\uc740 CloudStack\u2122 \ud658\uacbd\ub0b4 \ucd5c\ub300 \uc870\uc9c1 \ub2e8\uc704\uc785\ub2c8\ub2e4. \ud55c \uac00\uc9c0 \ub370\uc774\ud130 \uc13c\ud130\ub0b4\uc5d0 \ubcf5\uc218 Zone\uc744 \uc124\uc815\ud560 \uc218 \uc788\uc73c\ub098 \uc6d0\ub798 Zone\uc740 \ub2e8\uc77c\uc758 \ub370\uc774\ud130 \uc13c\ud130\uc5d0 \ud560\ub2f9\ud569\ub2c8\ub2e4. \uc778\ud504\ub77c\uc2a4\ud2b8\ub7ed\uccd0\ub97c Zone\uc5d0 \uc870\uc9c1\ud654\ud558\uba74, Zone\uc744 \ubb3c\ub9ac\uc801\uc6b0\ub85c \ubd84\ub9ac\ud574 \uc124\uc815\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4, \uac01 Zone\uc5d0 \uc804\uc6d0\uacfc \ub124\ud2b8\uc6cc\ud06c \uc5c5\ub9c1\ud06c\ub97c \ubc30\uce58\ud569\ub2c8\ub2e4. \ud544\uc218\uac00 \uc544\ub2c8\uc9c0\ub9cc \uc6d0\uaca9\uc9c0\uc5d0 \ubd84\uc0b0\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. +message.installWizard.copy.whatIsCloudStack=CloudStack\u2122\ub294 \ucef4\ud4e8\ud305 \uc790\uc6d0\uc744 \ud3ec\ud568\ud558\ub294 \uc18c\ud504\ud2b8\uc6e8\uc5b4 \ud50c\ub7ab\uc6f9 \uc591\uc2dd\uc5d0\uc11c \uacf5\uac1c, \uc0ac\uc124, \ubc0f \ud558\uc774\ube0c\ub9ac\ub4dc\uc758 Infrastructure as a Service (IaaS) \ud074\ub77c\uc6b0\ub4dc\ub97c \uad6c\ucd95\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. CloudStack\u2122\ub97c \uc0ac\uc6a9\ud558\uace0, \ud074\ub77c\uc6b0\ub4dc \uc778\ud504\ub77c\uc2a4\ud2b8\ub7ed\uccd0\ub97c \uad6c\uc131\ud558\ub294 \ub124\ud2b8\uc6cc\ud06c, \uc2a4\ud1a0\ub9ac\uc9c0 \ubc0f \ucef4\ud4e8\ud305 \ub178\ub4dc\ub97c \uad00\ub9ac\ud558\uace0 \ud074\ub77c\uc6b0\ub4dc \ucef4\ud4e8\ud305 \ud658\uacbd\uc744 \uc124\uc815, \uad00\ub9ac \ubc0f \uad6c\uc131\ud569\ub2c8\ub2e4.

    CloudStack\u2122\uc740 \ud558\ub4dc\uc6e8\uc5b4\uc0c1\uc5d0\uc11c \ub3d9\uc791\ud558\ub294 \uac1c\ubcc4 \uac00\uc0c1 \uba38\uc2e0 \uc774\ubbf8\uc9c0\ub97c \ub118\uc5b4 \ud655\uc7a5\ud560 \uc218 \uc788\uae30 \ub54c\ubb38\uc5d0 \uac04\ub2e8\ud55c \uc124\uc815\uc73c\ub85c \ub3d9\uc791\ud558\ub294 \ud074\ub77c\uc6b0\ub4dc \uc778\ud504\ub77c\uc2a4\ud2b8\ub7ed\uccd0 \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc2a4\ud0dd\uc5d0 \uc758\ud574 \uac00\uc0c1 \ub370\uc774\ud130 \uc13c\ud130 \uc989 \uc5ec\ub7ec \uce35\ud615 \uba40\ud2f0 \uc138\uc785\uc790 \ud074\ub77c\uc6b0\ub4dc \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \uc11c\ube44\uc2a4\ub85c\uc11c \uad6c\ucd95\ud558\uace0 \uc124\uc815\ud558\uace0 \uad00\ub9ac\ud558\uae30 \uc704\ud574\uc11c \ubd88\uac00\uacb0\ud55c \ud56d\ubaa9\uc744 \ubaa8\ub450 \uc81c\uacf5\ud569\ub2c8\ub2e4. \uc624\ud508 \uc18c\uc2a4 \ubc84\uc804\uacfc \ud504\ub9ac\ubbf8\uc5c4 \ubc84\uc804 \uc591\ucabd \ubaa8\ub450\uc5d0 \uc81c\uacf5\ud558\uba70 \uc624\ud508 \uc18c\uc2a4 \ubc84\uc804\uc5d0\uc11c\ub3c4 \ub300\ubd80\ubd84 \uae30\ub2a5\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. +message.installWizard.copy.whatIsPrimaryStorage=CloudStack\u2122 \ud074\ub77c\uc6b0\ub4dc \uc778\ud504\ub77c\uc2a4\ud2b8\ub7ed\uccd0\uc5d0\uc11c\ub294 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\uc640 2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0 \ub450 \uc885\ub958\uc758 \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4. \uc591\ucabd \uc2a4\ud1a0\ub9ac\uc9c0\uc5d0\uc11c iSCSI, NFS \uc11c\ubc84, \ub610\ub294 \ub85c\uceec \ub514\uc2a4\ud06c\ub97c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.

    \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\ub294 \ud074\ub7ec\uc2a4\ud130\uc5d0 \uad00\ub828\ub418\uc5b4\uadf8 \ud074\ub7ec\uc2a4\ud130\ub0b4\uc758 \ud638\uc2a4\ud2b8\ub85c \ub3d9\uc791\ud558\ub294 \ubaa8\ub4e0 VM \uc911 \uac01 \uac8c\uc2a4\ud2b8 VM\uc758 \ub514\uc2a4\ud06c \ubcfc\ub968\uc744 \ud3ec\ud568\ud569\ub2c8\ub2e4. \uc6d0\ub798, \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \uc11c\ubc84\ub294 \ud638\uc2a4\ud2b8 \uadfc\ucc98\uc5d0 \uc124\uce58\ud569\ub2c8\ub2e4. +message.installWizard.copy.whatIsSecondaryStorage=2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0\ub294 Zone\uacfc \uad00\ub828\ub3e4 \uc544\ub798\uc758 \ud56d\ubaa9\uc744 \ud3ec\ud568\ud569\ub2c8\ub2e4.
    • \ud15c\ud50c\ub9bf - VM \uc2dc\uc791 \uc2dc \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 OS \uc774\ubbf8\uc9c0\ub85c \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \uc124\uce58 \ub4f1 \ucd94\uac00 \uad6c\uc131\uc744 \ud3ec\ud568\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
    • ISO \uc774\ubbf8\uc9c0 - \ubc14\ub85c \uc2dc\uc791 \uac00\ub2a5 \ub610\ub294 \uc2dc\uc791 \ubd88\uac00\uc758 OS \uc774\ubbf8\uc9c0\uc785\ub2c8\ub2e4.
    • \ub514\uc2a4\ud06c \ubcfc\ub968 \uc2a4\ub0c5\uc0f7 - VM \ub370\uc774\ud130 \uc800\uc7a5 \ubcf5\uc0ac\ubcf8\uc785\ub2c8\ub2e4. \ub370\uc774\ud130\uc758 \ubcf5\uc6d0 \ub610\ub294 \uc0c8\ub85c\uc6b4 \ud15c\ud50c\ub9bf \ub9cc\ub4e4\uae30\uc5d0 \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
    +message.installWizard.now.building=\ud074\ub77c\uc6b0\ub4dc\ub97c \uad6c\ucd95\ud558\uace0 \uc788\ub294 \uc911... +message.installWizard.tooltip.addCluster.name=\ud074\ub7ec\uc2a4\ud130 \uc774\ub984\uc785\ub2c8\ub2e4. CloudStack\uc5d0\uc11c \uc608\uc57d\ud558\uc9c0 \uc54a\uc740 \uc784\uc758 \ud14d\uc2a4\ud2b8\ub97c \uc9c0\uc815\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. +message.installWizard.tooltip.addHost.hostname=\ud638\uc2a4\ud2b8 DNS \uba85 \ub610\ub294 IP \uc8fc\uc18c\uc785\ub2c8\ub2e4. +message.installWizard.tooltip.addHost.password=XenServer \uce21\uc5d0\uc11c \uc9c0\uc815\ud55c \uc704\uc758 \uc0ac\uc6a9\uc790\uba85\uc5d0 \ub300\ud55c \uc554\ud638\uc785\ub2c8\ub2e4. +message.installWizard.tooltip.addHost.username=\uc6d0\ub798 root \uc785\ub2c8\ub2e4. +message.installWizard.tooltip.addPod.name=Pod \uc774\ub984\uc785\ub2c8\ub2e4. +message.installWizard.tooltip.addPod.reservedSystemEndIp=\uc774\uac83\uc740 2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0 VM \ubc0f \ucf58\uc194 \ud504\ub85d\uc2dc VM\ub97c \uad00\ub9ac\ud558\uae30 \uc704\ud574\uc11c CloudStack\uc5d0\uc11c \uc0ac\uc6a9\ud558\ub294 \uc0ac\uc124 \ub124\ud2b8\uc6cc\ud06c\ub0b4 IP \uc8fc\uc18c \ubc94\uc704\uc785\ub2c8\ub2e4. \uc774\ub7ec\ud55c IP \uc8fc\uc18c\ub294 \ucef4\ud4e8\ud305 \uc11c\ubc84\uc640 \uac19\uc740 \uc11c\ube0c\ub124\ud2b8\uc6cc\ud06c\uc5d0\uc11c \ud560\ub2f9\ud569\ub2c8\ub2e4. +message.installWizard.tooltip.addPod.reservedSystemGateway=\ud604\uc7ac Pod\ub0b4 \ud638\uc2a4\ud2b8 \uac8c\uc774\ud2b8\uc6e8\uc774\uc785\ub2c8\ub2e4. +message.installWizard.tooltip.addPod.reservedSystemNetmask=\uac8c\uc2a4\ud2b8\uac00 \uc0ac\uc6a9\ud558\ub294 \uc11c\ube0c\ub124\ud2b8\uc6cc\ud06c\uc0c1\uc5d0\uc11c \uc9c0\uc815\ud55c \ub137 \ub9c8\uc2a4\ud06c\uc785\ub2c8\ub2e4. +message.installWizard.tooltip.addPod.reservedSystemStartIp=\uc774\uac83\uc740 2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0 VM \ubc0f \ucf58\uc194 \ud504\ub85d\uc2dc VM\ub97c \uad00\ub9ac\ud558\uae30 \uc704\ud574\uc11c CloudStack\uc5d0\uc11c \uc0ac\uc6a9\ud558\ub294 \uc0ac\uc124 \ub124\ud2b8\uc6cc\ud06c\ub0b4\uc758 IP \uc8fc\uc18c \ubc94\uc704\uc785\ub2c8\ub2e4. \uc774\ub7ec\ud55c IP \uc8fc\uc18c\ub294 \ucef4\ud4e8\ud305 \uc11c\ubc84\uc640 \uac19\uc740 \uc11c\ube0c\ub124\ud2b8\uc6cc\ud06c\uc5d0\uc11c \ud560\ub2f9\ud569\ub2c8\ub2e4. +message.installWizard.tooltip.addPrimaryStorage.name=\uc2a4\ud1a0\ub9ac\uc9c0 \uae30\uae30\uc758 \uc774\ub984\uc785\ub2c8\ub2e4. +message.installWizard.tooltip.addPrimaryStorage.path=(NFS\uc758 \uacbd\uc6b0) \uc11c\ubc84\uc5d0\uc11c \ub0b4\ubcf4\ub0b4\uae30 \uacbd\ub85c\uc785\ub2c8\ub2e4. (SharedMountPoint\uc758 \uacbd\uc6b0) \uc77c\ubc18 \uacbd\ub85c\uc785\ub2c8\ub2e4. KVM\uc5d0\uc11c\ub294 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\uac00 \ub9c8\uc6b4\ud2b8\ub418\ub294 \uac01 \ud638\uc2a4\ud2b8\uc0c1\uc758 \uacbd\ub85c\uc785\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4, /mnt/primary \uc785\ub2c8\ub2e4. +message.installWizard.tooltip.addPrimaryStorage.server=(NFS, iSCSI \ub610\ub294 PreSetup\uc758 \uacbd\uc6b0) \uc2a4\ud1a0\ub9ac\uc9c0 \uae30\uae30\uc758 IP \uc8fc\uc18c \ub610\ub294 DNS \uba85\uc785\ub2c8\ub2e4. +message.installWizard.tooltip.addSecondaryStorage.nfsServer=2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \ud638\uc2a4\ud2b8 \ud558\ub294 NFS \uc11c\ubc84 IP \uc8fc\uc18c\uc785\ub2c8\ub2e4. +message.installWizard.tooltip.addSecondaryStorage.path=\uc704\uc5d0\uc11c \uc9c0\uc815\ud55c \uc11c\ubc84\uc5d0 \uc874\uc7ac\ud558\ub294 \ub0b4\ubcf4\ub0b4\uae30 \uacbd\ub85c\uc785\ub2c8\ub2e4. +message.installWizard.tooltip.addZone.dns1=Zone\ub0b4\uc758 \uac8c\uc2a4\ud2b8 VM\uc73c\ub85c \uc0ac\uc6a9\ud558\ub294 DNS \uc11c\ubc84\uc785\ub2c8\ub2e4. \uc774\ub7ec\ud55c DNS \uc11c\ubc84\uc5d0\ub294 \ub2e4\uc74c\uc5d0 \ucd94\uac00\ud558\ub294 \uacf5\uac1c \ub124\ud2b8\uc6cc\ud06c \uacbd\uc720\ub85c \uc811\uadfc \ud569\ub2c8\ub2e4. Zone\uc758 \uacf5\uac1c IP \uc8fc\uc18c\uc5d0\uc11c \uc5ec\uae30\uc11c \uc9c0\uc815\ud558\ub294 \uacf5\uac1c DNS \uc11c\ubc84\uc5d0 \ud1b5\uc2e0\ud560 \uc218 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4. +message.installWizard.tooltip.addZone.dns2=Zone\ub0b4 \uac8c\uc2a4\ud2b8 VM \ub85c \uc0ac\uc6a9\ud558\ub294 DNS \uc11c\ubc84\uc785\ub2c8\ub2e4. \ud604\uc7ac DNS \uc11c\ubc84\uc5d0\ub294 \ub2e4\uc74c\uc5d0 \ucd94\uac00\ud558\ub294 \uacf5\uac1c \ub124\ud2b8\uc6cc\ud06c \uacbd\uc720\ub85c \uc811\uadfc\ud569\ub2c8\ub2e4. Zone\uc758 \uacf5\uac1c IP \uc8fc\uc18c\uc5d0\uc11c \uc5ec\uae30\uc11c \uc9c0\uc815\ud558\ub294 \uacf5\uac1c DNS \uc11c\ubc84\uc5d0 \ud1b5\uc2e0\ud560 \uc218 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4. +message.installWizard.tooltip.addZone.internaldns1=Zone\ub0b4\uc758 \uc2dc\uc2a4\ud15c VM \ub85c \uc0ac\uc6a9\ud558\ub294 DNS \uc11c\ubc84\uc785\ub2c8\ub2e4. \ud604\uc7ac DNS \uc11c\ubc84\ub294 \uc2dc\uc2a4\ud15c VM\uc758 \uc0ac\uc124 \ub124\ud2b8\uc6cc\ud06c \uc778\ud130\ud398\uc774\uc2a4\ub97c \uac1c\uc785\uc2dc\ucf1c \uc811\uadfc\ud569\ub2c8\ub2e4. Pod\uc758 \uc0ac\uc124 IP \uc8fc\uc18c\uc5d0\uc11c \uc5ec\uae30\uc11c \uc9c0\uc815\ud558\ub294 DNS \uc11c\ubc84\uc5d0 \ud1b5\uc2e0\ud560 \uc218 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4. +message.installWizard.tooltip.addZone.internaldns2=Zone\ub0b4 \uc2dc\uc2a4\ud15c VM\uc73c\ub85c \uc0ac\uc6a9\ud558\ub294 DNS \uc11c\ubc84\uc785\ub2c8\ub2e4. \ud604\uc7ac DNS \uc11c\ubc84\ub294 \uc2dc\uc2a4\ud15c VM\uc758 \uc0ac\uc124 \ub124\ud2b8\uc6cc\ud06c \uc778\ud130\ud398\uc774\uc2a4\ub97c \uac1c\uc785\uc2dc\ucf1c \uc811\uadfc\ud569\ub2c8\ub2e4. Pod\uc758 \uc0ac\uc124 IP \uc8fc\uc18c\uc5d0\uc11c \uc5ec\uae30\uc11c \uc9c0\uc815\ud558\ub294 DNS \uc11c\ubc84\uc5d0 \ud1b5\uc2e0\ud560 \uc218 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4. +message.installWizard.tooltip.addZone.name=Zone\uc758 \uc774\ub984\uc785\ub2c8\ub2e4. +message.installWizard.tooltip.configureGuestTraffic.description=\ub124\ud2b8\uc6cc\ud06c \uc124\uba85\uc785\ub2c8\ub2e4. +message.installWizard.tooltip.configureGuestTraffic.guestEndIp=\ud604\uc7ac Zone\uc758 \uac8c\uc2a4\ud2b8\uc5d0\uac8c \ud560\ub2f9\ud560 \uc218 \uc788\ub294 IP \uc8fc\uc18c \ubc94\uc704\uc785\ub2c8\ub2e4. \uc0ac\uc6a9\ud558\ub294 NIC\uac00 \ud55c \uac00\uc9c0\uc778 \uacbd\uc6b0\ub294 \uc774\ub7ec\ud55c IP \uc8fc\uc18c\ub294 Pod\uc758 CIDR\uc640 \uac19\uc740 CIDR\uc5d0 \ud3ec\ud568\ub418\uc5b4 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4. +message.installWizard.tooltip.configureGuestTraffic.guestGateway=\uac8c\uc2a4\ud2b8\uc5d0\uc11c \uc0ac\uc6a9\ud558\ub294 \uac8c\uc774\ud2b8\uc6e8\uc774\uc785\ub2c8\ub2e4. +message.installWizard.tooltip.configureGuestTraffic.guestNetmask=\uac8c\uc2a4\ud2b8\uc5d0\uc11c \uc0ac\uc6a9\ud558\ub294 \uc11c\ube0c\ub124\ud2b8\uc6cc\ud06c\uc0c1\uc5d0\uc11c \uc0ac\uc6a9\ub418\ub294 \ub137 \ub9c8\uc2a4\ud06c\uc785\ub2c8\ub2e4. +message.installWizard.tooltip.configureGuestTraffic.guestStartIp=\ud604\uc7ac Zone\uc758 \uac8c\uc2a4\ud2b8\uc5d0\uac8c \ud560\ub2f9\ud560 \uc218 \uc788\ub294 IP \uc8fc\uc18c \ubc94\uc704\uc785\ub2c8\ub2e4. \uc0ac\uc6a9\ud558\ub294 NIC\uac00 \ud55c \uac00\uc9c0 \uacbd\uc6b0\ub294 \uc774\ub7ec\ud55c IP \uc8fc\uc18c\ub294 Pod\uc758 CIDR\uc640 \uac19\uc740 CIDR\uc5d0 \ud3ec\ud568\ub418\uc5b4 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4. +message.installWizard.tooltip.configureGuestTraffic.name=\ub124\ud2b8\uc6cc\ud06c \uc774\ub984\uc785\ub2c8\ub2e4. +message.instanceWizard.noTemplates=\uc0ac\uc6a9 \uac00\ub2a5\ud55c \ud15c\ud50c\ub9bf\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. \ud638\ud658\uc131\uc774 \uc788\ub294 \ud15c\ud50c\ub9bf\uc744 \ucd94\uac00\ud558\uace0, \uc778\uc2a4\ud134\uc2a4 \uc704\uc800\ub4dc\ub97c \uc7ac\uc2dc\uc791\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.ip.address.changed=\uc0ac\uc6a9 IP \uc8fc\uc18c\uac00 \ubcc0\uacbd\ub41c \uac00\ub2a5\uc131\uc774 \uc788\uc2b5\ub2c8\ub2e4. \ubaa9\ub85d\uc744 \uc5c5\ub370\uc774\ud2b8\ud569\ub2c8\uae4c? \uadf8 \uacbd\uc6b0\ub294 \uc0c1\uc138 \uc124\uc815\ucc3d\uc774 \ub2eb\ub294 \uac83\uc5d0 \uc8fc\uc758\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.iso.desc=\ub370\uc774\ud130 \ub610\ub294 OS \uc2dc\uc791 \uac00\ub2a5 \ubbf8\ub514\uc5b4\ub97c \ud3ec\ud568\ud55c \ub514\uc2a4\ud06c \uc774\ubbf8\uc9c0 +message.join.project=\uc774\uac83\uc73c\ub85c, \ud504\ub85c\uc81d\ud2b8\uc5d0 \ucc38\uc5ec\ud588\uc2b5\ub2c8\ub2e4. \ud504\ub85c\uc81d\ud2b8\ub97c \ucc38\uc870\ud558\ub824\uba74 \ud504\ub85c\uc81d\ud2b8 \ubcf4\uae30\ub85c \uc804\ud658\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.launch.vm.on.private.network=\uc0ac\uc801 \uc804\uc6a9 \ub124\ud2b8\uc6cc\ud06c\ub85c \uc778\uc2a4\ud134\uc2a4\ub97c \uc2dc\uc791\ud569\ub2c8\uae4c? +message.launch.zone=Zone\uc744 \uc2dc\uc791\ud560 \uc900\ube44\uac00 \ub418\uc5c8\uc2b5\ub2c8\ub2e4. \ub2e4\uc74c \uc21c\uc11c\uc5d0 \ub530\ub77c \uc9c4\ud589\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.lock.account=\ud604\uc7ac \uacc4\uc815 \uc815\ubcf4\ub97c \uc7a0\uadf8\uc5b4\ub3c4 \uc88b\uc2b5\ub2c8\uae4c? \uc774 \uacc4\uc815 \uc815\ubcf4 \ubaa8\ub4e0 \uc0ac\uc6a9\uc790\uac00 \ud074\ub77c\uc6b0\ub4dc \uc790\uc6d0\uc744 \uad00\ub9ac\ud560 \uc218 \uc5c6\uac8c \ub429\ub2c8\ub2e4. \uadf8 \ud6c4\ub3c4 \uae30\uc874 Zone \uc790\uc6d0\uc5d0\ub294 \uc811\uadfc \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. +message.migrate.instance.confirm=\uac00\uc0c1 \uc778\uc2a4\ud134\uc2a4 \uc774\uc804 \uc704\uce58\ub294 \ub2e4\uc74c \ud638\uc2a4\ud2b8\ub85c \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.migrate.instance.to.host=\ub2e4\ub978 \ud638\uc2a4\ud2b8\uc5d0\uac8c \uc778\uc2a4\ud134\uc2a4\ub97c \uc774\uc804\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.migrate.instance.to.ps=\ub2e4\ub978 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\uc5d0 \uc778\uc2a4\ud134\uc2a4\ub97c \uc774\uc804\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.migrate.router.confirm=\ub77c\uc6b0\ud130 \uc774\uc804 \uc704\uce58\ub85c \ud638\uc2a4\ud2b8\ub97c \uc120\ud0dd\uc2ed\uc2dc\uc624. +message.migrate.systemvm.confirm=\uc2dc\uc2a4\ud15c VM \uc774\uc804 \uc774\uc804 \uc704\uce58\ub85c \ud638\uc2a4\ud2b8\ub97c \uc120\ud0dd\uc2ed\uc2dc\uc624. +message.migrate.volume=\ub2e4\ub978 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\uc5d0 \ubcfc\ub968\uc744 \uc774\uc804\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.new.user=\uacc4\uc815 \uc815\ubcf4\uc5d0 \uc0c8\ub85c\uc6b4 \uc0ac\uc6a9\uc790\ub97c \ucd94\uac00\ud558\uae30 \uc704\ud574 \uc544\ub798 \uc815\ubcf4\ub97c \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.no.network.support.configuration.not.true=\ubcf4\uc548 \uadf8\ub8f9\uc774 \uc720\ud6a8\ud55c Zone\uc774 \uc5c6\uae30 \ub54c\ubb38\uc5d0 \ucd94\uac00 \ub124\ud2b8\uc6cc\ud06c \uae30\ub2a5\uc740 \uc5c6\uc2b5\ub2c8\ub2e4. \ub2e8\uacc4 5\ub85c \uc9c4\ud589\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.no.network.support=\ud558\uc774\ud37c \ubc14\uc774\uc800\ub85c\uc11c vSphere\ub97c \uc120\ud0dd\ud588\uc73c\ub098 \uc774 \ud558\uc774\ud37c \ubc14\uc774\uc800\uc5d0 \ucd94\uac00 \ub124\ud2b8\uc6cc\ud06c \uae30\ub2a5\uc740 \uc5c6\uc2b5\ub2c8\ub2e4. \ub2e8\uacc4 5\ub85c \uc9c4\ud589\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.no.projects.adminOnly=\ud504\ub85c\uc81d\ud2b8\uac00 \uc5c6\uc2b5\ub2c8\ub2e4.
    \uad00\ub9ac\uc790\uc5d0\uac8c \uc0c8\ub85c\uc6b4 \ud504\ub85c\uc81d\ud2b8 \uc0dd\uc131\uc744 \uc758\ub8b0\ud558\uc2ed\uc2dc\uc624. +message.no.projects=\ud504\ub85c\uc81d\ud2b8\uac00 \uc5c6\uc2b5\ub2c8\ub2e4.
    \ud504\ub85c\uc81d\ud2b8 \uc139\uc158\uc5d0\uc11c \uc0c8\ub85c\uc6b4 \ud504\ub85c\uc81d\ud2b8\ub97c \ub9cc\ub4e4\uc5b4 \uc8fc\uc2ed\uc2dc\uc624. +message.number.clusters=

    \ud074\ub7ec\uc2a4\ud130\uc218

    +message.number.hosts=

    \ud638\uc2a4\ud2b8\uc218

    +message.number.pods=

    Pod\uc218

    +message.number.storage=

    \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \ubcfc\ub968\uc218

    +message.number.zones=

    Zone\uc218

    +message.pending.projects.1=\ubcf4\ub958\uc911\uc778 \ud504\ub85c\uc81d\ud2b8 \ucd08\ub300\uc7a5\uc774 \uc788\uc2b5\ub2c8\ub2e4. +message.pending.projects.2=\ud45c\uc2dc\ud558\ub824\uba74 \ud504\ub85c\uc81d\ud2b8 \uc139\uc158\uc73c\ub85c \uc774\ub3d9\ud558\uace0 \ubaa9\ub85d\uc5d0\uc11c \ucd08\ub300\uc7a5\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4. +message.please.add.at.lease.one.traffic.range=\uc801\uc5b4\ub3c4 \ud55c \uac1c \uc774\uc0c1 \ud2b8\ub798\ud53d \ubc94\uc704\ub97c \ucd94\uac00\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.please.proceed=\ub2e4\uc74c\uc758 \uc21c\uc11c\uc5d0 \uc9c4\ud589\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.please.select.a.configuration.for.your.zone=Zone \uad6c\uc131\uc744 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.please.select.a.different.public.and.management.network.before.removing=\uc0ad\uc81c \uc804\uc5d0 \ub2e4\ub978 \uacf5\uac1c \ubc0f \uad00\ub9ac \ub124\ud2b8\uc6cc\ud06c\ub97c \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.please.select.networks=\uac00\uc0c1 \uba38\uc2e0 \ub124\ud2b8\uc6cc\ud06c\ub97c \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.please.wait.while.zone.is.being.created=Zone\uc774 \ub9cc\ub4e4\uae30\ub420 \ub54c\uae4c\uc9c0 \uc7a0\uae50 \uae30\ub2e4\ub824 \uc8fc\uc2ed\uc2dc\uc624... +message.project.invite.sent=\uc0ac\uc6a9\uc790\uc5d0\uac8c \ucd08\ub300\uc7a5\uc774 \uc804\uc1a1\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \uc0ac\uc6a9\uc790\uac00 \ucd08\ub300\ub97c \uc2b9\uc778\ud558\uba74, \ud504\ub85c\uc81d\ud2b8\uc5d0 \ucd94\uac00\ub429\ub2c8\ub2e4. +message.public.traffic.in.advanced.zone=\ud074\ub77c\uc6b0\ub4dc \ub0b4\ubd80 VM\uc774 \uc778\ud130\ub137\uc5d0 \uc811\uadfc \ud558\uba74, \uacf5\uac1c \ud2b8\ub798\ud53d\uc774 \uc0dd\uc131\ub429\ub2c8\ub2e4. \uc774 \ub54c\ubb38\uc5d0 \uc77c\ubc18\uc801\uc73c\ub85c \uc811\uadfc \uac00\ub2a5\ud55c IP \uc8fc\uc18c\ub97c \ud560\ub2f9\ud560 \ud544\uc694\uac00 \uc788\uc2b5\ub2c8\ub2e4. \ucd5c\uc885 \uc0ac\uc6a9\uc790\ub294 CloudStack \uc0ac\uc6a9\uc790 \uc778\ud130\ud398\uc774\uc2a4\ub97c \uc0ac\uc6a9\ud574 \uc774\ub7ec\ud55c IP \uc8fc\uc18c\ub97c \ucde8\ub4dd\ud558\uace0 \uc190\ub2d8 \ub124\ud2b8\uc6cc\ud06c\uc640 \uacf5\uac1c \ub124\ud2b8\uc6cc\ud06c \uc0ac\uc774\uc5d0 NAT\ub97c \uad6c\ud604\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.

    \uc778\ud130\ub137 \ud2b8\ub798\ud53d\uc744 \uc704\ud574 \uc801\uc5b4\ub3c4 \ud55c \uac1c \uc774\uc0c1 IP \uc8fc\uc18c \ubc94\uc704\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.public.traffic.in.basic.zone=\ud074\ub77c\uc6b0\ub4dc \ub0b4\ubd80 VM\uc774 \uc778\ud130\ub137\uc5d0 \uc811\uadfc \ud560 \ub54c \uc778\ud130\ub137 \uacbd\uc720\ub85c \ud074\ub77c\uc774\uc5b8\ud2b8\uc5d0 \uc11c\ube44\uc2a4\ub97c \uc81c\uacf5\ud558\uba74, \uacf5\uac1c \ud2b8\ub798\ud53d\uc774 \uc0dd\uc131\ub429\ub2c8\ub2e4. \uc774 \ub54c\ubb38\uc5d0 \uc77c\ubc18\uc801\uc73c\ub85c \uc811\uadfc \uac00\ub2a5\ud55c IP \uc8fc\uc18c\ub97c \ud560\ub2f9\ud560 \ud544\uc694\uac00 \uc788\uc2b5\ub2c8\ub2e4. \uc778\uc2a4\ud134\uc2a4\ub97c \ub9cc\ub4e4\uae30\ud558\uba74, \uac8c\uc2a4\ud2b8 IP \uc8fc\uc18c \uc678\uc5d0\uc774 \uacf5\uac1c IP \uc8fc\uc18c \ubc94\uc704\uc5d0\uc11c \uc8fc\uc18c\uac00 \ud558\ub098\uc758 \uc778\uc2a4\ud134\uc2a4\uc5d0 \ud560\ub2f9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uacf5\uac1c IP \uc8fc\uc18c\uc640 \uac8c\uc2a4\ud2b8 IP \uc8fc\uc18c \uc0ac\uc774\uc5d0 \uc815\uc801\uc778 1\ub300 1 NAT\uac00 \uc790\ub3d9\uc73c\ub85c \uc124\uc815 \ub429\ub2c8\ub2e4. \ucd5c\uc885 \uc0ac\uc6a9\uc790\ub294 CloudStack \uc0ac\uc6a9\uc790 \uc778\ud130\ud398\uc774\uc2a4\ub97c \uc0ac\uc6a9\ud574 \ucd94\uac00 IP \uc8fc\uc18c\ub97c \ucde8\ub4dd\ud558\uace0 \uc778\uc2a4\ud134\uc2a4\uc640 \uacf5\uac1c IP \uc8fc\uc18c \uc0ac\uc774\uc5d0 \uc815\uc801 NAT\ub97c \uad6c\ud604\ud560 \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4. +message.remove.vpc=VPC\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.remove.vpn.access=\ub2e4\uc74c \uc0ac\uc6a9\uc790\uc5d0\uc11c VPN \uc811\uadfc\ub97c \uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.reset.password.warning.notPasswordEnabled=\ud604\uc7ac \uc778\uc2a4\ud134\uc2a4 \ud15c\ud50c\ub9bf\uc740 \uc554\ud638 \uad00\ub9ac\ub97c \uc0ac\uc6a9 \ud558\uc9c0 \uc54a\uace0 \uc0dd\uc131\ub418\uc5c8\uc2b5\ub2c8\ub2e4. +message.reset.password.warning.notStopped=\ud604\uc7ac \uc554\ud638\ub97c \ubcc0\uacbd\ud558\uae30 \uc804\uc5d0 \uc778\uc2a4\ud134\uc2a4\ub97c \uc815\uc9c0\ud574\uc57c \ud569\ub2c8\ub2e4. +message.reset.VPN.connection=VPN \uc811\uc18d\uc744 \uc7ac\uc124\uc815 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.restart.mgmt.server=\uc0c8\ub85c\uc6b4 \uc124\uc815\uc744 \uc0ac\uc6a9 \ud558\uae30 \uc704\ud574 \uad00\ub9ac \uc11c\ubc84\ub97c \uc7ac\uc2dc\uc791\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.restart.mgmt.usage.server=\uc0c8\ub85c\uc6b4 \uc124\uc815\uc744 \uc0ac\uc6a9 \ud558\uae30 \uc704\ud574 \uad00\ub9ac \uc11c\ubc84\uc640 \uc0ac\uc6a9 \uc0c1\ud669 \uce21\uc815 \uc11c\ubc84\ub97c \uc7ac\uc2dc\uc791\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.restart.network=\ud604\uc7ac \ub124\ud2b8\uc6cc\ud06c\ub85c \uc81c\uacf5\ud558\ub294 \ubaa8\ub4e0 \uc11c\ube44\uc2a4\uac00 \uc911\ub2e8\ub429\ub2c8\ub2e4. \uc774 \ub124\ud2b8\uc6cc\ud06c\ub97c \uc7ac\uc2dc\uc791\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.restart.vpc=VPC\ub97c \uc7ac\uc2dc\uc791\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.security.group.usage=(\ud574\ub2f9\ud558\ub294 \ubcf4\uc548 \uadf8\ub8f9\uc744 \ubaa8\ub450 \uc120\ud0dd\ud558\ub824\uba74 Ctrl \ud0a4\ub97c \ub204\ub974\uba74\uc11c \ud074\ub9ad\ud574 \uc8fc\uc2ed\uc2dc\uc624) +message.select.a.zone=Zone\uc740 \uc6d0\ub798 \ub2e8\uc77c \ub370\uc774\ud130 \uc13c\ud130\uc5d0 \ud574\ub2f9\ud569\ub2c8\ub2e4. \ubcf5\uc218 Zone\uc744 \uc124\uc815\ud558\uace0 \ubb3c\ub9ac\uc801\uc73c\ub85c \ubd84\ub9ac\ud558\ub294 \ubc29\ubc95\uc73c\ub85c \ud074\ub77c\uc6b0\ub4dc\uc758 \uc2e0\ub8b0\uc131\uc744 \ub192\uc77c \uc218 \uc788\uc2b5\ub2c8\ub2e4. +message.select.instance=\uc778\uc2a4\ud134\uc2a4\ub97c \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.select.iso=\uc0c8\ub85c\uc6b4 \uac00\uc0c1 \uc778\uc2a4\ud134\uc2a4 ISO\ub97c \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.select.item=\ud56d\ubaa9\uc744 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.select.security.groups=\uc0c8\ub85c\uc6b4 \uac00\uc0c1 \uba38\uc2e0 \ubcf4\uc548 \uadf8\ub8f9\uc744 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.select.template=\uc0c8\ub85c\uc6b4 \uac00\uc0c1 \uc778\uc2a4\ud134\uc2a4 \ud15c\ud50c\ub9bf\uc744 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.setup.physical.network.during.zone.creation.basic=\uae30\ubcf8 Zone\uc744 \ucd94\uac00\ud560 \ub54c\ub294 \ud558\uc774\ud37c \ubc14\uc774\uc800\uc0c1\uc758 \ub124\ud2b8\uc6cd\uce74\ub4dc(NIC)\uc5d0 \ub300\uc751\ud558\ub294 \ud55c \uac00\uc9c0 \ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c\ub97c \uc124\uc815 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub124\ud2b8\uc6cc\ud06c\ub294 \uba87 \uac00\uc9c0 \uc885\ub958\uc758 \ud2b8\ub798\ud53d\uc744 \uc804\uc1a1\ud569\ub2c8\ub2e4.

    \ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c\uc5d0 \ub2e4\ub978 \ud2b8\ub798\ud53d\uc758 \uc885\ub958\ub97c\ub4dc\ub798\uadf8 \uc564 \ub4dc\ub86d \ud560 \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4. +message.setup.physical.network.during.zone.creation=\ud655\uc7a5 Zone\uc744 \ucd94\uac00\ud560 \ub54c\ub294 \ud55c \uac1c \uc774\uc0c1 \ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c\ub97c \uc124\uc815\ud574\uc57c \ud569\ub2c8\ub2e4. \uac01 \ub124\ud2b8\uc6cc\ud06c\ub294 \ud558\uc774\ud37c \ubc14\uc774\uc800\uc0c1 \ud55c \uac00\uc9c0 \ub124\ud2b8\uc6cc\ud06c \uce74\ub4dc(NIC)\uc5d0 \ub300\uc751\ud569\ub2c8\ub2e4. \uac01 \ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c\uc5d0\uc11c\ub294 \uad6c\uc131\uc5d0 \uc81c\ud55c\uc774 \uc788\uc73c\ub098, \ud55c \uac00\uc9c0 \uc885\ub958 \uc774\uc0c1 \ud2b8\ub798\ud53d\uc744 \ud1b5\uc2e0\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.

    \uac01 \ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c\uc5d0 \ub300\ud574\uc11c\ud2b8\ub798\ud53d \uc885\ub958\ub97c \ub4dc\ub798\uadf8 \uc564 \ub4dc\ub86d\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.setup.successful=\ud074\ub77c\uc6b0\ub4dc\uac00 \uc124\uc815 \ub418\uc5c8\uc2b5\ub2c8\ub2e4. +message.snapshot.schedule=\ub2e4\uc74c \uc635\uc158\uc5d0\uc11c \uc120\ud0dd\ud55c \uc815\ucc45 \uae30\ubcf8 \uc124\uc815\uc744 \uc801\uc6a9\ud558\uc5ec \uc815\uae30 \uc2a4\ub0c5\uc0f7 \uc2a4\ucf00\uc904\uc744 \uc124\uc815 \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. +message.specify.url=URL\ub97c \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624 +message.step.1.continue=\uc2e4\ud589\ud558\ub824\uba74 \ud15c\ud50c\ub9bf \ub610\ub294 ISO\ub97c \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.step.1.desc=\uc0c8\ub85c\uc6b4 \uac00\uc0c1 \uc778\uc2a4\ud134\uc2a4\uc6a9 \ud15c\ud50c\ub9bf\uc744 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624.ISO\ub97c \uc124\uce58 \ud560 \uc218 \uc788\ub294 \uacf5\ubc31 \ud15c\ud50c\ub9bf\uc744 \uc120\ud0dd\ud560 \uc218\ub3c4 \uc788\uc2b5\ub2c8\ub2e4. +message.step.2.continue=\uc2e4\ud589\ud558\ub824\uba74 \uc11c\ube44\uc2a4\uc81c\uacf5\uc744 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. message.step.2.desc= -message.step.3.continue=실행하려면 디스í¬ì œê³µì„ ì„ íƒí•´ 주십시오. +message.step.3.continue=\uc2e4\ud589\ud558\ub824\uba74 \ub514\uc2a4\ud06c\uc81c\uacf5\uc744 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. message.step.3.desc= -message.step.4.continue=실행하려면 네트워í¬ë¥¼ ì ì–´ë„ 한 ê°œ ì´ìƒ ì„ íƒí•´ 주십시오. -message.step.4.desc=ê°€ìƒ ì¸ìŠ¤í„´ìŠ¤ê°€ ì ‘ì†í•˜ëŠ” 기본 네트워í¬ë¥¼ ì„ íƒí•´ 주십시오. -message.update.os.preference=현재 호스트 OS 기본 ì„¤ì •ì„ ì„ íƒí•´ 주십시오.ê°™ì€ ê¸°ë³¸ ì„¤ì •ì„ ê°€ì§€ëŠ” 모든 ê°€ìƒ ì¸ìŠ¤í„´ìŠ¤ëŠ” 다른 호스트를 ì„ íƒí•˜ê¸° ì „ì— ìš°ì„ ì´ í˜¸ìŠ¤íŠ¸ê°€ 할당할 수 있습니다. -message.update.ssl=ê° ì½˜ì†” 프ë¡ì‹œ ê°€ìƒ ì¸ìŠ¤í„´ìŠ¤ë¡œ ì—…ë°ì´íŠ¸í•˜ëŠ” X.509 기반 새 SSL ì¸ì¦ì„œë¥¼ 전송해 주십시오: -message.virtual.network.desc=계정 ì •ë³´ ì „ìš© ê°€ìƒ ë„¤íŠ¸ì›Œí¬ìž…니다. 브로드ìºìŠ¤íŠ¸ ë„ë©”ì¸ì€ VLAN ë‚´ì— ë°°ì¹˜ë˜ì–´ 공개 네트워í¬ì— 접근는 ëª¨ë‘ ê°€ìƒ ë¼ìš°í„°ì— 해서 루팅 ë©ë‹ˆë‹¤. -message.volume.create.template.confirm=현재 ë””ìŠ¤í¬ ë³¼ë¥¨ í…œí”Œë¦¿ì„ ë§Œë“œì‹œê² ìŠµë‹ˆê¹Œ? 볼륨 í¬ê¸°ì— ë”°ë¼ í…œí”Œë¦¿ ë§Œë“¤ê¸°ì— ëª‡ ë¶„ ì´ìƒ 걸릴 ê°€ëŠ¥ì„±ì´ ìžˆìŠµë‹ˆë‹¤. -message.zone.step.1.desc=Zone ë„¤íŠ¸ì›Œí¬ ëª¨ë¸ì„ ì„ íƒí•´ 주십시오. -message.zone.step.2.desc=새 Zoneì„ ì¶”ê°€í•˜ê¸° 위해 아래 정보를 입력해 주십시오. -message.zone.step.3.desc=새 Pod를 추가하기 위해 아래 정보를 입력해 주십시오. -message.apply.snapshot.policy=현재 스냅샷 정책를 ì—…ë°ì´íŠ¸í–ˆìŠµë‹ˆë‹¤. -message.disable.snapshot.policy=현재 스냅샷 정책를 사용 안 함으로 설정했습니다. -message.action.change.service.warning.for.instance=현재 서비스 ì œê³µì„ ë³€ê²½í•˜ê¸° ì „ì— ì¸ìŠ¤í„´ìŠ¤ë¥¼ 정지해야 합니다. -message.action.change.service.warning.for.router=현재 서비스 ì œê³µì„ ë³€ê²½í•˜ê¸° ì „ì— ë¼ìš°í„°ë¥¼ 정지해야 합니다. -message.action.reset.password.warning=현재 암호를 변경하기 ì „ì— ì¸ìŠ¤í„´ìŠ¤ë¥¼ 정지해야 합니다. -message.action.reset.password.off=ì¸ìŠ¤í„´ìŠ¤ëŠ” 현재 ê¸°ëŠ¥ì„ ì§€ì› í•˜ì§€ 않습니다. - -#Errors -error.login=사용ìžëª…/암호가 기ë¡ê³¼ ì¼ì¹˜í•˜ì§€ 않습니다. -error.menu.select=í•­ëª©ì´ ì„ íƒë˜ì–´ 있지 않기 ë•Œë¬¸ì— ìž‘ì—…ì„ ì‹¤í–‰í•  수 없습니다. -error.mgmt.server.inaccessible=관리 ì„œë²„ì— ì ‘ê·¼ í•  수 없습니다. 다ìŒì— 재실행해 주십시오. -error.session.expired=세션 ìœ íš¨ê¸°ê°„ì´ ëŠì–´ì¡ŒìŠµë‹ˆë‹¤. - -#resizeVolumes -label.resize.new.size=새 í¬ê¸°(GB) -label.action.resize.volume=볼륨 í¬ê¸° 변경 -label.action.resize.volume.processing=볼륨 í¬ê¸° 변경 중... -label.resize.new.offering.id=새로 제공 -label.resize.shrink.ok=변경 완료 +message.step.4.continue=\uc2e4\ud589\ud558\ub824\uba74 \ub124\ud2b8\uc6cc\ud06c\ub97c \uc801\uc5b4\ub3c4 \ud55c \uac1c \uc774\uc0c1 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.step.4.desc=\uac00\uc0c1 \uc778\uc2a4\ud134\uc2a4\uac00 \uc811\uc18d\ud558\ub294 \uae30\ubcf8 \ub124\ud2b8\uc6cc\ud06c\ub97c \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.storage.traffic=\ud638\uc2a4\ud2b8\ub098 CloudStack \uc2dc\uc2a4\ud15c VM \ub4f1 \uad00\ub9ac \uc11c\ubc84\uc640 \ud1b5\uc2e0\ud558\ub294 CloudStack \ub0b4\ubd80 \uc790\uc6d0\uac04 \ud2b8\ub798\ud53d\uc785\ub2c8\ub2e4. \uc5ec\uae30\uc11c \uc2a4\ud1a0\ub9ac\uc9c0 \ud2b8\ub798\ud53d\uc744 \uad6c\uc131\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.suspend.project=\ud604\uc7ac \ud504\ub85c\uc81d\ud2b8\ub97c \uc77c\uc2dc\uc815\uc9c0\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.template.desc=VM\uc758 \uc2dc\uc791\uc5d0 \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 OS \uc774\ubbf8\uc9c0 +message.tooltip.dns.1=Zone\ub0b4 VM \ub85c \uc0ac\uc6a9\ud558\ub294 DNS \uc11c\ubc84 \uc774\ub984\uc785\ub2c8\ub2e4. Zone \uacf5\uac1c IP \uc8fc\uc18c\uc5d0\uc11c \uc774 \uc11c\ubc84\uc5d0 \ud1b5\uc2e0\ud560 \uc218 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4. +message.tooltip.dns.2=Zone\ub0b4 VM \ub85c \uc0ac\uc6a9\ud558\ub294 \ub450\ubc88\uc9f8 DNS \uc11c\ubc84 \uc774\ub984\uc785\ub2c8\ub2e4. Zone \uacf5\uac1c IP \uc8fc\uc18c\uc5d0\uc11c \uc774 \uc11c\ubc84\uc5d0 \ud1b5\uc2e0\ud560 \uc218 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4. +message.tooltip.internal.dns.1=Zone\ub0b4 CloudStack \ub0b4\ubd80 \uc2dc\uc2a4\ud15c VM \ub85c \uc0ac\uc6a9\ud558\ub294 DNS \uc11c\ubc84 \uc774\ub984\uc785\ub2c8\ub2e4. Pod \uc0ac\uc124 IP \uc8fc\uc18c\uc5d0\uc11c \uc774 \uc11c\ubc84\uc5d0 \ud1b5\uc2e0\ud560 \uc218 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4. +message.tooltip.internal.dns.2=Zone\ub0b4 CloudStack \ub0b4\ubd80 \uc2dc\uc2a4\ud15c VM \ub85c \uc0ac\uc6a9\ud558\ub294 DNS \uc11c\ubc84 \uc774\ub984\uc785\ub2c8\ub2e4. Pod \uc0ac\uc124 IP \uc8fc\uc18c\uc5d0\uc11c \uc774 \uc11c\ubc84\uc5d0 \ud1b5\uc2e0\ud560 \uc218 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4. +message.tooltip.network.domain=DNS \uc11c\ud53d\uc2a4\uc785\ub2c8\ub2e4. \uc774 \uc11c\ud53d\uc2a4\uc5d0\uc11c \uac8c\uc2a4\ud2b8 VM \ub85c \uc811\uadfc \ud558\ub294 \ub124\ud2b8\uc6cc\ud06c \ub9de\ucda4\ud615 \ub3c4\uba54\uc778\uba85\uc744 \ub9cc\ub4ed\ub2c8\ub2e4. +message.tooltip.pod.name=\ud604\uc7ac Pod \uc774\ub984\uc785\ub2c8\ub2e4. +message.tooltip.reserved.system.gateway=Pod\ub0b4 \ud638\uc2a4\ud2b8 \uac8c\uc774\ud2b8\uc6e8\uc774\uc785\ub2c8\ub2e4. +message.tooltip.reserved.system.netmask=Pod \uc11c\ube0c\ub124\ud2b8\uc6cc\ud06c\ub97c \uc815\ud558\ub294 \ub124\ud2b8\uc6cc\ud06c \ud504\ub808\ud53d\uc2a4\uc785\ub2c8\ub2e4. CIDR \ud45c\uae30\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4. +message.tooltip.zone.name=Zone \uc774\ub984\uc785\ub2c8\ub2e4. +message.update.os.preference=\ud604\uc7ac \ud638\uc2a4\ud2b8 OS \uae30\ubcf8 \uc124\uc815\uc744 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624.\uac19\uc740 \uae30\ubcf8 \uc124\uc815\uc744 \uac00\uc9c0\ub294 \ubaa8\ub4e0 \uac00\uc0c1 \uc778\uc2a4\ud134\uc2a4\ub294 \ub2e4\ub978 \ud638\uc2a4\ud2b8\ub97c \uc120\ud0dd\ud558\uae30 \uc804\uc5d0 \uc6b0\uc120\uc774 \ud638\uc2a4\ud2b8\uac00 \ud560\ub2f9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. +message.update.resource.count=\ud604\uc7ac \uacc4\uc815 \uc815\ubcf4 \uc790\uc6d0\uc218\ub97c \uc5c5\ub370\uc774\ud2b8\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.update.ssl=\uac01 \ucf58\uc194 \ud504\ub85d\uc2dc \uac00\uc0c1 \uc778\uc2a4\ud134\uc2a4\ub85c \uc5c5\ub370\uc774\ud2b8\ud558\ub294 X.509 \uae30\ubc18 \uc0c8 SSL \uc778\uc99d\uc11c\ub97c \uc804\uc1a1\ud574 \uc8fc\uc2ed\uc2dc\uc624\: +message.validate.instance.name=\uc778\uc2a4\ud134\uc2a4\uba85\uc740 63 \ubb38\uc790 \uc774\ub0b4\uc5d0\uc11c \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624. ASCII \ubb38\uc790\uc758 a-z, A-Z, \uc22b\uc790\uc758 0-9 \ubc0f \ud558\uc774\ud508\ub9cc\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ubb38\uc790\ub85c \uc2dc\uc791\ud558\uc5ec \ubb38\uc790 \ub610\ub294 \uc22b\uc790\ub85c \ub05d\ub0b4\uc57c \ud569\ub2c8\ub2e4. +message.virtual.network.desc=\uacc4\uc815 \uc815\ubcf4 \uc804\uc6a9 \uac00\uc0c1 \ub124\ud2b8\uc6cc\ud06c\uc785\ub2c8\ub2e4. \ube0c\ub85c\ub4dc\uce90\uc2a4\ud2b8 \ub3c4\uba54\uc778\uc740 VLAN \ub0b4\uc5d0 \ubc30\uce58\ub418\uc5b4 \uacf5\uac1c \ub124\ud2b8\uc6cc\ud06c\uc5d0 \uc811\uadfc\ub294 \ubaa8\ub450 \uac00\uc0c1 \ub77c\uc6b0\ud130\uc5d0 \ud574\uc11c \ub8e8\ud305 \ub429\ub2c8\ub2e4. +message.vm.create.template.confirm=\ud15c\ud50c\ub9bf \ub9cc\ub4e4\uae30\ud558\uba74 VM\uc774 \uc790\ub3d9\uc73c\ub85c \uc7ac\uc2dc\uc791\ub429\ub2c8\ub2e4. +message.vm.review.launch=\ub2e4\uc74c\uc758 \uc815\ubcf4\ub97c \ucc38\uc870\ud558\uace0 \uac00\uc0c1 \uc778\uc2a4\ud134\uc2a4\ub97c \uc62c\ubc14\ub974\uac8c \uc124\uc815\ud55c \uac83\uc744 \ud655\uc778\ud558\uace0 \ub098\uc11c \uc2dc\uc791\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.volume.create.template.confirm=\ud604\uc7ac \ub514\uc2a4\ud06c \ubcfc\ub968 \ud15c\ud50c\ub9bf\uc744 \ub9cc\ub4dc\uc2dc\uaca0\uc2b5\ub2c8\uae4c? \ubcfc\ub968 \ud06c\uae30\uc5d0 \ub530\ub77c \ud15c\ud50c\ub9bf \ub9cc\ub4e4\uae30\uc5d0 \uba87 \ubd84 \uc774\uc0c1 \uac78\ub9b4 \uac00\ub2a5\uc131\uc774 \uc788\uc2b5\ub2c8\ub2e4. +message.you.must.have.at.least.one.physical.network=\uc801\uc5b4\ub3c4 \ud55c \uac1c \uc774\uc0c1 \ubb3c\ub9ac \ub124\ud2b8\uc6cc\ud06c\uac00 \ud544\uc694\ud569\ub2c8\ub2e4 +message.zone.creation.complete.would.you.like.to.enable.this.zone=Zone\uc744 \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4. \uc774 Zone\uc744 \uc0ac\uc6a9 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +message.Zone.creation.complete=Zone\uc744 \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4. +message.zone.no.network.selection=\uc120\ud0dd\ud55c Zone\uc5d0\uc11c\ub294 \ub124\ud2b8\uc6cc\ud06c\ub97c \uc120\ud0dd\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +message.zone.step.1.desc=Zone \ub124\ud2b8\uc6cc\ud06c \ubaa8\ub378\uc744 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.zone.step.2.desc=\uc0c8 Zone\uc744 \ucd94\uac00\ud558\uae30 \uc704\ud574 \uc544\ub798 \uc815\ubcf4\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.zone.step.3.desc=\uc0c8 Pod\ub97c \ucd94\uac00\ud558\uae30 \uc704\ud574 \uc544\ub798 \uc815\ubcf4\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. +message.zoneWizard.enable.local.storage=\uacbd\uace0\:\ud604\uc7ac Zone\uc758 \ub85c\uceec \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \uc0ac\uc6a9 \ud558\ub294 \uacbd\uc6b0\ub294 \uc2dc\uc2a4\ud15c VM\uc758 \uc2dc\uc791 \uc7a5\uc18c\uc5d0 \ub530\ub77c \ub2e4\uc74c \uc791\uc5c5\uc774 \ud544\uc694\ud569\ub2c8\ub2e4.

    1. \uc2dc\uc2a4\ud15c VM\uc744 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\ub85c \uc2dc\uc791\ud574\uc57c \ud558\ub294 \uacbd\uc6b0 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \ub9cc\ub4e4\uae30\ud55c \ub2e4\uc74c\uc5d0 Zone\uc5d0 \ucd94\uac00\ud574\uc57c \ud569\ub2c8\ub2e4. \ub610\ud55c, \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc0c1\ud0dc\uc758 Zone\uc744 \uc2dc\uc791\ud574\uc57c \ud569\ub2c8\ub2e4.

    2. \uc2dc\uc2a4\ud15c VM\ub97c \ub85c\uceec \uc2a4\ud1a0\ub9ac\uc9c0\ub85c \uc2dc\uc791\ud560 \ud544\uc694\uac00 \uc788\ub294 \uacbd\uc6b0 system.vm.use.local.storage\ub97c true \ub85c \uc124\uc815\ud558\uace0 \ub098\uc11c Zone\uc744 \uc0ac\uc6a9\ud574\uc57c \ud569\ub2c8\ub2e4.


    \uc9c4\ud589 \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +mode=\ubaa8\ub4dc +network.rate=\ub124\ud2b8\uc6cc\ud06c \uc18d\ub3c4 +notification.reboot.instance=\uc778\uc2a4\ud134\uc2a4 \uc7ac\uc2dc\uc791 +notification.start.instance=\uc778\uc2a4\ud134\uc2a4 \uc2dc\uc791 +notification.stop.instance=\uc778\uc2a4\ud134\uc2a4 \uc815\uc9c0 +side.by.side=\ubcd1\ub82c +state.Accepted=\uc2b9\uc778 \uc644\ub8cc +state.Active=\ud65c\uc131 +state.Allocated=\ud560\ub2f9 \ub05d\ub09c \uc0c1\ud0dc +state.Allocating=\ud560\ub2f9 \uc911 +state.BackedUp=\ubc31\uc5c5 \uc644\ub8cc +state.BackingUp=\ubc31\uc5c5 \uc911 +state.Completed=\uc644\ub8cc +state.Creating=\uc0dd\uc131 \uc911 +state.Declined=\uac70\uc808 +state.Destroyed=\ud30c\uae30\ub41c \uc0c1\ud0dc +state.Disabled=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 +state.Enabled=\uc0ac\uc6a9\ud568 +state.enabled=\uc720\ud6a8\ud568 +state.Error=\uc624\ub958 +state.Expunging=\uc81c\uac70 \uc911 +state.Migrating=\uc774\uc804 \uc911 +state.Pending=\ubcf4\ub958 +state.ready=\uc900\ube44 \uc644\ub8cc +state.Ready=\uc900\ube44 \uc644\ub8cc +state.Running=\uc2e4\ud589 \uc911 +state.Starting=\uc2dc\uc791 \uc911 +state.Stopped=\uc815\uc9c0\ub41c \uc0c1\ud0dc +state.Stopping=\uc815\uc9c0\ud558\uace0 \uc788\ub294 \uc911 +state.Suspended=\uc77c\uc2dc\uc815\uc9c0 +ui.listView.filters.all=\ubaa8\ub450 +ui.listView.filters.mine=\ub0b4 \uc815\ubcf4\ub9cc diff --git a/client/WEB-INF/classes/resources/messages_nb_NO.properties b/client/WEB-INF/classes/resources/messages_nb_NO.properties new file mode 100644 index 00000000000..be412449398 --- /dev/null +++ b/client/WEB-INF/classes/resources/messages_nb_NO.properties @@ -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. + +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.
    Vennligst be din administrator om \u00e5 opprette et nytt prosjekt. +message.no.projects=Du har ingen prosjekter.
    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 diff --git a/client/WEB-INF/classes/resources/messages_pt_BR.properties b/client/WEB-INF/classes/resources/messages_pt_BR.properties index 5202f562cba..fd24f542e8d 100644 --- a/client/WEB-INF/classes/resources/messages_pt_BR.properties +++ b/client/WEB-INF/classes/resources/messages_pt_BR.properties @@ -15,1018 +15,424 @@ # specific language governing permissions and limitations # under the License. - -#new labels (begin) ********************************************************************************************** -# label.isolation.uri=Isolation URI -# label.broadcast.uri=Broadcast URI -#new labels (end) ************************************************************************************************ - - -#modified labels (begin) ***************************************************************************************** -# message.zoneWizard.enable.local.storage=WARNING\: If you enable local storage for this zone, you must do the following, depending on where you would like your system VMs to launch\:

    1. If system VMs need to be launched in primary storage, primary storage needs to be added to the zone after creation. You must also start the zone in a disabled state.

    2. If system VMs need to be launched in local storage, system.vm.use.local.storage needs to be set to true before you enable the zone.


    Would you like to continue? -#modified labels (end) ******************************************************************************************* - -# label.configure.network.ACLs=Configure Network ACLs -# label.network.ACLs=Network ACLs -# label.add.network.ACL=Add network ACL -# label.private.Gateway=Private Gateway -# label.VPC.router.details=VPC router details -# label.VMs.in.tier=VMs in tier -# label.local.storage.enabled=Local storage enabled -# label.tier.details=Tier details -# label.edit.tags=Edit tags -label.action.enable.physical.network=Habilitar rede física -label.action.disable.physical.network=Desabilitar rede física -message.action.enable.physical.network=Por favor confirme que você deseja habilitar esta rede física. -message.action.disable.physical.network=Por favor confirme que você deseja desabilitar esta rede física. - -# label.select.tier=Select Tier -# label.add.ACL=Add ACL -# label.remove.ACL=Remove ACL -# label.tier=Tier -# label.network.ACL=Network ACL -# label.network.ACL.total=Network ACL Total -# label.add.new.gateway=Add new gateway -# message.add.new.gateway.to.vpc=Please specify the information to add a new gateway to this VPC. -# label.delete.gateway=delete gateway -# message.delete.gateway=Please confirm you want to delete the gateway -# label.CIDR.of.destination.network=CIDR of destination network -# label.add.route=Add route -# label.add.static.route=Add static route -# label.remove.static.route=Remove static route -# label.site.to.site.VPN=site-to-site VPN -# label.add.VPN.gateway=Add VPN Gateway -# message.add.VPN.gateway=Please confirm that you want to add a VPN Gateway -# label.VPN.gateway=VPN Gateway -# label.delete.VPN.gateway=delete VPN Gateway -# message.delete.VPN.gateway=Please confirm that you want to delete this VPN Gateway -# label.VPN.connection=VPN Connection -# label.IPsec.preshared.key=IPsec Preshared-Key -# label.IKE.policy=IKE policy -# label.ESP.policy=ESP policy -# label.create.VPN.connection=Create VPN Connection -# label.VPN.customer.gateway=VPN Customer Gateway -# label.CIDR.list=CIDR list -# label.IKE.lifetime=IKE Lifetime (second) -# label.ESP.lifetime=ESP Lifetime(second) -# label.dead.peer.detection=Dead Peer Detection -# label.reset.VPN.connection=Reset VPN connection -# message.reset.VPN.connection=Please confirm that you want to reset VPN connection -# label.delete.VPN.connection=delete VPN connection -# message.delete.VPN.connection=Please confirm that you want to delete VPN connection -# label.add.new.tier=Add new tier -# label.add.VM.to.tier=Add VM to tier -# label.remove.tier=Remove tier - -# label.local.storage.enabled=Local storage enabled -# label.associated.network=Associated Network -# label.add.port.forwarding.rule=Add port forwarding rule -# label.dns=DNS - -# label.vpc=VPC -# label.vpc.id=VPC ID -# label.tier=Tier -# label.add.vpc=Add VPC -# label.super.cidr.for.guest.networks=Super CIDR for Guest Networks -# label.DNS.domain.for.guest.networks=DNS domain for Guest Networks -# label.configure.vpc=Configure VPC -# label.edit.vpc=Edit VPC -# label.restart.vpc=restart VPC -# message.restart.vpc=Please confirm that you want to restart the VPC -# label.remove.vpc=remove VPC -# message.remove.vpc=Please confirm that you want to remove the VPC -# label.vpn.customer.gateway=VPN Customer Gateway -# label.add.vpn.customer.gateway=Add VPN Customer Gateway -# label.IKE.encryption=IKE Encryption -# label.IKE.hash=IKE Hash -# label.IKE.DH=IKE DH -# label.ESP.encryption=ESP Encryption -# label.ESP.hash=ESP Hash -# label.perfect.forward.secrecy=Perfect Forward Secrecy -# label.IKE.lifetime=IKE Lifetime (second) -# label.ESP.lifetime=ESP Lifetime(second) -# label.dead.peer.detection=Dead Peer Detection -# label.delete.VPN.customer.gateway=delete VPN Customer Gateway -# message.delete.VPN.customer.gateway=Please confirm that you want to delete this VPN Customer Gateway - -label.network.domain.text=Texto do domínio de rede -label.memory.mb=Memória -label.cpu.mhz=CPU (em MHz) - -message.action.remove.host=Remover o único/último host do cluster e reinstalar o host irá provocar a perda do ambiente/banco do host tornando os Cloud Servers inutilizáveis. - -message.action.reboot.router=Confirme que você deseja reiniciar este roteador. -message.action.stop.router=Confirme que você deseja parar este roteador. -message.restart.network=Por favor confirme que você deseja reiniciar a rede - - -label.ipaddress=Endereço IP -label.vcdcname=Nome do vCenter DC -label.vcipaddress=Endereço IP do vCenter -label.vsmctrlvlanid=Control VLAN ID -label.vsmpktvlanid=Packet VLAN ID -label.vsmstoragevlanid=Storage VLAN ID -label.nexusVswitch=Nexus Vswitch -label.action.delete.nexusVswitch=Remover NexusVswitch -label.action.enable.nexusVswitch=Habilitar NexusVswitch -label.action.disable.nexusVswitch=Desabilitar NexusVswitch -label.action.list.nexusVswitch=Listar NexusVswitch -message.action.delete.nexusVswitch=Por favor confirme que você deseja remover este nexusVswitch. -message.action.enable.nexusVswitch=Por favor confirme que você deseja habilitar este nexusVswitch. -message.action.disable.nexusVswitch=Por favor confirme que você deseja desabilitar este nexusVswitch -message.specify.url=Por favor especifique a URL -label.select.instance.to.attach.volume.to=Escolha uma instância para conectar o volume -label.upload=Enviar -label.upload.volume=Enviar o Volume -label.virtual.routers=Roteadores Virtuais -label.primary.storage.count=Pools de Storage Primários -label.secondary.storage.count=Pools de Storage secundários -label.number.of.system.vms=Número de VMs de sistema -label.number.of.virtual.routers=Número de Roteadores Virtuais -label.action.register.iso=Registrar ISO -label.isolation.method=Método de isolação -label.action.register.template=Registrar template -label.checksum=MD5 checksum -label.vpn=VPN -label.vlan=VLAN - - -label.management.ips=Gerenciamento de Endereços IP -label.devices=Dispositivos -label.rules=Regras -# label.traffic.label=Traffic label -label.vm.state=Estado da VM -message.setup.physical.network.during.zone.creation.basic=Quando adicionar uma zona básica, você pode configurar uma rede física, que corresponde a uma NIC no hypervisor. A rede carrega diversos tipos de tráfego.

    Você pode adicionar e remover outros tipos de tráfego na mesma interface de rede física. -label.domain.router=Roteador do Domínio -label.console.proxy=Console proxy -label.secondary.storage.vm=VM de storage secundário -label.add.netScaler.device=Adicionar dispositivo Netscaler -label.add.F5.device=Adicionar dispositivo F5 -label.add.SRX.device=Adicionar dispositivo SRX -label.account.and.security.group=Contas, grupos de Segurança -label.fetch.latest=Obter últimos -label.system.offering=Ofertas de Sistema -message.validate.instance.name=Nomes de instâncias não podem ter mais de 63 caracteres. Somente letras ASCII a~z, A~Z, dígitos 0~9 e hífen são permitidos. Deve começar com uma letra e terminar com uma letra ou dígito. - - -label.isolated.networks=Redes Isoladas -label.latest.events=Últimos eventos -state.Enabled=Habilitado -label.system.wide.capacity=Capacidade Total do Sistema -label.network.service.providers=Provedores de Serviços de Rede -message.launch.zone=A zona está pronta para ser executada; por favor continue para o próximo passo. -error.unable.to.reach.management.server=Não foi possível acessar o Servidor de Gerenciamento -label.internal.name=Nome interno -# message.configure.all.traffic.types=You have multiple physical networks; please configure labels for each traffic type by clicking on the Edit button. -# message.edit.traffic.type=Please specify the traffic label you want associated with this traffic type. -label.edit.traffic.type=Editar tipo de tráfego -# label.label=Label -label.max.networks=Máx. de redes -error.invalid.username.password=Usuário ou senha inválidos -message.enabling.security.group.provider=Habilitar provider de grupo de segurança -message.adding.Netscaler.provider=Adicionando Netscaler provider -message.creating.guest.network=Criando rede guest -label.action.delete.physical.network=Deletar rede física -message.action.delete.physical.network=Por favor confirme que você deseja deletar esta rede física -message.installWizard.copy.whatIsAHost=Um host é um único computador. Os Hosts provêem os recursos computacionais para executar as máquinas virtuais. Cada host possuí o software do hypervisor instalado nele para gerenciar as guest VMs (Exceto os hosts bare metal, que são um caso especial discutido no Guia Avançado de Instalação). Por exemplo, um servidor Linux com KVM habilitado, um servidor Citrix XenServer e um servidor ESXi são hosts. Na Instalação Básica, nós utilizamos um único host rodando XenServer ou KVM.

    O host é a menor unidade organizacional dentro de uma instalação CloudStack&\#8482; . Hosts estão contidos dentro de Clusters, clusters estão contidos dentro de pods e pods estão contidos dentro de zonas. - - -label.add.compute.offering=Adicionar oferta de computação -label.compute.offering=Oferta de Computação -label.compute.offerings=Ofertas de Computação -label.select.offering=Selecionar Oferta -label.menu.infrastructure=Infra-estrutura -label.sticky.tablesize=Tamanho da Tabela -label.sticky.expire=Expires -label.sticky.cookie-name=Nome do Cookie -label.sticky.mode=Modo -label.sticky.length=Tamanho -label.sticky.holdtime=Tempo de espera -# label.sticky.request-learn=Request learn -label.sticky.prefix=Prefixo -label.sticky.nocache=Sem Cache -label.sticky.indirect=Indireto -# label.sticky.postonly=Post only -label.sticky.domain=Domínio -state.Allocating=Alocando -state.Migrating=Migrando -error.please.specify.physical.network.tags=Ofertas de Rede não estarão disponíveis enquanto você não especificar tags para esta interface física. - - -state.Stopping=Parando -message.add.load.balancer.under.ip=A regra do balanceador de carga foi adicionada para o IP\: -message.select.instance=Por favor selecione uma instância. -label.select=Selecionar -label.select.vm.for.static.nat=Selecionar VM para NAT estático -label.select.instance=Selecionar instância -label.nat.port.range=Range de Portas NAT -label.static.nat.vm.details=Detalhes de NAT estático da VM -label.edit.lb.rule=Editar regra de LB -message.migrate.instance.to.host=Por favor confirme que você deseja migrar a instância para outro host. -label.migrate.instance.to.host=Migrar instância para outro host -message.migrate.instance.to.ps=Por favor confirme que você deseja migrar a instância para outro storage primário. -label.migrate.instance.to.ps=Migrar instância para outro storage primário -label.corrections.saved=Alterações salvas -message.installWizard.copy.whatIsSecondaryStorage=O storage secundário está associado a uma zona, ele é responsável por armazenar o seguinte\:
    • Imagens de Templates do SO - que podem ser utilizadas para boot das VMs e podem incluir configurações adicionais, como por exemplo as aplicações instaladas
    • Imagens ISO - Imagens de sistema operacional que podem ser bootáveis ou não
    • Snapshots do volume de discos - cópias salvas dos dados de uma VM que pode ser utilizada para recuperação de dados ou criação de novos templates
    -message.installWizard.copy.whatIsPrimaryStorage=Uma infraestrutura de Cloud CloudStack&\#8482; utiliza dois tipos de storage\: storage primário e storage secundário. Ambos os tipos podem ser iSCSI, NFS servers, ou disco local.

    O Storage primário está associado com um cluster, e armazena os volumes de disco de cada guest VM para todas as VMs em execução nos hosts deste cluster. O servidor de storage primário tipicamente encontra-se localizado perto dos hosts. -message.installWizard.copy.whatIsACluster=Um cluster provê uma maneira de agrupar hosts. Os hosts em um cluster tem hardware idêntico, rodam o mesmo hypervisor, estão na mesma subnet, acessam o mesmo storage compartilhado. Instâncias de máquinas virtuais (VMs) podem ser migradas a quente - live migration - de um host para outro host no mesmo cluster, sem interromper o serviço para o usuário. Um Cluster é a terceira maior unidade organizacional em uma instalação CloudStack&\#8482; . Clusters estão contidos em pods e pods estão contidos em zonas.

    O CloudStack&\#8482; permite múltiplos clusters em uma mesma cloud, entretanto para a instalação básica, nós iremos precisar apenas de um cluster. -message.installWizard.copy.whatIsAPod=Um pod normalmente representa um único rack. Hosts no mesmo pod estão na mesma subrede.

    Um pod é a segunda maior unidade organizacional de uma instalação CloudStack&\#8482; . Pods estão contidos dentro de zonas. Cada zona, pode conter um ou mais pods; Na instalação básica, você irá ter apenas um pod na sua zona. -message.installWizard.copy.whatIsAZone=Uma zona é a maior unidade organizacional em uma instalação CloudStack&\#8482; . Uma zona tipicamente corresponde a um único datacenter, apesar de ser possível ter múltiplas zonas no mesmo datacenter. O benefício de se organizar a infra-estrutura em zonas é permitir o isolamento físico e redundância. Por exemplo, cada zona pode possuir sua própria alimentação de energia e link de saída de internet e zonas podem estar geograficamente separadas (apesar de não ser obrigatório). -message.installWizard.copy.whatIsCloudStack=O CloudStack&\#8482 é uma plataforma de software que agrega recursos computacionais para construir uma Cloud de Infra-estrutura como Serviço (IaaS) pública, privada ou híbrida. O CloudStack&\#8482 gerência a rede, o storage e os recursos computacionais que compõem a infra-estrutura de cloud. Utilize o CloudStack&\#8482 para instalar, gerenciar e configurar os ambientes de cloud computing.

    Indo além de imagens de máquinas virtuais individuais rodando em hardware commodity, CloudStack&\#8482 provê uma solução completa de software de infra-estrutura de cloud para entregar datacenters virtuais como um serviço - possuindo todos os componentes essenciais para contruir, instalar e gerenciar aplicações na cloud multi-camadas e multi-tenant. Ambas as versões open-source e premium estão disponíveis, com a versão opensource oferecendo praticamente os mesmos recursos. -message.installWizard.tooltip.addSecondaryStorage.path=Path exportado, localizado no servidor que você especificou acima -message.installWizard.tooltip.addSecondaryStorage.nfsServer=O endereço IP do servidor NFS hospedando o storage secundário -message.installWizard.tooltip.addPrimaryStorage.path=(para NFS) No NFS este é o path exportado pelo servidor. Path (para SharedMountPoint). Com o KVM este é o path em cada host onde o storage primário está montado. Por exemplo, "/mnt/primary". -message.installWizard.tooltip.addPrimaryStorage.server=(para NFS, iSCSI ou PreSetup) O Endereço IP ou nome DNS do dispositivo de storage. -message.installWizard.tooltip.addPrimaryStorage.name=O Nome do dispositivo de storage. -message.installWizard.tooltip.addHost.password=Este é a senha do usuário especificado acima (da sua instalação do XenServer) -message.installWizard.tooltip.addHost.username=Usualmente root. -message.installWizard.tooltip.addHost.hostname=O nome DNS ou endereço IP do host. -message.installWizard.tooltip.addCluster.name=Um nome para o cluster. Este nome pode ser um nome de sua escolha e não é usado pelo CloudStack. -message.installWizard.tooltip.addPod.reservedSystemEndIp=Este é o range de IP na rede privada que o CloudStack utiliza para gerenciar o storage secundário das VMs e Proxy Console das VMs. Estes endereços IP são obtidos da mesma subrede dos servidores hosts. -message.installWizard.tooltip.addPod.reservedSystemStartIp=Este é o range de IP na rede privada que o CloudStack utiliza para gerenciar as VMs de storage secundário e as VMs de Console Proxy. Estes endereços IP devem estar na mesma subnet dos servidores de processamento. -message.installWizard.tooltip.addPod.reservedSystemNetmask=A máscara de rede está em uso na subrede que os guests irão utilizar. -message.installWizard.tooltip.addPod.reservedSystemGateway=O gateway para os hosts neste pod. -message.installWizard.tooltip.addPod.name=O nome para o pod -message.installWizard.tooltip.configureGuestTraffic.guestEndIp=O range de endereços IP que estará disponível para alocação para os guests nesta zona. Caso uma NIC seja utilizada, estes IPs devem estar no mesmo CIDR que o CIDR do pod. -message.installWizard.tooltip.configureGuestTraffic.guestStartIp=O range de endereços IP que estará disponível para alocação para os guests nesta zona. Caso uma NIC seja utilizada, estes IPs devem estar no mesmo CIDR que o CIDR do pod. -message.installWizard.tooltip.configureGuestTraffic.guestNetmask=A máscara de rede da subrede que os guests devem usar -message.installWizard.tooltip.configureGuestTraffic.guestGateway=O gateway que os guests devem usar -message.installWizard.tooltip.configureGuestTraffic.description=Uma descrição da sua rede -message.installWizard.tooltip.configureGuestTraffic.name=Um nome para sua rede -message.installWizard.tooltip.addZone.internaldns2=Estes são os servidores DNS utilizados pelas VMs de sistema nesta zona. Estes servidores DNS serão acessados através da interface de rede privada das VMs de sistema. O endereço IP privado que você configurar para os pods deve possuir uma rota para os servidores DNS configurados aqui. -message.installWizard.tooltip.addZone.internaldns1=Estes são os servidores DNS utilizados pelas VMs de sistema nesta zona. Estes servidores DNS serão acessados através da interface de rede privada das VMs de sistema. O endereço IP privado que você configurar para os pods deve possuir uma rota para os servidores DNS configurados aqui. -message.installWizard.tooltip.addZone.dns2=Estes são os servidores DNS utilizados pelas VMs convidadas nesta zona. Estes servidores DNS serão acessados pela interface de rede pública que você irá adicionar posteriormente. O endereço IP público de uma zona deve possuir uma rota para os servidores DNS configurados aqui. -message.installWizard.tooltip.addZone.name=Um nome para a zona -message.installWizard.tooltip.addZone.dns1=Estes são os servidores DNS utilizados pelas guest VMs na zona. Estes servidores DNS serão acessados pela interface de rede pública que você irá adicionar posteriormente. O endereço IP público da zona deve possuir uma rota para os servidores DNS configurados aqui. -message.setup.successful=Cloud configurada com sucesso\! -label.may.continue=Você pode continuar agora -error.installWizard.message=Alguma coisa está errada; você pode voltar e corrigir quaisquer erros -message.installWizard.now.building=Construindo sua cloud agora... -message.installWizard.click.retry=Click no botão para tentar executar novamente. -label.launch=Executar -label.installWizard.click.launch=Click no botão executar. -label.congratulations=Parabéns\! -label.installWizard.addSecondaryStorageIntro.subtitle=Qual é o storage secundário ? -label.installWizard.addSecondaryStorageIntro.title=Vamos adicionar o storage secundário -label.installWizard.addPrimaryStorageIntro.subtitle=Qual é o storage primário ? -label.installWizard.addPrimaryStorageIntro.title=Vamos adicionar o storage primário -label.installWizard.addHostIntro.subtitle=O que é um Host ? -label.installWizard.addHostIntro.title=Vamos adicionar um host -label.installWizard.addClusterIntro.subtitle=O que é um cluster? -label.installWizard.addClusterIntro.title=Vamos adicionar um cluster -label.installWizard.addPodIntro.subtitle=O que é um pod ? -label.installWizard.addPodIntro.title=Vamos adicionar um pod -label.installWizard.addZone.title=Adicionar zona -label.installWizard.addZoneIntro.subtitle=O que é uma zona? -label.installWizard.addZoneIntro.title=Vamos adicionar uma zona -error.password.not.match=Os campos de senha não combinam -label.confirm.password=Confirme a senha -message.change.password=Por favor, troque sua senha. -label.save.and.continue=Salvar e continuar -label.skip.guide=Eu utilizei o CloudStack antes, pular este guia -label.continue.basic.install=Continuar com a instalação básica -label.introduction.to.cloudstack=Introdução ao CloudStack&\#8482 -label.what.is.cloudstack=O que é o CloudStack&\#8482? -label.hints=Dicas -label.installWizard.subtitle=Este tour vai auxiliar você na configuração da sua instalação de CloudStack&\#8482 -label.continue=Continuar -label.installWizard.title=Olá, seja bem vindo ao CloudStack&\#8482 -label.agree=Concordo -label.manage.resources=Gerenciar Recursos -label.port.forwarding.policies=Políticas de redirecionamento de portas -label.load.balancing.policies=Políticas de balanceamento de carga -label.networking.and.security=Rede e segurança -label.bandwidth=Bandwidth -label.virtual.machines=Máquinas virtuais -label.compute.and.storage=Processamento e Armazenamento -label.task.completed=Tarefa completa -label.update.project.resources=Atualizar recursos de projeto -label.remove.project.account=Remover conta de projeto -label.item.listing=Listar items -message.select.item=Por favor selecione um item. -label.removing=Removendo -label.invite=Convidar -label.add.by=Adicionado por -label.max.vms=Máx. VMs de usuário -label.max.public.ips=Máx. IPs públicos -label.max.volumes=Máx. volumes -label.max.snapshots=Max. snapshots -label.max.templates=Máx. templates -# label.max.vpcs=Max. VPCs -label.project.dashboard=Dashboard do Projeto -label.remind.later=Me lembre depois -label.invited.accounts=Contas convidadas -label.invite.to=Convidar para -label.add.accounts.to=Adicionar contas para -label.add.accounts=Adicionar contas -label.project.name=Nome de projeto -label.create.project=Criar um projeto -label.networks=Redes -label.launch.vm=Executar VM -label.new.vm=Nova VM -label.previous=Anterior -label.add.to.group=Adicionar ao grupo -message.vm.review.launch=Por favor revise a informação abaixo e confirme que sua instância virtual está correta antes de executa-la. -message.select.security.groups=Por favor selecione o(s) grupo(s) de segurança para sua nova VM -label.new=Novo -message.please.select.networks=Por favor selecione as redes para sua máquina virtual. -message.please.proceed=Por favor continue para o próximo passo. -message.zone.no.network.selection=A zona que você selecionou não possui nenhuma rede para ser escolhida. -label.no.thanks=Não obrigado -label.my.templates=Meus templates -message.select.template=Por favor selecione um template para sua nova instância virtual. -message.select.iso=Por favor selecione um ISO para sua nova instância virtual -message.template.desc=Imagem de SO que pode ser utilizada para bootar VMs -message.iso.desc=Imagem de disco contendo dados ou mídia de sistema operacional bootável -label.select.iso.or.template=Selecione ISO ou template -message.select.a.zone=A zone tipicamente corresponde a um único datacenter. Múltiplas zonas auxiliam a cloud a ser mais confiável provendo isolamento físico e redundância. -label.select.a.zone=Selecione uma zona -label.review=Revisar -label.select.a.template=Selecione um template -label.setup=Configuração -state.Allocated=Alocado changed.item.properties=Alteradas propriedades do item -label.apply=Aplicar -label.default=Padrão -label.viewing=Visualizar -label.move.to.top=Mover para o topo -label.move.up.row=Mover uma célula para cima -label.move.down.row=Mover uma célula para baixo -# label.move.to.bottom=Move to bottom -label.drag.new.position=Arrastar para uma nova posição -label.order=Ordenar -label.no.data=Sem dados para mostrar -label.change.value=Alterar valor -label.clear.list=Limpar lista -label.full.path=Path completo -message.add.domain=Por favor especifique o subdomínio que você deseja criar neste domínio -message.delete.user=Por favor confirme que você deseja deletar este usuário. -message.enable.user=Por favor confirme que você deseja habilitar este usuário. -message.disable.user=Por favor confirme que você deseja desabilitar este usuário. -message.generate.keys=Por favor confirme que você deseja gerar novas chaves para este usuário. -message.update.resource.count=Por favor confirme que você quer atualizar a contagem de recursos para esta conta. -message.edit.account=Editar ("-1" indica que não haverá limites para a quantidade de recursos criado) -label.total.of.vm=Total de VM -label.total.of.ip=Total de endereços IP -state.enabled=Habilitado -message.action.download.iso=Por favor confirme que você deseja baixar esta ISO. -message.action.download.template=Por favor confirme que você deseja baixar este template. -label.destination.zone=Zona de Destino -label.keyboard.type=Tipo de Teclado -label.nic.adapter.type=Tipo de adaptador NIC -label.root.disk.controller=Controlador do disco Root -label.community=Comunidade -label.remove.egress.rule=Remover regra egress -label.add.egress.rule=Adicionar regra egress -label.egress.rule=Regra Egress -label.remove.ingress.rule=Remover regra ingress -label.delete.vpn.user=Deletar usuário VPN -label.add.vpn.user=Adicionar usuário VPN -label.remove.pf=Remover regra de redirecionamento de porta -label.remove.vm.from.lb=Remover VM da regra de balanceamento de carga -label.add.vms.to.lb=Add VM(s) na regra de balanceamento de carga -label.add.vm=Adicionar VM -label.remove.static.nat.rule=Remover regra de NAT estático -label.remove.rule=Remover regra -label.add.static.nat.rule=Adicionar regra de NAT estático -label.add.rule=Adicionar regra -label.configuration=Configuração -message.disable.vpn=Você tem certeza que deseja desabilitar a VPN? -label.disable.vpn=Desabilitar VPN -message.enable.vpn=Por favor confirme que você deseja acesso VPN habilitado para este endereço IP. -label.enable.vpn=Habilitar VPN -message.acquire.new.ip=Por favor confirme que você gostaria de adquirir um novo IP para esta rede. -label.elastic=Elástico -label.my.network=Minha rede -label.add.vms=Adicionar VMs -label.configure=Configurar -# label.stickiness=Stickiness -label.source=Origem -label.least.connections=Least connections -label.round.robin=Round-robin -label.restart.required=Reiniciar obrigatório -label.clean.up=Limpar -label.restart.network=Reiniciar rede -label.edit.network.details=Editar detalhes de rede -label.add.guest.network=Adicionar rede guest -label.guest.networks=Redes Guest -message.ip.address.changed=Seu endereço IP pode ter mudado; você gostaria de atualizar a listagem ? Note que neste caso o painel de detalhes irá fechar. -# state.BackingUp=Backing Up -# state.BackedUp=Backed Up -label.done=Pronto -label.vm.name=Nome da VM -message.migrate.volume=Por favor confirme que você deseja migrar o volume para outro storage primário. -label.migrate.volume=Migrar volume para outro storage primário -message.create.template=Você tem certeza que deseja criar um template ? -label.create.template=Criar template -message.download.volume.confirm=Por favor confirme que você quer baixar este volume -message.detach.disk=Você tem certeza que deseja desconectar este disco ? -state.ready=Pronto -state.Ready=Pronto -label.vm.display.name=Nome de exibição da VM -label.select-view=Selecionar visualização -label.local.storage=Storage Local -label.direct.ips=IPs Diretos -label.view.all=Visualizar tudo -label.zone.details=Detalhes de zona -message.alert.state.detected=Alerta de estado detectado -state.Starting=Iniciando -# state.Expunging=Expunging -state.Creating=Criando -message.decline.invitation=Você tem certeza que quer rejeitar este convite de projeto ? -label.decline.invitation=Rejeitar convite -message.confirm.join.project=Por favor confirme que você deseja entrar neste projeto -message.join.project=Você agora entrou em um projeto. Por favor troque para a visão de Projeto para visualizar o projeto. -label.accept.project.invitation=Aceitar convite de projeto. -label.token=Token -label.project.id=ID de Projeto -message.enter.token=Por favor entre o token que você recebeu no e-mail privado. -label.enter.token=Digite o token -state.Accepted=Aceito -state.Pending=Pendente -state.Completed=Completo -state.Declined=Recusado -label.project=Projeto -label.invitations=Convites -label.delete.project=Deletar projeto -message.delete.project=Você tem certeza que deseja deletar este projeto ? -message.activate.project=Você tem certeza que deseja ativar este projeto ? -label.activate.project=Ativar Projeto -label.suspend.project=Suspender Projeto -message.suspend.project=Você tem certeza que deseja suspender este projeto ? -state.Suspended=Suspendido -label.edit.project.details=Editar detalhes do projeto -label.new.project=Novo Projeto -state.Active=Ativo -state.Disabled=Desativado -label.projects=Projetos -label.make.project.owner=Criar proprietário de conta de projeto -label.remove.project.account=Remover conta de projeto -message.project.invite.sent=Convite enviado para o usuário; Eles serão adicionados ao projeto após aceitarem o convite -label.add.account.to.project=Adicionar conta ao projeto -label.revoke.project.invite=Revogar convite -label.project.invite=Convidar para o projeto -label.select.project=Selecionar Projeto -message.no.projects=Você não possui nenhum projeto.
    Por favor crie um novo projeto à partir da seção Projetos. -message.no.projects.adminOnly=Você não possui nenhum projeto.
    Por favor solicite ao seu administrador a criação de um novo projeto. -message.pending.projects.1=Você possui convites de projetos pendentes\: -message.pending.projects.2=Para visualizar, por favor acesse a seção de projetos, depois selecione os convites no menu drop-down. -message.instanceWizard.noTemplates=Você não possui nenhum template disponível; por favor adicione um template compatível e reinicie o wizard de instância. -label.view=Visualizar -instances.actions.reboot.label=Reiniciar instância -label.filterBy=Filtrar por -label.ok=OK -notification.reboot.instance=Reiniciar instância -notification.start.instance=Iniciar instãncia -notification.stop.instance=Parar instância -label.display.name=Nome de exibição -label.zone.name=Nome da zona -ui.listView.filters.all=Todos -ui.listView.filters.mine=Meus -state.Running=Executando -state.Stopped=Parado -state.Destroyed=Destruído -state.Error=Erro -message.reset.password.warning.notPasswordEnabled=O template desta instância foi criado sem senha habilitada -message.reset.password.warning.notStopped=Sua instância deve estar parada antes de tentar trocar sua senha atual -label.notifications=Notificações -label.default.view=Visão Padrão -label.project.view=Visão de Projeto - -message.add.system.service.offering=Por favor preencha os dados abaixo para adicionar uma nova oferta de serviço de sistema. -message.action.delete.system.service.offering=Por favor confirme que você deseja deletar esta oferta de serviço de sistema. -label.action.delete.system.service.offering=Deletar Oferta de Serviço de Sistema -label.hypervisor.capabilities=Recursos de Virtualizador -label.hypervisor.version=Versão de Virtualizador -label.max.guest.limit=Limite máx. de guest -label.add.network.offering=Adicionar oferta de rede -label.supported.services=Serviços Suportados -label.service.capabilities=Recursos de serviços -label.guest.type=Tipo de Guest -label.specify.IP.ranges=Especifique range de IP -# label.conserve.mode=Conserve mode -label.created.by.system=Criado pelo sistema -label.menu.system.service.offerings=Ofertas do Sistema -label.add.system.service.offering=Adicionar Plano para VM de Sistema -label.redundant.router.capability=Recurso de roteador redundante -label.supported.source.NAT.type=Tipo de Source NAT Suportado -label.elastic.LB=LB Elástico -label.LB.isolation=Isolamento de LB -label.elastic.IP=IP Elástico -label.network.label.display.for.blank.value=Utilizar gateway default -label.xen.traffic.label=Etiqueta de tráfego XenServer -label.kvm.traffic.label=Etiqueta de tráfego KVM -label.vmware.traffic.label=Etiqueta de tráfego VMware -label.start.IP=IP do início -label.end.IP=IP do fim -label.remove.ip.range=Remover range de IP -label.ip.ranges=Ranges de IP -label.start.vlan=Vlan do início -label.end.vlan=Vlan do fim -label.broadcast.domain.range=Range do domínio de Broadcast -# label.compute=Compute -message.add.guest.network=Por favor confirme que você gostaria de adicionar uma rede guest. -label.subdomain.access=Acesso ao subdomínio -label.guest.start.ip=IP de início do guest -label.guest.end.ip=IP do fim do guest -label.virtual.router=Roteador Virtual -label.physical.network.ID=ID da rede física -label.destination.physical.network.id=ID de destino da rede física -label.dhcp=DHCP -label.destroy.router=Destruir roteador -message.confirm.destroy.router=Por favor confirme que você gostaria de destruir este roteador -label.change.service.offering=Alterar oferta de serviço -label.view.console=Visualizar Console -# label.redundant.state=Redundant state -label.enable.provider=Habilitar provider -message.confirm.enable.provider=Por favor confirme que você gostaria de habilitar este provider -label.disable.provider=Desabilitar Provider -message.confirm.disable.provider=Por favor confirme que você gostaria de desabilitar este provider -# label.shutdown.provider=Shutdown provider -message.confirm.shutdown.provider=Por favor confirme que você deseja desligar este provider -label.netScaler=NetScaler -label.add.new.NetScaler=Adicionar um novo NetScaler -label.capacity=Capacidade -label.dedicated=Dedicado -label.f5=F5 -label.add.new.F5=Adicionar um novo F5 -label.srx=SRX -label.providers=Providers -label.add.new.SRX=Adicionar um novo SRX -label.timeout=Timeout -label.public.network=Rede Pública -label.private.network=Rede Privada -label.enable.swift=Habilitar Swift -confirm.enable.swift=Por favor preencha as informações abaixo para habilitar suporte ao Swift -message.after.enable.swift=Swift Configurado. Nota\: Após deixar esta página, você não será capaz de reconfigurar o Swift novamente. -label.key=Chave -label.delete.NetScaler=Remover NetScaler -message.confirm.delete.NetScaler=Por favor confirme que você deseja remover o NetScaler -label.delete.F5=Remover F5 -message.confirm.delete.F5=Por favor confirme que você deseja remover o F5 -label.delete.SRX=Remover SRX -message.confirm.delete.SRX=Por favor confirme que você deseja remover o SRX -label.pods=Pods -label.pod.name=Nome do Pod -label.reserved.system.gateway=Gateway de sistema reservado -label.reserved.system.netmask=Máscara de rede do sistema reservado -label.start.reserved.system.IP=Início dos IPs reservados para o sistema -label.end.reserved.system.IP=Fim dos IPs reservados para o sistema -label.clusters=Clusters -label.cluster.name=Nome do Cluster -label.host.MAC=Host MAC -label.agent.username=Usuário do Agente -label.agent.password=Senha do Agente -message.confirm.action.force.reconnect=Por favor confirme que você deseja forçar a reconexão com este host. -label.resource.state=Estado do Recurso -label.LUN.number=LUN \# -message.confirm.remove.IP.range=Por favor confirme que você deseja remover este range de IP. -message.tooltip.zone.name=Um nome para a zona. -# message.tooltip.dns.1=Name of a DNS server for use by VMs in the zone. The public IP addresses for the zone must have a route to this server. -message.tooltip.dns.2=Um servidor DNS secundário para ser utilizado pelas VMs nesta zona. Os endereços IP públicos nesta zona devem ter rota para este servidor. -message.tooltip.internal.dns.1=Nome de um servidor DNS que será utilizado pelas VMs internas de sistema do CloudStack nesta zona. Os endereços privados dos pods devem ter uma rota para este servidor. -message.tooltip.internal.dns.2=Nome de um servidor DNS que será utilizado pelas VMs internas de sistema do CloudStack nesta zona. Os endereços privados dos pods devem ter uma rota para este servidor. -message.tooltip.network.domain=Um sufixo DNS que irá criar um nome de domínio customizado para a rede que é acessada pelas guest VMs. -message.tooltip.pod.name=Um nome para este pod. -message.tooltip.reserved.system.gateway=O gateway para os hosts neste pod. -message.tooltip.reserved.system.netmask=O prefixo de rede que define a subrede deste pod. Utilize a notação CIDR. -message.creating.zone=Criando zona. -message.creating.physical.networks=Criando redes fisicas -message.configuring.physical.networks=Configurando redes físicas -message.adding.Netscaler.device=Adicionando dispositivo Nescaler -message.creating.pod=Criando pod -message.configuring.public.traffic=Configurando tráfego público -message.configuring.storage.traffic=Configurando tráfego de storage -message.configuring.guest.traffic=Configurando tráfego do guest -message.creating.cluster=Criando cluster -message.adding.host=Adicionando host -message.creating.primary.storage=Criando storage primário -message.creating.secondary.storage=Criando storage secundário -message.Zone.creation.complete=Criação de zona completa -message.enabling.zone=Habilitando zona +confirm.enable.s3=Por favor preencha as informa\u00e7\u00f5es abaixo para habilitar suporte a storage secund\u00e1ria fornecida por S3 +confirm.enable.swift=Por favor preencha as informa\u00e7\u00f5es abaixo para habilitar suporte ao Swift +error.could.not.enable.zone=N\u00e3o foi poss\u00edvel habilitar a zona +error.installWizard.message=Alguma coisa est\u00e1 errada; voc\u00ea pode voltar e corrigir quaisquer erros +error.invalid.username.password=Usu\u00e1rio ou senha inv\u00e1lidos +error.login=Usu\u00e1rio ou senha inv\u00e1lido. +error.menu.select=N\u00e3o foi poss\u00edvel realizar a a\u00e7\u00e3o pois nenhum item foi selecionado. +error.mgmt.server.inaccessible=O servidor de gerenciamento est\u00e1 inacess\u00edvel. Tente novamente mais tarde. +error.password.not.match=Os campos de senha n\u00e3o combinam +error.please.specify.physical.network.tags=Ofertas de Rede n\u00e3o estar\u00e3o dispon\u00edveis enquanto voc\u00ea n\u00e3o especificar tags para esta interface f\u00edsica. +error.session.expired=Sua sess\u00e3o expirou. error.something.went.wrong.please.correct.the.following=Algo deu errado; por favor corrija abaixo -error.could.not.enable.zone=Não foi possível habilitar a zona -message.zone.creation.complete.would.you.like.to.enable.this.zone=Criação de zona completa. Você gostaria de habilitar esta zona? -message.please.add.at.lease.one.traffic.range=Por favor adicione pelo menos um range de tráfego. -message.you.must.have.at.least.one.physical.network=Você deve ter pelo menos uma rede física -message.please.select.a.different.public.and.management.network.before.removing=Por favor selecione uma rede pública e de gerenciamento diferente antes de remover - -label.zone.type=Tipo de Zona -label.setup.zone=Configurar Zona -label.setup.network=Configurar Rede -label.add.resources=Adicionar Recursos -label.launch=Executar -label.set.up.zone.type=Configurar tipo de zona -message.please.select.a.configuration.for.your.zone=Por favor selecione uma configuracao para sua zona. -# message.desc.basic.zone=Provide a single network where each VM instance is assigned an IP directly from the network. Guest isolation can be provided through layer-3 means such as security groups (IP address source filtering). -label.basic=Básico -# message.desc.advanced.zone=For more sophisticated network topologies. This network model provides the most flexibility in defining guest networks and providing custom network offerings such as firewall, VPN, or load balancer support. -label.advanced=Avançado -# message.desc.zone=A zone is the largest organizational unit in CloudStack, and it typically corresponds to a single datacenter. Zones provide physical isolation and redundancy. A zone consists of one or more pods (each of which contains hosts and primary storage servers) and a secondary storage server which is shared by all pods in the zone. -label.physical.network=Rede Física -label.public.traffic=Tráfego Público -label.guest.traffic=Tráfego do guest -label.storage.traffic=Tráfego do Storage -# message.setup.physical.network.during.zone.creation=When adding an advanced zone, you need to set up one or more physical networks. Each network corresponds to a NIC on the hypervisor. Each physical network can carry one or more types of traffic, with certain restrictions on how they may be combined.

    Drag and drop one or more traffic types onto each physical network. -label.add.physical.network=Adicionar rede física -label.traffic.types=Tipos de Tráfego -label.management=Gerenciamento -label.guest=Guest -label.please.specify.netscaler.info=Por favor especifique as informações do Netscaler -# message.public.traffic.in.advanced.zone=Public traffic is generated when VMs in the cloud access the internet. Publicly-accessible IPs must be allocated for this purpose. End users can use the CloudStack UI to acquire these IPs to implement NAT between their guest network and their public network.

    Provide at least one range of IP addresses for internet traffic. -# message.public.traffic.in.basic.zone=Public traffic is generated when VMs in the cloud access the Internet or provide services to clients over the Internet. Publicly accessible IPs must be allocated for this purpose. When a instance is created, an IP from this set of Public IPs will be allocated to the instance in addition to the guest IP address. Static 1-1 NAT will be set up automatically between the public IP and the guest IP. End users can also use the CloudStack UI to acquire additional IPs to implement static NAT between their instances and the public IP. -# message.add.pod.during.zone.creation=Each zone must contain in one or more pods, and we will add the first pod now. A pod contains hosts and primary storage servers, which you will add in a later step. First, configure a range of reserved IP addresses for CloudStack's internal management traffic. The reserved IP range must be unique for each zone in the cloud. -# message.guest.traffic.in.advanced.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of VLAN IDs to carry guest traffic for each physical network. -# message.guest.traffic.in.basic.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of IP addresses that CloudStack can assign to guest VMs. Make sure this range does not overlap the reserved system IP range. -# message.storage.traffic=Traffic between CloudStack's internal resources, including any components that communicate with the Management Server, such as hosts and CloudStack system VMs. Please configure storage traffic here. -# message.desc.cluster=Each pod must contain one or more clusters, and we will add the first cluster now. A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Each cluster consists of one or more hosts and one or more primary storage servers. -# message.desc.host=Each cluster must contain at least one host (computer) for guest VMs to run on, and we will add the first host now. For a host to function in CloudStack, you must install hypervisor software on the host, assign an IP address to the host, and ensure the host is connected to the CloudStack management server.

    Give the host's DNS or IP address, the user name (usually root) and password, and any labels you use to categorize hosts. -# message.desc.primary.storage=Each cluster must contain one or more primary storage servers, and we will add the first one now. Primary storage contains the disk volumes for all the VMs running on hosts in the cluster. Use any standards-compliant protocol that is supported by the underlying hypervisor. -# message.desc.secondary.storage=Each zone must have at least one NFS or secondary storage server, and we will add the first one now. Secondary storage stores VM templates, ISO images, and VM disk volume snapshots. This server must be available to all hosts in the zone.

    Provide the IP address and exported path. -label.launch.zone=Executar zona. -message.please.wait.while.zone.is.being.created=Por favor, espere enquanto sua zona está sendo criada; isto pode demorar um pouco... - -label.load.balancing=Balanceamento de Carga -label.static.nat.enabled=NAT estático Habilitado -label.zones=Zonas -label.view.more=Ver mais -label.number.of.zones=Número de Zonas -label.number.of.pods=Número de Pods -label.number.of.clusters=Número de Clusters -label.number.of.hosts=Número de Hosts -label.total.hosts=Total de Hosts -label.total.CPU=CPU TOTAL -label.total.memory=Total de Memória -label.total.storage=Totam de Storage -label.purpose=Propósito - - - - -label.action.migrate.router=Migrar Roteador -label.action.migrate.router.processing=Migrando Roteador... -message.migrate.router.confirm=Por favor confirme o host que você deseja migrar o roteador para\: -label.migrate.router.to=Migrar Roteador para - -label.action.migrate.systemvm=Migrar VM de Sistema -label.action.migrate.systemvm.processing=Migrando VM de Sistema... -message.migrate.systemvm.confirm=Por favor confirme o host para o qual você deseja migrar a VM de sistema\: -label.migrate.systemvm.to=Migrar VM de sistema para - - -mode=Modo -side.by.side=Lado a Lado -# inline=Inline - -# extractable=Extractable - -label.ocfs2=OCFS2 - -label.action.edit.host=Editar Host - -network.rate=Taxa de Transferência - +error.unable.to.reach.management.server=N\u00e3o foi poss\u00edvel acessar o Servidor de Gerenciamento +error.unresolved.internet.name=Imposs\u00edvel resolver DNS +force.delete.domain.warning=Aten\u00e7\u00e3o\: Esta op\u00e7\u00e3o remover\u00e1 todos os dom\u00ednios, contas e recursos associados. +force.delete=For\u00e7ar Exclus\u00e3o +force.remove=For\u00e7ar Remo\u00e7\u00e3o +force.remove.host.warning=Aten\u00e7\u00e3o\: O CloudStack desligar\u00e1 de maneira for\u00e7ada todas as VMs antes de remover o host do cluster. +force.stop=For\u00e7ar Parada +force.stop.instance.warning=Aviso\: For\u00e7ar o desligamento desta inst\u00e2ncia deve ser sua \u00faltima op\u00e7\u00e3o. Isto pode levar a perda de dados, bem como comportamento inconsist\u00eante do estado da m\u00e1quina virtual. +ICMP.code=C\u00f3digo ICMP ICMP.type=Tipo ICMP -ICMP.code=Código ICMP - -image.directory=Diretório da Imagem - -label.action.create.template.from.vm=Criar Template a partir da VM -label.action.create.template.from.volume=Criar Template a partir do Disco - -message.vm.create.template.confirm=Criar Template reiniciará a VM automaticamente. - -label.action.manage.cluster=Vincular Cluster -message.action.manage.cluster=Confirma a vinculação do cluster. -label.action.manage.cluster.processing=Vinculando o Cluster.... - -label.action.unmanage.cluster=Desvincular Cluster -message.action.unmanage.cluster=Confirma a desvinculação do cluster. -label.action.unmanage.cluster.processing=Desvinculando Cluster.... - -label.allocation.state=Status da Alocação -managed.state=Status do Gerenciamento - -label.default.use=Uso padrão -# label.host.tags=Host Tags - -label.cidr=CIDR -label.cidr.list=CIDR de Origem - -label.storage.tags=Tags de Storage - -label.redundant.router=Roteador Redundantee -label.is.redundant.router=Redundante - -force.delete=Forçar Exclusão -force.delete.domain.warning=Atenção\: Esta opção removerá todos os domínios, contas e recursos associados. - -force.remove=Forçar Remoção -force.remove.host.warning=Atenção\: O CloudStack desligará de maneira forçada todas as VMs antes de remover o host do cluster. - -force.stop=Forçar Parada -force.stop.instance.warning=Aviso\: Forçar o desligamento desta instância deve ser sua última opção. Isto pode levar a perda de dados, bem como comportamento inconsistênte do estado da máquina virtual. - -label.PreSetup=PreSetup -label.SR.name = SR Name-Label -label.SharedMountPoint=SharedMountPoint -label.clvm=CLVM -label.volgroup=Grupo de Volume -label.VMFS.datastore=VMFS datastore - -label.network.device=Dispositivo de Rede -label.add.network.device=Adicionar Dispositivo de Rede -label.network.device.type=Tipo de Dispositivo de Rede -label.DHCP.server.type=Tipo de Servidor DHCP -label.Pxe.server.type=Tipo de Servidor PXE -label.PING.storage.IP=Disparar PING para IP do Storage -label.PING.dir=PING Directory -label.TFTP.dir=TFTP Directory -label.PING.CIFS.username=PING CIFS username -label.PING.CIFS.password=PING CIFS password -label.CPU.cap=CPU Cap - - -label.action.enable.zone=Ativar Zona -label.action.enable.zone.processing=Ativando Zona.... -message.action.enable.zone=Confirma a ativação da zona. -label.action.disable.zone=Desativar Zona -label.action.disable.zone.processing=Desativando Zona.... -message.action.disable.zone=Confirma a desativação da zona. - -label.action.enable.pod=Ativar POD -label.action.enable.pod.processing=Ativando POD.... -message.action.enable.pod=Confirma a ativação do POD. -label.action.disable.pod=Desativar POD -label.action.disable.pod.processing=Desativando POD.... -message.action.disable.pod=Confirma a desativação do POD. - -label.action.enable.cluster=Ativar Cluster -label.action.enable.cluster.processing=Ativando Cluster.... -message.action.enable.cluster=Confirma a ativação do cluster. -label.action.disable.cluster=Desativar Cluster -label.action.disable.cluster.processing=Desativando Cluster.... -message.action.disable.cluster=Confirma a desativação do cluster. - +image.directory=Diret\u00f3rio da Imagem +instances.actions.reboot.label=Reiniciar inst\u00e2ncia +label.accept.project.invitation=Aceitar convite de projeto. +label.account.and.security.group=Contas, grupos de Seguran\u00e7a +label.account=Conta label.account.id=ID da Conta label.account.name=Nome da Conta -# label.account.specific=Account-Specific -label.account=Conta label.accounts=Contas +label.account.specific=Conta-Specific label.acquire.new.ip=Adquirir novo IP -label.show.ingress.rule=Mostrar Regra de Entrada -label.hide.ingress.rule=Ocultar Regra de Entrada -label.action.attach.disk.processing=Anexando Disco.... label.action.attach.disk=Anexar Disco -label.action.attach.iso.processing=Anexando ISO.... +label.action.attach.disk.processing=Anexando Disco.... label.action.attach.iso=Anexar ISO -label.action.cancel.maintenance.mode.processing=Cancelando Modo de Manutenção.... -label.action.cancel.maintenance.mode=Cancelar Modo de Manutenção +label.action.attach.iso.processing=Anexando ISO.... +label.action.cancel.maintenance.mode=Cancelar Modo de Manuten\u00e7\u00e3o +label.action.cancel.maintenance.mode.processing=Cancelando Modo de Manuten\u00e7\u00e3o.... label.action.change.password=Troca de Senha label.action.change.service.processing=Trocando de Plano.... label.action.change.service=Trocar Plano -label.action.copy.ISO.processing=Copiando ISO.... label.action.copy.ISO=Copiar ISO -label.action.copy.template.processing=Copiando Template.... +label.action.copy.ISO.processing=Copiando ISO.... label.action.copy.template=Copiar Template -label.action.create.template.processing=Criando Template.... +label.action.copy.template.processing=Copiando Template.... label.action.create.template=Criar Template -label.action.create.vm.processing=Criando VM.... +label.action.create.template.from.vm=Criar Template a partir da VM +label.action.create.template.from.volume=Criar Template a partir do Disco +label.action.create.template.processing=Criando Template.... label.action.create.vm=Criar VM -label.action.create.volume.processing=Criando Disco.... +label.action.create.vm.processing=Criando VM.... label.action.create.volume=Criar Disco -label.action.delete.IP.range.processing=Removendo Range de IP.... -label.action.delete.IP.range=Remover Range IP -label.action.delete.ISO.processing=Removendo ISO.... -label.action.delete.ISO=Removendo ISO +label.action.create.volume.processing=Criando Disco.... label.action.delete.account.processing=Removendo conta.... label.action.delete.account=Remover conta label.action.delete.cluster.processing=Removendo Cluster.... label.action.delete.cluster=Remover Cluster label.action.delete.disk.offering.processing=Removendo Oferta de Disco.... label.action.delete.disk.offering=Remover Oferta de Disco - -label.action.update.resource.count=Atualiza Contador de Recursos -label.action.update.resource.count.processing=Atualizando Contador de Recursos.... - -label.action.delete.domain=Remover Domínio -label.action.delete.domain.processing=Removendo Domínio.... - +label.action.delete.domain.processing=Removendo Dom\u00ednio.... +label.action.delete.domain=Remover Dom\u00ednio label.action.delete.firewall.processing=Removendo Firewall.... label.action.delete.firewall=Remover regra de firewall label.action.delete.ingress.rule.processing=Removendo Regra de Entrada.... label.action.delete.ingress.rule=Remover Regra de Entrada +label.action.delete.IP.range.processing=Removendo Range de IP.... +label.action.delete.IP.range=Remover Range IP +label.action.delete.ISO.processing=Removendo ISO.... +label.action.delete.ISO=Removendo ISO label.action.delete.load.balancer.processing=Removendo Load Balancer.... label.action.delete.load.balancer=Remover regra de balanceador de carga -label.action.edit.network.processing=Editarando Rede.... -label.action.edit.network=Editar Rede label.action.delete.network.processing=Removendo Rede.... label.action.delete.network=Remover Rede +label.action.delete.nexusVswitch=Remover NexusVswitch +label.action.delete.physical.network=Deletar rede f\u00edsica label.action.delete.pod.processing=Removendo POD.... label.action.delete.pod=Remover POD -label.action.delete.primary.storage.processing=Removendo Storage Primário.... -label.action.delete.primary.storage=Remover Storage Primário -label.action.delete.secondary.storage.processing=Removendo Storage Secundário.... -label.action.delete.secondary.storage=Remover Storage Secundário +label.action.delete.primary.storage.processing=Removendo Storage Prim\u00e1rio.... +label.action.delete.primary.storage=Remover Storage Prim\u00e1rio +label.action.delete.secondary.storage.processing=Removendo Storage Secund\u00e1rio.... +label.action.delete.secondary.storage=Remover Storage Secund\u00e1rio label.action.delete.security.group.processing=Removendo Security Group.... label.action.delete.security.group=Remover Security Group label.action.delete.service.offering.processing=Removendo Plano.... label.action.delete.service.offering=Remover Plano label.action.delete.snapshot.processing=Removendo Snapshot.... label.action.delete.snapshot=Remover Snapshot +label.action.delete.system.service.offering=Deletar Oferta de Servi\u00e7o de Sistema label.action.delete.template.processing=Removendo Template.... label.action.delete.template=Remover Template -label.action.delete.user.processing=Removendo Usuário.... -label.action.delete.user=Remover Usuário +label.action.delete.user.processing=Removendo Usu\u00e1rio.... +label.action.delete.user=Remover Usu\u00e1rio label.action.delete.volume.processing=Removendo Disco.... label.action.delete.volume=Remover Disco label.action.delete.zone.processing=Removendo Zona.... label.action.delete.zone=Remover Zona -label.action.destroy.instance.processing=Apagando Cloud Server.... label.action.destroy.instance=Apagar Cloud Server -label.action.destroy.systemvm.processing=Apagando VM de Sistema.... +label.action.destroy.instance.processing=Apagando Cloud Server.... label.action.destroy.systemvm=Apagar VM de Sistema -label.action.detach.disk.processing=Desplugando Disco.... +label.action.destroy.systemvm.processing=Apagando VM de Sistema.... label.action.detach.disk=Desplugar Disco -label.action.detach.iso.processing=Desplugando ISO.... +label.action.detach.disk.processing=Desplugando Disco.... label.action.detach.iso=Desplugar ISO -label.action.disable.account.processing=Desativando conta.... +label.action.detach.iso.processing=Desplugando ISO.... label.action.disable.account=Desativar conta -label.action.disable.static.NAT.processing=Desativando NAT Estático.... -label.action.disable.static.NAT=Desativar NAT Estático -label.action.disable.user.processing=Desativando Usuário.... -label.action.disable.user=Desativar Usuário +label.action.disable.account.processing=Desativando conta.... +label.action.disable.cluster=Desativar Cluster +label.action.disable.cluster.processing=Desativando Cluster.... +label.action.disable.nexusVswitch=Desabilitar NexusVswitch +label.action.disable.physical.network=Desabilitar rede f\u00edsica +label.action.disable.pod=Desativar POD +label.action.disable.pod.processing=Desativando POD.... +label.action.disable.static.NAT=Desativar NAT Est\u00e1tico +label.action.disable.static.NAT.processing=Desativando NAT Est\u00e1tico.... +label.action.disable.user=Desativar Usu\u00e1rio +label.action.disable.user.processing=Desativando Usu\u00e1rio.... +label.action.disable.zone=Desativar Zona +label.action.disable.zone.processing=Desativando Zona.... label.action.download.ISO=Baixar ISO label.action.download.template=Baixar Template -label.action.download.volume.processing=Baixando Disco.... label.action.download.volume=Baixar Disco -label.action.edit.ISO=Editar ISO +label.action.download.volume.processing=Baixando Disco.... label.action.edit.account=Editar conta label.action.edit.disk.offering=Editar Oferta de Disco -label.action.edit.domain=Editar Domínio -label.action.edit.global.setting=Editar Configurações Globais +label.action.edit.domain=Editar Dom\u00ednio +label.action.edit.global.setting=Editar Configura\u00e7\u00f5es Globais +label.action.edit.host=Editar Host label.action.edit.instance=Editar Cloud Server +label.action.edit.ISO=Editar ISO +label.action.edit.network=Editar Rede label.action.edit.network.offering=Editar Oferta de Rede +label.action.edit.network.processing=Editarando Rede.... label.action.edit.pod=Editar Pod -label.action.edit.primary.storage=Editar Storage Primário +label.action.edit.primary.storage=Editar Storage Prim\u00e1rio label.action.edit.resource.limits=Editar Limite de Recursos label.action.edit.service.offering=Editar Plano label.action.edit.template=Editar Template -label.action.edit.user=Editar Usuário +label.action.edit.user=Editar Usu\u00e1rio label.action.edit.zone=Editar Zona -label.action.enable.account.processing=Ativando conta.... label.action.enable.account=Ativar conta -label.action.enable.maintenance.mode.processing=Ativando Modo de Manutenção.... -label.action.enable.maintenance.mode=Ativar Modo de Manutenção -label.action.enable.static.NAT.processing=Ativando NAT Estático.... -label.action.enable.static.NAT=Ativar NAT Estático -label.action.enable.user.processing=Habilitando Usuário... -label.action.enable.user=Habilitar usuário -label.action.force.reconnect.processing=Reconectando.... +label.action.enable.account.processing=Ativando conta.... +label.action.enable.cluster=Ativar Cluster +label.action.enable.cluster.processing=Ativando Cluster.... +label.action.enable.maintenance.mode=Ativar Modo de Manuten\u00e7\u00e3o +label.action.enable.maintenance.mode.processing=Ativando Modo de Manuten\u00e7\u00e3o.... +label.action.enable.nexusVswitch=Habilitar NexusVswitch +label.action.enable.physical.network=Habilitar rede f\u00edsica +label.action.enable.pod=Ativar POD +label.action.enable.pod.processing=Ativando POD.... +label.action.enable.static.NAT=Ativar NAT Est\u00e1tico +label.action.enable.static.NAT.processing=Ativando NAT Est\u00e1tico.... +label.action.enable.user=Habilitar usu\u00e1rio +label.action.enable.user.processing=Habilitando Usu\u00e1rio... +label.action.enable.zone=Ativar Zona +label.action.enable.zone.processing=Ativando Zona.... label.action.force.reconnect=Force Reconnect -label.action.generate.keys.processing=Gerando Chaves.... +label.action.force.reconnect.processing=Reconectando.... label.action.generate.keys=Gerar Chaves -label.action.lock.account.processing=Bloqueando conta.... +label.action.generate.keys.processing=Gerando Chaves.... +label.action.list.nexusVswitch=Listar NexusVswitch label.action.lock.account=Bloquear conta +label.action.lock.account.processing=Bloqueando conta.... +label.action.manage.cluster.processing=Vinculando o Cluster.... +label.action.manage.cluster=Vincular Cluster label.action.migrate.instance=Migrar Cloud Server label.action.migrate.instance.processing=Migrando Cloud Server... +label.action.migrate.router=Migrar Roteador +label.action.migrate.router.processing=Migrando Roteador... +label.action.migrate.systemvm=Migrar VM de Sistema +label.action.migrate.systemvm.processing=Migrando VM de Sistema... label.action.reboot.instance.processing=Reiniciando Cloud Server... label.action.reboot.instance=Reiniciar Cloud Server label.action.reboot.router.processing=Reiniciando Roteador.... label.action.reboot.router=Reiniciar Roteador label.action.reboot.systemvm.processing=Reiniciando VM de Sistema.... label.action.reboot.systemvm=Reiniciar VM de Sistema -# label.action.recurring.snapshot=Recurring Snapshots -label.action.release.ip.processing=Liberando IP.... +label.action.register.iso=Registrar ISO +label.action.register.template=Registrar template label.action.release.ip=Liberar IP +label.action.release.ip.processing=Liberando IP.... label.action.remove.host.processing=Removendo Host.... label.action.remove.host=Remover Host label.action.reset.password.processing=Recuperando a Senha.... label.action.reset.password=Recuperar Senha +label.action.resize.volume.processing=Resizing Volume.... +label.action.resize.volume=Resize Volume label.action.resource.limits=Limite de Recursos label.action.restore.instance.processing=Restaurando Cloud Server... label.action.restore.instance=Restaurar Cloud Server -label.action.start.instance.processing=Iniciando Cloud Server... +label.actions=A\u00c3\u00a7\u00c3\u00b5es label.action.start.instance=Iniciar Cloud Server -label.action.start.router.processing=Iniciando Roteador.... +label.action.start.instance.processing=Iniciando Cloud Server... label.action.start.router=Iniciar Roteador -label.action.start.systemvm.processing=Iniciando VM de Sistema.... +label.action.start.router.processing=Iniciando Roteador.... label.action.start.systemvm=Iniciar VM de Sistema -label.action.stop.instance.processing=Parando Cloud Server... +label.action.start.systemvm.processing=Iniciando VM de Sistema.... label.action.stop.instance=Parar Cloud Server -label.action.stop.router.processing=Parando Roteador.... +label.action.stop.instance.processing=Parando Cloud Server... label.action.stop.router=Parar Roteador -label.action.stop.systemvm.processing=Parando VM de Sistema.... +label.action.stop.router.processing=Parando Roteador.... label.action.stop.systemvm=Parar VM de Sistema +label.action.stop.systemvm.processing=Parando VM de Sistema.... label.action.take.snapshot.processing=Tirando Snapshot.... label.action.take.snapshot=Tirar Snapshot -label.action.update.OS.preference.processing=Atualizando Preferência de SO.... -label.action.update.OS.preference=Atualizar Preferência de SO -label.actions=Ações -label.active.sessions=Sessões Ativas +label.action.unmanage.cluster=Desvincular Cluster +label.action.unmanage.cluster.processing=Desvinculando Cluster.... +label.action.update.OS.preference=Atualizar Prefer\u00eancia de SO +label.action.update.OS.preference.processing=Atualizando Prefer\u00eancia de SO.... +label.action.update.resource.count=Atualiza Contador de Recursos +label.action.update.resource.count.processing=Atualizando Contador de Recursos.... +label.activate.project=Ativar Projeto +label.active.sessions=Sess\u00f5es Ativas label.add.account=Adicionar Conta +label.add.accounts=Adicionar contas +label.add.accounts.to=Adicionar contas para +label.add.account.to.project=Adicionar conta ao projeto +label.add.ACL=Adicionar ACL +label.add=Adicionar +label.add.by=Adicionado por label.add.by.cidr=Adicionar por CIDR label.add.by.group=Adicionar por Grupo label.add.cluster=Adicionar Cluster +label.add.compute.offering=Adicionar oferta de computa\u00e7\u00e3o label.add.direct.iprange=Add Direct Ip Range label.add.disk.offering=Adicionar Oferta de Disco -label.add.domain=Adicionar Domínio +label.add.domain=Adicionar Dom\u00ednio +label.add.egress.rule=Adicionar regra egress +label.add.F5.device=Adicionar dispositivo F5 label.add.firewall=Adicionar regra de Firewall +label.add.guest.network=Adicionar rede guest label.add.host=Adicionar Host -label.add.ingress.rule=Adicionar Regra de Entrada -label.add.ip.range=Adicionar Range de IP -label.add.load.balancer=Adicionar Load Balance -label.add.more=Adicionar Mais -label.add.network=Adicionar Rede -label.add.pod=Adicionar POD -label.add.primary.storage=Adicionar Storage Primário -label.add.secondary.storage=Adicionar Storage Secundário -label.add.security.group=Adicionar Security Group -label.add.service.offering=Adicionar Plano -label.add.template=Adicionar Template -label.add.user=Adicionar Usuário -label.add.vlan=Adicionar VLAN -label.add.volume=Adicionar Disco -label.add.zone=Adicionar Zona -label.add=Adicionar +label.adding=Adicionando label.adding.cluster=Adicionando Cluster label.adding.failed=Falha ao Adicionar label.adding.pod=Adicionando POD label.adding.processing=Adicionando.... +label.add.ingress.rule=Adicionar Regra de Entrada label.adding.succeeded=Adicionado com Sucesso -label.adding.user=Adicionando Usuário +label.adding.user=Adicionando Usu\u00e1rio label.adding.zone=Adicionando Zona -label.adding=Adicionando +label.add.ip.range=Adicionar Range de IP label.additional.networks=Redes Adicionais +label.add.load.balancer=Adicionar Load Balance +label.add.more=Adicionar Mais +label.add.netScaler.device=Adicionar dispositivo Netscaler +label.add.network.ACL=Adicione ACL de rede +label.add.network=Adicionar Rede +label.add.network.device=Adicionar Dispositivo de Rede +label.add.network.offering=Adicionar oferta de rede +label.add.new.F5=Adicionar um novo F5 +label.add.new.gateway=Adicionar novo gateway +label.add.new.NetScaler=Adicionar um novo NetScaler +label.add.new.SRX=Adicionar um novo SRX +label.add.new.tier=Adicionar nova camada +label.add.physical.network=Adicionar rede f\u00edsica +label.add.pod=Adicionar POD +label.add.port.forwarding.rule=Adicionar regra de encaminhamento de porta +label.add.primary.storage=Adicionar Storage Prim\u00e1rio +label.add.resources=Adicionar Recursos +label.add.route=Adicionar rota +label.add.rule=Adicionar regra +label.add.secondary.storage=Adicionar Storage Secund\u00e1rio +label.add.security.group=Adicionar Security Group +label.add.service.offering=Adicionar Plano +label.add.SRX.device=Adicionar dispositivo SRX +label.add.static.nat.rule=Adicionar regra de NAT est\u00e1tico +label.add.static.route=Adicionar rota est\u00e1tica +label.add.system.service.offering=Adicionar Plano para VM de Sistema +label.add.template=Adicionar Template +label.add.to.group=Adicionar ao grupo +label.add.user=Adicionar Usu\u00e1rio +label.add.vlan=Adicionar VLAN +label.add.vm=Adicionar VM +label.add.vms=Adicionar VMs +label.add.vms.to.lb=Add VM(s) na regra de balanceamento de carga +label.add.VM.to.tier=Adicionar m\u00e1quina virtual \u00e0 camada +label.add.volume=Adicionar Disco +label.add.vpc=Adicionar VPC +label.add.vpn.customer.gateway=Adicionar Gateway de VPN de usu\u00e1rio +label.add.VPN.gateway=Adicionar gateway de VPN +label.add.vpn.user=Adicionar usu\u00e1rio VPN +label.add.zone=Adicionar Zona label.admin.accounts=Contas Administrativas label.admin=Administrador -label.advanced.mode=Modo Avançado -label.advanced.search=Busca Avançada -label.advanced=Avançado +label.advanced=Avan\u00e7ado +label.advanced.mode=Modo Avan\u00e7ado +label.advanced.search=Busca Avan\u00e7ada +label.agent.password=Senha do Agente +label.agent.username=Usu\u00e1rio do Agente +label.agree=Concordo label.alert=Alerta label.algorithm=Algoritmo label.allocated=Alocado +label.allocation.state=Status da Aloca\u00e7\u00e3o label.api.key=API Key -label.assign.to.load.balancer=Atribuindo o Cloud Server ao Load Balancer +label.apply=Aplicar label.assign=Atribuir +label.assign.to.load.balancer=Atribuindo o Cloud Server ao Load Balancer label.associated.network.id=ID de Rede Associado +label.associated.network=Rede associada label.attached.iso=Imagem ISO Plugada -label.availability.zone=Datacenter label.availability=Availability -label.available.public.ips=IP Público Disponível -label.available=Disponível +label.availability.zone=Datacenter +label.available=Dispon\u00edvel +label.available.public.ips=IP P\u00fablico Dispon\u00edvel label.back=Voltar -label.basic.mode=Modo Básico -label.bootable=Inicializável -label.broadcast.domain.type=Tipo de Domínio Broadcast +label.bandwidth=Bandwidth +label.basic=B\u00e1sico +label.basic.mode=Modo B\u00e1sico +label.bootable=Inicializ\u00e1vel +label.broadcast.domain.range=Range do dom\u00ednio de Broadcast +label.broadcast.domain.type=Tipo de Dom\u00ednio Broadcast +label.broadcast.uri=URI de broadcast label.by.account=por Conta label.by.availability=By Availability -label.by.domain=por Domínio +label.by.domain=por Dom\u00ednio label.by.end.date=por Data Final -label.by.level=por Nível +label.by.level=por N\u00edvel label.by.pod=por Pod -label.by.role=por Função +label.by.role=por Fun\u00e7\u00e3o label.by.start.date=por Data Inicial label.by.state=por estado -label.by.traffic.type=por Tipo de Tráfego +label.bytes.received=Bytes Recebidos +label.bytes.sent=Bytes Enviados +label.by.traffic.type=por Tipo de Tr\u00e1fego label.by.type.id=por Tipo de ID label.by.type=Por Tipo label.by.zone=por Zona -label.bytes.received=Bytes Recebidos -label.bytes.sent=Bytes Enviados label.cancel=Cancelar +label.capacity=Capacidade label.certificate=Certificado -label.privatekey=PKCS\#8 Private Key -label.domain.suffix=Sufixo de Domínio DNS (ex. xyz.com) +label.change.service.offering=Alterar oferta de servi\u00e7o +label.change.value=Alterar valor label.character=Caracter +label.checksum=MD5 checksum label.cidr.account=CIDR ou Conta/Security Group +label.cidr=CIDR +label.cidr.list=CIDR de Origem +label.CIDR.list=Lista CIDR +label.CIDR.of.destination.network=CIDR da rede de destino +label.clean.up=Limpar +label.clear.list=Limpar lista label.close=Fechar label.cloud.console=Console de Gerenciamento da Nuvem label.cloud.managed=Cloud.com Managed -label.cluster.type=Tipo de Cluster label.cluster=Cluster -label.code=Código -label.confirmation=Confirmação -label.cpu.allocated.for.VMs=CPU Alocada por VMs +label.cluster.name=Nome do Cluster +label.clusters=Clusters +label.cluster.type=Tipo de Cluster +label.clvm=CLVM +label.code=C\u00f3digo +label.community=Comunidade +label.compute.and.storage=Processamento e Armazenamento +label.compute.offering=Oferta de Computa\u00e7\u00e3o +label.compute.offerings=Ofertas de Computa\u00e7\u00e3o +label.configuration=Configura\u00e7\u00e3o +label.configure=Configurar +label.configure.network.ACLs=Configure ACLs de rede +label.configure.vpc=Configurar VPC +label.confirmation=Confirma\u00e7\u00e3o +label.confirm.password=Confirme a senha +label.congratulations=Parab\u00e9ns\! +label.console.proxy=Console proxy +label.continue.basic.install=Continuar com a instala\u00e7\u00e3o b\u00e1sica +label.continue=Continuar +label.corrections.saved=Altera\u00e7\u00f5es salvas label.cpu.allocated=CPU Alocada -label.cpu.utilized=CPU Utilizada +label.cpu.allocated.for.VMs=CPU Alocada por VMs +label.CPU.cap=CPU Cap label.cpu=CPU +label.cpu.mhz=CPU (em MHz) +label.cpu.utilized=CPU Utilizada +label.created.by.system=Criado pelo sistema label.created=Criado +label.create.project=Criar um projeto +label.create.template=Criar template +label.create.VPN.connection=Criar uma conex\u00e3o VPN label.cross.zones=Inter Zonas label.custom.disk.size=Tamanho Customizado -label.daily=Diário +label.daily=Di\u00e1rio label.data.disk.offering=Oferta de Disco Adicional label.date=Data -label.day.of.month=Dia do Mês +label.day.of.month=Dia do M\u00eas label.day.of.week=Dia da Semana +label.dead.peer.detection=Detec\u00e7\u00e3o de correspondente morto +label.decline.invitation=Rejeitar convite +label.dedicated=Dedicado +label.default=Padr\u00e3o +label.default.use=Uso padr\u00e3o +label.default.view=Vis\u00e3o Padr\u00e3o +label.delete.F5=Remover F5 +label.delete.gateway=delete gateway +label.delete.NetScaler=Remover NetScaler +label.delete.project=Deletar projeto label.delete=Remover +label.delete.SRX=Remover SRX +label.delete.VPN.connection=deletar a conex\u00e3o VPN +label.delete.VPN.customer.gateway=deletar gateway de VPN de usu\u00e1rio +label.delete.VPN.gateway=deletar um gateway de VPN +label.delete.vpn.user=Deletar usu\u00e1rio VPN label.deleting.failed=Falha ao remover label.deleting.processing=Removendo.... -label.description=Descrição +label.description=Descri\u00e7\u00e3o +label.destination.physical.network.id=ID de destino da rede f\u00edsica +label.destination.zone=Zona de Destino +label.destroy=Apagar +label.destroy.router=Destruir roteador label.detaching.disk=Desplugando Disco label.details=Detalhes label.device.id=ID do Dispositivo +label.devices=Dispositivos +label.dhcp=DHCP +label.DHCP.server.type=Tipo de Servidor DHCP +label.direct.ips=IPs Diretos label.disabled=Desativado +label.disable.provider=Desabilitar Provider +label.disable.vpn=Desabilitar VPN label.disabling.vpn.access=Desativando Acesso VPN label.disk.allocated=Disco Alocado label.disk.offering=Oferta de Disco @@ -1034,122 +440,233 @@ label.disk.size.gb=Tamanho (em GB) label.disk.size=Tamanho do Disco label.disk.total=Disco Total label.disk.volume=Disco -label.display.text=Descrição +label.display.name=Nome de exibi\u00e7\u00e3o +label.display.text=Descri\u00e7\u00e3o label.dns.1=DNS 1 label.dns.2=DNS 2 -label.domain.admin=Administrador de Domínio -label.domain.id=ID do Domínio -label.domain.name=Nome do Domínio -label.domain=Domínio -label.double.quotes.are.not.allowed=Aspas duplas não são permitidas +label.dns=DNS +label.DNS.domain.for.guest.networks=Dom\u00ednio DNS para redes h\u00f3spedes +label.domain.admin=Administrador de Dom\u00ednio +label.domain=Dom\u00ednio +label.domain.id=ID do Dom\u00ednio +label.domain.name=Nome do Dom\u00ednio +label.domain.router=Roteador do Dom\u00ednio +label.domain.suffix=Sufixo de Dom\u00ednio DNS (ex. xyz.com) +label.done=Pronto +label.double.quotes.are.not.allowed=Aspas duplas n\u00e3o s\u00e3o permitidas label.download.progress=Status do Download +label.drag.new.position=Arrastar para uma nova posi\u00e7\u00e3o label.edit=Editar +label.edit.lb.rule=Editar regra de LB +label.edit.network.details=Editar detalhes de rede +label.edit.project.details=Editar detalhes do projeto +label.edit.tags=Edite etiquetas +label.edit.traffic.type=Editar tipo de tr\u00e1fego +label.edit.vpc=Editar VPC +label.egress.rule=Regra Egress +label.egress.rules=Regras de sa\u00edda +label.elastic=El\u00e1stico +label.elastic.IP=IP El\u00e1stico +label.elastic.LB=LB El\u00e1stico label.email=Email +label.enable.provider=Habilitar provider +label.enable.s3=Habilita storage secund\u00e1ria fornecida por S3 +label.enable.swift=Habilitar Swift +label.enable.vpn=Habilitar VPN label.enabling.vpn.access=Ativando Acesso VPN label.enabling.vpn=Ativando VPN -label.end.port=Porta Final +label.end.IP=IP do fim label.endpoint.or.operation=Endpoint or Operation -label.error.code=Código de Erro +label.endpoint=Ponto de acesso +label.end.port=Porta Final +label.end.reserved.system.IP=Fim dos IPs reservados para o sistema +label.end.vlan=Vlan do fim +label.enter.token=Digite o token +label.error.code=C\u00f3digo de Erro label.error=Erro +label.ESP.encryption=Encripta\u00e7\u00e3o ESP +label.ESP.hash=Hash ESP +label.ESP.policy=Pol\u00edtica ESP label.esx.host=ESX/ESXi Host label.example=Examplo +label.f5=F5 label.failed=Falhou label.featured=Featured +label.fetch.latest=Obter \u00faltimos +label.filterBy=Filtrar por label.firewall=Firewall label.first.name=Primeiro Nome label.format=Formato label.friday=Sexta-feira label.full=Full +label.full.path=Path completo label.gateway=Gateway label.general.alerts=Alertas Gerais label.generating.url=Criando URL -label.go.step.2=Vá para passo 2 -label.go.step.3=Vá para passo 3 -label.go.step.4=Vá para passo 4 -label.go.step.5=Vá para passo 5 -label.group.optional=Grupo (Opcional) +label.go.step.2=V\u00e1 para passo 2 +label.go.step.3=V\u00e1 para passo 3 +label.go.step.4=V\u00e1 para passo 4 +label.go.step.5=V\u00e1 para passo 5 label.group=Grupo +label.group.optional=Grupo (Opcional) label.guest.cidr=CIDR de rede Convidado +label.guest.end.ip=IP do fim do guest label.guest.gateway=Gateway de rede Convidado +label.guest=Guest +label.guest.ip=Endere\u00e7o IP Convidado label.guest.ip.range=Intervalo de rede convidado -label.guest.ip=Endereço IP Convidado -label.guest.netmask=Máscara de rede Convidado +label.guest.netmask=M\u00e1scara de rede Convidado +label.guest.networks=Redes Guest +label.guest.start.ip=IP de in\u00edcio do guest +label.guest.traffic=Tr\u00e1fego de h\u00f3spedes +label.guest.type=Tipo de Guest label.ha.enabled=HA Ativado label.help=Ajuda +label.hide.ingress.rule=Ocultar Regra de Entrada +label.hints=Dicas label.host.alerts=Alertas de Host -label.host.name=Host Name label.host=Host +label.host.MAC=Host MAC +label.host.name=Host Name label.hosts=Hosts +label.host.tags=Tags de Host label.hourly=A cada hora +label.hypervisor.capabilities=Recursos de Virtualizador +label.hypervisor=Hipervisor label.hypervisor.type=Tipo do Hypervisor -label.hypervisor=Hypervisor +label.hypervisor.version=Vers\u00e3o de Virtualizador label.id=ID +label.IKE.DH=DH IKE +label.IKE.encryption=Encripta\u00e7\u00e3o IKE +label.IKE.hash=Hash IKE +label.IKE.policy=Pol\u00edtica IKE label.info=Info label.ingress.rule=Regra de Entrada label.initiated.by=Iniciado por +label.installWizard.addClusterIntro.subtitle=O que \u00e9 um cluster? +label.installWizard.addClusterIntro.title=Vamos adicionar um cluster +label.installWizard.addHostIntro.subtitle=O que \u00e9 um Host ? +label.installWizard.addHostIntro.title=Vamos adicionar um host +label.installWizard.addPodIntro.subtitle=O que \u00e9 um pod ? +label.installWizard.addPodIntro.title=Vamos adicionar um pod +label.installWizard.addPrimaryStorageIntro.subtitle=Qual \u00e9 o storage prim\u00e1rio ? +label.installWizard.addPrimaryStorageIntro.title=Vamos adicionar o storage prim\u00e1rio +label.installWizard.addSecondaryStorageIntro.subtitle=Qual \u00e9 o storage secund\u00e1rio ? +label.installWizard.addSecondaryStorageIntro.title=Vamos adicionar o storage secund\u00e1rio +label.installWizard.addZoneIntro.subtitle=O que \u00e9 uma zona? +label.installWizard.addZoneIntro.title=Vamos adicionar uma zona +label.installWizard.addZone.title=Adicionar zona +label.installWizard.click.launch=Click no bot\u00e3o executar. +label.installWizard.subtitle=Este tour vai auxiliar voc\u00ea na configura\u00e7\u00e3o da sua instala\u00e7\u00e3o de CloudStack&\#8482 +label.installWizard.title=Ol\u00e1, seja bem vindo ao CloudStack&\#8482 +label.instance=Cloud Server label.instance.limits=Limites do Cloud Server label.instance.name=Nome do Cloud Server -label.instance=Cloud Server label.instances=Cloud Servers label.internal.dns.1=DNS 1 Interno label.internal.dns.2=DNS 2 Interno +label.internal.name=Nome interno label.interval.type=Tipo de Intervalo +label.introduction.to.cloudstack=Introdu\u00e7\u00e3o ao CloudStack&\#8482 label.invalid.integer=Invalid Integer -label.invalid.number=Número Inválido -label.ip.address=Endereço IP -label.ip.allocations=Alocações de IP -label.ip.limits=Limites de IP Público +label.invalid.number=N\u00famero inv\u00e1lido +label.invitations=Convites +label.invite=Convidar +label.invited.accounts=Contas convidadas +label.invite.to=Convidar para +label.ip.address=Endere\u00e7o IP +label.ipaddress=Endere\u00e7o IP +label.ip.allocations=Aloca\u00e7\u00f5es de IP +label.ip=IP +label.ip.limits=Limites de IP P\u00fablico label.ip.or.fqdn=IP ou FQDN label.ip.range=Range de IP -label.ip=IP +label.ip.ranges=Ranges de IP +label.IPsec.preshared.key=Chave IPSec pr\u00e9 compartilhada label.ips=IPs -label.is.default=Ã\u0089 Padrão -label.is.shared=Ã\u0089 Compartilhado -label.is.system=é um sistema label.iscsi=iSCSI +label.is.default=\u00c9\u0089 Padr\u00e3o label.iso.boot=ISO de Boot label.iso=ISO +label.isolated.networks=Redes Isoladas +label.isolation.method=M\u00e9todo de isolamento label.isolation.mode=Modo Isolado +label.isolation.uri=URI de isolamento +label.is.redundant.router=Redundante +label.is.shared=\u00c9 Compartilhado +label.is.system=\u00e9 um sistema +label.item.listing=Listar items label.keep=Manter +label.keyboard.type=Tipo de Teclado +label.key=Chave +label.kvm.traffic.label=Etiqueta de tr\u00e1fego KVM +label.label=Etiqueta +label.lang.brportugese=Portugu\u00eas brasileiro label.lang.chinese=Chinese (Simplified) label.lang.english=English +label.lang.french=Franc\u00eas label.lang.japanese=Japanese label.lang.korean=Coreano +label.lang.russian=Russo label.lang.spanish=Spanish label.last.disconnected=Last Disconnected -label.last.name=Ã\u009altimo Nome -label.level=Nível -label.linklocal.ip=Endereço IP Link Local +label.last.name=\u00daltimo Nome +label.latest.events=\u00daltimos eventos +label.launch=Executar +label.launch.vm=Executar VM +label.launch.zone=Executar zona. +label.LB.isolation=Isolamento de LB +label.least.connections=Least connections +label.level=N\u00edvel +label.linklocal.ip=Endere\u00e7o IP Link Local label.load.balancer=Load Balancer +label.load.balancing=Balanceamento de Carga +label.load.balancing.policies=Pol\u00edticas de balanceamento de carga label.loading=Carregando label.local=Local -# label.local.storage.enabled=Local storage enabled +label.local.storage.enabled=Storage local habilitada +label.local.storage=Storage Local label.login=Entrar label.logout=Sair label.lun=LUN +label.LUN.number=LUN \# +label.make.project.owner=Criar propriet\u00e1rio de conta de projeto label.manage=Gerenciar -label.maximum=Máximo -label.memory.allocated=Memória Alocada -label.memory.total=Memória Total -label.memory.used=Memória Usada -label.memory=Memória (em MB) +label.management=Gerenciamento +label.management.ips=Gerenciamento de Endere\u00e7os IP +label.manage.resources=Gerenciar Recursos +label.max.guest.limit=Limite m\u00e1x. de guest +label.maximum=M\u00e1ximo +label.max.networks=M\u00e1x. de redes +label.max.public.ips=M\u00e1x. IPs p\u00fablicos +label.max.snapshots=Max. snapshots +label.max.templates=M\u00e1x. templates +label.max.vms=M\u00e1x. VMs de usu\u00e1rio +label.max.volumes=M\u00e1x. volumes +label.may.continue=Voc\u00ea pode continuar agora +label.memory.allocated=Mem\u00f3ria Alocada +label.memory.mb=Mem\u00f3ria (em MB) +label.memory=Mem\u00f3ria (em MB) +label.memory.total=Mem\u00f3ria Total +label.memory.used=Mem\u00f3ria Usada label.menu.accounts=Contas label.menu.alerts=Alertas label.menu.all.accounts=Todas as Contas label.menu.all.instances=Todos Cloud Servers -label.menu.community.isos=ISOs Públicas -label.menu.community.templates=Templates Públicos -label.menu.configuration=Configuração +label.menu.community.isos=ISOs P\u00fablicas +label.menu.community.templates=Templates P\u00fablicos +label.menu.configuration=Configura\u00e7\u00e3o label.menu.dashboard=Dashboard label.menu.destroyed.instances=Cloud Servers Apagados label.menu.disk.offerings=Oferta de Discos -label.menu.domains=Domínios +label.menu.domains=dom\u00ednios label.menu.events=Eventos label.menu.featured.isos=ISOs Customizada label.menu.featured.templates=Templates Customizados -label.menu.global.settings=Configurações Globais +label.menu.global.settings=Configura\u00e7\u00f5es Globais +label.menu.infrastructure=Infra-estrutura label.menu.instances=Cloud Servers -label.menu.ipaddresses=Endereços IP +label.menu.ipaddresses=Endere\u00e7os IP label.menu.isos=ISOs label.menu.my.accounts=Minhas Contas label.menu.my.instances=Meus Cloud Servers @@ -1157,332 +674,702 @@ label.menu.my.isos=Minhas ISOs label.menu.my.templates=Meus Templates label.menu.network.offerings=Oferta de Rede label.menu.network=Rede -label.menu.physical.resources=Recursos Físicos +label.menu.physical.resources=Recursos B\u00e1\u00adsicos label.menu.running.instances=Cloud Servers Rodando -label.menu.security.groups=Security Groups +label.menu.security.groups=Grupos de seguran\u00e7a label.menu.service.offerings=Planos label.menu.snapshots=Snapshots label.menu.stopped.instances=Cloud Servers Parados label.menu.storage=Storage -label.menu.system.vms=VM de Sistemas +label.menu.system.service.offerings=Ofertas do Sistema label.menu.system=Sistema +label.menu.system.vms=VM de Sistemas label.menu.templates=Templates -label.menu.virtual.appliances=Appliances Virtuais +label.menu.virtual.appliances=Appliance Virtual label.menu.virtual.resources=Recursos Virtuais label.menu.volumes=Discos +label.migrate.instance.to.host=Migrar inst\u00e2ncia para outro host label.migrate.instance.to=Migrar Cloud Server para -label.minimum=Mínimo -label.minute.past.hour=minuto(s) Última hora +label.migrate.instance.to.ps=Migrar inst\u00e2ncia para outro storage prim\u00e1rio +label.migrate.router.to=Migrar Roteador para +label.migrate.systemvm.to=Migrar VM de sistema para +label.migrate.to.host=Migrar para outro host +label.migrate.volume=Migrar volume para outro storage prim\u00e1rio +label.minimum=M\u00ed\u00adnimo +label.minute.past.hour=minuto(s) \u00daltima hora label.monday=Segunda label.monthly=Mensal label.more.templates=Mais Templates +label.move.down.row=Mover uma c\u00e9lula para baixo +label.move.to.top=Mover para o topo +label.move.up.row=Mover uma c\u00e9lula para cima label.my.account=Minha Conta -label.name.optional=Nome (Opcional) +label.my.network=Minha rede +label.my.templates=Meus templates label.name=Nome -label.netmask=Másrca de Rede -label.network.desc=Descrição de Rede -label.network.domain=Domínio de Rede +label.name.optional=Nome (Opcional) +label.nat.port.range=Range de Portas NAT +label.netmask=M\u00c3\u00a1srca de Rede +label.netScaler=NetScaler +label.network.ACL=ACL de rede +label.network.ACLs=Network ACLs +label.network.desc=Descri\u00e7\u00e3o de Rede +label.network.device=Dispositivo de Rede +label.network.device.type=Tipo de Dispositivo de Rede +label.network.domain=Dom\u00ednio de Rede +label.network.domain.text=Texto do dom\ufffdnio de rede label.network.id=ID de Rede +label.networking.and.security=Rede e seguran\u00e7a +label.network.label.display.for.blank.value=Utilizar gateway default label.network.name=Nome da Rede label.network.offering.display.text=Network Offering Display Text label.network.offering.id=Network Offering ID label.network.offering.name=Network Offering Name label.network.offering=Network Offering -label.network.rate=Taxa de Transferência +label.network.rate=Taxa de Transfer\u00eancia label.network.read=Network Read +label.network=Rede +label.network.service.providers=Provedores de Servi\u00e7os de Rede +label.networks=Redes label.network.type=Tipo de Rede label.network.write=Network Write -label.network=Rede +label.new=Novo label.new.password=Nova Senha -label.next=Próximo +label.new.project=Novo Projeto +label.new.vm=Nova VM +label.next=Pr\u00f3ximo +label.nexusVswitch=Nexus Vswitch +label.nfs=NFS label.nfs.server=Servidor NFS label.nfs.storage=Storage NFS -label.nfs=NFS +label.nic.adapter.type=Tipo de adaptador NIC label.nics=REDE -label.no.actions=Sem Ações Disponíveis +label.no.actions=Sem A\u00e7\u00f5es Dispon\u00edveis label.no.alerts=Sem Alertas Recentes +label.no.data=Sem dados para mostrar label.no.errors=Sem Erros Recentes -label.no.isos=Sem ISO Disponível -label.no.items=Sem Ã\u008dtens Disponíveis -label.no.security.groups=Sem Security Groups Disponíveis -label.no.thanks=Não obrigado -label.no=Não +label.no.isos=Sem ISO Dispon\u00edvel +label.no.items=Sem Itens Dispon\u00edveis label.none=Nenhum -label.not.found=Não Encontrado +label.no=N\u00e3o +label.no.security.groups=Sem Security Groups Dispon\u00edveis +label.not.found=N\u00e3o Encontrado +label.no.thanks=N\u00e3o obrigado +label.notifications=Notifica\u00e7\u00f5es +label.number.of.clusters=N\u00famero de Clusters +label.number.of.hosts=N\u00famero de Hosts +label.number.of.pods=N\u00famero de Pods +label.number.of.system.vms=N\u00famero de VMs de sistema +label.number.of.virtual.routers=N\u00famero de Roteadores Virtuais +label.number.of.zones=N\u00famero de Zonas label.num.cpu.cores=\# de Core CPU -label.numretries=Número de Tentativas +label.numretries=N\u00famero de Tentativas +label.ocfs2=OCFS2 label.offer.ha=Offer HA +label.ok=OK label.optional=Opcional -label.os.preference=Preferência de SO +label.order=Ordenar +label.os.preference=Prefer\u00eancia de SO label.os.type=Tipo de SO -label.owned.public.ips=IP Público Utilizado +label.owned.public.ips=IP P\u00fablico Utilizado label.owner.account=Dono da Conta -label.owner.domain=Dono do Domínio -label.parent.domain=Domínio Principal +label.owner.domain=Dono do Dom\u00ednio +label.parent.domain=Dom\u00ednio Principal label.password.enabled=Senha Ativada label.password=Senha label.path=Caminho (Path) +label.physical.network.ID=ID da rede f\u00edsica +label.physical.network=Rede F\u00edsica +label.PING.CIFS.password=PING CIFS password +label.PING.CIFS.username=PING CIFS username +label.PING.dir=PING Directory +label.PING.storage.IP=Disparar PING para IP do Storage +label.please.specify.netscaler.info=Por favor especifique as informa\u00e7\u00f5es do Netscaler label.please.wait=Por Favor Aguarde +label.pod.name=Nome do Pod label.pod=POD +label.pods=Pods label.port.forwarding=Encaminhamento de Porta +label.port.forwarding.policies=Pol\u00edticas de redirecionamento de portas label.port.range=Range de Porta +label.PreSetup=PreSetup +label.previous=Anterior label.prev=Prev -label.primary.allocated=Alocação do Storage Primário -label.primary.network=Rede Primária -label.primary.storage=Storage Primário -label.primary.used=Uso do Storage Primário +label.primary.allocated=Aloca\u00e7\u00e3o do Storage Prim\u00e1rio +label.primary.network=Rede Prim\u00e1ria +label.primary.storage.count=Pools de Storage Prim\u00e1rios +label.primary.storage=Storage Prim\u00e1rio +label.primary.used=Uso do Storage Prim\u00e1rio +label.private.Gateway=Gateway privado label.private.interface=Interface Privada +label.private.ip=Endere\u00e7o IP Privado label.private.ip.range=Range de IP Privado -label.private.ip=Endereço IP Privado label.private.ips=IPs Privados +label.privatekey=PKCS\#8 Private Key +label.private.network=Rede Privada label.private.port=Porta Privada label.private.zone=Zona Privada +label.project.dashboard=Dashboard do Projeto +label.project.id=ID de Projeto +label.project.invite=Convidar para o projeto +label.project.name=Nome de projeto +label.project=Projeto +label.projects=Projetos +label.project.view=Vis\u00e3o de Projeto label.protocol=Protocolo -label.public.interface=Interface Pública -label.public.ip=Endereço IP Público -label.public.ips=IPs Públicos -label.public.port=Porta Pública -label.public.zone=Zona Pública -label.public=Público +label.providers=Providers +label.public.interface=Interface P\u00fablica +label.public.ip=Endere\u00e7o IP P\u00fablico +label.public.ips=IPs P\u00fablicos +label.public.network=Rede P\u00fablica +label.public.port=Porta P\u00fablica +label.public=P\u00fablico +label.public.traffic=Tr\u00e1fego P\u00fablico +label.public.zone=Zona P\u00fablica +label.purpose=Prop\u00f3sito +label.Pxe.server.type=Tipo de Servidor PXE +label.quickview=Visualiza\u00e7\u00e3o r\u00e1pida +label.reboot=Reiniciar label.recent.errors=Erros Recentes +label.redundant.router.capability=Recurso de roteador redundante +label.redundant.router=Roteador Redundantee label.refresh=Atualizar label.related=Relacionado +label.remind.later=Me lembre depois +label.remove.ACL=Remove ACL +label.remove.egress.rule=Remover regra egress label.remove.from.load.balancer=Removendo Cloud Server do Load Balancer -label.removing.user=Removendo Usuário -label.required=Obrigatório +label.remove.ingress.rule=Remover regra ingress +label.remove.ip.range=Remover range de IP +label.remove.pf=Remover regra de redirecionamento de porta +label.remove.project.account=Remover conta de projeto +label.remove.rule=Remover regra +label.remove.static.nat.rule=Remover regra de NAT est\u00e1tico +label.remove.static.route=Remover rota est\u00e1tica +label.remove.tier=Remover camada +label.remove.vm.from.lb=Remover VM da regra de balanceamento de carga +label.remove.vpc=remover a VPC +label.removing=Removendo +label.removing.user=Removendo Usu\u00e1rio +label.required=Obrigat\u00f3rio +label.reserved.system.gateway=Gateway de sistema reservado label.reserved.system.ip=IP de Sistema Reservado +label.reserved.system.netmask=M\u00e1scara de rede do sistema reservado +label.reset.VPN.connection=Resetar a conex\u00e3o VPN +label.resize.new.offering.id=New Offering +label.resize.new.size=New Size(GB) +label.resize.shrink.ok=Shrink OK label.resource.limits=Limite de Recursos label.resource=Recurso label.resources=Recursos -label.role=Função +label.resource.state=Estado do Recurso +label.restart.network=Reiniciar rede +label.restart.required=Reiniciar obrigat\u00f3rio +label.restart.vpc=reiniciar a VPC +label.restore=Restaurar +label.review=Revisar +label.revoke.project.invite=Revogar convite +label.role=Fun\u00e7\u00e3o +label.root.disk.controller=Controlador do disco Root label.root.disk.offering=Oferta de Disco ROOT +label.round.robin=Round-robin +label.rules=Regras label.running.vms=VMs Rodando -label.saturday=Sábado +label.s3.access_key=Chave de acesso +label.s3.bucket=Balde +label.s3.connection_timeout=Tempo limite de conex\u00e3o +label.s3.endpoint=Ponto de acesso +label.s3.max_error_retry=Limite de tentativas de recupera\u00e7\u00e3o de erro +label.s3.secret_key=Chave Secreta +label.s3.socket_timeout=Tempo limite no socket +label.s3.use_https=Use HTTPS +label.saturday=S\u00e1bado +label.save.and.continue=Salvar e continuar label.save=Salvar label.saving.processing=Salvando.... label.scope=Escopo label.search=Pesquisar -label.secondary.storage=Storage Secundário -label.secondary.used=Uso do Storage Secundário +label.secondary.storage.count=Pools de Storage secund\u00e1rios +label.secondary.storage=Storage Secund\u00e1rio +label.secondary.storage.vm=VM de storage secund\u00e1rio +label.secondary.used=Uso do Storage Secund\u00c3\u00a1rio label.secret.key=Chave Secreta label.security.group.name=Nome do Security Group label.security.group=Security Group label.security.groups.enabled=Security Groups Ativado -label.security.groups=Security Groups +label.security.groups=Grupos de seguran\u00e7a +label.select.a.template=Selecione um template +label.select.a.zone=Selecione uma zona +label.select.instance=Selecionar inst\u00e2ncia +label.select.instance.to.attach.volume.to=Escolha uma inst\u00e2ncia para conectar o volume +label.select.iso.or.template=Selecione ISO ou template +label.select.offering=Selecionar Oferta +label.select.project=Selecionar Projeto +label.select=Selecionar +label.select.tier=Selecione camada +label.select-view=Selecionar visualiza\u00e7\u00e3o +label.select.vm.for.static.nat=Selecionar VM para NAT est\u00e1tico label.sent=Enviado label.server=Servidor +label.service.capabilities=Recursos de servi\u00e7os label.service.offering=Plano -label.system.service.offering=System Service Offering -label.session.expired=Sessão Expirada +label.session.expired=Sess\u00e3o Expirada +label.setup=Configura\u00e7\u00e3o +label.setup.network=Configurar Rede +label.setup.zone=Configurar Zona +label.set.up.zone.type=Configurar tipo de zona label.shared=Compatilhado +label.SharedMountPoint=SharedMountPoint +label.show.ingress.rule=Mostrar Regra de Entrada +label.site.to.site.VPN=Site-to-site VPN label.size=Tamanho +label.skip.guide=Eu utilizei o CloudStack antes, pular este guia label.snapshot.limits=Limites de Snapshot label.snapshot.name=Nome do Snapshot -label.snapshot.s=Snapshot (s) -# label.snapshot.schedule=Setup Recurring Snapshot label.snapshot=Snapshot +label.snapshot.s=Snapshot (s) label.snapshots=Snapshots label.source.nat=Source NAT +label.source=Origem +label.specify.IP.ranges=Especifique range de IP label.specify.vlan=Especificar VLAN -label.start.port=Porta de Início +label.SR.name = SR Name-Label +label.srx=SRX +label.start.IP=IP do in\u00edcio +label.start.port=Porta de In\u00edcio +label.start.reserved.system.IP=In\u00edcio dos IPs reservados para o sistema +label.start.vlan=Vlan do in\u00edcio label.state=Estado -label.static.nat.to=NAT Estático para -label.static.nat=NAT Estático -label.statistics=Estatísticas +label.static.nat.enabled=NAT est\u00e1tico Habilitado +label.static.nat=NAT Est\u00e1tico +label.static.nat.to=NAT Est\u00e1tico para +label.static.nat.vm.details=Detalhes de NAT est\u00e1tico da VM +label.statistics=Estat\u00edsticas label.status=Estado -label.step.1.title=Passo 1\: Selecione o Template label.step.1=Passo 1 -label.step.2.title=Passo 2\: Plano +label.step.1.title=Passo 1\: Selecione o Template label.step.2=Passo 2 -label.step.3.title=Passo 3\: Selecione o Disco Adicional +label.step.2.title=Passo 2\: Plano label.step.3=Passo 3 -label.step.4.title=Passo 4\: Rede +label.step.3.title=Passo 3\: Selecione o Disco Adicional label.step.4=Passo 4 -label.step.5.title=Passo 5\: Revisar +label.step.4.title=Passo 4\: Rede label.step.5=Passo 5 +label.step.5.title=Passo 5\: Revisar +label.sticky.cookie-name=Nome do Cookie +label.sticky.domain=Dom\u00ednio +label.sticky.expire=Expires +label.sticky.holdtime=Tempo de espera +label.sticky.indirect=Indireto +label.sticky.length=Tamanho +label.sticky.mode=Modo +label.sticky.nocache=Sem Cache +label.sticky.postonly=Apenas publicar +label.sticky.prefix=Prefixo +label.sticky.tablesize=Tamanho da Tabela +label.stop=Parar label.stopped.vms=VMs Paradas -label.storage.type=Tipo de Storage label.storage=Storage +label.storage.tags=Tags de Storage +label.storage.traffic=Tr\u00e1fego do Storage +label.storage.type=Tipo de Storage +label.subdomain.access=Acesso ao subdom\u00ednio label.submit=Enviar label.submitted.by=[Enviado por\: ] label.succeeded=Sucedido label.sunday=Domingo +label.super.cidr.for.guest.networks=Super CIDR para redes h\u00f3spedes +label.supported.services=Servi\u00e7os Suportados +label.supported.source.NAT.type=Tipo de Source NAT Suportado +label.suspend.project=Suspender Projeto label.system.capacity=Capacidade do Sistema +label.system.offering=Ofertas de Sistema +label.system.service.offering=System Service Offering +label.system.vms=VM de Sistemas label.system.vm.type=Tipo de VM de Sistema label.system.vm=VM de Sistema -label.system.vms=VM de Sistema +label.system.wide.capacity=Capacidade Total do Sistema label.tagged=Tagged label.tags=Tags label.target.iqn=Target IQN +label.task.completed=Tarefa completa label.template.limits=Limites do Template label.template=Template -label.theme.default=Tema Padrão +label.TFTP.dir=TFTP Directory +label.theme.default=Tema Padr\u00e3o label.theme.grey=Custom - Grey label.theme.lightblue=Custom - Light Blue label.thursday=Quinta -label.time.zone=Fuso Horário -label.time=Time +label.tier=Camada +label.tier.details=Detalhes da camada label.timeout.in.second = Timeout(segundos) -label.timezone=Fuso Horário +label.timeout=Timeout +label.time=Time +label.time.zone=Fuso Hor\u00e1rio +label.timezone=Fuso Hor\u00e1rio +label.token=Token label.total.cpu=CPU TOTAL +label.total.CPU=CPU TOTAL +label.total.hosts=Total de Hosts +label.total.memory=Total de Mem\u00f3ria +label.total.of.ip=Total de endere\u00e7os IP +label.total.of.vm=Total de VM +label.total.storage=Totam de Storage label.total.vms=Total VMs -label.traffic.type=Tipo de Tráfego -label.tuesday=Terça +label.traffic.label=Etiqueta de tr\u00e1fego +label.traffic.types=Tipos de Tr\u00e1fego +label.traffic.type=Tipo de Tr\u00e1fego +label.tuesday=Ter\u00e7a label.type.id=Tipo do ID label.type=Tipo -label.unavailable=Indisponível +label.unavailable=Indispon\u00edvel label.unlimited=Ilimitado -label.untagged=Não Marcado -label.update.ssl.cert=Atualizar Certificado SSL -label.update.ssl=Atualizar Certificado SSL +label.untagged=N\u00e3o Marcado +label.update.project.resources=Atualizar recursos de projeto +label.update.ssl= Atualizar Certificado SSL +label.update.ssl.cert= Atualizar Certificado SSL label.updating=Atualizando +label.upload=Enviar +label.upload.volume=Enviar o Volume label.url=URL label.usage.interface=Usage Interface label.used=Usado -label.user=Usuário -label.username=Nome de Usuário -label.users=Usuários +label.username=Nome de usu\u00e1rio +label.users=Usu\u00e1rios +label.user=Usu\u00e1rio label.value=Valor +label.vcdcname=Nome do vCenter DC label.vcenter.cluster=vCenter Cluster label.vcenter.datacenter=vCenter Datacenter label.vcenter.datastore=vCenter Datastore label.vcenter.host=vCenter Host label.vcenter.password=vCenter Password label.vcenter.username=vCenter Username -label.version=Versão +label.vcipaddress=Endere\u00e7o IP do vCenter +label.version=Vers\u00e3o +label.view.all=Visualizar tudo +label.view.console=Visualizar Console +label.viewing=Visualizar +label.view.more=Ver mais +label.view=Visualizar label.virtual.appliance=Appliance Virtual label.virtual.appliances=Appliance Virtual +label.virtual.machines=M\u00e1quinas virtuais label.virtual.network=Rede Virtual +label.virtual.router=Roteador Virtual +label.virtual.routers=Roteadores Virtuais label.vlan.id=VLAN ID label.vlan.range=Intervalo de VLAN +label.vlan=VLAN label.vm.add=Adicionar Cloud Server label.vm.destroy=Apagar -label.vm.reboot=Reiniciar -label.vm.start=Início -label.vm.stop=Parar +label.vm.display.name=Nome de exibi\u00e7\u00e3o da VM +label.VMFS.datastore=VMFS datastore label.vmfs=VMFS +label.vm.name=Nome da VM +label.vm.reboot=Reiniciar +label.VMs.in.tier=M\u00e1quinas virtuais em camadas +label.vmsnapshot.type=Tipo +label.vm.start=In\u00edcio +label.vm.state=Estado da VM +label.vm.stop=Parar label.vms=VMs +label.vmware.traffic.label=Etiqueta de tr\u00e1fego VMware +label.volgroup=Grupo de Volume +label.volume=Disco label.volume.limits=Limites de Disco label.volume.name=Nome do Disco -label.volume=Disco label.volumes=Discos +label.vpc.id=VPC ID +label.VPC.router.details=Detalhes de roteador de VPC +label.vpc=VPC +label.VPN.connection=Conex\u00e3o VPN +label.vpn.customer.gateway=Gateway de VPN de usu\u00e1rio +label.VPN.customer.gateway=Gateway de VPN de usu\u00e1rio +label.VPN.gateway=Gateway de VPN +label.vpn=VPN +label.vsmctrlvlanid=Control VLAN ID +label.vsmpktvlanid=Packet VLAN ID +label.vsmstoragevlanid=Storage VLAN ID label.vsphere.managed=vSphere Managed label.waiting=Aguardando label.warn=Avisar label.wednesday=Quarta-Feira label.weekly=Semanal -label.welcome.cloud.console=Painel de Controle label.welcome=Bem-Vindo +label.welcome.cloud.console=Painel de Controle +label.what.is.cloudstack=O que \u00e9 o CloudStack&\#8482? +label.xen.traffic.label=Etiqueta de tr\u00e1fego XenServer label.yes=Sim +label.zone.details=Detalhes de zona label.zone.id=ID da Zona +label.zone.name=Nome da zona label.zone.step.1.title=Passo 1\: Selecionar a Rede label.zone.step.2.title=Passo 2\: Adicionar a Zona label.zone.step.3.title=Passo 3\: Adicionar o POD label.zone.step.4.title=Passo 4\: Adicionar um Intervalo de IP -# label.zone.wide=Zone-Wide +label.zones=Zonas +label.zone.type=Tipo de Zona +label.zone.wide=Zone-Wide +label.zoneWizard.trafficType.guest=H\u00f3spede\: tr\u00e1fego entre m\u00e1quinas virtuais de usu\u00e1rios finais +label.zoneWizard.trafficType.management=Ger\u00eancia\: tr\u00e1fego entre recursos internos do CloudStack, incluindo quaisquer componentes que se comunicam com o servidor de gerenciamento, tais como hosts e m\u00e1quinas virtuais de sistema do CloudStack +label.zoneWizard.trafficType.public=P\u00fablico\: tr\u00e1fego entre a internet e m\u00e1quinas virtuais na nuvem. +label.zoneWizard.trafficType.storage=Storage\: tr\u00e1fego entre servidores de storage prim\u00e1ria e secund\u00e1ria, tais como templates de m\u00e1quinas virtuais e snapshots label.zone=Zona - -#Messages -message.acquire.public.ip=Selecione a zona de onde você deseja adquirir o novo IP -message.action.cancel.maintenance.mode=Confirme que você deseja cancelar esta manutenção -message.action.cancel.maintenance=A manutenção do seu HOST foi cancelada com sucesso -message.action.delete.ISO.for.all.zones=Esta ISO é usada por todas as Zonas. Confirme se você deseja excluir a ISO de todas as Zonas -message.action.delete.ISO=Confirme que você deseja excluir esta ISO -message.action.delete.cluster=Confirme que você deseja excluir este HOST -message.action.delete.disk.offering=Confirme que você deseja excluir esta oferta de disco -message.action.delete.domain=Confirme que você deseja excluir este domínio -message.action.delete.external.firewall=Confirme que você gostaria de remover este Firewall externo. Aviso\: Se você está planejando adicionar novamente este mesmo Firewall, é necessário apagar os contadores do dispositivo. -message.action.delete.external.load.balancer=Confirme que você gostaria de remover este Load Balancer Externo. Aviso\: Se você está planejando adicionar novamente este mesmo Load Balancer, é necessário apagar os contadores do dispositivo. -message.action.delete.ingress.rule=Confirme que você deseja excluir esta regra de entrada. -message.action.delete.network=Confirme que você deseja remover esta rede. -message.action.delete.pod=Confirme que você deseja remover este POD. -message.action.delete.primary.storage=Confirme que você deseja remover este Storage Primário. -message.action.delete.secondary.storage=Confirme que você deseja remover este Storage Secundário. -message.action.delete.security.group=Confirme que você deseja remover este Security Group. -message.action.delete.service.offering=Confirme que você deseja remover este Plano. -message.action.delete.snapshot=Confirme que você deseja remover este Snapshot. -message.action.delete.template.for.all.zones=Este Template é usado por todas as zonas. Confirme que você deseja remover o Template de todas as zonas. -message.action.delete.template=Confirme que você deseja remover este Template. -message.action.delete.volume=Confirme que você deseja remover este Disco. -message.action.delete.zone=Confirme que você deseja remover esta Zona. -message.action.destroy.instance=Confirme que você deseja excluir este Cloud Server. -message.action.destroy.systemvm=Confirme que você deseja excluir esta VM de Sistema. -message.action.disable.static.NAT=Confirme que você deseja desativar o NAT estático. -message.action.enable.maintenance=O Host foi preparado com sucesso para manutenção. Este processo poderá levar alguns minutos ou mais dependendo do número de VMs hospedadas neste Host. -message.action.force.reconnect=O procedimento de reconexão forçada foi preparado com sucesso. Este processo poderá levar alguns minutos. -message.action.host.enable.maintenance.mode=Ativar o modo de manutenção irá causar o live migration de todos Cloud Server hospedados neste Host para o próximo disponível. -message.action.instance.reset.password=Por favor confirme que você deseja alterar a senha de ROOT para está máquina virtual. -message.action.primarystorage.enable.maintenance.mode=Aviso\: Colocar o Storage primário em modo de manutenção irá causar a parada de todas as VMs hospedadas nesta unidade. Deseja continuar? -message.action.reboot.instance=Confirme que você deseja reiniciar este Cloud Server. -message.action.reboot.systemvm=Confirme que você deseja reiniciar esta VM de sistema. -message.action.release.ip=Confirme que você deseja liberar este IP. -message.action.remove.host=Remover o único/último host do cluster e reinstalar o host irá provocar a perda do ambiente/banco do host tornando os Cloud Servers inutilizáveis. -message.action.restore.instance=Confirme que você deseja restaurar este Cloud Server. -message.action.start.instance=Confirme que você deseja iniciar este Cloud Server. -message.action.start.router=Confirme que você deseja inciar este roteador. -message.action.start.systemvm=Confirme que você deseja iniciar esta VM de sistema. -message.action.stop.instance=Confirme que você deseja parar este Cloud Server. -message.action.stop.systemvm=Confirme que você deseja parar esta VM de Sistema. -message.action.take.snapshot=Por favor confirme que você deseja criar um snapshot deste volume. -message.add.cluster.zone=Add a hypervisor managed cluster for zone +managed.state=Status do Gerenciamento +message.acquire.new.ip=Por favor confirme que voc\u00ea gostaria de adquirir um novo IP para esta rede. +message.acquire.new.ip.vpc=Por favor confirme que voc\u00ea gostaria de adquirir um novo IP para esta VPC. +message.acquire.public.ip=Selecione a zona de onde voc\u00ea deseja adquirir o novo IP +message.action.cancel.maintenance=A Manuten\u00e7\u00e3o do seu HOST foi cancelada com sucesso +message.action.cancel.maintenance.mode=Confirme que voc\u00ea deseja cancelar esta Manuten\u00e7\u00e3o +message.action.change.service.warning.for.instance=Para troca de plano \u00e9 necess\u00e1rio parar o Cloud Server. +message.action.change.service.warning.for.router=O roteador precisa ser desligado antes de trocar o plano/tamanho. +message.action.delete.cluster=Confirme que voc\u00ea deseja excluir este HOST +message.action.delete.disk.offering=Confirme que voc\u00ea deseja excluir esta oferta de disco +message.action.delete.domain=Confirme que voc\u00ea deseja excluir este Dom\u00ednio +message.action.delete.external.firewall=Confirme que voc\u00ea gostaria de remover este Firewall externo. Aviso\: Se voc\u00ea Est\u00e1 planejando adicionar novamente este mesmo Firewall, \u00e9 necess\u00e1rio apagar os contadores do dispositivo. +message.action.delete.external.load.balancer=Confirme que voc\u00ea gostaria de remover este Load Balancer Externo. Aviso\: Se voc\u00ea Est\u00e1 planejando adicionar novamente este mesmo Load Balancer, \u00e9 necess\u00e1rio apagar os contadores do dispositivo. +message.action.delete.ingress.rule=Confirme que voc\u00ea deseja excluir esta regra de entrada. +message.action.delete.ISO=Confirme que voc\u00ea deseja excluir esta ISO +message.action.delete.ISO.for.all.zones=Esta ISO \u00e9 usada por todas as Zonas. Confirme se voc\u00ea deseja excluir a ISO de todas as Zonas +message.action.delete.network=Confirme que voc\u00ea deseja remover esta rede. +message.action.delete.nexusVswitch=Por favor confirme que voc\ufffd deseja remover este nexusVswitch. +message.action.delete.physical.network=Por favor confirme que voc\u00ea deseja deletar esta rede f\u00edsica +message.action.delete.pod=Confirme que voc\u00ea deseja remover este POD. +message.action.delete.primary.storage=Confirme que voc\u00ea deseja remover este Storage Prim\u00e1rio. +message.action.delete.secondary.storage=Confirme que voc\u00ea deseja remover este Storage Secund\u00e1rio. +message.action.delete.security.group=Confirme que voc\u00ea deseja remover este Security Group. +message.action.delete.service.offering=Confirme que voc\u00ea deseja remover este Plano. +message.action.delete.snapshot=Confirme que voc\u00ea deseja remover este Snapshot. +message.action.delete.system.service.offering=Por favor confirme que voc\u00ea deseja deletar esta oferta de servi\u00e7o de sistema. +message.action.delete.template=Confirme que voc\u00ea deseja remover este Template. +message.action.delete.template.for.all.zones=Este Template \u00e9 usado por todas as zonas. Confirme que voc\u00ea deseja remover o Template de todas as zonas. +message.action.delete.volume=Confirme que voc\u00ea deseja remover este Disco. +message.action.delete.zone=Confirme que voc\u00ea deseja remover esta Zona. +message.action.destroy.instance=Confirme que voc\u00ea deseja excluir este Cloud Server. +message.action.destroy.systemvm=Confirme que voc\u00ea deseja excluir esta VM de Sistema. +message.action.disable.cluster=Confirma a desativa\u00e7\u00e3o do cluster. +message.action.disable.nexusVswitch=Por favor confirme que voc\ufffd deseja desabilitar este nexusVswitch +message.action.disable.physical.network=Por favor confirme que voc\u00ea deseja desabilitar esta rede f\u00edsica. +message.action.disable.pod=Confirma a desativa\u00e7\u00e3o do POD. +message.action.disable.static.NAT=Confirme que voc\u00ea deseja desativar o NAT Est\u00e1tico. +message.action.disable.zone=Confirma a desativa\u00e7\u00e3o da zona. +message.action.download.iso=Por favor confirme que voc\u00ea deseja baixar esta ISO. +message.action.download.template=Por favor confirme que voc\u00ea deseja baixar este template. +message.action.enable.cluster=Confirma a ativa\u00e7\u00e3o do cluster. +message.action.enable.maintenance=O Host foi preparado com sucesso para Manuten\u00e7\u00e3o. Este processo poder\u00e1 levar alguns minutos ou mais dependendo do n\u00famero de VMs hospedadas neste Host. +message.action.enable.nexusVswitch=Por favor confirme que voc\ufffd deseja habilitar este nexusVswitch. +message.action.enable.physical.network=Por favor confirme que voc\u00ea deseja habilitar esta rede f\u00edsica. +message.action.enable.pod=Confirma a ativa\u00e7\u00e3o do POD. +message.action.enable.zone=Confirma a ativa\u00e7\u00e3o da zona. +message.action.force.reconnect=O procedimento de reconex\u00e3o for\u00e7ada foi preparado com sucesso. Este processo poder\u00e1 levar alguns minutos. +message.action.host.enable.maintenance.mode=Ativar o modo de Manuten\u00e7\u00e3o ir\u00e1 causar o live migration de todos Cloud Server hospedados neste Host para o pr\u00f3ximo dispon\u00edvel. +message.action.instance.reset.password=Por favor confirme que voc\u00ea deseja alterar a senha de ROOT para est\u00e1 m\u00e1quina virtual. +message.action.manage.cluster=Confirma a vincula\u00e7\u00e3o do cluster. +message.action.primarystorage.enable.maintenance.mode=Aviso\: Colocar o Storage prim\u00e1rio em modo de Manuten\u00e7\u00e3o ir\u00e1 causar a parada de todas as VMs hospedadas nesta unidade. Deseja continuar? +message.action.reboot.instance=Confirme que voc\u00ea deseja reiniciar este Cloud Server. +message.action.reboot.router=Confirme que voc\ufffd deseja reiniciar este roteador. +message.action.reboot.systemvm=Confirme que voc\u00ea deseja reiniciar esta VM de sistema. +message.action.release.ip=Confirme que voc\u00ea deseja liberar este IP. +message.action.remove.host=Favor confirmar que voc\u00ea deseja remover este host. +message.action.reset.password.off=Seu Cloud Server n\u00e3o suporta esta funcionalidade. +message.action.reset.password.warning=Para recuperar a senha \u00e9 necess\u00e1rio parar o Cloud Server. +message.action.restore.instance=Confirme que voc\u00ea deseja restaurar este Cloud Server. +message.action.start.instance=Confirme que voc\u00ea deseja iniciar este Cloud Server. +message.action.start.router=Confirme que voc\u00ea deseja inciar este roteador. +message.action.start.systemvm=Confirme que voc\u00ea deseja iniciar esta VM de sistema. +message.action.stop.instance=Confirme que voc\u00ea deseja parar este Cloud Server. +message.action.stop.router=Confirme que voc\ufffd deseja parar este roteador. +message.action.stop.systemvm=Confirme que voc\u00ea deseja parar esta VM de Sistema. +message.action.take.snapshot=Por favor confirme que voc\u00ea deseja criar um snapshot deste volume. +message.action.unmanage.cluster=Confirma a desvincula\u00e7\u00e3o do cluster. +message.activate.project=Voc\u00ea tem certeza que deseja ativar este projeto ? message.add.cluster=Add a hypervisor managed cluster for zone , pod -message.add.disk.offering=Especifique o seguintes parâmetros para adicionar uma nova oferta de disco. -message.add.firewall=Adicionar Firewall à zona. -message.add.host=Especifique os seguintes parâmetros para adicionar um novo host. +message.add.cluster.zone=Add a hypervisor managed cluster for zone +message.add.disk.offering=Especifique o seguintes par\u00e2metros para adicionar uma nova oferta de disco. +message.add.domain=Por favor especifique o subdom\u00ednio que voc\u00ea deseja criar neste dom\u00ednio +message.add.firewall=Adicionar Firewall \u00e0\u00a0 zona. +message.add.guest.network=Por favor confirme que voc\u00ea gostaria de adicionar uma rede guest. +message.add.host=Especifique os seguintes par\u00e2metros para adicionar um novo host. +message.adding.host=Adicionando host +message.adding.Netscaler.device=Adicionando dispositivo Nescaler +message.adding.Netscaler.provider=Adicionando Netscaler provider +message.add.ip.range=Add an IP range to public network in zone message.add.ip.range.direct.network=Add an IP range to direct network in zone message.add.ip.range.to.pod=

    Add an IP range to pod\:

    -message.add.ip.range=Add an IP range to public network in zone +message.additional.networks.desc=Selecione a(s) rede(s) adicionais que seu Cloud Server ter\u00c3\u00a1 acesso. message.add.load.balancer=Add a load balancer to zone +message.add.load.balancer.under.ip=A regra do balanceador de carga foi adicionada para o IP\: message.add.network=Add a new network for zone\: +message.add.new.gateway.to.vpc=Favor especificar a informa\u00e7\u00e3o para adicionar um novo gateway a esta VPC. message.add.pod=Add a new pod for zone -message.add.primary.storage=Adicionar novo Storage primário à zona , pod -message.add.primary=Especifique os seguintes parâmetros para adicionar um novo Storage primário. +message.add.primary=Especifique os seguintes par\u00e2metros para adicionar um novo Storage prim\u00e1rio. +message.add.primary.storage=Adicionar novo Storage prim\u00e1rio \u00c3\u00a0 zona , pod message.add.secondary.storage=Add a new storage for zone -message.add.service.offering=Por favor preencha os dados abaixo para adicionar uma nova oferta de computação. +message.add.service.offering=Por favor preencha os dados abaixo para adicionar uma nova oferta de computa\u00e7\u00e3o. +message.add.system.service.offering=Por favor preencha os dados abaixo para adicionar uma nova oferta de servi\u00e7o de sistema. message.add.template=Entre com os dados para criar um novo template. message.add.volume=Entre com os dados para criar um novo disco. -message.additional.networks.desc=Selecione a(s) rede(s) adicionais que seu Cloud Server terá acesso. +message.add.VPN.gateway=Favor confirmar que voc\u00ea deseja adicionar um gateway de VPN message.advanced.mode.desc=Escolhe este modelo de rede se deseja ter habilitar o suporte a VLAN. Este modelo permite maior flexibilidade ao administrador ao permitir ofertas de rede customizada, firewall, vpn ou load balancer bem como acesso via rede virtual ou acesso direto. -message.advanced.security.group=Escolha esta opção se desejar utilizar Security Groups para isolamento das VMs guest. -message.advanced.virtual=Escolha esta opção se desejar utilizar VLANs para isolamento das VMs guest. -message.allow.vpn.access=Entre com nome de usuário e senha do usuário que terá acesso VPN. -message.attach.iso.confirm=Confirme que você deseja conectar a ISO ao Cloud Server. -message.attach.volume=Preencha os seguintes dados para conectar o novo disco. Se você está conectando um disco a um Cloud Server Windows, será necessário reiniciar o Cloud Server para visualizar o novo disco. -message.basic.mode.desc=Escolha este modelo de rede se você *não* quer suporte a VLAN. Todo Cloud Server criado neste modelo de rede estará ligado diretamente a um IP da rede e será usado Security Groups para prover segurança e separação. -message.change.offering.confirm=Confirme que você deseja mudar o plano deste Cloud Server. -message.copy.iso.confirm=Confirme se você deseja copiar a ISO para +message.advanced.security.group=Escolha esta op\u00e7\u00e3o se desejar utilizar Security Groups para isolamento das VMs guest. +message.advanced.virtual=Escolha esta op\u00e7\u00e3o se desejar utilizar VLANs para isolamento das VMs guest. +message.after.enable.s3=Storage secund\u00e1ria fornecida por S3 configurada. Nota\: ao deixar esta p\u00e1gina, voc\u00ea n\u00e3o ser\u00e1 capaz de reconfigurar S3 novamente. +message.after.enable.swift=Swift Configurado. Nota\: Ap\u00f3s deixar esta p\u00e1gina, voc\u00ea n\u00e3o ser\u00e1 capaz de reconfigurar o Swift novamente. +message.alert.state.detected=Alerta de estado detectado +message.allow.vpn.access=Entre com nome de Usu\u00e1rio e senha do Usu\u00e1rio que ter\u00e1 acesso VPN. +message.apply.snapshot.policy=Voc\u00ea atualizou com sucesso sua pol\u00edtica de Snapshot. +message.attach.iso.confirm=Confirme que voc\u00ea deseja conectar a ISO ao Cloud Server. +message.attach.volume=Preencha os seguintes dados para conectar o novo disco. Se voc\u00ea Est\u00e1 conectando um disco a um Cloud Server Windows, ser\u00e1 necess\u00e1rio reiniciar o Cloud Server para visualizar o novo disco. +message.basic.mode.desc=Escolha este modelo de rede se voc\u00ea *n\u00e3o* quer suporte a VLAN. Todo Cloud Server criado neste modelo de rede estar\u00e1 ligado diretamente a um IP da rede e ser\u00e1 usado Security Groups para prover seguran\u00e7a e separa\u00e7\u00e3o. +message.change.offering.confirm=Confirme que voc\u00ea deseja mudar o plano deste Cloud Server. +message.change.password=Por favor, troque sua senha. +message.configure.all.traffic.types=Voc\u00ea tem m\u00faltiplas redes f\u00edsicas; favor configurar etiquetas para cada tipo de tr\u00e1fego clicando no bot\u00e3o Edit. +message.configuring.guest.traffic=Configurando tr\u00e1fego do guest +message.configuring.physical.networks=Configurando redes f\u00edsicas +message.configuring.public.traffic=Configurando tr\u00e1fego p\u00fablico +message.configuring.storage.traffic=Configurando tr\u00e1fego de storage +message.confirm.action.force.reconnect=Por favor confirme que voc\u00ea deseja for\u00e7ar a reconex\u00e3o com este host. +message.confirm.delete.F5=Por favor confirme que voc\u00ea deseja remover o F5 +message.confirm.delete.NetScaler=Por favor confirme que voc\u00ea deseja remover o NetScaler +message.confirm.delete.SRX=Por favor confirme que voc\u00ea deseja remover o SRX +message.confirm.destroy.router=Por favor confirme que voc\u00ea gostaria de destruir este roteador +message.confirm.disable.provider=Por favor confirme que voc\u00ea gostaria de desabilitar este provider +message.confirm.enable.provider=Por favor confirme que voc\u00ea gostaria de habilitar este provider +message.confirm.join.project=Por favor confirme que voc\u00ea deseja entrar neste projeto +message.confirm.remove.IP.range=Por favor confirme que voc\u00ea deseja remover este range de IP. +message.confirm.shutdown.provider=Por favor confirme que voc\u00ea deseja desligar este provider +message.copy.iso.confirm=Confirme se voc\u00ea deseja copiar a ISO para message.copy.template=Copiar template XXX da zona para message.create.template.vm=Criar VM do template -message.create.template.volume=Especifique as seguintes informações antes de criar o template a partir do disco\: . A criação de um template a partir de um disco pode levar alguns minutos ou mais dependendo do tamnho do disco. -message.delete.account=Confirme se você deseja excluir esta conta. -message.detach.iso.confirm=Confirme se você deseja desconectar a ISO do Cloud Server. -message.disable.account=Por favor confirme que você deseja desabilitar esta conta. Após desabilitar uma conta, todos os usuários desta conta não irão possuir mais acesso aos seus recursos da cloud. Todas as máquinas virtuais serão automaticamente desligadas. -message.disable.vpn.access=Confirme se você deseja desativar o acesso VPN. -message.download.ISO=Por favor clique 00000 para baixar o ISO -message.download.template=Por favor clique 00000 para baixar o template +message.create.template=Voc\u00ea tem certeza que deseja criar um template ? +message.create.template.volume=Especifique as seguintes informa\u00e7\u00f5es antes de criar o template a partir do disco\: . A cria\u00e7\u00e3o de um template a partir de um disco pode levar alguns minutos ou mais dependendo do tamnho do disco. +message.creating.cluster=Criando cluster +message.creating.guest.network=Criando rede guest +message.creating.physical.networks=Criando redes fisicas +message.creating.pod=Criando pod +message.creating.primary.storage=Criando storage prim\u00e1rio +message.creating.secondary.storage=Criando storage secund\u00e1rio +message.creating.zone=Criando zona. +message.decline.invitation=Voc\u00ea tem certeza que quer rejeitar este convite de projeto ? +message.delete.account=Confirme se voc\u00ea deseja excluir esta conta. +message.delete.gateway=Favor confirmar que voc\u00ea deseja deleta o gateway +message.delete.project=Voc\u00ea tem certeza que deseja deletar este projeto ? +message.delete.user=Por favor confirme que voc\u00ea deseja deletar este usu\u00e1rio. +message.delete.VPN.connection=Favor confirmar que voc\u00ea deseja deletar esta conex\u00e3o VPN +message.delete.VPN.customer.gateway=Favor confirmar que voc\u00ea deseja deletar este gateway de VPN de usu\u00e1rio +message.delete.VPN.gateway=Favor confirmar que voc\u00ea deseja deletar este gateway de VPN +message.detach.disk=Voc\u00ea tem certeza que deseja desconectar este disco ? +message.detach.iso.confirm=Confirme se voc\u00ea deseja desconectar a ISO do Cloud Server. +message.disable.account=Por favor confirme que voc\u00ea deseja desabilitar esta conta. Ap\u00f3s desabilitar uma conta, todos os usu\u00e1rios desta conta n\u00e3o ir\u00e3o possuir mais acesso aos seus recursos da cloud. Todas as m\u00e1quinas virtuais ser\u00e3o automaticamente desligadas. +message.disable.snapshot.policy=Voc\u00ea desativou com sucesso sua pol\u00edtica de Snapshot. +message.disable.user=Por favor confirme que voc\u00ea deseja desabilitar este usu\u00e1rio. +message.disable.vpn.access=Confirme se voc\u00ea deseja desativar o acesso VPN. +message.disable.vpn=Voc\u00ea tem certeza que deseja desabilitar a VPN? +message.download.ISO=Por favor clique 00000 para baixar o ISO +message.download.template=Por favor clique 00000 para baixar o template message.download.volume=Clique 00000 para baixar o disco -message.edit.confirm=Por favor confirme suas alterações antes de clicar em "Salvar". +message.download.volume.confirm=Por favor confirme que voc\u00ea quer baixar este volume +message.edit.account=Editar ("-1" indica que n\u00e3o haver\u00e1 limites para a quantidade de recursos criado) +message.edit.confirm=Por favor confirme suas altera\u00e7\u00f5es antes de clicar em "Salvar". message.edit.limits=Especifique os limites para os seguintes recursos. "-1" indica sem limite para o total de recursos criados. -message.enable.account=Confirme se você deseja ativar a conta. -message.enable.vpn.access=VPN está desativada para este endereço IP. Gostaria de ativar o acesso VPN? -message.enabled.vpn.ip.sec=Sua chave IPSec (pre-shared) é -message.enabled.vpn=Seu acesso VPN está ativado e pode ser acessado através do IP -message.launch.vm.on.private.network=Você deseja executar sua instância na sua própria rede privada dedicada ? -message.lock.account=Confirme se você deseja bloquear esta conta. Bloqueando a conta, todos os usuários desta conta não estarão mais habilitados a gerenciar os recursos na nuvem. Os recursos existentes (Cloud Server) ainda poderão ser acessados. -message.migrate.instance.confirm=Confirme o host que você deseja migrar o Cloud Server. -message.new.user=Especifique abaixo para adicionar novos usuários para a conta -message.no.network.support.configuration.not.true=Você não possui nenhuma zona com grupos de segurança habilitado. Assim sendo, não possui recursos adicionais de rede. Por favor continue para o passo 5. -message.no.network.support=O hypervisor escolhido, vSphere, não possui nenhum recurso de rede adicional. Por favor, vá para o passo 5. +message.edit.traffic.type=Favor especificar a etiqueta de tr\u00e1fego que voc\u00ea deseja associar com este tipo de tr\u00e1fego. +message.enable.account=Confirme se voc\u00ea deseja ativar a conta. +message.enabled.vpn.ip.sec=Sua chave IPSec (pre-shared) \u00e9 +message.enabled.vpn=Seu acesso VPN Est\u00e1 ativado e pode ser acessado atrav\u00e9s do IP +message.enable.user=Por favor confirme que voc\u00ea deseja habilitar este usu\u00e1rio. +message.enable.vpn.access=VPN Est\u00e1 desativada para este endere\u00e7o IP. Gostaria de ativar o acesso VPN? +message.enable.vpn=Por favor confirme que voc\u00ea deseja acesso VPN habilitado para este endere\u00e7o IP. +message.enabling.security.group.provider=Habilitar provider de grupo de seguran\u00e7a +message.enabling.zone=Habilitando zona +message.enter.token=Por favor entre o token que voc\u00ea recebeu no e-mail privado. +message.generate.keys=Por favor confirme que voc\u00ea deseja gerar novas chaves para este usu\u00e1rio. +message.installWizard.click.retry=Click no bot\u00e3o para tentar executar novamente. +message.installWizard.copy.whatIsACluster=Um cluster prov\u00ea uma maneira de agrupar hosts. Os hosts em um cluster tem hardware id\u00eantico, rodam o mesmo hypervisor, est\u00e3o na mesma subnet, acessam o mesmo storage compartilhado. Inst\u00e2ncias de m\u00e1quinas virtuais (VMs) podem ser migradas a quente - live migration - de um host para outro host no mesmo cluster, sem interromper o servi\u00e7o para o usu\u00e1rio. Um Cluster \u00e9 a terceira maior unidade organizacional em uma instala\u00e7\u00e3o CloudStack&\#8482; . Clusters est\u00e3o contidos em pods e pods est\u00e3o contidos em zonas.

    O CloudStack&\#8482; permite m\u00faltiplos clusters em uma mesma cloud, entretanto para a instala\u00e7\u00e3o b\u00e1sica, n\u00f3s iremos precisar apenas de um cluster. +message.installWizard.copy.whatIsAHost=Um host \u00e9 um \u00fanico computador. Os Hosts prov\u00eaem os recursos computacionais para executar as m\u00e1quinas virtuais. Cada host possu\u00ed o software do hypervisor instalado nele para gerenciar as guest VMs (Exceto os hosts bare metal, que s\u00e3o um caso especial discutido no Guia Avan\u00e7ado de Instala\u00e7\u00e3o). Por exemplo, um servidor Linux com KVM habilitado, um servidor Citrix XenServer e um servidor ESXi s\u00e3o hosts. Na Instala\u00e7\u00e3o B\u00e1sica, n\u00f3s utilizamos um \u00fanico host rodando XenServer ou KVM.

    O host \u00e9 a menor unidade organizacional dentro de uma instala\u00e7\u00e3o CloudStack&\#8482; . Hosts est\u00e3o contidos dentro de Clusters, clusters est\u00e3o contidos dentro de pods e pods est\u00e3o contidos dentro de zonas. +message.installWizard.copy.whatIsAPod=Um pod normalmente representa um \u00fanico rack. Hosts no mesmo pod est\u00e3o na mesma subrede.

    Um pod \u00e9 a segunda maior unidade organizacional de uma instala\u00e7\u00e3o CloudStack&\#8482; . Pods est\u00e3o contidos dentro de zonas. Cada zona, pode conter um ou mais pods; Na instala\u00e7\u00e3o b\u00e1sica, voc\u00ea ir\u00e1 ter apenas um pod na sua zona. +message.installWizard.copy.whatIsAZone=Uma zona \u00e9 a maior unidade organizacional em uma instala\u00e7\u00e3o CloudStack&\#8482; . Uma zona tipicamente corresponde a um \u00fanico datacenter, apesar de ser poss\u00edvel ter m\u00faltiplas zonas no mesmo datacenter. O benef\u00edcio de se organizar a infra-estrutura em zonas \u00e9 permitir o isolamento f\u00edsico e redund\u00e2ncia. Por exemplo, cada zona pode possuir sua pr\u00f3pria alimenta\u00e7\u00e3o de energia e link de sa\u00edda de internet e zonas podem estar geograficamente separadas (apesar de n\u00e3o ser obrigat\u00f3rio). +message.installWizard.copy.whatIsCloudStack=O CloudStack&\#8482 \u00e9 uma plataforma de software que agrega recursos computacionais para construir uma Cloud de Infra-estrutura como Servi\u00e7o (IaaS) p\u00fablica, privada ou h\u00edbrida. O CloudStack&\#8482 ger\u00eancia a rede, o storage e os recursos computacionais que comp\u00f5em a infra-estrutura de cloud. Utilize o CloudStack&\#8482 para instalar, gerenciar e configurar os ambientes de cloud computing.

    Indo al\u00e9m de imagens de m\u00e1quinas virtuais individuais rodando em hardware commodity, CloudStack&\#8482 prov\u00ea uma solu\u00e7\u00e3o completa de software de infra-estrutura de cloud para entregar datacenters virtuais como um servi\u00e7o - possuindo todos os componentes essenciais para contruir, instalar e gerenciar aplica\u00e7\u00f5es na cloud multi-camadas e multi-tenant. Ambas as vers\u00f5es open-source e premium est\u00e3o dispon\u00edveis, com a vers\u00e3o opensource oferecendo praticamente os mesmos recursos. +message.installWizard.copy.whatIsPrimaryStorage=Uma infraestrutura de Cloud CloudStack; utiliza dois tipos de storage\: storage prim\u00e1rio e storage secund\u00e1rio. Ambos os tipos podem ser iSCSI, NFS servers, ou disco local.

    O Storage prim\u00e1rio est\u00e1 associado com um cluster, e armazena os volumes de disco de cada guest VM para todas as VMs em execu\u00e7\u00e3o nos hosts deste cluster. O servidor de storage prim\u00e1rio tipicamente encontra-se localizado perto dos hosts. +message.installWizard.copy.whatIsSecondaryStorage=O storage secund\u00e1rio est\u00e1 associado a uma zona, ele \u00e9 respons\u00e1vel por armazenar o seguinte\:
    • Imagens de Templates do SO - que podem ser utilizadas para boot das VMs e podem incluir configura\u00e7\u00f5es adicionais, como por exemplo as aplica\u00e7\u00f5es instaladas
    • Imagens ISO - Imagens de sistema operacional que podem ser boot\u00e1veis ou n\u00e3o
    • Snapshots do volume de discos - c\u00f3pias salvas dos dados de uma VM que pode ser utilizada para recupera\u00e7\u00e3o de dados ou cria\u00e7\u00e3o de novos templates
    +message.installWizard.now.building=Construindo sua cloud agora... +message.installWizard.tooltip.addCluster.name=Um nome para o cluster. Este nome pode ser um nome de sua escolha e n\u00e3o \u00e9 usado pelo CloudStack. +message.installWizard.tooltip.addHost.hostname=O nome DNS ou endere\u00e7o IP do host. +message.installWizard.tooltip.addHost.password=Este \u00e9 a senha do usu\u00e1rio especificado acima (da sua instala\u00e7\u00e3o do XenServer) +message.installWizard.tooltip.addHost.username=Usualmente root. +message.installWizard.tooltip.addPod.name=O nome para o pod +message.installWizard.tooltip.addPod.reservedSystemEndIp=Este \u00e9 o range de IP na rede privada que o CloudStack utiliza para gerenciar o storage secund\u00e1rio das VMs e Proxy Console das VMs. Estes endere\u00e7os IP s\u00e3o obtidos da mesma subrede dos servidores hosts. +message.installWizard.tooltip.addPod.reservedSystemGateway=O gateway para os hosts neste pod. +message.installWizard.tooltip.addPod.reservedSystemNetmask=A m\u00e1scara de rede est\u00e1 em uso na subrede que os guests ir\u00e3o utilizar. +message.installWizard.tooltip.addPod.reservedSystemStartIp=Este \u00e9 o range de IP na rede privada que o CloudStack utiliza para gerenciar o storage secund\u00e1rio das VMs e Proxy Console das VMs. Estes endere\u00e7os IP s\u00e3o obtidos da mesma subrede dos servidores hosts. +message.installWizard.tooltip.addPrimaryStorage.name=O Nome do dispositivo de storage. +message.installWizard.tooltip.addPrimaryStorage.path=(para NFS) No NFS este \u00e9 o path exportado pelo servidor. Path (para SharedMountPoint). Com o KVM este \u00e9 o path em cada host onde o storage prim\u00e1rio est\u00e1 montado. Por exemplo, "/mnt/primary". +message.installWizard.tooltip.addPrimaryStorage.server=(para NFS, iSCSI ou PreSetup) O Endere\u00e7o IP ou nome DNS do dispositivo de storage. +message.installWizard.tooltip.addSecondaryStorage.nfsServer=O endere\u00e7o IP do servidor NFS hospedando o storage secund\u00e1rio +message.installWizard.tooltip.addSecondaryStorage.path=Path exportado, localizado no servidor que voc\u00ea especificou acima +message.installWizard.tooltip.addZone.dns1=Estes s\u00e3o os servidores DNS utilizados pelas guest VMs na zona. Estes servidores DNS ser\u00e3o acessados pela interface de rede p\u00fablica que voc\u00ea ir\u00e1 adicionar posteriormente. O endere\u00e7o IP p\u00fablico da zona deve possuir uma rota para os servidores DNS configurados aqui. +message.installWizard.tooltip.addZone.dns2=Estes s\u00e3o os servidores DNS utilizados pelas guest VMs na zona. Estes servidores DNS ser\u00e3o acessados pela interface de rede p\u00fablica que voc\u00ea ir\u00e1 adicionar posteriormente. O endere\u00e7o IP p\u00fablico da zona deve possuir uma rota para os servidores DNS configurados aqui. +message.installWizard.tooltip.addZone.internaldns1=Estes s\u00e3o os servidores DNS utilizados pelas VMs de sistema nesta zona. Estes servidores DNS ser\u00e3o acessados atrav\u00e9s da interface de rede privada das VMs de sistema. O endere\u00e7o IP privado que voc\u00ea configurar para os pods deve possuir uma rota para os servidores DNS configurados aqui. +message.installWizard.tooltip.addZone.internaldns2=Estes s\u00e3o os servidores DNS utilizados pelas VMs de sistema nesta zona. Estes servidores DNS ser\u00e3o acessados atrav\u00e9s da interface de rede privada das VMs de sistema. O endere\u00e7o IP privado que voc\u00ea configurar para os pods deve possuir uma rota para os servidores DNS configurados aqui. +message.installWizard.tooltip.addZone.name=Um nome para a zona +message.installWizard.tooltip.configureGuestTraffic.description=Uma descri\u00e7\u00e3o da sua rede +message.installWizard.tooltip.configureGuestTraffic.guestEndIp=O range de endere\u00e7os IP que estar\u00e1 dispon\u00edvel para aloca\u00e7\u00e3o para os guests nesta zona. Caso uma NIC seja utilizada, estes IPs devem estar no mesmo CIDR que o CIDR do pod. +message.installWizard.tooltip.configureGuestTraffic.guestGateway=O gateway que os guests devem usar +message.installWizard.tooltip.configureGuestTraffic.guestNetmask=A m\u00e1scara de rede da subrede que os guests devem usar +message.installWizard.tooltip.configureGuestTraffic.guestStartIp=O range de endere\u00e7os IP que estar\u00e1 dispon\u00edvel para aloca\u00e7\u00e3o para os guests nesta zona. Caso uma NIC seja utilizada, estes IPs devem estar no mesmo CIDR que o CIDR do pod. +message.installWizard.tooltip.configureGuestTraffic.name=Um nome para sua rede +message.instanceWizard.noTemplates=Voc\u00ea n\u00e3o possui nenhum template dispon\u00edvel; por favor adicione um template compat\u00edvel e reinicie o wizard de inst\u00e2ncia. +message.ip.address.changed=Seu endere\u00e7o IP pode ter mudado; voc\u00ea gostaria de atualizar a listagem ? Note que neste caso o painel de detalhes ir\u00e1 fechar. +message.iso.desc=Imagem de disco contendo dados ou m\u00eddia de sistema operacional boot\u00e1vel +message.join.project=Voc\u00ea agora entrou em um projeto. Por favor troque para a vis\u00e3o de Projeto para visualizar o projeto. +message.launch.vm.on.private.network=Voc\u00ea deseja executar sua inst\u00e2ncia na sua pr\u00f3pria rede privada dedicada ? +message.launch.zone=A zona est\u00e1 pronta para ser executada; por favor continue para o pr\u00f3ximo passo. +message.lock.account=Confirme se voc\u00ea deseja bloquear esta conta. Bloqueando a conta, todos os Usu\u00e1rios desta conta n\u00e3o estar\u00e3o mais habilitados a gerenciar os recursos na nuvem. Os recursos existentes (Cloud Server) ainda poder\u00e3o ser acessados. +message.migrate.instance.confirm=Confirme o host que voc\u00ea deseja migrar o Cloud Server. +message.migrate.instance.to.host=Por favor confirme que voc\u00ea deseja migrar a inst\u00e2ncia para outro host. +message.migrate.instance.to.ps=Por favor confirme que voc\u00ea deseja migrar a inst\u00e2ncia para outro storage prim\u00e1rio. +message.migrate.router.confirm=Por favor confirme o host que voc\u00ea deseja migrar o roteador para\: +message.migrate.systemvm.confirm=Por favor confirme o host para o qual voc\u00ea deseja migrar a VM de sistema\: +message.migrate.volume=Por favor confirme que voc\u00ea deseja migrar o volume para outro storage prim\u00e1rio. +message.new.user=Especifique abaixo para adicionar novos usu\u00e1rios para a conta +message.no.network.support.configuration.not.true=Voc\u00ea n\u00e3o possui nenhuma zona com grupos de seguran\u00e7a habilitado. Assim sendo, n\u00e3o possui recursos adicionais de rede. Por favor continue para o passo 5. +message.no.network.support=O hypervisor escolhido, vSphere, n\u00e3o possui nenhum recurso de rede adicional. Por favor, v\u00e1 para o passo 5. +message.no.projects.adminOnly=Voc\u00ea n\u00e3o possui nenhum projeto.
    Por favor solicite ao seu administrador a cria\u00e7\u00e3o de um novo projeto. +message.no.projects=Voc\u00ea n\u00e3o possui nenhum projeto.
    Por favor crie um novo projeto \u00e0 partir da se\u00e7\u00e3o Projetos. message.number.clusters=

    Clusters

    message.number.hosts=

    Hosts

    message.number.pods=

    PODs

    -message.number.storage=

    Volumes do Storage Primário

    +message.number.storage=

    Volumes do Storage Prim\u00e1rio

    message.number.zones=

    Zonas

    -message.remove.vpn.access=Confirme se você deseja remover acesso VPN do seguinte usuário. -message.restart.mgmt.server=Reinicie o(s) servidor(es) de gerenciamento para que a nova configuração tenha efeito. -message.restart.mgmt.usage.server=Por favor reinicie seu servidor(es) de gerenciamento e seu servidor(es) de utilização para as mudanças entrarem em efeito. +message.pending.projects.1=Voc\u00ea possui convites de projetos pendentes\: +message.pending.projects.2=Para visualizar, por favor acesse a se\u00e7\u00e3o de projetos, depois selecione os convites no menu drop-down. +message.please.add.at.lease.one.traffic.range=Por favor adicione pelo menos um range de tr\u00e1fego. +message.please.proceed=Por favor continue para o pr\u00f3ximo passo. +message.please.select.a.configuration.for.your.zone=Por favor selecione uma configuracao para sua zona. +message.please.select.a.different.public.and.management.network.before.removing=Por favor selecione uma rede p\u00fablica e de gerenciamento diferente antes de remover +message.please.select.networks=Por favor selecione as redes para sua m\u00e1quina virtual. +message.please.wait.while.zone.is.being.created=Por favor, espere enquanto sua zona est\u00e1 sendo criada; isto pode demorar um pouco... +message.project.invite.sent=Convite enviado para o usu\u00e1rio; Eles ser\u00e3o adicionados ao projeto ap\u00f3s aceitarem o convite +message.remove.vpc=Favor confirmar que voc\u00ea deseja remover a VPC +message.remove.vpn.access=Confirme se voc\u00ea deseja remover acesso VPN do seguinte Usu\u00e1rio. +message.reset.password.warning.notPasswordEnabled=O template desta inst\u00e2ncia foi criado sem senha habilitada +message.reset.password.warning.notStopped=Sua inst\u00e2ncia deve estar parada antes de tentar trocar sua senha atual +message.reset.VPN.connection=Favor confirmar que voc\u00ea deseja resetar a conex\u00e3o VPN +message.restart.mgmt.server=Reinicie o(s) servidor(es) de gerenciamento para que a nova configura\u00c3\u00a7\u00c3\u00a3o tenha efeito. +message.restart.mgmt.usage.server=Por favor reinicie seu servidor(es) de gerenciamento e seu servidor(es) de utiliza\u00e7\u00e3o para as mudan\u00e7as entrarem em efeito. +message.restart.network=Por favor confirme que voc\ufffd deseja reiniciar a rede +message.restart.vpc=Favor confirmar que voc\u00ea deseja reiniciar a VPC message.security.group.usage=(Use Ctrl-clique para selecionar todos os Security Groups) -message.snapshot.schedule=Você pode configurar Snapshots recorrentes agendados selecionando as opções disponíveis abaixo +message.select.a.zone=A zone tipicamente corresponde a um \u00fanico datacenter. M\u00faltiplas zonas auxiliam a cloud a ser mais confi\u00e1vel provendo isolamento f\u00edsico e redund\u00e2ncia. +message.select.instance=Por favor selecione uma inst\u00e2ncia. +message.select.iso=Por favor selecione um ISO para sua nova inst\u00e2ncia virtual +message.select.item=Por favor selecione um item. +message.select.security.groups=Por favor selecione o(s) grupo(s) de seguran\u00e7a para sua nova VM +message.select.template=Por favor selecione um template para sua nova inst\u00e2ncia virtual. +message.setup.physical.network.during.zone.creation.basic=Quando adicionar uma zona b\u00e1sica, voc\u00ea pode configurar uma rede f\u00edsica, que corresponde a uma NIC no hypervisor. A rede carrega diversos tipos de tr\u00e1fego.

    Voc\u00ea pode adicionar e remover outros tipos de tr\u00e1fego na mesma interface de rede f\u00edsica. +message.setup.successful=Cloud configurada com sucesso\! +message.snapshot.schedule=Voc\u00ea pode configurar Snapshots recorrentes agendados selecionando as op\u00e7\u00f5es Dispon\u00edveis abaixo +message.specify.url=Por favor especifique a URL message.step.1.continue=Selecione o template ou ISO para continuar message.step.1.desc=Selecione o template para o novo Cloud Server. message.step.2.continue=Selecione o plano @@ -1490,30 +1377,59 @@ message.step.2.desc= message.step.3.continue=Seleciona a oferta de disco message.step.3.desc= message.step.4.continue=Selecione pelo menos uma rede para continuar -message.step.4.desc=Selecione a rede principal que seu Cloud Server será conectado. -message.update.os.preference=Escolha o SO de preferencia para este host. Todos Cloud Server com preferencias similares serão alocados neste host antes de tentar em outro. +message.step.4.desc=Selecione a rede principal que seu Cloud Server ser\u00e1 conectado. +message.suspend.project=Voc\u00ea tem certeza que deseja suspender este projeto ? +message.template.desc=Imagem de SO que pode ser utilizada para bootar VMs +message.tooltip.dns.2=Um servidor DNS secund\u00e1rio para ser utilizado pelas VMs nesta zona. Os endere\u00e7os IP p\u00fablicos nesta zona devem ter rota para este servidor. +message.tooltip.internal.dns.1=Nome de um servidor DNS que ser\u00e1 utilizado pelas VMs internas de sistema do CloudStack nesta zona. Os endere\u00e7os privados dos pods devem ter uma rota para este servidor. +message.tooltip.internal.dns.2=Nome de um servidor DNS que ser\u00e1 utilizado pelas VMs internas de sistema do CloudStack nesta zona. Os endere\u00e7os privados dos pods devem ter uma rota para este servidor. +message.tooltip.network.domain=Um sufixo DNS que ir\u00e1 criar um nome de dom\u00ednio customizado para a rede que \u00e9 acessada pelas guest VMs. +message.tooltip.pod.name=Um nome para este pod. +message.tooltip.reserved.system.gateway=O gateway para os hosts neste pod. +message.tooltip.reserved.system.netmask=O prefixo de rede que define a subrede deste pod. Utilize a nota\u00e7\u00e3o CIDR. +message.tooltip.zone.name=Um nome para a zona. +message.update.os.preference=Escolha o SO de preferencia para este host. Todos Cloud Server com preferencias similares ser\u00e3o alocados neste host antes de tentar em outro. +message.update.resource.count=Por favor confirme que voc\u00ea quer atualizar a contagem de recursos para esta conta. message.update.ssl=Envie o novo certificado SSL X.509 para ser atualizado em cada console proxy\: -message.virtual.network.desc=Rede virtual dedicado para sua conta. O domínio de broadcast está na VLAN e todo acesso a internet é roteado através do virtual router. -message.volume.create.template.confirm=Confirme se você deseja criar um template a partir deste disco. A criação do template pode levar alguns minutos ou mais dependendo do tamanho do disco. +message.validate.instance.name=Nomes de inst\u00e2ncias n\u00e3o podem ter mais de 63 caracteres. Somente letras ASCII a~z, A~Z, d\u00edgitos 0~9 e h\u00edfen s\u00e3o permitidos. Deve come\u00e7ar com uma letra e terminar com uma letra ou d\u00edgito. +message.virtual.network.desc=Rede virtual dedicado para sua conta. O Dom\u00ednio de broadcast Est\u00e1 na VLAN e todo acesso a internet \u00e9 roteado atrav\u00e9s do virtual router. +message.vm.create.template.confirm=Criar Template reiniciar\u00e1 a VM automaticamente. +message.vm.review.launch=Por favor revise a informa\u00e7\u00e3o abaixo e confirme que sua inst\u00e2ncia virtual est\u00e1 correta antes de executa-la. +message.volume.create.template.confirm=Confirme se voc\u00ea deseja criar um template a partir deste disco. A cria\u00e7\u00e3o do template pode levar alguns minutos ou mais dependendo do tamanho do disco. +message.you.must.have.at.least.one.physical.network=Voc\u00ea deve ter pelo menos uma rede f\u00edsica +message.Zone.creation.complete=Cria\u00e7\u00e3o de zona completa +message.zone.creation.complete.would.you.like.to.enable.this.zone=Cria\u00e7\u00e3o de zona completa. Voc\u00ea gostaria de habilitar esta zona? +message.zone.no.network.selection=A zona que voc\u00ea selecionou n\u00e3o possui nenhuma rede para ser escolhida. message.zone.step.1.desc=Seleciona o modelo de rede para a zona. -message.zone.step.2.desc=Entre a informação a seguir para adicionar uma nova zona -message.zone.step.3.desc=Entre a informação a seguir para adicionar um novo pod -message.apply.snapshot.policy=Você atualizou com sucesso sua política de Snapshot. -message.disable.snapshot.policy=Você desativou com sucesso sua política de Snapshot. -message.action.change.service.warning.for.instance=Para troca de plano é necessário parar o Cloud Server. -message.action.change.service.warning.for.router=O roteador precisa ser desligado antes de trocar o plano/tamanho. -message.action.reset.password.warning=Para recuperar a senha é necessário parar o Cloud Server. -message.action.reset.password.off=Seu Cloud Server não suporta esta funcionalidade. - -#Errors -error.login=Usuário ou senha inválido. -error.menu.select=Não foi possível realizar a ação pois nenhum item foi selecionado. -error.mgmt.server.inaccessible=O servidor de gerenciamento está inacessível. Tente novamente mais tarde. -error.session.expired=Sua sessão expirou. -error.unresolved.internet.name=Impossível resolver DNS -#resizeVolumes -label.resize.new.size=New Size(GB) -label.action.resize.volume=Resize Volume -label.action.resize.volume.processing=Resizing Volume.... -label.resize.new.offering.id=New Offering -label.resize.shrink.ok=Shrink OK +message.zone.step.2.desc=Entre a informa\u00e7\u00e3o a seguir para adicionar uma nova zona +message.zone.step.3.desc=Entre a informa\u00e7\u00e3o a seguir para adicionar um novo pod +message.zoneWizard.enable.local.storage=ALERTA\: se voc\u00ea habilitar storage local para esta zona, voc\u00ea deve fazer o seguinte, dependendo se voc\u00ea quiser que suas m\u00e1quinas virtuais de sistema inicializem\:

    1. Se m\u00e1quinas virtuais de sistema precisam ser iniciadas em storage prim\u00e1ria, storage prim\u00e1ria precisa ser adicionada \u00e0 zona ap\u00f3s a cria\u00e7\u00e3o. Voc\u00ea tamb\u00e9m deve ativar a zona em um estado desabilitado.

    2. Se m\u00e1quinas virtuais de sistema precisam ser iniciadas em storage local, system.vm.use.local.storage precisa ser estabelecida como verdadeira antes de voc\u00ea habilitar a zona.


    Voc\u00ea quer continuar? +mode=Modo +network.rate=Taxa de Transfer\u00eancia +notification.reboot.instance=Reiniciar inst\u00e2ncia +notification.start.instance=Iniciar inst\u00e3ncia +notification.stop.instance=Parar inst\u00e2ncia +side.by.side=Lado a Lado +state.Accepted=Aceito +state.Active=Ativo +state.Allocated=Alocado +state.Allocating=Alocando +state.Completed=Completo +state.Creating=Criando +state.Declined=Recusado +state.Destroyed=Destru\u00eddo +state.Disabled=Desativado +state.enabled=Habilitado +state.Enabled=Habilitado +state.Error=Erro +state.Migrating=Migrando +state.Pending=Pendente +state.ready=Pronto +state.Ready=Pronto +state.Running=Executando +state.Starting=Iniciando +state.Stopped=Parado +state.Stopping=Parando +state.Suspended=Suspendido +ui.listView.filters.all=Todos +ui.listView.filters.mine=Meus diff --git a/client/WEB-INF/classes/resources/messages_ru_RU.properties b/client/WEB-INF/classes/resources/messages_ru_RU.properties index c6631192085..b0ffe406ba8 100644 --- a/client/WEB-INF/classes/resources/messages_ru_RU.properties +++ b/client/WEB-INF/classes/resources/messages_ru_RU.properties @@ -1,1521 +1,1371 @@ -# 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. - - -#new labels (begin) ********************************************************************************************** -# label.isolation.uri=Isolation URI -# label.broadcast.uri=Broadcast URI -#new labels (end) ************************************************************************************************ - - -#modified labels (begin) ***************************************************************************************** -# message.zoneWizard.enable.local.storage=WARNING\: If you enable local storage for this zone, you must do the following, depending on where you would like your system VMs to launch\:

    1. If system VMs need to be launched in primary storage, primary storage needs to be added to the zone after creation. You must also start the zone in a disabled state.

    2. If system VMs need to be launched in local storage, system.vm.use.local.storage needs to be set to true before you enable the zone.


    Would you like to continue? -#modified labels (end) ******************************************************************************************* - -# label.configure.network.ACLs=Configure Network ACLs -# label.network.ACLs=Network ACLs -# label.add.network.ACL=Add network ACL -# label.private.Gateway=Private Gateway -# label.VPC.router.details=VPC router details -# label.VMs.in.tier=VMs in tier -# label.local.storage.enabled=Local storage enabled -# label.tier.details=Tier details -# label.edit.tags=Edit tags -label.action.enable.physical.network=Включить физичеÑкую Ñеть -label.action.disable.physical.network=Отключить физичеÑкую Ñеть -message.action.enable.physical.network=Подтвердите, что вы дейÑтвительно хотите включить Ñту физичеÑкую Ñеть. -message.action.disable.physical.network=Подтвердите, что вы дейÑтвительно хотите выключить Ñту физичеÑкую Ñеть. - -# label.select.tier=Select Tier -# label.add.ACL=Add ACL -# label.remove.ACL=Remove ACL -# label.tier=Tier -# label.network.ACL=Network ACL -# label.network.ACL.total=Network ACL Total -# label.add.new.gateway=Add new gateway -# message.add.new.gateway.to.vpc=Please specify the information to add a new gateway to this VPC. -# label.delete.gateway=delete gateway -# message.delete.gateway=Please confirm you want to delete the gateway -# label.CIDR.of.destination.network=CIDR of destination network -# label.add.route=Add route -# label.add.static.route=Add static route -# label.remove.static.route=Remove static route -# label.site.to.site.VPN=site-to-site VPN -# label.add.VPN.gateway=Add VPN Gateway -# message.add.VPN.gateway=Please confirm that you want to add a VPN Gateway -# label.VPN.gateway=VPN Gateway -# label.delete.VPN.gateway=delete VPN Gateway -# message.delete.VPN.gateway=Please confirm that you want to delete this VPN Gateway -# label.VPN.connection=VPN Connection -# label.IPsec.preshared.key=IPsec Preshared-Key -# label.IKE.policy=IKE policy -# label.ESP.policy=ESP policy -# label.create.VPN.connection=Create VPN Connection -# label.VPN.customer.gateway=VPN Customer Gateway -# label.CIDR.list=CIDR list -# label.IKE.lifetime=IKE Lifetime (second) -# label.ESP.lifetime=ESP Lifetime(second) -# label.dead.peer.detection=Dead Peer Detection -# label.reset.VPN.connection=Reset VPN connection -# message.reset.VPN.connection=Please confirm that you want to reset VPN connection -# label.delete.VPN.connection=delete VPN connection -# message.delete.VPN.connection=Please confirm that you want to delete VPN connection -# label.add.new.tier=Add new tier -# label.add.VM.to.tier=Add VM to tier -# label.remove.tier=Remove tier - -# label.local.storage.enabled=Local storage enabled -# label.associated.network=Associated Network -# label.add.port.forwarding.rule=Add port forwarding rule -# label.dns=DNS - -# label.vpc=VPC -# label.vpc.id=VPC ID -# label.tier=Tier -# label.add.vpc=Add VPC -# label.super.cidr.for.guest.networks=Super CIDR for Guest Networks -# label.DNS.domain.for.guest.networks=DNS domain for Guest Networks -# label.configure.vpc=Configure VPC -# label.edit.vpc=Edit VPC -# label.restart.vpc=restart VPC -# message.restart.vpc=Please confirm that you want to restart the VPC -# label.remove.vpc=remove VPC -# message.remove.vpc=Please confirm that you want to remove the VPC -# label.vpn.customer.gateway=VPN Customer Gateway -# label.add.vpn.customer.gateway=Add VPN Customer Gateway -# label.IKE.encryption=IKE Encryption -# label.IKE.hash=IKE Hash -# label.IKE.DH=IKE DH -# label.ESP.encryption=ESP Encryption -# label.ESP.hash=ESP Hash -# label.perfect.forward.secrecy=Perfect Forward Secrecy -# label.IKE.lifetime=IKE Lifetime (second) -# label.ESP.lifetime=ESP Lifetime(second) -# label.dead.peer.detection=Dead Peer Detection -# label.delete.VPN.customer.gateway=delete VPN Customer Gateway -# message.delete.VPN.customer.gateway=Please confirm that you want to delete this VPN Customer Gateway - -label.network.domain.text=ТекÑÑ‚ домена Ñети -label.memory.mb=ПамÑть (в МБ) -label.cpu.mhz=CPU (в Мгц) - -message.action.remove.host=Удаление поÑледнего/единÑтвенного Ñервера в клаÑтере и Ð¿Ð¾Ð²Ñ‚Ð¾Ñ€Ð½Ð°Ñ ÐµÐ³Ð¾ уÑтановка приведет уничтожению рабочего окружениÑ/базы данных на Ñервере и Ñделае гоÑтевые машины непригодными к иÑпользованию. - -message.action.reboot.router=Подтвердите, что вы дейÑтвительно хотите перезагрузить Ñтот роутер. -message.action.stop.router=Подтвердите, что вы дейÑтвительно хотите оÑтановить Ñтот роутер. -message.restart.network=Подтвердите, что вы дейÑтвительно хотите перезапуÑтить Ñеть. - - -label.ipaddress=IP адреÑÑа -label.vcdcname=Ð˜Ð¼Ñ vCenter DC -label.vcipaddress=vCenter IP ÐдреÑÑ -label.vsmctrlvlanid=Управление VLAN ID -label.vsmpktvlanid=Пакет VLAN ID -label.vsmstoragevlanid=Хранение VLAN ID -label.nexusVswitch=Nexus Vswitch -label.action.delete.nexusVswitch=Удалить NexusVswitch -label.action.enable.nexusVswitch=Включить NexusVswitch -label.action.disable.nexusVswitch=Отключить NexusVswitch -label.action.list.nexusVswitch=ЛиÑÑ‚ NexusVswitch -message.action.delete.nexusVswitch=ПожалуйÑта, подтвердите, что вы хотите удалить Ñто nexusVswitch. -message.action.enable.nexusVswitch=ПожалуйÑта, подтвердите, что вы хотите включить Ñто nexusVswitch. -message.action.disable.nexusVswitch=ПожалуйÑта, подтвердите, что вы хотите отключить Ñту nexusVswitch. -message.specify.url=ПожалуйÑта, укажите URL -label.select.instance.to.attach.volume.to=Выбирите Ñервер Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¾Ð±ÑŒÐµÐ¼Ð° -label.upload=Загрузить -label.upload.volume=Добавить объем -label.virtual.routers=Виртуальный роутер -label.primary.storage.count=Первичный архив Ð´Ð»Ñ Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ -label.secondary.storage.count=Вторичный архив Ð´Ð»Ñ Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ -label.number.of.system.vms=КоличеÑтво ÑиÑтемы виртуальных машин -label.number.of.virtual.routers=КоличеÑтво виртуальных маршрутизаторов -label.action.register.iso=РегиÑÑ‚Ñ€Ð°Ñ†Ð¸Ñ ISO -label.isolation.method=Метод изолÑции -label.action.register.template=РегиÑÑ‚Ñ€Ð°Ñ†Ð¸Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ð° -label.checksum=Проверить MD5 Ñумму -label.vpn=VPN -label.vlan=VLAN - - -label.management.ips=Панель ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ IP адреÑÑами -label.devices=УÑтройÑтво -label.rules=Правила -label.traffic.label=Трафик -label.vm.state=Ð¡Ñ‚Ð°Ñ‚ÑƒÑ Ñервера -message.setup.physical.network.during.zone.creation.basic=При Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð² оÑновную зону, вы можите Ñоздать одну физичеÑкую Ñеть, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ ÑоотвеÑтвует NIC на гипервизор. Сеть оÑущеÑтвлÑет неÑколько видов трафика.

    Ð’Ñ‹ можете также перетаÑкивать drag and drop другие типы трафика на физичеÑкие Ñети. -label.domain.router=Машрутизатор -label.console.proxy=ПрокÑи -label.secondary.storage.vm=Вторичный файловый Ñервер -label.add.netScaler.device=Добавить Netscaler уÑтройÑтво -label.add.F5.device=Добавить F5 уÑтройво -label.add.SRX.device=Добавить SRX уÑтройÑтво -label.account.and.security.group=Ðккаунт, группы безопаÑноÑти -label.fetch.latest=Выборка поÑледних -label.system.offering=СиÑтема Ñ€Ð°Ð·Ð¼ÐµÑ‰ÐµÐ½Ð¸Ñ -message.validate.instance.name=Ð˜Ð¼Ñ Ñервера не может быть длинее 63 Ñимвола. Только ASCII, буквы a~z, A~Z, цыфры 0~9, Ð´ÐµÑ„Ð¸Ñ Ð½Ðµ допуÑкаетÑÑ. Должна начинатьÑÑ Ñ Ð±ÑƒÐºÐ²Ñ‹ и заканчиватьÑÑ Ð±ÑƒÐºÐ²Ð¾Ð¹ или цифрой. - - -label.isolated.networks=Изолированные Ñети -label.latest.events=ПоÑледнии ÑÐ¾Ð±Ñ‹Ñ‚Ð¸Ñ -state.Enabled=Включено -label.system.wide.capacity=ОбщеÑиÑтемного потенциала -label.network.service.providers=ПоÑтавщики Ñетевых Ñлужб -message.launch.zone=Зона готова к запуÑку, пожалуйÑта, перейдите к Ñледующему шагу. -error.unable.to.reach.management.server=Ðе удаетÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡Ð¸Ñ‚ÑŒÑÑ Ðº Ñерверу ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ -label.internal.name=Внутреннее Ð¸Ð¼Ñ -message.configure.all.traffic.types=У Ð²Ð°Ñ ÐµÑть неÑколько физичеÑких Ñетей, пожалуйÑта, наÑтроить метки Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ типа трафика, нажав на кнопку Изменить. -message.edit.traffic.type=ПожалуйÑта, укажите трафик метки вы хотите, ÑвÑзанных Ñ Ñтим типом трафика. -label.edit.traffic.type=Изменить тип трафика -label.label=Метка -label.max.networks=МакÑимум Ñетей -error.invalid.username.password=Ðеправильній логин или пароль -message.enabling.security.group.provider=Включение поÑтавщика заÑищеной Ñети -message.adding.Netscaler.provider=Добавить Netscaler -message.creating.guest.network=Создать гоÑтевую Ñеть -label.action.delete.physical.network=Удаление физичеÑкой Ñети -message.action.delete.physical.network=ПожалуйÑта, подтвердите, что вы хотите удалить Ñтот физичеÑкую Ñеть -message.installWizard.copy.whatIsAHost=Узел - Ñто отдельный компьютер. Узлы предоÑтавлÑÑŽÑ‚ вычиÑлительные реÑурÑÑ‹ Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑка гоÑтевых виртуальных машин. Каждый узел Ñодержит гипервизор Ð´Ð»Ñ ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð’Ðœ (кроме узлов BareMetal, они ÑвлÑÑŽÑ‚ÑÑ Ð¸Ñключением из правил и раÑÑматриваетÑÑ Ð² раÑширенном руководÑтве по уÑтановке). Ðапример, Ñто Linux-Ñервер Ñ KVM, Ñервер Citrix XenServer или Ñервер ESXI. При проÑтой уÑтановке вы можете иÑпользовать один узел Ñ XenServer.

    Узел - Ñто Ð½Ð°Ð¸Ð¼ÐµÐ½ÑŒÑˆÐ°Ñ ÐµÐ´Ð¸Ð½Ð¸Ñ†Ð° в платформе CloudStack&\#8482;, далее узлы раÑпологаютÑÑ Ð² клаÑтерах, клаÑтеры - в Ñтендах, Ñтенды - в зонах. - - -label.add.compute.offering=Добавить вычиÑÐ»ÐµÐ½Ð¸Ñ Ð¿Ñ€ÐµÐ´Ð»Ð¾Ð¶ÐµÐ½Ð¸Ðµ -label.compute.offering=ВычиÑлить предложение -label.compute.offerings=ВычиÑлить предложений -label.select.offering=Выберите предложение -label.menu.infrastructure=ИнфорÑтруктура -label.sticky.tablesize=Размер таблицы -label.sticky.expire=ИÑтекает -label.sticky.cookie-name=Cookie Ð¸Ð¼Ñ -label.sticky.mode=Режим -label.sticky.length=Длина -label.sticky.holdtime=Ð²Ñ€ÐµÐ¼Ñ ÑƒÐ´ÐµÑ€Ð¶Ð°Ð½Ð¸Ñ -label.sticky.request-learn=ТребуетÑÑ Ð¸Ð·ÑƒÑ‡ÐµÐ½Ð¸Ðµ. -label.sticky.prefix=ÐŸÑ€ÐµÑ„Ð¸ÐºÑ -label.sticky.nocache=Ðет кÑша -label.sticky.indirect=КоÑвенный -label.sticky.postonly=Сообщение только -label.sticky.domain=Домен -state.Allocating=Выделение -state.Migrating=Мигрирующий -error.please.specify.physical.network.tags=Сеть предложений не доÑтупна, пока вы указать теги Ð´Ð»Ñ Ñтого физичеÑкой Ñети. - - -state.Stopping=ОÑтановить -message.add.load.balancer.under.ip=Правило баланÑировки нагрузки был добавлен в IP\: -message.select.instance=ПожалуйÑта, выберите Ñервер. -label.select=Выбрать -label.select.vm.for.static.nat=Выбор VM Ð´Ð»Ñ NAT -label.select.instance=Выбирите Ñервер -label.nat.port.range=NAT диапазон портов -label.static.nat.vm.details=СтатиÑтика NAT виртуальных машин -label.edit.lb.rule=Редактировать LB правила -message.migrate.instance.to.host=Подтвердите, что вы дейÑтвительно хотите перенеÑти машину на другой узел. -label.migrate.instance.to.host=ÐŸÐµÑ€ÐµÐ½Ð¾Ñ Ð¼Ð°ÑˆÐ¸Ð½Ñ‹ на другой узел -message.migrate.instance.to.ps=Подтвердите, что вы дейÑтвительно хотите перенеÑти машину на другое оÑновное хранилище. -label.migrate.instance.to.ps=ÐŸÐµÑ€ÐµÐ½Ð¾Ñ Ð¼Ð°ÑˆÐ¸Ð½Ñ‹ на другое оÑновное хранилище -label.corrections.saved=Ð˜Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñохранены -message.installWizard.copy.whatIsSecondaryStorage=Дополнительное хранилище привÑзано к зоне и Ñодержит Ñледующее\:
    • Шаблоны - образы ОС, которые можно иÑпользовать Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ ВМ и Ñодержащие дополнительную информацию, такую как уÑтановленные приложениÑ.
    • Образы ISO - Ñто загрузочные или незагрузочные образы ОС
    • Снимки диÑковых томов - Ñохраненные копии данных ВМ, которых можно иÑпользовать Ð´Ð»Ñ Ð²Ð¾ÑÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ… или Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ шаблона
    -message.installWizard.copy.whatIsPrimaryStorage=CloudStack&\#8482; - Ñто Ð¾Ð±Ð»Ð°Ñ‡Ð½Ð°Ñ Ð¿Ð»Ð°Ñ‚Ñ„Ð¾Ñ€Ð¼Ð°, иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑŽÑ‰Ð°Ñ Ð´Ð²Ð° типа хранилища\: оÑновное и дополнительное. Ð’ качеÑтве хранилищ можно иÑпользовать iSCSI или NFS-Ñервер, а также локальный диÑк.

    ОÑновное хранилище привÑзано к клаÑтеру и Ñодержит диÑковые тома каждой ВМ, запущенной в узлах Ñтого клаÑтера. Как правило, оÑновное хранилище размещаетÑÑ Ð² Ñамих узлах. -message.installWizard.copy.whatIsACluster=КлаÑтер предоÑтавлÑет группы узлов. Узлы в клаÑтере имеют одинаковое оборудование, запущены в одинаковом гипервизере, находÑÑ‚ÑÑ Ð² одной подÑети и имеют доÑтуп к одному и тому же общему хранилищу. Виртуальные машины могут быть перенеÑены "вживую" Ñ Ð¾Ð´Ð½Ð¾Ð³Ð¾ узла на другой в пределах клаÑтера, без оÑтановки Ñлужб пользователем. КлаÑтер - Ñ‚Ñ€ÐµÑ‚ÑŒÑ Ð¿Ð¾ размерноÑти единица в платформе CloudStack&\#8482;. КлаÑтеры раÑпоогаютÑÑ Ð² Ñтендах, а Ñтенды - в зонах.

    CloudStack&\#8482; разрешает иÑпользовать неÑколько клаÑтеров, но при проÑтой уÑтановке Ñта возможноÑть отÑутÑтвует. -message.installWizard.copy.whatIsAPod=Стенд, как правило, предоÑтавлÑет одну Ñтойку Ñ Ð¼Ð°ÑˆÐ¸Ð½Ð°Ð¼Ð¸. Узлы в одном Ñтенде раÑположены в одной подÑети.

    Стенд - Ð²Ñ‚Ð¾Ñ€Ð°Ñ Ð¿Ð¾ размерноÑти единица в платформе CloudStack&\#8482;. Стенды раÑпологаютÑÑ Ð² зонах. ÐšÐ°Ð¶Ð´Ð°Ñ Ð·Ð¾Ð½Ð° может Ñодержать неÑколько Ñтендов, но при проÑтой уÑтановке в зоне можно Ñоздать лишь один Ñтенд. -message.installWizard.copy.whatIsAZone=Зона - Ñто наиболее ÐºÑ€ÑƒÐ¿Ð½Ð°Ñ Ð¾Ñ€Ð³Ð°Ð½Ð¸Ð·Ð°Ñ†Ð¸Ð¾Ð½Ð½Ð°Ñ ÐµÐ´Ð¸Ð½Ð¸Ñ†Ð° в платформе CloudStack&\#8482;. Зона обычно ÑоответÑтвует единичному ЦОД, Ñ…Ð¾Ñ‚Ñ Ð¸Ð¼ÐµÐµÑ‚ÑÑ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾Ñть иÑпользовать неÑколько зон в пределах одного ЦОД. ОÑновным преимущеÑтвом поÑÑ‚Ñ€Ð¾ÐµÐ½Ð¸Ñ Ð¸Ð½Ñ„Ñ€Ð°Ñтруктуры Ñ Ð¸Ñпользование зон ÑвлÑетÑÑ Ð¾Ð±ÐµÑпечение Ð¸Ð·Ð¾Ð»Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¸ избыточноÑти. Ðапример, ÐºÐ°Ð¶Ð´Ð°Ñ Ð·Ð¾Ð½Ð° может иметь Ñвой блок Ð¿Ð¸Ñ‚Ð°Ð½Ð¸Ñ Ð¸ Ñеть, а Ñами зоны могут широко раÑположены географичеÑки. -message.installWizard.copy.whatIsCloudStack=CloudStack&\#8482 - Ñто Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð½Ð°Ñ Ð¿Ð»Ð°Ñ„Ñ‚Ð¾Ñ€Ð¼Ð° Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¿ÑƒÐ±Ð»Ð¸Ñ‡Ð½Ñ‹Ñ…, чаÑтных и гибридных облаков по Ñхеме «ИнфраÑтруктура как ÑервиÑ» (IaaS). CloudStack&\#8482 управлÑет Ñетью, хранилищем и вычиÑлительными узлами, входÑщие в облачную инфраÑтруктуру. Главным образом, CloudStack&\#8482 иÑпользуетÑÑ Ð´Ð»Ñ Ñ€Ð°Ð·Ð²ÐµÑ€Ñ‚Ñ‹Ð²Ð°Ð½Ð¸Ñ, ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¸ наÑтройкой Ñложных облачных решений.

    CloudStack&\#8482 реализует предоÑтавление как уÑлуги целого центра обработки данных Ñ Ð½ÐµÐ¾Ð±Ñ…Ð¾Ð´Ð¸Ð¼Ñ‹Ð¼Ð¸ компонентами Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñложных инфраÑтруктур на оÑнове облака. Мы можете выбрать между Ñвободной и БезнеÑ-верÑиÑми, которые почти ничем не отличаютÑÑ. -message.installWizard.tooltip.addSecondaryStorage.path=Путь ÑкÑпорта, раÑположенный на вышеуказанном Ñервере. -message.installWizard.tooltip.addSecondaryStorage.nfsServer=IP-Ð°Ð´Ñ€ÐµÑ Ñервера NFS, где находитÑÑ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð¾Ðµ хранилище -message.installWizard.tooltip.addPrimaryStorage.path=(Ð´Ð»Ñ NFS) Ð’ NFS Ñто путь Ñкпорта Ñервера. Путь (Ð´Ð»Ñ ÐžÑ‚ÐºÑ€Ñ‹Ñ‚Ð¾Ð¹Ð¢Ð¾Ñ‡ÐºÐ¸Ð”Ð¾Ñтупа). Ð’ KVM Ñто путь Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ узла, который указывает раÑположение оÑновного хранилища. Ðапример, "/mnt/primary". -message.installWizard.tooltip.addPrimaryStorage.server=(Ð´Ð»Ñ NFS, iSCSI или PreSetup) IP-Ð°Ð´Ñ€ÐµÑ Ð¸Ð»Ð¸ Ð¸Ð¼Ñ DNS уÑтройÑтва хранилища. -message.installWizard.tooltip.addPrimaryStorage.name=Ð˜Ð¼Ñ ÑƒÑтройÑтва хранилища. -message.installWizard.tooltip.addHost.password=Этот пароль Ð´Ð»Ñ Ð²Ñ‹ÑˆÐµÑƒÐºÐ°Ð·Ð°Ð½Ð½Ð¾Ð³Ð¾ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ (Ñ Ð²Ð°ÑˆÐµÐ³Ð¾ XenServer) -message.installWizard.tooltip.addHost.username=Обычно root. -message.installWizard.tooltip.addHost.hostname=Ð˜Ð¼Ñ DNS или IP-Ð°Ð´Ñ€ÐµÑ ÑƒÐ·Ð»Ð°. -message.installWizard.tooltip.addCluster.name=Ð˜Ð¼Ñ ÐºÐ»Ð°Ñтера. Ð’Ñ‹ можете Ñами выбрать имÑ, не иÑпользуемый Cloudstack. -message.installWizard.tooltip.addPod.reservedSystemEndIp=Это диапазон IP чаÑтной Ñети, который иÑпользуетÑÑ CloudStack Ð´Ð»Ñ Ð’Ðœ дополнительного хранилища и конÑольного прокÑи. Эти адреÑа получаютÑÑ Ð¸Ð· Ñети вычиÑлительных Ñерверов. -message.installWizard.tooltip.addPod.reservedSystemStartIp=Это диапазон IP чаÑтной Ñети, который иÑпользуетÑÑ CloudStack Ð´Ð»Ñ Ð’Ðœ дополнительного хранилища и конÑольного прокÑи. Эти адреÑа получаютÑÑ Ð¸Ð· Ñети вычиÑлительных Ñерверов. -message.installWizard.tooltip.addPod.reservedSystemNetmask=Ð¡ÐµÑ‚ÐµÐ²Ð°Ñ Ð¼Ð°Ñка подÑети Ð´Ð»Ñ Ð³Ð¾Ñтей. -message.installWizard.tooltip.addPod.reservedSystemGateway=Шлюз Ð´Ð»Ñ ÑƒÐ·Ð»Ð¾Ð² Ñтого Ñтенда. -message.installWizard.tooltip.addPod.name=Ð˜Ð¼Ñ Ñтенда -message.installWizard.tooltip.configureGuestTraffic.guestEndIp=Диапазон IP-адреÑов, которые будут доÑтупны Ð´Ð»Ñ Ð³Ð¾Ñтей Ñтой зоны. При иÑпользовании одного Ñетевого уÑтройÑтва (NIC) Ñти адреÑа должны быть в подÑети (CIDR) Ñтенда. -message.installWizard.tooltip.configureGuestTraffic.guestStartIp=Диапазон IP-адреÑов, которые будут доÑтупны Ð´Ð»Ñ Ð³Ð¾Ñтей Ñтой зоны. При иÑпользовании одного Ñетевого уÑтройÑтва (NIC) Ñти адреÑа должны быть в подÑети (CIDR) Ñтенда. -message.installWizard.tooltip.configureGuestTraffic.guestNetmask=Ð¡ÐµÑ‚ÐµÐ²Ð°Ñ Ð¼Ð°Ñка подÑети Ð´Ð»Ñ Ð³Ð¾Ñтей. -message.installWizard.tooltip.configureGuestTraffic.guestGateway=Шлюз Ð´Ð»Ñ Ð³Ð¾ÑÑ‚Ñми -message.installWizard.tooltip.configureGuestTraffic.description=ОпиÑание Ñтой Ñети -message.installWizard.tooltip.configureGuestTraffic.name=Ð˜Ð¼Ñ Ñтой Ñети -message.installWizard.tooltip.addZone.internaldns2=Это cерверы DNS Ð´Ð»Ñ ÑиÑтемных ВМ Ñтой зоны. Эти Ñерверы будут доÑтупны через чаÑтный Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÑиÑтемной ВМ. ЧаÑтный IP-адреÑ, предоÑтавленный в Ñтенде, должен иметь маршрут к Ñтим Ñерверам DNS. -message.installWizard.tooltip.addZone.internaldns1=Это cерверы DNS Ð´Ð»Ñ ÑиÑтемных ВМ Ñтой зоны. Эти Ñерверы будут доÑтупны через чаÑтный Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ ÑиÑтемной ВМ. ЧаÑтный IP-адреÑ, предоÑтавленный в Ñтенде, должен иметь маршрут к Ñтим Ñерверам DNS. -message.installWizard.tooltip.addZone.dns2=Это cерверы DNS Ð´Ð»Ñ Ð³Ð¾Ñтевых ВМ Ñтой зоны. Эти Ñерверы будут доÑтупны через публичный интерфейÑ, который вы добавите позже. Публичные IP-адреÑа, предоÑтавленные в зоне, должны иметь маршрут к Ñтим Ñерверам DNS. -message.installWizard.tooltip.addZone.name=Ð˜Ð¼Ñ Ð·Ð¾Ð½Ñ‹ -message.installWizard.tooltip.addZone.dns1=Это cерверы DNS Ð´Ð»Ñ Ð³Ð¾Ñтевых ВМ Ñтой зоны. Эти Ñерверы будут доÑтупны через публичный интерфейÑ, который вы добавите позже. Публичные IP-адреÑа, предоÑтавленные в зоне, должны иметь маршрут к Ñтим Ñерверам DNS. -message.setup.successful=ÐаÑтройка облака завершена\! -label.may.continue=Ð’Ñ‹ можете продолжить. -error.installWizard.message=Что-то не так. ВернитеÑÑŒ назад и иÑправьте ошибки. -message.installWizard.now.building=Ваше облако ÑоздаётÑÑ... -message.installWizard.click.retry=Кликните, чтобы повторить запуÑк. -label.launch=ЗапуÑк -label.installWizard.click.launch=Кликните на кнопку запуÑка -label.congratulations=ПоздравлÑем\! -label.installWizard.addSecondaryStorageIntro.subtitle=Что такое "Дополнительное хранилище"? -label.installWizard.addSecondaryStorageIntro.title=Давайте добавим допольнительное хранилище. -label.installWizard.addPrimaryStorageIntro.subtitle=Что такое "ОÑновное хранилище"? -label.installWizard.addPrimaryStorageIntro.title=Давайте добавим оÑновное хранилище -label.installWizard.addHostIntro.subtitle=Что такое "Узел"? -label.installWizard.addHostIntro.title=Давайте добавим узел -label.installWizard.addClusterIntro.subtitle=Что такое "КлаÑтер"? -label.installWizard.addClusterIntro.title=Давайте добавим клаÑтер -label.installWizard.addPodIntro.subtitle=Что такое "Стенд"? -label.installWizard.addPodIntro.title=Давайте добавим Ñтенд -label.installWizard.addZone.title=Добавить зону -label.installWizard.addZoneIntro.subtitle=Что такое "Зона"? -label.installWizard.addZoneIntro.title=Давайте добавим зону -error.password.not.match=Пароли не Ñовпадают -label.confirm.password=Подтвердите пароль -message.change.password=Измените ваш пароль. -label.save.and.continue=Сохранить и продолжить -label.skip.guide=Я уже великий маÑтер CloudStack, пропуÑтить Ñто руководÑтво -label.continue.basic.install=Продолжить проÑтую уÑтановку -label.introduction.to.cloudstack=Введение в CloudStack -label.what.is.cloudstack=Что такое CloudStack? -label.hints=ПодÑказки -label.installWizard.subtitle=Это руководÑтво наÑтроит ваш CloudStack. -label.continue=Продолжить -label.installWizard.title=ЗдравÑтвуйте и добро пожаловать в CloudStack\! -label.agree=СоглаÑен -label.manage.resources=Управление реÑурÑами -label.port.forwarding.policies=Политики проброÑа портов -label.load.balancing.policies=Политики баланÑировки нагрузки -label.networking.and.security=Сеть и безопаÑноÑть -label.bandwidth=ПропуÑÐºÐ½Ð°Ñ ÑпоÑобноÑть -label.virtual.machines=Виртуальные машины -label.compute.and.storage=ВычиÑÐ»ÐµÐ½Ð¸Ñ Ð¸ хранилище -label.task.completed=Задача выполнена -label.update.project.resources=Обновить реÑурÑÑ‹ проекта -label.remove.project.account=Удалить учетную запиÑÑŒ проекта -label.item.listing=СпиÑок Ñлементов -message.select.item=Выберите Ñлемент -label.removing=Удаление -label.invite=ПриглаÑить -label.add.by=Добавить -label.max.vms=МакÑ. количеÑтво пользовательÑких ВМ -label.max.public.ips=МакÑ. публичных IP -label.max.volumes=МакÑ. томов -label.max.snapshots=МакÑ. Ñнимков -label.max.templates=МакÑ. шаблонов -# label.max.vpcs=Max. VPCs -label.project.dashboard=Панель проекта -label.remind.later=Предупредить позже -label.invited.accounts=Приглашённые учетные запиÑи -label.invite.to=ПриглаÑить -label.add.accounts.to=Добавить учётные запиÑи -label.add.accounts=Добавить аккаунты -label.project.name=Ð˜Ð¼Ñ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ð° -label.create.project=Создать проект -label.networks=Сети -label.launch.vm=ЗапуÑк ВМ -label.new.vm=ÐÐ¾Ð²Ð°Ñ Ð’Ðœ -label.previous=Предыдущий -label.add.to.group=Добавить в группу -message.vm.review.launch=Проверьте Ñледующую информацию и удоÑтоверьтеÑÑŒ в том, что ваша машина наÑтроена правильно. -message.select.security.groups=Выберите группу/группы безопаÑноÑти Ð´Ð»Ñ Ð½Ð¾Ð²Ð¾Ð¹ ВМ -label.new=Создать -message.please.select.networks=Выберите Ñети Ð´Ð»Ñ Ð²Ð¸Ñ€Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ð¾Ð¹ машины -message.please.proceed=Перейдите к Ñледующему шагу -message.zone.no.network.selection=Ð’Ñ‹Ð±Ñ€Ð°Ð½Ð½Ð°Ñ Ð·Ð¾Ð½Ð° не имеет вариантов Ð´Ð»Ñ Ð²Ñ‹Ð±Ð¾Ñ€Ð° Ñети. -label.no.thanks=Ðет, ÑпаÑибо -label.my.templates=Мои шаблоны -message.select.template=Выберите шаблон Ð´Ð»Ñ Ð½Ð¾Ð²Ð¾Ð¹ ВМ -message.select.iso=Выберите образ ISO Ð´Ð»Ñ Ð½Ð¾Ð²Ð¾Ð¹ ВМ -message.template.desc=Образ ОС, который можно иÑпользовать в качеÑтве загрузочной в ВМ -message.iso.desc=Образ диÑка Ñодержит загрузочные или незагрузочные данные Ð´Ð»Ñ ÐžÐ¡. -label.select.iso.or.template=Выберите ISO или шаблон -message.select.a.zone=Зона обычно ÑоответÑтвует единичному центру обработки данных. ÐеÑколько зоныпомогают Ñоздавать более надежные облака, обеÑÐ¿ÐµÑ‡Ð¸Ð²Ð°Ñ Ñ„Ð¸Ð·Ð¸Ñ‡ÐµÑкую изолÑцию и избыточноÑть. -label.select.a.zone=Выберите зону -label.review=Обзор -label.select.a.template=Выберите шаблон -label.setup=ÐаÑтройка -state.Allocated=РаÑпределено -changed.item.properties=Параметры Ñлемента изменены -label.apply=Применить -label.default=По умолчанию -label.viewing=ПроÑмотр -label.move.to.top=ПеремеÑтить на Ñамый верх -label.move.up.row=ПеремеÑтить на одну Ñтроку выше -label.move.down.row=ПеремеÑтить на одну Ñтроку ниже -# label.move.to.bottom=Move to bottom -label.drag.new.position=ПеремеÑтить на новую позицию -label.order=Очередь -label.no.data=Ðет информации Ð´Ð»Ñ Ð¿Ð¾ÐºÐ°Ð·Ð° -label.change.value=Изменить значение -label.clear.list=ОчиÑтить ÑпиÑок -label.full.path=Полный путь -message.add.domain=Укажите поддомен, где вы хотите Ñоздать ваш домен -message.delete.user=Подтвердите, что вы дейÑтвительно хотите удалить Ñтого пользователÑ. -message.enable.user=Подтвердите, что вы дейÑтвительно хотите включить Ñтого пользователÑ. -message.disable.user=Подтвердите, что вы дейÑтвительно хотите выключить Ñтого пользователÑ. -message.generate.keys=Подтвердите, что вы дейÑтвительно хотите Ñоздать новые ключи Ð´Ð»Ñ Ñтого пользователÑ. -message.update.resource.count=Подтвердите, что вы дейÑтвительно хотите обновить Ñчетчик реÑурÑов Ð´Ð»Ñ Ñтого аккаунта. -message.edit.account=Редактировать (значение "-1" показывает отÑутÑтвие пределов Ð´Ð»Ñ Ñ€ÐµÑурÑа) -label.total.of.vm=Ð’Ñего ВМ -label.total.of.ip=Ð’Ñего IP-адреÑов -state.enabled=Включено -message.action.download.iso=Подтвердите, что вы дейÑтвительно хотите загрузить Ñтот ISO. -message.action.download.template=Подтвердите, что вы дейÑтвительно хотите загрузить Ñтот шаблон. -label.destination.zone=Ð¦ÐµÐ»ÐµÐ²Ð°Ñ Ð·Ð¾Ð½Ð° -label.keyboard.type=Тип клавиатуры -label.nic.adapter.type=Тип Ñетевой карты (NIC) -label.root.disk.controller=Контроллер корневого диÑка -label.community=СообщеÑтво -label.remove.egress.rule=Удалить выходное правило -label.add.egress.rule=Добавить выходное правило -label.egress.rule=Выходное правило -label.remove.ingress.rule=Удалить входное правило -label.delete.vpn.user=Удалить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ VPN -label.add.vpn.user=Добавить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ VPN -label.remove.pf=Удалить правило проброÑа порта -label.remove.vm.from.lb=Удалить ВМ Ñ Ð¿Ñ€Ð°Ð²Ð¸Ð»Ð° баланÑировки нагрузки -label.add.vms.to.lb=Добавить ВМ в правило баланÑировки нагрузки -label.add.vm=Добавить ВМ -label.remove.static.nat.rule=Удалить правило Ñтатичного NAT -label.remove.rule=Удалить правило -label.add.static.nat.rule=Добавить правило Ñтатичного NAT -label.add.rule=Добавить правило -label.configuration=ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ -message.disable.vpn=Ð’Ñ‹ дейÑтвительно хотите выключить VPN? -label.disable.vpn=Выключить VPN -message.enable.vpn=Подтвердите, что вы дейÑтвительно хотите открыть доÑтуп к VPN Ð´Ð»Ñ Ñтого IP-адреÑа. -label.enable.vpn=Включить VPN -message.acquire.new.ip=Подтвердите, что вы дейÑтвительно хотите получить "белый" IP Ð´Ð»Ñ Ñтой Ñети. -label.elastic=Гибкий -label.my.network=ÐœÐ¾Ñ Ñеть -label.add.vms=Добавить ВМ -label.configure=ÐаÑтроить -label.stickiness=Липкий -label.source=ИÑточник -label.least.connections=Least connections -label.round.robin=Round-robin -label.restart.required=ТребуетÑÑ Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑк -label.clean.up=ОчиÑтить -label.restart.network=ПерезапуÑтить Ñеть -label.edit.network.details=Редактировать детали Ñети -label.add.guest.network=Добавить гоÑтевую Ñеть -label.guest.networks=ГоÑтевые Ñети -message.ip.address.changed=Ваши IP-адреÑа могли быть изменены, хотите обновить ÑпиÑок адреÑов? Помните, что в Ñтом Ñлучае облаÑть деталей будет закрыта. -state.BackingUp=Резервное копирование -state.BackedUp=Зарезервировано -label.done=Готово -label.vm.name=Ð˜Ð¼Ñ VM -message.migrate.volume=Подтвердите, что вы дейÑтвительно хотите перенеÑти том в другое оÑновное хранилище. -label.migrate.volume=ПеренеÑти том в другое оÑновное хранилище -message.create.template=Ð’Ñ‹ дейÑтвительно хотите Ñоздать шаблонн? -label.create.template=Создать шаблон -message.download.volume.confirm=Подтвердите, что вы дейÑтвительно загрузить Ñтот том -message.detach.disk=Ð’Ñ‹ дейÑтвительно хотите приÑоединить Ñтот диÑк? -state.ready=Готов -state.Ready=Готов -label.vm.display.name=Отображаемое Ð¸Ð¼Ñ Ð’Ðœ -label.select-view=Выберите вид -label.local.storage=Локальное хранилище -label.direct.ips=ПрÑмые IP-адреÑа -label.view.all=ПроÑмотреть вÑÑ‘ -label.zone.details=ПодробноÑти зоны -message.alert.state.detected=Обнаружен Ñигнал тревоги -state.Starting=ЗапуÑкаетÑÑ -state.Expunging=Удалён -state.Creating=СоздаетÑÑ -message.decline.invitation=Подтвердите, что вы хотите отменить приглашение на проект. -label.decline.invitation=Отменить приглашение -message.confirm.join.project=Подтвердите приÑоединение к проекту. -message.join.project=Теперь вы приÑоединены к проекту. Выберите "Проектный вид" Ð´Ð»Ñ Ð¿Ñ€Ð¾Ñмотра проекта. -label.accept.project.invitation=ПринÑть приглашение на проект -label.token=Талон -label.project.id=ID проекта -message.enter.token=Введите ключ, который вы получили в приглаÑительном пиÑьме -label.enter.token=Введите талон -state.Accepted=ПринÑто -state.Pending=ОжидаетÑÑ -state.Completed=Завершено -state.Declined=Отклонено -label.project=Проект -label.invitations=ÐŸÑ€Ð¸Ð³Ð»Ð°ÑˆÐµÐ½Ð¸Ñ -label.delete.project=Удалить проект -message.delete.project=Ð’Ñ‹ дейÑтвительно хотите удалить Ñтот проект? -message.activate.project=Ð’Ñ‹ дейÑтвительно хотите запуÑтить Ñтот проект? -label.activate.project=ЗапуÑтить проект -label.suspend.project=ПриоÑтановить проект -message.suspend.project=Ð’Ñ‹ дейÑтвительно хотите приоÑтановить проект? -state.Suspended=ПриоÑтановлено -label.edit.project.details=Редактировать детали проекта -label.new.project=Ðовый проект -state.Active=Включен -state.Disabled=Выключен -label.projects=Проекты -label.make.project.owner=Сделать аккаунт владельцем проекта -label.remove.project.account=Удалить учетную запиÑÑŒ проекта -message.project.invite.sent=Приглашение было отправлено пользователю; он будет добавлен в проект поÑле Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸Ð³Ð»Ð°ÑˆÐµÐ½Ð¸Ñ. -label.add.account.to.project=Добавить аккаунт в проект -label.revoke.project.invite=Отозвать приглашение -label.project.invite=ПриглаÑить в проект -label.select.project=Выберите проект -message.no.projects=У Ð²Ð°Ñ Ð½ÐµÑ‚ проектов.
    Создайте новый проект в Ñекции "Проекты" -message.no.projects.adminOnly=У Ð²Ð°Ñ Ð½ÐµÑ‚ проектовю
    ОбратитеÑÑŒ к вашему админиÑтратору Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ проекта. -message.pending.projects.1=Ð’ ожидании Ñледующие приглашениÑ\: -message.pending.projects.2=Ð”Ð»Ñ Ð¿Ñ€Ð¾Ñмотра перейдите к раздел проектов, далее выберите Ð¿Ñ€Ð¸Ð³Ð»Ð°ÑˆÐµÐ½Ð¸Ñ Ð¸Ð· выпадающего меню. -message.instanceWizard.noTemplates=Ð’Ñ‹ не имеете доÑтупных шаблонов; Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑка машины добавьте ÑовмеÑтивый шаблон. -label.view=Вид -instances.actions.reboot.label=Перезагрузить машину -label.filterBy=Фильтровать -label.ok=OK -notification.reboot.instance=Перезагрузить машину -notification.start.instance=ЗапуÑтить машину -notification.stop.instance=ОÑтановить машину -label.display.name=Отображаемое Ð¸Ð¼Ñ -label.zone.name=Ð˜Ð¼Ñ Ð·Ð¾Ð½Ñ‹ -ui.listView.filters.all=Ð’Ñе -ui.listView.filters.mine=Mine -state.Running=Запущено -state.Stopped=ОÑтановлено -state.Destroyed=Уничтожено -state.Error=Ошибка -message.reset.password.warning.notPasswordEnabled=Шаблон Ð´Ð»Ñ Ñтой машины Ñоздан без иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¿Ð°Ñ€Ð¾Ð»Ñ -message.reset.password.warning.notStopped=Ð”Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ð°Ñ€Ð¾Ð»Ñ Ð½ÐµÐ¾Ð±Ñ…Ð¾Ð´Ð¸Ð¼Ð¾ оÑтановить машину -label.notifications=ÐžÐ¿Ð¾Ð²ÐµÑ‰ÐµÐ½Ð¸Ñ -label.default.view=Стандартный вид -label.project.view=Проектный вид - -message.add.system.service.offering=Дополните Ñледующую информацию Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ реÑурÑа Ð´Ð»Ñ ÑиÑтемных Ñлужб. -message.action.delete.system.service.offering=Подтвердите, что вы дейÑтвительно хотите удалить Ñтот реÑÑƒÑ€Ñ Ð´Ð»Ñ ÑиÑтемных Ñлужб. -label.action.delete.system.service.offering=Удалить ÑиÑтемный реÑÑƒÑ€Ñ -label.hypervisor.capabilities=ВозможноÑти гипервизора -label.hypervisor.version=ВерÑÐ¸Ñ Ð³Ð¸Ð¿ÐµÑ€Ð²Ð¸Ð·Ð¾Ñ€Ð° -label.max.guest.limit=Предел количеÑтва гоÑтей -label.add.network.offering=Добавить Ñетевой реÑÑƒÑ€Ñ -label.supported.services=Поддерживаемые Ñлужбы -label.service.capabilities=ВозможноÑти Ñлужбы -label.guest.type=Тип гоÑÑ‚Ñ -label.specify.IP.ranges=Укажите диапазон IP-адреÑов -label.conserve.mode=Экономичный режим -label.created.by.system=Создано ÑиÑтемой -label.menu.system.service.offerings=СиÑтемные реÑурÑÑ‹ -label.add.system.service.offering=Добавить ÑиÑтемный реÑÑƒÑ€Ñ -label.redundant.router.capability=ВозможноÑти резервного роутера -label.supported.source.NAT.type=Поддерживаемые типы NAT-иÑточника -label.elastic.LB=Гибкий LB -label.LB.isolation=ИзолÑÑ†Ð¸Ñ LB -label.elastic.IP=Гибкий IP -label.network.label.display.for.blank.value=ИÑп. оÑновной шлюз -label.xen.traffic.label=Метка трафика XenServer -label.kvm.traffic.label=Метка трафика KVM -label.vmware.traffic.label=Метка трафика VMware -label.start.IP=Ðачальный IP -label.end.IP=Конечный IP -label.remove.ip.range=Удалить диапазон IP -label.ip.ranges=Диапазоны IP -label.start.vlan=Ðачальный VLAN -label.end.vlan=Конечный VLAN -label.broadcast.domain.range=Диапазон широковещательного домена -label.compute=ВычиÑление -message.add.guest.network=Подтвердите, что вы дейÑтвительно хотите добавить гоÑтевую Ñеть -label.subdomain.access=ДоÑтуп к поддомену -label.guest.start.ip=Ðачальный гоÑтевой IP -label.guest.end.ip=Конечный гоÑтевой IP. -label.virtual.router=Виртуальный роутер -label.physical.network.ID=ID физичеÑкой Ñети -label.destination.physical.network.id=ID целевой физичеÑкой Ñети -label.dhcp=DHCP -label.destroy.router=Удалить роутер -message.confirm.destroy.router=Подтвердите, что вы дейÑтвительно хотите удалить роутер -label.change.service.offering=Изменить Ñлужебный реÑÑƒÑ€Ñ -label.view.console=Показать конÑоль -label.redundant.state=СоÑтоÑние резерва -label.enable.provider=Включить поÑтавщика -message.confirm.enable.provider=Подтвердите, что вы дейÑтвительно хотите включить поÑтавщика -label.disable.provider=Выключить поÑтавщика -message.confirm.disable.provider=Подтвердите, что вы дейÑтвительно хотите выключить поÑтавщика -label.shutdown.provider=Отключить поÑтавщика -message.confirm.shutdown.provider=Подтвердите, что вы дейÑтвительно хотите отключить Ñтого поÑтавщика -label.netScaler=NetScaler -label.add.new.NetScaler=Добавить новый NetScaler -label.capacity=МощноÑть -label.dedicated=Выделенный -label.f5=F5 -label.add.new.F5=Добавить новый F5 -label.srx=SRX -label.providers=ПоÑтавщики -label.add.new.SRX=Добавить новый SRX -label.timeout=Ð’Ñ€ÐµÐ¼Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ -label.public.network=ÐŸÑƒÐ±Ð»Ð¸Ñ‡Ð½Ð°Ñ Ñеть -label.private.network=ЧаÑÑ‚Ð½Ð°Ñ Ñеть -label.enable.swift=Включить Swift -confirm.enable.swift=Заполните нижеÑледующую информацию Ð´Ð»Ñ Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶Ð¸ Swift -message.after.enable.swift=Swift наÑтроен. Примечание\: ЕÑли вы покинете Ñту Ñтраницу, вам не придетÑÑ Ð½Ð°Ñтраивать Swift Ñнова -label.key=Ключ -label.delete.NetScaler=Удалить NetScaler -message.confirm.delete.NetScaler=Подтвердите, что вы дейÑтвительно хотите удалить NetScaler -label.delete.F5=Удалить F5 -message.confirm.delete.F5=Подтвердите, что вы дейÑтвительно хотите удалить F5 -label.delete.SRX=Удалить SRX -message.confirm.delete.SRX=Подтвердите, что вы дейÑтвительно хотите удалить SRX -label.pods=Стенды -label.pod.name=Ð˜Ð¼Ñ Ñтенда -label.reserved.system.gateway=Зарезервированный ÑиÑтемный шлюз -label.reserved.system.netmask=Ð—Ð°Ñ€ÐµÐ·ÐµÑ€Ð²Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð½Ð°Ñ ÑиÑÑ‚ÐµÐ¼Ð½Ð°Ñ Ð¼Ð°Ñка -label.start.reserved.system.IP=Ðачальный зарезервированный ÑиÑтемный IP-Ð°Ð´Ñ€ÐµÑ -label.end.reserved.system.IP=Конечный зарезервированный ÑиÑтемный IP-Ð°Ð´Ñ€ÐµÑ -label.clusters=КлаÑтеры -label.cluster.name=Ð˜Ð¼Ñ ÐºÐ»Ð°Ñтера -label.host.MAC=MAC узла -label.agent.username=Ð˜Ð¼Ñ Ð°Ð³ÐµÐ½Ñ‚Ð° -label.agent.password=Пароль агента -message.confirm.action.force.reconnect=Подтвердите, что вы дейÑтвительно хотите переподключитьÑÑ Ðº узлу -label.resource.state=СоÑтоÑние реÑурÑов -label.LUN.number=LUN \# -message.confirm.remove.IP.range=Подтвердите, что вы дейÑтвительно хотите удалить Ñтот диапазон IP. -message.tooltip.zone.name=Ð˜Ð¼Ñ Ð´Ð»Ñ Ð·Ð¾Ð½Ñ‹ -message.tooltip.dns.1=Ð˜Ð¼Ñ Ñервера DNS Ð´Ð»Ñ Ð’Ðœ Ñтой зоны. Публичные IP-адреÑа Ñтой зоны должны иметь маршрут до Ñтого Ñервера. -message.tooltip.dns.2=Ð˜Ð¼Ñ Ð²Ñ‚Ð¾Ñ€Ð¾Ð³Ð¾ Ñервера DNS Ð´Ð»Ñ Ð’Ðœ Ñтой зоны. Публичные IP-адреÑа Ñтой зоны должны иметь маршрут до Ñтого Ñервера. -message.tooltip.internal.dns.1=Ð˜Ð¼Ñ Ñервера DNS Ð´Ð»Ñ Ð²Ð½ÑƒÑ‚Ñ€ÐµÐ½Ð½Ð¸Ñ… ВМ CloudStack Ñтой зоны. ЧаÑтные IP-адреÑа Ñтендов должны иметь маршрут до Ñтого Ñервера. -message.tooltip.internal.dns.2=Ð˜Ð¼Ñ Ñервера DNS Ð´Ð»Ñ Ð²Ð½ÑƒÑ‚Ñ€ÐµÐ½Ð½Ð¸Ñ… ВМ CloudStack Ñтой зоны. ЧаÑтные IP-адреÑа Ñтендов должны иметь маршрут до Ñтого Ñервера. -message.tooltip.network.domain=Ð¡ÑƒÑ„Ñ„Ð¸ÐºÑ DNS Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ ÑобÑтвенного доменного имени Ñети, доÑтупный гоÑтевыми ВМ. -message.tooltip.pod.name=Ð˜Ð¼Ñ Ð´Ð»Ñ Ñтенда -message.tooltip.reserved.system.gateway=Шлюз Ð´Ð»Ñ ÑƒÐ·Ð»Ð¾Ð² Ñтого Ñтенда -message.tooltip.reserved.system.netmask=ÐŸÑ€ÐµÑ„Ð¸ÐºÑ Ñети, определÑющий подÑеть Ñтенда. ИÑпользуетÑÑ Ð¾Ð±Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ðµ CIDR. -message.creating.zone=Создание зоны -message.creating.physical.networks=Создание физичеÑких Ñетей -message.configuring.physical.networks=ÐаÑтройка физичеÑких Ñетей -message.adding.Netscaler.device=Добавление уÑтройÑтва NetScaler -message.creating.pod=Создание Ñтенда -message.configuring.public.traffic=ÐаÑтройка публичного трафика -message.configuring.storage.traffic=ÐаÑтройка трафика хранилища -message.configuring.guest.traffic=ÐаÑтройка гоÑтевого трафика -message.creating.cluster=Создание клаÑтера -message.adding.host=Добавление узла -message.creating.primary.storage=Создание оÑновного хранилища -message.creating.secondary.storage=Создание дополнительного хранилища -message.Zone.creation.complete=Создание зоны завершено -message.enabling.zone=Включить зону -error.something.went.wrong.please.correct.the.following=Что-то не так, иÑправьте ошибки -error.could.not.enable.zone=Ðе удалоÑÑŒ включить зону -message.zone.creation.complete.would.you.like.to.enable.this.zone=Создание зоны завершено. Хотите включить Ñту зону? -message.please.add.at.lease.one.traffic.range=Добавьте как минимум один диапазон Ð´Ð»Ñ Ñ‚Ñ€Ð°Ñ„Ð¸ÐºÐ° -message.you.must.have.at.least.one.physical.network=Добавьте как минимум одну физичеÑкую Ñеть -message.please.select.a.different.public.and.management.network.before.removing=Выберите другую публичную и обÑлуживающую Ñеть перед удалением - -label.zone.type=Тип зоны -label.setup.zone=ÐаÑтройка зоны -label.setup.network=ÐаÑтройка Ñети -label.add.resources=Добавить реÑурÑов -label.launch=ЗапуÑк -label.set.up.zone.type=ÐаÑтроить тип зоны -message.please.select.a.configuration.for.your.zone=Выберите конфигурацию вашей зоны -message.desc.basic.zone=ПредоÑтавлÑет едиÑтвенную Ñеть, где ÐºÐ°Ð¶Ð´Ð°Ñ Ð’Ðœ имеет «белый» IP-Ð°Ð´Ñ€ÐµÑ Ñети. ИзолÑции гоÑтей можно добитьÑÑ Ð¸Ñпользованием Ñети 3-го уровнÑ, например, группы безопаÑноÑти (Ñ„Ð¸Ð»ÑŒÑ‚Ñ€Ð°Ñ†Ð¸Ñ IP-вдреÑов) -label.basic=ПроÑтой -message.desc.advanced.zone=Ð”Ð»Ñ Ð±Ð¾Ð»ÐµÐµ Ñложных Ñетевых топологий. Эта ÑÐµÑ‚ÐµÐ²Ð°Ñ Ð¼Ð¾Ð´ÐµÐ»ÑŒ обеÑпечивает макÑимальную гибкоÑть в определении гоÑтевой Ñети и предоÑтавление уÑлуг, таких как межÑетевой Ñкран, VPN, или поддержка баланÑировки нагрузки. -label.advanced=Продвинутый -message.desc.zone=layer 3 -label.physical.network=ФизичеÑкие Ñети -label.public.traffic=Публичный трафик -label.guest.traffic=ГоÑтевой трафик -label.storage.traffic=Трафик хранилища -message.setup.physical.network.during.zone.creation=Во Ð²Ñ€ÐµÐ¼Ñ Ñ€Ð°Ñширенной наÑтройки зоны, вам необходимо указать один или неÑколько физичеÑких Ñетей. ÐšÐ°Ð¶Ð´Ð°Ñ Ñеть ÑоответÑтвует Ñетевому интерфейÑу гипервизора. ÐšÐ°ÐºÐ¶Ð´Ð°Ñ Ñ„Ð¸Ð·Ð¸Ñ‡ÐµÑÐºÐ°Ñ Ñеть может иÑпользоватьÑÑ Ð´Ð»Ñ Ð¾Ð´Ð½Ð¾Ð³Ð¾ или неÑкольких видов трафика Ñ Ð½ÐµÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ð¼Ð¸ ограничениÑми при объединении видов трафика.

    Перетащите один или неÑколько видов трафика к каждой физичеÑкой Ñети. -label.add.physical.network=Добавить физичеÑкую Ñеть -label.traffic.types=Типы трафика -label.management=Управление -label.guest=ГоÑть -label.please.specify.netscaler.info=Укажите данные NetScaler -message.public.traffic.in.advanced.zone=Публичный трафик генерируетÑÑ Ð¿Ñ€Ð¸ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð’Ðœ доÑтупа к Интернету. Публично доÑтупные IP должны быть обÑзательно выделены. Пользователь может ииÑпользовать CloudStack UI Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ IP и ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ NAT, иÑпользуемый Ð´Ð»Ñ Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñƒ гоÑтевой и публичной Ñетью.

    Укажите как минимум один диапазон адреÑов Ð´Ð»Ñ Ð¸Ð½Ñ‚ÐµÑ€Ð½ÐµÑ‚-трафика. -message.public.traffic.in.basic.zone=Публичный трафик генерируетÑÑ Ð¿Ñ€Ð¸ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð’Ðœ доÑтупа к Интернету или при предоÑтавлении клиентам Ñлужб через Интернет. Публично доÑтупные IP должны быть обÑзательно выделены. При Ñоздании ВМ, Ð°Ð´Ñ€ÐµÑ Ð¸Ð· диапазона публичных Ip привÑжетÑÑ Ðº машине в дополнение гоÑтевого адреÑа IP. СтатичеÑкий 1-1 NAT должен автоматичеÑки наÑтроитьÑÑ Ð½Ð° работу между публичной и гоÑтевой Ñетью. Пользователь также имеет возможноÑть иÑпользовать CloudStack UI Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ñ‹Ñ… адреÑов Ð´Ð»Ñ Ñ€ÐµÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ð¸ ÑтатичеÑкого NAT между машинами и публичной Ñетью. -message.add.pod.during.zone.creation=ÐšÐ°Ð¶Ð´Ð°Ñ Ð·Ð¾Ð½Ð° Ñодержит один или более Ñтендов, который вы ÑÐµÐ¹Ñ‡Ð°Ñ Ð´Ð¾Ð±Ð°Ð²Ð¸Ñ‚Ðµ первым. Стенд Ñодержит узлы и Ñерверы оÑновного хранилища, которые будут добавлены в поÑледнем шаге. Ð”Ð»Ñ Ð½Ð°Ñ‡Ð°Ð»Ð° необходимо наÑтроить диапазон резервных адреÑов IP Ð´Ð»Ñ Ð²Ð½ÑƒÑ‚Ñ€ÐµÐ½Ð½ÐµÐ¹ Ñети управлениÑ. Диапазон резервных IP должен быть уникальным Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ зоны облака. -message.guest.traffic.in.advanced.zone=ГоÑтевой трафик Ñети ÑвÑзи между конечными пользователÑми виртуальных машин. Укажите диапазон идентификаторов VLAN проводить гоÑÑ‚Ñ Ñ‚Ñ€Ð°Ñ„Ð¸Ðº Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ физичеÑкой Ñети. -message.guest.traffic.in.basic.zone=ГоÑтевой трафик генерируетÑÑ Ð¿Ñ€Ð¸ общении между виртуальными машинами. Укажите диапазон адреÑов IP, который CloudStack Ñможет выделить Ð´Ð»Ñ Ð’Ðœ. УбедитеÑÑŒ, что Ñтот диапазон не перекрещиваетÑÑ Ñ Ð´Ð¸Ð°Ð¿Ð°Ð·Ð¾Ð½Ð¾Ð¼ резервных адреÑов. -message.storage.traffic=Трафик между внутренними реÑурÑами CloudStack, Ð²ÐºÐ»ÑŽÑ‡Ð°Ñ Ð²Ñе компоненты, которые взаимодейÑтвуют Ñ Ñервером управлениÑ, такие как виртуальные хоÑты и CloudStack ÑиÑтемы. ÐаÑтройте трафик Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð·Ð´ÐµÑÑŒ. -message.desc.cluster=Каждый Ñтенд должен иметь один или более клаÑтеров, первый из которых вы ÑÐµÐ¹Ñ‡Ð°Ñ Ð´Ð¾Ð±Ð°Ð²Ð¸Ñ‚Ðµ. КлаÑтер предоÑтавлÑет группу узлов. Узлы в клаÑтере имеют одинаковое оборудование, запуÑкаетÑÑ Ñ‡ÐµÑ€ÐµÐ· один гипервизор, находÑÑ‚ÑÑ Ð² одной Ñети и имеют доÑтуп к одному и тому же открытому хранилищу. Каждый клаÑтер Ñодержит один или более узлов, а также иеть один или неÑколько оÑновных хранилищ. -message.desc.host=Каждый клаÑтер должен Ñодержать как минимум один узел (компьютер) Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑка ВМ, первый из клаÑтер вы добавите ÑейчаÑ. Ð”Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ узла в CloudStack важна уÑтановка гипервизора на узел, привÑзка IP к узлу и Ñоединение узла Ñ Ñервером ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ CloudStack.

    Укажите Ð¸Ð¼Ñ DNS или Ð°Ð´Ñ€ÐµÑ IP, Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸ пароль к ОС (обычно root), а также метки Ð´Ð»Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ ÑƒÐ·Ð»Ð¾Ð². -message.desc.primary.storage=ÐšÐ°Ð¶Ð´Ð°Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ð° должна Ñодержать один или неÑколько первичных Ñерверов Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½Ñ‹Ñ…, и мы добавим первый ÑейчаÑ. ÐŸÐµÑ€Ð²Ð¸Ñ‡Ð½Ð°Ñ Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ñодержит логичеÑкие разделы жеÑткого диÑка Ð´Ð»Ñ Ð²Ñех виртуальных машин, работающих на узлах клаÑтера. ИÑпользуйте любой ÑовмеÑтимый протокол, который поддерживает оÑновные гипервизора. -message.desc.secondary.storage=ÐšÐ°Ð¶Ð´Ð°Ñ Ð·Ð¾Ð½Ð° должна обладать Ñ…Ð¾Ñ‚Ñ Ð±Ñ‹ одним Ñервером NFS или дополнительным хранилищем и их надо добавить в первую очередь. Дополнительное хранилище предназначено Ð´Ð»Ñ Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ ÑˆÐ°Ð±Ð»Ð¾Ð½Ð¾Ð² ВМ, образов ISO и Ñнимков ВМ. Этот Ñервер должен быть доÑтупен Ð´Ð»Ñ Ð²Ñех узлов зоны.

    ПредоÑтавить IP-Ð°Ð´Ñ€ÐµÑ Ð¸ путь. -label.launch.zone=ЗапуÑтить зону -message.please.wait.while.zone.is.being.created=Подождите, ÑоздаетÑÑ Ð·Ð¾Ð½Ð°. Это может занÑть некоторое времÑ... - -label.load.balancing=БаланÑировка нагрузки -label.static.nat.enabled=СтатичеÑкий NAT включен -label.zones=Зоны -label.view.more=ПроÑмотреть больше -label.number.of.zones=КоличеÑтво зон -label.number.of.pods=КоличеÑтво Ñтендов -label.number.of.clusters=КоличеÑтво клаÑтеров -label.number.of.hosts=КоличеÑтво узлов -label.total.hosts=Ð’Ñего узлов -label.total.CPU=Ð’Ñего процеÑÑоров -label.total.memory=Ð’Ñего памÑти -label.total.storage=Ð’Ñего хранилищ -label.purpose=Ðазначение - - - - -label.action.migrate.router=ПеренеÑти роутер -label.action.migrate.router.processing=ÐŸÐµÑ€ÐµÐ½Ð¾Ñ Ñ€Ð¾ÑƒÑ‚ÐµÑ€Ð°... -message.migrate.router.confirm=Подтвердите, что вы дейÑтвительно хотите перенеÑти роутер в узел -label.migrate.router.to=ПеренеÑти роутер в - -label.action.migrate.systemvm=ПеренеÑти ÑиÑтемную ВМ -label.action.migrate.systemvm.processing=ÐŸÐµÑ€ÐµÐ½Ð¾Ñ ÑиÑтемной ВМ... -message.migrate.systemvm.confirm=Подтвердите, что вы дейÑтвительно хотите перенеÑти роутер в узел -label.migrate.systemvm.to=ПеренеÑти ÑиÑтемную ВМ в - - -mode=Режим -side.by.side=Бок-о-Бок -inline=Ð’Ñтроенный - -extractable=Извлекаемый - -label.ocfs2=OCFS2 - -label.action.edit.host=Редактировать узел - -network.rate=СкороÑть Ñети - -ICMP.type=Тип ICMP -ICMP.code=Код ICMP - -image.directory=Каталог Ñ Ð¾Ð±Ñ€Ð°Ð·Ð°Ð¼Ð¸ - -label.action.create.template.from.vm=Создать шаблон из ВМ -label.action.create.template.from.volume=Создать шаблон из тома - -message.vm.create.template.confirm=Создание шаблона автоматичеÑки перезагрузит ВМ - -label.action.manage.cluster=Управление клаÑтером -message.action.manage.cluster=Подтвердите, что вы дейÑтвительно хотите перевеÑти клаÑтер в режим обÑлуживаниÑ. -label.action.manage.cluster.processing=Переход клаÑтера в режим обÑлуживаниÑ... - -label.action.unmanage.cluster=ПеревеÑти клаÑтер в обычный режим -message.action.unmanage.cluster=Подтвердите, что вы дейÑтвительно хотите перевеÑти клаÑтер в обычный режим. -label.action.unmanage.cluster.processing=Переход клаÑтера в обычный режим... - -label.allocation.state=СоÑтоÑние раÑÐ¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ -managed.state=СоÑтоÑние обÑÐ»ÑƒÐ¶Ð¸Ð²Ð°Ð½Ð¸Ñ - -label.default.use=По умолчанию -label.host.tags=Метки узла - -label.cidr=CIDR -label.cidr.list=CIDR иÑточника - -label.storage.tags=Метки хранилища - -label.redundant.router=Резервной роутер -label.is.redundant.router=Резервной - -force.delete=Принудительно удалить -force.delete.domain.warning=Внимание\: При выборе Ñтого варианта приведет к удалению вÑех дочерних доменов и вÑе ÑвÑзанные Ñ Ð½Ð¸Ð¼Ð¸ аккаунтов и их реÑурÑов. - -force.remove=Принудительно удалить -force.remove.host.warning=Внимание\: При выборе Ñтой опции будет вызыван CloudStack Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð½ÑƒÐ´Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð¾Ð¹ оÑтановики вÑех виртуальных машин, прежде чем Ñнимать Ñтот узел из клаÑтера.. - -force.stop=Принудительно оÑтановить -force.stop.instance.warning=Внимание\: ÐŸÑ€Ð¸Ð½ÑƒÐ´Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ Ð¾Ñтановка должна применÑтьÑÑ Ð² ÑамуюпоÑледнюю очередь. Ð’Ñ‹ можете потерÑть данные или получить неожиданное поведение/ÑоÑтоÑние виртуальной машины. - -label.PreSetup=ÐŸÑ€ÐµÐ´Ð²Ð°Ñ€Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ Ð½Ð°Ñтройка -label.SR.name = SR Name-Label -label.SharedMountPoint=ОткрытаÑТочкаДоÑтупа -label.clvm=CLVM -label.volgroup=Группа тома -label.VMFS.datastore=Хранилище VMFS - -label.network.device=Сетевое уÑтройÑтво -label.add.network.device=Добавить Ñетевое уÑтройÑтво -label.network.device.type=Тип Ñетевого уÑтройÑтва -label.DHCP.server.type=Тип Ñервера DHCP -label.Pxe.server.type=Тип Ñервера PXE -label.PING.storage.IP=IP Ð°Ð´Ñ€ÐµÑ PING-хранилища -label.PING.dir=Каталог PING -label.TFTP.dir=Каталог TFTP -label.PING.CIFS.username=Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ PING CIFS -label.PING.CIFS.password=Пароль PING CIFS -label.CPU.cap=CPU Cap - - -label.action.enable.zone=Включить зону -label.action.enable.zone.processing=Включение зоны... -message.action.enable.zone=Потдтвердите, что вы дейÑтвительно хотите включить Ñту зону -label.action.disable.zone=Выключить зону -label.action.disable.zone.processing=Выключение зоны... -message.action.disable.zone=Подтвердите, что вы дейÑтвительно хотите выключить Ñту зону - -label.action.enable.pod=Включить Ñтенд -label.action.enable.pod.processing=Включение Ñтенда.. -message.action.enable.pod=Подтвердите, что вы дейÑтвительно хотите включить Ñтот Ñтенд. -label.action.disable.pod=Выключить Ñтенд -label.action.disable.pod.processing=Выключение Ñтенда. -message.action.disable.pod=Подтвердите, что вы дейÑтвительно хотите выключить Ñту зону. - -label.action.enable.cluster=Включить клаÑтер -label.action.enable.cluster.processing=Включение клаÑтера... -message.action.enable.cluster=Подтвердите, что вы дейÑтвительно хотите включить Ñтот клаÑтер. -label.action.disable.cluster=Выключить клаÑтер -label.action.disable.cluster.processing=Выключение клаÑтера... -message.action.disable.cluster=Подтвердите, что вы дейÑтвительно хотите выключить Ñтот клаÑтер. - -label.account.id=ID учётной запиÑи -label.account.name=Ð˜Ð¼Ñ ÑƒÑ‡Ñ‘Ñ‚Ð½Ð¾Ð¹ запиÑи -label.account.specific=Специфика аккауннта -label.account=Ð£Ñ‡Ñ‘Ñ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ -label.accounts=Учётные запиÑи -label.acquire.new.ip=Получить новый IP -label.show.ingress.rule=Показать входное правило -label.hide.ingress.rule=Скрыть входное правило -label.action.attach.disk.processing=Прикрепление диÑка... -label.action.attach.disk=Прикрепить диÑк -label.action.attach.iso.processing=Прикрепление ISO... -label.action.attach.iso=Прикрепить ISO -label.action.cancel.maintenance.mode.processing=Отмена режима обÑлуживаниÑ... -label.action.cancel.maintenance.mode=Отменить режим обÑÐ»ÑƒÐ¶Ð¸Ð²Ð°Ð½Ð¸Ñ -label.action.change.password=Изменить пароль -label.action.change.service.processing=Изменение Ñлужбы... -label.action.change.service=Изменить Ñлужбу -label.action.copy.ISO.processing=Копирование ISO... -label.action.copy.ISO=Копировать ISO -label.action.copy.template.processing=Копирование шаблона... -label.action.copy.template=Копировать шаблон -label.action.create.template.processing=Создание шаблона... -label.action.create.template=Создать шаблон -label.action.create.vm.processing=Создание ВМ... -label.action.create.vm=Создать ВМ -label.action.create.volume.processing=Создание тома... -label.action.create.volume=Создать том -label.action.delete.IP.range.processing=Удаление диапазона IP... -label.action.delete.IP.range=Удалить диапазон IP -label.action.delete.ISO.processing=Удаление ISO... -label.action.delete.ISO=Удалить ISO -label.action.delete.account.processing=Удаление учётной запиÑи... -label.action.delete.account=Удалить учётную запиÑÑŒ -label.action.delete.cluster.processing=Удаление клаÑтера... -label.action.delete.cluster=Удалить клаÑтер -label.action.delete.disk.offering.processing=Удаление диÑкового реÑурÑа... -label.action.delete.disk.offering=Удалить диÑковый реÑÑƒÑ€Ñ - -label.action.update.resource.count=Обновить Ñчётчик реÑурÑов -label.action.update.resource.count.processing=Обновление Ñчетчика реÑурÑов... - -label.action.delete.domain=Удалить домен -label.action.delete.domain.processing=Удаление домена... - -label.action.delete.firewall.processing=Удаление фаервола... -label.action.delete.firewall=Удалить правило фаервола -label.action.delete.ingress.rule.processing=Удаление входного правила... -label.action.delete.ingress.rule=Удалить входное правило -label.action.delete.load.balancer.processing=Удаление баланÑировки нагрузки... -label.action.delete.load.balancer=Удалить правило баланÑировки нагрузки -label.action.edit.network.processing=Редактирование Ñети... -label.action.edit.network=Редактировать Ñеть -label.action.delete.network.processing=Удаление Ñети... -label.action.delete.network=Удалить Ñеть -label.action.delete.pod.processing=Удаление Ñтенда... -label.action.delete.pod=Удалить Ñтенд -label.action.delete.primary.storage.processing=Удаление оÑновного хранилища... -label.action.delete.primary.storage=Удалить оÑновное хранилище -label.action.delete.secondary.storage.processing=Удаление дополнительного хранилища... -label.action.delete.secondary.storage=Удалить дополнительное хранилище -label.action.delete.security.group.processing=Удаление группы безопаÑноÑти... -label.action.delete.security.group=Удалить группу безопаÑноÑти -label.action.delete.service.offering.processing=Удаление Ñлужебного реÑурÑа... -label.action.delete.service.offering=Удалить Ñлужебный реÑÑƒÑ€Ñ -label.action.delete.snapshot.processing=Удаление Ñнимка... -label.action.delete.snapshot=Удалить Ñнимок -label.action.delete.template.processing=Удаление шаблона... -label.action.delete.template=Удалить шаблон -label.action.delete.user.processing=Удаление пользователÑ... -label.action.delete.user=Удалить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ -label.action.delete.volume.processing=Удаление тома... -label.action.delete.volume=Удалить том -label.action.delete.zone.processing=Удаление зоны... -label.action.delete.zone=Удалить зону -label.action.destroy.instance.processing=Уничтожение машины... -label.action.destroy.instance=Уничтожить машину -label.action.destroy.systemvm.processing=Уничтожение ÑиÑтемного ВМ... -label.action.destroy.systemvm=Уничтожить ÑиÑтемный ВМ -label.action.detach.disk.processing=Открепление диÑка... -label.action.detach.disk=Открепить диÑк -label.action.detach.iso.processing=Открепление ISO -label.action.detach.iso=Открепить ISO -label.action.disable.account.processing=Выключение учётной запиÑи -label.action.disable.account=Выключить учётную запиÑÑŒ -label.action.disable.static.NAT.processing=Выключение Ñтатичного NAT... -label.action.disable.static.NAT=Выключить Ñтатичный NAT -label.action.disable.user.processing=Выключение Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ -label.action.disable.user=Выключить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ -label.action.download.ISO=Загрузить ISO -label.action.download.template=Загрузить шаблон -label.action.download.volume.processing=Загрузка тома... -label.action.download.volume=Загрузить том -label.action.edit.ISO=Редактировать ISO -label.action.edit.account=Редактировать учётную запиÑÑŒ -label.action.edit.disk.offering=Редактировать диÑковый реÑÑƒÑ€Ñ -label.action.edit.domain=Редактировать домен -label.action.edit.global.setting=Редактировать глобальные наÑтройки -label.action.edit.instance=Редактировать машину -label.action.edit.network.offering=Редактировать Ñетевой реÑÑƒÑ€Ñ -label.action.edit.pod=Редактировать Ñтенд -label.action.edit.primary.storage=Редактировать оÑновное хранилище -label.action.edit.resource.limits=Редактировать пределы реÑурÑов -label.action.edit.service.offering=Редактировать Ñлужебный реÑÑƒÑ€Ñ -label.action.edit.template=Редактировать шаблон -label.action.edit.user=Редактировать Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ -label.action.edit.zone=Редактировать зону -label.action.enable.account.processing=Включение аккаунта... -label.action.enable.account=Включить учётную запиÑÑŒ -label.action.enable.maintenance.mode.processing=Включение режима обÑлуживаниÑ... -label.action.enable.maintenance.mode=Включить режим обÑÐ»ÑƒÐ¶Ð¸Ð²Ð°Ð½Ð¸Ñ -label.action.enable.static.NAT.processing=Включение Ñтатичного NAT.. -label.action.enable.static.NAT=Включить Ñтатичный NAT -label.action.enable.user.processing=Включение пользователÑ... -label.action.enable.user=Включить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ -label.action.force.reconnect.processing=Переподключение... -label.action.force.reconnect=Принудительно переподключить -label.action.generate.keys.processing=Создание ключей... -label.action.generate.keys=Создать ключи -label.action.lock.account.processing=Ð‘Ð»Ð¾ÐºÐ¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ ÑƒÑ‡Ñ‘Ñ‚Ð½Ð¾Ð¹ запиÑи -label.action.lock.account=Заблокировать учётную запиÑÑŒ -label.action.migrate.instance=ПеренеÑти машину -label.action.migrate.instance.processing=ÐŸÐµÑ€ÐµÐ½Ð¾Ñ Ð¼Ð°ÑˆÐ¸Ð½Ñ‹...... -label.action.reboot.instance.processing=Перезагрузка машины... -label.action.reboot.instance=Перезагрузить машину -label.action.reboot.router.processing=Перезагрузка роутера... -label.action.reboot.router=Перезагрузить роутер -label.action.reboot.systemvm.processing=Перезагрузка ÑиÑтемной ВМ -label.action.reboot.systemvm=ПерезапуÑтить ÑиÑтемную ВМ -label.action.recurring.snapshot=ПовторÑемые Ñнимки -label.action.release.ip.processing=ОÑвобождение IP... -label.action.release.ip=ОÑвободить IP -label.action.remove.host.processing=Удаление узла... -label.action.remove.host=Удалить узел -label.action.reset.password.processing=Ð¡Ð±Ñ€Ð¾Ñ Ð¿Ð°Ñ€Ð¾Ð»Ñ... -label.action.reset.password=СброÑить пароль -label.action.resource.limits=Пределы реÑурÑов -label.action.restore.instance.processing=ВоÑÑтановление машины... -label.action.restore.instance=ВоÑÑтановить машину -label.action.start.instance.processing=ЗапуÑк машины... -label.action.start.instance=ЗапуÑтить машину -label.action.start.router.processing=ЗапуÑк роутера -label.action.start.router=ЗапуÑтить роутер -label.action.start.systemvm.processing=ЗапуÑк ÑиÑтемной ВМ... -label.action.start.systemvm=ЗапуÑтить ÑиÑтемную ВМ -label.action.stop.instance.processing=ОÑтановка машины... -label.action.stop.instance=ОÑтановить машину -label.action.stop.router.processing=ОÑтановка роутера... -label.action.stop.router=ОÑтановить роутер -label.action.stop.systemvm.processing=ОÑтановка ÑиÑтемной ВМ... -label.action.stop.systemvm=ОÑтановить ÑиÑтемной ВМ -label.action.take.snapshot.processing=Получение Ñнимка... -label.action.take.snapshot=Получить Ñнимок... -label.action.update.OS.preference.processing=Обновление параметров ОС... -label.action.update.OS.preference=Обновить параметры ОС -label.actions=ДейÑÑ‚Ð²Ð¸Ñ -label.active.sessions=Ðктивные ÑеÑÑии -label.add.account=Добавить аккаунт -label.add.by.cidr=Добавить к CIDR -label.add.by.group=Добавить к группе -label.add.cluster=Добавить клаÑтер -label.add.direct.iprange=Добавить диапазон прÑмых IP -label.add.disk.offering=Ðовый диÑковый реÑÑƒÑ€Ñ -label.add.domain=Добавить домен -label.add.firewall=Добавить правило фаервола. -label.add.host=Добавить узел -label.add.ingress.rule=Ðовое входное правило -label.add.ip.range=Добавить диапазон IP -label.add.load.balancer=Добавить баланÑировку нагрузки -label.add.more=Добавить что-то еще -label.add.network=Добавить Ñеть -label.add.pod=Добавить Ñтенд -label.add.primary.storage=Добавить оÑновное хранилище -label.add.secondary.storage=Добавить дополнительное хранилище -label.add.security.group=Добавить группу безопаÑноÑти -label.add.service.offering=Ðовый ÑиÑтемный реÑÑƒÑ€Ñ -label.add.template=Добавить шаблон -label.add.user=Добавить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ -label.add.vlan=Добавить VLAN -label.add.volume=Добавить том -label.add.zone=Добавить зону -label.add=Добавить -label.adding.cluster=Добавление клаÑтера -label.adding.failed=Ðе удалоÑÑŒ добавить -label.adding.pod=Добавление Ñтенда -label.adding.processing=Добавление... -label.adding.succeeded=Добавление завершено уÑпешно -label.adding.user=Добавление Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ -label.adding.zone=Добавление зоны -label.adding=Добавление зоны -label.additional.networks=Дополнительные Ñети -label.admin.accounts=ÐдминиÑтраторÑкие учётные запиÑи -label.admin=ÐдминиÑтратор -label.advanced.mode=Продвинутый режим -label.advanced.search=РаÑширенный поиÑк -label.advanced=Продвинутый -label.alert=Тревога -label.algorithm=Ðлгоритм -label.allocated=РаÑпределено -label.api.key=Ключ API -label.assign.to.load.balancer=Включение машины в ÑиÑтему баланÑировки нагрузки -label.assign=ПриÑвоить -label.associated.network.id=СвÑзанный ID Ñети -label.attached.iso=Прикрепленный ISO -label.availability.zone=ДоÑтупноÑть зоны -label.availability=ДоÑтупноÑть -label.available.public.ips=ДоÑтупные публичные IP-адреÑа -label.available=ДоÑтупно -label.back=Ðазад -label.basic.mode=ПроÑто режим -label.bootable=Загружаемый -label.broadcast.domain.type=Тип широковещательного домена -label.by.account=По учётной запиÑи -label.by.availability=По доÑтупноÑти -label.by.domain=До домену -label.by.end.date=По завершению -label.by.level=По уровню -label.by.pod=По Ñтенду -label.by.role=По роли -label.by.start.date=По началу -label.by.state=По ÑоÑтоÑнию -label.by.traffic.type=По типу трафика -label.by.type.id=По типу ID -label.by.type=По типу -label.by.zone=По зоне -label.bytes.received=Байт получен -label.bytes.sent=Байт отправлено -label.cancel=Отмена -label.certificate=Сертификат -label.privatekey=ЧаÑтный ключ PKCS\#8 -label.domain.suffix=Ð¡ÑƒÑ„Ñ„Ð¸ÐºÑ Ð´Ð¾Ð¼ÐµÐ½Ð° DNS (нпр. xyz.com) -label.character=Символов -label.cidr.account=CIDR или ÑƒÑ‡Ñ‘Ñ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ/группа безопаÑноÑти -label.close=Закрыть -label.cloud.console=КонÑоль ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¾Ð±Ð»Ð°ÐºÐ¾Ð¼ -label.cloud.managed=Панель ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ -label.cluster.type=Тип клаÑтера -label.cluster=КлаÑтер -label.code=Код -label.confirmation=Подтверждение -label.cpu.allocated.for.VMs=РаÑпределено ЦПУ Ð´Ð»Ñ Ð’Ðœ -label.cpu.allocated=РаÑпределено ЦПУ -label.cpu.utilized=ИÑпользование CPU -label.cpu=CPU -label.created=Создано -label.cross.zones=Общие Ð´Ð»Ñ Ð·Ð¾Ð½ -label.custom.disk.size=Свой размер диÑка -label.daily=Ежедневно -label.data.disk.offering=Данные диÑка -label.date=Дата -label.day.of.month=День меÑÑца -label.day.of.week=День недели -label.delete=Удалить -label.deleting.failed=Ðе удалоÑÑŒ удалить -label.deleting.processing=Удаление... -label.description=ОпиÑание -label.detaching.disk=Открепление диÑка -label.details=Детали -label.device.id=ID уÑтройÑтва -label.disabled=Выключено -label.disabling.vpn.access=Выключение доÑтупа к VPN -label.disk.allocated=РаÑпределено диÑкового проÑтранÑтва -label.disk.offering=ДиÑковый реÑÑƒÑ€Ñ -label.disk.size.gb=Размер диÑка (в ГБ) -label.disk.size=Размер диÑка -label.disk.total=Ð’Ñего в диÑках -label.disk.volume=Том диÑка -label.display.text=Отображаемый текÑÑ‚ -label.dns.1=DNS 1 -label.dns.2=DNS 2 -label.domain.admin=ÐдминиÑтратор домена -label.domain.id=ID домена -label.domain.name=Ð˜Ð¼Ñ Ð´Ð¾Ð¼ÐµÐ½Ð° -label.domain=Домен -label.double.quotes.are.not.allowed=Двойные кавычки запрещены -label.download.progress=Ð¡Ñ‚Ð°Ñ‚ÑƒÑ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ -label.edit=Редактировать -label.email=E-mail -label.enabling.vpn.access=Включение доÑтупа к VPN -label.enabling.vpn=Включение VPN -label.end.port=Конечный порт -label.endpoint.or.operation=ÐšÐ¾Ð½ÐµÑ‡Ð½Ð°Ñ Ñ‚Ð¾Ñ‡ÐºÐ° или Ð¾Ð¿ÐµÑ€Ð°Ñ†Ð¸Ñ -label.error.code=Код ошибки -label.error=Ошибка -label.esx.host=Узел ESX/ESXi -label.example=Пример -label.failed=Ðеудачно -label.featured=ПредÑтавленный -label.firewall=Фаервол -label.first.name=Ð˜Ð¼Ñ -label.format=Формат -label.friday=ПÑтница -label.full=Полный -label.gateway=Шлюз -label.general.alerts=Общие тревоги -label.generating.url=Создание URL -label.go.step.2=Перейти к шагу 2 -label.go.step.3=Перейти к шагу 3 -label.go.step.4=Перейти к шагу 4 -label.go.step.5=Перейти к шагу 5 -label.group.optional=Группа (опционально) -label.group=Группа -label.guest.cidr=ГоÑтевой CIDR -label.guest.gateway=Шлюз -label.guest.ip.range=Диапазон IP-адреÑов -label.guest.ip=ГоÑтевые IP-адреÑа -label.guest.netmask=ГоÑÑ‚ÐµÐ²Ð°Ñ ÑÐµÑ‚ÐµÐ²Ð°Ñ Ð¼Ð°Ñка -label.ha.enabled=HA включен -label.help=Помощь -label.host.alerts=Тревоги узла -label.host.name=Ð˜Ð¼Ñ ÑƒÐ·Ð»Ð° -label.host=Узел -label.hosts=Узлы -label.hourly=ЧаÑÐ¾Ð²Ð°Ñ -label.hypervisor.type=Тип гипервизора -label.hypervisor=Гипервизор -label.id=ID -label.info=Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ -label.ingress.rule=Внутринее правило -label.initiated.by=Пользователь -label.instance.limits=Пределы машины -label.instance.name=Ð˜Ð¼Ñ Ð¼Ð°ÑˆÐ¸Ð½Ñ‹ -label.instance=Машина -label.instances=Машины -label.internal.dns.1=Внутренний DNS 1 -label.internal.dns.2=Внутренний DNS 2 -label.interval.type=Тип диапазона -label.invalid.integer=Ðеправильное целое чиÑло -label.invalid.number=Ðеправильное чиÑло -label.ip.address=IP-Ð°Ð´Ñ€ÐµÑ -label.ip.allocations=РаÑÐ¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ IP -label.ip.limits=Пределы публичных IP -label.ip.or.fqdn=IP или FQDN -label.ip.range=Диапазон IP -label.ip=IP -label.ips=IP -label.is.default=По умолчанию -label.is.shared=общие -label.is.system=ЕÑть ÑиÑтема -label.iscsi=iSCSI -label.iso.boot=Загрузка ISO -label.iso=ISO -label.isolation.mode=Режим изолÑции -label.keep=Хранить -label.lang.chinese=КитайÑкий (упрощённый) -label.lang.english=ÐнглийÑкий -label.lang.japanese=ЯпонÑкий -label.lang.korean=корейÑкий -label.lang.spanish=ИÑпанÑкий -label.last.disconnected=ПоÑледнее Ñоединение -label.last.name=ПоÑледнее Ð¸Ð¼Ñ -label.level=Уровень -label.linklocal.ip=Локальный IP Ð°Ð´Ñ€ÐµÑ -label.load.balancer=БаланÑировка нагрузки -label.loading=Загрузка -label.local=Локальный -# label.local.storage.enabled=Local storage enabled -label.login=Вход -label.logout=Выход -label.lun=LUN -label.manage=Управление -label.maximum=МакÑимум -label.memory.allocated=РаÑпределено памÑти -label.memory.total=Ð’Ñего памÑти -label.memory.used=ИÑпользованной памÑти -label.memory=ПамÑть -label.menu.accounts=Учётные запиÑи -label.menu.alerts=Тревоги -label.menu.all.accounts=Ð’Ñе учётные запиÑи -label.menu.all.instances=Ð’Ñе машины -label.menu.community.isos=ISO-ÑообщеÑтва -label.menu.community.templates=Шаблоны ÑообщеÑтва -label.menu.configuration=ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ -label.menu.dashboard=Ð“Ð»Ð°Ð²Ð½Ð°Ñ -label.menu.destroyed.instances=Уничтоженные машины -label.menu.disk.offerings=ÐŸÑ€ÐµÐ´Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð´Ð¸Ñков -label.menu.domains=Домены -label.menu.events=Ð¡Ð¾Ð±Ñ‹Ñ‚Ð¸Ñ -label.menu.featured.isos=Рекомендуемые ISO -label.menu.featured.templates=Рекомендуемые шаблоны -label.menu.global.settings=Глобальные наÑтройки -label.menu.instances=Машины -label.menu.ipaddresses=IP-адреÑа -label.menu.isos=ISO -label.menu.my.accounts=Мои учётные запиÑи -label.menu.my.instances=Мои машины -label.menu.my.isos=Мои ISO -label.menu.my.templates=Мои шаблоны -label.menu.network.offerings=ÐŸÑ€ÐµÐ´Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ñети -label.menu.network=Сеть -label.menu.physical.resources=ФизичеÑкие реÑурÑÑ‹ -label.menu.running.instances=Запущенные машины -label.menu.security.groups=Группы безопаÑноÑти -label.menu.service.offerings=УÑлуги -label.menu.snapshots=Снимки -label.menu.stopped.instances=ОÑтановленные машины -label.menu.storage=Хранилище -label.menu.system.vms=СиÑтемные ВМ -label.menu.system=СиÑтема -label.menu.templates=Шаблоны -label.menu.virtual.appliances=Виртуальные уÑтройÑтва -label.menu.virtual.resources=Виртуальные реÑурÑÑ‹ -label.menu.volumes=Тома -label.migrate.instance.to=ПеренеÑти машину в -label.minimum=Минимум -label.minute.past.hour=Минута -label.monday=Понедельник -label.monthly=Каждый меÑÑц -label.more.templates=Больше шаблонов -label.my.account=ÐœÐ¾Ñ ÑƒÑ‡Ñ‘Ñ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ -label.name.optional=Ð˜Ð¼Ñ (необÑзательно) -label.name=Ð˜Ð¼Ñ -label.netmask=Ð¡ÐµÑ‚ÐµÐ²Ð°Ñ Ð¼Ð°Ñка -label.network.desc=ОпиÑание Ñети -label.network.domain=Домен Ñети -label.network.id=ID Ñети -label.network.name=Ð˜Ð¼Ñ Ñети -label.network.offering.display.text=Ñеть, обеÑпечивающую Отображение текÑта -label.network.offering.id=Ñеть, обеÑпечивающую ID -label.network.offering.name=Ñеть, обеÑпечивающую Ð˜Ð¼Ñ -label.network.offering=Сетевой реÑÑƒÑ€Ñ -label.network.rate=СкороÑть Ñети -label.network.read=Прочитано через Ñеть -label.network.type=Тип Ñети -label.network.write=ЗапиÑано через Ñеть -label.network=Сеть -label.new.password=Ðовый пароль -label.next=Следующий -label.nfs.server=Сервер NFS -label.nfs.storage=Хранилище NFS -label.nfs=NFS -label.nics=Сетевые уÑтройÑтва (NIC) -label.no.actions=Ðет доÑтупных операций -label.no.alerts=Тревог не получено -label.no.errors=Ошибок не получено -label.no.isos=Ðет доÑтупных ISO -label.no.items=Ðет доÑтупных Ñлементов -label.no.security.groups=Ðет доÑтупных групп безопаÑноÑть -label.no.thanks=Ðет, ÑпаÑибо -label.no=Ðет -label.none=Ðет -label.not.found=Ðе найдено -label.num.cpu.cores=Кол. CPU -label.numretries=КоличеÑтво попыток -label.offer.ha=ПредоÑÑ‚. HA -label.optional=ÐеобÑзательно -label.os.preference=ÐŸÑ€ÐµÐ´Ð¿Ð¾Ñ‡Ñ‚Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ ÐžÐ¡ -label.os.type=Тип ОС -label.owned.public.ips=СобÑтвенные публичные IP-адреÑа -label.owner.account=Ð£Ñ‡Ñ‘Ñ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ владельца -label.owner.domain=Домен владельца -label.parent.domain=РодительÑкий домен -label.password.enabled=Пароль включен -label.password=Пароль -label.path=Путь -label.please.wait=Подождите -label.pod=Стенд -label.port.forwarding=ÐŸÑ€Ð¾Ð±Ñ€Ð¾Ñ Ð¿Ð¾Ñ€Ñ‚Ð¾Ð² -label.port.range=Диапазон портов -label.prev=Предыдуший -label.primary.allocated=РаÑпределение оÑновного хранилища -label.primary.network=ОÑÐ½Ð¾Ð²Ð½Ð°Ñ Ñеть -label.primary.storage=ОÑновное хранилище -label.primary.used=ИÑпользование оÑновного хранилища -label.private.interface=ЧаÑтный Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ -label.private.ip.range=Диапазон чаÑтных IP -label.private.ip=ЧаÑтный IP-Ð°Ð´Ñ€ÐµÑ -label.private.ips=ЧаÑтные IP-адреÑа -label.private.port=ЧаÑтный порт -label.private.zone=ЧаÑÑ‚Ð½Ð°Ñ Ð·Ð¾Ð½Ð° -label.protocol=Протокол -label.public.interface=Публичный Ð¸Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ -label.public.ip=Публичный IP-Ð°Ð´Ñ€ÐµÑ -label.public.ips=Публичные IP-адреÑа -label.public.port=Публичный порт -label.public.zone=ÐŸÑƒÐ±Ð»Ð¸Ñ‡Ð½Ð°Ñ Ð·Ð¾Ð½Ð° -label.public=Публичный -label.recent.errors=Полученные ошибки -label.refresh=Обновить -label.related=СвÑзанный -label.remove.from.load.balancer=Удалить машину Ñ Ð±Ð°Ð»Ð°Ð½Ñировки нагрузки -label.removing.user=Удаление Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ -label.required=ТребуетÑÑ -label.reserved.system.ip=Зарезервированный ÑиÑтемный IP -label.resource.limits=Пределы реÑурÑов -label.resource=РеÑÑƒÑ€Ñ -label.resources=РеÑурÑÑ‹ -label.role=Роль -label.root.disk.offering=РеÑÑƒÑ€Ñ ÐºÐ¾Ñ€Ð½ÐµÐ²Ð¾Ð³Ð¾ диÑка -label.running.vms=Запущенные ВМ -label.saturday=Суббота -label.save=Сохранить -label.saving.processing=Сохранение... -label.scope=Сфера -label.search=ПоиÑк -label.secondary.storage=Дополнительное хранилище -label.secondary.used=ИÑпользование дополнительного хранилища -label.secret.key=Секретный ключ -label.security.group.name=Ð˜Ð¼Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ñ‹ безопаÑноÑти -label.security.group=Группа безопаÑноÑти -label.security.groups.enabled=Группы безопаÑноÑти включены -label.security.groups=Группы безопаÑноÑти -label.sent=Отправлено -label.server=Сервер -label.service.offering=Служебный реÑÑƒÑ€Ñ -label.system.service.offering=СиÑтемный реÑÑƒÑ€Ñ -label.session.expired=Ð’Ñ€ÐµÐ¼Ñ ÑеÑÑии вышло -label.shared=ОбщедоÑтупный -label.size=Размер -label.snapshot.limits=Пределы Ñнимков -label.snapshot.name=Ð˜Ð¼Ñ Ñнимка -label.snapshot.s=Снимок/Ñнимки -label.snapshot.schedule=ÐаÑтройка повторÑемых Ñнимков -label.snapshot=Снимок -label.snapshots=Снимки -label.source.nat=NAT-иÑточник -label.specify.vlan=Укажите VLAN -label.start.port=Ðачальный порт -label.state=СоÑтоÑние -label.static.nat.to=Статичный NAT к -label.static.nat=Статичный NAT -label.statistics=СтатиÑтика -label.status=Ð¡Ñ‚Ð°Ñ‚ÑƒÑ -label.step.1.title=Шаг 1\: Выберите шаблон -label.step.1=Шаг 1 -label.step.2.title=Шаг 2\: СиÑтемный реÑÑƒÑ€Ñ -label.step.2=Шаг 2 -label.step.3.title=Шаг 3\: Выберите диÑковый реÑÑƒÑ€Ñ -label.step.3=Шаг 3 -label.step.4.title=Step 4\: Сеть -label.step.4=Шаг 4 -label.step.5.title=Step 5\: Обзор -label.step.5=Шаг 5 -label.stopped.vms=ОÑтановленные ВМ -label.storage.type=Тип хранилища -label.storage=Хранилище -label.submit=Опубликовать -label.submitted.by=[Опубликовано\: ] -label.succeeded=УÑпешно -label.sunday=ВоÑкреÑенье -label.system.capacity=МощноÑть ÑиÑтемы -label.system.vm.type=Тип ÑиÑтемной ВМ -label.system.vm=СиÑÑ‚ÐµÐ¼Ð½Ð°Ñ Ð’Ðœ -label.system.vms=СиÑтемные ВМ -label.tagged=С меткой -label.tags=Метки -label.target.iqn=Целевой IQN -label.template.limits=Пределы шаблона -label.template=Шаблон -label.theme.default=Ð¡Ñ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð°Ñ Ñ‚ÐµÐ¼Ð° -label.theme.grey=Ð¡ÐµÑ€Ð°Ñ Ñ‚ÐµÐ¼Ð° -label.theme.lightblue=Ð“Ð¾Ð»ÑƒÐ±Ð°Ñ Ñ‚ÐµÐ¼Ð° -label.thursday=Четверг -label.time.zone=ЧаÑовой поÑÑ -label.time=Ð’Ñ€ÐµÐ¼Ñ -label.timeout.in.second = Ð’Ñ€ÐµÐ¼Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ðµ (Ñек.) -label.timezone=ЧаÑовой поÑÑ -label.total.cpu=Ð’Ñего CPU -label.total.vms=Ð’Ñего ВМ -label.traffic.type=Тип трафика -label.tuesday=Вторник -label.type.id=ID типа -label.type=Тип -label.unavailable=Ðе доÑтупно -label.unlimited=БеÑконечно -label.untagged=Без метки -label.update.ssl.cert=Обновить Ñертификаты SSL -label.update.ssl=Обновить Ñертификаты SSL -label.updating=Обновление -label.url=URL -label.usage.interface=Ð˜Ð½Ñ‚ÐµÑ€Ñ„ÐµÐ¹Ñ Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ -label.used=ИÑпользовано -label.user=Пользователь -label.username=Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ -label.users=Пользователи -label.value=Значение -label.vcenter.cluster=КлаÑтер vCenter -label.vcenter.datacenter=ЦОД vCenter -label.vcenter.datastore=Хранилище vCenter -label.vcenter.host=Узел vCenter -label.vcenter.password=Пароль vCenter -label.vcenter.username=Ð˜Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ vCenter -label.version=ВерÑÐ¸Ñ -label.virtual.appliance=Виртуальное уÑтройÑтво -label.virtual.appliances=Виртуальное уÑтройÑтва -label.virtual.network=Ð’Ð¸Ñ€Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ð°Ñ Ñеть -label.vlan.id=ID VLAN -label.vlan.range=Диапазон VLAN -label.vm.add=Добавить машины -label.vm.destroy=Уничтожить -label.vm.reboot=Перезагрузить -label.vm.start=ЗапуÑтить -label.vm.stop=ОÑтановить -label.vmfs=VMFS -label.vms=ВМ -label.volume.limits=Пределы томов -label.volume.name=Ð˜Ð¼Ñ Ñ‚Ð¾Ð¼Ð° -label.volume=Том -label.volumes=Томы -label.vsphere.managed=ОбÑлуживание vSphere -label.waiting=Ожидание -label.warn=Внимание -label.wednesday=Среда -label.weekly=Еженедельно -label.welcome.cloud.console=Добро пожаловать на панель ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ -label.welcome=Добро пожаловать -label.yes=Да -label.zone.id=ID зоны -label.zone.step.1.title=Шаг 1\: Выберите Ñеть -label.zone.step.2.title=Step 2\: Добавьте зону -label.zone.step.3.title=Step 3\: Добавьте Ñтенд -label.zone.step.4.title=Step 4\: Добавьте диапазон IP-адреÑов -label.zone.wide=Ð’Ñей зоны -label.zone=Зона - -#Messages -message.acquire.public.ip=ПожалуйÑта, выберите зону, из которой вы хотите приобреÑти новый IP. -message.action.cancel.maintenance.mode=Подтвердите, что вы дейÑтвительно хотите отменить режим обÑлуживаниÑ. -message.action.cancel.maintenance=Узел уÑпешно вышел из режима обÑлуживаниÑ. Этль процеÑÑ Ð¼Ð¾Ð¶ÐµÑ‚ длитьÑÑ Ð½ÐµÑколько минут. -message.action.delete.ISO.for.all.zones=Это ISO, иÑпользуемый вÑеми зонами. Подтвердите, что вы дейÑтвительно хотите удалить его Ñо вÑех зон. -message.action.delete.ISO=Подтвердите, что вы дейÑтвительно хотите удалить Ñтот ISO. -message.action.delete.cluster=Подтвердите, что вы дейÑтвительно хотите удалить Ñтот клаÑтер. -message.action.delete.disk.offering=Подтвердите, что вы дейÑтвительно хотите удалить Ñтот диÑковый реÑурÑ. -message.action.delete.domain=Подтвердите, что вы дейÑтвительно хотите удалить Ñтот домен. -message.action.delete.external.firewall=Подтвердите, что вы дейÑтвительно хотите удалить внешний фаервол. Внимание\: еÑли вы планируете вернутьÑÑ Ðº Ñтому внешнему фаерволу обратно, вам придетÑÑ ÑброÑить информацию об иÑпользовании в уÑтройÑтве. -message.action.delete.external.load.balancer=Подтвердите, что вы дейÑтвительно хотите удалить внешнюю баланÑировку нагрузки. Внимание\: еÑли вы планируете вернутьÑÑ Ðº Ñтой внешней баланÑировке, вам придетÑÑ ÑброÑить информацию об иÑпользовании в уÑтройÑтве. -message.action.delete.ingress.rule=Подтвердите, что вы дейÑтвительно хотите удалить Ñто входное правило. -message.action.delete.network=Подтвердите, что вы дейÑтвительно хотите удалить Ñту Ñеть. -message.action.delete.pod=Подтвердите, что вы дейÑтвительно хотите удалить Ñтот Ñтенд. -message.action.delete.primary.storage=Подтвердите, что вы дейÑтвительно хотите удалить Ñто оÑновное хранилище. -message.action.delete.secondary.storage=Подтвердите, что вы дейÑтвительно хотите удалить Ñто дополнительное хранилище. -message.action.delete.security.group=Подтвердите, что вы дейÑтвительно хотите удалить Ñту группу безопаÑноÑти. -message.action.delete.service.offering=Подтвердите, что вы дейÑтвительно хотите удалить Ñтот Ñлужебный реÑурÑ. -message.action.delete.snapshot=Подтвердите, что вы дейÑтвительно хотите удалить Ñтот Ñнимок. -message.action.delete.template.for.all.zones=Шаблон иÑпользуетÑÑ Ð²Ð¾ вÑех зонах. Подтвердите, что вы хотите удалить его Ñо вÑех зон. -message.action.delete.template=Подтвердите, что вы дейÑтвительно хотите удалить Ñтот шаблон. -message.action.delete.volume=Подтвердите, что вы дейÑтвительно хотите удалить Ñтот том. -message.action.delete.zone=Подтвердите, что вы дейÑтвительно хотите удалить Ñту зону. -message.action.destroy.instance=Подтвердите, что вы дейÑтвительно хотите уничтожить Ñту машину. -message.action.destroy.systemvm=Подтвердите, что вы дейÑтвительно хотите удалить Ñто оÑновное хранилище. -message.action.disable.static.NAT=Подтвердите, что вы дейÑтвительно хотите отключить Ñтатичный NAT. -message.action.enable.maintenance=Узел уÑпешно вошел в режим обÑлуживаниÑ. ДлительноÑть Ñтого процеÑÑа завиÑит от количеÑтва запущенных ВМ в Ñтом узле и обычно равна неÑкольким минутам. -message.action.force.reconnect=Узел уÑпешно переподключилÑÑ. Этот процеÑÑ Ð¼Ð¾Ð¶ÐµÑ‚ длитьÑÑ Ð½ÐµÑколько минут. -message.action.host.enable.maintenance.mode=Включение режима обÑÐ»ÑƒÐ¶Ð¸Ð²Ð°Ð½Ð¸Ñ Ð½Ð° узле приведет к переноÑу запущенных виртуальных машин на другие доÑтупные узлы. -message.action.instance.reset.password=Подтвердите, что вы дейÑтвительно хотите изменить пароль root Ñтой ВМ. -message.action.primarystorage.enable.maintenance.mode=Внимание\: при переходе оÑновного хранилища в режим обÑлуживаниÑ, вÑе ВМ будут оÑтановлены. Хотите продолжить? -message.action.reboot.instance=Подтвердите, что вы дейÑтвительно хотите перезагрузить Ñту машину. -message.action.reboot.systemvm=Подтвердите, что вы дейÑтвительно хотите перезагрузить Ñтот ÑиÑтемный ВМ. -message.action.release.ip=Подтвердите, что вы дейÑтвительно хотите оÑвободить Ñтот IP-адреÑ. -message.action.remove.host=Удаление поÑледнего/единÑтвенного Ñервера в клаÑтере и Ð¿Ð¾Ð²Ñ‚Ð¾Ñ€Ð½Ð°Ñ ÐµÐ³Ð¾ уÑтановка приведет уничтожению рабочего окружениÑ/базы данных на Ñервере и Ñделае гоÑтевые машины непригодными к иÑпользованию. -message.action.restore.instance=Подтвердите, что вы дейÑтвительно хотите воÑÑтановить Ñту машину. -message.action.start.instance=Подтвердите, что вы дейÑтвительно хотите запуÑтить Ñту машину. -message.action.start.router=Подтвердите, что вы дейÑтвительно хотите запуÑтить Ñтот роутер. -message.action.start.systemvm=Подтвердите, что вы дейÑтвительно хотите запуÑтить Ñту ÑиÑтемную ВМ. -message.action.stop.instance=Подтвердите, что вы дейÑтвительно хотите оÑтановить Ñту машину. -message.action.stop.systemvm=Подтвердите, что вы дейÑтвительно хотите оÑтановить Ñту ÑиÑтемную ВМ. -message.action.take.snapshot=Подтвердите, что вы дейÑтвительно хотите получить Ñнимок Ñтого тома. -message.add.cluster.zone=Добавить гипервизора ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ ÐºÐ»Ð°Ñтером Ð´Ð»Ñ Ð·Ð¾Ð½Ñ‹ -message.add.cluster=Добавить гипервизор ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ ÐºÐ»Ð°Ñтером Ð´Ð»Ñ Ð·Ð¾Ð½Ñ‹ , модуль -message.add.disk.offering=ПожалуйÑта, укажите Ñледующие параметры, чтобы добавить новое предложение диÑка -message.add.firewall=Добавить фаервол в зону -message.add.host=Укажите Ñледующие параметры Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ узла. -message.add.ip.range.direct.network=Добавить IP-диапазона Ñети в зоне -message.add.ip.range.to.pod=

    Добавить диапазон IP-адреÑов в Ñтенд\:

    -message.add.ip.range=Добавить диапазон IP-адреÑов в публичную Ñеть зоны -message.add.load.balancer=Добавить баланÑировку нагрузки в зону -message.add.network=Добавить новую Ñеть Ð´Ð»Ñ Ð·Ð¾Ð½Ñ‹\: -message.add.pod=Добавить новый Ñтенд Ð´Ð»Ñ Ð·Ð¾Ð½Ñ‹ -message.add.primary.storage=Добавить оÑновное хранилище Ð´Ð»Ñ Ð·Ð¾Ð½Ñ‹ , Ñтенда -message.add.primary=Укажите Ñледующие параметры Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ оÑновного хранилища -message.add.secondary.storage=Добавить хранилище в зону -message.add.service.offering=Укажите Ñледующие параметры Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ ÑиÑтемного реÑурÑа. -message.add.template=Укажите Ñледующие параметры Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ шаблона -message.add.volume=Укажите Ñледующие параметры Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ тома -message.additional.networks.desc=ПожалуйÑта, выберите дополнительные Ñети, куда вашы Ñервера будут подключены. -message.advanced.mode.desc=Выберите Ñту модель Ñети, еÑли вы хотите включить поддержку VLAN. Эта ÑÐµÑ‚ÐµÐ²Ð°Ñ Ð¼Ð¾Ð´ÐµÐ»ÑŒ обеÑпечивает макÑимальную гибкоÑть в предоÑтавлении админиÑтраторам Ð´Ð»Ñ Ð¿Ñ€ÐµÐ´Ð¾ÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÑŒÑких предложений Ñети, такие как межÑетевой Ñкран, VPN, или поддержка баланÑировки нагрузки, а также позволÑет прÑмое против виртуальных Ñетей. -message.advanced.security.group=Выберите Ñтот параметр, еÑли вы хотите иÑпользовать группы безопаÑноÑти, обеÑпечить изолÑцию Ñервера. -message.advanced.virtual=Выберите Ñтот параметр, еÑли вы хотите иÑпользовать вÑей зоны Ñети VLAN, чтобы обеÑпечить изолÑцию Ñервера. -message.allow.vpn.access=ПожалуйÑта, введите Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸ пароль пользователÑ, который вы хотите добавить Ð´Ð»Ñ VPN-доÑтупа. -message.attach.iso.confirm=ПожалуйÑта, подтвердите, что вы хотите прикрепить ISO в Ñтот Ñервер. -message.attach.volume=ПожалуйÑта, укажите Ñледующие данные, что бы увеличить меÑто. Ð”Ð»Ñ Windows, нужно перезагружать Ñервер -message.basic.mode.desc=Выберите Ñту модель Ñети, еÑли вы *not* хотите, чтобы была Ð»ÑŽÐ±Ð°Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ° VLAN. Ð’Ñем виртуальным машинам, Ñозданные по Ñтой модели Ñети будет назначен IP напрÑмую из Ñети и группы безопаÑноÑти, которые иÑпользуютÑÑ Ð´Ð»Ñ Ð¾Ð±ÐµÑÐ¿ÐµÑ‡ÐµÐ½Ð¸Ñ Ð±ÐµÐ·Ð¾Ð¿Ð°ÑноÑти и Ñегрегации. -message.change.offering.confirm=ПожалуйÑта, подтвердите, что вы хотите изменить Ñлужбу Ñ€Ð°Ð·Ð¼ÐµÑ‰ÐµÐ½Ð¸Ñ Ñтого VM. -message.copy.iso.confirm=ПожалуйÑта, подтвердите, что вы хотите Ñкопировать ISO до -message.copy.template=Копировать шаблон XXX из зоны в -message.create.template.vm=Создать шаблон виртуальной машины -message.create.template.volume=ПожалуйÑта, укажите Ñледующую информацию, прежде чем Ñоздавать шаблон диÑка объемом\: . Создание шаблона может варьироватьÑÑ Ð¾Ñ‚ неÑкольких минут до дольше в завиÑимоÑти от размера тома. -message.delete.account=ПожалуйÑта, подтвердите, что вы хотите удалить Ñтот аккаунт. -message.detach.iso.confirm=ПожалуйÑта, подтвердите, что вы хотите отделить ISO от Ñтого виртуального Ñервера. -message.disable.account=ПожалуйÑта, подтвердите, что вы хотите отключить Ñту учетную запиÑÑŒ. При отключении аккаунта, вÑе пользователи Ð´Ð»Ñ Ñтой учетной запиÑи не будут иметь доÑтуп к Ñвоим реÑурÑам облака. Ð’Ñе виртуальные машины будут немедленно закрыты. -message.disable.vpn.access=ПожалуйÑта, подтвердите, что вы хотите отключить VPN доÑтуп -message.download.ISO=ПожалуйÑта, нажмите 00000 Ñкачать образ -message.download.template=Ðажмите 00000Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ -message.download.volume=Ðажмите 00000 Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ тома -message.edit.confirm=ПожалуйÑта, подтвердите, прежде чем нажать "Сохранить". -message.edit.limits=Укажите пределы Ð´Ð»Ñ Ñ€ÐµÑурÑов. Значение "-1" означает отÑутÑтвие предела Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð»ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ реÑурÑа. -message.enable.account=Подтвердите, что вы дейÑтвительно хотите включить Ñту учётную запиÑÑŒ. -message.enable.vpn.access=Ð¡ÐµÐ¹Ñ‡Ð°Ñ VPN Ð´Ð»Ñ Ñтого IP-aдреÑа выключен. Желаете включить VPN-доÑтуп? -message.enabled.vpn.ip.sec=Ваш IPSec pre-shared ключ -message.enabled.vpn=Ваш VPN доÑтуп в наÑтоÑщее Ð²Ñ€ÐµÐ¼Ñ Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½ и могут быть доÑтупны через IP -message.launch.vm.on.private.network=Хотите запуÑтить ВМ в вашей чаÑтной выделенной Ñети? -message.lock.account=Подтвердите, что вы дейÑтвительно хотите заблокировать Ñту учётную запиÑÑŒ. Ð’Ñе пользователи в таких учётных запиÑÑÑ… потерÑÑŽÑ‚ возможноÑть управлÑть Ñвоими облачными реÑурÑами. Эти реÑурÑÑ‹ оÑтанутÑÑ Ð´Ð¾Ñтупны Ð´Ð»Ñ Ð´Ñ€ÑƒÐ³Ð¸Ñ… учётных запиÑей. -message.migrate.instance.confirm=Подтвердите, что вы дейÑтвительно хотите перенеÑти виртуальную машину. -message.new.user=Введите информацию Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð² учётную запиÑÑŒ. -message.no.network.support.configuration.not.true=Ðи в одной зоне нет групп безопаÑноÑти. ПоÑтому дополнительные Ñетевые возможноÑти недоÑтупны. Перейдите к шагу 5. -message.no.network.support=Выбранный гипервизор (vSphere) не обладает дополнительными Ñетевыми возмодноÑÑ‚Ñми. Перейдите к шагу 5. -message.number.clusters=

    \# of КлаÑтеры

    -message.number.hosts=

    \# of Узлы

    -message.number.pods=

    \# of Стенды

    -message.number.storage=

    \# of Тома оÑновного хранилища

    -message.number.zones=

    \# of Зоны

    -message.remove.vpn.access=Подтвердите, что вы дейÑтвительно хотите удалить доÑтуп к VPN Ð´Ð»Ñ Ñтого пользователÑ. -message.restart.mgmt.server=ПожалуйÑта, перезагрузите Ñервер(Ñ‹) ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð½ÑÑ‚Ð¸Ñ Ð½Ð¾Ð²Ñ‹Ñ… наÑтроек. -message.restart.mgmt.usage.server=ПожалуйÑта, перезагрузите Ñервер Ð´Ð»Ñ Ð²ÑÑ‚ÑƒÐ¿Ð»ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ñ‹Ñ… параметров в Ñилу. -message.security.group.usage=(иÑпользуйте Ctrl-клик, чтобы выбрать вÑе ÑоответÑтвующие группы безопаÑноÑти) -message.snapshot.schedule=Ð’Ñ‹ можете наÑтроить повторÑющиеÑÑ Ñнимоки, Ð²Ñ‹Ð±Ð¸Ñ€Ð°Ñ Ð¸Ð· доÑтупных вариантов ниже и применив политику Ð¿Ñ€ÐµÐ´Ð¿Ð¾Ñ‡Ñ‚ÐµÐ½Ð¸Ñ -message.step.1.continue=Выберите шаблон или ISO Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð¾Ð»Ð¶ÐµÐ½Ð¸Ñ. -message.step.1.desc=ПожалуйÑта, выберите шаблон Ð´Ð»Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ Ñервера. Ð’Ñ‹ можете также выбрать пуÑтой шаблон, из которого образ ISO может быть уÑтановлен на. -message.step.2.continue=Выберите Ñлужебный реÑÑƒÑ€Ñ Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð¾Ð»Ð¶ÐµÐ½Ð¸Ñ. -message.step.2.desc= -message.step.3.continue=Выберите диÑковый реÑÑƒÑ€Ñ Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð¾Ð»Ð¶ÐµÐ½Ð¸Ñ. -message.step.3.desc= -message.step.4.continue=Выберите Ñ…Ð¾Ñ‚Ñ Ð±Ñ‹ одну Ñеть Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð¾Ð»Ð¶ÐµÐ½Ð¸Ñ. -message.step.4.desc=Выберите оÑновную Ñеть, к которой будет подключена машина. -message.update.os.preference=ПожалуйÑта, выберите ОС Ð´Ð»Ñ Ñтого хоÑта. Ð’Ñе виртуальные ÑкземплÑры Ñ Ð°Ð½Ð°Ð»Ð¾Ð³Ð¸Ñ‡Ð½Ñ‹Ð¼Ð¸ предпочтениÑми впервые будет выделено на Ñтот узел, прежде чем выбрать другую. -message.update.ssl=ПожалуйÑта, отправьте новый ÑовмеÑтимый X.509 SSL Ñертификат Ð´Ð»Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ конÑоли виртуальных прокÑи, например\: -message.virtual.network.desc=выделенной виртуальной Ñети Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ¹ учетной запиÑи. Широковещательный домен находитÑÑ Ð²Ð½ÑƒÑ‚Ñ€Ð¸ VLAN и веÑÑŒ внешний доÑтуп к Ñети направлÑетÑÑ Ð¿ÑƒÑ‚ÐµÐ¼ виртуального маршрутизатора. -message.volume.create.template.confirm=Подтвердите, что вы дейÑтвительно хотите Ñоздать шаблон Ñтого тома. Это процеÑÑ Ð¼Ð¾Ð¶ÐµÑ‚ продлитьÑÑ Ð½ÐµÑколько минут в завиÑимоÑти от размера тома. -message.zone.step.1.desc=Выберите тип Ñети Ñтой зоны. -message.zone.step.2.desc=Введите необходимую информацию Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð¹ зоны -message.zone.step.3.desc=Введите необходимую информацию Ð´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ Ñтенда -message.apply.snapshot.policy=Политики Ñтого Ñнимка были уÑпешно обновлены. -message.disable.snapshot.policy=Политики Ñтого Ñнимка были уÑпешно отключены. -message.action.change.service.warning.for.instance=Ð”Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñ‚ÐµÐºÑƒÑ‰ÐµÐ³Ð¾ Ñлужебного реÑурÑа ваша машина должна быть оÑтановлена. -message.action.change.service.warning.for.router=\n -message.action.reset.password.warning=Машина должна быть оÑтановлена Ð´Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ð°Ñ€Ð¾Ð»Ñ -message.action.reset.password.off=Ðа данный момент машина не поддерживает данную функцию - -#Errors -error.login=Ваше имÑ/пароль не Ñовпадает Ñ Ð²Ð°ÑˆÐ¸Ð¼Ð¸ запиÑÑми. -error.menu.select=Ðе удаетÑÑ Ð²Ñ‹Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÑŒ дейÑтвие из-за отÑутÑÑ‚Ð²Ð¸Ñ Ð²Ñ‹Ð±Ñ€Ð°Ð½Ñ‹Ñ… пунктов. -error.mgmt.server.inaccessible=Сервер ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð½ÐµÐ´Ð¾Ñтупна. Попробуйте обратитьÑÑ Ðº нему позже. -error.session.expired=Ваша ÑеÑÑÐ¸Ñ Ð±Ñ‹Ð»Ð° завершена -error.unresolved.internet.name=Ваше интернет-Ð¸Ð¼Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»Ð¸Ñ‚ÑŒ не удалоÑÑŒ - -#resizeVolumes -label.resize.new.size=New Size(GB) -label.action.resize.volume=Resize Volume -label.action.resize.volume.processing=Resizing Volume.... -label.resize.new.offering.id=New Offering -label.resize.shrink.ok=Shrink OK - +# 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=\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u044b +confirm.enable.swift=\u0417\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u0435 \u043d\u0438\u0436\u0435\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438 Swift +error.could.not.enable.zone=\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0437\u043e\u043d\u0443 +error.installWizard.message=\u0427\u0442\u043e-\u0442\u043e \u043d\u0435 \u0442\u0430\u043a. \u0412\u0435\u0440\u043d\u0438\u0442\u0435\u0441\u044c \u043d\u0430\u0437\u0430\u0434 \u0438 \u0438\u0441\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043e\u0448\u0438\u0431\u043a\u0438. +error.invalid.username.password=\u041d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0456\u0439 \u043b\u043e\u0433\u0438\u043d \u0438\u043b\u0438 \u043f\u0430\u0440\u043e\u043b\u044c +error.login=\u0412\u0430\u0448\u0435 \u0438\u043c\u044f/\u043f\u0430\u0440\u043e\u043b\u044c \u043d\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u0435\u0442 \u0441 \u0432\u0430\u0448\u0438\u043c\u0438 \u0437\u0430\u043f\u0438\u0441\u044f\u043c\u0438. +error.menu.select=\u041d\u0435 \u0443\u0434\u0430\u0435\u0442\u0441\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0438\u0437-\u0437\u0430 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u044f \u0432\u044b\u0431\u0440\u0430\u043d\u044b\u0445 \u043f\u0443\u043d\u043a\u0442\u043e\u0432. +error.mgmt.server.inaccessible=\u0421\u0435\u0440\u0432\u0435\u0440 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u043a \u043d\u0435\u043c\u0443 \u043f\u043e\u0437\u0436\u0435. +error.password.not.match=\u041f\u0430\u0440\u043e\u043b\u0438 \u043d\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u044e\u0442 +error.please.specify.physical.network.tags=\u0421\u0435\u0442\u044c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430, \u043f\u043e\u043a\u0430 \u0432\u044b \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0442\u0435\u0433\u0438 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0435\u0442\u0438. +error.session.expired=\u0412\u0430\u0448\u0430 \u0441\u0435\u0441\u0441\u0438\u044f \u0431\u044b\u043b\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0430 +error.something.went.wrong.please.correct.the.following=\u0427\u0442\u043e-\u0442\u043e \u043d\u0435 \u0442\u0430\u043a, \u0438\u0441\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043e\u0448\u0438\u0431\u043a\u0438 +error.unable.to.reach.management.server=\u041d\u0435 \u0443\u0434\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f +error.unresolved.internet.name=\u0412\u0430\u0448\u0435 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u0438\u043c\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c +extractable=\u0418\u0437\u0432\u043b\u0435\u043a\u0430\u0435\u043c\u044b\u0439 +force.delete.domain.warning=\u0412\u043d\u0438\u043c\u0430\u043d\u0438\u0435\: \u041f\u0440\u0438 \u0432\u044b\u0431\u043e\u0440\u0435 \u044d\u0442\u043e\u0433\u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u0442 \u043a \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044e \u0432\u0441\u0435\u0445 \u0434\u043e\u0447\u0435\u0440\u043d\u0438\u0445 \u0434\u043e\u043c\u0435\u043d\u043e\u0432 \u0438 \u0432\u0441\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 \u043d\u0438\u043c\u0438 \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u043e\u0432 \u0438 \u0438\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432. +force.delete=\u041f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c +force.remove.host.warning=\u0412\u043d\u0438\u043c\u0430\u043d\u0438\u0435\: \u041f\u0440\u0438 \u0432\u044b\u0431\u043e\u0440\u0435 \u044d\u0442\u043e\u0439 \u043e\u043f\u0446\u0438\u0438 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0437\u044b\u0432\u0430\u043d CloudStack \u0434\u043b\u044f \u043f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043a\u0438 \u0432\u0441\u0435\u0445 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d, \u043f\u0440\u0435\u0436\u0434\u0435 \u0447\u0435\u043c \u0441\u043d\u0438\u043c\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u0443\u0437\u0435\u043b \u0438\u0437 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430.. +force.remove=\u041f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c +force.stop.instance.warning=\u0412\u043d\u0438\u043c\u0430\u043d\u0438\u0435\: \u041f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f \u0432 \u0441\u0430\u043c\u0443\u044e\u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0442\u0435\u0440\u044f\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u043b\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043d\u0435\u043e\u0436\u0438\u0434\u0430\u043d\u043d\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435/\u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b. +force.stop=\u041f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c +ICMP.code=\u041a\u043e\u0434 ICMP +ICMP.type=\u0422\u0438\u043f ICMP +image.directory=\u041a\u0430\u0442\u0430\u043b\u043e\u0433 \u0441 \u043e\u0431\u0440\u0430\u0437\u0430\u043c\u0438 +inline=\u0412\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 +instances.actions.reboot.label=\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u0443 +label.accept.project.invitation=\u041f\u0440\u0438\u043d\u044f\u0442\u044c \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442 +label.account.and.security.group=\u0410\u043a\u043a\u0430\u0443\u043d\u0442, \u0433\u0440\u0443\u043f\u043f\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 +label.account.id=ID \u0443\u0447\u0451\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438 +label.account.name=\u0418\u043c\u044f \u0443\u0447\u0451\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438 +label.account.specific=\u0421\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430 \u0430\u043a\u043a\u0430\u0443\u043d\u043d\u0442\u0430 +label.accounts=\u0423\u0447\u0451\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 +label.account=\u0423\u0447\u0451\u0442\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c +label.acquire.new.ip=\u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043d\u043e\u0432\u044b\u0439 IP +label.action.attach.disk.processing=\u041f\u0440\u0438\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0438\u0435 \u0434\u0438\u0441\u043a\u0430... +label.action.attach.disk=\u041f\u0440\u0438\u043a\u0440\u0435\u043f\u0438\u0442\u044c \u0434\u0438\u0441\u043a +label.action.attach.iso.processing=\u041f\u0440\u0438\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0438\u0435 ISO... +label.action.attach.iso=\u041f\u0440\u0438\u043a\u0440\u0435\u043f\u0438\u0442\u044c ISO +label.action.cancel.maintenance.mode.processing=\u041e\u0442\u043c\u0435\u043d\u0430 \u0440\u0435\u0436\u0438\u043c\u0430 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f... +label.action.cancel.maintenance.mode=\u041e\u0442\u043c\u0435\u043d\u0438\u0442\u044c \u0440\u0435\u0436\u0438\u043c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f +label.action.change.password=\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043f\u0430\u0440\u043e\u043b\u044c +label.action.change.service.processing=\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0441\u043b\u0443\u0436\u0431\u044b... +label.action.change.service=\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u043b\u0443\u0436\u0431\u0443 +label.action.copy.ISO.processing=\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 ISO... +label.action.copy.ISO=\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c ISO +label.action.copy.template.processing=\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u0430... +label.action.copy.template=\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d +label.action.create.template.from.vm=\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d \u0438\u0437 \u0412\u041c +label.action.create.template.from.volume=\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d \u0438\u0437 \u0442\u043e\u043c\u0430 +label.action.create.template.processing=\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u0430... +label.action.create.template=\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d +label.action.create.vm.processing=\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0412\u041c... +label.action.create.vm=\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0412\u041c +label.action.create.volume.processing=\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0442\u043e\u043c\u0430... +label.action.create.volume=\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0442\u043e\u043c +label.action.delete.account.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0443\u0447\u0451\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438... +label.action.delete.account=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0443\u0447\u0451\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c +label.action.delete.cluster.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430... +label.action.delete.cluster=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043a\u043b\u0430\u0441\u0442\u0435\u0440 +label.action.delete.disk.offering.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0434\u0438\u0441\u043a\u043e\u0432\u043e\u0433\u043e \u0440\u0435\u0441\u0443\u0440\u0441\u0430... +label.action.delete.disk.offering=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0434\u0438\u0441\u043a\u043e\u0432\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.action.delete.domain.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0434\u043e\u043c\u0435\u043d\u0430... +label.action.delete.domain=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0434\u043e\u043c\u0435\u043d +label.action.delete.firewall.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0444\u0430\u0435\u0440\u0432\u043e\u043b\u0430... +label.action.delete.firewall=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0444\u0430\u0435\u0440\u0432\u043e\u043b\u0430 +label.action.delete.ingress.rule.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0432\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u0430... +label.action.delete.ingress.rule=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u0445\u043e\u0434\u043d\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e +label.action.delete.IP.range.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430 IP... +label.action.delete.IP.range=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d IP +label.action.delete.ISO.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 ISO... +label.action.delete.ISO=\u0423\u0434\u0430\u043b\u0438\u0442\u044c ISO +label.action.delete.load.balancer.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438... +label.action.delete.load.balancer=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 +label.action.delete.network.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0441\u0435\u0442\u0438... +label.action.delete.network=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0435\u0442\u044c +label.action.delete.nexusVswitch=\u0423\u0434\u0430\u043b\u0438\u0442\u044c NexusVswitch +label.action.delete.physical.network=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0435\u0442\u0438 +label.action.delete.pod.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0441\u0442\u0435\u043d\u0434\u0430... +label.action.delete.pod=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0442\u0435\u043d\u0434 +label.action.delete.primary.storage.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430... +label.action.delete.primary.storage=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 +label.action.delete.secondary.storage.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430... +label.action.delete.secondary.storage=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 +label.action.delete.security.group.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0433\u0440\u0443\u043f\u043f\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438... +label.action.delete.security.group=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0433\u0440\u0443\u043f\u043f\u0443 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 +label.action.delete.service.offering.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u043e\u0433\u043e \u0440\u0435\u0441\u0443\u0440\u0441\u0430... +label.action.delete.service.offering=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.action.delete.snapshot.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0441\u043d\u0438\u043c\u043a\u0430... +label.action.delete.snapshot=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u043d\u0438\u043c\u043e\u043a +label.action.delete.system.service.offering=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.action.delete.template.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u0430... +label.action.delete.template=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d +label.action.delete.user.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f... +label.action.delete.user=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f +label.action.delete.volume.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0442\u043e\u043c\u0430... +label.action.delete.volume=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0442\u043e\u043c +label.action.delete.zone.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0437\u043e\u043d\u044b... +label.action.delete.zone=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0437\u043e\u043d\u0443 +label.action.destroy.instance.processing=\u0423\u043d\u0438\u0447\u0442\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u0430\u0448\u0438\u043d\u044b... +label.action.destroy.instance=\u0423\u043d\u0438\u0447\u0442\u043e\u0436\u0438\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u0443 +label.action.destroy.systemvm.processing=\u0423\u043d\u0438\u0447\u0442\u043e\u0436\u0435\u043d\u0438\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u0412\u041c... +label.action.destroy.systemvm=\u0423\u043d\u0438\u0447\u0442\u043e\u0436\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0412\u041c +label.action.detach.disk.processing=\u041e\u0442\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0438\u0435 \u0434\u0438\u0441\u043a\u0430... +label.action.detach.disk=\u041e\u0442\u043a\u0440\u0435\u043f\u0438\u0442\u044c \u0434\u0438\u0441\u043a +label.action.detach.iso.processing=\u041e\u0442\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0438\u0435 ISO +label.action.detach.iso=\u041e\u0442\u043a\u0440\u0435\u043f\u0438\u0442\u044c ISO +label.action.disable.account.processing=\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0443\u0447\u0451\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438 +label.action.disable.account=\u0412\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0443\u0447\u0451\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c +label.action.disable.cluster.processing=\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430... +label.action.disable.cluster=\u0412\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043a\u043b\u0430\u0441\u0442\u0435\u0440 +label.action.disable.nexusVswitch=\u041e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c NexusVswitch +label.action.disable.physical.network=\u041e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0441\u0435\u0442\u044c +label.action.disable.pod.processing=\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0441\u0442\u0435\u043d\u0434\u0430. +label.action.disable.pod=\u0412\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0441\u0442\u0435\u043d\u0434 +label.action.disable.static.NAT.processing=\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0441\u0442\u0430\u0442\u0438\u0447\u043d\u043e\u0433\u043e NAT... +label.action.disable.static.NAT=\u0412\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0441\u0442\u0430\u0442\u0438\u0447\u043d\u044b\u0439 NAT +label.action.disable.user.processing=\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f +label.action.disable.user=\u0412\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f +label.action.disable.zone.processing=\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0437\u043e\u043d\u044b... +label.action.disable.zone=\u0412\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0437\u043e\u043d\u0443 +label.action.download.ISO=\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c ISO +label.action.download.template=\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d +label.action.download.volume.processing=\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0442\u043e\u043c\u0430... +label.action.download.volume=\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0442\u043e\u043c +label.action.edit.account=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0443\u0447\u0451\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c +label.action.edit.disk.offering=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0438\u0441\u043a\u043e\u0432\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.action.edit.domain=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u043e\u043c\u0435\u043d +label.action.edit.global.setting=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 +label.action.edit.host=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0443\u0437\u0435\u043b +label.action.edit.instance=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u0443 +label.action.edit.ISO=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c ISO +label.action.edit.network.offering=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.action.edit.network.processing=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0442\u0438... +label.action.edit.network=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u0442\u044c +label.action.edit.pod=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0435\u043d\u0434 +label.action.edit.primary.storage=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 +label.action.edit.resource.limits=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0435\u0434\u0435\u043b\u044b \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 +label.action.edit.service.offering=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.action.edit.template=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d +label.action.edit.user=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f +label.action.edit.zone=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0437\u043e\u043d\u0443 +label.action.enable.account.processing=\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430... +label.action.enable.account=\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0443\u0447\u0451\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c +label.action.enable.cluster.processing=\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430... +label.action.enable.cluster=\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043a\u043b\u0430\u0441\u0442\u0435\u0440 +label.action.enable.maintenance.mode.processing=\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0440\u0435\u0436\u0438\u043c\u0430 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f... +label.action.enable.maintenance.mode=\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0440\u0435\u0436\u0438\u043c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f +label.action.enable.nexusVswitch=\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c NexusVswitch +label.action.enable.physical.network=\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0441\u0435\u0442\u044c +label.action.enable.pod.processing=\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0441\u0442\u0435\u043d\u0434\u0430.. +label.action.enable.pod=\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0441\u0442\u0435\u043d\u0434 +label.action.enable.static.NAT.processing=\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0441\u0442\u0430\u0442\u0438\u0447\u043d\u043e\u0433\u043e NAT.. +label.action.enable.static.NAT=\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0441\u0442\u0430\u0442\u0438\u0447\u043d\u044b\u0439 NAT +label.action.enable.user.processing=\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f... +label.action.enable.user=\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f +label.action.enable.zone.processing=\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0437\u043e\u043d\u044b... +label.action.enable.zone=\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0437\u043e\u043d\u0443 +label.action.force.reconnect.processing=\u041f\u0435\u0440\u0435\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435... +label.action.force.reconnect=\u041f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0435\u0440\u0435\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c +label.action.generate.keys.processing=\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043a\u043b\u044e\u0447\u0435\u0439... +label.action.generate.keys=\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u043b\u044e\u0447\u0438 +label.action.list.nexusVswitch=\u041b\u0438\u0441\u0442 NexusVswitch +label.action.lock.account.processing=\u0411\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0443\u0447\u0451\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438 +label.action.lock.account=\u0417\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0443\u0447\u0451\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c +label.action.manage.cluster.processing=\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f... +label.action.manage.cluster=\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u043c +label.action.migrate.instance.processing=\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u043c\u0430\u0448\u0438\u043d\u044b...... +label.action.migrate.instance=\u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u043c\u0430\u0448\u0438\u043d\u0443 +label.action.migrate.router.processing=\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0440\u043e\u0443\u0442\u0435\u0440\u0430... +label.action.migrate.router=\u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u0440\u043e\u0443\u0442\u0435\u0440 +label.action.migrate.systemvm.processing=\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u0412\u041c... +label.action.migrate.systemvm=\u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0443\u044e \u0412\u041c +label.action.reboot.instance.processing=\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043c\u0430\u0448\u0438\u043d\u044b... +label.action.reboot.instance=\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u0443 +label.action.reboot.router.processing=\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0440\u043e\u0443\u0442\u0435\u0440\u0430... +label.action.reboot.router=\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0440\u043e\u0443\u0442\u0435\u0440 +label.action.reboot.systemvm.processing=\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u0412\u041c +label.action.reboot.systemvm=\u041f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0443\u044e \u0412\u041c +label.action.recurring.snapshot=\u041f\u043e\u0432\u0442\u043e\u0440\u044f\u0435\u043c\u044b\u0435 \u0441\u043d\u0438\u043c\u043a\u0438 +label.action.register.iso=\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f ISO +label.action.register.template=\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u0448\u0430\u0431\u043b\u043e\u043d\u0430 +label.action.release.ip.processing=\u041e\u0441\u0432\u043e\u0431\u043e\u0436\u0434\u0435\u043d\u0438\u0435 IP... +label.action.release.ip=\u041e\u0441\u0432\u043e\u0431\u043e\u0434\u0438\u0442\u044c IP +label.action.remove.host.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0443\u0437\u043b\u0430... +label.action.remove.host=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0443\u0437\u0435\u043b +label.action.reset.password.processing=\u0421\u0431\u0440\u043e\u0441 \u043f\u0430\u0440\u043e\u043b\u044f... +label.action.reset.password=\u0421\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u043f\u0430\u0440\u043e\u043b\u044c +label.action.resize.volume.processing=Resizing Volume.... +label.action.resize.volume=Resize Volume +label.action.resource.limits=\u041f\u0440\u0435\u0434\u0435\u043b\u044b \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 +label.action.restore.instance.processing=\u0412\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043c\u0430\u0448\u0438\u043d\u044b... +label.action.restore.instance=\u0412\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u0443 +label.action.start.instance.processing=\u0417\u0430\u043f\u0443\u0441\u043a \u043c\u0430\u0448\u0438\u043d\u044b... +label.action.start.instance=\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u0443 +label.action.start.router.processing=\u0417\u0430\u043f\u0443\u0441\u043a \u0440\u043e\u0443\u0442\u0435\u0440\u0430 +label.action.start.router=\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0440\u043e\u0443\u0442\u0435\u0440 +label.action.start.systemvm.processing=\u0417\u0430\u043f\u0443\u0441\u043a \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u0412\u041c... +label.action.start.systemvm=\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0443\u044e \u0412\u041c +label.action.stop.instance.processing=\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043c\u0430\u0448\u0438\u043d\u044b... +label.action.stop.instance=\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u0443 +label.action.stop.router.processing=\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0440\u043e\u0443\u0442\u0435\u0440\u0430... +label.action.stop.router=\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0440\u043e\u0443\u0442\u0435\u0440 +label.action.stop.systemvm.processing=\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u0412\u041c... +label.action.stop.systemvm=\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u0412\u041c +label.actions=\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u044f +label.action.take.snapshot.processing=\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u043d\u0438\u043c\u043a\u0430... +label.action.take.snapshot=\u041f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0441\u043d\u0438\u043c\u043e\u043a... +label.action.unmanage.cluster.processing=\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 \u0432 \u043e\u0431\u044b\u0447\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c... +label.action.unmanage.cluster=\u041f\u0435\u0440\u0435\u0432\u0435\u0441\u0442\u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0432 \u043e\u0431\u044b\u0447\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c +label.action.update.OS.preference.processing=\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u041e\u0421... +label.action.update.OS.preference=\u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u041e\u0421 +label.action.update.resource.count.processing=\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432... +label.action.update.resource.count=\u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0441\u0447\u0451\u0442\u0447\u0438\u043a \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 +label.activate.project=\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 +label.active.sessions=\u0410\u043a\u0442\u0438\u0432\u043d\u044b\u0435 \u0441\u0435\u0441\u0441\u0438\u0438 +label.add.accounts.to=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0443\u0447\u0451\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 +label.add.accounts=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u044b +label.add.account.to.project=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0430\u043a\u043a\u0430\u0443\u043d\u0442 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442 +label.add.account=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0430\u043a\u043a\u0430\u0443\u043d\u0442 +label.add.by.cidr=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043a CIDR +label.add.by.group=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043a \u0433\u0440\u0443\u043f\u043f\u0435 +label.add.by=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c +label.add.cluster=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043a\u043b\u0430\u0441\u0442\u0435\u0440 +label.add.compute.offering=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 +label.add.direct.iprange=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u043f\u0440\u044f\u043c\u044b\u0445 IP +label.add.disk.offering=\u041d\u043e\u0432\u044b\u0439 \u0434\u0438\u0441\u043a\u043e\u0432\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.add.domain=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0434\u043e\u043c\u0435\u043d +label.add.egress.rule=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e +label.add.F5.device=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c F5 \u0443\u0441\u0442\u0440\u043e\u0439\u0432\u043e +label.add.firewall=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0444\u0430\u0435\u0440\u0432\u043e\u043b\u0430. +label.add.guest.network=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0433\u043e\u0441\u0442\u0435\u0432\u0443\u044e \u0441\u0435\u0442\u044c +label.add.host=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0443\u0437\u0435\u043b +label.adding.cluster=\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 +label.adding.failed=\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c +label.adding.pod=\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0442\u0435\u043d\u0434\u0430 +label.adding.processing=\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435... +label.add.ingress.rule=\u041d\u043e\u0432\u043e\u0435 \u0432\u0445\u043e\u0434\u043d\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e +label.adding.succeeded=\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e \u0443\u0441\u043f\u0435\u0448\u043d\u043e +label.adding=\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0437\u043e\u043d\u044b +label.adding.user=\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f +label.adding.zone=\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0437\u043e\u043d\u044b +label.add.ip.range=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d IP +label.additional.networks=\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0435\u0442\u0438 +label.add.load.balancer=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0443 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 +label.add.more=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0447\u0442\u043e-\u0442\u043e \u0435\u0449\u0435 +label.add.netScaler.device=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c Netscaler \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e +label.add.network.device=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0435\u0442\u0435\u0432\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e +label.add.network.offering=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.add.network=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0435\u0442\u044c +label.add.new.F5=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u043e\u0432\u044b\u0439 F5 +label.add.new.NetScaler=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u043e\u0432\u044b\u0439 NetScaler +label.add.new.SRX=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u043e\u0432\u044b\u0439 SRX +label.add.physical.network=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0441\u0435\u0442\u044c +label.add.pod=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u0435\u043d\u0434 +label.add.primary.storage=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 +label.add.resources=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 +label.add.rule=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u043e +label.add.secondary.storage=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 +label.add.security.group=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0433\u0440\u0443\u043f\u043f\u0443 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 +label.add.service.offering=\u041d\u043e\u0432\u044b\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.add.SRX.device=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c SRX \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e +label.add.static.nat.rule=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0441\u0442\u0430\u0442\u0438\u0447\u043d\u043e\u0433\u043e NAT +label.add.system.service.offering=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.add.template=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d +label.add.to.group=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u0433\u0440\u0443\u043f\u043f\u0443 +label.add=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c +label.add.user=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f +label.add.vlan=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c VLAN +label.add.vms.to.lb=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0412\u041c \u0432 \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 +label.add.vms=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0412\u041c +label.add.vm=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0412\u041c +label.add.volume=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0442\u043e\u043c +label.add.vpn.user=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f VPN +label.add.zone=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0437\u043e\u043d\u0443 +label.admin.accounts=\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0441\u043a\u0438\u0435 \u0443\u0447\u0451\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 +label.admin=\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 +label.advanced.mode=\u041f\u0440\u043e\u0434\u0432\u0438\u043d\u0443\u0442\u044b\u0439 \u0440\u0435\u0436\u0438\u043c +label.advanced.search=\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u044b\u0439 \u043f\u043e\u0438\u0441\u043a +label.advanced=\u041f\u0440\u043e\u0434\u0432\u0438\u043d\u0443\u0442\u044b\u0439 +label.agent.password=\u041f\u0430\u0440\u043e\u043b\u044c \u0430\u0433\u0435\u043d\u0442\u0430 +label.agent.username=\u0418\u043c\u044f \u0430\u0433\u0435\u043d\u0442\u0430 +label.agree=\u0421\u043e\u0433\u043b\u0430\u0441\u0435\u043d +label.alert=\u0422\u0440\u0435\u0432\u043e\u0433\u0430 +label.algorithm=\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c +label.allocated=\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e +label.allocation.state=\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f +label.api.key=\u041a\u043b\u044e\u0447 API +label.apply=\u041f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c +label.assign.to.load.balancer=\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043c\u0430\u0448\u0438\u043d\u044b \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 +label.assign=\u041f\u0440\u0438\u0441\u0432\u043e\u0438\u0442\u044c +label.associated.network.id=\u0421\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0439 ID \u0441\u0435\u0442\u0438 +label.attached.iso=\u041f\u0440\u0438\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u043d\u044b\u0439 ISO +label.availability=\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u044c +label.availability.zone=\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u044c \u0437\u043e\u043d\u044b +label.available.public.ips=\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 +label.available=\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u043e +label.back=\u041d\u0430\u0437\u0430\u0434 +label.bandwidth=\u041f\u0440\u043e\u043f\u0443\u0441\u043a\u043d\u0430\u044f \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c +label.basic.mode=\u041f\u0440\u043e\u0441\u0442\u043e \u0440\u0435\u0436\u0438\u043c +label.basic=\u041f\u0440\u043e\u0441\u0442\u043e\u0439 +label.bootable=\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c\u044b\u0439 +label.broadcast.domain.range=\u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0448\u0438\u0440\u043e\u043a\u043e\u0432\u0435\u0449\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0434\u043e\u043c\u0435\u043d\u0430 +label.broadcast.domain.type=\u0422\u0438\u043f \u0448\u0438\u0440\u043e\u043a\u043e\u0432\u0435\u0449\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0434\u043e\u043c\u0435\u043d\u0430 +label.by.account=\u041f\u043e \u0443\u0447\u0451\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438 +label.by.availability=\u041f\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 +label.by.domain=\u0414\u043e \u0434\u043e\u043c\u0435\u043d\u0443 +label.by.end.date=\u041f\u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044e +label.by.level=\u041f\u043e \u0443\u0440\u043e\u0432\u043d\u044e +label.by.pod=\u041f\u043e \u0441\u0442\u0435\u043d\u0434\u0443 +label.by.role=\u041f\u043e \u0440\u043e\u043b\u0438 +label.by.start.date=\u041f\u043e \u043d\u0430\u0447\u0430\u043b\u0443 +label.by.state=\u041f\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044e +label.bytes.received=\u0411\u0430\u0439\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d +label.bytes.sent=\u0411\u0430\u0439\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e +label.by.traffic.type=\u041f\u043e \u0442\u0438\u043f\u0443 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 +label.by.type.id=\u041f\u043e \u0442\u0438\u043f\u0443 ID +label.by.type=\u041f\u043e \u0442\u0438\u043f\u0443 +label.by.zone=\u041f\u043e \u0437\u043e\u043d\u0435 +label.cancel=\u041e\u0442\u043c\u0435\u043d\u0430 +label.capacity=\u041c\u043e\u0449\u043d\u043e\u0441\u0442\u044c +label.certificate=\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 +label.change.service.offering=\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.change.value=\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 +label.character=\u0421\u0438\u043c\u0432\u043e\u043b\u043e\u0432 +label.checksum=\u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c MD5 \u0441\u0443\u043c\u043c\u0443 +label.cidr.account=CIDR \u0438\u043b\u0438 \u0443\u0447\u0451\u0442\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c/\u0433\u0440\u0443\u043f\u043f\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 +label.cidr=CIDR +label.cidr.list=CIDR \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430 +label.clean.up=\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u044c +label.clear.list=\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a +label.close=\u0417\u0430\u043a\u0440\u044b\u0442\u044c +label.cloud.console=\u041a\u043e\u043d\u0441\u043e\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0431\u043b\u0430\u043a\u043e\u043c +label.cloud.managed=\u041f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f +label.cluster.name=\u0418\u043c\u044f \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 +label.clusters=\u041a\u043b\u0430\u0441\u0442\u0435\u0440\u044b +label.cluster.type=\u0422\u0438\u043f \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 +label.cluster=\u041a\u043b\u0430\u0441\u0442\u0435\u0440 +label.clvm=CLVM +label.code=\u041a\u043e\u0434 +label.community=\u0421\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u043e +label.compute.and.storage=\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f \u0438 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 +label.compute.offerings=\u0412\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u044c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0439 +label.compute.offering=\u0412\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u044c \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 +label.compute=\u0412\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 +label.configuration=\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f +label.configure=\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c +label.confirmation=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 +label.confirm.password=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435 \u043f\u0430\u0440\u043e\u043b\u044c +label.congratulations=\u041f\u043e\u0437\u0434\u0440\u0430\u0432\u043b\u044f\u0435\u043c\! +label.conserve.mode=\u042d\u043a\u043e\u043d\u043e\u043c\u0438\u0447\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c +label.console.proxy=\u041f\u0440\u043e\u043a\u0441\u0438 +label.continue.basic.install=\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u0443\u044e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 +label.continue=\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c +label.corrections.saved=\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u044b +label.cpu.allocated.for.VMs=\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e \u0426\u041f\u0423 \u0434\u043b\u044f \u0412\u041c +label.cpu.allocated=\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e \u0426\u041f\u0423 +label.CPU.cap=CPU Cap +label.cpu=CPU +label.cpu.mhz=CPU (\u0432 \u041c\u0433\u0446) +label.cpu.utilized=\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 CPU +label.created.by.system=\u0421\u043e\u0437\u0434\u0430\u043d\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 +label.created=\u0421\u043e\u0437\u0434\u0430\u043d\u043e +label.create.project=\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 +label.create.template=\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d +label.cross.zones=\u041e\u0431\u0449\u0438\u0435 \u0434\u043b\u044f \u0437\u043e\u043d +label.custom.disk.size=\u0421\u0432\u043e\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0434\u0438\u0441\u043a\u0430 +label.daily=\u0415\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u043e +label.data.disk.offering=\u0414\u0430\u043d\u043d\u044b\u0435 \u0434\u0438\u0441\u043a\u0430 +label.date=\u0414\u0430\u0442\u0430 +label.day.of.month=\u0414\u0435\u043d\u044c \u043c\u0435\u0441\u044f\u0446\u0430 +label.day.of.week=\u0414\u0435\u043d\u044c \u043d\u0435\u0434\u0435\u043b\u0438 +label.decline.invitation=\u041e\u0442\u043c\u0435\u043d\u0438\u0442\u044c \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u0435 +label.dedicated=\u0412\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 +label.default=\u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e +label.default.use=\u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e +label.default.view=\u041e\u0431\u044b\u0447\u043d\u044b\u0439 \u0432\u0438\u0434 +label.delete.F5=\u0423\u0434\u0430\u043b\u0438\u0442\u044c F5 +label.delete.NetScaler=\u0423\u0434\u0430\u043b\u0438\u0442\u044c NetScaler +label.delete.project=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 +label.delete.SRX=\u0423\u0434\u0430\u043b\u0438\u0442\u044c SRX +label.delete=\u0423\u0434\u0430\u043b\u0438\u0442\u044c +label.delete.vpn.user=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f VPN +label.deleting.failed=\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0443\u0434\u0430\u043b\u0438\u0442\u044c +label.deleting.processing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435... +label.description=\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 +label.destination.physical.network.id=ID \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0435\u0442\u0438 +label.destination.zone=\u0426\u0435\u043b\u0435\u0432\u0430\u044f \u0437\u043e\u043d\u0430 +label.destroy.router=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0440\u043e\u0443\u0442\u0435\u0440 +label.destroy=\u0423\u043d\u0438\u0447\u0442\u043e\u0436\u0438\u0442\u044c +label.detaching.disk=\u041e\u0442\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0438\u0435 \u0434\u0438\u0441\u043a\u0430 +label.details=\u0414\u0435\u0442\u0430\u043b\u0438 +label.device.id=ID \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 +label.devices=\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e +label.dhcp=DHCP +label.DHCP.server.type=\u0422\u0438\u043f \u0441\u0435\u0440\u0432\u0435\u0440\u0430 DHCP +label.direct.ips=\u041f\u0440\u044f\u043c\u044b\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 +label.disabled=\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u043e +label.disable.provider=\u0412\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u043e\u0441\u0442\u0430\u0432\u0449\u0438\u043a\u0430 +label.disable.vpn=\u0412\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c VPN +label.disabling.vpn.access=\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a VPN +label.disk.allocated=\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e \u0434\u0438\u0441\u043a\u043e\u0432\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 +label.disk.offering=\u0414\u0438\u0441\u043a\u043e\u0432\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.disk.size.gb=\u0420\u0430\u0437\u043c\u0435\u0440 \u0434\u0438\u0441\u043a\u0430 (\u0432 \u0413\u0411) +label.disk.size=\u0420\u0430\u0437\u043c\u0435\u0440 \u0434\u0438\u0441\u043a\u0430 +label.disk.total=\u0412\u0441\u0435\u0433\u043e \u0432 \u0434\u0438\u0441\u043a\u0430\u0445 +label.disk.volume=\u0422\u043e\u043c \u0434\u0438\u0441\u043a\u0430 +label.display.name=\u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c\u043e\u0435 \u0438\u043c\u044f +label.display.text=\u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 +label.dns.1=DNS 1 +label.dns.2=DNS 2 +label.domain.admin=\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u0434\u043e\u043c\u0435\u043d\u0430 +label.domain.id=ID \u0434\u043e\u043c\u0435\u043d\u0430 +label.domain.name=\u0418\u043c\u044f \u0434\u043e\u043c\u0435\u043d\u0430 +label.domain.router=\u041c\u0430\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0442\u043e\u0440 +label.domain.suffix=\u0421\u0443\u0444\u0444\u0438\u043a\u0441 \u0434\u043e\u043c\u0435\u043d\u0430 DNS (\u043d\u043f\u0440. xyz.com) +label.domain=\u0414\u043e\u043c\u0435\u043d +label.done=\u0413\u043e\u0442\u043e\u0432\u043e +label.double.quotes.are.not.allowed=\u0414\u0432\u043e\u0439\u043d\u044b\u0435 \u043a\u0430\u0432\u044b\u0447\u043a\u0438 \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u044b +label.download.progress=\u0421\u0442\u0430\u0442\u0443\u0441 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 +label.drag.new.position=\u041f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043d\u0430 \u043d\u043e\u0432\u0443\u044e \u043f\u043e\u0437\u0438\u0446\u0438\u044e +label.edit.lb.rule=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c LB \u043f\u0440\u0430\u0432\u0438\u043b\u0430 +label.edit.network.details=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0435\u0442\u0430\u043b\u0438 \u0441\u0435\u0442\u0438 +label.edit.project.details=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0435\u0442\u0430\u043b\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 +label.edit.traffic.type=\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0442\u0438\u043f \u0442\u0440\u0430\u0444\u0438\u043a\u0430 +label.edit=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c +label.egress.rule=\u0412\u044b\u0445\u043e\u0434\u043d\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e +label.elastic.IP=\u0413\u0438\u0431\u043a\u0438\u0439 IP +label.elastic.LB=\u0413\u0438\u0431\u043a\u0438\u0439 LB +label.elastic=\u0413\u0438\u0431\u043a\u0438\u0439 +label.email=E-mail +label.enable.provider=\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u043e\u0441\u0442\u0430\u0432\u0449\u0438\u043a\u0430 +label.enable.swift=\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c Swift +label.enable.vpn=\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c VPN +label.enabling.vpn.access=\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a VPN +label.enabling.vpn=\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 VPN +label.end.IP=\u041a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 IP +label.endpoint.or.operation=\u041a\u043e\u043d\u0435\u0447\u043d\u0430\u044f \u0442\u043e\u0447\u043a\u0430 \u0438\u043b\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f +label.end.port=\u041a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u043f\u043e\u0440\u0442 +label.end.reserved.system.IP=\u041a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0437\u0430\u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 IP-\u0430\u0434\u0440\u0435\u0441 +label.end.vlan=\u041a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 VLAN +label.enter.token=\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0442\u0430\u043b\u043e\u043d +label.error.code=\u041a\u043e\u0434 \u043e\u0448\u0438\u0431\u043a\u0438 +label.error=\u041e\u0448\u0438\u0431\u043a\u0430 +label.esx.host=\u0423\u0437\u0435\u043b ESX/ESXi +label.example=\u041f\u0440\u0438\u043c\u0435\u0440 +label.f5=F5 +label.failed=\u041d\u0435\u0443\u0434\u0430\u0447\u043d\u043e +label.featured=\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 +label.fetch.latest=\u0412\u044b\u0431\u043e\u0440\u043a\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 +label.filterBy=\u0424\u0438\u043b\u044c\u0442\u0440\u043e\u0432\u0430\u0442\u044c +label.firewall=\u0424\u0430\u0435\u0440\u0432\u043e\u043b +label.first.name=\u0418\u043c\u044f +label.format=\u0424\u043e\u0440\u043c\u0430\u0442 +label.friday=\u041f\u044f\u0442\u043d\u0438\u0446\u0430 +label.full.path=\u041f\u043e\u043b\u043d\u044b\u0439 \u043f\u0443\u0442\u044c +label.full=\u041f\u043e\u043b\u043d\u044b\u0439 +label.gateway=\u0428\u043b\u044e\u0437 +label.general.alerts=\u041e\u0431\u0449\u0438\u0435 \u0442\u0440\u0435\u0432\u043e\u0433\u0438 +label.generating.url=\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 URL +label.go.step.2=\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u0448\u0430\u0433\u0443 2 +label.go.step.3=\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u0448\u0430\u0433\u0443 3 +label.go.step.4=\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u0448\u0430\u0433\u0443 4 +label.go.step.5=\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u0448\u0430\u0433\u0443 5 +label.group.optional=\u0413\u0440\u0443\u043f\u043f\u0430 (\u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e) +label.group=\u0413\u0440\u0443\u043f\u043f\u0430 +label.guest.cidr=\u0413\u043e\u0441\u0442\u0435\u0432\u043e\u0439 CIDR +label.guest.end.ip=\u041a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0433\u043e\u0441\u0442\u0435\u0432\u043e\u0439 IP. +label.guest.gateway=\u0428\u043b\u044e\u0437 +label.guest.ip.range=\u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d IP-\u0430\u0434\u0440\u0435\u0441\u043e\u0432 +label.guest.ip=\u0413\u043e\u0441\u0442\u0435\u0432\u044b\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 +label.guest.netmask=\u0413\u043e\u0441\u0442\u0435\u0432\u0430\u044f \u0441\u0435\u0442\u0435\u0432\u0430\u044f \u043c\u0430\u0441\u043a\u0430 +label.guest.networks=\u0413\u043e\u0441\u0442\u0435\u0432\u044b\u0435 \u0441\u0435\u0442\u0438 +label.guest.start.ip=\u041d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0439 \u0433\u043e\u0441\u0442\u0435\u0432\u043e\u0439 IP +label.guest.traffic=\u0413\u043e\u0441\u0442\u0435\u0432\u043e\u0439 \u0442\u0440\u0430\u0444\u0438\u043a +label.guest.type=\u0422\u0438\u043f \u0433\u043e\u0441\u0442\u044f +label.guest=\u0413\u043e\u0441\u0442\u044c +label.ha.enabled=HA \u0432\u043a\u043b\u044e\u0447\u0435\u043d +label.help=\u041f\u043e\u043c\u043e\u0449\u044c +label.hide.ingress.rule=\u0421\u043a\u0440\u044b\u0442\u044c \u0432\u0445\u043e\u0434\u043d\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e +label.hints=\u041f\u043e\u0434\u0441\u043a\u0430\u0437\u043a\u0438 +label.host.alerts=\u0422\u0440\u0435\u0432\u043e\u0433\u0438 \u0443\u0437\u043b\u0430 +label.host.MAC=MAC \u0443\u0437\u043b\u0430 +label.host.name=\u0418\u043c\u044f \u0443\u0437\u043b\u0430 +label.hosts=\u0423\u0437\u043b\u044b +label.host.tags=\u041c\u0435\u0442\u043a\u0438 \u0443\u0437\u043b\u0430 +label.host=\u0423\u0437\u0435\u043b +label.hourly=\u0427\u0430\u0441\u043e\u0432\u0430\u044f +label.hypervisor.capabilities=\u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440\u0430 +label.hypervisor.type=\u0422\u0438\u043f \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440\u0430 +label.hypervisor=\u0413\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440 +label.hypervisor.version=\u0412\u0435\u0440\u0441\u0438\u044f \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440\u0430 +label.id=ID +label.info=\u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f +label.ingress.rule=\u0412\u043d\u0443\u0442\u0440\u0438\u043d\u0435\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e +label.initiated.by=\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c +label.installWizard.addClusterIntro.subtitle=\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 "\u041a\u043b\u0430\u0441\u0442\u0435\u0440"? +label.installWizard.addClusterIntro.title=\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u043a\u043b\u0430\u0441\u0442\u0435\u0440 +label.installWizard.addHostIntro.subtitle=\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 "\u0423\u0437\u0435\u043b"? +label.installWizard.addHostIntro.title=\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0443\u0437\u0435\u043b +label.installWizard.addPodIntro.subtitle=\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 "\u0421\u0442\u0435\u043d\u0434"? +label.installWizard.addPodIntro.title=\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0441\u0442\u0435\u043d\u0434 +label.installWizard.addPrimaryStorageIntro.subtitle=\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 "\u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435"? +label.installWizard.addPrimaryStorageIntro.title=\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 +label.installWizard.addSecondaryStorageIntro.subtitle=\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 "\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435"? +label.installWizard.addSecondaryStorageIntro.title=\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0434\u043e\u043f\u043e\u043b\u044c\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435. +label.installWizard.addZoneIntro.subtitle=\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 "\u0417\u043e\u043d\u0430"? +label.installWizard.addZoneIntro.title=\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0437\u043e\u043d\u0443 +label.installWizard.addZone.title=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0437\u043e\u043d\u0443 +label.installWizard.click.launch=\u041a\u043b\u0438\u043a\u043d\u0438\u0442\u0435 \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 +label.installWizard.subtitle=\u042d\u0442\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442 \u0432\u0430\u0448 CloudStack. +label.installWizard.title=\u0417\u0434\u0440\u0430\u0432\u0441\u0442\u0432\u0443\u0439\u0442\u0435 \u0438 \u0434\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c \u0432 CloudStack\! +label.instance.limits=\u041f\u0440\u0435\u0434\u0435\u043b\u044b \u043c\u0430\u0448\u0438\u043d\u044b +label.instance.name=\u0418\u043c\u044f \u043c\u0430\u0448\u0438\u043d\u044b +label.instances=\u041c\u0430\u0448\u0438\u043d\u044b +label.instance=\u041c\u0430\u0448\u0438\u043d\u0430 +label.internal.dns.1=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 DNS 1 +label.internal.dns.2=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 DNS 2 +label.internal.name=\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0435 \u0438\u043c\u044f +label.interval.type=\u0422\u0438\u043f \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430 +label.introduction.to.cloudstack=\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 CloudStack +label.invalid.integer=\u041d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0435 \u0446\u0435\u043b\u043e\u0435 \u0447\u0438\u0441\u043b\u043e +label.invalid.number=\u041d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e +label.invitations=\u041f\u0440\u0438\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u044f +label.invited.accounts=\u041f\u0440\u0438\u0433\u043b\u0430\u0448\u0451\u043d\u043d\u044b\u0435 \u0443\u0447\u0435\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 +label.invite.to=\u041f\u0440\u0438\u0433\u043b\u0430\u0441\u0438\u0442\u044c +label.invite=\u041f\u0440\u0438\u0433\u043b\u0430\u0441\u0438\u0442\u044c +label.ip.address=IP-\u0430\u0434\u0440\u0435\u0441 +label.ipaddress=IP-\u0430\u0434\u0440\u0435\u0441 +label.ip.allocations=\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f IP +label.ip=IP +label.ip.limits=\u041f\u0440\u0435\u0434\u0435\u043b\u044b \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0445 IP +label.ip.or.fqdn=IP \u0438\u043b\u0438 FQDN +label.ip.ranges=\u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u044b IP +label.ip.range=\u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d IP +label.ips=IP +label.iscsi=iSCSI +label.is.default=\u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e +label.iso.boot=\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 ISO +label.iso=ISO +label.isolated.networks=\u0418\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0441\u0435\u0442\u0438 +label.isolation.method=\u041c\u0435\u0442\u043e\u0434 \u0438\u0437\u043e\u043b\u044f\u0446\u0438\u0438 +label.isolation.mode=\u0420\u0435\u0436\u0438\u043c \u0438\u0437\u043e\u043b\u044f\u0446\u0438\u0438 +label.is.redundant.router=\u0420\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0439 +label.is.shared=\u043e\u0431\u0449\u0438\u0435 +label.is.system=\u0415\u0441\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u0430 +label.item.listing=\u0421\u043f\u0438\u0441\u043e\u043a \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 +label.keep=\u0425\u0440\u0430\u043d\u0438\u0442\u044c +label.keyboard.type=\u0422\u0438\u043f \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b +label.key=\u041a\u043b\u044e\u0447 +label.kvm.traffic.label=\u041c\u0435\u0442\u043a\u0430 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 KVM +label.label=\u041c\u0435\u0442\u043a\u0430 +label.lang.chinese=\u041a\u0438\u0442\u0430\u0439\u0441\u043a\u0438\u0439 (\u0443\u043f\u0440\u043e\u0449\u0451\u043d\u043d\u044b\u0439) +label.lang.english=\u0410\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438\u0439 +label.lang.japanese=\u042f\u043f\u043e\u043d\u0441\u043a\u0438\u0439 +label.lang.korean=\u043a\u043e\u0440\u0435\u0439\u0441\u043a\u0438\u0439 +label.lang.spanish=\u0418\u0441\u043f\u0430\u043d\u0441\u043a\u0438\u0439 +label.last.disconnected=\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 +label.last.name=\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0438\u043c\u044f +label.latest.events=\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0438 \u0441\u043e\u0431\u044b\u0442\u0438\u044f +label.launch=\u0417\u0430\u043f\u0443\u0441\u043a +label.launch.vm=\u0417\u0430\u043f\u0443\u0441\u043a \u0412\u041c +label.launch.zone=\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0437\u043e\u043d\u0443 +label.LB.isolation=\u0418\u0437\u043e\u043b\u044f\u0446\u0438\u044f LB +label.least.connections=Least connections +label.level=\u0423\u0440\u043e\u0432\u0435\u043d\u044c +label.linklocal.ip=\u041b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 IP \u0430\u0434\u0440\u0435\u0441 +label.load.balancer=\u0411\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0430 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 +label.load.balancing.policies=\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 +label.load.balancing=\u0411\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0430 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 +label.loading=\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 +label.local.storage=\u041b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 +label.local=\u041b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 +label.login=\u0412\u0445\u043e\u0434 +label.logout=\u0412\u044b\u0445\u043e\u0434 +label.lun=LUN +label.LUN.number=LUN \# +label.make.project.owner=\u0421\u0434\u0435\u043b\u0430\u0442\u044c \u0430\u043a\u043a\u0430\u0443\u043d\u0442 \u0432\u043b\u0430\u0434\u0435\u043b\u044c\u0446\u0435\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0430 +label.management.ips=\u041f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f IP \u0430\u0434\u0440\u0435\u0441\u0441\u0430\u043c\u0438 +label.management=\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 +label.manage.resources=\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u0430\u043c\u0438 +label.manage=\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 +label.max.guest.limit=\u041f\u0440\u0435\u0434\u0435\u043b \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0433\u043e\u0441\u0442\u0435\u0439 +label.maximum=\u041c\u0430\u043a\u0441\u0438\u043c\u0443\u043c +label.max.networks=\u041c\u0430\u043a\u0441\u0438\u043c\u0443\u043c \u0441\u0435\u0442\u0435\u0439 +label.max.public.ips=\u041c\u0430\u043a\u0441. \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0445 IP +label.max.snapshots=\u041c\u0430\u043a\u0441. \u0441\u043d\u0438\u043c\u043a\u043e\u0432 +label.max.templates=\u041c\u0430\u043a\u0441. \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 +label.max.vms=\u041c\u0430\u043a\u0441. \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u0412\u041c +label.max.volumes=\u041c\u0430\u043a\u0441. \u0442\u043e\u043c\u043e\u0432 +label.may.continue=\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c. +label.memory.allocated=\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e \u043f\u0430\u043c\u044f\u0442\u0438 +label.memory.mb=\u041f\u0430\u043c\u044f\u0442\u044c (\u0432 \u041c\u0411) +label.memory.total=\u0412\u0441\u0435\u0433\u043e \u043f\u0430\u043c\u044f\u0442\u0438 +label.memory=\u041f\u0430\u043c\u044f\u0442\u044c +label.memory.used=\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 +label.menu.accounts=\u0423\u0447\u0451\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 +label.menu.alerts=\u0422\u0440\u0435\u0432\u043e\u0433\u0438 +label.menu.all.accounts=\u0412\u0441\u0435 \u0443\u0447\u0451\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 +label.menu.all.instances=\u0412\u0441\u0435 \u043c\u0430\u0448\u0438\u043d\u044b +label.menu.community.isos=ISO-\u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0430 +label.menu.community.templates=\u0428\u0430\u0431\u043b\u043e\u043d\u044b \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0430 +label.menu.configuration=\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f +label.menu.dashboard=\u0413\u043b\u0430\u0432\u043d\u0430\u044f +label.menu.destroyed.instances=\u0423\u043d\u0438\u0447\u0442\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b +label.menu.disk.offerings=\u041f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0434\u0438\u0441\u043a\u043e\u0432 +label.menu.domains=\u0414\u043e\u043c\u0435\u043d\u044b +label.menu.events=\u0421\u043e\u0431\u044b\u0442\u0438\u044f +label.menu.featured.isos=\u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u043c\u044b\u0435 ISO +label.menu.featured.templates=\u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u043c\u044b\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u044b +label.menu.global.settings=\u0413\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 +label.menu.infrastructure=\u0418\u043d\u0444\u043e\u0440\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 +label.menu.instances=\u041c\u0430\u0448\u0438\u043d\u044b +label.menu.ipaddresses=IP-\u0430\u0434\u0440\u0435\u0441\u0430 +label.menu.isos=ISO +label.menu.my.accounts=\u041c\u043e\u0438 \u0443\u0447\u0451\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 +label.menu.my.instances=\u041c\u043e\u0438 \u043c\u0430\u0448\u0438\u043d\u044b +label.menu.my.isos=\u041c\u043e\u0438 ISO +label.menu.my.templates=\u041c\u043e\u0438 \u0448\u0430\u0431\u043b\u043e\u043d\u044b +label.menu.network.offerings=\u041f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u0435\u0442\u0438 +label.menu.network=\u0421\u0435\u0442\u044c +label.menu.physical.resources=\u0424\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b +label.menu.running.instances=\u0417\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b +label.menu.security.groups=\u0413\u0440\u0443\u043f\u043f\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 +label.menu.service.offerings=\u0423\u0441\u043b\u0443\u0433\u0438 +label.menu.snapshots=\u0421\u043d\u0438\u043c\u043a\u0438 +label.menu.stopped.instances=\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b +label.menu.storage=\u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 +label.menu.system.service.offerings=\u0421\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b +label.menu.system=\u0421\u0438\u0441\u0442\u0435\u043c\u0430 +label.menu.system.vms=\u0421\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0412\u041c +label.menu.templates=\u0428\u0430\u0431\u043b\u043e\u043d\u044b +label.menu.virtual.appliances=\u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 +label.menu.virtual.resources=\u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b +label.menu.volumes=\u0417\u043d\u0430\u0447\u0435\u043d\u0438\u044f +label.migrate.instance.to.host=\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u043c\u0430\u0448\u0438\u043d\u044b \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439 \u0443\u0437\u0435\u043b +label.migrate.instance.to.ps=\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u043c\u0430\u0448\u0438\u043d\u044b \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 +label.migrate.instance.to=\u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u043c\u0430\u0448\u0438\u043d\u0443 \u0432 +label.migrate.router.to=\u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u0440\u043e\u0443\u0442\u0435\u0440 \u0432 +label.migrate.systemvm.to=\u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0443\u044e \u0412\u041c \u0432 +label.migrate.volume=\u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u0442\u043e\u043c \u0432 \u0434\u0440\u0443\u0433\u043e\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 +label.minimum=\u041c\u0438\u043d\u0438\u043c\u0443\u043c +label.minute.past.hour=\u041c\u0438\u043d\u0443\u0442\u0430 +label.monday=\u041f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a +label.monthly=\u041a\u0430\u0436\u0434\u044b\u0439 \u043c\u0435\u0441\u044f\u0446 +label.more.templates=\u0411\u043e\u043b\u044c\u0448\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 +label.move.down.row=\u041f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043d\u0430 \u043e\u0434\u043d\u0443 \u0441\u0442\u0440\u043e\u043a\u0443 \u043d\u0438\u0436\u0435 +label.move.to.top=\u041f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043d\u0430 \u0441\u0430\u043c\u044b\u0439 \u0432\u0435\u0440\u0445 +label.move.up.row=\u041f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043d\u0430 \u043e\u0434\u043d\u0443 \u0441\u0442\u0440\u043e\u043a\u0443 \u0432\u044b\u0448\u0435 +label.my.account=\u041c\u043e\u044f \u0443\u0447\u0451\u0442\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c +label.my.network=\u041c\u043e\u044f \u0441\u0435\u0442\u044c +label.my.templates=\u041c\u043e\u0438 \u0448\u0430\u0431\u043b\u043e\u043d\u044b +label.name.optional=\u0418\u043c\u044f (\u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e) +label.name=\u0418\u043c\u044f +label.nat.port.range=NAT \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u043f\u043e\u0440\u0442\u043e\u0432 +label.netmask=\u0421\u0435\u0442\u0435\u0432\u0430\u044f \u043c\u0430\u0441\u043a\u0430 +label.netScaler=NetScaler +label.network.desc=\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0441\u0435\u0442\u0438 +label.network.device.type=\u0422\u0438\u043f \u0441\u0435\u0442\u0435\u0432\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 +label.network.device=\u0421\u0435\u0442\u0435\u0432\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e +label.network.domain.text=\u0422\u0435\u043a\u0441\u0442 \u0434\u043e\u043c\u0435\u043d\u0430 \u0441\u0435\u0442\u0438 +label.network.domain=\u0414\u043e\u043c\u0435\u043d \u0441\u0435\u0442\u0438 +label.network.id=ID \u0441\u0435\u0442\u0438 +label.networking.and.security=\u0421\u0435\u0442\u044c \u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c +label.network.label.display.for.blank.value=\u0418\u0441\u043f. \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0448\u043b\u044e\u0437 +label.network.name=\u0418\u043c\u044f \u0441\u0435\u0442\u0438 +label.network.offering.display.text=\u0441\u0435\u0442\u044c, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0443\u044e \u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0442\u0435\u043a\u0441\u0442\u0430 +label.network.offering.id=\u0441\u0435\u0442\u044c, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0443\u044e ID +label.network.offering.name=\u0441\u0435\u0442\u044c, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0443\u044e \u0418\u043c\u044f +label.network.offering=\u0421\u0435\u0442\u0435\u0432\u044b\u0435 \u0443\u0441\u043b\u0443\u0433\u0438 +label.network.rate=\u0421\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0441\u0435\u0442\u0438 +label.network.read=\u041f\u0440\u043e\u0447\u0438\u0442\u0430\u043d\u043e \u0447\u0435\u0440\u0435\u0437 \u0441\u0435\u0442\u044c +label.network.service.providers=\u041f\u043e\u0441\u0442\u0430\u0432\u0449\u0438\u043a\u0438 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0441\u043b\u0443\u0436\u0431 +label.networks=\u0421\u0435\u0442\u0438 +label.network.type=\u0422\u0438\u043f \u0441\u0435\u0442\u0438 +label.network=\u0421\u0435\u0442\u044c +label.network.write=\u0417\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0447\u0435\u0440\u0435\u0437 \u0441\u0435\u0442\u044c +label.new.password=\u041d\u043e\u0432\u044b\u0439 \u043f\u0430\u0440\u043e\u043b\u044c +label.new.project=\u041d\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 +label.new=\u0421\u043e\u0437\u0434\u0430\u0442\u044c +label.new.vm=\u041d\u043e\u0432\u0430\u044f \u0412\u041c +label.next=\u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 +label.nexusVswitch=Nexus Vswitch +label.nfs=NFS +label.nfs.server=\u0421\u0435\u0440\u0432\u0435\u0440 NFS +label.nfs.storage=\u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 NFS +label.nic.adapter.type=\u0422\u0438\u043f \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u043a\u0430\u0440\u0442\u044b (NIC) +label.nics=\u0421\u0435\u0442\u0435\u0432\u044b\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 (NIC) +label.no.actions=\u041d\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 +label.no.alerts=\u0422\u0440\u0435\u0432\u043e\u0433 \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043e +label.no.data=\u041d\u0435\u0442 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u043f\u043e\u043a\u0430\u0437\u0430 +label.no.errors=\u041e\u0448\u0438\u0431\u043e\u043a \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043e +label.no.isos=\u041d\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 ISO +label.no.items=\u041d\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 +label.none=\u041d\u0435\u0442 +label.no.security.groups=\u041d\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u0433\u0440\u0443\u043f\u043f \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c +label.not.found=\u041d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u043e +label.no.thanks=\u041d\u0435\u0442, \u0441\u043f\u0430\u0441\u0438\u0431\u043e +label.notifications=\u041e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u044f +label.no=\u041d\u0435\u0442 +label.number.of.clusters=\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u0432 +label.number.of.hosts=\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0443\u0437\u043b\u043e\u0432 +label.number.of.pods=\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u0442\u0435\u043d\u0434\u043e\u0432 +label.number.of.system.vms=\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d +label.number.of.virtual.routers=\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0442\u043e\u0440\u043e\u0432 +label.number.of.zones=\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u043e\u043d +label.num.cpu.cores=\u041a\u043e\u043b. CPU +label.numretries=\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u043f\u044b\u0442\u043e\u043a +label.ocfs2=OCFS2 +label.offer.ha=\u041f\u0440\u0435\u0434\u043e\u0441\u0442. HA +label.ok=OK +label.optional=\u041d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e +label.order=\u041e\u0447\u0435\u0440\u0435\u0434\u044c +label.os.preference=\u041f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u041e\u0421 +label.os.type=\u0422\u0438\u043f \u041e\u0421 +label.owned.public.ips=\u0421\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 +label.owner.account=\u0423\u0447\u0451\u0442\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u0432\u043b\u0430\u0434\u0435\u043b\u044c\u0446\u0430 +label.owner.domain=\u0414\u043e\u043c\u0435\u043d \u0432\u043b\u0430\u0434\u0435\u043b\u044c\u0446\u0430 +label.parent.domain=\u0420\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 \u0434\u043e\u043c\u0435\u043d +label.password.enabled=\u041f\u0430\u0440\u043e\u043b\u044c \u0432\u043a\u043b\u044e\u0447\u0435\u043d +label.password=\u041f\u0430\u0440\u043e\u043b\u044c +label.path=\u041f\u0443\u0442\u044c +label.physical.network.ID=ID \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0435\u0442\u0438 +label.physical.network=\u0424\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u0435\u0442\u0438 +label.PING.CIFS.password=\u041f\u0430\u0440\u043e\u043b\u044c PING CIFS +label.PING.CIFS.username=\u0418\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f PING CIFS +label.PING.dir=\u041a\u0430\u0442\u0430\u043b\u043e\u0433 PING +label.PING.storage.IP=IP \u0430\u0434\u0440\u0435\u0441 PING-\u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 +label.please.specify.netscaler.info=\u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 NetScaler +label.please.wait=\u041f\u043e\u0434\u043e\u0436\u0434\u0438\u0442\u0435 +label.pod.name=\u0418\u043c\u044f \u0441\u0442\u0435\u043d\u0434\u0430 +label.pods=\u0421\u0442\u0435\u043d\u0434\u044b +label.pod=\u0421\u0442\u0435\u043d\u0434 +label.port.forwarding.policies=\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u043f\u0440\u043e\u0431\u0440\u043e\u0441\u0430 \u043f\u043e\u0440\u0442\u043e\u0432 +label.port.forwarding=\u041f\u0440\u043e\u0431\u0440\u043e\u0441 \u043f\u043e\u0440\u0442\u043e\u0432 +label.port.range=\u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u043f\u043e\u0440\u0442\u043e\u0432 +label.PreSetup=\u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 +label.previous=\u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0439 +label.prev=\u041f\u0440\u0435\u0434\u044b\u0434\u0443\u0448\u0438\u0439 +label.primary.allocated=\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 +label.primary.network=\u041e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u0441\u0435\u0442\u044c +label.primary.storage.count=\u041f\u0435\u0440\u0432\u0438\u0447\u043d\u044b\u0439 \u0430\u0440\u0445\u0438\u0432 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f +label.primary.storage=\u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 +label.primary.used=\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 +label.private.interface=\u0427\u0430\u0441\u0442\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 +label.private.ip.range=\u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0447\u0430\u0441\u0442\u043d\u044b\u0445 IP +label.private.ips=\u0427\u0430\u0441\u0442\u043d\u044b\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 +label.private.ip=\u0427\u0430\u0441\u0442\u043d\u044b\u0439 IP-\u0430\u0434\u0440\u0435\u0441 +label.privatekey=\u0427\u0430\u0441\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 PKCS\#8 +label.private.network=\u0427\u0430\u0441\u0442\u043d\u0430\u044f \u0441\u0435\u0442\u044c +label.private.port=\u0427\u0430\u0441\u0442\u043d\u044b\u0439 \u043f\u043e\u0440\u0442 +label.private.zone=\u0427\u0430\u0441\u0442\u043d\u0430\u044f \u0437\u043e\u043d\u0430 +label.project.dashboard=\u041f\u0430\u043d\u0435\u043b\u044c \u043f\u0440\u043e\u0435\u043a\u0442\u0430 +label.project.id=ID \u043f\u0440\u043e\u0435\u043a\u0442\u0430 +label.project.invite=\u041f\u0440\u0438\u0433\u043b\u0430\u0441\u0438\u0442\u044c \u0432 \u043f\u0440\u043e\u0435\u043a\u0442 +label.project.name=\u0418\u043c\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u0430 +label.projects=\u041f\u0440\u043e\u0435\u043a\u0442\u044b +label.project=\u041f\u0440\u043e\u0435\u043a\u0442 +label.project.view=\u041f\u0440\u043e\u0435\u043a\u0442\u044b +label.protocol=\u041f\u0440\u043e\u0442\u043e\u043a\u043e\u043b +label.providers=\u041f\u043e\u0441\u0442\u0430\u0432\u0449\u0438\u043a\u0438 +label.public.interface=\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 +label.public.ips=\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 +label.public.ip=\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 IP-\u0430\u0434\u0440\u0435\u0441 +label.public.network=\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u0430\u044f \u0441\u0435\u0442\u044c +label.public.port=\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u043f\u043e\u0440\u0442 +label.public.traffic=\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u0442\u0440\u0430\u0444\u0438\u043a +label.public=\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 +label.public.zone=\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u0430\u044f \u0437\u043e\u043d\u0430 +label.purpose=\u041d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 +label.Pxe.server.type=\u0422\u0438\u043f \u0441\u0435\u0440\u0432\u0435\u0440\u0430 PXE +label.reboot=\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c +label.recent.errors=\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u043e\u0448\u0438\u0431\u043a\u0438 +label.redundant.router.capability=\u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0433\u043e \u0440\u043e\u0443\u0442\u0435\u0440\u0430 +label.redundant.router=\u0420\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0439 \u0440\u043e\u0443\u0442\u0435\u0440 +label.redundant.state=\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0440\u0435\u0437\u0435\u0440\u0432\u0430 +label.refresh=\u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c +label.related=\u0421\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0439 +label.remind.later=\u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0434\u0438\u0442\u044c \u043f\u043e\u0437\u0436\u0435 +label.remove.egress.rule=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e +label.remove.from.load.balancer=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u0443 \u0441 \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 +label.remove.ingress.rule=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u0445\u043e\u0434\u043d\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e +label.remove.ip.range=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d IP +label.remove.pf=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u043f\u0440\u043e\u0431\u0440\u043e\u0441\u0430 \u043f\u043e\u0440\u0442\u0430 +label.remove.project.account=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0443\u0447\u0435\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c \u043f\u0440\u043e\u0435\u043a\u0442\u0430 +label.remove.rule=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u043e +label.remove.static.nat.rule=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u043e \u0441\u0442\u0430\u0442\u0438\u0447\u043d\u043e\u0433\u043e NAT +label.remove.vm.from.lb=\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0412\u041c \u0441 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 +label.removing=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 +label.removing.user=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f +label.required=\u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f +label.reserved.system.gateway=\u0417\u0430\u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0448\u043b\u044e\u0437 +label.reserved.system.ip=\u0417\u0430\u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 IP +label.reserved.system.netmask=\u0417\u0430\u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0430\u044f \u043c\u0430\u0441\u043a\u0430 +label.resize.new.offering.id=New Offering +label.resize.new.size=New Size(GB) +label.resize.shrink.ok=Shrink OK +label.resource.limits=\u041f\u0440\u0435\u0434\u0435\u043b\u044b \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 +label.resource.state=\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 +label.resources=\u0420\u0435\u0441\u0443\u0440\u0441\u044b +label.resource=\u0420\u0435\u0441\u0443\u0440\u0441 +label.restart.network=\u041f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u0435\u0442\u044c +label.restart.required=\u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a +label.review=\u041e\u0431\u0437\u043e\u0440 +label.revoke.project.invite=\u041e\u0442\u043e\u0437\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u0435 +label.role=\u0420\u043e\u043b\u044c +label.root.disk.controller=\u041a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0433\u043e \u0434\u0438\u0441\u043a\u0430 +label.root.disk.offering=\u0420\u0435\u0441\u0443\u0440\u0441 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0433\u043e \u0434\u0438\u0441\u043a\u0430 +label.round.robin=Round-robin +label.rules=\u041f\u0440\u0430\u0432\u0438\u043b\u0430 +label.running.vms=\u0417\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0435 \u0412\u041c +label.s3.secret_key=\u0421\u0435\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 +label.saturday=\u0421\u0443\u0431\u0431\u043e\u0442\u0430 +label.save.and.continue=\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0438 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c +label.save=\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c +label.saving.processing=\u0421\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435... +label.scope=\u041e\u0445\u0432\u0430\u0442 +label.search=\u041f\u043e\u0438\u0441\u043a +label.secondary.storage.count=\u0412\u0442\u043e\u0440\u0438\u0447\u043d\u044b\u0439 \u0430\u0440\u0445\u0438\u0432 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f +label.secondary.storage=\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 +label.secondary.storage.vm=\u0412\u0442\u043e\u0440\u0438\u0447\u043d\u044b\u0439 \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 +label.secondary.used=\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 +label.secret.key=\u0421\u0435\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u043a\u043b\u044e\u0447 +label.security.group.name=\u0418\u043c\u044f \u0433\u0440\u0443\u043f\u043f\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 +label.security.groups.enabled=\u0413\u0440\u0443\u043f\u043f\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u044b +label.security.groups=\u0413\u0440\u0443\u043f\u043f\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 +label.security.group=\u0413\u0440\u0443\u043f\u043f\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 +label.select.a.template=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0448\u0430\u0431\u043b\u043e\u043d +label.select.a.zone=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0437\u043e\u043d\u0443 +label.select.instance.to.attach.volume.to=\u0412\u044b\u0431\u0438\u0440\u0438\u0442\u0435 \u0441\u0435\u0440\u0432\u0435\u0440 \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0431\u044c\u0435\u043c\u0430 +label.select.instance=\u0412\u044b\u0431\u0438\u0440\u0438\u0442\u0435 \u0441\u0435\u0440\u0432\u0435\u0440 +label.select.iso.or.template=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 ISO \u0438\u043b\u0438 \u0448\u0430\u0431\u043b\u043e\u043d +label.select.offering=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 +label.select.project=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u043f\u0440\u043e\u0435\u043a\u0442 +label.select=\u0412\u044b\u0431\u0440\u0430\u0442\u044c +label.select-view=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0432\u0438\u0434 +label.select.vm.for.static.nat=\u0412\u044b\u0431\u043e\u0440 VM \u0434\u043b\u044f NAT +label.sent=\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e +label.server=\u0421\u0435\u0440\u0432\u0435\u0440 +label.service.capabilities=\u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0441\u043b\u0443\u0436\u0431\u044b +label.service.offering=\u0421\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.session.expired=\u0412\u0440\u0435\u043c\u044f \u0441\u0435\u0441\u0441\u0438\u0438 \u0432\u044b\u0448\u043b\u043e +label.setup.network=\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0441\u0435\u0442\u0438 +label.setup=\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 +label.set.up.zone.type=\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0442\u0438\u043f \u0437\u043e\u043d\u044b +label.setup.zone=\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u043e\u043d\u044b +label.SharedMountPoint=\u041e\u0442\u043a\u0440\u044b\u0442\u0430\u044f\u0422\u043e\u0447\u043a\u0430\u0414\u043e\u0441\u0442\u0443\u043f\u0430 +label.shared=\u041e\u0431\u0449\u0438\u0439 +label.show.ingress.rule=\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0432\u0445\u043e\u0434\u043d\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e +label.shutdown.provider=\u041e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u043e\u0441\u0442\u0430\u0432\u0449\u0438\u043a\u0430 +label.size=\u0420\u0430\u0437\u043c\u0435\u0440 +label.skip.guide=\u042f \u0443\u0436\u0435 \u0432\u0435\u043b\u0438\u043a\u0438\u0439 \u043c\u0430\u0441\u0442\u0435\u0440 CloudStack, \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u044d\u0442\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e +label.snapshot.limits=\u041f\u0440\u0435\u0434\u0435\u043b\u044b \u0441\u043d\u0438\u043c\u043a\u043e\u0432 +label.snapshot.name=\u0418\u043c\u044f \u0441\u043d\u0438\u043c\u043a\u0430 +label.snapshot.schedule=\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u0435\u043c\u044b\u0445 \u0441\u043d\u0438\u043c\u043a\u043e\u0432 +label.snapshots=\u0421\u043d\u0438\u043c\u043a\u0438 +label.snapshot.s=\u0421\u043d\u0438\u043c\u043e\u043a/\u0441\u043d\u0438\u043c\u043a\u0438 +label.snapshot=\u0421\u043d\u0438\u043c\u043e\u043a +label.source.nat=Source NAT +label.source=\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a +label.specify.IP.ranges=\u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d IP-\u0430\u0434\u0440\u0435\u0441\u043e\u0432 +label.specify.vlan=\u0423\u043a\u0430\u0436\u0438\u0442\u0435 VLAN +label.SR.name = SR Name-Label +label.srx=SRX +label.start.IP=\u041d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0439 IP +label.start.port=\u041d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043e\u0440\u0442 +label.start.reserved.system.IP=\u041d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0439 \u0437\u0430\u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 IP-\u0430\u0434\u0440\u0435\u0441 +label.start.vlan=\u041d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0439 VLAN +label.state=\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 +label.static.nat.enabled=\u0421\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 NAT \u0432\u043a\u043b\u044e\u0447\u0435\u043d +label.static.nat.to=\u0421\u0442\u0430\u0442\u0438\u0447\u043d\u044b\u0439 NAT \u043a +label.static.nat=\u0421\u0442\u0430\u0442\u0438\u0447\u043d\u044b\u0439 NAT +label.static.nat.vm.details=\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 NAT \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d +label.statistics=\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 +label.status=\u0421\u0442\u0430\u0442\u0443\u0441 +label.step.1.title=\u0428\u0430\u0433 1\: \u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0448\u0430\u0431\u043b\u043e\u043d +label.step.1=\u0428\u0430\u0433 1 +label.step.2.title=\u0428\u0430\u0433 2\: \u0421\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.step.2=\u0428\u0430\u0433 2 +label.step.3.title=\u0428\u0430\u0433 3\: \u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0434\u0438\u0441\u043a\u043e\u0432\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.step.3=\u0428\u0430\u0433 3 +label.step.4.title=Step 4\: \u0421\u0435\u0442\u044c +label.step.4=\u0428\u0430\u0433 4 +label.step.5.title=Step 5\: \u041e\u0431\u0437\u043e\u0440 +label.step.5=\u0428\u0430\u0433 5 +label.stickiness=\u041b\u0438\u043f\u043a\u0438\u0439 +label.sticky.cookie-name=Cookie \u0438\u043c\u044f +label.sticky.domain=\u0414\u043e\u043c\u0435\u043d +label.sticky.expire=\u0418\u0441\u0442\u0435\u043a\u0430\u0435\u0442 +label.sticky.holdtime=\u0432\u0440\u0435\u043c\u044f \u0443\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f +label.sticky.indirect=\u041a\u043e\u0441\u0432\u0435\u043d\u043d\u044b\u0439 +label.sticky.length=\u0414\u043b\u0438\u043d\u0430 +label.sticky.mode=\u0420\u0435\u0436\u0438\u043c +label.sticky.nocache=\u041d\u0435\u0442 \u043a\u044d\u0448\u0430 +label.sticky.postonly=\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0442\u043e\u043b\u044c\u043a\u043e +label.sticky.prefix=\u041f\u0440\u0435\u0444\u0438\u043a\u0441 +label.sticky.request-learn=\u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u0435. +label.sticky.tablesize=\u0420\u0430\u0437\u043c\u0435\u0440 \u0442\u0430\u0431\u043b\u0438\u0446\u044b +label.stopped.vms=\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u0412\u041c +label.stop=\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c +label.storage.tags=\u041c\u0435\u0442\u043a\u0438 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 +label.storage.traffic=\u0422\u0440\u0430\u0444\u0438\u043a \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 +label.storage.type=\u0422\u0438\u043f \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 +label.storage=\u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 +label.subdomain.access=\u0414\u043e\u0441\u0442\u0443\u043f \u043a \u043f\u043e\u0434\u0434\u043e\u043c\u0435\u043d\u0443 +label.submitted.by=[\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043e\: ] +label.submit=\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u0442\u044c +label.succeeded=\u0423\u0441\u043f\u0435\u0448\u043d\u043e +label.sunday=\u0412\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435 +label.supported.services=\u041f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0435 \u0441\u043b\u0443\u0436\u0431\u044b +label.supported.source.NAT.type=\u041f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0435 \u0442\u0438\u043f\u044b NAT-\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430 +label.suspend.project=\u041f\u0440\u0438\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 +label.system.capacity=\u041c\u043e\u0449\u043d\u043e\u0441\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u044b +label.system.offering=\u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f +label.system.service.offering=\u0421\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 +label.system.vms=\u0421\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0412\u041c +label.system.vm.type=\u0422\u0438\u043f \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u0412\u041c +label.system.vm=\u0421\u0438\u0441\u0442\u0435\u043c\u043d\u0430\u044f \u0412\u041c +label.system.wide.capacity=\u041e\u0431\u0449\u0435\u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u0430 +label.tagged=\u0421 \u043c\u0435\u0442\u043a\u043e\u0439 +label.tags=\u041c\u0435\u0442\u043a\u0438 +label.target.iqn=\u0426\u0435\u043b\u0435\u0432\u043e\u0439 IQN +label.task.completed=\u0417\u0430\u0434\u0430\u0447\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0430 +label.template.limits=\u041f\u0440\u0435\u0434\u0435\u043b\u044b \u0448\u0430\u0431\u043b\u043e\u043d\u0430 +label.template=\u0428\u0430\u0431\u043b\u043e\u043d +label.TFTP.dir=\u041a\u0430\u0442\u0430\u043b\u043e\u0433 TFTP +label.theme.default=\u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430\u044f \u0442\u0435\u043c\u0430 +label.theme.grey=\u0421\u0435\u0440\u0430\u044f \u0442\u0435\u043c\u0430 +label.theme.lightblue=\u0413\u043e\u043b\u0443\u0431\u0430\u044f \u0442\u0435\u043c\u0430 +label.thursday=\u0427\u0435\u0442\u0432\u0435\u0440\u0433 +label.timeout.in.second = \u0412\u0440\u0435\u043c\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 (\u0441\u0435\u043a.) +label.timeout=\u0412\u0440\u0435\u043c\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f +label.time=\u0412\u0440\u0435\u043c\u044f +label.time.zone=\u0427\u0430\u0441\u043e\u0432\u043e\u0439 \u043f\u043e\u044f\u0441 +label.timezone=\u0427\u0430\u0441\u043e\u0432\u043e\u0439 \u043f\u043e\u044f\u0441 +label.token=\u0422\u0430\u043b\u043e\u043d +label.total.cpu=\u0412\u0441\u0435\u0433\u043e CPU +label.total.CPU=\u0412\u0441\u0435\u0433\u043e CPU +label.total.hosts=\u0412\u0441\u0435\u0433\u043e \u0443\u0437\u043b\u043e\u0432 +label.total.memory=\u0412\u0441\u0435\u0433\u043e \u043f\u0430\u043c\u044f\u0442\u0438 +label.total.of.ip=\u0412\u0441\u0435\u0433\u043e IP-\u0430\u0434\u0440\u0435\u0441\u043e\u0432 +label.total.of.vm=\u0412\u0441\u0435\u0433\u043e \u0412\u041c +label.total.storage=\u0412\u0441\u0435\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449 +label.total.vms=\u0412\u0441\u0435\u0433\u043e \u0412\u041c +label.traffic.label=\u0422\u0440\u0430\u0444\u0438\u043a +label.traffic.types=\u0422\u0438\u043f\u044b \u0442\u0440\u0430\u0444\u0438\u043a\u0430 +label.traffic.type=\u0422\u0438\u043f \u0442\u0440\u0430\u0444\u0438\u043a\u0430 +label.tuesday=\u0412\u0442\u043e\u0440\u043d\u0438\u043a +label.type.id=ID \u0442\u0438\u043f\u0430 +label.type=\u0422\u0438\u043f +label.unavailable=\u041d\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e +label.unlimited=\u0411\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u043e +label.untagged=\u0411\u0435\u0437 \u043c\u0435\u0442\u043a\u0438 +label.update.project.resources=\u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043f\u0440\u043e\u0435\u043a\u0442\u0430 +label.update.ssl.cert= \u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b SSL +label.update.ssl= \u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b SSL +label.updating=\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 +label.upload=\u0417\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c +label.upload.volume=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043e\u0431\u044a\u0435\u043c +label.url=URL +label.usage.interface=\u0418\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f +label.used=\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043e +label.username=\u0418\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f +label.users=\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 +label.user=\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c +label.value=\u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 +label.vcdcname=\u0418\u043c\u044f vCenter DC +label.vcenter.cluster=\u041a\u043b\u0430\u0441\u0442\u0435\u0440 vCenter +label.vcenter.datacenter=\u0426\u041e\u0414 vCenter +label.vcenter.datastore=\u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 vCenter +label.vcenter.host=\u0423\u0437\u0435\u043b vCenter +label.vcenter.password=\u041f\u0430\u0440\u043e\u043b\u044c vCenter +label.vcenter.username=\u0418\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f vCenter +label.vcipaddress=vCenter IP \u0410\u0434\u0440\u0435\u0441\u0441 +label.version=\u0412\u0435\u0440\u0441\u0438\u044f +label.view.all=\u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432\u0441\u0451 +label.view.console=\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043a\u043e\u043d\u0441\u043e\u043b\u044c +label.viewing=\u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 +label.view.more=\u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435 +label.view=\u0412\u0438\u0434 +label.virtual.appliances=\u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 +label.virtual.appliance=\u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e +label.virtual.machines=\u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b +label.virtual.network=\u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0435\u0442\u044c +label.virtual.routers=\u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u043e\u0443\u0442\u0435\u0440 +label.virtual.router=\u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u043e\u0443\u0442\u0435\u0440 +label.vlan.id=ID VLAN +label.vlan.range=\u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d VLAN +label.vlan=VLAN +label.vm.add=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u044b +label.vm.destroy=\u0423\u043d\u0438\u0447\u0442\u043e\u0436\u0438\u0442\u044c +label.vm.display.name=\u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c\u043e\u0435 \u0438\u043c\u044f \u0412\u041c +label.VMFS.datastore=\u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 VMFS +label.vmfs=VMFS +label.vm.name=\u0418\u043c\u044f VM +label.vm.reboot=\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c +label.vmsnapshot.type=\u0422\u0438\u043f +label.vm.start=\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c +label.vm.state=\u0421\u0442\u0430\u0442\u0443\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 +label.vm.stop=\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c +label.vms=\u0412\u041c +label.vmware.traffic.label=\u041c\u0435\u0442\u043a\u0430 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 VMware +label.volgroup=\u0413\u0440\u0443\u043f\u043f\u0430 \u0442\u043e\u043c\u0430 +label.volume.limits=\u041f\u0440\u0435\u0434\u0435\u043b\u044b \u0442\u043e\u043c\u043e\u0432 +label.volume.name=\u0418\u043c\u044f \u0442\u043e\u043c\u0430 +label.volumes=\u0417\u043d\u0430\u0447\u0435\u043d\u0438\u044f +label.volume=\u0422\u043e\u043c +label.vpn=VPN +label.vsmctrlvlanid=\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 VLAN ID +label.vsmpktvlanid=\u041f\u0430\u043a\u0435\u0442 VLAN ID +label.vsmstoragevlanid=\u0425\u0440\u0430\u043d\u0435\u043d\u0438\u0435 VLAN ID +label.vsphere.managed=\u041e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0435 vSphere +label.waiting=\u041e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 +label.warn=\u0412\u043d\u0438\u043c\u0430\u043d\u0438\u0435 +label.wednesday=\u0421\u0440\u0435\u0434\u0430 +label.weekly=\u0415\u0436\u0435\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u043e +label.welcome.cloud.console=\u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u043f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f +label.welcome=\u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c +label.what.is.cloudstack=\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 CloudStack? +label.xen.traffic.label=\u041c\u0435\u0442\u043a\u0430 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 XenServer +label.yes=\u0414\u0430 +label.zone.details=\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0437\u043e\u043d\u044b +label.zone.id=ID \u0437\u043e\u043d\u044b +label.zone.name=\u0418\u043c\u044f \u0437\u043e\u043d\u044b +label.zone.step.1.title=\u0428\u0430\u0433 1\: \u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0441\u0435\u0442\u044c +label.zone.step.2.title=Step 2\: \u0414\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u0437\u043e\u043d\u0443 +label.zone.step.3.title=Step 3\: \u0414\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u0441\u0442\u0435\u043d\u0434 +label.zone.step.4.title=Step 4\: \u0414\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d IP-\u0430\u0434\u0440\u0435\u0441\u043e\u0432 +label.zones=\u0417\u043e\u043d\u044b +label.zone.type=\u0422\u0438\u043f \u0437\u043e\u043d\u044b +label.zone=\u0417\u043e\u043d\u0430 +label.zone.wide=\u0412\u0441\u0435\u0439 \u0437\u043e\u043d\u044b +managed.state=\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f +message.acquire.new.ip=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c "\u0431\u0435\u043b\u044b\u0439" IP \u0434\u043b\u044f \u044d\u0442\u043e\u0439 \u0441\u0435\u0442\u0438. +message.acquire.public.ip=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0437\u043e\u043d\u0443, \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0440\u0438\u043e\u0431\u0440\u0435\u0441\u0442\u0438 \u043d\u043e\u0432\u044b\u0439 IP. +message.action.cancel.maintenance.mode=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0442\u043c\u0435\u043d\u0438\u0442\u044c \u0440\u0435\u0436\u0438\u043c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f. +message.action.cancel.maintenance=\u0423\u0437\u0435\u043b \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0432\u044b\u0448\u0435\u043b \u0438\u0437 \u0440\u0435\u0436\u0438\u043c\u0430 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f. \u042d\u0442\u043b\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043c\u043e\u0436\u0435\u0442 \u0434\u043b\u0438\u0442\u044c\u0441\u044f \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0438\u043d\u0443\u0442. +message.action.change.service.warning.for.instance=\u0414\u043b\u044f \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u043e\u0433\u043e \u0440\u0435\u0441\u0443\u0440\u0441\u0430 \u0432\u0430\u0448\u0430 \u043c\u0430\u0448\u0438\u043d\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0430. +message.action.change.service.warning.for.router=\n +message.action.delete.cluster=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u043a\u043b\u0430\u0441\u0442\u0435\u0440. +message.action.delete.disk.offering=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0434\u0438\u0441\u043a\u043e\u0432\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441. +message.action.delete.domain=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0434\u043e\u043c\u0435\u043d. +message.action.delete.external.firewall=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0444\u0430\u0435\u0440\u0432\u043e\u043b. \u0412\u043d\u0438\u043c\u0430\u043d\u0438\u0435\: \u0435\u0441\u043b\u0438 \u0432\u044b \u043f\u043b\u0430\u043d\u0438\u0440\u0443\u0435\u0442\u0435 \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u044d\u0442\u043e\u043c\u0443 \u0432\u043d\u0435\u0448\u043d\u0435\u043c\u0443 \u0444\u0430\u0435\u0440\u0432\u043e\u043b\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e, \u0432\u0430\u043c \u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u0441\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e\u0431 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u0432 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435. +message.action.delete.external.load.balancer=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0432\u043d\u0435\u0448\u043d\u044e\u044e \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0443 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438. \u0412\u043d\u0438\u043c\u0430\u043d\u0438\u0435\: \u0435\u0441\u043b\u0438 \u0432\u044b \u043f\u043b\u0430\u043d\u0438\u0440\u0443\u0435\u0442\u0435 \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u044d\u0442\u043e\u0439 \u0432\u043d\u0435\u0448\u043d\u0435\u0439 \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0435, \u0432\u0430\u043c \u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u0441\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e\u0431 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u0432 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435. +message.action.delete.ingress.rule=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e \u0432\u0445\u043e\u0434\u043d\u043e\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043e. +message.action.delete.ISO.for.all.zones=\u042d\u0442\u043e ISO, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0439 \u0432\u0441\u0435\u043c\u0438 \u0437\u043e\u043d\u0430\u043c\u0438. \u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0435\u0433\u043e \u0441\u043e \u0432\u0441\u0435\u0445 \u0437\u043e\u043d. +message.action.delete.ISO=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 ISO. +message.action.delete.network=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u0443 \u0441\u0435\u0442\u044c. +message.action.delete.nexusVswitch=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e nexusVswitch. +message.action.delete.physical.network=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0441\u0435\u0442\u044c +message.action.delete.pod=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0441\u0442\u0435\u043d\u0434. +message.action.delete.primary.storage=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435. +message.action.delete.secondary.storage=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435. +message.action.delete.security.group=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u0443 \u0433\u0440\u0443\u043f\u043f\u0443 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438. +message.action.delete.service.offering=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441. +message.action.delete.snapshot=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0441\u043d\u0438\u043c\u043e\u043a. +message.action.delete.system.service.offering=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0440\u0435\u0441\u0443\u0440\u0441 \u0434\u043b\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0441\u043b\u0443\u0436\u0431. +message.action.delete.template.for.all.zones=\u0428\u0430\u0431\u043b\u043e\u043d \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432\u043e \u0432\u0441\u0435\u0445 \u0437\u043e\u043d\u0430\u0445. \u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0435\u0433\u043e \u0441\u043e \u0432\u0441\u0435\u0445 \u0437\u043e\u043d. +message.action.delete.template=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0448\u0430\u0431\u043b\u043e\u043d. +message.action.delete.volume=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0442\u043e\u043c. +message.action.delete.zone=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u0443 \u0437\u043e\u043d\u0443. +message.action.destroy.instance=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u043d\u0438\u0447\u0442\u043e\u0436\u0438\u0442\u044c \u044d\u0442\u0443 \u043c\u0430\u0448\u0438\u043d\u0443. +message.action.destroy.systemvm=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435. +message.action.disable.cluster=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u043a\u043b\u0430\u0441\u0442\u0435\u0440. +message.action.disable.nexusVswitch=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u0443 nexusVswitch. +message.action.disable.physical.network=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u0443 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0441\u0435\u0442\u044c. +message.action.disable.pod=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u0443 \u0437\u043e\u043d\u0443. +message.action.disable.static.NAT=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0441\u0442\u0430\u0442\u0438\u0447\u043d\u044b\u0439 NAT. +message.action.disable.zone=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u0443 \u0437\u043e\u043d\u0443 +message.action.download.iso=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u044d\u0442\u043e\u0442 ISO. +message.action.download.template=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0448\u0430\u0431\u043b\u043e\u043d. +message.action.enable.cluster=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u043a\u043b\u0430\u0441\u0442\u0435\u0440. +message.action.enable.maintenance=\u0423\u0437\u0435\u043b \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0432\u043e\u0448\u0435\u043b \u0432 \u0440\u0435\u0436\u0438\u043c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f. \u0414\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0412\u041c \u0432 \u044d\u0442\u043e\u043c \u0443\u0437\u043b\u0435 \u0438 \u043e\u0431\u044b\u0447\u043d\u043e \u0440\u0430\u0432\u043d\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c \u043c\u0438\u043d\u0443\u0442\u0430\u043c. +message.action.enable.nexusVswitch=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u043e nexusVswitch. +message.action.enable.physical.network=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u0443 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0441\u0435\u0442\u044c. +message.action.enable.pod=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0441\u0442\u0435\u043d\u0434. +message.action.enable.zone=\u041f\u043e\u0442\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u0443 \u0437\u043e\u043d\u0443 +message.action.force.reconnect=\u0423\u0437\u0435\u043b \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043f\u0435\u0440\u0435\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u043b\u0441\u044f. \u042d\u0442\u043e\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043c\u043e\u0436\u0435\u0442 \u0434\u043b\u0438\u0442\u044c\u0441\u044f \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0438\u043d\u0443\u0442. +message.action.host.enable.maintenance.mode=\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0440\u0435\u0436\u0438\u043c\u0430 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u043d\u0430 \u0443\u0437\u043b\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u0442 \u043a \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0443 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d \u043d\u0430 \u0434\u0440\u0443\u0433\u0438\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0443\u0437\u043b\u044b. +message.action.instance.reset.password=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043f\u0430\u0440\u043e\u043b\u044c root \u044d\u0442\u043e\u0439 \u0412\u041c. +message.action.manage.cluster=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0435\u0440\u0435\u0432\u0435\u0441\u0442\u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0432 \u0440\u0435\u0436\u0438\u043c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f. +message.action.primarystorage.enable.maintenance.mode=\u0412\u043d\u0438\u043c\u0430\u043d\u0438\u0435\: \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f, \u0432\u0441\u0435 \u0412\u041c \u0431\u0443\u0434\u0443\u0442 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b. \u0425\u043e\u0442\u0438\u0442\u0435 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c? +message.action.reboot.instance=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u044d\u0442\u0443 \u043c\u0430\u0448\u0438\u043d\u0443. +message.action.reboot.router=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0440\u043e\u0443\u0442\u0435\u0440. +message.action.reboot.systemvm=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0412\u041c. +message.action.release.ip=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0441\u0432\u043e\u0431\u043e\u0434\u0438\u0442\u044c \u044d\u0442\u043e\u0442 IP-\u0430\u0434\u0440\u0435\u0441. +message.action.remove.host=\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e/\u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u0430\u044f \u0435\u0433\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u0442 \u0443\u043d\u0438\u0447\u0442\u043e\u0436\u0435\u043d\u0438\u044e \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f/\u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0438 \u0441\u0434\u0435\u043b\u0430\u0435 \u0433\u043e\u0441\u0442\u0435\u0432\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b \u043d\u0435\u043f\u0440\u0438\u0433\u043e\u0434\u043d\u044b\u043c\u0438 \u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044e. +message.action.reset.password.off=\u041d\u0430 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u043c\u0430\u0448\u0438\u043d\u0430 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0434\u0430\u043d\u043d\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e +message.action.reset.password.warning=\u041c\u0430\u0448\u0438\u043d\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0430 \u0434\u043b\u044f \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043f\u0430\u0440\u043e\u043b\u044f +message.action.restore.instance=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u044d\u0442\u0443 \u043c\u0430\u0448\u0438\u043d\u0443. +message.action.start.instance=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u044d\u0442\u0443 \u043c\u0430\u0448\u0438\u043d\u0443. +message.action.start.router=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0440\u043e\u0443\u0442\u0435\u0440. +message.action.start.systemvm=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u044d\u0442\u0443 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0443\u044e \u0412\u041c. +message.action.stop.instance=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u044d\u0442\u0443 \u043c\u0430\u0448\u0438\u043d\u0443. +message.action.stop.router=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0440\u043e\u0443\u0442\u0435\u0440. +message.action.stop.systemvm=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u044d\u0442\u0443 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u0443\u044e \u0412\u041c. +message.action.take.snapshot=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0441\u043d\u0438\u043c\u043e\u043a \u044d\u0442\u043e\u0433\u043e \u0442\u043e\u043c\u0430. +message.action.unmanage.cluster=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0435\u0440\u0435\u0432\u0435\u0441\u0442\u0438 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0432 \u043e\u0431\u044b\u0447\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c. +message.activate.project=\u0412\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u043f\u0440\u043e\u0435\u043a\u0442? +message.add.cluster=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u043c \u0434\u043b\u044f \u0437\u043e\u043d\u044b , \u043c\u043e\u0434\u0443\u043b\u044c +message.add.cluster.zone=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u043c \u0434\u043b\u044f \u0437\u043e\u043d\u044b +message.add.disk.offering=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, \u0447\u0442\u043e\u0431\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u043e\u0432\u043e\u0435 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u0438\u0441\u043a\u0430 +message.add.domain=\u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u043f\u043e\u0434\u0434\u043e\u043c\u0435\u043d, \u0433\u0434\u0435 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0432\u0430\u0448 \u0434\u043e\u043c\u0435\u043d +message.add.firewall=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0444\u0430\u0435\u0440\u0432\u043e\u043b \u0432 \u0437\u043e\u043d\u0443 +message.add.guest.network=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0433\u043e\u0441\u0442\u0435\u0432\u0443\u044e \u0441\u0435\u0442\u044c +message.add.host=\u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u0443\u0437\u043b\u0430. +message.adding.host=\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0443\u0437\u043b\u0430 +message.adding.Netscaler.device=\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 NetScaler +message.adding.Netscaler.provider=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c Netscaler +message.add.ip.range.direct.network=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c IP-\u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430 \u0441\u0435\u0442\u0438 \u0432 \u0437\u043e\u043d\u0435 +message.add.ip.range.to.pod=

    \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d IP-\u0430\u0434\u0440\u0435\u0441\u043e\u0432 \u0432 \u0441\u0442\u0435\u043d\u0434\:

    +message.add.ip.range=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d IP-\u0430\u0434\u0440\u0435\u0441\u043e\u0432 \u0432 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u0437\u043e\u043d\u044b +message.additional.networks.desc=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0435\u0442\u0438, \u043a\u0443\u0434\u0430 \u0432\u0430\u0448\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0431\u0443\u0434\u0443\u0442 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u044b. +message.add.load.balancer=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0443 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u0437\u043e\u043d\u0443 +message.add.load.balancer.under.ip=\u041f\u0440\u0430\u0432\u0438\u043b\u043e \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0431\u044b\u043b \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u0432 IP\: +message.add.network=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u043e\u0432\u0443\u044e \u0441\u0435\u0442\u044c \u0434\u043b\u044f \u0437\u043e\u043d\u044b\: +message.add.pod.during.zone.creation=\u041a\u0430\u0436\u0434\u0430\u044f \u0437\u043e\u043d\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043e\u0434\u0438\u043d \u0438\u043b\u0438 \u0431\u043e\u043b\u0435\u0435 \u0441\u0442\u0435\u043d\u0434\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u0441\u0435\u0439\u0447\u0430\u0441 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u0435 \u043f\u0435\u0440\u0432\u044b\u043c. \u0421\u0442\u0435\u043d\u0434 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0443\u0437\u043b\u044b \u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u044b \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u043c \u0448\u0430\u0433\u0435. \u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u044b\u0445 \u0430\u0434\u0440\u0435\u0441\u043e\u0432 IP \u0434\u043b\u044f \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0439 \u0441\u0435\u0442\u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f. \u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u044b\u0445 IP \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u043c \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u0437\u043e\u043d\u044b \u043e\u0431\u043b\u0430\u043a\u0430. +message.add.pod=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u0441\u0442\u0435\u043d\u0434 \u0434\u043b\u044f \u0437\u043e\u043d\u044b +message.add.primary.storage=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0434\u043b\u044f \u0437\u043e\u043d\u044b , \u0441\u0442\u0435\u043d\u0434\u0430 +message.add.primary=\u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 +message.add.secondary.storage=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0432 \u0437\u043e\u043d\u0443 +message.add.service.offering=\u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u0440\u0435\u0441\u0443\u0440\u0441\u0430. +message.add.system.service.offering=\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u0440\u0435\u0441\u0443\u0440\u0441\u0430 \u0434\u043b\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0441\u043b\u0443\u0436\u0431. +message.add.template=\u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u0448\u0430\u0431\u043b\u043e\u043d\u0430 +message.add.volume=\u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u0442\u043e\u043c\u0430 +message.advanced.mode.desc=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u044d\u0442\u0443 \u043c\u043e\u0434\u0435\u043b\u044c \u0441\u0435\u0442\u0438, \u0435\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 VLAN. \u042d\u0442\u0430 \u0441\u0435\u0442\u0435\u0432\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0443\u044e \u0433\u0438\u0431\u043a\u043e\u0441\u0442\u044c \u0432 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430\u043c \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0441\u0435\u0442\u0438, \u0442\u0430\u043a\u0438\u0435 \u043a\u0430\u043a \u043c\u0435\u0436\u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u044d\u043a\u0440\u0430\u043d, VPN, \u0438\u043b\u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u0440\u044f\u043c\u043e\u0435 \u043f\u0440\u043e\u0442\u0438\u0432 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439. +message.advanced.security.group=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u044d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440, \u0435\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0433\u0440\u0443\u043f\u043f\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c \u0438\u0437\u043e\u043b\u044f\u0446\u0438\u044e \u0441\u0435\u0440\u0432\u0435\u0440\u0430. +message.advanced.virtual=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u044d\u0442\u043e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440, \u0435\u0441\u043b\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435\u0439 \u0437\u043e\u043d\u044b \u0441\u0435\u0442\u0438 VLAN, \u0447\u0442\u043e\u0431\u044b \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c \u0438\u0437\u043e\u043b\u044f\u0446\u0438\u044e \u0441\u0435\u0440\u0432\u0435\u0440\u0430. +message.after.enable.swift=Swift \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d. \u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435\: \u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043a\u0438\u043d\u0435\u0442\u0435 \u044d\u0442\u0443 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443, \u0432\u0430\u043c \u043d\u0435 \u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c Swift \u0441\u043d\u043e\u0432\u0430 +message.alert.state.detected=\u041e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d \u0441\u0438\u0433\u043d\u0430\u043b \u0442\u0440\u0435\u0432\u043e\u0433\u0438 +message.allow.vpn.access=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u0432\u0435\u0434\u0438\u0442\u0435 \u0438\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u043f\u0430\u0440\u043e\u043b\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0434\u043b\u044f VPN-\u0434\u043e\u0441\u0442\u0443\u043f\u0430. +message.apply.snapshot.policy=\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u044d\u0442\u043e\u0433\u043e \u0441\u043d\u0438\u043c\u043a\u0430 \u0431\u044b\u043b\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u044b. +message.attach.iso.confirm=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0440\u0438\u043a\u0440\u0435\u043f\u0438\u0442\u044c ISO \u0432 \u044d\u0442\u043e\u0442 \u0441\u0435\u0440\u0432\u0435\u0440. +message.attach.volume=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0435, \u0447\u0442\u043e \u0431\u044b \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u043c\u0435\u0441\u0442\u043e. \u0414\u043b\u044f Windows, \u043d\u0443\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440 +message.basic.mode.desc=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u044d\u0442\u0443 \u043c\u043e\u0434\u0435\u043b\u044c \u0441\u0435\u0442\u0438, \u0435\u0441\u043b\u0438 \u0432\u044b *not* \u0445\u043e\u0442\u0438\u0442\u0435, \u0447\u0442\u043e\u0431\u044b \u0431\u044b\u043b\u0430 \u043b\u044e\u0431\u0430\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 VLAN. \u0412\u0441\u0435\u043c \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c \u043c\u0430\u0448\u0438\u043d\u0430\u043c, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e \u044d\u0442\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0441\u0435\u0442\u0438 \u0431\u0443\u0434\u0435\u0442 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d IP \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0438\u0437 \u0441\u0435\u0442\u0438 \u0438 \u0433\u0440\u0443\u043f\u043f\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0434\u043b\u044f \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0438 \u0441\u0435\u0433\u0440\u0435\u0433\u0430\u0446\u0438\u0438. +message.change.offering.confirm=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u043b\u0443\u0436\u0431\u0443 \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0433\u043e VM. +message.change.password=\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u0435 \u0432\u0430\u0448 \u043f\u0430\u0440\u043e\u043b\u044c. +message.configure.all.traffic.types=\u0423 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0435\u0442\u0435\u0439, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043c\u0435\u0442\u043a\u0438 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u0442\u0440\u0430\u0444\u0438\u043a\u0430, \u043d\u0430\u0436\u0430\u0432 \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443 \u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c. +message.configuring.guest.traffic=\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0433\u043e\u0441\u0442\u0435\u0432\u043e\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430 +message.configuring.physical.networks=\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0435\u0442\u0435\u0439 +message.configuring.public.traffic=\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430 +message.configuring.storage.traffic=\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 +message.confirm.action.force.reconnect=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0435\u0440\u0435\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043a \u0443\u0437\u043b\u0443 +message.confirm.delete.F5=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c F5 +message.confirm.delete.NetScaler=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c NetScaler +message.confirm.delete.SRX=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c SRX +message.confirm.destroy.router=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0440\u043e\u0443\u0442\u0435\u0440 +message.confirm.disable.provider=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u043e\u0441\u0442\u0430\u0432\u0449\u0438\u043a\u0430 +message.confirm.enable.provider=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u043e\u0441\u0442\u0430\u0432\u0449\u0438\u043a\u0430 +message.confirm.join.project=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435 \u043f\u0440\u0438\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0443. +message.confirm.remove.IP.range=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d IP. +message.confirm.shutdown.provider=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0449\u0438\u043a\u0430 +message.copy.iso.confirm=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c ISO \u0434\u043e +message.copy.template=\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d XXX \u0438\u0437 \u0437\u043e\u043d\u044b \u0432 +message.create.template=\u0412\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d\u043d? +message.create.template.vm=\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b +message.create.template.volume=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e, \u043f\u0440\u0435\u0436\u0434\u0435 \u0447\u0435\u043c \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d \u0434\u0438\u0441\u043a\u0430 \u043e\u0431\u044a\u0435\u043c\u043e\u043c\: . \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u0430 \u043c\u043e\u0436\u0435\u0442 \u0432\u0430\u0440\u044c\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043e\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043c\u0438\u043d\u0443\u0442 \u0434\u043e \u0434\u043e\u043b\u044c\u0448\u0435 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u0442\u043e\u043c\u0430. +message.creating.cluster=\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 +message.creating.guest.network=\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0433\u043e\u0441\u0442\u0435\u0432\u0443\u044e \u0441\u0435\u0442\u044c +message.creating.physical.networks=\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0435\u0442\u0435\u0439 +message.creating.pod=\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u0442\u0435\u043d\u0434\u0430 +message.creating.primary.storage=\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 +message.creating.secondary.storage=\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 +message.creating.zone=\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0437\u043e\u043d\u044b +message.decline.invitation=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0442\u043c\u0435\u043d\u0438\u0442\u044c \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442. +message.delete.account=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0430\u043a\u043a\u0430\u0443\u043d\u0442. +message.delete.project=\u0412\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u043f\u0440\u043e\u0435\u043a\u0442? +message.delete.user=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. +message.desc.advanced.zone=\u0414\u043b\u044f \u0431\u043e\u043b\u0435\u0435 \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u0439. \u042d\u0442\u0430 \u0441\u0435\u0442\u0435\u0432\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0443\u044e \u0433\u0438\u0431\u043a\u043e\u0441\u0442\u044c \u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0438 \u0433\u043e\u0441\u0442\u0435\u0432\u043e\u0439 \u0441\u0435\u0442\u0438 \u0438 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0443\u0441\u043b\u0443\u0433, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a \u043c\u0435\u0436\u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u044d\u043a\u0440\u0430\u043d, VPN, \u0438\u043b\u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438. +message.desc.basic.zone=\u041f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0435\u0434\u0438\u0441\u0442\u0432\u0435\u043d\u043d\u0443\u044e \u0441\u0435\u0442\u044c, \u0433\u0434\u0435 \u043a\u0430\u0436\u0434\u0430\u044f \u0412\u041c \u0438\u043c\u0435\u0435\u0442 \u00ab\u0431\u0435\u043b\u044b\u0439\u00bb IP-\u0430\u0434\u0440\u0435\u0441 \u0441\u0435\u0442\u0438. \u0418\u0437\u043e\u043b\u044f\u0446\u0438\u0438 \u0433\u043e\u0441\u0442\u0435\u0439 \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0441\u0435\u0442\u0438 3-\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0433\u0440\u0443\u043f\u043f\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 (\u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f IP-\u0432\u0434\u0440\u0435\u0441\u043e\u0432) +message.desc.cluster=\u041a\u0430\u0436\u0434\u044b\u0439 \u0441\u0442\u0435\u043d\u0434 \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u043c\u0435\u0442\u044c \u043e\u0434\u0438\u043d \u0438\u043b\u0438 \u0431\u043e\u043b\u0435\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u0432, \u043f\u0435\u0440\u0432\u044b\u0439 \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0432\u044b \u0441\u0435\u0439\u0447\u0430\u0441 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u0435. \u041a\u043b\u0430\u0441\u0442\u0435\u0440 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0433\u0440\u0443\u043f\u043f\u0443 \u0443\u0437\u043b\u043e\u0432. \u0423\u0437\u043b\u044b \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u0438\u043c\u0435\u044e\u0442 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u0435 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u0435, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u043e\u0434\u0438\u043d \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440, \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 \u043e\u0434\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0438 \u0438\u043c\u0435\u044e\u0442 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043e\u0434\u043d\u043e\u043c\u0443 \u0438 \u0442\u043e\u043c\u0443 \u0436\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u043c\u0443 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0443. \u041a\u0430\u0436\u0434\u044b\u0439 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043e\u0434\u0438\u043d \u0438\u043b\u0438 \u0431\u043e\u043b\u0435\u0435 \u0443\u0437\u043b\u043e\u0432, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0438\u0435\u0442\u044c \u043e\u0434\u0438\u043d \u0438\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449. +message.desc.host=\u041a\u0430\u0436\u0434\u044b\u0439 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043a\u0430\u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u043e\u0434\u0438\u043d \u0443\u0437\u0435\u043b (\u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440) \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0412\u041c, \u043f\u0435\u0440\u0432\u044b\u0439 \u0438\u0437 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0432\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u0435 \u0441\u0435\u0439\u0447\u0430\u0441. \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0443\u0437\u043b\u0430 \u0432 CloudStack \u0432\u0430\u0436\u043d\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440\u0430 \u043d\u0430 \u0443\u0437\u0435\u043b, \u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0430 IP \u043a \u0443\u0437\u043b\u0443 \u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0443\u0437\u043b\u0430 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f CloudStack.

    \u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u0438\u043c\u044f DNS \u0438\u043b\u0438 \u0430\u0434\u0440\u0435\u0441 IP, \u0438\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u043f\u0430\u0440\u043e\u043b\u044c \u043a \u041e\u0421 (\u043e\u0431\u044b\u0447\u043d\u043e root), \u0430 \u0442\u0430\u043a\u0436\u0435 \u043c\u0435\u0442\u043a\u0438 \u0434\u043b\u044f \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0443\u0437\u043b\u043e\u0432. +message.desc.primary.storage=\u041a\u0430\u0436\u0434\u0430\u044f \u0433\u0440\u0443\u043f\u043f\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043e\u0434\u0438\u043d \u0438\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0435\u0440\u0432\u0438\u0447\u043d\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445, \u0438 \u043c\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u0435\u0439\u0447\u0430\u0441. \u041f\u0435\u0440\u0432\u0438\u0447\u043d\u0430\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u044b \u0436\u0435\u0441\u0442\u043a\u043e\u0433\u043e \u0434\u0438\u0441\u043a\u0430 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0445 \u043d\u0430 \u0443\u0437\u043b\u0430\u0445 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043b\u044e\u0431\u043e\u0439 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u044b\u0439 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440\u0430. +message.desc.secondary.storage=\u041a\u0430\u0436\u0434\u0430\u044f \u0437\u043e\u043d\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u043e\u0431\u043b\u0430\u0434\u0430\u0442\u044c \u0445\u043e\u0442\u044f \u0431\u044b \u043e\u0434\u043d\u0438\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c NFS \u0438\u043b\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u043c \u0438 \u0438\u0445 \u043d\u0430\u0434\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c. \u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043e \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 \u0412\u041c, \u043e\u0431\u0440\u0430\u0437\u043e\u0432 ISO \u0438 \u0441\u043d\u0438\u043c\u043a\u043e\u0432 \u0412\u041c. \u042d\u0442\u043e\u0442 \u0441\u0435\u0440\u0432\u0435\u0440 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u0443\u0437\u043b\u043e\u0432 \u0437\u043e\u043d\u044b.

    \u041f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c IP-\u0430\u0434\u0440\u0435\u0441 \u0438 \u043f\u0443\u0442\u044c. +message.desc.zone=layer 3 +message.detach.disk=\u0412\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0440\u0438\u0441\u043e\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0434\u0438\u0441\u043a? +message.detach.iso.confirm=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0442\u0434\u0435\u043b\u0438\u0442\u044c ISO \u043e\u0442 \u044d\u0442\u043e\u0433\u043e \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430. +message.disable.account=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u0443 \u0443\u0447\u0435\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c. \u041f\u0440\u0438 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430, \u0432\u0441\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u0434\u043b\u044f \u044d\u0442\u043e\u0439 \u0443\u0447\u0435\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438 \u043d\u0435 \u0431\u0443\u0434\u0443\u0442 \u0438\u043c\u0435\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0441\u0432\u043e\u0438\u043c \u0440\u0435\u0441\u0443\u0440\u0441\u0430\u043c \u043e\u0431\u043b\u0430\u043a\u0430. \u0412\u0441\u0435 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b \u0431\u0443\u0434\u0443\u0442 \u043d\u0435\u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e \u0437\u0430\u043a\u0440\u044b\u0442\u044b. +message.disable.snapshot.policy=\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0438 \u044d\u0442\u043e\u0433\u043e \u0441\u043d\u0438\u043c\u043a\u0430 \u0431\u044b\u043b\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u044b. +message.disable.user=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. +message.disable.vpn.access=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c VPN \u0434\u043e\u0441\u0442\u0443\u043f +message.disable.vpn=\u0412\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u0442\u044c VPN? +message.download.ISO=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043d\u0430\u0436\u043c\u0438\u0442\u0435 00000 \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0437 +message.download.template=\u041d\u0430\u0436\u043c\u0438\u0442\u0435 00000\u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 +message.download.volume.confirm=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0442\u043e\u043c +message.download.volume=\u041d\u0430\u0436\u043c\u0438\u0442\u0435 00000 \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0442\u043e\u043c\u0430 +message.edit.account=\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c (\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 "-1" \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439 \u0434\u043b\u044f \u0440\u0435\u0441\u0443\u0440\u0441\u0430) +message.edit.confirm=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u043f\u0440\u0435\u0436\u0434\u0435 \u0447\u0435\u043c \u043d\u0430\u0436\u0430\u0442\u044c "\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c". +message.edit.limits=\u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u043f\u0440\u0435\u0434\u0435\u043b\u044b \u0434\u043b\u044f \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432. \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 "-1" \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u043f\u0440\u0435\u0434\u0435\u043b\u0430 \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0440\u0435\u0441\u0443\u0440\u0441\u0430. +message.edit.traffic.type=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0442\u0440\u0430\u0444\u0438\u043a \u043c\u0435\u0442\u043a\u0438 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441 \u044d\u0442\u0438\u043c \u0442\u0438\u043f\u043e\u043c \u0442\u0440\u0430\u0444\u0438\u043a\u0430. +message.enable.account=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u0443 \u0443\u0447\u0451\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c. +message.enabled.vpn.ip.sec=\u0412\u0430\u0448 IPSec pre-shared \u043a\u043b\u044e\u0447 +message.enabled.vpn=\u0412\u0430\u0448 VPN \u0434\u043e\u0441\u0442\u0443\u043f \u0432 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d \u0438 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0447\u0435\u0440\u0435\u0437 IP +message.enable.user=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. +message.enable.vpn.access=\u0421\u0435\u0439\u0447\u0430\u0441 VPN \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e IP-a\u0434\u0440\u0435\u0441\u0430 \u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d. \u0416\u0435\u043b\u0430\u0435\u0442\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c VPN-\u0434\u043e\u0441\u0442\u0443\u043f? +message.enable.vpn=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a VPN \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e IP-\u0430\u0434\u0440\u0435\u0441\u0430. +message.enabling.security.group.provider=\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u0441\u0442\u0430\u0432\u0449\u0438\u043a\u0430 \u0437\u0430\u0441\u0438\u0449\u0435\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 +message.enabling.zone=\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0437\u043e\u043d\u0443 +message.enter.token=\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043a\u043b\u044e\u0447, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0432 \u043f\u0440\u0438\u0433\u043b\u0430\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u043c \u043f\u0438\u0441\u044c\u043c\u0435 +message.generate.keys=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0435 \u043a\u043b\u044e\u0447\u0438 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. +message.guest.traffic.in.advanced.zone=\u0413\u043e\u0441\u0442\u0435\u0432\u043e\u0439 \u0442\u0440\u0430\u0444\u0438\u043a \u0441\u0435\u0442\u0438 \u0441\u0432\u044f\u0437\u0438 \u043c\u0435\u0436\u0434\u0443 \u043a\u043e\u043d\u0435\u0447\u043d\u044b\u043c\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c\u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d. \u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u043e\u0432 VLAN \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u0433\u043e\u0441\u0442\u044f \u0442\u0440\u0430\u0444\u0438\u043a \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0435\u0442\u0438. +message.guest.traffic.in.basic.zone=\u0413\u043e\u0441\u0442\u0435\u0432\u043e\u0439 \u0442\u0440\u0430\u0444\u0438\u043a \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043e\u0431\u0449\u0435\u043d\u0438\u0438 \u043c\u0435\u0436\u0434\u0443 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u043c\u0430\u0448\u0438\u043d\u0430\u043c\u0438. \u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0430\u0434\u0440\u0435\u0441\u043e\u0432 IP, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 CloudStack \u0441\u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0434\u0435\u043b\u0438\u0442\u044c \u0434\u043b\u044f \u0412\u041c. \u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u044d\u0442\u043e\u0442 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u043d\u0435 \u043f\u0435\u0440\u0435\u043a\u0440\u0435\u0449\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0441 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u043e\u043c \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u044b\u0445 \u0430\u0434\u0440\u0435\u0441\u043e\u0432. +message.installWizard.click.retry=\u041a\u043b\u0438\u043a\u043d\u0438\u0442\u0435, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u0437\u0430\u043f\u0443\u0441\u043a. +message.installWizard.copy.whatIsACluster=\u041a\u043b\u0430\u0441\u0442\u0435\u0440 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0433\u0440\u0443\u043f\u043f\u044b \u0443\u0437\u043b\u043e\u0432. \u0423\u0437\u043b\u044b \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u0438\u043c\u0435\u044e\u0442 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u0435 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u0435, \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u044b \u0432 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u043c \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u0435\u0440\u0435, \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 \u043e\u0434\u043d\u043e\u0439 \u043f\u043e\u0434\u0441\u0435\u0442\u0438 \u0438 \u0438\u043c\u0435\u044e\u0442 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043e\u0434\u043d\u043e\u043c\u0443 \u0438 \u0442\u043e\u043c\u0443 \u0436\u0435 \u043e\u0431\u0449\u0435\u043c\u0443 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0443. \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0435\u043d\u044b "\u0432\u0436\u0438\u0432\u0443\u044e" \u0441 \u043e\u0434\u043d\u043e\u0433\u043e \u0443\u0437\u043b\u0430 \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439 \u0432 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u0445 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430, \u0431\u0435\u0437 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0441\u043b\u0443\u0436\u0431 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c. \u041a\u043b\u0430\u0441\u0442\u0435\u0440 - \u0442\u0440\u0435\u0442\u044c\u044f \u043f\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u043d\u043e\u0441\u0442\u0438 \u0435\u0434\u0438\u043d\u0438\u0446\u0430 \u0432 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435 CloudStack&\#8482;. \u041a\u043b\u0430\u0441\u0442\u0435\u0440\u044b \u0440\u0430\u0441\u043f\u043e\u043e\u0433\u0430\u044e\u0442\u0441\u044f \u0432 \u0441\u0442\u0435\u043d\u0434\u0430\u0445, \u0430 \u0441\u0442\u0435\u043d\u0434\u044b - \u0432 \u0437\u043e\u043d\u0430\u0445.

    CloudStack&\#8482; \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u0432, \u043d\u043e \u043f\u0440\u0438 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u044d\u0442\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442. +message.installWizard.copy.whatIsAHost=\u0423\u0437\u0435\u043b - \u044d\u0442\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440. \u0423\u0437\u043b\u044b \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0433\u043e\u0441\u0442\u0435\u0432\u044b\u0445 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d. \u041a\u0430\u0436\u0434\u044b\u0439 \u0443\u0437\u0435\u043b \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440 \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0412\u041c (\u043a\u0440\u043e\u043c\u0435 \u0443\u0437\u043b\u043e\u0432 BareMetal, \u043e\u043d\u0438 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0438\u0437 \u043f\u0440\u0430\u0432\u0438\u043b \u0438 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0432 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u043e\u043c \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0435 \u043f\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435). \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u044d\u0442\u043e Linux-\u0441\u0435\u0440\u0432\u0435\u0440 \u0441 KVM, \u0441\u0435\u0440\u0432\u0435\u0440 Citrix XenServer \u0438\u043b\u0438 \u0441\u0435\u0440\u0432\u0435\u0440 ESXI. \u041f\u0440\u0438 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0434\u0438\u043d \u0443\u0437\u0435\u043b \u0441 XenServer.

    \u0423\u0437\u0435\u043b - \u044d\u0442\u043e \u043d\u0430\u0438\u043c\u0435\u043d\u044c\u0448\u0430\u044f \u0435\u0434\u0438\u043d\u0438\u0446\u0430 \u0432 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435 CloudStack&\#8482;, \u0434\u0430\u043b\u0435\u0435 \u0443\u0437\u043b\u044b \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0433\u0430\u044e\u0442\u0441\u044f \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430\u0445, \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u044b - \u0432 \u0441\u0442\u0435\u043d\u0434\u0430\u0445, \u0441\u0442\u0435\u043d\u0434\u044b - \u0432 \u0437\u043e\u043d\u0430\u0445. +message.installWizard.copy.whatIsAPod=\u0421\u0442\u0435\u043d\u0434, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043e\u0434\u043d\u0443 \u0441\u0442\u043e\u0439\u043a\u0443 \u0441 \u043c\u0430\u0448\u0438\u043d\u0430\u043c\u0438. \u0423\u0437\u043b\u044b \u0432 \u043e\u0434\u043d\u043e\u043c \u0441\u0442\u0435\u043d\u0434\u0435 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u044b \u0432 \u043e\u0434\u043d\u043e\u0439 \u043f\u043e\u0434\u0441\u0435\u0442\u0438.

    \u0421\u0442\u0435\u043d\u0434 - \u0432\u0442\u043e\u0440\u0430\u044f \u043f\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u043d\u043e\u0441\u0442\u0438 \u0435\u0434\u0438\u043d\u0438\u0446\u0430 \u0432 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435 CloudStack&\#8482;. \u0421\u0442\u0435\u043d\u0434\u044b \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0433\u0430\u044e\u0442\u0441\u044f \u0432 \u0437\u043e\u043d\u0430\u0445. \u041a\u0430\u0436\u0434\u0430\u044f \u0437\u043e\u043d\u0430 \u043c\u043e\u0436\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u0435\u043d\u0434\u043e\u0432, \u043d\u043e \u043f\u0440\u0438 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0432 \u0437\u043e\u043d\u0435 \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043b\u0438\u0448\u044c \u043e\u0434\u0438\u043d \u0441\u0442\u0435\u043d\u0434. +message.installWizard.copy.whatIsAZone=\u0417\u043e\u043d\u0430 - \u044d\u0442\u043e \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u043a\u0440\u0443\u043f\u043d\u0430\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0435\u0434\u0438\u043d\u0438\u0446\u0430 \u0432 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435 CloudStack&\#8482;. \u0417\u043e\u043d\u0430 \u043e\u0431\u044b\u0447\u043d\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0435\u0434\u0438\u043d\u0438\u0447\u043d\u043e\u043c\u0443 \u0426\u041e\u0414, \u0445\u043e\u0442\u044f \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0437\u043e\u043d \u0432 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u0445 \u043e\u0434\u043d\u043e\u0433\u043e \u0426\u041e\u0414. \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u043c \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u043c \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0437\u043e\u043d \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u0435 \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0438\u0437\u0431\u044b\u0442\u043e\u0447\u043d\u043e\u0441\u0442\u0438. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u0430\u0436\u0434\u0430\u044f \u0437\u043e\u043d\u0430 \u043c\u043e\u0436\u0435\u0442 \u0438\u043c\u0435\u0442\u044c \u0441\u0432\u043e\u0439 \u0431\u043b\u043e\u043a \u043f\u0438\u0442\u0430\u043d\u0438\u044f \u0438 \u0441\u0435\u0442\u044c, \u0430 \u0441\u0430\u043c\u0438 \u0437\u043e\u043d\u044b \u043c\u043e\u0433\u0443\u0442 \u0448\u0438\u0440\u043e\u043a\u043e \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u044b \u0433\u0435\u043e\u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438. +message.installWizard.copy.whatIsCloudStack=CloudStack&\#8482 - \u044d\u0442\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u0430\u044f \u043f\u043b\u0430\u0444\u0442\u043e\u0440\u043c\u0430 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0445, \u0447\u0430\u0441\u0442\u043d\u044b\u0445 \u0438 \u0433\u0438\u0431\u0440\u0438\u0434\u043d\u044b\u0445 \u043e\u0431\u043b\u0430\u043a\u043e\u0432 \u043f\u043e \u0441\u0445\u0435\u043c\u0435 \u00ab\u0418\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043a\u0430\u043a \u0441\u0435\u0440\u0432\u0438\u0441\u00bb (IaaS). CloudStack&\#8482 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u0435\u0442\u044c\u044e, \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u043c \u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u0443\u0437\u043b\u0430\u043c\u0438, \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u0432 \u043e\u0431\u043b\u0430\u0447\u043d\u0443\u044e \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443. \u0413\u043b\u0430\u0432\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, CloudStack&\#8482 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0440\u0430\u0437\u0432\u0435\u0440\u0442\u044b\u0432\u0430\u043d\u0438\u044f, \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u043e\u0439 \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439.

    CloudStack&\#8482 \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u0435\u0442 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u0430\u043a \u0443\u0441\u043b\u0443\u0433\u0438 \u0446\u0435\u043b\u043e\u0433\u043e \u0446\u0435\u043d\u0442\u0440\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u043c\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043e\u0431\u043b\u0430\u043a\u0430. \u041c\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043c\u0435\u0436\u0434\u0443 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0439 \u0438 \u0411\u0435\u0437\u043d\u0435\u0441-\u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u0447\u0442\u0438 \u043d\u0438\u0447\u0435\u043c \u043d\u0435 \u043e\u0442\u043b\u0438\u0447\u0430\u044e\u0442\u0441\u044f. +message.installWizard.copy.whatIsPrimaryStorage=CloudStack&\#8482; - \u044d\u0442\u043e \u043e\u0431\u043b\u0430\u0447\u043d\u0430\u044f \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0430\u044f \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430\: \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435. \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c iSCSI \u0438\u043b\u0438 NFS-\u0441\u0435\u0440\u0432\u0435\u0440, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0434\u0438\u0441\u043a.

    \u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d\u043e \u043a \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0443 \u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0434\u0438\u0441\u043a\u043e\u0432\u044b\u0435 \u0442\u043e\u043c\u0430 \u043a\u0430\u0436\u0434\u043e\u0439 \u0412\u041c, \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u043e\u0439 \u0432 \u0443\u0437\u043b\u0430\u0445 \u044d\u0442\u043e\u0433\u043e \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430. \u041a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0440\u0430\u0437\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0432 \u0441\u0430\u043c\u0438\u0445 \u0443\u0437\u043b\u0430\u0445. +message.installWizard.copy.whatIsSecondaryStorage=\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d\u043e \u043a \u0437\u043e\u043d\u0435 \u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435\:
    • \u0428\u0430\u0431\u043b\u043e\u043d\u044b - \u043e\u0431\u0440\u0430\u0437\u044b \u041e\u0421, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0412\u041c \u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0435 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e, \u0442\u0430\u043a\u0443\u044e \u043a\u0430\u043a \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.
    • \u041e\u0431\u0440\u0430\u0437\u044b ISO - \u044d\u0442\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u044b\u0435 \u0438\u043b\u0438 \u043d\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u044b\u0435 \u043e\u0431\u0440\u0430\u0437\u044b \u041e\u0421
    • \u0421\u043d\u0438\u043c\u043a\u0438 \u0434\u0438\u0441\u043a\u043e\u0432\u044b\u0445 \u0442\u043e\u043c\u043e\u0432 - \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u043d\u044b\u0435 \u043a\u043e\u043f\u0438\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0412\u041c, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u043b\u0438 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u0448\u0430\u0431\u043b\u043e\u043d\u0430
    +message.installWizard.now.building=\u0412\u0430\u0448\u0435 \u043e\u0431\u043b\u0430\u043a\u043e \u0441\u043e\u0437\u0434\u0430\u0451\u0442\u0441\u044f... +message.installWizard.tooltip.addCluster.name=\u0418\u043c\u044f \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u0430\u043c\u0438 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0438\u043c\u044f, \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0439 Cloudstack. +message.installWizard.tooltip.addHost.hostname=\u0418\u043c\u044f DNS \u0438\u043b\u0438 IP-\u0430\u0434\u0440\u0435\u0441 \u0443\u0437\u043b\u0430. +message.installWizard.tooltip.addHost.password=\u042d\u0442\u043e\u0442 \u043f\u0430\u0440\u043e\u043b\u044c \u0434\u043b\u044f \u0432\u044b\u0448\u0435\u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f (\u0441 \u0432\u0430\u0448\u0435\u0433\u043e XenServer) +message.installWizard.tooltip.addHost.username=\u041e\u0431\u044b\u0447\u043d\u043e root. +message.installWizard.tooltip.addPod.name=\u0418\u043c\u044f \u0441\u0442\u0435\u043d\u0434\u0430 +message.installWizard.tooltip.addPod.reservedSystemEndIp=\u042d\u0442\u043e \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d IP \u0447\u0430\u0441\u0442\u043d\u043e\u0439 \u0441\u0435\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f CloudStack \u0434\u043b\u044f \u0412\u041c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0438 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u043a\u0441\u0438. \u042d\u0442\u0438 \u0430\u0434\u0440\u0435\u0441\u0430 \u043f\u043e\u043b\u0443\u0447\u0430\u044e\u0442\u0441\u044f \u0438\u0437 \u0441\u0435\u0442\u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432. +message.installWizard.tooltip.addPod.reservedSystemGateway=\u0428\u043b\u044e\u0437 \u0434\u043b\u044f \u0443\u0437\u043b\u043e\u0432 \u044d\u0442\u043e\u0433\u043e \u0441\u0442\u0435\u043d\u0434\u0430. +message.installWizard.tooltip.addPod.reservedSystemNetmask=\u0421\u0435\u0442\u0435\u0432\u0430\u044f \u043c\u0430\u0441\u043a\u0430 \u043f\u043e\u0434\u0441\u0435\u0442\u0438 \u0434\u043b\u044f \u0433\u043e\u0441\u0442\u0435\u0439. +message.installWizard.tooltip.addPod.reservedSystemStartIp=\u042d\u0442\u043e \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d IP \u0447\u0430\u0441\u0442\u043d\u043e\u0439 \u0441\u0435\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f CloudStack \u0434\u043b\u044f \u0412\u041c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0438 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u043a\u0441\u0438. \u042d\u0442\u0438 \u0430\u0434\u0440\u0435\u0441\u0430 \u043f\u043e\u043b\u0443\u0447\u0430\u044e\u0442\u0441\u044f \u0438\u0437 \u0441\u0435\u0442\u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432. +message.installWizard.tooltip.addPrimaryStorage.name=\u0418\u043c\u044f \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430. +message.installWizard.tooltip.addPrimaryStorage.path=(\u0434\u043b\u044f NFS) \u0412 NFS \u044d\u0442\u043e \u043f\u0443\u0442\u044c \u044d\u043a\u043f\u043e\u0440\u0442\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u041f\u0443\u0442\u044c (\u0434\u043b\u044f \u041e\u0442\u043a\u0440\u044b\u0442\u043e\u0439\u0422\u043e\u0447\u043a\u0438\u0414\u043e\u0441\u0442\u0443\u043f\u0430). \u0412 KVM \u044d\u0442\u043e \u043f\u0443\u0442\u044c \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0443\u0437\u043b\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, "/mnt/primary". +message.installWizard.tooltip.addPrimaryStorage.server=(\u0434\u043b\u044f NFS, iSCSI \u0438\u043b\u0438 PreSetup) IP-\u0430\u0434\u0440\u0435\u0441 \u0438\u043b\u0438 \u0438\u043c\u044f DNS \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430. +message.installWizard.tooltip.addSecondaryStorage.nfsServer=IP-\u0430\u0434\u0440\u0435\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 NFS, \u0433\u0434\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 +message.installWizard.tooltip.addSecondaryStorage.path=\u041f\u0443\u0442\u044c \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0430, \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0439 \u043d\u0430 \u0432\u044b\u0448\u0435\u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435. +message.installWizard.tooltip.addZone.dns1=\u042d\u0442\u043e c\u0435\u0440\u0432\u0435\u0440\u044b DNS \u0434\u043b\u044f \u0433\u043e\u0441\u0442\u0435\u0432\u044b\u0445 \u0412\u041c \u044d\u0442\u043e\u0439 \u0437\u043e\u043d\u044b. \u042d\u0442\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u044b \u0431\u0443\u0434\u0443\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0447\u0435\u0440\u0435\u0437 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u0435 \u043f\u043e\u0437\u0436\u0435. \u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u0432 \u0437\u043e\u043d\u0435, \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u043c\u0435\u0442\u044c \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u043a \u044d\u0442\u0438\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c DNS. +message.installWizard.tooltip.addZone.dns2=\u042d\u0442\u043e c\u0435\u0440\u0432\u0435\u0440\u044b DNS \u0434\u043b\u044f \u0433\u043e\u0441\u0442\u0435\u0432\u044b\u0445 \u0412\u041c \u044d\u0442\u043e\u0439 \u0437\u043e\u043d\u044b. \u042d\u0442\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u044b \u0431\u0443\u0434\u0443\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0447\u0435\u0440\u0435\u0437 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u0435 \u043f\u043e\u0437\u0436\u0435. \u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u0432 \u0437\u043e\u043d\u0435, \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u043c\u0435\u0442\u044c \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u043a \u044d\u0442\u0438\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c DNS. +message.installWizard.tooltip.addZone.internaldns1=\u042d\u0442\u043e c\u0435\u0440\u0432\u0435\u0440\u044b DNS \u0434\u043b\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0412\u041c \u044d\u0442\u043e\u0439 \u0437\u043e\u043d\u044b. \u042d\u0442\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u044b \u0431\u0443\u0434\u0443\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0447\u0435\u0440\u0435\u0437 \u0447\u0430\u0441\u0442\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u0412\u041c. \u0427\u0430\u0441\u0442\u043d\u044b\u0439 IP-\u0430\u0434\u0440\u0435\u0441, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u0432 \u0441\u0442\u0435\u043d\u0434\u0435, \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u043c\u0435\u0442\u044c \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u043a \u044d\u0442\u0438\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c DNS. +message.installWizard.tooltip.addZone.internaldns2=\u042d\u0442\u043e c\u0435\u0440\u0432\u0435\u0440\u044b DNS \u0434\u043b\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0412\u041c \u044d\u0442\u043e\u0439 \u0437\u043e\u043d\u044b. \u042d\u0442\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u044b \u0431\u0443\u0434\u0443\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0447\u0435\u0440\u0435\u0437 \u0447\u0430\u0441\u0442\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u0412\u041c. \u0427\u0430\u0441\u0442\u043d\u044b\u0439 IP-\u0430\u0434\u0440\u0435\u0441, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u0432 \u0441\u0442\u0435\u043d\u0434\u0435, \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u043c\u0435\u0442\u044c \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u043a \u044d\u0442\u0438\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c DNS. +message.installWizard.tooltip.addZone.name=\u0418\u043c\u044f \u0437\u043e\u043d\u044b +message.installWizard.tooltip.configureGuestTraffic.description=\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u044d\u0442\u043e\u0439 \u0441\u0435\u0442\u0438 +message.installWizard.tooltip.configureGuestTraffic.guestEndIp=\u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d IP-\u0430\u0434\u0440\u0435\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0434\u043b\u044f \u0433\u043e\u0441\u0442\u0435\u0439 \u044d\u0442\u043e\u0439 \u0437\u043e\u043d\u044b. \u041f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0441\u0435\u0442\u0435\u0432\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 (NIC) \u044d\u0442\u0438 \u0430\u0434\u0440\u0435\u0441\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0432 \u043f\u043e\u0434\u0441\u0435\u0442\u0438 (CIDR) \u0441\u0442\u0435\u043d\u0434\u0430. +message.installWizard.tooltip.configureGuestTraffic.guestGateway=\u0428\u043b\u044e\u0437 \u0434\u043b\u044f \u0433\u043e\u0441\u0442\u044f\u043c\u0438 +message.installWizard.tooltip.configureGuestTraffic.guestNetmask=\u0421\u0435\u0442\u0435\u0432\u0430\u044f \u043c\u0430\u0441\u043a\u0430 \u043f\u043e\u0434\u0441\u0435\u0442\u0438 \u0434\u043b\u044f \u0433\u043e\u0441\u0442\u0435\u0439. +message.installWizard.tooltip.configureGuestTraffic.guestStartIp=\u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d IP-\u0430\u0434\u0440\u0435\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0434\u043b\u044f \u0433\u043e\u0441\u0442\u0435\u0439 \u044d\u0442\u043e\u0439 \u0437\u043e\u043d\u044b. \u041f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0441\u0435\u0442\u0435\u0432\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 (NIC) \u044d\u0442\u0438 \u0430\u0434\u0440\u0435\u0441\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0432 \u043f\u043e\u0434\u0441\u0435\u0442\u0438 (CIDR) \u0441\u0442\u0435\u043d\u0434\u0430. +message.installWizard.tooltip.configureGuestTraffic.name=\u0418\u043c\u044f \u044d\u0442\u043e\u0439 \u0441\u0435\u0442\u0438 +message.instanceWizard.noTemplates=\u0412\u044b \u043d\u0435 \u0438\u043c\u0435\u0435\u0442\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432; \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043c\u0430\u0448\u0438\u043d\u044b \u0434\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u0432\u044b\u0439 \u0448\u0430\u0431\u043b\u043e\u043d. +message.ip.address.changed=\u0412\u0430\u0448\u0438 IP-\u0430\u0434\u0440\u0435\u0441\u0430 \u043c\u043e\u0433\u043b\u0438 \u0431\u044b\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u044b, \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u0430\u0434\u0440\u0435\u0441\u043e\u0432? \u041f\u043e\u043c\u043d\u0438\u0442\u0435, \u0447\u0442\u043e \u0432 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043e\u0431\u043b\u0430\u0441\u0442\u044c \u0434\u0435\u0442\u0430\u043b\u0435\u0439 \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043a\u0440\u044b\u0442\u0430. +message.iso.desc=\u041e\u0431\u0440\u0430\u0437 \u0434\u0438\u0441\u043a\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u044b\u0435 \u0438\u043b\u0438 \u043d\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u041e\u0421. +message.join.project=\u0422\u0435\u043f\u0435\u0440\u044c \u0432\u044b \u043f\u0440\u0438\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u044b \u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0443. \u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 "\u041f\u0440\u043e\u0435\u043a\u0442\u043d\u044b\u0439 \u0432\u0438\u0434" \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430. +message.launch.vm.on.private.network=\u0425\u043e\u0442\u0438\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0412\u041c \u0432 \u0432\u0430\u0448\u0435\u0439 \u0447\u0430\u0441\u0442\u043d\u043e\u0439 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u0435\u0442\u0438? +message.launch.zone=\u0417\u043e\u043d\u0430 \u0433\u043e\u0442\u043e\u0432\u0430 \u043a \u0437\u0430\u043f\u0443\u0441\u043a\u0443, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043a \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0448\u0430\u0433\u0443. +message.lock.account=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u0443 \u0443\u0447\u0451\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c. \u0412\u0441\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u0432 \u0442\u0430\u043a\u0438\u0445 \u0443\u0447\u0451\u0442\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u044f\u0445 \u043f\u043e\u0442\u0435\u0440\u044f\u044e\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0441\u0432\u043e\u0438\u043c\u0438 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u043c\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u0430\u043c\u0438. \u042d\u0442\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043e\u0441\u0442\u0430\u043d\u0443\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0434\u043b\u044f \u0434\u0440\u0443\u0433\u0438\u0445 \u0443\u0447\u0451\u0442\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439. +message.migrate.instance.confirm=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u0443\u044e \u043c\u0430\u0448\u0438\u043d\u0443. +message.migrate.instance.to.host=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u043c\u0430\u0448\u0438\u043d\u0443 \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439 \u0443\u0437\u0435\u043b. +message.migrate.instance.to.ps=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u043c\u0430\u0448\u0438\u043d\u0443 \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435. +message.migrate.router.confirm=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u0440\u043e\u0443\u0442\u0435\u0440 \u0432 \u0443\u0437\u0435\u043b +message.migrate.systemvm.confirm=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u0440\u043e\u0443\u0442\u0435\u0440 \u0432 \u0443\u0437\u0435\u043b +message.migrate.volume=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u0442\u043e\u043c \u0432 \u0434\u0440\u0443\u0433\u043e\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435. +message.new.user=\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0432 \u0443\u0447\u0451\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c. +message.no.network.support.configuration.not.true=\u041d\u0438 \u0432 \u043e\u0434\u043d\u043e\u0439 \u0437\u043e\u043d\u0435 \u043d\u0435\u0442 \u0433\u0440\u0443\u043f\u043f \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0435\u0442\u0435\u0432\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b. \u041f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043a \u0448\u0430\u0433\u0443 5. +message.no.network.support=\u0412\u044b\u0431\u0440\u0430\u043d\u043d\u044b\u0439 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440 (vSphere) \u043d\u0435 \u043e\u0431\u043b\u0430\u0434\u0430\u0435\u0442 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u0441\u0435\u0442\u0435\u0432\u044b\u043c\u0438 \u0432\u043e\u0437\u043c\u043e\u0434\u043d\u043e\u0441\u0442\u044f\u043c\u0438. \u041f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043a \u0448\u0430\u0433\u0443 5. +message.no.projects.adminOnly=\u0423 \u0432\u0430\u0441 \u043d\u0435\u0442 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432.
    \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435\u0441\u044c \u043a \u0432\u0430\u0448\u0435\u043c\u0443 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0443 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430. +message.no.projects=\u0423 \u0432\u0430\u0441 \u043d\u0435\u0442 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432.
    \u0421\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u043d\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 \u0432 \u0441\u0435\u043a\u0446\u0438\u0438 "\u041f\u0440\u043e\u0435\u043a\u0442\u044b" +message.number.clusters=

    \# of \u041a\u043b\u0430\u0441\u0442\u0435\u0440\u044b

    +message.number.hosts=

    \# of \u0423\u0437\u043b\u044b

    +message.number.pods=

    \# of \u0421\u0442\u0435\u043d\u0434\u044b

    +message.number.storage=

    \# of \u0422\u043e\u043c\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430

    +message.number.zones=

    \# of \u0417\u043e\u043d\u044b

    +message.pending.projects.1=\u0412 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u044f\: +message.pending.projects.2=\u0414\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u043f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043a \u0440\u0430\u0437\u0434\u0435\u043b \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432, \u0434\u0430\u043b\u0435\u0435 \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u044f \u0438\u0437 \u0432\u044b\u043f\u0430\u0434\u0430\u044e\u0449\u0435\u0433\u043e \u043c\u0435\u043d\u044e. +message.please.add.at.lease.one.traffic.range=\u0414\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u043a\u0430\u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u043e\u0434\u0438\u043d \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0434\u043b\u044f \u0442\u0440\u0430\u0444\u0438\u043a\u0430 +message.please.proceed=\u041f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043a \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0448\u0430\u0433\u0443 +message.please.select.a.configuration.for.your.zone=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u0432\u0430\u0448\u0435\u0439 \u0437\u043e\u043d\u044b +message.please.select.a.different.public.and.management.network.before.removing=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0434\u0440\u0443\u0433\u0443\u044e \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u0443\u044e \u0438 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u044e\u0449\u0443\u044e \u0441\u0435\u0442\u044c \u043f\u0435\u0440\u0435\u0434 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435\u043c +message.please.select.networks=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0441\u0435\u0442\u0438 \u0434\u043b\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b +message.please.wait.while.zone.is.being.created=\u041f\u043e\u0434\u043e\u0436\u0434\u0438\u0442\u0435, \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f \u0437\u043e\u043d\u0430. \u042d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u043d\u044f\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f... +message.project.invite.sent=\u041f\u0440\u0438\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u0435 \u0431\u044b\u043b\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e; \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u0432 \u043f\u0440\u043e\u0435\u043a\u0442 \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u044f. +message.public.traffic.in.advanced.zone=\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u0442\u0440\u0430\u0444\u0438\u043a \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0412\u041c \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0443. \u041f\u0443\u0431\u043b\u0438\u0447\u043d\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 IP \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u044b. \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043c\u043e\u0436\u0435\u0442 \u0438\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c CloudStack UI \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f IP \u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f NAT, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0439 \u0434\u043b\u044f \u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043c\u0435\u0436\u0434\u0443 \u0433\u043e\u0441\u0442\u0435\u0432\u043e\u0439 \u0438 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e\u0439 \u0441\u0435\u0442\u044c\u044e.

    \u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u043a\u0430\u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u043e\u0434\u0438\u043d \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0430\u0434\u0440\u0435\u0441\u043e\u0432 \u0434\u043b\u044f \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u0442\u0440\u0430\u0444\u0438\u043a\u0430. +message.public.traffic.in.basic.zone=\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 \u0442\u0440\u0430\u0444\u0438\u043a \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0412\u041c \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0443 \u0438\u043b\u0438 \u043f\u0440\u0438 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c \u0441\u043b\u0443\u0436\u0431 \u0447\u0435\u0440\u0435\u0437 \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442. \u041f\u0443\u0431\u043b\u0438\u0447\u043d\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 IP \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u044b. \u041f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u0412\u041c, \u0430\u0434\u0440\u0435\u0441 \u0438\u0437 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0445 Ip \u043f\u0440\u0438\u0432\u044f\u0436\u0435\u0442\u0441\u044f \u043a \u043c\u0430\u0448\u0438\u043d\u0435 \u0432 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0433\u043e\u0441\u0442\u0435\u0432\u043e\u0433\u043e \u0430\u0434\u0440\u0435\u0441\u0430 IP. \u0421\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 1-1 NAT \u0434\u043e\u043b\u0436\u0435\u043d \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c\u0441\u044f \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u043c\u0435\u0436\u0434\u0443 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e\u0439 \u0438 \u0433\u043e\u0441\u0442\u0435\u0432\u043e\u0439 \u0441\u0435\u0442\u044c\u044e. \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0442\u0430\u043a\u0436\u0435 \u0438\u043c\u0435\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c CloudStack UI \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0430\u0434\u0440\u0435\u0441\u043e\u0432 \u0434\u043b\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e NAT \u043c\u0435\u0436\u0434\u0443 \u043c\u0430\u0448\u0438\u043d\u0430\u043c\u0438 \u0438 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e\u0439 \u0441\u0435\u0442\u044c\u044e. +message.remove.vpn.access=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a VPN \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. +message.reset.password.warning.notPasswordEnabled=\u0428\u0430\u0431\u043b\u043e\u043d \u0434\u043b\u044f \u044d\u0442\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b \u0441\u043e\u0437\u0434\u0430\u043d \u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0430\u0440\u043e\u043b\u044f +message.reset.password.warning.notStopped=\u0414\u043b\u044f \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043f\u0430\u0440\u043e\u043b\u044f \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u0443 +message.restart.mgmt.server=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0435 \u0441\u0435\u0440\u0432\u0435\u0440(\u044b) \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u043f\u0440\u0438\u043d\u044f\u0442\u0438\u044f \u043d\u043e\u0432\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a. +message.restart.mgmt.usage.server=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0435 \u0441\u0435\u0440\u0432\u0435\u0440 \u0434\u043b\u044f \u0432\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0432 \u0441\u0438\u043b\u0443. +message.restart.network=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u0435\u0442\u044c. +message.security.group.usage=(\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 Ctrl-\u043a\u043b\u0438\u043a, \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0433\u0440\u0443\u043f\u043f\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438) +message.select.a.zone=\u0417\u043e\u043d\u0430 \u043e\u0431\u044b\u0447\u043d\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0435\u0434\u0438\u043d\u0438\u0447\u043d\u043e\u043c\u0443 \u0446\u0435\u043d\u0442\u0440\u0443 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445. \u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0437\u043e\u043d\u044b\u043f\u043e\u043c\u043e\u0433\u0430\u044e\u0442 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0435 \u043e\u0431\u043b\u0430\u043a\u0430, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044f \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0438\u0437\u043e\u043b\u044f\u0446\u0438\u044e \u0438 \u0438\u0437\u0431\u044b\u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c. +message.select.instance=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0441\u0435\u0440\u0432\u0435\u0440. +message.select.iso=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u043e\u0431\u0440\u0430\u0437 ISO \u0434\u043b\u044f \u043d\u043e\u0432\u043e\u0439 \u0412\u041c +message.select.item=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 +message.select.security.groups=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0433\u0440\u0443\u043f\u043f\u0443/\u0433\u0440\u0443\u043f\u043f\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u043d\u043e\u0432\u043e\u0439 \u0412\u041c +message.select.template=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0448\u0430\u0431\u043b\u043e\u043d \u0434\u043b\u044f \u043d\u043e\u0432\u043e\u0439 \u0412\u041c +message.setup.physical.network.during.zone.creation.basic=\u041f\u0440\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u0443\u044e \u0437\u043e\u043d\u0443, \u0432\u044b \u043c\u043e\u0436\u0438\u0442\u0435 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u0434\u043d\u0443 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0441\u0435\u0442\u044c, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u043e\u043e\u0442\u0432\u0435\u0441\u0442\u0432\u0443\u0435\u0442 NIC \u043d\u0430 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440. \u0421\u0435\u0442\u044c \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0438\u0434\u043e\u0432 \u0442\u0440\u0430\u0444\u0438\u043a\u0430.

    \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0442\u0430\u043a\u0436\u0435 \u043f\u0435\u0440\u0435\u0442\u0430\u0441\u043a\u0438\u0432\u0430\u0442\u044c drag and drop \u0434\u0440\u0443\u0433\u0438\u0435 \u0442\u0438\u043f\u044b \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u043d\u0430 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u0435\u0442\u0438. +message.setup.physical.network.during.zone.creation=\u0412\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u043e\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0437\u043e\u043d\u044b, \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u043e\u0434\u0438\u043d \u0438\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0435\u0442\u0435\u0439. \u041a\u0430\u0436\u0434\u0430\u044f \u0441\u0435\u0442\u044c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u0435\u0442\u0435\u0432\u043e\u043c\u0443 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0443 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440\u0430. \u041a\u0430\u043a\u0436\u0434\u0430\u044f \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0441\u0435\u0442\u044c \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0432\u0438\u0434\u043e\u0432 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u0441 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f\u043c\u0438 \u043f\u0440\u0438 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438 \u0432\u0438\u0434\u043e\u0432 \u0442\u0440\u0430\u0444\u0438\u043a\u0430.

    \u041f\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u0435 \u043e\u0434\u0438\u043d \u0438\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0438\u0434\u043e\u0432 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u043a \u043a\u0430\u0436\u0434\u043e\u0439 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0435\u0442\u0438. +message.setup.successful=\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043e\u0431\u043b\u0430\u043a\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0430\! +message.snapshot.schedule=\u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u044e\u0449\u0438\u0435\u0441\u044f \u0441\u043d\u0438\u043c\u043e\u043a\u0438, \u0432\u044b\u0431\u0438\u0440\u0430\u044f \u0438\u0437 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u043d\u0438\u0436\u0435 \u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u0432 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0435\u043d\u0438\u044f +message.specify.url=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u043a\u0430\u0436\u0438\u0442\u0435 URL +message.step.1.continue=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0448\u0430\u0431\u043b\u043e\u043d \u0438\u043b\u0438 ISO \u0434\u043b\u044f \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u044f. +message.step.1.desc=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0448\u0430\u0431\u043b\u043e\u043d \u0434\u043b\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0442\u0430\u043a\u0436\u0435 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u0443\u0441\u0442\u043e\u0439 \u0448\u0430\u0431\u043b\u043e\u043d, \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043e\u0431\u0440\u0430\u0437 ISO \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u043d\u0430. +message.step.2.continue=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 \u0434\u043b\u044f \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u044f. +message.step.2.desc= +message.step.3.continue=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0434\u0438\u0441\u043a\u043e\u0432\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441 \u0434\u043b\u044f \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u044f. +message.step.3.desc= +message.step.4.continue=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0445\u043e\u0442\u044f \u0431\u044b \u043e\u0434\u043d\u0443 \u0441\u0435\u0442\u044c \u0434\u043b\u044f \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u044f. +message.step.4.desc=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c, \u043a \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u043c\u0430\u0448\u0438\u043d\u0430. +message.storage.traffic=\u0422\u0440\u0430\u0444\u0438\u043a \u043c\u0435\u0436\u0434\u0443 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u043c\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u0430\u043c\u0438 CloudStack, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0432\u0441\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0443\u044e\u0442 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f, \u0442\u0430\u043a\u0438\u0435 \u043a\u0430\u043a \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u0445\u043e\u0441\u0442\u044b \u0438 CloudStack \u0441\u0438\u0441\u0442\u0435\u043c\u044b. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u0442\u0435 \u0442\u0440\u0430\u0444\u0438\u043a \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0437\u0434\u0435\u0441\u044c. +message.suspend.project=\u0412\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0440\u0438\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442? +message.template.desc=\u041e\u0431\u0440\u0430\u0437 \u041e\u0421, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u043e\u0439 \u0432 \u0412\u041c +message.tooltip.dns.1=\u0418\u043c\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u0430 DNS \u0434\u043b\u044f \u0412\u041c \u044d\u0442\u043e\u0439 \u0437\u043e\u043d\u044b. \u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 \u044d\u0442\u043e\u0439 \u0437\u043e\u043d\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u043c\u0435\u0442\u044c \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u0434\u043e \u044d\u0442\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430. +message.tooltip.dns.2=\u0418\u043c\u044f \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 DNS \u0434\u043b\u044f \u0412\u041c \u044d\u0442\u043e\u0439 \u0437\u043e\u043d\u044b. \u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 \u044d\u0442\u043e\u0439 \u0437\u043e\u043d\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u043c\u0435\u0442\u044c \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u0434\u043e \u044d\u0442\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430. +message.tooltip.internal.dns.1=\u0418\u043c\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u0430 DNS \u0434\u043b\u044f \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u0412\u041c CloudStack \u044d\u0442\u043e\u0439 \u0437\u043e\u043d\u044b. \u0427\u0430\u0441\u0442\u043d\u044b\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 \u0441\u0442\u0435\u043d\u0434\u043e\u0432 \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u043c\u0435\u0442\u044c \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u0434\u043e \u044d\u0442\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430. +message.tooltip.internal.dns.2=\u0418\u043c\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u0430 DNS \u0434\u043b\u044f \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0445 \u0412\u041c CloudStack \u044d\u0442\u043e\u0439 \u0437\u043e\u043d\u044b. \u0427\u0430\u0441\u0442\u043d\u044b\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 \u0441\u0442\u0435\u043d\u0434\u043e\u0432 \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u043c\u0435\u0442\u044c \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u0434\u043e \u044d\u0442\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430. +message.tooltip.network.domain=\u0421\u0443\u0444\u0444\u0438\u043a\u0441 DNS \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u043e\u043c\u0435\u043d\u043d\u043e\u0433\u043e \u0438\u043c\u0435\u043d\u0438 \u0441\u0435\u0442\u0438, \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0439 \u0433\u043e\u0441\u0442\u0435\u0432\u044b\u043c\u0438 \u0412\u041c. +message.tooltip.pod.name=\u0418\u043c\u044f \u0434\u043b\u044f \u0441\u0442\u0435\u043d\u0434\u0430 +message.tooltip.reserved.system.gateway=\u0428\u043b\u044e\u0437 \u0434\u043b\u044f \u0443\u0437\u043b\u043e\u0432 \u044d\u0442\u043e\u0433\u043e \u0441\u0442\u0435\u043d\u0434\u0430 +message.tooltip.reserved.system.netmask=\u041f\u0440\u0435\u0444\u0438\u043a\u0441 \u0441\u0435\u0442\u0438, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0449\u0438\u0439 \u043f\u043e\u0434\u0441\u0435\u0442\u044c \u0441\u0442\u0435\u043d\u0434\u0430. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 CIDR. +message.tooltip.zone.name=\u0418\u043c\u044f \u0434\u043b\u044f \u0437\u043e\u043d\u044b +message.update.os.preference=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u041e\u0421 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0445\u043e\u0441\u0442\u0430. \u0412\u0441\u0435 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u044b \u0441 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u043c\u0438 \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0435\u043d\u0438\u044f\u043c\u0438 \u0432\u043f\u0435\u0440\u0432\u044b\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043e \u043d\u0430 \u044d\u0442\u043e\u0442 \u0443\u0437\u0435\u043b, \u043f\u0440\u0435\u0436\u0434\u0435 \u0447\u0435\u043c \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0434\u0440\u0443\u0433\u0443\u044e. +message.update.resource.count=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0441\u0447\u0435\u0442\u0447\u0438\u043a \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430. +message.update.ssl=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043e\u0442\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u043e\u0432\u044b\u0439 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u044b\u0439 X.509 SSL \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0434\u043b\u044f \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u043e\u043a\u0441\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440\: +message.validate.instance.name=\u0418\u043c\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0434\u043b\u0438\u043d\u0435\u0435 63 \u0441\u0438\u043c\u0432\u043e\u043b\u0430. \u0422\u043e\u043b\u044c\u043a\u043e ASCII, \u0431\u0443\u043a\u0432\u044b a~z, A~Z, \u0446\u044b\u0444\u0440\u044b 0~9, \u0434\u0435\u0444\u0438\u0441 \u043d\u0435 \u0434\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f. \u0414\u043e\u043b\u0436\u043d\u0430 \u043d\u0430\u0447\u0438\u043d\u0430\u0442\u044c\u0441\u044f \u0441 \u0431\u0443\u043a\u0432\u044b \u0438 \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0431\u0443\u043a\u0432\u043e\u0439 \u0438\u043b\u0438 \u0446\u0438\u0444\u0440\u043e\u0439. +message.virtual.network.desc=\u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0434\u043b\u044f \u0432\u0430\u0448\u0435\u0439 \u0443\u0447\u0435\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438. \u0428\u0438\u0440\u043e\u043a\u043e\u0432\u0435\u0449\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0434\u043e\u043c\u0435\u043d \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432\u043d\u0443\u0442\u0440\u0438 VLAN \u0438 \u0432\u0435\u0441\u044c \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0441\u0435\u0442\u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0443\u0442\u0435\u043c \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0442\u043e\u0440\u0430. +message.vm.create.template.confirm=\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442 \u0412\u041c +message.vm.review.launch=\u041f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0438 \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044c\u0442\u0435\u0441\u044c \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432\u0430\u0448\u0430 \u043c\u0430\u0448\u0438\u043d\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e. +message.volume.create.template.confirm=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d \u044d\u0442\u043e\u0433\u043e \u0442\u043e\u043c\u0430. \u042d\u0442\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u043e\u0434\u043b\u0438\u0442\u044c\u0441\u044f \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0438\u043d\u0443\u0442 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u0442\u043e\u043c\u0430. +message.you.must.have.at.least.one.physical.network=\u0414\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u043a\u0430\u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u043e\u0434\u043d\u0443 \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0441\u0435\u0442\u044c +message.Zone.creation.complete=\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0437\u043e\u043d\u044b \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e +message.zone.creation.complete.would.you.like.to.enable.this.zone=\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0437\u043e\u043d\u044b \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e. \u0425\u043e\u0442\u0438\u0442\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u0443 \u0437\u043e\u043d\u0443? +message.zone.no.network.selection=\u0412\u044b\u0431\u0440\u0430\u043d\u043d\u0430\u044f \u0437\u043e\u043d\u0430 \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0432\u044b\u0431\u043e\u0440\u0430 \u0441\u0435\u0442\u0438. +message.zone.step.1.desc=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0442\u0438\u043f \u0441\u0435\u0442\u0438 \u044d\u0442\u043e\u0439 \u0437\u043e\u043d\u044b. +message.zone.step.2.desc=\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0439 \u0437\u043e\u043d\u044b +message.zone.step.3.desc=\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u0441\u0442\u0435\u043d\u0434\u0430 +mode=\u0420\u0435\u0436\u0438\u043c +network.rate=\u0421\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0441\u0435\u0442\u0438 +notification.reboot.instance=\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u0443 +notification.start.instance=\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u0443 +notification.stop.instance=\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u0443 +side.by.side=\u0411\u043e\u043a-\u043e-\u0411\u043e\u043a +state.Accepted=\u041f\u0440\u0438\u043d\u044f\u0442\u043e +state.Active=\u0412\u043a\u043b\u044e\u0447\u0435\u043d +state.Allocated=\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043e +state.Allocating=\u0412\u044b\u0434\u0435\u043b\u0435\u043d\u0438\u0435 +state.BackedUp=\u0417\u0430\u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043e +state.BackingUp=\u0420\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0435 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 +state.Completed=\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e +state.Creating=\u0421\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f +state.Declined=\u041e\u0442\u043a\u043b\u043e\u043d\u0435\u043d\u043e +state.Destroyed=\u0423\u043d\u0438\u0447\u0442\u043e\u0436\u0435\u043d\u043e +state.Disabled=\u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u043e +state.enabled=\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e +state.Enabled=\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u043e +state.Error=\u041e\u0448\u0438\u0431\u043a\u0430 +state.Expunging=\u0423\u0434\u0430\u043b\u0451\u043d +state.Migrating=\u041c\u0438\u0433\u0440\u0438\u0440\u0443\u044e\u0449\u0438\u0439 +state.Pending=\u041e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f +state.ready=\u0413\u043e\u0442\u043e\u0432 +state.Ready=\u0413\u043e\u0442\u043e\u0432 +state.Running=\u0417\u0430\u043f\u0443\u0449\u0435\u043d\u043e +state.Starting=\u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f +state.Stopped=\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e +state.Stopping=\u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c +state.Suspended=\u041f\u0440\u0438\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e +ui.listView.filters.all=\u0412\u0441\u0435 +ui.listView.filters.mine=\u041c\u043e\u0438 From 1d493acfcc311445a3fd506b8887ec7fc35a1740 Mon Sep 17 00:00:00 2001 From: Milamber Date: Thu, 25 Apr 2013 00:22:46 +0000 Subject: [PATCH 401/607] =?UTF-8?q?CLOUDSTACK-2138=20:=20add=20ca,=20de=5F?= =?UTF-8?q?DE,=20it=5FIT=20ja,=20ko=C3=A7KR,nb=5FNO=20pt=5FBR,=20ru=5FRU?= =?UTF-8?q?=20resource=20files=20for=20UI=20with=20ASCII=20with=20unicode?= =?UTF-8?q?=20encoding.=20(Merging=20for=204.1/Transifex,=20sync=20with=20?= =?UTF-8?q?transifex),=20add=20some=20languages=20in=20combo=20list=20on?= =?UTF-8?q?=20login=20page=20on=20UI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ui/index.jsp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ui/index.jsp b/ui/index.jsp index 9e1743e7d1a..12cb9557912 100644 --- a/ui/index.jsp +++ b/ui/index.jsp @@ -71,11 +71,16 @@ under the License. - + + + + + +
    From 26029f0a268cf509b82b5b07ded0bc46b29bdb1b Mon Sep 17 00:00:00 2001 From: Milamber Date: Thu, 25 Apr 2013 00:50:01 +0000 Subject: [PATCH 402/607] CLOUDSTACK-2138: fix an issue on JA (japanese) resource file --- .../resources/messages_ca.properties.native | 306 ++ .../messages_de_DE.properties.native | 747 +++++ .../classes/resources/messages_es.properties | 861 ++++++ .../messages_it_IT.properties.native | 618 ++++ .../classes/resources/messages_ja.properties | 2704 ++++++++--------- .../messages_nb_NO.properties.native | 365 +++ 6 files changed, 4249 insertions(+), 1352 deletions(-) create mode 100644 client/WEB-INF/classes/resources/messages_ca.properties.native create mode 100644 client/WEB-INF/classes/resources/messages_de_DE.properties.native create mode 100644 client/WEB-INF/classes/resources/messages_es.properties create mode 100644 client/WEB-INF/classes/resources/messages_it_IT.properties.native create mode 100644 client/WEB-INF/classes/resources/messages_nb_NO.properties.native diff --git a/client/WEB-INF/classes/resources/messages_ca.properties.native b/client/WEB-INF/classes/resources/messages_ca.properties.native new file mode 100644 index 00000000000..5f524fed1ea --- /dev/null +++ b/client/WEB-INF/classes/resources/messages_ca.properties.native @@ -0,0 +1,306 @@ +# 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üent informació per habilitar el suport per a Swift +error.installWizard.message=Quelcom ha fallat, vostè 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ínia +label.accept.project.invitation=Accpetar invitació 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ísica +label.add.rule=Afegir regla +label.add.static.nat.rule=Afegir regla de NAT estàtic +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àrrega +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ó i Emmagatzematge +label.compute=Computació +label.configuration=Configuració +label.configure=Configurar +label.confirm.password=Confirmar contrasenya +label.congratulations=Enorabona\! +label.continue.basic.install=Continueu amb la instal·lació bàsica +label.continue=Continuar +label.corrections.saved=Correccions guardades +label.create.project=Crear projecte +label.decline.invitation=Declinar invitació +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ísica de destí +label.destination.zone=Zona de destí +label.destroy.router=Destruir router +label.dhcp=DHCP +label.disabled=Deshabilitat +label.disable.provider=Deshabilitar proveïdor +label.disable.vpn=Deshabilitar VPN +label.drag.new.position=Arrosegar a la nova posició +label.edit.project.details=Editar detalls del projecte +label.egress.rule=Regla de sortida +label.elastic=Elàstic +label.enable.provider=Habilitar proveïdor +label.enable.swift=Habilitar Swift +label.enable.vpn=Habilitar VPN +label.end.vlan=VLAN fi +label.f5=F5 +label.full.path=Camí 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àfic de MV +label.hints=Pistes +label.installWizard.addClusterIntro.subtitle=Que és un cluster? +label.installWizard.addClusterIntro.title=Anem a afegir un cluster +label.installWizard.addHostIntro.subtitle=Què és un amfitrió "host"? +label.installWizard.addHostIntro.title=Anem a afegir un amfitrió +label.installWizard.addPodIntro.subtitle=Que és un pod? +label.installWizard.addPodIntro.title=Anem a afegir un pod +label.installWizard.addPrimaryStorageIntro.subtitle=Què és l'emmagatzematge primari? +label.installWizard.addPrimaryStorageIntro.title=Anem a afegir emmagatzematge primari +label.installWizard.addSecondaryStorageIntro.subtitle=Què és el emmagatzematge secundari? +label.installWizard.addSecondaryStorageIntro.title=Anem a afegir emmagatzematge secundari +label.installWizard.addZoneIntro.subtitle=Que és 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ó d'inici. +label.installWizard.subtitle=Auqesta guia us ajudarà a configurar la vostra instal·lació de CloudStack&\#8482 +label.installWizard.title=Hola i benvigut a CloudStack&\#8482 +label.introduction.to.cloudstack=Introducció 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àrrega +label.load.balancing.policies=Pol·lítiques de balanceig de càrrega +label.local.storage=Emmagatzemament local +label.make.project.owner=Feu la compta propietària del projecte +label.management=Administració +label.manage.resources=Administrar Recursos +label.max.public.ips=Max. IP públiques +label.max.snapshots=Max. instantànies +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ó +label.migrate.instance.to.host=Migrar instància a un altre amfitrió "Host" +label.migrate.instance.to.ps=Migrar instància 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àcies +label.number.of.clusters=Nombre de clústers +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ísica +label.please.specify.netscaler.info=Si us plau doneu informació del NetScaler +label.pod.name=Nom de rack +label.pods=Racks +label.port.forwarding.policies=Pol·lítiques 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ïdors +label.public.network=Xarxa pública +label.Pxe.server.type=Tipus de servidor PXE +label.redundant.state=Estat redundant +label.remind.later=Recordeu-m'ho després +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àtic +label.remove.vm.from.lb=Treure VM de la regla de balanceig de càrrega +label.removing=Esborrant +label.reserved.system.gateway=Pasarel·la reservada del sistema +label.reserved.system.netmask=Màscara reservada del sistema +label.revoke.project.invite=Revocar invitació +label.root.disk.controller=Controlador de disc arrel +label.save.and.continue=Desa i continua +label.select.a.template=Sel·leccioni una plantilla +label.select.a.zone=Sel·leccioni una zona +label.select.iso.or.template=Sel·leccioni ISO o plantilla +label.select.project=Sel·leccionar projecte +label.select-view=Sel·lecioni vista +label.setup=Configuració +label.shutdown.provider=Apagar proveïdor +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àtic habilitat +label.stickiness=Tendència +label.sticky.mode=Mode +label.storage.traffic=Tràfic d'emmagatzemament +label.subdomain.access=Accés 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çes IP +label.total.of.vm=Total de MV +label.total.storage=Total d'emmagatzemament +label.traffic.types=Tipus de tràfics +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és +label.view=Veure +label.virtual.machines=Màquines virtuals +label.virtual.router=Router virtual +label.what.is.cloudstack=Que és 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àgina, no sereu capaços 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ïdor +message.confirm.enable.provider=Si us plau confirmeu que voleu habilitar aquest proveïdor +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ïdor +message.decline.invitation=Esteu segurs de declinar aquesta invitació 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=¿Esteu 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és VPN per aquesta adreça IP +message.generate.keys=Si us plau confirmeu que voleu generar noves claus per aquest usuari. +message.installWizard.click.retry=Feu clic al botó per tornar a intentar l'inici. +message.installWizard.copy.whatIsSecondaryStorage=L'emmagatzemament secundari s'associa amb una zona, i emmagatzema el següent\:
    • Plantilles - Imatges de SO que es poden fer servir per arrencar MVs i poden incloure altra informació de configuració, com ara aplicacions instal·lades
    • Imatges ISO - Imatges de SO que poden ser arrencables o no
    • Snapshots de disc - copies guardades de dades de MV que poden usar-se per recuperació de dades o crear altres plantilles
    +message.installWizard.tooltip.addCluster.name=Un nom per al cluster. Pot ser un text de la seva elecció i no utilitzat per CloudStack. +message.installWizard.tooltip.addHost.hostname=El nom DNS o adreça de l'amfitrió "host". +message.installWizard.tooltip.addHost.password=Aquesta és la contrasenya per a l'usuari del d'amunt (des de la instal·lació 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 és 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ó. +message.installWizard.tooltip.addPod.reservedSystemGateway=La passarel·la per als amfitrions en aquest pot. +message.installWizard.tooltip.addPod.reservedSystemNetmask=La màscara de xarxa en ús en la subxarxa dels clients a utilitzar +message.installWizard.tooltip.addPod.reservedSystemStartIp=Aquest és 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ó. +message.installWizard.tooltip.addPrimaryStorage.name=El nom per al dispositiu d'emmagatzematge +message.installWizard.tooltip.addPrimaryStorage.path=(per a NFS) A NFS, aquest és el camí exportat des del servidor. Camí (per SharedMountPoint). Amb KVM aquest és el camí 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ça IP o nom DNS del dispositiu d'emmagatzematge. +message.installWizard.tooltip.addSecondaryStorage.nfsServer=L'adreça IP del servidor NFS que allotja l'emmagatzematge secundari +message.installWizard.tooltip.addSecondaryStorage.path=La ruta d'exportació, que es troba en el servidor que s'ha especificat anteriorment +message.installWizard.tooltip.configureGuestTraffic.description=Una descripció de la xarxa +message.installWizard.tooltip.configureGuestTraffic.guestGateway=La passarel·la que els convidats han d'utilitzar +message.installWizard.tooltip.configureGuestTraffic.guestNetmask=La màscara de xarxa en ús 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ància a un altra amfitrió "host" +message.migrate.instance.to.ps=Si us plau, confirmi que vol migrar la instància 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.
    Si us plau demaneu a l'administrador que us en crei un. +message.no.projects=No teniu cap projecte.
    Si us plau creeu-ne un des de la secció de projecte. +message.pending.projects.1=Teniu invitacions pendents. +message.pending.projects.2=Per veure, si us plau aneu a la secció de projectes, i sel·leccioneu invitacions al desplegable. +message.project.invite.sent=Invitació enviada a l'usuari; serà afegit al projecte quan accepti l'invitació +message.select.item=Si us plau sel·leccioneu un article +message.setup.successful=Instal·lació 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és diff --git a/client/WEB-INF/classes/resources/messages_de_DE.properties.native b/client/WEB-INF/classes/resources/messages_de_DE.properties.native new file mode 100644 index 00000000000..b1ee867fac2 --- /dev/null +++ b/client/WEB-INF/classes/resources/messages_de_DE.properties.native @@ -0,0 +1,747 @@ +# 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önnen zurückgehen und den Fehler korregieren +error.login=Ihr Benutzername / Passwort stimmt nicht mit uneren unseren Aufzeichnungen überein. +error.session.expired=Ihre Sitzung ist abgelaufen. +force.delete.domain.warning=Achtung\: Diese Auswahl führt zu einer Löschung aller untergeordneten Domains und aller angeschlossenen Konten sowie ihrer Quellen. +force.delete=Erzwinge Löschung +force.remove=Erzwinge Entfernung +force.remove.host.warning=Achtung\: Diese Auswahl wird CloudStack zum sofortigen Anhalten der virtuellen Maschine führen, 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ügen +label.action.attach.disk.processing=Hinzufügen einer Festplatte .... +label.action.attach.iso=ISO hinzufügen +label.action.attach.iso.processing=Hinzufügen einer ISO.... +label.action.cancel.maintenance.mode.processing=Abbruch des Wartungsmodus +label.action.cancel.maintenance.mode=Wartungsmodus abbrechen +label.action.change.password=Passwort ändern +label.action.change.service=Dienst ändern +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äger +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öschen +label.action.delete.account.processing=Löschung des Benutzerkontos .... +label.action.delete.cluster=Löschen des Clusters +label.action.delete.cluster.processing=Löschung des Clusters .... +label.action.delete.disk.offering=Festplatten-Angebot löschen +label.action.delete.disk.offering.processing=Löschen des Festplatten-Angebots .... +label.action.delete.domain=Löschen der Domain +label.action.delete.domain.processing=Löschung der Domain .... +label.action.delete.firewall.processing=Löschung der Firewall .... +label.action.delete.ingress.rule.processing=Löschen der Zutrittsregel .... +label.action.delete.ingress.rule=Zutrittsregel löschen +label.action.delete.IP.range=IP-Bereich löschen +label.action.delete.IP.range.processing=Löschen von IP-Bereich .... +label.action.delete.ISO=ISO löschen +label.action.delete.ISO.processing=Löschen der ISO .... +label.action.delete.load.balancer.processing=Beendigung der Serverlastverteilung.... +label.action.delete.network=Löschen des Netzwerks +label.action.delete.network.processing=Löschung des Netzwerks .... +label.action.delete.pod=Pod löschen +label.action.delete.pod.processing=Löschen des Pod .... +label.action.delete.primary.storage=Hauptspeicher löschen +label.action.delete.primary.storage.processing=Löschen des Hauptspeichers .... +label.action.delete.secondary.storage.processing=Löschen des Sekundärspeichers.... +label.action.delete.secondary.storage=Sekundärspeicher löschen +label.action.delete.security.group.processing=Löschen der Sicherheitsgruppe .... +label.action.delete.security.group=Sicherheitsgruppe löschen +label.action.delete.service.offering.processing=Löschen des Serviceangebots .... +label.action.delete.service.offering=Serviceangebot löschen +label.action.delete.snapshot.processing=Löschen des Schnappschusses.... +label.action.delete.snapshot=Schnappschuss löschen +label.action.delete.template.processing=Löschen der Vorlage .... +label.action.delete.template=Vorlage löschen +label.action.delete.user=Benutzer löschen +label.action.delete.user.processing=Löschung des Benutzers .... +label.action.delete.volume=Datenträger löschen +label.action.delete.volume.processing=Löschen des Datenträgers.... +label.action.delete.zone.processing=Löschen der Zone .... +label.action.delete.zone=Zone löschen +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üssel +label.action.generate.keys=Schlüssel 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öffentlichen +label.action.release.ip.processing=Veröffentlichung der IP.... +label.action.remove.host=Host entfernen +label.action.remove.host.processing=Entfernen des Hosts.... +label.action.reset.password=Passwort zurücksetzen +label.action.reset.password.processing=Zurücksetzen 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ässigung des Clusters .... +label.action.unmanage.cluster=Vernachlässige Cluster +label.action.update.OS.preference=Betriebssystem Präverenz aktualisieren +label.action.update.OS.preference.processing=Aktualisierung der Betriebssystem Präverenz.... +label.active.sessions=Aktive Sitzungen +label.add.account=Konto hinzufügen +label.add.by.cidr=Hinzufügen durch CIDR +label.add.by.group=Hinzufügen durch Gruppe +label.add.cluster=Cluster hinzufügen +label.add.direct.iprange=Direkten Ip-Bereich hinzufügen +label.add.disk.offering=Festplatten-Angebot hinzufügen +label.add.domain=Domain hinzufügen +label.add=Hinzufügen +label.add.host=Host hinzufügen +label.adding.cluster=Cluster hinzufügen +label.adding.failed=Hinzufügen fehlgeschlagen +label.adding=Hinzufügen +label.adding.pod=Hinzufügen des Pods +label.adding.processing=Hinzufügen.... +label.add.ingress.rule=Zutrittsregel hinzufügen +label.adding.succeeded=Erfolgreich hinzugefügt +label.adding.user=Nutzer hinzufügen +label.adding.zone=Hinzufügen der Zone +label.add.ip.range=IP Bereich hinzufügen +label.additional.networks=Zusätzliche Networks +label.add.load.balancer=Serverlastverteilung hinzufügen +label.add.more=Mehr hinzufügen +label.add.network.device=Hinzufügen eines Netzwerkgerätes +label.add.network=Netzwerk hinzufügen +label.add.pod=Pod hinzufügen +label.add.primary.storage=Hauptspeicher hinzufügen +label.add.secondary.storage=Sekundärspeicher hinzufügen +label.add.security.group=Sicherheitsgruppe hinzufügen +label.add.service.offering=Service-Angebot hinzufügen +label.add.system.service.offering=System-Service-Angebot hinzufügen +label.add.template=Vorlage hinzufügen +label.add.user=Benutzer hinzufügen +label.add.vlan=VLAN hinzufügen +label.add.volume=Volume hinzufügen +label.add.zone=Zone hinzufügen +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üssel +label.assign.to.load.balancer=Instanz zum Lastverteiler hinzufügen +label.assign=Zuweisen +label.associated.network.id=Assozierte Netzwerk ID +label.attached.iso=Angehängte ISO +label.availability=Verfügbarkeit +label.availability.zone=Verfügbare Zone +label.available.public.ips=Verfügbaren öffentlichen IP-Adressen +label.available=Verfügbar +label.back=Zurück +label.basic.mode=Grundmodus +label.bootable=Bootbar +label.broadcast.domain.type=Benachrichtigung an alle Nutzer über Domain Typ +label.by.account=Nach Benutzerkonto +label.by.availability=Nach Verfügbarkeit +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=über 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ätigung +label.congratulations=Herzlichen Glückwunsch +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=überschneidende Zonen +label.custom.disk.size=Benutzerdefinierte Festplattengrösse +label.daily=Täglich +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öschen +label.deleting.failed=Löschen fehlgeschlagen +label.deleting.processing=Löschen .... +label.description=Beschreibung +label.destroy=Zerstören +label.detaching.disk=Entfernen der Festplatte +label.details=Details +label.device.id=Geräte-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öße +label.disk.size.gb=Festplattengröße (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ührungszeichen 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ündlich +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ügen +label.installWizard.addHostIntro.subtitle=Was ist ein host? +label.installWizard.addHostIntro.title=host hinzufügen +label.installWizard.addPodIntro.subtitle=Was ist ein pod? +label.installWizard.addPodIntro.title=pod hinzufügen +label.installWizard.addPrimaryStorageIntro.subtitle=Was ist primay storage? +label.installWizard.addPrimaryStorageIntro.title=primary storage hinzufügen +label.installWizard.addSecondaryStorageIntro.subtitle=Was ist secondary storage? +label.installWizard.addSecondaryStorageIntro.title=secondary storage +label.installWizard.addZone.title=zone hinzufügen +label.installWizard.click.launch=Bitte den Start Button drücken +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ültige Ganzzahl +label.invalid.number=Ungültige 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önnen 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örte 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älle +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üsse +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ät +label.network.device.type=Netzwerkgerätetyp +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ügbare Aktionen +label.no.alerts=Keine neuen Warnungen +label.no.errors=Keine neuen Fehler +label.no.isos=Kein verfügbaren ISOs +label.no.items=Keine verfügbaren Einträge +label.no=Nein +label.none=Kein +label.no.security.groups=Keine verfügbare 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äferenz +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=Öffentliches Interface +label.public.ips=Öffentliche IP-Adressen +label.public.ip=Öffentliche IP-Adresse +label.public.port=Öffentlicher Port +label.public=Öffentlich +label.public.zone=Öffentliche 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ärspeicher +label.secondary.used=Genutzter Sekundärspeicher +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ängepunkt +label.show.ingress.rule=Zeige Regeln, die den Zutritt steuern +label.size=Größe +label.snapshot.limits=Schnappschuss Grenzen +label.snapshot.name=Schnappschuss Name +label.snapshot=Schnappschuss +label.snapshots=Schnappschüsse +label.snapshot.s=Schnappschuss (Schnappschüsse) +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=Überreichen +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ügbar +label.unlimited=uneingeschränkt +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ügen +label.vm.destroy=Zerstören +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öchentlich +label.welcome=Willkommen +label.yes=Ja +label.zone.id=Zone ID +label.zone=Zone +message.acquire.public.ip=Bitte wählen Sie eine Zone, von der Sie Ihre neue IP erlangen möchten. +message.action.cancel.maintenance=Ihr Host ist erfolgreich für die Wartung abgebrochen. Dieser Prozess kann ein paar Minuten dauern. +message.action.cancel.maintenance.mode=Bitte bestätigen Sie, dass Sie die Wartung abbrechen möchten. +message.action.change.service.warning.for.instance=Ihre Instanz muss zuerst unterbrochen werden, bevor Sie Ihr derzeitiges Service-Angebot ändern möchten. +message.action.change.service.warning.for.router=Ihre Instanz muss zuerst unterbrochen werden, bevor Sie Ihr derzeitiges Service-Angebot ändern möchten. +message.action.delete.cluster=Bitte bestätigen Sie, dass Sie dieses Cluster löschen möchten. +message.action.delete.disk.offering=Bitte bestätigen Sie, dass Sie dieses Festplatten-Angebot löschen möchten. +message.action.delete.domain=Bitte bestätigen Sie, dass Sie diese Domain löschen möchten. +message.action.delete.ingress.rule=Bitte bestätigen Sie, dass Sie diese Zutrittsregel löschen wollen. +message.action.delete.ISO=Bitte bestätigen Sie, dass Sie diese ISO löschen möchten. +message.action.delete.ISO.for.all.zones=Die ISO gilt für alle Zonen. Bitte bestätigen Sie, dass Sie diese aus allen Zonen löschen möchten. +message.action.delete.network=Bitte bestätigen Sie, dass Sie dieses Netzwerk löschen möchten. +message.action.delete.pod=Bitte bestätigen Sie, dass Sie dieses pod löschen möchten. +message.action.delete.primary.storage=Bitte bestätigen Sie, dass Sie diese Hauptspeicher löschen möchten. +message.action.delete.secondary.storage=Bitte bestätigen Sie, dass Sie diesen Sekundärspeicher löschen möchten. +message.action.delete.security.group=Bitte bestätigen Sie, dass Sie diese Sicherheitsgruppe löschen möchten. +message.action.delete.service.offering=Bitte bestätigen Sie, dass Sie diesen Service-Angebot löschen möchten. +message.action.delete.snapshot=Bitte bestätigen Sie, dass Sie diesen Schnappschuss löschen möchten. +message.action.delete.template=Bitte bestätigen Sie, dass Sie diese Vorlage löschen möchten. +message.action.delete.template.for.all.zones=Die Vorlage wird für alle Zonen genutzt. Bitte bestätigen Sie, dass Sie diese für alle Zonen löschen möchten. +message.action.delete.volume=Bitte bestätigen Sie, dass Sie dieses Volume löschen möchten. +message.action.delete.zone=Bitte bestätigen Sie, dass Sie diese Zone löschen möchten. +message.action.destroy.instance=Bitte bestätigen Sie, dass Sie diese Instanz löschen möchten. +message.action.destroy.systemvm=Bitte bestätigen Sie, dass Sie die System VM zerstören möchten. +message.action.disable.cluster=Bitte bestätigen Sie, dass Sie diesen Cluster deaktivieren möchten. +message.action.disable.pod=Bitte bestätigen Sie, dass Sie diesen Pod deaktivieren möchten. +message.action.disable.static.NAT=Bitte bestätigen Sie, dass Sie die statische NAT deaktivieren möchten. +message.action.disable.zone=Bitte bestätigen Sie, dass Sie diese Zone deaktivieren möchten. +message.action.enable.cluster=Bitte bestätigen Sie, dass Sie diesen Cluster aktivieren möchten. +message.action.enable.pod=Bitte bestätigen Sie, dass Sie diesen Pod aktivieren möchten. +message.action.enable.zone=Bitte bestätigen Sie, dass Sie diese Zone aktivieren möchten. +message.action.instance.reset.password=Bitte bestätigen Sie, dass Sie das ROOT Passwort für diese virtuelle Maschine ändern möchten. +message.action.manage.cluster=Bitte bestätigen Sie, dass das Cluster bearbeitet werden soll. +message.action.reboot.instance=Bitte bestätigen Sie, dass Sie diese Instanz neustarten möchten. +message.action.reboot.systemvm=Bitte bestätigen Sie, dass Sie diese System VM neustarten möchten. +message.action.reset.password.off=Ihre Instanz unterschützt derzeitig nicht dieses Feature. +message.action.reset.password.warning=Ihre Instanz muss zuerst unterbrochen werden, bevor Sie Ihr derzeitiges Passwort ändern können. +message.action.restore.instance=Bitte bestätigen Sie, dass Sie diese Instanz wiederherstellen möchten. +message.action.start.instance=Bitte bestätigen Sie, dass Sie diese Instanz starten möchten. +message.action.start.router=Bitte bestätigen Sie, dass Sie diesen Router starten möchten. +message.action.start.systemvm=Bitte bestätigen Sie, dass Sie diese System VM starten möchten. +message.action.stop.instance=Bitte bestätigen Sie, dass Sie diese Instanz anhalten möchten. +message.action.stop.systemvm=Bitte bestätigen Sie, dass Sie diese System VM anhalten möchten. +message.action.unmanage.cluster=Bitte bestätigen Sie, dass Sie das Cluster vernachlässigen möchten. +message.add.firewall=Eine Firewall zur Zone hinzufügen +message.add.host=Bitte spezifizieren Sie die folgenden Parameter, um einen neuen Host hinzuzufügen. +message.additional.networks.desc=Bitte wählen Sie ein oder mehrere Netzwerke aus, an die Ihre virtuelle Instanz verbunden wird. +message.add.load.balancer=Einen Lastverteiler zur Zone hinzufügen +message.add.primary=Bitte spezifizieren Sie die folgenden Parameter, um einen neuen Hauptspeicher hinzuzufügen +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ügen. +message.allow.vpn.access=Bitte geben Sie einen Benutzernamen und ein Kennwort für den Benutzer ein, für den Sie VPN-Zugang möchten. +message.apply.snapshot.policy=Sie haben Ihre derzeitige Schnappschuss Richtlinie erfolgreich aktualisiert. +message.attach.iso.confirm=Bitte bestätigen Sie, dass sie die ISO zu Ihrer virtuellen Instanz hinzufügen möchten. +message.change.offering.confirm=Bitte bestätigen Sie, dass Sie das Service-Angebot dieser virtuellen Instanz ändern möchten. +message.copy.iso.confirm=Bitte bestätigen Sie, dass Sie Ihre ISO kopieren möchten und zwar nach +message.delete.account=Bitte bestätigen Sie, dass Sie dieses Benutzerkonto löschen möchten. +message.detach.iso.confirm=Bitte bestätigen Sie, dass Sie die ISO von der virtuellen Instanz trennen möchten. +message.disable.account=Bitte bestätigen Sie, dass Sie Ihr Benutzerkonto deaktivieren möchten. 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ätigen Sie, dass Sie den VPN Zugriff deaktivieren möchten. +message.enable.account=Bitte bestätigen Sie, dass Sie dieses Konto aktivieren möchten. +message.enabled.vpn=Ihr VPN Zugriff ist zurzeit aktiv und via IP können Sie darauf zugreifen +message.enable.vpn.access=VPN ist zurzeit nicht für diese IP Addresse aktiviert. Möchten Sie den VPN Zugriff aktivieren? +message.installWizard.click.retry=Bitte den Start Button für einen neuen Versuch drücken +message.installWizard.tooltip.addCluster.name=Der Name des Clusters. Der Name kann frei gewählt 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=überlicherweise root +message.installWizard.tooltip.addPod.name=Der Name für den pod +message.installWizard.tooltip.addPod.reservedSystemGateway=Das Gateways für 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ür NFS) Bei NFS wird hier der exportierte Pfad (Shared Mount Point) angegeben. Für 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ür 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ür 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ür das Netzwerk +message.migrate.instance.to.host=Bitte bestätigen sie, dass die Instanz auf einen anderen Host migriert werden soll +message.migrate.instance.to.ps=Bitte bestätigen sie, dass sie die Instanz auf einen anderen primären Speicher migrieren wollen. +message.new.user=Spezifieren Sie das folgende um einen neuen Nutzer dem Benutzerkonto hinzuzufügen +message.remove.vpn.access=Bitte bestätigen Sie, dass Sie den VPN-Zugriff vom folgenden Benutzer entfernen möchten. +message.setup.successful=Cloud setup erfolgreich +message.step.1.continue=Bitte wählen Sie eine Vorlage oder ISO, um fortzufahren +message.step.2.continue=Bitte wählen Sie ein Service-Angebot, um fortzufahren +message.step.2.desc= +message.step.3.continue=Bitte wählen Sie ein Festplatten-Angebot, um fortzufahren +message.step.3.desc= +message.step.4.continue=Bitte wählen Sie mindestens ein Netzwerk, um fortzufahren +message.step.4.desc=Bitte wählen Sie Ihr Hauptnetzwerk zu dem Ihre virtuelle Instanz verbunden sein wird. +message.vm.create.template.confirm=Das Erstellen einer Vorlage führt automatisch zu einem Neustart der VM. +message.zone.step.1.desc=Bitte wählen Sie ein Netzwerk-Modell für Ihre Zone. +message.zone.step.2.desc=Bitte geben Sie die folgende Information ein, um eine neue Zone hinzuzufügen +message.zone.step.3.desc=Bitte geben Sie die folgende Information ein, um einen neuen pod hinzuzufügen +network.rate=Netzwerk-Rate +state.Allocated=Zugeteilt +state.Disabled=Deaktiviert +state.Error=Fehler diff --git a/client/WEB-INF/classes/resources/messages_es.properties b/client/WEB-INF/classes/resources/messages_es.properties new file mode 100644 index 00000000000..28f9363724a --- /dev/null +++ b/client/WEB-INF/classes/resources/messages_es.properties @@ -0,0 +1,861 @@ +# 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\: Seleccione una plantilla +label.step.2=Paso 2 +label.step.2.title=Paso 2\: Oferta de Servicio +label.step.3=Paso 3 +label.step.3.title=Paso 3\: Seleccione un disco Ofrenda +label.step.4=Paso 4 +label.step.4.title=Paso 4\: Red +label.step.5=Paso 5 +label.step.5.title=Paso 5\: Revisi\u00c3\u00b3n +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\: ] +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\: Seleccione una red +label.zone.step.2.title=Paso 2\: A\u00c3\u00b1adir una zona +label.zone.step.3.title=Paso 3\: A\u00c3\u00b1adir una vaina +label.zone.step.4.title=Paso 4\: A\u00c3\u00b1adir un rango de IP +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 zona , la consola de +message.add.cluster.zone=A\u00c3\u00b1adir un hipervisor administradas por cl\u00c3\u00baster de zona +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 red en la zona +message.add.ip.range.to.pod=

    A\u00c3\u00b1adir un rango de IP de la vaina\:

    +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\: +message.add.pod=Agregar una vaina nueva zona +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 zona , la consola de +message.add.secondary.storage=A\u00c3\u00b1adir un nuevo almacenamiento de zona +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 * no * 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 XXX de la zona +message.create.template.vm=Crear VM de la plantilla +message.create.template.volume=Por favor, especifique la siguiente informaci\u00c3\u00b3n antes de crear una plantilla de su 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.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 00000 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, haga clic aqu\u00c3\u00ad 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=

    \# de Grupos

    +message.number.hosts=

    \# de Anfitri\u00c3\u00b3n

    +message.number.pods=

    \# de Las vainas

    +message.number.storage=

    \# de Almacenamiento primario

    +message.number.zones=

    \# de Zonas

    +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 pulse Ctrl 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 diff --git a/client/WEB-INF/classes/resources/messages_it_IT.properties.native b/client/WEB-INF/classes/resources/messages_it_IT.properties.native new file mode 100644 index 00000000000..a0b63c154f3 --- /dev/null +++ b/client/WEB-INF/classes/resources/messages_it_IT.properties.native @@ -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à 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à 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à 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 è un cluster? +label.installWizard.addClusterIntro.title=Let’s aggiungere un cluster +label.installWizard.addHostIntro.subtitle=Che cosa è un host? +label.installWizard.addHostIntro.title=Let’s aggiungere un host +label.installWizard.addPodIntro.subtitle=Che cosa è un pod? +label.installWizard.addPodIntro.title=Let’s aggiungere un pod +label.installWizard.addPrimaryStorageIntro.subtitle=Che cosa è un primary storage? +label.installWizard.addPrimaryStorageIntro.title=Let’s aggiungere primary storage +label.installWizard.addSecondaryStorageIntro.subtitle=Che cosa è un secondary storage? +label.installWizard.addSecondaryStorageIntro.title=Let’s aggiungere secondary storage +label.installWizard.addZoneIntro.subtitle=Che cosa è 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à 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ù di una riga +label.move.to.bottom=Sposta giù 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à 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à 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à con CloudStack per utilizzi precedenti, si può 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à +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à del Sistema +label.task.completed=Attività 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 è CloudStack&\#8482? +label.xen.traffic.label=Etichetta del traffico via XenServer +label.yes=Sì +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.management=Management\: Traffico di rete tra le risorse interne di CloudStack, incluso qualsiasi componente che comunichi con il Management Server, come ad esempio gli host e le VM di Sistema di CloudStack +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 è 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 è 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 è configurato. NOTA\: Una volta chiusa questa pagina, non sarà più possibile ri-configurare S3. +message.after.enable.swift=Configurazione Swift completata. NOTA\: Una volta che questa pagina viene chiusa, non sarà 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ù 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 è 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 è 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 è 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ù sofisticate. Queto modello di rete fornisce la maggior flessibilità nel definire reti guest e offrendo funzionalità 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à 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 è l'unità organizzativa più grandi in CloudStack, e corrisponde tipicamente ad un datacenter singolo. Le zono offrono isolamento fisico e ridondanza. Una zona è costituita da uno o più pod (ognuno dei quali contiene più host e server di storage primario) ed un server di storage secondario condiviso da tutti i pod appartenenti alla zona. +message.detach.disk=Si è sicuri di voler sganciare questo disco? +message.disable.user=Si prega di confermare di voler disabilitare questo utente. +message.disable.vpn=Si è 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ò essere utilizzato ad esempio per identificare un singolo rack. Gli host appartenenti al pod sono nella stessa subnet.

    Un pod è il secondo componente organizzativo più grande in una installazione CloudStack&\#8482;. I pod sono contenuti in zone. Ogni zona può contenere uno o più pod; in una Installazione di Base, si configura un solo pod nella zona. +message.installWizard.copy.whatIsAZone=Una zona è il componente organizzativo più grande in una installazione CloudStack&\#8482;. Una zona corrisponde solitamente ad un singolo datacenter, sebbene sia consentito avere più zone in un datacenter. Il beneficio di organizzare l'infrastruttura in zone deriva dalla possibilità di creare isolamento e ridondanza. Per esempio, ogni zona può avere la propria configurazione di alimentazione elettrica e collegamenti di rete, e le zone possono essere anche separate geograficamente (anche se non è un requisito). +message.installWizard.copy.whatIsSecondaryStorage=Un Secondary storage è associato ad una zona, ed è utilizzato per la memorizzazione di\:
    • 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
    • Immagini ISO - Immagini OS utilizzabili che possono anche essere non-bootable
    • Snapshot di volumi disco - copie salvate di dati delle VM utilizzabili per il recupero di dati o per la creazione di nuovi template
    +message.installWizard.tooltip.addCluster.name=Un nome per il cluster. Questo può essere assegnato utilizzando testo a scelta e non è utilizzato da CloudStack. +message.installWizard.tooltip.addHost.hostname=Il nome DNS o l'indirizzo IP del sistema host. +message.installWizard.tooltip.addHost.password=Questa è 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 è 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 è 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 è 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 è 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à 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à 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à 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 è 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.
    Si prega di chiedere la creazione di un nuovo progetto al proprio amministratore. +message.no.projects=Non si possiedono progetti.
    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ò richiedere tempo... +message.project.invite.sent=L'invito è stato spedito all'utente; l'utente sarà 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 è 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à 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ò 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.

    E' possibile anche spostare altri tipi di traffico sulla rete fisica in modalità drag and drop. +message.setup.successful=L'installazione del cloud è completata con successo\! +message.specify.url=Si prega di specificare la URL +message.step.2.desc= +message.step.3.desc= +message.suspend.project=Si è 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à 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ò 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, è necessario procedere come segue, a seconda di dove si intende avviare le VM di sistema\:

    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.

    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.


    Si intende procedere? +mode=Modalità +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 diff --git a/client/WEB-INF/classes/resources/messages_ja.properties b/client/WEB-INF/classes/resources/messages_ja.properties index 7873a2de9a3..2380e914a75 100644 --- a/client/WEB-INF/classes/resources/messages_ja.properties +++ b/client/WEB-INF/classes/resources/messages_ja.properties @@ -15,873 +15,873 @@ # specific language governing permissions and limitations # under the License. -changed.item.properties=\\u9805\\u76EE\\u306E\\u30D7\\u30ED\\u30D1\\u30C6\\u30A3\\u306E\\u5909\\u66F4 +changed.item.properties=\u9805\u76EE\u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u306E\u5909\u66F4 confirm.enable.s3=S3\u57fa\u76e4\u30bb\u30ab\u30f3\u30c0\u30ea\u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u6709\u52b9\u5316\u3059\u308b\u305f\u3081\u306b\u306f\u3001\u4ee5\u4e0b\u306e\u60c5\u5831\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044 -confirm.enable.swift=Swift1 \\u306E\\u30B5\\u30DD\\u30FC\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u306B\\u306F\\u3001\\u6B21\\u306E\\u60C5\\u5831\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -error.could.not.enable.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3067\\u304D\\u307E\\u305B\\u3093\\u3067\\u3057\\u305F -error.installWizard.message=\\u554F\\u984C\\u304C\\u767A\\u751F\\u3057\\u307E\\u3057\\u305F\\u3002\\u623B\\u3063\\u3066\\u30A8\\u30E9\\u30FC\\u3092\\u4FEE\\u6B63\\u3067\\u304D\\u307E\\u3059\\u3002 -error.invalid.username.password=\\u7121\\u52B9\\u306A\\u30E6\\u30FC\\u30B6\\u30FC\\u540D\\u307E\\u305F\\u306F\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 -error.login=\\u30E6\\u30FC\\u30B6\\u30FC\\u540D/\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u304C\\u8A18\\u9332\\u3068\\u4E00\\u81F4\\u3057\\u307E\\u305B\\u3093\\u3002 +confirm.enable.swift=Swift1 \u306E\u30B5\u30DD\u30FC\u30C8\u3092\u6709\u52B9\u306B\u3059\u308B\u306B\u306F\u3001\u6B21\u306E\u60C5\u5831\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +error.could.not.enable.zone=\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F +error.installWizard.message=\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u623B\u3063\u3066\u30A8\u30E9\u30FC\u3092\u4FEE\u6B63\u3067\u304D\u307E\u3059\u3002 +error.invalid.username.password=\u7121\u52B9\u306A\u30E6\u30FC\u30B6\u30FC\u540D\u307E\u305F\u306F\u30D1\u30B9\u30EF\u30FC\u30C9 +error.login=\u30E6\u30FC\u30B6\u30FC\u540D/\u30D1\u30B9\u30EF\u30FC\u30C9\u304C\u8A18\u9332\u3068\u4E00\u81F4\u3057\u307E\u305B\u3093\u3002 error.menu.select=\u00e3\u0082\u00a2\u00e3\u0082\u00a4\u00e3\u0083\u0086\u00e3\u0083\u00a0\u00e3\u0081\u008c\u00e9\u0081\u00b8\u00e6\u008a\u009e\u00e3\u0081\u0095\u00e3\u0082\u008c\u00e3\u0081\u00a6\u00e3\u0081\u0084\u00e3\u0081\u00aa\u00e3\u0081\u0084\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0082\u00a2\u00e3\u0082\u00af\u00e3\u0082\u00b7\u00e3\u0083\u00a7\u00e3\u0083\u00b3\u00e3\u0082\u0092\u00e5\u00ae\u009f\u00e8\u00a1\u008c\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u0093\u00e3\u0081\u00a8\u00e3\u0081\u008c\u00e3\u0081\u00a7\u00e3\u0081\u008d\u00e3\u0081\u00be\u00e3\u0081\u009b\u00e3\u0082\u0093 -error.mgmt.server.inaccessible=\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002\\u5F8C\\u3067\\u518D\\u5B9F\\u884C\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -error.password.not.match=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u304C\\u4E00\\u81F4\\u3057\\u307E\\u305B\\u3093 -error.please.specify.physical.network.tags=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30BF\\u30B0\\u3092\\u6307\\u5B9A\\u3057\\u306A\\u3051\\u308C\\u3070\\u3001\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306F\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002 -error.session.expired=\\u30BB\\u30C3\\u30B7\\u30E7\\u30F3\\u306E\\u6709\\u52B9\\u671F\\u9650\\u304C\\u5207\\u308C\\u307E\\u3057\\u305F\\u3002 -error.something.went.wrong.please.correct.the.following=\\u554F\\u984C\\u304C\\u767A\\u751F\\u3057\\u307E\\u3057\\u305F\\u3002\\u6B21\\u306E\\u5185\\u5BB9\\u3092\\u4FEE\\u6B63\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 -error.unable.to.reach.management.server=\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u901A\\u4FE1\\u3067\\u304D\\u307E\\u305B\\u3093 +error.mgmt.server.inaccessible=\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093\u3002\u5F8C\u3067\u518D\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +error.password.not.match=\u30D1\u30B9\u30EF\u30FC\u30C9\u304C\u4E00\u81F4\u3057\u307E\u305B\u3093 +error.please.specify.physical.network.tags=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30BF\u30B0\u3092\u6307\u5B9A\u3057\u306A\u3051\u308C\u3070\u3001\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002 +error.session.expired=\u30BB\u30C3\u30B7\u30E7\u30F3\u306E\u6709\u52B9\u671F\u9650\u304C\u5207\u308C\u307E\u3057\u305F\u3002 +error.something.went.wrong.please.correct.the.following=\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u6B21\u306E\u5185\u5BB9\u3092\u4FEE\u6B63\u3057\u3066\u304F\u3060\u3055\u3044 +error.unable.to.reach.management.server=\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3068\u901A\u4FE1\u3067\u304D\u307E\u305B\u3093 error.unresolved.internet.name=\u3042\u306a\u305f\u306e\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u540d\u306f\u89e3\u6c7a\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002 -extractable=\\u62BD\\u51FA\\u53EF\\u80FD -force.delete.domain.warning=\\u8B66\\u544A\: \\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3059\\u308B\\u3068\\u3001\\u3059\\u3079\\u3066\\u306E\\u5B50\\u30C9\\u30E1\\u30A4\\u30F3\\u304A\\u3088\\u3073\\u95A2\\u9023\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3068\\u305D\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u304C\\u524A\\u9664\\u3055\\u308C\\u307E\\u3059\\u3002 -force.delete=\\u5F37\\u5236\\u524A\\u9664 -force.remove.host.warning=\\u8B66\\u544A\: \\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3059\\u308B\\u3068\\u3001\\u5B9F\\u884C\\u4E2D\\u306E\\u3059\\u3079\\u3066\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u304C\\u5F37\\u5236\\u7684\\u306B\\u505C\\u6B62\\u3055\\u308C\\u3001\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u304B\\u3089\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u304C\\u5F37\\u5236\\u7684\\u306B\\u89E3\\u9664\\u3055\\u308C\\u307E\\u3059\\u3002 -force.remove=\\u5F37\\u5236\\u89E3\\u9664 -force.stop.instance.warning=\\u8B66\\u544A\: \\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u5F37\\u5236\\u505C\\u6B62\\u306F\\u3001\\u6700\\u7D42\\u624B\\u6BB5\\u306B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u30C7\\u30FC\\u30BF\\u3092\\u640D\\u5931\\u3059\\u308B\\u3060\\u3051\\u3067\\u306A\\u304F\\u3001\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306E\\u52D5\\u4F5C\\u304C\\u4E00\\u8CAB\\u3057\\u306A\\u304F\\u306A\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -force.stop=\\u5F37\\u5236\\u505C\\u6B62 -ICMP.code=ICMP \\u30B3\\u30FC\\u30C9 -ICMP.type=ICMP \\u306E\\u7A2E\\u985E -image.directory=\\u753B\\u50CF\\u30C7\\u30A3\\u30EC\\u30AF\\u30C8\\u30EA -inline=\\u76F4\\u5217 -instances.actions.reboot.label=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u518D\\u8D77\\u52D5 -label.accept.project.invitation=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u62DB\\u5F85\\u306E\\u627F\\u8AFE -label.account.and.security.group=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3001\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 -label.account.id=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 ID -label.account.name=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u540D -label.account.specific=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u56FA\\u6709 -label.accounts=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.acquire.new.ip=\\u65B0\\u3057\\u3044 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u53D6\\u5F97 -label.action.attach.disk.processing=\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.attach.disk=\\u30C7\\u30A3\\u30B9\\u30AF\\u306E\\u30A2\\u30BF\\u30C3\\u30C1 -label.action.attach.iso=ISO \\u306E\\u30A2\\u30BF\\u30C3\\u30C1 -label.action.attach.iso.processing=ISO \\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.cancel.maintenance.mode.processing=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u3092\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.cancel.maintenance.mode=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u306E\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB -label.action.change.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u306E\\u5909\\u66F4 -label.action.change.service.processing=\\u30B5\\u30FC\\u30D3\\u30B9\\u3092\\u5909\\u66F4\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.change.service=\\u30B5\\u30FC\\u30D3\\u30B9\\u306E\\u5909\\u66F4 -label.action.copy.ISO=ISO \\u306E\\u30B3\\u30D4\\u30FC -label.action.copy.ISO.processing=ISO \\u3092\\u30B3\\u30D4\\u30FC\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.copy.template.processing=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u30B3\\u30D4\\u30FC\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.copy.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u30B3\\u30D4\\u30FC -label.action.create.template.from.vm=VM \\u304B\\u3089\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u4F5C\\u6210 -label.action.create.template.from.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u304B\\u3089\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u4F5C\\u6210 -label.action.create.template.processing=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.create.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210 -label.action.create.vm.processing=VM \\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.create.vm=VM \\u306E\\u4F5C\\u6210 -label.action.create.volume.processing=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.create.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u4F5C\\u6210 -label.action.delete.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u524A\\u9664 -label.action.delete.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u524A\\u9664 -label.action.delete.disk.offering.processing=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u524A\\u9664 -label.action.delete.domain.processing=\\u30C9\\u30E1\\u30A4\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.domain=\\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u524A\\u9664 -label.action.delete.firewall.processing=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.firewall=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u898F\\u5247\\u306E\\u524A\\u9664 -label.action.delete.ingress.rule.processing=\\u53D7\\u4FE1\\u898F\\u5247\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u524A\\u9664 -label.action.delete.IP.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u524A\\u9664 -label.action.delete.IP.range.processing=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.ISO=ISO \\u306E\\u524A\\u9664 -label.action.delete.ISO.processing=ISO \\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.load.balancer.processing=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u306E\\u524A\\u9664 -label.action.delete.network.processing=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u524A\\u9664 -label.action.delete.nexusVswitch=Nexus 1000V \\u306E\\u524A\\u9664 -label.action.delete.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u524A\\u9664 -label.action.delete.pod.processing=\\u30DD\\u30C3\\u30C9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u524A\\u9664 -label.action.delete.primary.storage.processing=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u524A\\u9664 -label.action.delete.secondary.storage.processing=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u524A\\u9664 -label.action.delete.security.group.processing=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.security.group=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u306E\\u524A\\u9664 -label.action.delete.service.offering.processing=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u524A\\u9664 -label.action.delete.snapshot.processing=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.snapshot=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u524A\\u9664 -label.action.delete.system.service.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u524A\\u9664 -label.action.delete.template.processing=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u524A\\u9664 -label.action.delete.user.processing=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u524A\\u9664 -label.action.delete.volume.processing=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u524A\\u9664 -label.action.delete.zone.processing=\\u30BE\\u30FC\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u524A\\u9664 -label.action.destroy.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u7834\\u68C4\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.destroy.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u7834\\u68C4 -label.action.destroy.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u7834\\u68C4\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.destroy.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u7834\\u68C4 -label.action.detach.disk.processing=\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.detach.disk=\\u30C7\\u30A3\\u30B9\\u30AF\\u306E\\u30C7\\u30BF\\u30C3\\u30C1 -label.action.detach.iso=ISO \\u306E\\u30C7\\u30BF\\u30C3\\u30C1 -label.action.detach.iso.processing=ISO \\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.disable.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.disable.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u7121\\u52B9\\u5316 -label.action.disable.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.disable.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u7121\\u52B9\\u5316 -label.action.disable.nexusVswitch=Nexus 1000V \\u306E\\u7121\\u52B9\\u5316 -label.action.disable.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u7121\\u52B9\\u5316 -label.action.disable.pod.processing=\\u30DD\\u30C3\\u30C9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.disable.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u7121\\u52B9\\u5316 -label.action.disable.static.NAT.processing=\\u9759\\u7684 NAT \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.disable.static.NAT=\\u9759\\u7684 NAT \\u306E\\u7121\\u52B9\\u5316 -label.action.disable.user.processing=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.disable.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u7121\\u52B9\\u5316 -label.action.disable.zone.processing=\\u30BE\\u30FC\\u30F3\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.disable.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u7121\\u52B9\\u5316 -label.action.download.ISO=ISO \\u306E\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9 -label.action.download.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9 -label.action.download.volume.processing=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.download.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9 -label.action.edit.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u7DE8\\u96C6 -label.action.edit.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u7DE8\\u96C6 -label.action.edit.domain=\\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u7DE8\\u96C6 -label.action.edit.global.setting=\\u30B0\\u30ED\\u30FC\\u30D0\\u30EB\\u8A2D\\u5B9A\\u306E\\u7DE8\\u96C6 -label.action.edit.host=\\u30DB\\u30B9\\u30C8\\u306E\\u7DE8\\u96C6 -label.action.edit.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u7DE8\\u96C6 -label.action.edit.ISO=ISO \\u306E\\u7DE8\\u96C6 -label.action.edit.network.offering=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u7DE8\\u96C6 -label.action.edit.network.processing=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u7DE8\\u96C6\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.edit.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u7DE8\\u96C6 -label.action.edit.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u7DE8\\u96C6 -label.action.edit.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u7DE8\\u96C6 -label.action.edit.resource.limits=\\u30EA\\u30BD\\u30FC\\u30B9\\u5236\\u9650\\u306E\\u7DE8\\u96C6 -label.action.edit.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u7DE8\\u96C6 -label.action.edit.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u7DE8\\u96C6 -label.action.edit.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u7DE8\\u96C6 -label.action.edit.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u7DE8\\u96C6 -label.action.enable.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.enable.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u6709\\u52B9\\u5316 -label.action.enable.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.enable.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u6709\\u52B9\\u5316 -label.action.enable.maintenance.mode.processing=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.enable.maintenance.mode=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u306E\\u6709\\u52B9\\u5316 -label.action.enable.nexusVswitch=Nexus 1000V \\u306E\\u6709\\u52B9\\u5316 -label.action.enable.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u6709\\u52B9\\u5316 -label.action.enable.pod.processing=\\u30DD\\u30C3\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.enable.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u6709\\u52B9\\u5316 -label.action.enable.static.NAT.processing=\\u9759\\u7684 NAT \\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.enable.static.NAT=\\u9759\\u7684 NAT \\u306E\\u6709\\u52B9\\u5316 -label.action.enable.user.processing=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.enable.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u6709\\u52B9\\u5316 -label.action.enable.zone.processing=\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.enable.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u6709\\u52B9\\u5316 -label.action.force.reconnect.processing=\\u518D\\u63A5\\u7D9A\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.force.reconnect=\\u5F37\\u5236\\u518D\\u63A5\\u7D9A -label.action.generate.keys.processing=\\u30AD\\u30FC\\u3092\\u751F\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.generate.keys=\\u30AD\\u30FC\\u306E\\u751F\\u6210 -label.action.list.nexusVswitch=Nexus 1000V \\u306E\\u4E00\\u89A7\\u8868\\u793A -label.action.lock.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u30ED\\u30C3\\u30AF\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.lock.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30ED\\u30C3\\u30AF -label.action.manage.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.manage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u7BA1\\u7406\\u5BFE\\u8C61\\u5316 -label.action.migrate.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.migrate.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C -label.action.migrate.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.migrate.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u79FB\\u884C -label.action.migrate.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u79FB\\u884C\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.migrate.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u79FB\\u884C -label.action.reboot.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.reboot.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u518D\\u8D77\\u52D5 -label.action.reboot.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.reboot.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u518D\\u8D77\\u52D5 -label.action.reboot.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.reboot.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u518D\\u8D77\\u52D5 -label.action.recurring.snapshot=\\u5B9A\\u671F\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 -label.action.register.iso=ISO \\u306E\\u767B\\u9332 -label.action.register.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u767B\\u9332 -label.action.release.ip=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u89E3\\u653E -label.action.release.ip.processing=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u89E3\\u653E\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.remove.host.processing=\\u30DB\\u30B9\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.remove.host=\\u30DB\\u30B9\\u30C8\\u306E\\u524A\\u9664 -label.action.reset.password.processing=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.reset.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u306E\\u30EA\\u30BB\\u30C3\\u30C8 -label.action.resource.limits=\\u30EA\\u30BD\\u30FC\\u30B9\\u5236\\u9650 -label.action.restore.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u5FA9\\u5143\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.restore.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u5FA9\\u5143 -label.action.start.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.start.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u8D77\\u52D5 -label.action.start.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.start.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u8D77\\u52D5 -label.action.start.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.start.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u8D77\\u52D5 -label.action.stop.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.stop.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u505C\\u6B62 -label.action.stop.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.stop.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u505C\\u6B62 -label.action.stop.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.stop.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u505C\\u6B62 -label.actions=\\u64CD\\u4F5C -label.action.take.snapshot.processing=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059.... -label.action.take.snapshot=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u4F5C\\u6210 -label.action.unmanage.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u975E\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.unmanage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u975E\\u7BA1\\u7406\\u5BFE\\u8C61\\u5316 -label.action.update.OS.preference=OS \\u57FA\\u672C\\u8A2D\\u5B9A\\u306E\\u66F4\\u65B0 -label.action.update.OS.preference.processing=OS \\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u66F4\\u65B0\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.update.resource.count.processing=\\u30EA\\u30BD\\u30FC\\u30B9\\u6570\\u3092\\u66F4\\u65B0\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.update.resource.count=\\u30EA\\u30BD\\u30FC\\u30B9\\u6570\\u306E\\u66F4\\u65B0 -label.activate.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6\\u5316 -label.active.sessions=\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6\\u306A\\u30BB\\u30C3\\u30B7\\u30E7\\u30F3 -label.add.accounts.to=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u8FFD\\u52A0\\u5148\: -label.add.accounts=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u8FFD\\u52A0 -label.add.account.to.project=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u8FFD\\u52A0 -label.add.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u8FFD\\u52A0 -label.add.ACL=ACL \\u306E\\u8FFD\\u52A0 -label.add.by.cidr=CIDR \\u3067\\u8FFD\\u52A0 -label.add.by.group=\\u30B0\\u30EB\\u30FC\\u30D7\\u3067\\u8FFD\\u52A0 -label.add.by=\\u8FFD\\u52A0\\u5358\\u4F4D -label.add.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u8FFD\\u52A0 -label.add.compute.offering=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 -label.add.direct.iprange=\\u76F4\\u63A5 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u8FFD\\u52A0 -label.add.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 -label.add.domain=\\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u8FFD\\u52A0 -label.add.egress.rule=\\u9001\\u4FE1\\u898F\\u5247\\u306E\\u8FFD\\u52A0 -label.add.F5.device=F5 \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 -label.add.firewall=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u898F\\u5247\\u306E\\u8FFD\\u52A0 -label.add.guest.network=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8FFD\\u52A0 -label.add.host=\\u30DB\\u30B9\\u30C8\\u306E\\u8FFD\\u52A0 -label.adding.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -label.adding.failed=\\u8FFD\\u52A0\\u3067\\u304D\\u307E\\u305B\\u3093\\u3067\\u3057\\u305F -label.adding.pod=\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -label.adding.processing=\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059... -label.add.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u8FFD\\u52A0 -label.adding.succeeded=\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u305F -label.adding=\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -label.adding.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -label.adding.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -label.add.ip.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u8FFD\\u52A0 -label.additional.networks=\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.add.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306E\\u8FFD\\u52A0 -label.add.more=\\u305D\\u306E\\u307B\\u304B\\u306E\\u9805\\u76EE\\u306E\\u8FFD\\u52A0 -label.add.netScaler.device=Netscaler \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 -label.add.network.ACL=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL \\u306E\\u8FFD\\u52A0 -label.add.network.device=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 -label.add.network.offering=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 -label.add.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8FFD\\u52A0 -label.add.new.F5=\\u65B0\\u3057\\u3044 F5 \\u306E\\u8FFD\\u52A0 -label.add.new.gateway=\\u65B0\\u3057\\u3044\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u8FFD\\u52A0 -label.add.new.NetScaler=\\u65B0\\u3057\\u3044 NetScaler \\u306E\\u8FFD\\u52A0 -label.add.new.SRX=\\u65B0\\u3057\\u3044 SRX \\u306E\\u8FFD\\u52A0 -label.add.new.tier=\\u65B0\\u3057\\u3044\\u968E\\u5C64\\u306E\\u8FFD\\u52A0 +extractable=\u62BD\u51FA\u53EF\u80FD +force.delete.domain.warning=\u8B66\u544A\: \u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u3059\u3079\u3066\u306E\u5B50\u30C9\u30E1\u30A4\u30F3\u304A\u3088\u3073\u95A2\u9023\u3059\u308B\u3059\u3079\u3066\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3068\u305D\u306E\u30EA\u30BD\u30FC\u30B9\u304C\u524A\u9664\u3055\u308C\u307E\u3059\u3002 +force.delete=\u5F37\u5236\u524A\u9664 +force.remove.host.warning=\u8B66\u544A\: \u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u5B9F\u884C\u4E2D\u306E\u3059\u3079\u3066\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u304C\u5F37\u5236\u7684\u306B\u505C\u6B62\u3055\u308C\u3001\u30AF\u30E9\u30B9\u30BF\u30FC\u304B\u3089\u3053\u306E\u30DB\u30B9\u30C8\u304C\u5F37\u5236\u7684\u306B\u89E3\u9664\u3055\u308C\u307E\u3059\u3002 +force.remove=\u5F37\u5236\u89E3\u9664 +force.stop.instance.warning=\u8B66\u544A\: \u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u5F37\u5236\u505C\u6B62\u306F\u3001\u6700\u7D42\u624B\u6BB5\u306B\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u30C7\u30FC\u30BF\u3092\u640D\u5931\u3059\u308B\u3060\u3051\u3067\u306A\u304F\u3001\u4EEE\u60F3\u30DE\u30B7\u30F3\u306E\u52D5\u4F5C\u304C\u4E00\u8CAB\u3057\u306A\u304F\u306A\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 +force.stop=\u5F37\u5236\u505C\u6B62 +ICMP.code=ICMP \u30B3\u30FC\u30C9 +ICMP.type=ICMP \u306E\u7A2E\u985E +image.directory=\u753B\u50CF\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA +inline=\u76F4\u5217 +instances.actions.reboot.label=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u518D\u8D77\u52D5 +label.accept.project.invitation=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u62DB\u5F85\u306E\u627F\u8AFE +label.account.and.security.group=\u30A2\u30AB\u30A6\u30F3\u30C8\u3001\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 +label.account.id=\u30A2\u30AB\u30A6\u30F3\u30C8 ID +label.account.name=\u30A2\u30AB\u30A6\u30F3\u30C8\u540D +label.account.specific=\u30A2\u30AB\u30A6\u30F3\u30C8\u56FA\u6709 +label.accounts=\u30A2\u30AB\u30A6\u30F3\u30C8 +label.account=\u30A2\u30AB\u30A6\u30F3\u30C8 +label.acquire.new.ip=\u65B0\u3057\u3044 IP \u30A2\u30C9\u30EC\u30B9\u306E\u53D6\u5F97 +label.action.attach.disk.processing=\u30C7\u30A3\u30B9\u30AF\u3092\u30A2\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... +label.action.attach.disk=\u30C7\u30A3\u30B9\u30AF\u306E\u30A2\u30BF\u30C3\u30C1 +label.action.attach.iso=ISO \u306E\u30A2\u30BF\u30C3\u30C1 +label.action.attach.iso.processing=ISO \u3092\u30A2\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... +label.action.cancel.maintenance.mode.processing=\u4FDD\u5B88\u30E2\u30FC\u30C9\u3092\u30AD\u30E3\u30F3\u30BB\u30EB\u3057\u3066\u3044\u307E\u3059... +label.action.cancel.maintenance.mode=\u4FDD\u5B88\u30E2\u30FC\u30C9\u306E\u30AD\u30E3\u30F3\u30BB\u30EB +label.action.change.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u306E\u5909\u66F4 +label.action.change.service.processing=\u30B5\u30FC\u30D3\u30B9\u3092\u5909\u66F4\u3057\u3066\u3044\u307E\u3059... +label.action.change.service=\u30B5\u30FC\u30D3\u30B9\u306E\u5909\u66F4 +label.action.copy.ISO=ISO \u306E\u30B3\u30D4\u30FC +label.action.copy.ISO.processing=ISO \u3092\u30B3\u30D4\u30FC\u3057\u3066\u3044\u307E\u3059... +label.action.copy.template.processing=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u30B3\u30D4\u30FC\u3057\u3066\u3044\u307E\u3059... +label.action.copy.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u30B3\u30D4\u30FC +label.action.create.template.from.vm=VM \u304B\u3089\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u4F5C\u6210 +label.action.create.template.from.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u304B\u3089\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u4F5C\u6210 +label.action.create.template.processing=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059... +label.action.create.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210 +label.action.create.vm.processing=VM \u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059... +label.action.create.vm=VM \u306E\u4F5C\u6210 +label.action.create.volume.processing=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059... +label.action.create.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u4F5C\u6210 +label.action.delete.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u524A\u9664 +label.action.delete.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u524A\u9664 +label.action.delete.disk.offering.processing=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u524A\u9664 +label.action.delete.domain.processing=\u30C9\u30E1\u30A4\u30F3\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.domain=\u30C9\u30E1\u30A4\u30F3\u306E\u524A\u9664 +label.action.delete.firewall.processing=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.firewall=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u898F\u5247\u306E\u524A\u9664 +label.action.delete.ingress.rule.processing=\u53D7\u4FE1\u898F\u5247\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u524A\u9664 +label.action.delete.IP.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u524A\u9664 +label.action.delete.IP.range.processing=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.ISO=ISO \u306E\u524A\u9664 +label.action.delete.ISO.processing=ISO \u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.load.balancer.processing=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.load.balancer=\u8CA0\u8377\u5206\u6563\u898F\u5247\u306E\u524A\u9664 +label.action.delete.network.processing=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u524A\u9664 +label.action.delete.nexusVswitch=Nexus 1000V \u306E\u524A\u9664 +label.action.delete.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u524A\u9664 +label.action.delete.pod.processing=\u30DD\u30C3\u30C9\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.pod=\u30DD\u30C3\u30C9\u306E\u524A\u9664 +label.action.delete.primary.storage.processing=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u524A\u9664 +label.action.delete.secondary.storage.processing=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u524A\u9664 +label.action.delete.security.group.processing=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.security.group=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u306E\u524A\u9664 +label.action.delete.service.offering.processing=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u524A\u9664 +label.action.delete.snapshot.processing=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.snapshot=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u524A\u9664 +label.action.delete.system.service.offering=\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u524A\u9664 +label.action.delete.template.processing=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u524A\u9664 +label.action.delete.user.processing=\u30E6\u30FC\u30B6\u30FC\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.user=\u30E6\u30FC\u30B6\u30FC\u306E\u524A\u9664 +label.action.delete.volume.processing=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u524A\u9664 +label.action.delete.zone.processing=\u30BE\u30FC\u30F3\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.zone=\u30BE\u30FC\u30F3\u306E\u524A\u9664 +label.action.destroy.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u7834\u68C4\u3057\u3066\u3044\u307E\u3059... +label.action.destroy.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u7834\u68C4 +label.action.destroy.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u7834\u68C4\u3057\u3066\u3044\u307E\u3059... +label.action.destroy.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u7834\u68C4 +label.action.detach.disk.processing=\u30C7\u30A3\u30B9\u30AF\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... +label.action.detach.disk=\u30C7\u30A3\u30B9\u30AF\u306E\u30C7\u30BF\u30C3\u30C1 +label.action.detach.iso=ISO \u306E\u30C7\u30BF\u30C3\u30C1 +label.action.detach.iso.processing=ISO \u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... +label.action.disable.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.disable.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u7121\u52B9\u5316 +label.action.disable.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.disable.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u7121\u52B9\u5316 +label.action.disable.nexusVswitch=Nexus 1000V \u306E\u7121\u52B9\u5316 +label.action.disable.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u7121\u52B9\u5316 +label.action.disable.pod.processing=\u30DD\u30C3\u30C9\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.disable.pod=\u30DD\u30C3\u30C9\u306E\u7121\u52B9\u5316 +label.action.disable.static.NAT.processing=\u9759\u7684 NAT \u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.disable.static.NAT=\u9759\u7684 NAT \u306E\u7121\u52B9\u5316 +label.action.disable.user.processing=\u30E6\u30FC\u30B6\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.disable.user=\u30E6\u30FC\u30B6\u30FC\u306E\u7121\u52B9\u5316 +label.action.disable.zone.processing=\u30BE\u30FC\u30F3\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.disable.zone=\u30BE\u30FC\u30F3\u306E\u7121\u52B9\u5316 +label.action.download.ISO=ISO \u306E\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9 +label.action.download.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9 +label.action.download.volume.processing=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3044\u307E\u3059... +label.action.download.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9 +label.action.edit.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u7DE8\u96C6 +label.action.edit.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u7DE8\u96C6 +label.action.edit.domain=\u30C9\u30E1\u30A4\u30F3\u306E\u7DE8\u96C6 +label.action.edit.global.setting=\u30B0\u30ED\u30FC\u30D0\u30EB\u8A2D\u5B9A\u306E\u7DE8\u96C6 +label.action.edit.host=\u30DB\u30B9\u30C8\u306E\u7DE8\u96C6 +label.action.edit.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u7DE8\u96C6 +label.action.edit.ISO=ISO \u306E\u7DE8\u96C6 +label.action.edit.network.offering=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u7DE8\u96C6 +label.action.edit.network.processing=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u7DE8\u96C6\u3057\u3066\u3044\u307E\u3059... +label.action.edit.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u7DE8\u96C6 +label.action.edit.pod=\u30DD\u30C3\u30C9\u306E\u7DE8\u96C6 +label.action.edit.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u7DE8\u96C6 +label.action.edit.resource.limits=\u30EA\u30BD\u30FC\u30B9\u5236\u9650\u306E\u7DE8\u96C6 +label.action.edit.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u7DE8\u96C6 +label.action.edit.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u7DE8\u96C6 +label.action.edit.user=\u30E6\u30FC\u30B6\u30FC\u306E\u7DE8\u96C6 +label.action.edit.zone=\u30BE\u30FC\u30F3\u306E\u7DE8\u96C6 +label.action.enable.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.enable.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u6709\u52B9\u5316 +label.action.enable.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.enable.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u6709\u52B9\u5316 +label.action.enable.maintenance.mode.processing=\u4FDD\u5B88\u30E2\u30FC\u30C9\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.enable.maintenance.mode=\u4FDD\u5B88\u30E2\u30FC\u30C9\u306E\u6709\u52B9\u5316 +label.action.enable.nexusVswitch=Nexus 1000V \u306E\u6709\u52B9\u5316 +label.action.enable.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u6709\u52B9\u5316 +label.action.enable.pod.processing=\u30DD\u30C3\u30C9\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.enable.pod=\u30DD\u30C3\u30C9\u306E\u6709\u52B9\u5316 +label.action.enable.static.NAT.processing=\u9759\u7684 NAT \u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.enable.static.NAT=\u9759\u7684 NAT \u306E\u6709\u52B9\u5316 +label.action.enable.user.processing=\u30E6\u30FC\u30B6\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.enable.user=\u30E6\u30FC\u30B6\u30FC\u306E\u6709\u52B9\u5316 +label.action.enable.zone.processing=\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.enable.zone=\u30BE\u30FC\u30F3\u306E\u6709\u52B9\u5316 +label.action.force.reconnect.processing=\u518D\u63A5\u7D9A\u3057\u3066\u3044\u307E\u3059... +label.action.force.reconnect=\u5F37\u5236\u518D\u63A5\u7D9A +label.action.generate.keys.processing=\u30AD\u30FC\u3092\u751F\u6210\u3057\u3066\u3044\u307E\u3059... +label.action.generate.keys=\u30AD\u30FC\u306E\u751F\u6210 +label.action.list.nexusVswitch=Nexus 1000V \u306E\u4E00\u89A7\u8868\u793A +label.action.lock.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u30ED\u30C3\u30AF\u3057\u3066\u3044\u307E\u3059... +label.action.lock.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30ED\u30C3\u30AF +label.action.manage.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.manage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u7BA1\u7406\u5BFE\u8C61\u5316 +label.action.migrate.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u79FB\u884C\u3057\u3066\u3044\u307E\u3059... +label.action.migrate.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C +label.action.migrate.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u79FB\u884C\u3057\u3066\u3044\u307E\u3059... +label.action.migrate.router=\u30EB\u30FC\u30BF\u30FC\u306E\u79FB\u884C +label.action.migrate.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u79FB\u884C\u3057\u3066\u3044\u307E\u3059... +label.action.migrate.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u79FB\u884C +label.action.reboot.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u518D\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... +label.action.reboot.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u518D\u8D77\u52D5 +label.action.reboot.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... +label.action.reboot.router=\u30EB\u30FC\u30BF\u30FC\u306E\u518D\u8D77\u52D5 +label.action.reboot.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u518D\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... +label.action.reboot.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u518D\u8D77\u52D5 +label.action.recurring.snapshot=\u5B9A\u671F\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 +label.action.register.iso=ISO \u306E\u767B\u9332 +label.action.register.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u767B\u9332 +label.action.release.ip=IP \u30A2\u30C9\u30EC\u30B9\u306E\u89E3\u653E +label.action.release.ip.processing=IP \u30A2\u30C9\u30EC\u30B9\u3092\u89E3\u653E\u3057\u3066\u3044\u307E\u3059... +label.action.remove.host.processing=\u30DB\u30B9\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.remove.host=\u30DB\u30B9\u30C8\u306E\u524A\u9664 +label.action.reset.password.processing=\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u30EA\u30BB\u30C3\u30C8\u3057\u3066\u3044\u307E\u3059... +label.action.reset.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u306E\u30EA\u30BB\u30C3\u30C8 +label.action.resource.limits=\u30EA\u30BD\u30FC\u30B9\u5236\u9650 +label.action.restore.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u5FA9\u5143\u3057\u3066\u3044\u307E\u3059... +label.action.restore.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u5FA9\u5143 +label.action.start.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... +label.action.start.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u8D77\u52D5 +label.action.start.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... +label.action.start.router=\u30EB\u30FC\u30BF\u30FC\u306E\u8D77\u52D5 +label.action.start.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... +label.action.start.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u8D77\u52D5 +label.action.stop.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3057\u3066\u3044\u307E\u3059... +label.action.stop.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u505C\u6B62 +label.action.stop.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u505C\u6B62\u3057\u3066\u3044\u307E\u3059... +label.action.stop.router=\u30EB\u30FC\u30BF\u30FC\u306E\u505C\u6B62 +label.action.stop.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u505C\u6B62\u3057\u3066\u3044\u307E\u3059... +label.action.stop.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u505C\u6B62 +label.actions=\u64CD\u4F5C +label.action.take.snapshot.processing=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059.... +label.action.take.snapshot=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u4F5C\u6210 +label.action.unmanage.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u975E\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.unmanage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u975E\u7BA1\u7406\u5BFE\u8C61\u5316 +label.action.update.OS.preference=OS \u57FA\u672C\u8A2D\u5B9A\u306E\u66F4\u65B0 +label.action.update.OS.preference.processing=OS \u57FA\u672C\u8A2D\u5B9A\u3092\u66F4\u65B0\u3057\u3066\u3044\u307E\u3059... +label.action.update.resource.count.processing=\u30EA\u30BD\u30FC\u30B9\u6570\u3092\u66F4\u65B0\u3057\u3066\u3044\u307E\u3059... +label.action.update.resource.count=\u30EA\u30BD\u30FC\u30B9\u6570\u306E\u66F4\u65B0 +label.activate.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30A2\u30AF\u30C6\u30A3\u30D6\u5316 +label.active.sessions=\u30A2\u30AF\u30C6\u30A3\u30D6\u306A\u30BB\u30C3\u30B7\u30E7\u30F3 +label.add.accounts.to=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u8FFD\u52A0\u5148\: +label.add.accounts=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u8FFD\u52A0 +label.add.account.to.project=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u8FFD\u52A0 +label.add.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u8FFD\u52A0 +label.add.ACL=ACL \u306E\u8FFD\u52A0 +label.add.by.cidr=CIDR \u3067\u8FFD\u52A0 +label.add.by.group=\u30B0\u30EB\u30FC\u30D7\u3067\u8FFD\u52A0 +label.add.by=\u8FFD\u52A0\u5358\u4F4D +label.add.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u8FFD\u52A0 +label.add.compute.offering=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 +label.add.direct.iprange=\u76F4\u63A5 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u8FFD\u52A0 +label.add.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 +label.add.domain=\u30C9\u30E1\u30A4\u30F3\u306E\u8FFD\u52A0 +label.add.egress.rule=\u9001\u4FE1\u898F\u5247\u306E\u8FFD\u52A0 +label.add.F5.device=F5 \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 +label.add.firewall=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u898F\u5247\u306E\u8FFD\u52A0 +label.add.guest.network=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8FFD\u52A0 +label.add.host=\u30DB\u30B9\u30C8\u306E\u8FFD\u52A0 +label.adding.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +label.adding.failed=\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F +label.adding.pod=\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +label.adding.processing=\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059... +label.add.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u8FFD\u52A0 +label.adding.succeeded=\u8FFD\u52A0\u3057\u307E\u3057\u305F +label.adding=\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +label.adding.user=\u30E6\u30FC\u30B6\u30FC\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +label.adding.zone=\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +label.add.ip.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u8FFD\u52A0 +label.additional.networks=\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.add.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306E\u8FFD\u52A0 +label.add.more=\u305D\u306E\u307B\u304B\u306E\u9805\u76EE\u306E\u8FFD\u52A0 +label.add.netScaler.device=Netscaler \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 +label.add.network.ACL=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL \u306E\u8FFD\u52A0 +label.add.network.device=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 +label.add.network.offering=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 +label.add.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8FFD\u52A0 +label.add.new.F5=\u65B0\u3057\u3044 F5 \u306E\u8FFD\u52A0 +label.add.new.gateway=\u65B0\u3057\u3044\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u8FFD\u52A0 +label.add.new.NetScaler=\u65B0\u3057\u3044 NetScaler \u306E\u8FFD\u52A0 +label.add.new.SRX=\u65B0\u3057\u3044 SRX \u306E\u8FFD\u52A0 +label.add.new.tier=\u65B0\u3057\u3044\u968E\u5C64\u306E\u8FFD\u52A0 label.add.NiciraNvp.device=NVP\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u8ffd\u52a0 -label.add.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8FFD\\u52A0 -label.add.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u8FFD\\u52A0 -label.add.port.forwarding.rule=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001\\u898F\\u5247\\u306E\\u8FFD\\u52A0 -label.add.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u8FFD\\u52A0 -label.add.resources=\\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u8FFD\\u52A0 -label.add.route=\\u30EB\\u30FC\\u30C8\\u306E\\u8FFD\\u52A0 -label.add.rule=\\u898F\\u5247\\u306E\\u8FFD\\u52A0 -label.add.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u8FFD\\u52A0 -label.add.security.group=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u306E\\u8FFD\\u52A0 -label.add.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 -label.add.SRX.device=SRX \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 -label.add.static.nat.rule=\\u9759\\u7684 NAT \\u898F\\u5247\\u306E\\u8FFD\\u52A0 -label.add.static.route=\\u9759\\u7684\\u30EB\\u30FC\\u30C8\\u306E\\u8FFD\\u52A0 -label.add.system.service.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 -label.add.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u8FFD\\u52A0 -label.add.to.group=\\u30B0\\u30EB\\u30FC\\u30D7\\u3078\\u306E\\u8FFD\\u52A0 -label.add=\\u8FFD\\u52A0 -label.add.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u8FFD\\u52A0 -label.add.vlan=VLAN \\u306E\\u8FFD\\u52A0 -label.add.vms.to.lb=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u3078\\u306E VM \\u306E\\u8FFD\\u52A0 -label.add.vms=VM \\u306E\\u8FFD\\u52A0 -label.add.VM.to.tier=\\u968E\\u5C64\\u3078\\u306E VM \\u306E\\u8FFD\\u52A0 -label.add.vm=VM \\u306E\\u8FFD\\u52A0 -label.add.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u8FFD\\u52A0 -label.add.vpc=VPC \\u306E\\u8FFD\\u52A0 -label.add.vpn.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u8FFD\\u52A0 -label.add.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u8FFD\\u52A0 -label.add.vpn.user=VPN \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u8FFD\\u52A0 -label.add.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u8FFD\\u52A0 -label.admin.accounts=\\u7BA1\\u7406\\u8005\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.admin=\\u7BA1\\u7406\\u8005 -label.advanced.mode=\\u62E1\\u5F35\\u30E2\\u30FC\\u30C9 -label.advanced.search=\\u9AD8\\u5EA6\\u306A\\u691C\\u7D22 -label.advanced=\\u62E1\\u5F35 -label.agent.password=\\u30A8\\u30FC\\u30B8\\u30A7\\u30F3\\u30C8 \\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 -label.agent.username=\\u30A8\\u30FC\\u30B8\\u30A7\\u30F3\\u30C8 \\u30E6\\u30FC\\u30B6\\u30FC\\u540D -label.agree=\\u540C\\u610F\\u3059\\u308B -label.alert=\\u30A2\\u30E9\\u30FC\\u30C8 -label.algorithm=\\u30A2\\u30EB\\u30B4\\u30EA\\u30BA\\u30E0 -label.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F -label.allocation.state=\\u5272\\u308A\\u5F53\\u3066\\u72B6\\u614B -label.api.key=API \\u30AD\\u30FC -label.apply=\\u9069\\u7528 -label.assign.to.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u3066\\u3044\\u307E\\u3059 -label.assign=\\u5272\\u308A\\u5F53\\u3066 -label.associated.network.id=\\u95A2\\u9023\\u3065\\u3051\\u3089\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID -label.associated.network=\\u95A2\\u9023\\u3065\\u3051\\u3089\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.attached.iso=\\u30A2\\u30BF\\u30C3\\u30C1\\u3055\\u308C\\u305F ISO -label.availability=\\u53EF\\u7528\\u6027 -label.availability.zone=\\u5229\\u7528\\u53EF\\u80FD\\u30BE\\u30FC\\u30F3 -label.available.public.ips=\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.available=\\u4F7F\\u7528\\u53EF\\u80FD -label.back=\\u623B\\u308B -label.bandwidth=\\u5E2F\\u57DF\\u5E45 -label.basic.mode=\\u57FA\\u672C\\u30E2\\u30FC\\u30C9 -label.basic=\\u57FA\\u672C -label.bootable=\\u8D77\\u52D5\\u53EF\\u80FD -label.broadcast.domain.range=\\u30D6\\u30ED\\u30FC\\u30C9\\u30AD\\u30E3\\u30B9\\u30C8 \\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u7BC4\\u56F2 -label.broadcast.domain.type=\\u30D6\\u30ED\\u30FC\\u30C9\\u30AD\\u30E3\\u30B9\\u30C8 \\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u7A2E\\u985E +label.add.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8FFD\u52A0 +label.add.pod=\u30DD\u30C3\u30C9\u306E\u8FFD\u52A0 +label.add.port.forwarding.rule=\u30DD\u30FC\u30C8\u8EE2\u9001\u898F\u5247\u306E\u8FFD\u52A0 +label.add.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u8FFD\u52A0 +label.add.resources=\u30EA\u30BD\u30FC\u30B9\u306E\u8FFD\u52A0 +label.add.route=\u30EB\u30FC\u30C8\u306E\u8FFD\u52A0 +label.add.rule=\u898F\u5247\u306E\u8FFD\u52A0 +label.add.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u8FFD\u52A0 +label.add.security.group=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u306E\u8FFD\u52A0 +label.add.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 +label.add.SRX.device=SRX \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 +label.add.static.nat.rule=\u9759\u7684 NAT \u898F\u5247\u306E\u8FFD\u52A0 +label.add.static.route=\u9759\u7684\u30EB\u30FC\u30C8\u306E\u8FFD\u52A0 +label.add.system.service.offering=\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 +label.add.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u8FFD\u52A0 +label.add.to.group=\u30B0\u30EB\u30FC\u30D7\u3078\u306E\u8FFD\u52A0 +label.add=\u8FFD\u52A0 +label.add.user=\u30E6\u30FC\u30B6\u30FC\u306E\u8FFD\u52A0 +label.add.vlan=VLAN \u306E\u8FFD\u52A0 +label.add.vms.to.lb=\u8CA0\u8377\u5206\u6563\u898F\u5247\u3078\u306E VM \u306E\u8FFD\u52A0 +label.add.vms=VM \u306E\u8FFD\u52A0 +label.add.VM.to.tier=\u968E\u5C64\u3078\u306E VM \u306E\u8FFD\u52A0 +label.add.vm=VM \u306E\u8FFD\u52A0 +label.add.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u8FFD\u52A0 +label.add.vpc=VPC \u306E\u8FFD\u52A0 +label.add.vpn.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u8FFD\u52A0 +label.add.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u8FFD\u52A0 +label.add.vpn.user=VPN \u30E6\u30FC\u30B6\u30FC\u306E\u8FFD\u52A0 +label.add.zone=\u30BE\u30FC\u30F3\u306E\u8FFD\u52A0 +label.admin.accounts=\u7BA1\u7406\u8005\u30A2\u30AB\u30A6\u30F3\u30C8 +label.admin=\u7BA1\u7406\u8005 +label.advanced.mode=\u62E1\u5F35\u30E2\u30FC\u30C9 +label.advanced.search=\u9AD8\u5EA6\u306A\u691C\u7D22 +label.advanced=\u62E1\u5F35 +label.agent.password=\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8 \u30D1\u30B9\u30EF\u30FC\u30C9 +label.agent.username=\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8 \u30E6\u30FC\u30B6\u30FC\u540D +label.agree=\u540C\u610F\u3059\u308B +label.alert=\u30A2\u30E9\u30FC\u30C8 +label.algorithm=\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0 +label.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F +label.allocation.state=\u5272\u308A\u5F53\u3066\u72B6\u614B +label.api.key=API \u30AD\u30FC +label.apply=\u9069\u7528 +label.assign.to.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u5272\u308A\u5F53\u3066\u3066\u3044\u307E\u3059 +label.assign=\u5272\u308A\u5F53\u3066 +label.associated.network.id=\u95A2\u9023\u3065\u3051\u3089\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID +label.associated.network=\u95A2\u9023\u3065\u3051\u3089\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.attached.iso=\u30A2\u30BF\u30C3\u30C1\u3055\u308C\u305F ISO +label.availability=\u53EF\u7528\u6027 +label.availability.zone=\u5229\u7528\u53EF\u80FD\u30BE\u30FC\u30F3 +label.available.public.ips=\u4F7F\u7528\u3067\u304D\u308B\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 +label.available=\u4F7F\u7528\u53EF\u80FD +label.back=\u623B\u308B +label.bandwidth=\u5E2F\u57DF\u5E45 +label.basic.mode=\u57FA\u672C\u30E2\u30FC\u30C9 +label.basic=\u57FA\u672C +label.bootable=\u8D77\u52D5\u53EF\u80FD +label.broadcast.domain.range=\u30D6\u30ED\u30FC\u30C9\u30AD\u30E3\u30B9\u30C8 \u30C9\u30E1\u30A4\u30F3\u306E\u7BC4\u56F2 +label.broadcast.domain.type=\u30D6\u30ED\u30FC\u30C9\u30AD\u30E3\u30B9\u30C8 \u30C9\u30E1\u30A4\u30F3\u306E\u7A2E\u985E label.broadcast.uri=Broadcast URI -label.by.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.by.availability=\\u53EF\\u7528\\u6027 -label.by.domain=\\u30C9\\u30E1\\u30A4\\u30F3 -label.by.end.date=\\u7D42\\u4E86\\u65E5 -label.by.level=\\u30EC\\u30D9\\u30EB -label.by.pod=\\u30DD\\u30C3\\u30C9 -label.by.role=\\u5F79\\u5272 -label.by.start.date=\\u958B\\u59CB\\u65E5 -label.by.state=\\u72B6\\u614B -label.bytes.received=\\u53D7\\u4FE1\\u30D0\\u30A4\\u30C8 -label.bytes.sent=\\u9001\\u4FE1\\u30D0\\u30A4\\u30C8 -label.by.traffic.type=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E -label.by.type.id=\\u7A2E\\u985E ID -label.by.type=\\u7A2E\\u985E -label.by.zone=\\u30BE\\u30FC\\u30F3 -label.cancel=\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB -label.capacity=\\u51E6\\u7406\\u80FD\\u529B -label.certificate=\\u8A3C\\u660E\\u66F8 -label.change.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u5909\\u66F4 -label.change.value=\\u5024\\u306E\\u5909\\u66F4 -label.character=\\u6587\\u5B57 -label.checksum=MD5 \\u30C1\\u30A7\\u30C3\\u30AF\\u30B5\\u30E0 -label.cidr.account=CIDR \\u307E\\u305F\\u306F\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8/\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 +label.by.account=\u30A2\u30AB\u30A6\u30F3\u30C8 +label.by.availability=\u53EF\u7528\u6027 +label.by.domain=\u30C9\u30E1\u30A4\u30F3 +label.by.end.date=\u7D42\u4E86\u65E5 +label.by.level=\u30EC\u30D9\u30EB +label.by.pod=\u30DD\u30C3\u30C9 +label.by.role=\u5F79\u5272 +label.by.start.date=\u958B\u59CB\u65E5 +label.by.state=\u72B6\u614B +label.bytes.received=\u53D7\u4FE1\u30D0\u30A4\u30C8 +label.bytes.sent=\u9001\u4FE1\u30D0\u30A4\u30C8 +label.by.traffic.type=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E +label.by.type.id=\u7A2E\u985E ID +label.by.type=\u7A2E\u985E +label.by.zone=\u30BE\u30FC\u30F3 +label.cancel=\u30AD\u30E3\u30F3\u30BB\u30EB +label.capacity=\u51E6\u7406\u80FD\u529B +label.certificate=\u8A3C\u660E\u66F8 +label.change.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u5909\u66F4 +label.change.value=\u5024\u306E\u5909\u66F4 +label.character=\u6587\u5B57 +label.checksum=MD5 \u30C1\u30A7\u30C3\u30AF\u30B5\u30E0 +label.cidr.account=CIDR \u307E\u305F\u306F\u30A2\u30AB\u30A6\u30F3\u30C8/\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 label.cidr=CIDR -label.CIDR.list=CIDR \\u4E00\\u89A7 -label.cidr.list=\\u9001\\u4FE1\\u5143 CIDR -label.CIDR.of.destination.network=\\u5B9B\\u5148\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E CIDR -label.clean.up=\\u30AF\\u30EA\\u30FC\\u30F3 \\u30A2\\u30C3\\u30D7 -label.clear.list=\\u4E00\\u89A7\\u306E\\u6D88\\u53BB -label.close=\\u9589\\u3058\\u308B -label.cloud.console=\\u30AF\\u30E9\\u30A6\\u30C9\\u7BA1\\u7406\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB -label.cloud.managed=Cloud.com \\u306B\\u3088\\u308B\\u7BA1\\u7406 -label.cluster.name=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u540D -label.clusters=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC -label.cluster.type=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u7A2E\\u985E -label.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC +label.CIDR.list=CIDR \u4E00\u89A7 +label.cidr.list=\u9001\u4FE1\u5143 CIDR +label.CIDR.of.destination.network=\u5B9B\u5148\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E CIDR +label.clean.up=\u30AF\u30EA\u30FC\u30F3 \u30A2\u30C3\u30D7 +label.clear.list=\u4E00\u89A7\u306E\u6D88\u53BB +label.close=\u9589\u3058\u308B +label.cloud.console=\u30AF\u30E9\u30A6\u30C9\u7BA1\u7406\u30B3\u30F3\u30BD\u30FC\u30EB +label.cloud.managed=Cloud.com \u306B\u3088\u308B\u7BA1\u7406 +label.cluster.name=\u30AF\u30E9\u30B9\u30BF\u30FC\u540D +label.clusters=\u30AF\u30E9\u30B9\u30BF\u30FC +label.cluster.type=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u7A2E\u985E +label.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC label.clvm=CLVM -label.code=\\u30B3\\u30FC\\u30C9 -label.community=\\u30B3\\u30DF\\u30E5\\u30CB\\u30C6\\u30A3 -label.compute.and.storage=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0\\u3068\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.compute.offerings=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.compute.offering=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.compute=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 -label.configuration=\\u69CB\\u6210 -label.configure.network.ACLs=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL \\u306E\\u69CB\\u6210 -label.configure=\\u69CB\\u6210 -label.configure.vpc=VPC \\u306E\\u69CB\\u6210 -label.confirmation=\\u78BA\\u8A8D -label.confirm.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u306E\\u78BA\\u8A8D\\u5165\\u529B -label.congratulations=\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u306F\\u3053\\u308C\\u3067\\u5B8C\\u4E86\\u3067\\u3059\\u3002 -label.conserve.mode=\\u7BC0\\u7D04\\u30E2\\u30FC\\u30C9 -label.console.proxy=\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7 -label.continue.basic.install=\\u57FA\\u672C\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3092\\u7D9A\\u884C\\u3059\\u308B -label.continue=\\u7D9A\\u884C -label.corrections.saved=\\u63A5\\u7D9A\\u304C\\u4FDD\\u5B58\\u3055\\u308C\\u307E\\u3057\\u305F -label.cpu.allocated.for.VMs=VM \\u306B\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E CPU -label.cpu.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E CPU -label.CPU.cap=CPU \\u5236\\u9650 +label.code=\u30B3\u30FC\u30C9 +label.community=\u30B3\u30DF\u30E5\u30CB\u30C6\u30A3 +label.compute.and.storage=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0\u3068\u30B9\u30C8\u30EC\u30FC\u30B8 +label.compute.offerings=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.compute.offering=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.compute=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 +label.configuration=\u69CB\u6210 +label.configure.network.ACLs=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL \u306E\u69CB\u6210 +label.configure=\u69CB\u6210 +label.configure.vpc=VPC \u306E\u69CB\u6210 +label.confirmation=\u78BA\u8A8D +label.confirm.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u306E\u78BA\u8A8D\u5165\u529B +label.congratulations=\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u306F\u3053\u308C\u3067\u5B8C\u4E86\u3067\u3059\u3002 +label.conserve.mode=\u7BC0\u7D04\u30E2\u30FC\u30C9 +label.console.proxy=\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7 +label.continue.basic.install=\u57FA\u672C\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3092\u7D9A\u884C\u3059\u308B +label.continue=\u7D9A\u884C +label.corrections.saved=\u63A5\u7D9A\u304C\u4FDD\u5B58\u3055\u308C\u307E\u3057\u305F +label.cpu.allocated.for.VMs=VM \u306B\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E CPU +label.cpu.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E CPU +label.CPU.cap=CPU \u5236\u9650 label.cpu=CPU label.cpu.mhz=CPU (MHz) -label.cpu.utilized=CPU \\u4F7F\\u7528\\u7387 -label.created.by.system=\\u30B7\\u30B9\\u30C6\\u30E0\\u4F5C\\u6210 -label.created=\\u4F5C\\u6210\\u65E5\\u6642 -label.create.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u4F5C\\u6210 -label.create.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210 -label.create.VPN.connection=VPN \\u63A5\\u7D9A\\u306E\\u4F5C\\u6210 -label.cross.zones=\\u30AF\\u30ED\\u30B9 \\u30BE\\u30FC\\u30F3 -label.custom.disk.size=\\u30AB\\u30B9\\u30BF\\u30E0 \\u30C7\\u30A3\\u30B9\\u30AF \\u30B5\\u30A4\\u30BA -label.daily=\\u6BCE\\u65E5 -label.data.disk.offering=\\u30C7\\u30FC\\u30BF \\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.date=\\u65E5\\u6642 -label.day.of.month=\\u6BCE\\u6708\\u6307\\u5B9A\\u65E5 -label.day.of.week=\\u6BCE\\u9031\\u6307\\u5B9A\\u65E5 -label.dead.peer.detection=\\u505C\\u6B62\\u30D4\\u30A2\\u306E\\u691C\\u51FA -label.decline.invitation=\\u62DB\\u5F85\\u306E\\u8F9E\\u9000 -label.dedicated=\\u5C02\\u7528 -label.default=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 -label.default.use=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8\\u4F7F\\u7528 -label.default.view=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 \\u30D3\\u30E5\\u30FC -label.delete.F5=F5 \\u306E\\u524A\\u9664 -label.delete.gateway=\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u524A\\u9664 -label.delete.NetScaler=NetScaler \\u306E\\u524A\\u9664 +label.cpu.utilized=CPU \u4F7F\u7528\u7387 +label.created.by.system=\u30B7\u30B9\u30C6\u30E0\u4F5C\u6210 +label.created=\u4F5C\u6210\u65E5\u6642 +label.create.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u4F5C\u6210 +label.create.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210 +label.create.VPN.connection=VPN \u63A5\u7D9A\u306E\u4F5C\u6210 +label.cross.zones=\u30AF\u30ED\u30B9 \u30BE\u30FC\u30F3 +label.custom.disk.size=\u30AB\u30B9\u30BF\u30E0 \u30C7\u30A3\u30B9\u30AF \u30B5\u30A4\u30BA +label.daily=\u6BCE\u65E5 +label.data.disk.offering=\u30C7\u30FC\u30BF \u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.date=\u65E5\u6642 +label.day.of.month=\u6BCE\u6708\u6307\u5B9A\u65E5 +label.day.of.week=\u6BCE\u9031\u6307\u5B9A\u65E5 +label.dead.peer.detection=\u505C\u6B62\u30D4\u30A2\u306E\u691C\u51FA +label.decline.invitation=\u62DB\u5F85\u306E\u8F9E\u9000 +label.dedicated=\u5C02\u7528 +label.default=\u30C7\u30D5\u30A9\u30EB\u30C8 +label.default.use=\u30C7\u30D5\u30A9\u30EB\u30C8\u4F7F\u7528 +label.default.view=\u30C7\u30D5\u30A9\u30EB\u30C8 \u30D3\u30E5\u30FC +label.delete.F5=F5 \u306E\u524A\u9664 +label.delete.gateway=\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u524A\u9664 +label.delete.NetScaler=NetScaler \u306E\u524A\u9664 label.delete.NiciraNvp=NVP\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u524a\u9664 -label.delete.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u524A\\u9664 -label.delete.SRX=SRX \\u306E\\u524A\\u9664 -label.delete=\\u524A\\u9664 -label.delete.VPN.connection=VPN \\u63A5\\u7D9A\\u306E\\u524A\\u9664 -label.delete.VPN.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u524A\\u9664 -label.delete.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u524A\\u9664 -label.delete.vpn.user=VPN \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u524A\\u9664 -label.deleting.failed=\\u524A\\u9664\\u3067\\u304D\\u307E\\u305B\\u3093\\u3067\\u3057\\u305F -label.deleting.processing=\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.description=\\u8AAC\\u660E -label.destination.physical.network.id=\\u30D6\\u30EA\\u30C3\\u30B8\\u5148\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID -label.destination.zone=\\u30B3\\u30D4\\u30FC\\u5148\\u30BE\\u30FC\\u30F3 -label.destroy.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u7834\\u68C4 +label.delete.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u524A\u9664 +label.delete.SRX=SRX \u306E\u524A\u9664 +label.delete=\u524A\u9664 +label.delete.VPN.connection=VPN \u63A5\u7D9A\u306E\u524A\u9664 +label.delete.VPN.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u524A\u9664 +label.delete.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u524A\u9664 +label.delete.vpn.user=VPN \u30E6\u30FC\u30B6\u30FC\u306E\u524A\u9664 +label.deleting.failed=\u524A\u9664\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F +label.deleting.processing=\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.description=\u8AAC\u660E +label.destination.physical.network.id=\u30D6\u30EA\u30C3\u30B8\u5148\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID +label.destination.zone=\u30B3\u30D4\u30FC\u5148\u30BE\u30FC\u30F3 +label.destroy.router=\u30EB\u30FC\u30BF\u30FC\u306E\u7834\u68C4 label.destroy=\u7834\u68c4 -label.detaching.disk=\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059 -label.details=\\u8A73\\u7D30 -label.device.id=\\u30C7\\u30D0\\u30A4\\u30B9 ID -label.devices=\\u30C7\\u30D0\\u30A4\\u30B9 +label.detaching.disk=\u30C7\u30A3\u30B9\u30AF\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059 +label.details=\u8A73\u7D30 +label.device.id=\u30C7\u30D0\u30A4\u30B9 ID +label.devices=\u30C7\u30D0\u30A4\u30B9 label.dhcp=DHCP -label.DHCP.server.type=DHCP \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u7A2E\\u985E -label.direct.ips=\\u76F4\\u63A5 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.disabled=\\u7121\\u52B9 -label.disable.provider=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u306E\\u7121\\u52B9\\u5316 -label.disable.vpn=VPN \\u306E\\u7121\\u52B9\\u5316 -label.disabling.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 -label.disk.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E\\u30C7\\u30A3\\u30B9\\u30AF -label.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.disk.size.gb=\\u30C7\\u30A3\\u30B9\\u30AF \\u30B5\\u30A4\\u30BA (GB \\u5358\\u4F4D) -label.disk.size=\\u30C7\\u30A3\\u30B9\\u30AF \\u30B5\\u30A4\\u30BA -label.disk.total=\\u30C7\\u30A3\\u30B9\\u30AF\\u5408\\u8A08 -label.disk.volume=\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 -label.display.name=\\u8868\\u793A\\u540D -label.display.text=\\u8868\\u793A\\u30C6\\u30AD\\u30B9\\u30C8 +label.DHCP.server.type=DHCP \u30B5\u30FC\u30D0\u30FC\u306E\u7A2E\u985E +label.direct.ips=\u76F4\u63A5 IP \u30A2\u30C9\u30EC\u30B9 +label.disabled=\u7121\u52B9 +label.disable.provider=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u306E\u7121\u52B9\u5316 +label.disable.vpn=VPN \u306E\u7121\u52B9\u5316 +label.disabling.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 +label.disk.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E\u30C7\u30A3\u30B9\u30AF +label.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.disk.size.gb=\u30C7\u30A3\u30B9\u30AF \u30B5\u30A4\u30BA (GB \u5358\u4F4D) +label.disk.size=\u30C7\u30A3\u30B9\u30AF \u30B5\u30A4\u30BA +label.disk.total=\u30C7\u30A3\u30B9\u30AF\u5408\u8A08 +label.disk.volume=\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0 +label.display.name=\u8868\u793A\u540D +label.display.text=\u8868\u793A\u30C6\u30AD\u30B9\u30C8 label.dns.1=DNS 1 label.dns.2=DNS 2 label.dns=DNS -label.DNS.domain.for.guest.networks=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E DNS \\u30C9\\u30E1\\u30A4\\u30F3 -label.domain.admin=\\u30C9\\u30E1\\u30A4\\u30F3\\u7BA1\\u7406\\u8005 -label.domain.id=\\u30C9\\u30E1\\u30A4\\u30F3 ID -label.domain.name=\\u30C9\\u30E1\\u30A4\\u30F3\\u540D -label.domain.router=\\u30C9\\u30E1\\u30A4\\u30F3 \\u30EB\\u30FC\\u30BF\\u30FC -label.domain.suffix=DNS \\u30C9\\u30E1\\u30A4\\u30F3 \\u30B5\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9 (\\u4F8B\: xyz.com) -label.domain=\\u30C9\\u30E1\\u30A4\\u30F3 -label.done=\\u5B8C\\u4E86 -label.double.quotes.are.not.allowed=\\u4E8C\\u91CD\\u5F15\\u7528\\u7B26\\u306F\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u305B\\u3093 -label.download.progress=\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u306E\\u9032\\u6357\\u72B6\\u6CC1 -label.drag.new.position=\\u65B0\\u3057\\u3044\\u4F4D\\u7F6E\\u306B\\u30C9\\u30E9\\u30C3\\u30B0 -label.edit.lb.rule=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u306E\\u7DE8\\u96C6 -label.edit.network.details=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8A73\\u7D30\\u306E\\u7DE8\\u96C6 -label.edit.project.details=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u8A73\\u7D30\\u306E\\u7DE8\\u96C6 -label.edit.tags=\\u30BF\\u30B0\\u306E\\u7DE8\\u96C6 -label.edit.traffic.type=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u306E\\u7DE8\\u96C6 -label.edit=\\u7DE8\\u96C6 -label.edit.vpc=VPC \\u306E\\u7DE8\\u96C6 +label.DNS.domain.for.guest.networks=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E DNS \u30C9\u30E1\u30A4\u30F3 +label.domain.admin=\u30C9\u30E1\u30A4\u30F3\u7BA1\u7406\u8005 +label.domain.id=\u30C9\u30E1\u30A4\u30F3 ID +label.domain.name=\u30C9\u30E1\u30A4\u30F3\u540D +label.domain.router=\u30C9\u30E1\u30A4\u30F3 \u30EB\u30FC\u30BF\u30FC +label.domain.suffix=DNS \u30C9\u30E1\u30A4\u30F3 \u30B5\u30D5\u30A3\u30C3\u30AF\u30B9 (\u4F8B\: xyz.com) +label.domain=\u30C9\u30E1\u30A4\u30F3 +label.done=\u5B8C\u4E86 +label.double.quotes.are.not.allowed=\u4E8C\u91CD\u5F15\u7528\u7B26\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093 +label.download.progress=\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u306E\u9032\u6357\u72B6\u6CC1 +label.drag.new.position=\u65B0\u3057\u3044\u4F4D\u7F6E\u306B\u30C9\u30E9\u30C3\u30B0 +label.edit.lb.rule=\u8CA0\u8377\u5206\u6563\u898F\u5247\u306E\u7DE8\u96C6 +label.edit.network.details=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8A73\u7D30\u306E\u7DE8\u96C6 +label.edit.project.details=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u8A73\u7D30\u306E\u7DE8\u96C6 +label.edit.tags=\u30BF\u30B0\u306E\u7DE8\u96C6 +label.edit.traffic.type=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u306E\u7DE8\u96C6 +label.edit=\u7DE8\u96C6 +label.edit.vpc=VPC \u306E\u7DE8\u96C6 label.egress.rules=\u9001\u4fe1\u30eb\u30fc\u30eb -label.egress.rule=\\u9001\\u4FE1\\u898F\\u5247 -label.elastic.IP=\\u30A8\\u30E9\\u30B9\\u30C6\\u30A3\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.elastic.LB=\\u30A8\\u30E9\\u30B9\\u30C6\\u30A3\\u30C3\\u30AF\\u8CA0\\u8377\\u5206\\u6563 -label.elastic=\\u30A8\\u30E9\\u30B9\\u30C6\\u30A3\\u30C3\\u30AF -label.email=\\u96FB\\u5B50\\u30E1\\u30FC\\u30EB -label.enable.provider=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u306E\\u6709\\u52B9\\u5316 +label.egress.rule=\u9001\u4FE1\u898F\u5247 +label.elastic.IP=\u30A8\u30E9\u30B9\u30C6\u30A3\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 +label.elastic.LB=\u30A8\u30E9\u30B9\u30C6\u30A3\u30C3\u30AF\u8CA0\u8377\u5206\u6563 +label.elastic=\u30A8\u30E9\u30B9\u30C6\u30A3\u30C3\u30AF +label.email=\u96FB\u5B50\u30E1\u30FC\u30EB +label.enable.provider=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u306E\u6709\u52B9\u5316 label.enable.s3=S3\u57fa\u76e4\u30bb\u30ab\u30f3\u30c0\u30ea\u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u6709\u52b9\u5316 -label.enable.swift=Swift \\u306E\\u6709\\u52B9\\u5316 -label.enable.vpn=VPN \\u306E\\u6709\\u52B9\\u5316 -label.enabling.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 -label.enabling.vpn=VPN \\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 -label.end.IP=\\u7D42\\u4E86 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.endpoint.or.operation=\\u30A8\\u30F3\\u30C9\\u30DD\\u30A4\\u30F3\\u30C8\\u307E\\u305F\\u306F\\u64CD\\u4F5C +label.enable.swift=Swift \u306E\u6709\u52B9\u5316 +label.enable.vpn=VPN \u306E\u6709\u52B9\u5316 +label.enabling.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 +label.enabling.vpn=VPN \u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 +label.end.IP=\u7D42\u4E86 IP \u30A2\u30C9\u30EC\u30B9 +label.endpoint.or.operation=\u30A8\u30F3\u30C9\u30DD\u30A4\u30F3\u30C8\u307E\u305F\u306F\u64CD\u4F5C label.endpoint=\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8 -label.end.port=\\u7D42\\u4E86\\u30DD\\u30FC\\u30C8 -label.end.reserved.system.IP=\\u4E88\\u7D04\\u6E08\\u307F\\u7D42\\u4E86\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.end.vlan=\\u7D42\\u4E86 VLAN -label.enter.token=\\u30C8\\u30FC\\u30AF\\u30F3\\u306E\\u5165\\u529B -label.error.code=\\u30A8\\u30E9\\u30FC \\u30B3\\u30FC\\u30C9 -label.error=\\u30A8\\u30E9\\u30FC -label.ESP.encryption=ESP \\u6697\\u53F7\\u5316 -label.ESP.hash=ESP \\u30CF\\u30C3\\u30B7\\u30E5 -label.ESP.policy=ESP \\u30DD\\u30EA\\u30B7\\u30FC -label.esx.host=ESX/ESXi \\u30DB\\u30B9\\u30C8 -label.example=\\u4F8B +label.end.port=\u7D42\u4E86\u30DD\u30FC\u30C8 +label.end.reserved.system.IP=\u4E88\u7D04\u6E08\u307F\u7D42\u4E86\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9 +label.end.vlan=\u7D42\u4E86 VLAN +label.enter.token=\u30C8\u30FC\u30AF\u30F3\u306E\u5165\u529B +label.error.code=\u30A8\u30E9\u30FC \u30B3\u30FC\u30C9 +label.error=\u30A8\u30E9\u30FC +label.ESP.encryption=ESP \u6697\u53F7\u5316 +label.ESP.hash=ESP \u30CF\u30C3\u30B7\u30E5 +label.ESP.policy=ESP \u30DD\u30EA\u30B7\u30FC +label.esx.host=ESX/ESXi \u30DB\u30B9\u30C8 +label.example=\u4F8B label.f5=F5 -label.failed=\\u5931\\u6557 -label.featured=\\u304A\\u3059\\u3059\\u3081 -label.fetch.latest=\\u6700\\u65B0\\u60C5\\u5831\\u306E\\u53D6\\u5F97 -label.filterBy=\\u30D5\\u30A3\\u30EB\\u30BF\\u30FC -label.firewall=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB -label.first.name=\\u540D -label.format=\\u5F62\\u5F0F -label.friday=\\u91D1\\u66DC\\u65E5 -label.full.path=\\u30D5\\u30EB \\u30D1\\u30B9 -label.full=\\u5B8C\\u5168 -label.gateway=\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 -label.general.alerts=\\u4E00\\u822C\\u30A2\\u30E9\\u30FC\\u30C8 -label.generating.url=URL \\u3092\\u751F\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -label.go.step.2=\\u624B\\u9806 2 \\u306B\\u9032\\u3080 -label.go.step.3=\\u624B\\u9806 3 \\u306B\\u9032\\u3080 -label.go.step.4=\\u624B\\u9806 4 \\u306B\\u9032\\u3080 -label.go.step.5=\\u624B\\u9806 5 \\u306B\\u9032\\u3080 -label.group.optional=\\u30B0\\u30EB\\u30FC\\u30D7 (\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3) -label.group=\\u30B0\\u30EB\\u30FC\\u30D7 -label.guest.cidr=\\u30B2\\u30B9\\u30C8 CIDR -label.guest.end.ip=\\u30B2\\u30B9\\u30C8\\u306E\\u7D42\\u4E86 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.guest.gateway=\\u30B2\\u30B9\\u30C8 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 -label.guest.ip.range=\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 -label.guest.ip=\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.guest.netmask=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF -label.guest.networks=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.guest.start.ip=\\u30B2\\u30B9\\u30C8\\u306E\\u958B\\u59CB IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.guest.traffic=\\u30B2\\u30B9\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF -label.guest.type=\\u30B2\\u30B9\\u30C8\\u306E\\u7A2E\\u985E -label.guest=\\u30B2\\u30B9\\u30C8 -label.ha.enabled=\\u9AD8\\u53EF\\u7528\\u6027\\u6709\\u52B9 -label.help=\\u30D8\\u30EB\\u30D7 -label.hide.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u3092\\u96A0\\u3059 -label.hints=\\u30D2\\u30F3\\u30C8 -label.host.alerts=\\u30DB\\u30B9\\u30C8 \\u30A2\\u30E9\\u30FC\\u30C8 -label.host.MAC=\\u30DB\\u30B9\\u30C8\\u306E MAC -label.host.name=\\u30DB\\u30B9\\u30C8\\u540D -label.hosts=\\u30DB\\u30B9\\u30C8 +label.failed=\u5931\u6557 +label.featured=\u304A\u3059\u3059\u3081 +label.fetch.latest=\u6700\u65B0\u60C5\u5831\u306E\u53D6\u5F97 +label.filterBy=\u30D5\u30A3\u30EB\u30BF\u30FC +label.firewall=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB +label.first.name=\u540D +label.format=\u5F62\u5F0F +label.friday=\u91D1\u66DC\u65E5 +label.full.path=\u30D5\u30EB \u30D1\u30B9 +label.full=\u5B8C\u5168 +label.gateway=\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 +label.general.alerts=\u4E00\u822C\u30A2\u30E9\u30FC\u30C8 +label.generating.url=URL \u3092\u751F\u6210\u3057\u3066\u3044\u307E\u3059 +label.go.step.2=\u624B\u9806 2 \u306B\u9032\u3080 +label.go.step.3=\u624B\u9806 3 \u306B\u9032\u3080 +label.go.step.4=\u624B\u9806 4 \u306B\u9032\u3080 +label.go.step.5=\u624B\u9806 5 \u306B\u9032\u3080 +label.group.optional=\u30B0\u30EB\u30FC\u30D7 (\u30AA\u30D7\u30B7\u30E7\u30F3) +label.group=\u30B0\u30EB\u30FC\u30D7 +label.guest.cidr=\u30B2\u30B9\u30C8 CIDR +label.guest.end.ip=\u30B2\u30B9\u30C8\u306E\u7D42\u4E86 IP \u30A2\u30C9\u30EC\u30B9 +label.guest.gateway=\u30B2\u30B9\u30C8 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 +label.guest.ip.range=\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 +label.guest.ip=\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9 +label.guest.netmask=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30DE\u30B9\u30AF +label.guest.networks=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.guest.start.ip=\u30B2\u30B9\u30C8\u306E\u958B\u59CB IP \u30A2\u30C9\u30EC\u30B9 +label.guest.traffic=\u30B2\u30B9\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF +label.guest.type=\u30B2\u30B9\u30C8\u306E\u7A2E\u985E +label.guest=\u30B2\u30B9\u30C8 +label.ha.enabled=\u9AD8\u53EF\u7528\u6027\u6709\u52B9 +label.help=\u30D8\u30EB\u30D7 +label.hide.ingress.rule=\u53D7\u4FE1\u898F\u5247\u3092\u96A0\u3059 +label.hints=\u30D2\u30F3\u30C8 +label.host.alerts=\u30DB\u30B9\u30C8 \u30A2\u30E9\u30FC\u30C8 +label.host.MAC=\u30DB\u30B9\u30C8\u306E MAC +label.host.name=\u30DB\u30B9\u30C8\u540D +label.hosts=\u30DB\u30B9\u30C8 label.host.tags=\u00e3\u0083\u009b\u00e3\u0082\u00b9\u00e3\u0083\u0088\u00e3\u0082\u00bf\u00e3\u0082\u00b0 -label.host=\\u30DB\\u30B9\\u30C8 -label.hourly=\\u6BCE\\u6642 -label.hypervisor.capabilities=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306E\\u6A5F\\u80FD -label.hypervisor.type=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306E\\u7A2E\\u985E -label.hypervisor=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC -label.hypervisor.version=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306E\\u30D0\\u30FC\\u30B8\\u30E7\\u30F3 +label.host=\u30DB\u30B9\u30C8 +label.hourly=\u6BCE\u6642 +label.hypervisor.capabilities=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306E\u6A5F\u80FD +label.hypervisor.type=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306E\u7A2E\u985E +label.hypervisor=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC +label.hypervisor.version=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306E\u30D0\u30FC\u30B8\u30E7\u30F3 label.id=ID label.IKE.DH=IKE DH -label.IKE.encryption=IKE \\u6697\\u53F7\\u5316 -label.IKE.hash=IKE \\u30CF\\u30C3\\u30B7\\u30E5 -label.IKE.policy=IKE \\u30DD\\u30EA\\u30B7\\u30FC -label.info=\\u60C5\\u5831 -label.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247 -label.initiated.by=\\u958B\\u59CB\\u30E6\\u30FC\\u30B6\\u30FC -label.installWizard.addClusterIntro.subtitle=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306B\\u3064\\u3044\\u3066 -label.installWizard.addClusterIntro.title=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 -label.installWizard.addHostIntro.subtitle=\\u30DB\\u30B9\\u30C8\\u306B\\u3064\\u3044\\u3066 -label.installWizard.addHostIntro.title=\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 -label.installWizard.addPodIntro.subtitle=\\u30DD\\u30C3\\u30C9\\u306B\\u3064\\u3044\\u3066 -label.installWizard.addPodIntro.title=\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 -label.installWizard.addPrimaryStorageIntro.subtitle=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u3064\\u3044\\u3066 -label.installWizard.addPrimaryStorageIntro.title=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 +label.IKE.encryption=IKE \u6697\u53F7\u5316 +label.IKE.hash=IKE \u30CF\u30C3\u30B7\u30E5 +label.IKE.policy=IKE \u30DD\u30EA\u30B7\u30FC +label.info=\u60C5\u5831 +label.ingress.rule=\u53D7\u4FE1\u898F\u5247 +label.initiated.by=\u958B\u59CB\u30E6\u30FC\u30B6\u30FC +label.installWizard.addClusterIntro.subtitle=\u30AF\u30E9\u30B9\u30BF\u30FC\u306B\u3064\u3044\u3066 +label.installWizard.addClusterIntro.title=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 +label.installWizard.addHostIntro.subtitle=\u30DB\u30B9\u30C8\u306B\u3064\u3044\u3066 +label.installWizard.addHostIntro.title=\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 +label.installWizard.addPodIntro.subtitle=\u30DD\u30C3\u30C9\u306B\u3064\u3044\u3066 +label.installWizard.addPodIntro.title=\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 +label.installWizard.addPrimaryStorageIntro.subtitle=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u3064\u3044\u3066 +label.installWizard.addPrimaryStorageIntro.title=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 label.installWizard.addSecondaryStorageIntro.subtitle=\u30bb\u30ab\u30f3\u30c0\u30ea\u30fc\u30b9\u30c8\u30ec\u30fc\u30b8\u3068\u306f\uff1f -label.installWizard.addSecondaryStorageIntro.title=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 -label.installWizard.addZoneIntro.subtitle=\\u30BE\\u30FC\\u30F3\\u306B\\u3064\\u3044\\u3066 -label.installWizard.addZoneIntro.title=\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 -label.installWizard.addZone.title=\\u30BE\\u30FC\\u30F3\\u306E\\u8FFD\\u52A0 -label.installWizard.click.launch=[\\u8D77\\u52D5] \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -label.installWizard.subtitle=\\u3053\\u306E\\u30AC\\u30A4\\u30C9 \\u30C4\\u30A2\\u30FC\\u306F CloudStack&\#8482; \\u74B0\\u5883\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u306B\\u5F79\\u7ACB\\u3061\\u307E\\u3059 -label.installWizard.title=CloudStack&\#8482; \\u3078\\u3088\\u3046\\u3053\\u305D -label.instance.limits=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u5236\\u9650 -label.instance.name=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u540D -label.instances=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.internal.dns.1=\\u5185\\u90E8 DNS 1 -label.internal.dns.2=\\u5185\\u90E8 DNS 2 -label.internal.name=\\u5185\\u90E8\\u540D -label.interval.type=\\u9593\\u9694\\u306E\\u7A2E\\u985E -label.introduction.to.cloudstack=CloudStack&\#8482; \\u306E\\u7D39\\u4ECB -label.invalid.integer=\\u7121\\u52B9\\u306A\\u6574\\u6570 -label.invalid.number=\\u7121\\u52B9\\u306A\\u6570 -label.invitations=\\u62DB\\u5F85\\u72B6 -label.invited.accounts=\\u62DB\\u5F85\\u6E08\\u307F\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.invite.to=\\u62DB\\u5F85\\u3059\\u308B\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\: -label.invite=\\u62DB\\u5F85 -label.ip.address=IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.ipaddress=IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.ip.allocations=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u5272\\u308A\\u5F53\\u3066 +label.installWizard.addSecondaryStorageIntro.title=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 +label.installWizard.addZoneIntro.subtitle=\u30BE\u30FC\u30F3\u306B\u3064\u3044\u3066 +label.installWizard.addZoneIntro.title=\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 +label.installWizard.addZone.title=\u30BE\u30FC\u30F3\u306E\u8FFD\u52A0 +label.installWizard.click.launch=[\u8D77\u52D5] \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +label.installWizard.subtitle=\u3053\u306E\u30AC\u30A4\u30C9 \u30C4\u30A2\u30FC\u306F CloudStack&\#8482; \u74B0\u5883\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u306B\u5F79\u7ACB\u3061\u307E\u3059 +label.installWizard.title=CloudStack&\#8482; \u3078\u3088\u3046\u3053\u305D +label.instance.limits=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u5236\u9650 +label.instance.name=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u540D +label.instances=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.internal.dns.1=\u5185\u90E8 DNS 1 +label.internal.dns.2=\u5185\u90E8 DNS 2 +label.internal.name=\u5185\u90E8\u540D +label.interval.type=\u9593\u9694\u306E\u7A2E\u985E +label.introduction.to.cloudstack=CloudStack&\#8482; \u306E\u7D39\u4ECB +label.invalid.integer=\u7121\u52B9\u306A\u6574\u6570 +label.invalid.number=\u7121\u52B9\u306A\u6570 +label.invitations=\u62DB\u5F85\u72B6 +label.invited.accounts=\u62DB\u5F85\u6E08\u307F\u30A2\u30AB\u30A6\u30F3\u30C8 +label.invite.to=\u62DB\u5F85\u3059\u308B\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\: +label.invite=\u62DB\u5F85 +label.ip.address=IP \u30A2\u30C9\u30EC\u30B9 +label.ipaddress=IP \u30A2\u30C9\u30EC\u30B9 +label.ip.allocations=IP \u30A2\u30C9\u30EC\u30B9\u306E\u5272\u308A\u5F53\u3066 label.ip=IP -label.ip.limits=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u5236\\u9650 -label.ip.or.fqdn=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u307E\\u305F\\u306F FQDN -label.ip.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 -label.ip.ranges=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 -label.IPsec.preshared.key=IPsec \\u4E8B\\u524D\\u5171\\u6709\\u30AD\\u30FC +label.ip.limits=\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u306E\u5236\u9650 +label.ip.or.fqdn=IP \u30A2\u30C9\u30EC\u30B9\u307E\u305F\u306F FQDN +label.ip.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 +label.ip.ranges=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 +label.IPsec.preshared.key=IPsec \u4E8B\u524D\u5171\u6709\u30AD\u30FC label.ips=IP label.iscsi=iSCSI -label.is.default=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 -label.iso.boot=ISO \\u8D77\\u52D5 +label.is.default=\u30C7\u30D5\u30A9\u30EB\u30C8 +label.iso.boot=ISO \u8D77\u52D5 label.iso=ISO -label.isolated.networks=\\u5206\\u96E2\\u3055\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.isolation.method=\\u5206\\u96E2\\u65B9\\u6CD5 -label.isolation.mode=\\u5206\\u96E2\\u30E2\\u30FC\\u30C9 +label.isolated.networks=\u5206\u96E2\u3055\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.isolation.method=\u5206\u96E2\u65B9\u6CD5 +label.isolation.mode=\u5206\u96E2\u30E2\u30FC\u30C9 label.isolation.uri=Isolation URI -label.is.redundant.router=\\u5197\\u9577 -label.is.shared=\\u5171\\u6709 -label.is.system=\\u30B7\\u30B9\\u30C6\\u30E0 -label.item.listing=\\u9805\\u76EE\\u4E00\\u89A7 -label.keep=\\u7DAD\\u6301 -label.keyboard.type=\\u30AD\\u30FC\\u30DC\\u30FC\\u30C9\\u306E\\u7A2E\\u985E -label.key=\\u30AD\\u30FC -label.kvm.traffic.label=KVM \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u30E9\\u30D9\\u30EB -label.label=\\u30E9\\u30D9\\u30EB +label.is.redundant.router=\u5197\u9577 +label.is.shared=\u5171\u6709 +label.is.system=\u30B7\u30B9\u30C6\u30E0 +label.item.listing=\u9805\u76EE\u4E00\u89A7 +label.keep=\u7DAD\u6301 +label.keyboard.type=\u30AD\u30FC\u30DC\u30FC\u30C9\u306E\u7A2E\u985E +label.key=\u30AD\u30FC +label.kvm.traffic.label=KVM \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u30E9\u30D9\u30EB +label.label=\u30E9\u30D9\u30EB label.lang.brportugese=Brazilian Portugese -label.lang.chinese=\\u7C21\\u4F53\\u5B57\\u4E2D\\u56FD\\u8A9E -label.lang.english=\\u82F1\\u8A9E +label.lang.chinese=\u7C21\u4F53\u5B57\u4E2D\u56FD\u8A9E +label.lang.english=\u82F1\u8A9E label.lang.french=French -label.lang.japanese=\\u65E5\\u672C\\u8A9E +label.lang.japanese=\u65E5\u672C\u8A9E label.lang.russian=Russian -label.lang.spanish=\\u30B9\\u30DA\\u30A4\\u30F3\\u8A9E -label.last.disconnected=\\u6700\\u7D42\\u5207\\u65AD\\u65E5\\u6642 -label.last.name=\\u59D3 -label.latest.events=\\u6700\\u65B0\\u30A4\\u30D9\\u30F3\\u30C8 -label.launch=\\u8D77\\u52D5 -label.launch.vm=VM \\u306E\\u8D77\\u52D5 -label.LB.isolation=\\u8CA0\\u8377\\u5206\\u6563\\u5206\\u96E2 -label.least.connections=\\u6700\\u5C0F\\u63A5\\u7D9A -label.level=\\u30EC\\u30D9\\u30EB -label.linklocal.ip=\\u30EA\\u30F3\\u30AF \\u30ED\\u30FC\\u30AB\\u30EB IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E -label.load.balancing.policies=\\u8CA0\\u8377\\u5206\\u6563\\u30DD\\u30EA\\u30B7\\u30FC -label.load.balancing=\\u8CA0\\u8377\\u5206\\u6563 -label.loading=\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3044\\u307E\\u3059 -label.local.storage.enabled=\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F\\u6709\\u52B9\\u3067\\u3059 -label.local.storage=\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.local=\\u30ED\\u30FC\\u30AB\\u30EB -label.login=\\u30ED\\u30B0\\u30AA\\u30F3 -label.logout=\\u30ED\\u30B0\\u30AA\\u30D5 +label.lang.spanish=\u30B9\u30DA\u30A4\u30F3\u8A9E +label.last.disconnected=\u6700\u7D42\u5207\u65AD\u65E5\u6642 +label.last.name=\u59D3 +label.latest.events=\u6700\u65B0\u30A4\u30D9\u30F3\u30C8 +label.launch=\u8D77\u52D5 +label.launch.vm=VM \u306E\u8D77\u52D5 +label.LB.isolation=\u8CA0\u8377\u5206\u6563\u5206\u96E2 +label.least.connections=\u6700\u5C0F\u63A5\u7D9A +label.level=\u30EC\u30D9\u30EB +label.linklocal.ip=\u30EA\u30F3\u30AF \u30ED\u30FC\u30AB\u30EB IP \u30A2\u30C9\u30EC\u30B9 +label.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E +label.load.balancing.policies=\u8CA0\u8377\u5206\u6563\u30DD\u30EA\u30B7\u30FC +label.load.balancing=\u8CA0\u8377\u5206\u6563 +label.loading=\u30ED\u30FC\u30C9\u3057\u3066\u3044\u307E\u3059 +label.local.storage.enabled=\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8\u306F\u6709\u52B9\u3067\u3059 +label.local.storage=\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8 +label.local=\u30ED\u30FC\u30AB\u30EB +label.login=\u30ED\u30B0\u30AA\u30F3 +label.logout=\u30ED\u30B0\u30AA\u30D5 label.lun=LUN -label.LUN.number=LUN \\u756A\\u53F7 -label.make.project.owner=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u6240\\u6709\\u8005\\u5316 -label.management.ips=\\u7BA1\\u7406 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.management=\\u7BA1\\u7406 -label.manage.resources=\\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u7BA1\\u7406 -label.manage=\\u7BA1\\u7406 -label.max.guest.limit=\\u6700\\u5927\\u30B2\\u30B9\\u30C8\\u5236\\u9650 -label.maximum=\\u6700\\u5927 -label.max.networks=\\u6700\\u5927\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6570 -label.max.public.ips=\\u6700\\u5927\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u6570 -label.max.snapshots=\\u6700\\u5927\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u6570 -label.max.templates=\\u6700\\u5927\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u6570 -label.max.vms=\\u6700\\u5927\\u30E6\\u30FC\\u30B6\\u30FC VM \\u6570 -label.max.volumes=\\u6700\\u5927\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u6570 +label.LUN.number=LUN \u756A\u53F7 +label.make.project.owner=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u6240\u6709\u8005\u5316 +label.management.ips=\u7BA1\u7406 IP \u30A2\u30C9\u30EC\u30B9 +label.management=\u7BA1\u7406 +label.manage.resources=\u30EA\u30BD\u30FC\u30B9\u306E\u7BA1\u7406 +label.manage=\u7BA1\u7406 +label.max.guest.limit=\u6700\u5927\u30B2\u30B9\u30C8\u5236\u9650 +label.maximum=\u6700\u5927 +label.max.networks=\u6700\u5927\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6570 +label.max.public.ips=\u6700\u5927\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u6570 +label.max.snapshots=\u6700\u5927\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u6570 +label.max.templates=\u6700\u5927\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u6570 +label.max.vms=\u6700\u5927\u30E6\u30FC\u30B6\u30FC VM \u6570 +label.max.volumes=\u6700\u5927\u30DC\u30EA\u30E5\u30FC\u30E0\u6570 label.max.vpcs=Max. VPCs -label.may.continue=\\u7D9A\\u884C\\u3067\\u304D\\u307E\\u3059\\u3002 -label.memory.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E\\u30E1\\u30E2\\u30EA -label.memory.mb=\\u30E1\\u30E2\\u30EA (MB) -label.memory.total=\\u30E1\\u30E2\\u30EA\\u5408\\u8A08 -label.memory=\\u30E1\\u30E2\\u30EA -label.memory.used=\\u30E1\\u30E2\\u30EA\\u4F7F\\u7528\\u91CF -label.menu.accounts=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.menu.alerts=\\u30A2\\u30E9\\u30FC\\u30C8 -label.menu.all.accounts=\\u3059\\u3079\\u3066\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.menu.all.instances=\\u3059\\u3079\\u3066\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.menu.community.isos=\\u30B3\\u30DF\\u30E5\\u30CB\\u30C6\\u30A3 ISO -label.menu.community.templates=\\u30B3\\u30DF\\u30E5\\u30CB\\u30C6\\u30A3 \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 -label.menu.configuration=\\u69CB\\u6210 -label.menu.dashboard=\\u30C0\\u30C3\\u30B7\\u30E5\\u30DC\\u30FC\\u30C9 -label.menu.destroyed.instances=\\u7834\\u68C4\\u3055\\u308C\\u305F\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.menu.disk.offerings=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.menu.domains=\\u30C9\\u30E1\\u30A4\\u30F3 -label.menu.events=\\u30A4\\u30D9\\u30F3\\u30C8 -label.menu.featured.isos=\\u304A\\u3059\\u3059\\u3081\\u306E ISO -label.menu.featured.templates=\\u304A\\u3059\\u3059\\u3081\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 -label.menu.global.settings=\\u30B0\\u30ED\\u30FC\\u30D0\\u30EB\\u8A2D\\u5B9A -label.menu.infrastructure=\\u30A4\\u30F3\\u30D5\\u30E9\\u30B9\\u30C8\\u30E9\\u30AF\\u30C1\\u30E3 -label.menu.instances=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.menu.ipaddresses=IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.may.continue=\u7D9A\u884C\u3067\u304D\u307E\u3059\u3002 +label.memory.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E\u30E1\u30E2\u30EA +label.memory.mb=\u30E1\u30E2\u30EA (MB) +label.memory.total=\u30E1\u30E2\u30EA\u5408\u8A08 +label.memory=\u30E1\u30E2\u30EA +label.memory.used=\u30E1\u30E2\u30EA\u4F7F\u7528\u91CF +label.menu.accounts=\u30A2\u30AB\u30A6\u30F3\u30C8 +label.menu.alerts=\u30A2\u30E9\u30FC\u30C8 +label.menu.all.accounts=\u3059\u3079\u3066\u306E\u30A2\u30AB\u30A6\u30F3\u30C8 +label.menu.all.instances=\u3059\u3079\u3066\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.menu.community.isos=\u30B3\u30DF\u30E5\u30CB\u30C6\u30A3 ISO +label.menu.community.templates=\u30B3\u30DF\u30E5\u30CB\u30C6\u30A3 \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +label.menu.configuration=\u69CB\u6210 +label.menu.dashboard=\u30C0\u30C3\u30B7\u30E5\u30DC\u30FC\u30C9 +label.menu.destroyed.instances=\u7834\u68C4\u3055\u308C\u305F\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.menu.disk.offerings=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.menu.domains=\u30C9\u30E1\u30A4\u30F3 +label.menu.events=\u30A4\u30D9\u30F3\u30C8 +label.menu.featured.isos=\u304A\u3059\u3059\u3081\u306E ISO +label.menu.featured.templates=\u304A\u3059\u3059\u3081\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +label.menu.global.settings=\u30B0\u30ED\u30FC\u30D0\u30EB\u8A2D\u5B9A +label.menu.infrastructure=\u30A4\u30F3\u30D5\u30E9\u30B9\u30C8\u30E9\u30AF\u30C1\u30E3 +label.menu.instances=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.menu.ipaddresses=IP \u30A2\u30C9\u30EC\u30B9 label.menu.isos=ISO -label.menu.my.accounts=\\u30DE\\u30A4 \\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.menu.my.instances=\\u30DE\\u30A4 \\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.menu.my.isos=\\u30DE\\u30A4 ISO -label.menu.my.templates=\\u30DE\\u30A4 \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 -label.menu.network.offerings=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.menu.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.menu.physical.resources=\\u7269\\u7406\\u30EA\\u30BD\\u30FC\\u30B9 -label.menu.running.instances=\\u5B9F\\u884C\\u4E2D\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.menu.security.groups=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 -label.menu.service.offerings=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.menu.snapshots=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 -label.menu.stopped.instances=\\u505C\\u6B62\\u3055\\u308C\\u305F\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.menu.storage=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.menu.system.service.offerings=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.menu.system=\\u30B7\\u30B9\\u30C6\\u30E0 -label.menu.system.vms=\\u30B7\\u30B9\\u30C6\\u30E0 VM -label.menu.templates=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 -label.menu.virtual.appliances=\\u4EEE\\u60F3\\u30A2\\u30D7\\u30E9\\u30A4\\u30A2\\u30F3\\u30B9 -label.menu.virtual.resources=\\u4EEE\\u60F3\\u30EA\\u30BD\\u30FC\\u30B9 -label.menu.volumes=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 -label.migrate.instance.to.host=\\u5225\\u306E\\u30DB\\u30B9\\u30C8\\u3078\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C -label.migrate.instance.to.ps=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3078\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C -label.migrate.instance.to=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C\\u5148\: -label.migrate.router.to=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u79FB\\u884C\\u5148\: -label.migrate.systemvm.to=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u79FB\\u884C\\u5148\: +label.menu.my.accounts=\u30DE\u30A4 \u30A2\u30AB\u30A6\u30F3\u30C8 +label.menu.my.instances=\u30DE\u30A4 \u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.menu.my.isos=\u30DE\u30A4 ISO +label.menu.my.templates=\u30DE\u30A4 \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +label.menu.network.offerings=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.menu.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.menu.physical.resources=\u7269\u7406\u30EA\u30BD\u30FC\u30B9 +label.menu.running.instances=\u5B9F\u884C\u4E2D\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.menu.security.groups=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 +label.menu.service.offerings=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.menu.snapshots=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 +label.menu.stopped.instances=\u505C\u6B62\u3055\u308C\u305F\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.menu.storage=\u30B9\u30C8\u30EC\u30FC\u30B8 +label.menu.system.service.offerings=\u30B7\u30B9\u30C6\u30E0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.menu.system=\u30B7\u30B9\u30C6\u30E0 +label.menu.system.vms=\u30B7\u30B9\u30C6\u30E0 VM +label.menu.templates=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +label.menu.virtual.appliances=\u4EEE\u60F3\u30A2\u30D7\u30E9\u30A4\u30A2\u30F3\u30B9 +label.menu.virtual.resources=\u4EEE\u60F3\u30EA\u30BD\u30FC\u30B9 +label.menu.volumes=\u30DC\u30EA\u30E5\u30FC\u30E0 +label.migrate.instance.to.host=\u5225\u306E\u30DB\u30B9\u30C8\u3078\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C +label.migrate.instance.to.ps=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3078\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C +label.migrate.instance.to=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C\u5148\: +label.migrate.router.to=\u30EB\u30FC\u30BF\u30FC\u306E\u79FB\u884C\u5148\: +label.migrate.systemvm.to=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u79FB\u884C\u5148\: label.migrate.to.host=\u30db\u30b9\u30c8\u3078\u79fb\u884c label.migrate.to.storage=\u30b9\u30c8\u30ec\u30fc\u30b8\u3078\u79fb\u884c -label.migrate.volume=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3078\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u79FB\\u884C -label.minimum=\\u6700\\u5C0F -label.minute.past.hour=\\u5206 (\\u6BCE\\u6642) -label.monday=\\u6708\\u66DC\\u65E5 -label.monthly=\\u6BCE\\u6708 -label.more.templates=\\u305D\\u306E\\u307B\\u304B\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 -label.move.down.row=1 \\u884C\\u4E0B\\u306B\\u79FB\\u52D5 -label.move.to.bottom=\\u6700\\u4E0B\\u4F4D\\u306B\\u79FB\\u52D5 -label.move.to.top=\\u6700\\u4E0A\\u4F4D\\u306B\\u79FB\\u52D5 -label.move.up.row=1 \\u884C\\u4E0A\\u306B\\u79FB\\u52D5 -label.my.account=\\u30DE\\u30A4 \\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.my.network=\\u30DE\\u30A4 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.my.templates=\\u30DE\\u30A4 \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 -label.name.optional=\\u540D\\u524D (\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3) -label.name=\\u540D\\u524D -label.nat.port.range=NAT \\u30DD\\u30FC\\u30C8\\u306E\\u7BC4\\u56F2 -label.netmask=\\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF +label.migrate.volume=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3078\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u79FB\u884C +label.minimum=\u6700\u5C0F +label.minute.past.hour=\u5206 (\u6BCE\u6642) +label.monday=\u6708\u66DC\u65E5 +label.monthly=\u6BCE\u6708 +label.more.templates=\u305D\u306E\u307B\u304B\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +label.move.down.row=1 \u884C\u4E0B\u306B\u79FB\u52D5 +label.move.to.bottom=\u6700\u4E0B\u4F4D\u306B\u79FB\u52D5 +label.move.to.top=\u6700\u4E0A\u4F4D\u306B\u79FB\u52D5 +label.move.up.row=1 \u884C\u4E0A\u306B\u79FB\u52D5 +label.my.account=\u30DE\u30A4 \u30A2\u30AB\u30A6\u30F3\u30C8 +label.my.network=\u30DE\u30A4 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.my.templates=\u30DE\u30A4 \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +label.name.optional=\u540D\u524D (\u30AA\u30D7\u30B7\u30E7\u30F3) +label.name=\u540D\u524D +label.nat.port.range=NAT \u30DD\u30FC\u30C8\u306E\u7BC4\u56F2 +label.netmask=\u30CD\u30C3\u30C8\u30DE\u30B9\u30AF label.netScaler=NetScaler -label.network.ACLs=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL -label.network.ACL.total=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL \\u5408\\u8A08 -label.network.ACL=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL -label.network.desc=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8AAC\\u660E -label.network.device.type=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u7A2E\\u985E -label.network.device=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C7\\u30D0\\u30A4\\u30B9 -label.network.domain.text=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C9\\u30E1\\u30A4\\u30F3 -label.network.domain=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C9\\u30E1\\u30A4\\u30F3 -label.network.id=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID -label.networking.and.security=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3068\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 -label.network.label.display.for.blank.value=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u4F7F\\u7528 -label.network.name=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u540D -label.network.offering.display.text=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u8868\\u793A\\u30C6\\u30AD\\u30B9\\u30C8 -label.network.offering.id=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 ID -label.network.offering.name=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u540D -label.network.offering=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.network.rate.megabytes=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u901F\\u5EA6 (MB/\\u79D2) -label.network.rate=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u901F\\u5EA6 -label.network.read=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8AAD\\u307F\\u53D6\\u308A -label.network.service.providers=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30B5\\u30FC\\u30D3\\u30B9 \\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC -label.networks=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.network.type=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u7A2E\\u985E -label.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.network.write=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u66F8\\u304D\\u8FBC\\u307F -label.new.password=\\u65B0\\u3057\\u3044\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 -label.new.project=\\u65B0\\u3057\\u3044\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 -label.new=\\u65B0\\u898F -label.new.vm=\\u65B0\\u3057\\u3044 VM -label.next=\\u6B21\\u3078 +label.network.ACLs=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL +label.network.ACL.total=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL \u5408\u8A08 +label.network.ACL=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL +label.network.desc=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8AAC\u660E +label.network.device.type=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C7\u30D0\u30A4\u30B9\u306E\u7A2E\u985E +label.network.device=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C7\u30D0\u30A4\u30B9 +label.network.domain.text=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C9\u30E1\u30A4\u30F3 +label.network.domain=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C9\u30E1\u30A4\u30F3 +label.network.id=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID +label.networking.and.security=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3068\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 +label.network.label.display.for.blank.value=\u30C7\u30D5\u30A9\u30EB\u30C8 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u4F7F\u7528 +label.network.name=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u540D +label.network.offering.display.text=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u8868\u793A\u30C6\u30AD\u30B9\u30C8 +label.network.offering.id=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 ID +label.network.offering.name=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u540D +label.network.offering=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.network.rate.megabytes=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u901F\u5EA6 (MB/\u79D2) +label.network.rate=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u901F\u5EA6 +label.network.read=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8AAD\u307F\u53D6\u308A +label.network.service.providers=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30B5\u30FC\u30D3\u30B9 \u30D7\u30ED\u30D0\u30A4\u30C0\u30FC +label.networks=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.network.type=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u7A2E\u985E +label.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.network.write=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u66F8\u304D\u8FBC\u307F +label.new.password=\u65B0\u3057\u3044\u30D1\u30B9\u30EF\u30FC\u30C9 +label.new.project=\u65B0\u3057\u3044\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 +label.new=\u65B0\u898F +label.new.vm=\u65B0\u3057\u3044 VM +label.next=\u6B21\u3078 label.nexusVswitch=Nexus 1000V label.nfs=NFS -label.nfs.server=NFS \\u30B5\\u30FC\\u30D0\\u30FC -label.nfs.storage=NFS \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.nic.adapter.type=NIC \\u30A2\\u30C0\\u30D7\\u30BF\\u30FC\\u306E\\u7A2E\\u985E +label.nfs.server=NFS \u30B5\u30FC\u30D0\u30FC +label.nfs.storage=NFS \u30B9\u30C8\u30EC\u30FC\u30B8 +label.nic.adapter.type=NIC \u30A2\u30C0\u30D7\u30BF\u30FC\u306E\u7A2E\u985E label.nicira.controller.address=\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u30a2\u30c9\u30ec\u30b9 label.nicira.l3gatewayserviceuuid=L3 \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u30b5\u30fc\u30d3\u30b9UUID label.nicira.transportzoneuuid=Transport Zone Uuid label.nics=NIC -label.no.actions=\\u5B9F\\u884C\\u3067\\u304D\\u308B\\u64CD\\u4F5C\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 -label.no.alerts=\\u6700\\u8FD1\\u306E\\u30A2\\u30E9\\u30FC\\u30C8\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 -label.no.data=\\u8868\\u793A\\u3059\\u308B\\u30C7\\u30FC\\u30BF\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093 -label.no.errors=\\u6700\\u8FD1\\u306E\\u30A8\\u30E9\\u30FC\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 -label.no.isos=\\u4F7F\\u7528\\u3067\\u304D\\u308B ISO \\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 -label.no.items=\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u9805\\u76EE\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 -label.none=\\u306A\\u3057 -label.no.security.groups=\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 -label.not.found=\\u898B\\u3064\\u304B\\u308A\\u307E\\u305B\\u3093 -label.no.thanks=\\u8A2D\\u5B9A\\u3057\\u306A\\u3044 -label.notifications=\\u901A\\u77E5 -label.no=\\u3044\\u3044\\u3048 -label.number.of.clusters=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u6570 -label.number.of.hosts=\\u30DB\\u30B9\\u30C8\\u6570 -label.number.of.pods=\\u30DD\\u30C3\\u30C9\\u6570 -label.number.of.system.vms=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u6570 -label.number.of.virtual.routers=\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u6570 -label.number.of.zones=\\u30BE\\u30FC\\u30F3\\u6570 -label.num.cpu.cores=CPU \\u30B3\\u30A2\\u6570 -label.numretries=\\u518D\\u8A66\\u884C\\u56DE\\u6570 +label.no.actions=\u5B9F\u884C\u3067\u304D\u308B\u64CD\u4F5C\u306F\u3042\u308A\u307E\u305B\u3093 +label.no.alerts=\u6700\u8FD1\u306E\u30A2\u30E9\u30FC\u30C8\u306F\u3042\u308A\u307E\u305B\u3093 +label.no.data=\u8868\u793A\u3059\u308B\u30C7\u30FC\u30BF\u304C\u3042\u308A\u307E\u305B\u3093 +label.no.errors=\u6700\u8FD1\u306E\u30A8\u30E9\u30FC\u306F\u3042\u308A\u307E\u305B\u3093 +label.no.isos=\u4F7F\u7528\u3067\u304D\u308B ISO \u306F\u3042\u308A\u307E\u305B\u3093 +label.no.items=\u4F7F\u7528\u3067\u304D\u308B\u9805\u76EE\u306F\u3042\u308A\u307E\u305B\u3093 +label.none=\u306A\u3057 +label.no.security.groups=\u4F7F\u7528\u3067\u304D\u308B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u306F\u3042\u308A\u307E\u305B\u3093 +label.not.found=\u898B\u3064\u304B\u308A\u307E\u305B\u3093 +label.no.thanks=\u8A2D\u5B9A\u3057\u306A\u3044 +label.notifications=\u901A\u77E5 +label.no=\u3044\u3044\u3048 +label.number.of.clusters=\u30AF\u30E9\u30B9\u30BF\u30FC\u6570 +label.number.of.hosts=\u30DB\u30B9\u30C8\u6570 +label.number.of.pods=\u30DD\u30C3\u30C9\u6570 +label.number.of.system.vms=\u30B7\u30B9\u30C6\u30E0 VM \u6570 +label.number.of.virtual.routers=\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u6570 +label.number.of.zones=\u30BE\u30FC\u30F3\u6570 +label.num.cpu.cores=CPU \u30B3\u30A2\u6570 +label.numretries=\u518D\u8A66\u884C\u56DE\u6570 label.ocfs2=OCFS2 -label.offer.ha=\\u9AD8\\u53EF\\u7528\\u6027\\u306E\\u63D0\\u4F9B +label.offer.ha=\u9AD8\u53EF\u7528\u6027\u306E\u63D0\u4F9B label.ok=OK -label.optional=\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3 -label.order=\\u9806\\u5E8F -label.os.preference=OS \\u57FA\\u672C\\u8A2D\\u5B9A -label.os.type=OS \\u306E\\u7A2E\\u985E -label.owned.public.ips=\\u6240\\u6709\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.owner.account=\\u6240\\u6709\\u8005\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.optional=\u30AA\u30D7\u30B7\u30E7\u30F3 +label.order=\u9806\u5E8F +label.os.preference=OS \u57FA\u672C\u8A2D\u5B9A +label.os.type=OS \u306E\u7A2E\u985E +label.owned.public.ips=\u6240\u6709\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 +label.owner.account=\u6240\u6709\u8005\u30A2\u30AB\u30A6\u30F3\u30C8 label.owner.domain=\u00e6\u0089\u0080\u00e6\u009c\u0089\u00e8\u0080\u0085\u00e3\u0083\u0089\u00e3\u0083\u00a1\u00e3\u0082\u00a4\u00e3\u0083\u00b3 -label.parent.domain=\\u89AA\\u30C9\\u30E1\\u30A4\\u30F3 -label.password.enabled=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u7BA1\\u7406\\u6709\\u52B9 -label.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 -label.path=\\u30D1\\u30B9 +label.parent.domain=\u89AA\u30C9\u30E1\u30A4\u30F3 +label.password.enabled=\u30D1\u30B9\u30EF\u30FC\u30C9\u7BA1\u7406\u6709\u52B9 +label.password=\u30D1\u30B9\u30EF\u30FC\u30C9 +label.path=\u30D1\u30B9 label.perfect.forward.secrecy=Perfect Forward Secrecy -label.physical.network.ID=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID -label.PING.CIFS.password=PING CIFS \\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 -label.PING.CIFS.username=PING CIFS \\u30E6\\u30FC\\u30B6\\u30FC\\u540D -label.PING.dir=PING \\u30C7\\u30A3\\u30EC\\u30AF\\u30C8\\u30EA -label.PING.storage.IP=PING \\u5BFE\\u8C61\\u306E\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.please.specify.netscaler.info=Netscaler \\u60C5\\u5831\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 -label.please.wait=\\u304A\\u5F85\\u3061\\u304F\\u3060\\u3055\\u3044 -label.pod.name=\\u30DD\\u30C3\\u30C9\\u540D -label.pods=\\u30DD\\u30C3\\u30C9 -label.pod=\\u30DD\\u30C3\\u30C9 -label.port.forwarding.policies=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001\\u30DD\\u30EA\\u30B7\\u30FC -label.port.forwarding=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001 -label.port.range=\\u30DD\\u30FC\\u30C8\\u306E\\u7BC4\\u56F2 +label.physical.network.ID=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID +label.PING.CIFS.password=PING CIFS \u30D1\u30B9\u30EF\u30FC\u30C9 +label.PING.CIFS.username=PING CIFS \u30E6\u30FC\u30B6\u30FC\u540D +label.PING.dir=PING \u30C7\u30A3\u30EC\u30AF\u30C8\u30EA +label.PING.storage.IP=PING \u5BFE\u8C61\u306E\u30B9\u30C8\u30EC\u30FC\u30B8 IP \u30A2\u30C9\u30EC\u30B9 +label.please.specify.netscaler.info=Netscaler \u60C5\u5831\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044 +label.please.wait=\u304A\u5F85\u3061\u304F\u3060\u3055\u3044 +label.pod.name=\u30DD\u30C3\u30C9\u540D +label.pods=\u30DD\u30C3\u30C9 +label.pod=\u30DD\u30C3\u30C9 +label.port.forwarding.policies=\u30DD\u30FC\u30C8\u8EE2\u9001\u30DD\u30EA\u30B7\u30FC +label.port.forwarding=\u30DD\u30FC\u30C8\u8EE2\u9001 +label.port.range=\u30DD\u30FC\u30C8\u306E\u7BC4\u56F2 label.PreSetup=PreSetup -label.previous=\\u623B\\u308B -label.prev=\\u623B\\u308B -label.primary.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.primary.network=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.primary.storage.count=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30D7\\u30FC\\u30EB -label.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.primary.used=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u4F7F\\u7528\\u91CF -label.private.Gateway=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 -label.private.interface=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9 -label.private.ip.range=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 -label.private.ips=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.private.ip=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.privatekey=PKC\#8 \\u79D8\\u5BC6\\u30AD\\u30FC -label.private.network=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.private.port=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30DD\\u30FC\\u30C8 -label.private.zone=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30BE\\u30FC\\u30F3 -label.project.dashboard=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30C0\\u30C3\\u30B7\\u30E5\\u30DC\\u30FC\\u30C9 -label.project.id=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 ID -label.project.invite=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u62DB\\u5F85 -label.project.name=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u540D -label.projects=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 -label.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 -label.project.view=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30D3\\u30E5\\u30FC -label.protocol=\\u30D7\\u30ED\\u30C8\\u30B3\\u30EB -label.providers=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC -label.public.interface=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9 -label.public.ips=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.public.ip=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.public.network=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.public.port=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30DD\\u30FC\\u30C8 -label.public=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF -label.public.zone=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30BE\\u30FC\\u30F3 -label.purpose=\\u76EE\\u7684 -label.Pxe.server.type=PXE \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u7A2E\\u985E +label.previous=\u623B\u308B +label.prev=\u623B\u308B +label.primary.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 +label.primary.network=\u30D7\u30E9\u30A4\u30DE\u30EA \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.primary.storage.count=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30D7\u30FC\u30EB +label.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 +label.primary.used=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u4F7F\u7528\u91CF +label.private.Gateway=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 +label.private.interface=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9 +label.private.ip.range=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 +label.private.ips=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9 +label.private.ip=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9 +label.privatekey=PKC\#8 \u79D8\u5BC6\u30AD\u30FC +label.private.network=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.private.port=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30DD\u30FC\u30C8 +label.private.zone=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30BE\u30FC\u30F3 +label.project.dashboard=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30C0\u30C3\u30B7\u30E5\u30DC\u30FC\u30C9 +label.project.id=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 ID +label.project.invite=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u62DB\u5F85 +label.project.name=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u540D +label.projects=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 +label.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 +label.project.view=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30D3\u30E5\u30FC +label.protocol=\u30D7\u30ED\u30C8\u30B3\u30EB +label.providers=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC +label.public.interface=\u30D1\u30D6\u30EA\u30C3\u30AF \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9 +label.public.ips=\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 +label.public.ip=\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 +label.public.network=\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.public.port=\u30D1\u30D6\u30EA\u30C3\u30AF \u30DD\u30FC\u30C8 +label.public=\u30D1\u30D6\u30EA\u30C3\u30AF +label.public.zone=\u30D1\u30D6\u30EA\u30C3\u30AF \u30BE\u30FC\u30F3 +label.purpose=\u76EE\u7684 +label.Pxe.server.type=PXE \u30B5\u30FC\u30D0\u30FC\u306E\u7A2E\u985E label.quickview=\u30af\u30a4\u30c3\u30af\u30d3\u30e5\u30fc label.reboot=\u518d\u8d77\u52d5 -label.recent.errors=\\u6700\\u8FD1\\u306E\\u30A8\\u30E9\\u30FC -label.redundant.router.capability=\\u5197\\u9577\\u30EB\\u30FC\\u30BF\\u30FC\\u6A5F\\u80FD -label.redundant.router=\\u5197\\u9577\\u30EB\\u30FC\\u30BF\\u30FC -label.redundant.state=\\u5197\\u9577\\u72B6\\u614B -label.refresh=\\u66F4\\u65B0 -label.related=\\u95A2\\u9023 -label.remind.later=\\u30A2\\u30E9\\u30FC\\u30E0\\u3092\\u8868\\u793A\\u3059\\u308B -label.remove.ACL=ACL \\u306E\\u524A\\u9664 -label.remove.egress.rule=\\u9001\\u4FE1\\u898F\\u5247\\u306E\\u524A\\u9664 -label.remove.from.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u304B\\u3089\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059 -label.remove.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u524A\\u9664 -label.remove.ip.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u524A\\u9664 -label.remove.pf=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001\\u898F\\u5247\\u306E\\u524A\\u9664 -label.remove.rule=\\u898F\\u5247\\u306E\\u524A\\u9664 -label.remove.static.nat.rule=\\u9759\\u7684 NAT \\u898F\\u5247\\u306E\\u524A\\u9664 -label.remove.static.route=\\u9759\\u7684\\u30EB\\u30FC\\u30C8\\u306E\\u524A\\u9664 -label.remove.tier=\\u968E\\u5C64\\u306E\\u524A\\u9664 -label.remove.vm.from.lb=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u304B\\u3089\\u306E VM \\u306E\\u524A\\u9664 -label.remove.vpc=VPC \\u306E\\u524A\\u9664 -label.removing=\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059 -label.removing.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059 -label.required=\\u5FC5\\u9808\\u3067\\u3059 -label.reserved.system.gateway=\\u4E88\\u7D04\\u6E08\\u307F\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 -label.reserved.system.ip=\\u4E88\\u7D04\\u6E08\\u307F\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.reserved.system.netmask=\\u4E88\\u7D04\\u6E08\\u307F\\u30B7\\u30B9\\u30C6\\u30E0 \\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF -label.reset.VPN.connection=VPN \\u63A5\\u7D9A\\u306E\\u30EA\\u30BB\\u30C3\\u30C8 -label.resource.limits=\\u30EA\\u30BD\\u30FC\\u30B9\\u5236\\u9650 -label.resource.state=\\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u72B6\\u614B -label.resources=\\u30EA\\u30BD\\u30FC\\u30B9 -label.resource=\\u30EA\\u30BD\\u30FC\\u30B9 -label.restart.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u518D\\u8D77\\u52D5 -label.restart.required=\\u518D\\u8D77\\u52D5\\u304C\\u5FC5\\u8981 -label.restart.vpc=VPC \\u306E\\u518D\\u8D77\\u52D5 +label.recent.errors=\u6700\u8FD1\u306E\u30A8\u30E9\u30FC +label.redundant.router.capability=\u5197\u9577\u30EB\u30FC\u30BF\u30FC\u6A5F\u80FD +label.redundant.router=\u5197\u9577\u30EB\u30FC\u30BF\u30FC +label.redundant.state=\u5197\u9577\u72B6\u614B +label.refresh=\u66F4\u65B0 +label.related=\u95A2\u9023 +label.remind.later=\u30A2\u30E9\u30FC\u30E0\u3092\u8868\u793A\u3059\u308B +label.remove.ACL=ACL \u306E\u524A\u9664 +label.remove.egress.rule=\u9001\u4FE1\u898F\u5247\u306E\u524A\u9664 +label.remove.from.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u304B\u3089\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059 +label.remove.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u524A\u9664 +label.remove.ip.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u524A\u9664 +label.remove.pf=\u30DD\u30FC\u30C8\u8EE2\u9001\u898F\u5247\u306E\u524A\u9664 +label.remove.rule=\u898F\u5247\u306E\u524A\u9664 +label.remove.static.nat.rule=\u9759\u7684 NAT \u898F\u5247\u306E\u524A\u9664 +label.remove.static.route=\u9759\u7684\u30EB\u30FC\u30C8\u306E\u524A\u9664 +label.remove.tier=\u968E\u5C64\u306E\u524A\u9664 +label.remove.vm.from.lb=\u8CA0\u8377\u5206\u6563\u898F\u5247\u304B\u3089\u306E VM \u306E\u524A\u9664 +label.remove.vpc=VPC \u306E\u524A\u9664 +label.removing=\u524A\u9664\u3057\u3066\u3044\u307E\u3059 +label.removing.user=\u30E6\u30FC\u30B6\u30FC\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059 +label.required=\u5FC5\u9808\u3067\u3059 +label.reserved.system.gateway=\u4E88\u7D04\u6E08\u307F\u30B7\u30B9\u30C6\u30E0 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 +label.reserved.system.ip=\u4E88\u7D04\u6E08\u307F\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9 +label.reserved.system.netmask=\u4E88\u7D04\u6E08\u307F\u30B7\u30B9\u30C6\u30E0 \u30CD\u30C3\u30C8\u30DE\u30B9\u30AF +label.reset.VPN.connection=VPN \u63A5\u7D9A\u306E\u30EA\u30BB\u30C3\u30C8 +label.resource.limits=\u30EA\u30BD\u30FC\u30B9\u5236\u9650 +label.resource.state=\u30EA\u30BD\u30FC\u30B9\u306E\u72B6\u614B +label.resources=\u30EA\u30BD\u30FC\u30B9 +label.resource=\u30EA\u30BD\u30FC\u30B9 +label.restart.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u518D\u8D77\u52D5 +label.restart.required=\u518D\u8D77\u52D5\u304C\u5FC5\u8981 +label.restart.vpc=VPC \u306E\u518D\u8D77\u52D5 label.restore=\u30ea\u30b9\u30c8\u30a2 -label.review=\\u78BA\\u8A8D -label.revoke.project.invite=\\u62DB\\u5F85\\u306E\\u53D6\\u308A\\u6D88\\u3057 -label.role=\\u5F79\\u5272 -label.root.disk.controller=\\u30EB\\u30FC\\u30C8 \\u30C7\\u30A3\\u30B9\\u30AF \\u30B3\\u30F3\\u30C8\\u30ED\\u30FC\\u30E9\\u30FC -label.root.disk.offering=\\u30EB\\u30FC\\u30C8 \\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.round.robin=\\u30E9\\u30A6\\u30F3\\u30C9\\u30ED\\u30D3\\u30F3 -label.rules=\\u898F\\u5247 -label.running.vms=\\u5B9F\\u884C\\u4E2D\\u306E VM +label.review=\u78BA\u8A8D +label.revoke.project.invite=\u62DB\u5F85\u306E\u53D6\u308A\u6D88\u3057 +label.role=\u5F79\u5272 +label.root.disk.controller=\u30EB\u30FC\u30C8 \u30C7\u30A3\u30B9\u30AF \u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC +label.root.disk.offering=\u30EB\u30FC\u30C8 \u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.round.robin=\u30E9\u30A6\u30F3\u30C9\u30ED\u30D3\u30F3 +label.rules=\u898F\u5247 +label.running.vms=\u5B9F\u884C\u4E2D\u306E VM label.s3.access_key=\u30a2\u30af\u30bb\u30b9\u30ad\u30fc label.s3.bucket=\u30d0\u30b1\u30c3\u30c8 label.s3.connection_timeout=\u30b3\u30cd\u30af\u30b7\u30e7\u30f3\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8 @@ -890,569 +890,569 @@ label.s3.max_error_retry=\u30a8\u30e9\u30fc\u6642\u306e\u6700\u5927\u30ea\u30c8\ label.s3.secret_key=\u79d8\u5bc6\u9375 label.s3.socket_timeout=\u30bd\u30b1\u30c3\u30c8\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8 label.s3.use_https=HTTPS\u306e\u4f7f\u7528 -label.saturday=\\u571F\\u66DC\\u65E5 -label.save.and.continue=\\u4FDD\\u5B58\\u3057\\u3066\\u7D9A\\u884C -label.save=\\u4FDD\\u5B58 -label.saving.processing=\\u4FDD\\u5B58\\u3057\\u3066\\u3044\\u307E\\u3059... -label.scope=\\u30B9\\u30B3\\u30FC\\u30D7 -label.search=\\u691C\\u7D22 -label.secondary.storage.count=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30D7\\u30FC\\u30EB -label.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.secondary.storage.vm=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VM -label.secondary.used=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u4F7F\\u7528\\u91CF +label.saturday=\u571F\u66DC\u65E5 +label.save.and.continue=\u4FDD\u5B58\u3057\u3066\u7D9A\u884C +label.save=\u4FDD\u5B58 +label.saving.processing=\u4FDD\u5B58\u3057\u3066\u3044\u307E\u3059... +label.scope=\u30B9\u30B3\u30FC\u30D7 +label.search=\u691C\u7D22 +label.secondary.storage.count=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30D7\u30FC\u30EB +label.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 +label.secondary.storage.vm=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 VM +label.secondary.used=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u4F7F\u7528\u91CF label.secret.key=\u79d8\u5bc6\u9375 -label.security.group.name=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u540D -label.security.groups.enabled=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u6709\\u52B9 -label.security.groups=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 -label.security.group=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 -label.select.a.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u9078\\u629E -label.select.a.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u9078\\u629E -label.select.instance.to.attach.volume.to=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3059\\u308B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 -label.select.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u9078\\u629E -label.select.iso.or.template=ISO \\u307E\\u305F\\u306F\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u9078\\u629E -label.select.offering=\\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u9078\\u629E -label.select.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u9078\\u629E -label.select.tier=\\u968E\\u5C64\\u306E\\u9078\\u629E -label.select=\\u9078\\u629E -label.select-view=\\u30D3\\u30E5\\u30FC\\u306E\\u9078\\u629E -label.select.vm.for.static.nat=\\u9759\\u7684 NAT \\u7528 VM \\u306E\\u9078\\u629E -label.sent=\\u9001\\u4FE1\\u6E08\\u307F -label.server=\\u30B5\\u30FC\\u30D0\\u30FC -label.service.capabilities=\\u30B5\\u30FC\\u30D3\\u30B9\\u306E\\u6A5F\\u80FD -label.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.session.expired=\\u30BB\\u30C3\\u30B7\\u30E7\\u30F3\\u306E\\u6709\\u52B9\\u671F\\u9650\\u304C\\u5207\\u308C\\u307E\\u3057\\u305F -label.setup.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 -label.setup=\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 -label.set.up.zone.type=\\u30BE\\u30FC\\u30F3\\u306E\\u7A2E\\u985E\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 -label.setup.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 +label.security.group.name=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u540D +label.security.groups.enabled=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u6709\u52B9 +label.security.groups=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 +label.security.group=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 +label.select.a.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u9078\u629E +label.select.a.zone=\u30BE\u30FC\u30F3\u306E\u9078\u629E +label.select.instance.to.attach.volume.to=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30A2\u30BF\u30C3\u30C1\u3059\u308B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +label.select.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u9078\u629E +label.select.iso.or.template=ISO \u307E\u305F\u306F\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u9078\u629E +label.select.offering=\u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u9078\u629E +label.select.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u9078\u629E +label.select.tier=\u968E\u5C64\u306E\u9078\u629E +label.select=\u9078\u629E +label.select-view=\u30D3\u30E5\u30FC\u306E\u9078\u629E +label.select.vm.for.static.nat=\u9759\u7684 NAT \u7528 VM \u306E\u9078\u629E +label.sent=\u9001\u4FE1\u6E08\u307F +label.server=\u30B5\u30FC\u30D0\u30FC +label.service.capabilities=\u30B5\u30FC\u30D3\u30B9\u306E\u6A5F\u80FD +label.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.session.expired=\u30BB\u30C3\u30B7\u30E7\u30F3\u306E\u6709\u52B9\u671F\u9650\u304C\u5207\u308C\u307E\u3057\u305F +label.setup.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 +label.setup=\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 +label.set.up.zone.type=\u30BE\u30FC\u30F3\u306E\u7A2E\u985E\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 +label.setup.zone=\u30BE\u30FC\u30F3\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 label.SharedMountPoint=SharedMountPoint -label.shared=\\u5171\\u6709 -label.show.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u8868\\u793A -label.shutdown.provider=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u306E\\u30B7\\u30E3\\u30C3\\u30C8\\u30C0\\u30A6\\u30F3 -label.site.to.site.VPN=\\u30B5\\u30A4\\u30C8\\u9593 VPN -label.size=\\u30B5\\u30A4\\u30BA -label.skip.guide=CloudStack \\u3092\\u4F7F\\u7528\\u3057\\u305F\\u3053\\u3068\\u304C\\u3042\\u308B\\u306E\\u3067\\u3001\\u3053\\u306E\\u30AC\\u30A4\\u30C9\\u3092\\u30B9\\u30AD\\u30C3\\u30D7\\u3059\\u308B -label.snapshot.limits=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u5236\\u9650 -label.snapshot.name=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u540D -label.snapshot.schedule=\\u5B9A\\u671F\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 -label.snapshot.s=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 -label.snapshots=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 -label.snapshot=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 -label.source.nat=\\u9001\\u4FE1\\u5143 NAT -label.source=\\u9001\\u4FE1\\u5143 -label.specify.IP.ranges=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u6307\\u5B9A -label.specify.vlan=VLAN \\u306E\\u6307\\u5B9A -label.SR.name = SR \\u540D\\u30E9\\u30D9\\u30EB +label.shared=\u5171\u6709 +label.show.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u8868\u793A +label.shutdown.provider=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u306E\u30B7\u30E3\u30C3\u30C8\u30C0\u30A6\u30F3 +label.site.to.site.VPN=\u30B5\u30A4\u30C8\u9593 VPN +label.size=\u30B5\u30A4\u30BA +label.skip.guide=CloudStack \u3092\u4F7F\u7528\u3057\u305F\u3053\u3068\u304C\u3042\u308B\u306E\u3067\u3001\u3053\u306E\u30AC\u30A4\u30C9\u3092\u30B9\u30AD\u30C3\u30D7\u3059\u308B +label.snapshot.limits=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u5236\u9650 +label.snapshot.name=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u540D +label.snapshot.schedule=\u5B9A\u671F\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 +label.snapshot.s=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 +label.snapshots=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 +label.snapshot=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 +label.source.nat=\u9001\u4FE1\u5143 NAT +label.source=\u9001\u4FE1\u5143 +label.specify.IP.ranges=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u6307\u5B9A +label.specify.vlan=VLAN \u306E\u6307\u5B9A +label.SR.name = SR \u540D\u30E9\u30D9\u30EB label.srx=SRX -label.start.IP=\\u958B\\u59CB IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.start.port=\\u958B\\u59CB\\u30DD\\u30FC\\u30C8 -label.start.reserved.system.IP=\\u4E88\\u7D04\\u6E08\\u307F\\u958B\\u59CB\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.start.vlan=\\u958B\\u59CB VLAN -label.state=\\u72B6\\u614B -label.static.nat.enabled=\\u9759\\u7684 NAT \\u6709\\u52B9 -label.static.nat.to=\\u9759\\u7684 NAT \\u306E\\u8A2D\\u5B9A\\u5148\: -label.static.nat=\\u9759\\u7684 NAT -label.static.nat.vm.details=\\u9759\\u7684 NAT VM \\u306E\\u8A73\\u7D30 -label.statistics=\\u7D71\\u8A08 -label.status=\\u72B6\\u614B -label.step.1.title=\\u624B\\u9806 1. \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u9078\\u629E -label.step.1=\\u624B\\u9806 1 -label.step.2.title=\\u624B\\u9806 2. \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.step.2=\\u624B\\u9806 2 -label.step.3.title=\\u624B\\u9806 3. \\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u9078\\u629E -label.step.3=\\u624B\\u9806 3 -label.step.4.title=\\u624B\\u9806 4. \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.step.4=\\u624B\\u9806 4 -label.step.5.title=\\u624B\\u9806 5. \\u78BA\\u8A8D -label.step.5=\\u624B\\u9806 5 -label.stickiness=\\u6301\\u7D9A\\u6027 -label.sticky.cookie-name=Cookie \\u540D -label.sticky.domain=\\u30C9\\u30E1\\u30A4\\u30F3 -label.sticky.expire=\\u5931\\u52B9 -label.sticky.holdtime=\\u4FDD\\u6301\\u6642\\u9593 -label.sticky.indirect=\\u9593\\u63A5 -label.sticky.length=\\u9577\\u3055 -label.sticky.mode=\\u30E2\\u30FC\\u30C9 -label.sticky.nocache=\\u30AD\\u30E3\\u30C3\\u30B7\\u30E5\\u306A\\u3057 -label.sticky.postonly=\\u30DD\\u30B9\\u30C8\\u306E\\u307F -label.sticky.prefix=\\u30D7\\u30EC\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9 -label.sticky.request-learn=\\u30E9\\u30FC\\u30CB\\u30F3\\u30B0\\u306E\\u8981\\u6C42 -label.sticky.tablesize=\\u30C6\\u30FC\\u30D6\\u30EB \\u30B5\\u30A4\\u30BA -label.stopped.vms=\\u505C\\u6B62\\u4E2D\\u306E VM +label.start.IP=\u958B\u59CB IP \u30A2\u30C9\u30EC\u30B9 +label.start.port=\u958B\u59CB\u30DD\u30FC\u30C8 +label.start.reserved.system.IP=\u4E88\u7D04\u6E08\u307F\u958B\u59CB\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9 +label.start.vlan=\u958B\u59CB VLAN +label.state=\u72B6\u614B +label.static.nat.enabled=\u9759\u7684 NAT \u6709\u52B9 +label.static.nat.to=\u9759\u7684 NAT \u306E\u8A2D\u5B9A\u5148\: +label.static.nat=\u9759\u7684 NAT +label.static.nat.vm.details=\u9759\u7684 NAT VM \u306E\u8A73\u7D30 +label.statistics=\u7D71\u8A08 +label.status=\u72B6\u614B +label.step.1.title=\u624B\u9806 1. \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u9078\u629E +label.step.1=\u624B\u9806 1 +label.step.2.title=\u624B\u9806 2. \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.step.2=\u624B\u9806 2 +label.step.3.title=\u624B\u9806 3. \u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u9078\u629E +label.step.3=\u624B\u9806 3 +label.step.4.title=\u624B\u9806 4. \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.step.4=\u624B\u9806 4 +label.step.5.title=\u624B\u9806 5. \u78BA\u8A8D +label.step.5=\u624B\u9806 5 +label.stickiness=\u6301\u7D9A\u6027 +label.sticky.cookie-name=Cookie \u540D +label.sticky.domain=\u30C9\u30E1\u30A4\u30F3 +label.sticky.expire=\u5931\u52B9 +label.sticky.holdtime=\u4FDD\u6301\u6642\u9593 +label.sticky.indirect=\u9593\u63A5 +label.sticky.length=\u9577\u3055 +label.sticky.mode=\u30E2\u30FC\u30C9 +label.sticky.nocache=\u30AD\u30E3\u30C3\u30B7\u30E5\u306A\u3057 +label.sticky.postonly=\u30DD\u30B9\u30C8\u306E\u307F +label.sticky.prefix=\u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9 +label.sticky.request-learn=\u30E9\u30FC\u30CB\u30F3\u30B0\u306E\u8981\u6C42 +label.sticky.tablesize=\u30C6\u30FC\u30D6\u30EB \u30B5\u30A4\u30BA +label.stopped.vms=\u505C\u6B62\u4E2D\u306E VM label.stop=\u505c\u6b62 -label.storage.tags=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30BF\\u30B0 -label.storage.traffic=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF -label.storage.type=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u7A2E\\u985E -label.storage=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.subdomain.access=\\u30B5\\u30D6\\u30C9\\u30E1\\u30A4\\u30F3 \\u30A2\\u30AF\\u30BB\\u30B9 -label.submitted.by=[\\u9001\\u4FE1\\u30E6\\u30FC\\u30B6\\u30FC\: ] -label.submit=\\u9001\\u4FE1 -label.succeeded=\\u6210\\u529F -label.sunday=\\u65E5\\u66DC\\u65E5 -label.super.cidr.for.guest.networks=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30B9\\u30FC\\u30D1\\u30FC CIDR -label.supported.services=\\u30B5\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u308B\\u30B5\\u30FC\\u30D3\\u30B9 -label.supported.source.NAT.type=\\u30B5\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u308B\\u9001\\u4FE1\\u5143 NAT \\u306E\\u7A2E\\u985E -label.suspend.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u4E00\\u6642\\u505C\\u6B62 -label.system.capacity=\\u30B7\\u30B9\\u30C6\\u30E0\\u306E\\u51E6\\u7406\\u80FD\\u529B -label.system.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.system.service.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.system.vms=\\u30B7\\u30B9\\u30C6\\u30E0 VM -label.system.vm.type=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u7A2E\\u985E -label.system.vm=\\u30B7\\u30B9\\u30C6\\u30E0 VM -label.system.wide.capacity=\\u30B7\\u30B9\\u30C6\\u30E0\\u5168\\u4F53\\u306E\\u51E6\\u7406\\u80FD\\u529B -label.tagged=\\u30BF\\u30B0\\u3042\\u308A -label.tags=\\u30BF\\u30B0 -label.target.iqn=\\u30BF\\u30FC\\u30B2\\u30C3\\u30C8 IQN -label.task.completed=\\u30BF\\u30B9\\u30AF\\u304C\\u5B8C\\u4E86\\u3057\\u307E\\u3057\\u305F -label.template.limits=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u5236\\u9650 -label.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 -label.TFTP.dir=TFTP \\u30C7\\u30A3\\u30EC\\u30AF\\u30C8\\u30EA -label.theme.default=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 \\u30C6\\u30FC\\u30DE -label.theme.grey=\\u30AB\\u30B9\\u30BF\\u30E0 - \\u30B0\\u30EC\\u30FC -label.theme.lightblue=\\u30AB\\u30B9\\u30BF\\u30E0 - \\u30E9\\u30A4\\u30C8 \\u30D6\\u30EB\\u30FC -label.thursday=\\u6728\\u66DC\\u65E5 -label.tier.details=\\u968E\\u5C64\\u306E\\u8A73\\u7D30 -label.tier=\\u968E\\u5C64 -label.timeout.in.second = \\u30BF\\u30A4\\u30E0\\u30A2\\u30A6\\u30C8 (\\u79D2) -label.timeout=\\u30BF\\u30A4\\u30E0\\u30A2\\u30A6\\u30C8 -label.time=\\u6642\\u523B -label.time.zone=\\u30BF\\u30A4\\u30E0\\u30BE\\u30FC\\u30F3 -label.timezone=\\u30BF\\u30A4\\u30E0\\u30BE\\u30FC\\u30F3 -label.token=\\u30C8\\u30FC\\u30AF\\u30F3 -label.total.cpu=CPU \\u5408\\u8A08 -label.total.CPU=CPU \\u5408\\u8A08 -label.total.hosts=\\u30DB\\u30B9\\u30C8\\u5408\\u8A08 -label.total.memory=\\u30E1\\u30E2\\u30EA\\u5408\\u8A08 -label.total.of.ip=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u5408\\u8A08 -label.total.of.vm=VM \\u5408\\u8A08 -label.total.storage=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u5408\\u8A08 -label.total.vms=VM \\u5408\\u8A08 -label.traffic.label=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF \\u30E9\\u30D9\\u30EB -label.traffic.types=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E -label.traffic.type=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E -label.tuesday=\\u706B\\u66DC\\u65E5 -label.type.id=\\u7A2E\\u985E ID -label.type=\\u7A2E\\u985E -label.unavailable=\\u4F7F\\u7528\\u4E0D\\u80FD -label.unlimited=\\u7121\\u5236\\u9650 -label.untagged=\\u30BF\\u30B0\\u306A\\u3057 -label.update.project.resources=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u66F4\\u65B0 -label.update.ssl.cert= SSL \\u8A3C\\u660E\\u66F8\\u306E\\u66F4\\u65B0 -label.update.ssl= SSL \\u8A3C\\u660E\\u66F8\\u306E\\u66F4\\u65B0 -label.updating=\\u66F4\\u65B0\\u3057\\u3066\\u3044\\u307E\\u3059 -label.upload=\\u30A2\\u30C3\\u30D7\\u30ED\\u30FC\\u30C9 -label.upload.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30A2\\u30C3\\u30D7\\u30ED\\u30FC\\u30C9 +label.storage.tags=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30BF\u30B0 +label.storage.traffic=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF +label.storage.type=\u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u7A2E\u985E +label.storage=\u30B9\u30C8\u30EC\u30FC\u30B8 +label.subdomain.access=\u30B5\u30D6\u30C9\u30E1\u30A4\u30F3 \u30A2\u30AF\u30BB\u30B9 +label.submitted.by=[\u9001\u4FE1\u30E6\u30FC\u30B6\u30FC\: ] +label.submit=\u9001\u4FE1 +label.succeeded=\u6210\u529F +label.sunday=\u65E5\u66DC\u65E5 +label.super.cidr.for.guest.networks=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30B9\u30FC\u30D1\u30FC CIDR +label.supported.services=\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u308B\u30B5\u30FC\u30D3\u30B9 +label.supported.source.NAT.type=\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u308B\u9001\u4FE1\u5143 NAT \u306E\u7A2E\u985E +label.suspend.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u4E00\u6642\u505C\u6B62 +label.system.capacity=\u30B7\u30B9\u30C6\u30E0\u306E\u51E6\u7406\u80FD\u529B +label.system.offering=\u30B7\u30B9\u30C6\u30E0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.system.service.offering=\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.system.vms=\u30B7\u30B9\u30C6\u30E0 VM +label.system.vm.type=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u7A2E\u985E +label.system.vm=\u30B7\u30B9\u30C6\u30E0 VM +label.system.wide.capacity=\u30B7\u30B9\u30C6\u30E0\u5168\u4F53\u306E\u51E6\u7406\u80FD\u529B +label.tagged=\u30BF\u30B0\u3042\u308A +label.tags=\u30BF\u30B0 +label.target.iqn=\u30BF\u30FC\u30B2\u30C3\u30C8 IQN +label.task.completed=\u30BF\u30B9\u30AF\u304C\u5B8C\u4E86\u3057\u307E\u3057\u305F +label.template.limits=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u5236\u9650 +label.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +label.TFTP.dir=TFTP \u30C7\u30A3\u30EC\u30AF\u30C8\u30EA +label.theme.default=\u30C7\u30D5\u30A9\u30EB\u30C8 \u30C6\u30FC\u30DE +label.theme.grey=\u30AB\u30B9\u30BF\u30E0 - \u30B0\u30EC\u30FC +label.theme.lightblue=\u30AB\u30B9\u30BF\u30E0 - \u30E9\u30A4\u30C8 \u30D6\u30EB\u30FC +label.thursday=\u6728\u66DC\u65E5 +label.tier.details=\u968E\u5C64\u306E\u8A73\u7D30 +label.tier=\u968E\u5C64 +label.timeout.in.second = \u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 (\u79D2) +label.timeout=\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 +label.time=\u6642\u523B +label.time.zone=\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3 +label.timezone=\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3 +label.token=\u30C8\u30FC\u30AF\u30F3 +label.total.cpu=CPU \u5408\u8A08 +label.total.CPU=CPU \u5408\u8A08 +label.total.hosts=\u30DB\u30B9\u30C8\u5408\u8A08 +label.total.memory=\u30E1\u30E2\u30EA\u5408\u8A08 +label.total.of.ip=IP \u30A2\u30C9\u30EC\u30B9\u5408\u8A08 +label.total.of.vm=VM \u5408\u8A08 +label.total.storage=\u30B9\u30C8\u30EC\u30FC\u30B8\u5408\u8A08 +label.total.vms=VM \u5408\u8A08 +label.traffic.label=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF \u30E9\u30D9\u30EB +label.traffic.types=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E +label.traffic.type=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E +label.tuesday=\u706B\u66DC\u65E5 +label.type.id=\u7A2E\u985E ID +label.type=\u7A2E\u985E +label.unavailable=\u4F7F\u7528\u4E0D\u80FD +label.unlimited=\u7121\u5236\u9650 +label.untagged=\u30BF\u30B0\u306A\u3057 +label.update.project.resources=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30EA\u30BD\u30FC\u30B9\u306E\u66F4\u65B0 +label.update.ssl.cert= SSL \u8A3C\u660E\u66F8\u306E\u66F4\u65B0 +label.update.ssl= SSL \u8A3C\u660E\u66F8\u306E\u66F4\u65B0 +label.updating=\u66F4\u65B0\u3057\u3066\u3044\u307E\u3059 +label.upload=\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9 +label.upload.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9 label.url=URL -label.usage.interface=\\u4F7F\\u7528\\u72B6\\u6CC1\\u6E2C\\u5B9A\\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9 -label.used=\\u4F7F\\u7528\\u4E2D -label.username=\\u30E6\\u30FC\\u30B6\\u30FC\\u540D -label.users=\\u30E6\\u30FC\\u30B6\\u30FC -label.user=\\u30E6\\u30FC\\u30B6\\u30FC -label.value=\\u5024 -label.vcdcname=vCenter DC \\u540D -label.vcenter.cluster=vCenter \\u30AF\\u30E9\\u30B9\\u30BF\\u30FC -label.vcenter.datacenter=vCenter \\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC -label.vcenter.datastore=vCenter \\u30C7\\u30FC\\u30BF\\u30B9\\u30C8\\u30A2 -label.vcenter.host=vCenter \\u30DB\\u30B9\\u30C8 -label.vcenter.password=vCenter \\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 -label.vcenter.username=vCenter \\u30E6\\u30FC\\u30B6\\u30FC\\u540D -label.vcipaddress=vCenter IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.version=\\u30D0\\u30FC\\u30B8\\u30E7\\u30F3 -label.view.all=\\u3059\\u3079\\u3066\\u8868\\u793A -label.view.console=\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB\\u306E\\u8868\\u793A -label.viewing=\\u8868\\u793A\\u9805\\u76EE\: -label.view.more=\\u8A73\\u7D30\\u8868\\u793A -label.view=\\u8868\\u793A - -label.virtual.appliances=\\u4EEE\\u60F3\\u30A2\\u30D7\\u30E9\\u30A4\\u30A2\\u30F3\\u30B9 -label.virtual.appliance=\\u4EEE\\u60F3\\u30A2\\u30D7\\u30E9\\u30A4\\u30A2\\u30F3\\u30B9 -label.virtual.machines=\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3 -label.virtual.network=\\u4EEE\\u60F3\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.virtual.routers=\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC -label.virtual.router=\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC +label.usage.interface=\u4F7F\u7528\u72B6\u6CC1\u6E2C\u5B9A\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9 +label.used=\u4F7F\u7528\u4E2D +label.username=\u30E6\u30FC\u30B6\u30FC\u540D +label.users=\u30E6\u30FC\u30B6\u30FC +label.user=\u30E6\u30FC\u30B6\u30FC +label.value=\u5024 +label.vcdcname=vCenter DC \u540D +label.vcenter.cluster=vCenter \u30AF\u30E9\u30B9\u30BF\u30FC +label.vcenter.datacenter=vCenter \u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC +label.vcenter.datastore=vCenter \u30C7\u30FC\u30BF\u30B9\u30C8\u30A2 +label.vcenter.host=vCenter \u30DB\u30B9\u30C8 +label.vcenter.password=vCenter \u30D1\u30B9\u30EF\u30FC\u30C9 +label.vcenter.username=vCenter \u30E6\u30FC\u30B6\u30FC\u540D +label.vcipaddress=vCenter IP \u30A2\u30C9\u30EC\u30B9 +label.version=\u30D0\u30FC\u30B8\u30E7\u30F3 +label.view.all=\u3059\u3079\u3066\u8868\u793A +label.view.console=\u30B3\u30F3\u30BD\u30FC\u30EB\u306E\u8868\u793A +label.viewing=\u8868\u793A\u9805\u76EE\: +label.view.more=\u8A73\u7D30\u8868\u793A +label.view=\u8868\u793A - +label.virtual.appliances=\u4EEE\u60F3\u30A2\u30D7\u30E9\u30A4\u30A2\u30F3\u30B9 +label.virtual.appliance=\u4EEE\u60F3\u30A2\u30D7\u30E9\u30A4\u30A2\u30F3\u30B9 +label.virtual.machines=\u4EEE\u60F3\u30DE\u30B7\u30F3 +label.virtual.network=\u4EEE\u60F3\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.virtual.routers=\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC +label.virtual.router=\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC label.vlan.id=VLAN ID -label.vlan.range=VLAN \\u306E\\u7BC4\\u56F2 +label.vlan.range=VLAN \u306E\u7BC4\u56F2 label.vlan=VLAN -label.vm.add=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u8FFD\\u52A0 +label.vm.add=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u8FFD\u52A0 label.vm.destroy=\u7834\u68c4 -label.vm.display.name=VM \\u8868\\u793A\\u540D -label.VMFS.datastore=VMFS \\u30C7\\u30FC\\u30BF\\u30B9\\u30C8\\u30A2 +label.vm.display.name=VM \u8868\u793A\u540D +label.VMFS.datastore=VMFS \u30C7\u30FC\u30BF\u30B9\u30C8\u30A2 label.vmfs=VMFS -label.vm.name=VM \\u540D +label.vm.name=VM \u540D label.vm.reboot=\u518d\u8d77\u52d5 -label.VMs.in.tier=\\u968E\\u5C64\\u5185\\u306E VM -label.vmsnapshot.type=\\u7A2E\\u985E -label.vm.start=\\u8D77\\u52D5 -label.vm.state=VM \\u306E\\u72B6\\u614B +label.VMs.in.tier=\u968E\u5C64\u5185\u306E VM +label.vmsnapshot.type=\u7A2E\u985E +label.vm.start=\u8D77\u52D5 +label.vm.state=VM \u306E\u72B6\u614B label.vm.stop=\u505c\u6b62 label.vms=VM -label.vmware.traffic.label=VMware \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u30E9\\u30D9\\u30EB -label.volgroup=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u30B0\\u30EB\\u30FC\\u30D7 -label.volume.limits=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u5236\\u9650 -label.volume.name=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u540D -label.volumes=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 -label.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 +label.vmware.traffic.label=VMware \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u30E9\u30D9\u30EB +label.volgroup=\u30DC\u30EA\u30E5\u30FC\u30E0 \u30B0\u30EB\u30FC\u30D7 +label.volume.limits=\u30DC\u30EA\u30E5\u30FC\u30E0\u5236\u9650 +label.volume.name=\u30DC\u30EA\u30E5\u30FC\u30E0\u540D +label.volumes=\u30DC\u30EA\u30E5\u30FC\u30E0 +label.volume=\u30DC\u30EA\u30E5\u30FC\u30E0 label.vpc.id=VPC ID -label.VPC.router.details=VPC \\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u8A73\\u7D30 +label.VPC.router.details=VPC \u30EB\u30FC\u30BF\u30FC\u306E\u8A73\u7D30 label.vpc=VPC -label.VPN.connection=VPN \\u63A5\\u7D9A -label.vpn.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 -label.VPN.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 -label.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 +label.VPN.connection=VPN \u63A5\u7D9A +label.vpn.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 +label.VPN.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 +label.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 label.vpn=VPN -label.vsmctrlvlanid=\\u30B3\\u30F3\\u30C8\\u30ED\\u30FC\\u30EB VLAN ID -label.vsmpktvlanid=\\u30D1\\u30B1\\u30C3\\u30C8 VLAN ID -label.vsmstoragevlanid=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VLAN ID -label.vsphere.managed=vSphere \\u306B\\u3088\\u308B\\u7BA1\\u7406 -label.waiting=\\u5F85\\u6A5F\\u3057\\u3066\\u3044\\u307E\\u3059 -label.warn=\\u8B66\\u544A -label.wednesday=\\u6C34\\u66DC\\u65E5 -label.weekly=\\u6BCE\\u9031 -label.welcome.cloud.console=\\u7BA1\\u7406\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB\\u3078\\u3088\\u3046\\u3053\\u305D -label.welcome=\\u3088\\u3046\\u3053\\u305D -label.what.is.cloudstack=CloudStack&\#8482; \\u306B\\u3064\\u3044\\u3066 -label.xen.traffic.label=XenServer \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u30E9\\u30D9\\u30EB -label.yes=\\u306F\\u3044 -label.zone.details=\\u30BE\\u30FC\\u30F3\\u306E\\u8A73\\u7D30 -label.zone.id=\\u30BE\\u30FC\\u30F3 ID -label.zone.name=\\u30BE\\u30FC\\u30F3\\u540D -label.zone.step.1.title=\\u624B\\u9806 1. \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u9078\\u629E -label.zone.step.2.title=\\u624B\\u9806 2. \\u30BE\\u30FC\\u30F3\\u306E\\u8FFD\\u52A0 -label.zone.step.3.title=\\u624B\\u9806 3. \\u30DD\\u30C3\\u30C9\\u306E\\u8FFD\\u52A0 -label.zone.step.4.title=\\u624B\\u9806 4. IP \\u30A2\\u30C9\\u30EC\\u30B9\\u7BC4\\u56F2\\u306E\\u8FFD\\u52A0 -label.zones=\\u30BE\\u30FC\\u30F3 -label.zone.type=\\u30BE\\u30FC\\u30F3\\u306E\\u7A2E\\u985E -label.zone=\\u30BE\\u30FC\\u30F3 -label.zone.wide=\\u30BE\\u30FC\\u30F3\\u5168\\u4F53 +label.vsmctrlvlanid=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB VLAN ID +label.vsmpktvlanid=\u30D1\u30B1\u30C3\u30C8 VLAN ID +label.vsmstoragevlanid=\u30B9\u30C8\u30EC\u30FC\u30B8 VLAN ID +label.vsphere.managed=vSphere \u306B\u3088\u308B\u7BA1\u7406 +label.waiting=\u5F85\u6A5F\u3057\u3066\u3044\u307E\u3059 +label.warn=\u8B66\u544A +label.wednesday=\u6C34\u66DC\u65E5 +label.weekly=\u6BCE\u9031 +label.welcome.cloud.console=\u7BA1\u7406\u30B3\u30F3\u30BD\u30FC\u30EB\u3078\u3088\u3046\u3053\u305D +label.welcome=\u3088\u3046\u3053\u305D +label.what.is.cloudstack=CloudStack&\#8482; \u306B\u3064\u3044\u3066 +label.xen.traffic.label=XenServer \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u30E9\u30D9\u30EB +label.yes=\u306F\u3044 +label.zone.details=\u30BE\u30FC\u30F3\u306E\u8A73\u7D30 +label.zone.id=\u30BE\u30FC\u30F3 ID +label.zone.name=\u30BE\u30FC\u30F3\u540D +label.zone.step.1.title=\u624B\u9806 1. \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u9078\u629E +label.zone.step.2.title=\u624B\u9806 2. \u30BE\u30FC\u30F3\u306E\u8FFD\u52A0 +label.zone.step.3.title=\u624B\u9806 3. \u30DD\u30C3\u30C9\u306E\u8FFD\u52A0 +label.zone.step.4.title=\u624B\u9806 4. IP \u30A2\u30C9\u30EC\u30B9\u7BC4\u56F2\u306E\u8FFD\u52A0 +label.zones=\u30BE\u30FC\u30F3 +label.zone.type=\u30BE\u30FC\u30F3\u306E\u7A2E\u985E +label.zone=\u30BE\u30FC\u30F3 +label.zone.wide=\u30BE\u30FC\u30F3\u5168\u4F53 label.zoneWizard.trafficType.guest=\u30b2\u30b9\u30c8\: \u30a8\u30f3\u30c9\u30e6\u30fc\u30b6\u30fc\u4eee\u60f3\u30de\u30b7\u30f3\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af label.zoneWizard.trafficType.management=\u7ba1\u7406\: \u30db\u30b9\u30c8\u3084\u30b7\u30b9\u30c6\u30e0VM\u306a\u3069\u3001\u7ba1\u7406\u30b5\u30fc\u30d0\u30fc\u3068\u901a\u4fe1\u3059\u308b\u3042\u3089\u3086\u308b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u542b\u3081\u305f\u3001CloudStack\u5185\u90e8\u306e\u30ea\u30bd\u30fc\u30b9\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af label.zoneWizard.trafficType.public=\u30d1\u30d6\u30ea\u30c3\u30af\: \u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u3068\u30af\u30e9\u30a6\u30c9\u5185\u306e\u4eee\u60f3\u30de\u30b7\u30f3\u306e\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af label.zoneWizard.trafficType.storage=\u30b9\u30c8\u30ec\u30fc\u30b8\: VM\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3068\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u306e\u3088\u3046\u306a\u3001\u30d7\u30e9\u30a4\u30de\u30ea\u3068\u30bb\u30ab\u30f3\u30c0\u30ea\u306e\u30b9\u30c8\u30ec\u30fc\u30b8\u30b5\u30fc\u30d0\u30fc\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3002 -managed.state=\\u7BA1\\u7406\\u5BFE\\u8C61\\u72B6\\u614B -message.acquire.new.ip=\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u65B0\\u3057\\u3044 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +managed.state=\u7BA1\u7406\u5BFE\u8C61\u72B6\u614B +message.acquire.new.ip=\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u65B0\u3057\u3044 IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? message.acquire.new.ip.vpc=VPC\u306e\u65b0\u3057\u3044IP\u3092\u53d6\u5f97\u3059\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002 -message.acquire.public.ip=\\u65B0\\u3057\\u3044 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3059\\u308B\\u30BE\\u30FC\\u30F3\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.action.cancel.maintenance.mode=\\u3053\\u306E\\u4FDD\\u5B88\\u3092\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.cancel.maintenance=\\u30DB\\u30B9\\u30C8\\u306E\\u4FDD\\u5B88\\u306F\\u6B63\\u5E38\\u306B\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u51E6\\u7406\\u306B\\u306F\\u6570\\u5206\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.change.service.warning.for.instance=\\u73FE\\u5728\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.change.service.warning.for.router=\\u73FE\\u5728\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.delete.cluster=\\u3053\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.disk.offering=\\u3053\\u306E\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.domain=\\u3053\\u306E\\u30C9\\u30E1\\u30A4\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.external.firewall=\\u3053\\u306E\\u5916\\u90E8\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u8B66\\u544A\: \\u540C\\u3058\\u5916\\u90E8\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u518D\\u5EA6\\u8FFD\\u52A0\\u3059\\u308B\\u4E88\\u5B9A\\u3067\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u4F7F\\u7528\\u72B6\\u6CC1\\u30C7\\u30FC\\u30BF\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.delete.external.load.balancer=\\u3053\\u306E\\u5916\\u90E8\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u8B66\\u544A\: \\u540C\\u3058\\u5916\\u90E8\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u518D\\u5EA6\\u8FFD\\u52A0\\u3059\\u308B\\u4E88\\u5B9A\\u3067\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u4F7F\\u7528\\u72B6\\u6CC1\\u30C7\\u30FC\\u30BF\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.delete.ingress.rule=\\u3053\\u306E\\u53D7\\u4FE1\\u898F\\u5247\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.ISO.for.all.zones=\\u305D\\u306E ISO \\u306F\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u3066\\u3044\\u307E\\u3059\\u3002\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u304B\\u3089\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.ISO=\\u3053\\u306E ISO \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.network=\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.nexusVswitch=\\u3053\\u306E Nexus 1000V \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.physical.network=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.pod=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.primary.storage=\\u3053\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.secondary.storage=\\u3053\\u306E\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.security.group=\\u3053\\u306E\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.service.offering=\\u3053\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.snapshot=\\u3053\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.system.service.offering=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.template.for.all.zones=\\u305D\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306F\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u3066\\u3044\\u307E\\u3059\\u3002\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u304B\\u3089\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.template=\\u3053\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.volume=\\u3053\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.zone=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.destroy.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u7834\\u68C4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.destroy.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u7834\\u68C4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.disable.cluster=\\u3053\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.disable.nexusVswitch=\\u3053\\u306E Nexus 1000V \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.disable.physical.network=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.disable.pod=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.disable.static.NAT=\\u9759\\u7684 NAT \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.disable.zone=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.download.iso=\\u3053\\u306E ISO \\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.download.template=\\u3053\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.enable.cluster=\\u3053\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.enable.maintenance=\\u30DB\\u30B9\\u30C8\\u3092\\u4FDD\\u5B88\\u3059\\u308B\\u6E96\\u5099\\u304C\\u3067\\u304D\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u4E0A\\u306E VM \\u6570\\u306B\\u3088\\u3063\\u3066\\u306F\\u3001\\u3053\\u306E\\u51E6\\u7406\\u306B\\u306F\\u6570\\u5206\\u4EE5\\u4E0A\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.enable.nexusVswitch=\\u3053\\u306E Nexus 1000V \\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.enable.physical.network=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.enable.pod=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.enable.zone=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.force.reconnect=\\u30DB\\u30B9\\u30C8\\u306F\\u5F37\\u5236\\u7684\\u306B\\u518D\\u63A5\\u7D9A\\u3057\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u51E6\\u7406\\u306B\\u306F\\u6570\\u5206\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.host.enable.maintenance.mode=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u3068\\u3001\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u5B9F\\u884C\\u4E2D\\u306E\\u3059\\u3079\\u3066\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304C\\u307B\\u304B\\u306E\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u30DB\\u30B9\\u30C8\\u306B\\u30E9\\u30A4\\u30D6 \\u30DE\\u30A4\\u30B0\\u30EC\\u30FC\\u30B7\\u30E7\\u30F3\\u3055\\u308C\\u307E\\u3059\\u3002 +message.acquire.public.ip=\u65B0\u3057\u3044 IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3059\u308B\u30BE\u30FC\u30F3\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.action.cancel.maintenance.mode=\u3053\u306E\u4FDD\u5B88\u3092\u30AD\u30E3\u30F3\u30BB\u30EB\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.cancel.maintenance=\u30DB\u30B9\u30C8\u306E\u4FDD\u5B88\u306F\u6B63\u5E38\u306B\u30AD\u30E3\u30F3\u30BB\u30EB\u3055\u308C\u307E\u3057\u305F\u3002\u3053\u306E\u51E6\u7406\u306B\u306F\u6570\u5206\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.change.service.warning.for.instance=\u73FE\u5728\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.change.service.warning.for.router=\u73FE\u5728\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30EB\u30FC\u30BF\u30FC\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.delete.cluster=\u3053\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.disk.offering=\u3053\u306E\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.domain=\u3053\u306E\u30C9\u30E1\u30A4\u30F3\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.external.firewall=\u3053\u306E\u5916\u90E8\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u8B66\u544A\: \u540C\u3058\u5916\u90E8\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u518D\u5EA6\u8FFD\u52A0\u3059\u308B\u4E88\u5B9A\u3067\u3042\u308B\u5834\u5408\u306F\u3001\u30C7\u30D0\u30A4\u30B9\u306E\u4F7F\u7528\u72B6\u6CC1\u30C7\u30FC\u30BF\u3092\u30EA\u30BB\u30C3\u30C8\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.delete.external.load.balancer=\u3053\u306E\u5916\u90E8\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u8B66\u544A\: \u540C\u3058\u5916\u90E8\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u518D\u5EA6\u8FFD\u52A0\u3059\u308B\u4E88\u5B9A\u3067\u3042\u308B\u5834\u5408\u306F\u3001\u30C7\u30D0\u30A4\u30B9\u306E\u4F7F\u7528\u72B6\u6CC1\u30C7\u30FC\u30BF\u3092\u30EA\u30BB\u30C3\u30C8\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.delete.ingress.rule=\u3053\u306E\u53D7\u4FE1\u898F\u5247\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.ISO.for.all.zones=\u305D\u306E ISO \u306F\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u304B\u3089\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.ISO=\u3053\u306E ISO \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.network=\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.nexusVswitch=\u3053\u306E Nexus 1000V \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.physical.network=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.pod=\u3053\u306E\u30DD\u30C3\u30C9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.primary.storage=\u3053\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.secondary.storage=\u3053\u306E\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.security.group=\u3053\u306E\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.service.offering=\u3053\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.snapshot=\u3053\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.system.service.offering=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.template.for.all.zones=\u305D\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306F\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u304B\u3089\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.template=\u3053\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.volume=\u3053\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.zone=\u3053\u306E\u30BE\u30FC\u30F3\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.destroy.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u7834\u68C4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.destroy.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u7834\u68C4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.disable.cluster=\u3053\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.disable.nexusVswitch=\u3053\u306E Nexus 1000V \u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.disable.physical.network=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.disable.pod=\u3053\u306E\u30DD\u30C3\u30C9\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.disable.static.NAT=\u9759\u7684 NAT \u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.disable.zone=\u3053\u306E\u30BE\u30FC\u30F3\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.download.iso=\u3053\u306E ISO \u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.download.template=\u3053\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.enable.cluster=\u3053\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.enable.maintenance=\u30DB\u30B9\u30C8\u3092\u4FDD\u5B88\u3059\u308B\u6E96\u5099\u304C\u3067\u304D\u307E\u3057\u305F\u3002\u3053\u306E\u30DB\u30B9\u30C8\u4E0A\u306E VM \u6570\u306B\u3088\u3063\u3066\u306F\u3001\u3053\u306E\u51E6\u7406\u306B\u306F\u6570\u5206\u4EE5\u4E0A\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.enable.nexusVswitch=\u3053\u306E Nexus 1000V \u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.enable.physical.network=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.enable.pod=\u3053\u306E\u30DD\u30C3\u30C9\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.enable.zone=\u3053\u306E\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.force.reconnect=\u30DB\u30B9\u30C8\u306F\u5F37\u5236\u7684\u306B\u518D\u63A5\u7D9A\u3057\u307E\u3057\u305F\u3002\u3053\u306E\u51E6\u7406\u306B\u306F\u6570\u5206\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.host.enable.maintenance.mode=\u4FDD\u5B88\u30E2\u30FC\u30C9\u3092\u6709\u52B9\u306B\u3059\u308B\u3068\u3001\u3053\u306E\u30DB\u30B9\u30C8\u3067\u5B9F\u884C\u4E2D\u306E\u3059\u3079\u3066\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u307B\u304B\u306E\u4F7F\u7528\u3067\u304D\u308B\u30DB\u30B9\u30C8\u306B\u30E9\u30A4\u30D6 \u30DE\u30A4\u30B0\u30EC\u30FC\u30B7\u30E7\u30F3\u3055\u308C\u307E\u3059\u3002 message.action.instance.reset.password=\u00e3\u0081\u0093\u00e3\u0081\u00ae\u00e4\u00bb\u00ae\u00e6\u0083\u00b3\u00e3\u0083\u009e\u00e3\u0082\u00b7\u00e3\u0083\u00b3\u00e3\u0081\u00ae\u00e3\u0083\u00ab\u00e3\u0083\u00bc\u00e3\u0083\u0088\u00e3\u0083\u0091\u00e3\u0082\u00b9\u00e3\u0083\u00af\u00e3\u0083\u00bc\u00e3\u0083\u0089\u00e3\u0082\u0092\u00e5\u00a4\u0089\u00e6\u009b\u00b4\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0082\u0082\u00e3\u0082\u0088\u00e3\u0082\u008d\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0081\u00a7\u00e3\u0081\u0099\u00e3\u0081\u008b? -message.action.manage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.primarystorage.enable.maintenance.mode=\\u8B66\\u544A\: \\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u306B\\u3059\\u308B\\u3068\\u3001\\u305D\\u306E\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u4E0A\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u4F7F\\u7528\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E VM \\u304C\\u505C\\u6B62\\u3057\\u307E\\u3059\\u3002\\u7D9A\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.reboot.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.reboot.router=\\u3053\\u306E\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u3067\\u63D0\\u4F9B\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30B5\\u30FC\\u30D3\\u30B9\\u304C\\u4E2D\\u65AD\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.reboot.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.release.ip=\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u89E3\\u653E\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.remove.host=\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.reset.password.off=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306F\\u73FE\\u5728\\u3053\\u306E\\u6A5F\\u80FD\\u3092\\u30B5\\u30DD\\u30FC\\u30C8\\u3057\\u3066\\u3044\\u307E\\u305B\\u3093\\u3002 -message.action.reset.password.warning=\\u73FE\\u5728\\u306E\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.restore.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u5FA9\\u5143\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.start.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.start.router=\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.start.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.stop.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.stop.router=\\u3053\\u306E\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u3067\\u63D0\\u4F9B\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30B5\\u30FC\\u30D3\\u30B9\\u304C\\u4E2D\\u65AD\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.stop.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.take.snapshot=\\u3053\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.unmanage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u975E\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.activate.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.add.cluster=\\u30BE\\u30FC\\u30F3 \\u306E\\u30DD\\u30C3\\u30C9 \\u306B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3067\\u7BA1\\u7406\\u3055\\u308C\\u308B\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.cluster.zone=\\u30BE\\u30FC\\u30F3 \\u306B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3067\\u7BA1\\u7406\\u3055\\u308C\\u308B\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.disk.offering=\\u65B0\\u3057\\u3044\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30D1\\u30E9\\u30E1\\u30FC\\u30BF\\u30FC\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.domain=\\u3053\\u306E\\u30C9\\u30E1\\u30A4\\u30F3\\u306B\\u4F5C\\u6210\\u3059\\u308B\\u30B5\\u30D6\\u30C9\\u30E1\\u30A4\\u30F3\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.firewall=\\u30BE\\u30FC\\u30F3\\u306B\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.guest.network=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.add.host=\\u65B0\\u3057\\u3044\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30D1\\u30E9\\u30E1\\u30FC\\u30BF\\u30FC\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.adding.host=\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -message.adding.Netscaler.device=Netscaler \\u30C7\\u30D0\\u30A4\\u30B9\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -message.adding.Netscaler.provider=Netscaler \\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -message.add.ip.range.direct.network=\\u30BE\\u30FC\\u30F3 \\u306E\\u76F4\\u63A5\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.ip.range.to.pod=

    \\u30DD\\u30C3\\u30C9 \\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059

    -message.add.ip.range=\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.additional.networks.desc=\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304C\\u63A5\\u7D9A\\u3059\\u308B\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.load.balancer=\\u30BE\\u30FC\\u30F3\\u306B\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.load.balancer.under.ip=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u304C\\u6B21\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306B\\u5BFE\\u3057\\u3066\\u8FFD\\u52A0\\u3055\\u308C\\u307E\\u3057\\u305F\: -message.add.network=\\u30BE\\u30FC\\u30F3 \\u306B\\u65B0\\u3057\\u3044\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.new.gateway.to.vpc=\\u3053\\u306E VPC \\u306B\\u65B0\\u3057\\u3044\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306E\\u60C5\\u5831\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.pod.during.zone.creation=\\u5404\\u30BE\\u30FC\\u30F3\\u306B\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DD\\u30C3\\u30C9\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306F\\u30DB\\u30B9\\u30C8\\u3068\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059\\u304C\\u3001\\u3053\\u308C\\u3089\\u306F\\u5F8C\\u306E\\u624B\\u9806\\u3067\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u6700\\u521D\\u306B\\u3001CloudStack \\u306E\\u5185\\u90E8\\u7BA1\\u7406\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u305F\\u3081\\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u4E88\\u7D04\\u3057\\u307E\\u3059\\u3002IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306F\\u3001\\u30AF\\u30E9\\u30A6\\u30C9\\u5185\\u306E\\u5404\\u30BE\\u30FC\\u30F3\\u3067\\u91CD\\u8907\\u3057\\u306A\\u3044\\u3088\\u3046\\u306B\\u4E88\\u7D04\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.add.pod=\\u30BE\\u30FC\\u30F3 \\u306B\\u65B0\\u3057\\u3044\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.primary.storage=\\u30BE\\u30FC\\u30F3 \\u306E\\u30DD\\u30C3\\u30C9 \\u306B\\u65B0\\u3057\\u3044\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.primary=\\u65B0\\u3057\\u3044\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30D1\\u30E9\\u30E1\\u30FC\\u30BF\\u30FC\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.secondary.storage=\\u30BE\\u30FC\\u30F3 \\u306B\\u65B0\\u3057\\u3044\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.service.offering=\\u65B0\\u3057\\u3044\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.system.service.offering=\\u65B0\\u3057\\u3044\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.template=\\u65B0\\u3057\\u3044\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.volume=\\u65B0\\u3057\\u3044\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.advanced.mode.desc=VLAN \\u30B5\\u30DD\\u30FC\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u3053\\u306E\\u30E2\\u30C7\\u30EB\\u3067\\u306F\\u6700\\u3082\\u67D4\\u8EDF\\u306B\\u30AB\\u30B9\\u30BF\\u30E0 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u63D0\\u4F9B\\u3067\\u304D\\u3001\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3001VPN\\u3001\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306E\\u30B5\\u30DD\\u30FC\\u30C8\\u306E\\u307B\\u304B\\u306B\\u3001\\u76F4\\u63A5\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3068\\u4EEE\\u60F3\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3082\\u6709\\u52B9\\u306B\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002 -message.advanced.security.group=\\u30B2\\u30B9\\u30C8 VM \\u3092\\u5206\\u96E2\\u3059\\u308B\\u305F\\u3081\\u306B\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u4F7F\\u7528\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.advanced.virtual=\\u30B2\\u30B9\\u30C8 VM \\u3092\\u5206\\u96E2\\u3059\\u308B\\u305F\\u3081\\u306B\\u30BE\\u30FC\\u30F3\\u5168\\u4F53\\u306E VLAN \\u3092\\u4F7F\\u7528\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.action.manage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.primarystorage.enable.maintenance.mode=\u8B66\u544A\: \u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4FDD\u5B88\u30E2\u30FC\u30C9\u306B\u3059\u308B\u3068\u3001\u305D\u306E\u30B9\u30C8\u30EC\u30FC\u30B8\u4E0A\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u4F7F\u7528\u3059\u308B\u3059\u3079\u3066\u306E VM \u304C\u505C\u6B62\u3057\u307E\u3059\u3002\u7D9A\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.reboot.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.reboot.router=\u3053\u306E\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u3067\u63D0\u4F9B\u3059\u308B\u3059\u3079\u3066\u306E\u30B5\u30FC\u30D3\u30B9\u304C\u4E2D\u65AD\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.reboot.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.release.ip=\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u3092\u89E3\u653E\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.remove.host=\u3053\u306E\u30DB\u30B9\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.reset.password.off=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306F\u73FE\u5728\u3053\u306E\u6A5F\u80FD\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u305B\u3093\u3002 +message.action.reset.password.warning=\u73FE\u5728\u306E\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.restore.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u5FA9\u5143\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.start.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.start.router=\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.start.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.stop.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.stop.router=\u3053\u306E\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u3067\u63D0\u4F9B\u3059\u308B\u3059\u3079\u3066\u306E\u30B5\u30FC\u30D3\u30B9\u304C\u4E2D\u65AD\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.stop.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.take.snapshot=\u3053\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.unmanage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u975E\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.activate.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u30A2\u30AF\u30C6\u30A3\u30D6\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.add.cluster=\u30BE\u30FC\u30F3 \u306E\u30DD\u30C3\u30C9 \u306B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3067\u7BA1\u7406\u3055\u308C\u308B\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.cluster.zone=\u30BE\u30FC\u30F3 \u306B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3067\u7BA1\u7406\u3055\u308C\u308B\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.disk.offering=\u65B0\u3057\u3044\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.domain=\u3053\u306E\u30C9\u30E1\u30A4\u30F3\u306B\u4F5C\u6210\u3059\u308B\u30B5\u30D6\u30C9\u30E1\u30A4\u30F3\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.firewall=\u30BE\u30FC\u30F3\u306B\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.guest.network=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u8FFD\u52A0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.add.host=\u65B0\u3057\u3044\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.adding.host=\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +message.adding.Netscaler.device=Netscaler \u30C7\u30D0\u30A4\u30B9\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +message.adding.Netscaler.provider=Netscaler \u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +message.add.ip.range.direct.network=\u30BE\u30FC\u30F3 \u306E\u76F4\u63A5\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.ip.range.to.pod=

    \u30DD\u30C3\u30C9 \u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u307E\u3059

    +message.add.ip.range=\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.additional.networks.desc=\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u63A5\u7D9A\u3059\u308B\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.load.balancer=\u30BE\u30FC\u30F3\u306B\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.load.balancer.under.ip=\u8CA0\u8377\u5206\u6563\u898F\u5247\u304C\u6B21\u306E IP \u30A2\u30C9\u30EC\u30B9\u306B\u5BFE\u3057\u3066\u8FFD\u52A0\u3055\u308C\u307E\u3057\u305F\: +message.add.network=\u30BE\u30FC\u30F3 \u306B\u65B0\u3057\u3044\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.new.gateway.to.vpc=\u3053\u306E VPC \u306B\u65B0\u3057\u3044\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306E\u60C5\u5831\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.pod.during.zone.creation=\u5404\u30BE\u30FC\u30F3\u306B\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DD\u30C3\u30C9\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30DD\u30C3\u30C9\u306F\u30DB\u30B9\u30C8\u3068\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059\u304C\u3001\u3053\u308C\u3089\u306F\u5F8C\u306E\u624B\u9806\u3067\u8FFD\u52A0\u3057\u307E\u3059\u3002\u6700\u521D\u306B\u3001CloudStack \u306E\u5185\u90E8\u7BA1\u7406\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u305F\u3081\u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u4E88\u7D04\u3057\u307E\u3059\u3002IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306F\u3001\u30AF\u30E9\u30A6\u30C9\u5185\u306E\u5404\u30BE\u30FC\u30F3\u3067\u91CD\u8907\u3057\u306A\u3044\u3088\u3046\u306B\u4E88\u7D04\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.add.pod=\u30BE\u30FC\u30F3 \u306B\u65B0\u3057\u3044\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.primary.storage=\u30BE\u30FC\u30F3 \u306E\u30DD\u30C3\u30C9 \u306B\u65B0\u3057\u3044\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.primary=\u65B0\u3057\u3044\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.secondary.storage=\u30BE\u30FC\u30F3 \u306B\u65B0\u3057\u3044\u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.service.offering=\u65B0\u3057\u3044\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.system.service.offering=\u65B0\u3057\u3044\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.template=\u65B0\u3057\u3044\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.volume=\u65B0\u3057\u3044\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u8FFD\u52A0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.advanced.mode.desc=VLAN \u30B5\u30DD\u30FC\u30C8\u3092\u6709\u52B9\u306B\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3053\u306E\u30E2\u30C7\u30EB\u3067\u306F\u6700\u3082\u67D4\u8EDF\u306B\u30AB\u30B9\u30BF\u30E0 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u63D0\u4F9B\u3067\u304D\u3001\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3001VPN\u3001\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306E\u30B5\u30DD\u30FC\u30C8\u306E\u307B\u304B\u306B\u3001\u76F4\u63A5\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3068\u4EEE\u60F3\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3082\u6709\u52B9\u306B\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002 +message.advanced.security.group=\u30B2\u30B9\u30C8 VM \u3092\u5206\u96E2\u3059\u308B\u305F\u3081\u306B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u4F7F\u7528\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.advanced.virtual=\u30B2\u30B9\u30C8 VM \u3092\u5206\u96E2\u3059\u308B\u305F\u3081\u306B\u30BE\u30FC\u30F3\u5168\u4F53\u306E VLAN \u3092\u4F7F\u7528\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 message.after.enable.s3=S3\u57fa\u76e4\u30bb\u30ab\u30f3\u30c0\u30ea\u30b9\u30c8\u30ec\u30fc\u30b8\u304c\u8a2d\u5b9a\u3055\u308c\u307e\u3057\u305f\u3002 \u30ce\u30fc\u30c8\:\u3053\u306e\u30da\u30fc\u30b8\u3092\u9589\u3058\u308b\u3068S3\u3092\u518d\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002 -message.after.enable.swift=Swift \\u304C\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u6CE8\: \\u3053\\u306E\\u30DA\\u30FC\\u30B8\\u3092\\u9589\\u3058\\u308B\\u3068\\u3001Swift \\u3092\\u518D\\u69CB\\u6210\\u3059\\u308B\\u3053\\u3068\\u306F\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002 -message.alert.state.detected=\\u30A2\\u30E9\\u30FC\\u30C8\\u72B6\\u614B\\u304C\\u691C\\u51FA\\u3055\\u308C\\u307E\\u3057\\u305F -message.allow.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u8A31\\u53EF\\u3059\\u308B\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u540D\\u3068\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.apply.snapshot.policy=\\u73FE\\u5728\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 \\u30DD\\u30EA\\u30B7\\u30FC\\u3092\\u66F4\\u65B0\\u3057\\u307E\\u3057\\u305F\\u3002 -message.attach.iso.confirm=\\u3053\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B ISO \\u30D5\\u30A1\\u30A4\\u30EB\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.attach.volume=\\u65B0\\u3057\\u3044\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002Windows \\u30D9\\u30FC\\u30B9\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306B\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u305F\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u8A8D\\u8B58\\u3059\\u308B\\u305F\\u3081\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u518D\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.basic.mode.desc=VLAN \\u30B5\\u30DD\\u30FC\\u30C8\\u304C\\u4E0D\\u8981\\u3067\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3067\\u4F5C\\u6210\\u3055\\u308C\\u308B\\u3059\\u3079\\u3066\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304B\\u3089\\u76F4\\u63A5 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304C\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u3001\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3\\u3068\\u5206\\u96E2\\u304C\\u63D0\\u4F9B\\u3055\\u308C\\u307E\\u3059\\u3002 -message.change.offering.confirm=\\u3053\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u5909\\u66F4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.change.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5909\\u66F4\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.configure.all.traffic.types=\\u8907\\u6570\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002[\\u7DE8\\u96C6] \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u3054\\u3068\\u306B\\u30E9\\u30D9\\u30EB\\u3092\\u69CB\\u6210\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.configuring.guest.traffic=\\u30B2\\u30B9\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.configuring.physical.networks=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.configuring.public.traffic=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.configuring.storage.traffic=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.confirm.action.force.reconnect=\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u5F37\\u5236\\u518D\\u63A5\\u7D9A\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.delete.F5=F5 \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.delete.NetScaler=NetScaler \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.delete.SRX=SRX \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.destroy.router=\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u7834\\u68C4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.disable.provider=\\u3053\\u306E\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.enable.provider=\\u3053\\u306E\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.join.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306B\\u53C2\\u52A0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.remove.IP.range=\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.shutdown.provider=\\u3053\\u306E\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u30B7\\u30E3\\u30C3\\u30C8\\u30C0\\u30A6\\u30F3\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.copy.iso.confirm=ISO \\u3092\\u6B21\\u306E\\u5834\\u6240\\u306B\\u30B3\\u30D4\\u30FC\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.copy.template=\\u30BE\\u30FC\\u30F3 \\u304B\\u3089\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 XXX \\u3092\\u6B21\\u306E\\u5834\\u6240\\u306B\\u30B3\\u30D4\\u30FC\\u3057\\u307E\\u3059\: -message.create.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.create.template.vm=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 \\u304B\\u3089 VM \\u3092\\u4F5C\\u6210\\u3057\\u307E\\u3059 -message.create.template.volume=\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u524D\\u306B\\u3001\\u6B21\\u306E\\u60C5\\u5831\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u30B5\\u30A4\\u30BA\\u306B\\u3088\\u3063\\u3066\\u306F\\u3001\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210\\u306B\\u306F\\u6570\\u5206\\u4EE5\\u4E0A\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.creating.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.creating.guest.network=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.creating.physical.networks=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.creating.pod=\\u30DD\\u30C3\\u30C9\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.creating.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.creating.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.creating.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.decline.invitation=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u62DB\\u5F85\\u3092\\u8F9E\\u9000\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.delete.account=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.delete.gateway=\\u3053\\u306E\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.delete.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.delete.user=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.delete.VPN.connection=VPN \\u63A5\\u7D9A\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.delete.VPN.customer.gateway=\\u3053\\u306E VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.delete.VPN.gateway=\\u3053\\u306E VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.desc.advanced.zone=\\u3088\\u308A\\u6D17\\u7DF4\\u3055\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6280\\u8853\\u3092\\u30B5\\u30DD\\u30FC\\u30C8\\u3057\\u307E\\u3059\\u3002\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3059\\u308B\\u3068\\u3001\\u3088\\u308A\\u67D4\\u8EDF\\u306B\\u30B2\\u30B9\\u30C8\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u5B9A\\u7FA9\\u3057\\u3001\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3001VPN\\u3001\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306E\\u30B5\\u30DD\\u30FC\\u30C8\\u306E\\u3088\\u3046\\u306A\\u30AB\\u30B9\\u30BF\\u30DE\\u30A4\\u30BA\\u3057\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u63D0\\u4F9B\\u3067\\u304D\\u307E\\u3059\\u3002 -message.desc.basic.zone=\\u5404 VM \\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304C\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304B\\u3089\\u76F4\\u63A5\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u308B\\u3001\\u5358\\u4E00\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u63D0\\u4F9B\\u3057\\u307E\\u3059\\u3002\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 (\\u9001\\u4FE1\\u5143 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u30D5\\u30A3\\u30EB\\u30BF\\u30FC) \\u306E\\u3088\\u3046\\u306A\\u30EC\\u30A4\\u30E4\\u30FC 3 \\u30EC\\u30D9\\u30EB\\u306E\\u65B9\\u6CD5\\u3067\\u30B2\\u30B9\\u30C8\\u3092\\u5206\\u96E2\\u3067\\u304D\\u307E\\u3059\\u3002 -message.desc.cluster=\\u5404\\u30DD\\u30C3\\u30C9\\u306B\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306F\\u30DB\\u30B9\\u30C8\\u3092\\u30B0\\u30EB\\u30FC\\u30D7\\u5316\\u3059\\u308B\\u65B9\\u6CD5\\u3067\\u3059\\u30021 \\u3064\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306F\\u3059\\u3079\\u3066\\u540C\\u4E00\\u306E\\u30CF\\u30FC\\u30C9\\u30A6\\u30A7\\u30A2\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u3001\\u540C\\u3058\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3092\\u5B9F\\u884C\\u3057\\u3001\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u4E0A\\u306B\\u3042\\u308A\\u3001\\u540C\\u3058\\u5171\\u6709\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3057\\u307E\\u3059\\u3002\\u5404\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DB\\u30B9\\u30C8\\u3068 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002 -message.desc.host=\\u5404\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306B\\u306F\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u3001\\u30B2\\u30B9\\u30C8 VM \\u3092\\u5B9F\\u884C\\u3059\\u308B\\u305F\\u3081\\u306E\\u30DB\\u30B9\\u30C8 (\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30BF\\u30FC) \\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002CloudStack \\u3067\\u30DB\\u30B9\\u30C8\\u3092\\u6A5F\\u80FD\\u3055\\u305B\\u308B\\u306B\\u306F\\u3001\\u30DB\\u30B9\\u30C8\\u306B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3092\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3057\\u3066 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u3001\\u30DB\\u30B9\\u30C8\\u304C CloudStack \\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u63A5\\u7D9A\\u3057\\u3066\\u3044\\u308B\\u3053\\u3068\\u3092\\u78BA\\u8A8D\\u3057\\u307E\\u3059\\u3002

    \\u30DB\\u30B9\\u30C8\\u306E DNS \\u540D\\u307E\\u305F\\u306F IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3001\\u30E6\\u30FC\\u30B6\\u30FC\\u540D (\\u901A\\u5E38\\u306F root) \\u3068\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3001\\u304A\\u3088\\u3073\\u30DB\\u30B9\\u30C8\\u306E\\u5206\\u985E\\u306B\\u4F7F\\u7528\\u3059\\u308B\\u30E9\\u30D9\\u30EB\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.desc.primary.storage=\\u5404\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306B\\u306F\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u3001\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F\\u3001\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u4E0A\\u3067\\u52D5\\u4F5C\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E VM \\u306E\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u683C\\u7D0D\\u3057\\u307E\\u3059\\u3002\\u57FA\\u790E\\u3068\\u306A\\u308B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3067\\u30B5\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u308B\\u3001\\u6A19\\u6E96\\u306B\\u6E96\\u62E0\\u3057\\u305F\\u30D7\\u30ED\\u30C8\\u30B3\\u30EB\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.desc.secondary.storage=\\u5404\\u30BE\\u30FC\\u30F3\\u306B\\u306F\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u3001NFS \\u3064\\u307E\\u308A\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F VM \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3001ISO \\u30A4\\u30E1\\u30FC\\u30B8\\u3001\\u304A\\u3088\\u3073VM \\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u683C\\u7D0D\\u3057\\u307E\\u3059\\u3002\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306F\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u3059\\u3079\\u3066\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002

    IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3068\\u30A8\\u30AF\\u30B9\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u305F\\u30D1\\u30B9\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.desc.zone=\\u30BE\\u30FC\\u30F3\\u306F CloudStack \\u74B0\\u5883\\u5185\\u306E\\u6700\\u5927\\u306E\\u7D44\\u7E54\\u5358\\u4F4D\\u3067\\u3001\\u901A\\u5E38\\u3001\\u5358\\u4E00\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u306B\\u76F8\\u5F53\\u3057\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306B\\u3088\\u3063\\u3066\\u7269\\u7406\\u7684\\u306A\\u5206\\u96E2\\u3068\\u5197\\u9577\\u6027\\u304C\\u63D0\\u4F9B\\u3055\\u308C\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DD\\u30C3\\u30C9 (\\u5404\\u30DD\\u30C3\\u30C9\\u306F\\u30DB\\u30B9\\u30C8\\u3068\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059) \\u3068\\u3001\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u3059\\u3079\\u3066\\u306E\\u30DD\\u30C3\\u30C9\\u3067\\u5171\\u6709\\u3055\\u308C\\u308B\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002 -message.detach.disk=\\u3053\\u306E\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.detach.iso.confirm=\\u3053\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304B\\u3089 ISO \\u30D5\\u30A1\\u30A4\\u30EB\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.after.enable.swift=Swift \u304C\u69CB\u6210\u3055\u308C\u307E\u3057\u305F\u3002\u6CE8\: \u3053\u306E\u30DA\u30FC\u30B8\u3092\u9589\u3058\u308B\u3068\u3001Swift \u3092\u518D\u69CB\u6210\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002 +message.alert.state.detected=\u30A2\u30E9\u30FC\u30C8\u72B6\u614B\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F +message.allow.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u8A31\u53EF\u3059\u308B\u30E6\u30FC\u30B6\u30FC\u306E\u30E6\u30FC\u30B6\u30FC\u540D\u3068\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.apply.snapshot.policy=\u73FE\u5728\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 \u30DD\u30EA\u30B7\u30FC\u3092\u66F4\u65B0\u3057\u307E\u3057\u305F\u3002 +message.attach.iso.confirm=\u3053\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B ISO \u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30BF\u30C3\u30C1\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.attach.volume=\u65B0\u3057\u3044\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30A2\u30BF\u30C3\u30C1\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002Windows \u30D9\u30FC\u30B9\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u306B\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30A2\u30BF\u30C3\u30C1\u3059\u308B\u5834\u5408\u306F\u3001\u30A2\u30BF\u30C3\u30C1\u3057\u305F\u30C7\u30A3\u30B9\u30AF\u3092\u8A8D\u8B58\u3059\u308B\u305F\u3081\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u518D\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.basic.mode.desc=VLAN \u30B5\u30DD\u30FC\u30C8\u304C\u4E0D\u8981\u3067\u3042\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3067\u4F5C\u6210\u3055\u308C\u308B\u3059\u3079\u3066\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304B\u3089\u76F4\u63A5 IP \u30A2\u30C9\u30EC\u30B9\u304C\u5272\u308A\u5F53\u3066\u3089\u308C\u3001\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u4F7F\u7528\u3057\u3066\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u3068\u5206\u96E2\u304C\u63D0\u4F9B\u3055\u308C\u307E\u3059\u3002 +message.change.offering.confirm=\u3053\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u5909\u66F4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.change.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5909\u66F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.configure.all.traffic.types=\u8907\u6570\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304C\u3042\u308A\u307E\u3059\u3002[\u7DE8\u96C6] \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u3054\u3068\u306B\u30E9\u30D9\u30EB\u3092\u69CB\u6210\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.configuring.guest.traffic=\u30B2\u30B9\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 +message.configuring.physical.networks=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 +message.configuring.public.traffic=\u30D1\u30D6\u30EA\u30C3\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 +message.configuring.storage.traffic=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 +message.confirm.action.force.reconnect=\u3053\u306E\u30DB\u30B9\u30C8\u3092\u5F37\u5236\u518D\u63A5\u7D9A\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.delete.F5=F5 \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.delete.NetScaler=NetScaler \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.delete.SRX=SRX \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.destroy.router=\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u7834\u68C4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.disable.provider=\u3053\u306E\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.enable.provider=\u3053\u306E\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.join.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306B\u53C2\u52A0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.remove.IP.range=\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.shutdown.provider=\u3053\u306E\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u30B7\u30E3\u30C3\u30C8\u30C0\u30A6\u30F3\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.copy.iso.confirm=ISO \u3092\u6B21\u306E\u5834\u6240\u306B\u30B3\u30D4\u30FC\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.copy.template=\u30BE\u30FC\u30F3 \u304B\u3089\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 XXX \u3092\u6B21\u306E\u5834\u6240\u306B\u30B3\u30D4\u30FC\u3057\u307E\u3059\: +message.create.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.create.template.vm=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 \u304B\u3089 VM \u3092\u4F5C\u6210\u3057\u307E\u3059 +message.create.template.volume=\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0 \u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3059\u308B\u524D\u306B\u3001\u6B21\u306E\u60C5\u5831\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u30DC\u30EA\u30E5\u30FC\u30E0 \u30B5\u30A4\u30BA\u306B\u3088\u3063\u3066\u306F\u3001\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210\u306B\u306F\u6570\u5206\u4EE5\u4E0A\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 +message.creating.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 +message.creating.guest.network=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 +message.creating.physical.networks=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 +message.creating.pod=\u30DD\u30C3\u30C9\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 +message.creating.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 +message.creating.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 +message.creating.zone=\u30BE\u30FC\u30F3\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 +message.decline.invitation=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u62DB\u5F85\u3092\u8F9E\u9000\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.delete.account=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.delete.gateway=\u3053\u306E\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.delete.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.delete.user=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.delete.VPN.connection=VPN \u63A5\u7D9A\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.delete.VPN.customer.gateway=\u3053\u306E VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.delete.VPN.gateway=\u3053\u306E VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.desc.advanced.zone=\u3088\u308A\u6D17\u7DF4\u3055\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6280\u8853\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u3088\u308A\u67D4\u8EDF\u306B\u30B2\u30B9\u30C8\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u5B9A\u7FA9\u3057\u3001\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3001VPN\u3001\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306E\u30B5\u30DD\u30FC\u30C8\u306E\u3088\u3046\u306A\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA\u3057\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u63D0\u4F9B\u3067\u304D\u307E\u3059\u3002 +message.desc.basic.zone=\u5404 VM \u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B IP \u30A2\u30C9\u30EC\u30B9\u304C\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304B\u3089\u76F4\u63A5\u5272\u308A\u5F53\u3066\u3089\u308C\u308B\u3001\u5358\u4E00\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u63D0\u4F9B\u3057\u307E\u3059\u3002\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 (\u9001\u4FE1\u5143 IP \u30A2\u30C9\u30EC\u30B9\u306E\u30D5\u30A3\u30EB\u30BF\u30FC) \u306E\u3088\u3046\u306A\u30EC\u30A4\u30E4\u30FC 3 \u30EC\u30D9\u30EB\u306E\u65B9\u6CD5\u3067\u30B2\u30B9\u30C8\u3092\u5206\u96E2\u3067\u304D\u307E\u3059\u3002 +message.desc.cluster=\u5404\u30DD\u30C3\u30C9\u306B\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30AF\u30E9\u30B9\u30BF\u30FC\u306F\u30DB\u30B9\u30C8\u3092\u30B0\u30EB\u30FC\u30D7\u5316\u3059\u308B\u65B9\u6CD5\u3067\u3059\u30021 \u3064\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u5185\u306E\u30DB\u30B9\u30C8\u306F\u3059\u3079\u3066\u540C\u4E00\u306E\u30CF\u30FC\u30C9\u30A6\u30A7\u30A2\u304B\u3089\u69CB\u6210\u3055\u308C\u3001\u540C\u3058\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3092\u5B9F\u884C\u3057\u3001\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u4E0A\u306B\u3042\u308A\u3001\u540C\u3058\u5171\u6709\u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u30A2\u30AF\u30BB\u30B9\u3057\u307E\u3059\u3002\u5404\u30AF\u30E9\u30B9\u30BF\u30FC\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DB\u30B9\u30C8\u3068 1 \u3064\u4EE5\u4E0A\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059\u3002 +message.desc.host=\u5404\u30AF\u30E9\u30B9\u30BF\u30FC\u306B\u306F\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u3001\u30B2\u30B9\u30C8 VM \u3092\u5B9F\u884C\u3059\u308B\u305F\u3081\u306E\u30DB\u30B9\u30C8 (\u30B3\u30F3\u30D4\u30E5\u30FC\u30BF\u30FC) \u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002CloudStack \u3067\u30DB\u30B9\u30C8\u3092\u6A5F\u80FD\u3055\u305B\u308B\u306B\u306F\u3001\u30DB\u30B9\u30C8\u306B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3057\u3066 IP \u30A2\u30C9\u30EC\u30B9\u3092\u5272\u308A\u5F53\u3066\u3001\u30DB\u30B9\u30C8\u304C CloudStack \u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u306B\u63A5\u7D9A\u3057\u3066\u3044\u308B\u3053\u3068\u3092\u78BA\u8A8D\u3057\u307E\u3059\u3002

    \u30DB\u30B9\u30C8\u306E DNS \u540D\u307E\u305F\u306F IP \u30A2\u30C9\u30EC\u30B9\u3001\u30E6\u30FC\u30B6\u30FC\u540D (\u901A\u5E38\u306F root) \u3068\u30D1\u30B9\u30EF\u30FC\u30C9\u3001\u304A\u3088\u3073\u30DB\u30B9\u30C8\u306E\u5206\u985E\u306B\u4F7F\u7528\u3059\u308B\u30E9\u30D9\u30EB\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.desc.primary.storage=\u5404\u30AF\u30E9\u30B9\u30BF\u30FC\u306B\u306F\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u3001\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30B5\u30FC\u30D0\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306F\u3001\u30AF\u30E9\u30B9\u30BF\u30FC\u5185\u306E\u30DB\u30B9\u30C8\u4E0A\u3067\u52D5\u4F5C\u3059\u308B\u3059\u3079\u3066\u306E VM \u306E\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u683C\u7D0D\u3057\u307E\u3059\u3002\u57FA\u790E\u3068\u306A\u308B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u308B\u3001\u6A19\u6E96\u306B\u6E96\u62E0\u3057\u305F\u30D7\u30ED\u30C8\u30B3\u30EB\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.desc.secondary.storage=\u5404\u30BE\u30FC\u30F3\u306B\u306F\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u3001NFS \u3064\u307E\u308A\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30B5\u30FC\u30D0\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306F VM \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3001ISO \u30A4\u30E1\u30FC\u30B8\u3001\u304A\u3088\u3073VM \u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u683C\u7D0D\u3057\u307E\u3059\u3002\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306F\u30BE\u30FC\u30F3\u5185\u306E\u3059\u3079\u3066\u306E\u30DB\u30B9\u30C8\u3067\u4F7F\u7528\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002

    IP \u30A2\u30C9\u30EC\u30B9\u3068\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3055\u308C\u305F\u30D1\u30B9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.desc.zone=\u30BE\u30FC\u30F3\u306F CloudStack \u74B0\u5883\u5185\u306E\u6700\u5927\u306E\u7D44\u7E54\u5358\u4F4D\u3067\u3001\u901A\u5E38\u3001\u5358\u4E00\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u306B\u76F8\u5F53\u3057\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306B\u3088\u3063\u3066\u7269\u7406\u7684\u306A\u5206\u96E2\u3068\u5197\u9577\u6027\u304C\u63D0\u4F9B\u3055\u308C\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DD\u30C3\u30C9 (\u5404\u30DD\u30C3\u30C9\u306F\u30DB\u30B9\u30C8\u3068\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059) \u3068\u3001\u30BE\u30FC\u30F3\u5185\u306E\u3059\u3079\u3066\u306E\u30DD\u30C3\u30C9\u3067\u5171\u6709\u3055\u308C\u308B\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059\u3002 +message.detach.disk=\u3053\u306E\u30C7\u30A3\u30B9\u30AF\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.detach.iso.confirm=\u3053\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304B\u3089 ISO \u30D5\u30A1\u30A4\u30EB\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? message.disable.account=\u00e3\u0081\u0093\u00e3\u0081\u00ae\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0082\u0092\u00e7\u0084\u00a1\u00e5\u008a\u00b9\u00e3\u0081\u00ab\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0082\u0082\u00e3\u0082\u0088\u00e3\u0082\u008d\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0081\u00a7\u00e3\u0081\u0099\u00e3\u0081\u008b? \u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0082\u0092\u00e7\u0084\u00a1\u00e5\u008a\u00b9\u00e3\u0081\u00ab\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u0093\u00e3\u0081\u00a8\u00e3\u0081\u00ab\u00e3\u0082\u0088\u00e3\u0082\u008a\u00e3\u0080\u0081\u00e3\u0081\u0093\u00e3\u0081\u00ae\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0081\u00ae\u00e3\u0081\u0099\u00e3\u0081\u00b9\u00e3\u0081\u00a6\u00e3\u0081\u00ae\u00e3\u0083\u00a6\u00e3\u0083\u00bc\u00e3\u0082\u00b6\u00e3\u0083\u00bc\u00e3\u0081\u00af\u00e3\u0082\u00af\u00e3\u0083\u00a9\u00e3\u0082\u00a6\u00e3\u0083\u0089\u00e3\u0083\u00aa\u00e3\u0082\u00bd\u00e3\u0083\u00bc\u00e3\u0082\u00b9\u00e3\u0081\u00ab\u00e3\u0082\u00a2\u00e3\u0082\u00af\u00e3\u0082\u00bb\u00e3\u0082\u00b9\u00e3\u0081\u00a7\u00e3\u0081\u008d\u00e3\u0081\u00aa\u00e3\u0081\u008f\u00e3\u0081\u00aa\u00e3\u0082\u008a\u00e3\u0081\u00be\u00e3\u0081\u0099\u00e3\u0080\u0082\u00e5\u00ae\u009f\u00e8\u00a1\u008c\u00e4\u00b8\u00ad\u00e3\u0081\u00ae\u00e3\u0081\u0099\u00e3\u0081\u00b9\u00e3\u0081\u00a6\u00e3\u0081\u00ae\u00e4\u00bb\u00ae\u00e6\u0083\u00b3\u00e3\u0083\u009e\u00e3\u0082\u00b7\u00e3\u0083\u00b3\u00e3\u0081\u00af\u00e3\u0081\u0099\u00e3\u0081\u0090\u00e3\u0081\u00ab\u00e3\u0082\u00b7\u00e3\u0083\u00a3\u00e3\u0083\u0083\u00e3\u0083\u0088\u00e3\u0083\u0080\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0081\u0095\u00e3\u0082\u008c\u00e3\u0081\u00be\u00e3\u0081\u0099\u00e3\u0080\u0082 -message.disable.snapshot.policy=\\u73FE\\u5728\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 \\u30DD\\u30EA\\u30B7\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u307E\\u3057\\u305F\\u3002 -message.disable.user=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.disable.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.disable.vpn=VPN \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.disable.snapshot.policy=\u73FE\u5728\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 \u30DD\u30EA\u30B7\u30FC\u3092\u7121\u52B9\u306B\u3057\u307E\u3057\u305F\u3002 +message.disable.user=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.disable.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.disable.vpn=VPN \u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? message.download.ISO=ISO\u00e3\u0082\u0092\u00e3\u0083\u0080\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u00ad\u00e3\u0083\u00bc\u00e3\u0083\u0089\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab00000\u00e3\u0082\u0092\u00e3\u0082\u00af\u00e3\u0083\u00aa\u00e3\u0083\u0083\u00e3\u0082\u00af\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 message.download.template=\u00e3\u0083\u0086\u00e3\u0083\u00b3\u00e3\u0083\u0097\u00e3\u0083\u00ac\u00e3\u0083\u00bc\u00e3\u0083\u0088\u00e3\u0082\u0092\u00e3\u0083\u0080\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u00ad\u00e3\u0083\u00bc\u00e3\u0083\u0089\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab00000\u00e3\u0082\u0092\u00e3\u0082\u00af\u00e3\u0083\u00aa\u00e3\u0083\u0083\u00e3\u0082\u00af\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 -message.download.volume.confirm=\\u3053\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.download.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3059\\u308B\\u306B\\u306F 00000 \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u307E\\u3059 -message.edit.account=\\u7DE8\\u96C6 ("-1" \\u306F\\u3001\\u30EA\\u30BD\\u30FC\\u30B9\\u4F5C\\u6210\\u306E\\u91CF\\u306B\\u5236\\u9650\\u304C\\u306A\\u3044\\u3053\\u3068\\u3092\\u793A\\u3057\\u307E\\u3059) -message.edit.confirm=[\\u4FDD\\u5B58] \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3059\\u308B\\u524D\\u306B\\u5909\\u66F4\\u5185\\u5BB9\\u3092\\u78BA\\u8A8D\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.edit.limits=\\u6B21\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u306B\\u5236\\u9650\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u300C-1\\u300D\\u306F\\u3001\\u30EA\\u30BD\\u30FC\\u30B9\\u4F5C\\u6210\\u306B\\u5236\\u9650\\u304C\\u306A\\u3044\\u3053\\u3068\\u3092\\u793A\\u3057\\u307E\\u3059\\u3002 -message.edit.traffic.type=\\u3053\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u306B\\u95A2\\u9023\\u4ED8\\u3051\\u308B\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF \\u30E9\\u30D9\\u30EB\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.enable.account=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.enabled.vpn.ip.sec=IPSec \\u4E8B\\u524D\\u5171\\u6709\\u30AD\\u30FC\: -message.enabled.vpn=\\u73FE\\u5728\\u3001VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u304C\\u6709\\u52B9\\u306B\\u306A\\u3063\\u3066\\u3044\\u307E\\u3059\\u3002\\u6B21\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u7D4C\\u7531\\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3067\\u304D\\u307E\\u3059\\u3002 -message.enable.user=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.enable.vpn.access=\\u73FE\\u5728\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306B\\u5BFE\\u3059\\u308B VPN \\u306F\\u7121\\u52B9\\u3067\\u3059\\u3002VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.enable.vpn=\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306B\\u5BFE\\u3059\\u308B VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.enabling.security.group.provider=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 \\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 -message.enabling.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 -message.enter.token=\\u96FB\\u5B50\\u30E1\\u30FC\\u30EB\\u306E\\u62DB\\u5F85\\u72B6\\u306B\\u8A18\\u8F09\\u3055\\u308C\\u3066\\u3044\\u308B\\u30C8\\u30FC\\u30AF\\u30F3\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.generate.keys=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u306B\\u65B0\\u3057\\u3044\\u30AD\\u30FC\\u3092\\u751F\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.guest.traffic.in.advanced.zone=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306F\\u3001\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u9593\\u306E\\u901A\\u4FE1\\u3067\\u3059\\u3002\\u5404\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30B2\\u30B9\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u901A\\u4FE1\\u3059\\u308B\\u305F\\u3081\\u306E VLAN ID \\u306E\\u7BC4\\u56F2\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.guest.traffic.in.basic.zone=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306F\\u3001\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u9593\\u306E\\u901A\\u4FE1\\u3067\\u3059\\u3002CloudStack \\u3067\\u30B2\\u30B9\\u30C8 VM \\u306B\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u308B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u3053\\u306E\\u7BC4\\u56F2\\u304C\\u4E88\\u7D04\\u6E08\\u307F\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3068\\u91CD\\u8907\\u3057\\u306A\\u3044\\u3088\\u3046\\u306B\\u6CE8\\u610F\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.installWizard.click.retry=\\u8D77\\u52D5\\u3092\\u518D\\u8A66\\u884C\\u3059\\u308B\\u306B\\u306F\\u30DC\\u30BF\\u30F3\\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.installWizard.copy.whatIsAPod=\\u901A\\u5E38\\u30011 \\u3064\\u306E\\u30DD\\u30C3\\u30C9\\u306F\\u5358\\u4E00\\u306E\\u30E9\\u30C3\\u30AF\\u3092\\u8868\\u3057\\u307E\\u3059\\u3002\\u540C\\u3058\\u30DD\\u30C3\\u30C9\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306F\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u306B\\u542B\\u307E\\u308C\\u307E\\u3059\\u3002

    \\u30DD\\u30C3\\u30C9\\u306F CloudStack&\#8482; \\u74B0\\u5883\\u5185\\u306E 2 \\u756A\\u76EE\\u306B\\u5927\\u304D\\u306A\\u7D44\\u7E54\\u5358\\u4F4D\\u3067\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306F\\u30BE\\u30FC\\u30F3\\u306B\\u542B\\u307E\\u308C\\u307E\\u3059\\u3002\\u5404\\u30BE\\u30FC\\u30F3\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u542B\\u3080\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002\\u57FA\\u672C\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3067\\u306F\\u3001\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30DD\\u30C3\\u30C9\\u306F 1 \\u3064\\u3067\\u3059\\u3002 -message.installWizard.copy.whatIsAZone=\\u30BE\\u30FC\\u30F3\\u306F CloudStack&\#8482; \\u74B0\\u5883\\u5185\\u306E\\u6700\\u5927\\u306E\\u7D44\\u7E54\\u5358\\u4F4D\\u3067\\u3059\\u30021 \\u3064\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u5185\\u306B\\u8907\\u6570\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u8A2D\\u5B9A\\u3067\\u304D\\u307E\\u3059\\u304C\\u3001\\u901A\\u5E38\\u3001\\u30BE\\u30FC\\u30F3\\u306F\\u5358\\u4E00\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u306B\\u76F8\\u5F53\\u3057\\u307E\\u3059\\u3002\\u30A4\\u30F3\\u30D5\\u30E9\\u30B9\\u30C8\\u30E9\\u30AF\\u30C1\\u30E3\\u3092\\u30BE\\u30FC\\u30F3\\u306B\\u7D44\\u7E54\\u5316\\u3059\\u308B\\u3068\\u3001\\u30BE\\u30FC\\u30F3\\u3092\\u7269\\u7406\\u7684\\u306B\\u5206\\u96E2\\u3057\\u3066\\u5197\\u9577\\u5316\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002\\u305F\\u3068\\u3048\\u3070\\u3001\\u5404\\u30BE\\u30FC\\u30F3\\u306B\\u96FB\\u6E90\\u3068\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30A2\\u30C3\\u30D7\\u30EA\\u30F3\\u30AF\\u3092\\u914D\\u5099\\u3057\\u307E\\u3059\\u3002\\u5FC5\\u9808\\u3067\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093\\u304C\\u3001\\u30BE\\u30FC\\u30F3\\u306F\\u9060\\u9694\\u5730\\u306B\\u5206\\u6563\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002 -message.installWizard.copy.whatIsSecondaryStorage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F\\u30BE\\u30FC\\u30F3\\u3068\\u95A2\\u9023\\u4ED8\\u3051\\u3089\\u308C\\u3001\\u6B21\\u306E\\u9805\\u76EE\\u3092\\u683C\\u7D0D\\u3057\\u307E\\u3059\\u3002
    • \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 - VM \\u306E\\u8D77\\u52D5\\u306B\\u4F7F\\u7528\\u3067\\u304D\\u308B OS \\u30A4\\u30E1\\u30FC\\u30B8\\u3067\\u3001\\u30A2\\u30D7\\u30EA\\u30B1\\u30FC\\u30B7\\u30E7\\u30F3\\u306E\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u306A\\u3069\\u8FFD\\u52A0\\u306E\\u69CB\\u6210\\u3092\\u542B\\u3081\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002
    • ISO \\u30A4\\u30E1\\u30FC\\u30B8 - \\u8D77\\u52D5\\u53EF\\u80FD\\u307E\\u305F\\u306F\\u8D77\\u52D5\\u4E0D\\u53EF\\u306E OS \\u30A4\\u30E1\\u30FC\\u30B8\\u3067\\u3059\\u3002
    • \\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 - VM \\u30C7\\u30FC\\u30BF\\u306E\\u4FDD\\u5B58\\u30B3\\u30D4\\u30FC\\u3067\\u3059\\u3002\\u30C7\\u30FC\\u30BF\\u306E\\u5FA9\\u5143\\u307E\\u305F\\u306F\\u65B0\\u3057\\u3044\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210\\u306B\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u3059\\u3002
    -message.installWizard.tooltip.addCluster.name=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002CloudStack \\u3067\\u4F7F\\u7528\\u3055\\u308C\\u3066\\u3044\\u306A\\u3044\\u3001\\u4EFB\\u610F\\u306E\\u30C6\\u30AD\\u30B9\\u30C8\\u3092\\u6307\\u5B9A\\u3067\\u304D\\u307E\\u3059\\u3002 -message.installWizard.tooltip.addHost.hostname=\\u30DB\\u30B9\\u30C8\\u306E DNS \\u540D\\u307E\\u305F\\u306F IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addHost.password=XenServer \\u5074\\u3067\\u6307\\u5B9A\\u3057\\u305F\\u3001\\u4E0A\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u540D\\u306B\\u5BFE\\u3059\\u308B\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addHost.username=\\u901A\\u5E38\\u306F root \\u3067\\u3059\\u3002 -message.installWizard.tooltip.addPod.name=\\u30DD\\u30C3\\u30C9\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addPod.reservedSystemEndIp=\\u3053\\u308C\\u306F\\u3001\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VM \\u304A\\u3088\\u3073\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7 VM \\u3092\\u7BA1\\u7406\\u3059\\u308B\\u305F\\u3081\\u306B CloudStack \\u3067\\u4F7F\\u7528\\u3059\\u308B\\u3001\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u5185\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u304B\\u3089\\u5272\\u308A\\u5F53\\u3066\\u307E\\u3059\\u3002 -message.installWizard.tooltip.addPod.reservedSystemGateway=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306E\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addPod.reservedSystemNetmask=\\u30B2\\u30B9\\u30C8\\u306E\\u4F7F\\u7528\\u3059\\u308B\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u4E0A\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u308B\\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addPod.reservedSystemStartIp=\\u3053\\u308C\\u306F\\u3001\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VM \\u304A\\u3088\\u3073\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7 VM \\u3092\\u7BA1\\u7406\\u3059\\u308B\\u305F\\u3081\\u306B CloudStack \\u3067\\u4F7F\\u7528\\u3059\\u308B\\u3001\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u5185\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u304B\\u3089\\u5272\\u308A\\u5F53\\u3066\\u307E\\u3059\\u3002 -message.installWizard.tooltip.addPrimaryStorage.name=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addPrimaryStorage.path=(NFS \\u306E\\u5834\\u5408) \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u30A8\\u30AF\\u30B9\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u305F\\u30D1\\u30B9\\u3067\\u3059\\u3002(SharedMountPoint \\u306E\\u5834\\u5408) \\u30D1\\u30B9\\u3067\\u3059\\u3002KVM \\u3067\\u306F\\u3053\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u304C\\u30DE\\u30A6\\u30F3\\u30C8\\u3055\\u308C\\u308B\\u5404\\u30DB\\u30B9\\u30C8\\u4E0A\\u306E\\u30D1\\u30B9\\u3067\\u3059\\u3002\\u305F\\u3068\\u3048\\u3070\\u3001/mnt/primary \\u3067\\u3059\\u3002 -message.installWizard.tooltip.addPrimaryStorage.server=(NFS\\u3001iSCSI\\u3001\\u307E\\u305F\\u306F PreSetup \\u306E\\u5834\\u5408) \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C7\\u30D0\\u30A4\\u30B9\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u307E\\u305F\\u306F DNS \\u540D\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addSecondaryStorage.nfsServer=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u30DB\\u30B9\\u30C8\\u3059\\u308B NFS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addSecondaryStorage.path=\\u4E0A\\u306B\\u6307\\u5B9A\\u3057\\u305F\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u5B58\\u5728\\u3059\\u308B\\u3001\\u30A8\\u30AF\\u30B9\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u305F\\u30D1\\u30B9\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addZone.dns1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B2\\u30B9\\u30C8 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u306F\\u3001\\u5F8C\\u3067\\u8FFD\\u52A0\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u7D4C\\u7531\\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3057\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.installWizard.tooltip.addZone.dns2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B2\\u30B9\\u30C8 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u306F\\u3001\\u5F8C\\u3067\\u8FFD\\u52A0\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u7D4C\\u7531\\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3057\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.installWizard.tooltip.addZone.internaldns1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306F\\u3001\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4ECB\\u3057\\u3066\\u30A2\\u30AF\\u30BB\\u30B9\\u3055\\u308C\\u307E\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.installWizard.tooltip.addZone.internaldns2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306F\\u3001\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4ECB\\u3057\\u3066\\u30A2\\u30AF\\u30BB\\u30B9\\u3055\\u308C\\u307E\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.installWizard.tooltip.addZone.name=\\u30BE\\u30FC\\u30F3\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 -message.installWizard.tooltip.configureGuestTraffic.description=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8AAC\\u660E\\u3067\\u3059\\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestEndIp=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u306E\\u30B2\\u30B9\\u30C8\\u306B\\u5272\\u308A\\u5F53\\u3066\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u308B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u4F7F\\u7528\\u3059\\u308B NIC \\u304C 1 \\u3064\\u306E\\u5834\\u5408\\u306F\\u3001\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30DD\\u30C3\\u30C9\\u306E CIDR \\u3068\\u540C\\u3058 CIDR \\u306B\\u542B\\u307E\\u308C\\u3066\\u3044\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestGateway=\\u30B2\\u30B9\\u30C8\\u306E\\u4F7F\\u7528\\u3059\\u308B\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3067\\u3059\\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestNetmask=\\u30B2\\u30B9\\u30C8\\u306E\\u4F7F\\u7528\\u3059\\u308B\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u4E0A\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u308B\\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF\\u3067\\u3059\\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestStartIp=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u306E\\u30B2\\u30B9\\u30C8\\u306B\\u5272\\u308A\\u5F53\\u3066\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u308B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u4F7F\\u7528\\u3059\\u308B NIC \\u304C 1 \\u3064\\u306E\\u5834\\u5408\\u306F\\u3001\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30DD\\u30C3\\u30C9\\u306E CIDR \\u3068\\u540C\\u3058 CIDR \\u306B\\u542B\\u307E\\u308C\\u3066\\u3044\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.installWizard.tooltip.configureGuestTraffic.name=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 -message.instanceWizard.noTemplates=\\u4F7F\\u7528\\u53EF\\u80FD\\u306A\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002\\u4E92\\u63DB\\u6027\\u306E\\u3042\\u308B\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3001\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 \\u30A6\\u30A3\\u30B6\\u30FC\\u30C9\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.ip.address.changed=\\u304A\\u4F7F\\u3044\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304C\\u5909\\u66F4\\u3055\\u308C\\u3066\\u3044\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u4E00\\u89A7\\u3092\\u66F4\\u65B0\\u3057\\u307E\\u3059\\u304B? \\u305D\\u306E\\u5834\\u5408\\u306F\\u3001\\u8A73\\u7D30\\u30DA\\u30A4\\u30F3\\u304C\\u9589\\u3058\\u308B\\u3053\\u3068\\u306B\\u6CE8\\u610F\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.iso.desc=\\u30C7\\u30FC\\u30BF\\u307E\\u305F\\u306F OS \\u8D77\\u52D5\\u53EF\\u80FD\\u30E1\\u30C7\\u30A3\\u30A2\\u3092\\u542B\\u3080\\u30C7\\u30A3\\u30B9\\u30AF \\u30A4\\u30E1\\u30FC\\u30B8 -message.join.project=\\u3053\\u308C\\u3067\\u3001\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306B\\u53C2\\u52A0\\u3057\\u307E\\u3057\\u305F\\u3002\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u53C2\\u7167\\u3059\\u308B\\u306B\\u306F\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30D3\\u30E5\\u30FC\\u306B\\u5207\\u308A\\u66FF\\u3048\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.launch.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u8D77\\u52D5\\u3059\\u308B\\u6E96\\u5099\\u304C\\u3067\\u304D\\u307E\\u3057\\u305F\\u3002\\u6B21\\u306E\\u624B\\u9806\\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 -message.lock.account=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u30ED\\u30C3\\u30AF\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u3059\\u3079\\u3066\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u304C\\u30AF\\u30E9\\u30A6\\u30C9 \\u30EA\\u30BD\\u30FC\\u30B9\\u3092\\u7BA1\\u7406\\u3067\\u304D\\u306A\\u304F\\u306A\\u308A\\u307E\\u3059\\u3002\\u305D\\u306E\\u5F8C\\u3082\\u65E2\\u5B58\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u306B\\u306F\\u30A2\\u30AF\\u30BB\\u30B9\\u3067\\u304D\\u307E\\u3059\\u3002 -message.migrate.instance.confirm=\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C\\u5148\\u306F\\u6B21\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.migrate.instance.to.host=\\u5225\\u306E\\u30DB\\u30B9\\u30C8\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.migrate.instance.to.ps=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.migrate.router.confirm=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u79FB\\u884C\\u5148\\u306F\\u6B21\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.migrate.systemvm.confirm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u79FB\\u884C\\u5148\\u306F\\u6B21\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.migrate.volume=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.download.volume.confirm=\u3053\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.download.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3059\u308B\u306B\u306F 00000 \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u307E\u3059 +message.edit.account=\u7DE8\u96C6 ("-1" \u306F\u3001\u30EA\u30BD\u30FC\u30B9\u4F5C\u6210\u306E\u91CF\u306B\u5236\u9650\u304C\u306A\u3044\u3053\u3068\u3092\u793A\u3057\u307E\u3059) +message.edit.confirm=[\u4FDD\u5B58] \u3092\u30AF\u30EA\u30C3\u30AF\u3059\u308B\u524D\u306B\u5909\u66F4\u5185\u5BB9\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.edit.limits=\u6B21\u306E\u30EA\u30BD\u30FC\u30B9\u306B\u5236\u9650\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u300C-1\u300D\u306F\u3001\u30EA\u30BD\u30FC\u30B9\u4F5C\u6210\u306B\u5236\u9650\u304C\u306A\u3044\u3053\u3068\u3092\u793A\u3057\u307E\u3059\u3002 +message.edit.traffic.type=\u3053\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u306B\u95A2\u9023\u4ED8\u3051\u308B\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF \u30E9\u30D9\u30EB\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.enable.account=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.enabled.vpn.ip.sec=IPSec \u4E8B\u524D\u5171\u6709\u30AD\u30FC\: +message.enabled.vpn=\u73FE\u5728\u3001VPN \u30A2\u30AF\u30BB\u30B9\u304C\u6709\u52B9\u306B\u306A\u3063\u3066\u3044\u307E\u3059\u3002\u6B21\u306E IP \u30A2\u30C9\u30EC\u30B9\u7D4C\u7531\u3067\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u3059\u3002 +message.enable.user=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.enable.vpn.access=\u73FE\u5728\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u306B\u5BFE\u3059\u308B VPN \u306F\u7121\u52B9\u3067\u3059\u3002VPN \u30A2\u30AF\u30BB\u30B9\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.enable.vpn=\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u306B\u5BFE\u3059\u308B VPN \u30A2\u30AF\u30BB\u30B9\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.enabling.security.group.provider=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 \u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 +message.enabling.zone=\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 +message.enter.token=\u96FB\u5B50\u30E1\u30FC\u30EB\u306E\u62DB\u5F85\u72B6\u306B\u8A18\u8F09\u3055\u308C\u3066\u3044\u308B\u30C8\u30FC\u30AF\u30F3\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.generate.keys=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u306B\u65B0\u3057\u3044\u30AD\u30FC\u3092\u751F\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.guest.traffic.in.advanced.zone=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306F\u3001\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u9593\u306E\u901A\u4FE1\u3067\u3059\u3002\u5404\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30B2\u30B9\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u901A\u4FE1\u3059\u308B\u305F\u3081\u306E VLAN ID \u306E\u7BC4\u56F2\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.guest.traffic.in.basic.zone=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306F\u3001\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u9593\u306E\u901A\u4FE1\u3067\u3059\u3002CloudStack \u3067\u30B2\u30B9\u30C8 VM \u306B\u5272\u308A\u5F53\u3066\u3089\u308C\u308B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3053\u306E\u7BC4\u56F2\u304C\u4E88\u7D04\u6E08\u307F\u306E\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3068\u91CD\u8907\u3057\u306A\u3044\u3088\u3046\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.installWizard.click.retry=\u8D77\u52D5\u3092\u518D\u8A66\u884C\u3059\u308B\u306B\u306F\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.installWizard.copy.whatIsAPod=\u901A\u5E38\u30011 \u3064\u306E\u30DD\u30C3\u30C9\u306F\u5358\u4E00\u306E\u30E9\u30C3\u30AF\u3092\u8868\u3057\u307E\u3059\u3002\u540C\u3058\u30DD\u30C3\u30C9\u5185\u306E\u30DB\u30B9\u30C8\u306F\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u306B\u542B\u307E\u308C\u307E\u3059\u3002

    \u30DD\u30C3\u30C9\u306F CloudStack&\#8482; \u74B0\u5883\u5185\u306E 2 \u756A\u76EE\u306B\u5927\u304D\u306A\u7D44\u7E54\u5358\u4F4D\u3067\u3059\u3002\u30DD\u30C3\u30C9\u306F\u30BE\u30FC\u30F3\u306B\u542B\u307E\u308C\u307E\u3059\u3002\u5404\u30BE\u30FC\u30F3\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DD\u30C3\u30C9\u3092\u542B\u3080\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002\u57FA\u672C\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3067\u306F\u3001\u30BE\u30FC\u30F3\u5185\u306E\u30DD\u30C3\u30C9\u306F 1 \u3064\u3067\u3059\u3002 +message.installWizard.copy.whatIsAZone=\u30BE\u30FC\u30F3\u306F CloudStack&\#8482; \u74B0\u5883\u5185\u306E\u6700\u5927\u306E\u7D44\u7E54\u5358\u4F4D\u3067\u3059\u30021 \u3064\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u5185\u306B\u8907\u6570\u306E\u30BE\u30FC\u30F3\u3092\u8A2D\u5B9A\u3067\u304D\u307E\u3059\u304C\u3001\u901A\u5E38\u3001\u30BE\u30FC\u30F3\u306F\u5358\u4E00\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u306B\u76F8\u5F53\u3057\u307E\u3059\u3002\u30A4\u30F3\u30D5\u30E9\u30B9\u30C8\u30E9\u30AF\u30C1\u30E3\u3092\u30BE\u30FC\u30F3\u306B\u7D44\u7E54\u5316\u3059\u308B\u3068\u3001\u30BE\u30FC\u30F3\u3092\u7269\u7406\u7684\u306B\u5206\u96E2\u3057\u3066\u5197\u9577\u5316\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002\u305F\u3068\u3048\u3070\u3001\u5404\u30BE\u30FC\u30F3\u306B\u96FB\u6E90\u3068\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30A2\u30C3\u30D7\u30EA\u30F3\u30AF\u3092\u914D\u5099\u3057\u307E\u3059\u3002\u5FC5\u9808\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u304C\u3001\u30BE\u30FC\u30F3\u306F\u9060\u9694\u5730\u306B\u5206\u6563\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002 +message.installWizard.copy.whatIsSecondaryStorage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306F\u30BE\u30FC\u30F3\u3068\u95A2\u9023\u4ED8\u3051\u3089\u308C\u3001\u6B21\u306E\u9805\u76EE\u3092\u683C\u7D0D\u3057\u307E\u3059\u3002
    • \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 - VM \u306E\u8D77\u52D5\u306B\u4F7F\u7528\u3067\u304D\u308B OS \u30A4\u30E1\u30FC\u30B8\u3067\u3001\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u306E\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u306A\u3069\u8FFD\u52A0\u306E\u69CB\u6210\u3092\u542B\u3081\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002
    • ISO \u30A4\u30E1\u30FC\u30B8 - \u8D77\u52D5\u53EF\u80FD\u307E\u305F\u306F\u8D77\u52D5\u4E0D\u53EF\u306E OS \u30A4\u30E1\u30FC\u30B8\u3067\u3059\u3002
    • \u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 - VM \u30C7\u30FC\u30BF\u306E\u4FDD\u5B58\u30B3\u30D4\u30FC\u3067\u3059\u3002\u30C7\u30FC\u30BF\u306E\u5FA9\u5143\u307E\u305F\u306F\u65B0\u3057\u3044\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210\u306B\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002
    +message.installWizard.tooltip.addCluster.name=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u540D\u524D\u3067\u3059\u3002CloudStack \u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u306A\u3044\u3001\u4EFB\u610F\u306E\u30C6\u30AD\u30B9\u30C8\u3092\u6307\u5B9A\u3067\u304D\u307E\u3059\u3002 +message.installWizard.tooltip.addHost.hostname=\u30DB\u30B9\u30C8\u306E DNS \u540D\u307E\u305F\u306F IP \u30A2\u30C9\u30EC\u30B9\u3067\u3059\u3002 +message.installWizard.tooltip.addHost.password=XenServer \u5074\u3067\u6307\u5B9A\u3057\u305F\u3001\u4E0A\u306E\u30E6\u30FC\u30B6\u30FC\u540D\u306B\u5BFE\u3059\u308B\u30D1\u30B9\u30EF\u30FC\u30C9\u3067\u3059\u3002 +message.installWizard.tooltip.addHost.username=\u901A\u5E38\u306F root \u3067\u3059\u3002 +message.installWizard.tooltip.addPod.name=\u30DD\u30C3\u30C9\u306E\u540D\u524D\u3067\u3059\u3002 +message.installWizard.tooltip.addPod.reservedSystemEndIp=\u3053\u308C\u306F\u3001\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 VM \u304A\u3088\u3073\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7 VM \u3092\u7BA1\u7406\u3059\u308B\u305F\u3081\u306B CloudStack \u3067\u4F7F\u7528\u3059\u308B\u3001\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u5185\u306E IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30B5\u30FC\u30D0\u30FC\u3068\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u304B\u3089\u5272\u308A\u5F53\u3066\u307E\u3059\u3002 +message.installWizard.tooltip.addPod.reservedSystemGateway=\u3053\u306E\u30DD\u30C3\u30C9\u5185\u306E\u30DB\u30B9\u30C8\u306E\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3067\u3059\u3002 +message.installWizard.tooltip.addPod.reservedSystemNetmask=\u30B2\u30B9\u30C8\u306E\u4F7F\u7528\u3059\u308B\u30B5\u30D6\u30CD\u30C3\u30C8\u4E0A\u3067\u4F7F\u7528\u3055\u308C\u308B\u30CD\u30C3\u30C8\u30DE\u30B9\u30AF\u3067\u3059\u3002 +message.installWizard.tooltip.addPod.reservedSystemStartIp=\u3053\u308C\u306F\u3001\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 VM \u304A\u3088\u3073\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7 VM \u3092\u7BA1\u7406\u3059\u308B\u305F\u3081\u306B CloudStack \u3067\u4F7F\u7528\u3059\u308B\u3001\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u5185\u306E IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30B5\u30FC\u30D0\u30FC\u3068\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u304B\u3089\u5272\u308A\u5F53\u3066\u307E\u3059\u3002 +message.installWizard.tooltip.addPrimaryStorage.name=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C7\u30D0\u30A4\u30B9\u306E\u540D\u524D\u3067\u3059\u3002 +message.installWizard.tooltip.addPrimaryStorage.path=(NFS \u306E\u5834\u5408) \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3055\u308C\u305F\u30D1\u30B9\u3067\u3059\u3002(SharedMountPoint \u306E\u5834\u5408) \u30D1\u30B9\u3067\u3059\u3002KVM \u3067\u306F\u3053\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u304C\u30DE\u30A6\u30F3\u30C8\u3055\u308C\u308B\u5404\u30DB\u30B9\u30C8\u4E0A\u306E\u30D1\u30B9\u3067\u3059\u3002\u305F\u3068\u3048\u3070\u3001/mnt/primary \u3067\u3059\u3002 +message.installWizard.tooltip.addPrimaryStorage.server=(NFS\u3001iSCSI\u3001\u307E\u305F\u306F PreSetup \u306E\u5834\u5408) \u30B9\u30C8\u30EC\u30FC\u30B8 \u30C7\u30D0\u30A4\u30B9\u306E IP \u30A2\u30C9\u30EC\u30B9\u307E\u305F\u306F DNS \u540D\u3067\u3059\u3002 +message.installWizard.tooltip.addSecondaryStorage.nfsServer=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u30DB\u30B9\u30C8\u3059\u308B NFS \u30B5\u30FC\u30D0\u30FC\u306E IP \u30A2\u30C9\u30EC\u30B9\u3067\u3059\u3002 +message.installWizard.tooltip.addSecondaryStorage.path=\u4E0A\u306B\u6307\u5B9A\u3057\u305F\u30B5\u30FC\u30D0\u30FC\u306B\u5B58\u5728\u3059\u308B\u3001\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3055\u308C\u305F\u30D1\u30B9\u3067\u3059\u3002 +message.installWizard.tooltip.addZone.dns1=\u30BE\u30FC\u30F3\u5185\u306E\u30B2\u30B9\u30C8 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306B\u306F\u3001\u5F8C\u3067\u8FFD\u52A0\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u7D4C\u7531\u3067\u30A2\u30AF\u30BB\u30B9\u3057\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.installWizard.tooltip.addZone.dns2=\u30BE\u30FC\u30F3\u5185\u306E\u30B2\u30B9\u30C8 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306B\u306F\u3001\u5F8C\u3067\u8FFD\u52A0\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u7D4C\u7531\u3067\u30A2\u30AF\u30BB\u30B9\u3057\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.installWizard.tooltip.addZone.internaldns1=\u30BE\u30FC\u30F3\u5185\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306F\u3001\u30B7\u30B9\u30C6\u30E0 VM \u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4ECB\u3057\u3066\u30A2\u30AF\u30BB\u30B9\u3055\u308C\u307E\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.installWizard.tooltip.addZone.internaldns2=\u30BE\u30FC\u30F3\u5185\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306F\u3001\u30B7\u30B9\u30C6\u30E0 VM \u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4ECB\u3057\u3066\u30A2\u30AF\u30BB\u30B9\u3055\u308C\u307E\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.installWizard.tooltip.addZone.name=\u30BE\u30FC\u30F3\u306E\u540D\u524D\u3067\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.description=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8AAC\u660E\u3067\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestEndIp=\u3053\u306E\u30BE\u30FC\u30F3\u306E\u30B2\u30B9\u30C8\u306B\u5272\u308A\u5F53\u3066\u308B\u3053\u3068\u304C\u3067\u304D\u308B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u4F7F\u7528\u3059\u308B NIC \u304C 1 \u3064\u306E\u5834\u5408\u306F\u3001\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30DD\u30C3\u30C9\u306E CIDR \u3068\u540C\u3058 CIDR \u306B\u542B\u307E\u308C\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestGateway=\u30B2\u30B9\u30C8\u306E\u4F7F\u7528\u3059\u308B\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3067\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestNetmask=\u30B2\u30B9\u30C8\u306E\u4F7F\u7528\u3059\u308B\u30B5\u30D6\u30CD\u30C3\u30C8\u4E0A\u3067\u4F7F\u7528\u3055\u308C\u308B\u30CD\u30C3\u30C8\u30DE\u30B9\u30AF\u3067\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestStartIp=\u3053\u306E\u30BE\u30FC\u30F3\u306E\u30B2\u30B9\u30C8\u306B\u5272\u308A\u5F53\u3066\u308B\u3053\u3068\u304C\u3067\u304D\u308B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u4F7F\u7528\u3059\u308B NIC \u304C 1 \u3064\u306E\u5834\u5408\u306F\u3001\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30DD\u30C3\u30C9\u306E CIDR \u3068\u540C\u3058 CIDR \u306B\u542B\u307E\u308C\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.name=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u540D\u524D\u3067\u3059\u3002 +message.instanceWizard.noTemplates=\u4F7F\u7528\u53EF\u80FD\u306A\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u4E92\u63DB\u6027\u306E\u3042\u308B\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u8FFD\u52A0\u3057\u3066\u3001\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 \u30A6\u30A3\u30B6\u30FC\u30C9\u3092\u518D\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.ip.address.changed=\u304A\u4F7F\u3044\u306E IP \u30A2\u30C9\u30EC\u30B9\u304C\u5909\u66F4\u3055\u308C\u3066\u3044\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002\u4E00\u89A7\u3092\u66F4\u65B0\u3057\u307E\u3059\u304B? \u305D\u306E\u5834\u5408\u306F\u3001\u8A73\u7D30\u30DA\u30A4\u30F3\u304C\u9589\u3058\u308B\u3053\u3068\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.iso.desc=\u30C7\u30FC\u30BF\u307E\u305F\u306F OS \u8D77\u52D5\u53EF\u80FD\u30E1\u30C7\u30A3\u30A2\u3092\u542B\u3080\u30C7\u30A3\u30B9\u30AF \u30A4\u30E1\u30FC\u30B8 +message.join.project=\u3053\u308C\u3067\u3001\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306B\u53C2\u52A0\u3057\u307E\u3057\u305F\u3002\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u53C2\u7167\u3059\u308B\u306B\u306F\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30D3\u30E5\u30FC\u306B\u5207\u308A\u66FF\u3048\u3066\u304F\u3060\u3055\u3044\u3002 +message.launch.zone=\u30BE\u30FC\u30F3\u3092\u8D77\u52D5\u3059\u308B\u6E96\u5099\u304C\u3067\u304D\u307E\u3057\u305F\u3002\u6B21\u306E\u624B\u9806\u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 +message.lock.account=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u30ED\u30C3\u30AF\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u3059\u3079\u3066\u306E\u30E6\u30FC\u30B6\u30FC\u304C\u30AF\u30E9\u30A6\u30C9 \u30EA\u30BD\u30FC\u30B9\u3092\u7BA1\u7406\u3067\u304D\u306A\u304F\u306A\u308A\u307E\u3059\u3002\u305D\u306E\u5F8C\u3082\u65E2\u5B58\u306E\u30EA\u30BD\u30FC\u30B9\u306B\u306F\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u3059\u3002 +message.migrate.instance.confirm=\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C\u5148\u306F\u6B21\u306E\u30DB\u30B9\u30C8\u3067\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.migrate.instance.to.host=\u5225\u306E\u30DB\u30B9\u30C8\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u79FB\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.migrate.instance.to.ps=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u79FB\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.migrate.router.confirm=\u30EB\u30FC\u30BF\u30FC\u306E\u79FB\u884C\u5148\u306F\u6B21\u306E\u30DB\u30B9\u30C8\u3067\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.migrate.systemvm.confirm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u79FB\u884C\u5148\u306F\u6B21\u306E\u30DB\u30B9\u30C8\u3067\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.migrate.volume=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u79FB\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? message.new.user=\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0081\u00ab\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0083\u00a6\u00e3\u0083\u00bc\u00e3\u0082\u00b6\u00e3\u0083\u00bc\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e8\u00a8\u00ad\u00e5\u00ae\u009a\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084 -message.no.network.support.configuration.not.true=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u304C\\u6709\\u52B9\\u306A\\u30BE\\u30FC\\u30F3\\u304C\\u7121\\u3044\\u305F\\u3081\\u3001\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6A5F\\u80FD\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002\\u624B\\u9806 5. \\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 -message.no.network.support=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3068\\u3057\\u3066 vSphere \\u3092\\u9078\\u629E\\u3057\\u307E\\u3057\\u305F\\u304C\\u3001\\u3053\\u306E\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306B\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6A5F\\u80FD\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002\\u624B\\u9806 5. \\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 -message.no.projects.adminOnly=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002
    \\u7BA1\\u7406\\u8005\\u306B\\u65B0\\u3057\\u3044\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u4F5C\\u6210\\u3092\\u4F9D\\u983C\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.no.projects=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002
    \\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30BB\\u30AF\\u30B7\\u30E7\\u30F3\\u304B\\u3089\\u65B0\\u3057\\u3044\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.number.clusters=

    \\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u6570

    -message.number.hosts=

    \\u30DB\\u30B9\\u30C8\\u6570

    -message.number.pods=

    \\u30DD\\u30C3\\u30C9\\u6570

    -message.number.storage=

    \\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u6570

    -message.number.zones=

    \\u30BE\\u30FC\\u30F3\\u6570

    -message.pending.projects.1=\\u4FDD\\u7559\\u4E2D\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u62DB\\u5F85\\u72B6\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.pending.projects.2=\\u8868\\u793A\\u3059\\u308B\\u306B\\u306F\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30BB\\u30AF\\u30B7\\u30E7\\u30F3\\u306B\\u79FB\\u52D5\\u3057\\u3066\\u3001\\u4E00\\u89A7\\u304B\\u3089\\u62DB\\u5F85\\u72B6\\u3092\\u9078\\u629E\\u3057\\u307E\\u3059\\u3002 -message.please.add.at.lease.one.traffic.range=\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.please.proceed=\\u6B21\\u306E\\u624B\\u9806\\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 -message.please.select.a.configuration.for.your.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u69CB\\u6210\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.please.select.a.different.public.and.management.network.before.removing=\\u524A\\u9664\\u306E\\u524D\\u306B\\u7570\\u306A\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF\\u304A\\u3088\\u3073\\u7BA1\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.please.select.networks=\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.please.wait.while.zone.is.being.created=\\u30BE\\u30FC\\u30F3\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u308B\\u307E\\u3067\\u3057\\u3070\\u3089\\u304F\\u304A\\u5F85\\u3061\\u304F\\u3060\\u3055\\u3044... -message.project.invite.sent=\\u30E6\\u30FC\\u30B6\\u30FC\\u306B\\u62DB\\u5F85\\u72B6\\u304C\\u9001\\u4FE1\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u30E6\\u30FC\\u30B6\\u30FC\\u304C\\u62DB\\u5F85\\u3092\\u627F\\u8AFE\\u3059\\u308B\\u3068\\u3001\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306B\\u8FFD\\u52A0\\u3055\\u308C\\u307E\\u3059\\u3002 -message.public.traffic.in.advanced.zone=\\u30AF\\u30E9\\u30A6\\u30C9\\u5185\\u306E VM \\u304C\\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3059\\u308B\\u3068\\u3001\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u304C\\u751F\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u305F\\u3081\\u306B\\u3001\\u4E00\\u822C\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u53EF\\u80FD\\u306A IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306F CloudStack \\u306E\\u30E6\\u30FC\\u30B6\\u30FC \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3057\\u3001\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3068\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u9593\\u306B NAT \\u3092\\u5B9F\\u88C5\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002

    \\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u305F\\u3081\\u306B\\u3001\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.public.traffic.in.basic.zone=\\u30AF\\u30E9\\u30A6\\u30C9\\u5185\\u306E VM \\u304C\\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3059\\u308B\\u304B\\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8\\u7D4C\\u7531\\u3067\\u30AF\\u30E9\\u30A4\\u30A2\\u30F3\\u30C8\\u306B\\u30B5\\u30FC\\u30D3\\u30B9\\u3092\\u63D0\\u4F9B\\u3059\\u308B\\u3068\\u3001\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u304C\\u751F\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u305F\\u3081\\u306B\\u3001\\u4E00\\u822C\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u53EF\\u80FD\\u306A IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u3068\\u3001\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u307B\\u304B\\u306B\\u3053\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u304B\\u3089\\u30A2\\u30C9\\u30EC\\u30B9\\u304C 1 \\u3064\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u307E\\u3059\\u3002\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3068\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u9593\\u306B\\u3001\\u9759\\u7684\\u306A 1 \\u5BFE 1 \\u306E NAT \\u304C\\u81EA\\u52D5\\u7684\\u306B\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3055\\u308C\\u307E\\u3059\\u3002\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306F CloudStack \\u306E\\u30E6\\u30FC\\u30B6\\u30FC \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u8FFD\\u52A0\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3057\\u3001\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3068\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u9593\\u306B\\u9759\\u7684 NAT \\u3092\\u5B9F\\u88C5\\u3059\\u308B\\u3053\\u3068\\u3082\\u3067\\u304D\\u307E\\u3059\\u3002 -message.remove.vpc=VPC \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.remove.vpn.access=\\u6B21\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u304B\\u3089 VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.reset.password.warning.notPasswordEnabled=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306F\\u3001\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u7BA1\\u7406\\u3092\\u6709\\u52B9\\u306B\\u305B\\u305A\\u306B\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002 -message.reset.password.warning.notStopped=\\u73FE\\u5728\\u306E\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.reset.VPN.connection=VPN \\u63A5\\u7D9A\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.restart.mgmt.server=\\u65B0\\u3057\\u3044\\u8A2D\\u5B9A\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.restart.mgmt.usage.server=\\u65B0\\u3057\\u3044\\u8A2D\\u5B9A\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u4F7F\\u7528\\u72B6\\u6CC1\\u6E2C\\u5B9A\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.restart.network=\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3067\\u63D0\\u4F9B\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30B5\\u30FC\\u30D3\\u30B9\\u304C\\u4E2D\\u65AD\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.restart.vpc=VPC \\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.security.group.usage=(\\u8A72\\u5F53\\u3059\\u308B\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u3059\\u3079\\u3066\\u9078\\u629E\\u3059\\u308B\\u306B\\u306F\\u3001Ctrl \\u30AD\\u30FC\\u3092\\u62BC\\u3057\\u306A\\u304C\\u3089\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044) -message.select.a.zone=\\u30BE\\u30FC\\u30F3\\u306F\\u901A\\u5E38\\u3001\\u5358\\u4E00\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u306B\\u76F8\\u5F53\\u3057\\u307E\\u3059\\u3002\\u8907\\u6570\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u8A2D\\u5B9A\\u3057\\u3001\\u7269\\u7406\\u7684\\u306B\\u5206\\u96E2\\u3057\\u3066\\u5197\\u9577\\u6027\\u3092\\u6301\\u305F\\u305B\\u308B\\u3053\\u3068\\u306B\\u3088\\u308A\\u3001\\u30AF\\u30E9\\u30A6\\u30C9\\u306E\\u4FE1\\u983C\\u6027\\u3092\\u9AD8\\u3081\\u307E\\u3059\\u3002 -message.select.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.select.iso=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E ISO \\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.select.item=\\u9805\\u76EE\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.select.security.groups=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306E\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.select.template=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.setup.physical.network.during.zone.creation.basic=\\u57FA\\u672C\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u3068\\u304D\\u306F\\u3001\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u4E0A\\u306E NIC \\u306B\\u5BFE\\u5FDC\\u3059\\u308B 1 \\u3064\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3067\\u304D\\u307E\\u3059\\u3002\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306F\\u3044\\u304F\\u3064\\u304B\\u306E\\u7A2E\\u985E\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u4F1D\\u9001\\u3057\\u307E\\u3059\\u3002

    \\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306B\\u307B\\u304B\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u3092\\u30C9\\u30E9\\u30C3\\u30B0 \\u30A2\\u30F3\\u30C9 \\u30C9\\u30ED\\u30C3\\u30D7\\u3059\\u308B\\u3053\\u3068\\u3082\\u3067\\u304D\\u307E\\u3059\\u3002 -message.setup.physical.network.during.zone.creation=\\u62E1\\u5F35\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u3068\\u304D\\u306F\\u30011 \\u3064\\u4EE5\\u4E0A\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u5404\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306F\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u4E0A\\u306E 1 \\u3064\\u306E NIC \\u306B\\u5BFE\\u5FDC\\u3057\\u307E\\u3059\\u3002\\u5404\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3067\\u306F\\u3001\\u7D44\\u307F\\u5408\\u308F\\u305B\\u306B\\u5236\\u9650\\u304C\\u3042\\u308A\\u307E\\u3059\\u304C\\u30011 \\u3064\\u4EE5\\u4E0A\\u306E\\u7A2E\\u985E\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u901A\\u4FE1\\u3067\\u304D\\u307E\\u3059\\u3002

    \\u5404\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306B\\u5BFE\\u3057\\u3066\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u3092\\u30C9\\u30E9\\u30C3\\u30B0 \\u30A2\\u30F3\\u30C9 \\u30C9\\u30ED\\u30C3\\u30D7\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.setup.successful=\\u30AF\\u30E9\\u30A6\\u30C9\\u304C\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002 -message.snapshot.schedule=\\u6B21\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u304B\\u3089\\u9078\\u629E\\u3057\\u3066\\u30DD\\u30EA\\u30B7\\u30FC\\u306E\\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u9069\\u7528\\u3059\\u308B\\u3053\\u3068\\u306B\\u3088\\u308A\\u3001\\u5B9A\\u671F\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u30B9\\u30B1\\u30B8\\u30E5\\u30FC\\u30EB\\u3092\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3067\\u304D\\u307E\\u3059\\u3002 -message.specify.url=URL \\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 -message.step.1.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u307E\\u305F\\u306F ISO \\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 -message.step.1.desc=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u7528\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002ISO \\u3092\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3067\\u304D\\u308B\\u7A7A\\u767D\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u9078\\u629E\\u3059\\u308B\\u3053\\u3068\\u3082\\u3067\\u304D\\u307E\\u3059\\u3002 -message.step.2.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +message.no.network.support.configuration.not.true=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u304C\u6709\u52B9\u306A\u30BE\u30FC\u30F3\u304C\u7121\u3044\u305F\u3081\u3001\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6A5F\u80FD\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u624B\u9806 5. \u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 +message.no.network.support=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3068\u3057\u3066 vSphere \u3092\u9078\u629E\u3057\u307E\u3057\u305F\u304C\u3001\u3053\u306E\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306B\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6A5F\u80FD\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u624B\u9806 5. \u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 +message.no.projects.adminOnly=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u304C\u3042\u308A\u307E\u305B\u3093\u3002
    \u7BA1\u7406\u8005\u306B\u65B0\u3057\u3044\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u4F5C\u6210\u3092\u4F9D\u983C\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.no.projects=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u304C\u3042\u308A\u307E\u305B\u3093\u3002
    \u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30BB\u30AF\u30B7\u30E7\u30F3\u304B\u3089\u65B0\u3057\u3044\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u4F5C\u6210\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.number.clusters=

    \u30AF\u30E9\u30B9\u30BF\u30FC\u6570

    +message.number.hosts=

    \u30DB\u30B9\u30C8\u6570

    +message.number.pods=

    \u30DD\u30C3\u30C9\u6570

    +message.number.storage=

    \u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30DC\u30EA\u30E5\u30FC\u30E0\u6570

    +message.number.zones=

    \u30BE\u30FC\u30F3\u6570

    +message.pending.projects.1=\u4FDD\u7559\u4E2D\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u62DB\u5F85\u72B6\u304C\u3042\u308A\u307E\u3059\u3002 +message.pending.projects.2=\u8868\u793A\u3059\u308B\u306B\u306F\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30BB\u30AF\u30B7\u30E7\u30F3\u306B\u79FB\u52D5\u3057\u3066\u3001\u4E00\u89A7\u304B\u3089\u62DB\u5F85\u72B6\u3092\u9078\u629E\u3057\u307E\u3059\u3002 +message.please.add.at.lease.one.traffic.range=\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.please.proceed=\u6B21\u306E\u624B\u9806\u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 +message.please.select.a.configuration.for.your.zone=\u30BE\u30FC\u30F3\u306E\u69CB\u6210\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.please.select.a.different.public.and.management.network.before.removing=\u524A\u9664\u306E\u524D\u306B\u7570\u306A\u308B\u30D1\u30D6\u30EA\u30C3\u30AF\u304A\u3088\u3073\u7BA1\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.please.select.networks=\u4EEE\u60F3\u30DE\u30B7\u30F3\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.please.wait.while.zone.is.being.created=\u30BE\u30FC\u30F3\u304C\u4F5C\u6210\u3055\u308C\u308B\u307E\u3067\u3057\u3070\u3089\u304F\u304A\u5F85\u3061\u304F\u3060\u3055\u3044... +message.project.invite.sent=\u30E6\u30FC\u30B6\u30FC\u306B\u62DB\u5F85\u72B6\u304C\u9001\u4FE1\u3055\u308C\u307E\u3057\u305F\u3002\u30E6\u30FC\u30B6\u30FC\u304C\u62DB\u5F85\u3092\u627F\u8AFE\u3059\u308B\u3068\u3001\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306B\u8FFD\u52A0\u3055\u308C\u307E\u3059\u3002 +message.public.traffic.in.advanced.zone=\u30AF\u30E9\u30A6\u30C9\u5185\u306E VM \u304C\u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8\u306B\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u3068\u3001\u30D1\u30D6\u30EA\u30C3\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u304C\u751F\u6210\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u305F\u3081\u306B\u3001\u4E00\u822C\u306B\u30A2\u30AF\u30BB\u30B9\u53EF\u80FD\u306A IP \u30A2\u30C9\u30EC\u30B9\u3092\u5272\u308A\u5F53\u3066\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306F CloudStack \u306E\u30E6\u30FC\u30B6\u30FC \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4F7F\u7528\u3057\u3066\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3057\u3001\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3068\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u9593\u306B NAT \u3092\u5B9F\u88C5\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002

    \u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u305F\u3081\u306B\u3001\u5C11\u306A\u304F\u3068\u3082 1 \u3064 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.public.traffic.in.basic.zone=\u30AF\u30E9\u30A6\u30C9\u5185\u306E VM \u304C\u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8\u306B\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u304B\u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8\u7D4C\u7531\u3067\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8\u306B\u30B5\u30FC\u30D3\u30B9\u3092\u63D0\u4F9B\u3059\u308B\u3068\u3001\u30D1\u30D6\u30EA\u30C3\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u304C\u751F\u6210\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u305F\u3081\u306B\u3001\u4E00\u822C\u306B\u30A2\u30AF\u30BB\u30B9\u53EF\u80FD\u306A IP \u30A2\u30C9\u30EC\u30B9\u3092\u5272\u308A\u5F53\u3066\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u4F5C\u6210\u3059\u308B\u3068\u3001\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u307B\u304B\u306B\u3053\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u304B\u3089\u30A2\u30C9\u30EC\u30B9\u304C 1 \u3064\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B\u5272\u308A\u5F53\u3066\u3089\u308C\u307E\u3059\u3002\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u3068\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u9593\u306B\u3001\u9759\u7684\u306A 1 \u5BFE 1 \u306E NAT \u304C\u81EA\u52D5\u7684\u306B\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3055\u308C\u307E\u3059\u3002\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306F CloudStack \u306E\u30E6\u30FC\u30B6\u30FC \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4F7F\u7528\u3057\u3066\u8FFD\u52A0\u306E IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3057\u3001\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3068\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u306E\u9593\u306B\u9759\u7684 NAT \u3092\u5B9F\u88C5\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002 +message.remove.vpc=VPC \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.remove.vpn.access=\u6B21\u306E\u30E6\u30FC\u30B6\u30FC\u304B\u3089 VPN \u30A2\u30AF\u30BB\u30B9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.reset.password.warning.notPasswordEnabled=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306F\u3001\u30D1\u30B9\u30EF\u30FC\u30C9\u7BA1\u7406\u3092\u6709\u52B9\u306B\u305B\u305A\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F\u3002 +message.reset.password.warning.notStopped=\u73FE\u5728\u306E\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.reset.VPN.connection=VPN \u63A5\u7D9A\u3092\u30EA\u30BB\u30C3\u30C8\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.restart.mgmt.server=\u65B0\u3057\u3044\u8A2D\u5B9A\u3092\u6709\u52B9\u306B\u3059\u308B\u305F\u3081\u306B\u3001\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.restart.mgmt.usage.server=\u65B0\u3057\u3044\u8A2D\u5B9A\u3092\u6709\u52B9\u306B\u3059\u308B\u305F\u3081\u306B\u3001\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3068\u4F7F\u7528\u72B6\u6CC1\u6E2C\u5B9A\u30B5\u30FC\u30D0\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.restart.network=\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3067\u63D0\u4F9B\u3059\u308B\u3059\u3079\u3066\u306E\u30B5\u30FC\u30D3\u30B9\u304C\u4E2D\u65AD\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.restart.vpc=VPC \u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.security.group.usage=(\u8A72\u5F53\u3059\u308B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u3059\u3079\u3066\u9078\u629E\u3059\u308B\u306B\u306F\u3001Ctrl \u30AD\u30FC\u3092\u62BC\u3057\u306A\u304C\u3089\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044) +message.select.a.zone=\u30BE\u30FC\u30F3\u306F\u901A\u5E38\u3001\u5358\u4E00\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u306B\u76F8\u5F53\u3057\u307E\u3059\u3002\u8907\u6570\u306E\u30BE\u30FC\u30F3\u3092\u8A2D\u5B9A\u3057\u3001\u7269\u7406\u7684\u306B\u5206\u96E2\u3057\u3066\u5197\u9577\u6027\u3092\u6301\u305F\u305B\u308B\u3053\u3068\u306B\u3088\u308A\u3001\u30AF\u30E9\u30A6\u30C9\u306E\u4FE1\u983C\u6027\u3092\u9AD8\u3081\u307E\u3059\u3002 +message.select.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.select.iso=\u65B0\u3057\u3044\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E ISO \u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.select.item=\u9805\u76EE\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.select.security.groups=\u65B0\u3057\u3044\u4EEE\u60F3\u30DE\u30B7\u30F3\u306E\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.select.template=\u65B0\u3057\u3044\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.setup.physical.network.during.zone.creation.basic=\u57FA\u672C\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3059\u308B\u3068\u304D\u306F\u3001\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u4E0A\u306E NIC \u306B\u5BFE\u5FDC\u3059\u308B 1 \u3064\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3067\u304D\u307E\u3059\u3002\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306F\u3044\u304F\u3064\u304B\u306E\u7A2E\u985E\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u4F1D\u9001\u3057\u307E\u3059\u3002

    \u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306B\u307B\u304B\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u3092\u30C9\u30E9\u30C3\u30B0 \u30A2\u30F3\u30C9 \u30C9\u30ED\u30C3\u30D7\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002 +message.setup.physical.network.during.zone.creation=\u62E1\u5F35\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3059\u308B\u3068\u304D\u306F\u30011 \u3064\u4EE5\u4E0A\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u5404\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306F\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u4E0A\u306E 1 \u3064\u306E NIC \u306B\u5BFE\u5FDC\u3057\u307E\u3059\u3002\u5404\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3067\u306F\u3001\u7D44\u307F\u5408\u308F\u305B\u306B\u5236\u9650\u304C\u3042\u308A\u307E\u3059\u304C\u30011 \u3064\u4EE5\u4E0A\u306E\u7A2E\u985E\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u901A\u4FE1\u3067\u304D\u307E\u3059\u3002

    \u5404\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306B\u5BFE\u3057\u3066\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u3092\u30C9\u30E9\u30C3\u30B0 \u30A2\u30F3\u30C9 \u30C9\u30ED\u30C3\u30D7\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.setup.successful=\u30AF\u30E9\u30A6\u30C9\u304C\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3055\u308C\u307E\u3057\u305F\u3002 +message.snapshot.schedule=\u6B21\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u304B\u3089\u9078\u629E\u3057\u3066\u30DD\u30EA\u30B7\u30FC\u306E\u57FA\u672C\u8A2D\u5B9A\u3092\u9069\u7528\u3059\u308B\u3053\u3068\u306B\u3088\u308A\u3001\u5B9A\u671F\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u30B9\u30B1\u30B8\u30E5\u30FC\u30EB\u3092\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3067\u304D\u307E\u3059\u3002 +message.specify.url=URL \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044 +message.step.1.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u307E\u305F\u306F ISO \u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +message.step.1.desc=\u65B0\u3057\u3044\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u7528\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002ISO \u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3067\u304D\u308B\u7A7A\u767D\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u9078\u629E\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002 +message.step.2.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 message.step.2.desc= -message.step.3.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +message.step.3.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 message.step.3.desc= -message.step.4.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 -message.step.4.desc=\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304C\\u63A5\\u7D9A\\u3059\\u308B\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.storage.traffic=\\u30DB\\u30B9\\u30C8\\u3084 CloudStack \\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306A\\u3069\\u3001\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u901A\\u4FE1\\u3059\\u308B CloudStack \\u306E\\u5185\\u90E8\\u30EA\\u30BD\\u30FC\\u30B9\\u9593\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3067\\u3059\\u3002\\u3053\\u3053\\u3067\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.suspend.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u4E00\\u6642\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.template.desc=VM \\u306E\\u8D77\\u52D5\\u306B\\u4F7F\\u7528\\u3067\\u304D\\u308B OS \\u30A4\\u30E1\\u30FC\\u30B8 -message.tooltip.dns.1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.tooltip.dns.2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E VM \\u3067\\u4F7F\\u7528\\u3059\\u308B 2 \\u756A\\u76EE\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.tooltip.internal.dns.1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E CloudStack \\u5185\\u90E8\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.tooltip.internal.dns.2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E CloudStack \\u5185\\u90E8\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.tooltip.network.domain=DNS \\u30B5\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9\\u3067\\u3059\\u3002\\u3053\\u306E\\u30B5\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9\\u304B\\u3089\\u30B2\\u30B9\\u30C8 VM \\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3059\\u308B\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30AB\\u30B9\\u30BF\\u30E0 \\u30C9\\u30E1\\u30A4\\u30F3\\u540D\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002 -message.tooltip.pod.name=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 -message.tooltip.reserved.system.gateway=\\u30DD\\u30C3\\u30C9\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306E\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3067\\u3059\\u3002 -message.tooltip.reserved.system.netmask=\\u30DD\\u30C3\\u30C9\\u306E\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u3092\\u5B9A\\u7FA9\\u3059\\u308B\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30D7\\u30EC\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9\\u3067\\u3059\\u3002CIDR \\u8868\\u8A18\\u3092\\u4F7F\\u7528\\u3057\\u307E\\u3059\\u3002 -message.tooltip.zone.name=\\u30BE\\u30FC\\u30F3\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 -message.update.os.preference=\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u306E OS \\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u540C\\u69D8\\u306E\\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u6301\\u3064\\u3059\\u3079\\u3066\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306F\\u3001\\u5225\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u9078\\u629E\\u3059\\u308B\\u524D\\u306B\\u307E\\u305A\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u306B\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u307E\\u3059\\u3002 -message.update.resource.count=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u6570\\u3092\\u66F4\\u65B0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.update.ssl=\\u5404\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3067\\u66F4\\u65B0\\u3059\\u308B\\u3001X.509 \\u6E96\\u62E0\\u306E\\u65B0\\u3057\\u3044 SSL \\u8A3C\\u660E\\u66F8\\u3092\\u9001\\u4FE1\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\: -message.validate.instance.name=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u540D\\u306F 63 \\u6587\\u5B57\\u4EE5\\u5185\\u3067\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002ASCII \\u6587\\u5B57\\u306E a\\uFF5Ez\\u3001A\\uFF5EZ\\u3001\\u6570\\u5B57\\u306E 0\\uFF5E9\\u3001\\u304A\\u3088\\u3073\\u30CF\\u30A4\\u30D5\\u30F3\\u306E\\u307F\\u3092\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u3059\\u3002\\u6587\\u5B57\\u3067\\u59CB\\u307E\\u308A\\u3001\\u6587\\u5B57\\u307E\\u305F\\u306F\\u6570\\u5B57\\u3067\\u7D42\\u308F\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.virtual.network.desc=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u5C02\\u7528\\u4EEE\\u60F3\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3067\\u3059\\u3002\\u30D6\\u30ED\\u30FC\\u30C9\\u30AD\\u30E3\\u30B9\\u30C8 \\u30C9\\u30E1\\u30A4\\u30F3\\u306F VLAN \\u5185\\u306B\\u914D\\u7F6E\\u3055\\u308C\\u3001\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3078\\u306E\\u30A2\\u30AF\\u30BB\\u30B9\\u306F\\u3059\\u3079\\u3066\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u306B\\u3088\\u3063\\u3066\\u30EB\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0\\u3055\\u308C\\u307E\\u3059\\u3002 -message.vm.create.template.confirm=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u3068 VM \\u304C\\u81EA\\u52D5\\u7684\\u306B\\u518D\\u8D77\\u52D5\\u3055\\u308C\\u307E\\u3059\\u3002 -message.vm.review.launch=\\u6B21\\u306E\\u60C5\\u5831\\u3092\\u53C2\\u7167\\u3057\\u3066\\u3001\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u6B63\\u3057\\u304F\\u8A2D\\u5B9A\\u3057\\u305F\\u3053\\u3068\\u3092\\u78BA\\u8A8D\\u3057\\u3066\\u304B\\u3089\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.volume.create.template.confirm=\\u3053\\u306E\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u30B5\\u30A4\\u30BA\\u306B\\u3088\\u3063\\u3066\\u306F\\u3001\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210\\u306B\\u306F\\u6570\\u5206\\u4EE5\\u4E0A\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.you.must.have.at.least.one.physical.network=\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304C\\u5FC5\\u8981\\u3067\\u3059 -message.Zone.creation.complete=\\u30BE\\u30FC\\u30F3\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F -message.zone.creation.complete.would.you.like.to.enable.this.zone=\\u30BE\\u30FC\\u30F3\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.zone.no.network.selection=\\u9078\\u629E\\u3057\\u305F\\u30BE\\u30FC\\u30F3\\u3067\\u306F\\u3001\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002 -message.zone.step.1.desc=\\u30BE\\u30FC\\u30F3\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.step.4.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +message.step.4.desc=\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u63A5\u7D9A\u3059\u308B\u30D7\u30E9\u30A4\u30DE\u30EA \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.storage.traffic=\u30DB\u30B9\u30C8\u3084 CloudStack \u30B7\u30B9\u30C6\u30E0 VM \u306A\u3069\u3001\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3068\u901A\u4FE1\u3059\u308B CloudStack \u306E\u5185\u90E8\u30EA\u30BD\u30FC\u30B9\u9593\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3067\u3059\u3002\u3053\u3053\u3067\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.suspend.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u4E00\u6642\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.template.desc=VM \u306E\u8D77\u52D5\u306B\u4F7F\u7528\u3067\u304D\u308B OS \u30A4\u30E1\u30FC\u30B8 +message.tooltip.dns.1=\u30BE\u30FC\u30F3\u5185\u306E VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.tooltip.dns.2=\u30BE\u30FC\u30F3\u5185\u306E VM \u3067\u4F7F\u7528\u3059\u308B 2 \u756A\u76EE\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.tooltip.internal.dns.1=\u30BE\u30FC\u30F3\u5185\u306E CloudStack \u5185\u90E8\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.tooltip.internal.dns.2=\u30BE\u30FC\u30F3\u5185\u306E CloudStack \u5185\u90E8\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.tooltip.network.domain=DNS \u30B5\u30D5\u30A3\u30C3\u30AF\u30B9\u3067\u3059\u3002\u3053\u306E\u30B5\u30D5\u30A3\u30C3\u30AF\u30B9\u304B\u3089\u30B2\u30B9\u30C8 VM \u3067\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30AB\u30B9\u30BF\u30E0 \u30C9\u30E1\u30A4\u30F3\u540D\u304C\u4F5C\u6210\u3055\u308C\u307E\u3059\u3002 +message.tooltip.pod.name=\u3053\u306E\u30DD\u30C3\u30C9\u306E\u540D\u524D\u3067\u3059\u3002 +message.tooltip.reserved.system.gateway=\u30DD\u30C3\u30C9\u5185\u306E\u30DB\u30B9\u30C8\u306E\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3067\u3059\u3002 +message.tooltip.reserved.system.netmask=\u30DD\u30C3\u30C9\u306E\u30B5\u30D6\u30CD\u30C3\u30C8\u3092\u5B9A\u7FA9\u3059\u308B\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9\u3067\u3059\u3002CIDR \u8868\u8A18\u3092\u4F7F\u7528\u3057\u307E\u3059\u3002 +message.tooltip.zone.name=\u30BE\u30FC\u30F3\u306E\u540D\u524D\u3067\u3059\u3002 +message.update.os.preference=\u3053\u306E\u30DB\u30B9\u30C8\u306E OS \u57FA\u672C\u8A2D\u5B9A\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u540C\u69D8\u306E\u57FA\u672C\u8A2D\u5B9A\u3092\u6301\u3064\u3059\u3079\u3066\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306F\u3001\u5225\u306E\u30DB\u30B9\u30C8\u3092\u9078\u629E\u3059\u308B\u524D\u306B\u307E\u305A\u3053\u306E\u30DB\u30B9\u30C8\u306B\u5272\u308A\u5F53\u3066\u3089\u308C\u307E\u3059\u3002 +message.update.resource.count=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30EA\u30BD\u30FC\u30B9\u6570\u3092\u66F4\u65B0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.update.ssl=\u5404\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3067\u66F4\u65B0\u3059\u308B\u3001X.509 \u6E96\u62E0\u306E\u65B0\u3057\u3044 SSL \u8A3C\u660E\u66F8\u3092\u9001\u4FE1\u3057\u3066\u304F\u3060\u3055\u3044\: +message.validate.instance.name=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u540D\u306F 63 \u6587\u5B57\u4EE5\u5185\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002ASCII \u6587\u5B57\u306E a\uFF5Ez\u3001A\uFF5EZ\u3001\u6570\u5B57\u306E 0\uFF5E9\u3001\u304A\u3088\u3073\u30CF\u30A4\u30D5\u30F3\u306E\u307F\u3092\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002\u6587\u5B57\u3067\u59CB\u307E\u308A\u3001\u6587\u5B57\u307E\u305F\u306F\u6570\u5B57\u3067\u7D42\u308F\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.virtual.network.desc=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u5C02\u7528\u4EEE\u60F3\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3067\u3059\u3002\u30D6\u30ED\u30FC\u30C9\u30AD\u30E3\u30B9\u30C8 \u30C9\u30E1\u30A4\u30F3\u306F VLAN \u5185\u306B\u914D\u7F6E\u3055\u308C\u3001\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3078\u306E\u30A2\u30AF\u30BB\u30B9\u306F\u3059\u3079\u3066\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u306B\u3088\u3063\u3066\u30EB\u30FC\u30C6\u30A3\u30F3\u30B0\u3055\u308C\u307E\u3059\u3002 +message.vm.create.template.confirm=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3059\u308B\u3068 VM \u304C\u81EA\u52D5\u7684\u306B\u518D\u8D77\u52D5\u3055\u308C\u307E\u3059\u3002 +message.vm.review.launch=\u6B21\u306E\u60C5\u5831\u3092\u53C2\u7167\u3057\u3066\u3001\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u6B63\u3057\u304F\u8A2D\u5B9A\u3057\u305F\u3053\u3068\u3092\u78BA\u8A8D\u3057\u3066\u304B\u3089\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.volume.create.template.confirm=\u3053\u306E\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u30DC\u30EA\u30E5\u30FC\u30E0 \u30B5\u30A4\u30BA\u306B\u3088\u3063\u3066\u306F\u3001\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210\u306B\u306F\u6570\u5206\u4EE5\u4E0A\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 +message.you.must.have.at.least.one.physical.network=\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304C\u5FC5\u8981\u3067\u3059 +message.Zone.creation.complete=\u30BE\u30FC\u30F3\u304C\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F +message.zone.creation.complete.would.you.like.to.enable.this.zone=\u30BE\u30FC\u30F3\u304C\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F\u3002\u3053\u306E\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.zone.no.network.selection=\u9078\u629E\u3057\u305F\u30BE\u30FC\u30F3\u3067\u306F\u3001\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3067\u304D\u307E\u305B\u3093\u3002 +message.zone.step.1.desc=\u30BE\u30FC\u30F3\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 message.zone.step.2.desc=\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084Zone\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e5\u0085\u00a5\u00e5\u008a\u009b\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 message.zone.step.3.desc=\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084Pod\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e5\u0085\u00a5\u00e5\u008a\u009b\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 -message.zoneWizard.enable.local.storage=\\u8B66\\u544A\: \\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u306E\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u8D77\\u52D5\\u5834\\u6240\\u306B\\u5FDC\\u3058\\u3066\\u6B21\\u306E\\u64CD\\u4F5C\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002

    1. \\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3067\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4F5C\\u6210\\u3057\\u305F\\u5F8C\\u3067\\u30BE\\u30FC\\u30F3\\u306B\\u8FFD\\u52A0\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u307E\\u305F\\u3001\\u7121\\u52B9\\u72B6\\u614B\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u3082\\u3042\\u308A\\u307E\\u3059\\u3002

    2. \\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3067\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001system.vm.use.local.storage \\u3092 true \\u306B\\u8A2D\\u5B9A\\u3057\\u3066\\u304B\\u3089\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002


    \\u7D9A\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -mode=\\u30E2\\u30FC\\u30C9 -network.rate=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u901F\\u5EA6 -notification.reboot.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u518D\\u8D77\\u52D5 -notification.start.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u8D77\\u52D5 -notification.stop.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u505C\\u6B62 -side.by.side=\\u4E26\\u5217 -state.Accepted=\\u627F\\u8AFE\\u6E08\\u307F -state.Active=\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6 -state.Allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F -state.Allocating=\\u5272\\u308A\\u5F53\\u3066\\u4E2D -state.BackedUp=\\u30D0\\u30C3\\u30AF\\u30A2\\u30C3\\u30D7\\u6E08\\u307F -state.BackingUp=\\u30D0\\u30C3\\u30AF\\u30A2\\u30C3\\u30D7\\u4E2D -state.Completed=\\u5B8C\\u4E86 -state.Creating=\\u4F5C\\u6210\\u4E2D -state.Declined=\\u8F9E\\u9000 -state.Destroyed=\\u7834\\u68C4\\u6E08\\u307F -state.Disabled=\\u7121\\u52B9 -state.enabled=\\u6709\\u52B9 -state.Enabled=\\u6709\\u52B9 -state.Error=\\u30A8\\u30E9\\u30FC -state.Expunging=\\u62B9\\u6D88\\u4E2D -state.Migrating=\\u79FB\\u884C\\u4E2D -state.Pending=\\u4FDD\\u7559 -state.ready=\\u6E96\\u5099\\u5B8C\\u4E86 -state.Ready=\\u6E96\\u5099\\u5B8C\\u4E86 -state.Running=\\u5B9F\\u884C\\u4E2D -state.Starting=\\u958B\\u59CB\\u4E2D -state.Stopped=\\u505C\\u6B62\\u6E08\\u307F -state.Stopping=\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059 -state.Suspended=\\u4E00\\u6642\\u505C\\u6B62 -ui.listView.filters.all=\\u3059\\u3079\\u3066 -ui.listView.filters.mine=\\u81EA\\u5206\\u306E\\u3082\\u306E +message.zoneWizard.enable.local.storage=\u8B66\u544A\: \u3053\u306E\u30BE\u30FC\u30F3\u306E\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u6709\u52B9\u306B\u3059\u308B\u5834\u5408\u306F\u3001\u30B7\u30B9\u30C6\u30E0 VM \u306E\u8D77\u52D5\u5834\u6240\u306B\u5FDC\u3058\u3066\u6B21\u306E\u64CD\u4F5C\u304C\u5FC5\u8981\u3067\u3059\u3002

    1. \u30B7\u30B9\u30C6\u30E0 VM \u3092\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3067\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u5834\u5408\u306F\u3001\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4F5C\u6210\u3057\u305F\u5F8C\u3067\u30BE\u30FC\u30F3\u306B\u8FFD\u52A0\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u307E\u305F\u3001\u7121\u52B9\u72B6\u614B\u306E\u30BE\u30FC\u30F3\u3092\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u3082\u3042\u308A\u307E\u3059\u3002

    2. \u30B7\u30B9\u30C6\u30E0 VM \u3092\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8\u3067\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u5834\u5408\u306F\u3001system.vm.use.local.storage \u3092 true \u306B\u8A2D\u5B9A\u3057\u3066\u304B\u3089\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002


    \u7D9A\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +mode=\u30E2\u30FC\u30C9 +network.rate=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u901F\u5EA6 +notification.reboot.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u518D\u8D77\u52D5 +notification.start.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u8D77\u52D5 +notification.stop.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u505C\u6B62 +side.by.side=\u4E26\u5217 +state.Accepted=\u627F\u8AFE\u6E08\u307F +state.Active=\u30A2\u30AF\u30C6\u30A3\u30D6 +state.Allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F +state.Allocating=\u5272\u308A\u5F53\u3066\u4E2D +state.BackedUp=\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u6E08\u307F +state.BackingUp=\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u4E2D +state.Completed=\u5B8C\u4E86 +state.Creating=\u4F5C\u6210\u4E2D +state.Declined=\u8F9E\u9000 +state.Destroyed=\u7834\u68C4\u6E08\u307F +state.Disabled=\u7121\u52B9 +state.enabled=\u6709\u52B9 +state.Enabled=\u6709\u52B9 +state.Error=\u30A8\u30E9\u30FC +state.Expunging=\u62B9\u6D88\u4E2D +state.Migrating=\u79FB\u884C\u4E2D +state.Pending=\u4FDD\u7559 +state.ready=\u6E96\u5099\u5B8C\u4E86 +state.Ready=\u6E96\u5099\u5B8C\u4E86 +state.Running=\u5B9F\u884C\u4E2D +state.Starting=\u958B\u59CB\u4E2D +state.Stopped=\u505C\u6B62\u6E08\u307F +state.Stopping=\u505C\u6B62\u3057\u3066\u3044\u307E\u3059 +state.Suspended=\u4E00\u6642\u505C\u6B62 +ui.listView.filters.all=\u3059\u3079\u3066 +ui.listView.filters.mine=\u81EA\u5206\u306E\u3082\u306E diff --git a/client/WEB-INF/classes/resources/messages_nb_NO.properties.native b/client/WEB-INF/classes/resources/messages_nb_NO.properties.native new file mode 100644 index 00000000000..026a247e082 --- /dev/null +++ b/client/WEB-INF/classes/resources/messages_nb_NO.properties.native @@ -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. + +changed.item.properties=Endrede egenskaper +error.could.not.enable.zone=Kunne ikke aktivere sonen +error.installWizard.message=Noe gikk galt. Gå tilbake og korriger feilene. +error.password.not.match=Passordfeltene sammensvarer ikke +error.something.went.wrong.please.correct.the.following=Noe gikk galt. Vennligst korrigér følgende +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åndbredde +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ørt +label.drag.new.position=Dra til ny posisjon +label.edit.network.details=Editér 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ærlagring? +label.installWizard.addPrimaryStorageIntro.title=Legg til primærlagring +label.installWizard.addSecondaryStorageIntro.subtitle=Hva er sekundærlagring? +label.installWizard.addSecondaryStorageIntro.title=Legg til sekundærlagring +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ærrest tilkoblinger +label.load.balancing=Lastbalansering +label.load.balancing.policies=Regler for lastbalansering +label.local.storage=Lokal lagring +label.make.project.owner=Gjør konto prosjekteier +label.management=Administrasjon +label.manage.resources=Behandle ressurser +label.max.public.ips=Maks offentlige IPer +label.max.snapshots=Maks øyeblikksbilder +label.max.templates=Maks maler +label.max.vms=Maks bruker-VMer +label.max.volumes=Maks volumer +label.may.continue=Du kan nå 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ær lagring. +label.migrate.volume=Migrer volumet til en annen primærlagring. +label.move.down.row=Flytt én rad ned +label.move.to.top=Flytt til toppen +label.move.up.row=Flytt én 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 å vise +label.no.thanks=Nei, takk +label.notifications=Notifikasjoner +label.ok=OK +label.order=Rekkefølge +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åminn meg senere +label.remove.ip.range=Fjern IP-rekke +label.removing=Fjerner +label.restart.network=Nettverksomstart +label.restart.required=Omstart påkrevd +label.review=Gjennomgå +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ørt +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åde +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 ønsker å anskaffe en ny IP for dette nettverket +message.action.disable.pod=Vennligst bekreft at du ønsker å aktivere denne poden +message.action.disable.zone=Vennligst bekreft at du ønsker å deaktivere denne sonen. +message.action.enable.cluster=Vennligst bekreft at du ønsker å aktivere denne klyngen. +message.action.enable.pod=Vennligst bekreft at du ønsker å aktivere denne poden. +message.action.enable.zone=Vennligst bekreft at du ønsker å aktivere denne sonen. +message.activate.project=Er du sikker på du ønsker å aktivere dette prosjektet? +message.add.guest.network=Vennligst bekreft at du ønsker å 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 ønsker å fjerne denne ruteren +message.confirm.disable.provider=Vennligst bekreft at du ønsker å deaktivere denne tilbyderen +message.confirm.enable.provider=Vennligst bekreft at du ønsker å aktivere denne tilbyderen +message.confirm.join.project=Vennligst bekreft at du ønsker å delta i dette prosjektet. +message.confirm.shutdown.provider=Vennligst bekreft at du ønsker å stenge denne tilbyderen +message.create.template=Er du sikker på at du ønsker å lage malen? +message.creating.cluster=Oppretter klynge +message.creating.pod=Oppretter pod +message.creating.primary.storage=Oppretter primærlagring +message.creating.secondary.storage=Oppretter sekundærlagring +message.decline.invitation=Er du sikker på du ønsker å avvise denne prosjektinvitasjonen? +message.delete.project=Er du sikker på du ønsker å slette dette prosjektet? +message.detach.disk=Er du sikker på at du ønsker å frakoble denne disken? +message.download.volume.confirm=Vennligst bekreft at du ønsker å laste ned dette volumet +message.enable.vpn=Vennligst bekreft at du ønsker å 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å knappen for å prøve oppstart på nytt. +message.installWizard.tooltip.addCluster.name=Klyngenavnet. Dette kan være 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å subnettet gjestene vil bruke. +message.installWizard.tooltip.addPrimaryStorage.name=Navnet på 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å hver vert hvor denne primære 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ær 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å 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å 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å 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ør instansveiviseren. +message.ip.address.changed=Din IP-adresse kan ha endret seg. Ønsker du å oppdatere visningen? Merk at detaljvisningen vil i såfall lukkes. +message.iso.desc=Diskimage som inneholder data etter oppstartsbar media for OS +message.join.project=Du har nå deltatt i et prosjekt. Vennligst bytt til prosjektvisning for å se prosjektet. +message.migrate.instance.to.host=Vennligst bekreft at du ønsker å migrere instansen til en annen vert. +message.migrate.instance.to.ps=Vennligst bekreft at du ønsker å migrere instansen til en annen sekundær lagring. +message.migrate.volume=Vennligst bekreft at du ønsker å migrere volumet til en annen primærlagring. +message.no.projects.adminOnly=Du har ingen prosjekter.
    Vennligst be din administrator om å opprette et nytt prosjekt. +message.no.projects=Du har ingen prosjekter.
    Vennligst opprett et nytt fra prosjektseksjonen. +message.pending.projects.1=Du har følgende prosjektinvitasjoner\: +message.pending.projects.2=For å se, vennligst gå til prosjektseksjonen og velg invitasjoner fra nedtrekksmenyen. +message.please.add.at.lease.one.traffic.range=Vennligst legg til minst étt trafikknivå +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ør 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å 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å stoppes før man forsøker å bytte nåværende 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 ønsker å pause dette prosjektet? +message.template.desc=OS-image som kan brukes til å starte VMer +message.vm.review.launch=Vennligst vurder følgende informasjon og bekreft at din virtuelle instans er korrekt før kjøring +message.you.must.have.at.least.one.physical.network=Du trenger minst ett fysisk nettverk +message.Zone.creation.complete=Opprettelsen av sonen utført +message.zone.creation.complete.would.you.like.to.enable.this.zone=Soneopprettelse fullført. Ønsker du å 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ørt +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ører +state.Starting=Starter +state.Stopped=Stoppet +state.Suspended=Pauset +ui.listView.filters.all=Alle +ui.listView.filters.mine=Mine From 9f5fc3833c25c296840d949e0f426ac8cb7f8620 Mon Sep 17 00:00:00 2001 From: Milamber Date: Thu, 25 Apr 2013 00:52:01 +0000 Subject: [PATCH 403/607] Revert "CLOUDSTACK-2138: fix an issue on JA (japanese) resource file" This reverts commit 26029f0a268cf509b82b5b07ded0bc46b29bdb1b. --- .../resources/messages_ca.properties.native | 306 -- .../messages_de_DE.properties.native | 747 ----- .../classes/resources/messages_es.properties | 861 ------ .../messages_it_IT.properties.native | 618 ---- .../classes/resources/messages_ja.properties | 2704 ++++++++--------- .../messages_nb_NO.properties.native | 365 --- 6 files changed, 1352 insertions(+), 4249 deletions(-) delete mode 100644 client/WEB-INF/classes/resources/messages_ca.properties.native delete mode 100644 client/WEB-INF/classes/resources/messages_de_DE.properties.native delete mode 100644 client/WEB-INF/classes/resources/messages_es.properties delete mode 100644 client/WEB-INF/classes/resources/messages_it_IT.properties.native delete mode 100644 client/WEB-INF/classes/resources/messages_nb_NO.properties.native diff --git a/client/WEB-INF/classes/resources/messages_ca.properties.native b/client/WEB-INF/classes/resources/messages_ca.properties.native deleted file mode 100644 index 5f524fed1ea..00000000000 --- a/client/WEB-INF/classes/resources/messages_ca.properties.native +++ /dev/null @@ -1,306 +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. - -confirm.enable.swift=Si us plau ompliu la següent informació per habilitar el suport per a Swift -error.installWizard.message=Quelcom ha fallat, vostè 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ínia -label.accept.project.invitation=Accpetar invitació 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ísica -label.add.rule=Afegir regla -label.add.static.nat.rule=Afegir regla de NAT estàtic -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àrrega -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ó i Emmagatzematge -label.compute=Computació -label.configuration=Configuració -label.configure=Configurar -label.confirm.password=Confirmar contrasenya -label.congratulations=Enorabona\! -label.continue.basic.install=Continueu amb la instal·lació bàsica -label.continue=Continuar -label.corrections.saved=Correccions guardades -label.create.project=Crear projecte -label.decline.invitation=Declinar invitació -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ísica de destí -label.destination.zone=Zona de destí -label.destroy.router=Destruir router -label.dhcp=DHCP -label.disabled=Deshabilitat -label.disable.provider=Deshabilitar proveïdor -label.disable.vpn=Deshabilitar VPN -label.drag.new.position=Arrosegar a la nova posició -label.edit.project.details=Editar detalls del projecte -label.egress.rule=Regla de sortida -label.elastic=Elàstic -label.enable.provider=Habilitar proveïdor -label.enable.swift=Habilitar Swift -label.enable.vpn=Habilitar VPN -label.end.vlan=VLAN fi -label.f5=F5 -label.full.path=Camí 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àfic de MV -label.hints=Pistes -label.installWizard.addClusterIntro.subtitle=Que és un cluster? -label.installWizard.addClusterIntro.title=Anem a afegir un cluster -label.installWizard.addHostIntro.subtitle=Què és un amfitrió "host"? -label.installWizard.addHostIntro.title=Anem a afegir un amfitrió -label.installWizard.addPodIntro.subtitle=Que és un pod? -label.installWizard.addPodIntro.title=Anem a afegir un pod -label.installWizard.addPrimaryStorageIntro.subtitle=Què és l'emmagatzematge primari? -label.installWizard.addPrimaryStorageIntro.title=Anem a afegir emmagatzematge primari -label.installWizard.addSecondaryStorageIntro.subtitle=Què és el emmagatzematge secundari? -label.installWizard.addSecondaryStorageIntro.title=Anem a afegir emmagatzematge secundari -label.installWizard.addZoneIntro.subtitle=Que és 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ó d'inici. -label.installWizard.subtitle=Auqesta guia us ajudarà a configurar la vostra instal·lació de CloudStack&\#8482 -label.installWizard.title=Hola i benvigut a CloudStack&\#8482 -label.introduction.to.cloudstack=Introducció 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àrrega -label.load.balancing.policies=Pol·lítiques de balanceig de càrrega -label.local.storage=Emmagatzemament local -label.make.project.owner=Feu la compta propietària del projecte -label.management=Administració -label.manage.resources=Administrar Recursos -label.max.public.ips=Max. IP públiques -label.max.snapshots=Max. instantànies -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ó -label.migrate.instance.to.host=Migrar instància a un altre amfitrió "Host" -label.migrate.instance.to.ps=Migrar instància 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àcies -label.number.of.clusters=Nombre de clústers -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ísica -label.please.specify.netscaler.info=Si us plau doneu informació del NetScaler -label.pod.name=Nom de rack -label.pods=Racks -label.port.forwarding.policies=Pol·lítiques 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ïdors -label.public.network=Xarxa pública -label.Pxe.server.type=Tipus de servidor PXE -label.redundant.state=Estat redundant -label.remind.later=Recordeu-m'ho després -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àtic -label.remove.vm.from.lb=Treure VM de la regla de balanceig de càrrega -label.removing=Esborrant -label.reserved.system.gateway=Pasarel·la reservada del sistema -label.reserved.system.netmask=Màscara reservada del sistema -label.revoke.project.invite=Revocar invitació -label.root.disk.controller=Controlador de disc arrel -label.save.and.continue=Desa i continua -label.select.a.template=Sel·leccioni una plantilla -label.select.a.zone=Sel·leccioni una zona -label.select.iso.or.template=Sel·leccioni ISO o plantilla -label.select.project=Sel·leccionar projecte -label.select-view=Sel·lecioni vista -label.setup=Configuració -label.shutdown.provider=Apagar proveïdor -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àtic habilitat -label.stickiness=Tendència -label.sticky.mode=Mode -label.storage.traffic=Tràfic d'emmagatzemament -label.subdomain.access=Accés 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çes IP -label.total.of.vm=Total de MV -label.total.storage=Total d'emmagatzemament -label.traffic.types=Tipus de tràfics -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és -label.view=Veure -label.virtual.machines=Màquines virtuals -label.virtual.router=Router virtual -label.what.is.cloudstack=Que és 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àgina, no sereu capaços 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ïdor -message.confirm.enable.provider=Si us plau confirmeu que voleu habilitar aquest proveïdor -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ïdor -message.decline.invitation=Esteu segurs de declinar aquesta invitació 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=¿Esteu 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és VPN per aquesta adreça IP -message.generate.keys=Si us plau confirmeu que voleu generar noves claus per aquest usuari. -message.installWizard.click.retry=Feu clic al botó per tornar a intentar l'inici. -message.installWizard.copy.whatIsSecondaryStorage=L'emmagatzemament secundari s'associa amb una zona, i emmagatzema el següent\:
    • Plantilles - Imatges de SO que es poden fer servir per arrencar MVs i poden incloure altra informació de configuració, com ara aplicacions instal·lades
    • Imatges ISO - Imatges de SO que poden ser arrencables o no
    • Snapshots de disc - copies guardades de dades de MV que poden usar-se per recuperació de dades o crear altres plantilles
    -message.installWizard.tooltip.addCluster.name=Un nom per al cluster. Pot ser un text de la seva elecció i no utilitzat per CloudStack. -message.installWizard.tooltip.addHost.hostname=El nom DNS o adreça de l'amfitrió "host". -message.installWizard.tooltip.addHost.password=Aquesta és la contrasenya per a l'usuari del d'amunt (des de la instal·lació 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 és 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ó. -message.installWizard.tooltip.addPod.reservedSystemGateway=La passarel·la per als amfitrions en aquest pot. -message.installWizard.tooltip.addPod.reservedSystemNetmask=La màscara de xarxa en ús en la subxarxa dels clients a utilitzar -message.installWizard.tooltip.addPod.reservedSystemStartIp=Aquest és 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ó. -message.installWizard.tooltip.addPrimaryStorage.name=El nom per al dispositiu d'emmagatzematge -message.installWizard.tooltip.addPrimaryStorage.path=(per a NFS) A NFS, aquest és el camí exportat des del servidor. Camí (per SharedMountPoint). Amb KVM aquest és el camí 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ça IP o nom DNS del dispositiu d'emmagatzematge. -message.installWizard.tooltip.addSecondaryStorage.nfsServer=L'adreça IP del servidor NFS que allotja l'emmagatzematge secundari -message.installWizard.tooltip.addSecondaryStorage.path=La ruta d'exportació, que es troba en el servidor que s'ha especificat anteriorment -message.installWizard.tooltip.configureGuestTraffic.description=Una descripció de la xarxa -message.installWizard.tooltip.configureGuestTraffic.guestGateway=La passarel·la que els convidats han d'utilitzar -message.installWizard.tooltip.configureGuestTraffic.guestNetmask=La màscara de xarxa en ús 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ància a un altra amfitrió "host" -message.migrate.instance.to.ps=Si us plau, confirmi que vol migrar la instància 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.
    Si us plau demaneu a l'administrador que us en crei un. -message.no.projects=No teniu cap projecte.
    Si us plau creeu-ne un des de la secció de projecte. -message.pending.projects.1=Teniu invitacions pendents. -message.pending.projects.2=Per veure, si us plau aneu a la secció de projectes, i sel·leccioneu invitacions al desplegable. -message.project.invite.sent=Invitació enviada a l'usuari; serà afegit al projecte quan accepti l'invitació -message.select.item=Si us plau sel·leccioneu un article -message.setup.successful=Instal·lació 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és diff --git a/client/WEB-INF/classes/resources/messages_de_DE.properties.native b/client/WEB-INF/classes/resources/messages_de_DE.properties.native deleted file mode 100644 index b1ee867fac2..00000000000 --- a/client/WEB-INF/classes/resources/messages_de_DE.properties.native +++ /dev/null @@ -1,747 +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. - -error.installWizard.message=Ein Fehler ist aufgetreten; Sie können zurückgehen und den Fehler korregieren -error.login=Ihr Benutzername / Passwort stimmt nicht mit uneren unseren Aufzeichnungen überein. -error.session.expired=Ihre Sitzung ist abgelaufen. -force.delete.domain.warning=Achtung\: Diese Auswahl führt zu einer Löschung aller untergeordneten Domains und aller angeschlossenen Konten sowie ihrer Quellen. -force.delete=Erzwinge Löschung -force.remove=Erzwinge Entfernung -force.remove.host.warning=Achtung\: Diese Auswahl wird CloudStack zum sofortigen Anhalten der virtuellen Maschine führen, 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ügen -label.action.attach.disk.processing=Hinzufügen einer Festplatte .... -label.action.attach.iso=ISO hinzufügen -label.action.attach.iso.processing=Hinzufügen einer ISO.... -label.action.cancel.maintenance.mode.processing=Abbruch des Wartungsmodus -label.action.cancel.maintenance.mode=Wartungsmodus abbrechen -label.action.change.password=Passwort ändern -label.action.change.service=Dienst ändern -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äger -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öschen -label.action.delete.account.processing=Löschung des Benutzerkontos .... -label.action.delete.cluster=Löschen des Clusters -label.action.delete.cluster.processing=Löschung des Clusters .... -label.action.delete.disk.offering=Festplatten-Angebot löschen -label.action.delete.disk.offering.processing=Löschen des Festplatten-Angebots .... -label.action.delete.domain=Löschen der Domain -label.action.delete.domain.processing=Löschung der Domain .... -label.action.delete.firewall.processing=Löschung der Firewall .... -label.action.delete.ingress.rule.processing=Löschen der Zutrittsregel .... -label.action.delete.ingress.rule=Zutrittsregel löschen -label.action.delete.IP.range=IP-Bereich löschen -label.action.delete.IP.range.processing=Löschen von IP-Bereich .... -label.action.delete.ISO=ISO löschen -label.action.delete.ISO.processing=Löschen der ISO .... -label.action.delete.load.balancer.processing=Beendigung der Serverlastverteilung.... -label.action.delete.network=Löschen des Netzwerks -label.action.delete.network.processing=Löschung des Netzwerks .... -label.action.delete.pod=Pod löschen -label.action.delete.pod.processing=Löschen des Pod .... -label.action.delete.primary.storage=Hauptspeicher löschen -label.action.delete.primary.storage.processing=Löschen des Hauptspeichers .... -label.action.delete.secondary.storage.processing=Löschen des Sekundärspeichers.... -label.action.delete.secondary.storage=Sekundärspeicher löschen -label.action.delete.security.group.processing=Löschen der Sicherheitsgruppe .... -label.action.delete.security.group=Sicherheitsgruppe löschen -label.action.delete.service.offering.processing=Löschen des Serviceangebots .... -label.action.delete.service.offering=Serviceangebot löschen -label.action.delete.snapshot.processing=Löschen des Schnappschusses.... -label.action.delete.snapshot=Schnappschuss löschen -label.action.delete.template.processing=Löschen der Vorlage .... -label.action.delete.template=Vorlage löschen -label.action.delete.user=Benutzer löschen -label.action.delete.user.processing=Löschung des Benutzers .... -label.action.delete.volume=Datenträger löschen -label.action.delete.volume.processing=Löschen des Datenträgers.... -label.action.delete.zone.processing=Löschen der Zone .... -label.action.delete.zone=Zone löschen -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üssel -label.action.generate.keys=Schlüssel 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öffentlichen -label.action.release.ip.processing=Veröffentlichung der IP.... -label.action.remove.host=Host entfernen -label.action.remove.host.processing=Entfernen des Hosts.... -label.action.reset.password=Passwort zurücksetzen -label.action.reset.password.processing=Zurücksetzen 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ässigung des Clusters .... -label.action.unmanage.cluster=Vernachlässige Cluster -label.action.update.OS.preference=Betriebssystem Präverenz aktualisieren -label.action.update.OS.preference.processing=Aktualisierung der Betriebssystem Präverenz.... -label.active.sessions=Aktive Sitzungen -label.add.account=Konto hinzufügen -label.add.by.cidr=Hinzufügen durch CIDR -label.add.by.group=Hinzufügen durch Gruppe -label.add.cluster=Cluster hinzufügen -label.add.direct.iprange=Direkten Ip-Bereich hinzufügen -label.add.disk.offering=Festplatten-Angebot hinzufügen -label.add.domain=Domain hinzufügen -label.add=Hinzufügen -label.add.host=Host hinzufügen -label.adding.cluster=Cluster hinzufügen -label.adding.failed=Hinzufügen fehlgeschlagen -label.adding=Hinzufügen -label.adding.pod=Hinzufügen des Pods -label.adding.processing=Hinzufügen.... -label.add.ingress.rule=Zutrittsregel hinzufügen -label.adding.succeeded=Erfolgreich hinzugefügt -label.adding.user=Nutzer hinzufügen -label.adding.zone=Hinzufügen der Zone -label.add.ip.range=IP Bereich hinzufügen -label.additional.networks=Zusätzliche Networks -label.add.load.balancer=Serverlastverteilung hinzufügen -label.add.more=Mehr hinzufügen -label.add.network.device=Hinzufügen eines Netzwerkgerätes -label.add.network=Netzwerk hinzufügen -label.add.pod=Pod hinzufügen -label.add.primary.storage=Hauptspeicher hinzufügen -label.add.secondary.storage=Sekundärspeicher hinzufügen -label.add.security.group=Sicherheitsgruppe hinzufügen -label.add.service.offering=Service-Angebot hinzufügen -label.add.system.service.offering=System-Service-Angebot hinzufügen -label.add.template=Vorlage hinzufügen -label.add.user=Benutzer hinzufügen -label.add.vlan=VLAN hinzufügen -label.add.volume=Volume hinzufügen -label.add.zone=Zone hinzufügen -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üssel -label.assign.to.load.balancer=Instanz zum Lastverteiler hinzufügen -label.assign=Zuweisen -label.associated.network.id=Assozierte Netzwerk ID -label.attached.iso=Angehängte ISO -label.availability=Verfügbarkeit -label.availability.zone=Verfügbare Zone -label.available.public.ips=Verfügbaren öffentlichen IP-Adressen -label.available=Verfügbar -label.back=Zurück -label.basic.mode=Grundmodus -label.bootable=Bootbar -label.broadcast.domain.type=Benachrichtigung an alle Nutzer über Domain Typ -label.by.account=Nach Benutzerkonto -label.by.availability=Nach Verfügbarkeit -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=über 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ätigung -label.congratulations=Herzlichen Glückwunsch -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=überschneidende Zonen -label.custom.disk.size=Benutzerdefinierte Festplattengrösse -label.daily=Täglich -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öschen -label.deleting.failed=Löschen fehlgeschlagen -label.deleting.processing=Löschen .... -label.description=Beschreibung -label.destroy=Zerstören -label.detaching.disk=Entfernen der Festplatte -label.details=Details -label.device.id=Geräte-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öße -label.disk.size.gb=Festplattengröße (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ührungszeichen 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ündlich -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ügen -label.installWizard.addHostIntro.subtitle=Was ist ein host? -label.installWizard.addHostIntro.title=host hinzufügen -label.installWizard.addPodIntro.subtitle=Was ist ein pod? -label.installWizard.addPodIntro.title=pod hinzufügen -label.installWizard.addPrimaryStorageIntro.subtitle=Was ist primay storage? -label.installWizard.addPrimaryStorageIntro.title=primary storage hinzufügen -label.installWizard.addSecondaryStorageIntro.subtitle=Was ist secondary storage? -label.installWizard.addSecondaryStorageIntro.title=secondary storage -label.installWizard.addZone.title=zone hinzufügen -label.installWizard.click.launch=Bitte den Start Button drücken -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ültige Ganzzahl -label.invalid.number=Ungültige 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önnen 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örte 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älle -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üsse -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ät -label.network.device.type=Netzwerkgerätetyp -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ügbare Aktionen -label.no.alerts=Keine neuen Warnungen -label.no.errors=Keine neuen Fehler -label.no.isos=Kein verfügbaren ISOs -label.no.items=Keine verfügbaren Einträge -label.no=Nein -label.none=Kein -label.no.security.groups=Keine verfügbare 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äferenz -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=Öffentliches Interface -label.public.ips=Öffentliche IP-Adressen -label.public.ip=Öffentliche IP-Adresse -label.public.port=Öffentlicher Port -label.public=Öffentlich -label.public.zone=Öffentliche 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ärspeicher -label.secondary.used=Genutzter Sekundärspeicher -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ängepunkt -label.show.ingress.rule=Zeige Regeln, die den Zutritt steuern -label.size=Größe -label.snapshot.limits=Schnappschuss Grenzen -label.snapshot.name=Schnappschuss Name -label.snapshot=Schnappschuss -label.snapshots=Schnappschüsse -label.snapshot.s=Schnappschuss (Schnappschüsse) -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=Überreichen -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ügbar -label.unlimited=uneingeschränkt -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ügen -label.vm.destroy=Zerstören -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öchentlich -label.welcome=Willkommen -label.yes=Ja -label.zone.id=Zone ID -label.zone=Zone -message.acquire.public.ip=Bitte wählen Sie eine Zone, von der Sie Ihre neue IP erlangen möchten. -message.action.cancel.maintenance=Ihr Host ist erfolgreich für die Wartung abgebrochen. Dieser Prozess kann ein paar Minuten dauern. -message.action.cancel.maintenance.mode=Bitte bestätigen Sie, dass Sie die Wartung abbrechen möchten. -message.action.change.service.warning.for.instance=Ihre Instanz muss zuerst unterbrochen werden, bevor Sie Ihr derzeitiges Service-Angebot ändern möchten. -message.action.change.service.warning.for.router=Ihre Instanz muss zuerst unterbrochen werden, bevor Sie Ihr derzeitiges Service-Angebot ändern möchten. -message.action.delete.cluster=Bitte bestätigen Sie, dass Sie dieses Cluster löschen möchten. -message.action.delete.disk.offering=Bitte bestätigen Sie, dass Sie dieses Festplatten-Angebot löschen möchten. -message.action.delete.domain=Bitte bestätigen Sie, dass Sie diese Domain löschen möchten. -message.action.delete.ingress.rule=Bitte bestätigen Sie, dass Sie diese Zutrittsregel löschen wollen. -message.action.delete.ISO=Bitte bestätigen Sie, dass Sie diese ISO löschen möchten. -message.action.delete.ISO.for.all.zones=Die ISO gilt für alle Zonen. Bitte bestätigen Sie, dass Sie diese aus allen Zonen löschen möchten. -message.action.delete.network=Bitte bestätigen Sie, dass Sie dieses Netzwerk löschen möchten. -message.action.delete.pod=Bitte bestätigen Sie, dass Sie dieses pod löschen möchten. -message.action.delete.primary.storage=Bitte bestätigen Sie, dass Sie diese Hauptspeicher löschen möchten. -message.action.delete.secondary.storage=Bitte bestätigen Sie, dass Sie diesen Sekundärspeicher löschen möchten. -message.action.delete.security.group=Bitte bestätigen Sie, dass Sie diese Sicherheitsgruppe löschen möchten. -message.action.delete.service.offering=Bitte bestätigen Sie, dass Sie diesen Service-Angebot löschen möchten. -message.action.delete.snapshot=Bitte bestätigen Sie, dass Sie diesen Schnappschuss löschen möchten. -message.action.delete.template=Bitte bestätigen Sie, dass Sie diese Vorlage löschen möchten. -message.action.delete.template.for.all.zones=Die Vorlage wird für alle Zonen genutzt. Bitte bestätigen Sie, dass Sie diese für alle Zonen löschen möchten. -message.action.delete.volume=Bitte bestätigen Sie, dass Sie dieses Volume löschen möchten. -message.action.delete.zone=Bitte bestätigen Sie, dass Sie diese Zone löschen möchten. -message.action.destroy.instance=Bitte bestätigen Sie, dass Sie diese Instanz löschen möchten. -message.action.destroy.systemvm=Bitte bestätigen Sie, dass Sie die System VM zerstören möchten. -message.action.disable.cluster=Bitte bestätigen Sie, dass Sie diesen Cluster deaktivieren möchten. -message.action.disable.pod=Bitte bestätigen Sie, dass Sie diesen Pod deaktivieren möchten. -message.action.disable.static.NAT=Bitte bestätigen Sie, dass Sie die statische NAT deaktivieren möchten. -message.action.disable.zone=Bitte bestätigen Sie, dass Sie diese Zone deaktivieren möchten. -message.action.enable.cluster=Bitte bestätigen Sie, dass Sie diesen Cluster aktivieren möchten. -message.action.enable.pod=Bitte bestätigen Sie, dass Sie diesen Pod aktivieren möchten. -message.action.enable.zone=Bitte bestätigen Sie, dass Sie diese Zone aktivieren möchten. -message.action.instance.reset.password=Bitte bestätigen Sie, dass Sie das ROOT Passwort für diese virtuelle Maschine ändern möchten. -message.action.manage.cluster=Bitte bestätigen Sie, dass das Cluster bearbeitet werden soll. -message.action.reboot.instance=Bitte bestätigen Sie, dass Sie diese Instanz neustarten möchten. -message.action.reboot.systemvm=Bitte bestätigen Sie, dass Sie diese System VM neustarten möchten. -message.action.reset.password.off=Ihre Instanz unterschützt derzeitig nicht dieses Feature. -message.action.reset.password.warning=Ihre Instanz muss zuerst unterbrochen werden, bevor Sie Ihr derzeitiges Passwort ändern können. -message.action.restore.instance=Bitte bestätigen Sie, dass Sie diese Instanz wiederherstellen möchten. -message.action.start.instance=Bitte bestätigen Sie, dass Sie diese Instanz starten möchten. -message.action.start.router=Bitte bestätigen Sie, dass Sie diesen Router starten möchten. -message.action.start.systemvm=Bitte bestätigen Sie, dass Sie diese System VM starten möchten. -message.action.stop.instance=Bitte bestätigen Sie, dass Sie diese Instanz anhalten möchten. -message.action.stop.systemvm=Bitte bestätigen Sie, dass Sie diese System VM anhalten möchten. -message.action.unmanage.cluster=Bitte bestätigen Sie, dass Sie das Cluster vernachlässigen möchten. -message.add.firewall=Eine Firewall zur Zone hinzufügen -message.add.host=Bitte spezifizieren Sie die folgenden Parameter, um einen neuen Host hinzuzufügen. -message.additional.networks.desc=Bitte wählen Sie ein oder mehrere Netzwerke aus, an die Ihre virtuelle Instanz verbunden wird. -message.add.load.balancer=Einen Lastverteiler zur Zone hinzufügen -message.add.primary=Bitte spezifizieren Sie die folgenden Parameter, um einen neuen Hauptspeicher hinzuzufügen -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ügen. -message.allow.vpn.access=Bitte geben Sie einen Benutzernamen und ein Kennwort für den Benutzer ein, für den Sie VPN-Zugang möchten. -message.apply.snapshot.policy=Sie haben Ihre derzeitige Schnappschuss Richtlinie erfolgreich aktualisiert. -message.attach.iso.confirm=Bitte bestätigen Sie, dass sie die ISO zu Ihrer virtuellen Instanz hinzufügen möchten. -message.change.offering.confirm=Bitte bestätigen Sie, dass Sie das Service-Angebot dieser virtuellen Instanz ändern möchten. -message.copy.iso.confirm=Bitte bestätigen Sie, dass Sie Ihre ISO kopieren möchten und zwar nach -message.delete.account=Bitte bestätigen Sie, dass Sie dieses Benutzerkonto löschen möchten. -message.detach.iso.confirm=Bitte bestätigen Sie, dass Sie die ISO von der virtuellen Instanz trennen möchten. -message.disable.account=Bitte bestätigen Sie, dass Sie Ihr Benutzerkonto deaktivieren möchten. 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ätigen Sie, dass Sie den VPN Zugriff deaktivieren möchten. -message.enable.account=Bitte bestätigen Sie, dass Sie dieses Konto aktivieren möchten. -message.enabled.vpn=Ihr VPN Zugriff ist zurzeit aktiv und via IP können Sie darauf zugreifen -message.enable.vpn.access=VPN ist zurzeit nicht für diese IP Addresse aktiviert. Möchten Sie den VPN Zugriff aktivieren? -message.installWizard.click.retry=Bitte den Start Button für einen neuen Versuch drücken -message.installWizard.tooltip.addCluster.name=Der Name des Clusters. Der Name kann frei gewählt 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=überlicherweise root -message.installWizard.tooltip.addPod.name=Der Name für den pod -message.installWizard.tooltip.addPod.reservedSystemGateway=Das Gateways für 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ür NFS) Bei NFS wird hier der exportierte Pfad (Shared Mount Point) angegeben. Für 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ür 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ür 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ür das Netzwerk -message.migrate.instance.to.host=Bitte bestätigen sie, dass die Instanz auf einen anderen Host migriert werden soll -message.migrate.instance.to.ps=Bitte bestätigen sie, dass sie die Instanz auf einen anderen primären Speicher migrieren wollen. -message.new.user=Spezifieren Sie das folgende um einen neuen Nutzer dem Benutzerkonto hinzuzufügen -message.remove.vpn.access=Bitte bestätigen Sie, dass Sie den VPN-Zugriff vom folgenden Benutzer entfernen möchten. -message.setup.successful=Cloud setup erfolgreich -message.step.1.continue=Bitte wählen Sie eine Vorlage oder ISO, um fortzufahren -message.step.2.continue=Bitte wählen Sie ein Service-Angebot, um fortzufahren -message.step.2.desc= -message.step.3.continue=Bitte wählen Sie ein Festplatten-Angebot, um fortzufahren -message.step.3.desc= -message.step.4.continue=Bitte wählen Sie mindestens ein Netzwerk, um fortzufahren -message.step.4.desc=Bitte wählen Sie Ihr Hauptnetzwerk zu dem Ihre virtuelle Instanz verbunden sein wird. -message.vm.create.template.confirm=Das Erstellen einer Vorlage führt automatisch zu einem Neustart der VM. -message.zone.step.1.desc=Bitte wählen Sie ein Netzwerk-Modell für Ihre Zone. -message.zone.step.2.desc=Bitte geben Sie die folgende Information ein, um eine neue Zone hinzuzufügen -message.zone.step.3.desc=Bitte geben Sie die folgende Information ein, um einen neuen pod hinzuzufügen -network.rate=Netzwerk-Rate -state.Allocated=Zugeteilt -state.Disabled=Deaktiviert -state.Error=Fehler diff --git a/client/WEB-INF/classes/resources/messages_es.properties b/client/WEB-INF/classes/resources/messages_es.properties deleted file mode 100644 index 28f9363724a..00000000000 --- a/client/WEB-INF/classes/resources/messages_es.properties +++ /dev/null @@ -1,861 +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. - -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\: Seleccione una plantilla -label.step.2=Paso 2 -label.step.2.title=Paso 2\: Oferta de Servicio -label.step.3=Paso 3 -label.step.3.title=Paso 3\: Seleccione un disco Ofrenda -label.step.4=Paso 4 -label.step.4.title=Paso 4\: Red -label.step.5=Paso 5 -label.step.5.title=Paso 5\: Revisi\u00c3\u00b3n -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\: ] -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\: Seleccione una red -label.zone.step.2.title=Paso 2\: A\u00c3\u00b1adir una zona -label.zone.step.3.title=Paso 3\: A\u00c3\u00b1adir una vaina -label.zone.step.4.title=Paso 4\: A\u00c3\u00b1adir un rango de IP -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 zona , la consola de -message.add.cluster.zone=A\u00c3\u00b1adir un hipervisor administradas por cl\u00c3\u00baster de zona -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 red en la zona -message.add.ip.range.to.pod=

    A\u00c3\u00b1adir un rango de IP de la vaina\:

    -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\: -message.add.pod=Agregar una vaina nueva zona -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 zona , la consola de -message.add.secondary.storage=A\u00c3\u00b1adir un nuevo almacenamiento de zona -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 * no * 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 XXX de la zona -message.create.template.vm=Crear VM de la plantilla -message.create.template.volume=Por favor, especifique la siguiente informaci\u00c3\u00b3n antes de crear una plantilla de su 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.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 00000 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, haga clic aqu\u00c3\u00ad 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=

    \# de Grupos

    -message.number.hosts=

    \# de Anfitri\u00c3\u00b3n

    -message.number.pods=

    \# de Las vainas

    -message.number.storage=

    \# de Almacenamiento primario

    -message.number.zones=

    \# de Zonas

    -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 pulse Ctrl 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 diff --git a/client/WEB-INF/classes/resources/messages_it_IT.properties.native b/client/WEB-INF/classes/resources/messages_it_IT.properties.native deleted file mode 100644 index a0b63c154f3..00000000000 --- a/client/WEB-INF/classes/resources/messages_it_IT.properties.native +++ /dev/null @@ -1,618 +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. - -changed.item.properties=Elementi delle proprietà 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à 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à 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 è un cluster? -label.installWizard.addClusterIntro.title=Let’s aggiungere un cluster -label.installWizard.addHostIntro.subtitle=Che cosa è un host? -label.installWizard.addHostIntro.title=Let’s aggiungere un host -label.installWizard.addPodIntro.subtitle=Che cosa è un pod? -label.installWizard.addPodIntro.title=Let’s aggiungere un pod -label.installWizard.addPrimaryStorageIntro.subtitle=Che cosa è un primary storage? -label.installWizard.addPrimaryStorageIntro.title=Let’s aggiungere primary storage -label.installWizard.addSecondaryStorageIntro.subtitle=Che cosa è un secondary storage? -label.installWizard.addSecondaryStorageIntro.title=Let’s aggiungere secondary storage -label.installWizard.addZoneIntro.subtitle=Che cosa è 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à 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ù di una riga -label.move.to.bottom=Sposta giù 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à 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à 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à con CloudStack per utilizzi precedenti, si può 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à -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à del Sistema -label.task.completed=Attività 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 è CloudStack&\#8482? -label.xen.traffic.label=Etichetta del traffico via XenServer -label.yes=Sì -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.management=Management\: Traffico di rete tra le risorse interne di CloudStack, incluso qualsiasi componente che comunichi con il Management Server, come ad esempio gli host e le VM di Sistema di CloudStack -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 è 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 è 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 è configurato. NOTA\: Una volta chiusa questa pagina, non sarà più possibile ri-configurare S3. -message.after.enable.swift=Configurazione Swift completata. NOTA\: Una volta che questa pagina viene chiusa, non sarà 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ù 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 è 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 è 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 è 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ù sofisticate. Queto modello di rete fornisce la maggior flessibilità nel definire reti guest e offrendo funzionalità 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à 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 è l'unità organizzativa più grandi in CloudStack, e corrisponde tipicamente ad un datacenter singolo. Le zono offrono isolamento fisico e ridondanza. Una zona è costituita da uno o più pod (ognuno dei quali contiene più host e server di storage primario) ed un server di storage secondario condiviso da tutti i pod appartenenti alla zona. -message.detach.disk=Si è sicuri di voler sganciare questo disco? -message.disable.user=Si prega di confermare di voler disabilitare questo utente. -message.disable.vpn=Si è 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ò essere utilizzato ad esempio per identificare un singolo rack. Gli host appartenenti al pod sono nella stessa subnet.

    Un pod è il secondo componente organizzativo più grande in una installazione CloudStack&\#8482;. I pod sono contenuti in zone. Ogni zona può contenere uno o più pod; in una Installazione di Base, si configura un solo pod nella zona. -message.installWizard.copy.whatIsAZone=Una zona è il componente organizzativo più grande in una installazione CloudStack&\#8482;. Una zona corrisponde solitamente ad un singolo datacenter, sebbene sia consentito avere più zone in un datacenter. Il beneficio di organizzare l'infrastruttura in zone deriva dalla possibilità di creare isolamento e ridondanza. Per esempio, ogni zona può avere la propria configurazione di alimentazione elettrica e collegamenti di rete, e le zone possono essere anche separate geograficamente (anche se non è un requisito). -message.installWizard.copy.whatIsSecondaryStorage=Un Secondary storage è associato ad una zona, ed è utilizzato per la memorizzazione di\:
    • 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
    • Immagini ISO - Immagini OS utilizzabili che possono anche essere non-bootable
    • Snapshot di volumi disco - copie salvate di dati delle VM utilizzabili per il recupero di dati o per la creazione di nuovi template
    -message.installWizard.tooltip.addCluster.name=Un nome per il cluster. Questo può essere assegnato utilizzando testo a scelta e non è utilizzato da CloudStack. -message.installWizard.tooltip.addHost.hostname=Il nome DNS o l'indirizzo IP del sistema host. -message.installWizard.tooltip.addHost.password=Questa è 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 è 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 è 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 è 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 è 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à 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à 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à 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 è 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.
    Si prega di chiedere la creazione di un nuovo progetto al proprio amministratore. -message.no.projects=Non si possiedono progetti.
    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ò richiedere tempo... -message.project.invite.sent=L'invito è stato spedito all'utente; l'utente sarà 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 è 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à 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ò 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.

    E' possibile anche spostare altri tipi di traffico sulla rete fisica in modalità drag and drop. -message.setup.successful=L'installazione del cloud è completata con successo\! -message.specify.url=Si prega di specificare la URL -message.step.2.desc= -message.step.3.desc= -message.suspend.project=Si è 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à 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ò 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, è necessario procedere come segue, a seconda di dove si intende avviare le VM di sistema\:

    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.

    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.


    Si intende procedere? -mode=Modalità -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 diff --git a/client/WEB-INF/classes/resources/messages_ja.properties b/client/WEB-INF/classes/resources/messages_ja.properties index 2380e914a75..7873a2de9a3 100644 --- a/client/WEB-INF/classes/resources/messages_ja.properties +++ b/client/WEB-INF/classes/resources/messages_ja.properties @@ -15,873 +15,873 @@ # specific language governing permissions and limitations # under the License. -changed.item.properties=\u9805\u76EE\u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u306E\u5909\u66F4 +changed.item.properties=\\u9805\\u76EE\\u306E\\u30D7\\u30ED\\u30D1\\u30C6\\u30A3\\u306E\\u5909\\u66F4 confirm.enable.s3=S3\u57fa\u76e4\u30bb\u30ab\u30f3\u30c0\u30ea\u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u6709\u52b9\u5316\u3059\u308b\u305f\u3081\u306b\u306f\u3001\u4ee5\u4e0b\u306e\u60c5\u5831\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044 -confirm.enable.swift=Swift1 \u306E\u30B5\u30DD\u30FC\u30C8\u3092\u6709\u52B9\u306B\u3059\u308B\u306B\u306F\u3001\u6B21\u306E\u60C5\u5831\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -error.could.not.enable.zone=\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F -error.installWizard.message=\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u623B\u3063\u3066\u30A8\u30E9\u30FC\u3092\u4FEE\u6B63\u3067\u304D\u307E\u3059\u3002 -error.invalid.username.password=\u7121\u52B9\u306A\u30E6\u30FC\u30B6\u30FC\u540D\u307E\u305F\u306F\u30D1\u30B9\u30EF\u30FC\u30C9 -error.login=\u30E6\u30FC\u30B6\u30FC\u540D/\u30D1\u30B9\u30EF\u30FC\u30C9\u304C\u8A18\u9332\u3068\u4E00\u81F4\u3057\u307E\u305B\u3093\u3002 +confirm.enable.swift=Swift1 \\u306E\\u30B5\\u30DD\\u30FC\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u306B\\u306F\\u3001\\u6B21\\u306E\\u60C5\\u5831\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +error.could.not.enable.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3067\\u304D\\u307E\\u305B\\u3093\\u3067\\u3057\\u305F +error.installWizard.message=\\u554F\\u984C\\u304C\\u767A\\u751F\\u3057\\u307E\\u3057\\u305F\\u3002\\u623B\\u3063\\u3066\\u30A8\\u30E9\\u30FC\\u3092\\u4FEE\\u6B63\\u3067\\u304D\\u307E\\u3059\\u3002 +error.invalid.username.password=\\u7121\\u52B9\\u306A\\u30E6\\u30FC\\u30B6\\u30FC\\u540D\\u307E\\u305F\\u306F\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 +error.login=\\u30E6\\u30FC\\u30B6\\u30FC\\u540D/\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u304C\\u8A18\\u9332\\u3068\\u4E00\\u81F4\\u3057\\u307E\\u305B\\u3093\\u3002 error.menu.select=\u00e3\u0082\u00a2\u00e3\u0082\u00a4\u00e3\u0083\u0086\u00e3\u0083\u00a0\u00e3\u0081\u008c\u00e9\u0081\u00b8\u00e6\u008a\u009e\u00e3\u0081\u0095\u00e3\u0082\u008c\u00e3\u0081\u00a6\u00e3\u0081\u0084\u00e3\u0081\u00aa\u00e3\u0081\u0084\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0082\u00a2\u00e3\u0082\u00af\u00e3\u0082\u00b7\u00e3\u0083\u00a7\u00e3\u0083\u00b3\u00e3\u0082\u0092\u00e5\u00ae\u009f\u00e8\u00a1\u008c\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u0093\u00e3\u0081\u00a8\u00e3\u0081\u008c\u00e3\u0081\u00a7\u00e3\u0081\u008d\u00e3\u0081\u00be\u00e3\u0081\u009b\u00e3\u0082\u0093 -error.mgmt.server.inaccessible=\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093\u3002\u5F8C\u3067\u518D\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -error.password.not.match=\u30D1\u30B9\u30EF\u30FC\u30C9\u304C\u4E00\u81F4\u3057\u307E\u305B\u3093 -error.please.specify.physical.network.tags=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30BF\u30B0\u3092\u6307\u5B9A\u3057\u306A\u3051\u308C\u3070\u3001\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002 -error.session.expired=\u30BB\u30C3\u30B7\u30E7\u30F3\u306E\u6709\u52B9\u671F\u9650\u304C\u5207\u308C\u307E\u3057\u305F\u3002 -error.something.went.wrong.please.correct.the.following=\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u6B21\u306E\u5185\u5BB9\u3092\u4FEE\u6B63\u3057\u3066\u304F\u3060\u3055\u3044 -error.unable.to.reach.management.server=\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3068\u901A\u4FE1\u3067\u304D\u307E\u305B\u3093 +error.mgmt.server.inaccessible=\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002\\u5F8C\\u3067\\u518D\\u5B9F\\u884C\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +error.password.not.match=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u304C\\u4E00\\u81F4\\u3057\\u307E\\u305B\\u3093 +error.please.specify.physical.network.tags=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30BF\\u30B0\\u3092\\u6307\\u5B9A\\u3057\\u306A\\u3051\\u308C\\u3070\\u3001\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306F\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002 +error.session.expired=\\u30BB\\u30C3\\u30B7\\u30E7\\u30F3\\u306E\\u6709\\u52B9\\u671F\\u9650\\u304C\\u5207\\u308C\\u307E\\u3057\\u305F\\u3002 +error.something.went.wrong.please.correct.the.following=\\u554F\\u984C\\u304C\\u767A\\u751F\\u3057\\u307E\\u3057\\u305F\\u3002\\u6B21\\u306E\\u5185\\u5BB9\\u3092\\u4FEE\\u6B63\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +error.unable.to.reach.management.server=\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u901A\\u4FE1\\u3067\\u304D\\u307E\\u305B\\u3093 error.unresolved.internet.name=\u3042\u306a\u305f\u306e\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u540d\u306f\u89e3\u6c7a\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002 -extractable=\u62BD\u51FA\u53EF\u80FD -force.delete.domain.warning=\u8B66\u544A\: \u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u3059\u3079\u3066\u306E\u5B50\u30C9\u30E1\u30A4\u30F3\u304A\u3088\u3073\u95A2\u9023\u3059\u308B\u3059\u3079\u3066\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3068\u305D\u306E\u30EA\u30BD\u30FC\u30B9\u304C\u524A\u9664\u3055\u308C\u307E\u3059\u3002 -force.delete=\u5F37\u5236\u524A\u9664 -force.remove.host.warning=\u8B66\u544A\: \u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u5B9F\u884C\u4E2D\u306E\u3059\u3079\u3066\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u304C\u5F37\u5236\u7684\u306B\u505C\u6B62\u3055\u308C\u3001\u30AF\u30E9\u30B9\u30BF\u30FC\u304B\u3089\u3053\u306E\u30DB\u30B9\u30C8\u304C\u5F37\u5236\u7684\u306B\u89E3\u9664\u3055\u308C\u307E\u3059\u3002 -force.remove=\u5F37\u5236\u89E3\u9664 -force.stop.instance.warning=\u8B66\u544A\: \u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u5F37\u5236\u505C\u6B62\u306F\u3001\u6700\u7D42\u624B\u6BB5\u306B\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u30C7\u30FC\u30BF\u3092\u640D\u5931\u3059\u308B\u3060\u3051\u3067\u306A\u304F\u3001\u4EEE\u60F3\u30DE\u30B7\u30F3\u306E\u52D5\u4F5C\u304C\u4E00\u8CAB\u3057\u306A\u304F\u306A\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 -force.stop=\u5F37\u5236\u505C\u6B62 -ICMP.code=ICMP \u30B3\u30FC\u30C9 -ICMP.type=ICMP \u306E\u7A2E\u985E -image.directory=\u753B\u50CF\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA -inline=\u76F4\u5217 -instances.actions.reboot.label=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u518D\u8D77\u52D5 -label.accept.project.invitation=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u62DB\u5F85\u306E\u627F\u8AFE -label.account.and.security.group=\u30A2\u30AB\u30A6\u30F3\u30C8\u3001\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 -label.account.id=\u30A2\u30AB\u30A6\u30F3\u30C8 ID -label.account.name=\u30A2\u30AB\u30A6\u30F3\u30C8\u540D -label.account.specific=\u30A2\u30AB\u30A6\u30F3\u30C8\u56FA\u6709 -label.accounts=\u30A2\u30AB\u30A6\u30F3\u30C8 -label.account=\u30A2\u30AB\u30A6\u30F3\u30C8 -label.acquire.new.ip=\u65B0\u3057\u3044 IP \u30A2\u30C9\u30EC\u30B9\u306E\u53D6\u5F97 -label.action.attach.disk.processing=\u30C7\u30A3\u30B9\u30AF\u3092\u30A2\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... -label.action.attach.disk=\u30C7\u30A3\u30B9\u30AF\u306E\u30A2\u30BF\u30C3\u30C1 -label.action.attach.iso=ISO \u306E\u30A2\u30BF\u30C3\u30C1 -label.action.attach.iso.processing=ISO \u3092\u30A2\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... -label.action.cancel.maintenance.mode.processing=\u4FDD\u5B88\u30E2\u30FC\u30C9\u3092\u30AD\u30E3\u30F3\u30BB\u30EB\u3057\u3066\u3044\u307E\u3059... -label.action.cancel.maintenance.mode=\u4FDD\u5B88\u30E2\u30FC\u30C9\u306E\u30AD\u30E3\u30F3\u30BB\u30EB -label.action.change.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u306E\u5909\u66F4 -label.action.change.service.processing=\u30B5\u30FC\u30D3\u30B9\u3092\u5909\u66F4\u3057\u3066\u3044\u307E\u3059... -label.action.change.service=\u30B5\u30FC\u30D3\u30B9\u306E\u5909\u66F4 -label.action.copy.ISO=ISO \u306E\u30B3\u30D4\u30FC -label.action.copy.ISO.processing=ISO \u3092\u30B3\u30D4\u30FC\u3057\u3066\u3044\u307E\u3059... -label.action.copy.template.processing=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u30B3\u30D4\u30FC\u3057\u3066\u3044\u307E\u3059... -label.action.copy.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u30B3\u30D4\u30FC -label.action.create.template.from.vm=VM \u304B\u3089\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u4F5C\u6210 -label.action.create.template.from.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u304B\u3089\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u4F5C\u6210 -label.action.create.template.processing=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059... -label.action.create.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210 -label.action.create.vm.processing=VM \u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059... -label.action.create.vm=VM \u306E\u4F5C\u6210 -label.action.create.volume.processing=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059... -label.action.create.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u4F5C\u6210 -label.action.delete.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u524A\u9664 -label.action.delete.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u524A\u9664 -label.action.delete.disk.offering.processing=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u524A\u9664 -label.action.delete.domain.processing=\u30C9\u30E1\u30A4\u30F3\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.domain=\u30C9\u30E1\u30A4\u30F3\u306E\u524A\u9664 -label.action.delete.firewall.processing=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.firewall=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u898F\u5247\u306E\u524A\u9664 -label.action.delete.ingress.rule.processing=\u53D7\u4FE1\u898F\u5247\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u524A\u9664 -label.action.delete.IP.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u524A\u9664 -label.action.delete.IP.range.processing=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.ISO=ISO \u306E\u524A\u9664 -label.action.delete.ISO.processing=ISO \u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.load.balancer.processing=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.load.balancer=\u8CA0\u8377\u5206\u6563\u898F\u5247\u306E\u524A\u9664 -label.action.delete.network.processing=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u524A\u9664 -label.action.delete.nexusVswitch=Nexus 1000V \u306E\u524A\u9664 -label.action.delete.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u524A\u9664 -label.action.delete.pod.processing=\u30DD\u30C3\u30C9\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.pod=\u30DD\u30C3\u30C9\u306E\u524A\u9664 -label.action.delete.primary.storage.processing=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u524A\u9664 -label.action.delete.secondary.storage.processing=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u524A\u9664 -label.action.delete.security.group.processing=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.security.group=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u306E\u524A\u9664 -label.action.delete.service.offering.processing=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u524A\u9664 -label.action.delete.snapshot.processing=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.snapshot=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u524A\u9664 -label.action.delete.system.service.offering=\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u524A\u9664 -label.action.delete.template.processing=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u524A\u9664 -label.action.delete.user.processing=\u30E6\u30FC\u30B6\u30FC\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.user=\u30E6\u30FC\u30B6\u30FC\u306E\u524A\u9664 -label.action.delete.volume.processing=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u524A\u9664 -label.action.delete.zone.processing=\u30BE\u30FC\u30F3\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.zone=\u30BE\u30FC\u30F3\u306E\u524A\u9664 -label.action.destroy.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u7834\u68C4\u3057\u3066\u3044\u307E\u3059... -label.action.destroy.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u7834\u68C4 -label.action.destroy.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u7834\u68C4\u3057\u3066\u3044\u307E\u3059... -label.action.destroy.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u7834\u68C4 -label.action.detach.disk.processing=\u30C7\u30A3\u30B9\u30AF\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... -label.action.detach.disk=\u30C7\u30A3\u30B9\u30AF\u306E\u30C7\u30BF\u30C3\u30C1 -label.action.detach.iso=ISO \u306E\u30C7\u30BF\u30C3\u30C1 -label.action.detach.iso.processing=ISO \u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... -label.action.disable.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.disable.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u7121\u52B9\u5316 -label.action.disable.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.disable.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u7121\u52B9\u5316 -label.action.disable.nexusVswitch=Nexus 1000V \u306E\u7121\u52B9\u5316 -label.action.disable.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u7121\u52B9\u5316 -label.action.disable.pod.processing=\u30DD\u30C3\u30C9\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.disable.pod=\u30DD\u30C3\u30C9\u306E\u7121\u52B9\u5316 -label.action.disable.static.NAT.processing=\u9759\u7684 NAT \u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.disable.static.NAT=\u9759\u7684 NAT \u306E\u7121\u52B9\u5316 -label.action.disable.user.processing=\u30E6\u30FC\u30B6\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.disable.user=\u30E6\u30FC\u30B6\u30FC\u306E\u7121\u52B9\u5316 -label.action.disable.zone.processing=\u30BE\u30FC\u30F3\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.disable.zone=\u30BE\u30FC\u30F3\u306E\u7121\u52B9\u5316 -label.action.download.ISO=ISO \u306E\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9 -label.action.download.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9 -label.action.download.volume.processing=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3044\u307E\u3059... -label.action.download.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9 -label.action.edit.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u7DE8\u96C6 -label.action.edit.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u7DE8\u96C6 -label.action.edit.domain=\u30C9\u30E1\u30A4\u30F3\u306E\u7DE8\u96C6 -label.action.edit.global.setting=\u30B0\u30ED\u30FC\u30D0\u30EB\u8A2D\u5B9A\u306E\u7DE8\u96C6 -label.action.edit.host=\u30DB\u30B9\u30C8\u306E\u7DE8\u96C6 -label.action.edit.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u7DE8\u96C6 -label.action.edit.ISO=ISO \u306E\u7DE8\u96C6 -label.action.edit.network.offering=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u7DE8\u96C6 -label.action.edit.network.processing=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u7DE8\u96C6\u3057\u3066\u3044\u307E\u3059... -label.action.edit.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u7DE8\u96C6 -label.action.edit.pod=\u30DD\u30C3\u30C9\u306E\u7DE8\u96C6 -label.action.edit.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u7DE8\u96C6 -label.action.edit.resource.limits=\u30EA\u30BD\u30FC\u30B9\u5236\u9650\u306E\u7DE8\u96C6 -label.action.edit.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u7DE8\u96C6 -label.action.edit.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u7DE8\u96C6 -label.action.edit.user=\u30E6\u30FC\u30B6\u30FC\u306E\u7DE8\u96C6 -label.action.edit.zone=\u30BE\u30FC\u30F3\u306E\u7DE8\u96C6 -label.action.enable.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.enable.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u6709\u52B9\u5316 -label.action.enable.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.enable.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u6709\u52B9\u5316 -label.action.enable.maintenance.mode.processing=\u4FDD\u5B88\u30E2\u30FC\u30C9\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.enable.maintenance.mode=\u4FDD\u5B88\u30E2\u30FC\u30C9\u306E\u6709\u52B9\u5316 -label.action.enable.nexusVswitch=Nexus 1000V \u306E\u6709\u52B9\u5316 -label.action.enable.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u6709\u52B9\u5316 -label.action.enable.pod.processing=\u30DD\u30C3\u30C9\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.enable.pod=\u30DD\u30C3\u30C9\u306E\u6709\u52B9\u5316 -label.action.enable.static.NAT.processing=\u9759\u7684 NAT \u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.enable.static.NAT=\u9759\u7684 NAT \u306E\u6709\u52B9\u5316 -label.action.enable.user.processing=\u30E6\u30FC\u30B6\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.enable.user=\u30E6\u30FC\u30B6\u30FC\u306E\u6709\u52B9\u5316 -label.action.enable.zone.processing=\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.enable.zone=\u30BE\u30FC\u30F3\u306E\u6709\u52B9\u5316 -label.action.force.reconnect.processing=\u518D\u63A5\u7D9A\u3057\u3066\u3044\u307E\u3059... -label.action.force.reconnect=\u5F37\u5236\u518D\u63A5\u7D9A -label.action.generate.keys.processing=\u30AD\u30FC\u3092\u751F\u6210\u3057\u3066\u3044\u307E\u3059... -label.action.generate.keys=\u30AD\u30FC\u306E\u751F\u6210 -label.action.list.nexusVswitch=Nexus 1000V \u306E\u4E00\u89A7\u8868\u793A -label.action.lock.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u30ED\u30C3\u30AF\u3057\u3066\u3044\u307E\u3059... -label.action.lock.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30ED\u30C3\u30AF -label.action.manage.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.manage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u7BA1\u7406\u5BFE\u8C61\u5316 -label.action.migrate.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u79FB\u884C\u3057\u3066\u3044\u307E\u3059... -label.action.migrate.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C -label.action.migrate.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u79FB\u884C\u3057\u3066\u3044\u307E\u3059... -label.action.migrate.router=\u30EB\u30FC\u30BF\u30FC\u306E\u79FB\u884C -label.action.migrate.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u79FB\u884C\u3057\u3066\u3044\u307E\u3059... -label.action.migrate.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u79FB\u884C -label.action.reboot.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u518D\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... -label.action.reboot.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u518D\u8D77\u52D5 -label.action.reboot.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... -label.action.reboot.router=\u30EB\u30FC\u30BF\u30FC\u306E\u518D\u8D77\u52D5 -label.action.reboot.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u518D\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... -label.action.reboot.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u518D\u8D77\u52D5 -label.action.recurring.snapshot=\u5B9A\u671F\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 -label.action.register.iso=ISO \u306E\u767B\u9332 -label.action.register.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u767B\u9332 -label.action.release.ip=IP \u30A2\u30C9\u30EC\u30B9\u306E\u89E3\u653E -label.action.release.ip.processing=IP \u30A2\u30C9\u30EC\u30B9\u3092\u89E3\u653E\u3057\u3066\u3044\u307E\u3059... -label.action.remove.host.processing=\u30DB\u30B9\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.remove.host=\u30DB\u30B9\u30C8\u306E\u524A\u9664 -label.action.reset.password.processing=\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u30EA\u30BB\u30C3\u30C8\u3057\u3066\u3044\u307E\u3059... -label.action.reset.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u306E\u30EA\u30BB\u30C3\u30C8 -label.action.resource.limits=\u30EA\u30BD\u30FC\u30B9\u5236\u9650 -label.action.restore.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u5FA9\u5143\u3057\u3066\u3044\u307E\u3059... -label.action.restore.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u5FA9\u5143 -label.action.start.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... -label.action.start.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u8D77\u52D5 -label.action.start.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... -label.action.start.router=\u30EB\u30FC\u30BF\u30FC\u306E\u8D77\u52D5 -label.action.start.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... -label.action.start.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u8D77\u52D5 -label.action.stop.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3057\u3066\u3044\u307E\u3059... -label.action.stop.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u505C\u6B62 -label.action.stop.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u505C\u6B62\u3057\u3066\u3044\u307E\u3059... -label.action.stop.router=\u30EB\u30FC\u30BF\u30FC\u306E\u505C\u6B62 -label.action.stop.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u505C\u6B62\u3057\u3066\u3044\u307E\u3059... -label.action.stop.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u505C\u6B62 -label.actions=\u64CD\u4F5C -label.action.take.snapshot.processing=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059.... -label.action.take.snapshot=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u4F5C\u6210 -label.action.unmanage.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u975E\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.unmanage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u975E\u7BA1\u7406\u5BFE\u8C61\u5316 -label.action.update.OS.preference=OS \u57FA\u672C\u8A2D\u5B9A\u306E\u66F4\u65B0 -label.action.update.OS.preference.processing=OS \u57FA\u672C\u8A2D\u5B9A\u3092\u66F4\u65B0\u3057\u3066\u3044\u307E\u3059... -label.action.update.resource.count.processing=\u30EA\u30BD\u30FC\u30B9\u6570\u3092\u66F4\u65B0\u3057\u3066\u3044\u307E\u3059... -label.action.update.resource.count=\u30EA\u30BD\u30FC\u30B9\u6570\u306E\u66F4\u65B0 -label.activate.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30A2\u30AF\u30C6\u30A3\u30D6\u5316 -label.active.sessions=\u30A2\u30AF\u30C6\u30A3\u30D6\u306A\u30BB\u30C3\u30B7\u30E7\u30F3 -label.add.accounts.to=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u8FFD\u52A0\u5148\: -label.add.accounts=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u8FFD\u52A0 -label.add.account.to.project=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u8FFD\u52A0 -label.add.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u8FFD\u52A0 -label.add.ACL=ACL \u306E\u8FFD\u52A0 -label.add.by.cidr=CIDR \u3067\u8FFD\u52A0 -label.add.by.group=\u30B0\u30EB\u30FC\u30D7\u3067\u8FFD\u52A0 -label.add.by=\u8FFD\u52A0\u5358\u4F4D -label.add.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u8FFD\u52A0 -label.add.compute.offering=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 -label.add.direct.iprange=\u76F4\u63A5 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u8FFD\u52A0 -label.add.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 -label.add.domain=\u30C9\u30E1\u30A4\u30F3\u306E\u8FFD\u52A0 -label.add.egress.rule=\u9001\u4FE1\u898F\u5247\u306E\u8FFD\u52A0 -label.add.F5.device=F5 \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 -label.add.firewall=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u898F\u5247\u306E\u8FFD\u52A0 -label.add.guest.network=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8FFD\u52A0 -label.add.host=\u30DB\u30B9\u30C8\u306E\u8FFD\u52A0 -label.adding.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -label.adding.failed=\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F -label.adding.pod=\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -label.adding.processing=\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059... -label.add.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u8FFD\u52A0 -label.adding.succeeded=\u8FFD\u52A0\u3057\u307E\u3057\u305F -label.adding=\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -label.adding.user=\u30E6\u30FC\u30B6\u30FC\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -label.adding.zone=\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -label.add.ip.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u8FFD\u52A0 -label.additional.networks=\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.add.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306E\u8FFD\u52A0 -label.add.more=\u305D\u306E\u307B\u304B\u306E\u9805\u76EE\u306E\u8FFD\u52A0 -label.add.netScaler.device=Netscaler \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 -label.add.network.ACL=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL \u306E\u8FFD\u52A0 -label.add.network.device=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 -label.add.network.offering=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 -label.add.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8FFD\u52A0 -label.add.new.F5=\u65B0\u3057\u3044 F5 \u306E\u8FFD\u52A0 -label.add.new.gateway=\u65B0\u3057\u3044\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u8FFD\u52A0 -label.add.new.NetScaler=\u65B0\u3057\u3044 NetScaler \u306E\u8FFD\u52A0 -label.add.new.SRX=\u65B0\u3057\u3044 SRX \u306E\u8FFD\u52A0 -label.add.new.tier=\u65B0\u3057\u3044\u968E\u5C64\u306E\u8FFD\u52A0 +extractable=\\u62BD\\u51FA\\u53EF\\u80FD +force.delete.domain.warning=\\u8B66\\u544A\: \\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3059\\u308B\\u3068\\u3001\\u3059\\u3079\\u3066\\u306E\\u5B50\\u30C9\\u30E1\\u30A4\\u30F3\\u304A\\u3088\\u3073\\u95A2\\u9023\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3068\\u305D\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u304C\\u524A\\u9664\\u3055\\u308C\\u307E\\u3059\\u3002 +force.delete=\\u5F37\\u5236\\u524A\\u9664 +force.remove.host.warning=\\u8B66\\u544A\: \\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3059\\u308B\\u3068\\u3001\\u5B9F\\u884C\\u4E2D\\u306E\\u3059\\u3079\\u3066\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u304C\\u5F37\\u5236\\u7684\\u306B\\u505C\\u6B62\\u3055\\u308C\\u3001\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u304B\\u3089\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u304C\\u5F37\\u5236\\u7684\\u306B\\u89E3\\u9664\\u3055\\u308C\\u307E\\u3059\\u3002 +force.remove=\\u5F37\\u5236\\u89E3\\u9664 +force.stop.instance.warning=\\u8B66\\u544A\: \\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u5F37\\u5236\\u505C\\u6B62\\u306F\\u3001\\u6700\\u7D42\\u624B\\u6BB5\\u306B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u30C7\\u30FC\\u30BF\\u3092\\u640D\\u5931\\u3059\\u308B\\u3060\\u3051\\u3067\\u306A\\u304F\\u3001\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306E\\u52D5\\u4F5C\\u304C\\u4E00\\u8CAB\\u3057\\u306A\\u304F\\u306A\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +force.stop=\\u5F37\\u5236\\u505C\\u6B62 +ICMP.code=ICMP \\u30B3\\u30FC\\u30C9 +ICMP.type=ICMP \\u306E\\u7A2E\\u985E +image.directory=\\u753B\\u50CF\\u30C7\\u30A3\\u30EC\\u30AF\\u30C8\\u30EA +inline=\\u76F4\\u5217 +instances.actions.reboot.label=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u518D\\u8D77\\u52D5 +label.accept.project.invitation=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u62DB\\u5F85\\u306E\\u627F\\u8AFE +label.account.and.security.group=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3001\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 +label.account.id=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 ID +label.account.name=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u540D +label.account.specific=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u56FA\\u6709 +label.accounts=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.acquire.new.ip=\\u65B0\\u3057\\u3044 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u53D6\\u5F97 +label.action.attach.disk.processing=\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.attach.disk=\\u30C7\\u30A3\\u30B9\\u30AF\\u306E\\u30A2\\u30BF\\u30C3\\u30C1 +label.action.attach.iso=ISO \\u306E\\u30A2\\u30BF\\u30C3\\u30C1 +label.action.attach.iso.processing=ISO \\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.cancel.maintenance.mode.processing=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u3092\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.cancel.maintenance.mode=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u306E\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB +label.action.change.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u306E\\u5909\\u66F4 +label.action.change.service.processing=\\u30B5\\u30FC\\u30D3\\u30B9\\u3092\\u5909\\u66F4\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.change.service=\\u30B5\\u30FC\\u30D3\\u30B9\\u306E\\u5909\\u66F4 +label.action.copy.ISO=ISO \\u306E\\u30B3\\u30D4\\u30FC +label.action.copy.ISO.processing=ISO \\u3092\\u30B3\\u30D4\\u30FC\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.copy.template.processing=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u30B3\\u30D4\\u30FC\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.copy.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u30B3\\u30D4\\u30FC +label.action.create.template.from.vm=VM \\u304B\\u3089\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u4F5C\\u6210 +label.action.create.template.from.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u304B\\u3089\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u4F5C\\u6210 +label.action.create.template.processing=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.create.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210 +label.action.create.vm.processing=VM \\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.create.vm=VM \\u306E\\u4F5C\\u6210 +label.action.create.volume.processing=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.create.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u4F5C\\u6210 +label.action.delete.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u524A\\u9664 +label.action.delete.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u524A\\u9664 +label.action.delete.disk.offering.processing=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u524A\\u9664 +label.action.delete.domain.processing=\\u30C9\\u30E1\\u30A4\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.domain=\\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u524A\\u9664 +label.action.delete.firewall.processing=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.firewall=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u898F\\u5247\\u306E\\u524A\\u9664 +label.action.delete.ingress.rule.processing=\\u53D7\\u4FE1\\u898F\\u5247\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u524A\\u9664 +label.action.delete.IP.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u524A\\u9664 +label.action.delete.IP.range.processing=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.ISO=ISO \\u306E\\u524A\\u9664 +label.action.delete.ISO.processing=ISO \\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.load.balancer.processing=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u306E\\u524A\\u9664 +label.action.delete.network.processing=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u524A\\u9664 +label.action.delete.nexusVswitch=Nexus 1000V \\u306E\\u524A\\u9664 +label.action.delete.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u524A\\u9664 +label.action.delete.pod.processing=\\u30DD\\u30C3\\u30C9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u524A\\u9664 +label.action.delete.primary.storage.processing=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u524A\\u9664 +label.action.delete.secondary.storage.processing=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u524A\\u9664 +label.action.delete.security.group.processing=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.security.group=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u306E\\u524A\\u9664 +label.action.delete.service.offering.processing=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u524A\\u9664 +label.action.delete.snapshot.processing=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.snapshot=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u524A\\u9664 +label.action.delete.system.service.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u524A\\u9664 +label.action.delete.template.processing=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u524A\\u9664 +label.action.delete.user.processing=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u524A\\u9664 +label.action.delete.volume.processing=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u524A\\u9664 +label.action.delete.zone.processing=\\u30BE\\u30FC\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.delete.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u524A\\u9664 +label.action.destroy.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u7834\\u68C4\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.destroy.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u7834\\u68C4 +label.action.destroy.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u7834\\u68C4\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.destroy.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u7834\\u68C4 +label.action.detach.disk.processing=\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.detach.disk=\\u30C7\\u30A3\\u30B9\\u30AF\\u306E\\u30C7\\u30BF\\u30C3\\u30C1 +label.action.detach.iso=ISO \\u306E\\u30C7\\u30BF\\u30C3\\u30C1 +label.action.detach.iso.processing=ISO \\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.disable.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.disable.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u7121\\u52B9\\u5316 +label.action.disable.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.disable.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u7121\\u52B9\\u5316 +label.action.disable.nexusVswitch=Nexus 1000V \\u306E\\u7121\\u52B9\\u5316 +label.action.disable.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u7121\\u52B9\\u5316 +label.action.disable.pod.processing=\\u30DD\\u30C3\\u30C9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.disable.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u7121\\u52B9\\u5316 +label.action.disable.static.NAT.processing=\\u9759\\u7684 NAT \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.disable.static.NAT=\\u9759\\u7684 NAT \\u306E\\u7121\\u52B9\\u5316 +label.action.disable.user.processing=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.disable.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u7121\\u52B9\\u5316 +label.action.disable.zone.processing=\\u30BE\\u30FC\\u30F3\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.disable.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u7121\\u52B9\\u5316 +label.action.download.ISO=ISO \\u306E\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9 +label.action.download.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9 +label.action.download.volume.processing=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.download.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9 +label.action.edit.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u7DE8\\u96C6 +label.action.edit.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u7DE8\\u96C6 +label.action.edit.domain=\\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u7DE8\\u96C6 +label.action.edit.global.setting=\\u30B0\\u30ED\\u30FC\\u30D0\\u30EB\\u8A2D\\u5B9A\\u306E\\u7DE8\\u96C6 +label.action.edit.host=\\u30DB\\u30B9\\u30C8\\u306E\\u7DE8\\u96C6 +label.action.edit.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u7DE8\\u96C6 +label.action.edit.ISO=ISO \\u306E\\u7DE8\\u96C6 +label.action.edit.network.offering=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u7DE8\\u96C6 +label.action.edit.network.processing=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u7DE8\\u96C6\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.edit.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u7DE8\\u96C6 +label.action.edit.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u7DE8\\u96C6 +label.action.edit.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u7DE8\\u96C6 +label.action.edit.resource.limits=\\u30EA\\u30BD\\u30FC\\u30B9\\u5236\\u9650\\u306E\\u7DE8\\u96C6 +label.action.edit.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u7DE8\\u96C6 +label.action.edit.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u7DE8\\u96C6 +label.action.edit.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u7DE8\\u96C6 +label.action.edit.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u7DE8\\u96C6 +label.action.enable.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.enable.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u6709\\u52B9\\u5316 +label.action.enable.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.enable.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u6709\\u52B9\\u5316 +label.action.enable.maintenance.mode.processing=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.enable.maintenance.mode=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u306E\\u6709\\u52B9\\u5316 +label.action.enable.nexusVswitch=Nexus 1000V \\u306E\\u6709\\u52B9\\u5316 +label.action.enable.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u6709\\u52B9\\u5316 +label.action.enable.pod.processing=\\u30DD\\u30C3\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.enable.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u6709\\u52B9\\u5316 +label.action.enable.static.NAT.processing=\\u9759\\u7684 NAT \\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.enable.static.NAT=\\u9759\\u7684 NAT \\u306E\\u6709\\u52B9\\u5316 +label.action.enable.user.processing=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.enable.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u6709\\u52B9\\u5316 +label.action.enable.zone.processing=\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.enable.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u6709\\u52B9\\u5316 +label.action.force.reconnect.processing=\\u518D\\u63A5\\u7D9A\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.force.reconnect=\\u5F37\\u5236\\u518D\\u63A5\\u7D9A +label.action.generate.keys.processing=\\u30AD\\u30FC\\u3092\\u751F\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.generate.keys=\\u30AD\\u30FC\\u306E\\u751F\\u6210 +label.action.list.nexusVswitch=Nexus 1000V \\u306E\\u4E00\\u89A7\\u8868\\u793A +label.action.lock.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u30ED\\u30C3\\u30AF\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.lock.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30ED\\u30C3\\u30AF +label.action.manage.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.manage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u7BA1\\u7406\\u5BFE\\u8C61\\u5316 +label.action.migrate.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.migrate.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C +label.action.migrate.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.migrate.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u79FB\\u884C +label.action.migrate.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u79FB\\u884C\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.migrate.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u79FB\\u884C +label.action.reboot.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.reboot.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u518D\\u8D77\\u52D5 +label.action.reboot.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.reboot.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u518D\\u8D77\\u52D5 +label.action.reboot.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.reboot.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u518D\\u8D77\\u52D5 +label.action.recurring.snapshot=\\u5B9A\\u671F\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 +label.action.register.iso=ISO \\u306E\\u767B\\u9332 +label.action.register.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u767B\\u9332 +label.action.release.ip=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u89E3\\u653E +label.action.release.ip.processing=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u89E3\\u653E\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.remove.host.processing=\\u30DB\\u30B9\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.remove.host=\\u30DB\\u30B9\\u30C8\\u306E\\u524A\\u9664 +label.action.reset.password.processing=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.reset.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u306E\\u30EA\\u30BB\\u30C3\\u30C8 +label.action.resource.limits=\\u30EA\\u30BD\\u30FC\\u30B9\\u5236\\u9650 +label.action.restore.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u5FA9\\u5143\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.restore.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u5FA9\\u5143 +label.action.start.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.start.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u8D77\\u52D5 +label.action.start.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.start.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u8D77\\u52D5 +label.action.start.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.start.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u8D77\\u52D5 +label.action.stop.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.stop.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u505C\\u6B62 +label.action.stop.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.stop.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u505C\\u6B62 +label.action.stop.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.stop.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u505C\\u6B62 +label.actions=\\u64CD\\u4F5C +label.action.take.snapshot.processing=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059.... +label.action.take.snapshot=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u4F5C\\u6210 +label.action.unmanage.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u975E\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.unmanage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u975E\\u7BA1\\u7406\\u5BFE\\u8C61\\u5316 +label.action.update.OS.preference=OS \\u57FA\\u672C\\u8A2D\\u5B9A\\u306E\\u66F4\\u65B0 +label.action.update.OS.preference.processing=OS \\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u66F4\\u65B0\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.update.resource.count.processing=\\u30EA\\u30BD\\u30FC\\u30B9\\u6570\\u3092\\u66F4\\u65B0\\u3057\\u3066\\u3044\\u307E\\u3059... +label.action.update.resource.count=\\u30EA\\u30BD\\u30FC\\u30B9\\u6570\\u306E\\u66F4\\u65B0 +label.activate.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6\\u5316 +label.active.sessions=\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6\\u306A\\u30BB\\u30C3\\u30B7\\u30E7\\u30F3 +label.add.accounts.to=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u8FFD\\u52A0\\u5148\: +label.add.accounts=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u8FFD\\u52A0 +label.add.account.to.project=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u8FFD\\u52A0 +label.add.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u8FFD\\u52A0 +label.add.ACL=ACL \\u306E\\u8FFD\\u52A0 +label.add.by.cidr=CIDR \\u3067\\u8FFD\\u52A0 +label.add.by.group=\\u30B0\\u30EB\\u30FC\\u30D7\\u3067\\u8FFD\\u52A0 +label.add.by=\\u8FFD\\u52A0\\u5358\\u4F4D +label.add.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u8FFD\\u52A0 +label.add.compute.offering=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 +label.add.direct.iprange=\\u76F4\\u63A5 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u8FFD\\u52A0 +label.add.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 +label.add.domain=\\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u8FFD\\u52A0 +label.add.egress.rule=\\u9001\\u4FE1\\u898F\\u5247\\u306E\\u8FFD\\u52A0 +label.add.F5.device=F5 \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 +label.add.firewall=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u898F\\u5247\\u306E\\u8FFD\\u52A0 +label.add.guest.network=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8FFD\\u52A0 +label.add.host=\\u30DB\\u30B9\\u30C8\\u306E\\u8FFD\\u52A0 +label.adding.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +label.adding.failed=\\u8FFD\\u52A0\\u3067\\u304D\\u307E\\u305B\\u3093\\u3067\\u3057\\u305F +label.adding.pod=\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +label.adding.processing=\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059... +label.add.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u8FFD\\u52A0 +label.adding.succeeded=\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u305F +label.adding=\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +label.adding.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +label.adding.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +label.add.ip.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u8FFD\\u52A0 +label.additional.networks=\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.add.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306E\\u8FFD\\u52A0 +label.add.more=\\u305D\\u306E\\u307B\\u304B\\u306E\\u9805\\u76EE\\u306E\\u8FFD\\u52A0 +label.add.netScaler.device=Netscaler \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 +label.add.network.ACL=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL \\u306E\\u8FFD\\u52A0 +label.add.network.device=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 +label.add.network.offering=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 +label.add.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8FFD\\u52A0 +label.add.new.F5=\\u65B0\\u3057\\u3044 F5 \\u306E\\u8FFD\\u52A0 +label.add.new.gateway=\\u65B0\\u3057\\u3044\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u8FFD\\u52A0 +label.add.new.NetScaler=\\u65B0\\u3057\\u3044 NetScaler \\u306E\\u8FFD\\u52A0 +label.add.new.SRX=\\u65B0\\u3057\\u3044 SRX \\u306E\\u8FFD\\u52A0 +label.add.new.tier=\\u65B0\\u3057\\u3044\\u968E\\u5C64\\u306E\\u8FFD\\u52A0 label.add.NiciraNvp.device=NVP\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u8ffd\u52a0 -label.add.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8FFD\u52A0 -label.add.pod=\u30DD\u30C3\u30C9\u306E\u8FFD\u52A0 -label.add.port.forwarding.rule=\u30DD\u30FC\u30C8\u8EE2\u9001\u898F\u5247\u306E\u8FFD\u52A0 -label.add.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u8FFD\u52A0 -label.add.resources=\u30EA\u30BD\u30FC\u30B9\u306E\u8FFD\u52A0 -label.add.route=\u30EB\u30FC\u30C8\u306E\u8FFD\u52A0 -label.add.rule=\u898F\u5247\u306E\u8FFD\u52A0 -label.add.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u8FFD\u52A0 -label.add.security.group=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u306E\u8FFD\u52A0 -label.add.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 -label.add.SRX.device=SRX \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 -label.add.static.nat.rule=\u9759\u7684 NAT \u898F\u5247\u306E\u8FFD\u52A0 -label.add.static.route=\u9759\u7684\u30EB\u30FC\u30C8\u306E\u8FFD\u52A0 -label.add.system.service.offering=\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 -label.add.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u8FFD\u52A0 -label.add.to.group=\u30B0\u30EB\u30FC\u30D7\u3078\u306E\u8FFD\u52A0 -label.add=\u8FFD\u52A0 -label.add.user=\u30E6\u30FC\u30B6\u30FC\u306E\u8FFD\u52A0 -label.add.vlan=VLAN \u306E\u8FFD\u52A0 -label.add.vms.to.lb=\u8CA0\u8377\u5206\u6563\u898F\u5247\u3078\u306E VM \u306E\u8FFD\u52A0 -label.add.vms=VM \u306E\u8FFD\u52A0 -label.add.VM.to.tier=\u968E\u5C64\u3078\u306E VM \u306E\u8FFD\u52A0 -label.add.vm=VM \u306E\u8FFD\u52A0 -label.add.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u8FFD\u52A0 -label.add.vpc=VPC \u306E\u8FFD\u52A0 -label.add.vpn.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u8FFD\u52A0 -label.add.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u8FFD\u52A0 -label.add.vpn.user=VPN \u30E6\u30FC\u30B6\u30FC\u306E\u8FFD\u52A0 -label.add.zone=\u30BE\u30FC\u30F3\u306E\u8FFD\u52A0 -label.admin.accounts=\u7BA1\u7406\u8005\u30A2\u30AB\u30A6\u30F3\u30C8 -label.admin=\u7BA1\u7406\u8005 -label.advanced.mode=\u62E1\u5F35\u30E2\u30FC\u30C9 -label.advanced.search=\u9AD8\u5EA6\u306A\u691C\u7D22 -label.advanced=\u62E1\u5F35 -label.agent.password=\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8 \u30D1\u30B9\u30EF\u30FC\u30C9 -label.agent.username=\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8 \u30E6\u30FC\u30B6\u30FC\u540D -label.agree=\u540C\u610F\u3059\u308B -label.alert=\u30A2\u30E9\u30FC\u30C8 -label.algorithm=\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0 -label.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F -label.allocation.state=\u5272\u308A\u5F53\u3066\u72B6\u614B -label.api.key=API \u30AD\u30FC -label.apply=\u9069\u7528 -label.assign.to.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u5272\u308A\u5F53\u3066\u3066\u3044\u307E\u3059 -label.assign=\u5272\u308A\u5F53\u3066 -label.associated.network.id=\u95A2\u9023\u3065\u3051\u3089\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID -label.associated.network=\u95A2\u9023\u3065\u3051\u3089\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.attached.iso=\u30A2\u30BF\u30C3\u30C1\u3055\u308C\u305F ISO -label.availability=\u53EF\u7528\u6027 -label.availability.zone=\u5229\u7528\u53EF\u80FD\u30BE\u30FC\u30F3 -label.available.public.ips=\u4F7F\u7528\u3067\u304D\u308B\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 -label.available=\u4F7F\u7528\u53EF\u80FD -label.back=\u623B\u308B -label.bandwidth=\u5E2F\u57DF\u5E45 -label.basic.mode=\u57FA\u672C\u30E2\u30FC\u30C9 -label.basic=\u57FA\u672C -label.bootable=\u8D77\u52D5\u53EF\u80FD -label.broadcast.domain.range=\u30D6\u30ED\u30FC\u30C9\u30AD\u30E3\u30B9\u30C8 \u30C9\u30E1\u30A4\u30F3\u306E\u7BC4\u56F2 -label.broadcast.domain.type=\u30D6\u30ED\u30FC\u30C9\u30AD\u30E3\u30B9\u30C8 \u30C9\u30E1\u30A4\u30F3\u306E\u7A2E\u985E +label.add.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8FFD\\u52A0 +label.add.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u8FFD\\u52A0 +label.add.port.forwarding.rule=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001\\u898F\\u5247\\u306E\\u8FFD\\u52A0 +label.add.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u8FFD\\u52A0 +label.add.resources=\\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u8FFD\\u52A0 +label.add.route=\\u30EB\\u30FC\\u30C8\\u306E\\u8FFD\\u52A0 +label.add.rule=\\u898F\\u5247\\u306E\\u8FFD\\u52A0 +label.add.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u8FFD\\u52A0 +label.add.security.group=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u306E\\u8FFD\\u52A0 +label.add.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 +label.add.SRX.device=SRX \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 +label.add.static.nat.rule=\\u9759\\u7684 NAT \\u898F\\u5247\\u306E\\u8FFD\\u52A0 +label.add.static.route=\\u9759\\u7684\\u30EB\\u30FC\\u30C8\\u306E\\u8FFD\\u52A0 +label.add.system.service.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 +label.add.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u8FFD\\u52A0 +label.add.to.group=\\u30B0\\u30EB\\u30FC\\u30D7\\u3078\\u306E\\u8FFD\\u52A0 +label.add=\\u8FFD\\u52A0 +label.add.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u8FFD\\u52A0 +label.add.vlan=VLAN \\u306E\\u8FFD\\u52A0 +label.add.vms.to.lb=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u3078\\u306E VM \\u306E\\u8FFD\\u52A0 +label.add.vms=VM \\u306E\\u8FFD\\u52A0 +label.add.VM.to.tier=\\u968E\\u5C64\\u3078\\u306E VM \\u306E\\u8FFD\\u52A0 +label.add.vm=VM \\u306E\\u8FFD\\u52A0 +label.add.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u8FFD\\u52A0 +label.add.vpc=VPC \\u306E\\u8FFD\\u52A0 +label.add.vpn.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u8FFD\\u52A0 +label.add.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u8FFD\\u52A0 +label.add.vpn.user=VPN \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u8FFD\\u52A0 +label.add.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u8FFD\\u52A0 +label.admin.accounts=\\u7BA1\\u7406\\u8005\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.admin=\\u7BA1\\u7406\\u8005 +label.advanced.mode=\\u62E1\\u5F35\\u30E2\\u30FC\\u30C9 +label.advanced.search=\\u9AD8\\u5EA6\\u306A\\u691C\\u7D22 +label.advanced=\\u62E1\\u5F35 +label.agent.password=\\u30A8\\u30FC\\u30B8\\u30A7\\u30F3\\u30C8 \\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 +label.agent.username=\\u30A8\\u30FC\\u30B8\\u30A7\\u30F3\\u30C8 \\u30E6\\u30FC\\u30B6\\u30FC\\u540D +label.agree=\\u540C\\u610F\\u3059\\u308B +label.alert=\\u30A2\\u30E9\\u30FC\\u30C8 +label.algorithm=\\u30A2\\u30EB\\u30B4\\u30EA\\u30BA\\u30E0 +label.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F +label.allocation.state=\\u5272\\u308A\\u5F53\\u3066\\u72B6\\u614B +label.api.key=API \\u30AD\\u30FC +label.apply=\\u9069\\u7528 +label.assign.to.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u3066\\u3044\\u307E\\u3059 +label.assign=\\u5272\\u308A\\u5F53\\u3066 +label.associated.network.id=\\u95A2\\u9023\\u3065\\u3051\\u3089\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID +label.associated.network=\\u95A2\\u9023\\u3065\\u3051\\u3089\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.attached.iso=\\u30A2\\u30BF\\u30C3\\u30C1\\u3055\\u308C\\u305F ISO +label.availability=\\u53EF\\u7528\\u6027 +label.availability.zone=\\u5229\\u7528\\u53EF\\u80FD\\u30BE\\u30FC\\u30F3 +label.available.public.ips=\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.available=\\u4F7F\\u7528\\u53EF\\u80FD +label.back=\\u623B\\u308B +label.bandwidth=\\u5E2F\\u57DF\\u5E45 +label.basic.mode=\\u57FA\\u672C\\u30E2\\u30FC\\u30C9 +label.basic=\\u57FA\\u672C +label.bootable=\\u8D77\\u52D5\\u53EF\\u80FD +label.broadcast.domain.range=\\u30D6\\u30ED\\u30FC\\u30C9\\u30AD\\u30E3\\u30B9\\u30C8 \\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u7BC4\\u56F2 +label.broadcast.domain.type=\\u30D6\\u30ED\\u30FC\\u30C9\\u30AD\\u30E3\\u30B9\\u30C8 \\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u7A2E\\u985E label.broadcast.uri=Broadcast URI -label.by.account=\u30A2\u30AB\u30A6\u30F3\u30C8 -label.by.availability=\u53EF\u7528\u6027 -label.by.domain=\u30C9\u30E1\u30A4\u30F3 -label.by.end.date=\u7D42\u4E86\u65E5 -label.by.level=\u30EC\u30D9\u30EB -label.by.pod=\u30DD\u30C3\u30C9 -label.by.role=\u5F79\u5272 -label.by.start.date=\u958B\u59CB\u65E5 -label.by.state=\u72B6\u614B -label.bytes.received=\u53D7\u4FE1\u30D0\u30A4\u30C8 -label.bytes.sent=\u9001\u4FE1\u30D0\u30A4\u30C8 -label.by.traffic.type=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E -label.by.type.id=\u7A2E\u985E ID -label.by.type=\u7A2E\u985E -label.by.zone=\u30BE\u30FC\u30F3 -label.cancel=\u30AD\u30E3\u30F3\u30BB\u30EB -label.capacity=\u51E6\u7406\u80FD\u529B -label.certificate=\u8A3C\u660E\u66F8 -label.change.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u5909\u66F4 -label.change.value=\u5024\u306E\u5909\u66F4 -label.character=\u6587\u5B57 -label.checksum=MD5 \u30C1\u30A7\u30C3\u30AF\u30B5\u30E0 -label.cidr.account=CIDR \u307E\u305F\u306F\u30A2\u30AB\u30A6\u30F3\u30C8/\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 +label.by.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.by.availability=\\u53EF\\u7528\\u6027 +label.by.domain=\\u30C9\\u30E1\\u30A4\\u30F3 +label.by.end.date=\\u7D42\\u4E86\\u65E5 +label.by.level=\\u30EC\\u30D9\\u30EB +label.by.pod=\\u30DD\\u30C3\\u30C9 +label.by.role=\\u5F79\\u5272 +label.by.start.date=\\u958B\\u59CB\\u65E5 +label.by.state=\\u72B6\\u614B +label.bytes.received=\\u53D7\\u4FE1\\u30D0\\u30A4\\u30C8 +label.bytes.sent=\\u9001\\u4FE1\\u30D0\\u30A4\\u30C8 +label.by.traffic.type=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E +label.by.type.id=\\u7A2E\\u985E ID +label.by.type=\\u7A2E\\u985E +label.by.zone=\\u30BE\\u30FC\\u30F3 +label.cancel=\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB +label.capacity=\\u51E6\\u7406\\u80FD\\u529B +label.certificate=\\u8A3C\\u660E\\u66F8 +label.change.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u5909\\u66F4 +label.change.value=\\u5024\\u306E\\u5909\\u66F4 +label.character=\\u6587\\u5B57 +label.checksum=MD5 \\u30C1\\u30A7\\u30C3\\u30AF\\u30B5\\u30E0 +label.cidr.account=CIDR \\u307E\\u305F\\u306F\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8/\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 label.cidr=CIDR -label.CIDR.list=CIDR \u4E00\u89A7 -label.cidr.list=\u9001\u4FE1\u5143 CIDR -label.CIDR.of.destination.network=\u5B9B\u5148\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E CIDR -label.clean.up=\u30AF\u30EA\u30FC\u30F3 \u30A2\u30C3\u30D7 -label.clear.list=\u4E00\u89A7\u306E\u6D88\u53BB -label.close=\u9589\u3058\u308B -label.cloud.console=\u30AF\u30E9\u30A6\u30C9\u7BA1\u7406\u30B3\u30F3\u30BD\u30FC\u30EB -label.cloud.managed=Cloud.com \u306B\u3088\u308B\u7BA1\u7406 -label.cluster.name=\u30AF\u30E9\u30B9\u30BF\u30FC\u540D -label.clusters=\u30AF\u30E9\u30B9\u30BF\u30FC -label.cluster.type=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u7A2E\u985E -label.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC +label.CIDR.list=CIDR \\u4E00\\u89A7 +label.cidr.list=\\u9001\\u4FE1\\u5143 CIDR +label.CIDR.of.destination.network=\\u5B9B\\u5148\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E CIDR +label.clean.up=\\u30AF\\u30EA\\u30FC\\u30F3 \\u30A2\\u30C3\\u30D7 +label.clear.list=\\u4E00\\u89A7\\u306E\\u6D88\\u53BB +label.close=\\u9589\\u3058\\u308B +label.cloud.console=\\u30AF\\u30E9\\u30A6\\u30C9\\u7BA1\\u7406\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB +label.cloud.managed=Cloud.com \\u306B\\u3088\\u308B\\u7BA1\\u7406 +label.cluster.name=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u540D +label.clusters=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC +label.cluster.type=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u7A2E\\u985E +label.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC label.clvm=CLVM -label.code=\u30B3\u30FC\u30C9 -label.community=\u30B3\u30DF\u30E5\u30CB\u30C6\u30A3 -label.compute.and.storage=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0\u3068\u30B9\u30C8\u30EC\u30FC\u30B8 -label.compute.offerings=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.compute.offering=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.compute=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 -label.configuration=\u69CB\u6210 -label.configure.network.ACLs=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL \u306E\u69CB\u6210 -label.configure=\u69CB\u6210 -label.configure.vpc=VPC \u306E\u69CB\u6210 -label.confirmation=\u78BA\u8A8D -label.confirm.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u306E\u78BA\u8A8D\u5165\u529B -label.congratulations=\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u306F\u3053\u308C\u3067\u5B8C\u4E86\u3067\u3059\u3002 -label.conserve.mode=\u7BC0\u7D04\u30E2\u30FC\u30C9 -label.console.proxy=\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7 -label.continue.basic.install=\u57FA\u672C\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3092\u7D9A\u884C\u3059\u308B -label.continue=\u7D9A\u884C -label.corrections.saved=\u63A5\u7D9A\u304C\u4FDD\u5B58\u3055\u308C\u307E\u3057\u305F -label.cpu.allocated.for.VMs=VM \u306B\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E CPU -label.cpu.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E CPU -label.CPU.cap=CPU \u5236\u9650 +label.code=\\u30B3\\u30FC\\u30C9 +label.community=\\u30B3\\u30DF\\u30E5\\u30CB\\u30C6\\u30A3 +label.compute.and.storage=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0\\u3068\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.compute.offerings=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.compute.offering=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.compute=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 +label.configuration=\\u69CB\\u6210 +label.configure.network.ACLs=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL \\u306E\\u69CB\\u6210 +label.configure=\\u69CB\\u6210 +label.configure.vpc=VPC \\u306E\\u69CB\\u6210 +label.confirmation=\\u78BA\\u8A8D +label.confirm.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u306E\\u78BA\\u8A8D\\u5165\\u529B +label.congratulations=\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u306F\\u3053\\u308C\\u3067\\u5B8C\\u4E86\\u3067\\u3059\\u3002 +label.conserve.mode=\\u7BC0\\u7D04\\u30E2\\u30FC\\u30C9 +label.console.proxy=\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7 +label.continue.basic.install=\\u57FA\\u672C\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3092\\u7D9A\\u884C\\u3059\\u308B +label.continue=\\u7D9A\\u884C +label.corrections.saved=\\u63A5\\u7D9A\\u304C\\u4FDD\\u5B58\\u3055\\u308C\\u307E\\u3057\\u305F +label.cpu.allocated.for.VMs=VM \\u306B\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E CPU +label.cpu.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E CPU +label.CPU.cap=CPU \\u5236\\u9650 label.cpu=CPU label.cpu.mhz=CPU (MHz) -label.cpu.utilized=CPU \u4F7F\u7528\u7387 -label.created.by.system=\u30B7\u30B9\u30C6\u30E0\u4F5C\u6210 -label.created=\u4F5C\u6210\u65E5\u6642 -label.create.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u4F5C\u6210 -label.create.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210 -label.create.VPN.connection=VPN \u63A5\u7D9A\u306E\u4F5C\u6210 -label.cross.zones=\u30AF\u30ED\u30B9 \u30BE\u30FC\u30F3 -label.custom.disk.size=\u30AB\u30B9\u30BF\u30E0 \u30C7\u30A3\u30B9\u30AF \u30B5\u30A4\u30BA -label.daily=\u6BCE\u65E5 -label.data.disk.offering=\u30C7\u30FC\u30BF \u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.date=\u65E5\u6642 -label.day.of.month=\u6BCE\u6708\u6307\u5B9A\u65E5 -label.day.of.week=\u6BCE\u9031\u6307\u5B9A\u65E5 -label.dead.peer.detection=\u505C\u6B62\u30D4\u30A2\u306E\u691C\u51FA -label.decline.invitation=\u62DB\u5F85\u306E\u8F9E\u9000 -label.dedicated=\u5C02\u7528 -label.default=\u30C7\u30D5\u30A9\u30EB\u30C8 -label.default.use=\u30C7\u30D5\u30A9\u30EB\u30C8\u4F7F\u7528 -label.default.view=\u30C7\u30D5\u30A9\u30EB\u30C8 \u30D3\u30E5\u30FC -label.delete.F5=F5 \u306E\u524A\u9664 -label.delete.gateway=\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u524A\u9664 -label.delete.NetScaler=NetScaler \u306E\u524A\u9664 +label.cpu.utilized=CPU \\u4F7F\\u7528\\u7387 +label.created.by.system=\\u30B7\\u30B9\\u30C6\\u30E0\\u4F5C\\u6210 +label.created=\\u4F5C\\u6210\\u65E5\\u6642 +label.create.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u4F5C\\u6210 +label.create.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210 +label.create.VPN.connection=VPN \\u63A5\\u7D9A\\u306E\\u4F5C\\u6210 +label.cross.zones=\\u30AF\\u30ED\\u30B9 \\u30BE\\u30FC\\u30F3 +label.custom.disk.size=\\u30AB\\u30B9\\u30BF\\u30E0 \\u30C7\\u30A3\\u30B9\\u30AF \\u30B5\\u30A4\\u30BA +label.daily=\\u6BCE\\u65E5 +label.data.disk.offering=\\u30C7\\u30FC\\u30BF \\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.date=\\u65E5\\u6642 +label.day.of.month=\\u6BCE\\u6708\\u6307\\u5B9A\\u65E5 +label.day.of.week=\\u6BCE\\u9031\\u6307\\u5B9A\\u65E5 +label.dead.peer.detection=\\u505C\\u6B62\\u30D4\\u30A2\\u306E\\u691C\\u51FA +label.decline.invitation=\\u62DB\\u5F85\\u306E\\u8F9E\\u9000 +label.dedicated=\\u5C02\\u7528 +label.default=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 +label.default.use=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8\\u4F7F\\u7528 +label.default.view=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 \\u30D3\\u30E5\\u30FC +label.delete.F5=F5 \\u306E\\u524A\\u9664 +label.delete.gateway=\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u524A\\u9664 +label.delete.NetScaler=NetScaler \\u306E\\u524A\\u9664 label.delete.NiciraNvp=NVP\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u524a\u9664 -label.delete.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u524A\u9664 -label.delete.SRX=SRX \u306E\u524A\u9664 -label.delete=\u524A\u9664 -label.delete.VPN.connection=VPN \u63A5\u7D9A\u306E\u524A\u9664 -label.delete.VPN.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u524A\u9664 -label.delete.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u524A\u9664 -label.delete.vpn.user=VPN \u30E6\u30FC\u30B6\u30FC\u306E\u524A\u9664 -label.deleting.failed=\u524A\u9664\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F -label.deleting.processing=\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.description=\u8AAC\u660E -label.destination.physical.network.id=\u30D6\u30EA\u30C3\u30B8\u5148\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID -label.destination.zone=\u30B3\u30D4\u30FC\u5148\u30BE\u30FC\u30F3 -label.destroy.router=\u30EB\u30FC\u30BF\u30FC\u306E\u7834\u68C4 +label.delete.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u524A\\u9664 +label.delete.SRX=SRX \\u306E\\u524A\\u9664 +label.delete=\\u524A\\u9664 +label.delete.VPN.connection=VPN \\u63A5\\u7D9A\\u306E\\u524A\\u9664 +label.delete.VPN.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u524A\\u9664 +label.delete.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u524A\\u9664 +label.delete.vpn.user=VPN \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u524A\\u9664 +label.deleting.failed=\\u524A\\u9664\\u3067\\u304D\\u307E\\u305B\\u3093\\u3067\\u3057\\u305F +label.deleting.processing=\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... +label.description=\\u8AAC\\u660E +label.destination.physical.network.id=\\u30D6\\u30EA\\u30C3\\u30B8\\u5148\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID +label.destination.zone=\\u30B3\\u30D4\\u30FC\\u5148\\u30BE\\u30FC\\u30F3 +label.destroy.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u7834\\u68C4 label.destroy=\u7834\u68c4 -label.detaching.disk=\u30C7\u30A3\u30B9\u30AF\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059 -label.details=\u8A73\u7D30 -label.device.id=\u30C7\u30D0\u30A4\u30B9 ID -label.devices=\u30C7\u30D0\u30A4\u30B9 +label.detaching.disk=\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059 +label.details=\\u8A73\\u7D30 +label.device.id=\\u30C7\\u30D0\\u30A4\\u30B9 ID +label.devices=\\u30C7\\u30D0\\u30A4\\u30B9 label.dhcp=DHCP -label.DHCP.server.type=DHCP \u30B5\u30FC\u30D0\u30FC\u306E\u7A2E\u985E -label.direct.ips=\u76F4\u63A5 IP \u30A2\u30C9\u30EC\u30B9 -label.disabled=\u7121\u52B9 -label.disable.provider=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u306E\u7121\u52B9\u5316 -label.disable.vpn=VPN \u306E\u7121\u52B9\u5316 -label.disabling.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 -label.disk.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E\u30C7\u30A3\u30B9\u30AF -label.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.disk.size.gb=\u30C7\u30A3\u30B9\u30AF \u30B5\u30A4\u30BA (GB \u5358\u4F4D) -label.disk.size=\u30C7\u30A3\u30B9\u30AF \u30B5\u30A4\u30BA -label.disk.total=\u30C7\u30A3\u30B9\u30AF\u5408\u8A08 -label.disk.volume=\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0 -label.display.name=\u8868\u793A\u540D -label.display.text=\u8868\u793A\u30C6\u30AD\u30B9\u30C8 +label.DHCP.server.type=DHCP \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u7A2E\\u985E +label.direct.ips=\\u76F4\\u63A5 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.disabled=\\u7121\\u52B9 +label.disable.provider=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u306E\\u7121\\u52B9\\u5316 +label.disable.vpn=VPN \\u306E\\u7121\\u52B9\\u5316 +label.disabling.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 +label.disk.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E\\u30C7\\u30A3\\u30B9\\u30AF +label.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.disk.size.gb=\\u30C7\\u30A3\\u30B9\\u30AF \\u30B5\\u30A4\\u30BA (GB \\u5358\\u4F4D) +label.disk.size=\\u30C7\\u30A3\\u30B9\\u30AF \\u30B5\\u30A4\\u30BA +label.disk.total=\\u30C7\\u30A3\\u30B9\\u30AF\\u5408\\u8A08 +label.disk.volume=\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 +label.display.name=\\u8868\\u793A\\u540D +label.display.text=\\u8868\\u793A\\u30C6\\u30AD\\u30B9\\u30C8 label.dns.1=DNS 1 label.dns.2=DNS 2 label.dns=DNS -label.DNS.domain.for.guest.networks=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E DNS \u30C9\u30E1\u30A4\u30F3 -label.domain.admin=\u30C9\u30E1\u30A4\u30F3\u7BA1\u7406\u8005 -label.domain.id=\u30C9\u30E1\u30A4\u30F3 ID -label.domain.name=\u30C9\u30E1\u30A4\u30F3\u540D -label.domain.router=\u30C9\u30E1\u30A4\u30F3 \u30EB\u30FC\u30BF\u30FC -label.domain.suffix=DNS \u30C9\u30E1\u30A4\u30F3 \u30B5\u30D5\u30A3\u30C3\u30AF\u30B9 (\u4F8B\: xyz.com) -label.domain=\u30C9\u30E1\u30A4\u30F3 -label.done=\u5B8C\u4E86 -label.double.quotes.are.not.allowed=\u4E8C\u91CD\u5F15\u7528\u7B26\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093 -label.download.progress=\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u306E\u9032\u6357\u72B6\u6CC1 -label.drag.new.position=\u65B0\u3057\u3044\u4F4D\u7F6E\u306B\u30C9\u30E9\u30C3\u30B0 -label.edit.lb.rule=\u8CA0\u8377\u5206\u6563\u898F\u5247\u306E\u7DE8\u96C6 -label.edit.network.details=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8A73\u7D30\u306E\u7DE8\u96C6 -label.edit.project.details=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u8A73\u7D30\u306E\u7DE8\u96C6 -label.edit.tags=\u30BF\u30B0\u306E\u7DE8\u96C6 -label.edit.traffic.type=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u306E\u7DE8\u96C6 -label.edit=\u7DE8\u96C6 -label.edit.vpc=VPC \u306E\u7DE8\u96C6 +label.DNS.domain.for.guest.networks=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E DNS \\u30C9\\u30E1\\u30A4\\u30F3 +label.domain.admin=\\u30C9\\u30E1\\u30A4\\u30F3\\u7BA1\\u7406\\u8005 +label.domain.id=\\u30C9\\u30E1\\u30A4\\u30F3 ID +label.domain.name=\\u30C9\\u30E1\\u30A4\\u30F3\\u540D +label.domain.router=\\u30C9\\u30E1\\u30A4\\u30F3 \\u30EB\\u30FC\\u30BF\\u30FC +label.domain.suffix=DNS \\u30C9\\u30E1\\u30A4\\u30F3 \\u30B5\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9 (\\u4F8B\: xyz.com) +label.domain=\\u30C9\\u30E1\\u30A4\\u30F3 +label.done=\\u5B8C\\u4E86 +label.double.quotes.are.not.allowed=\\u4E8C\\u91CD\\u5F15\\u7528\\u7B26\\u306F\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u305B\\u3093 +label.download.progress=\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u306E\\u9032\\u6357\\u72B6\\u6CC1 +label.drag.new.position=\\u65B0\\u3057\\u3044\\u4F4D\\u7F6E\\u306B\\u30C9\\u30E9\\u30C3\\u30B0 +label.edit.lb.rule=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u306E\\u7DE8\\u96C6 +label.edit.network.details=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8A73\\u7D30\\u306E\\u7DE8\\u96C6 +label.edit.project.details=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u8A73\\u7D30\\u306E\\u7DE8\\u96C6 +label.edit.tags=\\u30BF\\u30B0\\u306E\\u7DE8\\u96C6 +label.edit.traffic.type=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u306E\\u7DE8\\u96C6 +label.edit=\\u7DE8\\u96C6 +label.edit.vpc=VPC \\u306E\\u7DE8\\u96C6 label.egress.rules=\u9001\u4fe1\u30eb\u30fc\u30eb -label.egress.rule=\u9001\u4FE1\u898F\u5247 -label.elastic.IP=\u30A8\u30E9\u30B9\u30C6\u30A3\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 -label.elastic.LB=\u30A8\u30E9\u30B9\u30C6\u30A3\u30C3\u30AF\u8CA0\u8377\u5206\u6563 -label.elastic=\u30A8\u30E9\u30B9\u30C6\u30A3\u30C3\u30AF -label.email=\u96FB\u5B50\u30E1\u30FC\u30EB -label.enable.provider=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u306E\u6709\u52B9\u5316 +label.egress.rule=\\u9001\\u4FE1\\u898F\\u5247 +label.elastic.IP=\\u30A8\\u30E9\\u30B9\\u30C6\\u30A3\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.elastic.LB=\\u30A8\\u30E9\\u30B9\\u30C6\\u30A3\\u30C3\\u30AF\\u8CA0\\u8377\\u5206\\u6563 +label.elastic=\\u30A8\\u30E9\\u30B9\\u30C6\\u30A3\\u30C3\\u30AF +label.email=\\u96FB\\u5B50\\u30E1\\u30FC\\u30EB +label.enable.provider=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u306E\\u6709\\u52B9\\u5316 label.enable.s3=S3\u57fa\u76e4\u30bb\u30ab\u30f3\u30c0\u30ea\u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u6709\u52b9\u5316 -label.enable.swift=Swift \u306E\u6709\u52B9\u5316 -label.enable.vpn=VPN \u306E\u6709\u52B9\u5316 -label.enabling.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 -label.enabling.vpn=VPN \u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 -label.end.IP=\u7D42\u4E86 IP \u30A2\u30C9\u30EC\u30B9 -label.endpoint.or.operation=\u30A8\u30F3\u30C9\u30DD\u30A4\u30F3\u30C8\u307E\u305F\u306F\u64CD\u4F5C +label.enable.swift=Swift \\u306E\\u6709\\u52B9\\u5316 +label.enable.vpn=VPN \\u306E\\u6709\\u52B9\\u5316 +label.enabling.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 +label.enabling.vpn=VPN \\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 +label.end.IP=\\u7D42\\u4E86 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.endpoint.or.operation=\\u30A8\\u30F3\\u30C9\\u30DD\\u30A4\\u30F3\\u30C8\\u307E\\u305F\\u306F\\u64CD\\u4F5C label.endpoint=\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8 -label.end.port=\u7D42\u4E86\u30DD\u30FC\u30C8 -label.end.reserved.system.IP=\u4E88\u7D04\u6E08\u307F\u7D42\u4E86\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9 -label.end.vlan=\u7D42\u4E86 VLAN -label.enter.token=\u30C8\u30FC\u30AF\u30F3\u306E\u5165\u529B -label.error.code=\u30A8\u30E9\u30FC \u30B3\u30FC\u30C9 -label.error=\u30A8\u30E9\u30FC -label.ESP.encryption=ESP \u6697\u53F7\u5316 -label.ESP.hash=ESP \u30CF\u30C3\u30B7\u30E5 -label.ESP.policy=ESP \u30DD\u30EA\u30B7\u30FC -label.esx.host=ESX/ESXi \u30DB\u30B9\u30C8 -label.example=\u4F8B +label.end.port=\\u7D42\\u4E86\\u30DD\\u30FC\\u30C8 +label.end.reserved.system.IP=\\u4E88\\u7D04\\u6E08\\u307F\\u7D42\\u4E86\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.end.vlan=\\u7D42\\u4E86 VLAN +label.enter.token=\\u30C8\\u30FC\\u30AF\\u30F3\\u306E\\u5165\\u529B +label.error.code=\\u30A8\\u30E9\\u30FC \\u30B3\\u30FC\\u30C9 +label.error=\\u30A8\\u30E9\\u30FC +label.ESP.encryption=ESP \\u6697\\u53F7\\u5316 +label.ESP.hash=ESP \\u30CF\\u30C3\\u30B7\\u30E5 +label.ESP.policy=ESP \\u30DD\\u30EA\\u30B7\\u30FC +label.esx.host=ESX/ESXi \\u30DB\\u30B9\\u30C8 +label.example=\\u4F8B label.f5=F5 -label.failed=\u5931\u6557 -label.featured=\u304A\u3059\u3059\u3081 -label.fetch.latest=\u6700\u65B0\u60C5\u5831\u306E\u53D6\u5F97 -label.filterBy=\u30D5\u30A3\u30EB\u30BF\u30FC -label.firewall=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB -label.first.name=\u540D -label.format=\u5F62\u5F0F -label.friday=\u91D1\u66DC\u65E5 -label.full.path=\u30D5\u30EB \u30D1\u30B9 -label.full=\u5B8C\u5168 -label.gateway=\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 -label.general.alerts=\u4E00\u822C\u30A2\u30E9\u30FC\u30C8 -label.generating.url=URL \u3092\u751F\u6210\u3057\u3066\u3044\u307E\u3059 -label.go.step.2=\u624B\u9806 2 \u306B\u9032\u3080 -label.go.step.3=\u624B\u9806 3 \u306B\u9032\u3080 -label.go.step.4=\u624B\u9806 4 \u306B\u9032\u3080 -label.go.step.5=\u624B\u9806 5 \u306B\u9032\u3080 -label.group.optional=\u30B0\u30EB\u30FC\u30D7 (\u30AA\u30D7\u30B7\u30E7\u30F3) -label.group=\u30B0\u30EB\u30FC\u30D7 -label.guest.cidr=\u30B2\u30B9\u30C8 CIDR -label.guest.end.ip=\u30B2\u30B9\u30C8\u306E\u7D42\u4E86 IP \u30A2\u30C9\u30EC\u30B9 -label.guest.gateway=\u30B2\u30B9\u30C8 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 -label.guest.ip.range=\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 -label.guest.ip=\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9 -label.guest.netmask=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30DE\u30B9\u30AF -label.guest.networks=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.guest.start.ip=\u30B2\u30B9\u30C8\u306E\u958B\u59CB IP \u30A2\u30C9\u30EC\u30B9 -label.guest.traffic=\u30B2\u30B9\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF -label.guest.type=\u30B2\u30B9\u30C8\u306E\u7A2E\u985E -label.guest=\u30B2\u30B9\u30C8 -label.ha.enabled=\u9AD8\u53EF\u7528\u6027\u6709\u52B9 -label.help=\u30D8\u30EB\u30D7 -label.hide.ingress.rule=\u53D7\u4FE1\u898F\u5247\u3092\u96A0\u3059 -label.hints=\u30D2\u30F3\u30C8 -label.host.alerts=\u30DB\u30B9\u30C8 \u30A2\u30E9\u30FC\u30C8 -label.host.MAC=\u30DB\u30B9\u30C8\u306E MAC -label.host.name=\u30DB\u30B9\u30C8\u540D -label.hosts=\u30DB\u30B9\u30C8 +label.failed=\\u5931\\u6557 +label.featured=\\u304A\\u3059\\u3059\\u3081 +label.fetch.latest=\\u6700\\u65B0\\u60C5\\u5831\\u306E\\u53D6\\u5F97 +label.filterBy=\\u30D5\\u30A3\\u30EB\\u30BF\\u30FC +label.firewall=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB +label.first.name=\\u540D +label.format=\\u5F62\\u5F0F +label.friday=\\u91D1\\u66DC\\u65E5 +label.full.path=\\u30D5\\u30EB \\u30D1\\u30B9 +label.full=\\u5B8C\\u5168 +label.gateway=\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 +label.general.alerts=\\u4E00\\u822C\\u30A2\\u30E9\\u30FC\\u30C8 +label.generating.url=URL \\u3092\\u751F\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +label.go.step.2=\\u624B\\u9806 2 \\u306B\\u9032\\u3080 +label.go.step.3=\\u624B\\u9806 3 \\u306B\\u9032\\u3080 +label.go.step.4=\\u624B\\u9806 4 \\u306B\\u9032\\u3080 +label.go.step.5=\\u624B\\u9806 5 \\u306B\\u9032\\u3080 +label.group.optional=\\u30B0\\u30EB\\u30FC\\u30D7 (\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3) +label.group=\\u30B0\\u30EB\\u30FC\\u30D7 +label.guest.cidr=\\u30B2\\u30B9\\u30C8 CIDR +label.guest.end.ip=\\u30B2\\u30B9\\u30C8\\u306E\\u7D42\\u4E86 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.guest.gateway=\\u30B2\\u30B9\\u30C8 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 +label.guest.ip.range=\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 +label.guest.ip=\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.guest.netmask=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF +label.guest.networks=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.guest.start.ip=\\u30B2\\u30B9\\u30C8\\u306E\\u958B\\u59CB IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.guest.traffic=\\u30B2\\u30B9\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF +label.guest.type=\\u30B2\\u30B9\\u30C8\\u306E\\u7A2E\\u985E +label.guest=\\u30B2\\u30B9\\u30C8 +label.ha.enabled=\\u9AD8\\u53EF\\u7528\\u6027\\u6709\\u52B9 +label.help=\\u30D8\\u30EB\\u30D7 +label.hide.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u3092\\u96A0\\u3059 +label.hints=\\u30D2\\u30F3\\u30C8 +label.host.alerts=\\u30DB\\u30B9\\u30C8 \\u30A2\\u30E9\\u30FC\\u30C8 +label.host.MAC=\\u30DB\\u30B9\\u30C8\\u306E MAC +label.host.name=\\u30DB\\u30B9\\u30C8\\u540D +label.hosts=\\u30DB\\u30B9\\u30C8 label.host.tags=\u00e3\u0083\u009b\u00e3\u0082\u00b9\u00e3\u0083\u0088\u00e3\u0082\u00bf\u00e3\u0082\u00b0 -label.host=\u30DB\u30B9\u30C8 -label.hourly=\u6BCE\u6642 -label.hypervisor.capabilities=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306E\u6A5F\u80FD -label.hypervisor.type=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306E\u7A2E\u985E -label.hypervisor=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC -label.hypervisor.version=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306E\u30D0\u30FC\u30B8\u30E7\u30F3 +label.host=\\u30DB\\u30B9\\u30C8 +label.hourly=\\u6BCE\\u6642 +label.hypervisor.capabilities=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306E\\u6A5F\\u80FD +label.hypervisor.type=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306E\\u7A2E\\u985E +label.hypervisor=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC +label.hypervisor.version=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306E\\u30D0\\u30FC\\u30B8\\u30E7\\u30F3 label.id=ID label.IKE.DH=IKE DH -label.IKE.encryption=IKE \u6697\u53F7\u5316 -label.IKE.hash=IKE \u30CF\u30C3\u30B7\u30E5 -label.IKE.policy=IKE \u30DD\u30EA\u30B7\u30FC -label.info=\u60C5\u5831 -label.ingress.rule=\u53D7\u4FE1\u898F\u5247 -label.initiated.by=\u958B\u59CB\u30E6\u30FC\u30B6\u30FC -label.installWizard.addClusterIntro.subtitle=\u30AF\u30E9\u30B9\u30BF\u30FC\u306B\u3064\u3044\u3066 -label.installWizard.addClusterIntro.title=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 -label.installWizard.addHostIntro.subtitle=\u30DB\u30B9\u30C8\u306B\u3064\u3044\u3066 -label.installWizard.addHostIntro.title=\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 -label.installWizard.addPodIntro.subtitle=\u30DD\u30C3\u30C9\u306B\u3064\u3044\u3066 -label.installWizard.addPodIntro.title=\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 -label.installWizard.addPrimaryStorageIntro.subtitle=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u3064\u3044\u3066 -label.installWizard.addPrimaryStorageIntro.title=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 +label.IKE.encryption=IKE \\u6697\\u53F7\\u5316 +label.IKE.hash=IKE \\u30CF\\u30C3\\u30B7\\u30E5 +label.IKE.policy=IKE \\u30DD\\u30EA\\u30B7\\u30FC +label.info=\\u60C5\\u5831 +label.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247 +label.initiated.by=\\u958B\\u59CB\\u30E6\\u30FC\\u30B6\\u30FC +label.installWizard.addClusterIntro.subtitle=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306B\\u3064\\u3044\\u3066 +label.installWizard.addClusterIntro.title=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 +label.installWizard.addHostIntro.subtitle=\\u30DB\\u30B9\\u30C8\\u306B\\u3064\\u3044\\u3066 +label.installWizard.addHostIntro.title=\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 +label.installWizard.addPodIntro.subtitle=\\u30DD\\u30C3\\u30C9\\u306B\\u3064\\u3044\\u3066 +label.installWizard.addPodIntro.title=\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 +label.installWizard.addPrimaryStorageIntro.subtitle=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u3064\\u3044\\u3066 +label.installWizard.addPrimaryStorageIntro.title=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 label.installWizard.addSecondaryStorageIntro.subtitle=\u30bb\u30ab\u30f3\u30c0\u30ea\u30fc\u30b9\u30c8\u30ec\u30fc\u30b8\u3068\u306f\uff1f -label.installWizard.addSecondaryStorageIntro.title=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 -label.installWizard.addZoneIntro.subtitle=\u30BE\u30FC\u30F3\u306B\u3064\u3044\u3066 -label.installWizard.addZoneIntro.title=\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 -label.installWizard.addZone.title=\u30BE\u30FC\u30F3\u306E\u8FFD\u52A0 -label.installWizard.click.launch=[\u8D77\u52D5] \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -label.installWizard.subtitle=\u3053\u306E\u30AC\u30A4\u30C9 \u30C4\u30A2\u30FC\u306F CloudStack&\#8482; \u74B0\u5883\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u306B\u5F79\u7ACB\u3061\u307E\u3059 -label.installWizard.title=CloudStack&\#8482; \u3078\u3088\u3046\u3053\u305D -label.instance.limits=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u5236\u9650 -label.instance.name=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u540D -label.instances=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.internal.dns.1=\u5185\u90E8 DNS 1 -label.internal.dns.2=\u5185\u90E8 DNS 2 -label.internal.name=\u5185\u90E8\u540D -label.interval.type=\u9593\u9694\u306E\u7A2E\u985E -label.introduction.to.cloudstack=CloudStack&\#8482; \u306E\u7D39\u4ECB -label.invalid.integer=\u7121\u52B9\u306A\u6574\u6570 -label.invalid.number=\u7121\u52B9\u306A\u6570 -label.invitations=\u62DB\u5F85\u72B6 -label.invited.accounts=\u62DB\u5F85\u6E08\u307F\u30A2\u30AB\u30A6\u30F3\u30C8 -label.invite.to=\u62DB\u5F85\u3059\u308B\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\: -label.invite=\u62DB\u5F85 -label.ip.address=IP \u30A2\u30C9\u30EC\u30B9 -label.ipaddress=IP \u30A2\u30C9\u30EC\u30B9 -label.ip.allocations=IP \u30A2\u30C9\u30EC\u30B9\u306E\u5272\u308A\u5F53\u3066 +label.installWizard.addSecondaryStorageIntro.title=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 +label.installWizard.addZoneIntro.subtitle=\\u30BE\\u30FC\\u30F3\\u306B\\u3064\\u3044\\u3066 +label.installWizard.addZoneIntro.title=\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 +label.installWizard.addZone.title=\\u30BE\\u30FC\\u30F3\\u306E\\u8FFD\\u52A0 +label.installWizard.click.launch=[\\u8D77\\u52D5] \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +label.installWizard.subtitle=\\u3053\\u306E\\u30AC\\u30A4\\u30C9 \\u30C4\\u30A2\\u30FC\\u306F CloudStack&\#8482; \\u74B0\\u5883\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u306B\\u5F79\\u7ACB\\u3061\\u307E\\u3059 +label.installWizard.title=CloudStack&\#8482; \\u3078\\u3088\\u3046\\u3053\\u305D +label.instance.limits=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u5236\\u9650 +label.instance.name=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u540D +label.instances=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.internal.dns.1=\\u5185\\u90E8 DNS 1 +label.internal.dns.2=\\u5185\\u90E8 DNS 2 +label.internal.name=\\u5185\\u90E8\\u540D +label.interval.type=\\u9593\\u9694\\u306E\\u7A2E\\u985E +label.introduction.to.cloudstack=CloudStack&\#8482; \\u306E\\u7D39\\u4ECB +label.invalid.integer=\\u7121\\u52B9\\u306A\\u6574\\u6570 +label.invalid.number=\\u7121\\u52B9\\u306A\\u6570 +label.invitations=\\u62DB\\u5F85\\u72B6 +label.invited.accounts=\\u62DB\\u5F85\\u6E08\\u307F\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.invite.to=\\u62DB\\u5F85\\u3059\\u308B\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\: +label.invite=\\u62DB\\u5F85 +label.ip.address=IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.ipaddress=IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.ip.allocations=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u5272\\u308A\\u5F53\\u3066 label.ip=IP -label.ip.limits=\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u306E\u5236\u9650 -label.ip.or.fqdn=IP \u30A2\u30C9\u30EC\u30B9\u307E\u305F\u306F FQDN -label.ip.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 -label.ip.ranges=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 -label.IPsec.preshared.key=IPsec \u4E8B\u524D\u5171\u6709\u30AD\u30FC +label.ip.limits=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u5236\\u9650 +label.ip.or.fqdn=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u307E\\u305F\\u306F FQDN +label.ip.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 +label.ip.ranges=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 +label.IPsec.preshared.key=IPsec \\u4E8B\\u524D\\u5171\\u6709\\u30AD\\u30FC label.ips=IP label.iscsi=iSCSI -label.is.default=\u30C7\u30D5\u30A9\u30EB\u30C8 -label.iso.boot=ISO \u8D77\u52D5 +label.is.default=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 +label.iso.boot=ISO \\u8D77\\u52D5 label.iso=ISO -label.isolated.networks=\u5206\u96E2\u3055\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.isolation.method=\u5206\u96E2\u65B9\u6CD5 -label.isolation.mode=\u5206\u96E2\u30E2\u30FC\u30C9 +label.isolated.networks=\\u5206\\u96E2\\u3055\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.isolation.method=\\u5206\\u96E2\\u65B9\\u6CD5 +label.isolation.mode=\\u5206\\u96E2\\u30E2\\u30FC\\u30C9 label.isolation.uri=Isolation URI -label.is.redundant.router=\u5197\u9577 -label.is.shared=\u5171\u6709 -label.is.system=\u30B7\u30B9\u30C6\u30E0 -label.item.listing=\u9805\u76EE\u4E00\u89A7 -label.keep=\u7DAD\u6301 -label.keyboard.type=\u30AD\u30FC\u30DC\u30FC\u30C9\u306E\u7A2E\u985E -label.key=\u30AD\u30FC -label.kvm.traffic.label=KVM \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u30E9\u30D9\u30EB -label.label=\u30E9\u30D9\u30EB +label.is.redundant.router=\\u5197\\u9577 +label.is.shared=\\u5171\\u6709 +label.is.system=\\u30B7\\u30B9\\u30C6\\u30E0 +label.item.listing=\\u9805\\u76EE\\u4E00\\u89A7 +label.keep=\\u7DAD\\u6301 +label.keyboard.type=\\u30AD\\u30FC\\u30DC\\u30FC\\u30C9\\u306E\\u7A2E\\u985E +label.key=\\u30AD\\u30FC +label.kvm.traffic.label=KVM \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u30E9\\u30D9\\u30EB +label.label=\\u30E9\\u30D9\\u30EB label.lang.brportugese=Brazilian Portugese -label.lang.chinese=\u7C21\u4F53\u5B57\u4E2D\u56FD\u8A9E -label.lang.english=\u82F1\u8A9E +label.lang.chinese=\\u7C21\\u4F53\\u5B57\\u4E2D\\u56FD\\u8A9E +label.lang.english=\\u82F1\\u8A9E label.lang.french=French -label.lang.japanese=\u65E5\u672C\u8A9E +label.lang.japanese=\\u65E5\\u672C\\u8A9E label.lang.russian=Russian -label.lang.spanish=\u30B9\u30DA\u30A4\u30F3\u8A9E -label.last.disconnected=\u6700\u7D42\u5207\u65AD\u65E5\u6642 -label.last.name=\u59D3 -label.latest.events=\u6700\u65B0\u30A4\u30D9\u30F3\u30C8 -label.launch=\u8D77\u52D5 -label.launch.vm=VM \u306E\u8D77\u52D5 -label.LB.isolation=\u8CA0\u8377\u5206\u6563\u5206\u96E2 -label.least.connections=\u6700\u5C0F\u63A5\u7D9A -label.level=\u30EC\u30D9\u30EB -label.linklocal.ip=\u30EA\u30F3\u30AF \u30ED\u30FC\u30AB\u30EB IP \u30A2\u30C9\u30EC\u30B9 -label.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E -label.load.balancing.policies=\u8CA0\u8377\u5206\u6563\u30DD\u30EA\u30B7\u30FC -label.load.balancing=\u8CA0\u8377\u5206\u6563 -label.loading=\u30ED\u30FC\u30C9\u3057\u3066\u3044\u307E\u3059 -label.local.storage.enabled=\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8\u306F\u6709\u52B9\u3067\u3059 -label.local.storage=\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8 -label.local=\u30ED\u30FC\u30AB\u30EB -label.login=\u30ED\u30B0\u30AA\u30F3 -label.logout=\u30ED\u30B0\u30AA\u30D5 +label.lang.spanish=\\u30B9\\u30DA\\u30A4\\u30F3\\u8A9E +label.last.disconnected=\\u6700\\u7D42\\u5207\\u65AD\\u65E5\\u6642 +label.last.name=\\u59D3 +label.latest.events=\\u6700\\u65B0\\u30A4\\u30D9\\u30F3\\u30C8 +label.launch=\\u8D77\\u52D5 +label.launch.vm=VM \\u306E\\u8D77\\u52D5 +label.LB.isolation=\\u8CA0\\u8377\\u5206\\u6563\\u5206\\u96E2 +label.least.connections=\\u6700\\u5C0F\\u63A5\\u7D9A +label.level=\\u30EC\\u30D9\\u30EB +label.linklocal.ip=\\u30EA\\u30F3\\u30AF \\u30ED\\u30FC\\u30AB\\u30EB IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E +label.load.balancing.policies=\\u8CA0\\u8377\\u5206\\u6563\\u30DD\\u30EA\\u30B7\\u30FC +label.load.balancing=\\u8CA0\\u8377\\u5206\\u6563 +label.loading=\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3044\\u307E\\u3059 +label.local.storage.enabled=\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F\\u6709\\u52B9\\u3067\\u3059 +label.local.storage=\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.local=\\u30ED\\u30FC\\u30AB\\u30EB +label.login=\\u30ED\\u30B0\\u30AA\\u30F3 +label.logout=\\u30ED\\u30B0\\u30AA\\u30D5 label.lun=LUN -label.LUN.number=LUN \u756A\u53F7 -label.make.project.owner=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u6240\u6709\u8005\u5316 -label.management.ips=\u7BA1\u7406 IP \u30A2\u30C9\u30EC\u30B9 -label.management=\u7BA1\u7406 -label.manage.resources=\u30EA\u30BD\u30FC\u30B9\u306E\u7BA1\u7406 -label.manage=\u7BA1\u7406 -label.max.guest.limit=\u6700\u5927\u30B2\u30B9\u30C8\u5236\u9650 -label.maximum=\u6700\u5927 -label.max.networks=\u6700\u5927\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6570 -label.max.public.ips=\u6700\u5927\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u6570 -label.max.snapshots=\u6700\u5927\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u6570 -label.max.templates=\u6700\u5927\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u6570 -label.max.vms=\u6700\u5927\u30E6\u30FC\u30B6\u30FC VM \u6570 -label.max.volumes=\u6700\u5927\u30DC\u30EA\u30E5\u30FC\u30E0\u6570 +label.LUN.number=LUN \\u756A\\u53F7 +label.make.project.owner=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u6240\\u6709\\u8005\\u5316 +label.management.ips=\\u7BA1\\u7406 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.management=\\u7BA1\\u7406 +label.manage.resources=\\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u7BA1\\u7406 +label.manage=\\u7BA1\\u7406 +label.max.guest.limit=\\u6700\\u5927\\u30B2\\u30B9\\u30C8\\u5236\\u9650 +label.maximum=\\u6700\\u5927 +label.max.networks=\\u6700\\u5927\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6570 +label.max.public.ips=\\u6700\\u5927\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u6570 +label.max.snapshots=\\u6700\\u5927\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u6570 +label.max.templates=\\u6700\\u5927\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u6570 +label.max.vms=\\u6700\\u5927\\u30E6\\u30FC\\u30B6\\u30FC VM \\u6570 +label.max.volumes=\\u6700\\u5927\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u6570 label.max.vpcs=Max. VPCs -label.may.continue=\u7D9A\u884C\u3067\u304D\u307E\u3059\u3002 -label.memory.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E\u30E1\u30E2\u30EA -label.memory.mb=\u30E1\u30E2\u30EA (MB) -label.memory.total=\u30E1\u30E2\u30EA\u5408\u8A08 -label.memory=\u30E1\u30E2\u30EA -label.memory.used=\u30E1\u30E2\u30EA\u4F7F\u7528\u91CF -label.menu.accounts=\u30A2\u30AB\u30A6\u30F3\u30C8 -label.menu.alerts=\u30A2\u30E9\u30FC\u30C8 -label.menu.all.accounts=\u3059\u3079\u3066\u306E\u30A2\u30AB\u30A6\u30F3\u30C8 -label.menu.all.instances=\u3059\u3079\u3066\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.menu.community.isos=\u30B3\u30DF\u30E5\u30CB\u30C6\u30A3 ISO -label.menu.community.templates=\u30B3\u30DF\u30E5\u30CB\u30C6\u30A3 \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 -label.menu.configuration=\u69CB\u6210 -label.menu.dashboard=\u30C0\u30C3\u30B7\u30E5\u30DC\u30FC\u30C9 -label.menu.destroyed.instances=\u7834\u68C4\u3055\u308C\u305F\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.menu.disk.offerings=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.menu.domains=\u30C9\u30E1\u30A4\u30F3 -label.menu.events=\u30A4\u30D9\u30F3\u30C8 -label.menu.featured.isos=\u304A\u3059\u3059\u3081\u306E ISO -label.menu.featured.templates=\u304A\u3059\u3059\u3081\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 -label.menu.global.settings=\u30B0\u30ED\u30FC\u30D0\u30EB\u8A2D\u5B9A -label.menu.infrastructure=\u30A4\u30F3\u30D5\u30E9\u30B9\u30C8\u30E9\u30AF\u30C1\u30E3 -label.menu.instances=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.menu.ipaddresses=IP \u30A2\u30C9\u30EC\u30B9 +label.may.continue=\\u7D9A\\u884C\\u3067\\u304D\\u307E\\u3059\\u3002 +label.memory.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E\\u30E1\\u30E2\\u30EA +label.memory.mb=\\u30E1\\u30E2\\u30EA (MB) +label.memory.total=\\u30E1\\u30E2\\u30EA\\u5408\\u8A08 +label.memory=\\u30E1\\u30E2\\u30EA +label.memory.used=\\u30E1\\u30E2\\u30EA\\u4F7F\\u7528\\u91CF +label.menu.accounts=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.menu.alerts=\\u30A2\\u30E9\\u30FC\\u30C8 +label.menu.all.accounts=\\u3059\\u3079\\u3066\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.menu.all.instances=\\u3059\\u3079\\u3066\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.menu.community.isos=\\u30B3\\u30DF\\u30E5\\u30CB\\u30C6\\u30A3 ISO +label.menu.community.templates=\\u30B3\\u30DF\\u30E5\\u30CB\\u30C6\\u30A3 \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 +label.menu.configuration=\\u69CB\\u6210 +label.menu.dashboard=\\u30C0\\u30C3\\u30B7\\u30E5\\u30DC\\u30FC\\u30C9 +label.menu.destroyed.instances=\\u7834\\u68C4\\u3055\\u308C\\u305F\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.menu.disk.offerings=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.menu.domains=\\u30C9\\u30E1\\u30A4\\u30F3 +label.menu.events=\\u30A4\\u30D9\\u30F3\\u30C8 +label.menu.featured.isos=\\u304A\\u3059\\u3059\\u3081\\u306E ISO +label.menu.featured.templates=\\u304A\\u3059\\u3059\\u3081\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 +label.menu.global.settings=\\u30B0\\u30ED\\u30FC\\u30D0\\u30EB\\u8A2D\\u5B9A +label.menu.infrastructure=\\u30A4\\u30F3\\u30D5\\u30E9\\u30B9\\u30C8\\u30E9\\u30AF\\u30C1\\u30E3 +label.menu.instances=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.menu.ipaddresses=IP \\u30A2\\u30C9\\u30EC\\u30B9 label.menu.isos=ISO -label.menu.my.accounts=\u30DE\u30A4 \u30A2\u30AB\u30A6\u30F3\u30C8 -label.menu.my.instances=\u30DE\u30A4 \u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.menu.my.isos=\u30DE\u30A4 ISO -label.menu.my.templates=\u30DE\u30A4 \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 -label.menu.network.offerings=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.menu.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.menu.physical.resources=\u7269\u7406\u30EA\u30BD\u30FC\u30B9 -label.menu.running.instances=\u5B9F\u884C\u4E2D\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.menu.security.groups=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 -label.menu.service.offerings=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.menu.snapshots=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 -label.menu.stopped.instances=\u505C\u6B62\u3055\u308C\u305F\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.menu.storage=\u30B9\u30C8\u30EC\u30FC\u30B8 -label.menu.system.service.offerings=\u30B7\u30B9\u30C6\u30E0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.menu.system=\u30B7\u30B9\u30C6\u30E0 -label.menu.system.vms=\u30B7\u30B9\u30C6\u30E0 VM -label.menu.templates=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 -label.menu.virtual.appliances=\u4EEE\u60F3\u30A2\u30D7\u30E9\u30A4\u30A2\u30F3\u30B9 -label.menu.virtual.resources=\u4EEE\u60F3\u30EA\u30BD\u30FC\u30B9 -label.menu.volumes=\u30DC\u30EA\u30E5\u30FC\u30E0 -label.migrate.instance.to.host=\u5225\u306E\u30DB\u30B9\u30C8\u3078\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C -label.migrate.instance.to.ps=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3078\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C -label.migrate.instance.to=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C\u5148\: -label.migrate.router.to=\u30EB\u30FC\u30BF\u30FC\u306E\u79FB\u884C\u5148\: -label.migrate.systemvm.to=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u79FB\u884C\u5148\: +label.menu.my.accounts=\\u30DE\\u30A4 \\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.menu.my.instances=\\u30DE\\u30A4 \\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.menu.my.isos=\\u30DE\\u30A4 ISO +label.menu.my.templates=\\u30DE\\u30A4 \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 +label.menu.network.offerings=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.menu.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.menu.physical.resources=\\u7269\\u7406\\u30EA\\u30BD\\u30FC\\u30B9 +label.menu.running.instances=\\u5B9F\\u884C\\u4E2D\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.menu.security.groups=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 +label.menu.service.offerings=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.menu.snapshots=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 +label.menu.stopped.instances=\\u505C\\u6B62\\u3055\\u308C\\u305F\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 +label.menu.storage=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.menu.system.service.offerings=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.menu.system=\\u30B7\\u30B9\\u30C6\\u30E0 +label.menu.system.vms=\\u30B7\\u30B9\\u30C6\\u30E0 VM +label.menu.templates=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 +label.menu.virtual.appliances=\\u4EEE\\u60F3\\u30A2\\u30D7\\u30E9\\u30A4\\u30A2\\u30F3\\u30B9 +label.menu.virtual.resources=\\u4EEE\\u60F3\\u30EA\\u30BD\\u30FC\\u30B9 +label.menu.volumes=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 +label.migrate.instance.to.host=\\u5225\\u306E\\u30DB\\u30B9\\u30C8\\u3078\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C +label.migrate.instance.to.ps=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3078\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C +label.migrate.instance.to=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C\\u5148\: +label.migrate.router.to=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u79FB\\u884C\\u5148\: +label.migrate.systemvm.to=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u79FB\\u884C\\u5148\: label.migrate.to.host=\u30db\u30b9\u30c8\u3078\u79fb\u884c label.migrate.to.storage=\u30b9\u30c8\u30ec\u30fc\u30b8\u3078\u79fb\u884c -label.migrate.volume=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3078\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u79FB\u884C -label.minimum=\u6700\u5C0F -label.minute.past.hour=\u5206 (\u6BCE\u6642) -label.monday=\u6708\u66DC\u65E5 -label.monthly=\u6BCE\u6708 -label.more.templates=\u305D\u306E\u307B\u304B\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 -label.move.down.row=1 \u884C\u4E0B\u306B\u79FB\u52D5 -label.move.to.bottom=\u6700\u4E0B\u4F4D\u306B\u79FB\u52D5 -label.move.to.top=\u6700\u4E0A\u4F4D\u306B\u79FB\u52D5 -label.move.up.row=1 \u884C\u4E0A\u306B\u79FB\u52D5 -label.my.account=\u30DE\u30A4 \u30A2\u30AB\u30A6\u30F3\u30C8 -label.my.network=\u30DE\u30A4 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.my.templates=\u30DE\u30A4 \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 -label.name.optional=\u540D\u524D (\u30AA\u30D7\u30B7\u30E7\u30F3) -label.name=\u540D\u524D -label.nat.port.range=NAT \u30DD\u30FC\u30C8\u306E\u7BC4\u56F2 -label.netmask=\u30CD\u30C3\u30C8\u30DE\u30B9\u30AF +label.migrate.volume=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3078\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u79FB\\u884C +label.minimum=\\u6700\\u5C0F +label.minute.past.hour=\\u5206 (\\u6BCE\\u6642) +label.monday=\\u6708\\u66DC\\u65E5 +label.monthly=\\u6BCE\\u6708 +label.more.templates=\\u305D\\u306E\\u307B\\u304B\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 +label.move.down.row=1 \\u884C\\u4E0B\\u306B\\u79FB\\u52D5 +label.move.to.bottom=\\u6700\\u4E0B\\u4F4D\\u306B\\u79FB\\u52D5 +label.move.to.top=\\u6700\\u4E0A\\u4F4D\\u306B\\u79FB\\u52D5 +label.move.up.row=1 \\u884C\\u4E0A\\u306B\\u79FB\\u52D5 +label.my.account=\\u30DE\\u30A4 \\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.my.network=\\u30DE\\u30A4 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.my.templates=\\u30DE\\u30A4 \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 +label.name.optional=\\u540D\\u524D (\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3) +label.name=\\u540D\\u524D +label.nat.port.range=NAT \\u30DD\\u30FC\\u30C8\\u306E\\u7BC4\\u56F2 +label.netmask=\\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF label.netScaler=NetScaler -label.network.ACLs=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL -label.network.ACL.total=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL \u5408\u8A08 -label.network.ACL=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL -label.network.desc=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8AAC\u660E -label.network.device.type=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C7\u30D0\u30A4\u30B9\u306E\u7A2E\u985E -label.network.device=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C7\u30D0\u30A4\u30B9 -label.network.domain.text=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C9\u30E1\u30A4\u30F3 -label.network.domain=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C9\u30E1\u30A4\u30F3 -label.network.id=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID -label.networking.and.security=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3068\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 -label.network.label.display.for.blank.value=\u30C7\u30D5\u30A9\u30EB\u30C8 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u4F7F\u7528 -label.network.name=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u540D -label.network.offering.display.text=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u8868\u793A\u30C6\u30AD\u30B9\u30C8 -label.network.offering.id=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 ID -label.network.offering.name=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u540D -label.network.offering=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.network.rate.megabytes=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u901F\u5EA6 (MB/\u79D2) -label.network.rate=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u901F\u5EA6 -label.network.read=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8AAD\u307F\u53D6\u308A -label.network.service.providers=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30B5\u30FC\u30D3\u30B9 \u30D7\u30ED\u30D0\u30A4\u30C0\u30FC -label.networks=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.network.type=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u7A2E\u985E -label.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.network.write=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u66F8\u304D\u8FBC\u307F -label.new.password=\u65B0\u3057\u3044\u30D1\u30B9\u30EF\u30FC\u30C9 -label.new.project=\u65B0\u3057\u3044\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 -label.new=\u65B0\u898F -label.new.vm=\u65B0\u3057\u3044 VM -label.next=\u6B21\u3078 +label.network.ACLs=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL +label.network.ACL.total=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL \\u5408\\u8A08 +label.network.ACL=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL +label.network.desc=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8AAC\\u660E +label.network.device.type=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u7A2E\\u985E +label.network.device=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C7\\u30D0\\u30A4\\u30B9 +label.network.domain.text=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C9\\u30E1\\u30A4\\u30F3 +label.network.domain=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C9\\u30E1\\u30A4\\u30F3 +label.network.id=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID +label.networking.and.security=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3068\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 +label.network.label.display.for.blank.value=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u4F7F\\u7528 +label.network.name=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u540D +label.network.offering.display.text=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u8868\\u793A\\u30C6\\u30AD\\u30B9\\u30C8 +label.network.offering.id=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 ID +label.network.offering.name=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u540D +label.network.offering=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.network.rate.megabytes=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u901F\\u5EA6 (MB/\\u79D2) +label.network.rate=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u901F\\u5EA6 +label.network.read=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8AAD\\u307F\\u53D6\\u308A +label.network.service.providers=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30B5\\u30FC\\u30D3\\u30B9 \\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC +label.networks=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.network.type=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u7A2E\\u985E +label.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.network.write=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u66F8\\u304D\\u8FBC\\u307F +label.new.password=\\u65B0\\u3057\\u3044\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 +label.new.project=\\u65B0\\u3057\\u3044\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 +label.new=\\u65B0\\u898F +label.new.vm=\\u65B0\\u3057\\u3044 VM +label.next=\\u6B21\\u3078 label.nexusVswitch=Nexus 1000V label.nfs=NFS -label.nfs.server=NFS \u30B5\u30FC\u30D0\u30FC -label.nfs.storage=NFS \u30B9\u30C8\u30EC\u30FC\u30B8 -label.nic.adapter.type=NIC \u30A2\u30C0\u30D7\u30BF\u30FC\u306E\u7A2E\u985E +label.nfs.server=NFS \\u30B5\\u30FC\\u30D0\\u30FC +label.nfs.storage=NFS \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.nic.adapter.type=NIC \\u30A2\\u30C0\\u30D7\\u30BF\\u30FC\\u306E\\u7A2E\\u985E label.nicira.controller.address=\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u30a2\u30c9\u30ec\u30b9 label.nicira.l3gatewayserviceuuid=L3 \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u30b5\u30fc\u30d3\u30b9UUID label.nicira.transportzoneuuid=Transport Zone Uuid label.nics=NIC -label.no.actions=\u5B9F\u884C\u3067\u304D\u308B\u64CD\u4F5C\u306F\u3042\u308A\u307E\u305B\u3093 -label.no.alerts=\u6700\u8FD1\u306E\u30A2\u30E9\u30FC\u30C8\u306F\u3042\u308A\u307E\u305B\u3093 -label.no.data=\u8868\u793A\u3059\u308B\u30C7\u30FC\u30BF\u304C\u3042\u308A\u307E\u305B\u3093 -label.no.errors=\u6700\u8FD1\u306E\u30A8\u30E9\u30FC\u306F\u3042\u308A\u307E\u305B\u3093 -label.no.isos=\u4F7F\u7528\u3067\u304D\u308B ISO \u306F\u3042\u308A\u307E\u305B\u3093 -label.no.items=\u4F7F\u7528\u3067\u304D\u308B\u9805\u76EE\u306F\u3042\u308A\u307E\u305B\u3093 -label.none=\u306A\u3057 -label.no.security.groups=\u4F7F\u7528\u3067\u304D\u308B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u306F\u3042\u308A\u307E\u305B\u3093 -label.not.found=\u898B\u3064\u304B\u308A\u307E\u305B\u3093 -label.no.thanks=\u8A2D\u5B9A\u3057\u306A\u3044 -label.notifications=\u901A\u77E5 -label.no=\u3044\u3044\u3048 -label.number.of.clusters=\u30AF\u30E9\u30B9\u30BF\u30FC\u6570 -label.number.of.hosts=\u30DB\u30B9\u30C8\u6570 -label.number.of.pods=\u30DD\u30C3\u30C9\u6570 -label.number.of.system.vms=\u30B7\u30B9\u30C6\u30E0 VM \u6570 -label.number.of.virtual.routers=\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u6570 -label.number.of.zones=\u30BE\u30FC\u30F3\u6570 -label.num.cpu.cores=CPU \u30B3\u30A2\u6570 -label.numretries=\u518D\u8A66\u884C\u56DE\u6570 +label.no.actions=\\u5B9F\\u884C\\u3067\\u304D\\u308B\\u64CD\\u4F5C\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 +label.no.alerts=\\u6700\\u8FD1\\u306E\\u30A2\\u30E9\\u30FC\\u30C8\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 +label.no.data=\\u8868\\u793A\\u3059\\u308B\\u30C7\\u30FC\\u30BF\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093 +label.no.errors=\\u6700\\u8FD1\\u306E\\u30A8\\u30E9\\u30FC\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 +label.no.isos=\\u4F7F\\u7528\\u3067\\u304D\\u308B ISO \\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 +label.no.items=\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u9805\\u76EE\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 +label.none=\\u306A\\u3057 +label.no.security.groups=\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 +label.not.found=\\u898B\\u3064\\u304B\\u308A\\u307E\\u305B\\u3093 +label.no.thanks=\\u8A2D\\u5B9A\\u3057\\u306A\\u3044 +label.notifications=\\u901A\\u77E5 +label.no=\\u3044\\u3044\\u3048 +label.number.of.clusters=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u6570 +label.number.of.hosts=\\u30DB\\u30B9\\u30C8\\u6570 +label.number.of.pods=\\u30DD\\u30C3\\u30C9\\u6570 +label.number.of.system.vms=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u6570 +label.number.of.virtual.routers=\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u6570 +label.number.of.zones=\\u30BE\\u30FC\\u30F3\\u6570 +label.num.cpu.cores=CPU \\u30B3\\u30A2\\u6570 +label.numretries=\\u518D\\u8A66\\u884C\\u56DE\\u6570 label.ocfs2=OCFS2 -label.offer.ha=\u9AD8\u53EF\u7528\u6027\u306E\u63D0\u4F9B +label.offer.ha=\\u9AD8\\u53EF\\u7528\\u6027\\u306E\\u63D0\\u4F9B label.ok=OK -label.optional=\u30AA\u30D7\u30B7\u30E7\u30F3 -label.order=\u9806\u5E8F -label.os.preference=OS \u57FA\u672C\u8A2D\u5B9A -label.os.type=OS \u306E\u7A2E\u985E -label.owned.public.ips=\u6240\u6709\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 -label.owner.account=\u6240\u6709\u8005\u30A2\u30AB\u30A6\u30F3\u30C8 +label.optional=\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3 +label.order=\\u9806\\u5E8F +label.os.preference=OS \\u57FA\\u672C\\u8A2D\\u5B9A +label.os.type=OS \\u306E\\u7A2E\\u985E +label.owned.public.ips=\\u6240\\u6709\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.owner.account=\\u6240\\u6709\\u8005\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 label.owner.domain=\u00e6\u0089\u0080\u00e6\u009c\u0089\u00e8\u0080\u0085\u00e3\u0083\u0089\u00e3\u0083\u00a1\u00e3\u0082\u00a4\u00e3\u0083\u00b3 -label.parent.domain=\u89AA\u30C9\u30E1\u30A4\u30F3 -label.password.enabled=\u30D1\u30B9\u30EF\u30FC\u30C9\u7BA1\u7406\u6709\u52B9 -label.password=\u30D1\u30B9\u30EF\u30FC\u30C9 -label.path=\u30D1\u30B9 +label.parent.domain=\\u89AA\\u30C9\\u30E1\\u30A4\\u30F3 +label.password.enabled=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u7BA1\\u7406\\u6709\\u52B9 +label.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 +label.path=\\u30D1\\u30B9 label.perfect.forward.secrecy=Perfect Forward Secrecy -label.physical.network.ID=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID -label.PING.CIFS.password=PING CIFS \u30D1\u30B9\u30EF\u30FC\u30C9 -label.PING.CIFS.username=PING CIFS \u30E6\u30FC\u30B6\u30FC\u540D -label.PING.dir=PING \u30C7\u30A3\u30EC\u30AF\u30C8\u30EA -label.PING.storage.IP=PING \u5BFE\u8C61\u306E\u30B9\u30C8\u30EC\u30FC\u30B8 IP \u30A2\u30C9\u30EC\u30B9 -label.please.specify.netscaler.info=Netscaler \u60C5\u5831\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044 -label.please.wait=\u304A\u5F85\u3061\u304F\u3060\u3055\u3044 -label.pod.name=\u30DD\u30C3\u30C9\u540D -label.pods=\u30DD\u30C3\u30C9 -label.pod=\u30DD\u30C3\u30C9 -label.port.forwarding.policies=\u30DD\u30FC\u30C8\u8EE2\u9001\u30DD\u30EA\u30B7\u30FC -label.port.forwarding=\u30DD\u30FC\u30C8\u8EE2\u9001 -label.port.range=\u30DD\u30FC\u30C8\u306E\u7BC4\u56F2 +label.physical.network.ID=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID +label.PING.CIFS.password=PING CIFS \\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 +label.PING.CIFS.username=PING CIFS \\u30E6\\u30FC\\u30B6\\u30FC\\u540D +label.PING.dir=PING \\u30C7\\u30A3\\u30EC\\u30AF\\u30C8\\u30EA +label.PING.storage.IP=PING \\u5BFE\\u8C61\\u306E\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.please.specify.netscaler.info=Netscaler \\u60C5\\u5831\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +label.please.wait=\\u304A\\u5F85\\u3061\\u304F\\u3060\\u3055\\u3044 +label.pod.name=\\u30DD\\u30C3\\u30C9\\u540D +label.pods=\\u30DD\\u30C3\\u30C9 +label.pod=\\u30DD\\u30C3\\u30C9 +label.port.forwarding.policies=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001\\u30DD\\u30EA\\u30B7\\u30FC +label.port.forwarding=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001 +label.port.range=\\u30DD\\u30FC\\u30C8\\u306E\\u7BC4\\u56F2 label.PreSetup=PreSetup -label.previous=\u623B\u308B -label.prev=\u623B\u308B -label.primary.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 -label.primary.network=\u30D7\u30E9\u30A4\u30DE\u30EA \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.primary.storage.count=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30D7\u30FC\u30EB -label.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 -label.primary.used=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u4F7F\u7528\u91CF -label.private.Gateway=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 -label.private.interface=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9 -label.private.ip.range=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 -label.private.ips=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9 -label.private.ip=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9 -label.privatekey=PKC\#8 \u79D8\u5BC6\u30AD\u30FC -label.private.network=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.private.port=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30DD\u30FC\u30C8 -label.private.zone=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30BE\u30FC\u30F3 -label.project.dashboard=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30C0\u30C3\u30B7\u30E5\u30DC\u30FC\u30C9 -label.project.id=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 ID -label.project.invite=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u62DB\u5F85 -label.project.name=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u540D -label.projects=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 -label.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 -label.project.view=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30D3\u30E5\u30FC -label.protocol=\u30D7\u30ED\u30C8\u30B3\u30EB -label.providers=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC -label.public.interface=\u30D1\u30D6\u30EA\u30C3\u30AF \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9 -label.public.ips=\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 -label.public.ip=\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 -label.public.network=\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.public.port=\u30D1\u30D6\u30EA\u30C3\u30AF \u30DD\u30FC\u30C8 -label.public=\u30D1\u30D6\u30EA\u30C3\u30AF -label.public.zone=\u30D1\u30D6\u30EA\u30C3\u30AF \u30BE\u30FC\u30F3 -label.purpose=\u76EE\u7684 -label.Pxe.server.type=PXE \u30B5\u30FC\u30D0\u30FC\u306E\u7A2E\u985E +label.previous=\\u623B\\u308B +label.prev=\\u623B\\u308B +label.primary.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.primary.network=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.primary.storage.count=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30D7\\u30FC\\u30EB +label.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.primary.used=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u4F7F\\u7528\\u91CF +label.private.Gateway=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 +label.private.interface=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9 +label.private.ip.range=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 +label.private.ips=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.private.ip=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.privatekey=PKC\#8 \\u79D8\\u5BC6\\u30AD\\u30FC +label.private.network=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.private.port=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30DD\\u30FC\\u30C8 +label.private.zone=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30BE\\u30FC\\u30F3 +label.project.dashboard=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30C0\\u30C3\\u30B7\\u30E5\\u30DC\\u30FC\\u30C9 +label.project.id=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 ID +label.project.invite=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u62DB\\u5F85 +label.project.name=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u540D +label.projects=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 +label.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 +label.project.view=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30D3\\u30E5\\u30FC +label.protocol=\\u30D7\\u30ED\\u30C8\\u30B3\\u30EB +label.providers=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC +label.public.interface=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9 +label.public.ips=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.public.ip=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.public.network=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.public.port=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30DD\\u30FC\\u30C8 +label.public=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF +label.public.zone=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30BE\\u30FC\\u30F3 +label.purpose=\\u76EE\\u7684 +label.Pxe.server.type=PXE \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u7A2E\\u985E label.quickview=\u30af\u30a4\u30c3\u30af\u30d3\u30e5\u30fc label.reboot=\u518d\u8d77\u52d5 -label.recent.errors=\u6700\u8FD1\u306E\u30A8\u30E9\u30FC -label.redundant.router.capability=\u5197\u9577\u30EB\u30FC\u30BF\u30FC\u6A5F\u80FD -label.redundant.router=\u5197\u9577\u30EB\u30FC\u30BF\u30FC -label.redundant.state=\u5197\u9577\u72B6\u614B -label.refresh=\u66F4\u65B0 -label.related=\u95A2\u9023 -label.remind.later=\u30A2\u30E9\u30FC\u30E0\u3092\u8868\u793A\u3059\u308B -label.remove.ACL=ACL \u306E\u524A\u9664 -label.remove.egress.rule=\u9001\u4FE1\u898F\u5247\u306E\u524A\u9664 -label.remove.from.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u304B\u3089\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059 -label.remove.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u524A\u9664 -label.remove.ip.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u524A\u9664 -label.remove.pf=\u30DD\u30FC\u30C8\u8EE2\u9001\u898F\u5247\u306E\u524A\u9664 -label.remove.rule=\u898F\u5247\u306E\u524A\u9664 -label.remove.static.nat.rule=\u9759\u7684 NAT \u898F\u5247\u306E\u524A\u9664 -label.remove.static.route=\u9759\u7684\u30EB\u30FC\u30C8\u306E\u524A\u9664 -label.remove.tier=\u968E\u5C64\u306E\u524A\u9664 -label.remove.vm.from.lb=\u8CA0\u8377\u5206\u6563\u898F\u5247\u304B\u3089\u306E VM \u306E\u524A\u9664 -label.remove.vpc=VPC \u306E\u524A\u9664 -label.removing=\u524A\u9664\u3057\u3066\u3044\u307E\u3059 -label.removing.user=\u30E6\u30FC\u30B6\u30FC\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059 -label.required=\u5FC5\u9808\u3067\u3059 -label.reserved.system.gateway=\u4E88\u7D04\u6E08\u307F\u30B7\u30B9\u30C6\u30E0 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 -label.reserved.system.ip=\u4E88\u7D04\u6E08\u307F\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9 -label.reserved.system.netmask=\u4E88\u7D04\u6E08\u307F\u30B7\u30B9\u30C6\u30E0 \u30CD\u30C3\u30C8\u30DE\u30B9\u30AF -label.reset.VPN.connection=VPN \u63A5\u7D9A\u306E\u30EA\u30BB\u30C3\u30C8 -label.resource.limits=\u30EA\u30BD\u30FC\u30B9\u5236\u9650 -label.resource.state=\u30EA\u30BD\u30FC\u30B9\u306E\u72B6\u614B -label.resources=\u30EA\u30BD\u30FC\u30B9 -label.resource=\u30EA\u30BD\u30FC\u30B9 -label.restart.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u518D\u8D77\u52D5 -label.restart.required=\u518D\u8D77\u52D5\u304C\u5FC5\u8981 -label.restart.vpc=VPC \u306E\u518D\u8D77\u52D5 +label.recent.errors=\\u6700\\u8FD1\\u306E\\u30A8\\u30E9\\u30FC +label.redundant.router.capability=\\u5197\\u9577\\u30EB\\u30FC\\u30BF\\u30FC\\u6A5F\\u80FD +label.redundant.router=\\u5197\\u9577\\u30EB\\u30FC\\u30BF\\u30FC +label.redundant.state=\\u5197\\u9577\\u72B6\\u614B +label.refresh=\\u66F4\\u65B0 +label.related=\\u95A2\\u9023 +label.remind.later=\\u30A2\\u30E9\\u30FC\\u30E0\\u3092\\u8868\\u793A\\u3059\\u308B +label.remove.ACL=ACL \\u306E\\u524A\\u9664 +label.remove.egress.rule=\\u9001\\u4FE1\\u898F\\u5247\\u306E\\u524A\\u9664 +label.remove.from.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u304B\\u3089\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059 +label.remove.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u524A\\u9664 +label.remove.ip.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u524A\\u9664 +label.remove.pf=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001\\u898F\\u5247\\u306E\\u524A\\u9664 +label.remove.rule=\\u898F\\u5247\\u306E\\u524A\\u9664 +label.remove.static.nat.rule=\\u9759\\u7684 NAT \\u898F\\u5247\\u306E\\u524A\\u9664 +label.remove.static.route=\\u9759\\u7684\\u30EB\\u30FC\\u30C8\\u306E\\u524A\\u9664 +label.remove.tier=\\u968E\\u5C64\\u306E\\u524A\\u9664 +label.remove.vm.from.lb=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u304B\\u3089\\u306E VM \\u306E\\u524A\\u9664 +label.remove.vpc=VPC \\u306E\\u524A\\u9664 +label.removing=\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059 +label.removing.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059 +label.required=\\u5FC5\\u9808\\u3067\\u3059 +label.reserved.system.gateway=\\u4E88\\u7D04\\u6E08\\u307F\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 +label.reserved.system.ip=\\u4E88\\u7D04\\u6E08\\u307F\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.reserved.system.netmask=\\u4E88\\u7D04\\u6E08\\u307F\\u30B7\\u30B9\\u30C6\\u30E0 \\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF +label.reset.VPN.connection=VPN \\u63A5\\u7D9A\\u306E\\u30EA\\u30BB\\u30C3\\u30C8 +label.resource.limits=\\u30EA\\u30BD\\u30FC\\u30B9\\u5236\\u9650 +label.resource.state=\\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u72B6\\u614B +label.resources=\\u30EA\\u30BD\\u30FC\\u30B9 +label.resource=\\u30EA\\u30BD\\u30FC\\u30B9 +label.restart.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u518D\\u8D77\\u52D5 +label.restart.required=\\u518D\\u8D77\\u52D5\\u304C\\u5FC5\\u8981 +label.restart.vpc=VPC \\u306E\\u518D\\u8D77\\u52D5 label.restore=\u30ea\u30b9\u30c8\u30a2 -label.review=\u78BA\u8A8D -label.revoke.project.invite=\u62DB\u5F85\u306E\u53D6\u308A\u6D88\u3057 -label.role=\u5F79\u5272 -label.root.disk.controller=\u30EB\u30FC\u30C8 \u30C7\u30A3\u30B9\u30AF \u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC -label.root.disk.offering=\u30EB\u30FC\u30C8 \u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.round.robin=\u30E9\u30A6\u30F3\u30C9\u30ED\u30D3\u30F3 -label.rules=\u898F\u5247 -label.running.vms=\u5B9F\u884C\u4E2D\u306E VM +label.review=\\u78BA\\u8A8D +label.revoke.project.invite=\\u62DB\\u5F85\\u306E\\u53D6\\u308A\\u6D88\\u3057 +label.role=\\u5F79\\u5272 +label.root.disk.controller=\\u30EB\\u30FC\\u30C8 \\u30C7\\u30A3\\u30B9\\u30AF \\u30B3\\u30F3\\u30C8\\u30ED\\u30FC\\u30E9\\u30FC +label.root.disk.offering=\\u30EB\\u30FC\\u30C8 \\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.round.robin=\\u30E9\\u30A6\\u30F3\\u30C9\\u30ED\\u30D3\\u30F3 +label.rules=\\u898F\\u5247 +label.running.vms=\\u5B9F\\u884C\\u4E2D\\u306E VM label.s3.access_key=\u30a2\u30af\u30bb\u30b9\u30ad\u30fc label.s3.bucket=\u30d0\u30b1\u30c3\u30c8 label.s3.connection_timeout=\u30b3\u30cd\u30af\u30b7\u30e7\u30f3\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8 @@ -890,569 +890,569 @@ label.s3.max_error_retry=\u30a8\u30e9\u30fc\u6642\u306e\u6700\u5927\u30ea\u30c8\ label.s3.secret_key=\u79d8\u5bc6\u9375 label.s3.socket_timeout=\u30bd\u30b1\u30c3\u30c8\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8 label.s3.use_https=HTTPS\u306e\u4f7f\u7528 -label.saturday=\u571F\u66DC\u65E5 -label.save.and.continue=\u4FDD\u5B58\u3057\u3066\u7D9A\u884C -label.save=\u4FDD\u5B58 -label.saving.processing=\u4FDD\u5B58\u3057\u3066\u3044\u307E\u3059... -label.scope=\u30B9\u30B3\u30FC\u30D7 -label.search=\u691C\u7D22 -label.secondary.storage.count=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30D7\u30FC\u30EB -label.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 -label.secondary.storage.vm=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 VM -label.secondary.used=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u4F7F\u7528\u91CF +label.saturday=\\u571F\\u66DC\\u65E5 +label.save.and.continue=\\u4FDD\\u5B58\\u3057\\u3066\\u7D9A\\u884C +label.save=\\u4FDD\\u5B58 +label.saving.processing=\\u4FDD\\u5B58\\u3057\\u3066\\u3044\\u307E\\u3059... +label.scope=\\u30B9\\u30B3\\u30FC\\u30D7 +label.search=\\u691C\\u7D22 +label.secondary.storage.count=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30D7\\u30FC\\u30EB +label.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.secondary.storage.vm=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VM +label.secondary.used=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u4F7F\\u7528\\u91CF label.secret.key=\u79d8\u5bc6\u9375 -label.security.group.name=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u540D -label.security.groups.enabled=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u6709\u52B9 -label.security.groups=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 -label.security.group=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 -label.select.a.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u9078\u629E -label.select.a.zone=\u30BE\u30FC\u30F3\u306E\u9078\u629E -label.select.instance.to.attach.volume.to=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30A2\u30BF\u30C3\u30C1\u3059\u308B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 -label.select.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u9078\u629E -label.select.iso.or.template=ISO \u307E\u305F\u306F\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u9078\u629E -label.select.offering=\u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u9078\u629E -label.select.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u9078\u629E -label.select.tier=\u968E\u5C64\u306E\u9078\u629E -label.select=\u9078\u629E -label.select-view=\u30D3\u30E5\u30FC\u306E\u9078\u629E -label.select.vm.for.static.nat=\u9759\u7684 NAT \u7528 VM \u306E\u9078\u629E -label.sent=\u9001\u4FE1\u6E08\u307F -label.server=\u30B5\u30FC\u30D0\u30FC -label.service.capabilities=\u30B5\u30FC\u30D3\u30B9\u306E\u6A5F\u80FD -label.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.session.expired=\u30BB\u30C3\u30B7\u30E7\u30F3\u306E\u6709\u52B9\u671F\u9650\u304C\u5207\u308C\u307E\u3057\u305F -label.setup.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 -label.setup=\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 -label.set.up.zone.type=\u30BE\u30FC\u30F3\u306E\u7A2E\u985E\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 -label.setup.zone=\u30BE\u30FC\u30F3\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 +label.security.group.name=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u540D +label.security.groups.enabled=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u6709\\u52B9 +label.security.groups=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 +label.security.group=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 +label.select.a.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u9078\\u629E +label.select.a.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u9078\\u629E +label.select.instance.to.attach.volume.to=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3059\\u308B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +label.select.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u9078\\u629E +label.select.iso.or.template=ISO \\u307E\\u305F\\u306F\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u9078\\u629E +label.select.offering=\\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u9078\\u629E +label.select.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u9078\\u629E +label.select.tier=\\u968E\\u5C64\\u306E\\u9078\\u629E +label.select=\\u9078\\u629E +label.select-view=\\u30D3\\u30E5\\u30FC\\u306E\\u9078\\u629E +label.select.vm.for.static.nat=\\u9759\\u7684 NAT \\u7528 VM \\u306E\\u9078\\u629E +label.sent=\\u9001\\u4FE1\\u6E08\\u307F +label.server=\\u30B5\\u30FC\\u30D0\\u30FC +label.service.capabilities=\\u30B5\\u30FC\\u30D3\\u30B9\\u306E\\u6A5F\\u80FD +label.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.session.expired=\\u30BB\\u30C3\\u30B7\\u30E7\\u30F3\\u306E\\u6709\\u52B9\\u671F\\u9650\\u304C\\u5207\\u308C\\u307E\\u3057\\u305F +label.setup.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 +label.setup=\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 +label.set.up.zone.type=\\u30BE\\u30FC\\u30F3\\u306E\\u7A2E\\u985E\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 +label.setup.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 label.SharedMountPoint=SharedMountPoint -label.shared=\u5171\u6709 -label.show.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u8868\u793A -label.shutdown.provider=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u306E\u30B7\u30E3\u30C3\u30C8\u30C0\u30A6\u30F3 -label.site.to.site.VPN=\u30B5\u30A4\u30C8\u9593 VPN -label.size=\u30B5\u30A4\u30BA -label.skip.guide=CloudStack \u3092\u4F7F\u7528\u3057\u305F\u3053\u3068\u304C\u3042\u308B\u306E\u3067\u3001\u3053\u306E\u30AC\u30A4\u30C9\u3092\u30B9\u30AD\u30C3\u30D7\u3059\u308B -label.snapshot.limits=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u5236\u9650 -label.snapshot.name=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u540D -label.snapshot.schedule=\u5B9A\u671F\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 -label.snapshot.s=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 -label.snapshots=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 -label.snapshot=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 -label.source.nat=\u9001\u4FE1\u5143 NAT -label.source=\u9001\u4FE1\u5143 -label.specify.IP.ranges=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u6307\u5B9A -label.specify.vlan=VLAN \u306E\u6307\u5B9A -label.SR.name = SR \u540D\u30E9\u30D9\u30EB +label.shared=\\u5171\\u6709 +label.show.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u8868\\u793A +label.shutdown.provider=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u306E\\u30B7\\u30E3\\u30C3\\u30C8\\u30C0\\u30A6\\u30F3 +label.site.to.site.VPN=\\u30B5\\u30A4\\u30C8\\u9593 VPN +label.size=\\u30B5\\u30A4\\u30BA +label.skip.guide=CloudStack \\u3092\\u4F7F\\u7528\\u3057\\u305F\\u3053\\u3068\\u304C\\u3042\\u308B\\u306E\\u3067\\u3001\\u3053\\u306E\\u30AC\\u30A4\\u30C9\\u3092\\u30B9\\u30AD\\u30C3\\u30D7\\u3059\\u308B +label.snapshot.limits=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u5236\\u9650 +label.snapshot.name=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u540D +label.snapshot.schedule=\\u5B9A\\u671F\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 +label.snapshot.s=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 +label.snapshots=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 +label.snapshot=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 +label.source.nat=\\u9001\\u4FE1\\u5143 NAT +label.source=\\u9001\\u4FE1\\u5143 +label.specify.IP.ranges=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u6307\\u5B9A +label.specify.vlan=VLAN \\u306E\\u6307\\u5B9A +label.SR.name = SR \\u540D\\u30E9\\u30D9\\u30EB label.srx=SRX -label.start.IP=\u958B\u59CB IP \u30A2\u30C9\u30EC\u30B9 -label.start.port=\u958B\u59CB\u30DD\u30FC\u30C8 -label.start.reserved.system.IP=\u4E88\u7D04\u6E08\u307F\u958B\u59CB\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9 -label.start.vlan=\u958B\u59CB VLAN -label.state=\u72B6\u614B -label.static.nat.enabled=\u9759\u7684 NAT \u6709\u52B9 -label.static.nat.to=\u9759\u7684 NAT \u306E\u8A2D\u5B9A\u5148\: -label.static.nat=\u9759\u7684 NAT -label.static.nat.vm.details=\u9759\u7684 NAT VM \u306E\u8A73\u7D30 -label.statistics=\u7D71\u8A08 -label.status=\u72B6\u614B -label.step.1.title=\u624B\u9806 1. \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u9078\u629E -label.step.1=\u624B\u9806 1 -label.step.2.title=\u624B\u9806 2. \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.step.2=\u624B\u9806 2 -label.step.3.title=\u624B\u9806 3. \u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u9078\u629E -label.step.3=\u624B\u9806 3 -label.step.4.title=\u624B\u9806 4. \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.step.4=\u624B\u9806 4 -label.step.5.title=\u624B\u9806 5. \u78BA\u8A8D -label.step.5=\u624B\u9806 5 -label.stickiness=\u6301\u7D9A\u6027 -label.sticky.cookie-name=Cookie \u540D -label.sticky.domain=\u30C9\u30E1\u30A4\u30F3 -label.sticky.expire=\u5931\u52B9 -label.sticky.holdtime=\u4FDD\u6301\u6642\u9593 -label.sticky.indirect=\u9593\u63A5 -label.sticky.length=\u9577\u3055 -label.sticky.mode=\u30E2\u30FC\u30C9 -label.sticky.nocache=\u30AD\u30E3\u30C3\u30B7\u30E5\u306A\u3057 -label.sticky.postonly=\u30DD\u30B9\u30C8\u306E\u307F -label.sticky.prefix=\u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9 -label.sticky.request-learn=\u30E9\u30FC\u30CB\u30F3\u30B0\u306E\u8981\u6C42 -label.sticky.tablesize=\u30C6\u30FC\u30D6\u30EB \u30B5\u30A4\u30BA -label.stopped.vms=\u505C\u6B62\u4E2D\u306E VM +label.start.IP=\\u958B\\u59CB IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.start.port=\\u958B\\u59CB\\u30DD\\u30FC\\u30C8 +label.start.reserved.system.IP=\\u4E88\\u7D04\\u6E08\\u307F\\u958B\\u59CB\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.start.vlan=\\u958B\\u59CB VLAN +label.state=\\u72B6\\u614B +label.static.nat.enabled=\\u9759\\u7684 NAT \\u6709\\u52B9 +label.static.nat.to=\\u9759\\u7684 NAT \\u306E\\u8A2D\\u5B9A\\u5148\: +label.static.nat=\\u9759\\u7684 NAT +label.static.nat.vm.details=\\u9759\\u7684 NAT VM \\u306E\\u8A73\\u7D30 +label.statistics=\\u7D71\\u8A08 +label.status=\\u72B6\\u614B +label.step.1.title=\\u624B\\u9806 1. \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u9078\\u629E +label.step.1=\\u624B\\u9806 1 +label.step.2.title=\\u624B\\u9806 2. \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.step.2=\\u624B\\u9806 2 +label.step.3.title=\\u624B\\u9806 3. \\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u9078\\u629E +label.step.3=\\u624B\\u9806 3 +label.step.4.title=\\u624B\\u9806 4. \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.step.4=\\u624B\\u9806 4 +label.step.5.title=\\u624B\\u9806 5. \\u78BA\\u8A8D +label.step.5=\\u624B\\u9806 5 +label.stickiness=\\u6301\\u7D9A\\u6027 +label.sticky.cookie-name=Cookie \\u540D +label.sticky.domain=\\u30C9\\u30E1\\u30A4\\u30F3 +label.sticky.expire=\\u5931\\u52B9 +label.sticky.holdtime=\\u4FDD\\u6301\\u6642\\u9593 +label.sticky.indirect=\\u9593\\u63A5 +label.sticky.length=\\u9577\\u3055 +label.sticky.mode=\\u30E2\\u30FC\\u30C9 +label.sticky.nocache=\\u30AD\\u30E3\\u30C3\\u30B7\\u30E5\\u306A\\u3057 +label.sticky.postonly=\\u30DD\\u30B9\\u30C8\\u306E\\u307F +label.sticky.prefix=\\u30D7\\u30EC\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9 +label.sticky.request-learn=\\u30E9\\u30FC\\u30CB\\u30F3\\u30B0\\u306E\\u8981\\u6C42 +label.sticky.tablesize=\\u30C6\\u30FC\\u30D6\\u30EB \\u30B5\\u30A4\\u30BA +label.stopped.vms=\\u505C\\u6B62\\u4E2D\\u306E VM label.stop=\u505c\u6b62 -label.storage.tags=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30BF\u30B0 -label.storage.traffic=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF -label.storage.type=\u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u7A2E\u985E -label.storage=\u30B9\u30C8\u30EC\u30FC\u30B8 -label.subdomain.access=\u30B5\u30D6\u30C9\u30E1\u30A4\u30F3 \u30A2\u30AF\u30BB\u30B9 -label.submitted.by=[\u9001\u4FE1\u30E6\u30FC\u30B6\u30FC\: ] -label.submit=\u9001\u4FE1 -label.succeeded=\u6210\u529F -label.sunday=\u65E5\u66DC\u65E5 -label.super.cidr.for.guest.networks=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30B9\u30FC\u30D1\u30FC CIDR -label.supported.services=\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u308B\u30B5\u30FC\u30D3\u30B9 -label.supported.source.NAT.type=\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u308B\u9001\u4FE1\u5143 NAT \u306E\u7A2E\u985E -label.suspend.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u4E00\u6642\u505C\u6B62 -label.system.capacity=\u30B7\u30B9\u30C6\u30E0\u306E\u51E6\u7406\u80FD\u529B -label.system.offering=\u30B7\u30B9\u30C6\u30E0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.system.service.offering=\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.system.vms=\u30B7\u30B9\u30C6\u30E0 VM -label.system.vm.type=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u7A2E\u985E -label.system.vm=\u30B7\u30B9\u30C6\u30E0 VM -label.system.wide.capacity=\u30B7\u30B9\u30C6\u30E0\u5168\u4F53\u306E\u51E6\u7406\u80FD\u529B -label.tagged=\u30BF\u30B0\u3042\u308A -label.tags=\u30BF\u30B0 -label.target.iqn=\u30BF\u30FC\u30B2\u30C3\u30C8 IQN -label.task.completed=\u30BF\u30B9\u30AF\u304C\u5B8C\u4E86\u3057\u307E\u3057\u305F -label.template.limits=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u5236\u9650 -label.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 -label.TFTP.dir=TFTP \u30C7\u30A3\u30EC\u30AF\u30C8\u30EA -label.theme.default=\u30C7\u30D5\u30A9\u30EB\u30C8 \u30C6\u30FC\u30DE -label.theme.grey=\u30AB\u30B9\u30BF\u30E0 - \u30B0\u30EC\u30FC -label.theme.lightblue=\u30AB\u30B9\u30BF\u30E0 - \u30E9\u30A4\u30C8 \u30D6\u30EB\u30FC -label.thursday=\u6728\u66DC\u65E5 -label.tier.details=\u968E\u5C64\u306E\u8A73\u7D30 -label.tier=\u968E\u5C64 -label.timeout.in.second = \u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 (\u79D2) -label.timeout=\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 -label.time=\u6642\u523B -label.time.zone=\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3 -label.timezone=\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3 -label.token=\u30C8\u30FC\u30AF\u30F3 -label.total.cpu=CPU \u5408\u8A08 -label.total.CPU=CPU \u5408\u8A08 -label.total.hosts=\u30DB\u30B9\u30C8\u5408\u8A08 -label.total.memory=\u30E1\u30E2\u30EA\u5408\u8A08 -label.total.of.ip=IP \u30A2\u30C9\u30EC\u30B9\u5408\u8A08 -label.total.of.vm=VM \u5408\u8A08 -label.total.storage=\u30B9\u30C8\u30EC\u30FC\u30B8\u5408\u8A08 -label.total.vms=VM \u5408\u8A08 -label.traffic.label=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF \u30E9\u30D9\u30EB -label.traffic.types=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E -label.traffic.type=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E -label.tuesday=\u706B\u66DC\u65E5 -label.type.id=\u7A2E\u985E ID -label.type=\u7A2E\u985E -label.unavailable=\u4F7F\u7528\u4E0D\u80FD -label.unlimited=\u7121\u5236\u9650 -label.untagged=\u30BF\u30B0\u306A\u3057 -label.update.project.resources=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30EA\u30BD\u30FC\u30B9\u306E\u66F4\u65B0 -label.update.ssl.cert= SSL \u8A3C\u660E\u66F8\u306E\u66F4\u65B0 -label.update.ssl= SSL \u8A3C\u660E\u66F8\u306E\u66F4\u65B0 -label.updating=\u66F4\u65B0\u3057\u3066\u3044\u307E\u3059 -label.upload=\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9 -label.upload.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9 +label.storage.tags=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30BF\\u30B0 +label.storage.traffic=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF +label.storage.type=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u7A2E\\u985E +label.storage=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 +label.subdomain.access=\\u30B5\\u30D6\\u30C9\\u30E1\\u30A4\\u30F3 \\u30A2\\u30AF\\u30BB\\u30B9 +label.submitted.by=[\\u9001\\u4FE1\\u30E6\\u30FC\\u30B6\\u30FC\: ] +label.submit=\\u9001\\u4FE1 +label.succeeded=\\u6210\\u529F +label.sunday=\\u65E5\\u66DC\\u65E5 +label.super.cidr.for.guest.networks=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30B9\\u30FC\\u30D1\\u30FC CIDR +label.supported.services=\\u30B5\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u308B\\u30B5\\u30FC\\u30D3\\u30B9 +label.supported.source.NAT.type=\\u30B5\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u308B\\u9001\\u4FE1\\u5143 NAT \\u306E\\u7A2E\\u985E +label.suspend.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u4E00\\u6642\\u505C\\u6B62 +label.system.capacity=\\u30B7\\u30B9\\u30C6\\u30E0\\u306E\\u51E6\\u7406\\u80FD\\u529B +label.system.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.system.service.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 +label.system.vms=\\u30B7\\u30B9\\u30C6\\u30E0 VM +label.system.vm.type=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u7A2E\\u985E +label.system.vm=\\u30B7\\u30B9\\u30C6\\u30E0 VM +label.system.wide.capacity=\\u30B7\\u30B9\\u30C6\\u30E0\\u5168\\u4F53\\u306E\\u51E6\\u7406\\u80FD\\u529B +label.tagged=\\u30BF\\u30B0\\u3042\\u308A +label.tags=\\u30BF\\u30B0 +label.target.iqn=\\u30BF\\u30FC\\u30B2\\u30C3\\u30C8 IQN +label.task.completed=\\u30BF\\u30B9\\u30AF\\u304C\\u5B8C\\u4E86\\u3057\\u307E\\u3057\\u305F +label.template.limits=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u5236\\u9650 +label.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 +label.TFTP.dir=TFTP \\u30C7\\u30A3\\u30EC\\u30AF\\u30C8\\u30EA +label.theme.default=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 \\u30C6\\u30FC\\u30DE +label.theme.grey=\\u30AB\\u30B9\\u30BF\\u30E0 - \\u30B0\\u30EC\\u30FC +label.theme.lightblue=\\u30AB\\u30B9\\u30BF\\u30E0 - \\u30E9\\u30A4\\u30C8 \\u30D6\\u30EB\\u30FC +label.thursday=\\u6728\\u66DC\\u65E5 +label.tier.details=\\u968E\\u5C64\\u306E\\u8A73\\u7D30 +label.tier=\\u968E\\u5C64 +label.timeout.in.second = \\u30BF\\u30A4\\u30E0\\u30A2\\u30A6\\u30C8 (\\u79D2) +label.timeout=\\u30BF\\u30A4\\u30E0\\u30A2\\u30A6\\u30C8 +label.time=\\u6642\\u523B +label.time.zone=\\u30BF\\u30A4\\u30E0\\u30BE\\u30FC\\u30F3 +label.timezone=\\u30BF\\u30A4\\u30E0\\u30BE\\u30FC\\u30F3 +label.token=\\u30C8\\u30FC\\u30AF\\u30F3 +label.total.cpu=CPU \\u5408\\u8A08 +label.total.CPU=CPU \\u5408\\u8A08 +label.total.hosts=\\u30DB\\u30B9\\u30C8\\u5408\\u8A08 +label.total.memory=\\u30E1\\u30E2\\u30EA\\u5408\\u8A08 +label.total.of.ip=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u5408\\u8A08 +label.total.of.vm=VM \\u5408\\u8A08 +label.total.storage=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u5408\\u8A08 +label.total.vms=VM \\u5408\\u8A08 +label.traffic.label=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF \\u30E9\\u30D9\\u30EB +label.traffic.types=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E +label.traffic.type=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E +label.tuesday=\\u706B\\u66DC\\u65E5 +label.type.id=\\u7A2E\\u985E ID +label.type=\\u7A2E\\u985E +label.unavailable=\\u4F7F\\u7528\\u4E0D\\u80FD +label.unlimited=\\u7121\\u5236\\u9650 +label.untagged=\\u30BF\\u30B0\\u306A\\u3057 +label.update.project.resources=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u66F4\\u65B0 +label.update.ssl.cert= SSL \\u8A3C\\u660E\\u66F8\\u306E\\u66F4\\u65B0 +label.update.ssl= SSL \\u8A3C\\u660E\\u66F8\\u306E\\u66F4\\u65B0 +label.updating=\\u66F4\\u65B0\\u3057\\u3066\\u3044\\u307E\\u3059 +label.upload=\\u30A2\\u30C3\\u30D7\\u30ED\\u30FC\\u30C9 +label.upload.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30A2\\u30C3\\u30D7\\u30ED\\u30FC\\u30C9 label.url=URL -label.usage.interface=\u4F7F\u7528\u72B6\u6CC1\u6E2C\u5B9A\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9 -label.used=\u4F7F\u7528\u4E2D -label.username=\u30E6\u30FC\u30B6\u30FC\u540D -label.users=\u30E6\u30FC\u30B6\u30FC -label.user=\u30E6\u30FC\u30B6\u30FC -label.value=\u5024 -label.vcdcname=vCenter DC \u540D -label.vcenter.cluster=vCenter \u30AF\u30E9\u30B9\u30BF\u30FC -label.vcenter.datacenter=vCenter \u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC -label.vcenter.datastore=vCenter \u30C7\u30FC\u30BF\u30B9\u30C8\u30A2 -label.vcenter.host=vCenter \u30DB\u30B9\u30C8 -label.vcenter.password=vCenter \u30D1\u30B9\u30EF\u30FC\u30C9 -label.vcenter.username=vCenter \u30E6\u30FC\u30B6\u30FC\u540D -label.vcipaddress=vCenter IP \u30A2\u30C9\u30EC\u30B9 -label.version=\u30D0\u30FC\u30B8\u30E7\u30F3 -label.view.all=\u3059\u3079\u3066\u8868\u793A -label.view.console=\u30B3\u30F3\u30BD\u30FC\u30EB\u306E\u8868\u793A -label.viewing=\u8868\u793A\u9805\u76EE\: -label.view.more=\u8A73\u7D30\u8868\u793A -label.view=\u8868\u793A - -label.virtual.appliances=\u4EEE\u60F3\u30A2\u30D7\u30E9\u30A4\u30A2\u30F3\u30B9 -label.virtual.appliance=\u4EEE\u60F3\u30A2\u30D7\u30E9\u30A4\u30A2\u30F3\u30B9 -label.virtual.machines=\u4EEE\u60F3\u30DE\u30B7\u30F3 -label.virtual.network=\u4EEE\u60F3\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.virtual.routers=\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC -label.virtual.router=\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC +label.usage.interface=\\u4F7F\\u7528\\u72B6\\u6CC1\\u6E2C\\u5B9A\\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9 +label.used=\\u4F7F\\u7528\\u4E2D +label.username=\\u30E6\\u30FC\\u30B6\\u30FC\\u540D +label.users=\\u30E6\\u30FC\\u30B6\\u30FC +label.user=\\u30E6\\u30FC\\u30B6\\u30FC +label.value=\\u5024 +label.vcdcname=vCenter DC \\u540D +label.vcenter.cluster=vCenter \\u30AF\\u30E9\\u30B9\\u30BF\\u30FC +label.vcenter.datacenter=vCenter \\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC +label.vcenter.datastore=vCenter \\u30C7\\u30FC\\u30BF\\u30B9\\u30C8\\u30A2 +label.vcenter.host=vCenter \\u30DB\\u30B9\\u30C8 +label.vcenter.password=vCenter \\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 +label.vcenter.username=vCenter \\u30E6\\u30FC\\u30B6\\u30FC\\u540D +label.vcipaddress=vCenter IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.version=\\u30D0\\u30FC\\u30B8\\u30E7\\u30F3 +label.view.all=\\u3059\\u3079\\u3066\\u8868\\u793A +label.view.console=\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB\\u306E\\u8868\\u793A +label.viewing=\\u8868\\u793A\\u9805\\u76EE\: +label.view.more=\\u8A73\\u7D30\\u8868\\u793A +label.view=\\u8868\\u793A - +label.virtual.appliances=\\u4EEE\\u60F3\\u30A2\\u30D7\\u30E9\\u30A4\\u30A2\\u30F3\\u30B9 +label.virtual.appliance=\\u4EEE\\u60F3\\u30A2\\u30D7\\u30E9\\u30A4\\u30A2\\u30F3\\u30B9 +label.virtual.machines=\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3 +label.virtual.network=\\u4EEE\\u60F3\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF +label.virtual.routers=\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC +label.virtual.router=\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC label.vlan.id=VLAN ID -label.vlan.range=VLAN \u306E\u7BC4\u56F2 +label.vlan.range=VLAN \\u306E\\u7BC4\\u56F2 label.vlan=VLAN -label.vm.add=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u8FFD\u52A0 +label.vm.add=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u8FFD\\u52A0 label.vm.destroy=\u7834\u68c4 -label.vm.display.name=VM \u8868\u793A\u540D -label.VMFS.datastore=VMFS \u30C7\u30FC\u30BF\u30B9\u30C8\u30A2 +label.vm.display.name=VM \\u8868\\u793A\\u540D +label.VMFS.datastore=VMFS \\u30C7\\u30FC\\u30BF\\u30B9\\u30C8\\u30A2 label.vmfs=VMFS -label.vm.name=VM \u540D +label.vm.name=VM \\u540D label.vm.reboot=\u518d\u8d77\u52d5 -label.VMs.in.tier=\u968E\u5C64\u5185\u306E VM -label.vmsnapshot.type=\u7A2E\u985E -label.vm.start=\u8D77\u52D5 -label.vm.state=VM \u306E\u72B6\u614B +label.VMs.in.tier=\\u968E\\u5C64\\u5185\\u306E VM +label.vmsnapshot.type=\\u7A2E\\u985E +label.vm.start=\\u8D77\\u52D5 +label.vm.state=VM \\u306E\\u72B6\\u614B label.vm.stop=\u505c\u6b62 label.vms=VM -label.vmware.traffic.label=VMware \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u30E9\u30D9\u30EB -label.volgroup=\u30DC\u30EA\u30E5\u30FC\u30E0 \u30B0\u30EB\u30FC\u30D7 -label.volume.limits=\u30DC\u30EA\u30E5\u30FC\u30E0\u5236\u9650 -label.volume.name=\u30DC\u30EA\u30E5\u30FC\u30E0\u540D -label.volumes=\u30DC\u30EA\u30E5\u30FC\u30E0 -label.volume=\u30DC\u30EA\u30E5\u30FC\u30E0 +label.vmware.traffic.label=VMware \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u30E9\\u30D9\\u30EB +label.volgroup=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u30B0\\u30EB\\u30FC\\u30D7 +label.volume.limits=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u5236\\u9650 +label.volume.name=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u540D +label.volumes=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 +label.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 label.vpc.id=VPC ID -label.VPC.router.details=VPC \u30EB\u30FC\u30BF\u30FC\u306E\u8A73\u7D30 +label.VPC.router.details=VPC \\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u8A73\\u7D30 label.vpc=VPC -label.VPN.connection=VPN \u63A5\u7D9A -label.vpn.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 -label.VPN.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 -label.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 +label.VPN.connection=VPN \\u63A5\\u7D9A +label.vpn.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 +label.VPN.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 +label.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 label.vpn=VPN -label.vsmctrlvlanid=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB VLAN ID -label.vsmpktvlanid=\u30D1\u30B1\u30C3\u30C8 VLAN ID -label.vsmstoragevlanid=\u30B9\u30C8\u30EC\u30FC\u30B8 VLAN ID -label.vsphere.managed=vSphere \u306B\u3088\u308B\u7BA1\u7406 -label.waiting=\u5F85\u6A5F\u3057\u3066\u3044\u307E\u3059 -label.warn=\u8B66\u544A -label.wednesday=\u6C34\u66DC\u65E5 -label.weekly=\u6BCE\u9031 -label.welcome.cloud.console=\u7BA1\u7406\u30B3\u30F3\u30BD\u30FC\u30EB\u3078\u3088\u3046\u3053\u305D -label.welcome=\u3088\u3046\u3053\u305D -label.what.is.cloudstack=CloudStack&\#8482; \u306B\u3064\u3044\u3066 -label.xen.traffic.label=XenServer \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u30E9\u30D9\u30EB -label.yes=\u306F\u3044 -label.zone.details=\u30BE\u30FC\u30F3\u306E\u8A73\u7D30 -label.zone.id=\u30BE\u30FC\u30F3 ID -label.zone.name=\u30BE\u30FC\u30F3\u540D -label.zone.step.1.title=\u624B\u9806 1. \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u9078\u629E -label.zone.step.2.title=\u624B\u9806 2. \u30BE\u30FC\u30F3\u306E\u8FFD\u52A0 -label.zone.step.3.title=\u624B\u9806 3. \u30DD\u30C3\u30C9\u306E\u8FFD\u52A0 -label.zone.step.4.title=\u624B\u9806 4. IP \u30A2\u30C9\u30EC\u30B9\u7BC4\u56F2\u306E\u8FFD\u52A0 -label.zones=\u30BE\u30FC\u30F3 -label.zone.type=\u30BE\u30FC\u30F3\u306E\u7A2E\u985E -label.zone=\u30BE\u30FC\u30F3 -label.zone.wide=\u30BE\u30FC\u30F3\u5168\u4F53 +label.vsmctrlvlanid=\\u30B3\\u30F3\\u30C8\\u30ED\\u30FC\\u30EB VLAN ID +label.vsmpktvlanid=\\u30D1\\u30B1\\u30C3\\u30C8 VLAN ID +label.vsmstoragevlanid=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VLAN ID +label.vsphere.managed=vSphere \\u306B\\u3088\\u308B\\u7BA1\\u7406 +label.waiting=\\u5F85\\u6A5F\\u3057\\u3066\\u3044\\u307E\\u3059 +label.warn=\\u8B66\\u544A +label.wednesday=\\u6C34\\u66DC\\u65E5 +label.weekly=\\u6BCE\\u9031 +label.welcome.cloud.console=\\u7BA1\\u7406\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB\\u3078\\u3088\\u3046\\u3053\\u305D +label.welcome=\\u3088\\u3046\\u3053\\u305D +label.what.is.cloudstack=CloudStack&\#8482; \\u306B\\u3064\\u3044\\u3066 +label.xen.traffic.label=XenServer \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u30E9\\u30D9\\u30EB +label.yes=\\u306F\\u3044 +label.zone.details=\\u30BE\\u30FC\\u30F3\\u306E\\u8A73\\u7D30 +label.zone.id=\\u30BE\\u30FC\\u30F3 ID +label.zone.name=\\u30BE\\u30FC\\u30F3\\u540D +label.zone.step.1.title=\\u624B\\u9806 1. \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u9078\\u629E +label.zone.step.2.title=\\u624B\\u9806 2. \\u30BE\\u30FC\\u30F3\\u306E\\u8FFD\\u52A0 +label.zone.step.3.title=\\u624B\\u9806 3. \\u30DD\\u30C3\\u30C9\\u306E\\u8FFD\\u52A0 +label.zone.step.4.title=\\u624B\\u9806 4. IP \\u30A2\\u30C9\\u30EC\\u30B9\\u7BC4\\u56F2\\u306E\\u8FFD\\u52A0 +label.zones=\\u30BE\\u30FC\\u30F3 +label.zone.type=\\u30BE\\u30FC\\u30F3\\u306E\\u7A2E\\u985E +label.zone=\\u30BE\\u30FC\\u30F3 +label.zone.wide=\\u30BE\\u30FC\\u30F3\\u5168\\u4F53 label.zoneWizard.trafficType.guest=\u30b2\u30b9\u30c8\: \u30a8\u30f3\u30c9\u30e6\u30fc\u30b6\u30fc\u4eee\u60f3\u30de\u30b7\u30f3\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af label.zoneWizard.trafficType.management=\u7ba1\u7406\: \u30db\u30b9\u30c8\u3084\u30b7\u30b9\u30c6\u30e0VM\u306a\u3069\u3001\u7ba1\u7406\u30b5\u30fc\u30d0\u30fc\u3068\u901a\u4fe1\u3059\u308b\u3042\u3089\u3086\u308b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u542b\u3081\u305f\u3001CloudStack\u5185\u90e8\u306e\u30ea\u30bd\u30fc\u30b9\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af label.zoneWizard.trafficType.public=\u30d1\u30d6\u30ea\u30c3\u30af\: \u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u3068\u30af\u30e9\u30a6\u30c9\u5185\u306e\u4eee\u60f3\u30de\u30b7\u30f3\u306e\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af label.zoneWizard.trafficType.storage=\u30b9\u30c8\u30ec\u30fc\u30b8\: VM\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3068\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u306e\u3088\u3046\u306a\u3001\u30d7\u30e9\u30a4\u30de\u30ea\u3068\u30bb\u30ab\u30f3\u30c0\u30ea\u306e\u30b9\u30c8\u30ec\u30fc\u30b8\u30b5\u30fc\u30d0\u30fc\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3002 -managed.state=\u7BA1\u7406\u5BFE\u8C61\u72B6\u614B -message.acquire.new.ip=\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u65B0\u3057\u3044 IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +managed.state=\\u7BA1\\u7406\\u5BFE\\u8C61\\u72B6\\u614B +message.acquire.new.ip=\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u65B0\\u3057\\u3044 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? message.acquire.new.ip.vpc=VPC\u306e\u65b0\u3057\u3044IP\u3092\u53d6\u5f97\u3059\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002 -message.acquire.public.ip=\u65B0\u3057\u3044 IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3059\u308B\u30BE\u30FC\u30F3\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.action.cancel.maintenance.mode=\u3053\u306E\u4FDD\u5B88\u3092\u30AD\u30E3\u30F3\u30BB\u30EB\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.cancel.maintenance=\u30DB\u30B9\u30C8\u306E\u4FDD\u5B88\u306F\u6B63\u5E38\u306B\u30AD\u30E3\u30F3\u30BB\u30EB\u3055\u308C\u307E\u3057\u305F\u3002\u3053\u306E\u51E6\u7406\u306B\u306F\u6570\u5206\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.change.service.warning.for.instance=\u73FE\u5728\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.change.service.warning.for.router=\u73FE\u5728\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30EB\u30FC\u30BF\u30FC\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.delete.cluster=\u3053\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.disk.offering=\u3053\u306E\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.domain=\u3053\u306E\u30C9\u30E1\u30A4\u30F3\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.external.firewall=\u3053\u306E\u5916\u90E8\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u8B66\u544A\: \u540C\u3058\u5916\u90E8\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u518D\u5EA6\u8FFD\u52A0\u3059\u308B\u4E88\u5B9A\u3067\u3042\u308B\u5834\u5408\u306F\u3001\u30C7\u30D0\u30A4\u30B9\u306E\u4F7F\u7528\u72B6\u6CC1\u30C7\u30FC\u30BF\u3092\u30EA\u30BB\u30C3\u30C8\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.delete.external.load.balancer=\u3053\u306E\u5916\u90E8\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u8B66\u544A\: \u540C\u3058\u5916\u90E8\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u518D\u5EA6\u8FFD\u52A0\u3059\u308B\u4E88\u5B9A\u3067\u3042\u308B\u5834\u5408\u306F\u3001\u30C7\u30D0\u30A4\u30B9\u306E\u4F7F\u7528\u72B6\u6CC1\u30C7\u30FC\u30BF\u3092\u30EA\u30BB\u30C3\u30C8\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.delete.ingress.rule=\u3053\u306E\u53D7\u4FE1\u898F\u5247\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.ISO.for.all.zones=\u305D\u306E ISO \u306F\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u304B\u3089\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.ISO=\u3053\u306E ISO \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.network=\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.nexusVswitch=\u3053\u306E Nexus 1000V \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.physical.network=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.pod=\u3053\u306E\u30DD\u30C3\u30C9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.primary.storage=\u3053\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.secondary.storage=\u3053\u306E\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.security.group=\u3053\u306E\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.service.offering=\u3053\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.snapshot=\u3053\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.system.service.offering=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.template.for.all.zones=\u305D\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306F\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u304B\u3089\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.template=\u3053\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.volume=\u3053\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.zone=\u3053\u306E\u30BE\u30FC\u30F3\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.destroy.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u7834\u68C4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.destroy.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u7834\u68C4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.disable.cluster=\u3053\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.disable.nexusVswitch=\u3053\u306E Nexus 1000V \u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.disable.physical.network=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.disable.pod=\u3053\u306E\u30DD\u30C3\u30C9\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.disable.static.NAT=\u9759\u7684 NAT \u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.disable.zone=\u3053\u306E\u30BE\u30FC\u30F3\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.download.iso=\u3053\u306E ISO \u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.download.template=\u3053\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.enable.cluster=\u3053\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.enable.maintenance=\u30DB\u30B9\u30C8\u3092\u4FDD\u5B88\u3059\u308B\u6E96\u5099\u304C\u3067\u304D\u307E\u3057\u305F\u3002\u3053\u306E\u30DB\u30B9\u30C8\u4E0A\u306E VM \u6570\u306B\u3088\u3063\u3066\u306F\u3001\u3053\u306E\u51E6\u7406\u306B\u306F\u6570\u5206\u4EE5\u4E0A\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.enable.nexusVswitch=\u3053\u306E Nexus 1000V \u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.enable.physical.network=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.enable.pod=\u3053\u306E\u30DD\u30C3\u30C9\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.enable.zone=\u3053\u306E\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.force.reconnect=\u30DB\u30B9\u30C8\u306F\u5F37\u5236\u7684\u306B\u518D\u63A5\u7D9A\u3057\u307E\u3057\u305F\u3002\u3053\u306E\u51E6\u7406\u306B\u306F\u6570\u5206\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.host.enable.maintenance.mode=\u4FDD\u5B88\u30E2\u30FC\u30C9\u3092\u6709\u52B9\u306B\u3059\u308B\u3068\u3001\u3053\u306E\u30DB\u30B9\u30C8\u3067\u5B9F\u884C\u4E2D\u306E\u3059\u3079\u3066\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u307B\u304B\u306E\u4F7F\u7528\u3067\u304D\u308B\u30DB\u30B9\u30C8\u306B\u30E9\u30A4\u30D6 \u30DE\u30A4\u30B0\u30EC\u30FC\u30B7\u30E7\u30F3\u3055\u308C\u307E\u3059\u3002 +message.acquire.public.ip=\\u65B0\\u3057\\u3044 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3059\\u308B\\u30BE\\u30FC\\u30F3\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.action.cancel.maintenance.mode=\\u3053\\u306E\\u4FDD\\u5B88\\u3092\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.cancel.maintenance=\\u30DB\\u30B9\\u30C8\\u306E\\u4FDD\\u5B88\\u306F\\u6B63\\u5E38\\u306B\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u51E6\\u7406\\u306B\\u306F\\u6570\\u5206\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.change.service.warning.for.instance=\\u73FE\\u5728\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.change.service.warning.for.router=\\u73FE\\u5728\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.delete.cluster=\\u3053\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.disk.offering=\\u3053\\u306E\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.domain=\\u3053\\u306E\\u30C9\\u30E1\\u30A4\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.external.firewall=\\u3053\\u306E\\u5916\\u90E8\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u8B66\\u544A\: \\u540C\\u3058\\u5916\\u90E8\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u518D\\u5EA6\\u8FFD\\u52A0\\u3059\\u308B\\u4E88\\u5B9A\\u3067\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u4F7F\\u7528\\u72B6\\u6CC1\\u30C7\\u30FC\\u30BF\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.delete.external.load.balancer=\\u3053\\u306E\\u5916\\u90E8\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u8B66\\u544A\: \\u540C\\u3058\\u5916\\u90E8\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u518D\\u5EA6\\u8FFD\\u52A0\\u3059\\u308B\\u4E88\\u5B9A\\u3067\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u4F7F\\u7528\\u72B6\\u6CC1\\u30C7\\u30FC\\u30BF\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.delete.ingress.rule=\\u3053\\u306E\\u53D7\\u4FE1\\u898F\\u5247\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.ISO.for.all.zones=\\u305D\\u306E ISO \\u306F\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u3066\\u3044\\u307E\\u3059\\u3002\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u304B\\u3089\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.ISO=\\u3053\\u306E ISO \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.network=\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.nexusVswitch=\\u3053\\u306E Nexus 1000V \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.physical.network=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.pod=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.primary.storage=\\u3053\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.secondary.storage=\\u3053\\u306E\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.security.group=\\u3053\\u306E\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.service.offering=\\u3053\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.snapshot=\\u3053\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.system.service.offering=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.template.for.all.zones=\\u305D\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306F\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u3066\\u3044\\u307E\\u3059\\u3002\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u304B\\u3089\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.template=\\u3053\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.volume=\\u3053\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.delete.zone=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.destroy.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u7834\\u68C4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.destroy.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u7834\\u68C4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.disable.cluster=\\u3053\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.disable.nexusVswitch=\\u3053\\u306E Nexus 1000V \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.disable.physical.network=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.disable.pod=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.disable.static.NAT=\\u9759\\u7684 NAT \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.disable.zone=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.download.iso=\\u3053\\u306E ISO \\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.download.template=\\u3053\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.enable.cluster=\\u3053\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.enable.maintenance=\\u30DB\\u30B9\\u30C8\\u3092\\u4FDD\\u5B88\\u3059\\u308B\\u6E96\\u5099\\u304C\\u3067\\u304D\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u4E0A\\u306E VM \\u6570\\u306B\\u3088\\u3063\\u3066\\u306F\\u3001\\u3053\\u306E\\u51E6\\u7406\\u306B\\u306F\\u6570\\u5206\\u4EE5\\u4E0A\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.enable.nexusVswitch=\\u3053\\u306E Nexus 1000V \\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.enable.physical.network=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.enable.pod=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.enable.zone=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.force.reconnect=\\u30DB\\u30B9\\u30C8\\u306F\\u5F37\\u5236\\u7684\\u306B\\u518D\\u63A5\\u7D9A\\u3057\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u51E6\\u7406\\u306B\\u306F\\u6570\\u5206\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.host.enable.maintenance.mode=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u3068\\u3001\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u5B9F\\u884C\\u4E2D\\u306E\\u3059\\u3079\\u3066\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304C\\u307B\\u304B\\u306E\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u30DB\\u30B9\\u30C8\\u306B\\u30E9\\u30A4\\u30D6 \\u30DE\\u30A4\\u30B0\\u30EC\\u30FC\\u30B7\\u30E7\\u30F3\\u3055\\u308C\\u307E\\u3059\\u3002 message.action.instance.reset.password=\u00e3\u0081\u0093\u00e3\u0081\u00ae\u00e4\u00bb\u00ae\u00e6\u0083\u00b3\u00e3\u0083\u009e\u00e3\u0082\u00b7\u00e3\u0083\u00b3\u00e3\u0081\u00ae\u00e3\u0083\u00ab\u00e3\u0083\u00bc\u00e3\u0083\u0088\u00e3\u0083\u0091\u00e3\u0082\u00b9\u00e3\u0083\u00af\u00e3\u0083\u00bc\u00e3\u0083\u0089\u00e3\u0082\u0092\u00e5\u00a4\u0089\u00e6\u009b\u00b4\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0082\u0082\u00e3\u0082\u0088\u00e3\u0082\u008d\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0081\u00a7\u00e3\u0081\u0099\u00e3\u0081\u008b? -message.action.manage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.primarystorage.enable.maintenance.mode=\u8B66\u544A\: \u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4FDD\u5B88\u30E2\u30FC\u30C9\u306B\u3059\u308B\u3068\u3001\u305D\u306E\u30B9\u30C8\u30EC\u30FC\u30B8\u4E0A\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u4F7F\u7528\u3059\u308B\u3059\u3079\u3066\u306E VM \u304C\u505C\u6B62\u3057\u307E\u3059\u3002\u7D9A\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.reboot.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.reboot.router=\u3053\u306E\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u3067\u63D0\u4F9B\u3059\u308B\u3059\u3079\u3066\u306E\u30B5\u30FC\u30D3\u30B9\u304C\u4E2D\u65AD\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.reboot.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.release.ip=\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u3092\u89E3\u653E\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.remove.host=\u3053\u306E\u30DB\u30B9\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.reset.password.off=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306F\u73FE\u5728\u3053\u306E\u6A5F\u80FD\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u305B\u3093\u3002 -message.action.reset.password.warning=\u73FE\u5728\u306E\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.restore.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u5FA9\u5143\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.start.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.start.router=\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.start.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.stop.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.stop.router=\u3053\u306E\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u3067\u63D0\u4F9B\u3059\u308B\u3059\u3079\u3066\u306E\u30B5\u30FC\u30D3\u30B9\u304C\u4E2D\u65AD\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.stop.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.take.snapshot=\u3053\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.unmanage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u975E\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.activate.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u30A2\u30AF\u30C6\u30A3\u30D6\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.add.cluster=\u30BE\u30FC\u30F3 \u306E\u30DD\u30C3\u30C9 \u306B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3067\u7BA1\u7406\u3055\u308C\u308B\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.cluster.zone=\u30BE\u30FC\u30F3 \u306B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3067\u7BA1\u7406\u3055\u308C\u308B\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.disk.offering=\u65B0\u3057\u3044\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.domain=\u3053\u306E\u30C9\u30E1\u30A4\u30F3\u306B\u4F5C\u6210\u3059\u308B\u30B5\u30D6\u30C9\u30E1\u30A4\u30F3\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.firewall=\u30BE\u30FC\u30F3\u306B\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.guest.network=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u8FFD\u52A0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.add.host=\u65B0\u3057\u3044\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.adding.host=\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -message.adding.Netscaler.device=Netscaler \u30C7\u30D0\u30A4\u30B9\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -message.adding.Netscaler.provider=Netscaler \u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -message.add.ip.range.direct.network=\u30BE\u30FC\u30F3 \u306E\u76F4\u63A5\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.ip.range.to.pod=

    \u30DD\u30C3\u30C9 \u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u307E\u3059

    -message.add.ip.range=\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.additional.networks.desc=\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u63A5\u7D9A\u3059\u308B\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.load.balancer=\u30BE\u30FC\u30F3\u306B\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.load.balancer.under.ip=\u8CA0\u8377\u5206\u6563\u898F\u5247\u304C\u6B21\u306E IP \u30A2\u30C9\u30EC\u30B9\u306B\u5BFE\u3057\u3066\u8FFD\u52A0\u3055\u308C\u307E\u3057\u305F\: -message.add.network=\u30BE\u30FC\u30F3 \u306B\u65B0\u3057\u3044\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.new.gateway.to.vpc=\u3053\u306E VPC \u306B\u65B0\u3057\u3044\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306E\u60C5\u5831\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.pod.during.zone.creation=\u5404\u30BE\u30FC\u30F3\u306B\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DD\u30C3\u30C9\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30DD\u30C3\u30C9\u306F\u30DB\u30B9\u30C8\u3068\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059\u304C\u3001\u3053\u308C\u3089\u306F\u5F8C\u306E\u624B\u9806\u3067\u8FFD\u52A0\u3057\u307E\u3059\u3002\u6700\u521D\u306B\u3001CloudStack \u306E\u5185\u90E8\u7BA1\u7406\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u305F\u3081\u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u4E88\u7D04\u3057\u307E\u3059\u3002IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306F\u3001\u30AF\u30E9\u30A6\u30C9\u5185\u306E\u5404\u30BE\u30FC\u30F3\u3067\u91CD\u8907\u3057\u306A\u3044\u3088\u3046\u306B\u4E88\u7D04\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.add.pod=\u30BE\u30FC\u30F3 \u306B\u65B0\u3057\u3044\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.primary.storage=\u30BE\u30FC\u30F3 \u306E\u30DD\u30C3\u30C9 \u306B\u65B0\u3057\u3044\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.primary=\u65B0\u3057\u3044\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.secondary.storage=\u30BE\u30FC\u30F3 \u306B\u65B0\u3057\u3044\u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.service.offering=\u65B0\u3057\u3044\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.system.service.offering=\u65B0\u3057\u3044\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.template=\u65B0\u3057\u3044\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.volume=\u65B0\u3057\u3044\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u8FFD\u52A0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.advanced.mode.desc=VLAN \u30B5\u30DD\u30FC\u30C8\u3092\u6709\u52B9\u306B\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3053\u306E\u30E2\u30C7\u30EB\u3067\u306F\u6700\u3082\u67D4\u8EDF\u306B\u30AB\u30B9\u30BF\u30E0 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u63D0\u4F9B\u3067\u304D\u3001\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3001VPN\u3001\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306E\u30B5\u30DD\u30FC\u30C8\u306E\u307B\u304B\u306B\u3001\u76F4\u63A5\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3068\u4EEE\u60F3\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3082\u6709\u52B9\u306B\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002 -message.advanced.security.group=\u30B2\u30B9\u30C8 VM \u3092\u5206\u96E2\u3059\u308B\u305F\u3081\u306B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u4F7F\u7528\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.advanced.virtual=\u30B2\u30B9\u30C8 VM \u3092\u5206\u96E2\u3059\u308B\u305F\u3081\u306B\u30BE\u30FC\u30F3\u5168\u4F53\u306E VLAN \u3092\u4F7F\u7528\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.action.manage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.primarystorage.enable.maintenance.mode=\\u8B66\\u544A\: \\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u306B\\u3059\\u308B\\u3068\\u3001\\u305D\\u306E\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u4E0A\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u4F7F\\u7528\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E VM \\u304C\\u505C\\u6B62\\u3057\\u307E\\u3059\\u3002\\u7D9A\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.reboot.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.reboot.router=\\u3053\\u306E\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u3067\\u63D0\\u4F9B\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30B5\\u30FC\\u30D3\\u30B9\\u304C\\u4E2D\\u65AD\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.reboot.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.release.ip=\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u89E3\\u653E\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.remove.host=\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.reset.password.off=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306F\\u73FE\\u5728\\u3053\\u306E\\u6A5F\\u80FD\\u3092\\u30B5\\u30DD\\u30FC\\u30C8\\u3057\\u3066\\u3044\\u307E\\u305B\\u3093\\u3002 +message.action.reset.password.warning=\\u73FE\\u5728\\u306E\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.action.restore.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u5FA9\\u5143\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.start.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.start.router=\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.start.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.stop.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.stop.router=\\u3053\\u306E\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u3067\\u63D0\\u4F9B\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30B5\\u30FC\\u30D3\\u30B9\\u304C\\u4E2D\\u65AD\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.stop.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.take.snapshot=\\u3053\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.action.unmanage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u975E\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.activate.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.add.cluster=\\u30BE\\u30FC\\u30F3 \\u306E\\u30DD\\u30C3\\u30C9 \\u306B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3067\\u7BA1\\u7406\\u3055\\u308C\\u308B\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.cluster.zone=\\u30BE\\u30FC\\u30F3 \\u306B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3067\\u7BA1\\u7406\\u3055\\u308C\\u308B\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.disk.offering=\\u65B0\\u3057\\u3044\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30D1\\u30E9\\u30E1\\u30FC\\u30BF\\u30FC\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.domain=\\u3053\\u306E\\u30C9\\u30E1\\u30A4\\u30F3\\u306B\\u4F5C\\u6210\\u3059\\u308B\\u30B5\\u30D6\\u30C9\\u30E1\\u30A4\\u30F3\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.firewall=\\u30BE\\u30FC\\u30F3\\u306B\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.guest.network=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.add.host=\\u65B0\\u3057\\u3044\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30D1\\u30E9\\u30E1\\u30FC\\u30BF\\u30FC\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.adding.host=\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +message.adding.Netscaler.device=Netscaler \\u30C7\\u30D0\\u30A4\\u30B9\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +message.adding.Netscaler.provider=Netscaler \\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 +message.add.ip.range.direct.network=\\u30BE\\u30FC\\u30F3 \\u306E\\u76F4\\u63A5\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.ip.range.to.pod=

    \\u30DD\\u30C3\\u30C9 \\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059

    +message.add.ip.range=\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.additional.networks.desc=\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304C\\u63A5\\u7D9A\\u3059\\u308B\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.load.balancer=\\u30BE\\u30FC\\u30F3\\u306B\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.load.balancer.under.ip=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u304C\\u6B21\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306B\\u5BFE\\u3057\\u3066\\u8FFD\\u52A0\\u3055\\u308C\\u307E\\u3057\\u305F\: +message.add.network=\\u30BE\\u30FC\\u30F3 \\u306B\\u65B0\\u3057\\u3044\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.new.gateway.to.vpc=\\u3053\\u306E VPC \\u306B\\u65B0\\u3057\\u3044\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306E\\u60C5\\u5831\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.pod.during.zone.creation=\\u5404\\u30BE\\u30FC\\u30F3\\u306B\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DD\\u30C3\\u30C9\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306F\\u30DB\\u30B9\\u30C8\\u3068\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059\\u304C\\u3001\\u3053\\u308C\\u3089\\u306F\\u5F8C\\u306E\\u624B\\u9806\\u3067\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u6700\\u521D\\u306B\\u3001CloudStack \\u306E\\u5185\\u90E8\\u7BA1\\u7406\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u305F\\u3081\\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u4E88\\u7D04\\u3057\\u307E\\u3059\\u3002IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306F\\u3001\\u30AF\\u30E9\\u30A6\\u30C9\\u5185\\u306E\\u5404\\u30BE\\u30FC\\u30F3\\u3067\\u91CD\\u8907\\u3057\\u306A\\u3044\\u3088\\u3046\\u306B\\u4E88\\u7D04\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.add.pod=\\u30BE\\u30FC\\u30F3 \\u306B\\u65B0\\u3057\\u3044\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.primary.storage=\\u30BE\\u30FC\\u30F3 \\u306E\\u30DD\\u30C3\\u30C9 \\u306B\\u65B0\\u3057\\u3044\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.primary=\\u65B0\\u3057\\u3044\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30D1\\u30E9\\u30E1\\u30FC\\u30BF\\u30FC\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.secondary.storage=\\u30BE\\u30FC\\u30F3 \\u306B\\u65B0\\u3057\\u3044\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 +message.add.service.offering=\\u65B0\\u3057\\u3044\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.system.service.offering=\\u65B0\\u3057\\u3044\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.template=\\u65B0\\u3057\\u3044\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.volume=\\u65B0\\u3057\\u3044\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.add.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.advanced.mode.desc=VLAN \\u30B5\\u30DD\\u30FC\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u3053\\u306E\\u30E2\\u30C7\\u30EB\\u3067\\u306F\\u6700\\u3082\\u67D4\\u8EDF\\u306B\\u30AB\\u30B9\\u30BF\\u30E0 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u63D0\\u4F9B\\u3067\\u304D\\u3001\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3001VPN\\u3001\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306E\\u30B5\\u30DD\\u30FC\\u30C8\\u306E\\u307B\\u304B\\u306B\\u3001\\u76F4\\u63A5\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3068\\u4EEE\\u60F3\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3082\\u6709\\u52B9\\u306B\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002 +message.advanced.security.group=\\u30B2\\u30B9\\u30C8 VM \\u3092\\u5206\\u96E2\\u3059\\u308B\\u305F\\u3081\\u306B\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u4F7F\\u7528\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.advanced.virtual=\\u30B2\\u30B9\\u30C8 VM \\u3092\\u5206\\u96E2\\u3059\\u308B\\u305F\\u3081\\u306B\\u30BE\\u30FC\\u30F3\\u5168\\u4F53\\u306E VLAN \\u3092\\u4F7F\\u7528\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 message.after.enable.s3=S3\u57fa\u76e4\u30bb\u30ab\u30f3\u30c0\u30ea\u30b9\u30c8\u30ec\u30fc\u30b8\u304c\u8a2d\u5b9a\u3055\u308c\u307e\u3057\u305f\u3002 \u30ce\u30fc\u30c8\:\u3053\u306e\u30da\u30fc\u30b8\u3092\u9589\u3058\u308b\u3068S3\u3092\u518d\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002 -message.after.enable.swift=Swift \u304C\u69CB\u6210\u3055\u308C\u307E\u3057\u305F\u3002\u6CE8\: \u3053\u306E\u30DA\u30FC\u30B8\u3092\u9589\u3058\u308B\u3068\u3001Swift \u3092\u518D\u69CB\u6210\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002 -message.alert.state.detected=\u30A2\u30E9\u30FC\u30C8\u72B6\u614B\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F -message.allow.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u8A31\u53EF\u3059\u308B\u30E6\u30FC\u30B6\u30FC\u306E\u30E6\u30FC\u30B6\u30FC\u540D\u3068\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.apply.snapshot.policy=\u73FE\u5728\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 \u30DD\u30EA\u30B7\u30FC\u3092\u66F4\u65B0\u3057\u307E\u3057\u305F\u3002 -message.attach.iso.confirm=\u3053\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B ISO \u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30BF\u30C3\u30C1\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.attach.volume=\u65B0\u3057\u3044\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30A2\u30BF\u30C3\u30C1\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002Windows \u30D9\u30FC\u30B9\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u306B\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30A2\u30BF\u30C3\u30C1\u3059\u308B\u5834\u5408\u306F\u3001\u30A2\u30BF\u30C3\u30C1\u3057\u305F\u30C7\u30A3\u30B9\u30AF\u3092\u8A8D\u8B58\u3059\u308B\u305F\u3081\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u518D\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.basic.mode.desc=VLAN \u30B5\u30DD\u30FC\u30C8\u304C\u4E0D\u8981\u3067\u3042\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3067\u4F5C\u6210\u3055\u308C\u308B\u3059\u3079\u3066\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304B\u3089\u76F4\u63A5 IP \u30A2\u30C9\u30EC\u30B9\u304C\u5272\u308A\u5F53\u3066\u3089\u308C\u3001\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u4F7F\u7528\u3057\u3066\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u3068\u5206\u96E2\u304C\u63D0\u4F9B\u3055\u308C\u307E\u3059\u3002 -message.change.offering.confirm=\u3053\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u5909\u66F4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.change.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5909\u66F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.configure.all.traffic.types=\u8907\u6570\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304C\u3042\u308A\u307E\u3059\u3002[\u7DE8\u96C6] \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u3054\u3068\u306B\u30E9\u30D9\u30EB\u3092\u69CB\u6210\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.configuring.guest.traffic=\u30B2\u30B9\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 -message.configuring.physical.networks=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 -message.configuring.public.traffic=\u30D1\u30D6\u30EA\u30C3\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 -message.configuring.storage.traffic=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 -message.confirm.action.force.reconnect=\u3053\u306E\u30DB\u30B9\u30C8\u3092\u5F37\u5236\u518D\u63A5\u7D9A\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.delete.F5=F5 \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.delete.NetScaler=NetScaler \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.delete.SRX=SRX \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.destroy.router=\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u7834\u68C4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.disable.provider=\u3053\u306E\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.enable.provider=\u3053\u306E\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.join.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306B\u53C2\u52A0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.remove.IP.range=\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.shutdown.provider=\u3053\u306E\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u30B7\u30E3\u30C3\u30C8\u30C0\u30A6\u30F3\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.copy.iso.confirm=ISO \u3092\u6B21\u306E\u5834\u6240\u306B\u30B3\u30D4\u30FC\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.copy.template=\u30BE\u30FC\u30F3 \u304B\u3089\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 XXX \u3092\u6B21\u306E\u5834\u6240\u306B\u30B3\u30D4\u30FC\u3057\u307E\u3059\: -message.create.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.create.template.vm=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 \u304B\u3089 VM \u3092\u4F5C\u6210\u3057\u307E\u3059 -message.create.template.volume=\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0 \u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3059\u308B\u524D\u306B\u3001\u6B21\u306E\u60C5\u5831\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u30DC\u30EA\u30E5\u30FC\u30E0 \u30B5\u30A4\u30BA\u306B\u3088\u3063\u3066\u306F\u3001\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210\u306B\u306F\u6570\u5206\u4EE5\u4E0A\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 -message.creating.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 -message.creating.guest.network=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 -message.creating.physical.networks=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 -message.creating.pod=\u30DD\u30C3\u30C9\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 -message.creating.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 -message.creating.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 -message.creating.zone=\u30BE\u30FC\u30F3\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 -message.decline.invitation=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u62DB\u5F85\u3092\u8F9E\u9000\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.delete.account=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.delete.gateway=\u3053\u306E\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.delete.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.delete.user=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.delete.VPN.connection=VPN \u63A5\u7D9A\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.delete.VPN.customer.gateway=\u3053\u306E VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.delete.VPN.gateway=\u3053\u306E VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.desc.advanced.zone=\u3088\u308A\u6D17\u7DF4\u3055\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6280\u8853\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u3088\u308A\u67D4\u8EDF\u306B\u30B2\u30B9\u30C8\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u5B9A\u7FA9\u3057\u3001\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3001VPN\u3001\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306E\u30B5\u30DD\u30FC\u30C8\u306E\u3088\u3046\u306A\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA\u3057\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u63D0\u4F9B\u3067\u304D\u307E\u3059\u3002 -message.desc.basic.zone=\u5404 VM \u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B IP \u30A2\u30C9\u30EC\u30B9\u304C\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304B\u3089\u76F4\u63A5\u5272\u308A\u5F53\u3066\u3089\u308C\u308B\u3001\u5358\u4E00\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u63D0\u4F9B\u3057\u307E\u3059\u3002\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 (\u9001\u4FE1\u5143 IP \u30A2\u30C9\u30EC\u30B9\u306E\u30D5\u30A3\u30EB\u30BF\u30FC) \u306E\u3088\u3046\u306A\u30EC\u30A4\u30E4\u30FC 3 \u30EC\u30D9\u30EB\u306E\u65B9\u6CD5\u3067\u30B2\u30B9\u30C8\u3092\u5206\u96E2\u3067\u304D\u307E\u3059\u3002 -message.desc.cluster=\u5404\u30DD\u30C3\u30C9\u306B\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30AF\u30E9\u30B9\u30BF\u30FC\u306F\u30DB\u30B9\u30C8\u3092\u30B0\u30EB\u30FC\u30D7\u5316\u3059\u308B\u65B9\u6CD5\u3067\u3059\u30021 \u3064\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u5185\u306E\u30DB\u30B9\u30C8\u306F\u3059\u3079\u3066\u540C\u4E00\u306E\u30CF\u30FC\u30C9\u30A6\u30A7\u30A2\u304B\u3089\u69CB\u6210\u3055\u308C\u3001\u540C\u3058\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3092\u5B9F\u884C\u3057\u3001\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u4E0A\u306B\u3042\u308A\u3001\u540C\u3058\u5171\u6709\u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u30A2\u30AF\u30BB\u30B9\u3057\u307E\u3059\u3002\u5404\u30AF\u30E9\u30B9\u30BF\u30FC\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DB\u30B9\u30C8\u3068 1 \u3064\u4EE5\u4E0A\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059\u3002 -message.desc.host=\u5404\u30AF\u30E9\u30B9\u30BF\u30FC\u306B\u306F\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u3001\u30B2\u30B9\u30C8 VM \u3092\u5B9F\u884C\u3059\u308B\u305F\u3081\u306E\u30DB\u30B9\u30C8 (\u30B3\u30F3\u30D4\u30E5\u30FC\u30BF\u30FC) \u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002CloudStack \u3067\u30DB\u30B9\u30C8\u3092\u6A5F\u80FD\u3055\u305B\u308B\u306B\u306F\u3001\u30DB\u30B9\u30C8\u306B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3057\u3066 IP \u30A2\u30C9\u30EC\u30B9\u3092\u5272\u308A\u5F53\u3066\u3001\u30DB\u30B9\u30C8\u304C CloudStack \u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u306B\u63A5\u7D9A\u3057\u3066\u3044\u308B\u3053\u3068\u3092\u78BA\u8A8D\u3057\u307E\u3059\u3002

    \u30DB\u30B9\u30C8\u306E DNS \u540D\u307E\u305F\u306F IP \u30A2\u30C9\u30EC\u30B9\u3001\u30E6\u30FC\u30B6\u30FC\u540D (\u901A\u5E38\u306F root) \u3068\u30D1\u30B9\u30EF\u30FC\u30C9\u3001\u304A\u3088\u3073\u30DB\u30B9\u30C8\u306E\u5206\u985E\u306B\u4F7F\u7528\u3059\u308B\u30E9\u30D9\u30EB\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.desc.primary.storage=\u5404\u30AF\u30E9\u30B9\u30BF\u30FC\u306B\u306F\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u3001\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30B5\u30FC\u30D0\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306F\u3001\u30AF\u30E9\u30B9\u30BF\u30FC\u5185\u306E\u30DB\u30B9\u30C8\u4E0A\u3067\u52D5\u4F5C\u3059\u308B\u3059\u3079\u3066\u306E VM \u306E\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u683C\u7D0D\u3057\u307E\u3059\u3002\u57FA\u790E\u3068\u306A\u308B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u308B\u3001\u6A19\u6E96\u306B\u6E96\u62E0\u3057\u305F\u30D7\u30ED\u30C8\u30B3\u30EB\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.desc.secondary.storage=\u5404\u30BE\u30FC\u30F3\u306B\u306F\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u3001NFS \u3064\u307E\u308A\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30B5\u30FC\u30D0\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306F VM \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3001ISO \u30A4\u30E1\u30FC\u30B8\u3001\u304A\u3088\u3073VM \u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u683C\u7D0D\u3057\u307E\u3059\u3002\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306F\u30BE\u30FC\u30F3\u5185\u306E\u3059\u3079\u3066\u306E\u30DB\u30B9\u30C8\u3067\u4F7F\u7528\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002

    IP \u30A2\u30C9\u30EC\u30B9\u3068\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3055\u308C\u305F\u30D1\u30B9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.desc.zone=\u30BE\u30FC\u30F3\u306F CloudStack \u74B0\u5883\u5185\u306E\u6700\u5927\u306E\u7D44\u7E54\u5358\u4F4D\u3067\u3001\u901A\u5E38\u3001\u5358\u4E00\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u306B\u76F8\u5F53\u3057\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306B\u3088\u3063\u3066\u7269\u7406\u7684\u306A\u5206\u96E2\u3068\u5197\u9577\u6027\u304C\u63D0\u4F9B\u3055\u308C\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DD\u30C3\u30C9 (\u5404\u30DD\u30C3\u30C9\u306F\u30DB\u30B9\u30C8\u3068\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059) \u3068\u3001\u30BE\u30FC\u30F3\u5185\u306E\u3059\u3079\u3066\u306E\u30DD\u30C3\u30C9\u3067\u5171\u6709\u3055\u308C\u308B\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059\u3002 -message.detach.disk=\u3053\u306E\u30C7\u30A3\u30B9\u30AF\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.detach.iso.confirm=\u3053\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304B\u3089 ISO \u30D5\u30A1\u30A4\u30EB\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.after.enable.swift=Swift \\u304C\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u6CE8\: \\u3053\\u306E\\u30DA\\u30FC\\u30B8\\u3092\\u9589\\u3058\\u308B\\u3068\\u3001Swift \\u3092\\u518D\\u69CB\\u6210\\u3059\\u308B\\u3053\\u3068\\u306F\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002 +message.alert.state.detected=\\u30A2\\u30E9\\u30FC\\u30C8\\u72B6\\u614B\\u304C\\u691C\\u51FA\\u3055\\u308C\\u307E\\u3057\\u305F +message.allow.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u8A31\\u53EF\\u3059\\u308B\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u540D\\u3068\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.apply.snapshot.policy=\\u73FE\\u5728\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 \\u30DD\\u30EA\\u30B7\\u30FC\\u3092\\u66F4\\u65B0\\u3057\\u307E\\u3057\\u305F\\u3002 +message.attach.iso.confirm=\\u3053\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B ISO \\u30D5\\u30A1\\u30A4\\u30EB\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.attach.volume=\\u65B0\\u3057\\u3044\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002Windows \\u30D9\\u30FC\\u30B9\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306B\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u305F\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u8A8D\\u8B58\\u3059\\u308B\\u305F\\u3081\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u518D\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.basic.mode.desc=VLAN \\u30B5\\u30DD\\u30FC\\u30C8\\u304C\\u4E0D\\u8981\\u3067\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3067\\u4F5C\\u6210\\u3055\\u308C\\u308B\\u3059\\u3079\\u3066\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304B\\u3089\\u76F4\\u63A5 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304C\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u3001\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3\\u3068\\u5206\\u96E2\\u304C\\u63D0\\u4F9B\\u3055\\u308C\\u307E\\u3059\\u3002 +message.change.offering.confirm=\\u3053\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u5909\\u66F4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.change.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5909\\u66F4\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.configure.all.traffic.types=\\u8907\\u6570\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002[\\u7DE8\\u96C6] \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u3054\\u3068\\u306B\\u30E9\\u30D9\\u30EB\\u3092\\u69CB\\u6210\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.configuring.guest.traffic=\\u30B2\\u30B9\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.configuring.physical.networks=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.configuring.public.traffic=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.configuring.storage.traffic=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.confirm.action.force.reconnect=\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u5F37\\u5236\\u518D\\u63A5\\u7D9A\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.delete.F5=F5 \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.delete.NetScaler=NetScaler \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.delete.SRX=SRX \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.destroy.router=\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u7834\\u68C4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.disable.provider=\\u3053\\u306E\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.enable.provider=\\u3053\\u306E\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.join.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306B\\u53C2\\u52A0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.remove.IP.range=\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.confirm.shutdown.provider=\\u3053\\u306E\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u30B7\\u30E3\\u30C3\\u30C8\\u30C0\\u30A6\\u30F3\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.copy.iso.confirm=ISO \\u3092\\u6B21\\u306E\\u5834\\u6240\\u306B\\u30B3\\u30D4\\u30FC\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.copy.template=\\u30BE\\u30FC\\u30F3 \\u304B\\u3089\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 XXX \\u3092\\u6B21\\u306E\\u5834\\u6240\\u306B\\u30B3\\u30D4\\u30FC\\u3057\\u307E\\u3059\: +message.create.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.create.template.vm=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 \\u304B\\u3089 VM \\u3092\\u4F5C\\u6210\\u3057\\u307E\\u3059 +message.create.template.volume=\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u524D\\u306B\\u3001\\u6B21\\u306E\\u60C5\\u5831\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u30B5\\u30A4\\u30BA\\u306B\\u3088\\u3063\\u3066\\u306F\\u3001\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210\\u306B\\u306F\\u6570\\u5206\\u4EE5\\u4E0A\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.creating.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.creating.guest.network=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.creating.physical.networks=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.creating.pod=\\u30DD\\u30C3\\u30C9\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.creating.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.creating.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.creating.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 +message.decline.invitation=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u62DB\\u5F85\\u3092\\u8F9E\\u9000\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.delete.account=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.delete.gateway=\\u3053\\u306E\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.delete.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.delete.user=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.delete.VPN.connection=VPN \\u63A5\\u7D9A\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.delete.VPN.customer.gateway=\\u3053\\u306E VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.delete.VPN.gateway=\\u3053\\u306E VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.desc.advanced.zone=\\u3088\\u308A\\u6D17\\u7DF4\\u3055\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6280\\u8853\\u3092\\u30B5\\u30DD\\u30FC\\u30C8\\u3057\\u307E\\u3059\\u3002\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3059\\u308B\\u3068\\u3001\\u3088\\u308A\\u67D4\\u8EDF\\u306B\\u30B2\\u30B9\\u30C8\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u5B9A\\u7FA9\\u3057\\u3001\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3001VPN\\u3001\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306E\\u30B5\\u30DD\\u30FC\\u30C8\\u306E\\u3088\\u3046\\u306A\\u30AB\\u30B9\\u30BF\\u30DE\\u30A4\\u30BA\\u3057\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u63D0\\u4F9B\\u3067\\u304D\\u307E\\u3059\\u3002 +message.desc.basic.zone=\\u5404 VM \\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304C\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304B\\u3089\\u76F4\\u63A5\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u308B\\u3001\\u5358\\u4E00\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u63D0\\u4F9B\\u3057\\u307E\\u3059\\u3002\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 (\\u9001\\u4FE1\\u5143 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u30D5\\u30A3\\u30EB\\u30BF\\u30FC) \\u306E\\u3088\\u3046\\u306A\\u30EC\\u30A4\\u30E4\\u30FC 3 \\u30EC\\u30D9\\u30EB\\u306E\\u65B9\\u6CD5\\u3067\\u30B2\\u30B9\\u30C8\\u3092\\u5206\\u96E2\\u3067\\u304D\\u307E\\u3059\\u3002 +message.desc.cluster=\\u5404\\u30DD\\u30C3\\u30C9\\u306B\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306F\\u30DB\\u30B9\\u30C8\\u3092\\u30B0\\u30EB\\u30FC\\u30D7\\u5316\\u3059\\u308B\\u65B9\\u6CD5\\u3067\\u3059\\u30021 \\u3064\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306F\\u3059\\u3079\\u3066\\u540C\\u4E00\\u306E\\u30CF\\u30FC\\u30C9\\u30A6\\u30A7\\u30A2\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u3001\\u540C\\u3058\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3092\\u5B9F\\u884C\\u3057\\u3001\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u4E0A\\u306B\\u3042\\u308A\\u3001\\u540C\\u3058\\u5171\\u6709\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3057\\u307E\\u3059\\u3002\\u5404\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DB\\u30B9\\u30C8\\u3068 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002 +message.desc.host=\\u5404\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306B\\u306F\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u3001\\u30B2\\u30B9\\u30C8 VM \\u3092\\u5B9F\\u884C\\u3059\\u308B\\u305F\\u3081\\u306E\\u30DB\\u30B9\\u30C8 (\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30BF\\u30FC) \\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002CloudStack \\u3067\\u30DB\\u30B9\\u30C8\\u3092\\u6A5F\\u80FD\\u3055\\u305B\\u308B\\u306B\\u306F\\u3001\\u30DB\\u30B9\\u30C8\\u306B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3092\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3057\\u3066 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u3001\\u30DB\\u30B9\\u30C8\\u304C CloudStack \\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u63A5\\u7D9A\\u3057\\u3066\\u3044\\u308B\\u3053\\u3068\\u3092\\u78BA\\u8A8D\\u3057\\u307E\\u3059\\u3002

    \\u30DB\\u30B9\\u30C8\\u306E DNS \\u540D\\u307E\\u305F\\u306F IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3001\\u30E6\\u30FC\\u30B6\\u30FC\\u540D (\\u901A\\u5E38\\u306F root) \\u3068\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3001\\u304A\\u3088\\u3073\\u30DB\\u30B9\\u30C8\\u306E\\u5206\\u985E\\u306B\\u4F7F\\u7528\\u3059\\u308B\\u30E9\\u30D9\\u30EB\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.desc.primary.storage=\\u5404\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306B\\u306F\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u3001\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F\\u3001\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u4E0A\\u3067\\u52D5\\u4F5C\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E VM \\u306E\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u683C\\u7D0D\\u3057\\u307E\\u3059\\u3002\\u57FA\\u790E\\u3068\\u306A\\u308B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3067\\u30B5\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u308B\\u3001\\u6A19\\u6E96\\u306B\\u6E96\\u62E0\\u3057\\u305F\\u30D7\\u30ED\\u30C8\\u30B3\\u30EB\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.desc.secondary.storage=\\u5404\\u30BE\\u30FC\\u30F3\\u306B\\u306F\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u3001NFS \\u3064\\u307E\\u308A\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F VM \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3001ISO \\u30A4\\u30E1\\u30FC\\u30B8\\u3001\\u304A\\u3088\\u3073VM \\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u683C\\u7D0D\\u3057\\u307E\\u3059\\u3002\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306F\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u3059\\u3079\\u3066\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002

    IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3068\\u30A8\\u30AF\\u30B9\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u305F\\u30D1\\u30B9\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.desc.zone=\\u30BE\\u30FC\\u30F3\\u306F CloudStack \\u74B0\\u5883\\u5185\\u306E\\u6700\\u5927\\u306E\\u7D44\\u7E54\\u5358\\u4F4D\\u3067\\u3001\\u901A\\u5E38\\u3001\\u5358\\u4E00\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u306B\\u76F8\\u5F53\\u3057\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306B\\u3088\\u3063\\u3066\\u7269\\u7406\\u7684\\u306A\\u5206\\u96E2\\u3068\\u5197\\u9577\\u6027\\u304C\\u63D0\\u4F9B\\u3055\\u308C\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DD\\u30C3\\u30C9 (\\u5404\\u30DD\\u30C3\\u30C9\\u306F\\u30DB\\u30B9\\u30C8\\u3068\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059) \\u3068\\u3001\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u3059\\u3079\\u3066\\u306E\\u30DD\\u30C3\\u30C9\\u3067\\u5171\\u6709\\u3055\\u308C\\u308B\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002 +message.detach.disk=\\u3053\\u306E\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.detach.iso.confirm=\\u3053\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304B\\u3089 ISO \\u30D5\\u30A1\\u30A4\\u30EB\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? message.disable.account=\u00e3\u0081\u0093\u00e3\u0081\u00ae\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0082\u0092\u00e7\u0084\u00a1\u00e5\u008a\u00b9\u00e3\u0081\u00ab\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0082\u0082\u00e3\u0082\u0088\u00e3\u0082\u008d\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0081\u00a7\u00e3\u0081\u0099\u00e3\u0081\u008b? \u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0082\u0092\u00e7\u0084\u00a1\u00e5\u008a\u00b9\u00e3\u0081\u00ab\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u0093\u00e3\u0081\u00a8\u00e3\u0081\u00ab\u00e3\u0082\u0088\u00e3\u0082\u008a\u00e3\u0080\u0081\u00e3\u0081\u0093\u00e3\u0081\u00ae\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0081\u00ae\u00e3\u0081\u0099\u00e3\u0081\u00b9\u00e3\u0081\u00a6\u00e3\u0081\u00ae\u00e3\u0083\u00a6\u00e3\u0083\u00bc\u00e3\u0082\u00b6\u00e3\u0083\u00bc\u00e3\u0081\u00af\u00e3\u0082\u00af\u00e3\u0083\u00a9\u00e3\u0082\u00a6\u00e3\u0083\u0089\u00e3\u0083\u00aa\u00e3\u0082\u00bd\u00e3\u0083\u00bc\u00e3\u0082\u00b9\u00e3\u0081\u00ab\u00e3\u0082\u00a2\u00e3\u0082\u00af\u00e3\u0082\u00bb\u00e3\u0082\u00b9\u00e3\u0081\u00a7\u00e3\u0081\u008d\u00e3\u0081\u00aa\u00e3\u0081\u008f\u00e3\u0081\u00aa\u00e3\u0082\u008a\u00e3\u0081\u00be\u00e3\u0081\u0099\u00e3\u0080\u0082\u00e5\u00ae\u009f\u00e8\u00a1\u008c\u00e4\u00b8\u00ad\u00e3\u0081\u00ae\u00e3\u0081\u0099\u00e3\u0081\u00b9\u00e3\u0081\u00a6\u00e3\u0081\u00ae\u00e4\u00bb\u00ae\u00e6\u0083\u00b3\u00e3\u0083\u009e\u00e3\u0082\u00b7\u00e3\u0083\u00b3\u00e3\u0081\u00af\u00e3\u0081\u0099\u00e3\u0081\u0090\u00e3\u0081\u00ab\u00e3\u0082\u00b7\u00e3\u0083\u00a3\u00e3\u0083\u0083\u00e3\u0083\u0088\u00e3\u0083\u0080\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0081\u0095\u00e3\u0082\u008c\u00e3\u0081\u00be\u00e3\u0081\u0099\u00e3\u0080\u0082 -message.disable.snapshot.policy=\u73FE\u5728\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 \u30DD\u30EA\u30B7\u30FC\u3092\u7121\u52B9\u306B\u3057\u307E\u3057\u305F\u3002 -message.disable.user=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.disable.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.disable.vpn=VPN \u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.disable.snapshot.policy=\\u73FE\\u5728\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 \\u30DD\\u30EA\\u30B7\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u307E\\u3057\\u305F\\u3002 +message.disable.user=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.disable.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.disable.vpn=VPN \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? message.download.ISO=ISO\u00e3\u0082\u0092\u00e3\u0083\u0080\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u00ad\u00e3\u0083\u00bc\u00e3\u0083\u0089\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab00000\u00e3\u0082\u0092\u00e3\u0082\u00af\u00e3\u0083\u00aa\u00e3\u0083\u0083\u00e3\u0082\u00af\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 message.download.template=\u00e3\u0083\u0086\u00e3\u0083\u00b3\u00e3\u0083\u0097\u00e3\u0083\u00ac\u00e3\u0083\u00bc\u00e3\u0083\u0088\u00e3\u0082\u0092\u00e3\u0083\u0080\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u00ad\u00e3\u0083\u00bc\u00e3\u0083\u0089\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab00000\u00e3\u0082\u0092\u00e3\u0082\u00af\u00e3\u0083\u00aa\u00e3\u0083\u0083\u00e3\u0082\u00af\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 -message.download.volume.confirm=\u3053\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.download.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3059\u308B\u306B\u306F 00000 \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u307E\u3059 -message.edit.account=\u7DE8\u96C6 ("-1" \u306F\u3001\u30EA\u30BD\u30FC\u30B9\u4F5C\u6210\u306E\u91CF\u306B\u5236\u9650\u304C\u306A\u3044\u3053\u3068\u3092\u793A\u3057\u307E\u3059) -message.edit.confirm=[\u4FDD\u5B58] \u3092\u30AF\u30EA\u30C3\u30AF\u3059\u308B\u524D\u306B\u5909\u66F4\u5185\u5BB9\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.edit.limits=\u6B21\u306E\u30EA\u30BD\u30FC\u30B9\u306B\u5236\u9650\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u300C-1\u300D\u306F\u3001\u30EA\u30BD\u30FC\u30B9\u4F5C\u6210\u306B\u5236\u9650\u304C\u306A\u3044\u3053\u3068\u3092\u793A\u3057\u307E\u3059\u3002 -message.edit.traffic.type=\u3053\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u306B\u95A2\u9023\u4ED8\u3051\u308B\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF \u30E9\u30D9\u30EB\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.enable.account=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.enabled.vpn.ip.sec=IPSec \u4E8B\u524D\u5171\u6709\u30AD\u30FC\: -message.enabled.vpn=\u73FE\u5728\u3001VPN \u30A2\u30AF\u30BB\u30B9\u304C\u6709\u52B9\u306B\u306A\u3063\u3066\u3044\u307E\u3059\u3002\u6B21\u306E IP \u30A2\u30C9\u30EC\u30B9\u7D4C\u7531\u3067\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u3059\u3002 -message.enable.user=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.enable.vpn.access=\u73FE\u5728\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u306B\u5BFE\u3059\u308B VPN \u306F\u7121\u52B9\u3067\u3059\u3002VPN \u30A2\u30AF\u30BB\u30B9\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.enable.vpn=\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u306B\u5BFE\u3059\u308B VPN \u30A2\u30AF\u30BB\u30B9\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.enabling.security.group.provider=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 \u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 -message.enabling.zone=\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 -message.enter.token=\u96FB\u5B50\u30E1\u30FC\u30EB\u306E\u62DB\u5F85\u72B6\u306B\u8A18\u8F09\u3055\u308C\u3066\u3044\u308B\u30C8\u30FC\u30AF\u30F3\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.generate.keys=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u306B\u65B0\u3057\u3044\u30AD\u30FC\u3092\u751F\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.guest.traffic.in.advanced.zone=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306F\u3001\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u9593\u306E\u901A\u4FE1\u3067\u3059\u3002\u5404\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30B2\u30B9\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u901A\u4FE1\u3059\u308B\u305F\u3081\u306E VLAN ID \u306E\u7BC4\u56F2\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.guest.traffic.in.basic.zone=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306F\u3001\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u9593\u306E\u901A\u4FE1\u3067\u3059\u3002CloudStack \u3067\u30B2\u30B9\u30C8 VM \u306B\u5272\u308A\u5F53\u3066\u3089\u308C\u308B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3053\u306E\u7BC4\u56F2\u304C\u4E88\u7D04\u6E08\u307F\u306E\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3068\u91CD\u8907\u3057\u306A\u3044\u3088\u3046\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.installWizard.click.retry=\u8D77\u52D5\u3092\u518D\u8A66\u884C\u3059\u308B\u306B\u306F\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.installWizard.copy.whatIsAPod=\u901A\u5E38\u30011 \u3064\u306E\u30DD\u30C3\u30C9\u306F\u5358\u4E00\u306E\u30E9\u30C3\u30AF\u3092\u8868\u3057\u307E\u3059\u3002\u540C\u3058\u30DD\u30C3\u30C9\u5185\u306E\u30DB\u30B9\u30C8\u306F\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u306B\u542B\u307E\u308C\u307E\u3059\u3002

    \u30DD\u30C3\u30C9\u306F CloudStack&\#8482; \u74B0\u5883\u5185\u306E 2 \u756A\u76EE\u306B\u5927\u304D\u306A\u7D44\u7E54\u5358\u4F4D\u3067\u3059\u3002\u30DD\u30C3\u30C9\u306F\u30BE\u30FC\u30F3\u306B\u542B\u307E\u308C\u307E\u3059\u3002\u5404\u30BE\u30FC\u30F3\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DD\u30C3\u30C9\u3092\u542B\u3080\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002\u57FA\u672C\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3067\u306F\u3001\u30BE\u30FC\u30F3\u5185\u306E\u30DD\u30C3\u30C9\u306F 1 \u3064\u3067\u3059\u3002 -message.installWizard.copy.whatIsAZone=\u30BE\u30FC\u30F3\u306F CloudStack&\#8482; \u74B0\u5883\u5185\u306E\u6700\u5927\u306E\u7D44\u7E54\u5358\u4F4D\u3067\u3059\u30021 \u3064\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u5185\u306B\u8907\u6570\u306E\u30BE\u30FC\u30F3\u3092\u8A2D\u5B9A\u3067\u304D\u307E\u3059\u304C\u3001\u901A\u5E38\u3001\u30BE\u30FC\u30F3\u306F\u5358\u4E00\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u306B\u76F8\u5F53\u3057\u307E\u3059\u3002\u30A4\u30F3\u30D5\u30E9\u30B9\u30C8\u30E9\u30AF\u30C1\u30E3\u3092\u30BE\u30FC\u30F3\u306B\u7D44\u7E54\u5316\u3059\u308B\u3068\u3001\u30BE\u30FC\u30F3\u3092\u7269\u7406\u7684\u306B\u5206\u96E2\u3057\u3066\u5197\u9577\u5316\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002\u305F\u3068\u3048\u3070\u3001\u5404\u30BE\u30FC\u30F3\u306B\u96FB\u6E90\u3068\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30A2\u30C3\u30D7\u30EA\u30F3\u30AF\u3092\u914D\u5099\u3057\u307E\u3059\u3002\u5FC5\u9808\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u304C\u3001\u30BE\u30FC\u30F3\u306F\u9060\u9694\u5730\u306B\u5206\u6563\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002 -message.installWizard.copy.whatIsSecondaryStorage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306F\u30BE\u30FC\u30F3\u3068\u95A2\u9023\u4ED8\u3051\u3089\u308C\u3001\u6B21\u306E\u9805\u76EE\u3092\u683C\u7D0D\u3057\u307E\u3059\u3002
    • \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 - VM \u306E\u8D77\u52D5\u306B\u4F7F\u7528\u3067\u304D\u308B OS \u30A4\u30E1\u30FC\u30B8\u3067\u3001\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u306E\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u306A\u3069\u8FFD\u52A0\u306E\u69CB\u6210\u3092\u542B\u3081\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002
    • ISO \u30A4\u30E1\u30FC\u30B8 - \u8D77\u52D5\u53EF\u80FD\u307E\u305F\u306F\u8D77\u52D5\u4E0D\u53EF\u306E OS \u30A4\u30E1\u30FC\u30B8\u3067\u3059\u3002
    • \u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 - VM \u30C7\u30FC\u30BF\u306E\u4FDD\u5B58\u30B3\u30D4\u30FC\u3067\u3059\u3002\u30C7\u30FC\u30BF\u306E\u5FA9\u5143\u307E\u305F\u306F\u65B0\u3057\u3044\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210\u306B\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002
    -message.installWizard.tooltip.addCluster.name=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u540D\u524D\u3067\u3059\u3002CloudStack \u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u306A\u3044\u3001\u4EFB\u610F\u306E\u30C6\u30AD\u30B9\u30C8\u3092\u6307\u5B9A\u3067\u304D\u307E\u3059\u3002 -message.installWizard.tooltip.addHost.hostname=\u30DB\u30B9\u30C8\u306E DNS \u540D\u307E\u305F\u306F IP \u30A2\u30C9\u30EC\u30B9\u3067\u3059\u3002 -message.installWizard.tooltip.addHost.password=XenServer \u5074\u3067\u6307\u5B9A\u3057\u305F\u3001\u4E0A\u306E\u30E6\u30FC\u30B6\u30FC\u540D\u306B\u5BFE\u3059\u308B\u30D1\u30B9\u30EF\u30FC\u30C9\u3067\u3059\u3002 -message.installWizard.tooltip.addHost.username=\u901A\u5E38\u306F root \u3067\u3059\u3002 -message.installWizard.tooltip.addPod.name=\u30DD\u30C3\u30C9\u306E\u540D\u524D\u3067\u3059\u3002 -message.installWizard.tooltip.addPod.reservedSystemEndIp=\u3053\u308C\u306F\u3001\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 VM \u304A\u3088\u3073\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7 VM \u3092\u7BA1\u7406\u3059\u308B\u305F\u3081\u306B CloudStack \u3067\u4F7F\u7528\u3059\u308B\u3001\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u5185\u306E IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30B5\u30FC\u30D0\u30FC\u3068\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u304B\u3089\u5272\u308A\u5F53\u3066\u307E\u3059\u3002 -message.installWizard.tooltip.addPod.reservedSystemGateway=\u3053\u306E\u30DD\u30C3\u30C9\u5185\u306E\u30DB\u30B9\u30C8\u306E\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3067\u3059\u3002 -message.installWizard.tooltip.addPod.reservedSystemNetmask=\u30B2\u30B9\u30C8\u306E\u4F7F\u7528\u3059\u308B\u30B5\u30D6\u30CD\u30C3\u30C8\u4E0A\u3067\u4F7F\u7528\u3055\u308C\u308B\u30CD\u30C3\u30C8\u30DE\u30B9\u30AF\u3067\u3059\u3002 -message.installWizard.tooltip.addPod.reservedSystemStartIp=\u3053\u308C\u306F\u3001\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 VM \u304A\u3088\u3073\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7 VM \u3092\u7BA1\u7406\u3059\u308B\u305F\u3081\u306B CloudStack \u3067\u4F7F\u7528\u3059\u308B\u3001\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u5185\u306E IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30B5\u30FC\u30D0\u30FC\u3068\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u304B\u3089\u5272\u308A\u5F53\u3066\u307E\u3059\u3002 -message.installWizard.tooltip.addPrimaryStorage.name=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C7\u30D0\u30A4\u30B9\u306E\u540D\u524D\u3067\u3059\u3002 -message.installWizard.tooltip.addPrimaryStorage.path=(NFS \u306E\u5834\u5408) \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3055\u308C\u305F\u30D1\u30B9\u3067\u3059\u3002(SharedMountPoint \u306E\u5834\u5408) \u30D1\u30B9\u3067\u3059\u3002KVM \u3067\u306F\u3053\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u304C\u30DE\u30A6\u30F3\u30C8\u3055\u308C\u308B\u5404\u30DB\u30B9\u30C8\u4E0A\u306E\u30D1\u30B9\u3067\u3059\u3002\u305F\u3068\u3048\u3070\u3001/mnt/primary \u3067\u3059\u3002 -message.installWizard.tooltip.addPrimaryStorage.server=(NFS\u3001iSCSI\u3001\u307E\u305F\u306F PreSetup \u306E\u5834\u5408) \u30B9\u30C8\u30EC\u30FC\u30B8 \u30C7\u30D0\u30A4\u30B9\u306E IP \u30A2\u30C9\u30EC\u30B9\u307E\u305F\u306F DNS \u540D\u3067\u3059\u3002 -message.installWizard.tooltip.addSecondaryStorage.nfsServer=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u30DB\u30B9\u30C8\u3059\u308B NFS \u30B5\u30FC\u30D0\u30FC\u306E IP \u30A2\u30C9\u30EC\u30B9\u3067\u3059\u3002 -message.installWizard.tooltip.addSecondaryStorage.path=\u4E0A\u306B\u6307\u5B9A\u3057\u305F\u30B5\u30FC\u30D0\u30FC\u306B\u5B58\u5728\u3059\u308B\u3001\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3055\u308C\u305F\u30D1\u30B9\u3067\u3059\u3002 -message.installWizard.tooltip.addZone.dns1=\u30BE\u30FC\u30F3\u5185\u306E\u30B2\u30B9\u30C8 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306B\u306F\u3001\u5F8C\u3067\u8FFD\u52A0\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u7D4C\u7531\u3067\u30A2\u30AF\u30BB\u30B9\u3057\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.installWizard.tooltip.addZone.dns2=\u30BE\u30FC\u30F3\u5185\u306E\u30B2\u30B9\u30C8 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306B\u306F\u3001\u5F8C\u3067\u8FFD\u52A0\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u7D4C\u7531\u3067\u30A2\u30AF\u30BB\u30B9\u3057\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.installWizard.tooltip.addZone.internaldns1=\u30BE\u30FC\u30F3\u5185\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306F\u3001\u30B7\u30B9\u30C6\u30E0 VM \u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4ECB\u3057\u3066\u30A2\u30AF\u30BB\u30B9\u3055\u308C\u307E\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.installWizard.tooltip.addZone.internaldns2=\u30BE\u30FC\u30F3\u5185\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306F\u3001\u30B7\u30B9\u30C6\u30E0 VM \u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4ECB\u3057\u3066\u30A2\u30AF\u30BB\u30B9\u3055\u308C\u307E\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.installWizard.tooltip.addZone.name=\u30BE\u30FC\u30F3\u306E\u540D\u524D\u3067\u3059\u3002 -message.installWizard.tooltip.configureGuestTraffic.description=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8AAC\u660E\u3067\u3059\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestEndIp=\u3053\u306E\u30BE\u30FC\u30F3\u306E\u30B2\u30B9\u30C8\u306B\u5272\u308A\u5F53\u3066\u308B\u3053\u3068\u304C\u3067\u304D\u308B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u4F7F\u7528\u3059\u308B NIC \u304C 1 \u3064\u306E\u5834\u5408\u306F\u3001\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30DD\u30C3\u30C9\u306E CIDR \u3068\u540C\u3058 CIDR \u306B\u542B\u307E\u308C\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestGateway=\u30B2\u30B9\u30C8\u306E\u4F7F\u7528\u3059\u308B\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3067\u3059\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestNetmask=\u30B2\u30B9\u30C8\u306E\u4F7F\u7528\u3059\u308B\u30B5\u30D6\u30CD\u30C3\u30C8\u4E0A\u3067\u4F7F\u7528\u3055\u308C\u308B\u30CD\u30C3\u30C8\u30DE\u30B9\u30AF\u3067\u3059\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestStartIp=\u3053\u306E\u30BE\u30FC\u30F3\u306E\u30B2\u30B9\u30C8\u306B\u5272\u308A\u5F53\u3066\u308B\u3053\u3068\u304C\u3067\u304D\u308B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u4F7F\u7528\u3059\u308B NIC \u304C 1 \u3064\u306E\u5834\u5408\u306F\u3001\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30DD\u30C3\u30C9\u306E CIDR \u3068\u540C\u3058 CIDR \u306B\u542B\u307E\u308C\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.installWizard.tooltip.configureGuestTraffic.name=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u540D\u524D\u3067\u3059\u3002 -message.instanceWizard.noTemplates=\u4F7F\u7528\u53EF\u80FD\u306A\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u4E92\u63DB\u6027\u306E\u3042\u308B\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u8FFD\u52A0\u3057\u3066\u3001\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 \u30A6\u30A3\u30B6\u30FC\u30C9\u3092\u518D\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.ip.address.changed=\u304A\u4F7F\u3044\u306E IP \u30A2\u30C9\u30EC\u30B9\u304C\u5909\u66F4\u3055\u308C\u3066\u3044\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002\u4E00\u89A7\u3092\u66F4\u65B0\u3057\u307E\u3059\u304B? \u305D\u306E\u5834\u5408\u306F\u3001\u8A73\u7D30\u30DA\u30A4\u30F3\u304C\u9589\u3058\u308B\u3053\u3068\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.iso.desc=\u30C7\u30FC\u30BF\u307E\u305F\u306F OS \u8D77\u52D5\u53EF\u80FD\u30E1\u30C7\u30A3\u30A2\u3092\u542B\u3080\u30C7\u30A3\u30B9\u30AF \u30A4\u30E1\u30FC\u30B8 -message.join.project=\u3053\u308C\u3067\u3001\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306B\u53C2\u52A0\u3057\u307E\u3057\u305F\u3002\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u53C2\u7167\u3059\u308B\u306B\u306F\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30D3\u30E5\u30FC\u306B\u5207\u308A\u66FF\u3048\u3066\u304F\u3060\u3055\u3044\u3002 -message.launch.zone=\u30BE\u30FC\u30F3\u3092\u8D77\u52D5\u3059\u308B\u6E96\u5099\u304C\u3067\u304D\u307E\u3057\u305F\u3002\u6B21\u306E\u624B\u9806\u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 -message.lock.account=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u30ED\u30C3\u30AF\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u3059\u3079\u3066\u306E\u30E6\u30FC\u30B6\u30FC\u304C\u30AF\u30E9\u30A6\u30C9 \u30EA\u30BD\u30FC\u30B9\u3092\u7BA1\u7406\u3067\u304D\u306A\u304F\u306A\u308A\u307E\u3059\u3002\u305D\u306E\u5F8C\u3082\u65E2\u5B58\u306E\u30EA\u30BD\u30FC\u30B9\u306B\u306F\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u3059\u3002 -message.migrate.instance.confirm=\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C\u5148\u306F\u6B21\u306E\u30DB\u30B9\u30C8\u3067\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.migrate.instance.to.host=\u5225\u306E\u30DB\u30B9\u30C8\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u79FB\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.migrate.instance.to.ps=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u79FB\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.migrate.router.confirm=\u30EB\u30FC\u30BF\u30FC\u306E\u79FB\u884C\u5148\u306F\u6B21\u306E\u30DB\u30B9\u30C8\u3067\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.migrate.systemvm.confirm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u79FB\u884C\u5148\u306F\u6B21\u306E\u30DB\u30B9\u30C8\u3067\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.migrate.volume=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u79FB\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.download.volume.confirm=\\u3053\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.download.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3059\\u308B\\u306B\\u306F 00000 \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u307E\\u3059 +message.edit.account=\\u7DE8\\u96C6 ("-1" \\u306F\\u3001\\u30EA\\u30BD\\u30FC\\u30B9\\u4F5C\\u6210\\u306E\\u91CF\\u306B\\u5236\\u9650\\u304C\\u306A\\u3044\\u3053\\u3068\\u3092\\u793A\\u3057\\u307E\\u3059) +message.edit.confirm=[\\u4FDD\\u5B58] \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3059\\u308B\\u524D\\u306B\\u5909\\u66F4\\u5185\\u5BB9\\u3092\\u78BA\\u8A8D\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.edit.limits=\\u6B21\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u306B\\u5236\\u9650\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u300C-1\\u300D\\u306F\\u3001\\u30EA\\u30BD\\u30FC\\u30B9\\u4F5C\\u6210\\u306B\\u5236\\u9650\\u304C\\u306A\\u3044\\u3053\\u3068\\u3092\\u793A\\u3057\\u307E\\u3059\\u3002 +message.edit.traffic.type=\\u3053\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u306B\\u95A2\\u9023\\u4ED8\\u3051\\u308B\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF \\u30E9\\u30D9\\u30EB\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.enable.account=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.enabled.vpn.ip.sec=IPSec \\u4E8B\\u524D\\u5171\\u6709\\u30AD\\u30FC\: +message.enabled.vpn=\\u73FE\\u5728\\u3001VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u304C\\u6709\\u52B9\\u306B\\u306A\\u3063\\u3066\\u3044\\u307E\\u3059\\u3002\\u6B21\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u7D4C\\u7531\\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3067\\u304D\\u307E\\u3059\\u3002 +message.enable.user=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.enable.vpn.access=\\u73FE\\u5728\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306B\\u5BFE\\u3059\\u308B VPN \\u306F\\u7121\\u52B9\\u3067\\u3059\\u3002VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.enable.vpn=\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306B\\u5BFE\\u3059\\u308B VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.enabling.security.group.provider=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 \\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 +message.enabling.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 +message.enter.token=\\u96FB\\u5B50\\u30E1\\u30FC\\u30EB\\u306E\\u62DB\\u5F85\\u72B6\\u306B\\u8A18\\u8F09\\u3055\\u308C\\u3066\\u3044\\u308B\\u30C8\\u30FC\\u30AF\\u30F3\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.generate.keys=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u306B\\u65B0\\u3057\\u3044\\u30AD\\u30FC\\u3092\\u751F\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.guest.traffic.in.advanced.zone=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306F\\u3001\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u9593\\u306E\\u901A\\u4FE1\\u3067\\u3059\\u3002\\u5404\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30B2\\u30B9\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u901A\\u4FE1\\u3059\\u308B\\u305F\\u3081\\u306E VLAN ID \\u306E\\u7BC4\\u56F2\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.guest.traffic.in.basic.zone=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306F\\u3001\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u9593\\u306E\\u901A\\u4FE1\\u3067\\u3059\\u3002CloudStack \\u3067\\u30B2\\u30B9\\u30C8 VM \\u306B\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u308B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u3053\\u306E\\u7BC4\\u56F2\\u304C\\u4E88\\u7D04\\u6E08\\u307F\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3068\\u91CD\\u8907\\u3057\\u306A\\u3044\\u3088\\u3046\\u306B\\u6CE8\\u610F\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.installWizard.click.retry=\\u8D77\\u52D5\\u3092\\u518D\\u8A66\\u884C\\u3059\\u308B\\u306B\\u306F\\u30DC\\u30BF\\u30F3\\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.installWizard.copy.whatIsAPod=\\u901A\\u5E38\\u30011 \\u3064\\u306E\\u30DD\\u30C3\\u30C9\\u306F\\u5358\\u4E00\\u306E\\u30E9\\u30C3\\u30AF\\u3092\\u8868\\u3057\\u307E\\u3059\\u3002\\u540C\\u3058\\u30DD\\u30C3\\u30C9\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306F\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u306B\\u542B\\u307E\\u308C\\u307E\\u3059\\u3002

    \\u30DD\\u30C3\\u30C9\\u306F CloudStack&\#8482; \\u74B0\\u5883\\u5185\\u306E 2 \\u756A\\u76EE\\u306B\\u5927\\u304D\\u306A\\u7D44\\u7E54\\u5358\\u4F4D\\u3067\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306F\\u30BE\\u30FC\\u30F3\\u306B\\u542B\\u307E\\u308C\\u307E\\u3059\\u3002\\u5404\\u30BE\\u30FC\\u30F3\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u542B\\u3080\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002\\u57FA\\u672C\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3067\\u306F\\u3001\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30DD\\u30C3\\u30C9\\u306F 1 \\u3064\\u3067\\u3059\\u3002 +message.installWizard.copy.whatIsAZone=\\u30BE\\u30FC\\u30F3\\u306F CloudStack&\#8482; \\u74B0\\u5883\\u5185\\u306E\\u6700\\u5927\\u306E\\u7D44\\u7E54\\u5358\\u4F4D\\u3067\\u3059\\u30021 \\u3064\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u5185\\u306B\\u8907\\u6570\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u8A2D\\u5B9A\\u3067\\u304D\\u307E\\u3059\\u304C\\u3001\\u901A\\u5E38\\u3001\\u30BE\\u30FC\\u30F3\\u306F\\u5358\\u4E00\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u306B\\u76F8\\u5F53\\u3057\\u307E\\u3059\\u3002\\u30A4\\u30F3\\u30D5\\u30E9\\u30B9\\u30C8\\u30E9\\u30AF\\u30C1\\u30E3\\u3092\\u30BE\\u30FC\\u30F3\\u306B\\u7D44\\u7E54\\u5316\\u3059\\u308B\\u3068\\u3001\\u30BE\\u30FC\\u30F3\\u3092\\u7269\\u7406\\u7684\\u306B\\u5206\\u96E2\\u3057\\u3066\\u5197\\u9577\\u5316\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002\\u305F\\u3068\\u3048\\u3070\\u3001\\u5404\\u30BE\\u30FC\\u30F3\\u306B\\u96FB\\u6E90\\u3068\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30A2\\u30C3\\u30D7\\u30EA\\u30F3\\u30AF\\u3092\\u914D\\u5099\\u3057\\u307E\\u3059\\u3002\\u5FC5\\u9808\\u3067\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093\\u304C\\u3001\\u30BE\\u30FC\\u30F3\\u306F\\u9060\\u9694\\u5730\\u306B\\u5206\\u6563\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002 +message.installWizard.copy.whatIsSecondaryStorage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F\\u30BE\\u30FC\\u30F3\\u3068\\u95A2\\u9023\\u4ED8\\u3051\\u3089\\u308C\\u3001\\u6B21\\u306E\\u9805\\u76EE\\u3092\\u683C\\u7D0D\\u3057\\u307E\\u3059\\u3002
    • \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 - VM \\u306E\\u8D77\\u52D5\\u306B\\u4F7F\\u7528\\u3067\\u304D\\u308B OS \\u30A4\\u30E1\\u30FC\\u30B8\\u3067\\u3001\\u30A2\\u30D7\\u30EA\\u30B1\\u30FC\\u30B7\\u30E7\\u30F3\\u306E\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u306A\\u3069\\u8FFD\\u52A0\\u306E\\u69CB\\u6210\\u3092\\u542B\\u3081\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002
    • ISO \\u30A4\\u30E1\\u30FC\\u30B8 - \\u8D77\\u52D5\\u53EF\\u80FD\\u307E\\u305F\\u306F\\u8D77\\u52D5\\u4E0D\\u53EF\\u306E OS \\u30A4\\u30E1\\u30FC\\u30B8\\u3067\\u3059\\u3002
    • \\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 - VM \\u30C7\\u30FC\\u30BF\\u306E\\u4FDD\\u5B58\\u30B3\\u30D4\\u30FC\\u3067\\u3059\\u3002\\u30C7\\u30FC\\u30BF\\u306E\\u5FA9\\u5143\\u307E\\u305F\\u306F\\u65B0\\u3057\\u3044\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210\\u306B\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u3059\\u3002
    +message.installWizard.tooltip.addCluster.name=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002CloudStack \\u3067\\u4F7F\\u7528\\u3055\\u308C\\u3066\\u3044\\u306A\\u3044\\u3001\\u4EFB\\u610F\\u306E\\u30C6\\u30AD\\u30B9\\u30C8\\u3092\\u6307\\u5B9A\\u3067\\u304D\\u307E\\u3059\\u3002 +message.installWizard.tooltip.addHost.hostname=\\u30DB\\u30B9\\u30C8\\u306E DNS \\u540D\\u307E\\u305F\\u306F IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addHost.password=XenServer \\u5074\\u3067\\u6307\\u5B9A\\u3057\\u305F\\u3001\\u4E0A\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u540D\\u306B\\u5BFE\\u3059\\u308B\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addHost.username=\\u901A\\u5E38\\u306F root \\u3067\\u3059\\u3002 +message.installWizard.tooltip.addPod.name=\\u30DD\\u30C3\\u30C9\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addPod.reservedSystemEndIp=\\u3053\\u308C\\u306F\\u3001\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VM \\u304A\\u3088\\u3073\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7 VM \\u3092\\u7BA1\\u7406\\u3059\\u308B\\u305F\\u3081\\u306B CloudStack \\u3067\\u4F7F\\u7528\\u3059\\u308B\\u3001\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u5185\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u304B\\u3089\\u5272\\u308A\\u5F53\\u3066\\u307E\\u3059\\u3002 +message.installWizard.tooltip.addPod.reservedSystemGateway=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306E\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addPod.reservedSystemNetmask=\\u30B2\\u30B9\\u30C8\\u306E\\u4F7F\\u7528\\u3059\\u308B\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u4E0A\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u308B\\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addPod.reservedSystemStartIp=\\u3053\\u308C\\u306F\\u3001\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VM \\u304A\\u3088\\u3073\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7 VM \\u3092\\u7BA1\\u7406\\u3059\\u308B\\u305F\\u3081\\u306B CloudStack \\u3067\\u4F7F\\u7528\\u3059\\u308B\\u3001\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u5185\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u304B\\u3089\\u5272\\u308A\\u5F53\\u3066\\u307E\\u3059\\u3002 +message.installWizard.tooltip.addPrimaryStorage.name=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addPrimaryStorage.path=(NFS \\u306E\\u5834\\u5408) \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u30A8\\u30AF\\u30B9\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u305F\\u30D1\\u30B9\\u3067\\u3059\\u3002(SharedMountPoint \\u306E\\u5834\\u5408) \\u30D1\\u30B9\\u3067\\u3059\\u3002KVM \\u3067\\u306F\\u3053\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u304C\\u30DE\\u30A6\\u30F3\\u30C8\\u3055\\u308C\\u308B\\u5404\\u30DB\\u30B9\\u30C8\\u4E0A\\u306E\\u30D1\\u30B9\\u3067\\u3059\\u3002\\u305F\\u3068\\u3048\\u3070\\u3001/mnt/primary \\u3067\\u3059\\u3002 +message.installWizard.tooltip.addPrimaryStorage.server=(NFS\\u3001iSCSI\\u3001\\u307E\\u305F\\u306F PreSetup \\u306E\\u5834\\u5408) \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C7\\u30D0\\u30A4\\u30B9\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u307E\\u305F\\u306F DNS \\u540D\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addSecondaryStorage.nfsServer=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u30DB\\u30B9\\u30C8\\u3059\\u308B NFS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addSecondaryStorage.path=\\u4E0A\\u306B\\u6307\\u5B9A\\u3057\\u305F\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u5B58\\u5728\\u3059\\u308B\\u3001\\u30A8\\u30AF\\u30B9\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u305F\\u30D1\\u30B9\\u3067\\u3059\\u3002 +message.installWizard.tooltip.addZone.dns1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B2\\u30B9\\u30C8 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u306F\\u3001\\u5F8C\\u3067\\u8FFD\\u52A0\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u7D4C\\u7531\\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3057\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.installWizard.tooltip.addZone.dns2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B2\\u30B9\\u30C8 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u306F\\u3001\\u5F8C\\u3067\\u8FFD\\u52A0\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u7D4C\\u7531\\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3057\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.installWizard.tooltip.addZone.internaldns1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306F\\u3001\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4ECB\\u3057\\u3066\\u30A2\\u30AF\\u30BB\\u30B9\\u3055\\u308C\\u307E\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.installWizard.tooltip.addZone.internaldns2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306F\\u3001\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4ECB\\u3057\\u3066\\u30A2\\u30AF\\u30BB\\u30B9\\u3055\\u308C\\u307E\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.installWizard.tooltip.addZone.name=\\u30BE\\u30FC\\u30F3\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 +message.installWizard.tooltip.configureGuestTraffic.description=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8AAC\\u660E\\u3067\\u3059\\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestEndIp=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u306E\\u30B2\\u30B9\\u30C8\\u306B\\u5272\\u308A\\u5F53\\u3066\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u308B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u4F7F\\u7528\\u3059\\u308B NIC \\u304C 1 \\u3064\\u306E\\u5834\\u5408\\u306F\\u3001\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30DD\\u30C3\\u30C9\\u306E CIDR \\u3068\\u540C\\u3058 CIDR \\u306B\\u542B\\u307E\\u308C\\u3066\\u3044\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestGateway=\\u30B2\\u30B9\\u30C8\\u306E\\u4F7F\\u7528\\u3059\\u308B\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3067\\u3059\\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestNetmask=\\u30B2\\u30B9\\u30C8\\u306E\\u4F7F\\u7528\\u3059\\u308B\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u4E0A\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u308B\\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF\\u3067\\u3059\\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestStartIp=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u306E\\u30B2\\u30B9\\u30C8\\u306B\\u5272\\u308A\\u5F53\\u3066\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u308B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u4F7F\\u7528\\u3059\\u308B NIC \\u304C 1 \\u3064\\u306E\\u5834\\u5408\\u306F\\u3001\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30DD\\u30C3\\u30C9\\u306E CIDR \\u3068\\u540C\\u3058 CIDR \\u306B\\u542B\\u307E\\u308C\\u3066\\u3044\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.installWizard.tooltip.configureGuestTraffic.name=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 +message.instanceWizard.noTemplates=\\u4F7F\\u7528\\u53EF\\u80FD\\u306A\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002\\u4E92\\u63DB\\u6027\\u306E\\u3042\\u308B\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3001\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 \\u30A6\\u30A3\\u30B6\\u30FC\\u30C9\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.ip.address.changed=\\u304A\\u4F7F\\u3044\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304C\\u5909\\u66F4\\u3055\\u308C\\u3066\\u3044\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u4E00\\u89A7\\u3092\\u66F4\\u65B0\\u3057\\u307E\\u3059\\u304B? \\u305D\\u306E\\u5834\\u5408\\u306F\\u3001\\u8A73\\u7D30\\u30DA\\u30A4\\u30F3\\u304C\\u9589\\u3058\\u308B\\u3053\\u3068\\u306B\\u6CE8\\u610F\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.iso.desc=\\u30C7\\u30FC\\u30BF\\u307E\\u305F\\u306F OS \\u8D77\\u52D5\\u53EF\\u80FD\\u30E1\\u30C7\\u30A3\\u30A2\\u3092\\u542B\\u3080\\u30C7\\u30A3\\u30B9\\u30AF \\u30A4\\u30E1\\u30FC\\u30B8 +message.join.project=\\u3053\\u308C\\u3067\\u3001\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306B\\u53C2\\u52A0\\u3057\\u307E\\u3057\\u305F\\u3002\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u53C2\\u7167\\u3059\\u308B\\u306B\\u306F\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30D3\\u30E5\\u30FC\\u306B\\u5207\\u308A\\u66FF\\u3048\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.launch.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u8D77\\u52D5\\u3059\\u308B\\u6E96\\u5099\\u304C\\u3067\\u304D\\u307E\\u3057\\u305F\\u3002\\u6B21\\u306E\\u624B\\u9806\\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 +message.lock.account=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u30ED\\u30C3\\u30AF\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u3059\\u3079\\u3066\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u304C\\u30AF\\u30E9\\u30A6\\u30C9 \\u30EA\\u30BD\\u30FC\\u30B9\\u3092\\u7BA1\\u7406\\u3067\\u304D\\u306A\\u304F\\u306A\\u308A\\u307E\\u3059\\u3002\\u305D\\u306E\\u5F8C\\u3082\\u65E2\\u5B58\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u306B\\u306F\\u30A2\\u30AF\\u30BB\\u30B9\\u3067\\u304D\\u307E\\u3059\\u3002 +message.migrate.instance.confirm=\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C\\u5148\\u306F\\u6B21\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.migrate.instance.to.host=\\u5225\\u306E\\u30DB\\u30B9\\u30C8\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.migrate.instance.to.ps=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.migrate.router.confirm=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u79FB\\u884C\\u5148\\u306F\\u6B21\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.migrate.systemvm.confirm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u79FB\\u884C\\u5148\\u306F\\u6B21\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.migrate.volume=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? message.new.user=\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0081\u00ab\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0083\u00a6\u00e3\u0083\u00bc\u00e3\u0082\u00b6\u00e3\u0083\u00bc\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e8\u00a8\u00ad\u00e5\u00ae\u009a\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084 -message.no.network.support.configuration.not.true=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u304C\u6709\u52B9\u306A\u30BE\u30FC\u30F3\u304C\u7121\u3044\u305F\u3081\u3001\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6A5F\u80FD\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u624B\u9806 5. \u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 -message.no.network.support=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3068\u3057\u3066 vSphere \u3092\u9078\u629E\u3057\u307E\u3057\u305F\u304C\u3001\u3053\u306E\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306B\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6A5F\u80FD\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u624B\u9806 5. \u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 -message.no.projects.adminOnly=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u304C\u3042\u308A\u307E\u305B\u3093\u3002
    \u7BA1\u7406\u8005\u306B\u65B0\u3057\u3044\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u4F5C\u6210\u3092\u4F9D\u983C\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.no.projects=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u304C\u3042\u308A\u307E\u305B\u3093\u3002
    \u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30BB\u30AF\u30B7\u30E7\u30F3\u304B\u3089\u65B0\u3057\u3044\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u4F5C\u6210\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.number.clusters=

    \u30AF\u30E9\u30B9\u30BF\u30FC\u6570

    -message.number.hosts=

    \u30DB\u30B9\u30C8\u6570

    -message.number.pods=

    \u30DD\u30C3\u30C9\u6570

    -message.number.storage=

    \u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30DC\u30EA\u30E5\u30FC\u30E0\u6570

    -message.number.zones=

    \u30BE\u30FC\u30F3\u6570

    -message.pending.projects.1=\u4FDD\u7559\u4E2D\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u62DB\u5F85\u72B6\u304C\u3042\u308A\u307E\u3059\u3002 -message.pending.projects.2=\u8868\u793A\u3059\u308B\u306B\u306F\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30BB\u30AF\u30B7\u30E7\u30F3\u306B\u79FB\u52D5\u3057\u3066\u3001\u4E00\u89A7\u304B\u3089\u62DB\u5F85\u72B6\u3092\u9078\u629E\u3057\u307E\u3059\u3002 -message.please.add.at.lease.one.traffic.range=\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.please.proceed=\u6B21\u306E\u624B\u9806\u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 -message.please.select.a.configuration.for.your.zone=\u30BE\u30FC\u30F3\u306E\u69CB\u6210\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.please.select.a.different.public.and.management.network.before.removing=\u524A\u9664\u306E\u524D\u306B\u7570\u306A\u308B\u30D1\u30D6\u30EA\u30C3\u30AF\u304A\u3088\u3073\u7BA1\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.please.select.networks=\u4EEE\u60F3\u30DE\u30B7\u30F3\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.please.wait.while.zone.is.being.created=\u30BE\u30FC\u30F3\u304C\u4F5C\u6210\u3055\u308C\u308B\u307E\u3067\u3057\u3070\u3089\u304F\u304A\u5F85\u3061\u304F\u3060\u3055\u3044... -message.project.invite.sent=\u30E6\u30FC\u30B6\u30FC\u306B\u62DB\u5F85\u72B6\u304C\u9001\u4FE1\u3055\u308C\u307E\u3057\u305F\u3002\u30E6\u30FC\u30B6\u30FC\u304C\u62DB\u5F85\u3092\u627F\u8AFE\u3059\u308B\u3068\u3001\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306B\u8FFD\u52A0\u3055\u308C\u307E\u3059\u3002 -message.public.traffic.in.advanced.zone=\u30AF\u30E9\u30A6\u30C9\u5185\u306E VM \u304C\u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8\u306B\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u3068\u3001\u30D1\u30D6\u30EA\u30C3\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u304C\u751F\u6210\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u305F\u3081\u306B\u3001\u4E00\u822C\u306B\u30A2\u30AF\u30BB\u30B9\u53EF\u80FD\u306A IP \u30A2\u30C9\u30EC\u30B9\u3092\u5272\u308A\u5F53\u3066\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306F CloudStack \u306E\u30E6\u30FC\u30B6\u30FC \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4F7F\u7528\u3057\u3066\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3057\u3001\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3068\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u9593\u306B NAT \u3092\u5B9F\u88C5\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002

    \u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u305F\u3081\u306B\u3001\u5C11\u306A\u304F\u3068\u3082 1 \u3064 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.public.traffic.in.basic.zone=\u30AF\u30E9\u30A6\u30C9\u5185\u306E VM \u304C\u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8\u306B\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u304B\u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8\u7D4C\u7531\u3067\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8\u306B\u30B5\u30FC\u30D3\u30B9\u3092\u63D0\u4F9B\u3059\u308B\u3068\u3001\u30D1\u30D6\u30EA\u30C3\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u304C\u751F\u6210\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u305F\u3081\u306B\u3001\u4E00\u822C\u306B\u30A2\u30AF\u30BB\u30B9\u53EF\u80FD\u306A IP \u30A2\u30C9\u30EC\u30B9\u3092\u5272\u308A\u5F53\u3066\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u4F5C\u6210\u3059\u308B\u3068\u3001\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u307B\u304B\u306B\u3053\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u304B\u3089\u30A2\u30C9\u30EC\u30B9\u304C 1 \u3064\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B\u5272\u308A\u5F53\u3066\u3089\u308C\u307E\u3059\u3002\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u3068\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u9593\u306B\u3001\u9759\u7684\u306A 1 \u5BFE 1 \u306E NAT \u304C\u81EA\u52D5\u7684\u306B\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3055\u308C\u307E\u3059\u3002\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306F CloudStack \u306E\u30E6\u30FC\u30B6\u30FC \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4F7F\u7528\u3057\u3066\u8FFD\u52A0\u306E IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3057\u3001\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3068\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u306E\u9593\u306B\u9759\u7684 NAT \u3092\u5B9F\u88C5\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002 -message.remove.vpc=VPC \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.remove.vpn.access=\u6B21\u306E\u30E6\u30FC\u30B6\u30FC\u304B\u3089 VPN \u30A2\u30AF\u30BB\u30B9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.reset.password.warning.notPasswordEnabled=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306F\u3001\u30D1\u30B9\u30EF\u30FC\u30C9\u7BA1\u7406\u3092\u6709\u52B9\u306B\u305B\u305A\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F\u3002 -message.reset.password.warning.notStopped=\u73FE\u5728\u306E\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.reset.VPN.connection=VPN \u63A5\u7D9A\u3092\u30EA\u30BB\u30C3\u30C8\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.restart.mgmt.server=\u65B0\u3057\u3044\u8A2D\u5B9A\u3092\u6709\u52B9\u306B\u3059\u308B\u305F\u3081\u306B\u3001\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.restart.mgmt.usage.server=\u65B0\u3057\u3044\u8A2D\u5B9A\u3092\u6709\u52B9\u306B\u3059\u308B\u305F\u3081\u306B\u3001\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3068\u4F7F\u7528\u72B6\u6CC1\u6E2C\u5B9A\u30B5\u30FC\u30D0\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.restart.network=\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3067\u63D0\u4F9B\u3059\u308B\u3059\u3079\u3066\u306E\u30B5\u30FC\u30D3\u30B9\u304C\u4E2D\u65AD\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.restart.vpc=VPC \u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.security.group.usage=(\u8A72\u5F53\u3059\u308B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u3059\u3079\u3066\u9078\u629E\u3059\u308B\u306B\u306F\u3001Ctrl \u30AD\u30FC\u3092\u62BC\u3057\u306A\u304C\u3089\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044) -message.select.a.zone=\u30BE\u30FC\u30F3\u306F\u901A\u5E38\u3001\u5358\u4E00\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u306B\u76F8\u5F53\u3057\u307E\u3059\u3002\u8907\u6570\u306E\u30BE\u30FC\u30F3\u3092\u8A2D\u5B9A\u3057\u3001\u7269\u7406\u7684\u306B\u5206\u96E2\u3057\u3066\u5197\u9577\u6027\u3092\u6301\u305F\u305B\u308B\u3053\u3068\u306B\u3088\u308A\u3001\u30AF\u30E9\u30A6\u30C9\u306E\u4FE1\u983C\u6027\u3092\u9AD8\u3081\u307E\u3059\u3002 -message.select.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.select.iso=\u65B0\u3057\u3044\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E ISO \u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.select.item=\u9805\u76EE\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.select.security.groups=\u65B0\u3057\u3044\u4EEE\u60F3\u30DE\u30B7\u30F3\u306E\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.select.template=\u65B0\u3057\u3044\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.setup.physical.network.during.zone.creation.basic=\u57FA\u672C\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3059\u308B\u3068\u304D\u306F\u3001\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u4E0A\u306E NIC \u306B\u5BFE\u5FDC\u3059\u308B 1 \u3064\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3067\u304D\u307E\u3059\u3002\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306F\u3044\u304F\u3064\u304B\u306E\u7A2E\u985E\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u4F1D\u9001\u3057\u307E\u3059\u3002

    \u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306B\u307B\u304B\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u3092\u30C9\u30E9\u30C3\u30B0 \u30A2\u30F3\u30C9 \u30C9\u30ED\u30C3\u30D7\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002 -message.setup.physical.network.during.zone.creation=\u62E1\u5F35\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3059\u308B\u3068\u304D\u306F\u30011 \u3064\u4EE5\u4E0A\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u5404\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306F\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u4E0A\u306E 1 \u3064\u306E NIC \u306B\u5BFE\u5FDC\u3057\u307E\u3059\u3002\u5404\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3067\u306F\u3001\u7D44\u307F\u5408\u308F\u305B\u306B\u5236\u9650\u304C\u3042\u308A\u307E\u3059\u304C\u30011 \u3064\u4EE5\u4E0A\u306E\u7A2E\u985E\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u901A\u4FE1\u3067\u304D\u307E\u3059\u3002

    \u5404\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306B\u5BFE\u3057\u3066\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u3092\u30C9\u30E9\u30C3\u30B0 \u30A2\u30F3\u30C9 \u30C9\u30ED\u30C3\u30D7\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.setup.successful=\u30AF\u30E9\u30A6\u30C9\u304C\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3055\u308C\u307E\u3057\u305F\u3002 -message.snapshot.schedule=\u6B21\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u304B\u3089\u9078\u629E\u3057\u3066\u30DD\u30EA\u30B7\u30FC\u306E\u57FA\u672C\u8A2D\u5B9A\u3092\u9069\u7528\u3059\u308B\u3053\u3068\u306B\u3088\u308A\u3001\u5B9A\u671F\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u30B9\u30B1\u30B8\u30E5\u30FC\u30EB\u3092\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3067\u304D\u307E\u3059\u3002 -message.specify.url=URL \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044 -message.step.1.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u307E\u305F\u306F ISO \u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 -message.step.1.desc=\u65B0\u3057\u3044\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u7528\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002ISO \u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3067\u304D\u308B\u7A7A\u767D\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u9078\u629E\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002 -message.step.2.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +message.no.network.support.configuration.not.true=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u304C\\u6709\\u52B9\\u306A\\u30BE\\u30FC\\u30F3\\u304C\\u7121\\u3044\\u305F\\u3081\\u3001\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6A5F\\u80FD\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002\\u624B\\u9806 5. \\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 +message.no.network.support=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3068\\u3057\\u3066 vSphere \\u3092\\u9078\\u629E\\u3057\\u307E\\u3057\\u305F\\u304C\\u3001\\u3053\\u306E\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306B\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6A5F\\u80FD\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002\\u624B\\u9806 5. \\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 +message.no.projects.adminOnly=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002
    \\u7BA1\\u7406\\u8005\\u306B\\u65B0\\u3057\\u3044\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u4F5C\\u6210\\u3092\\u4F9D\\u983C\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.no.projects=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002
    \\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30BB\\u30AF\\u30B7\\u30E7\\u30F3\\u304B\\u3089\\u65B0\\u3057\\u3044\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.number.clusters=

    \\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u6570

    +message.number.hosts=

    \\u30DB\\u30B9\\u30C8\\u6570

    +message.number.pods=

    \\u30DD\\u30C3\\u30C9\\u6570

    +message.number.storage=

    \\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u6570

    +message.number.zones=

    \\u30BE\\u30FC\\u30F3\\u6570

    +message.pending.projects.1=\\u4FDD\\u7559\\u4E2D\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u62DB\\u5F85\\u72B6\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.pending.projects.2=\\u8868\\u793A\\u3059\\u308B\\u306B\\u306F\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30BB\\u30AF\\u30B7\\u30E7\\u30F3\\u306B\\u79FB\\u52D5\\u3057\\u3066\\u3001\\u4E00\\u89A7\\u304B\\u3089\\u62DB\\u5F85\\u72B6\\u3092\\u9078\\u629E\\u3057\\u307E\\u3059\\u3002 +message.please.add.at.lease.one.traffic.range=\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.please.proceed=\\u6B21\\u306E\\u624B\\u9806\\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 +message.please.select.a.configuration.for.your.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u69CB\\u6210\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.please.select.a.different.public.and.management.network.before.removing=\\u524A\\u9664\\u306E\\u524D\\u306B\\u7570\\u306A\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF\\u304A\\u3088\\u3073\\u7BA1\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.please.select.networks=\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.please.wait.while.zone.is.being.created=\\u30BE\\u30FC\\u30F3\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u308B\\u307E\\u3067\\u3057\\u3070\\u3089\\u304F\\u304A\\u5F85\\u3061\\u304F\\u3060\\u3055\\u3044... +message.project.invite.sent=\\u30E6\\u30FC\\u30B6\\u30FC\\u306B\\u62DB\\u5F85\\u72B6\\u304C\\u9001\\u4FE1\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u30E6\\u30FC\\u30B6\\u30FC\\u304C\\u62DB\\u5F85\\u3092\\u627F\\u8AFE\\u3059\\u308B\\u3068\\u3001\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306B\\u8FFD\\u52A0\\u3055\\u308C\\u307E\\u3059\\u3002 +message.public.traffic.in.advanced.zone=\\u30AF\\u30E9\\u30A6\\u30C9\\u5185\\u306E VM \\u304C\\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3059\\u308B\\u3068\\u3001\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u304C\\u751F\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u305F\\u3081\\u306B\\u3001\\u4E00\\u822C\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u53EF\\u80FD\\u306A IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306F CloudStack \\u306E\\u30E6\\u30FC\\u30B6\\u30FC \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3057\\u3001\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3068\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u9593\\u306B NAT \\u3092\\u5B9F\\u88C5\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002

    \\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u305F\\u3081\\u306B\\u3001\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.public.traffic.in.basic.zone=\\u30AF\\u30E9\\u30A6\\u30C9\\u5185\\u306E VM \\u304C\\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3059\\u308B\\u304B\\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8\\u7D4C\\u7531\\u3067\\u30AF\\u30E9\\u30A4\\u30A2\\u30F3\\u30C8\\u306B\\u30B5\\u30FC\\u30D3\\u30B9\\u3092\\u63D0\\u4F9B\\u3059\\u308B\\u3068\\u3001\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u304C\\u751F\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u305F\\u3081\\u306B\\u3001\\u4E00\\u822C\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u53EF\\u80FD\\u306A IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u3068\\u3001\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u307B\\u304B\\u306B\\u3053\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u304B\\u3089\\u30A2\\u30C9\\u30EC\\u30B9\\u304C 1 \\u3064\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u307E\\u3059\\u3002\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3068\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u9593\\u306B\\u3001\\u9759\\u7684\\u306A 1 \\u5BFE 1 \\u306E NAT \\u304C\\u81EA\\u52D5\\u7684\\u306B\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3055\\u308C\\u307E\\u3059\\u3002\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306F CloudStack \\u306E\\u30E6\\u30FC\\u30B6\\u30FC \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u8FFD\\u52A0\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3057\\u3001\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3068\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u9593\\u306B\\u9759\\u7684 NAT \\u3092\\u5B9F\\u88C5\\u3059\\u308B\\u3053\\u3068\\u3082\\u3067\\u304D\\u307E\\u3059\\u3002 +message.remove.vpc=VPC \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.remove.vpn.access=\\u6B21\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u304B\\u3089 VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.reset.password.warning.notPasswordEnabled=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306F\\u3001\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u7BA1\\u7406\\u3092\\u6709\\u52B9\\u306B\\u305B\\u305A\\u306B\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002 +message.reset.password.warning.notStopped=\\u73FE\\u5728\\u306E\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.reset.VPN.connection=VPN \\u63A5\\u7D9A\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.restart.mgmt.server=\\u65B0\\u3057\\u3044\\u8A2D\\u5B9A\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.restart.mgmt.usage.server=\\u65B0\\u3057\\u3044\\u8A2D\\u5B9A\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u4F7F\\u7528\\u72B6\\u6CC1\\u6E2C\\u5B9A\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.restart.network=\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3067\\u63D0\\u4F9B\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30B5\\u30FC\\u30D3\\u30B9\\u304C\\u4E2D\\u65AD\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.restart.vpc=VPC \\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.security.group.usage=(\\u8A72\\u5F53\\u3059\\u308B\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u3059\\u3079\\u3066\\u9078\\u629E\\u3059\\u308B\\u306B\\u306F\\u3001Ctrl \\u30AD\\u30FC\\u3092\\u62BC\\u3057\\u306A\\u304C\\u3089\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044) +message.select.a.zone=\\u30BE\\u30FC\\u30F3\\u306F\\u901A\\u5E38\\u3001\\u5358\\u4E00\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u306B\\u76F8\\u5F53\\u3057\\u307E\\u3059\\u3002\\u8907\\u6570\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u8A2D\\u5B9A\\u3057\\u3001\\u7269\\u7406\\u7684\\u306B\\u5206\\u96E2\\u3057\\u3066\\u5197\\u9577\\u6027\\u3092\\u6301\\u305F\\u305B\\u308B\\u3053\\u3068\\u306B\\u3088\\u308A\\u3001\\u30AF\\u30E9\\u30A6\\u30C9\\u306E\\u4FE1\\u983C\\u6027\\u3092\\u9AD8\\u3081\\u307E\\u3059\\u3002 +message.select.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.select.iso=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E ISO \\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.select.item=\\u9805\\u76EE\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.select.security.groups=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306E\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.select.template=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.setup.physical.network.during.zone.creation.basic=\\u57FA\\u672C\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u3068\\u304D\\u306F\\u3001\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u4E0A\\u306E NIC \\u306B\\u5BFE\\u5FDC\\u3059\\u308B 1 \\u3064\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3067\\u304D\\u307E\\u3059\\u3002\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306F\\u3044\\u304F\\u3064\\u304B\\u306E\\u7A2E\\u985E\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u4F1D\\u9001\\u3057\\u307E\\u3059\\u3002

    \\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306B\\u307B\\u304B\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u3092\\u30C9\\u30E9\\u30C3\\u30B0 \\u30A2\\u30F3\\u30C9 \\u30C9\\u30ED\\u30C3\\u30D7\\u3059\\u308B\\u3053\\u3068\\u3082\\u3067\\u304D\\u307E\\u3059\\u3002 +message.setup.physical.network.during.zone.creation=\\u62E1\\u5F35\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u3068\\u304D\\u306F\\u30011 \\u3064\\u4EE5\\u4E0A\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u5404\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306F\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u4E0A\\u306E 1 \\u3064\\u306E NIC \\u306B\\u5BFE\\u5FDC\\u3057\\u307E\\u3059\\u3002\\u5404\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3067\\u306F\\u3001\\u7D44\\u307F\\u5408\\u308F\\u305B\\u306B\\u5236\\u9650\\u304C\\u3042\\u308A\\u307E\\u3059\\u304C\\u30011 \\u3064\\u4EE5\\u4E0A\\u306E\\u7A2E\\u985E\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u901A\\u4FE1\\u3067\\u304D\\u307E\\u3059\\u3002

    \\u5404\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306B\\u5BFE\\u3057\\u3066\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u3092\\u30C9\\u30E9\\u30C3\\u30B0 \\u30A2\\u30F3\\u30C9 \\u30C9\\u30ED\\u30C3\\u30D7\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.setup.successful=\\u30AF\\u30E9\\u30A6\\u30C9\\u304C\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002 +message.snapshot.schedule=\\u6B21\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u304B\\u3089\\u9078\\u629E\\u3057\\u3066\\u30DD\\u30EA\\u30B7\\u30FC\\u306E\\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u9069\\u7528\\u3059\\u308B\\u3053\\u3068\\u306B\\u3088\\u308A\\u3001\\u5B9A\\u671F\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u30B9\\u30B1\\u30B8\\u30E5\\u30FC\\u30EB\\u3092\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3067\\u304D\\u307E\\u3059\\u3002 +message.specify.url=URL \\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +message.step.1.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u307E\\u305F\\u306F ISO \\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +message.step.1.desc=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u7528\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002ISO \\u3092\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3067\\u304D\\u308B\\u7A7A\\u767D\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u9078\\u629E\\u3059\\u308B\\u3053\\u3068\\u3082\\u3067\\u304D\\u307E\\u3059\\u3002 +message.step.2.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 message.step.2.desc= -message.step.3.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +message.step.3.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 message.step.3.desc= -message.step.4.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 -message.step.4.desc=\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u63A5\u7D9A\u3059\u308B\u30D7\u30E9\u30A4\u30DE\u30EA \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.storage.traffic=\u30DB\u30B9\u30C8\u3084 CloudStack \u30B7\u30B9\u30C6\u30E0 VM \u306A\u3069\u3001\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3068\u901A\u4FE1\u3059\u308B CloudStack \u306E\u5185\u90E8\u30EA\u30BD\u30FC\u30B9\u9593\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3067\u3059\u3002\u3053\u3053\u3067\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.suspend.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u4E00\u6642\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.template.desc=VM \u306E\u8D77\u52D5\u306B\u4F7F\u7528\u3067\u304D\u308B OS \u30A4\u30E1\u30FC\u30B8 -message.tooltip.dns.1=\u30BE\u30FC\u30F3\u5185\u306E VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.tooltip.dns.2=\u30BE\u30FC\u30F3\u5185\u306E VM \u3067\u4F7F\u7528\u3059\u308B 2 \u756A\u76EE\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.tooltip.internal.dns.1=\u30BE\u30FC\u30F3\u5185\u306E CloudStack \u5185\u90E8\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.tooltip.internal.dns.2=\u30BE\u30FC\u30F3\u5185\u306E CloudStack \u5185\u90E8\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.tooltip.network.domain=DNS \u30B5\u30D5\u30A3\u30C3\u30AF\u30B9\u3067\u3059\u3002\u3053\u306E\u30B5\u30D5\u30A3\u30C3\u30AF\u30B9\u304B\u3089\u30B2\u30B9\u30C8 VM \u3067\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30AB\u30B9\u30BF\u30E0 \u30C9\u30E1\u30A4\u30F3\u540D\u304C\u4F5C\u6210\u3055\u308C\u307E\u3059\u3002 -message.tooltip.pod.name=\u3053\u306E\u30DD\u30C3\u30C9\u306E\u540D\u524D\u3067\u3059\u3002 -message.tooltip.reserved.system.gateway=\u30DD\u30C3\u30C9\u5185\u306E\u30DB\u30B9\u30C8\u306E\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3067\u3059\u3002 -message.tooltip.reserved.system.netmask=\u30DD\u30C3\u30C9\u306E\u30B5\u30D6\u30CD\u30C3\u30C8\u3092\u5B9A\u7FA9\u3059\u308B\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9\u3067\u3059\u3002CIDR \u8868\u8A18\u3092\u4F7F\u7528\u3057\u307E\u3059\u3002 -message.tooltip.zone.name=\u30BE\u30FC\u30F3\u306E\u540D\u524D\u3067\u3059\u3002 -message.update.os.preference=\u3053\u306E\u30DB\u30B9\u30C8\u306E OS \u57FA\u672C\u8A2D\u5B9A\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u540C\u69D8\u306E\u57FA\u672C\u8A2D\u5B9A\u3092\u6301\u3064\u3059\u3079\u3066\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306F\u3001\u5225\u306E\u30DB\u30B9\u30C8\u3092\u9078\u629E\u3059\u308B\u524D\u306B\u307E\u305A\u3053\u306E\u30DB\u30B9\u30C8\u306B\u5272\u308A\u5F53\u3066\u3089\u308C\u307E\u3059\u3002 -message.update.resource.count=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30EA\u30BD\u30FC\u30B9\u6570\u3092\u66F4\u65B0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.update.ssl=\u5404\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3067\u66F4\u65B0\u3059\u308B\u3001X.509 \u6E96\u62E0\u306E\u65B0\u3057\u3044 SSL \u8A3C\u660E\u66F8\u3092\u9001\u4FE1\u3057\u3066\u304F\u3060\u3055\u3044\: -message.validate.instance.name=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u540D\u306F 63 \u6587\u5B57\u4EE5\u5185\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002ASCII \u6587\u5B57\u306E a\uFF5Ez\u3001A\uFF5EZ\u3001\u6570\u5B57\u306E 0\uFF5E9\u3001\u304A\u3088\u3073\u30CF\u30A4\u30D5\u30F3\u306E\u307F\u3092\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002\u6587\u5B57\u3067\u59CB\u307E\u308A\u3001\u6587\u5B57\u307E\u305F\u306F\u6570\u5B57\u3067\u7D42\u308F\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.virtual.network.desc=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u5C02\u7528\u4EEE\u60F3\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3067\u3059\u3002\u30D6\u30ED\u30FC\u30C9\u30AD\u30E3\u30B9\u30C8 \u30C9\u30E1\u30A4\u30F3\u306F VLAN \u5185\u306B\u914D\u7F6E\u3055\u308C\u3001\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3078\u306E\u30A2\u30AF\u30BB\u30B9\u306F\u3059\u3079\u3066\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u306B\u3088\u3063\u3066\u30EB\u30FC\u30C6\u30A3\u30F3\u30B0\u3055\u308C\u307E\u3059\u3002 -message.vm.create.template.confirm=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3059\u308B\u3068 VM \u304C\u81EA\u52D5\u7684\u306B\u518D\u8D77\u52D5\u3055\u308C\u307E\u3059\u3002 -message.vm.review.launch=\u6B21\u306E\u60C5\u5831\u3092\u53C2\u7167\u3057\u3066\u3001\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u6B63\u3057\u304F\u8A2D\u5B9A\u3057\u305F\u3053\u3068\u3092\u78BA\u8A8D\u3057\u3066\u304B\u3089\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.volume.create.template.confirm=\u3053\u306E\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u30DC\u30EA\u30E5\u30FC\u30E0 \u30B5\u30A4\u30BA\u306B\u3088\u3063\u3066\u306F\u3001\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210\u306B\u306F\u6570\u5206\u4EE5\u4E0A\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 -message.you.must.have.at.least.one.physical.network=\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304C\u5FC5\u8981\u3067\u3059 -message.Zone.creation.complete=\u30BE\u30FC\u30F3\u304C\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F -message.zone.creation.complete.would.you.like.to.enable.this.zone=\u30BE\u30FC\u30F3\u304C\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F\u3002\u3053\u306E\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.zone.no.network.selection=\u9078\u629E\u3057\u305F\u30BE\u30FC\u30F3\u3067\u306F\u3001\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3067\u304D\u307E\u305B\u3093\u3002 -message.zone.step.1.desc=\u30BE\u30FC\u30F3\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.step.4.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +message.step.4.desc=\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304C\\u63A5\\u7D9A\\u3059\\u308B\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.storage.traffic=\\u30DB\\u30B9\\u30C8\\u3084 CloudStack \\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306A\\u3069\\u3001\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u901A\\u4FE1\\u3059\\u308B CloudStack \\u306E\\u5185\\u90E8\\u30EA\\u30BD\\u30FC\\u30B9\\u9593\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3067\\u3059\\u3002\\u3053\\u3053\\u3067\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.suspend.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u4E00\\u6642\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.template.desc=VM \\u306E\\u8D77\\u52D5\\u306B\\u4F7F\\u7528\\u3067\\u304D\\u308B OS \\u30A4\\u30E1\\u30FC\\u30B8 +message.tooltip.dns.1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.tooltip.dns.2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E VM \\u3067\\u4F7F\\u7528\\u3059\\u308B 2 \\u756A\\u76EE\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.tooltip.internal.dns.1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E CloudStack \\u5185\\u90E8\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.tooltip.internal.dns.2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E CloudStack \\u5185\\u90E8\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.tooltip.network.domain=DNS \\u30B5\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9\\u3067\\u3059\\u3002\\u3053\\u306E\\u30B5\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9\\u304B\\u3089\\u30B2\\u30B9\\u30C8 VM \\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3059\\u308B\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30AB\\u30B9\\u30BF\\u30E0 \\u30C9\\u30E1\\u30A4\\u30F3\\u540D\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002 +message.tooltip.pod.name=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 +message.tooltip.reserved.system.gateway=\\u30DD\\u30C3\\u30C9\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306E\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3067\\u3059\\u3002 +message.tooltip.reserved.system.netmask=\\u30DD\\u30C3\\u30C9\\u306E\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u3092\\u5B9A\\u7FA9\\u3059\\u308B\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30D7\\u30EC\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9\\u3067\\u3059\\u3002CIDR \\u8868\\u8A18\\u3092\\u4F7F\\u7528\\u3057\\u307E\\u3059\\u3002 +message.tooltip.zone.name=\\u30BE\\u30FC\\u30F3\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 +message.update.os.preference=\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u306E OS \\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u540C\\u69D8\\u306E\\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u6301\\u3064\\u3059\\u3079\\u3066\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306F\\u3001\\u5225\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u9078\\u629E\\u3059\\u308B\\u524D\\u306B\\u307E\\u305A\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u306B\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u307E\\u3059\\u3002 +message.update.resource.count=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u6570\\u3092\\u66F4\\u65B0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.update.ssl=\\u5404\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3067\\u66F4\\u65B0\\u3059\\u308B\\u3001X.509 \\u6E96\\u62E0\\u306E\\u65B0\\u3057\\u3044 SSL \\u8A3C\\u660E\\u66F8\\u3092\\u9001\\u4FE1\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\: +message.validate.instance.name=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u540D\\u306F 63 \\u6587\\u5B57\\u4EE5\\u5185\\u3067\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002ASCII \\u6587\\u5B57\\u306E a\\uFF5Ez\\u3001A\\uFF5EZ\\u3001\\u6570\\u5B57\\u306E 0\\uFF5E9\\u3001\\u304A\\u3088\\u3073\\u30CF\\u30A4\\u30D5\\u30F3\\u306E\\u307F\\u3092\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u3059\\u3002\\u6587\\u5B57\\u3067\\u59CB\\u307E\\u308A\\u3001\\u6587\\u5B57\\u307E\\u305F\\u306F\\u6570\\u5B57\\u3067\\u7D42\\u308F\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.virtual.network.desc=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u5C02\\u7528\\u4EEE\\u60F3\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3067\\u3059\\u3002\\u30D6\\u30ED\\u30FC\\u30C9\\u30AD\\u30E3\\u30B9\\u30C8 \\u30C9\\u30E1\\u30A4\\u30F3\\u306F VLAN \\u5185\\u306B\\u914D\\u7F6E\\u3055\\u308C\\u3001\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3078\\u306E\\u30A2\\u30AF\\u30BB\\u30B9\\u306F\\u3059\\u3079\\u3066\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u306B\\u3088\\u3063\\u3066\\u30EB\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0\\u3055\\u308C\\u307E\\u3059\\u3002 +message.vm.create.template.confirm=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u3068 VM \\u304C\\u81EA\\u52D5\\u7684\\u306B\\u518D\\u8D77\\u52D5\\u3055\\u308C\\u307E\\u3059\\u3002 +message.vm.review.launch=\\u6B21\\u306E\\u60C5\\u5831\\u3092\\u53C2\\u7167\\u3057\\u3066\\u3001\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u6B63\\u3057\\u304F\\u8A2D\\u5B9A\\u3057\\u305F\\u3053\\u3068\\u3092\\u78BA\\u8A8D\\u3057\\u3066\\u304B\\u3089\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.volume.create.template.confirm=\\u3053\\u306E\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u30B5\\u30A4\\u30BA\\u306B\\u3088\\u3063\\u3066\\u306F\\u3001\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210\\u306B\\u306F\\u6570\\u5206\\u4EE5\\u4E0A\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 +message.you.must.have.at.least.one.physical.network=\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304C\\u5FC5\\u8981\\u3067\\u3059 +message.Zone.creation.complete=\\u30BE\\u30FC\\u30F3\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F +message.zone.creation.complete.would.you.like.to.enable.this.zone=\\u30BE\\u30FC\\u30F3\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.zone.no.network.selection=\\u9078\\u629E\\u3057\\u305F\\u30BE\\u30FC\\u30F3\\u3067\\u306F\\u3001\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002 +message.zone.step.1.desc=\\u30BE\\u30FC\\u30F3\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 message.zone.step.2.desc=\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084Zone\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e5\u0085\u00a5\u00e5\u008a\u009b\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 message.zone.step.3.desc=\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084Pod\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e5\u0085\u00a5\u00e5\u008a\u009b\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 -message.zoneWizard.enable.local.storage=\u8B66\u544A\: \u3053\u306E\u30BE\u30FC\u30F3\u306E\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u6709\u52B9\u306B\u3059\u308B\u5834\u5408\u306F\u3001\u30B7\u30B9\u30C6\u30E0 VM \u306E\u8D77\u52D5\u5834\u6240\u306B\u5FDC\u3058\u3066\u6B21\u306E\u64CD\u4F5C\u304C\u5FC5\u8981\u3067\u3059\u3002

    1. \u30B7\u30B9\u30C6\u30E0 VM \u3092\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3067\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u5834\u5408\u306F\u3001\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4F5C\u6210\u3057\u305F\u5F8C\u3067\u30BE\u30FC\u30F3\u306B\u8FFD\u52A0\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u307E\u305F\u3001\u7121\u52B9\u72B6\u614B\u306E\u30BE\u30FC\u30F3\u3092\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u3082\u3042\u308A\u307E\u3059\u3002

    2. \u30B7\u30B9\u30C6\u30E0 VM \u3092\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8\u3067\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u5834\u5408\u306F\u3001system.vm.use.local.storage \u3092 true \u306B\u8A2D\u5B9A\u3057\u3066\u304B\u3089\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002


    \u7D9A\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -mode=\u30E2\u30FC\u30C9 -network.rate=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u901F\u5EA6 -notification.reboot.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u518D\u8D77\u52D5 -notification.start.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u8D77\u52D5 -notification.stop.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u505C\u6B62 -side.by.side=\u4E26\u5217 -state.Accepted=\u627F\u8AFE\u6E08\u307F -state.Active=\u30A2\u30AF\u30C6\u30A3\u30D6 -state.Allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F -state.Allocating=\u5272\u308A\u5F53\u3066\u4E2D -state.BackedUp=\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u6E08\u307F -state.BackingUp=\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u4E2D -state.Completed=\u5B8C\u4E86 -state.Creating=\u4F5C\u6210\u4E2D -state.Declined=\u8F9E\u9000 -state.Destroyed=\u7834\u68C4\u6E08\u307F -state.Disabled=\u7121\u52B9 -state.enabled=\u6709\u52B9 -state.Enabled=\u6709\u52B9 -state.Error=\u30A8\u30E9\u30FC -state.Expunging=\u62B9\u6D88\u4E2D -state.Migrating=\u79FB\u884C\u4E2D -state.Pending=\u4FDD\u7559 -state.ready=\u6E96\u5099\u5B8C\u4E86 -state.Ready=\u6E96\u5099\u5B8C\u4E86 -state.Running=\u5B9F\u884C\u4E2D -state.Starting=\u958B\u59CB\u4E2D -state.Stopped=\u505C\u6B62\u6E08\u307F -state.Stopping=\u505C\u6B62\u3057\u3066\u3044\u307E\u3059 -state.Suspended=\u4E00\u6642\u505C\u6B62 -ui.listView.filters.all=\u3059\u3079\u3066 -ui.listView.filters.mine=\u81EA\u5206\u306E\u3082\u306E +message.zoneWizard.enable.local.storage=\\u8B66\\u544A\: \\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u306E\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u8D77\\u52D5\\u5834\\u6240\\u306B\\u5FDC\\u3058\\u3066\\u6B21\\u306E\\u64CD\\u4F5C\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002

    1. \\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3067\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4F5C\\u6210\\u3057\\u305F\\u5F8C\\u3067\\u30BE\\u30FC\\u30F3\\u306B\\u8FFD\\u52A0\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u307E\\u305F\\u3001\\u7121\\u52B9\\u72B6\\u614B\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u3082\\u3042\\u308A\\u307E\\u3059\\u3002

    2. \\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3067\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001system.vm.use.local.storage \\u3092 true \\u306B\\u8A2D\\u5B9A\\u3057\\u3066\\u304B\\u3089\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002


    \\u7D9A\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +mode=\\u30E2\\u30FC\\u30C9 +network.rate=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u901F\\u5EA6 +notification.reboot.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u518D\\u8D77\\u52D5 +notification.start.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u8D77\\u52D5 +notification.stop.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u505C\\u6B62 +side.by.side=\\u4E26\\u5217 +state.Accepted=\\u627F\\u8AFE\\u6E08\\u307F +state.Active=\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6 +state.Allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F +state.Allocating=\\u5272\\u308A\\u5F53\\u3066\\u4E2D +state.BackedUp=\\u30D0\\u30C3\\u30AF\\u30A2\\u30C3\\u30D7\\u6E08\\u307F +state.BackingUp=\\u30D0\\u30C3\\u30AF\\u30A2\\u30C3\\u30D7\\u4E2D +state.Completed=\\u5B8C\\u4E86 +state.Creating=\\u4F5C\\u6210\\u4E2D +state.Declined=\\u8F9E\\u9000 +state.Destroyed=\\u7834\\u68C4\\u6E08\\u307F +state.Disabled=\\u7121\\u52B9 +state.enabled=\\u6709\\u52B9 +state.Enabled=\\u6709\\u52B9 +state.Error=\\u30A8\\u30E9\\u30FC +state.Expunging=\\u62B9\\u6D88\\u4E2D +state.Migrating=\\u79FB\\u884C\\u4E2D +state.Pending=\\u4FDD\\u7559 +state.ready=\\u6E96\\u5099\\u5B8C\\u4E86 +state.Ready=\\u6E96\\u5099\\u5B8C\\u4E86 +state.Running=\\u5B9F\\u884C\\u4E2D +state.Starting=\\u958B\\u59CB\\u4E2D +state.Stopped=\\u505C\\u6B62\\u6E08\\u307F +state.Stopping=\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059 +state.Suspended=\\u4E00\\u6642\\u505C\\u6B62 +ui.listView.filters.all=\\u3059\\u3079\\u3066 +ui.listView.filters.mine=\\u81EA\\u5206\\u306E\\u3082\\u306E diff --git a/client/WEB-INF/classes/resources/messages_nb_NO.properties.native b/client/WEB-INF/classes/resources/messages_nb_NO.properties.native deleted file mode 100644 index 026a247e082..00000000000 --- a/client/WEB-INF/classes/resources/messages_nb_NO.properties.native +++ /dev/null @@ -1,365 +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. - -changed.item.properties=Endrede egenskaper -error.could.not.enable.zone=Kunne ikke aktivere sonen -error.installWizard.message=Noe gikk galt. Gå tilbake og korriger feilene. -error.password.not.match=Passordfeltene sammensvarer ikke -error.something.went.wrong.please.correct.the.following=Noe gikk galt. Vennligst korrigér følgende -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åndbredde -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ørt -label.drag.new.position=Dra til ny posisjon -label.edit.network.details=Editér 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ærlagring? -label.installWizard.addPrimaryStorageIntro.title=Legg til primærlagring -label.installWizard.addSecondaryStorageIntro.subtitle=Hva er sekundærlagring? -label.installWizard.addSecondaryStorageIntro.title=Legg til sekundærlagring -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ærrest tilkoblinger -label.load.balancing=Lastbalansering -label.load.balancing.policies=Regler for lastbalansering -label.local.storage=Lokal lagring -label.make.project.owner=Gjør konto prosjekteier -label.management=Administrasjon -label.manage.resources=Behandle ressurser -label.max.public.ips=Maks offentlige IPer -label.max.snapshots=Maks øyeblikksbilder -label.max.templates=Maks maler -label.max.vms=Maks bruker-VMer -label.max.volumes=Maks volumer -label.may.continue=Du kan nå 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ær lagring. -label.migrate.volume=Migrer volumet til en annen primærlagring. -label.move.down.row=Flytt én rad ned -label.move.to.top=Flytt til toppen -label.move.up.row=Flytt én 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 å vise -label.no.thanks=Nei, takk -label.notifications=Notifikasjoner -label.ok=OK -label.order=Rekkefølge -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åminn meg senere -label.remove.ip.range=Fjern IP-rekke -label.removing=Fjerner -label.restart.network=Nettverksomstart -label.restart.required=Omstart påkrevd -label.review=Gjennomgå -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ørt -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åde -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 ønsker å anskaffe en ny IP for dette nettverket -message.action.disable.pod=Vennligst bekreft at du ønsker å aktivere denne poden -message.action.disable.zone=Vennligst bekreft at du ønsker å deaktivere denne sonen. -message.action.enable.cluster=Vennligst bekreft at du ønsker å aktivere denne klyngen. -message.action.enable.pod=Vennligst bekreft at du ønsker å aktivere denne poden. -message.action.enable.zone=Vennligst bekreft at du ønsker å aktivere denne sonen. -message.activate.project=Er du sikker på du ønsker å aktivere dette prosjektet? -message.add.guest.network=Vennligst bekreft at du ønsker å 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 ønsker å fjerne denne ruteren -message.confirm.disable.provider=Vennligst bekreft at du ønsker å deaktivere denne tilbyderen -message.confirm.enable.provider=Vennligst bekreft at du ønsker å aktivere denne tilbyderen -message.confirm.join.project=Vennligst bekreft at du ønsker å delta i dette prosjektet. -message.confirm.shutdown.provider=Vennligst bekreft at du ønsker å stenge denne tilbyderen -message.create.template=Er du sikker på at du ønsker å lage malen? -message.creating.cluster=Oppretter klynge -message.creating.pod=Oppretter pod -message.creating.primary.storage=Oppretter primærlagring -message.creating.secondary.storage=Oppretter sekundærlagring -message.decline.invitation=Er du sikker på du ønsker å avvise denne prosjektinvitasjonen? -message.delete.project=Er du sikker på du ønsker å slette dette prosjektet? -message.detach.disk=Er du sikker på at du ønsker å frakoble denne disken? -message.download.volume.confirm=Vennligst bekreft at du ønsker å laste ned dette volumet -message.enable.vpn=Vennligst bekreft at du ønsker å 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å knappen for å prøve oppstart på nytt. -message.installWizard.tooltip.addCluster.name=Klyngenavnet. Dette kan være 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å subnettet gjestene vil bruke. -message.installWizard.tooltip.addPrimaryStorage.name=Navnet på 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å hver vert hvor denne primære 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ær 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å 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å 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å 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ør instansveiviseren. -message.ip.address.changed=Din IP-adresse kan ha endret seg. Ønsker du å oppdatere visningen? Merk at detaljvisningen vil i såfall lukkes. -message.iso.desc=Diskimage som inneholder data etter oppstartsbar media for OS -message.join.project=Du har nå deltatt i et prosjekt. Vennligst bytt til prosjektvisning for å se prosjektet. -message.migrate.instance.to.host=Vennligst bekreft at du ønsker å migrere instansen til en annen vert. -message.migrate.instance.to.ps=Vennligst bekreft at du ønsker å migrere instansen til en annen sekundær lagring. -message.migrate.volume=Vennligst bekreft at du ønsker å migrere volumet til en annen primærlagring. -message.no.projects.adminOnly=Du har ingen prosjekter.
    Vennligst be din administrator om å opprette et nytt prosjekt. -message.no.projects=Du har ingen prosjekter.
    Vennligst opprett et nytt fra prosjektseksjonen. -message.pending.projects.1=Du har følgende prosjektinvitasjoner\: -message.pending.projects.2=For å se, vennligst gå til prosjektseksjonen og velg invitasjoner fra nedtrekksmenyen. -message.please.add.at.lease.one.traffic.range=Vennligst legg til minst étt trafikknivå -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ør 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å 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å stoppes før man forsøker å bytte nåværende 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 ønsker å pause dette prosjektet? -message.template.desc=OS-image som kan brukes til å starte VMer -message.vm.review.launch=Vennligst vurder følgende informasjon og bekreft at din virtuelle instans er korrekt før kjøring -message.you.must.have.at.least.one.physical.network=Du trenger minst ett fysisk nettverk -message.Zone.creation.complete=Opprettelsen av sonen utført -message.zone.creation.complete.would.you.like.to.enable.this.zone=Soneopprettelse fullført. Ønsker du å 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ørt -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ører -state.Starting=Starter -state.Stopped=Stoppet -state.Suspended=Pauset -ui.listView.filters.all=Alle -ui.listView.filters.mine=Mine From 1fed7df0baaac0fc63dbb980c88b6483ef150578 Mon Sep 17 00:00:00 2001 From: Milamber Date: Thu, 25 Apr 2013 00:53:28 +0000 Subject: [PATCH 404/607] CLOUDSTACK-2138: fix an issue on JA (japanese) resource file. Add ES (spanish) resource file --- .../classes/resources/messages_es.properties | 861 ++++++ .../classes/resources/messages_ja.properties | 2704 ++++++++--------- 2 files changed, 2213 insertions(+), 1352 deletions(-) create mode 100644 client/WEB-INF/classes/resources/messages_es.properties diff --git a/client/WEB-INF/classes/resources/messages_es.properties b/client/WEB-INF/classes/resources/messages_es.properties new file mode 100644 index 00000000000..28f9363724a --- /dev/null +++ b/client/WEB-INF/classes/resources/messages_es.properties @@ -0,0 +1,861 @@ +# 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\: Seleccione una plantilla +label.step.2=Paso 2 +label.step.2.title=Paso 2\: Oferta de Servicio +label.step.3=Paso 3 +label.step.3.title=Paso 3\: Seleccione un disco Ofrenda +label.step.4=Paso 4 +label.step.4.title=Paso 4\: Red +label.step.5=Paso 5 +label.step.5.title=Paso 5\: Revisi\u00c3\u00b3n +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\: ] +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\: Seleccione una red +label.zone.step.2.title=Paso 2\: A\u00c3\u00b1adir una zona +label.zone.step.3.title=Paso 3\: A\u00c3\u00b1adir una vaina +label.zone.step.4.title=Paso 4\: A\u00c3\u00b1adir un rango de IP +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 zona , la consola de +message.add.cluster.zone=A\u00c3\u00b1adir un hipervisor administradas por cl\u00c3\u00baster de zona +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 red en la zona +message.add.ip.range.to.pod=

    A\u00c3\u00b1adir un rango de IP de la vaina\:

    +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\: +message.add.pod=Agregar una vaina nueva zona +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 zona , la consola de +message.add.secondary.storage=A\u00c3\u00b1adir un nuevo almacenamiento de zona +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 * no * 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 XXX de la zona +message.create.template.vm=Crear VM de la plantilla +message.create.template.volume=Por favor, especifique la siguiente informaci\u00c3\u00b3n antes de crear una plantilla de su 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.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 00000 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, haga clic aqu\u00c3\u00ad 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=

    \# de Grupos

    +message.number.hosts=

    \# de Anfitri\u00c3\u00b3n

    +message.number.pods=

    \# de Las vainas

    +message.number.storage=

    \# de Almacenamiento primario

    +message.number.zones=

    \# de Zonas

    +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 pulse Ctrl 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 diff --git a/client/WEB-INF/classes/resources/messages_ja.properties b/client/WEB-INF/classes/resources/messages_ja.properties index 7873a2de9a3..2380e914a75 100644 --- a/client/WEB-INF/classes/resources/messages_ja.properties +++ b/client/WEB-INF/classes/resources/messages_ja.properties @@ -15,873 +15,873 @@ # specific language governing permissions and limitations # under the License. -changed.item.properties=\\u9805\\u76EE\\u306E\\u30D7\\u30ED\\u30D1\\u30C6\\u30A3\\u306E\\u5909\\u66F4 +changed.item.properties=\u9805\u76EE\u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u306E\u5909\u66F4 confirm.enable.s3=S3\u57fa\u76e4\u30bb\u30ab\u30f3\u30c0\u30ea\u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u6709\u52b9\u5316\u3059\u308b\u305f\u3081\u306b\u306f\u3001\u4ee5\u4e0b\u306e\u60c5\u5831\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044 -confirm.enable.swift=Swift1 \\u306E\\u30B5\\u30DD\\u30FC\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u306B\\u306F\\u3001\\u6B21\\u306E\\u60C5\\u5831\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -error.could.not.enable.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3067\\u304D\\u307E\\u305B\\u3093\\u3067\\u3057\\u305F -error.installWizard.message=\\u554F\\u984C\\u304C\\u767A\\u751F\\u3057\\u307E\\u3057\\u305F\\u3002\\u623B\\u3063\\u3066\\u30A8\\u30E9\\u30FC\\u3092\\u4FEE\\u6B63\\u3067\\u304D\\u307E\\u3059\\u3002 -error.invalid.username.password=\\u7121\\u52B9\\u306A\\u30E6\\u30FC\\u30B6\\u30FC\\u540D\\u307E\\u305F\\u306F\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 -error.login=\\u30E6\\u30FC\\u30B6\\u30FC\\u540D/\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u304C\\u8A18\\u9332\\u3068\\u4E00\\u81F4\\u3057\\u307E\\u305B\\u3093\\u3002 +confirm.enable.swift=Swift1 \u306E\u30B5\u30DD\u30FC\u30C8\u3092\u6709\u52B9\u306B\u3059\u308B\u306B\u306F\u3001\u6B21\u306E\u60C5\u5831\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +error.could.not.enable.zone=\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F +error.installWizard.message=\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u623B\u3063\u3066\u30A8\u30E9\u30FC\u3092\u4FEE\u6B63\u3067\u304D\u307E\u3059\u3002 +error.invalid.username.password=\u7121\u52B9\u306A\u30E6\u30FC\u30B6\u30FC\u540D\u307E\u305F\u306F\u30D1\u30B9\u30EF\u30FC\u30C9 +error.login=\u30E6\u30FC\u30B6\u30FC\u540D/\u30D1\u30B9\u30EF\u30FC\u30C9\u304C\u8A18\u9332\u3068\u4E00\u81F4\u3057\u307E\u305B\u3093\u3002 error.menu.select=\u00e3\u0082\u00a2\u00e3\u0082\u00a4\u00e3\u0083\u0086\u00e3\u0083\u00a0\u00e3\u0081\u008c\u00e9\u0081\u00b8\u00e6\u008a\u009e\u00e3\u0081\u0095\u00e3\u0082\u008c\u00e3\u0081\u00a6\u00e3\u0081\u0084\u00e3\u0081\u00aa\u00e3\u0081\u0084\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0082\u00a2\u00e3\u0082\u00af\u00e3\u0082\u00b7\u00e3\u0083\u00a7\u00e3\u0083\u00b3\u00e3\u0082\u0092\u00e5\u00ae\u009f\u00e8\u00a1\u008c\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u0093\u00e3\u0081\u00a8\u00e3\u0081\u008c\u00e3\u0081\u00a7\u00e3\u0081\u008d\u00e3\u0081\u00be\u00e3\u0081\u009b\u00e3\u0082\u0093 -error.mgmt.server.inaccessible=\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002\\u5F8C\\u3067\\u518D\\u5B9F\\u884C\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -error.password.not.match=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u304C\\u4E00\\u81F4\\u3057\\u307E\\u305B\\u3093 -error.please.specify.physical.network.tags=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30BF\\u30B0\\u3092\\u6307\\u5B9A\\u3057\\u306A\\u3051\\u308C\\u3070\\u3001\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306F\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002 -error.session.expired=\\u30BB\\u30C3\\u30B7\\u30E7\\u30F3\\u306E\\u6709\\u52B9\\u671F\\u9650\\u304C\\u5207\\u308C\\u307E\\u3057\\u305F\\u3002 -error.something.went.wrong.please.correct.the.following=\\u554F\\u984C\\u304C\\u767A\\u751F\\u3057\\u307E\\u3057\\u305F\\u3002\\u6B21\\u306E\\u5185\\u5BB9\\u3092\\u4FEE\\u6B63\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 -error.unable.to.reach.management.server=\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u901A\\u4FE1\\u3067\\u304D\\u307E\\u305B\\u3093 +error.mgmt.server.inaccessible=\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093\u3002\u5F8C\u3067\u518D\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +error.password.not.match=\u30D1\u30B9\u30EF\u30FC\u30C9\u304C\u4E00\u81F4\u3057\u307E\u305B\u3093 +error.please.specify.physical.network.tags=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30BF\u30B0\u3092\u6307\u5B9A\u3057\u306A\u3051\u308C\u3070\u3001\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002 +error.session.expired=\u30BB\u30C3\u30B7\u30E7\u30F3\u306E\u6709\u52B9\u671F\u9650\u304C\u5207\u308C\u307E\u3057\u305F\u3002 +error.something.went.wrong.please.correct.the.following=\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u6B21\u306E\u5185\u5BB9\u3092\u4FEE\u6B63\u3057\u3066\u304F\u3060\u3055\u3044 +error.unable.to.reach.management.server=\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3068\u901A\u4FE1\u3067\u304D\u307E\u305B\u3093 error.unresolved.internet.name=\u3042\u306a\u305f\u306e\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u540d\u306f\u89e3\u6c7a\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002 -extractable=\\u62BD\\u51FA\\u53EF\\u80FD -force.delete.domain.warning=\\u8B66\\u544A\: \\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3059\\u308B\\u3068\\u3001\\u3059\\u3079\\u3066\\u306E\\u5B50\\u30C9\\u30E1\\u30A4\\u30F3\\u304A\\u3088\\u3073\\u95A2\\u9023\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3068\\u305D\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u304C\\u524A\\u9664\\u3055\\u308C\\u307E\\u3059\\u3002 -force.delete=\\u5F37\\u5236\\u524A\\u9664 -force.remove.host.warning=\\u8B66\\u544A\: \\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3059\\u308B\\u3068\\u3001\\u5B9F\\u884C\\u4E2D\\u306E\\u3059\\u3079\\u3066\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u304C\\u5F37\\u5236\\u7684\\u306B\\u505C\\u6B62\\u3055\\u308C\\u3001\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u304B\\u3089\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u304C\\u5F37\\u5236\\u7684\\u306B\\u89E3\\u9664\\u3055\\u308C\\u307E\\u3059\\u3002 -force.remove=\\u5F37\\u5236\\u89E3\\u9664 -force.stop.instance.warning=\\u8B66\\u544A\: \\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u5F37\\u5236\\u505C\\u6B62\\u306F\\u3001\\u6700\\u7D42\\u624B\\u6BB5\\u306B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u30C7\\u30FC\\u30BF\\u3092\\u640D\\u5931\\u3059\\u308B\\u3060\\u3051\\u3067\\u306A\\u304F\\u3001\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306E\\u52D5\\u4F5C\\u304C\\u4E00\\u8CAB\\u3057\\u306A\\u304F\\u306A\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -force.stop=\\u5F37\\u5236\\u505C\\u6B62 -ICMP.code=ICMP \\u30B3\\u30FC\\u30C9 -ICMP.type=ICMP \\u306E\\u7A2E\\u985E -image.directory=\\u753B\\u50CF\\u30C7\\u30A3\\u30EC\\u30AF\\u30C8\\u30EA -inline=\\u76F4\\u5217 -instances.actions.reboot.label=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u518D\\u8D77\\u52D5 -label.accept.project.invitation=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u62DB\\u5F85\\u306E\\u627F\\u8AFE -label.account.and.security.group=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3001\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 -label.account.id=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 ID -label.account.name=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u540D -label.account.specific=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u56FA\\u6709 -label.accounts=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.acquire.new.ip=\\u65B0\\u3057\\u3044 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u53D6\\u5F97 -label.action.attach.disk.processing=\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.attach.disk=\\u30C7\\u30A3\\u30B9\\u30AF\\u306E\\u30A2\\u30BF\\u30C3\\u30C1 -label.action.attach.iso=ISO \\u306E\\u30A2\\u30BF\\u30C3\\u30C1 -label.action.attach.iso.processing=ISO \\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.cancel.maintenance.mode.processing=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u3092\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.cancel.maintenance.mode=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u306E\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB -label.action.change.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u306E\\u5909\\u66F4 -label.action.change.service.processing=\\u30B5\\u30FC\\u30D3\\u30B9\\u3092\\u5909\\u66F4\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.change.service=\\u30B5\\u30FC\\u30D3\\u30B9\\u306E\\u5909\\u66F4 -label.action.copy.ISO=ISO \\u306E\\u30B3\\u30D4\\u30FC -label.action.copy.ISO.processing=ISO \\u3092\\u30B3\\u30D4\\u30FC\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.copy.template.processing=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u30B3\\u30D4\\u30FC\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.copy.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u30B3\\u30D4\\u30FC -label.action.create.template.from.vm=VM \\u304B\\u3089\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u4F5C\\u6210 -label.action.create.template.from.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u304B\\u3089\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u4F5C\\u6210 -label.action.create.template.processing=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.create.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210 -label.action.create.vm.processing=VM \\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.create.vm=VM \\u306E\\u4F5C\\u6210 -label.action.create.volume.processing=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.create.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u4F5C\\u6210 -label.action.delete.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u524A\\u9664 -label.action.delete.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u524A\\u9664 -label.action.delete.disk.offering.processing=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u524A\\u9664 -label.action.delete.domain.processing=\\u30C9\\u30E1\\u30A4\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.domain=\\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u524A\\u9664 -label.action.delete.firewall.processing=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.firewall=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u898F\\u5247\\u306E\\u524A\\u9664 -label.action.delete.ingress.rule.processing=\\u53D7\\u4FE1\\u898F\\u5247\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u524A\\u9664 -label.action.delete.IP.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u524A\\u9664 -label.action.delete.IP.range.processing=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.ISO=ISO \\u306E\\u524A\\u9664 -label.action.delete.ISO.processing=ISO \\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.load.balancer.processing=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u306E\\u524A\\u9664 -label.action.delete.network.processing=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u524A\\u9664 -label.action.delete.nexusVswitch=Nexus 1000V \\u306E\\u524A\\u9664 -label.action.delete.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u524A\\u9664 -label.action.delete.pod.processing=\\u30DD\\u30C3\\u30C9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u524A\\u9664 -label.action.delete.primary.storage.processing=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u524A\\u9664 -label.action.delete.secondary.storage.processing=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u524A\\u9664 -label.action.delete.security.group.processing=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.security.group=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u306E\\u524A\\u9664 -label.action.delete.service.offering.processing=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u524A\\u9664 -label.action.delete.snapshot.processing=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.snapshot=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u524A\\u9664 -label.action.delete.system.service.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u524A\\u9664 -label.action.delete.template.processing=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u524A\\u9664 -label.action.delete.user.processing=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u524A\\u9664 -label.action.delete.volume.processing=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u524A\\u9664 -label.action.delete.zone.processing=\\u30BE\\u30FC\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.delete.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u524A\\u9664 -label.action.destroy.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u7834\\u68C4\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.destroy.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u7834\\u68C4 -label.action.destroy.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u7834\\u68C4\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.destroy.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u7834\\u68C4 -label.action.detach.disk.processing=\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.detach.disk=\\u30C7\\u30A3\\u30B9\\u30AF\\u306E\\u30C7\\u30BF\\u30C3\\u30C1 -label.action.detach.iso=ISO \\u306E\\u30C7\\u30BF\\u30C3\\u30C1 -label.action.detach.iso.processing=ISO \\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.disable.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.disable.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u7121\\u52B9\\u5316 -label.action.disable.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.disable.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u7121\\u52B9\\u5316 -label.action.disable.nexusVswitch=Nexus 1000V \\u306E\\u7121\\u52B9\\u5316 -label.action.disable.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u7121\\u52B9\\u5316 -label.action.disable.pod.processing=\\u30DD\\u30C3\\u30C9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.disable.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u7121\\u52B9\\u5316 -label.action.disable.static.NAT.processing=\\u9759\\u7684 NAT \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.disable.static.NAT=\\u9759\\u7684 NAT \\u306E\\u7121\\u52B9\\u5316 -label.action.disable.user.processing=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.disable.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u7121\\u52B9\\u5316 -label.action.disable.zone.processing=\\u30BE\\u30FC\\u30F3\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.disable.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u7121\\u52B9\\u5316 -label.action.download.ISO=ISO \\u306E\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9 -label.action.download.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9 -label.action.download.volume.processing=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.download.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9 -label.action.edit.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u7DE8\\u96C6 -label.action.edit.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u7DE8\\u96C6 -label.action.edit.domain=\\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u7DE8\\u96C6 -label.action.edit.global.setting=\\u30B0\\u30ED\\u30FC\\u30D0\\u30EB\\u8A2D\\u5B9A\\u306E\\u7DE8\\u96C6 -label.action.edit.host=\\u30DB\\u30B9\\u30C8\\u306E\\u7DE8\\u96C6 -label.action.edit.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u7DE8\\u96C6 -label.action.edit.ISO=ISO \\u306E\\u7DE8\\u96C6 -label.action.edit.network.offering=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u7DE8\\u96C6 -label.action.edit.network.processing=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u7DE8\\u96C6\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.edit.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u7DE8\\u96C6 -label.action.edit.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u7DE8\\u96C6 -label.action.edit.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u7DE8\\u96C6 -label.action.edit.resource.limits=\\u30EA\\u30BD\\u30FC\\u30B9\\u5236\\u9650\\u306E\\u7DE8\\u96C6 -label.action.edit.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u7DE8\\u96C6 -label.action.edit.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u7DE8\\u96C6 -label.action.edit.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u7DE8\\u96C6 -label.action.edit.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u7DE8\\u96C6 -label.action.enable.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.enable.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u6709\\u52B9\\u5316 -label.action.enable.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.enable.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u6709\\u52B9\\u5316 -label.action.enable.maintenance.mode.processing=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.enable.maintenance.mode=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u306E\\u6709\\u52B9\\u5316 -label.action.enable.nexusVswitch=Nexus 1000V \\u306E\\u6709\\u52B9\\u5316 -label.action.enable.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u6709\\u52B9\\u5316 -label.action.enable.pod.processing=\\u30DD\\u30C3\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.enable.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u6709\\u52B9\\u5316 -label.action.enable.static.NAT.processing=\\u9759\\u7684 NAT \\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.enable.static.NAT=\\u9759\\u7684 NAT \\u306E\\u6709\\u52B9\\u5316 -label.action.enable.user.processing=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.enable.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u6709\\u52B9\\u5316 -label.action.enable.zone.processing=\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.enable.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u6709\\u52B9\\u5316 -label.action.force.reconnect.processing=\\u518D\\u63A5\\u7D9A\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.force.reconnect=\\u5F37\\u5236\\u518D\\u63A5\\u7D9A -label.action.generate.keys.processing=\\u30AD\\u30FC\\u3092\\u751F\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.generate.keys=\\u30AD\\u30FC\\u306E\\u751F\\u6210 -label.action.list.nexusVswitch=Nexus 1000V \\u306E\\u4E00\\u89A7\\u8868\\u793A -label.action.lock.account.processing=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u30ED\\u30C3\\u30AF\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.lock.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30ED\\u30C3\\u30AF -label.action.manage.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.manage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u7BA1\\u7406\\u5BFE\\u8C61\\u5316 -label.action.migrate.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.migrate.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C -label.action.migrate.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.migrate.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u79FB\\u884C -label.action.migrate.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u79FB\\u884C\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.migrate.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u79FB\\u884C -label.action.reboot.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.reboot.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u518D\\u8D77\\u52D5 -label.action.reboot.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.reboot.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u518D\\u8D77\\u52D5 -label.action.reboot.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.reboot.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u518D\\u8D77\\u52D5 -label.action.recurring.snapshot=\\u5B9A\\u671F\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 -label.action.register.iso=ISO \\u306E\\u767B\\u9332 -label.action.register.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u767B\\u9332 -label.action.release.ip=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u89E3\\u653E -label.action.release.ip.processing=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u89E3\\u653E\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.remove.host.processing=\\u30DB\\u30B9\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.remove.host=\\u30DB\\u30B9\\u30C8\\u306E\\u524A\\u9664 -label.action.reset.password.processing=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.reset.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u306E\\u30EA\\u30BB\\u30C3\\u30C8 -label.action.resource.limits=\\u30EA\\u30BD\\u30FC\\u30B9\\u5236\\u9650 -label.action.restore.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u5FA9\\u5143\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.restore.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u5FA9\\u5143 -label.action.start.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.start.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u8D77\\u52D5 -label.action.start.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.start.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u8D77\\u52D5 -label.action.start.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.start.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u8D77\\u52D5 -label.action.stop.instance.processing=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.stop.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u505C\\u6B62 -label.action.stop.router.processing=\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.stop.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u505C\\u6B62 -label.action.stop.systemvm.processing=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.stop.systemvm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u505C\\u6B62 -label.actions=\\u64CD\\u4F5C -label.action.take.snapshot.processing=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059.... -label.action.take.snapshot=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u4F5C\\u6210 -label.action.unmanage.cluster.processing=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u975E\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.unmanage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u975E\\u7BA1\\u7406\\u5BFE\\u8C61\\u5316 -label.action.update.OS.preference=OS \\u57FA\\u672C\\u8A2D\\u5B9A\\u306E\\u66F4\\u65B0 -label.action.update.OS.preference.processing=OS \\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u66F4\\u65B0\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.update.resource.count.processing=\\u30EA\\u30BD\\u30FC\\u30B9\\u6570\\u3092\\u66F4\\u65B0\\u3057\\u3066\\u3044\\u307E\\u3059... -label.action.update.resource.count=\\u30EA\\u30BD\\u30FC\\u30B9\\u6570\\u306E\\u66F4\\u65B0 -label.activate.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6\\u5316 -label.active.sessions=\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6\\u306A\\u30BB\\u30C3\\u30B7\\u30E7\\u30F3 -label.add.accounts.to=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u8FFD\\u52A0\\u5148\: -label.add.accounts=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u8FFD\\u52A0 -label.add.account.to.project=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u8FFD\\u52A0 -label.add.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u8FFD\\u52A0 -label.add.ACL=ACL \\u306E\\u8FFD\\u52A0 -label.add.by.cidr=CIDR \\u3067\\u8FFD\\u52A0 -label.add.by.group=\\u30B0\\u30EB\\u30FC\\u30D7\\u3067\\u8FFD\\u52A0 -label.add.by=\\u8FFD\\u52A0\\u5358\\u4F4D -label.add.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u8FFD\\u52A0 -label.add.compute.offering=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 -label.add.direct.iprange=\\u76F4\\u63A5 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u8FFD\\u52A0 -label.add.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 -label.add.domain=\\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u8FFD\\u52A0 -label.add.egress.rule=\\u9001\\u4FE1\\u898F\\u5247\\u306E\\u8FFD\\u52A0 -label.add.F5.device=F5 \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 -label.add.firewall=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u898F\\u5247\\u306E\\u8FFD\\u52A0 -label.add.guest.network=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8FFD\\u52A0 -label.add.host=\\u30DB\\u30B9\\u30C8\\u306E\\u8FFD\\u52A0 -label.adding.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -label.adding.failed=\\u8FFD\\u52A0\\u3067\\u304D\\u307E\\u305B\\u3093\\u3067\\u3057\\u305F -label.adding.pod=\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -label.adding.processing=\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059... -label.add.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u8FFD\\u52A0 -label.adding.succeeded=\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u305F -label.adding=\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -label.adding.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -label.adding.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -label.add.ip.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u8FFD\\u52A0 -label.additional.networks=\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.add.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306E\\u8FFD\\u52A0 -label.add.more=\\u305D\\u306E\\u307B\\u304B\\u306E\\u9805\\u76EE\\u306E\\u8FFD\\u52A0 -label.add.netScaler.device=Netscaler \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 -label.add.network.ACL=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL \\u306E\\u8FFD\\u52A0 -label.add.network.device=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 -label.add.network.offering=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 -label.add.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8FFD\\u52A0 -label.add.new.F5=\\u65B0\\u3057\\u3044 F5 \\u306E\\u8FFD\\u52A0 -label.add.new.gateway=\\u65B0\\u3057\\u3044\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u8FFD\\u52A0 -label.add.new.NetScaler=\\u65B0\\u3057\\u3044 NetScaler \\u306E\\u8FFD\\u52A0 -label.add.new.SRX=\\u65B0\\u3057\\u3044 SRX \\u306E\\u8FFD\\u52A0 -label.add.new.tier=\\u65B0\\u3057\\u3044\\u968E\\u5C64\\u306E\\u8FFD\\u52A0 +extractable=\u62BD\u51FA\u53EF\u80FD +force.delete.domain.warning=\u8B66\u544A\: \u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u3059\u3079\u3066\u306E\u5B50\u30C9\u30E1\u30A4\u30F3\u304A\u3088\u3073\u95A2\u9023\u3059\u308B\u3059\u3079\u3066\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3068\u305D\u306E\u30EA\u30BD\u30FC\u30B9\u304C\u524A\u9664\u3055\u308C\u307E\u3059\u3002 +force.delete=\u5F37\u5236\u524A\u9664 +force.remove.host.warning=\u8B66\u544A\: \u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u5B9F\u884C\u4E2D\u306E\u3059\u3079\u3066\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u304C\u5F37\u5236\u7684\u306B\u505C\u6B62\u3055\u308C\u3001\u30AF\u30E9\u30B9\u30BF\u30FC\u304B\u3089\u3053\u306E\u30DB\u30B9\u30C8\u304C\u5F37\u5236\u7684\u306B\u89E3\u9664\u3055\u308C\u307E\u3059\u3002 +force.remove=\u5F37\u5236\u89E3\u9664 +force.stop.instance.warning=\u8B66\u544A\: \u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u5F37\u5236\u505C\u6B62\u306F\u3001\u6700\u7D42\u624B\u6BB5\u306B\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u30C7\u30FC\u30BF\u3092\u640D\u5931\u3059\u308B\u3060\u3051\u3067\u306A\u304F\u3001\u4EEE\u60F3\u30DE\u30B7\u30F3\u306E\u52D5\u4F5C\u304C\u4E00\u8CAB\u3057\u306A\u304F\u306A\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 +force.stop=\u5F37\u5236\u505C\u6B62 +ICMP.code=ICMP \u30B3\u30FC\u30C9 +ICMP.type=ICMP \u306E\u7A2E\u985E +image.directory=\u753B\u50CF\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA +inline=\u76F4\u5217 +instances.actions.reboot.label=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u518D\u8D77\u52D5 +label.accept.project.invitation=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u62DB\u5F85\u306E\u627F\u8AFE +label.account.and.security.group=\u30A2\u30AB\u30A6\u30F3\u30C8\u3001\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 +label.account.id=\u30A2\u30AB\u30A6\u30F3\u30C8 ID +label.account.name=\u30A2\u30AB\u30A6\u30F3\u30C8\u540D +label.account.specific=\u30A2\u30AB\u30A6\u30F3\u30C8\u56FA\u6709 +label.accounts=\u30A2\u30AB\u30A6\u30F3\u30C8 +label.account=\u30A2\u30AB\u30A6\u30F3\u30C8 +label.acquire.new.ip=\u65B0\u3057\u3044 IP \u30A2\u30C9\u30EC\u30B9\u306E\u53D6\u5F97 +label.action.attach.disk.processing=\u30C7\u30A3\u30B9\u30AF\u3092\u30A2\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... +label.action.attach.disk=\u30C7\u30A3\u30B9\u30AF\u306E\u30A2\u30BF\u30C3\u30C1 +label.action.attach.iso=ISO \u306E\u30A2\u30BF\u30C3\u30C1 +label.action.attach.iso.processing=ISO \u3092\u30A2\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... +label.action.cancel.maintenance.mode.processing=\u4FDD\u5B88\u30E2\u30FC\u30C9\u3092\u30AD\u30E3\u30F3\u30BB\u30EB\u3057\u3066\u3044\u307E\u3059... +label.action.cancel.maintenance.mode=\u4FDD\u5B88\u30E2\u30FC\u30C9\u306E\u30AD\u30E3\u30F3\u30BB\u30EB +label.action.change.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u306E\u5909\u66F4 +label.action.change.service.processing=\u30B5\u30FC\u30D3\u30B9\u3092\u5909\u66F4\u3057\u3066\u3044\u307E\u3059... +label.action.change.service=\u30B5\u30FC\u30D3\u30B9\u306E\u5909\u66F4 +label.action.copy.ISO=ISO \u306E\u30B3\u30D4\u30FC +label.action.copy.ISO.processing=ISO \u3092\u30B3\u30D4\u30FC\u3057\u3066\u3044\u307E\u3059... +label.action.copy.template.processing=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u30B3\u30D4\u30FC\u3057\u3066\u3044\u307E\u3059... +label.action.copy.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u30B3\u30D4\u30FC +label.action.create.template.from.vm=VM \u304B\u3089\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u4F5C\u6210 +label.action.create.template.from.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u304B\u3089\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u4F5C\u6210 +label.action.create.template.processing=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059... +label.action.create.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210 +label.action.create.vm.processing=VM \u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059... +label.action.create.vm=VM \u306E\u4F5C\u6210 +label.action.create.volume.processing=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059... +label.action.create.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u4F5C\u6210 +label.action.delete.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u524A\u9664 +label.action.delete.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u524A\u9664 +label.action.delete.disk.offering.processing=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u524A\u9664 +label.action.delete.domain.processing=\u30C9\u30E1\u30A4\u30F3\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.domain=\u30C9\u30E1\u30A4\u30F3\u306E\u524A\u9664 +label.action.delete.firewall.processing=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.firewall=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u898F\u5247\u306E\u524A\u9664 +label.action.delete.ingress.rule.processing=\u53D7\u4FE1\u898F\u5247\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u524A\u9664 +label.action.delete.IP.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u524A\u9664 +label.action.delete.IP.range.processing=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.ISO=ISO \u306E\u524A\u9664 +label.action.delete.ISO.processing=ISO \u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.load.balancer.processing=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.load.balancer=\u8CA0\u8377\u5206\u6563\u898F\u5247\u306E\u524A\u9664 +label.action.delete.network.processing=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u524A\u9664 +label.action.delete.nexusVswitch=Nexus 1000V \u306E\u524A\u9664 +label.action.delete.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u524A\u9664 +label.action.delete.pod.processing=\u30DD\u30C3\u30C9\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.pod=\u30DD\u30C3\u30C9\u306E\u524A\u9664 +label.action.delete.primary.storage.processing=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u524A\u9664 +label.action.delete.secondary.storage.processing=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u524A\u9664 +label.action.delete.security.group.processing=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.security.group=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u306E\u524A\u9664 +label.action.delete.service.offering.processing=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u524A\u9664 +label.action.delete.snapshot.processing=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.snapshot=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u524A\u9664 +label.action.delete.system.service.offering=\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u524A\u9664 +label.action.delete.template.processing=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u524A\u9664 +label.action.delete.user.processing=\u30E6\u30FC\u30B6\u30FC\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.user=\u30E6\u30FC\u30B6\u30FC\u306E\u524A\u9664 +label.action.delete.volume.processing=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u524A\u9664 +label.action.delete.zone.processing=\u30BE\u30FC\u30F3\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.delete.zone=\u30BE\u30FC\u30F3\u306E\u524A\u9664 +label.action.destroy.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u7834\u68C4\u3057\u3066\u3044\u307E\u3059... +label.action.destroy.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u7834\u68C4 +label.action.destroy.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u7834\u68C4\u3057\u3066\u3044\u307E\u3059... +label.action.destroy.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u7834\u68C4 +label.action.detach.disk.processing=\u30C7\u30A3\u30B9\u30AF\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... +label.action.detach.disk=\u30C7\u30A3\u30B9\u30AF\u306E\u30C7\u30BF\u30C3\u30C1 +label.action.detach.iso=ISO \u306E\u30C7\u30BF\u30C3\u30C1 +label.action.detach.iso.processing=ISO \u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... +label.action.disable.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.disable.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u7121\u52B9\u5316 +label.action.disable.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.disable.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u7121\u52B9\u5316 +label.action.disable.nexusVswitch=Nexus 1000V \u306E\u7121\u52B9\u5316 +label.action.disable.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u7121\u52B9\u5316 +label.action.disable.pod.processing=\u30DD\u30C3\u30C9\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.disable.pod=\u30DD\u30C3\u30C9\u306E\u7121\u52B9\u5316 +label.action.disable.static.NAT.processing=\u9759\u7684 NAT \u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.disable.static.NAT=\u9759\u7684 NAT \u306E\u7121\u52B9\u5316 +label.action.disable.user.processing=\u30E6\u30FC\u30B6\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.disable.user=\u30E6\u30FC\u30B6\u30FC\u306E\u7121\u52B9\u5316 +label.action.disable.zone.processing=\u30BE\u30FC\u30F3\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.disable.zone=\u30BE\u30FC\u30F3\u306E\u7121\u52B9\u5316 +label.action.download.ISO=ISO \u306E\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9 +label.action.download.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9 +label.action.download.volume.processing=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3044\u307E\u3059... +label.action.download.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9 +label.action.edit.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u7DE8\u96C6 +label.action.edit.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u7DE8\u96C6 +label.action.edit.domain=\u30C9\u30E1\u30A4\u30F3\u306E\u7DE8\u96C6 +label.action.edit.global.setting=\u30B0\u30ED\u30FC\u30D0\u30EB\u8A2D\u5B9A\u306E\u7DE8\u96C6 +label.action.edit.host=\u30DB\u30B9\u30C8\u306E\u7DE8\u96C6 +label.action.edit.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u7DE8\u96C6 +label.action.edit.ISO=ISO \u306E\u7DE8\u96C6 +label.action.edit.network.offering=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u7DE8\u96C6 +label.action.edit.network.processing=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u7DE8\u96C6\u3057\u3066\u3044\u307E\u3059... +label.action.edit.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u7DE8\u96C6 +label.action.edit.pod=\u30DD\u30C3\u30C9\u306E\u7DE8\u96C6 +label.action.edit.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u7DE8\u96C6 +label.action.edit.resource.limits=\u30EA\u30BD\u30FC\u30B9\u5236\u9650\u306E\u7DE8\u96C6 +label.action.edit.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u7DE8\u96C6 +label.action.edit.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u7DE8\u96C6 +label.action.edit.user=\u30E6\u30FC\u30B6\u30FC\u306E\u7DE8\u96C6 +label.action.edit.zone=\u30BE\u30FC\u30F3\u306E\u7DE8\u96C6 +label.action.enable.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.enable.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u6709\u52B9\u5316 +label.action.enable.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.enable.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u6709\u52B9\u5316 +label.action.enable.maintenance.mode.processing=\u4FDD\u5B88\u30E2\u30FC\u30C9\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.enable.maintenance.mode=\u4FDD\u5B88\u30E2\u30FC\u30C9\u306E\u6709\u52B9\u5316 +label.action.enable.nexusVswitch=Nexus 1000V \u306E\u6709\u52B9\u5316 +label.action.enable.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u6709\u52B9\u5316 +label.action.enable.pod.processing=\u30DD\u30C3\u30C9\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.enable.pod=\u30DD\u30C3\u30C9\u306E\u6709\u52B9\u5316 +label.action.enable.static.NAT.processing=\u9759\u7684 NAT \u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.enable.static.NAT=\u9759\u7684 NAT \u306E\u6709\u52B9\u5316 +label.action.enable.user.processing=\u30E6\u30FC\u30B6\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.enable.user=\u30E6\u30FC\u30B6\u30FC\u306E\u6709\u52B9\u5316 +label.action.enable.zone.processing=\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.enable.zone=\u30BE\u30FC\u30F3\u306E\u6709\u52B9\u5316 +label.action.force.reconnect.processing=\u518D\u63A5\u7D9A\u3057\u3066\u3044\u307E\u3059... +label.action.force.reconnect=\u5F37\u5236\u518D\u63A5\u7D9A +label.action.generate.keys.processing=\u30AD\u30FC\u3092\u751F\u6210\u3057\u3066\u3044\u307E\u3059... +label.action.generate.keys=\u30AD\u30FC\u306E\u751F\u6210 +label.action.list.nexusVswitch=Nexus 1000V \u306E\u4E00\u89A7\u8868\u793A +label.action.lock.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u30ED\u30C3\u30AF\u3057\u3066\u3044\u307E\u3059... +label.action.lock.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30ED\u30C3\u30AF +label.action.manage.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.manage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u7BA1\u7406\u5BFE\u8C61\u5316 +label.action.migrate.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u79FB\u884C\u3057\u3066\u3044\u307E\u3059... +label.action.migrate.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C +label.action.migrate.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u79FB\u884C\u3057\u3066\u3044\u307E\u3059... +label.action.migrate.router=\u30EB\u30FC\u30BF\u30FC\u306E\u79FB\u884C +label.action.migrate.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u79FB\u884C\u3057\u3066\u3044\u307E\u3059... +label.action.migrate.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u79FB\u884C +label.action.reboot.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u518D\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... +label.action.reboot.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u518D\u8D77\u52D5 +label.action.reboot.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... +label.action.reboot.router=\u30EB\u30FC\u30BF\u30FC\u306E\u518D\u8D77\u52D5 +label.action.reboot.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u518D\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... +label.action.reboot.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u518D\u8D77\u52D5 +label.action.recurring.snapshot=\u5B9A\u671F\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 +label.action.register.iso=ISO \u306E\u767B\u9332 +label.action.register.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u767B\u9332 +label.action.release.ip=IP \u30A2\u30C9\u30EC\u30B9\u306E\u89E3\u653E +label.action.release.ip.processing=IP \u30A2\u30C9\u30EC\u30B9\u3092\u89E3\u653E\u3057\u3066\u3044\u307E\u3059... +label.action.remove.host.processing=\u30DB\u30B9\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.action.remove.host=\u30DB\u30B9\u30C8\u306E\u524A\u9664 +label.action.reset.password.processing=\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u30EA\u30BB\u30C3\u30C8\u3057\u3066\u3044\u307E\u3059... +label.action.reset.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u306E\u30EA\u30BB\u30C3\u30C8 +label.action.resource.limits=\u30EA\u30BD\u30FC\u30B9\u5236\u9650 +label.action.restore.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u5FA9\u5143\u3057\u3066\u3044\u307E\u3059... +label.action.restore.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u5FA9\u5143 +label.action.start.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... +label.action.start.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u8D77\u52D5 +label.action.start.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... +label.action.start.router=\u30EB\u30FC\u30BF\u30FC\u306E\u8D77\u52D5 +label.action.start.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... +label.action.start.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u8D77\u52D5 +label.action.stop.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3057\u3066\u3044\u307E\u3059... +label.action.stop.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u505C\u6B62 +label.action.stop.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u505C\u6B62\u3057\u3066\u3044\u307E\u3059... +label.action.stop.router=\u30EB\u30FC\u30BF\u30FC\u306E\u505C\u6B62 +label.action.stop.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u505C\u6B62\u3057\u3066\u3044\u307E\u3059... +label.action.stop.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u505C\u6B62 +label.actions=\u64CD\u4F5C +label.action.take.snapshot.processing=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059.... +label.action.take.snapshot=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u4F5C\u6210 +label.action.unmanage.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u975E\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3044\u307E\u3059... +label.action.unmanage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u975E\u7BA1\u7406\u5BFE\u8C61\u5316 +label.action.update.OS.preference=OS \u57FA\u672C\u8A2D\u5B9A\u306E\u66F4\u65B0 +label.action.update.OS.preference.processing=OS \u57FA\u672C\u8A2D\u5B9A\u3092\u66F4\u65B0\u3057\u3066\u3044\u307E\u3059... +label.action.update.resource.count.processing=\u30EA\u30BD\u30FC\u30B9\u6570\u3092\u66F4\u65B0\u3057\u3066\u3044\u307E\u3059... +label.action.update.resource.count=\u30EA\u30BD\u30FC\u30B9\u6570\u306E\u66F4\u65B0 +label.activate.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30A2\u30AF\u30C6\u30A3\u30D6\u5316 +label.active.sessions=\u30A2\u30AF\u30C6\u30A3\u30D6\u306A\u30BB\u30C3\u30B7\u30E7\u30F3 +label.add.accounts.to=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u8FFD\u52A0\u5148\: +label.add.accounts=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u8FFD\u52A0 +label.add.account.to.project=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u8FFD\u52A0 +label.add.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u8FFD\u52A0 +label.add.ACL=ACL \u306E\u8FFD\u52A0 +label.add.by.cidr=CIDR \u3067\u8FFD\u52A0 +label.add.by.group=\u30B0\u30EB\u30FC\u30D7\u3067\u8FFD\u52A0 +label.add.by=\u8FFD\u52A0\u5358\u4F4D +label.add.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u8FFD\u52A0 +label.add.compute.offering=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 +label.add.direct.iprange=\u76F4\u63A5 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u8FFD\u52A0 +label.add.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 +label.add.domain=\u30C9\u30E1\u30A4\u30F3\u306E\u8FFD\u52A0 +label.add.egress.rule=\u9001\u4FE1\u898F\u5247\u306E\u8FFD\u52A0 +label.add.F5.device=F5 \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 +label.add.firewall=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u898F\u5247\u306E\u8FFD\u52A0 +label.add.guest.network=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8FFD\u52A0 +label.add.host=\u30DB\u30B9\u30C8\u306E\u8FFD\u52A0 +label.adding.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +label.adding.failed=\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F +label.adding.pod=\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +label.adding.processing=\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059... +label.add.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u8FFD\u52A0 +label.adding.succeeded=\u8FFD\u52A0\u3057\u307E\u3057\u305F +label.adding=\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +label.adding.user=\u30E6\u30FC\u30B6\u30FC\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +label.adding.zone=\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +label.add.ip.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u8FFD\u52A0 +label.additional.networks=\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.add.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306E\u8FFD\u52A0 +label.add.more=\u305D\u306E\u307B\u304B\u306E\u9805\u76EE\u306E\u8FFD\u52A0 +label.add.netScaler.device=Netscaler \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 +label.add.network.ACL=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL \u306E\u8FFD\u52A0 +label.add.network.device=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 +label.add.network.offering=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 +label.add.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8FFD\u52A0 +label.add.new.F5=\u65B0\u3057\u3044 F5 \u306E\u8FFD\u52A0 +label.add.new.gateway=\u65B0\u3057\u3044\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u8FFD\u52A0 +label.add.new.NetScaler=\u65B0\u3057\u3044 NetScaler \u306E\u8FFD\u52A0 +label.add.new.SRX=\u65B0\u3057\u3044 SRX \u306E\u8FFD\u52A0 +label.add.new.tier=\u65B0\u3057\u3044\u968E\u5C64\u306E\u8FFD\u52A0 label.add.NiciraNvp.device=NVP\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u8ffd\u52a0 -label.add.physical.network=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8FFD\\u52A0 -label.add.pod=\\u30DD\\u30C3\\u30C9\\u306E\\u8FFD\\u52A0 -label.add.port.forwarding.rule=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001\\u898F\\u5247\\u306E\\u8FFD\\u52A0 -label.add.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u8FFD\\u52A0 -label.add.resources=\\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u8FFD\\u52A0 -label.add.route=\\u30EB\\u30FC\\u30C8\\u306E\\u8FFD\\u52A0 -label.add.rule=\\u898F\\u5247\\u306E\\u8FFD\\u52A0 -label.add.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u8FFD\\u52A0 -label.add.security.group=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u306E\\u8FFD\\u52A0 -label.add.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 -label.add.SRX.device=SRX \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u8FFD\\u52A0 -label.add.static.nat.rule=\\u9759\\u7684 NAT \\u898F\\u5247\\u306E\\u8FFD\\u52A0 -label.add.static.route=\\u9759\\u7684\\u30EB\\u30FC\\u30C8\\u306E\\u8FFD\\u52A0 -label.add.system.service.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u8FFD\\u52A0 -label.add.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u8FFD\\u52A0 -label.add.to.group=\\u30B0\\u30EB\\u30FC\\u30D7\\u3078\\u306E\\u8FFD\\u52A0 -label.add=\\u8FFD\\u52A0 -label.add.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u8FFD\\u52A0 -label.add.vlan=VLAN \\u306E\\u8FFD\\u52A0 -label.add.vms.to.lb=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u3078\\u306E VM \\u306E\\u8FFD\\u52A0 -label.add.vms=VM \\u306E\\u8FFD\\u52A0 -label.add.VM.to.tier=\\u968E\\u5C64\\u3078\\u306E VM \\u306E\\u8FFD\\u52A0 -label.add.vm=VM \\u306E\\u8FFD\\u52A0 -label.add.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u8FFD\\u52A0 -label.add.vpc=VPC \\u306E\\u8FFD\\u52A0 -label.add.vpn.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u8FFD\\u52A0 -label.add.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u8FFD\\u52A0 -label.add.vpn.user=VPN \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u8FFD\\u52A0 -label.add.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u8FFD\\u52A0 -label.admin.accounts=\\u7BA1\\u7406\\u8005\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.admin=\\u7BA1\\u7406\\u8005 -label.advanced.mode=\\u62E1\\u5F35\\u30E2\\u30FC\\u30C9 -label.advanced.search=\\u9AD8\\u5EA6\\u306A\\u691C\\u7D22 -label.advanced=\\u62E1\\u5F35 -label.agent.password=\\u30A8\\u30FC\\u30B8\\u30A7\\u30F3\\u30C8 \\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 -label.agent.username=\\u30A8\\u30FC\\u30B8\\u30A7\\u30F3\\u30C8 \\u30E6\\u30FC\\u30B6\\u30FC\\u540D -label.agree=\\u540C\\u610F\\u3059\\u308B -label.alert=\\u30A2\\u30E9\\u30FC\\u30C8 -label.algorithm=\\u30A2\\u30EB\\u30B4\\u30EA\\u30BA\\u30E0 -label.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F -label.allocation.state=\\u5272\\u308A\\u5F53\\u3066\\u72B6\\u614B -label.api.key=API \\u30AD\\u30FC -label.apply=\\u9069\\u7528 -label.assign.to.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u3066\\u3044\\u307E\\u3059 -label.assign=\\u5272\\u308A\\u5F53\\u3066 -label.associated.network.id=\\u95A2\\u9023\\u3065\\u3051\\u3089\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID -label.associated.network=\\u95A2\\u9023\\u3065\\u3051\\u3089\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.attached.iso=\\u30A2\\u30BF\\u30C3\\u30C1\\u3055\\u308C\\u305F ISO -label.availability=\\u53EF\\u7528\\u6027 -label.availability.zone=\\u5229\\u7528\\u53EF\\u80FD\\u30BE\\u30FC\\u30F3 -label.available.public.ips=\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.available=\\u4F7F\\u7528\\u53EF\\u80FD -label.back=\\u623B\\u308B -label.bandwidth=\\u5E2F\\u57DF\\u5E45 -label.basic.mode=\\u57FA\\u672C\\u30E2\\u30FC\\u30C9 -label.basic=\\u57FA\\u672C -label.bootable=\\u8D77\\u52D5\\u53EF\\u80FD -label.broadcast.domain.range=\\u30D6\\u30ED\\u30FC\\u30C9\\u30AD\\u30E3\\u30B9\\u30C8 \\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u7BC4\\u56F2 -label.broadcast.domain.type=\\u30D6\\u30ED\\u30FC\\u30C9\\u30AD\\u30E3\\u30B9\\u30C8 \\u30C9\\u30E1\\u30A4\\u30F3\\u306E\\u7A2E\\u985E +label.add.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8FFD\u52A0 +label.add.pod=\u30DD\u30C3\u30C9\u306E\u8FFD\u52A0 +label.add.port.forwarding.rule=\u30DD\u30FC\u30C8\u8EE2\u9001\u898F\u5247\u306E\u8FFD\u52A0 +label.add.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u8FFD\u52A0 +label.add.resources=\u30EA\u30BD\u30FC\u30B9\u306E\u8FFD\u52A0 +label.add.route=\u30EB\u30FC\u30C8\u306E\u8FFD\u52A0 +label.add.rule=\u898F\u5247\u306E\u8FFD\u52A0 +label.add.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u8FFD\u52A0 +label.add.security.group=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u306E\u8FFD\u52A0 +label.add.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 +label.add.SRX.device=SRX \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 +label.add.static.nat.rule=\u9759\u7684 NAT \u898F\u5247\u306E\u8FFD\u52A0 +label.add.static.route=\u9759\u7684\u30EB\u30FC\u30C8\u306E\u8FFD\u52A0 +label.add.system.service.offering=\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 +label.add.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u8FFD\u52A0 +label.add.to.group=\u30B0\u30EB\u30FC\u30D7\u3078\u306E\u8FFD\u52A0 +label.add=\u8FFD\u52A0 +label.add.user=\u30E6\u30FC\u30B6\u30FC\u306E\u8FFD\u52A0 +label.add.vlan=VLAN \u306E\u8FFD\u52A0 +label.add.vms.to.lb=\u8CA0\u8377\u5206\u6563\u898F\u5247\u3078\u306E VM \u306E\u8FFD\u52A0 +label.add.vms=VM \u306E\u8FFD\u52A0 +label.add.VM.to.tier=\u968E\u5C64\u3078\u306E VM \u306E\u8FFD\u52A0 +label.add.vm=VM \u306E\u8FFD\u52A0 +label.add.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u8FFD\u52A0 +label.add.vpc=VPC \u306E\u8FFD\u52A0 +label.add.vpn.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u8FFD\u52A0 +label.add.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u8FFD\u52A0 +label.add.vpn.user=VPN \u30E6\u30FC\u30B6\u30FC\u306E\u8FFD\u52A0 +label.add.zone=\u30BE\u30FC\u30F3\u306E\u8FFD\u52A0 +label.admin.accounts=\u7BA1\u7406\u8005\u30A2\u30AB\u30A6\u30F3\u30C8 +label.admin=\u7BA1\u7406\u8005 +label.advanced.mode=\u62E1\u5F35\u30E2\u30FC\u30C9 +label.advanced.search=\u9AD8\u5EA6\u306A\u691C\u7D22 +label.advanced=\u62E1\u5F35 +label.agent.password=\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8 \u30D1\u30B9\u30EF\u30FC\u30C9 +label.agent.username=\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8 \u30E6\u30FC\u30B6\u30FC\u540D +label.agree=\u540C\u610F\u3059\u308B +label.alert=\u30A2\u30E9\u30FC\u30C8 +label.algorithm=\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0 +label.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F +label.allocation.state=\u5272\u308A\u5F53\u3066\u72B6\u614B +label.api.key=API \u30AD\u30FC +label.apply=\u9069\u7528 +label.assign.to.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u5272\u308A\u5F53\u3066\u3066\u3044\u307E\u3059 +label.assign=\u5272\u308A\u5F53\u3066 +label.associated.network.id=\u95A2\u9023\u3065\u3051\u3089\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID +label.associated.network=\u95A2\u9023\u3065\u3051\u3089\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.attached.iso=\u30A2\u30BF\u30C3\u30C1\u3055\u308C\u305F ISO +label.availability=\u53EF\u7528\u6027 +label.availability.zone=\u5229\u7528\u53EF\u80FD\u30BE\u30FC\u30F3 +label.available.public.ips=\u4F7F\u7528\u3067\u304D\u308B\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 +label.available=\u4F7F\u7528\u53EF\u80FD +label.back=\u623B\u308B +label.bandwidth=\u5E2F\u57DF\u5E45 +label.basic.mode=\u57FA\u672C\u30E2\u30FC\u30C9 +label.basic=\u57FA\u672C +label.bootable=\u8D77\u52D5\u53EF\u80FD +label.broadcast.domain.range=\u30D6\u30ED\u30FC\u30C9\u30AD\u30E3\u30B9\u30C8 \u30C9\u30E1\u30A4\u30F3\u306E\u7BC4\u56F2 +label.broadcast.domain.type=\u30D6\u30ED\u30FC\u30C9\u30AD\u30E3\u30B9\u30C8 \u30C9\u30E1\u30A4\u30F3\u306E\u7A2E\u985E label.broadcast.uri=Broadcast URI -label.by.account=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.by.availability=\\u53EF\\u7528\\u6027 -label.by.domain=\\u30C9\\u30E1\\u30A4\\u30F3 -label.by.end.date=\\u7D42\\u4E86\\u65E5 -label.by.level=\\u30EC\\u30D9\\u30EB -label.by.pod=\\u30DD\\u30C3\\u30C9 -label.by.role=\\u5F79\\u5272 -label.by.start.date=\\u958B\\u59CB\\u65E5 -label.by.state=\\u72B6\\u614B -label.bytes.received=\\u53D7\\u4FE1\\u30D0\\u30A4\\u30C8 -label.bytes.sent=\\u9001\\u4FE1\\u30D0\\u30A4\\u30C8 -label.by.traffic.type=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E -label.by.type.id=\\u7A2E\\u985E ID -label.by.type=\\u7A2E\\u985E -label.by.zone=\\u30BE\\u30FC\\u30F3 -label.cancel=\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB -label.capacity=\\u51E6\\u7406\\u80FD\\u529B -label.certificate=\\u8A3C\\u660E\\u66F8 -label.change.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u5909\\u66F4 -label.change.value=\\u5024\\u306E\\u5909\\u66F4 -label.character=\\u6587\\u5B57 -label.checksum=MD5 \\u30C1\\u30A7\\u30C3\\u30AF\\u30B5\\u30E0 -label.cidr.account=CIDR \\u307E\\u305F\\u306F\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8/\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 +label.by.account=\u30A2\u30AB\u30A6\u30F3\u30C8 +label.by.availability=\u53EF\u7528\u6027 +label.by.domain=\u30C9\u30E1\u30A4\u30F3 +label.by.end.date=\u7D42\u4E86\u65E5 +label.by.level=\u30EC\u30D9\u30EB +label.by.pod=\u30DD\u30C3\u30C9 +label.by.role=\u5F79\u5272 +label.by.start.date=\u958B\u59CB\u65E5 +label.by.state=\u72B6\u614B +label.bytes.received=\u53D7\u4FE1\u30D0\u30A4\u30C8 +label.bytes.sent=\u9001\u4FE1\u30D0\u30A4\u30C8 +label.by.traffic.type=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E +label.by.type.id=\u7A2E\u985E ID +label.by.type=\u7A2E\u985E +label.by.zone=\u30BE\u30FC\u30F3 +label.cancel=\u30AD\u30E3\u30F3\u30BB\u30EB +label.capacity=\u51E6\u7406\u80FD\u529B +label.certificate=\u8A3C\u660E\u66F8 +label.change.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u5909\u66F4 +label.change.value=\u5024\u306E\u5909\u66F4 +label.character=\u6587\u5B57 +label.checksum=MD5 \u30C1\u30A7\u30C3\u30AF\u30B5\u30E0 +label.cidr.account=CIDR \u307E\u305F\u306F\u30A2\u30AB\u30A6\u30F3\u30C8/\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 label.cidr=CIDR -label.CIDR.list=CIDR \\u4E00\\u89A7 -label.cidr.list=\\u9001\\u4FE1\\u5143 CIDR -label.CIDR.of.destination.network=\\u5B9B\\u5148\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E CIDR -label.clean.up=\\u30AF\\u30EA\\u30FC\\u30F3 \\u30A2\\u30C3\\u30D7 -label.clear.list=\\u4E00\\u89A7\\u306E\\u6D88\\u53BB -label.close=\\u9589\\u3058\\u308B -label.cloud.console=\\u30AF\\u30E9\\u30A6\\u30C9\\u7BA1\\u7406\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB -label.cloud.managed=Cloud.com \\u306B\\u3088\\u308B\\u7BA1\\u7406 -label.cluster.name=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u540D -label.clusters=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC -label.cluster.type=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u7A2E\\u985E -label.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC +label.CIDR.list=CIDR \u4E00\u89A7 +label.cidr.list=\u9001\u4FE1\u5143 CIDR +label.CIDR.of.destination.network=\u5B9B\u5148\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E CIDR +label.clean.up=\u30AF\u30EA\u30FC\u30F3 \u30A2\u30C3\u30D7 +label.clear.list=\u4E00\u89A7\u306E\u6D88\u53BB +label.close=\u9589\u3058\u308B +label.cloud.console=\u30AF\u30E9\u30A6\u30C9\u7BA1\u7406\u30B3\u30F3\u30BD\u30FC\u30EB +label.cloud.managed=Cloud.com \u306B\u3088\u308B\u7BA1\u7406 +label.cluster.name=\u30AF\u30E9\u30B9\u30BF\u30FC\u540D +label.clusters=\u30AF\u30E9\u30B9\u30BF\u30FC +label.cluster.type=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u7A2E\u985E +label.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC label.clvm=CLVM -label.code=\\u30B3\\u30FC\\u30C9 -label.community=\\u30B3\\u30DF\\u30E5\\u30CB\\u30C6\\u30A3 -label.compute.and.storage=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0\\u3068\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.compute.offerings=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.compute.offering=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.compute=\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 -label.configuration=\\u69CB\\u6210 -label.configure.network.ACLs=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL \\u306E\\u69CB\\u6210 -label.configure=\\u69CB\\u6210 -label.configure.vpc=VPC \\u306E\\u69CB\\u6210 -label.confirmation=\\u78BA\\u8A8D -label.confirm.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u306E\\u78BA\\u8A8D\\u5165\\u529B -label.congratulations=\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u306F\\u3053\\u308C\\u3067\\u5B8C\\u4E86\\u3067\\u3059\\u3002 -label.conserve.mode=\\u7BC0\\u7D04\\u30E2\\u30FC\\u30C9 -label.console.proxy=\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7 -label.continue.basic.install=\\u57FA\\u672C\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3092\\u7D9A\\u884C\\u3059\\u308B -label.continue=\\u7D9A\\u884C -label.corrections.saved=\\u63A5\\u7D9A\\u304C\\u4FDD\\u5B58\\u3055\\u308C\\u307E\\u3057\\u305F -label.cpu.allocated.for.VMs=VM \\u306B\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E CPU -label.cpu.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E CPU -label.CPU.cap=CPU \\u5236\\u9650 +label.code=\u30B3\u30FC\u30C9 +label.community=\u30B3\u30DF\u30E5\u30CB\u30C6\u30A3 +label.compute.and.storage=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0\u3068\u30B9\u30C8\u30EC\u30FC\u30B8 +label.compute.offerings=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.compute.offering=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.compute=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 +label.configuration=\u69CB\u6210 +label.configure.network.ACLs=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL \u306E\u69CB\u6210 +label.configure=\u69CB\u6210 +label.configure.vpc=VPC \u306E\u69CB\u6210 +label.confirmation=\u78BA\u8A8D +label.confirm.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u306E\u78BA\u8A8D\u5165\u529B +label.congratulations=\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u306F\u3053\u308C\u3067\u5B8C\u4E86\u3067\u3059\u3002 +label.conserve.mode=\u7BC0\u7D04\u30E2\u30FC\u30C9 +label.console.proxy=\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7 +label.continue.basic.install=\u57FA\u672C\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3092\u7D9A\u884C\u3059\u308B +label.continue=\u7D9A\u884C +label.corrections.saved=\u63A5\u7D9A\u304C\u4FDD\u5B58\u3055\u308C\u307E\u3057\u305F +label.cpu.allocated.for.VMs=VM \u306B\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E CPU +label.cpu.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E CPU +label.CPU.cap=CPU \u5236\u9650 label.cpu=CPU label.cpu.mhz=CPU (MHz) -label.cpu.utilized=CPU \\u4F7F\\u7528\\u7387 -label.created.by.system=\\u30B7\\u30B9\\u30C6\\u30E0\\u4F5C\\u6210 -label.created=\\u4F5C\\u6210\\u65E5\\u6642 -label.create.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u4F5C\\u6210 -label.create.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210 -label.create.VPN.connection=VPN \\u63A5\\u7D9A\\u306E\\u4F5C\\u6210 -label.cross.zones=\\u30AF\\u30ED\\u30B9 \\u30BE\\u30FC\\u30F3 -label.custom.disk.size=\\u30AB\\u30B9\\u30BF\\u30E0 \\u30C7\\u30A3\\u30B9\\u30AF \\u30B5\\u30A4\\u30BA -label.daily=\\u6BCE\\u65E5 -label.data.disk.offering=\\u30C7\\u30FC\\u30BF \\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.date=\\u65E5\\u6642 -label.day.of.month=\\u6BCE\\u6708\\u6307\\u5B9A\\u65E5 -label.day.of.week=\\u6BCE\\u9031\\u6307\\u5B9A\\u65E5 -label.dead.peer.detection=\\u505C\\u6B62\\u30D4\\u30A2\\u306E\\u691C\\u51FA -label.decline.invitation=\\u62DB\\u5F85\\u306E\\u8F9E\\u9000 -label.dedicated=\\u5C02\\u7528 -label.default=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 -label.default.use=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8\\u4F7F\\u7528 -label.default.view=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 \\u30D3\\u30E5\\u30FC -label.delete.F5=F5 \\u306E\\u524A\\u9664 -label.delete.gateway=\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u524A\\u9664 -label.delete.NetScaler=NetScaler \\u306E\\u524A\\u9664 +label.cpu.utilized=CPU \u4F7F\u7528\u7387 +label.created.by.system=\u30B7\u30B9\u30C6\u30E0\u4F5C\u6210 +label.created=\u4F5C\u6210\u65E5\u6642 +label.create.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u4F5C\u6210 +label.create.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210 +label.create.VPN.connection=VPN \u63A5\u7D9A\u306E\u4F5C\u6210 +label.cross.zones=\u30AF\u30ED\u30B9 \u30BE\u30FC\u30F3 +label.custom.disk.size=\u30AB\u30B9\u30BF\u30E0 \u30C7\u30A3\u30B9\u30AF \u30B5\u30A4\u30BA +label.daily=\u6BCE\u65E5 +label.data.disk.offering=\u30C7\u30FC\u30BF \u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.date=\u65E5\u6642 +label.day.of.month=\u6BCE\u6708\u6307\u5B9A\u65E5 +label.day.of.week=\u6BCE\u9031\u6307\u5B9A\u65E5 +label.dead.peer.detection=\u505C\u6B62\u30D4\u30A2\u306E\u691C\u51FA +label.decline.invitation=\u62DB\u5F85\u306E\u8F9E\u9000 +label.dedicated=\u5C02\u7528 +label.default=\u30C7\u30D5\u30A9\u30EB\u30C8 +label.default.use=\u30C7\u30D5\u30A9\u30EB\u30C8\u4F7F\u7528 +label.default.view=\u30C7\u30D5\u30A9\u30EB\u30C8 \u30D3\u30E5\u30FC +label.delete.F5=F5 \u306E\u524A\u9664 +label.delete.gateway=\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u524A\u9664 +label.delete.NetScaler=NetScaler \u306E\u524A\u9664 label.delete.NiciraNvp=NVP\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u524a\u9664 -label.delete.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u524A\\u9664 -label.delete.SRX=SRX \\u306E\\u524A\\u9664 -label.delete=\\u524A\\u9664 -label.delete.VPN.connection=VPN \\u63A5\\u7D9A\\u306E\\u524A\\u9664 -label.delete.VPN.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u524A\\u9664 -label.delete.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u306E\\u524A\\u9664 -label.delete.vpn.user=VPN \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u524A\\u9664 -label.deleting.failed=\\u524A\\u9664\\u3067\\u304D\\u307E\\u305B\\u3093\\u3067\\u3057\\u305F -label.deleting.processing=\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059... -label.description=\\u8AAC\\u660E -label.destination.physical.network.id=\\u30D6\\u30EA\\u30C3\\u30B8\\u5148\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID -label.destination.zone=\\u30B3\\u30D4\\u30FC\\u5148\\u30BE\\u30FC\\u30F3 -label.destroy.router=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u7834\\u68C4 +label.delete.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u524A\u9664 +label.delete.SRX=SRX \u306E\u524A\u9664 +label.delete=\u524A\u9664 +label.delete.VPN.connection=VPN \u63A5\u7D9A\u306E\u524A\u9664 +label.delete.VPN.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u524A\u9664 +label.delete.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u524A\u9664 +label.delete.vpn.user=VPN \u30E6\u30FC\u30B6\u30FC\u306E\u524A\u9664 +label.deleting.failed=\u524A\u9664\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F +label.deleting.processing=\u524A\u9664\u3057\u3066\u3044\u307E\u3059... +label.description=\u8AAC\u660E +label.destination.physical.network.id=\u30D6\u30EA\u30C3\u30B8\u5148\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID +label.destination.zone=\u30B3\u30D4\u30FC\u5148\u30BE\u30FC\u30F3 +label.destroy.router=\u30EB\u30FC\u30BF\u30FC\u306E\u7834\u68C4 label.destroy=\u7834\u68c4 -label.detaching.disk=\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3044\\u307E\\u3059 -label.details=\\u8A73\\u7D30 -label.device.id=\\u30C7\\u30D0\\u30A4\\u30B9 ID -label.devices=\\u30C7\\u30D0\\u30A4\\u30B9 +label.detaching.disk=\u30C7\u30A3\u30B9\u30AF\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059 +label.details=\u8A73\u7D30 +label.device.id=\u30C7\u30D0\u30A4\u30B9 ID +label.devices=\u30C7\u30D0\u30A4\u30B9 label.dhcp=DHCP -label.DHCP.server.type=DHCP \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u7A2E\\u985E -label.direct.ips=\\u76F4\\u63A5 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.disabled=\\u7121\\u52B9 -label.disable.provider=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u306E\\u7121\\u52B9\\u5316 -label.disable.vpn=VPN \\u306E\\u7121\\u52B9\\u5316 -label.disabling.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 -label.disk.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E\\u30C7\\u30A3\\u30B9\\u30AF -label.disk.offering=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.disk.size.gb=\\u30C7\\u30A3\\u30B9\\u30AF \\u30B5\\u30A4\\u30BA (GB \\u5358\\u4F4D) -label.disk.size=\\u30C7\\u30A3\\u30B9\\u30AF \\u30B5\\u30A4\\u30BA -label.disk.total=\\u30C7\\u30A3\\u30B9\\u30AF\\u5408\\u8A08 -label.disk.volume=\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 -label.display.name=\\u8868\\u793A\\u540D -label.display.text=\\u8868\\u793A\\u30C6\\u30AD\\u30B9\\u30C8 +label.DHCP.server.type=DHCP \u30B5\u30FC\u30D0\u30FC\u306E\u7A2E\u985E +label.direct.ips=\u76F4\u63A5 IP \u30A2\u30C9\u30EC\u30B9 +label.disabled=\u7121\u52B9 +label.disable.provider=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u306E\u7121\u52B9\u5316 +label.disable.vpn=VPN \u306E\u7121\u52B9\u5316 +label.disabling.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 +label.disk.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E\u30C7\u30A3\u30B9\u30AF +label.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.disk.size.gb=\u30C7\u30A3\u30B9\u30AF \u30B5\u30A4\u30BA (GB \u5358\u4F4D) +label.disk.size=\u30C7\u30A3\u30B9\u30AF \u30B5\u30A4\u30BA +label.disk.total=\u30C7\u30A3\u30B9\u30AF\u5408\u8A08 +label.disk.volume=\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0 +label.display.name=\u8868\u793A\u540D +label.display.text=\u8868\u793A\u30C6\u30AD\u30B9\u30C8 label.dns.1=DNS 1 label.dns.2=DNS 2 label.dns=DNS -label.DNS.domain.for.guest.networks=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E DNS \\u30C9\\u30E1\\u30A4\\u30F3 -label.domain.admin=\\u30C9\\u30E1\\u30A4\\u30F3\\u7BA1\\u7406\\u8005 -label.domain.id=\\u30C9\\u30E1\\u30A4\\u30F3 ID -label.domain.name=\\u30C9\\u30E1\\u30A4\\u30F3\\u540D -label.domain.router=\\u30C9\\u30E1\\u30A4\\u30F3 \\u30EB\\u30FC\\u30BF\\u30FC -label.domain.suffix=DNS \\u30C9\\u30E1\\u30A4\\u30F3 \\u30B5\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9 (\\u4F8B\: xyz.com) -label.domain=\\u30C9\\u30E1\\u30A4\\u30F3 -label.done=\\u5B8C\\u4E86 -label.double.quotes.are.not.allowed=\\u4E8C\\u91CD\\u5F15\\u7528\\u7B26\\u306F\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u305B\\u3093 -label.download.progress=\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u306E\\u9032\\u6357\\u72B6\\u6CC1 -label.drag.new.position=\\u65B0\\u3057\\u3044\\u4F4D\\u7F6E\\u306B\\u30C9\\u30E9\\u30C3\\u30B0 -label.edit.lb.rule=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u306E\\u7DE8\\u96C6 -label.edit.network.details=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8A73\\u7D30\\u306E\\u7DE8\\u96C6 -label.edit.project.details=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u8A73\\u7D30\\u306E\\u7DE8\\u96C6 -label.edit.tags=\\u30BF\\u30B0\\u306E\\u7DE8\\u96C6 -label.edit.traffic.type=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u306E\\u7DE8\\u96C6 -label.edit=\\u7DE8\\u96C6 -label.edit.vpc=VPC \\u306E\\u7DE8\\u96C6 +label.DNS.domain.for.guest.networks=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E DNS \u30C9\u30E1\u30A4\u30F3 +label.domain.admin=\u30C9\u30E1\u30A4\u30F3\u7BA1\u7406\u8005 +label.domain.id=\u30C9\u30E1\u30A4\u30F3 ID +label.domain.name=\u30C9\u30E1\u30A4\u30F3\u540D +label.domain.router=\u30C9\u30E1\u30A4\u30F3 \u30EB\u30FC\u30BF\u30FC +label.domain.suffix=DNS \u30C9\u30E1\u30A4\u30F3 \u30B5\u30D5\u30A3\u30C3\u30AF\u30B9 (\u4F8B\: xyz.com) +label.domain=\u30C9\u30E1\u30A4\u30F3 +label.done=\u5B8C\u4E86 +label.double.quotes.are.not.allowed=\u4E8C\u91CD\u5F15\u7528\u7B26\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093 +label.download.progress=\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u306E\u9032\u6357\u72B6\u6CC1 +label.drag.new.position=\u65B0\u3057\u3044\u4F4D\u7F6E\u306B\u30C9\u30E9\u30C3\u30B0 +label.edit.lb.rule=\u8CA0\u8377\u5206\u6563\u898F\u5247\u306E\u7DE8\u96C6 +label.edit.network.details=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8A73\u7D30\u306E\u7DE8\u96C6 +label.edit.project.details=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u8A73\u7D30\u306E\u7DE8\u96C6 +label.edit.tags=\u30BF\u30B0\u306E\u7DE8\u96C6 +label.edit.traffic.type=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u306E\u7DE8\u96C6 +label.edit=\u7DE8\u96C6 +label.edit.vpc=VPC \u306E\u7DE8\u96C6 label.egress.rules=\u9001\u4fe1\u30eb\u30fc\u30eb -label.egress.rule=\\u9001\\u4FE1\\u898F\\u5247 -label.elastic.IP=\\u30A8\\u30E9\\u30B9\\u30C6\\u30A3\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.elastic.LB=\\u30A8\\u30E9\\u30B9\\u30C6\\u30A3\\u30C3\\u30AF\\u8CA0\\u8377\\u5206\\u6563 -label.elastic=\\u30A8\\u30E9\\u30B9\\u30C6\\u30A3\\u30C3\\u30AF -label.email=\\u96FB\\u5B50\\u30E1\\u30FC\\u30EB -label.enable.provider=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u306E\\u6709\\u52B9\\u5316 +label.egress.rule=\u9001\u4FE1\u898F\u5247 +label.elastic.IP=\u30A8\u30E9\u30B9\u30C6\u30A3\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 +label.elastic.LB=\u30A8\u30E9\u30B9\u30C6\u30A3\u30C3\u30AF\u8CA0\u8377\u5206\u6563 +label.elastic=\u30A8\u30E9\u30B9\u30C6\u30A3\u30C3\u30AF +label.email=\u96FB\u5B50\u30E1\u30FC\u30EB +label.enable.provider=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u306E\u6709\u52B9\u5316 label.enable.s3=S3\u57fa\u76e4\u30bb\u30ab\u30f3\u30c0\u30ea\u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u6709\u52b9\u5316 -label.enable.swift=Swift \\u306E\\u6709\\u52B9\\u5316 -label.enable.vpn=VPN \\u306E\\u6709\\u52B9\\u5316 -label.enabling.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 -label.enabling.vpn=VPN \\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 -label.end.IP=\\u7D42\\u4E86 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.endpoint.or.operation=\\u30A8\\u30F3\\u30C9\\u30DD\\u30A4\\u30F3\\u30C8\\u307E\\u305F\\u306F\\u64CD\\u4F5C +label.enable.swift=Swift \u306E\u6709\u52B9\u5316 +label.enable.vpn=VPN \u306E\u6709\u52B9\u5316 +label.enabling.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 +label.enabling.vpn=VPN \u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 +label.end.IP=\u7D42\u4E86 IP \u30A2\u30C9\u30EC\u30B9 +label.endpoint.or.operation=\u30A8\u30F3\u30C9\u30DD\u30A4\u30F3\u30C8\u307E\u305F\u306F\u64CD\u4F5C label.endpoint=\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8 -label.end.port=\\u7D42\\u4E86\\u30DD\\u30FC\\u30C8 -label.end.reserved.system.IP=\\u4E88\\u7D04\\u6E08\\u307F\\u7D42\\u4E86\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.end.vlan=\\u7D42\\u4E86 VLAN -label.enter.token=\\u30C8\\u30FC\\u30AF\\u30F3\\u306E\\u5165\\u529B -label.error.code=\\u30A8\\u30E9\\u30FC \\u30B3\\u30FC\\u30C9 -label.error=\\u30A8\\u30E9\\u30FC -label.ESP.encryption=ESP \\u6697\\u53F7\\u5316 -label.ESP.hash=ESP \\u30CF\\u30C3\\u30B7\\u30E5 -label.ESP.policy=ESP \\u30DD\\u30EA\\u30B7\\u30FC -label.esx.host=ESX/ESXi \\u30DB\\u30B9\\u30C8 -label.example=\\u4F8B +label.end.port=\u7D42\u4E86\u30DD\u30FC\u30C8 +label.end.reserved.system.IP=\u4E88\u7D04\u6E08\u307F\u7D42\u4E86\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9 +label.end.vlan=\u7D42\u4E86 VLAN +label.enter.token=\u30C8\u30FC\u30AF\u30F3\u306E\u5165\u529B +label.error.code=\u30A8\u30E9\u30FC \u30B3\u30FC\u30C9 +label.error=\u30A8\u30E9\u30FC +label.ESP.encryption=ESP \u6697\u53F7\u5316 +label.ESP.hash=ESP \u30CF\u30C3\u30B7\u30E5 +label.ESP.policy=ESP \u30DD\u30EA\u30B7\u30FC +label.esx.host=ESX/ESXi \u30DB\u30B9\u30C8 +label.example=\u4F8B label.f5=F5 -label.failed=\\u5931\\u6557 -label.featured=\\u304A\\u3059\\u3059\\u3081 -label.fetch.latest=\\u6700\\u65B0\\u60C5\\u5831\\u306E\\u53D6\\u5F97 -label.filterBy=\\u30D5\\u30A3\\u30EB\\u30BF\\u30FC -label.firewall=\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB -label.first.name=\\u540D -label.format=\\u5F62\\u5F0F -label.friday=\\u91D1\\u66DC\\u65E5 -label.full.path=\\u30D5\\u30EB \\u30D1\\u30B9 -label.full=\\u5B8C\\u5168 -label.gateway=\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 -label.general.alerts=\\u4E00\\u822C\\u30A2\\u30E9\\u30FC\\u30C8 -label.generating.url=URL \\u3092\\u751F\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -label.go.step.2=\\u624B\\u9806 2 \\u306B\\u9032\\u3080 -label.go.step.3=\\u624B\\u9806 3 \\u306B\\u9032\\u3080 -label.go.step.4=\\u624B\\u9806 4 \\u306B\\u9032\\u3080 -label.go.step.5=\\u624B\\u9806 5 \\u306B\\u9032\\u3080 -label.group.optional=\\u30B0\\u30EB\\u30FC\\u30D7 (\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3) -label.group=\\u30B0\\u30EB\\u30FC\\u30D7 -label.guest.cidr=\\u30B2\\u30B9\\u30C8 CIDR -label.guest.end.ip=\\u30B2\\u30B9\\u30C8\\u306E\\u7D42\\u4E86 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.guest.gateway=\\u30B2\\u30B9\\u30C8 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 -label.guest.ip.range=\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 -label.guest.ip=\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.guest.netmask=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF -label.guest.networks=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.guest.start.ip=\\u30B2\\u30B9\\u30C8\\u306E\\u958B\\u59CB IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.guest.traffic=\\u30B2\\u30B9\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF -label.guest.type=\\u30B2\\u30B9\\u30C8\\u306E\\u7A2E\\u985E -label.guest=\\u30B2\\u30B9\\u30C8 -label.ha.enabled=\\u9AD8\\u53EF\\u7528\\u6027\\u6709\\u52B9 -label.help=\\u30D8\\u30EB\\u30D7 -label.hide.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u3092\\u96A0\\u3059 -label.hints=\\u30D2\\u30F3\\u30C8 -label.host.alerts=\\u30DB\\u30B9\\u30C8 \\u30A2\\u30E9\\u30FC\\u30C8 -label.host.MAC=\\u30DB\\u30B9\\u30C8\\u306E MAC -label.host.name=\\u30DB\\u30B9\\u30C8\\u540D -label.hosts=\\u30DB\\u30B9\\u30C8 +label.failed=\u5931\u6557 +label.featured=\u304A\u3059\u3059\u3081 +label.fetch.latest=\u6700\u65B0\u60C5\u5831\u306E\u53D6\u5F97 +label.filterBy=\u30D5\u30A3\u30EB\u30BF\u30FC +label.firewall=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB +label.first.name=\u540D +label.format=\u5F62\u5F0F +label.friday=\u91D1\u66DC\u65E5 +label.full.path=\u30D5\u30EB \u30D1\u30B9 +label.full=\u5B8C\u5168 +label.gateway=\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 +label.general.alerts=\u4E00\u822C\u30A2\u30E9\u30FC\u30C8 +label.generating.url=URL \u3092\u751F\u6210\u3057\u3066\u3044\u307E\u3059 +label.go.step.2=\u624B\u9806 2 \u306B\u9032\u3080 +label.go.step.3=\u624B\u9806 3 \u306B\u9032\u3080 +label.go.step.4=\u624B\u9806 4 \u306B\u9032\u3080 +label.go.step.5=\u624B\u9806 5 \u306B\u9032\u3080 +label.group.optional=\u30B0\u30EB\u30FC\u30D7 (\u30AA\u30D7\u30B7\u30E7\u30F3) +label.group=\u30B0\u30EB\u30FC\u30D7 +label.guest.cidr=\u30B2\u30B9\u30C8 CIDR +label.guest.end.ip=\u30B2\u30B9\u30C8\u306E\u7D42\u4E86 IP \u30A2\u30C9\u30EC\u30B9 +label.guest.gateway=\u30B2\u30B9\u30C8 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 +label.guest.ip.range=\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 +label.guest.ip=\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9 +label.guest.netmask=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30DE\u30B9\u30AF +label.guest.networks=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.guest.start.ip=\u30B2\u30B9\u30C8\u306E\u958B\u59CB IP \u30A2\u30C9\u30EC\u30B9 +label.guest.traffic=\u30B2\u30B9\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF +label.guest.type=\u30B2\u30B9\u30C8\u306E\u7A2E\u985E +label.guest=\u30B2\u30B9\u30C8 +label.ha.enabled=\u9AD8\u53EF\u7528\u6027\u6709\u52B9 +label.help=\u30D8\u30EB\u30D7 +label.hide.ingress.rule=\u53D7\u4FE1\u898F\u5247\u3092\u96A0\u3059 +label.hints=\u30D2\u30F3\u30C8 +label.host.alerts=\u30DB\u30B9\u30C8 \u30A2\u30E9\u30FC\u30C8 +label.host.MAC=\u30DB\u30B9\u30C8\u306E MAC +label.host.name=\u30DB\u30B9\u30C8\u540D +label.hosts=\u30DB\u30B9\u30C8 label.host.tags=\u00e3\u0083\u009b\u00e3\u0082\u00b9\u00e3\u0083\u0088\u00e3\u0082\u00bf\u00e3\u0082\u00b0 -label.host=\\u30DB\\u30B9\\u30C8 -label.hourly=\\u6BCE\\u6642 -label.hypervisor.capabilities=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306E\\u6A5F\\u80FD -label.hypervisor.type=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306E\\u7A2E\\u985E -label.hypervisor=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC -label.hypervisor.version=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306E\\u30D0\\u30FC\\u30B8\\u30E7\\u30F3 +label.host=\u30DB\u30B9\u30C8 +label.hourly=\u6BCE\u6642 +label.hypervisor.capabilities=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306E\u6A5F\u80FD +label.hypervisor.type=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306E\u7A2E\u985E +label.hypervisor=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC +label.hypervisor.version=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306E\u30D0\u30FC\u30B8\u30E7\u30F3 label.id=ID label.IKE.DH=IKE DH -label.IKE.encryption=IKE \\u6697\\u53F7\\u5316 -label.IKE.hash=IKE \\u30CF\\u30C3\\u30B7\\u30E5 -label.IKE.policy=IKE \\u30DD\\u30EA\\u30B7\\u30FC -label.info=\\u60C5\\u5831 -label.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247 -label.initiated.by=\\u958B\\u59CB\\u30E6\\u30FC\\u30B6\\u30FC -label.installWizard.addClusterIntro.subtitle=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306B\\u3064\\u3044\\u3066 -label.installWizard.addClusterIntro.title=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 -label.installWizard.addHostIntro.subtitle=\\u30DB\\u30B9\\u30C8\\u306B\\u3064\\u3044\\u3066 -label.installWizard.addHostIntro.title=\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 -label.installWizard.addPodIntro.subtitle=\\u30DD\\u30C3\\u30C9\\u306B\\u3064\\u3044\\u3066 -label.installWizard.addPodIntro.title=\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 -label.installWizard.addPrimaryStorageIntro.subtitle=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u3064\\u3044\\u3066 -label.installWizard.addPrimaryStorageIntro.title=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 +label.IKE.encryption=IKE \u6697\u53F7\u5316 +label.IKE.hash=IKE \u30CF\u30C3\u30B7\u30E5 +label.IKE.policy=IKE \u30DD\u30EA\u30B7\u30FC +label.info=\u60C5\u5831 +label.ingress.rule=\u53D7\u4FE1\u898F\u5247 +label.initiated.by=\u958B\u59CB\u30E6\u30FC\u30B6\u30FC +label.installWizard.addClusterIntro.subtitle=\u30AF\u30E9\u30B9\u30BF\u30FC\u306B\u3064\u3044\u3066 +label.installWizard.addClusterIntro.title=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 +label.installWizard.addHostIntro.subtitle=\u30DB\u30B9\u30C8\u306B\u3064\u3044\u3066 +label.installWizard.addHostIntro.title=\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 +label.installWizard.addPodIntro.subtitle=\u30DD\u30C3\u30C9\u306B\u3064\u3044\u3066 +label.installWizard.addPodIntro.title=\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 +label.installWizard.addPrimaryStorageIntro.subtitle=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u3064\u3044\u3066 +label.installWizard.addPrimaryStorageIntro.title=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 label.installWizard.addSecondaryStorageIntro.subtitle=\u30bb\u30ab\u30f3\u30c0\u30ea\u30fc\u30b9\u30c8\u30ec\u30fc\u30b8\u3068\u306f\uff1f -label.installWizard.addSecondaryStorageIntro.title=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 -label.installWizard.addZoneIntro.subtitle=\\u30BE\\u30FC\\u30F3\\u306B\\u3064\\u3044\\u3066 -label.installWizard.addZoneIntro.title=\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3057\\u3087\\u3046 -label.installWizard.addZone.title=\\u30BE\\u30FC\\u30F3\\u306E\\u8FFD\\u52A0 -label.installWizard.click.launch=[\\u8D77\\u52D5] \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -label.installWizard.subtitle=\\u3053\\u306E\\u30AC\\u30A4\\u30C9 \\u30C4\\u30A2\\u30FC\\u306F CloudStack&\#8482; \\u74B0\\u5883\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u306B\\u5F79\\u7ACB\\u3061\\u307E\\u3059 -label.installWizard.title=CloudStack&\#8482; \\u3078\\u3088\\u3046\\u3053\\u305D -label.instance.limits=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u5236\\u9650 -label.instance.name=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u540D -label.instances=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.internal.dns.1=\\u5185\\u90E8 DNS 1 -label.internal.dns.2=\\u5185\\u90E8 DNS 2 -label.internal.name=\\u5185\\u90E8\\u540D -label.interval.type=\\u9593\\u9694\\u306E\\u7A2E\\u985E -label.introduction.to.cloudstack=CloudStack&\#8482; \\u306E\\u7D39\\u4ECB -label.invalid.integer=\\u7121\\u52B9\\u306A\\u6574\\u6570 -label.invalid.number=\\u7121\\u52B9\\u306A\\u6570 -label.invitations=\\u62DB\\u5F85\\u72B6 -label.invited.accounts=\\u62DB\\u5F85\\u6E08\\u307F\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.invite.to=\\u62DB\\u5F85\\u3059\\u308B\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\: -label.invite=\\u62DB\\u5F85 -label.ip.address=IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.ipaddress=IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.ip.allocations=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u5272\\u308A\\u5F53\\u3066 +label.installWizard.addSecondaryStorageIntro.title=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 +label.installWizard.addZoneIntro.subtitle=\u30BE\u30FC\u30F3\u306B\u3064\u3044\u3066 +label.installWizard.addZoneIntro.title=\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 +label.installWizard.addZone.title=\u30BE\u30FC\u30F3\u306E\u8FFD\u52A0 +label.installWizard.click.launch=[\u8D77\u52D5] \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +label.installWizard.subtitle=\u3053\u306E\u30AC\u30A4\u30C9 \u30C4\u30A2\u30FC\u306F CloudStack&\#8482; \u74B0\u5883\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u306B\u5F79\u7ACB\u3061\u307E\u3059 +label.installWizard.title=CloudStack&\#8482; \u3078\u3088\u3046\u3053\u305D +label.instance.limits=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u5236\u9650 +label.instance.name=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u540D +label.instances=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.internal.dns.1=\u5185\u90E8 DNS 1 +label.internal.dns.2=\u5185\u90E8 DNS 2 +label.internal.name=\u5185\u90E8\u540D +label.interval.type=\u9593\u9694\u306E\u7A2E\u985E +label.introduction.to.cloudstack=CloudStack&\#8482; \u306E\u7D39\u4ECB +label.invalid.integer=\u7121\u52B9\u306A\u6574\u6570 +label.invalid.number=\u7121\u52B9\u306A\u6570 +label.invitations=\u62DB\u5F85\u72B6 +label.invited.accounts=\u62DB\u5F85\u6E08\u307F\u30A2\u30AB\u30A6\u30F3\u30C8 +label.invite.to=\u62DB\u5F85\u3059\u308B\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\: +label.invite=\u62DB\u5F85 +label.ip.address=IP \u30A2\u30C9\u30EC\u30B9 +label.ipaddress=IP \u30A2\u30C9\u30EC\u30B9 +label.ip.allocations=IP \u30A2\u30C9\u30EC\u30B9\u306E\u5272\u308A\u5F53\u3066 label.ip=IP -label.ip.limits=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u5236\\u9650 -label.ip.or.fqdn=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u307E\\u305F\\u306F FQDN -label.ip.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 -label.ip.ranges=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 -label.IPsec.preshared.key=IPsec \\u4E8B\\u524D\\u5171\\u6709\\u30AD\\u30FC +label.ip.limits=\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u306E\u5236\u9650 +label.ip.or.fqdn=IP \u30A2\u30C9\u30EC\u30B9\u307E\u305F\u306F FQDN +label.ip.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 +label.ip.ranges=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 +label.IPsec.preshared.key=IPsec \u4E8B\u524D\u5171\u6709\u30AD\u30FC label.ips=IP label.iscsi=iSCSI -label.is.default=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 -label.iso.boot=ISO \\u8D77\\u52D5 +label.is.default=\u30C7\u30D5\u30A9\u30EB\u30C8 +label.iso.boot=ISO \u8D77\u52D5 label.iso=ISO -label.isolated.networks=\\u5206\\u96E2\\u3055\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.isolation.method=\\u5206\\u96E2\\u65B9\\u6CD5 -label.isolation.mode=\\u5206\\u96E2\\u30E2\\u30FC\\u30C9 +label.isolated.networks=\u5206\u96E2\u3055\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.isolation.method=\u5206\u96E2\u65B9\u6CD5 +label.isolation.mode=\u5206\u96E2\u30E2\u30FC\u30C9 label.isolation.uri=Isolation URI -label.is.redundant.router=\\u5197\\u9577 -label.is.shared=\\u5171\\u6709 -label.is.system=\\u30B7\\u30B9\\u30C6\\u30E0 -label.item.listing=\\u9805\\u76EE\\u4E00\\u89A7 -label.keep=\\u7DAD\\u6301 -label.keyboard.type=\\u30AD\\u30FC\\u30DC\\u30FC\\u30C9\\u306E\\u7A2E\\u985E -label.key=\\u30AD\\u30FC -label.kvm.traffic.label=KVM \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u30E9\\u30D9\\u30EB -label.label=\\u30E9\\u30D9\\u30EB +label.is.redundant.router=\u5197\u9577 +label.is.shared=\u5171\u6709 +label.is.system=\u30B7\u30B9\u30C6\u30E0 +label.item.listing=\u9805\u76EE\u4E00\u89A7 +label.keep=\u7DAD\u6301 +label.keyboard.type=\u30AD\u30FC\u30DC\u30FC\u30C9\u306E\u7A2E\u985E +label.key=\u30AD\u30FC +label.kvm.traffic.label=KVM \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u30E9\u30D9\u30EB +label.label=\u30E9\u30D9\u30EB label.lang.brportugese=Brazilian Portugese -label.lang.chinese=\\u7C21\\u4F53\\u5B57\\u4E2D\\u56FD\\u8A9E -label.lang.english=\\u82F1\\u8A9E +label.lang.chinese=\u7C21\u4F53\u5B57\u4E2D\u56FD\u8A9E +label.lang.english=\u82F1\u8A9E label.lang.french=French -label.lang.japanese=\\u65E5\\u672C\\u8A9E +label.lang.japanese=\u65E5\u672C\u8A9E label.lang.russian=Russian -label.lang.spanish=\\u30B9\\u30DA\\u30A4\\u30F3\\u8A9E -label.last.disconnected=\\u6700\\u7D42\\u5207\\u65AD\\u65E5\\u6642 -label.last.name=\\u59D3 -label.latest.events=\\u6700\\u65B0\\u30A4\\u30D9\\u30F3\\u30C8 -label.launch=\\u8D77\\u52D5 -label.launch.vm=VM \\u306E\\u8D77\\u52D5 -label.LB.isolation=\\u8CA0\\u8377\\u5206\\u6563\\u5206\\u96E2 -label.least.connections=\\u6700\\u5C0F\\u63A5\\u7D9A -label.level=\\u30EC\\u30D9\\u30EB -label.linklocal.ip=\\u30EA\\u30F3\\u30AF \\u30ED\\u30FC\\u30AB\\u30EB IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E -label.load.balancing.policies=\\u8CA0\\u8377\\u5206\\u6563\\u30DD\\u30EA\\u30B7\\u30FC -label.load.balancing=\\u8CA0\\u8377\\u5206\\u6563 -label.loading=\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3044\\u307E\\u3059 -label.local.storage.enabled=\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F\\u6709\\u52B9\\u3067\\u3059 -label.local.storage=\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.local=\\u30ED\\u30FC\\u30AB\\u30EB -label.login=\\u30ED\\u30B0\\u30AA\\u30F3 -label.logout=\\u30ED\\u30B0\\u30AA\\u30D5 +label.lang.spanish=\u30B9\u30DA\u30A4\u30F3\u8A9E +label.last.disconnected=\u6700\u7D42\u5207\u65AD\u65E5\u6642 +label.last.name=\u59D3 +label.latest.events=\u6700\u65B0\u30A4\u30D9\u30F3\u30C8 +label.launch=\u8D77\u52D5 +label.launch.vm=VM \u306E\u8D77\u52D5 +label.LB.isolation=\u8CA0\u8377\u5206\u6563\u5206\u96E2 +label.least.connections=\u6700\u5C0F\u63A5\u7D9A +label.level=\u30EC\u30D9\u30EB +label.linklocal.ip=\u30EA\u30F3\u30AF \u30ED\u30FC\u30AB\u30EB IP \u30A2\u30C9\u30EC\u30B9 +label.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E +label.load.balancing.policies=\u8CA0\u8377\u5206\u6563\u30DD\u30EA\u30B7\u30FC +label.load.balancing=\u8CA0\u8377\u5206\u6563 +label.loading=\u30ED\u30FC\u30C9\u3057\u3066\u3044\u307E\u3059 +label.local.storage.enabled=\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8\u306F\u6709\u52B9\u3067\u3059 +label.local.storage=\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8 +label.local=\u30ED\u30FC\u30AB\u30EB +label.login=\u30ED\u30B0\u30AA\u30F3 +label.logout=\u30ED\u30B0\u30AA\u30D5 label.lun=LUN -label.LUN.number=LUN \\u756A\\u53F7 -label.make.project.owner=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u6240\\u6709\\u8005\\u5316 -label.management.ips=\\u7BA1\\u7406 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.management=\\u7BA1\\u7406 -label.manage.resources=\\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u7BA1\\u7406 -label.manage=\\u7BA1\\u7406 -label.max.guest.limit=\\u6700\\u5927\\u30B2\\u30B9\\u30C8\\u5236\\u9650 -label.maximum=\\u6700\\u5927 -label.max.networks=\\u6700\\u5927\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6570 -label.max.public.ips=\\u6700\\u5927\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u6570 -label.max.snapshots=\\u6700\\u5927\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u6570 -label.max.templates=\\u6700\\u5927\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u6570 -label.max.vms=\\u6700\\u5927\\u30E6\\u30FC\\u30B6\\u30FC VM \\u6570 -label.max.volumes=\\u6700\\u5927\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u6570 +label.LUN.number=LUN \u756A\u53F7 +label.make.project.owner=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u6240\u6709\u8005\u5316 +label.management.ips=\u7BA1\u7406 IP \u30A2\u30C9\u30EC\u30B9 +label.management=\u7BA1\u7406 +label.manage.resources=\u30EA\u30BD\u30FC\u30B9\u306E\u7BA1\u7406 +label.manage=\u7BA1\u7406 +label.max.guest.limit=\u6700\u5927\u30B2\u30B9\u30C8\u5236\u9650 +label.maximum=\u6700\u5927 +label.max.networks=\u6700\u5927\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6570 +label.max.public.ips=\u6700\u5927\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u6570 +label.max.snapshots=\u6700\u5927\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u6570 +label.max.templates=\u6700\u5927\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u6570 +label.max.vms=\u6700\u5927\u30E6\u30FC\u30B6\u30FC VM \u6570 +label.max.volumes=\u6700\u5927\u30DC\u30EA\u30E5\u30FC\u30E0\u6570 label.max.vpcs=Max. VPCs -label.may.continue=\\u7D9A\\u884C\\u3067\\u304D\\u307E\\u3059\\u3002 -label.memory.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E\\u30E1\\u30E2\\u30EA -label.memory.mb=\\u30E1\\u30E2\\u30EA (MB) -label.memory.total=\\u30E1\\u30E2\\u30EA\\u5408\\u8A08 -label.memory=\\u30E1\\u30E2\\u30EA -label.memory.used=\\u30E1\\u30E2\\u30EA\\u4F7F\\u7528\\u91CF -label.menu.accounts=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.menu.alerts=\\u30A2\\u30E9\\u30FC\\u30C8 -label.menu.all.accounts=\\u3059\\u3079\\u3066\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.menu.all.instances=\\u3059\\u3079\\u3066\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.menu.community.isos=\\u30B3\\u30DF\\u30E5\\u30CB\\u30C6\\u30A3 ISO -label.menu.community.templates=\\u30B3\\u30DF\\u30E5\\u30CB\\u30C6\\u30A3 \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 -label.menu.configuration=\\u69CB\\u6210 -label.menu.dashboard=\\u30C0\\u30C3\\u30B7\\u30E5\\u30DC\\u30FC\\u30C9 -label.menu.destroyed.instances=\\u7834\\u68C4\\u3055\\u308C\\u305F\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.menu.disk.offerings=\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.menu.domains=\\u30C9\\u30E1\\u30A4\\u30F3 -label.menu.events=\\u30A4\\u30D9\\u30F3\\u30C8 -label.menu.featured.isos=\\u304A\\u3059\\u3059\\u3081\\u306E ISO -label.menu.featured.templates=\\u304A\\u3059\\u3059\\u3081\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 -label.menu.global.settings=\\u30B0\\u30ED\\u30FC\\u30D0\\u30EB\\u8A2D\\u5B9A -label.menu.infrastructure=\\u30A4\\u30F3\\u30D5\\u30E9\\u30B9\\u30C8\\u30E9\\u30AF\\u30C1\\u30E3 -label.menu.instances=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.menu.ipaddresses=IP \\u30A2\\u30C9\\u30EC\\u30B9 +label.may.continue=\u7D9A\u884C\u3067\u304D\u307E\u3059\u3002 +label.memory.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E\u30E1\u30E2\u30EA +label.memory.mb=\u30E1\u30E2\u30EA (MB) +label.memory.total=\u30E1\u30E2\u30EA\u5408\u8A08 +label.memory=\u30E1\u30E2\u30EA +label.memory.used=\u30E1\u30E2\u30EA\u4F7F\u7528\u91CF +label.menu.accounts=\u30A2\u30AB\u30A6\u30F3\u30C8 +label.menu.alerts=\u30A2\u30E9\u30FC\u30C8 +label.menu.all.accounts=\u3059\u3079\u3066\u306E\u30A2\u30AB\u30A6\u30F3\u30C8 +label.menu.all.instances=\u3059\u3079\u3066\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.menu.community.isos=\u30B3\u30DF\u30E5\u30CB\u30C6\u30A3 ISO +label.menu.community.templates=\u30B3\u30DF\u30E5\u30CB\u30C6\u30A3 \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +label.menu.configuration=\u69CB\u6210 +label.menu.dashboard=\u30C0\u30C3\u30B7\u30E5\u30DC\u30FC\u30C9 +label.menu.destroyed.instances=\u7834\u68C4\u3055\u308C\u305F\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.menu.disk.offerings=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.menu.domains=\u30C9\u30E1\u30A4\u30F3 +label.menu.events=\u30A4\u30D9\u30F3\u30C8 +label.menu.featured.isos=\u304A\u3059\u3059\u3081\u306E ISO +label.menu.featured.templates=\u304A\u3059\u3059\u3081\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +label.menu.global.settings=\u30B0\u30ED\u30FC\u30D0\u30EB\u8A2D\u5B9A +label.menu.infrastructure=\u30A4\u30F3\u30D5\u30E9\u30B9\u30C8\u30E9\u30AF\u30C1\u30E3 +label.menu.instances=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.menu.ipaddresses=IP \u30A2\u30C9\u30EC\u30B9 label.menu.isos=ISO -label.menu.my.accounts=\\u30DE\\u30A4 \\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.menu.my.instances=\\u30DE\\u30A4 \\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.menu.my.isos=\\u30DE\\u30A4 ISO -label.menu.my.templates=\\u30DE\\u30A4 \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 -label.menu.network.offerings=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.menu.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.menu.physical.resources=\\u7269\\u7406\\u30EA\\u30BD\\u30FC\\u30B9 -label.menu.running.instances=\\u5B9F\\u884C\\u4E2D\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.menu.security.groups=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 -label.menu.service.offerings=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.menu.snapshots=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 -label.menu.stopped.instances=\\u505C\\u6B62\\u3055\\u308C\\u305F\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 -label.menu.storage=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.menu.system.service.offerings=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.menu.system=\\u30B7\\u30B9\\u30C6\\u30E0 -label.menu.system.vms=\\u30B7\\u30B9\\u30C6\\u30E0 VM -label.menu.templates=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 -label.menu.virtual.appliances=\\u4EEE\\u60F3\\u30A2\\u30D7\\u30E9\\u30A4\\u30A2\\u30F3\\u30B9 -label.menu.virtual.resources=\\u4EEE\\u60F3\\u30EA\\u30BD\\u30FC\\u30B9 -label.menu.volumes=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 -label.migrate.instance.to.host=\\u5225\\u306E\\u30DB\\u30B9\\u30C8\\u3078\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C -label.migrate.instance.to.ps=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3078\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C -label.migrate.instance.to=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C\\u5148\: -label.migrate.router.to=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u79FB\\u884C\\u5148\: -label.migrate.systemvm.to=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u79FB\\u884C\\u5148\: +label.menu.my.accounts=\u30DE\u30A4 \u30A2\u30AB\u30A6\u30F3\u30C8 +label.menu.my.instances=\u30DE\u30A4 \u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.menu.my.isos=\u30DE\u30A4 ISO +label.menu.my.templates=\u30DE\u30A4 \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +label.menu.network.offerings=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.menu.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.menu.physical.resources=\u7269\u7406\u30EA\u30BD\u30FC\u30B9 +label.menu.running.instances=\u5B9F\u884C\u4E2D\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.menu.security.groups=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 +label.menu.service.offerings=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.menu.snapshots=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 +label.menu.stopped.instances=\u505C\u6B62\u3055\u308C\u305F\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 +label.menu.storage=\u30B9\u30C8\u30EC\u30FC\u30B8 +label.menu.system.service.offerings=\u30B7\u30B9\u30C6\u30E0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.menu.system=\u30B7\u30B9\u30C6\u30E0 +label.menu.system.vms=\u30B7\u30B9\u30C6\u30E0 VM +label.menu.templates=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +label.menu.virtual.appliances=\u4EEE\u60F3\u30A2\u30D7\u30E9\u30A4\u30A2\u30F3\u30B9 +label.menu.virtual.resources=\u4EEE\u60F3\u30EA\u30BD\u30FC\u30B9 +label.menu.volumes=\u30DC\u30EA\u30E5\u30FC\u30E0 +label.migrate.instance.to.host=\u5225\u306E\u30DB\u30B9\u30C8\u3078\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C +label.migrate.instance.to.ps=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3078\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C +label.migrate.instance.to=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C\u5148\: +label.migrate.router.to=\u30EB\u30FC\u30BF\u30FC\u306E\u79FB\u884C\u5148\: +label.migrate.systemvm.to=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u79FB\u884C\u5148\: label.migrate.to.host=\u30db\u30b9\u30c8\u3078\u79fb\u884c label.migrate.to.storage=\u30b9\u30c8\u30ec\u30fc\u30b8\u3078\u79fb\u884c -label.migrate.volume=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3078\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u79FB\\u884C -label.minimum=\\u6700\\u5C0F -label.minute.past.hour=\\u5206 (\\u6BCE\\u6642) -label.monday=\\u6708\\u66DC\\u65E5 -label.monthly=\\u6BCE\\u6708 -label.more.templates=\\u305D\\u306E\\u307B\\u304B\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 -label.move.down.row=1 \\u884C\\u4E0B\\u306B\\u79FB\\u52D5 -label.move.to.bottom=\\u6700\\u4E0B\\u4F4D\\u306B\\u79FB\\u52D5 -label.move.to.top=\\u6700\\u4E0A\\u4F4D\\u306B\\u79FB\\u52D5 -label.move.up.row=1 \\u884C\\u4E0A\\u306B\\u79FB\\u52D5 -label.my.account=\\u30DE\\u30A4 \\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 -label.my.network=\\u30DE\\u30A4 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.my.templates=\\u30DE\\u30A4 \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 -label.name.optional=\\u540D\\u524D (\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3) -label.name=\\u540D\\u524D -label.nat.port.range=NAT \\u30DD\\u30FC\\u30C8\\u306E\\u7BC4\\u56F2 -label.netmask=\\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF +label.migrate.volume=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3078\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u79FB\u884C +label.minimum=\u6700\u5C0F +label.minute.past.hour=\u5206 (\u6BCE\u6642) +label.monday=\u6708\u66DC\u65E5 +label.monthly=\u6BCE\u6708 +label.more.templates=\u305D\u306E\u307B\u304B\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +label.move.down.row=1 \u884C\u4E0B\u306B\u79FB\u52D5 +label.move.to.bottom=\u6700\u4E0B\u4F4D\u306B\u79FB\u52D5 +label.move.to.top=\u6700\u4E0A\u4F4D\u306B\u79FB\u52D5 +label.move.up.row=1 \u884C\u4E0A\u306B\u79FB\u52D5 +label.my.account=\u30DE\u30A4 \u30A2\u30AB\u30A6\u30F3\u30C8 +label.my.network=\u30DE\u30A4 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.my.templates=\u30DE\u30A4 \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +label.name.optional=\u540D\u524D (\u30AA\u30D7\u30B7\u30E7\u30F3) +label.name=\u540D\u524D +label.nat.port.range=NAT \u30DD\u30FC\u30C8\u306E\u7BC4\u56F2 +label.netmask=\u30CD\u30C3\u30C8\u30DE\u30B9\u30AF label.netScaler=NetScaler -label.network.ACLs=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL -label.network.ACL.total=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL \\u5408\\u8A08 -label.network.ACL=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ACL -label.network.desc=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8AAC\\u660E -label.network.device.type=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u7A2E\\u985E -label.network.device=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C7\\u30D0\\u30A4\\u30B9 -label.network.domain.text=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C9\\u30E1\\u30A4\\u30F3 -label.network.domain=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C9\\u30E1\\u30A4\\u30F3 -label.network.id=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID -label.networking.and.security=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3068\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 -label.network.label.display.for.blank.value=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u4F7F\\u7528 -label.network.name=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u540D -label.network.offering.display.text=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u8868\\u793A\\u30C6\\u30AD\\u30B9\\u30C8 -label.network.offering.id=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 ID -label.network.offering.name=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u540D -label.network.offering=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.network.rate.megabytes=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u901F\\u5EA6 (MB/\\u79D2) -label.network.rate=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u901F\\u5EA6 -label.network.read=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8AAD\\u307F\\u53D6\\u308A -label.network.service.providers=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30B5\\u30FC\\u30D3\\u30B9 \\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC -label.networks=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.network.type=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u7A2E\\u985E -label.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.network.write=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u66F8\\u304D\\u8FBC\\u307F -label.new.password=\\u65B0\\u3057\\u3044\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 -label.new.project=\\u65B0\\u3057\\u3044\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 -label.new=\\u65B0\\u898F -label.new.vm=\\u65B0\\u3057\\u3044 VM -label.next=\\u6B21\\u3078 +label.network.ACLs=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL +label.network.ACL.total=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL \u5408\u8A08 +label.network.ACL=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL +label.network.desc=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8AAC\u660E +label.network.device.type=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C7\u30D0\u30A4\u30B9\u306E\u7A2E\u985E +label.network.device=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C7\u30D0\u30A4\u30B9 +label.network.domain.text=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C9\u30E1\u30A4\u30F3 +label.network.domain=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C9\u30E1\u30A4\u30F3 +label.network.id=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID +label.networking.and.security=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3068\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 +label.network.label.display.for.blank.value=\u30C7\u30D5\u30A9\u30EB\u30C8 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u4F7F\u7528 +label.network.name=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u540D +label.network.offering.display.text=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u8868\u793A\u30C6\u30AD\u30B9\u30C8 +label.network.offering.id=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 ID +label.network.offering.name=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u540D +label.network.offering=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.network.rate.megabytes=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u901F\u5EA6 (MB/\u79D2) +label.network.rate=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u901F\u5EA6 +label.network.read=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8AAD\u307F\u53D6\u308A +label.network.service.providers=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30B5\u30FC\u30D3\u30B9 \u30D7\u30ED\u30D0\u30A4\u30C0\u30FC +label.networks=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.network.type=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u7A2E\u985E +label.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.network.write=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u66F8\u304D\u8FBC\u307F +label.new.password=\u65B0\u3057\u3044\u30D1\u30B9\u30EF\u30FC\u30C9 +label.new.project=\u65B0\u3057\u3044\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 +label.new=\u65B0\u898F +label.new.vm=\u65B0\u3057\u3044 VM +label.next=\u6B21\u3078 label.nexusVswitch=Nexus 1000V label.nfs=NFS -label.nfs.server=NFS \\u30B5\\u30FC\\u30D0\\u30FC -label.nfs.storage=NFS \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.nic.adapter.type=NIC \\u30A2\\u30C0\\u30D7\\u30BF\\u30FC\\u306E\\u7A2E\\u985E +label.nfs.server=NFS \u30B5\u30FC\u30D0\u30FC +label.nfs.storage=NFS \u30B9\u30C8\u30EC\u30FC\u30B8 +label.nic.adapter.type=NIC \u30A2\u30C0\u30D7\u30BF\u30FC\u306E\u7A2E\u985E label.nicira.controller.address=\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u30a2\u30c9\u30ec\u30b9 label.nicira.l3gatewayserviceuuid=L3 \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u30b5\u30fc\u30d3\u30b9UUID label.nicira.transportzoneuuid=Transport Zone Uuid label.nics=NIC -label.no.actions=\\u5B9F\\u884C\\u3067\\u304D\\u308B\\u64CD\\u4F5C\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 -label.no.alerts=\\u6700\\u8FD1\\u306E\\u30A2\\u30E9\\u30FC\\u30C8\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 -label.no.data=\\u8868\\u793A\\u3059\\u308B\\u30C7\\u30FC\\u30BF\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093 -label.no.errors=\\u6700\\u8FD1\\u306E\\u30A8\\u30E9\\u30FC\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 -label.no.isos=\\u4F7F\\u7528\\u3067\\u304D\\u308B ISO \\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 -label.no.items=\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u9805\\u76EE\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 -label.none=\\u306A\\u3057 -label.no.security.groups=\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093 -label.not.found=\\u898B\\u3064\\u304B\\u308A\\u307E\\u305B\\u3093 -label.no.thanks=\\u8A2D\\u5B9A\\u3057\\u306A\\u3044 -label.notifications=\\u901A\\u77E5 -label.no=\\u3044\\u3044\\u3048 -label.number.of.clusters=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u6570 -label.number.of.hosts=\\u30DB\\u30B9\\u30C8\\u6570 -label.number.of.pods=\\u30DD\\u30C3\\u30C9\\u6570 -label.number.of.system.vms=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u6570 -label.number.of.virtual.routers=\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u6570 -label.number.of.zones=\\u30BE\\u30FC\\u30F3\\u6570 -label.num.cpu.cores=CPU \\u30B3\\u30A2\\u6570 -label.numretries=\\u518D\\u8A66\\u884C\\u56DE\\u6570 +label.no.actions=\u5B9F\u884C\u3067\u304D\u308B\u64CD\u4F5C\u306F\u3042\u308A\u307E\u305B\u3093 +label.no.alerts=\u6700\u8FD1\u306E\u30A2\u30E9\u30FC\u30C8\u306F\u3042\u308A\u307E\u305B\u3093 +label.no.data=\u8868\u793A\u3059\u308B\u30C7\u30FC\u30BF\u304C\u3042\u308A\u307E\u305B\u3093 +label.no.errors=\u6700\u8FD1\u306E\u30A8\u30E9\u30FC\u306F\u3042\u308A\u307E\u305B\u3093 +label.no.isos=\u4F7F\u7528\u3067\u304D\u308B ISO \u306F\u3042\u308A\u307E\u305B\u3093 +label.no.items=\u4F7F\u7528\u3067\u304D\u308B\u9805\u76EE\u306F\u3042\u308A\u307E\u305B\u3093 +label.none=\u306A\u3057 +label.no.security.groups=\u4F7F\u7528\u3067\u304D\u308B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u306F\u3042\u308A\u307E\u305B\u3093 +label.not.found=\u898B\u3064\u304B\u308A\u307E\u305B\u3093 +label.no.thanks=\u8A2D\u5B9A\u3057\u306A\u3044 +label.notifications=\u901A\u77E5 +label.no=\u3044\u3044\u3048 +label.number.of.clusters=\u30AF\u30E9\u30B9\u30BF\u30FC\u6570 +label.number.of.hosts=\u30DB\u30B9\u30C8\u6570 +label.number.of.pods=\u30DD\u30C3\u30C9\u6570 +label.number.of.system.vms=\u30B7\u30B9\u30C6\u30E0 VM \u6570 +label.number.of.virtual.routers=\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u6570 +label.number.of.zones=\u30BE\u30FC\u30F3\u6570 +label.num.cpu.cores=CPU \u30B3\u30A2\u6570 +label.numretries=\u518D\u8A66\u884C\u56DE\u6570 label.ocfs2=OCFS2 -label.offer.ha=\\u9AD8\\u53EF\\u7528\\u6027\\u306E\\u63D0\\u4F9B +label.offer.ha=\u9AD8\u53EF\u7528\u6027\u306E\u63D0\u4F9B label.ok=OK -label.optional=\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3 -label.order=\\u9806\\u5E8F -label.os.preference=OS \\u57FA\\u672C\\u8A2D\\u5B9A -label.os.type=OS \\u306E\\u7A2E\\u985E -label.owned.public.ips=\\u6240\\u6709\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.owner.account=\\u6240\\u6709\\u8005\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8 +label.optional=\u30AA\u30D7\u30B7\u30E7\u30F3 +label.order=\u9806\u5E8F +label.os.preference=OS \u57FA\u672C\u8A2D\u5B9A +label.os.type=OS \u306E\u7A2E\u985E +label.owned.public.ips=\u6240\u6709\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 +label.owner.account=\u6240\u6709\u8005\u30A2\u30AB\u30A6\u30F3\u30C8 label.owner.domain=\u00e6\u0089\u0080\u00e6\u009c\u0089\u00e8\u0080\u0085\u00e3\u0083\u0089\u00e3\u0083\u00a1\u00e3\u0082\u00a4\u00e3\u0083\u00b3 -label.parent.domain=\\u89AA\\u30C9\\u30E1\\u30A4\\u30F3 -label.password.enabled=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u7BA1\\u7406\\u6709\\u52B9 -label.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 -label.path=\\u30D1\\u30B9 +label.parent.domain=\u89AA\u30C9\u30E1\u30A4\u30F3 +label.password.enabled=\u30D1\u30B9\u30EF\u30FC\u30C9\u7BA1\u7406\u6709\u52B9 +label.password=\u30D1\u30B9\u30EF\u30FC\u30C9 +label.path=\u30D1\u30B9 label.perfect.forward.secrecy=Perfect Forward Secrecy -label.physical.network.ID=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF ID -label.PING.CIFS.password=PING CIFS \\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 -label.PING.CIFS.username=PING CIFS \\u30E6\\u30FC\\u30B6\\u30FC\\u540D -label.PING.dir=PING \\u30C7\\u30A3\\u30EC\\u30AF\\u30C8\\u30EA -label.PING.storage.IP=PING \\u5BFE\\u8C61\\u306E\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.please.specify.netscaler.info=Netscaler \\u60C5\\u5831\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 -label.please.wait=\\u304A\\u5F85\\u3061\\u304F\\u3060\\u3055\\u3044 -label.pod.name=\\u30DD\\u30C3\\u30C9\\u540D -label.pods=\\u30DD\\u30C3\\u30C9 -label.pod=\\u30DD\\u30C3\\u30C9 -label.port.forwarding.policies=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001\\u30DD\\u30EA\\u30B7\\u30FC -label.port.forwarding=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001 -label.port.range=\\u30DD\\u30FC\\u30C8\\u306E\\u7BC4\\u56F2 +label.physical.network.ID=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID +label.PING.CIFS.password=PING CIFS \u30D1\u30B9\u30EF\u30FC\u30C9 +label.PING.CIFS.username=PING CIFS \u30E6\u30FC\u30B6\u30FC\u540D +label.PING.dir=PING \u30C7\u30A3\u30EC\u30AF\u30C8\u30EA +label.PING.storage.IP=PING \u5BFE\u8C61\u306E\u30B9\u30C8\u30EC\u30FC\u30B8 IP \u30A2\u30C9\u30EC\u30B9 +label.please.specify.netscaler.info=Netscaler \u60C5\u5831\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044 +label.please.wait=\u304A\u5F85\u3061\u304F\u3060\u3055\u3044 +label.pod.name=\u30DD\u30C3\u30C9\u540D +label.pods=\u30DD\u30C3\u30C9 +label.pod=\u30DD\u30C3\u30C9 +label.port.forwarding.policies=\u30DD\u30FC\u30C8\u8EE2\u9001\u30DD\u30EA\u30B7\u30FC +label.port.forwarding=\u30DD\u30FC\u30C8\u8EE2\u9001 +label.port.range=\u30DD\u30FC\u30C8\u306E\u7BC4\u56F2 label.PreSetup=PreSetup -label.previous=\\u623B\\u308B -label.prev=\\u623B\\u308B -label.primary.allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.primary.network=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.primary.storage.count=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30D7\\u30FC\\u30EB -label.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.primary.used=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u4F7F\\u7528\\u91CF -label.private.Gateway=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 -label.private.interface=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9 -label.private.ip.range=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2 -label.private.ips=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.private.ip=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.privatekey=PKC\#8 \\u79D8\\u5BC6\\u30AD\\u30FC -label.private.network=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.private.port=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30DD\\u30FC\\u30C8 -label.private.zone=\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30BE\\u30FC\\u30F3 -label.project.dashboard=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30C0\\u30C3\\u30B7\\u30E5\\u30DC\\u30FC\\u30C9 -label.project.id=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 ID -label.project.invite=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u62DB\\u5F85 -label.project.name=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u540D -label.projects=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 -label.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 -label.project.view=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30D3\\u30E5\\u30FC -label.protocol=\\u30D7\\u30ED\\u30C8\\u30B3\\u30EB -label.providers=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC -label.public.interface=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9 -label.public.ips=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.public.ip=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.public.network=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.public.port=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30DD\\u30FC\\u30C8 -label.public=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF -label.public.zone=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30BE\\u30FC\\u30F3 -label.purpose=\\u76EE\\u7684 -label.Pxe.server.type=PXE \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u7A2E\\u985E +label.previous=\u623B\u308B +label.prev=\u623B\u308B +label.primary.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 +label.primary.network=\u30D7\u30E9\u30A4\u30DE\u30EA \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.primary.storage.count=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30D7\u30FC\u30EB +label.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 +label.primary.used=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u4F7F\u7528\u91CF +label.private.Gateway=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 +label.private.interface=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9 +label.private.ip.range=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 +label.private.ips=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9 +label.private.ip=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9 +label.privatekey=PKC\#8 \u79D8\u5BC6\u30AD\u30FC +label.private.network=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.private.port=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30DD\u30FC\u30C8 +label.private.zone=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30BE\u30FC\u30F3 +label.project.dashboard=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30C0\u30C3\u30B7\u30E5\u30DC\u30FC\u30C9 +label.project.id=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 ID +label.project.invite=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u62DB\u5F85 +label.project.name=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u540D +label.projects=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 +label.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 +label.project.view=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30D3\u30E5\u30FC +label.protocol=\u30D7\u30ED\u30C8\u30B3\u30EB +label.providers=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC +label.public.interface=\u30D1\u30D6\u30EA\u30C3\u30AF \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9 +label.public.ips=\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 +label.public.ip=\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 +label.public.network=\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.public.port=\u30D1\u30D6\u30EA\u30C3\u30AF \u30DD\u30FC\u30C8 +label.public=\u30D1\u30D6\u30EA\u30C3\u30AF +label.public.zone=\u30D1\u30D6\u30EA\u30C3\u30AF \u30BE\u30FC\u30F3 +label.purpose=\u76EE\u7684 +label.Pxe.server.type=PXE \u30B5\u30FC\u30D0\u30FC\u306E\u7A2E\u985E label.quickview=\u30af\u30a4\u30c3\u30af\u30d3\u30e5\u30fc label.reboot=\u518d\u8d77\u52d5 -label.recent.errors=\\u6700\\u8FD1\\u306E\\u30A8\\u30E9\\u30FC -label.redundant.router.capability=\\u5197\\u9577\\u30EB\\u30FC\\u30BF\\u30FC\\u6A5F\\u80FD -label.redundant.router=\\u5197\\u9577\\u30EB\\u30FC\\u30BF\\u30FC -label.redundant.state=\\u5197\\u9577\\u72B6\\u614B -label.refresh=\\u66F4\\u65B0 -label.related=\\u95A2\\u9023 -label.remind.later=\\u30A2\\u30E9\\u30FC\\u30E0\\u3092\\u8868\\u793A\\u3059\\u308B -label.remove.ACL=ACL \\u306E\\u524A\\u9664 -label.remove.egress.rule=\\u9001\\u4FE1\\u898F\\u5247\\u306E\\u524A\\u9664 -label.remove.from.load.balancer=\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u304B\\u3089\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059 -label.remove.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u524A\\u9664 -label.remove.ip.range=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u524A\\u9664 -label.remove.pf=\\u30DD\\u30FC\\u30C8\\u8EE2\\u9001\\u898F\\u5247\\u306E\\u524A\\u9664 -label.remove.rule=\\u898F\\u5247\\u306E\\u524A\\u9664 -label.remove.static.nat.rule=\\u9759\\u7684 NAT \\u898F\\u5247\\u306E\\u524A\\u9664 -label.remove.static.route=\\u9759\\u7684\\u30EB\\u30FC\\u30C8\\u306E\\u524A\\u9664 -label.remove.tier=\\u968E\\u5C64\\u306E\\u524A\\u9664 -label.remove.vm.from.lb=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u304B\\u3089\\u306E VM \\u306E\\u524A\\u9664 -label.remove.vpc=VPC \\u306E\\u524A\\u9664 -label.removing=\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059 -label.removing.user=\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3044\\u307E\\u3059 -label.required=\\u5FC5\\u9808\\u3067\\u3059 -label.reserved.system.gateway=\\u4E88\\u7D04\\u6E08\\u307F\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 -label.reserved.system.ip=\\u4E88\\u7D04\\u6E08\\u307F\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.reserved.system.netmask=\\u4E88\\u7D04\\u6E08\\u307F\\u30B7\\u30B9\\u30C6\\u30E0 \\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF -label.reset.VPN.connection=VPN \\u63A5\\u7D9A\\u306E\\u30EA\\u30BB\\u30C3\\u30C8 -label.resource.limits=\\u30EA\\u30BD\\u30FC\\u30B9\\u5236\\u9650 -label.resource.state=\\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u72B6\\u614B -label.resources=\\u30EA\\u30BD\\u30FC\\u30B9 -label.resource=\\u30EA\\u30BD\\u30FC\\u30B9 -label.restart.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u518D\\u8D77\\u52D5 -label.restart.required=\\u518D\\u8D77\\u52D5\\u304C\\u5FC5\\u8981 -label.restart.vpc=VPC \\u306E\\u518D\\u8D77\\u52D5 +label.recent.errors=\u6700\u8FD1\u306E\u30A8\u30E9\u30FC +label.redundant.router.capability=\u5197\u9577\u30EB\u30FC\u30BF\u30FC\u6A5F\u80FD +label.redundant.router=\u5197\u9577\u30EB\u30FC\u30BF\u30FC +label.redundant.state=\u5197\u9577\u72B6\u614B +label.refresh=\u66F4\u65B0 +label.related=\u95A2\u9023 +label.remind.later=\u30A2\u30E9\u30FC\u30E0\u3092\u8868\u793A\u3059\u308B +label.remove.ACL=ACL \u306E\u524A\u9664 +label.remove.egress.rule=\u9001\u4FE1\u898F\u5247\u306E\u524A\u9664 +label.remove.from.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u304B\u3089\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059 +label.remove.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u524A\u9664 +label.remove.ip.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u524A\u9664 +label.remove.pf=\u30DD\u30FC\u30C8\u8EE2\u9001\u898F\u5247\u306E\u524A\u9664 +label.remove.rule=\u898F\u5247\u306E\u524A\u9664 +label.remove.static.nat.rule=\u9759\u7684 NAT \u898F\u5247\u306E\u524A\u9664 +label.remove.static.route=\u9759\u7684\u30EB\u30FC\u30C8\u306E\u524A\u9664 +label.remove.tier=\u968E\u5C64\u306E\u524A\u9664 +label.remove.vm.from.lb=\u8CA0\u8377\u5206\u6563\u898F\u5247\u304B\u3089\u306E VM \u306E\u524A\u9664 +label.remove.vpc=VPC \u306E\u524A\u9664 +label.removing=\u524A\u9664\u3057\u3066\u3044\u307E\u3059 +label.removing.user=\u30E6\u30FC\u30B6\u30FC\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059 +label.required=\u5FC5\u9808\u3067\u3059 +label.reserved.system.gateway=\u4E88\u7D04\u6E08\u307F\u30B7\u30B9\u30C6\u30E0 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 +label.reserved.system.ip=\u4E88\u7D04\u6E08\u307F\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9 +label.reserved.system.netmask=\u4E88\u7D04\u6E08\u307F\u30B7\u30B9\u30C6\u30E0 \u30CD\u30C3\u30C8\u30DE\u30B9\u30AF +label.reset.VPN.connection=VPN \u63A5\u7D9A\u306E\u30EA\u30BB\u30C3\u30C8 +label.resource.limits=\u30EA\u30BD\u30FC\u30B9\u5236\u9650 +label.resource.state=\u30EA\u30BD\u30FC\u30B9\u306E\u72B6\u614B +label.resources=\u30EA\u30BD\u30FC\u30B9 +label.resource=\u30EA\u30BD\u30FC\u30B9 +label.restart.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u518D\u8D77\u52D5 +label.restart.required=\u518D\u8D77\u52D5\u304C\u5FC5\u8981 +label.restart.vpc=VPC \u306E\u518D\u8D77\u52D5 label.restore=\u30ea\u30b9\u30c8\u30a2 -label.review=\\u78BA\\u8A8D -label.revoke.project.invite=\\u62DB\\u5F85\\u306E\\u53D6\\u308A\\u6D88\\u3057 -label.role=\\u5F79\\u5272 -label.root.disk.controller=\\u30EB\\u30FC\\u30C8 \\u30C7\\u30A3\\u30B9\\u30AF \\u30B3\\u30F3\\u30C8\\u30ED\\u30FC\\u30E9\\u30FC -label.root.disk.offering=\\u30EB\\u30FC\\u30C8 \\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.round.robin=\\u30E9\\u30A6\\u30F3\\u30C9\\u30ED\\u30D3\\u30F3 -label.rules=\\u898F\\u5247 -label.running.vms=\\u5B9F\\u884C\\u4E2D\\u306E VM +label.review=\u78BA\u8A8D +label.revoke.project.invite=\u62DB\u5F85\u306E\u53D6\u308A\u6D88\u3057 +label.role=\u5F79\u5272 +label.root.disk.controller=\u30EB\u30FC\u30C8 \u30C7\u30A3\u30B9\u30AF \u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC +label.root.disk.offering=\u30EB\u30FC\u30C8 \u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.round.robin=\u30E9\u30A6\u30F3\u30C9\u30ED\u30D3\u30F3 +label.rules=\u898F\u5247 +label.running.vms=\u5B9F\u884C\u4E2D\u306E VM label.s3.access_key=\u30a2\u30af\u30bb\u30b9\u30ad\u30fc label.s3.bucket=\u30d0\u30b1\u30c3\u30c8 label.s3.connection_timeout=\u30b3\u30cd\u30af\u30b7\u30e7\u30f3\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8 @@ -890,569 +890,569 @@ label.s3.max_error_retry=\u30a8\u30e9\u30fc\u6642\u306e\u6700\u5927\u30ea\u30c8\ label.s3.secret_key=\u79d8\u5bc6\u9375 label.s3.socket_timeout=\u30bd\u30b1\u30c3\u30c8\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8 label.s3.use_https=HTTPS\u306e\u4f7f\u7528 -label.saturday=\\u571F\\u66DC\\u65E5 -label.save.and.continue=\\u4FDD\\u5B58\\u3057\\u3066\\u7D9A\\u884C -label.save=\\u4FDD\\u5B58 -label.saving.processing=\\u4FDD\\u5B58\\u3057\\u3066\\u3044\\u307E\\u3059... -label.scope=\\u30B9\\u30B3\\u30FC\\u30D7 -label.search=\\u691C\\u7D22 -label.secondary.storage.count=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30D7\\u30FC\\u30EB -label.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.secondary.storage.vm=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VM -label.secondary.used=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u4F7F\\u7528\\u91CF +label.saturday=\u571F\u66DC\u65E5 +label.save.and.continue=\u4FDD\u5B58\u3057\u3066\u7D9A\u884C +label.save=\u4FDD\u5B58 +label.saving.processing=\u4FDD\u5B58\u3057\u3066\u3044\u307E\u3059... +label.scope=\u30B9\u30B3\u30FC\u30D7 +label.search=\u691C\u7D22 +label.secondary.storage.count=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30D7\u30FC\u30EB +label.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 +label.secondary.storage.vm=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 VM +label.secondary.used=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u4F7F\u7528\u91CF label.secret.key=\u79d8\u5bc6\u9375 -label.security.group.name=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u540D -label.security.groups.enabled=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u6709\\u52B9 -label.security.groups=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 -label.security.group=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 -label.select.a.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u9078\\u629E -label.select.a.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u9078\\u629E -label.select.instance.to.attach.volume.to=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3059\\u308B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 -label.select.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u9078\\u629E -label.select.iso.or.template=ISO \\u307E\\u305F\\u306F\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u9078\\u629E -label.select.offering=\\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u9078\\u629E -label.select.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u9078\\u629E -label.select.tier=\\u968E\\u5C64\\u306E\\u9078\\u629E -label.select=\\u9078\\u629E -label.select-view=\\u30D3\\u30E5\\u30FC\\u306E\\u9078\\u629E -label.select.vm.for.static.nat=\\u9759\\u7684 NAT \\u7528 VM \\u306E\\u9078\\u629E -label.sent=\\u9001\\u4FE1\\u6E08\\u307F -label.server=\\u30B5\\u30FC\\u30D0\\u30FC -label.service.capabilities=\\u30B5\\u30FC\\u30D3\\u30B9\\u306E\\u6A5F\\u80FD -label.service.offering=\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.session.expired=\\u30BB\\u30C3\\u30B7\\u30E7\\u30F3\\u306E\\u6709\\u52B9\\u671F\\u9650\\u304C\\u5207\\u308C\\u307E\\u3057\\u305F -label.setup.network=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 -label.setup=\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 -label.set.up.zone.type=\\u30BE\\u30FC\\u30F3\\u306E\\u7A2E\\u985E\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 -label.setup.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 +label.security.group.name=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u540D +label.security.groups.enabled=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u6709\u52B9 +label.security.groups=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 +label.security.group=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 +label.select.a.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u9078\u629E +label.select.a.zone=\u30BE\u30FC\u30F3\u306E\u9078\u629E +label.select.instance.to.attach.volume.to=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30A2\u30BF\u30C3\u30C1\u3059\u308B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +label.select.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u9078\u629E +label.select.iso.or.template=ISO \u307E\u305F\u306F\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u9078\u629E +label.select.offering=\u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u9078\u629E +label.select.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u9078\u629E +label.select.tier=\u968E\u5C64\u306E\u9078\u629E +label.select=\u9078\u629E +label.select-view=\u30D3\u30E5\u30FC\u306E\u9078\u629E +label.select.vm.for.static.nat=\u9759\u7684 NAT \u7528 VM \u306E\u9078\u629E +label.sent=\u9001\u4FE1\u6E08\u307F +label.server=\u30B5\u30FC\u30D0\u30FC +label.service.capabilities=\u30B5\u30FC\u30D3\u30B9\u306E\u6A5F\u80FD +label.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.session.expired=\u30BB\u30C3\u30B7\u30E7\u30F3\u306E\u6709\u52B9\u671F\u9650\u304C\u5207\u308C\u307E\u3057\u305F +label.setup.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 +label.setup=\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 +label.set.up.zone.type=\u30BE\u30FC\u30F3\u306E\u7A2E\u985E\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 +label.setup.zone=\u30BE\u30FC\u30F3\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 label.SharedMountPoint=SharedMountPoint -label.shared=\\u5171\\u6709 -label.show.ingress.rule=\\u53D7\\u4FE1\\u898F\\u5247\\u306E\\u8868\\u793A -label.shutdown.provider=\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u306E\\u30B7\\u30E3\\u30C3\\u30C8\\u30C0\\u30A6\\u30F3 -label.site.to.site.VPN=\\u30B5\\u30A4\\u30C8\\u9593 VPN -label.size=\\u30B5\\u30A4\\u30BA -label.skip.guide=CloudStack \\u3092\\u4F7F\\u7528\\u3057\\u305F\\u3053\\u3068\\u304C\\u3042\\u308B\\u306E\\u3067\\u3001\\u3053\\u306E\\u30AC\\u30A4\\u30C9\\u3092\\u30B9\\u30AD\\u30C3\\u30D7\\u3059\\u308B -label.snapshot.limits=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u5236\\u9650 -label.snapshot.name=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u540D -label.snapshot.schedule=\\u5B9A\\u671F\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7 -label.snapshot.s=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 -label.snapshots=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 -label.snapshot=\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 -label.source.nat=\\u9001\\u4FE1\\u5143 NAT -label.source=\\u9001\\u4FE1\\u5143 -label.specify.IP.ranges=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306E\\u6307\\u5B9A -label.specify.vlan=VLAN \\u306E\\u6307\\u5B9A -label.SR.name = SR \\u540D\\u30E9\\u30D9\\u30EB +label.shared=\u5171\u6709 +label.show.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u8868\u793A +label.shutdown.provider=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u306E\u30B7\u30E3\u30C3\u30C8\u30C0\u30A6\u30F3 +label.site.to.site.VPN=\u30B5\u30A4\u30C8\u9593 VPN +label.size=\u30B5\u30A4\u30BA +label.skip.guide=CloudStack \u3092\u4F7F\u7528\u3057\u305F\u3053\u3068\u304C\u3042\u308B\u306E\u3067\u3001\u3053\u306E\u30AC\u30A4\u30C9\u3092\u30B9\u30AD\u30C3\u30D7\u3059\u308B +label.snapshot.limits=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u5236\u9650 +label.snapshot.name=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u540D +label.snapshot.schedule=\u5B9A\u671F\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 +label.snapshot.s=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 +label.snapshots=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 +label.snapshot=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 +label.source.nat=\u9001\u4FE1\u5143 NAT +label.source=\u9001\u4FE1\u5143 +label.specify.IP.ranges=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u6307\u5B9A +label.specify.vlan=VLAN \u306E\u6307\u5B9A +label.SR.name = SR \u540D\u30E9\u30D9\u30EB label.srx=SRX -label.start.IP=\\u958B\\u59CB IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.start.port=\\u958B\\u59CB\\u30DD\\u30FC\\u30C8 -label.start.reserved.system.IP=\\u4E88\\u7D04\\u6E08\\u307F\\u958B\\u59CB\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.start.vlan=\\u958B\\u59CB VLAN -label.state=\\u72B6\\u614B -label.static.nat.enabled=\\u9759\\u7684 NAT \\u6709\\u52B9 -label.static.nat.to=\\u9759\\u7684 NAT \\u306E\\u8A2D\\u5B9A\\u5148\: -label.static.nat=\\u9759\\u7684 NAT -label.static.nat.vm.details=\\u9759\\u7684 NAT VM \\u306E\\u8A73\\u7D30 -label.statistics=\\u7D71\\u8A08 -label.status=\\u72B6\\u614B -label.step.1.title=\\u624B\\u9806 1. \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u9078\\u629E -label.step.1=\\u624B\\u9806 1 -label.step.2.title=\\u624B\\u9806 2. \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.step.2=\\u624B\\u9806 2 -label.step.3.title=\\u624B\\u9806 3. \\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u306E\\u9078\\u629E -label.step.3=\\u624B\\u9806 3 -label.step.4.title=\\u624B\\u9806 4. \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.step.4=\\u624B\\u9806 4 -label.step.5.title=\\u624B\\u9806 5. \\u78BA\\u8A8D -label.step.5=\\u624B\\u9806 5 -label.stickiness=\\u6301\\u7D9A\\u6027 -label.sticky.cookie-name=Cookie \\u540D -label.sticky.domain=\\u30C9\\u30E1\\u30A4\\u30F3 -label.sticky.expire=\\u5931\\u52B9 -label.sticky.holdtime=\\u4FDD\\u6301\\u6642\\u9593 -label.sticky.indirect=\\u9593\\u63A5 -label.sticky.length=\\u9577\\u3055 -label.sticky.mode=\\u30E2\\u30FC\\u30C9 -label.sticky.nocache=\\u30AD\\u30E3\\u30C3\\u30B7\\u30E5\\u306A\\u3057 -label.sticky.postonly=\\u30DD\\u30B9\\u30C8\\u306E\\u307F -label.sticky.prefix=\\u30D7\\u30EC\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9 -label.sticky.request-learn=\\u30E9\\u30FC\\u30CB\\u30F3\\u30B0\\u306E\\u8981\\u6C42 -label.sticky.tablesize=\\u30C6\\u30FC\\u30D6\\u30EB \\u30B5\\u30A4\\u30BA -label.stopped.vms=\\u505C\\u6B62\\u4E2D\\u306E VM +label.start.IP=\u958B\u59CB IP \u30A2\u30C9\u30EC\u30B9 +label.start.port=\u958B\u59CB\u30DD\u30FC\u30C8 +label.start.reserved.system.IP=\u4E88\u7D04\u6E08\u307F\u958B\u59CB\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9 +label.start.vlan=\u958B\u59CB VLAN +label.state=\u72B6\u614B +label.static.nat.enabled=\u9759\u7684 NAT \u6709\u52B9 +label.static.nat.to=\u9759\u7684 NAT \u306E\u8A2D\u5B9A\u5148\: +label.static.nat=\u9759\u7684 NAT +label.static.nat.vm.details=\u9759\u7684 NAT VM \u306E\u8A73\u7D30 +label.statistics=\u7D71\u8A08 +label.status=\u72B6\u614B +label.step.1.title=\u624B\u9806 1. \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u9078\u629E +label.step.1=\u624B\u9806 1 +label.step.2.title=\u624B\u9806 2. \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.step.2=\u624B\u9806 2 +label.step.3.title=\u624B\u9806 3. \u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u9078\u629E +label.step.3=\u624B\u9806 3 +label.step.4.title=\u624B\u9806 4. \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.step.4=\u624B\u9806 4 +label.step.5.title=\u624B\u9806 5. \u78BA\u8A8D +label.step.5=\u624B\u9806 5 +label.stickiness=\u6301\u7D9A\u6027 +label.sticky.cookie-name=Cookie \u540D +label.sticky.domain=\u30C9\u30E1\u30A4\u30F3 +label.sticky.expire=\u5931\u52B9 +label.sticky.holdtime=\u4FDD\u6301\u6642\u9593 +label.sticky.indirect=\u9593\u63A5 +label.sticky.length=\u9577\u3055 +label.sticky.mode=\u30E2\u30FC\u30C9 +label.sticky.nocache=\u30AD\u30E3\u30C3\u30B7\u30E5\u306A\u3057 +label.sticky.postonly=\u30DD\u30B9\u30C8\u306E\u307F +label.sticky.prefix=\u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9 +label.sticky.request-learn=\u30E9\u30FC\u30CB\u30F3\u30B0\u306E\u8981\u6C42 +label.sticky.tablesize=\u30C6\u30FC\u30D6\u30EB \u30B5\u30A4\u30BA +label.stopped.vms=\u505C\u6B62\u4E2D\u306E VM label.stop=\u505c\u6b62 -label.storage.tags=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30BF\\u30B0 -label.storage.traffic=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF -label.storage.type=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306E\\u7A2E\\u985E -label.storage=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 -label.subdomain.access=\\u30B5\\u30D6\\u30C9\\u30E1\\u30A4\\u30F3 \\u30A2\\u30AF\\u30BB\\u30B9 -label.submitted.by=[\\u9001\\u4FE1\\u30E6\\u30FC\\u30B6\\u30FC\: ] -label.submit=\\u9001\\u4FE1 -label.succeeded=\\u6210\\u529F -label.sunday=\\u65E5\\u66DC\\u65E5 -label.super.cidr.for.guest.networks=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30B9\\u30FC\\u30D1\\u30FC CIDR -label.supported.services=\\u30B5\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u308B\\u30B5\\u30FC\\u30D3\\u30B9 -label.supported.source.NAT.type=\\u30B5\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u308B\\u9001\\u4FE1\\u5143 NAT \\u306E\\u7A2E\\u985E -label.suspend.project=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u4E00\\u6642\\u505C\\u6B62 -label.system.capacity=\\u30B7\\u30B9\\u30C6\\u30E0\\u306E\\u51E6\\u7406\\u80FD\\u529B -label.system.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.system.service.offering=\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0 -label.system.vms=\\u30B7\\u30B9\\u30C6\\u30E0 VM -label.system.vm.type=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u7A2E\\u985E -label.system.vm=\\u30B7\\u30B9\\u30C6\\u30E0 VM -label.system.wide.capacity=\\u30B7\\u30B9\\u30C6\\u30E0\\u5168\\u4F53\\u306E\\u51E6\\u7406\\u80FD\\u529B -label.tagged=\\u30BF\\u30B0\\u3042\\u308A -label.tags=\\u30BF\\u30B0 -label.target.iqn=\\u30BF\\u30FC\\u30B2\\u30C3\\u30C8 IQN -label.task.completed=\\u30BF\\u30B9\\u30AF\\u304C\\u5B8C\\u4E86\\u3057\\u307E\\u3057\\u305F -label.template.limits=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u5236\\u9650 -label.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 -label.TFTP.dir=TFTP \\u30C7\\u30A3\\u30EC\\u30AF\\u30C8\\u30EA -label.theme.default=\\u30C7\\u30D5\\u30A9\\u30EB\\u30C8 \\u30C6\\u30FC\\u30DE -label.theme.grey=\\u30AB\\u30B9\\u30BF\\u30E0 - \\u30B0\\u30EC\\u30FC -label.theme.lightblue=\\u30AB\\u30B9\\u30BF\\u30E0 - \\u30E9\\u30A4\\u30C8 \\u30D6\\u30EB\\u30FC -label.thursday=\\u6728\\u66DC\\u65E5 -label.tier.details=\\u968E\\u5C64\\u306E\\u8A73\\u7D30 -label.tier=\\u968E\\u5C64 -label.timeout.in.second = \\u30BF\\u30A4\\u30E0\\u30A2\\u30A6\\u30C8 (\\u79D2) -label.timeout=\\u30BF\\u30A4\\u30E0\\u30A2\\u30A6\\u30C8 -label.time=\\u6642\\u523B -label.time.zone=\\u30BF\\u30A4\\u30E0\\u30BE\\u30FC\\u30F3 -label.timezone=\\u30BF\\u30A4\\u30E0\\u30BE\\u30FC\\u30F3 -label.token=\\u30C8\\u30FC\\u30AF\\u30F3 -label.total.cpu=CPU \\u5408\\u8A08 -label.total.CPU=CPU \\u5408\\u8A08 -label.total.hosts=\\u30DB\\u30B9\\u30C8\\u5408\\u8A08 -label.total.memory=\\u30E1\\u30E2\\u30EA\\u5408\\u8A08 -label.total.of.ip=IP \\u30A2\\u30C9\\u30EC\\u30B9\\u5408\\u8A08 -label.total.of.vm=VM \\u5408\\u8A08 -label.total.storage=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u5408\\u8A08 -label.total.vms=VM \\u5408\\u8A08 -label.traffic.label=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF \\u30E9\\u30D9\\u30EB -label.traffic.types=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E -label.traffic.type=\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E -label.tuesday=\\u706B\\u66DC\\u65E5 -label.type.id=\\u7A2E\\u985E ID -label.type=\\u7A2E\\u985E -label.unavailable=\\u4F7F\\u7528\\u4E0D\\u80FD -label.unlimited=\\u7121\\u5236\\u9650 -label.untagged=\\u30BF\\u30B0\\u306A\\u3057 -label.update.project.resources=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30EA\\u30BD\\u30FC\\u30B9\\u306E\\u66F4\\u65B0 -label.update.ssl.cert= SSL \\u8A3C\\u660E\\u66F8\\u306E\\u66F4\\u65B0 -label.update.ssl= SSL \\u8A3C\\u660E\\u66F8\\u306E\\u66F4\\u65B0 -label.updating=\\u66F4\\u65B0\\u3057\\u3066\\u3044\\u307E\\u3059 -label.upload=\\u30A2\\u30C3\\u30D7\\u30ED\\u30FC\\u30C9 -label.upload.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30A2\\u30C3\\u30D7\\u30ED\\u30FC\\u30C9 +label.storage.tags=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30BF\u30B0 +label.storage.traffic=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF +label.storage.type=\u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u7A2E\u985E +label.storage=\u30B9\u30C8\u30EC\u30FC\u30B8 +label.subdomain.access=\u30B5\u30D6\u30C9\u30E1\u30A4\u30F3 \u30A2\u30AF\u30BB\u30B9 +label.submitted.by=[\u9001\u4FE1\u30E6\u30FC\u30B6\u30FC\: ] +label.submit=\u9001\u4FE1 +label.succeeded=\u6210\u529F +label.sunday=\u65E5\u66DC\u65E5 +label.super.cidr.for.guest.networks=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30B9\u30FC\u30D1\u30FC CIDR +label.supported.services=\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u308B\u30B5\u30FC\u30D3\u30B9 +label.supported.source.NAT.type=\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u308B\u9001\u4FE1\u5143 NAT \u306E\u7A2E\u985E +label.suspend.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u4E00\u6642\u505C\u6B62 +label.system.capacity=\u30B7\u30B9\u30C6\u30E0\u306E\u51E6\u7406\u80FD\u529B +label.system.offering=\u30B7\u30B9\u30C6\u30E0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.system.service.offering=\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 +label.system.vms=\u30B7\u30B9\u30C6\u30E0 VM +label.system.vm.type=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u7A2E\u985E +label.system.vm=\u30B7\u30B9\u30C6\u30E0 VM +label.system.wide.capacity=\u30B7\u30B9\u30C6\u30E0\u5168\u4F53\u306E\u51E6\u7406\u80FD\u529B +label.tagged=\u30BF\u30B0\u3042\u308A +label.tags=\u30BF\u30B0 +label.target.iqn=\u30BF\u30FC\u30B2\u30C3\u30C8 IQN +label.task.completed=\u30BF\u30B9\u30AF\u304C\u5B8C\u4E86\u3057\u307E\u3057\u305F +label.template.limits=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u5236\u9650 +label.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 +label.TFTP.dir=TFTP \u30C7\u30A3\u30EC\u30AF\u30C8\u30EA +label.theme.default=\u30C7\u30D5\u30A9\u30EB\u30C8 \u30C6\u30FC\u30DE +label.theme.grey=\u30AB\u30B9\u30BF\u30E0 - \u30B0\u30EC\u30FC +label.theme.lightblue=\u30AB\u30B9\u30BF\u30E0 - \u30E9\u30A4\u30C8 \u30D6\u30EB\u30FC +label.thursday=\u6728\u66DC\u65E5 +label.tier.details=\u968E\u5C64\u306E\u8A73\u7D30 +label.tier=\u968E\u5C64 +label.timeout.in.second = \u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 (\u79D2) +label.timeout=\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 +label.time=\u6642\u523B +label.time.zone=\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3 +label.timezone=\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3 +label.token=\u30C8\u30FC\u30AF\u30F3 +label.total.cpu=CPU \u5408\u8A08 +label.total.CPU=CPU \u5408\u8A08 +label.total.hosts=\u30DB\u30B9\u30C8\u5408\u8A08 +label.total.memory=\u30E1\u30E2\u30EA\u5408\u8A08 +label.total.of.ip=IP \u30A2\u30C9\u30EC\u30B9\u5408\u8A08 +label.total.of.vm=VM \u5408\u8A08 +label.total.storage=\u30B9\u30C8\u30EC\u30FC\u30B8\u5408\u8A08 +label.total.vms=VM \u5408\u8A08 +label.traffic.label=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF \u30E9\u30D9\u30EB +label.traffic.types=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E +label.traffic.type=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E +label.tuesday=\u706B\u66DC\u65E5 +label.type.id=\u7A2E\u985E ID +label.type=\u7A2E\u985E +label.unavailable=\u4F7F\u7528\u4E0D\u80FD +label.unlimited=\u7121\u5236\u9650 +label.untagged=\u30BF\u30B0\u306A\u3057 +label.update.project.resources=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30EA\u30BD\u30FC\u30B9\u306E\u66F4\u65B0 +label.update.ssl.cert= SSL \u8A3C\u660E\u66F8\u306E\u66F4\u65B0 +label.update.ssl= SSL \u8A3C\u660E\u66F8\u306E\u66F4\u65B0 +label.updating=\u66F4\u65B0\u3057\u3066\u3044\u307E\u3059 +label.upload=\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9 +label.upload.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9 label.url=URL -label.usage.interface=\\u4F7F\\u7528\\u72B6\\u6CC1\\u6E2C\\u5B9A\\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9 -label.used=\\u4F7F\\u7528\\u4E2D -label.username=\\u30E6\\u30FC\\u30B6\\u30FC\\u540D -label.users=\\u30E6\\u30FC\\u30B6\\u30FC -label.user=\\u30E6\\u30FC\\u30B6\\u30FC -label.value=\\u5024 -label.vcdcname=vCenter DC \\u540D -label.vcenter.cluster=vCenter \\u30AF\\u30E9\\u30B9\\u30BF\\u30FC -label.vcenter.datacenter=vCenter \\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC -label.vcenter.datastore=vCenter \\u30C7\\u30FC\\u30BF\\u30B9\\u30C8\\u30A2 -label.vcenter.host=vCenter \\u30DB\\u30B9\\u30C8 -label.vcenter.password=vCenter \\u30D1\\u30B9\\u30EF\\u30FC\\u30C9 -label.vcenter.username=vCenter \\u30E6\\u30FC\\u30B6\\u30FC\\u540D -label.vcipaddress=vCenter IP \\u30A2\\u30C9\\u30EC\\u30B9 -label.version=\\u30D0\\u30FC\\u30B8\\u30E7\\u30F3 -label.view.all=\\u3059\\u3079\\u3066\\u8868\\u793A -label.view.console=\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB\\u306E\\u8868\\u793A -label.viewing=\\u8868\\u793A\\u9805\\u76EE\: -label.view.more=\\u8A73\\u7D30\\u8868\\u793A -label.view=\\u8868\\u793A - -label.virtual.appliances=\\u4EEE\\u60F3\\u30A2\\u30D7\\u30E9\\u30A4\\u30A2\\u30F3\\u30B9 -label.virtual.appliance=\\u4EEE\\u60F3\\u30A2\\u30D7\\u30E9\\u30A4\\u30A2\\u30F3\\u30B9 -label.virtual.machines=\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3 -label.virtual.network=\\u4EEE\\u60F3\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF -label.virtual.routers=\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC -label.virtual.router=\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC +label.usage.interface=\u4F7F\u7528\u72B6\u6CC1\u6E2C\u5B9A\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9 +label.used=\u4F7F\u7528\u4E2D +label.username=\u30E6\u30FC\u30B6\u30FC\u540D +label.users=\u30E6\u30FC\u30B6\u30FC +label.user=\u30E6\u30FC\u30B6\u30FC +label.value=\u5024 +label.vcdcname=vCenter DC \u540D +label.vcenter.cluster=vCenter \u30AF\u30E9\u30B9\u30BF\u30FC +label.vcenter.datacenter=vCenter \u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC +label.vcenter.datastore=vCenter \u30C7\u30FC\u30BF\u30B9\u30C8\u30A2 +label.vcenter.host=vCenter \u30DB\u30B9\u30C8 +label.vcenter.password=vCenter \u30D1\u30B9\u30EF\u30FC\u30C9 +label.vcenter.username=vCenter \u30E6\u30FC\u30B6\u30FC\u540D +label.vcipaddress=vCenter IP \u30A2\u30C9\u30EC\u30B9 +label.version=\u30D0\u30FC\u30B8\u30E7\u30F3 +label.view.all=\u3059\u3079\u3066\u8868\u793A +label.view.console=\u30B3\u30F3\u30BD\u30FC\u30EB\u306E\u8868\u793A +label.viewing=\u8868\u793A\u9805\u76EE\: +label.view.more=\u8A73\u7D30\u8868\u793A +label.view=\u8868\u793A - +label.virtual.appliances=\u4EEE\u60F3\u30A2\u30D7\u30E9\u30A4\u30A2\u30F3\u30B9 +label.virtual.appliance=\u4EEE\u60F3\u30A2\u30D7\u30E9\u30A4\u30A2\u30F3\u30B9 +label.virtual.machines=\u4EEE\u60F3\u30DE\u30B7\u30F3 +label.virtual.network=\u4EEE\u60F3\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF +label.virtual.routers=\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC +label.virtual.router=\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC label.vlan.id=VLAN ID -label.vlan.range=VLAN \\u306E\\u7BC4\\u56F2 +label.vlan.range=VLAN \u306E\u7BC4\u56F2 label.vlan=VLAN -label.vm.add=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u8FFD\\u52A0 +label.vm.add=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u8FFD\u52A0 label.vm.destroy=\u7834\u68c4 -label.vm.display.name=VM \\u8868\\u793A\\u540D -label.VMFS.datastore=VMFS \\u30C7\\u30FC\\u30BF\\u30B9\\u30C8\\u30A2 +label.vm.display.name=VM \u8868\u793A\u540D +label.VMFS.datastore=VMFS \u30C7\u30FC\u30BF\u30B9\u30C8\u30A2 label.vmfs=VMFS -label.vm.name=VM \\u540D +label.vm.name=VM \u540D label.vm.reboot=\u518d\u8d77\u52d5 -label.VMs.in.tier=\\u968E\\u5C64\\u5185\\u306E VM -label.vmsnapshot.type=\\u7A2E\\u985E -label.vm.start=\\u8D77\\u52D5 -label.vm.state=VM \\u306E\\u72B6\\u614B +label.VMs.in.tier=\u968E\u5C64\u5185\u306E VM +label.vmsnapshot.type=\u7A2E\u985E +label.vm.start=\u8D77\u52D5 +label.vm.state=VM \u306E\u72B6\u614B label.vm.stop=\u505c\u6b62 label.vms=VM -label.vmware.traffic.label=VMware \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u30E9\\u30D9\\u30EB -label.volgroup=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u30B0\\u30EB\\u30FC\\u30D7 -label.volume.limits=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u5236\\u9650 -label.volume.name=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u540D -label.volumes=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 -label.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 +label.vmware.traffic.label=VMware \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u30E9\u30D9\u30EB +label.volgroup=\u30DC\u30EA\u30E5\u30FC\u30E0 \u30B0\u30EB\u30FC\u30D7 +label.volume.limits=\u30DC\u30EA\u30E5\u30FC\u30E0\u5236\u9650 +label.volume.name=\u30DC\u30EA\u30E5\u30FC\u30E0\u540D +label.volumes=\u30DC\u30EA\u30E5\u30FC\u30E0 +label.volume=\u30DC\u30EA\u30E5\u30FC\u30E0 label.vpc.id=VPC ID -label.VPC.router.details=VPC \\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u8A73\\u7D30 +label.VPC.router.details=VPC \u30EB\u30FC\u30BF\u30FC\u306E\u8A73\u7D30 label.vpc=VPC -label.VPN.connection=VPN \\u63A5\\u7D9A -label.vpn.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 -label.VPN.customer.gateway=VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 -label.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4 +label.VPN.connection=VPN \u63A5\u7D9A +label.vpn.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 +label.VPN.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 +label.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 label.vpn=VPN -label.vsmctrlvlanid=\\u30B3\\u30F3\\u30C8\\u30ED\\u30FC\\u30EB VLAN ID -label.vsmpktvlanid=\\u30D1\\u30B1\\u30C3\\u30C8 VLAN ID -label.vsmstoragevlanid=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VLAN ID -label.vsphere.managed=vSphere \\u306B\\u3088\\u308B\\u7BA1\\u7406 -label.waiting=\\u5F85\\u6A5F\\u3057\\u3066\\u3044\\u307E\\u3059 -label.warn=\\u8B66\\u544A -label.wednesday=\\u6C34\\u66DC\\u65E5 -label.weekly=\\u6BCE\\u9031 -label.welcome.cloud.console=\\u7BA1\\u7406\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB\\u3078\\u3088\\u3046\\u3053\\u305D -label.welcome=\\u3088\\u3046\\u3053\\u305D -label.what.is.cloudstack=CloudStack&\#8482; \\u306B\\u3064\\u3044\\u3066 -label.xen.traffic.label=XenServer \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u30E9\\u30D9\\u30EB -label.yes=\\u306F\\u3044 -label.zone.details=\\u30BE\\u30FC\\u30F3\\u306E\\u8A73\\u7D30 -label.zone.id=\\u30BE\\u30FC\\u30F3 ID -label.zone.name=\\u30BE\\u30FC\\u30F3\\u540D -label.zone.step.1.title=\\u624B\\u9806 1. \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u9078\\u629E -label.zone.step.2.title=\\u624B\\u9806 2. \\u30BE\\u30FC\\u30F3\\u306E\\u8FFD\\u52A0 -label.zone.step.3.title=\\u624B\\u9806 3. \\u30DD\\u30C3\\u30C9\\u306E\\u8FFD\\u52A0 -label.zone.step.4.title=\\u624B\\u9806 4. IP \\u30A2\\u30C9\\u30EC\\u30B9\\u7BC4\\u56F2\\u306E\\u8FFD\\u52A0 -label.zones=\\u30BE\\u30FC\\u30F3 -label.zone.type=\\u30BE\\u30FC\\u30F3\\u306E\\u7A2E\\u985E -label.zone=\\u30BE\\u30FC\\u30F3 -label.zone.wide=\\u30BE\\u30FC\\u30F3\\u5168\\u4F53 +label.vsmctrlvlanid=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB VLAN ID +label.vsmpktvlanid=\u30D1\u30B1\u30C3\u30C8 VLAN ID +label.vsmstoragevlanid=\u30B9\u30C8\u30EC\u30FC\u30B8 VLAN ID +label.vsphere.managed=vSphere \u306B\u3088\u308B\u7BA1\u7406 +label.waiting=\u5F85\u6A5F\u3057\u3066\u3044\u307E\u3059 +label.warn=\u8B66\u544A +label.wednesday=\u6C34\u66DC\u65E5 +label.weekly=\u6BCE\u9031 +label.welcome.cloud.console=\u7BA1\u7406\u30B3\u30F3\u30BD\u30FC\u30EB\u3078\u3088\u3046\u3053\u305D +label.welcome=\u3088\u3046\u3053\u305D +label.what.is.cloudstack=CloudStack&\#8482; \u306B\u3064\u3044\u3066 +label.xen.traffic.label=XenServer \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u30E9\u30D9\u30EB +label.yes=\u306F\u3044 +label.zone.details=\u30BE\u30FC\u30F3\u306E\u8A73\u7D30 +label.zone.id=\u30BE\u30FC\u30F3 ID +label.zone.name=\u30BE\u30FC\u30F3\u540D +label.zone.step.1.title=\u624B\u9806 1. \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u9078\u629E +label.zone.step.2.title=\u624B\u9806 2. \u30BE\u30FC\u30F3\u306E\u8FFD\u52A0 +label.zone.step.3.title=\u624B\u9806 3. \u30DD\u30C3\u30C9\u306E\u8FFD\u52A0 +label.zone.step.4.title=\u624B\u9806 4. IP \u30A2\u30C9\u30EC\u30B9\u7BC4\u56F2\u306E\u8FFD\u52A0 +label.zones=\u30BE\u30FC\u30F3 +label.zone.type=\u30BE\u30FC\u30F3\u306E\u7A2E\u985E +label.zone=\u30BE\u30FC\u30F3 +label.zone.wide=\u30BE\u30FC\u30F3\u5168\u4F53 label.zoneWizard.trafficType.guest=\u30b2\u30b9\u30c8\: \u30a8\u30f3\u30c9\u30e6\u30fc\u30b6\u30fc\u4eee\u60f3\u30de\u30b7\u30f3\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af label.zoneWizard.trafficType.management=\u7ba1\u7406\: \u30db\u30b9\u30c8\u3084\u30b7\u30b9\u30c6\u30e0VM\u306a\u3069\u3001\u7ba1\u7406\u30b5\u30fc\u30d0\u30fc\u3068\u901a\u4fe1\u3059\u308b\u3042\u3089\u3086\u308b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u542b\u3081\u305f\u3001CloudStack\u5185\u90e8\u306e\u30ea\u30bd\u30fc\u30b9\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af label.zoneWizard.trafficType.public=\u30d1\u30d6\u30ea\u30c3\u30af\: \u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u3068\u30af\u30e9\u30a6\u30c9\u5185\u306e\u4eee\u60f3\u30de\u30b7\u30f3\u306e\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af label.zoneWizard.trafficType.storage=\u30b9\u30c8\u30ec\u30fc\u30b8\: VM\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3068\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u306e\u3088\u3046\u306a\u3001\u30d7\u30e9\u30a4\u30de\u30ea\u3068\u30bb\u30ab\u30f3\u30c0\u30ea\u306e\u30b9\u30c8\u30ec\u30fc\u30b8\u30b5\u30fc\u30d0\u30fc\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3002 -managed.state=\\u7BA1\\u7406\\u5BFE\\u8C61\\u72B6\\u614B -message.acquire.new.ip=\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u65B0\\u3057\\u3044 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +managed.state=\u7BA1\u7406\u5BFE\u8C61\u72B6\u614B +message.acquire.new.ip=\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u65B0\u3057\u3044 IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? message.acquire.new.ip.vpc=VPC\u306e\u65b0\u3057\u3044IP\u3092\u53d6\u5f97\u3059\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002 -message.acquire.public.ip=\\u65B0\\u3057\\u3044 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3059\\u308B\\u30BE\\u30FC\\u30F3\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.action.cancel.maintenance.mode=\\u3053\\u306E\\u4FDD\\u5B88\\u3092\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.cancel.maintenance=\\u30DB\\u30B9\\u30C8\\u306E\\u4FDD\\u5B88\\u306F\\u6B63\\u5E38\\u306B\\u30AD\\u30E3\\u30F3\\u30BB\\u30EB\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u51E6\\u7406\\u306B\\u306F\\u6570\\u5206\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.change.service.warning.for.instance=\\u73FE\\u5728\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.change.service.warning.for.router=\\u73FE\\u5728\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.delete.cluster=\\u3053\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.disk.offering=\\u3053\\u306E\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.domain=\\u3053\\u306E\\u30C9\\u30E1\\u30A4\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.external.firewall=\\u3053\\u306E\\u5916\\u90E8\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u8B66\\u544A\: \\u540C\\u3058\\u5916\\u90E8\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u518D\\u5EA6\\u8FFD\\u52A0\\u3059\\u308B\\u4E88\\u5B9A\\u3067\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u4F7F\\u7528\\u72B6\\u6CC1\\u30C7\\u30FC\\u30BF\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.delete.external.load.balancer=\\u3053\\u306E\\u5916\\u90E8\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u8B66\\u544A\: \\u540C\\u3058\\u5916\\u90E8\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u518D\\u5EA6\\u8FFD\\u52A0\\u3059\\u308B\\u4E88\\u5B9A\\u3067\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u4F7F\\u7528\\u72B6\\u6CC1\\u30C7\\u30FC\\u30BF\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.delete.ingress.rule=\\u3053\\u306E\\u53D7\\u4FE1\\u898F\\u5247\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.ISO.for.all.zones=\\u305D\\u306E ISO \\u306F\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u3066\\u3044\\u307E\\u3059\\u3002\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u304B\\u3089\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.ISO=\\u3053\\u306E ISO \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.network=\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.nexusVswitch=\\u3053\\u306E Nexus 1000V \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.physical.network=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.pod=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.primary.storage=\\u3053\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.secondary.storage=\\u3053\\u306E\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.security.group=\\u3053\\u306E\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.service.offering=\\u3053\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.snapshot=\\u3053\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.system.service.offering=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.template.for.all.zones=\\u305D\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306F\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u3066\\u3044\\u307E\\u3059\\u3002\\u3059\\u3079\\u3066\\u306E\\u30BE\\u30FC\\u30F3\\u304B\\u3089\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.template=\\u3053\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.volume=\\u3053\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.delete.zone=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.destroy.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u7834\\u68C4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.destroy.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u7834\\u68C4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.disable.cluster=\\u3053\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.disable.nexusVswitch=\\u3053\\u306E Nexus 1000V \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.disable.physical.network=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.disable.pod=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.disable.static.NAT=\\u9759\\u7684 NAT \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.disable.zone=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.download.iso=\\u3053\\u306E ISO \\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.download.template=\\u3053\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.enable.cluster=\\u3053\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.enable.maintenance=\\u30DB\\u30B9\\u30C8\\u3092\\u4FDD\\u5B88\\u3059\\u308B\\u6E96\\u5099\\u304C\\u3067\\u304D\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u4E0A\\u306E VM \\u6570\\u306B\\u3088\\u3063\\u3066\\u306F\\u3001\\u3053\\u306E\\u51E6\\u7406\\u306B\\u306F\\u6570\\u5206\\u4EE5\\u4E0A\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.enable.nexusVswitch=\\u3053\\u306E Nexus 1000V \\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.enable.physical.network=\\u3053\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.enable.pod=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.enable.zone=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.force.reconnect=\\u30DB\\u30B9\\u30C8\\u306F\\u5F37\\u5236\\u7684\\u306B\\u518D\\u63A5\\u7D9A\\u3057\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u51E6\\u7406\\u306B\\u306F\\u6570\\u5206\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.host.enable.maintenance.mode=\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u3068\\u3001\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u5B9F\\u884C\\u4E2D\\u306E\\u3059\\u3079\\u3066\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304C\\u307B\\u304B\\u306E\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u30DB\\u30B9\\u30C8\\u306B\\u30E9\\u30A4\\u30D6 \\u30DE\\u30A4\\u30B0\\u30EC\\u30FC\\u30B7\\u30E7\\u30F3\\u3055\\u308C\\u307E\\u3059\\u3002 +message.acquire.public.ip=\u65B0\u3057\u3044 IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3059\u308B\u30BE\u30FC\u30F3\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.action.cancel.maintenance.mode=\u3053\u306E\u4FDD\u5B88\u3092\u30AD\u30E3\u30F3\u30BB\u30EB\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.cancel.maintenance=\u30DB\u30B9\u30C8\u306E\u4FDD\u5B88\u306F\u6B63\u5E38\u306B\u30AD\u30E3\u30F3\u30BB\u30EB\u3055\u308C\u307E\u3057\u305F\u3002\u3053\u306E\u51E6\u7406\u306B\u306F\u6570\u5206\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.change.service.warning.for.instance=\u73FE\u5728\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.change.service.warning.for.router=\u73FE\u5728\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30EB\u30FC\u30BF\u30FC\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.delete.cluster=\u3053\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.disk.offering=\u3053\u306E\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.domain=\u3053\u306E\u30C9\u30E1\u30A4\u30F3\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.external.firewall=\u3053\u306E\u5916\u90E8\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u8B66\u544A\: \u540C\u3058\u5916\u90E8\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u518D\u5EA6\u8FFD\u52A0\u3059\u308B\u4E88\u5B9A\u3067\u3042\u308B\u5834\u5408\u306F\u3001\u30C7\u30D0\u30A4\u30B9\u306E\u4F7F\u7528\u72B6\u6CC1\u30C7\u30FC\u30BF\u3092\u30EA\u30BB\u30C3\u30C8\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.delete.external.load.balancer=\u3053\u306E\u5916\u90E8\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u8B66\u544A\: \u540C\u3058\u5916\u90E8\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u518D\u5EA6\u8FFD\u52A0\u3059\u308B\u4E88\u5B9A\u3067\u3042\u308B\u5834\u5408\u306F\u3001\u30C7\u30D0\u30A4\u30B9\u306E\u4F7F\u7528\u72B6\u6CC1\u30C7\u30FC\u30BF\u3092\u30EA\u30BB\u30C3\u30C8\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.delete.ingress.rule=\u3053\u306E\u53D7\u4FE1\u898F\u5247\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.ISO.for.all.zones=\u305D\u306E ISO \u306F\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u304B\u3089\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.ISO=\u3053\u306E ISO \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.network=\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.nexusVswitch=\u3053\u306E Nexus 1000V \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.physical.network=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.pod=\u3053\u306E\u30DD\u30C3\u30C9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.primary.storage=\u3053\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.secondary.storage=\u3053\u306E\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.security.group=\u3053\u306E\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.service.offering=\u3053\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.snapshot=\u3053\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.system.service.offering=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.template.for.all.zones=\u305D\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306F\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u304B\u3089\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.template=\u3053\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.volume=\u3053\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.delete.zone=\u3053\u306E\u30BE\u30FC\u30F3\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.destroy.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u7834\u68C4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.destroy.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u7834\u68C4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.disable.cluster=\u3053\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.disable.nexusVswitch=\u3053\u306E Nexus 1000V \u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.disable.physical.network=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.disable.pod=\u3053\u306E\u30DD\u30C3\u30C9\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.disable.static.NAT=\u9759\u7684 NAT \u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.disable.zone=\u3053\u306E\u30BE\u30FC\u30F3\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.download.iso=\u3053\u306E ISO \u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.download.template=\u3053\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.enable.cluster=\u3053\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.enable.maintenance=\u30DB\u30B9\u30C8\u3092\u4FDD\u5B88\u3059\u308B\u6E96\u5099\u304C\u3067\u304D\u307E\u3057\u305F\u3002\u3053\u306E\u30DB\u30B9\u30C8\u4E0A\u306E VM \u6570\u306B\u3088\u3063\u3066\u306F\u3001\u3053\u306E\u51E6\u7406\u306B\u306F\u6570\u5206\u4EE5\u4E0A\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.enable.nexusVswitch=\u3053\u306E Nexus 1000V \u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.enable.physical.network=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.enable.pod=\u3053\u306E\u30DD\u30C3\u30C9\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.enable.zone=\u3053\u306E\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.force.reconnect=\u30DB\u30B9\u30C8\u306F\u5F37\u5236\u7684\u306B\u518D\u63A5\u7D9A\u3057\u307E\u3057\u305F\u3002\u3053\u306E\u51E6\u7406\u306B\u306F\u6570\u5206\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.host.enable.maintenance.mode=\u4FDD\u5B88\u30E2\u30FC\u30C9\u3092\u6709\u52B9\u306B\u3059\u308B\u3068\u3001\u3053\u306E\u30DB\u30B9\u30C8\u3067\u5B9F\u884C\u4E2D\u306E\u3059\u3079\u3066\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u307B\u304B\u306E\u4F7F\u7528\u3067\u304D\u308B\u30DB\u30B9\u30C8\u306B\u30E9\u30A4\u30D6 \u30DE\u30A4\u30B0\u30EC\u30FC\u30B7\u30E7\u30F3\u3055\u308C\u307E\u3059\u3002 message.action.instance.reset.password=\u00e3\u0081\u0093\u00e3\u0081\u00ae\u00e4\u00bb\u00ae\u00e6\u0083\u00b3\u00e3\u0083\u009e\u00e3\u0082\u00b7\u00e3\u0083\u00b3\u00e3\u0081\u00ae\u00e3\u0083\u00ab\u00e3\u0083\u00bc\u00e3\u0083\u0088\u00e3\u0083\u0091\u00e3\u0082\u00b9\u00e3\u0083\u00af\u00e3\u0083\u00bc\u00e3\u0083\u0089\u00e3\u0082\u0092\u00e5\u00a4\u0089\u00e6\u009b\u00b4\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0082\u0082\u00e3\u0082\u0088\u00e3\u0082\u008d\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0081\u00a7\u00e3\u0081\u0099\u00e3\u0081\u008b? -message.action.manage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.primarystorage.enable.maintenance.mode=\\u8B66\\u544A\: \\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4FDD\\u5B88\\u30E2\\u30FC\\u30C9\\u306B\\u3059\\u308B\\u3068\\u3001\\u305D\\u306E\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u4E0A\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u4F7F\\u7528\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E VM \\u304C\\u505C\\u6B62\\u3057\\u307E\\u3059\\u3002\\u7D9A\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.reboot.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.reboot.router=\\u3053\\u306E\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u3067\\u63D0\\u4F9B\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30B5\\u30FC\\u30D3\\u30B9\\u304C\\u4E2D\\u65AD\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.reboot.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.release.ip=\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u89E3\\u653E\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.remove.host=\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.reset.password.off=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306F\\u73FE\\u5728\\u3053\\u306E\\u6A5F\\u80FD\\u3092\\u30B5\\u30DD\\u30FC\\u30C8\\u3057\\u3066\\u3044\\u307E\\u305B\\u3093\\u3002 -message.action.reset.password.warning=\\u73FE\\u5728\\u306E\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.action.restore.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u5FA9\\u5143\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.start.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.start.router=\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.start.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.stop.instance=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.stop.router=\\u3053\\u306E\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u3067\\u63D0\\u4F9B\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30B5\\u30FC\\u30D3\\u30B9\\u304C\\u4E2D\\u65AD\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.stop.systemvm=\\u3053\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.take.snapshot=\\u3053\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.action.unmanage.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u975E\\u7BA1\\u7406\\u5BFE\\u8C61\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.activate.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.add.cluster=\\u30BE\\u30FC\\u30F3 \\u306E\\u30DD\\u30C3\\u30C9 \\u306B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3067\\u7BA1\\u7406\\u3055\\u308C\\u308B\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.cluster.zone=\\u30BE\\u30FC\\u30F3 \\u306B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3067\\u7BA1\\u7406\\u3055\\u308C\\u308B\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.disk.offering=\\u65B0\\u3057\\u3044\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30D1\\u30E9\\u30E1\\u30FC\\u30BF\\u30FC\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.domain=\\u3053\\u306E\\u30C9\\u30E1\\u30A4\\u30F3\\u306B\\u4F5C\\u6210\\u3059\\u308B\\u30B5\\u30D6\\u30C9\\u30E1\\u30A4\\u30F3\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.firewall=\\u30BE\\u30FC\\u30F3\\u306B\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.guest.network=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.add.host=\\u65B0\\u3057\\u3044\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30D1\\u30E9\\u30E1\\u30FC\\u30BF\\u30FC\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.adding.host=\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -message.adding.Netscaler.device=Netscaler \\u30C7\\u30D0\\u30A4\\u30B9\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -message.adding.Netscaler.provider=Netscaler \\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3044\\u307E\\u3059 -message.add.ip.range.direct.network=\\u30BE\\u30FC\\u30F3 \\u306E\\u76F4\\u63A5\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.ip.range.to.pod=

    \\u30DD\\u30C3\\u30C9 \\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059

    -message.add.ip.range=\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.additional.networks.desc=\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304C\\u63A5\\u7D9A\\u3059\\u308B\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.load.balancer=\\u30BE\\u30FC\\u30F3\\u306B\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.load.balancer.under.ip=\\u8CA0\\u8377\\u5206\\u6563\\u898F\\u5247\\u304C\\u6B21\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306B\\u5BFE\\u3057\\u3066\\u8FFD\\u52A0\\u3055\\u308C\\u307E\\u3057\\u305F\: -message.add.network=\\u30BE\\u30FC\\u30F3 \\u306B\\u65B0\\u3057\\u3044\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.new.gateway.to.vpc=\\u3053\\u306E VPC \\u306B\\u65B0\\u3057\\u3044\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306E\\u60C5\\u5831\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.pod.during.zone.creation=\\u5404\\u30BE\\u30FC\\u30F3\\u306B\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DD\\u30C3\\u30C9\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306F\\u30DB\\u30B9\\u30C8\\u3068\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059\\u304C\\u3001\\u3053\\u308C\\u3089\\u306F\\u5F8C\\u306E\\u624B\\u9806\\u3067\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u6700\\u521D\\u306B\\u3001CloudStack \\u306E\\u5185\\u90E8\\u7BA1\\u7406\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u305F\\u3081\\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u4E88\\u7D04\\u3057\\u307E\\u3059\\u3002IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u306F\\u3001\\u30AF\\u30E9\\u30A6\\u30C9\\u5185\\u306E\\u5404\\u30BE\\u30FC\\u30F3\\u3067\\u91CD\\u8907\\u3057\\u306A\\u3044\\u3088\\u3046\\u306B\\u4E88\\u7D04\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.add.pod=\\u30BE\\u30FC\\u30F3 \\u306B\\u65B0\\u3057\\u3044\\u30DD\\u30C3\\u30C9\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.primary.storage=\\u30BE\\u30FC\\u30F3 \\u306E\\u30DD\\u30C3\\u30C9 \\u306B\\u65B0\\u3057\\u3044\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.primary=\\u65B0\\u3057\\u3044\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30D1\\u30E9\\u30E1\\u30FC\\u30BF\\u30FC\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.secondary.storage=\\u30BE\\u30FC\\u30F3 \\u306B\\u65B0\\u3057\\u3044\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059 -message.add.service.offering=\\u65B0\\u3057\\u3044\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.system.service.offering=\\u65B0\\u3057\\u3044\\u30B7\\u30B9\\u30C6\\u30E0 \\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.template=\\u65B0\\u3057\\u3044\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.volume=\\u65B0\\u3057\\u3044\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.add.VPN.gateway=VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.advanced.mode.desc=VLAN \\u30B5\\u30DD\\u30FC\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u3053\\u306E\\u30E2\\u30C7\\u30EB\\u3067\\u306F\\u6700\\u3082\\u67D4\\u8EDF\\u306B\\u30AB\\u30B9\\u30BF\\u30E0 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u63D0\\u4F9B\\u3067\\u304D\\u3001\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3001VPN\\u3001\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306E\\u30B5\\u30DD\\u30FC\\u30C8\\u306E\\u307B\\u304B\\u306B\\u3001\\u76F4\\u63A5\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3068\\u4EEE\\u60F3\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3082\\u6709\\u52B9\\u306B\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002 -message.advanced.security.group=\\u30B2\\u30B9\\u30C8 VM \\u3092\\u5206\\u96E2\\u3059\\u308B\\u305F\\u3081\\u306B\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u4F7F\\u7528\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.advanced.virtual=\\u30B2\\u30B9\\u30C8 VM \\u3092\\u5206\\u96E2\\u3059\\u308B\\u305F\\u3081\\u306B\\u30BE\\u30FC\\u30F3\\u5168\\u4F53\\u306E VLAN \\u3092\\u4F7F\\u7528\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.action.manage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.primarystorage.enable.maintenance.mode=\u8B66\u544A\: \u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4FDD\u5B88\u30E2\u30FC\u30C9\u306B\u3059\u308B\u3068\u3001\u305D\u306E\u30B9\u30C8\u30EC\u30FC\u30B8\u4E0A\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u4F7F\u7528\u3059\u308B\u3059\u3079\u3066\u306E VM \u304C\u505C\u6B62\u3057\u307E\u3059\u3002\u7D9A\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.reboot.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.reboot.router=\u3053\u306E\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u3067\u63D0\u4F9B\u3059\u308B\u3059\u3079\u3066\u306E\u30B5\u30FC\u30D3\u30B9\u304C\u4E2D\u65AD\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.reboot.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.release.ip=\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u3092\u89E3\u653E\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.remove.host=\u3053\u306E\u30DB\u30B9\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.reset.password.off=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306F\u73FE\u5728\u3053\u306E\u6A5F\u80FD\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u305B\u3093\u3002 +message.action.reset.password.warning=\u73FE\u5728\u306E\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.action.restore.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u5FA9\u5143\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.start.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.start.router=\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.start.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.stop.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.stop.router=\u3053\u306E\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u3067\u63D0\u4F9B\u3059\u308B\u3059\u3079\u3066\u306E\u30B5\u30FC\u30D3\u30B9\u304C\u4E2D\u65AD\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.stop.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.take.snapshot=\u3053\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.action.unmanage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u975E\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.activate.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u30A2\u30AF\u30C6\u30A3\u30D6\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.add.cluster=\u30BE\u30FC\u30F3 \u306E\u30DD\u30C3\u30C9 \u306B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3067\u7BA1\u7406\u3055\u308C\u308B\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.cluster.zone=\u30BE\u30FC\u30F3 \u306B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3067\u7BA1\u7406\u3055\u308C\u308B\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.disk.offering=\u65B0\u3057\u3044\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.domain=\u3053\u306E\u30C9\u30E1\u30A4\u30F3\u306B\u4F5C\u6210\u3059\u308B\u30B5\u30D6\u30C9\u30E1\u30A4\u30F3\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.firewall=\u30BE\u30FC\u30F3\u306B\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.guest.network=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u8FFD\u52A0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.add.host=\u65B0\u3057\u3044\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.adding.host=\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +message.adding.Netscaler.device=Netscaler \u30C7\u30D0\u30A4\u30B9\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +message.adding.Netscaler.provider=Netscaler \u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 +message.add.ip.range.direct.network=\u30BE\u30FC\u30F3 \u306E\u76F4\u63A5\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.ip.range.to.pod=

    \u30DD\u30C3\u30C9 \u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u307E\u3059

    +message.add.ip.range=\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.additional.networks.desc=\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u63A5\u7D9A\u3059\u308B\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.load.balancer=\u30BE\u30FC\u30F3\u306B\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.load.balancer.under.ip=\u8CA0\u8377\u5206\u6563\u898F\u5247\u304C\u6B21\u306E IP \u30A2\u30C9\u30EC\u30B9\u306B\u5BFE\u3057\u3066\u8FFD\u52A0\u3055\u308C\u307E\u3057\u305F\: +message.add.network=\u30BE\u30FC\u30F3 \u306B\u65B0\u3057\u3044\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.new.gateway.to.vpc=\u3053\u306E VPC \u306B\u65B0\u3057\u3044\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306E\u60C5\u5831\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.pod.during.zone.creation=\u5404\u30BE\u30FC\u30F3\u306B\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DD\u30C3\u30C9\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30DD\u30C3\u30C9\u306F\u30DB\u30B9\u30C8\u3068\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059\u304C\u3001\u3053\u308C\u3089\u306F\u5F8C\u306E\u624B\u9806\u3067\u8FFD\u52A0\u3057\u307E\u3059\u3002\u6700\u521D\u306B\u3001CloudStack \u306E\u5185\u90E8\u7BA1\u7406\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u305F\u3081\u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u4E88\u7D04\u3057\u307E\u3059\u3002IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306F\u3001\u30AF\u30E9\u30A6\u30C9\u5185\u306E\u5404\u30BE\u30FC\u30F3\u3067\u91CD\u8907\u3057\u306A\u3044\u3088\u3046\u306B\u4E88\u7D04\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.add.pod=\u30BE\u30FC\u30F3 \u306B\u65B0\u3057\u3044\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.primary.storage=\u30BE\u30FC\u30F3 \u306E\u30DD\u30C3\u30C9 \u306B\u65B0\u3057\u3044\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.primary=\u65B0\u3057\u3044\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.secondary.storage=\u30BE\u30FC\u30F3 \u306B\u65B0\u3057\u3044\u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3059 +message.add.service.offering=\u65B0\u3057\u3044\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.system.service.offering=\u65B0\u3057\u3044\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.template=\u65B0\u3057\u3044\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.volume=\u65B0\u3057\u3044\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.add.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u8FFD\u52A0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.advanced.mode.desc=VLAN \u30B5\u30DD\u30FC\u30C8\u3092\u6709\u52B9\u306B\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3053\u306E\u30E2\u30C7\u30EB\u3067\u306F\u6700\u3082\u67D4\u8EDF\u306B\u30AB\u30B9\u30BF\u30E0 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u63D0\u4F9B\u3067\u304D\u3001\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3001VPN\u3001\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306E\u30B5\u30DD\u30FC\u30C8\u306E\u307B\u304B\u306B\u3001\u76F4\u63A5\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3068\u4EEE\u60F3\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3082\u6709\u52B9\u306B\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002 +message.advanced.security.group=\u30B2\u30B9\u30C8 VM \u3092\u5206\u96E2\u3059\u308B\u305F\u3081\u306B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u4F7F\u7528\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.advanced.virtual=\u30B2\u30B9\u30C8 VM \u3092\u5206\u96E2\u3059\u308B\u305F\u3081\u306B\u30BE\u30FC\u30F3\u5168\u4F53\u306E VLAN \u3092\u4F7F\u7528\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 message.after.enable.s3=S3\u57fa\u76e4\u30bb\u30ab\u30f3\u30c0\u30ea\u30b9\u30c8\u30ec\u30fc\u30b8\u304c\u8a2d\u5b9a\u3055\u308c\u307e\u3057\u305f\u3002 \u30ce\u30fc\u30c8\:\u3053\u306e\u30da\u30fc\u30b8\u3092\u9589\u3058\u308b\u3068S3\u3092\u518d\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002 -message.after.enable.swift=Swift \\u304C\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u6CE8\: \\u3053\\u306E\\u30DA\\u30FC\\u30B8\\u3092\\u9589\\u3058\\u308B\\u3068\\u3001Swift \\u3092\\u518D\\u69CB\\u6210\\u3059\\u308B\\u3053\\u3068\\u306F\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002 -message.alert.state.detected=\\u30A2\\u30E9\\u30FC\\u30C8\\u72B6\\u614B\\u304C\\u691C\\u51FA\\u3055\\u308C\\u307E\\u3057\\u305F -message.allow.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u8A31\\u53EF\\u3059\\u308B\\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u540D\\u3068\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.apply.snapshot.policy=\\u73FE\\u5728\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 \\u30DD\\u30EA\\u30B7\\u30FC\\u3092\\u66F4\\u65B0\\u3057\\u307E\\u3057\\u305F\\u3002 -message.attach.iso.confirm=\\u3053\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B ISO \\u30D5\\u30A1\\u30A4\\u30EB\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.attach.volume=\\u65B0\\u3057\\u3044\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u6B21\\u306E\\u30C7\\u30FC\\u30BF\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002Windows \\u30D9\\u30FC\\u30B9\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306B\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30A2\\u30BF\\u30C3\\u30C1\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u30A2\\u30BF\\u30C3\\u30C1\\u3057\\u305F\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u8A8D\\u8B58\\u3059\\u308B\\u305F\\u3081\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u518D\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.basic.mode.desc=VLAN \\u30B5\\u30DD\\u30FC\\u30C8\\u304C\\u4E0D\\u8981\\u3067\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3067\\u4F5C\\u6210\\u3055\\u308C\\u308B\\u3059\\u3079\\u3066\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304B\\u3089\\u76F4\\u63A5 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304C\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u3001\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3\\u3068\\u5206\\u96E2\\u304C\\u63D0\\u4F9B\\u3055\\u308C\\u307E\\u3059\\u3002 -message.change.offering.confirm=\\u3053\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u5909\\u66F4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.change.password=\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5909\\u66F4\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.configure.all.traffic.types=\\u8907\\u6570\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002[\\u7DE8\\u96C6] \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u3054\\u3068\\u306B\\u30E9\\u30D9\\u30EB\\u3092\\u69CB\\u6210\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.configuring.guest.traffic=\\u30B2\\u30B9\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.configuring.physical.networks=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.configuring.public.traffic=\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.configuring.storage.traffic=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.confirm.action.force.reconnect=\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u5F37\\u5236\\u518D\\u63A5\\u7D9A\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.delete.F5=F5 \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.delete.NetScaler=NetScaler \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.delete.SRX=SRX \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.destroy.router=\\u3053\\u306E\\u30EB\\u30FC\\u30BF\\u30FC\\u3092\\u7834\\u68C4\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.disable.provider=\\u3053\\u306E\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.enable.provider=\\u3053\\u306E\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.join.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306B\\u53C2\\u52A0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.remove.IP.range=\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.confirm.shutdown.provider=\\u3053\\u306E\\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u30B7\\u30E3\\u30C3\\u30C8\\u30C0\\u30A6\\u30F3\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.copy.iso.confirm=ISO \\u3092\\u6B21\\u306E\\u5834\\u6240\\u306B\\u30B3\\u30D4\\u30FC\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.copy.template=\\u30BE\\u30FC\\u30F3 \\u304B\\u3089\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 XXX \\u3092\\u6B21\\u306E\\u5834\\u6240\\u306B\\u30B3\\u30D4\\u30FC\\u3057\\u307E\\u3059\: -message.create.template=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.create.template.vm=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 \\u304B\\u3089 VM \\u3092\\u4F5C\\u6210\\u3057\\u307E\\u3059 -message.create.template.volume=\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u524D\\u306B\\u3001\\u6B21\\u306E\\u60C5\\u5831\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u30B5\\u30A4\\u30BA\\u306B\\u3088\\u3063\\u3066\\u306F\\u3001\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210\\u306B\\u306F\\u6570\\u5206\\u4EE5\\u4E0A\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.creating.cluster=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.creating.guest.network=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.creating.physical.networks=\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.creating.pod=\\u30DD\\u30C3\\u30C9\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.creating.primary.storage=\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.creating.secondary.storage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.creating.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3044\\u307E\\u3059 -message.decline.invitation=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3078\\u306E\\u62DB\\u5F85\\u3092\\u8F9E\\u9000\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.delete.account=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.delete.gateway=\\u3053\\u306E\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.delete.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.delete.user=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.delete.VPN.connection=VPN \\u63A5\\u7D9A\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.delete.VPN.customer.gateway=\\u3053\\u306E VPN \\u30AB\\u30B9\\u30BF\\u30DE\\u30FC \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.delete.VPN.gateway=\\u3053\\u306E VPN \\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.desc.advanced.zone=\\u3088\\u308A\\u6D17\\u7DF4\\u3055\\u308C\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6280\\u8853\\u3092\\u30B5\\u30DD\\u30FC\\u30C8\\u3057\\u307E\\u3059\\u3002\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3059\\u308B\\u3068\\u3001\\u3088\\u308A\\u67D4\\u8EDF\\u306B\\u30B2\\u30B9\\u30C8\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u5B9A\\u7FA9\\u3057\\u3001\\u30D5\\u30A1\\u30A4\\u30A2\\u30A6\\u30A9\\u30FC\\u30EB\\u3001VPN\\u3001\\u8CA0\\u8377\\u5206\\u6563\\u88C5\\u7F6E\\u306E\\u30B5\\u30DD\\u30FC\\u30C8\\u306E\\u3088\\u3046\\u306A\\u30AB\\u30B9\\u30BF\\u30DE\\u30A4\\u30BA\\u3057\\u305F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u63D0\\u4F9B\\u3067\\u304D\\u307E\\u3059\\u3002 -message.desc.basic.zone=\\u5404 VM \\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304C\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304B\\u3089\\u76F4\\u63A5\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u308B\\u3001\\u5358\\u4E00\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u63D0\\u4F9B\\u3057\\u307E\\u3059\\u3002\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 (\\u9001\\u4FE1\\u5143 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u30D5\\u30A3\\u30EB\\u30BF\\u30FC) \\u306E\\u3088\\u3046\\u306A\\u30EC\\u30A4\\u30E4\\u30FC 3 \\u30EC\\u30D9\\u30EB\\u306E\\u65B9\\u6CD5\\u3067\\u30B2\\u30B9\\u30C8\\u3092\\u5206\\u96E2\\u3067\\u304D\\u307E\\u3059\\u3002 -message.desc.cluster=\\u5404\\u30DD\\u30C3\\u30C9\\u306B\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306F\\u30DB\\u30B9\\u30C8\\u3092\\u30B0\\u30EB\\u30FC\\u30D7\\u5316\\u3059\\u308B\\u65B9\\u6CD5\\u3067\\u3059\\u30021 \\u3064\\u306E\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306F\\u3059\\u3079\\u3066\\u540C\\u4E00\\u306E\\u30CF\\u30FC\\u30C9\\u30A6\\u30A7\\u30A2\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u3001\\u540C\\u3058\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3092\\u5B9F\\u884C\\u3057\\u3001\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u4E0A\\u306B\\u3042\\u308A\\u3001\\u540C\\u3058\\u5171\\u6709\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3057\\u307E\\u3059\\u3002\\u5404\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DB\\u30B9\\u30C8\\u3068 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002 -message.desc.host=\\u5404\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306B\\u306F\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u3001\\u30B2\\u30B9\\u30C8 VM \\u3092\\u5B9F\\u884C\\u3059\\u308B\\u305F\\u3081\\u306E\\u30DB\\u30B9\\u30C8 (\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30BF\\u30FC) \\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002CloudStack \\u3067\\u30DB\\u30B9\\u30C8\\u3092\\u6A5F\\u80FD\\u3055\\u305B\\u308B\\u306B\\u306F\\u3001\\u30DB\\u30B9\\u30C8\\u306B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3092\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3057\\u3066 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u3001\\u30DB\\u30B9\\u30C8\\u304C CloudStack \\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u63A5\\u7D9A\\u3057\\u3066\\u3044\\u308B\\u3053\\u3068\\u3092\\u78BA\\u8A8D\\u3057\\u307E\\u3059\\u3002

    \\u30DB\\u30B9\\u30C8\\u306E DNS \\u540D\\u307E\\u305F\\u306F IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3001\\u30E6\\u30FC\\u30B6\\u30FC\\u540D (\\u901A\\u5E38\\u306F root) \\u3068\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3001\\u304A\\u3088\\u3073\\u30DB\\u30B9\\u30C8\\u306E\\u5206\\u985E\\u306B\\u4F7F\\u7528\\u3059\\u308B\\u30E9\\u30D9\\u30EB\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.desc.primary.storage=\\u5404\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306B\\u306F\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u3001\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F\\u3001\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u4E0A\\u3067\\u52D5\\u4F5C\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E VM \\u306E\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u683C\\u7D0D\\u3057\\u307E\\u3059\\u3002\\u57FA\\u790E\\u3068\\u306A\\u308B\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3067\\u30B5\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u308B\\u3001\\u6A19\\u6E96\\u306B\\u6E96\\u62E0\\u3057\\u305F\\u30D7\\u30ED\\u30C8\\u30B3\\u30EB\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.desc.secondary.storage=\\u5404\\u30BE\\u30FC\\u30F3\\u306B\\u306F\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u3001NFS \\u3064\\u307E\\u308A\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002\\u4ECA\\u3053\\u3053\\u3067\\u6700\\u521D\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u8FFD\\u52A0\\u3057\\u307E\\u3059\\u3002\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F VM \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3001ISO \\u30A4\\u30E1\\u30FC\\u30B8\\u3001\\u304A\\u3088\\u3073VM \\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u3092\\u683C\\u7D0D\\u3057\\u307E\\u3059\\u3002\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306F\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u3059\\u3079\\u3066\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u4F7F\\u7528\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002

    IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3068\\u30A8\\u30AF\\u30B9\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u305F\\u30D1\\u30B9\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.desc.zone=\\u30BE\\u30FC\\u30F3\\u306F CloudStack \\u74B0\\u5883\\u5185\\u306E\\u6700\\u5927\\u306E\\u7D44\\u7E54\\u5358\\u4F4D\\u3067\\u3001\\u901A\\u5E38\\u3001\\u5358\\u4E00\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u306B\\u76F8\\u5F53\\u3057\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306B\\u3088\\u3063\\u3066\\u7269\\u7406\\u7684\\u306A\\u5206\\u96E2\\u3068\\u5197\\u9577\\u6027\\u304C\\u63D0\\u4F9B\\u3055\\u308C\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DD\\u30C3\\u30C9 (\\u5404\\u30DD\\u30C3\\u30C9\\u306F\\u30DB\\u30B9\\u30C8\\u3068\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059) \\u3068\\u3001\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u3059\\u3079\\u3066\\u306E\\u30DD\\u30C3\\u30C9\\u3067\\u5171\\u6709\\u3055\\u308C\\u308B\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u69CB\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002 -message.detach.disk=\\u3053\\u306E\\u30C7\\u30A3\\u30B9\\u30AF\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.detach.iso.confirm=\\u3053\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304B\\u3089 ISO \\u30D5\\u30A1\\u30A4\\u30EB\\u3092\\u30C7\\u30BF\\u30C3\\u30C1\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.after.enable.swift=Swift \u304C\u69CB\u6210\u3055\u308C\u307E\u3057\u305F\u3002\u6CE8\: \u3053\u306E\u30DA\u30FC\u30B8\u3092\u9589\u3058\u308B\u3068\u3001Swift \u3092\u518D\u69CB\u6210\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002 +message.alert.state.detected=\u30A2\u30E9\u30FC\u30C8\u72B6\u614B\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F +message.allow.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u8A31\u53EF\u3059\u308B\u30E6\u30FC\u30B6\u30FC\u306E\u30E6\u30FC\u30B6\u30FC\u540D\u3068\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.apply.snapshot.policy=\u73FE\u5728\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 \u30DD\u30EA\u30B7\u30FC\u3092\u66F4\u65B0\u3057\u307E\u3057\u305F\u3002 +message.attach.iso.confirm=\u3053\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B ISO \u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30BF\u30C3\u30C1\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.attach.volume=\u65B0\u3057\u3044\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30A2\u30BF\u30C3\u30C1\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002Windows \u30D9\u30FC\u30B9\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u306B\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30A2\u30BF\u30C3\u30C1\u3059\u308B\u5834\u5408\u306F\u3001\u30A2\u30BF\u30C3\u30C1\u3057\u305F\u30C7\u30A3\u30B9\u30AF\u3092\u8A8D\u8B58\u3059\u308B\u305F\u3081\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u518D\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.basic.mode.desc=VLAN \u30B5\u30DD\u30FC\u30C8\u304C\u4E0D\u8981\u3067\u3042\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3067\u4F5C\u6210\u3055\u308C\u308B\u3059\u3079\u3066\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304B\u3089\u76F4\u63A5 IP \u30A2\u30C9\u30EC\u30B9\u304C\u5272\u308A\u5F53\u3066\u3089\u308C\u3001\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u4F7F\u7528\u3057\u3066\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u3068\u5206\u96E2\u304C\u63D0\u4F9B\u3055\u308C\u307E\u3059\u3002 +message.change.offering.confirm=\u3053\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u5909\u66F4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.change.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5909\u66F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.configure.all.traffic.types=\u8907\u6570\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304C\u3042\u308A\u307E\u3059\u3002[\u7DE8\u96C6] \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u3054\u3068\u306B\u30E9\u30D9\u30EB\u3092\u69CB\u6210\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.configuring.guest.traffic=\u30B2\u30B9\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 +message.configuring.physical.networks=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 +message.configuring.public.traffic=\u30D1\u30D6\u30EA\u30C3\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 +message.configuring.storage.traffic=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 +message.confirm.action.force.reconnect=\u3053\u306E\u30DB\u30B9\u30C8\u3092\u5F37\u5236\u518D\u63A5\u7D9A\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.delete.F5=F5 \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.delete.NetScaler=NetScaler \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.delete.SRX=SRX \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.destroy.router=\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u7834\u68C4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.disable.provider=\u3053\u306E\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.enable.provider=\u3053\u306E\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.join.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306B\u53C2\u52A0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.remove.IP.range=\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.confirm.shutdown.provider=\u3053\u306E\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u30B7\u30E3\u30C3\u30C8\u30C0\u30A6\u30F3\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.copy.iso.confirm=ISO \u3092\u6B21\u306E\u5834\u6240\u306B\u30B3\u30D4\u30FC\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.copy.template=\u30BE\u30FC\u30F3 \u304B\u3089\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 XXX \u3092\u6B21\u306E\u5834\u6240\u306B\u30B3\u30D4\u30FC\u3057\u307E\u3059\: +message.create.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.create.template.vm=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 \u304B\u3089 VM \u3092\u4F5C\u6210\u3057\u307E\u3059 +message.create.template.volume=\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0 \u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3059\u308B\u524D\u306B\u3001\u6B21\u306E\u60C5\u5831\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u30DC\u30EA\u30E5\u30FC\u30E0 \u30B5\u30A4\u30BA\u306B\u3088\u3063\u3066\u306F\u3001\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210\u306B\u306F\u6570\u5206\u4EE5\u4E0A\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 +message.creating.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 +message.creating.guest.network=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 +message.creating.physical.networks=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 +message.creating.pod=\u30DD\u30C3\u30C9\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 +message.creating.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 +message.creating.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 +message.creating.zone=\u30BE\u30FC\u30F3\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 +message.decline.invitation=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u62DB\u5F85\u3092\u8F9E\u9000\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.delete.account=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.delete.gateway=\u3053\u306E\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.delete.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.delete.user=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.delete.VPN.connection=VPN \u63A5\u7D9A\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.delete.VPN.customer.gateway=\u3053\u306E VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.delete.VPN.gateway=\u3053\u306E VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.desc.advanced.zone=\u3088\u308A\u6D17\u7DF4\u3055\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6280\u8853\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u3088\u308A\u67D4\u8EDF\u306B\u30B2\u30B9\u30C8\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u5B9A\u7FA9\u3057\u3001\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3001VPN\u3001\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306E\u30B5\u30DD\u30FC\u30C8\u306E\u3088\u3046\u306A\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA\u3057\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u63D0\u4F9B\u3067\u304D\u307E\u3059\u3002 +message.desc.basic.zone=\u5404 VM \u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B IP \u30A2\u30C9\u30EC\u30B9\u304C\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304B\u3089\u76F4\u63A5\u5272\u308A\u5F53\u3066\u3089\u308C\u308B\u3001\u5358\u4E00\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u63D0\u4F9B\u3057\u307E\u3059\u3002\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 (\u9001\u4FE1\u5143 IP \u30A2\u30C9\u30EC\u30B9\u306E\u30D5\u30A3\u30EB\u30BF\u30FC) \u306E\u3088\u3046\u306A\u30EC\u30A4\u30E4\u30FC 3 \u30EC\u30D9\u30EB\u306E\u65B9\u6CD5\u3067\u30B2\u30B9\u30C8\u3092\u5206\u96E2\u3067\u304D\u307E\u3059\u3002 +message.desc.cluster=\u5404\u30DD\u30C3\u30C9\u306B\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30AF\u30E9\u30B9\u30BF\u30FC\u306F\u30DB\u30B9\u30C8\u3092\u30B0\u30EB\u30FC\u30D7\u5316\u3059\u308B\u65B9\u6CD5\u3067\u3059\u30021 \u3064\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u5185\u306E\u30DB\u30B9\u30C8\u306F\u3059\u3079\u3066\u540C\u4E00\u306E\u30CF\u30FC\u30C9\u30A6\u30A7\u30A2\u304B\u3089\u69CB\u6210\u3055\u308C\u3001\u540C\u3058\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3092\u5B9F\u884C\u3057\u3001\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u4E0A\u306B\u3042\u308A\u3001\u540C\u3058\u5171\u6709\u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u30A2\u30AF\u30BB\u30B9\u3057\u307E\u3059\u3002\u5404\u30AF\u30E9\u30B9\u30BF\u30FC\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DB\u30B9\u30C8\u3068 1 \u3064\u4EE5\u4E0A\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059\u3002 +message.desc.host=\u5404\u30AF\u30E9\u30B9\u30BF\u30FC\u306B\u306F\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u3001\u30B2\u30B9\u30C8 VM \u3092\u5B9F\u884C\u3059\u308B\u305F\u3081\u306E\u30DB\u30B9\u30C8 (\u30B3\u30F3\u30D4\u30E5\u30FC\u30BF\u30FC) \u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002CloudStack \u3067\u30DB\u30B9\u30C8\u3092\u6A5F\u80FD\u3055\u305B\u308B\u306B\u306F\u3001\u30DB\u30B9\u30C8\u306B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3057\u3066 IP \u30A2\u30C9\u30EC\u30B9\u3092\u5272\u308A\u5F53\u3066\u3001\u30DB\u30B9\u30C8\u304C CloudStack \u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u306B\u63A5\u7D9A\u3057\u3066\u3044\u308B\u3053\u3068\u3092\u78BA\u8A8D\u3057\u307E\u3059\u3002

    \u30DB\u30B9\u30C8\u306E DNS \u540D\u307E\u305F\u306F IP \u30A2\u30C9\u30EC\u30B9\u3001\u30E6\u30FC\u30B6\u30FC\u540D (\u901A\u5E38\u306F root) \u3068\u30D1\u30B9\u30EF\u30FC\u30C9\u3001\u304A\u3088\u3073\u30DB\u30B9\u30C8\u306E\u5206\u985E\u306B\u4F7F\u7528\u3059\u308B\u30E9\u30D9\u30EB\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.desc.primary.storage=\u5404\u30AF\u30E9\u30B9\u30BF\u30FC\u306B\u306F\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u3001\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30B5\u30FC\u30D0\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306F\u3001\u30AF\u30E9\u30B9\u30BF\u30FC\u5185\u306E\u30DB\u30B9\u30C8\u4E0A\u3067\u52D5\u4F5C\u3059\u308B\u3059\u3079\u3066\u306E VM \u306E\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u683C\u7D0D\u3057\u307E\u3059\u3002\u57FA\u790E\u3068\u306A\u308B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u308B\u3001\u6A19\u6E96\u306B\u6E96\u62E0\u3057\u305F\u30D7\u30ED\u30C8\u30B3\u30EB\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.desc.secondary.storage=\u5404\u30BE\u30FC\u30F3\u306B\u306F\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u3001NFS \u3064\u307E\u308A\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30B5\u30FC\u30D0\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306F VM \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3001ISO \u30A4\u30E1\u30FC\u30B8\u3001\u304A\u3088\u3073VM \u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u683C\u7D0D\u3057\u307E\u3059\u3002\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306F\u30BE\u30FC\u30F3\u5185\u306E\u3059\u3079\u3066\u306E\u30DB\u30B9\u30C8\u3067\u4F7F\u7528\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002

    IP \u30A2\u30C9\u30EC\u30B9\u3068\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3055\u308C\u305F\u30D1\u30B9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.desc.zone=\u30BE\u30FC\u30F3\u306F CloudStack \u74B0\u5883\u5185\u306E\u6700\u5927\u306E\u7D44\u7E54\u5358\u4F4D\u3067\u3001\u901A\u5E38\u3001\u5358\u4E00\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u306B\u76F8\u5F53\u3057\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306B\u3088\u3063\u3066\u7269\u7406\u7684\u306A\u5206\u96E2\u3068\u5197\u9577\u6027\u304C\u63D0\u4F9B\u3055\u308C\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DD\u30C3\u30C9 (\u5404\u30DD\u30C3\u30C9\u306F\u30DB\u30B9\u30C8\u3068\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059) \u3068\u3001\u30BE\u30FC\u30F3\u5185\u306E\u3059\u3079\u3066\u306E\u30DD\u30C3\u30C9\u3067\u5171\u6709\u3055\u308C\u308B\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059\u3002 +message.detach.disk=\u3053\u306E\u30C7\u30A3\u30B9\u30AF\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.detach.iso.confirm=\u3053\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304B\u3089 ISO \u30D5\u30A1\u30A4\u30EB\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? message.disable.account=\u00e3\u0081\u0093\u00e3\u0081\u00ae\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0082\u0092\u00e7\u0084\u00a1\u00e5\u008a\u00b9\u00e3\u0081\u00ab\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0082\u0082\u00e3\u0082\u0088\u00e3\u0082\u008d\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0081\u00a7\u00e3\u0081\u0099\u00e3\u0081\u008b? \u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0082\u0092\u00e7\u0084\u00a1\u00e5\u008a\u00b9\u00e3\u0081\u00ab\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u0093\u00e3\u0081\u00a8\u00e3\u0081\u00ab\u00e3\u0082\u0088\u00e3\u0082\u008a\u00e3\u0080\u0081\u00e3\u0081\u0093\u00e3\u0081\u00ae\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0081\u00ae\u00e3\u0081\u0099\u00e3\u0081\u00b9\u00e3\u0081\u00a6\u00e3\u0081\u00ae\u00e3\u0083\u00a6\u00e3\u0083\u00bc\u00e3\u0082\u00b6\u00e3\u0083\u00bc\u00e3\u0081\u00af\u00e3\u0082\u00af\u00e3\u0083\u00a9\u00e3\u0082\u00a6\u00e3\u0083\u0089\u00e3\u0083\u00aa\u00e3\u0082\u00bd\u00e3\u0083\u00bc\u00e3\u0082\u00b9\u00e3\u0081\u00ab\u00e3\u0082\u00a2\u00e3\u0082\u00af\u00e3\u0082\u00bb\u00e3\u0082\u00b9\u00e3\u0081\u00a7\u00e3\u0081\u008d\u00e3\u0081\u00aa\u00e3\u0081\u008f\u00e3\u0081\u00aa\u00e3\u0082\u008a\u00e3\u0081\u00be\u00e3\u0081\u0099\u00e3\u0080\u0082\u00e5\u00ae\u009f\u00e8\u00a1\u008c\u00e4\u00b8\u00ad\u00e3\u0081\u00ae\u00e3\u0081\u0099\u00e3\u0081\u00b9\u00e3\u0081\u00a6\u00e3\u0081\u00ae\u00e4\u00bb\u00ae\u00e6\u0083\u00b3\u00e3\u0083\u009e\u00e3\u0082\u00b7\u00e3\u0083\u00b3\u00e3\u0081\u00af\u00e3\u0081\u0099\u00e3\u0081\u0090\u00e3\u0081\u00ab\u00e3\u0082\u00b7\u00e3\u0083\u00a3\u00e3\u0083\u0083\u00e3\u0083\u0088\u00e3\u0083\u0080\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0081\u0095\u00e3\u0082\u008c\u00e3\u0081\u00be\u00e3\u0081\u0099\u00e3\u0080\u0082 -message.disable.snapshot.policy=\\u73FE\\u5728\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 \\u30DD\\u30EA\\u30B7\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u307E\\u3057\\u305F\\u3002 -message.disable.user=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.disable.vpn.access=VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.disable.vpn=VPN \\u3092\\u7121\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.disable.snapshot.policy=\u73FE\u5728\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 \u30DD\u30EA\u30B7\u30FC\u3092\u7121\u52B9\u306B\u3057\u307E\u3057\u305F\u3002 +message.disable.user=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.disable.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.disable.vpn=VPN \u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? message.download.ISO=ISO\u00e3\u0082\u0092\u00e3\u0083\u0080\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u00ad\u00e3\u0083\u00bc\u00e3\u0083\u0089\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab00000\u00e3\u0082\u0092\u00e3\u0082\u00af\u00e3\u0083\u00aa\u00e3\u0083\u0083\u00e3\u0082\u00af\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 message.download.template=\u00e3\u0083\u0086\u00e3\u0083\u00b3\u00e3\u0083\u0097\u00e3\u0083\u00ac\u00e3\u0083\u00bc\u00e3\u0083\u0088\u00e3\u0082\u0092\u00e3\u0083\u0080\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u00ad\u00e3\u0083\u00bc\u00e3\u0083\u0089\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab00000\u00e3\u0082\u0092\u00e3\u0082\u00af\u00e3\u0083\u00aa\u00e3\u0083\u0083\u00e3\u0082\u00af\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 -message.download.volume.confirm=\\u3053\\u306E\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.download.volume=\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u30C0\\u30A6\\u30F3\\u30ED\\u30FC\\u30C9\\u3059\\u308B\\u306B\\u306F 00000 \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u307E\\u3059 -message.edit.account=\\u7DE8\\u96C6 ("-1" \\u306F\\u3001\\u30EA\\u30BD\\u30FC\\u30B9\\u4F5C\\u6210\\u306E\\u91CF\\u306B\\u5236\\u9650\\u304C\\u306A\\u3044\\u3053\\u3068\\u3092\\u793A\\u3057\\u307E\\u3059) -message.edit.confirm=[\\u4FDD\\u5B58] \\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3059\\u308B\\u524D\\u306B\\u5909\\u66F4\\u5185\\u5BB9\\u3092\\u78BA\\u8A8D\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.edit.limits=\\u6B21\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u306B\\u5236\\u9650\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u300C-1\\u300D\\u306F\\u3001\\u30EA\\u30BD\\u30FC\\u30B9\\u4F5C\\u6210\\u306B\\u5236\\u9650\\u304C\\u306A\\u3044\\u3053\\u3068\\u3092\\u793A\\u3057\\u307E\\u3059\\u3002 -message.edit.traffic.type=\\u3053\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u306B\\u95A2\\u9023\\u4ED8\\u3051\\u308B\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF \\u30E9\\u30D9\\u30EB\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.enable.account=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.enabled.vpn.ip.sec=IPSec \\u4E8B\\u524D\\u5171\\u6709\\u30AD\\u30FC\: -message.enabled.vpn=\\u73FE\\u5728\\u3001VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u304C\\u6709\\u52B9\\u306B\\u306A\\u3063\\u3066\\u3044\\u307E\\u3059\\u3002\\u6B21\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u7D4C\\u7531\\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3067\\u304D\\u307E\\u3059\\u3002 -message.enable.user=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.enable.vpn.access=\\u73FE\\u5728\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306B\\u5BFE\\u3059\\u308B VPN \\u306F\\u7121\\u52B9\\u3067\\u3059\\u3002VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.enable.vpn=\\u3053\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306B\\u5BFE\\u3059\\u308B VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.enabling.security.group.provider=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7 \\u30D7\\u30ED\\u30D0\\u30A4\\u30C0\\u30FC\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 -message.enabling.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3044\\u307E\\u3059 -message.enter.token=\\u96FB\\u5B50\\u30E1\\u30FC\\u30EB\\u306E\\u62DB\\u5F85\\u72B6\\u306B\\u8A18\\u8F09\\u3055\\u308C\\u3066\\u3044\\u308B\\u30C8\\u30FC\\u30AF\\u30F3\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.generate.keys=\\u3053\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u306B\\u65B0\\u3057\\u3044\\u30AD\\u30FC\\u3092\\u751F\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.guest.traffic.in.advanced.zone=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306F\\u3001\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u9593\\u306E\\u901A\\u4FE1\\u3067\\u3059\\u3002\\u5404\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30B2\\u30B9\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u901A\\u4FE1\\u3059\\u308B\\u305F\\u3081\\u306E VLAN ID \\u306E\\u7BC4\\u56F2\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.guest.traffic.in.basic.zone=\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306F\\u3001\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306E\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u9593\\u306E\\u901A\\u4FE1\\u3067\\u3059\\u3002CloudStack \\u3067\\u30B2\\u30B9\\u30C8 VM \\u306B\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u308B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u3053\\u306E\\u7BC4\\u56F2\\u304C\\u4E88\\u7D04\\u6E08\\u307F\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3068\\u91CD\\u8907\\u3057\\u306A\\u3044\\u3088\\u3046\\u306B\\u6CE8\\u610F\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.installWizard.click.retry=\\u8D77\\u52D5\\u3092\\u518D\\u8A66\\u884C\\u3059\\u308B\\u306B\\u306F\\u30DC\\u30BF\\u30F3\\u3092\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.installWizard.copy.whatIsAPod=\\u901A\\u5E38\\u30011 \\u3064\\u306E\\u30DD\\u30C3\\u30C9\\u306F\\u5358\\u4E00\\u306E\\u30E9\\u30C3\\u30AF\\u3092\\u8868\\u3057\\u307E\\u3059\\u3002\\u540C\\u3058\\u30DD\\u30C3\\u30C9\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306F\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u306B\\u542B\\u307E\\u308C\\u307E\\u3059\\u3002

    \\u30DD\\u30C3\\u30C9\\u306F CloudStack&\#8482; \\u74B0\\u5883\\u5185\\u306E 2 \\u756A\\u76EE\\u306B\\u5927\\u304D\\u306A\\u7D44\\u7E54\\u5358\\u4F4D\\u3067\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306F\\u30BE\\u30FC\\u30F3\\u306B\\u542B\\u307E\\u308C\\u307E\\u3059\\u3002\\u5404\\u30BE\\u30FC\\u30F3\\u306F 1 \\u3064\\u4EE5\\u4E0A\\u306E\\u30DD\\u30C3\\u30C9\\u3092\\u542B\\u3080\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002\\u57FA\\u672C\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3067\\u306F\\u3001\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30DD\\u30C3\\u30C9\\u306F 1 \\u3064\\u3067\\u3059\\u3002 -message.installWizard.copy.whatIsAZone=\\u30BE\\u30FC\\u30F3\\u306F CloudStack&\#8482; \\u74B0\\u5883\\u5185\\u306E\\u6700\\u5927\\u306E\\u7D44\\u7E54\\u5358\\u4F4D\\u3067\\u3059\\u30021 \\u3064\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u5185\\u306B\\u8907\\u6570\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u8A2D\\u5B9A\\u3067\\u304D\\u307E\\u3059\\u304C\\u3001\\u901A\\u5E38\\u3001\\u30BE\\u30FC\\u30F3\\u306F\\u5358\\u4E00\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u306B\\u76F8\\u5F53\\u3057\\u307E\\u3059\\u3002\\u30A4\\u30F3\\u30D5\\u30E9\\u30B9\\u30C8\\u30E9\\u30AF\\u30C1\\u30E3\\u3092\\u30BE\\u30FC\\u30F3\\u306B\\u7D44\\u7E54\\u5316\\u3059\\u308B\\u3068\\u3001\\u30BE\\u30FC\\u30F3\\u3092\\u7269\\u7406\\u7684\\u306B\\u5206\\u96E2\\u3057\\u3066\\u5197\\u9577\\u5316\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002\\u305F\\u3068\\u3048\\u3070\\u3001\\u5404\\u30BE\\u30FC\\u30F3\\u306B\\u96FB\\u6E90\\u3068\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30A2\\u30C3\\u30D7\\u30EA\\u30F3\\u30AF\\u3092\\u914D\\u5099\\u3057\\u307E\\u3059\\u3002\\u5FC5\\u9808\\u3067\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093\\u304C\\u3001\\u30BE\\u30FC\\u30F3\\u306F\\u9060\\u9694\\u5730\\u306B\\u5206\\u6563\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002 -message.installWizard.copy.whatIsSecondaryStorage=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306F\\u30BE\\u30FC\\u30F3\\u3068\\u95A2\\u9023\\u4ED8\\u3051\\u3089\\u308C\\u3001\\u6B21\\u306E\\u9805\\u76EE\\u3092\\u683C\\u7D0D\\u3057\\u307E\\u3059\\u3002
    • \\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8 - VM \\u306E\\u8D77\\u52D5\\u306B\\u4F7F\\u7528\\u3067\\u304D\\u308B OS \\u30A4\\u30E1\\u30FC\\u30B8\\u3067\\u3001\\u30A2\\u30D7\\u30EA\\u30B1\\u30FC\\u30B7\\u30E7\\u30F3\\u306E\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u306A\\u3069\\u8FFD\\u52A0\\u306E\\u69CB\\u6210\\u3092\\u542B\\u3081\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002
    • ISO \\u30A4\\u30E1\\u30FC\\u30B8 - \\u8D77\\u52D5\\u53EF\\u80FD\\u307E\\u305F\\u306F\\u8D77\\u52D5\\u4E0D\\u53EF\\u306E OS \\u30A4\\u30E1\\u30FC\\u30B8\\u3067\\u3059\\u3002
    • \\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8 - VM \\u30C7\\u30FC\\u30BF\\u306E\\u4FDD\\u5B58\\u30B3\\u30D4\\u30FC\\u3067\\u3059\\u3002\\u30C7\\u30FC\\u30BF\\u306E\\u5FA9\\u5143\\u307E\\u305F\\u306F\\u65B0\\u3057\\u3044\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210\\u306B\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u3059\\u3002
    -message.installWizard.tooltip.addCluster.name=\\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002CloudStack \\u3067\\u4F7F\\u7528\\u3055\\u308C\\u3066\\u3044\\u306A\\u3044\\u3001\\u4EFB\\u610F\\u306E\\u30C6\\u30AD\\u30B9\\u30C8\\u3092\\u6307\\u5B9A\\u3067\\u304D\\u307E\\u3059\\u3002 -message.installWizard.tooltip.addHost.hostname=\\u30DB\\u30B9\\u30C8\\u306E DNS \\u540D\\u307E\\u305F\\u306F IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addHost.password=XenServer \\u5074\\u3067\\u6307\\u5B9A\\u3057\\u305F\\u3001\\u4E0A\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u540D\\u306B\\u5BFE\\u3059\\u308B\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addHost.username=\\u901A\\u5E38\\u306F root \\u3067\\u3059\\u3002 -message.installWizard.tooltip.addPod.name=\\u30DD\\u30C3\\u30C9\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addPod.reservedSystemEndIp=\\u3053\\u308C\\u306F\\u3001\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VM \\u304A\\u3088\\u3073\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7 VM \\u3092\\u7BA1\\u7406\\u3059\\u308B\\u305F\\u3081\\u306B CloudStack \\u3067\\u4F7F\\u7528\\u3059\\u308B\\u3001\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u5185\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u304B\\u3089\\u5272\\u308A\\u5F53\\u3066\\u307E\\u3059\\u3002 -message.installWizard.tooltip.addPod.reservedSystemGateway=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306E\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addPod.reservedSystemNetmask=\\u30B2\\u30B9\\u30C8\\u306E\\u4F7F\\u7528\\u3059\\u308B\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u4E0A\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u308B\\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addPod.reservedSystemStartIp=\\u3053\\u308C\\u306F\\u3001\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 VM \\u304A\\u3088\\u3073\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7 VM \\u3092\\u7BA1\\u7406\\u3059\\u308B\\u305F\\u3081\\u306B CloudStack \\u3067\\u4F7F\\u7528\\u3059\\u308B\\u3001\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u5185\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30B3\\u30F3\\u30D4\\u30E5\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0 \\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u540C\\u3058\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u304B\\u3089\\u5272\\u308A\\u5F53\\u3066\\u307E\\u3059\\u3002 -message.installWizard.tooltip.addPrimaryStorage.name=\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C7\\u30D0\\u30A4\\u30B9\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addPrimaryStorage.path=(NFS \\u306E\\u5834\\u5408) \\u30B5\\u30FC\\u30D0\\u30FC\\u304B\\u3089\\u30A8\\u30AF\\u30B9\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u305F\\u30D1\\u30B9\\u3067\\u3059\\u3002(SharedMountPoint \\u306E\\u5834\\u5408) \\u30D1\\u30B9\\u3067\\u3059\\u3002KVM \\u3067\\u306F\\u3053\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u304C\\u30DE\\u30A6\\u30F3\\u30C8\\u3055\\u308C\\u308B\\u5404\\u30DB\\u30B9\\u30C8\\u4E0A\\u306E\\u30D1\\u30B9\\u3067\\u3059\\u3002\\u305F\\u3068\\u3048\\u3070\\u3001/mnt/primary \\u3067\\u3059\\u3002 -message.installWizard.tooltip.addPrimaryStorage.server=(NFS\\u3001iSCSI\\u3001\\u307E\\u305F\\u306F PreSetup \\u306E\\u5834\\u5408) \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C7\\u30D0\\u30A4\\u30B9\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u307E\\u305F\\u306F DNS \\u540D\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addSecondaryStorage.nfsServer=\\u30BB\\u30AB\\u30F3\\u30C0\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u30DB\\u30B9\\u30C8\\u3059\\u308B NFS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addSecondaryStorage.path=\\u4E0A\\u306B\\u6307\\u5B9A\\u3057\\u305F\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u5B58\\u5728\\u3059\\u308B\\u3001\\u30A8\\u30AF\\u30B9\\u30DD\\u30FC\\u30C8\\u3055\\u308C\\u305F\\u30D1\\u30B9\\u3067\\u3059\\u3002 -message.installWizard.tooltip.addZone.dns1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B2\\u30B9\\u30C8 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u306F\\u3001\\u5F8C\\u3067\\u8FFD\\u52A0\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u7D4C\\u7531\\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3057\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.installWizard.tooltip.addZone.dns2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B2\\u30B9\\u30C8 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u306F\\u3001\\u5F8C\\u3067\\u8FFD\\u52A0\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u7D4C\\u7531\\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3057\\u307E\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.installWizard.tooltip.addZone.internaldns1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306F\\u3001\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4ECB\\u3057\\u3066\\u30A2\\u30AF\\u30BB\\u30B9\\u3055\\u308C\\u307E\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.installWizard.tooltip.addZone.internaldns2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u3067\\u3059\\u3002\\u3053\\u308C\\u3089\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306F\\u3001\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4ECB\\u3057\\u3066\\u30A2\\u30AF\\u30BB\\u30B9\\u3055\\u308C\\u307E\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u3053\\u3067\\u6307\\u5B9A\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.installWizard.tooltip.addZone.name=\\u30BE\\u30FC\\u30F3\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 -message.installWizard.tooltip.configureGuestTraffic.description=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u8AAC\\u660E\\u3067\\u3059\\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestEndIp=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u306E\\u30B2\\u30B9\\u30C8\\u306B\\u5272\\u308A\\u5F53\\u3066\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u308B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u4F7F\\u7528\\u3059\\u308B NIC \\u304C 1 \\u3064\\u306E\\u5834\\u5408\\u306F\\u3001\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30DD\\u30C3\\u30C9\\u306E CIDR \\u3068\\u540C\\u3058 CIDR \\u306B\\u542B\\u307E\\u308C\\u3066\\u3044\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestGateway=\\u30B2\\u30B9\\u30C8\\u306E\\u4F7F\\u7528\\u3059\\u308B\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3067\\u3059\\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestNetmask=\\u30B2\\u30B9\\u30C8\\u306E\\u4F7F\\u7528\\u3059\\u308B\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u4E0A\\u3067\\u4F7F\\u7528\\u3055\\u308C\\u308B\\u30CD\\u30C3\\u30C8\\u30DE\\u30B9\\u30AF\\u3067\\u3059\\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestStartIp=\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u306E\\u30B2\\u30B9\\u30C8\\u306B\\u5272\\u308A\\u5F53\\u3066\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u308B IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3067\\u3059\\u3002\\u4F7F\\u7528\\u3059\\u308B NIC \\u304C 1 \\u3064\\u306E\\u5834\\u5408\\u306F\\u3001\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306F\\u30DD\\u30C3\\u30C9\\u306E CIDR \\u3068\\u540C\\u3058 CIDR \\u306B\\u542B\\u307E\\u308C\\u3066\\u3044\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.installWizard.tooltip.configureGuestTraffic.name=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 -message.instanceWizard.noTemplates=\\u4F7F\\u7528\\u53EF\\u80FD\\u306A\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002\\u4E92\\u63DB\\u6027\\u306E\\u3042\\u308B\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u3001\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9 \\u30A6\\u30A3\\u30B6\\u30FC\\u30C9\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.ip.address.changed=\\u304A\\u4F7F\\u3044\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304C\\u5909\\u66F4\\u3055\\u308C\\u3066\\u3044\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u4E00\\u89A7\\u3092\\u66F4\\u65B0\\u3057\\u307E\\u3059\\u304B? \\u305D\\u306E\\u5834\\u5408\\u306F\\u3001\\u8A73\\u7D30\\u30DA\\u30A4\\u30F3\\u304C\\u9589\\u3058\\u308B\\u3053\\u3068\\u306B\\u6CE8\\u610F\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.iso.desc=\\u30C7\\u30FC\\u30BF\\u307E\\u305F\\u306F OS \\u8D77\\u52D5\\u53EF\\u80FD\\u30E1\\u30C7\\u30A3\\u30A2\\u3092\\u542B\\u3080\\u30C7\\u30A3\\u30B9\\u30AF \\u30A4\\u30E1\\u30FC\\u30B8 -message.join.project=\\u3053\\u308C\\u3067\\u3001\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306B\\u53C2\\u52A0\\u3057\\u307E\\u3057\\u305F\\u3002\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u53C2\\u7167\\u3059\\u308B\\u306B\\u306F\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30D3\\u30E5\\u30FC\\u306B\\u5207\\u308A\\u66FF\\u3048\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.launch.zone=\\u30BE\\u30FC\\u30F3\\u3092\\u8D77\\u52D5\\u3059\\u308B\\u6E96\\u5099\\u304C\\u3067\\u304D\\u307E\\u3057\\u305F\\u3002\\u6B21\\u306E\\u624B\\u9806\\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 -message.lock.account=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u3092\\u30ED\\u30C3\\u30AF\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u3059\\u3079\\u3066\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u304C\\u30AF\\u30E9\\u30A6\\u30C9 \\u30EA\\u30BD\\u30FC\\u30B9\\u3092\\u7BA1\\u7406\\u3067\\u304D\\u306A\\u304F\\u306A\\u308A\\u307E\\u3059\\u3002\\u305D\\u306E\\u5F8C\\u3082\\u65E2\\u5B58\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u306B\\u306F\\u30A2\\u30AF\\u30BB\\u30B9\\u3067\\u304D\\u307E\\u3059\\u3002 -message.migrate.instance.confirm=\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u79FB\\u884C\\u5148\\u306F\\u6B21\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.migrate.instance.to.host=\\u5225\\u306E\\u30DB\\u30B9\\u30C8\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.migrate.instance.to.ps=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.migrate.router.confirm=\\u30EB\\u30FC\\u30BF\\u30FC\\u306E\\u79FB\\u884C\\u5148\\u306F\\u6B21\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.migrate.systemvm.confirm=\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u79FB\\u884C\\u5148\\u306F\\u6B21\\u306E\\u30DB\\u30B9\\u30C8\\u3067\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.migrate.volume=\\u5225\\u306E\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u306B\\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u3092\\u79FB\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? +message.download.volume.confirm=\u3053\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.download.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3059\u308B\u306B\u306F 00000 \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u307E\u3059 +message.edit.account=\u7DE8\u96C6 ("-1" \u306F\u3001\u30EA\u30BD\u30FC\u30B9\u4F5C\u6210\u306E\u91CF\u306B\u5236\u9650\u304C\u306A\u3044\u3053\u3068\u3092\u793A\u3057\u307E\u3059) +message.edit.confirm=[\u4FDD\u5B58] \u3092\u30AF\u30EA\u30C3\u30AF\u3059\u308B\u524D\u306B\u5909\u66F4\u5185\u5BB9\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.edit.limits=\u6B21\u306E\u30EA\u30BD\u30FC\u30B9\u306B\u5236\u9650\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u300C-1\u300D\u306F\u3001\u30EA\u30BD\u30FC\u30B9\u4F5C\u6210\u306B\u5236\u9650\u304C\u306A\u3044\u3053\u3068\u3092\u793A\u3057\u307E\u3059\u3002 +message.edit.traffic.type=\u3053\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u306B\u95A2\u9023\u4ED8\u3051\u308B\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF \u30E9\u30D9\u30EB\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.enable.account=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.enabled.vpn.ip.sec=IPSec \u4E8B\u524D\u5171\u6709\u30AD\u30FC\: +message.enabled.vpn=\u73FE\u5728\u3001VPN \u30A2\u30AF\u30BB\u30B9\u304C\u6709\u52B9\u306B\u306A\u3063\u3066\u3044\u307E\u3059\u3002\u6B21\u306E IP \u30A2\u30C9\u30EC\u30B9\u7D4C\u7531\u3067\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u3059\u3002 +message.enable.user=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.enable.vpn.access=\u73FE\u5728\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u306B\u5BFE\u3059\u308B VPN \u306F\u7121\u52B9\u3067\u3059\u3002VPN \u30A2\u30AF\u30BB\u30B9\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.enable.vpn=\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u306B\u5BFE\u3059\u308B VPN \u30A2\u30AF\u30BB\u30B9\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.enabling.security.group.provider=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 \u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 +message.enabling.zone=\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 +message.enter.token=\u96FB\u5B50\u30E1\u30FC\u30EB\u306E\u62DB\u5F85\u72B6\u306B\u8A18\u8F09\u3055\u308C\u3066\u3044\u308B\u30C8\u30FC\u30AF\u30F3\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.generate.keys=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u306B\u65B0\u3057\u3044\u30AD\u30FC\u3092\u751F\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.guest.traffic.in.advanced.zone=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306F\u3001\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u9593\u306E\u901A\u4FE1\u3067\u3059\u3002\u5404\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30B2\u30B9\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u901A\u4FE1\u3059\u308B\u305F\u3081\u306E VLAN ID \u306E\u7BC4\u56F2\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.guest.traffic.in.basic.zone=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306F\u3001\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u9593\u306E\u901A\u4FE1\u3067\u3059\u3002CloudStack \u3067\u30B2\u30B9\u30C8 VM \u306B\u5272\u308A\u5F53\u3066\u3089\u308C\u308B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3053\u306E\u7BC4\u56F2\u304C\u4E88\u7D04\u6E08\u307F\u306E\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3068\u91CD\u8907\u3057\u306A\u3044\u3088\u3046\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.installWizard.click.retry=\u8D77\u52D5\u3092\u518D\u8A66\u884C\u3059\u308B\u306B\u306F\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.installWizard.copy.whatIsAPod=\u901A\u5E38\u30011 \u3064\u306E\u30DD\u30C3\u30C9\u306F\u5358\u4E00\u306E\u30E9\u30C3\u30AF\u3092\u8868\u3057\u307E\u3059\u3002\u540C\u3058\u30DD\u30C3\u30C9\u5185\u306E\u30DB\u30B9\u30C8\u306F\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u306B\u542B\u307E\u308C\u307E\u3059\u3002

    \u30DD\u30C3\u30C9\u306F CloudStack&\#8482; \u74B0\u5883\u5185\u306E 2 \u756A\u76EE\u306B\u5927\u304D\u306A\u7D44\u7E54\u5358\u4F4D\u3067\u3059\u3002\u30DD\u30C3\u30C9\u306F\u30BE\u30FC\u30F3\u306B\u542B\u307E\u308C\u307E\u3059\u3002\u5404\u30BE\u30FC\u30F3\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DD\u30C3\u30C9\u3092\u542B\u3080\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002\u57FA\u672C\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3067\u306F\u3001\u30BE\u30FC\u30F3\u5185\u306E\u30DD\u30C3\u30C9\u306F 1 \u3064\u3067\u3059\u3002 +message.installWizard.copy.whatIsAZone=\u30BE\u30FC\u30F3\u306F CloudStack&\#8482; \u74B0\u5883\u5185\u306E\u6700\u5927\u306E\u7D44\u7E54\u5358\u4F4D\u3067\u3059\u30021 \u3064\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u5185\u306B\u8907\u6570\u306E\u30BE\u30FC\u30F3\u3092\u8A2D\u5B9A\u3067\u304D\u307E\u3059\u304C\u3001\u901A\u5E38\u3001\u30BE\u30FC\u30F3\u306F\u5358\u4E00\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u306B\u76F8\u5F53\u3057\u307E\u3059\u3002\u30A4\u30F3\u30D5\u30E9\u30B9\u30C8\u30E9\u30AF\u30C1\u30E3\u3092\u30BE\u30FC\u30F3\u306B\u7D44\u7E54\u5316\u3059\u308B\u3068\u3001\u30BE\u30FC\u30F3\u3092\u7269\u7406\u7684\u306B\u5206\u96E2\u3057\u3066\u5197\u9577\u5316\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002\u305F\u3068\u3048\u3070\u3001\u5404\u30BE\u30FC\u30F3\u306B\u96FB\u6E90\u3068\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30A2\u30C3\u30D7\u30EA\u30F3\u30AF\u3092\u914D\u5099\u3057\u307E\u3059\u3002\u5FC5\u9808\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u304C\u3001\u30BE\u30FC\u30F3\u306F\u9060\u9694\u5730\u306B\u5206\u6563\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002 +message.installWizard.copy.whatIsSecondaryStorage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306F\u30BE\u30FC\u30F3\u3068\u95A2\u9023\u4ED8\u3051\u3089\u308C\u3001\u6B21\u306E\u9805\u76EE\u3092\u683C\u7D0D\u3057\u307E\u3059\u3002
    • \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 - VM \u306E\u8D77\u52D5\u306B\u4F7F\u7528\u3067\u304D\u308B OS \u30A4\u30E1\u30FC\u30B8\u3067\u3001\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u306E\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u306A\u3069\u8FFD\u52A0\u306E\u69CB\u6210\u3092\u542B\u3081\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002
    • ISO \u30A4\u30E1\u30FC\u30B8 - \u8D77\u52D5\u53EF\u80FD\u307E\u305F\u306F\u8D77\u52D5\u4E0D\u53EF\u306E OS \u30A4\u30E1\u30FC\u30B8\u3067\u3059\u3002
    • \u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 - VM \u30C7\u30FC\u30BF\u306E\u4FDD\u5B58\u30B3\u30D4\u30FC\u3067\u3059\u3002\u30C7\u30FC\u30BF\u306E\u5FA9\u5143\u307E\u305F\u306F\u65B0\u3057\u3044\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210\u306B\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002
    +message.installWizard.tooltip.addCluster.name=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u540D\u524D\u3067\u3059\u3002CloudStack \u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u306A\u3044\u3001\u4EFB\u610F\u306E\u30C6\u30AD\u30B9\u30C8\u3092\u6307\u5B9A\u3067\u304D\u307E\u3059\u3002 +message.installWizard.tooltip.addHost.hostname=\u30DB\u30B9\u30C8\u306E DNS \u540D\u307E\u305F\u306F IP \u30A2\u30C9\u30EC\u30B9\u3067\u3059\u3002 +message.installWizard.tooltip.addHost.password=XenServer \u5074\u3067\u6307\u5B9A\u3057\u305F\u3001\u4E0A\u306E\u30E6\u30FC\u30B6\u30FC\u540D\u306B\u5BFE\u3059\u308B\u30D1\u30B9\u30EF\u30FC\u30C9\u3067\u3059\u3002 +message.installWizard.tooltip.addHost.username=\u901A\u5E38\u306F root \u3067\u3059\u3002 +message.installWizard.tooltip.addPod.name=\u30DD\u30C3\u30C9\u306E\u540D\u524D\u3067\u3059\u3002 +message.installWizard.tooltip.addPod.reservedSystemEndIp=\u3053\u308C\u306F\u3001\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 VM \u304A\u3088\u3073\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7 VM \u3092\u7BA1\u7406\u3059\u308B\u305F\u3081\u306B CloudStack \u3067\u4F7F\u7528\u3059\u308B\u3001\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u5185\u306E IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30B5\u30FC\u30D0\u30FC\u3068\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u304B\u3089\u5272\u308A\u5F53\u3066\u307E\u3059\u3002 +message.installWizard.tooltip.addPod.reservedSystemGateway=\u3053\u306E\u30DD\u30C3\u30C9\u5185\u306E\u30DB\u30B9\u30C8\u306E\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3067\u3059\u3002 +message.installWizard.tooltip.addPod.reservedSystemNetmask=\u30B2\u30B9\u30C8\u306E\u4F7F\u7528\u3059\u308B\u30B5\u30D6\u30CD\u30C3\u30C8\u4E0A\u3067\u4F7F\u7528\u3055\u308C\u308B\u30CD\u30C3\u30C8\u30DE\u30B9\u30AF\u3067\u3059\u3002 +message.installWizard.tooltip.addPod.reservedSystemStartIp=\u3053\u308C\u306F\u3001\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 VM \u304A\u3088\u3073\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7 VM \u3092\u7BA1\u7406\u3059\u308B\u305F\u3081\u306B CloudStack \u3067\u4F7F\u7528\u3059\u308B\u3001\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u5185\u306E IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30B5\u30FC\u30D0\u30FC\u3068\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u304B\u3089\u5272\u308A\u5F53\u3066\u307E\u3059\u3002 +message.installWizard.tooltip.addPrimaryStorage.name=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C7\u30D0\u30A4\u30B9\u306E\u540D\u524D\u3067\u3059\u3002 +message.installWizard.tooltip.addPrimaryStorage.path=(NFS \u306E\u5834\u5408) \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3055\u308C\u305F\u30D1\u30B9\u3067\u3059\u3002(SharedMountPoint \u306E\u5834\u5408) \u30D1\u30B9\u3067\u3059\u3002KVM \u3067\u306F\u3053\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u304C\u30DE\u30A6\u30F3\u30C8\u3055\u308C\u308B\u5404\u30DB\u30B9\u30C8\u4E0A\u306E\u30D1\u30B9\u3067\u3059\u3002\u305F\u3068\u3048\u3070\u3001/mnt/primary \u3067\u3059\u3002 +message.installWizard.tooltip.addPrimaryStorage.server=(NFS\u3001iSCSI\u3001\u307E\u305F\u306F PreSetup \u306E\u5834\u5408) \u30B9\u30C8\u30EC\u30FC\u30B8 \u30C7\u30D0\u30A4\u30B9\u306E IP \u30A2\u30C9\u30EC\u30B9\u307E\u305F\u306F DNS \u540D\u3067\u3059\u3002 +message.installWizard.tooltip.addSecondaryStorage.nfsServer=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u30DB\u30B9\u30C8\u3059\u308B NFS \u30B5\u30FC\u30D0\u30FC\u306E IP \u30A2\u30C9\u30EC\u30B9\u3067\u3059\u3002 +message.installWizard.tooltip.addSecondaryStorage.path=\u4E0A\u306B\u6307\u5B9A\u3057\u305F\u30B5\u30FC\u30D0\u30FC\u306B\u5B58\u5728\u3059\u308B\u3001\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3055\u308C\u305F\u30D1\u30B9\u3067\u3059\u3002 +message.installWizard.tooltip.addZone.dns1=\u30BE\u30FC\u30F3\u5185\u306E\u30B2\u30B9\u30C8 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306B\u306F\u3001\u5F8C\u3067\u8FFD\u52A0\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u7D4C\u7531\u3067\u30A2\u30AF\u30BB\u30B9\u3057\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.installWizard.tooltip.addZone.dns2=\u30BE\u30FC\u30F3\u5185\u306E\u30B2\u30B9\u30C8 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306B\u306F\u3001\u5F8C\u3067\u8FFD\u52A0\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u7D4C\u7531\u3067\u30A2\u30AF\u30BB\u30B9\u3057\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.installWizard.tooltip.addZone.internaldns1=\u30BE\u30FC\u30F3\u5185\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306F\u3001\u30B7\u30B9\u30C6\u30E0 VM \u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4ECB\u3057\u3066\u30A2\u30AF\u30BB\u30B9\u3055\u308C\u307E\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.installWizard.tooltip.addZone.internaldns2=\u30BE\u30FC\u30F3\u5185\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306F\u3001\u30B7\u30B9\u30C6\u30E0 VM \u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4ECB\u3057\u3066\u30A2\u30AF\u30BB\u30B9\u3055\u308C\u307E\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.installWizard.tooltip.addZone.name=\u30BE\u30FC\u30F3\u306E\u540D\u524D\u3067\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.description=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8AAC\u660E\u3067\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestEndIp=\u3053\u306E\u30BE\u30FC\u30F3\u306E\u30B2\u30B9\u30C8\u306B\u5272\u308A\u5F53\u3066\u308B\u3053\u3068\u304C\u3067\u304D\u308B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u4F7F\u7528\u3059\u308B NIC \u304C 1 \u3064\u306E\u5834\u5408\u306F\u3001\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30DD\u30C3\u30C9\u306E CIDR \u3068\u540C\u3058 CIDR \u306B\u542B\u307E\u308C\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestGateway=\u30B2\u30B9\u30C8\u306E\u4F7F\u7528\u3059\u308B\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3067\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestNetmask=\u30B2\u30B9\u30C8\u306E\u4F7F\u7528\u3059\u308B\u30B5\u30D6\u30CD\u30C3\u30C8\u4E0A\u3067\u4F7F\u7528\u3055\u308C\u308B\u30CD\u30C3\u30C8\u30DE\u30B9\u30AF\u3067\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestStartIp=\u3053\u306E\u30BE\u30FC\u30F3\u306E\u30B2\u30B9\u30C8\u306B\u5272\u308A\u5F53\u3066\u308B\u3053\u3068\u304C\u3067\u304D\u308B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u4F7F\u7528\u3059\u308B NIC \u304C 1 \u3064\u306E\u5834\u5408\u306F\u3001\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30DD\u30C3\u30C9\u306E CIDR \u3068\u540C\u3058 CIDR \u306B\u542B\u307E\u308C\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.name=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u540D\u524D\u3067\u3059\u3002 +message.instanceWizard.noTemplates=\u4F7F\u7528\u53EF\u80FD\u306A\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u4E92\u63DB\u6027\u306E\u3042\u308B\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u8FFD\u52A0\u3057\u3066\u3001\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 \u30A6\u30A3\u30B6\u30FC\u30C9\u3092\u518D\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.ip.address.changed=\u304A\u4F7F\u3044\u306E IP \u30A2\u30C9\u30EC\u30B9\u304C\u5909\u66F4\u3055\u308C\u3066\u3044\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002\u4E00\u89A7\u3092\u66F4\u65B0\u3057\u307E\u3059\u304B? \u305D\u306E\u5834\u5408\u306F\u3001\u8A73\u7D30\u30DA\u30A4\u30F3\u304C\u9589\u3058\u308B\u3053\u3068\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.iso.desc=\u30C7\u30FC\u30BF\u307E\u305F\u306F OS \u8D77\u52D5\u53EF\u80FD\u30E1\u30C7\u30A3\u30A2\u3092\u542B\u3080\u30C7\u30A3\u30B9\u30AF \u30A4\u30E1\u30FC\u30B8 +message.join.project=\u3053\u308C\u3067\u3001\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306B\u53C2\u52A0\u3057\u307E\u3057\u305F\u3002\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u53C2\u7167\u3059\u308B\u306B\u306F\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30D3\u30E5\u30FC\u306B\u5207\u308A\u66FF\u3048\u3066\u304F\u3060\u3055\u3044\u3002 +message.launch.zone=\u30BE\u30FC\u30F3\u3092\u8D77\u52D5\u3059\u308B\u6E96\u5099\u304C\u3067\u304D\u307E\u3057\u305F\u3002\u6B21\u306E\u624B\u9806\u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 +message.lock.account=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u30ED\u30C3\u30AF\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u3059\u3079\u3066\u306E\u30E6\u30FC\u30B6\u30FC\u304C\u30AF\u30E9\u30A6\u30C9 \u30EA\u30BD\u30FC\u30B9\u3092\u7BA1\u7406\u3067\u304D\u306A\u304F\u306A\u308A\u307E\u3059\u3002\u305D\u306E\u5F8C\u3082\u65E2\u5B58\u306E\u30EA\u30BD\u30FC\u30B9\u306B\u306F\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u3059\u3002 +message.migrate.instance.confirm=\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C\u5148\u306F\u6B21\u306E\u30DB\u30B9\u30C8\u3067\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.migrate.instance.to.host=\u5225\u306E\u30DB\u30B9\u30C8\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u79FB\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.migrate.instance.to.ps=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u79FB\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.migrate.router.confirm=\u30EB\u30FC\u30BF\u30FC\u306E\u79FB\u884C\u5148\u306F\u6B21\u306E\u30DB\u30B9\u30C8\u3067\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.migrate.systemvm.confirm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u79FB\u884C\u5148\u306F\u6B21\u306E\u30DB\u30B9\u30C8\u3067\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.migrate.volume=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u79FB\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? message.new.user=\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0081\u00ab\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0083\u00a6\u00e3\u0083\u00bc\u00e3\u0082\u00b6\u00e3\u0083\u00bc\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e8\u00a8\u00ad\u00e5\u00ae\u009a\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084 -message.no.network.support.configuration.not.true=\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u304C\\u6709\\u52B9\\u306A\\u30BE\\u30FC\\u30F3\\u304C\\u7121\\u3044\\u305F\\u3081\\u3001\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6A5F\\u80FD\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002\\u624B\\u9806 5. \\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 -message.no.network.support=\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u3068\\u3057\\u3066 vSphere \\u3092\\u9078\\u629E\\u3057\\u307E\\u3057\\u305F\\u304C\\u3001\\u3053\\u306E\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u306B\\u8FFD\\u52A0\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u6A5F\\u80FD\\u306F\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002\\u624B\\u9806 5. \\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 -message.no.projects.adminOnly=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002
    \\u7BA1\\u7406\\u8005\\u306B\\u65B0\\u3057\\u3044\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306E\\u4F5C\\u6210\\u3092\\u4F9D\\u983C\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.no.projects=\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u304C\\u3042\\u308A\\u307E\\u305B\\u3093\\u3002
    \\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30BB\\u30AF\\u30B7\\u30E7\\u30F3\\u304B\\u3089\\u65B0\\u3057\\u3044\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.number.clusters=

    \\u30AF\\u30E9\\u30B9\\u30BF\\u30FC\\u6570

    -message.number.hosts=

    \\u30DB\\u30B9\\u30C8\\u6570

    -message.number.pods=

    \\u30DD\\u30C3\\u30C9\\u6570

    -message.number.storage=

    \\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u6570

    -message.number.zones=

    \\u30BE\\u30FC\\u30F3\\u6570

    -message.pending.projects.1=\\u4FDD\\u7559\\u4E2D\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u62DB\\u5F85\\u72B6\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.pending.projects.2=\\u8868\\u793A\\u3059\\u308B\\u306B\\u306F\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8 \\u30BB\\u30AF\\u30B7\\u30E7\\u30F3\\u306B\\u79FB\\u52D5\\u3057\\u3066\\u3001\\u4E00\\u89A7\\u304B\\u3089\\u62DB\\u5F85\\u72B6\\u3092\\u9078\\u629E\\u3057\\u307E\\u3059\\u3002 -message.please.add.at.lease.one.traffic.range=\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7BC4\\u56F2\\u3092\\u8FFD\\u52A0\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.please.proceed=\\u6B21\\u306E\\u624B\\u9806\\u306B\\u9032\\u3093\\u3067\\u304F\\u3060\\u3055\\u3044\\u3002 -message.please.select.a.configuration.for.your.zone=\\u30BE\\u30FC\\u30F3\\u306E\\u69CB\\u6210\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.please.select.a.different.public.and.management.network.before.removing=\\u524A\\u9664\\u306E\\u524D\\u306B\\u7570\\u306A\\u308B\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF\\u304A\\u3088\\u3073\\u7BA1\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.please.select.networks=\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.please.wait.while.zone.is.being.created=\\u30BE\\u30FC\\u30F3\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u308B\\u307E\\u3067\\u3057\\u3070\\u3089\\u304F\\u304A\\u5F85\\u3061\\u304F\\u3060\\u3055\\u3044... -message.project.invite.sent=\\u30E6\\u30FC\\u30B6\\u30FC\\u306B\\u62DB\\u5F85\\u72B6\\u304C\\u9001\\u4FE1\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u30E6\\u30FC\\u30B6\\u30FC\\u304C\\u62DB\\u5F85\\u3092\\u627F\\u8AFE\\u3059\\u308B\\u3068\\u3001\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u306B\\u8FFD\\u52A0\\u3055\\u308C\\u307E\\u3059\\u3002 -message.public.traffic.in.advanced.zone=\\u30AF\\u30E9\\u30A6\\u30C9\\u5185\\u306E VM \\u304C\\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3059\\u308B\\u3068\\u3001\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u304C\\u751F\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u305F\\u3081\\u306B\\u3001\\u4E00\\u822C\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u53EF\\u80FD\\u306A IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306F CloudStack \\u306E\\u30E6\\u30FC\\u30B6\\u30FC \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u3053\\u308C\\u3089\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3057\\u3001\\u30B2\\u30B9\\u30C8 \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3068\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u9593\\u306B NAT \\u3092\\u5B9F\\u88C5\\u3059\\u308B\\u3053\\u3068\\u304C\\u3067\\u304D\\u307E\\u3059\\u3002

    \\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u305F\\u3081\\u306B\\u3001\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u3092\\u5165\\u529B\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.public.traffic.in.basic.zone=\\u30AF\\u30E9\\u30A6\\u30C9\\u5185\\u306E VM \\u304C\\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u3059\\u308B\\u304B\\u30A4\\u30F3\\u30BF\\u30FC\\u30CD\\u30C3\\u30C8\\u7D4C\\u7531\\u3067\\u30AF\\u30E9\\u30A4\\u30A2\\u30F3\\u30C8\\u306B\\u30B5\\u30FC\\u30D3\\u30B9\\u3092\\u63D0\\u4F9B\\u3059\\u308B\\u3068\\u3001\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u304C\\u751F\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u305F\\u3081\\u306B\\u3001\\u4E00\\u822C\\u306B\\u30A2\\u30AF\\u30BB\\u30B9\\u53EF\\u80FD\\u306A IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u5272\\u308A\\u5F53\\u3066\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u3068\\u3001\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u307B\\u304B\\u306B\\u3053\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u7BC4\\u56F2\\u304B\\u3089\\u30A2\\u30C9\\u30EC\\u30B9\\u304C 1 \\u3064\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306B\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u307E\\u3059\\u3002\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3068\\u30B2\\u30B9\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u9593\\u306B\\u3001\\u9759\\u7684\\u306A 1 \\u5BFE 1 \\u306E NAT \\u304C\\u81EA\\u52D5\\u7684\\u306B\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3055\\u308C\\u307E\\u3059\\u3002\\u30A8\\u30F3\\u30C9 \\u30E6\\u30FC\\u30B6\\u30FC\\u306F CloudStack \\u306E\\u30E6\\u30FC\\u30B6\\u30FC \\u30A4\\u30F3\\u30BF\\u30FC\\u30D5\\u30A7\\u30A4\\u30B9\\u3092\\u4F7F\\u7528\\u3057\\u3066\\u8FFD\\u52A0\\u306E IP \\u30A2\\u30C9\\u30EC\\u30B9\\u3092\\u53D6\\u5F97\\u3057\\u3001\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3068\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u306E\\u9593\\u306B\\u9759\\u7684 NAT \\u3092\\u5B9F\\u88C5\\u3059\\u308B\\u3053\\u3068\\u3082\\u3067\\u304D\\u307E\\u3059\\u3002 -message.remove.vpc=VPC \\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.remove.vpn.access=\\u6B21\\u306E\\u30E6\\u30FC\\u30B6\\u30FC\\u304B\\u3089 VPN \\u30A2\\u30AF\\u30BB\\u30B9\\u3092\\u524A\\u9664\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.reset.password.warning.notPasswordEnabled=\\u3053\\u306E\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306F\\u3001\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u7BA1\\u7406\\u3092\\u6709\\u52B9\\u306B\\u305B\\u305A\\u306B\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002 -message.reset.password.warning.notStopped=\\u73FE\\u5728\\u306E\\u30D1\\u30B9\\u30EF\\u30FC\\u30C9\\u3092\\u5909\\u66F4\\u3059\\u308B\\u524D\\u306B\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u505C\\u6B62\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.reset.VPN.connection=VPN \\u63A5\\u7D9A\\u3092\\u30EA\\u30BB\\u30C3\\u30C8\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.restart.mgmt.server=\\u65B0\\u3057\\u3044\\u8A2D\\u5B9A\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.restart.mgmt.usage.server=\\u65B0\\u3057\\u3044\\u8A2D\\u5B9A\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u305F\\u3081\\u306B\\u3001\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u4F7F\\u7528\\u72B6\\u6CC1\\u6E2C\\u5B9A\\u30B5\\u30FC\\u30D0\\u30FC\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.restart.network=\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3067\\u63D0\\u4F9B\\u3059\\u308B\\u3059\\u3079\\u3066\\u306E\\u30B5\\u30FC\\u30D3\\u30B9\\u304C\\u4E2D\\u65AD\\u3055\\u308C\\u307E\\u3059\\u3002\\u3053\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.restart.vpc=VPC \\u3092\\u518D\\u8D77\\u52D5\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.security.group.usage=(\\u8A72\\u5F53\\u3059\\u308B\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u3059\\u3079\\u3066\\u9078\\u629E\\u3059\\u308B\\u306B\\u306F\\u3001Ctrl \\u30AD\\u30FC\\u3092\\u62BC\\u3057\\u306A\\u304C\\u3089\\u30AF\\u30EA\\u30C3\\u30AF\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044) -message.select.a.zone=\\u30BE\\u30FC\\u30F3\\u306F\\u901A\\u5E38\\u3001\\u5358\\u4E00\\u306E\\u30C7\\u30FC\\u30BF\\u30BB\\u30F3\\u30BF\\u30FC\\u306B\\u76F8\\u5F53\\u3057\\u307E\\u3059\\u3002\\u8907\\u6570\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u8A2D\\u5B9A\\u3057\\u3001\\u7269\\u7406\\u7684\\u306B\\u5206\\u96E2\\u3057\\u3066\\u5197\\u9577\\u6027\\u3092\\u6301\\u305F\\u305B\\u308B\\u3053\\u3068\\u306B\\u3088\\u308A\\u3001\\u30AF\\u30E9\\u30A6\\u30C9\\u306E\\u4FE1\\u983C\\u6027\\u3092\\u9AD8\\u3081\\u307E\\u3059\\u3002 -message.select.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.select.iso=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E ISO \\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.select.item=\\u9805\\u76EE\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.select.security.groups=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30DE\\u30B7\\u30F3\\u306E\\u30BB\\u30AD\\u30E5\\u30EA\\u30C6\\u30A3 \\u30B0\\u30EB\\u30FC\\u30D7\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.select.template=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.setup.physical.network.during.zone.creation.basic=\\u57FA\\u672C\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u3068\\u304D\\u306F\\u3001\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u4E0A\\u306E NIC \\u306B\\u5BFE\\u5FDC\\u3059\\u308B 1 \\u3064\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3067\\u304D\\u307E\\u3059\\u3002\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306F\\u3044\\u304F\\u3064\\u304B\\u306E\\u7A2E\\u985E\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u4F1D\\u9001\\u3057\\u307E\\u3059\\u3002

    \\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306B\\u307B\\u304B\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u3092\\u30C9\\u30E9\\u30C3\\u30B0 \\u30A2\\u30F3\\u30C9 \\u30C9\\u30ED\\u30C3\\u30D7\\u3059\\u308B\\u3053\\u3068\\u3082\\u3067\\u304D\\u307E\\u3059\\u3002 -message.setup.physical.network.during.zone.creation=\\u62E1\\u5F35\\u30BE\\u30FC\\u30F3\\u3092\\u8FFD\\u52A0\\u3059\\u308B\\u3068\\u304D\\u306F\\u30011 \\u3064\\u4EE5\\u4E0A\\u306E\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u5404\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306F\\u30CF\\u30A4\\u30D1\\u30FC\\u30D0\\u30A4\\u30B6\\u30FC\\u4E0A\\u306E 1 \\u3064\\u306E NIC \\u306B\\u5BFE\\u5FDC\\u3057\\u307E\\u3059\\u3002\\u5404\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3067\\u306F\\u3001\\u7D44\\u307F\\u5408\\u308F\\u305B\\u306B\\u5236\\u9650\\u304C\\u3042\\u308A\\u307E\\u3059\\u304C\\u30011 \\u3064\\u4EE5\\u4E0A\\u306E\\u7A2E\\u985E\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u901A\\u4FE1\\u3067\\u304D\\u307E\\u3059\\u3002

    \\u5404\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306B\\u5BFE\\u3057\\u3066\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u306E\\u7A2E\\u985E\\u3092\\u30C9\\u30E9\\u30C3\\u30B0 \\u30A2\\u30F3\\u30C9 \\u30C9\\u30ED\\u30C3\\u30D7\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.setup.successful=\\u30AF\\u30E9\\u30A6\\u30C9\\u304C\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002 -message.snapshot.schedule=\\u6B21\\u306E\\u30AA\\u30D7\\u30B7\\u30E7\\u30F3\\u304B\\u3089\\u9078\\u629E\\u3057\\u3066\\u30DD\\u30EA\\u30B7\\u30FC\\u306E\\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u9069\\u7528\\u3059\\u308B\\u3053\\u3068\\u306B\\u3088\\u308A\\u3001\\u5B9A\\u671F\\u30B9\\u30CA\\u30C3\\u30D7\\u30B7\\u30E7\\u30C3\\u30C8\\u306E\\u30B9\\u30B1\\u30B8\\u30E5\\u30FC\\u30EB\\u3092\\u30BB\\u30C3\\u30C8\\u30A2\\u30C3\\u30D7\\u3067\\u304D\\u307E\\u3059\\u3002 -message.specify.url=URL \\u3092\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 -message.step.1.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u307E\\u305F\\u306F ISO \\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 -message.step.1.desc=\\u65B0\\u3057\\u3044\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u7528\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002ISO \\u3092\\u30A4\\u30F3\\u30B9\\u30C8\\u30FC\\u30EB\\u3067\\u304D\\u308B\\u7A7A\\u767D\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u9078\\u629E\\u3059\\u308B\\u3053\\u3068\\u3082\\u3067\\u304D\\u307E\\u3059\\u3002 -message.step.2.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30B5\\u30FC\\u30D3\\u30B9 \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +message.no.network.support.configuration.not.true=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u304C\u6709\u52B9\u306A\u30BE\u30FC\u30F3\u304C\u7121\u3044\u305F\u3081\u3001\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6A5F\u80FD\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u624B\u9806 5. \u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 +message.no.network.support=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3068\u3057\u3066 vSphere \u3092\u9078\u629E\u3057\u307E\u3057\u305F\u304C\u3001\u3053\u306E\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306B\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6A5F\u80FD\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u624B\u9806 5. \u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 +message.no.projects.adminOnly=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u304C\u3042\u308A\u307E\u305B\u3093\u3002
    \u7BA1\u7406\u8005\u306B\u65B0\u3057\u3044\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u4F5C\u6210\u3092\u4F9D\u983C\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.no.projects=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u304C\u3042\u308A\u307E\u305B\u3093\u3002
    \u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30BB\u30AF\u30B7\u30E7\u30F3\u304B\u3089\u65B0\u3057\u3044\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u4F5C\u6210\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.number.clusters=

    \u30AF\u30E9\u30B9\u30BF\u30FC\u6570

    +message.number.hosts=

    \u30DB\u30B9\u30C8\u6570

    +message.number.pods=

    \u30DD\u30C3\u30C9\u6570

    +message.number.storage=

    \u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30DC\u30EA\u30E5\u30FC\u30E0\u6570

    +message.number.zones=

    \u30BE\u30FC\u30F3\u6570

    +message.pending.projects.1=\u4FDD\u7559\u4E2D\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u62DB\u5F85\u72B6\u304C\u3042\u308A\u307E\u3059\u3002 +message.pending.projects.2=\u8868\u793A\u3059\u308B\u306B\u306F\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30BB\u30AF\u30B7\u30E7\u30F3\u306B\u79FB\u52D5\u3057\u3066\u3001\u4E00\u89A7\u304B\u3089\u62DB\u5F85\u72B6\u3092\u9078\u629E\u3057\u307E\u3059\u3002 +message.please.add.at.lease.one.traffic.range=\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.please.proceed=\u6B21\u306E\u624B\u9806\u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 +message.please.select.a.configuration.for.your.zone=\u30BE\u30FC\u30F3\u306E\u69CB\u6210\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.please.select.a.different.public.and.management.network.before.removing=\u524A\u9664\u306E\u524D\u306B\u7570\u306A\u308B\u30D1\u30D6\u30EA\u30C3\u30AF\u304A\u3088\u3073\u7BA1\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.please.select.networks=\u4EEE\u60F3\u30DE\u30B7\u30F3\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.please.wait.while.zone.is.being.created=\u30BE\u30FC\u30F3\u304C\u4F5C\u6210\u3055\u308C\u308B\u307E\u3067\u3057\u3070\u3089\u304F\u304A\u5F85\u3061\u304F\u3060\u3055\u3044... +message.project.invite.sent=\u30E6\u30FC\u30B6\u30FC\u306B\u62DB\u5F85\u72B6\u304C\u9001\u4FE1\u3055\u308C\u307E\u3057\u305F\u3002\u30E6\u30FC\u30B6\u30FC\u304C\u62DB\u5F85\u3092\u627F\u8AFE\u3059\u308B\u3068\u3001\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306B\u8FFD\u52A0\u3055\u308C\u307E\u3059\u3002 +message.public.traffic.in.advanced.zone=\u30AF\u30E9\u30A6\u30C9\u5185\u306E VM \u304C\u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8\u306B\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u3068\u3001\u30D1\u30D6\u30EA\u30C3\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u304C\u751F\u6210\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u305F\u3081\u306B\u3001\u4E00\u822C\u306B\u30A2\u30AF\u30BB\u30B9\u53EF\u80FD\u306A IP \u30A2\u30C9\u30EC\u30B9\u3092\u5272\u308A\u5F53\u3066\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306F CloudStack \u306E\u30E6\u30FC\u30B6\u30FC \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4F7F\u7528\u3057\u3066\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3057\u3001\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3068\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u9593\u306B NAT \u3092\u5B9F\u88C5\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002

    \u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u305F\u3081\u306B\u3001\u5C11\u306A\u304F\u3068\u3082 1 \u3064 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.public.traffic.in.basic.zone=\u30AF\u30E9\u30A6\u30C9\u5185\u306E VM \u304C\u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8\u306B\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u304B\u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8\u7D4C\u7531\u3067\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8\u306B\u30B5\u30FC\u30D3\u30B9\u3092\u63D0\u4F9B\u3059\u308B\u3068\u3001\u30D1\u30D6\u30EA\u30C3\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u304C\u751F\u6210\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u305F\u3081\u306B\u3001\u4E00\u822C\u306B\u30A2\u30AF\u30BB\u30B9\u53EF\u80FD\u306A IP \u30A2\u30C9\u30EC\u30B9\u3092\u5272\u308A\u5F53\u3066\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u4F5C\u6210\u3059\u308B\u3068\u3001\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u307B\u304B\u306B\u3053\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u304B\u3089\u30A2\u30C9\u30EC\u30B9\u304C 1 \u3064\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B\u5272\u308A\u5F53\u3066\u3089\u308C\u307E\u3059\u3002\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u3068\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u9593\u306B\u3001\u9759\u7684\u306A 1 \u5BFE 1 \u306E NAT \u304C\u81EA\u52D5\u7684\u306B\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3055\u308C\u307E\u3059\u3002\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306F CloudStack \u306E\u30E6\u30FC\u30B6\u30FC \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4F7F\u7528\u3057\u3066\u8FFD\u52A0\u306E IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3057\u3001\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3068\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u306E\u9593\u306B\u9759\u7684 NAT \u3092\u5B9F\u88C5\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002 +message.remove.vpc=VPC \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.remove.vpn.access=\u6B21\u306E\u30E6\u30FC\u30B6\u30FC\u304B\u3089 VPN \u30A2\u30AF\u30BB\u30B9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.reset.password.warning.notPasswordEnabled=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306F\u3001\u30D1\u30B9\u30EF\u30FC\u30C9\u7BA1\u7406\u3092\u6709\u52B9\u306B\u305B\u305A\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F\u3002 +message.reset.password.warning.notStopped=\u73FE\u5728\u306E\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.reset.VPN.connection=VPN \u63A5\u7D9A\u3092\u30EA\u30BB\u30C3\u30C8\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.restart.mgmt.server=\u65B0\u3057\u3044\u8A2D\u5B9A\u3092\u6709\u52B9\u306B\u3059\u308B\u305F\u3081\u306B\u3001\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.restart.mgmt.usage.server=\u65B0\u3057\u3044\u8A2D\u5B9A\u3092\u6709\u52B9\u306B\u3059\u308B\u305F\u3081\u306B\u3001\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3068\u4F7F\u7528\u72B6\u6CC1\u6E2C\u5B9A\u30B5\u30FC\u30D0\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.restart.network=\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3067\u63D0\u4F9B\u3059\u308B\u3059\u3079\u3066\u306E\u30B5\u30FC\u30D3\u30B9\u304C\u4E2D\u65AD\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.restart.vpc=VPC \u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.security.group.usage=(\u8A72\u5F53\u3059\u308B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u3059\u3079\u3066\u9078\u629E\u3059\u308B\u306B\u306F\u3001Ctrl \u30AD\u30FC\u3092\u62BC\u3057\u306A\u304C\u3089\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044) +message.select.a.zone=\u30BE\u30FC\u30F3\u306F\u901A\u5E38\u3001\u5358\u4E00\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u306B\u76F8\u5F53\u3057\u307E\u3059\u3002\u8907\u6570\u306E\u30BE\u30FC\u30F3\u3092\u8A2D\u5B9A\u3057\u3001\u7269\u7406\u7684\u306B\u5206\u96E2\u3057\u3066\u5197\u9577\u6027\u3092\u6301\u305F\u305B\u308B\u3053\u3068\u306B\u3088\u308A\u3001\u30AF\u30E9\u30A6\u30C9\u306E\u4FE1\u983C\u6027\u3092\u9AD8\u3081\u307E\u3059\u3002 +message.select.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.select.iso=\u65B0\u3057\u3044\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E ISO \u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.select.item=\u9805\u76EE\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.select.security.groups=\u65B0\u3057\u3044\u4EEE\u60F3\u30DE\u30B7\u30F3\u306E\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.select.template=\u65B0\u3057\u3044\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.setup.physical.network.during.zone.creation.basic=\u57FA\u672C\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3059\u308B\u3068\u304D\u306F\u3001\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u4E0A\u306E NIC \u306B\u5BFE\u5FDC\u3059\u308B 1 \u3064\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3067\u304D\u307E\u3059\u3002\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306F\u3044\u304F\u3064\u304B\u306E\u7A2E\u985E\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u4F1D\u9001\u3057\u307E\u3059\u3002

    \u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306B\u307B\u304B\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u3092\u30C9\u30E9\u30C3\u30B0 \u30A2\u30F3\u30C9 \u30C9\u30ED\u30C3\u30D7\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002 +message.setup.physical.network.during.zone.creation=\u62E1\u5F35\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3059\u308B\u3068\u304D\u306F\u30011 \u3064\u4EE5\u4E0A\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u5404\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306F\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u4E0A\u306E 1 \u3064\u306E NIC \u306B\u5BFE\u5FDC\u3057\u307E\u3059\u3002\u5404\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3067\u306F\u3001\u7D44\u307F\u5408\u308F\u305B\u306B\u5236\u9650\u304C\u3042\u308A\u307E\u3059\u304C\u30011 \u3064\u4EE5\u4E0A\u306E\u7A2E\u985E\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u901A\u4FE1\u3067\u304D\u307E\u3059\u3002

    \u5404\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306B\u5BFE\u3057\u3066\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u3092\u30C9\u30E9\u30C3\u30B0 \u30A2\u30F3\u30C9 \u30C9\u30ED\u30C3\u30D7\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.setup.successful=\u30AF\u30E9\u30A6\u30C9\u304C\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3055\u308C\u307E\u3057\u305F\u3002 +message.snapshot.schedule=\u6B21\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u304B\u3089\u9078\u629E\u3057\u3066\u30DD\u30EA\u30B7\u30FC\u306E\u57FA\u672C\u8A2D\u5B9A\u3092\u9069\u7528\u3059\u308B\u3053\u3068\u306B\u3088\u308A\u3001\u5B9A\u671F\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u30B9\u30B1\u30B8\u30E5\u30FC\u30EB\u3092\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3067\u304D\u307E\u3059\u3002 +message.specify.url=URL \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044 +message.step.1.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u307E\u305F\u306F ISO \u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +message.step.1.desc=\u65B0\u3057\u3044\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u7528\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002ISO \u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3067\u304D\u308B\u7A7A\u767D\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u9078\u629E\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002 +message.step.2.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 message.step.2.desc= -message.step.3.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30C7\\u30A3\\u30B9\\u30AF \\u30AA\\u30D5\\u30A1\\u30EA\\u30F3\\u30B0\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 +message.step.3.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 message.step.3.desc= -message.step.4.continue=\\u7D9A\\u884C\\u3059\\u308B\\u306B\\u306F\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044 -message.step.4.desc=\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u304C\\u63A5\\u7D9A\\u3059\\u308B\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.storage.traffic=\\u30DB\\u30B9\\u30C8\\u3084 CloudStack \\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306A\\u3069\\u3001\\u7BA1\\u7406\\u30B5\\u30FC\\u30D0\\u30FC\\u3068\\u901A\\u4FE1\\u3059\\u308B CloudStack \\u306E\\u5185\\u90E8\\u30EA\\u30BD\\u30FC\\u30B9\\u9593\\u306E\\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3067\\u3059\\u3002\\u3053\\u3053\\u3067\\u30B9\\u30C8\\u30EC\\u30FC\\u30B8 \\u30C8\\u30E9\\u30D5\\u30A3\\u30C3\\u30AF\\u3092\\u69CB\\u6210\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.suspend.project=\\u3053\\u306E\\u30D7\\u30ED\\u30B8\\u30A7\\u30AF\\u30C8\\u3092\\u4E00\\u6642\\u505C\\u6B62\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.template.desc=VM \\u306E\\u8D77\\u52D5\\u306B\\u4F7F\\u7528\\u3067\\u304D\\u308B OS \\u30A4\\u30E1\\u30FC\\u30B8 -message.tooltip.dns.1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.tooltip.dns.2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E VM \\u3067\\u4F7F\\u7528\\u3059\\u308B 2 \\u756A\\u76EE\\u306E DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30BE\\u30FC\\u30F3\\u306E\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.tooltip.internal.dns.1=\\u30BE\\u30FC\\u30F3\\u5185\\u306E CloudStack \\u5185\\u90E8\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.tooltip.internal.dns.2=\\u30BE\\u30FC\\u30F3\\u5185\\u306E CloudStack \\u5185\\u90E8\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3067\\u4F7F\\u7528\\u3059\\u308B DNS \\u30B5\\u30FC\\u30D0\\u30FC\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002\\u30DD\\u30C3\\u30C9\\u306E\\u30D7\\u30E9\\u30A4\\u30D9\\u30FC\\u30C8 IP \\u30A2\\u30C9\\u30EC\\u30B9\\u304B\\u3089\\u3001\\u3053\\u306E\\u30B5\\u30FC\\u30D0\\u30FC\\u306B\\u901A\\u4FE1\\u3067\\u304D\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.tooltip.network.domain=DNS \\u30B5\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9\\u3067\\u3059\\u3002\\u3053\\u306E\\u30B5\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9\\u304B\\u3089\\u30B2\\u30B9\\u30C8 VM \\u3067\\u30A2\\u30AF\\u30BB\\u30B9\\u3059\\u308B\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u306E\\u30AB\\u30B9\\u30BF\\u30E0 \\u30C9\\u30E1\\u30A4\\u30F3\\u540D\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3059\\u3002 -message.tooltip.pod.name=\\u3053\\u306E\\u30DD\\u30C3\\u30C9\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 -message.tooltip.reserved.system.gateway=\\u30DD\\u30C3\\u30C9\\u5185\\u306E\\u30DB\\u30B9\\u30C8\\u306E\\u30B2\\u30FC\\u30C8\\u30A6\\u30A7\\u30A4\\u3067\\u3059\\u3002 -message.tooltip.reserved.system.netmask=\\u30DD\\u30C3\\u30C9\\u306E\\u30B5\\u30D6\\u30CD\\u30C3\\u30C8\\u3092\\u5B9A\\u7FA9\\u3059\\u308B\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30D7\\u30EC\\u30D5\\u30A3\\u30C3\\u30AF\\u30B9\\u3067\\u3059\\u3002CIDR \\u8868\\u8A18\\u3092\\u4F7F\\u7528\\u3057\\u307E\\u3059\\u3002 -message.tooltip.zone.name=\\u30BE\\u30FC\\u30F3\\u306E\\u540D\\u524D\\u3067\\u3059\\u3002 -message.update.os.preference=\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u306E OS \\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002\\u540C\\u69D8\\u306E\\u57FA\\u672C\\u8A2D\\u5B9A\\u3092\\u6301\\u3064\\u3059\\u3079\\u3066\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306F\\u3001\\u5225\\u306E\\u30DB\\u30B9\\u30C8\\u3092\\u9078\\u629E\\u3059\\u308B\\u524D\\u306B\\u307E\\u305A\\u3053\\u306E\\u30DB\\u30B9\\u30C8\\u306B\\u5272\\u308A\\u5F53\\u3066\\u3089\\u308C\\u307E\\u3059\\u3002 -message.update.resource.count=\\u3053\\u306E\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u30EA\\u30BD\\u30FC\\u30B9\\u6570\\u3092\\u66F4\\u65B0\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.update.ssl=\\u5404\\u30B3\\u30F3\\u30BD\\u30FC\\u30EB \\u30D7\\u30ED\\u30AD\\u30B7\\u306E\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3067\\u66F4\\u65B0\\u3059\\u308B\\u3001X.509 \\u6E96\\u62E0\\u306E\\u65B0\\u3057\\u3044 SSL \\u8A3C\\u660E\\u66F8\\u3092\\u9001\\u4FE1\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\: -message.validate.instance.name=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u540D\\u306F 63 \\u6587\\u5B57\\u4EE5\\u5185\\u3067\\u6307\\u5B9A\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002ASCII \\u6587\\u5B57\\u306E a\\uFF5Ez\\u3001A\\uFF5EZ\\u3001\\u6570\\u5B57\\u306E 0\\uFF5E9\\u3001\\u304A\\u3088\\u3073\\u30CF\\u30A4\\u30D5\\u30F3\\u306E\\u307F\\u3092\\u4F7F\\u7528\\u3067\\u304D\\u307E\\u3059\\u3002\\u6587\\u5B57\\u3067\\u59CB\\u307E\\u308A\\u3001\\u6587\\u5B57\\u307E\\u305F\\u306F\\u6570\\u5B57\\u3067\\u7D42\\u308F\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.virtual.network.desc=\\u30A2\\u30AB\\u30A6\\u30F3\\u30C8\\u306E\\u5C02\\u7528\\u4EEE\\u60F3\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3067\\u3059\\u3002\\u30D6\\u30ED\\u30FC\\u30C9\\u30AD\\u30E3\\u30B9\\u30C8 \\u30C9\\u30E1\\u30A4\\u30F3\\u306F VLAN \\u5185\\u306B\\u914D\\u7F6E\\u3055\\u308C\\u3001\\u30D1\\u30D6\\u30EA\\u30C3\\u30AF \\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3078\\u306E\\u30A2\\u30AF\\u30BB\\u30B9\\u306F\\u3059\\u3079\\u3066\\u4EEE\\u60F3\\u30EB\\u30FC\\u30BF\\u30FC\\u306B\\u3088\\u3063\\u3066\\u30EB\\u30FC\\u30C6\\u30A3\\u30F3\\u30B0\\u3055\\u308C\\u307E\\u3059\\u3002 -message.vm.create.template.confirm=\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3059\\u308B\\u3068 VM \\u304C\\u81EA\\u52D5\\u7684\\u306B\\u518D\\u8D77\\u52D5\\u3055\\u308C\\u307E\\u3059\\u3002 -message.vm.review.launch=\\u6B21\\u306E\\u60C5\\u5831\\u3092\\u53C2\\u7167\\u3057\\u3066\\u3001\\u4EEE\\u60F3\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u3092\\u6B63\\u3057\\u304F\\u8A2D\\u5B9A\\u3057\\u305F\\u3053\\u3068\\u3092\\u78BA\\u8A8D\\u3057\\u3066\\u304B\\u3089\\u8D77\\u52D5\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 -message.volume.create.template.confirm=\\u3053\\u306E\\u30C7\\u30A3\\u30B9\\u30AF \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0\\u306E\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u3092\\u4F5C\\u6210\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? \\u30DC\\u30EA\\u30E5\\u30FC\\u30E0 \\u30B5\\u30A4\\u30BA\\u306B\\u3088\\u3063\\u3066\\u306F\\u3001\\u30C6\\u30F3\\u30D7\\u30EC\\u30FC\\u30C8\\u306E\\u4F5C\\u6210\\u306B\\u306F\\u6570\\u5206\\u4EE5\\u4E0A\\u304B\\u304B\\u308B\\u53EF\\u80FD\\u6027\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002 -message.you.must.have.at.least.one.physical.network=\\u5C11\\u306A\\u304F\\u3068\\u3082 1 \\u3064\\u7269\\u7406\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u304C\\u5FC5\\u8981\\u3067\\u3059 -message.Zone.creation.complete=\\u30BE\\u30FC\\u30F3\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F -message.zone.creation.complete.would.you.like.to.enable.this.zone=\\u30BE\\u30FC\\u30F3\\u304C\\u4F5C\\u6210\\u3055\\u308C\\u307E\\u3057\\u305F\\u3002\\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -message.zone.no.network.selection=\\u9078\\u629E\\u3057\\u305F\\u30BE\\u30FC\\u30F3\\u3067\\u306F\\u3001\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u3092\\u9078\\u629E\\u3067\\u304D\\u307E\\u305B\\u3093\\u3002 -message.zone.step.1.desc=\\u30BE\\u30FC\\u30F3\\u306E\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF \\u30E2\\u30C7\\u30EB\\u3092\\u9078\\u629E\\u3057\\u3066\\u304F\\u3060\\u3055\\u3044\\u3002 +message.step.4.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +message.step.4.desc=\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u63A5\u7D9A\u3059\u308B\u30D7\u30E9\u30A4\u30DE\u30EA \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.storage.traffic=\u30DB\u30B9\u30C8\u3084 CloudStack \u30B7\u30B9\u30C6\u30E0 VM \u306A\u3069\u3001\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3068\u901A\u4FE1\u3059\u308B CloudStack \u306E\u5185\u90E8\u30EA\u30BD\u30FC\u30B9\u9593\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3067\u3059\u3002\u3053\u3053\u3067\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.suspend.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u4E00\u6642\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.template.desc=VM \u306E\u8D77\u52D5\u306B\u4F7F\u7528\u3067\u304D\u308B OS \u30A4\u30E1\u30FC\u30B8 +message.tooltip.dns.1=\u30BE\u30FC\u30F3\u5185\u306E VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.tooltip.dns.2=\u30BE\u30FC\u30F3\u5185\u306E VM \u3067\u4F7F\u7528\u3059\u308B 2 \u756A\u76EE\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.tooltip.internal.dns.1=\u30BE\u30FC\u30F3\u5185\u306E CloudStack \u5185\u90E8\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.tooltip.internal.dns.2=\u30BE\u30FC\u30F3\u5185\u306E CloudStack \u5185\u90E8\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.tooltip.network.domain=DNS \u30B5\u30D5\u30A3\u30C3\u30AF\u30B9\u3067\u3059\u3002\u3053\u306E\u30B5\u30D5\u30A3\u30C3\u30AF\u30B9\u304B\u3089\u30B2\u30B9\u30C8 VM \u3067\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30AB\u30B9\u30BF\u30E0 \u30C9\u30E1\u30A4\u30F3\u540D\u304C\u4F5C\u6210\u3055\u308C\u307E\u3059\u3002 +message.tooltip.pod.name=\u3053\u306E\u30DD\u30C3\u30C9\u306E\u540D\u524D\u3067\u3059\u3002 +message.tooltip.reserved.system.gateway=\u30DD\u30C3\u30C9\u5185\u306E\u30DB\u30B9\u30C8\u306E\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3067\u3059\u3002 +message.tooltip.reserved.system.netmask=\u30DD\u30C3\u30C9\u306E\u30B5\u30D6\u30CD\u30C3\u30C8\u3092\u5B9A\u7FA9\u3059\u308B\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9\u3067\u3059\u3002CIDR \u8868\u8A18\u3092\u4F7F\u7528\u3057\u307E\u3059\u3002 +message.tooltip.zone.name=\u30BE\u30FC\u30F3\u306E\u540D\u524D\u3067\u3059\u3002 +message.update.os.preference=\u3053\u306E\u30DB\u30B9\u30C8\u306E OS \u57FA\u672C\u8A2D\u5B9A\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u540C\u69D8\u306E\u57FA\u672C\u8A2D\u5B9A\u3092\u6301\u3064\u3059\u3079\u3066\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306F\u3001\u5225\u306E\u30DB\u30B9\u30C8\u3092\u9078\u629E\u3059\u308B\u524D\u306B\u307E\u305A\u3053\u306E\u30DB\u30B9\u30C8\u306B\u5272\u308A\u5F53\u3066\u3089\u308C\u307E\u3059\u3002 +message.update.resource.count=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30EA\u30BD\u30FC\u30B9\u6570\u3092\u66F4\u65B0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.update.ssl=\u5404\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3067\u66F4\u65B0\u3059\u308B\u3001X.509 \u6E96\u62E0\u306E\u65B0\u3057\u3044 SSL \u8A3C\u660E\u66F8\u3092\u9001\u4FE1\u3057\u3066\u304F\u3060\u3055\u3044\: +message.validate.instance.name=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u540D\u306F 63 \u6587\u5B57\u4EE5\u5185\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002ASCII \u6587\u5B57\u306E a\uFF5Ez\u3001A\uFF5EZ\u3001\u6570\u5B57\u306E 0\uFF5E9\u3001\u304A\u3088\u3073\u30CF\u30A4\u30D5\u30F3\u306E\u307F\u3092\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002\u6587\u5B57\u3067\u59CB\u307E\u308A\u3001\u6587\u5B57\u307E\u305F\u306F\u6570\u5B57\u3067\u7D42\u308F\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 +message.virtual.network.desc=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u5C02\u7528\u4EEE\u60F3\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3067\u3059\u3002\u30D6\u30ED\u30FC\u30C9\u30AD\u30E3\u30B9\u30C8 \u30C9\u30E1\u30A4\u30F3\u306F VLAN \u5185\u306B\u914D\u7F6E\u3055\u308C\u3001\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3078\u306E\u30A2\u30AF\u30BB\u30B9\u306F\u3059\u3079\u3066\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u306B\u3088\u3063\u3066\u30EB\u30FC\u30C6\u30A3\u30F3\u30B0\u3055\u308C\u307E\u3059\u3002 +message.vm.create.template.confirm=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3059\u308B\u3068 VM \u304C\u81EA\u52D5\u7684\u306B\u518D\u8D77\u52D5\u3055\u308C\u307E\u3059\u3002 +message.vm.review.launch=\u6B21\u306E\u60C5\u5831\u3092\u53C2\u7167\u3057\u3066\u3001\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u6B63\u3057\u304F\u8A2D\u5B9A\u3057\u305F\u3053\u3068\u3092\u78BA\u8A8D\u3057\u3066\u304B\u3089\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.volume.create.template.confirm=\u3053\u306E\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u30DC\u30EA\u30E5\u30FC\u30E0 \u30B5\u30A4\u30BA\u306B\u3088\u3063\u3066\u306F\u3001\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210\u306B\u306F\u6570\u5206\u4EE5\u4E0A\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 +message.you.must.have.at.least.one.physical.network=\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304C\u5FC5\u8981\u3067\u3059 +message.Zone.creation.complete=\u30BE\u30FC\u30F3\u304C\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F +message.zone.creation.complete.would.you.like.to.enable.this.zone=\u30BE\u30FC\u30F3\u304C\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F\u3002\u3053\u306E\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.zone.no.network.selection=\u9078\u629E\u3057\u305F\u30BE\u30FC\u30F3\u3067\u306F\u3001\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3067\u304D\u307E\u305B\u3093\u3002 +message.zone.step.1.desc=\u30BE\u30FC\u30F3\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 message.zone.step.2.desc=\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084Zone\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e5\u0085\u00a5\u00e5\u008a\u009b\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 message.zone.step.3.desc=\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084Pod\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e5\u0085\u00a5\u00e5\u008a\u009b\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 -message.zoneWizard.enable.local.storage=\\u8B66\\u544A\: \\u3053\\u306E\\u30BE\\u30FC\\u30F3\\u306E\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u5834\\u5408\\u306F\\u3001\\u30B7\\u30B9\\u30C6\\u30E0 VM \\u306E\\u8D77\\u52D5\\u5834\\u6240\\u306B\\u5FDC\\u3058\\u3066\\u6B21\\u306E\\u64CD\\u4F5C\\u304C\\u5FC5\\u8981\\u3067\\u3059\\u3002

    1. \\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3067\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001\\u30D7\\u30E9\\u30A4\\u30DE\\u30EA \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3092\\u4F5C\\u6210\\u3057\\u305F\\u5F8C\\u3067\\u30BE\\u30FC\\u30F3\\u306B\\u8FFD\\u52A0\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002\\u307E\\u305F\\u3001\\u7121\\u52B9\\u72B6\\u614B\\u306E\\u30BE\\u30FC\\u30F3\\u3092\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u3082\\u3042\\u308A\\u307E\\u3059\\u3002

    2. \\u30B7\\u30B9\\u30C6\\u30E0 VM \\u3092\\u30ED\\u30FC\\u30AB\\u30EB \\u30B9\\u30C8\\u30EC\\u30FC\\u30B8\\u3067\\u8D77\\u52D5\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308B\\u5834\\u5408\\u306F\\u3001system.vm.use.local.storage \\u3092 true \\u306B\\u8A2D\\u5B9A\\u3057\\u3066\\u304B\\u3089\\u30BE\\u30FC\\u30F3\\u3092\\u6709\\u52B9\\u306B\\u3059\\u308B\\u5FC5\\u8981\\u304C\\u3042\\u308A\\u307E\\u3059\\u3002


    \\u7D9A\\u884C\\u3057\\u3066\\u3082\\u3088\\u308D\\u3057\\u3044\\u3067\\u3059\\u304B? -mode=\\u30E2\\u30FC\\u30C9 -network.rate=\\u30CD\\u30C3\\u30C8\\u30EF\\u30FC\\u30AF\\u901F\\u5EA6 -notification.reboot.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u518D\\u8D77\\u52D5 -notification.start.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u8D77\\u52D5 -notification.stop.instance=\\u30A4\\u30F3\\u30B9\\u30BF\\u30F3\\u30B9\\u306E\\u505C\\u6B62 -side.by.side=\\u4E26\\u5217 -state.Accepted=\\u627F\\u8AFE\\u6E08\\u307F -state.Active=\\u30A2\\u30AF\\u30C6\\u30A3\\u30D6 -state.Allocated=\\u5272\\u308A\\u5F53\\u3066\\u6E08\\u307F -state.Allocating=\\u5272\\u308A\\u5F53\\u3066\\u4E2D -state.BackedUp=\\u30D0\\u30C3\\u30AF\\u30A2\\u30C3\\u30D7\\u6E08\\u307F -state.BackingUp=\\u30D0\\u30C3\\u30AF\\u30A2\\u30C3\\u30D7\\u4E2D -state.Completed=\\u5B8C\\u4E86 -state.Creating=\\u4F5C\\u6210\\u4E2D -state.Declined=\\u8F9E\\u9000 -state.Destroyed=\\u7834\\u68C4\\u6E08\\u307F -state.Disabled=\\u7121\\u52B9 -state.enabled=\\u6709\\u52B9 -state.Enabled=\\u6709\\u52B9 -state.Error=\\u30A8\\u30E9\\u30FC -state.Expunging=\\u62B9\\u6D88\\u4E2D -state.Migrating=\\u79FB\\u884C\\u4E2D -state.Pending=\\u4FDD\\u7559 -state.ready=\\u6E96\\u5099\\u5B8C\\u4E86 -state.Ready=\\u6E96\\u5099\\u5B8C\\u4E86 -state.Running=\\u5B9F\\u884C\\u4E2D -state.Starting=\\u958B\\u59CB\\u4E2D -state.Stopped=\\u505C\\u6B62\\u6E08\\u307F -state.Stopping=\\u505C\\u6B62\\u3057\\u3066\\u3044\\u307E\\u3059 -state.Suspended=\\u4E00\\u6642\\u505C\\u6B62 -ui.listView.filters.all=\\u3059\\u3079\\u3066 -ui.listView.filters.mine=\\u81EA\\u5206\\u306E\\u3082\\u306E +message.zoneWizard.enable.local.storage=\u8B66\u544A\: \u3053\u306E\u30BE\u30FC\u30F3\u306E\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u6709\u52B9\u306B\u3059\u308B\u5834\u5408\u306F\u3001\u30B7\u30B9\u30C6\u30E0 VM \u306E\u8D77\u52D5\u5834\u6240\u306B\u5FDC\u3058\u3066\u6B21\u306E\u64CD\u4F5C\u304C\u5FC5\u8981\u3067\u3059\u3002

    1. \u30B7\u30B9\u30C6\u30E0 VM \u3092\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3067\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u5834\u5408\u306F\u3001\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4F5C\u6210\u3057\u305F\u5F8C\u3067\u30BE\u30FC\u30F3\u306B\u8FFD\u52A0\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u307E\u305F\u3001\u7121\u52B9\u72B6\u614B\u306E\u30BE\u30FC\u30F3\u3092\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u3082\u3042\u308A\u307E\u3059\u3002

    2. \u30B7\u30B9\u30C6\u30E0 VM \u3092\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8\u3067\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u5834\u5408\u306F\u3001system.vm.use.local.storage \u3092 true \u306B\u8A2D\u5B9A\u3057\u3066\u304B\u3089\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002


    \u7D9A\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +mode=\u30E2\u30FC\u30C9 +network.rate=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u901F\u5EA6 +notification.reboot.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u518D\u8D77\u52D5 +notification.start.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u8D77\u52D5 +notification.stop.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u505C\u6B62 +side.by.side=\u4E26\u5217 +state.Accepted=\u627F\u8AFE\u6E08\u307F +state.Active=\u30A2\u30AF\u30C6\u30A3\u30D6 +state.Allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F +state.Allocating=\u5272\u308A\u5F53\u3066\u4E2D +state.BackedUp=\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u6E08\u307F +state.BackingUp=\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u4E2D +state.Completed=\u5B8C\u4E86 +state.Creating=\u4F5C\u6210\u4E2D +state.Declined=\u8F9E\u9000 +state.Destroyed=\u7834\u68C4\u6E08\u307F +state.Disabled=\u7121\u52B9 +state.enabled=\u6709\u52B9 +state.Enabled=\u6709\u52B9 +state.Error=\u30A8\u30E9\u30FC +state.Expunging=\u62B9\u6D88\u4E2D +state.Migrating=\u79FB\u884C\u4E2D +state.Pending=\u4FDD\u7559 +state.ready=\u6E96\u5099\u5B8C\u4E86 +state.Ready=\u6E96\u5099\u5B8C\u4E86 +state.Running=\u5B9F\u884C\u4E2D +state.Starting=\u958B\u59CB\u4E2D +state.Stopped=\u505C\u6B62\u6E08\u307F +state.Stopping=\u505C\u6B62\u3057\u3066\u3044\u307E\u3059 +state.Suspended=\u4E00\u6642\u505C\u6B62 +ui.listView.filters.all=\u3059\u3079\u3066 +ui.listView.filters.mine=\u81EA\u5206\u306E\u3082\u306E From 299cccf779f75c3ba04d9ec7303bed88394c3562 Mon Sep 17 00:00:00 2001 From: Edison Su Date: Wed, 24 Apr 2013 18:31:45 -0700 Subject: [PATCH 405/607] fix copy/paste bug --- scripts/vm/network/security_group.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/vm/network/security_group.py b/scripts/vm/network/security_group.py index 49d9be68ddd..6c12409b0cb 100755 --- a/scripts/vm/network/security_group.py +++ b/scripts/vm/network/security_group.py @@ -275,7 +275,7 @@ def remove_secip_log_for_vm(vmName): try: os.remove(logfilename) except: - util.SMlog("Failed to delete rule log file " + logfilename) + logging.debug("Failed to delete rule log file " + logfilename) result = False return result From 33006ff1978dda435f717ff5e9125c9a522af4d4 Mon Sep 17 00:00:00 2001 From: Marcus Sorensen Date: Wed, 24 Apr 2013 22:55:50 -0600 Subject: [PATCH 406/607] Summary: Don't add secondary storage to KVM heartbeat BUG-ID: CLOUDSTACK-2173 Bugfix-for: 4.2 Signed-off-by: Marcus Sorensen 1366865750 -0600 --- .../cloud/hypervisor/kvm/resource/KVMHAMonitor.java | 7 ++++--- .../kvm/storage/KVMStoragePoolManager.java | 12 ++++++++++-- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/KVMHAMonitor.java b/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/KVMHAMonitor.java index d1470d62519..0e4d9eea8ac 100644 --- a/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/KVMHAMonitor.java +++ b/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/KVMHAMonitor.java @@ -55,9 +55,10 @@ public class KVMHAMonitor extends KVMHABase implements Runnable { public void removeStoragePool(String uuid) { synchronized (_storagePool) { NfsStoragePool pool = this._storagePool.get(uuid); - Script.runSimpleBashScript("umount " + pool._mountDestPath); - s_logger.debug("attempted to umount '" + pool._mountDestPath + "'"); - this._storagePool.remove(uuid); + if (pool != null) { + Script.runSimpleBashScript("umount " + pool._mountDestPath); + this._storagePool.remove(uuid); + } } } diff --git a/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/KVMStoragePoolManager.java b/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/KVMStoragePoolManager.java index f5719baaf2a..31d491c9494 100644 --- a/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/KVMStoragePoolManager.java +++ b/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/storage/KVMStoragePoolManager.java @@ -94,18 +94,26 @@ public class KVMStoragePoolManager { protocol = StoragePoolType.NetworkFilesystem; } - return createStoragePool(uuid, sourceHost, 0, sourcePath, "", protocol); + // secondary storage registers itself through here + return createStoragePool(uuid, sourceHost, 0, sourcePath, "", protocol, false); } public KVMStoragePool createStoragePool( String name, String host, int port, String path, String userInfo, StoragePoolType type) { + // primary storage registers itself through here + return createStoragePool(name, host, port, path, userInfo, type, true); + } + + private KVMStoragePool createStoragePool( String name, String host, int port, + String path, String userInfo, + StoragePoolType type, boolean primaryStorage) { StorageAdaptor adaptor = getStorageAdaptor(type); KVMStoragePool pool = adaptor.createStoragePool(name, host, port, path, userInfo, type); // LibvirtStorageAdaptor-specific statement - if (type == StoragePoolType.NetworkFilesystem) { + if (type == StoragePoolType.NetworkFilesystem && primaryStorage) { KVMHABase.NfsStoragePool nfspool = new KVMHABase.NfsStoragePool( pool.getUuid(), host, path, pool.getLocalPath(), PoolType.PrimaryStorage); From 96837eda0f869859058f977b7e8b9e8918b597ce Mon Sep 17 00:00:00 2001 From: Radhika PC Date: Thu, 25 Apr 2013 11:16:44 +0530 Subject: [PATCH 407/607] CLOUDSTACK-1567 --- docs/en-US/delete-event-alerts.xml | 47 ++++++++++++++++++++++++++++++ docs/en-US/events.xml | 3 +- 2 files changed, 48 insertions(+), 2 deletions(-) create mode 100644 docs/en-US/delete-event-alerts.xml diff --git a/docs/en-US/delete-event-alerts.xml b/docs/en-US/delete-event-alerts.xml new file mode 100644 index 00000000000..3eebcb727a0 --- /dev/null +++ b/docs/en-US/delete-event-alerts.xml @@ -0,0 +1,47 @@ + + +%BOOK_ENTITIES; +]> + + +
    + Deleting and Archiving Events and Alerts + &PRODUCT; provides you the ability to delete or archive the existing alerts and events that + you no longer want to implement. You can regularly delete or archive any alerts or events that + you cannot, or do not want to resolve from the database. + You can delete or archive individual alerts or events either directly by using the Quickview + or by using the Details page. If you want to delete multiple alerts or events at the same time, + you can use the respective context menu. You can delete alerts or events by category for a time + period. + + Archived alerts or events cannot be viewed in the UI, or by using the API. They are + maintained in the database for auditing or compliance purposes. + + + Permissions + Consider the following: + + + + The root admin can delete or archive one or multiple alerts or events. + + + The domain admin or end user can delete or archive one or multiple events. + + +
    diff --git a/docs/en-US/events.xml b/docs/en-US/events.xml index 49ef86e62b5..4a1445873a4 100644 --- a/docs/en-US/events.xml +++ b/docs/en-US/events.xml @@ -11,9 +11,7 @@ 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 @@ -34,4 +32,5 @@ + From 79cc241c64df1451ce2413b206f6723e3e58de18 Mon Sep 17 00:00:00 2001 From: Mice Xia Date: Thu, 25 Apr 2013 14:23:36 +0800 Subject: [PATCH 408/607] fix CLOUDSTACK-2157 On VMWare ESXi host deployment: Expunged VMs are not getting cleaned up from the host --- .../cloud/agent/api/UnregisterVMCommand.java | 34 ++++++++++++++++ .../com/cloud/hypervisor/HypervisorGuru.java | 9 +++++ .../com/cloud/hypervisor/guru/VMwareGuru.java | 9 +++++ .../vmware/resource/VmwareResource.java | 40 +++++++++++++++++++ .../cloud/hypervisor/HypervisorGuruBase.java | 5 +++ .../src/com/cloud/vm/UserVmManagerImpl.java | 1 + .../cloud/vm/VirtualMachineManagerImpl.java | 24 +++++++++++ 7 files changed, 122 insertions(+) create mode 100644 api/src/com/cloud/agent/api/UnregisterVMCommand.java diff --git a/api/src/com/cloud/agent/api/UnregisterVMCommand.java b/api/src/com/cloud/agent/api/UnregisterVMCommand.java new file mode 100644 index 00000000000..428ffea1600 --- /dev/null +++ b/api/src/com/cloud/agent/api/UnregisterVMCommand.java @@ -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; + } +} diff --git a/api/src/com/cloud/hypervisor/HypervisorGuru.java b/api/src/com/cloud/hypervisor/HypervisorGuru.java index b4a0b06a7af..eab4e4e4ebd 100644 --- a/api/src/com/cloud/hypervisor/HypervisorGuru.java +++ b/api/src/com/cloud/hypervisor/HypervisorGuru.java @@ -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 finalizeExpunge(VirtualMachine vm); } diff --git a/plugins/hypervisors/vmware/src/com/cloud/hypervisor/guru/VMwareGuru.java b/plugins/hypervisors/vmware/src/com/cloud/hypervisor/guru/VMwareGuru.java index 122ba3b9dba..ee1b3245126 100644 --- a/plugins/hypervisors/vmware/src/com/cloud/hypervisor/guru/VMwareGuru.java +++ b/plugins/hypervisors/vmware/src/com/cloud/hypervisor/guru/VMwareGuru.java @@ -36,6 +36,7 @@ import com.cloud.agent.api.Command; import com.cloud.agent.api.CreatePrivateTemplateFromSnapshotCommand; import com.cloud.agent.api.CreatePrivateTemplateFromVolumeCommand; import com.cloud.agent.api.CreateVolumeFromSnapshotCommand; +import com.cloud.agent.api.UnregisterVMCommand; import com.cloud.agent.api.storage.CopyVolumeCommand; import com.cloud.agent.api.storage.PrimaryStorageDownloadCommand; import com.cloud.agent.api.to.NicTO; @@ -353,4 +354,12 @@ public class VMwareGuru extends HypervisorGuruBase implements HypervisorGuru { return tokens[0] + "@" + vCenterIp; } + + @Override + public List finalizeExpunge(VirtualMachine vm) { + UnregisterVMCommand unregisterVMCommand = new UnregisterVMCommand(vm.getInstanceName()); + List commands = new ArrayList(); + commands.add(unregisterVMCommand); + return commands; + } } diff --git a/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java b/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java index 3dc23ccb060..dbcb31877da 100755 --- a/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java +++ b/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java @@ -73,6 +73,7 @@ import com.cloud.agent.api.CreateVolumeFromSnapshotCommand; import com.cloud.agent.api.DeleteStoragePoolCommand; import com.cloud.agent.api.DeleteVMSnapshotAnswer; import com.cloud.agent.api.DeleteVMSnapshotCommand; +import com.cloud.agent.api.UnregisterVMCommand; import com.cloud.agent.api.GetDomRVersionAnswer; import com.cloud.agent.api.GetDomRVersionCmd; import com.cloud.agent.api.GetHostStatsAnswer; @@ -473,6 +474,8 @@ public class VmwareResource implements StoragePoolResource, ServerResource, Vmwa answer = execute((CheckS2SVpnConnectionsCommand) cmd); } else if (clz == ResizeVolumeCommand.class) { return execute((ResizeVolumeCommand) cmd); + } else if (clz == UnregisterVMCommand.class) { + return execute((UnregisterVMCommand) cmd); } else { answer = Answer.createUnsupportedCommandAnswer(cmd); } @@ -3689,6 +3692,43 @@ public class VmwareResource implements StoragePoolResource, ServerResource, Vmwa } } + protected Answer execute(UnregisterVMCommand cmd){ + if (s_logger.isInfoEnabled()) { + s_logger.info("Executing resource UnregisterVMCommand: " + _gson.toJson(cmd)); + } + + VmwareContext context = getServiceContext(); + VmwareHypervisorHost hyperHost = getHyperHost(context); + try { + VirtualMachineMO vmMo = hyperHost.findVmOnHyperHost(cmd.getVmName()); + if (vmMo != null) { + try { + context.getService().unregisterVM(vmMo.getMor()); + return new Answer(cmd, true, "unregister succeeded"); + } catch(Exception e) { + s_logger.warn("We are not able to unregister VM " + VmwareHelper.getExceptionMessage(e)); + } + + String msg = "Expunge failed in vSphere. vm: " + cmd.getVmName(); + s_logger.warn(msg); + return new Answer(cmd, false, msg); + } else { + String msg = "Unable to find the VM in vSphere to unregister, assume it is already removed. VM: " + cmd.getVmName(); + s_logger.warn(msg); + return new Answer(cmd, true, msg); + } + } catch (Exception e) { + if (e instanceof RemoteException) { + s_logger.warn("Encounter remote exception to vCenter, invalidate VMware session context"); + invalidateServiceContext(); + } + + String msg = "UnregisterVMCommand failed due to " + VmwareHelper.getExceptionMessage(e); + s_logger.error(msg); + return new Answer(cmd, false, msg); + } + } + @Override public Answer execute(DestroyCommand cmd) { if (s_logger.isInfoEnabled()) { diff --git a/server/src/com/cloud/hypervisor/HypervisorGuruBase.java b/server/src/com/cloud/hypervisor/HypervisorGuruBase.java index d77796da300..ca1644a4281 100644 --- a/server/src/com/cloud/hypervisor/HypervisorGuruBase.java +++ b/server/src/com/cloud/hypervisor/HypervisorGuruBase.java @@ -129,4 +129,9 @@ public abstract class HypervisorGuruBase extends AdapterBase implements Hypervis public long getCommandHostDelegation(long hostId, Command cmd) { return hostId; } + + @Override + public List finalizeExpunge(VirtualMachine vm) { + return null; + } } diff --git a/server/src/com/cloud/vm/UserVmManagerImpl.java b/server/src/com/cloud/vm/UserVmManagerImpl.java index f24288a4415..ebc5757770e 100755 --- a/server/src/com/cloud/vm/UserVmManagerImpl.java +++ b/server/src/com/cloud/vm/UserVmManagerImpl.java @@ -1554,6 +1554,7 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use } } finally { scanLock.releaseRef(); + UserContext.unregisterContext(); } } } diff --git a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java index c1f3f1533aa..252fc99ca0d 100755 --- a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java +++ b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java @@ -24,6 +24,7 @@ import java.util.Collections; import java.util.Date; import java.util.HashMap; import java.util.HashSet; +import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; @@ -434,6 +435,29 @@ public class VirtualMachineManagerImpl extends ManagerBase implements VirtualMac //remove the overcommit detials from the uservm details _uservmDetailsDao.deleteDetails(vm.getId()); + // send hypervisor-dependent commands before removing + HypervisorGuru hvGuru = _hvGuruMgr.getGuru(vm.getHypervisorType()); + List finalizeExpungeCommands = hvGuru.finalizeExpunge(vm); + if(finalizeExpungeCommands != null && finalizeExpungeCommands.size() > 0){ + Long hostId = vm.getHostId() != null ? vm.getHostId() : vm.getLastHostId(); + if(hostId != null){ + Commands cmds = new Commands(OnError.Stop); + for (Command command : finalizeExpungeCommands) { + cmds.addCommand(command); + } + _agentMgr.send(hostId, cmds); + if(!cmds.isSuccessful()){ + for (Answer answer : cmds.getAnswers()){ + if(answer != null && !answer.getResult()){ + s_logger.warn("Failed to expunge vm due to: " + answer.getDetails()); + break; + } + } + return false; + } + } + } + if (s_logger.isDebugEnabled()) { s_logger.debug("Expunged " + vm); } From 0c1d2680a547c0b4352a76441ddec75a989fe30a Mon Sep 17 00:00:00 2001 From: Mice Xia Date: Thu, 25 Apr 2013 14:24:30 +0800 Subject: [PATCH 409/607] remove a debug log in vmwareResource --- .../com/cloud/hypervisor/vmware/resource/VmwareResource.java | 4 ---- 1 file changed, 4 deletions(-) diff --git a/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java b/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java index dbcb31877da..99ad1ca60b2 100755 --- a/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java +++ b/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java @@ -2856,10 +2856,6 @@ public class VmwareResource implements StoragePoolResource, ServerResource, Vmwa vmMo.setCustomFieldValue(CustomFieldConstants.CLOUD_NIC_MASK, "0"); if (getVmState(vmMo) != State.Stopped) { - - // before we stop VM, remove all possible snapshots on the VM to let - // disk chain be collapsed - s_logger.info("Remove all snapshot before stopping VM " + cmd.getVmName()); if (vmMo.safePowerOff(_shutdown_waitMs)) { state = State.Stopped; return new StopAnswer(cmd, "Stop VM " + cmd.getVmName() + " Succeed", 0, true); From c8bfbfda31ce0c27e73050231e1d2ec47be6956b Mon Sep 17 00:00:00 2001 From: Pranav Saxena Date: Thu, 25 Apr 2013 12:33:24 +0530 Subject: [PATCH 410/607] CLOUDSTACK-1903:Delete event/alerts date parameter handling --- ui/scripts/events.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ui/scripts/events.js b/ui/scripts/events.js index 3b6874c6274..0e72eda5974 100644 --- a/ui/scripts/events.js +++ b/ui/scripts/events.js @@ -73,7 +73,7 @@ $.extend(data, { type:args.data.type }); if(args.data.date != "") - $.extend(data, {date:args.data.date }); + $.extend(data, {olderthan:args.data.date }); $.ajax({ @@ -118,7 +118,7 @@ $.extend(data, { type:args.data.type }); if(args.data.date != "") - $.extend(data, {date:args.data.date }); + $.extend(data, {olderthan:args.data.date }); $.ajax({ @@ -359,7 +359,7 @@ $.extend(data, { type:args.data.type }); if(args.data.date != "") - $.extend(data, {date:args.data.date }); + $.extend(data, {olderthan:args.data.date }); $.ajax({ @@ -404,7 +404,7 @@ $.extend(data, { type:args.data.type }); if(args.data.date != "") - $.extend(data, {date:args.data.date }); + $.extend(data, {olderthan:args.data.date }); $.ajax({ From 08f6a24d193fbcd5c85b9aa25871c023b3da5682 Mon Sep 17 00:00:00 2001 From: Milamber Date: Thu, 25 Apr 2013 08:42:28 +0000 Subject: [PATCH 411/607] Update the chinese (zh_CN) resource file for Web UI. 100% translate. Thanks to Gavin Lee. --- .../resources/messages_zh_CN.properties | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/client/WEB-INF/classes/resources/messages_zh_CN.properties b/client/WEB-INF/classes/resources/messages_zh_CN.properties index 1f22105b068..f62439d460d 100644 --- a/client/WEB-INF/classes/resources/messages_zh_CN.properties +++ b/client/WEB-INF/classes/resources/messages_zh_CN.properties @@ -229,6 +229,9 @@ label.action.update.OS.preference.processing=\u6b63\u5728\u66f4\u65b0\u64cd\u4f5 label.action.update.OS.preference=\u66f4\u65b0\u64cd\u4f5c\u7cfb\u7edf\u9996\u9009\u9879 label.action.update.resource.count.processing=\u6b63\u5728\u66f4\u65b0\u8d44\u6e90\u6570\u91cf... label.action.update.resource.count=\u66f4\u65b0\u8d44\u6e90\u6570\u91cf +label.action.vmsnapshot.create=\u6293\u53d6\u865a\u673a\u5feb\u7167 +label.action.vmsnapshot.delete=\u5220\u9664\u865a\u673a\u5feb\u7167 +label.action.vmsnapshot.revert=\u6062\u590d\u5230\u865a\u673a\u5feb\u7167 label.activate.project=\u6fc0\u6d3b\u9879\u76ee label.active.sessions=\u6d3b\u52a8\u4f1a\u8bdd label.add.accounts.to=\u6dfb\u52a0\u5e10\u6237\u81f3 @@ -236,6 +239,7 @@ label.add.accounts=\u6dfb\u52a0\u5e10\u6237 label.add.account.to.project=\u5411\u9879\u76ee\u4e2d\u6dfb\u52a0\u5e10\u6237 label.add.account=\u6dfb\u52a0\u5e10\u6237 label.add.ACL=\u6dfb\u52a0 ACL +label.add.BigSwitchVns.device=\u6dfb\u52a0BigSwitch Vns\u63a7\u5236\u5668 label.add.by.cidr=\u6309 CIDR \u6dfb\u52a0 label.add.by.group=\u6309\u7ec4\u6dfb\u52a0 label.add.by=\u6dfb\u52a0\u65b9\u5f0f @@ -277,6 +281,7 @@ label.add.physical.network=\u6dfb\u52a0\u7269\u7406\u7f51\u7edc label.add.pod=\u6dfb\u52a0\u63d0\u4f9b\u70b9 label.add.port.forwarding.rule=\u6dfb\u52a0\u7aef\u53e3\u8f6c\u53d1\u89c4\u5219 label.add.primary.storage=\u6dfb\u52a0\u4e3b\u5b58\u50a8 +label.add.region=\u6dfb\u52a0\u533a\u57df label.add.resources=\u6dfb\u52a0\u8d44\u6e90 label.add.route=\u6dfb\u52a0\u8def\u7531 label.add.rule=\u6dfb\u52a0\u89c4\u5219 @@ -321,6 +326,8 @@ label.assign=\u5206\u914d label.associated.network.id=\u5df2\u5173\u8054\u7f51\u7edc ID label.associated.network=\u5173\u8054\u7f51\u7edc label.attached.iso=\u5df2\u9644\u52a0 ISO +label.author.email=\u4f5c\u8005\u90ae\u7bb1 +label.author.name=\u4f5c\u8005\u59d3\u540d label.availability=\u53ef\u7528\u6027 label.availability.zone=\u53ef\u7528\u533a\u57df label.available.public.ips=\u53ef\u7528\u516c\u7528 IP \u5730\u5740 @@ -329,6 +336,7 @@ label.back=\u8fd4\u56de label.bandwidth=\u5e26\u5bbd label.basic.mode=\u57fa\u672c\u6a21\u5f0f label.basic=\u57fa\u672c +label.bigswitch.controller.address=BigSwitch Vns \u63a7\u5236\u5668\u5730\u5740 label.bootable=\u53ef\u542f\u52a8 label.broadcast.domain.range=\u5e7f\u64ad\u57df\u8303\u56f4 label.broadcast.domain.type=\u5e7f\u64ad\u57df\u7c7b\u578b @@ -392,6 +400,7 @@ label.cpu.allocated.for.VMs=\u5df2\u5206\u914d\u7ed9 VM \u7684 CPU label.cpu.allocated=\u5df2\u5206\u914d\u7684 CPU label.CPU.cap=CPU \u4e0a\u9650 label.cpu=CPU +label.cpu.limits=CPU\u9650\u5236 label.cpu.mhz=CPU (MHz) label.cpu.utilized=CPU \u5229\u7528\u7387 label.created.by.system=\u7531\u7cfb\u7edf\u521b\u5efa @@ -412,6 +421,7 @@ label.dedicated=\u4e13\u7528 label.default=\u9ed8\u8ba4\u503c label.default.use=\u9ed8\u8ba4\u4f7f\u7528 label.default.view=\u9ed8\u8ba4\u89c6\u56fe +label.delete.BigSwitchVns=\u79fb\u9664BigSwitch Vns\u63a7\u5236\u5668 label.delete.F5=\u5220\u9664 F5 label.delete.gateway=\u5220\u9664\u7f51\u5173 label.delete.NetScaler=\u5220\u9664 NetScaler @@ -497,6 +507,7 @@ label.ESP.lifetime=ESP \u4f7f\u7528\u671f\u9650(\u7b2c\u4e8c\u9636\u6bb5) label.ESP.policy=ESP \u7b56\u7565 label.esx.host=ESX/ESXi \u4e3b\u673a label.example=\u793a\u4f8b +label.external.link=\u5916\u90e8\u94fe\u63a5 label.f5=F5 label.failed=\u5931\u8d25 label.featured=\u7cbe\u9009 @@ -644,10 +655,14 @@ label.management.ips=\u7ba1\u7406\u7c7b IP \u5730\u5740 label.management=\u7ba1\u7406 label.manage.resources=\u7ba1\u7406\u8d44\u6e90 label.manage=\u6258\u7ba1 +label.max.cpus=\u6700\u5927CPU\u6838\u5fc3\u6570 label.max.guest.limit=\u6700\u5927\u6765\u5bbe\u6570\u9650\u5236 label.maximum=\u6700\u5927\u503c +label.max.memory=\u6700\u5927\u5185\u5b58\u6570(\u5146\u5b57\u8282) label.max.networks=\u6700\u5927\u7f51\u7edc\u6570 +label.max.primary.storage=\u6700\u5927\u4e3b\u5b58\u50a8(G\u5b57\u8282) label.max.public.ips=\u6700\u5927\u516c\u7528 IP \u6570 +label.max.secondary.storage=\u6700\u5927\u4e8c\u7ea7\u5b58\u50a8(G\u5b57\u8282) label.max.snapshots=\u6700\u5927\u5feb\u7167\u6570 label.max.templates=\u6700\u5927\u6a21\u677f\u6570 label.max.vms=\u6700\u5927\u7528\u6237 VM \u6570 @@ -655,6 +670,7 @@ label.max.volumes=\u6700\u5927\u5377\u6570 label.max.vpcs=\u6700\u591aVPC\u5c42\u6570 label.may.continue=\u60a8\u73b0\u5728\u53ef\u4ee5\u7ee7\u7eed\u8fdb\u884c\u64cd\u4f5c\u3002 label.memory.allocated=\u5df2\u5206\u914d\u7684\u5185\u5b58 +label.memory.limits=\u5185\u5b58\u9650\u5236(\u5146\u5b57\u8282) label.memory.mb=\u5185\u5b58(MB) label.memory.total=\u5185\u5b58\u603b\u91cf label.memory=\u5185\u5b58 @@ -685,6 +701,7 @@ label.menu.my.templates=\u6211\u7684\u6a21\u677f label.menu.network.offerings=\u7f51\u7edc\u65b9\u6848 label.menu.network=\u7f51\u7edc label.menu.physical.resources=\u7269\u7406\u8d44\u6e90 +label.menu.regions=\u533a\u57df label.menu.running.instances=\u6b63\u5728\u8fd0\u884c\u7684\u5b9e\u4f8b label.menu.security.groups=\u5b89\u5168\u5206\u7ec4 label.menu.service.offerings=\u670d\u52a1\u63d0\u4f9b @@ -804,6 +821,8 @@ label.PING.dir=PING \u76ee\u5f55 label.PING.storage.IP=PING \u5b58\u50a8 IP label.please.specify.netscaler.info=\u8bf7\u6307\u5b9a Netscaler \u4fe1\u606f label.please.wait=\u8bf7\u7a0d\u5019 +label.plugin.details=\u63d2\u4ef6\u8be6\u7ec6\u4fe1\u606f +label.plugins=\u63d2\u4ef6 label.pod.name=\u63d0\u4f9b\u70b9\u540d\u79f0 label.pods=\u63d0\u4f9b\u70b9 label.pod=\u63d0\u4f9b\u70b9 @@ -816,6 +835,7 @@ label.prev=\u4e0a\u4e00\u9875 label.primary.allocated=\u5df2\u5206\u914d\u7684\u4e3b\u5b58\u50a8 label.primary.network=\u4e3b\u7f51\u7edc label.primary.storage.count=\u4e3b\u5b58\u50a8\u6c60 +label.primary.storage.limits=\u4e3b\u5b58\u50a8\u9650\u5236(G\u5b57\u8282) label.primary.storage=\u4e3b\u5b58\u50a8 label.primary.used=\u5df2\u4f7f\u7528\u7684\u4e3b\u5b58\u50a8 label.private.Gateway=\u4e13\u7528\u7f51\u5173 @@ -853,6 +873,7 @@ label.redundant.router.capability=\u5197\u4f59\u8def\u7531\u5668\u529f\u80fd label.redundant.router=\u5197\u4f59\u8def\u7531\u5668 label.redundant.state=\u5197\u4f59\u72b6\u6001 label.refresh=\u5237\u65b0 +label.region=\u533a\u57df label.related=\u76f8\u5173\u8054 label.remind.later=\u4ee5\u540e\u63d0\u9192\u6211 label.remove.ACL=\u5220\u9664 ACL @@ -862,6 +883,7 @@ label.remove.ingress.rule=\u5220\u9664\u5165\u53e3\u89c4\u5219 label.remove.ip.range=\u5220\u9664 IP \u8303\u56f4 label.remove.pf=\u5220\u9664\u7aef\u53e3\u8f6c\u53d1\u89c4\u5219 label.remove.project.account=\u4ece\u9879\u76ee\u4e2d\u5220\u9664\u5e10\u6237 +label.remove.region=\u79fb\u9664\u533a\u57df label.remove.rule=\u5220\u9664\u89c4\u5219 label.remove.static.nat.rule=\u5220\u9664\u9759\u6001 NAT \u89c4\u5219 label.remove.static.route=\u5220\u9664\u9759\u6001\u8def\u7531 @@ -909,6 +931,7 @@ label.saving.processing=\u6b63\u5728\u4fdd\u5b58... label.scope=\u8303\u56f4 label.search=\u641c\u7d22 label.secondary.storage.count=\u8f85\u52a9\u5b58\u50a8\u6c60 +label.secondary.storage.limits=\u4e8c\u7ea7\u5b58\u50a8\u9650\u5236(G\u5b57\u8282) label.secondary.storage=\u4e8c\u7ea7\u5b58\u50a8 label.secondary.storage.vm=\u8f85\u52a9\u5b58\u50a8 VM label.secondary.used=\u5df2\u4f7f\u7528\u7684\u8f85\u52a9\u5b58\u50a8 @@ -1060,6 +1083,7 @@ label.used=\u5df2\u4f7f\u7528 label.username=\u7528\u6237\u540d label.users=\u666e\u901a\u7528\u6237 label.user=\u7528\u6237 +label.use.vm.ip=\u4f7f\u7528\u865a\u673aIP\: label.value=\u503c label.vcdcname=vCenter DC \u540d\u79f0 label.vcenter.cluster=vCenter \u7fa4\u96c6 @@ -1092,7 +1116,11 @@ label.vmfs=VMFS label.vm.name=VM \u540d\u79f0 label.vm.reboot=\u91cd\u65b0\u542f\u52a8 label.VMs.in.tier=\u5c42\u4e2d\u7684 VM +label.vmsnapshot.current=\u5f53\u524d\u6700\u65b0 +label.vmsnapshot.memory=\u5236\u4f5c\u5185\u5b58\u5feb\u7167 +label.vmsnapshot.parentname=\u6839 label.vmsnapshot.type=\u00e7\u00b1\u00bb\u00e5\u009e\u008b +label.vmsnapshot=\u865a\u673a\u5feb\u7167 label.vm.start=\u542f\u52a8 label.vm.state=VM \u72b6\u6001 label.vm.stop=\u505c\u6b62 @@ -1206,6 +1234,8 @@ message.action.stop.router=\u6b64\u865a\u62df\u8def\u7531\u5668\u63d0\u4f9b\u768 message.action.stop.systemvm=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u505c\u6b62\u6b64\u7cfb\u7edf VM\u3002 message.action.take.snapshot=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u521b\u5efa\u6b64\u5377\u7684\u5feb\u7167\u3002 message.action.unmanage.cluster=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u53d6\u6d88\u6258\u7ba1\u6b64\u7fa4\u96c6\u3002 +message.action.vmsnapshot.delete=\u8bf7\u786e\u8ba4\u4f60\u8981\u5220\u9664\u6b64\u865a\u673a\u7684\u5feb\u7167 +message.action.vmsnapshot.revert=\u6062\u590d\u865a\u673a\u5feb\u7167 message.activate.project=\u662f\u5426\u786e\u5b9e\u8981\u6fc0\u6d3b\u6b64\u9879\u76ee? message.add.cluster=\u5411\u533a\u57df \u3001\u63d0\u4f9b\u70b9 \u4e2d\u6dfb\u52a0\u4e00\u4e2a\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\u6258\u7ba1\u7684\u7fa4\u96c6 message.add.cluster.zone=\u5411\u533a\u57df \u4e2d\u6dfb\u52a0\u4e00\u4e2a\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\u6258\u7ba1\u7684\u7fa4\u96c6 @@ -1229,6 +1259,7 @@ message.add.pod.during.zone.creation=\u6bcf\u4e2a\u533a\u57df\u4e2d\u5fc5\u987b\ message.add.pod=\u4e3a\u533a\u57df \u6dfb\u52a0\u4e00\u4e2a\u65b0\u63d0\u4f9b\u70b9 message.add.primary.storage=\u4e3a\u533a\u57df \u3001\u63d0\u4f9b\u70b9 \u6dfb\u52a0\u4e00\u4e2a\u65b0\u7684\u4e3b\u5b58\u50a8 message.add.primary=\u8bf7\u6307\u5b9a\u4ee5\u4e0b\u53c2\u6570\u4ee5\u6dfb\u52a0\u4e00\u4e2a\u65b0\u4e3b\u5b58\u50a8 +message.add.region=\u8bf7\u6307\u5b9a\u9700\u8981\u7684\u4fe1\u606f\u4ee5\u6dfb\u52a0\u65b0\u7684\u533a\u57df message.add.secondary.storage=\u4e3a\u533a\u57df \u6dfb\u52a0\u4e00\u4e2a\u65b0\u5b58\u50a8 message.add.service.offering=\u8bf7\u586b\u5199\u4ee5\u4e0b\u6570\u636e\u4ee5\u6dfb\u52a0\u4e00\u4e2a\u65b0\u8ba1\u7b97\u65b9\u6848\u3002 message.add.system.service.offering=\u8bf7\u586b\u5199\u4ee5\u4e0b\u6570\u636e\u4ee5\u6dfb\u52a0\u4e00\u4e2a\u65b0\u7684\u7cfb\u7edf\u670d\u52a1\u65b9\u6848\u3002 @@ -1385,6 +1416,8 @@ message.please.wait.while.zone.is.being.created=\u6b63\u5728\u521b\u5efa\u533a\u message.project.invite.sent=\u53d1\u9001\u7ed9\u7528\u6237\u7684\u9080\u8bf7\uff1b\u7528\u6237\u63a5\u53d7\u9080\u8bf7\u540e\uff0c\u5c06\u52a0\u5165\u5230\u9879\u76ee\u4e2d message.public.traffic.in.advanced.zone=\u4e91\u4e2d\u7684 VM \u8bbf\u95ee Internet \u65f6\u5c06\u751f\u6210\u516c\u5171\u6d41\u91cf\uff0c\u4f46\u5fc5\u987b\u5206\u914d\u53ef\u516c\u5f00\u8bbf\u95ee\u7684 IP \u624d\u80fd\u5b9e\u73b0\u3002\u6700\u7ec8\u7528\u6237\u53ef\u4ee5\u4f7f\u7528 CloudStack UI \u83b7\u53d6\u8fd9\u4e9b IP\uff0c\u4ee5\u5728\u5176\u6765\u5bbe\u7f51\u7edc\u4e0e\u516c\u7528\u7f51\u7edc\u4e4b\u95f4\u6267\u884c NAT\u3002

    \u8bf7\u81f3\u5c11\u4e3a Internet \u6d41\u91cf\u63d0\u4f9b\u4e00\u4e2a IP \u5730\u5740\u8303\u56f4\u3002 message.public.traffic.in.basic.zone=\u4e91\u4e2d\u7684 VM \u8bbf\u95ee Internet \u6216\u901a\u8fc7 Internet \u5411\u5ba2\u6237\u7aef\u63d0\u4f9b\u670d\u52a1\u65f6\u5c06\u751f\u6210\u516c\u5171\u6d41\u91cf\uff0c\u4f46\u5fc5\u987b\u5206\u914d\u53ef\u516c\u5f00\u8bbf\u95ee\u7684 IP \u624d\u80fd\u5b9e\u73b0\u3002\u521b\u5efa\u5b9e\u4f8b\u65f6\uff0c\u5c06\u628a\u8fd9\u4e00\u7ec4\u516c\u7528 IP \u4e2d\u7684 IP (\u6765\u5bbe IP \u5730\u5740\u9664\u5916)\u5206\u914d\u7ed9\u6b64\u5b9e\u4f8b\u3002\u9759\u6001 1-1 NAT \u5c06\u5728\u516c\u7528 IP \u4e0e\u6765\u5bbe IP \u4e4b\u95f4\u81ea\u52a8\u8bbe\u7f6e\u3002\u6700\u7ec8\u7528\u6237\u8fd8\u53ef\u4ee5\u4f7f\u7528 CloudStack UI \u83b7\u53d6\u5176\u4ed6 IP\uff0c\u4ee5\u5728\u5176\u5b9e\u4f8b\u4e0e\u516c\u7528 IP \u4e4b\u95f4\u6267\u884c\u9759\u6001 NAT\u3002 +message.redirecting.region=\u6b63\u5728\u91cd\u5b9a\u5411\u5230\u533a\u57df... +message.remove.region=\u4f60\u786e\u5b9a\u60f3\u8981\u4ece\u7ba1\u7406\u670d\u52a1\u5668\u5220\u9664\u6b64\u533a\u57df\u5417? message.remove.vpc=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664 VPC message.remove.vpn.access=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u9664\u4ee5\u4e0b\u7528\u6237\u7684 VPN \u8bbf\u95ee\u3002 message.reset.password.warning.notPasswordEnabled=\u521b\u5efa\u6b64\u5b9e\u4f8b\u7684\u6a21\u677f\u65f6\u672a\u542f\u7528\u5bc6\u7801 From 1f97b528c5fb73e8165b63ad5098e7191914aa59 Mon Sep 17 00:00:00 2001 From: Jayapal Date: Thu, 25 Apr 2013 12:35:04 +0530 Subject: [PATCH 412/607] CLOUDSTACK-1573 listNics response update for not showing vlan to normal user --- server/src/com/cloud/api/ApiResponseHelper.java | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/server/src/com/cloud/api/ApiResponseHelper.java b/server/src/com/cloud/api/ApiResponseHelper.java index 894ec8d0e97..c1814955b31 100755 --- a/server/src/com/cloud/api/ApiResponseHelper.java +++ b/server/src/com/cloud/api/ApiResponseHelper.java @@ -3659,7 +3659,10 @@ public class ApiResponseHelper implements ResponseGenerator { public NicResponse createNicResponse(Nic result) { NicResponse response = new NicResponse(); + NetworkVO network = _entityMgr.findById(NetworkVO.class, result.getNetworkId()); + response.setId(result.getUuid()); + response.setNetworkid(network.getUuid()); response.setIpaddress(result.getIp4Address()); if (result.getSecondaryIp()) { @@ -3676,19 +3679,12 @@ public class ApiResponseHelper implements ResponseGenerator { } } - response.setGateway(result.getGateway()); - response.setId(result.getUuid()); response.setGateway(result.getGateway()); response.setNetmask(result.getNetmask()); response.setMacAddress(result.getMacAddress()); - if (result.getBroadcastUri() != null) { - response.setBroadcastUri(result.getBroadcastUri().toString()); - } - if (result.getIsolationUri() != null) { - response.setIsolationUri(result.getIsolationUri().toString()); - } + if (result.getIp6Address() != null) { - response.setId(result.getIp6Address()); + response.setIp6Address(result.getIp6Address()); } response.setIsDefault(result.isDefaultNic()); From d5c3f87903ffa4362c9dc9688c199c10700c0ccb Mon Sep 17 00:00:00 2001 From: Jayapal Date: Mon, 22 Apr 2013 14:06:12 +0530 Subject: [PATCH 413/607] CLOUDSTACK-1741 Added ip uuid into the AddIptoVmNicCmd response Signed-off-by: Abhinandan Prateek --- api/src/com/cloud/network/NetworkService.java | 2 +- .../cloudstack/api/ResponseGenerator.java | 4 ++-- .../api/command/user/vm/AddIpToVmNicCmd.java | 9 ++++++--- .../api/command/test/AddIpToVmNicTest.java | 6 ++++-- .../src/com/cloud/api/ApiResponseHelper.java | 18 ++++++------------ .../com/cloud/network/NetworkServiceImpl.java | 17 ++++++++++++++--- .../cloud/network/MockNetworkManagerImpl.java | 2 +- .../com/cloud/vpc/MockNetworkManagerImpl.java | 2 +- 8 files changed, 35 insertions(+), 25 deletions(-) diff --git a/api/src/com/cloud/network/NetworkService.java b/api/src/com/cloud/network/NetworkService.java index 5a6054da23b..6c9bebc1c15 100755 --- a/api/src/com/cloud/network/NetworkService.java +++ b/api/src/com/cloud/network/NetworkService.java @@ -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); diff --git a/api/src/org/apache/cloudstack/api/ResponseGenerator.java b/api/src/org/apache/cloudstack/api/ResponseGenerator.java index a3aa9de0e3e..cbf8bb27b90 100644 --- a/api/src/org/apache/cloudstack/api/ResponseGenerator.java +++ b/api/src/org/apache/cloudstack/api/ResponseGenerator.java @@ -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; @@ -389,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); diff --git a/api/src/org/apache/cloudstack/api/command/user/vm/AddIpToVmNicCmd.java b/api/src/org/apache/cloudstack/api/command/user/vm/AddIpToVmNicCmd.java index df6b3999dba..ae5482b22de 100644 --- a/api/src/org/apache/cloudstack/api/command/user/vm/AddIpToVmNicCmd.java +++ b/api/src/org/apache/cloudstack/api/command/user/vm/AddIpToVmNicCmd.java @@ -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 { diff --git a/api/test/org/apache/cloudstack/api/command/test/AddIpToVmNicTest.java b/api/test/org/apache/cloudstack/api/command/test/AddIpToVmNicTest.java index 106589d10cc..e5015cb3cac 100644 --- a/api/test/org/apache/cloudstack/api/command/test/AddIpToVmNicTest.java +++ b/api/test/org/apache/cloudstack/api/command/test/AddIpToVmNicTest.java @@ -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(); diff --git a/server/src/com/cloud/api/ApiResponseHelper.java b/server/src/com/cloud/api/ApiResponseHelper.java index c1814955b31..6090ff06d7c 100755 --- a/server/src/com/cloud/api/ApiResponseHelper.java +++ b/server/src/com/cloud/api/ApiResponseHelper.java @@ -34,6 +34,7 @@ import java.util.TimeZone; import javax.inject.Inject; +import com.cloud.vm.*; import org.apache.cloudstack.acl.ControlledEntity; import org.apache.cloudstack.acl.ControlledEntity.ACLType; import org.apache.cloudstack.api.ApiConstants.HostDetails; @@ -264,13 +265,6 @@ import com.cloud.uservm.UserVm; import com.cloud.utils.Pair; import com.cloud.utils.StringUtils; import com.cloud.utils.net.NetUtils; -import com.cloud.vm.ConsoleProxyVO; -import com.cloud.vm.InstanceGroup; -import com.cloud.vm.Nic; -import com.cloud.vm.NicProfile; -import com.cloud.vm.NicVO; -import com.cloud.vm.VMInstanceVO; -import com.cloud.vm.VirtualMachine; import com.cloud.vm.VirtualMachine.Type; import com.cloud.vm.dao.NicSecondaryIpVO; import com.cloud.vm.snapshot.VMSnapshot; @@ -288,7 +282,6 @@ import org.apache.cloudstack.region.Region; import org.apache.cloudstack.usage.Usage; import org.apache.cloudstack.usage.UsageService; import org.apache.cloudstack.usage.UsageTypes; -import com.cloud.vm.VmStats; import com.cloud.vm.dao.UserVmData; import com.cloud.vm.dao.UserVmData.NicData; import com.cloud.vm.dao.UserVmData.SecurityGroupData; @@ -3646,11 +3639,12 @@ public class ApiResponseHelper implements ResponseGenerator { return response; } - public NicSecondaryIpResponse createSecondaryIPToNicResponse(String ipAddr, Long nicId, Long networkId) { + public NicSecondaryIpResponse createSecondaryIPToNicResponse(NicSecondaryIp result) { NicSecondaryIpResponse response = new NicSecondaryIpResponse(); - NicVO nic = _entityMgr.findById(NicVO.class, nicId); - NetworkVO network = _entityMgr.findById(NetworkVO.class, networkId); - response.setIpAddr(ipAddr); + NicVO nic = _entityMgr.findById(NicVO.class, result.getNicId()); + NetworkVO network = _entityMgr.findById(NetworkVO.class, result.getNetworkId()); + response.setId(result.getUuid()); + response.setIpAddr(result.getIp4Address()); response.setNicId(nic.getUuid()); response.setNwId(network.getUuid()); response.setObjectName("nicsecondaryip"); diff --git a/server/src/com/cloud/network/NetworkServiceImpl.java b/server/src/com/cloud/network/NetworkServiceImpl.java index 7653a0816f0..7bc2e5486ed 100755 --- a/server/src/com/cloud/network/NetworkServiceImpl.java +++ b/server/src/com/cloud/network/NetworkServiceImpl.java @@ -483,7 +483,7 @@ public class NetworkServiceImpl extends ManagerBase implements NetworkService { } - public String allocateSecondaryGuestIP (Account ipOwner, long zoneId, Long nicId, Long networkId, String requestedIp) throws InsufficientAddressCapacityException { + public NicSecondaryIp allocateSecondaryGuestIP (Account ipOwner, long zoneId, Long nicId, Long networkId, String requestedIp) throws InsufficientAddressCapacityException { Long accountId = null; Long domainId = null; @@ -565,6 +565,7 @@ public class NetworkServiceImpl extends ManagerBase implements NetworkService { return null; } + NicSecondaryIpVO secondaryIpVO; if (ipaddr != null) { // we got the ip addr so up the nics table and secodary ip Transaction txn = Transaction.currentTxn(); @@ -580,11 +581,13 @@ public class NetworkServiceImpl extends ManagerBase implements NetworkService { s_logger.debug("Setting nic_secondary_ip table ..."); vmId = nicVO.getInstanceId(); - NicSecondaryIpVO secondaryIpVO = new NicSecondaryIpVO(nicId, ipaddr, vmId, accountId, domainId, networkId); + secondaryIpVO = new NicSecondaryIpVO(nicId, ipaddr, vmId, accountId, domainId, networkId); _nicSecondaryIpDao.persist(secondaryIpVO); txn.commit(); + return getNicSecondaryIp(secondaryIpVO.getId()); + } else { + return null; } - return ipaddr; } @DB @@ -676,6 +679,14 @@ public class NetworkServiceImpl extends ManagerBase implements NetworkService { return true; } + NicSecondaryIp getNicSecondaryIp (long id) { + NicSecondaryIp nicSecIp = _nicSecondaryIpDao.findById(id); + if (nicSecIp == null) { + return null; + } + return nicSecIp; + } + @Override @DB @ActionEvent(eventType = EventTypes.EVENT_NET_IP_RELEASE, eventDescription = "disassociating Ip", async = true) diff --git a/server/test/com/cloud/network/MockNetworkManagerImpl.java b/server/test/com/cloud/network/MockNetworkManagerImpl.java index 6a0263ee334..e9987bd1b66 100755 --- a/server/test/com/cloud/network/MockNetworkManagerImpl.java +++ b/server/test/com/cloud/network/MockNetworkManagerImpl.java @@ -835,7 +835,7 @@ public class MockNetworkManagerImpl extends ManagerBase implements NetworkManage } @Override - public String allocateSecondaryGuestIP(Account account, long zoneId, + public NicSecondaryIp allocateSecondaryGuestIP(Account account, long zoneId, Long nicId, Long networkId, String ipaddress) { // TODO Auto-generated method stub return null; diff --git a/server/test/com/cloud/vpc/MockNetworkManagerImpl.java b/server/test/com/cloud/vpc/MockNetworkManagerImpl.java index bfcccf54bf0..9b18358e258 100644 --- a/server/test/com/cloud/vpc/MockNetworkManagerImpl.java +++ b/server/test/com/cloud/vpc/MockNetworkManagerImpl.java @@ -1316,7 +1316,7 @@ public class MockNetworkManagerImpl extends ManagerBase implements NetworkManage } @Override - public String allocateSecondaryGuestIP(Account account, long zoneId, + public NicSecondaryIp allocateSecondaryGuestIP(Account account, long zoneId, Long nicId, Long networkId, String ipaddress) { // TODO Auto-generated method stub return null; From 0e2ffe72aa641f4551cae63fbc36454c5934342f Mon Sep 17 00:00:00 2001 From: Milamber Date: Thu, 25 Apr 2013 10:01:29 +0000 Subject: [PATCH 414/607] add lang key for Catalan, German, Italian, Norwegian. (from 4.1 branch) --- client/WEB-INF/classes/resources/messages.properties | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/client/WEB-INF/classes/resources/messages.properties b/client/WEB-INF/classes/resources/messages.properties index fbc04713fb7..0e051f1dd8e 100644 --- a/client/WEB-INF/classes/resources/messages.properties +++ b/client/WEB-INF/classes/resources/messages.properties @@ -624,11 +624,15 @@ label.key=Key label.kvm.traffic.label=KVM traffic label label.label=Label label.lang.brportugese=Brazilian Portugese +label.lang.catalan=Catalan label.lang.chinese=Chinese (Simplified) label.lang.english=English label.lang.french=French +label.lang.german=German +label.lang.italian=Italian label.lang.japanese=Japanese label.lang.korean=Korean +label.lang.norwegian=Norwegian label.lang.russian=Russian label.lang.spanish=Spanish label.last.disconnected=Last Disconnected From cfc0633ec7fcf8ded42c0652b541cd493a9168db Mon Sep 17 00:00:00 2001 From: Milamber Date: Thu, 25 Apr 2013 12:27:21 +0000 Subject: [PATCH 415/607] Fix a issue with the russian Web UI (one key with a '\n' as value) --- client/WEB-INF/classes/resources/messages_ru_RU.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/WEB-INF/classes/resources/messages_ru_RU.properties b/client/WEB-INF/classes/resources/messages_ru_RU.properties index b0ffe406ba8..b28f6b69e6f 100644 --- a/client/WEB-INF/classes/resources/messages_ru_RU.properties +++ b/client/WEB-INF/classes/resources/messages_ru_RU.properties @@ -1052,7 +1052,7 @@ message.acquire.public.ip=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442 message.action.cancel.maintenance.mode=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043e\u0442\u043c\u0435\u043d\u0438\u0442\u044c \u0440\u0435\u0436\u0438\u043c \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f. message.action.cancel.maintenance=\u0423\u0437\u0435\u043b \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0432\u044b\u0448\u0435\u043b \u0438\u0437 \u0440\u0435\u0436\u0438\u043c\u0430 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f. \u042d\u0442\u043b\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043c\u043e\u0436\u0435\u0442 \u0434\u043b\u0438\u0442\u044c\u0441\u044f \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0438\u043d\u0443\u0442. message.action.change.service.warning.for.instance=\u0414\u043b\u044f \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u043e\u0433\u043e \u0440\u0435\u0441\u0443\u0440\u0441\u0430 \u0432\u0430\u0448\u0430 \u043c\u0430\u0448\u0438\u043d\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0430. -message.action.change.service.warning.for.router=\n +message.action.change.service.warning.for.router=\u0414\u043b\u044f \u0440\u043e\u0443\u0442\u0435\u0440 \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u043e\u0433\u043e \u0440\u0435\u0441\u0443\u0440\u0441\u0430 \u0432\u0430\u0448\u0430 \u043c\u0430\u0448\u0438\u043d\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0430. message.action.delete.cluster=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u043a\u043b\u0430\u0441\u0442\u0435\u0440. message.action.delete.disk.offering=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0434\u0438\u0441\u043a\u043e\u0432\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441. message.action.delete.domain=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0434\u043e\u043c\u0435\u043d. From 6bc0b70f38db07e80fd6af4f4b75c17c871b7cd9 Mon Sep 17 00:00:00 2001 From: Pranav Saxena Date: Thu, 25 Apr 2013 19:40:44 +0530 Subject: [PATCH 416/607] CLOUDSTACK-2186:migrateVolume API gets undefined storageid --- ui/scripts/storage.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/scripts/storage.js b/ui/scripts/storage.js index cf4076945ac..9b66083d4e6 100644 --- a/ui/scripts/storage.js +++ b/ui/scripts/storage.js @@ -1056,7 +1056,7 @@ }, action: function(args) { $.ajax({ - url: createURL("migrateVolume&storageid=" + args.data.storagePool + "&volumeid=" + args.context.volumes[0].id), + url: createURL("migrateVolume&storageid=" + args.data.storageId + "&volumeid=" + args.context.volumes[0].id), dataType: "json", async: true, success: function(json) { From 099677a1244cd55fb98d3c40ee7881223dd9ac7c Mon Sep 17 00:00:00 2001 From: Nicolas Lamirault Date: Thu, 25 Apr 2013 15:14:34 +0100 Subject: [PATCH 417/607] CLOUDSTACK-2172: adding database upgrade to 4.1.0 in PremiumDatabaseUpgradeChecker Add migration to 4.1.0 in the PremiumDatabaseUpgradeChecker, like in the DatabaseUpgradeChecker. I opened the ticket CS 2172, and this fix corrects the issue. Regards. Signed-off-by: Chip Childers --- .../PremiumDatabaseUpgradeChecker.java | 73 +++++++++++-------- 1 file changed, 41 insertions(+), 32 deletions(-) diff --git a/server/src/com/cloud/upgrade/PremiumDatabaseUpgradeChecker.java b/server/src/com/cloud/upgrade/PremiumDatabaseUpgradeChecker.java index 14a81439670..bad32536955 100755 --- a/server/src/com/cloud/upgrade/PremiumDatabaseUpgradeChecker.java +++ b/server/src/com/cloud/upgrade/PremiumDatabaseUpgradeChecker.java @@ -40,6 +40,7 @@ import com.cloud.upgrade.dao.Upgrade229to2210; import com.cloud.upgrade.dao.Upgrade301to302; import com.cloud.upgrade.dao.Upgrade302to40; import com.cloud.upgrade.dao.Upgrade30to301; +import com.cloud.upgrade.dao.Upgrade40to41; import com.cloud.upgrade.dao.UpgradeSnapshot217to224; import com.cloud.upgrade.dao.UpgradeSnapshot223to224; import com.cloud.upgrade.dao.VersionDaoImpl; @@ -53,87 +54,95 @@ public class PremiumDatabaseUpgradeChecker extends DatabaseUpgradeChecker { new Upgrade221to222Premium(), new UpgradeSnapshot217to224(), new Upgrade222to224Premium(), new Upgrade224to225(), new Upgrade225to226(), new Upgrade227to228Premium(), new Upgrade228to229(), new Upgrade229to2210(), new Upgrade2210to2211(), new Upgrade2211to2212Premium(), - new Upgrade2212to2213(), new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), - new Upgrade301to302(), new Upgrade302to40() }); + new Upgrade2212to2213(), new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), + new Upgrade301to302(), new Upgrade302to40(), new Upgrade40to41() }); _upgradeMap.put("2.1.8", new DbUpgrade[] { new Upgrade218to22Premium(), new Upgrade221to222Premium(), new UpgradeSnapshot217to224(), new Upgrade222to224Premium(), new Upgrade218to224DomainVlans(), new Upgrade224to225(), new Upgrade225to226(), new Upgrade227to228Premium(), new Upgrade228to229(), - new Upgrade229to2210(), new Upgrade2210to2211(), new Upgrade2211to2212Premium(), new Upgrade2212to2213() - , new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), - new Upgrade302to40() }); + new Upgrade229to2210(), new Upgrade2210to2211(), new Upgrade2211to2212Premium(), new Upgrade2212to2213(), + new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), + new Upgrade302to40(), new Upgrade40to41() }); _upgradeMap.put("2.1.9", new DbUpgrade[] { new Upgrade218to22Premium(), new Upgrade221to222Premium(), new UpgradeSnapshot217to224(), new Upgrade222to224Premium(), new Upgrade218to224DomainVlans(), new Upgrade224to225(), new Upgrade225to226(), new Upgrade227to228Premium(), new Upgrade228to229(), new Upgrade229to2210(), new Upgrade2210to2211(), new Upgrade2211to2212Premium(), new Upgrade2212to2213(), - new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), - new Upgrade302to40() }); + new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), + new Upgrade302to40(), new Upgrade40to41() }); _upgradeMap.put("2.2.1", new DbUpgrade[] { new Upgrade221to222Premium(), new Upgrade222to224Premium(), new UpgradeSnapshot223to224(), new Upgrade224to225(), new Upgrade225to226(), new Upgrade227to228Premium(), new Upgrade228to229(), new Upgrade229to2210(), new Upgrade2210to2211(), new Upgrade2211to2212Premium(), - new Upgrade2212to2213(), new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), - new Upgrade301to302(), new Upgrade302to40() }); + new Upgrade2212to2213(), new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), + new Upgrade301to302(), new Upgrade302to40(), new Upgrade40to41() }); _upgradeMap.put("2.2.2", new DbUpgrade[] { new Upgrade222to224Premium(), new UpgradeSnapshot223to224(), new Upgrade224to225(), new Upgrade225to226(), new Upgrade227to228Premium(), new Upgrade228to229(), new Upgrade229to2210(), new Upgrade2210to2211(), new Upgrade2211to2212Premium(), new Upgrade2212to2213(), - new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), - new Upgrade302to40() }); + new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), + new Upgrade302to40(), new Upgrade40to41() }); _upgradeMap.put("2.2.3", new DbUpgrade[] { new Upgrade222to224Premium(), new UpgradeSnapshot223to224(), new Upgrade224to225(), new Upgrade225to226(), new Upgrade227to228Premium(), new Upgrade228to229(), new Upgrade229to2210(), new Upgrade2210to2211(), new Upgrade2211to2212Premium(), new Upgrade2212to2213(), - new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), new Upgrade302to40() }); + new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), + new Upgrade302to40(), new Upgrade40to41() }); _upgradeMap.put("2.2.4", new DbUpgrade[] { new Upgrade224to225(), new Upgrade225to226(), new Upgrade227to228Premium(), new Upgrade228to229(), new Upgrade229to2210(), new Upgrade2210to2211(), new Upgrade2211to2212Premium(), - new Upgrade2212to2213(), new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), - new Upgrade301to302(), new Upgrade302to40() }); + new Upgrade2212to2213(), new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), + new Upgrade301to302(), new Upgrade302to40(), new Upgrade40to41() }); _upgradeMap.put("2.2.5", new DbUpgrade[] { new Upgrade225to226(), new Upgrade227to228Premium(), new Upgrade228to229(), new Upgrade229to2210(), new Upgrade2210to2211(), new Upgrade2211to2212Premium(), - new Upgrade2212to2213(), new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), - new Upgrade301to302(), new Upgrade302to40() }); + new Upgrade2212to2213(), new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), + new Upgrade301to302(), new Upgrade302to40(), new Upgrade40to41() }); _upgradeMap.put("2.2.6", new DbUpgrade[] { new Upgrade227to228Premium(), new Upgrade228to229(), new Upgrade229to2210(), new Upgrade2210to2211(), new Upgrade2211to2212Premium(), new Upgrade2212to2213(), - new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), new Upgrade302to40() }); + new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), + new Upgrade302to40(), new Upgrade40to41() }); _upgradeMap.put("2.2.7", new DbUpgrade[] { new Upgrade227to228Premium(), new Upgrade228to229(), new Upgrade229to2210(), new Upgrade2210to2211(), new Upgrade2211to2212Premium(), new Upgrade2212to2213(), - new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), new Upgrade302to40() }); + new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), + new Upgrade302to40(), new Upgrade40to41() }); _upgradeMap.put("2.2.8", new DbUpgrade[] { new Upgrade228to229(), new Upgrade229to2210(), new Upgrade2210to2211(), new Upgrade2211to2212Premium(), new Upgrade2212to2213(), new Upgrade2213to2214(), - new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), new Upgrade302to40() }); + new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), new Upgrade302to40(), new Upgrade40to41() }); _upgradeMap.put("2.2.9", new DbUpgrade[] { new Upgrade229to2210(), new Upgrade2210to2211(), new Upgrade2211to2212Premium(), new Upgrade2212to2213(), new Upgrade2213to2214(), new Upgrade2214to30(), - new Upgrade30to301(), new Upgrade301to302(), new Upgrade302to40() }); + new Upgrade30to301(), new Upgrade301to302(), new Upgrade302to40(), new Upgrade40to41() }); _upgradeMap.put("2.2.10", new DbUpgrade[] { new Upgrade2210to2211(), new Upgrade2211to2212Premium(), new Upgrade2212to2213(), new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), - new Upgrade301to302(), new Upgrade302to40() }); + new Upgrade301to302(), new Upgrade302to40(), new Upgrade40to41() }); _upgradeMap.put("2.2.11", new DbUpgrade[] { new Upgrade2211to2212Premium(), new Upgrade2212to2213(), new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), - new Upgrade302to40() }); + new Upgrade302to40(), new Upgrade40to41() }); _upgradeMap.put("2.2.12", new DbUpgrade[] { new Upgrade2212to2213(), new Upgrade2213to2214(), new Upgrade2214to30(), - new Upgrade30to301(), new Upgrade301to302(), new Upgrade302to40() }); + new Upgrade30to301(), new Upgrade301to302(), new Upgrade302to40(), new Upgrade40to41() }); - _upgradeMap.put("2.2.13", new DbUpgrade[] { new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), - new Upgrade301to302(), new Upgrade302to40() }); + _upgradeMap.put("2.2.13", new DbUpgrade[] { new Upgrade2213to2214(), new Upgrade2214to30(), new Upgrade30to301(), + new Upgrade301to302(), new Upgrade302to40(), new Upgrade40to41() }); _upgradeMap.put("2.2.14", new DbUpgrade[] { new Upgrade2214to30(), new Upgrade30to301(), new Upgrade301to302(), - new Upgrade302to40() }); + new Upgrade302to40(), new Upgrade40to41() }); - _upgradeMap.put("3.0.0", new DbUpgrade[] { new Upgrade30to301(), new Upgrade301to302(), new Upgrade302to40() }); - - _upgradeMap.put("3.0.1", new DbUpgrade[] { new Upgrade301to302(), new Upgrade302to40() }); - - _upgradeMap.put("3.0.2", new DbUpgrade[] { new Upgrade302to40() }); - } + _upgradeMap.put("3.0.0", new DbUpgrade[] { new Upgrade30to301(), new Upgrade301to302(), new Upgrade302to40(), new Upgrade40to41() }); + + _upgradeMap.put("3.0.1", new DbUpgrade[] { new Upgrade301to302(), new Upgrade302to40(), new Upgrade40to41() }); + + _upgradeMap.put("3.0.2", new DbUpgrade[] { new Upgrade302to40(), new Upgrade40to41() }); + + _upgradeMap.put("4.0.0", new DbUpgrade[] { new Upgrade40to41() }); + + _upgradeMap.put("4.0.1", new DbUpgrade[] { new Upgrade40to41() }); + + _upgradeMap.put("4.0.2", new DbUpgrade[] { new Upgrade40to41() }); } } From ee02311fae2b8991ed1dc13e58d8dbe627262a8d Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Thu, 25 Apr 2013 09:51:40 -0700 Subject: [PATCH 418/607] CLOUDSTACK-2120: mixed zone management - (1) extend listHosts API to to take in zonetype. (2) UI: populate Hosts/SecondaryStorages list page with ones whose zonetype matches selected option in zone type dropdown on top menu. --- .../api/command/admin/host/ListHostsCmd.java | 7 +++++ .../com/cloud/api/query/QueryManagerImpl.java | 5 ++++ ui/scripts/system.js | 27 +++++++++++++++++-- 3 files changed, 37 insertions(+), 2 deletions(-) diff --git a/api/src/org/apache/cloudstack/api/command/admin/host/ListHostsCmd.java b/api/src/org/apache/cloudstack/api/command/admin/host/ListHostsCmd.java index 5ec7cf3e10b..69c69802bfe 100644 --- a/api/src/org/apache/cloudstack/api/command/admin/host/ListHostsCmd.java +++ b/api/src/org/apache/cloudstack/api/command/admin/host/ListHostsCmd.java @@ -75,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; @@ -124,6 +127,10 @@ public class ListHostsCmd extends BaseListCmd { return zoneId; } + public String getZoneType() { + return zoneType; + } + public Long getVirtualMachineId() { return virtualMachineId; } diff --git a/server/src/com/cloud/api/query/QueryManagerImpl.java b/server/src/com/cloud/api/query/QueryManagerImpl.java index 6690b24ca69..f92b4fce664 100644 --- a/server/src/com/cloud/api/query/QueryManagerImpl.java +++ b/server/src/com/cloud/api/query/QueryManagerImpl.java @@ -1400,6 +1400,7 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { public Pair, Integer> searchForServersInternal(ListHostsCmd cmd) { Long zoneId = _accountMgr.checkAccessAndSpecifyAuthority(UserContext.current().getCaller(), cmd.getZoneId()); + String zoneType = cmd.getZoneType(); Object name = cmd.getHostName(); Object type = cmd.getType(); Object state = cmd.getState(); @@ -1421,6 +1422,7 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { sb.and("type", sb.entity().getType(), SearchCriteria.Op.LIKE); sb.and("status", sb.entity().getStatus(), SearchCriteria.Op.EQ); sb.and("dataCenterId", sb.entity().getZoneId(), SearchCriteria.Op.EQ); + sb.and("dataCenterType", sb.entity().getZoneType(), SearchCriteria.Op.EQ); sb.and("podId", sb.entity().getPodId(), SearchCriteria.Op.EQ); sb.and("clusterId", sb.entity().getClusterId(), SearchCriteria.Op.EQ); sb.and("resourceState", sb.entity().getResourceState(), SearchCriteria.Op.EQ); @@ -1465,6 +1467,9 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { if (zoneId != null) { sc.setParameters("dataCenterId", zoneId); } + if (zoneType != null) { + sc.setParameters("dataCenterType", zoneType); + } if (pod != null) { sc.setParameters("podId", pod); } diff --git a/ui/scripts/system.js b/ui/scripts/system.js index 8f07ee46251..3aaa830c367 100644 --- a/ui/scripts/system.js +++ b/ui/scripts/system.js @@ -5534,9 +5534,16 @@ var searchByArgs = args.filterBy.search.value.length ? '&name=' + args.filterBy.search.value : ''; + var data = { page: args.page, pageSize: pageSize, type: 'routing', listAll: true }; + if(args.context.zoneType != null && args.context.zoneType.length > 0) { //Basic type or Advanced type + $.extend(data, { + zonetype: args.context.zoneType + }); + } + $.ajax({ url: createURL('listHosts' + searchByArgs), - data: { page: args.page, pageSize: pageSize, type: 'routing', listAll: true }, + data: data, success: function (json) { args.response.success({ data: json.listhostsresponse.host }); }, @@ -5628,9 +5635,16 @@ var searchByArgs = args.filterBy.search.value.length ? '&name=' + args.filterBy.search.value : ''; + var data = { type: 'SecondaryStorage', page: args.page, pageSize: pageSize, listAll: true }; + if(args.context.zoneType != null && args.context.zoneType.length > 0) { //Basic type or Advanced type + $.extend(data, { + zonetype: args.context.zoneType + }); + } + $.ajax({ url: createURL('listHosts' + searchByArgs), - data: { type: 'SecondaryStorage', page: args.page, pageSize: pageSize, listAll: true }, + data: data, success: function (json) { args.response.success({ data: json.listhostsresponse.host }); }, @@ -8909,6 +8923,10 @@ array1.push("&hostid=" + args.context.instances[0].hostid); } + if(args.context.zoneType != null && args.context.zoneType.length > 0) { //Basic type or Advanced type + array1.push("&zonetype=" + args.context.zoneType); + } + $.ajax({ url: createURL("listHosts&type=Routing" + array1.join("") + "&page=" + args.page + "&pagesize=" + pageSize), dataType: "json", @@ -10515,6 +10533,11 @@ } } array1.push("&zoneid=" + args.context.zones[0].id); + + if(args.context.zoneType != null && args.context.zoneType.length > 0) { //Basic type or Advanced type + array1.push("&zonetype=" + args.context.zoneType); + } + $.ajax({ url: createURL("listHosts&type=SecondaryStorage&page=" + args.page + "&pagesize=" + pageSize + array1.join("")), dataType: "json", From b5979ba9b58caf0f306907e11c9a34fe36ff6ca6 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Thu, 25 Apr 2013 10:40:08 -0700 Subject: [PATCH 419/607] LOUDSTACK-2120: mixed zone management - (1) extend listZones API to to take in networktype. (2) UI: populate Zones list page with ones whose networktype matches selected option in zone type dropdown on top menu. (3) UI: count total number of zones based on selected option in zone type dropdown on top menu. --- .../api/command/user/zone/ListZonesByCmd.java | 7 +++++++ .../com/cloud/api/query/QueryManagerImpl.java | 4 ++++ ui/scripts/system.js | 17 ++++++++++++++--- 3 files changed, 25 insertions(+), 3 deletions(-) diff --git a/api/src/org/apache/cloudstack/api/command/user/zone/ListZonesByCmd.java b/api/src/org/apache/cloudstack/api/command/user/zone/ListZonesByCmd.java index bbfb598b1db..d0dc736f1a6 100644 --- a/api/src/org/apache/cloudstack/api/command/user/zone/ListZonesByCmd.java +++ b/api/src/org/apache/cloudstack/api/command/user/zone/ListZonesByCmd.java @@ -56,6 +56,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.NETWORK_TYPE, type=CommandType.STRING, description="the network type of the zone") + private String networkType; + @Parameter(name=ApiConstants.SHOW_CAPACITIES, type=CommandType.BOOLEAN, description="flag to display the capacity of the zones") private Boolean showCapacities; @@ -79,6 +82,10 @@ public class ListZonesByCmd extends BaseListCmd { return name; } + public String getNetworkType(){ + return networkType; + } + public Boolean getShowCapacities() { return showCapacities; } diff --git a/server/src/com/cloud/api/query/QueryManagerImpl.java b/server/src/com/cloud/api/query/QueryManagerImpl.java index f92b4fce664..67af7e4b684 100644 --- a/server/src/com/cloud/api/query/QueryManagerImpl.java +++ b/server/src/com/cloud/api/query/QueryManagerImpl.java @@ -2213,10 +2213,14 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { Long id = cmd.getId(); String keyword = cmd.getKeyword(); String name = cmd.getName(); + String networkType = cmd.getNetworkType(); Filter searchFilter = new Filter(DataCenterJoinVO.class, null, false, cmd.getStartIndex(), cmd.getPageSizeVal()); SearchCriteria sc = _dcJoinDao.createSearchCriteria(); + if(networkType != null) + sc.addAnd("networkType", SearchCriteria.Op.EQ, networkType); + if (id != null) { sc.addAnd("id", SearchCriteria.Op.EQ, id); } else if (name != null) { diff --git a/ui/scripts/system.js b/ui/scripts/system.js index 3aaa830c367..4692b61ad88 100644 --- a/ui/scripts/system.js +++ b/ui/scripts/system.js @@ -184,9 +184,16 @@ dashboard: { dataProvider: function(args) { var dataFns = { - zoneCount: function(data) { + zoneCount: function(data) { + var data = {}; + if(cloudStack.context.zoneType != null && cloudStack.context.zoneType.length > 0) { //Basic type or Advanced type + $.extend(data, { + networktype: cloudStack.context.zoneType + }); + } $.ajax({ url: createURL('listZones'), + data: data, success: function(json) { dataFns.podCount($.extend(data, { zoneCount: json.listzonesresponse.count ? @@ -4665,6 +4672,10 @@ } } + if(args.context.zoneType != null && args.context.zoneType.length > 0) { //Basic type or Advanced type + array1.push("&networktype=" + args.context.zoneType); + } + $.ajax({ url: createURL("listZones&page=" + args.page + "&pagesize=" + pageSize + array1.join("")), dataType: "json", @@ -5000,8 +5011,8 @@ localstorageenabled: { label: 'label.local.storage.enabled', isBoolean: true, - isEditable: true, - converter:cloudStack.converters.toBooleanText + isEditable: true, + converter:cloudStack.converters.toBooleanText } } ], From e8b6c7b33da77fadef337168f43074802c1bf4d2 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Thu, 25 Apr 2013 11:11:55 -0700 Subject: [PATCH 420/607] CLOUDSTACK-2120: mixed zone management - UI: count total number of hosts based on selected option in zone type dropdown on top menu. --- ui/scripts/system.js | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/ui/scripts/system.js b/ui/scripts/system.js index 4692b61ad88..312d5f4906e 100644 --- a/ui/scripts/system.js +++ b/ui/scripts/system.js @@ -246,13 +246,19 @@ }, hostCount: function(data) { + var data2= { + type: 'routing', + page: 1, + pagesize: 1 //specifying pagesize as 1 because we don't need any embedded objects to be returned here. The only thing we need from API response is "count" property. + }; + if(cloudStack.context.zoneType != null && cloudStack.context.zoneType.length > 0) { //Basic type or Advanced type + $.extend(data2, { + zonetype: cloudStack.context.zoneType + }); + } $.ajax({ url: createURL('listHosts'), - data: { - type: 'routing', - page: 1, - pagesize: 1 //specifying pagesize as 1 because we don't need any embedded objects to be returned here. The only thing we need from API response is "count" property. - }, + data: data2, success: function(json) { dataFns.primaryStorageCount($.extend(data, { hostCount: json.listhostsresponse.count ? From 6802b9dac6c743ac2bf10e91418c0ef94ccb5f05 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Thu, 25 Apr 2013 11:23:31 -0700 Subject: [PATCH 421/607] Add icon for affinity groups section --- ui/css/cloudstack3.css | 4 ++++ ui/images/icons.png | Bin 50745 -> 50708 bytes 2 files changed, 4 insertions(+) diff --git a/ui/css/cloudstack3.css b/ui/css/cloudstack3.css index 340b089c4e6..7ff7469ab67 100644 --- a/ui/css/cloudstack3.css +++ b/ui/css/cloudstack3.css @@ -2479,6 +2479,10 @@ div.detail-group.actions td { background-position: -73px -23px; } +#navigation ul li.affinityGroups span.icon { + background-position: -73px -87px; +} + #navigation ul li.storage span.icon { background-position: -127px -23px; } diff --git a/ui/images/icons.png b/ui/images/icons.png index ea1a39cdf7f0a934d4041265470b4b0ade4a2b41..f07ca838ee4647cb5d233216a336fe1f9a63eaaf 100644 GIT binary patch literal 50708 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 literal 50745 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 a5MZ*=4=<_q#ybG~d7$=4wOZNY)&BtW=dJJn From e6d9e8121308e6d055ccb6fcb5429849a8b729dd Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Thu, 25 Apr 2013 12:23:39 -0700 Subject: [PATCH 422/607] Better styling for multi-detail panels --- ui/css/cloudstack3.css | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/ui/css/cloudstack3.css b/ui/css/cloudstack3.css index 9847ae9dfeb..9041bd7461e 100644 --- a/ui/css/cloudstack3.css +++ b/ui/css/cloudstack3.css @@ -1699,6 +1699,8 @@ div.list-view td.state.off span { max-height: 407px; overflow: auto; overflow-x: hidden; + width: 100%; + /*[empty]padding:;*/ margin-right: 12px; } @@ -1786,6 +1788,12 @@ div.list-view td.state.off span { width: 100%; } +.detail-view .details.group-multiple .main-groups { + overflow: visible; + width: 98%; + margin-bottom: 35px; +} + /*List-view: subselect dropdown*/ .list-view .subselect { width: 116px; @@ -2020,15 +2028,17 @@ div.detail-group.actions td { margin: -15px 0 -5px; } -.details.group-multiple div.detail-group.actions .detail-actions { +.details.group-multiple div.detail-group.actions table { + background: none; +} + +.details.group-multiple div.detail-group.actions td.detail-actions { + background: none; display: block; height: 35px; padding: 0; } -.details.group-multiple div.detail-group.actions .detail-actions td { -} - .details.group-multiple div.detail-group.actions .detail-actions .action { float: right; /*+placement:shift 2px 7px;*/ @@ -2037,6 +2047,11 @@ div.detail-group.actions td { top: 7px; } +.details.group-multiple div.detail-group.actions .detail-actions .action a { + background: none; + width: 24px; +} + .detail-group table td.detail-actions { width: 59%; height: 26px; From 9544d04fcef29a70af9664bcb957d0fb0c3ad820 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Thu, 25 Apr 2013 13:20:52 -0700 Subject: [PATCH 423/607] Update affinity icon --- ui/images/icons.png | Bin 50708 -> 50052 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/ui/images/icons.png b/ui/images/icons.png index f07ca838ee4647cb5d233216a336fe1f9a63eaaf..e2083da1969a1143fe90b21404e6689719c5faab 100644 GIT binary patch literal 50052 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,d70FLrU= z?Jiv@fBH7~8kGFH^MV`J)q&VbO<88y3Hk(F*cJGS#N>*Na^^MfN<84nK4@x}Q=pW3 zlerJoVos&WK+kdfqMY7XbfHU#w^Yt?W(m1DanKI*k-d5p8~%YX>K^%HdEHur48Y(> zronQmFr)BWgI3d0Xk#N^*w};-%KQPAxKfc6*T-rL4ONUkbMy4o3Pu`iGzgA&AC+Sa ze|+?h;t%Tu<2(>O?4NzG*yJiJ9PA%zzUeP$UL>5oNDm;AUa_HFiOu$Sml)G->VF`j z>ZwCm_t^vPvtTxg3)z>SD%6)=mF_(#`F_1O)@bot87WYOiP^bzb==j4J&~bhhCNe- zIt}snzi3*?j8{8DxVyT#lCo;FmBt&vnv0h*h{c>TSmf2xB0FBG&U)|FQIk$PS`&UM z7~sGvqy3jTeCRiDPV_MxJ8ijSw(k0}8TEA51ZUG!y}~2{=a5j)s}bg@5+}?s9r)-< zA;3o<_ijmJ^#TG4_V|<0{|*|${{lS1m;WE*N~;;JDz(0VGT57C(n`6zI<-OC3wu4v zdocARl)d7F1adpF2wqGmZRON1CM>yb{S?2h5ku7Y2i=gG{1H{)THj~f1fR`dTYjMX zVvniSnB%{N<}y~JCNMPQRsQPaGi?PN*Dk_L>p3r~Ycp2-H~PhQ>$;721*=@P77`}Z zvGK7CYg-m}P7Yc1Qhni^q+!$-{D;4P#9dwMI;Q7%3?_P`qroCnLH}u4`qL-|;K0v# zKz5D&60j6}A8cmYlci_Q?S86|my(pCG#)IWNTr93kfID_*0RHzF&{;ds2&CY`}( zq(e}zSQz%ZXzhyjC+9o76fvLJQU<^OOu=t9ovR$IZH)eheDU`WoVXAB1s%<-s-o)D z#O9T`QjY9mfMUkxUouqI+uQW+Dp!nrO zYN*G9MHP=Vf-Y?SAKZql4#dY^359UT|9`=W!Pxmbu ze~E zZ^esc(V@|Tr(F!N|(d3pYP(`ucd*-8r)d#8MTSB5~b zYWF|6!1CrFcFczzZfW5}FwZyqS$sTHOx8WM=7Cd%FzU z%(&Y&JBy5PSrDJV;>(U5K7f&jETpxR(B0RniWFv+T&`(6zTsT;x2bZKl)zZI51=Y& z>rfI4XV*C97qwQd5EvIzs%g0iJ0>Xd;xj+BuDgSVQdUMckYwV*d_K_fWP{%1( z{7;YkS5%+>Ov?XQkVqo*bjTO@@c*%UVK;wr(|9<$ z4w}!0c#r7YTf{XD{>QOUj`^Vqs4rK}c8BBeOqAO`+#=c}Mf{)NJ?JnVV5DWBVL`=X z2Jl%qw_Qx@NYWe_{m%eIrwlaCM5^^J`r<4=%Zr9yK6ro{AGPI$Thu-Uk~x>ymxBh?rL%^^ zj8XqVhb1b>0W?p#EQ1AUR>)yK3&FRhV`CWo>OZw!DEEjH|DhPQgJ^T-o!>m2MSb;9 zU2eynZud%@b%|>LmR8Xfssoo5L+N~*Ka8{_F@9E;!N}MYhod_+JB|a}tBFGz_meN* zB1dRtvASA5U(haH-|{mO=&pS$17&Vbm*{**zdkT<+92`qoF?A^=SoR;)6wl| zS_}SH@B0Z)KDBMg>;3zZgxI(Pi?h2b8l~K3p8fB-<(9l^DS8~STe`{*k|c`L|Vp-m{ReULb}b z(TMwGI9OqhrKc+ee)AeHy77Nv2ky6!BaELS=B5cCIX){Qrpx|gwd5}!n%a%{uf|bd zW8Qij!SG!wraK?j4WI7(+qM@)GFIo+s3d#Te3v>bh1a%T6Hm#?&DPgXss)AOWZzj` zPqV`5iq%1V;0wBq5$OqMG_M$3+;5o7f|MbqwANBu<{Pq7DioCAyzX0Zc1wib7 zVVM6dV6sn;(jEx^R?na;{*7svQC**@cle2;xu)~~5>1yqN7H9Y3x{718_$N=TA3gJ zC({1F!hgN&m&*qrlJ8pyFTC^czMV>G?Xty ze0^3ue{?Po^QlA#-hV{IdxWJQ0Vmn}qmtNuaX~Q*hNCmEIt~-9GtdETr(MMKO(qQF z&KsJTor|G^tD+YBC3mVMe|d2y-(gOIL#?5^rJKg9^ey`#_aU0FuFW*yl509<4-}HO z82BGCU-$b2ZM!e@@3>3)+LJ(E=Re;1@>i|3k>g|nk?0$575XJn!p0c;v;WP~2*AN4 zMy5u&#d+vYr|Abkk$^`X6~t|Z`UqacImFri=|-FV5cig}==54>);^cjJcr22ae)N{ z1sNIHt+y>Fw9U_HM8y zmFDF4Vk2-ZFZ(rIfq+kZTdxBx_l1o;WGczd=H=z*?(vxI?IBVzX;w-Q5bFb8W?Hrt z!%by(J-zK4&qd8)!?j*H>9Ky>Gbh$pikKK29K7xKheT>Rgetv}3_xTx@a(&0q?*Ye~9_=GMmB6 zCmE~|_`77c%h0V`CPN+rQdTq+`JrSr9R^If5t?dNa+^gO9l4*ubON^vSYzI=%cF5y zh^fVr$3&8k8{|um$A=xb$g8N~S))NePiD#l@6CGM#~~=AK#RP*CM=#*gx8IWrlKOk zW>UymV;vO$3#TWKVXRSOTohtH7vmB8EC}vFoV$=#5!C%(LUTNYS;9px`lX;XwZ5=( zHb{I9GjnukHMNj7if1S&4GKJ5thZgOwv%ZvI7gm=k$zqoM^iCO>2m#rak5hyR+QeZ zNkx$+J#0}ULH@OWR^HIaTVJJI5&w3CgI_VrSO~;P_uJV^=1h(9Od`v;9>1O!V3^|c z$?_nQaQe(QIZGR(q@-oy6J^hD`p;Dr8v6QxG~>2`txP=FMiGdivJ09^&28DAKw z(jv=rpR}}$OzNn9_YZnr-06(ZqJ{G-a;eXKDRaZvIAQO@hnPEQCAko9&V8=np%l1= zT)54tqF(D6@B4bk$L7UpwS~hY$qOn0pTOi~I zs?SovLI6m(y2{3YtSS!;4QT6&nQV^0|Kd(Wuh1XKj}`5DChtCLY>M@s0`kjjmUu9c z9en%UQPfD~H=B2FYIoR0?)Lri^3x~}RR$$rq(A~{+1S$ZJE=UEVnKfL&MZfDa*iN! zI1Qw}u+v?<#5uThSdrI!EFyT{=L~sPpw_W_a8Y9nuk0s`gN%%vwcG4b`9g4Zz@`p1 zD|CGtryd;>Dh*j@A2yURVg{W+di|B|`Q!c8V}qBX$BKyQ2^Xw&6Q*a&Z5%PA@m@N( zp7}-I|D();IR`PrGqGnVa(!6D;42C0#!~V{BE(44uD&m}*oka6Qa266XAZGD*NvE3 zbROSc1dCI2#la97v2m;Bajfq023WXFAmP%TeQPeY&|DOMs!!(N*~tt)WE{%l;q zzVH!V01NA@vATuN`B_LOqt6;1A)`qHeR~9%rlE=zVLHcB)`4=C>oA(`jdf*QY|$D}Bm)@$wzDiFr>~7fs=M5)n5I8;bAZYD#^r@dCIAPi zd7rPWNtdGIJE&??Q}IDp^QaqaU&)T|&%EIGt1Mf7khP~-uSusz}vWU5QwOx1(5O1?Z^z~b-rv+06``=!V zhL)Gd;-N^ccMi9`K_5}p3fn}N1>Y{oBukf^y}yx1grQD$lKf(GJiSWE6noeOcsAYa z5;P451I`fSS-)}uMW`Mse{ZC23S|`E)~=zT_pFk^=OCnTbRpt%_Sf^L?KQ`G-fY~B z72i=s6QSEZwxXR$6$Cx|pV1iNV9g2$gKBU3TR9Cgpu9vu6p4=5Jb}SvP zn?@BhOEbz|DoJ93Oidt3SP!9Sh;ZnWRy!#a(IIwSaeW^=!k-C491fuN0~t?#DEmw$S0p}AD;2Ba|Da(M7-YXaBj7KC z@5aoY*d#I0AOYQW;gR}6OKU)*^7P~$%1=RDHj@vn=uhhi?c{rHeVG)G+i0lj4`x(p z?k0%Z)4ZSkTj#GoJ{zISW`K(sa~{a?G|N+7hfrMhSK~bqWJank4?N5lh5CjcF4xxP zUo?i^kULC?dpG=KKpGaTQ z5*`%`9^do`!8<`VSv~+3ZTm+KymQWbfiPqB*v^lAS~HETJ{vVvhI`!yVgI=gV!)MoUS5D!X*9NRtzgtbG704s zv45u~Vx2F%za=+;0Yj%+FFg;pJA zoJr-7%j59)X!YyXqWAdTkoeIUG)gZ~cnR^5mSrB?$|-ikw!drl=-3R`7$zM1ekUK$71TCsj#oB(wocg49$D+W zl!bigq^RYgT#|uIuY0)y?fXR)vV^z(b|WcOSDEA)79Fbo+ruz$ztg_~M#!{YLK~NW zYyChdO33B0i?)5(h`Q&Nuq$KalKEc6+L7_sHQ+I`Y_*yfZ=y!p0pu^XjO`oqO-&GO?`;7Jj=l@PEVU(of$ zd}iSZQlxyKMmgVaQk`o<@qXj?-G*oJhMW*s{?8xt^YiNz16y3}x9IOqjj`{+&7Qh6 zC{!hNkErNDfk9D>1%;RH7K0vhBhC$%RH!9h*C~?HX;I^sceF&>o`f8^)yo@$SF2ie zZ2H@17Ka|N3bwZL%JB@|O0*`c*Gbr4n16Pz?IrZO-=_*fJbS^rg6hnZ;Qai#Vi-8$ zV>-0QL(y-TAfLy_-G>}Gul~ykhp$Ji>zNR8^W&PWdS=w-*C*3*_pk<;TpX9p-YSd3 z`e&_p>x-*1k)>Ge>-idqi-0f&D^1A1v#`ypHJ1P zsC&GGKR}H~Ph*w)dU8N5_mEy^U|sT=K>}J0D^34L zVh0Y;(zcX9#+)mx$jKsD29xO>jq5&o?J}*NF>P+8^KJw%Fs1%6Rj0lb{k@Beb{n7g z=_=<#OD~@`4;FUUkDIsT$brwc_PjaI(lkFPe>y4P9;4tpe@=6~$G}HGs^>A}@2vdI zdv({17HOR6`$}B|pcKuuO2$lRO~-EfS0XgxsK&ml0O$GP;2-}&l_#+^Tc)>>^S%hY zsG_!JD17&cv&DPj-RT+ipp@`-g2teXZDqLx^L-ADP2O*W@qy_F+o3 zB#FndU!GAdxT*AX(pAT^NiaX(5+^WAOmxL`{MV|#^AjrbQ>+z6j|Bk(TP8JmQxkty@0*mG0m7H;Hw(!6>h4}YJ71;|`~Uvo z=?bEBciz%k^=l;c*HF7gY9%pSv04As+g46g-O2jEsOV>J!i4G_nA2*6SYS+0y=h&k(bhY zQwq})20wDmfMh450^~moQY%t9Xo)IlVVb|&| zIe)oW9PXRE2oX<3wcgw~#~3$ik6dwUh!SmvJ8g9?y+hnk&>E3!^4{0Jfmfg0UA?FU zU?K$NwNjsrL{}~IF!J^IeXGk;VfSzWNwthk8M_wBB*G_=QHOTsnbBs&(Q59-DuK`3 zoracGia5_+@|6QZh~x5n3Dg5zeAPB#U5{jL{786jE56!nMKVjnhfDf!Z&>nQqy*z# zxshgQMDy+sszR@fV=;5UK0fcSt=AK=A0ZXdb072nQH9p$7QDfyOwC&m|BbdEK}bCn zaYLsPIpy)gj<=ubNA4^z@BT~N#<#IrA86MQ+)g?8dVGGC*(`>j+nAc)J7Rl2&X}}( z>}&M<)}n{pA)jH2mp_1Hbh_lVs?15u^vor2z+Ywj1!nIau-%SHI-&x)g-s(9$;c}S zCdo4;q72*+w_gbKLE z8^+X3B{Q}~TlL@f8bTO=1U*wlTG7K>3OXurI<+<{pial>u&{$gs0>^zPL57w#hf+J zb&1wH^$*|uQXlF_^HyRtK6rKI)*u-U$`g%Xtaovv7uU`S>qrMNK2ewTq(95$_JL9; zE`nB#C4VK*bX#3~94|{1qECb<8QwcN=MKtRMf?J8WfRVlLUHHkbm;zO@LOu~4DH$u zjQMJ=>ffHcl-3|!-sUP5*~yx3SAg0as+HySB$kC{TYz1A%TrC(z|*+}wq$I86LhPV zs>9k`#DlyTHHPiP(QN=jv1PdaO;{w5>G36QJW4g>tzuZyL|SAPNrrb%gLjr70q8&r zaTD9ORqA6(qal1KD`~B^Km+Lbi-A2=p%639yB@-pW(#BjBB@rp{nA>;*jZfVlJpVkW!3{)L)dg{DwL3UEKB#=SX!u)W!x&Wp!lG z!A(pY^SY_f$tf5~a7w677^MIP{0?Zv_pVhyY2#U{RB4LlM8odOQ4! zxDM0&*~mVI5`(D;S!s|n!n;0tU6(`drw2hb#w~LVvZ1;LkDkLbz@t$g&t6K94AP4G znbt9A*mD!k(_?)bxoYs7J8u(;u4E9!s~iKL;CJdd-t1iqP4g>J_0 zbv+(k37DOW)8`u(A(s!=Jm3(kuQv1q6olkQZ8m&uuNQ=6xJpSwGjf9W_*?uPG2uRR zAIFJm9!GQ}uguVT-MA1{hYcg?PWD5PJbS4lMQWVbBZymw(%f7)m@*wDod7X1pSI4o zcCP3-9;hSLU&8Ejj76QW=XC+19k|d)Q0SC$5a)oYVhx?t*$oCw!0+^Pip5i6{@AC> z_h(RCzi1Azxyw80RE~MQKa;CWIrG+@;G*|6UO9>?6%*pNktxxjhWnR(O{qs{_0L>b&%<|IK9Y{L~UrNC*OT#CTaZ@?m*%t2Vvcuin-2e&Mf zdfp9Tv+ceXr`X)^4&-4u59C|*x^1<+Z4~V>Pn^wY9|^ta^en5M?;c}7(LHd84^F%- z$Rw7ot8ie5A$~R^4Mv(df<>PN5=2D}(ap@wzszGP+ZHw!BI)q+yEsnLQYd|DxsaPg zmQLd##KgpuU+>i$78RNXBUMG5_M25&TAzuo6G3Ib1Iu}5-ikBc79i{J-#o_%Odf|x zN~#t`+~~<=^6L%qWz`8jh77hbI-JOQ_Uj$LwR+!+u7CE1!H`U1hJQ{+nnX|e1s9o_ znYn^##!W~tevH@SjC?@;xyY~nxL*+**TrnRN^yR1VQ{v|FjH>K7Rj}%J~26YBdk!3 z(VeZJtTwHG(a#|$-OLDx*L*ZOjv4<%mraNCboIq)?;uf9W zX!PtgsrXLk-D{7R-B5);)d7!_S5R~TLW?c(JaIwl=y+o>e~OokkDvLc3y=rn z_Xuxr^O#P6c3%%rC!-4MJ0JppNO5na0|j5?S(5Q8UX~)%k59~{Li)1@4_PPX_m4T5 zv_$nh4fmhYri-+qGT`07PYuXxVaUmqc-05<5&BU3Ciur02jVP)ORfGgi4f{xo**Z;zsHY7UKSW zl~0f9-7hf?dv%{ML4KBjX(@4??;9m2sQGf^;f~l4^ijbP)IobR)F62sm54V*Mc|?a zgV&C9_YocnH01W-?x~=P`0FVGUV%2yZVNy*O8vtRYTMLW)Y&>6gt;IO@-Bt<{Gg&j zov_$E8vL}BPC!$bpowBXTljRCK|tE*xQ7*+5O?=^faN8Uk5D*m66CfKHM1}kDlftA z=%4{sq3TTQZwCq*s5u?D6(jc`-1zbP2CkG4l&@|iJQ%OVGwSTZwU?K(wjd@!e1DF( z!hh&gmv_lJZB@%AdiS5QTGT%YclOAMY0yWSvO|jcH)Uj!Q-rGSF2;TCytul^EGj~l z6S$$EAMdRFT4@!`1-peIt19hW;A7^)9JaPfs@6&k|J>x zR{~Koiuj(jyy8D6TX%cg`<-XQ{6|d0YHDh9z6KdwgnzBjn_kabA|RYWo}8P*=|?RM zR9gEM^TLejXAS;TGRf<55NG}UamR&_W&?)X2YngMnP>+G2ix1*LOeg)>mALbnbzf1 zv4Zk<9w|nXr04Y568~+K8+_`gprGIbKD2^^BVxy{HoQB7=zmMq5RfaE5}3SehPKVR zy}vI8hA^*gu71;Jq&V^B`eMD3x!j8Or-a>_MD4M>hOSQpKId|&D9S7@;OP1k!usNB zpVg|iN(!+GnWwI%-t;6&ZcB>d@p25rNI5+cD(W2+pV7clYpeHDGiYQv zLvTz@7Lp+$q=FC|Y?Zdn=6x+o1W-RCx3NJo%OFCay>)kY7bPSljNXio=S1>mJ^oWZ z(H*yIBg9XYXIPy{lN&Ft{JSv!o8Ql!P?WEW*k)wA((-KMQ) zmYpBW@9M*g$thl&Sw10mBJBIVu0)hD!x8u5EuFAa~M# z5icrc;2_AycAZ+|G(P2q206Se_mZ|A5&#!$AFc$Cg@#6uOLtgp0gjW}(n z2~HD&?K`<=MG^-$SolW50HFh&eOy$aC%RUDC7Uis*NKTKp=sor%*-|nOoUVS35Av6 zU|0o8Ur?R#mxl$1wjwzrLI*0#b0j2E9(R`A%`~4~Pg#-0l?0N>IxG`6d1zs%XiqsM z6IlyQZN1`0Z$ZKrKYEra9)^&d@5Ch{Zv0!Yob#vb9h9Kr4#w^6?fRVu4gpT*h;3;7P~$m~to+fQrhmw%HBN$b!zYS3^~RT&mJR$~9)dNpP!4n4cT{ynvjS z{0NXwwiQ52zU#rMoQXs+)v6*@W3!Iv@9I!ki_LY{;I)x?IQ{+8R|p1ZxrmNlB;hDk zQuz;WNY`e^DJM+TLd~G=XuK-P{NKIpDei1}*Dog}!inFd`D!)AK zupxT_AY}W>lI5fL!@Mea!nSx0kk{^yFvh8d`YfqSXke&mp0M(4LJQF|BWKv(0WxX1 zpf$PVcV(AGy|yFFKK@0zxJ}n#T7=?F7b6{g52-IGEeOcbH-^m!q+^f9zS_!uF2mww zLmZdTjRh{)@ZVTv_WFe$!nN|_?k@Q6+q4iP7>8wi<1Up!R~3NC{q9dEu+jfM%Pci2 z{>62`wtiR)=nb=UEu#NrvXVS<4(M<1XJi197m6SxiCKS>^D%=a70ouxc>ru<-jgJr zVpy!d&Y5x^z7vo(`<)GM-~zK}SgKYtAWLGvj3t&4mVcIdJI=&=NB4~4uf-VX5(5q3 z$3m_9F7hDwI3XYgUyLzf?@aqh<6jN;(+A7pgMr%a9NjaRffLm|S)!GElUPZqqbKlD z>g1{en~&-HG0*vXOPR?GI=e_*{8b)mD-_wBY5bvjyKPoUz;mrJLP3*VHK#r;w}COd z4qXIu1MLF7$?gZ2Ve8+^Y<;Y)&?LKiW3K%|>o2Rq#J*o+$?IHk9XS08VW1sh&_p9~ zoMH<@%*6yezAPxD+g-n&{t9$W#OK%V}OA=YqZob?RPaD>2H4e?>utOnlWkr(b91WjdUa|XrhzuU~{)`v`xt@ zpDse*6(Cv7=z7c~uyxxK=z8Pr^}JoIWojb0J;s_K$SiorGHZB8BrM z_sO_N{j-i4ez$<=lp8LL8}KvYywbRQWblD2*7?B)9N5J!cgwNo!V1ZB8zaq2E@h%E zw4_#gmuGF!>5qpjvzD7x%!;%KzYxRd(n77i#3P{i96FZCXnCmnwb+g|D_k|Ju?~gJ zBdj1s2A9m5EKrI3vYNicSWa!I52zS3uP0hsN~wr`mwY zc|;#LJ(;b@bW9Deh49{ydRaEQAuY0d<136u@D$+66(V?!4C(;ows9VG+2gR9i@w{T z{rC*O#d?otg*QFQVCUowR z9D{g7`~AsPm&J|7j++DH>cR4aX4*K$(#{Sj*<`RmcyT|xYJ4NaTq+GL5EQG14t<+Q zR5v~U2Kdb4^P!N^i>{oU96BUXCRipQgl>t8l!63ny5byDm#E-u#CogZ##m_cQg3_n zF@}nQ^!PdKEnM;F{QNxVG)m*%uzBmnVWFaW=htV{{bA8mQF>t086VHj?`BsC%S*>yhZ7i;=HgBtodeC#*tUSHhIY4P4>XEn9elw(u)%rH-NjFUFi7zhNs8Cf2I z{27(}Oou`Wp+vGuW8m%ivg9dBPNxV@R+~XcoB(;2KQgkg0@9>4j{lk)Ga)w2fbdjo zmjsVBxzgM8fYsbxZZ7BK1S~xR*4OA4(+jRR7l$_XWGz`96Or^+0elG5DO&~|ycsQ$ zj1OabdOp^j_r|*>R_Hm#dlJ(*qEmw&Ce^aS#Y*vsxFbxr*Zv_qHlwh#-PvNq7B26i zQ2i~J(%7+9RJ7&JVt8+&iD+R`R_I#@`H3?vsIYm~w^(6(hgfUruSHdMlU^2rVtBX6 zJy$R9Go!>92G2Cm->p#gEtlU@g3%AkDzl@I)P6t7+tZM|h@p!VsVgneNV>3l z-}b&{6B5DRn{s2?Z$o5YIcDQ{Sr5v|A=507D^qo#GKdKzAv4s>4r1C$CNSw6{25xr z6;%kg+mAtPEzPL~R%H zvLl_rF9UHt-g)f)Uvg$h2X$-dRSv^s?apj8UE&cX=Px*Do6$EVxWE4>{-=5C>YY0; zoPVr{e%S|kC#r0&qKxaP*H9Yiq;d6p!0tHEqRC!-Bt}@aig23@8cXX5<4H-uNmtDS zwR8q@y9PRRg4!=*!I{u{ebYYCy|?}qXT62NY|Z;IUL>6uz)~(@b3*+37wRne zzlY91TXY;-5%iGvj8?UV{>MZ9eZns_62l-+f38c;T3r`_8U&}@iB`hJ1KmH5;`RH< z$zs5Vgk0nM>#hpd1)~SqWhV2<>PN>Hn+8atT7r-~RnU-Em+J3P{?$&~&l<&e;t9}oMdNs zU;R|*a6D`LIpEKQQp$X-jVsH8Me3#Fw_v8t6u3NzI5v8 z8r@%?fOF#cIwS%q!cH=n%gf8=BKOzy>OfpmQ`2BPclf(bz0KzyBY=Yr_TF?!)N5Yp z*{ZCjCJ5s3^3a^FBs{z8v(oRe9RY!AE)N#`j{c>dPnXtD@l)&!cu25p(WVn&64}9G zWKz-|fg+^PkPzb4(ET?L(&J!fEy|d3!I~7FFl5ADMqFmuaQySggNpsO`L$6HZw*7- zRz)QahV1Pjb$u~*gD<~z4~vE*hMdBZ3zqO}a`{jJBlX&H_xkyN>%#lr{~=2O;@EQH z&)W^SEQgTO^el{}JhBdo=V(gzEx>ZXZ5#n^Fy*Q&jH&rLa%oBT>~h|U*A)B+W=W(# z2|nzr?CFXDJJ16a7zJ1buiH>JJ#UrLMJQw5-~^7+Mp~ow*pqSbcz8S;Wp`pn)V30- z*b)^mZL#2?y$Df)%r{Qtsr@Gl)P`x8n1I^T7jWV~$FHxS{mG@kt<{RPmyXV23FCDq z)g}Ky<#_3rj=*ny%Dc9%j7ieZZ{WK(K?BM%h_#W1CiZo|xT<@uPMm-;);+x5WPb^P>(P=+w-xD+m1dXwvyWxk zjMHbG=yH7SW1pygjx8-6hT=b&%}xACkKQ8aX(N8Tmh{--1-aH&R47%$UjA#50BQq} zVEl~FqSS5f7hKOGm#i=M>n29tAwEa&?#F3&4VbT4*8F^2`8u9f5jPChcG%Qb%k zV60egW{HQz-{02n?FK0FA9ny{K!3_ZYH&R zITdASUkHCBsDt_H!lsA#l#;tOVlQA(@7K*k+-HlKA_#n(6nwfFemGX6#t7^>IqORJ zNh^?Gnv8{aa|(WF8n?`~2_8rlI&8jvk{u<02Wr^Oj|v%#I(t49Cv&s@z{xq>co>LJ z{Mg>&_3$;$@q!Hw7A~4VmMndsEuM75b~)5Qi_$KMJuoOp0mN#x>0I)-GHlgyHjG+R zU42+_$A58pdJ4r@cfBf(-W`SgX{_9@ZP|78x+z;Rml&`y2)`Z?-fL)w@@NChjFd2LrFRB6I735j$?ChZn4~v5#hjR`rMq|{1 z!#DK`{$!aZYwtkeqQORSA6{n@d94G9lla{)HA^Qh8XR&R)JdL<$4zS`Iv zcaN^fnGtd_k_v(u;5m~Sgc1SH%0Scg_4U>L2W&%JhO|HqFcGq@B$SlK|31|n-p-rh z;b|e<@IltE#!EM#&# zl$+__il4&MxynvjO6oSe#QH69;M^fsergO@aHOn`uh_S+TnWRUpuY9R#;8;sz{K9`>aZ7HS7!3Qcu}9ZG<$Nm+OowoKlCGo zzdF0G4Hrdw`mWyB5OCT5CcUGNVyI=gU2fp6VDw{W)OWJZrUFX7IwNhKID@N~<2ZNy z$NL*9nG_a#DaLfrNgAjZA4t|nN)&c8&R)J*@Frs??S)QaoM+}0-sM7f3Hb%K5p9px5j>L9v8IhU+=@7oSdYwOU8ND#oGpd zycDgR-($GINI~3nqvf;vxA0uWVUa^9`<(W-w;F6F_Y4FmR~De=CeiUqMwdg;v^~q+ z!^4w~w7(|h&3gBBkUB>8u9cOM={c~zZ7EX1D8#yz+wS#W*c%sH1EePIwIkzxIC z@bILLIbV+HuaI;~z;(@{vj!`1Q~bpUx?Hb5OzBzL?WsxSlHLuwek#G6z7`^{>y@XI zxDtYVuJ|iQ+vBpl2i;v^*mp-yb;a&*ugd2vH(r@hyhnB-fS!=9_8Qzr;Cd;X z4ku*(3?8_Z@iwQnj?H|EUfcbkN>V13c|`&37%S}Etmtt8`UWV9do$7f5d?ftv*aR( zw}*EEv%oV-5dYcrG*GQ3S|+OsJ5BeuQewl7IuK?G0TiO^%*^xOMu>%r8F1l5NEm)i zbKUd-7Y%*Rz>cA{FNUfI3WA)OEB3n~ABh%(aj-HUkP^3dglZbmNz6@I%sUoD74;w= z3ykA6pDJuq0o@T1xou~vjqjW*VkCIQK=D&@va=I7f_(>v*9xNEbMfw86p^ebjZ$O< zs)339x$RxdIz5Z}L{Ask@#A5Oh)>OgoqO_g278i8DV=n|ry{}BMA&5AvtI>jk zm(RFA){a}mWi4k~pz_=N}1&?fIqZe+c6OG-IX?6zQ%I=Ct13;0<)CYRb!WG zUk8(aFSrdbxPafYxpX(VIel=eZ!jJprj$$eCy(S3VU*fetE8vKaR;Zx93rB53=~)V_<&)|b=Vk!RjH z-_$~mul9Rc{xt%*+evpTND^Lv-;2GxYWaaKd{+dNu>BqNk$M|Qn;-grH22m~QGLz9j9z+{`%L7R8h(HjZ1B5mb*8%!!M5A2H537@N~i+W8@8?ZeR1|Gv`105>Ct z_RY^&nHfUn8v-*C&)LJ+4o z3KdItt*BzO`*c@h19Dp@z1^Z)MC%0_UYhuzKbv}pYTGuCM6@o!T!-stK%(g?WCmxE z?-8+Gssu;hx<=h2T)2h~j2Fk$A4{sK+%cg1NY6re=Rdz^M&5vrw45@z{5)12?7v^? zk}v17)xLmiiVmqsr}1(Be&o4}BYtJ(%vw>m=5-efe#!Oo7i7R+Eh z_fO<0rH_!XFrDbCIo-|PuPCa}D2c~Au z<7AVzyt(+9PiBOG#vJ{3ehq0q*LqWdOgCN&ZOP@d^q=Th{F^$m7G`aQSl^J43o-&yJfYU;+Fxc z8H)=-9Wat(7zsheAp4YS=fuIRj zbl$gZw=Sq|KKtu-onLSzP1u);qN(Gz&ahWzP5^B_hY_!NK`Y%*7 zj9f{>%j*{yd>5^?oW=sjT`cF>=H&sHqwfFCqZfPy`|#P^!o{k?$T@U=e9~_&)B;Cb zR&&@kwBEI(uX|-#)4QZcJxon!Ba5w1H}+aSMQs!`%q$*8wfIks3z}=m1NDd#nBA@a z#J-2YupsZYnv!{_RJW=4)M?Zp=`Kfoyl-C~^2G2NVX$L;tN`$5O6REkxbK+!YARou zD%QGQn%=(6+0FrwC2W4*r?LSxVa{JBBYMHnsTvopV1W3iTmfn zBL1y_m5ea|B#e^&C&{BuPyv~uF#FFQv!WwYGP~Jgv^FJzz&o5Wg1M&UvcPY(ju+;a zZMQ~F5o;U|92<|AT4ULsY)kE1`W;WoP1jj&5ElGqIq}sNsj}8lblv8xeCOyO^KzDn z;Kff~%;N#GpMP}Ay##IAUE?{yYQc@MjJXT1PQ5|cPjg4JE+?8T%MQL~EMdKMaaPrKYu zzE~xbu)D3;^HLxfHO4q5b=!`I;^qDPAhOix#p5{ms0;g#!K-2oh;$By43cd_Mpr$M zuzlfP+G)7N!GsG;5sohXhdH+Bo>CLo4>3-ZE7BQ#w!Tr7_R^-{w#M6?xn#&>mzV+c z#g&5vncZn^6Dr?0GY6gwUi(gB+d=RAcH}P)hoc>?0`Nrl=t$%!*`#JWdBg80wVR-R zo;nSal<(HQykV{+N~MoHVEdyPb1viTgAR(BqjNfQ4T4%8Z~RX6@A;Y(7E3z(#zm8S zAj94Q>&EQEcLt0CcnfWdFps>wQK#McUFQO_1;9M?Z1fZBE-eSO_;@$dY1%$Z)4>qa z^0tZJlO<7)3hdA53>X{kArk7k#;2iJCKV4hiT`F&gsP)Ks8W9^ZxLX+F{gxUjmR>5 z$|(~H>4{z>b0PcvWAaX4<|z+cfN#6+L3_;DGV+o$5^ zyS2LKTVOS`>U2vHtc+yIPh6piU>BksH~@JbV(E03JMYnkx0P(YXW)?8dDf!n@L&o3 zZ_3H2$nmUsSa45C3G*f?^=52_yy+#USHr~sEQG>dq=dF^OU*L_Pv%$-XEiu9A=kk` zJmpt?R&|y8^4PJgoT7`S&GpYO_Y_}c4xyL+=pG9O1ZYmw^9r6{nZ~mW@I9O#hkcT& z*J#?Q$-O&j^!-F=@7LlYhdA98Af=vH@n;MClQq;{_@+Yh<|dG5FXwyZY#G`mUk`DlB%|GJrb?N`!6%-=~Gnnnf&Y?94S(6%!Ch}>2COghuS~U*5QK6Tm6w-08IiSANCycJbx~WDJX{=u z%+2A-rD^txi)MAX7|yCxE57?WtEP?F!dOxJvby{$9q2H|3y_|musRsk9!N)&7(6L~ zuc&hw!Cf_<$zZ=3#z_Vzyz25*Oh5kQ#STUZ6-ugfos3ktSv71ivxbTD0SA4Ivf+vpCo}*CS%;zd6&5z|0t+K!5-{)sNhPPUESq)rbAip zBC6vPg|qtd-jWZO*&a6!lThz+ zEbpgvL+$bXU74UoGGosj-_;8_oecXHf!@=&WIvf+11dGAQHs99`%S9*nn}vyRIdxN z+u%Q&2s0nbFuq2$LcdARTl3D&^-t4yV1Prv_JT<5gjs-ot=<`<4ZmCAVM6Y+P=S+= z4^WX(>g>CjY|O8KZR91pHtuB$jGGVEi2vGz=19lYDE|7o24uu43qcmE<0sFYq89p1 zTU5ED&$}sVKXpH4ENxMT&%5ov8!kgqc0u42Z2wz}F zwoA6Dsj`doa4r*#3t}Q?#Gm;s&;SEU`6q|5t`YNx#!#l+d1>oS*9$u69PH+>VsnZ) zyhiZ@)QB1flU58~6j+(|y5mEvz-uks&wmE1OC7;5oi|0n!oZC2*W=xV z%&hOLnZ+7BiSUhj&cSUo^Q~BF#_E{Q)a-Dycpvo??^)*vg+BP3dGkehM9?w;VMY33 z*w<(NAjds!}{?0BgqwO@q(&)i(w;2}g&{tYg5SpWoDmx(lTJoaBJ7cN!I^>4iu-X2VM|Z|YXaaK|padi>_$n|bbXme^l~ zSHyqUawJ}pP>lSzqCzxOoZ><@RGjESwmb7#PbR)c?*H?{eXFPQYOi>w04kLRY z=L~aHQSjIPhJ34`ZMxGAU8|!NKL_hmJ#fGYh!YF$&syBo?gwe0N;#+WKc`EExnYA~ z@ei&D;+sl5a8160D?&3a9jw+zG+XOEvBfC7`&7SUSI(XsGK+=p9H@ zo-stNf75g*b%-h~HD!fxAWxH=a<9)6Y?4^PTA1l}&7z0=n^o^~(a^Ibueg*N+!^C> zE8A_dP16a1kA8zYSb(43M%7`2-;kG=3!|H|V6=4J4oof8;XyU8Z(3TfeOg}$jD`MO z23QO&OMp4Ay<50MUOUR^y{>amRUOr*puU>;o3RM>89!mV^l-THsXbyExkptE!4NCi zIiNx$gSdH;d3j=$8gS_GZk{9n=wm=w&^P7vrP^vXrS(I(<#WpA^_A25<>flI^Mw`X zL^5g?OgNL67*HH3Z0P0h=gH@H_m&3|Kf)xwUxFAq4>w(snlCei6ZN<+`8P9sIA(;2 zk)B>JZ{LCdqZBtXxURMu8ivA@RH^p(cu-)oVTLSEAl%U^)Q}P8xdXxCXFxmv006$# z5xC&Z##<*vlbNHL`t|5SbGT~C0pD$YfjbovO(RoM&u)thbt7O)l+y$Z@^m+b<%fzF z=X1WCzA@PZxFm-`q(-5mC^8agk+2*=2=42I|8@c%xx6bMuH}q z0_@6LR8+liqt-X!6D;EeDpB~%G}btI`$gju&*r0p#49hA5UWE&uLNO~DBAuVPT6AM z7|G=Po(|lSOZfGXc22S41GmtC813B2-_!+MA5lI}t5XR}Xxuq}Zz>yNCG4hv7#a!|Vq&61TKSko zZ>Amf-4RToKYR*6LlHj9=M`uvP(0R?vixWRYf&-@158Z53dn)3-_3dbXp3J&A zwp5EjO`To{wX^}WigIQg648Z(7(uDDyLS_X!BW|eA9$C!bkosMehn74J|n}B__GvZ zf9PsGEb>Nu_gqvn+ zRSfLg;Lx4)s$1%_3S^qm6}Yp){F}sKo)pJ}TYqHr`dF{CBUdh1Oi)jY4agur;qD!o zP{Nu$GI(u=h*0L|WB6|=@Pa%0UpFqRd#=`kt{m;hJ`#(yI4G);eGHVG?6;6AgoN1@ zYWlv@XH98(@hyNBtC_12L;qz=f_Q%4GuOIyXIkczY54kPka$Kx4z0lBf79hmcloqb z0gvv<9(rNnIs`%pA0d zU;O?JM0xW_U^O-UUl=kqj4(wjQbw^0zV#($qEr?o

    VAYfk?^x~`13$Lr9a(1gx@ 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 literal 50708 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 From 880f98c023d314b171b1410ad54020ce7b0ce291 Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Thu, 25 Apr 2013 13:20:52 -0700 Subject: [PATCH 424/607] Update affinity icon --- ui/images/icons.png | Bin 50708 -> 50052 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/ui/images/icons.png b/ui/images/icons.png index f07ca838ee4647cb5d233216a336fe1f9a63eaaf..e2083da1969a1143fe90b21404e6689719c5faab 100644 GIT binary patch literal 50052 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,d70FLrU= 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

    VAYfk?^x~`13$Lr9a(1gx@ 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 literal 50708 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 From f883b0f90489348b287b5425a83d6517c0ba092a Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Thu, 25 Apr 2013 14:24:44 -0700 Subject: [PATCH 425/607] CLOUDSTACK-2120: mixed zone management - UI: count total number of Primary Storages, Secondary Storages based on selected option in zone type dropdown on top menu. --- ui/scripts/system.js | 35 +++++++++++++++++++++++------------ 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/ui/scripts/system.js b/ui/scripts/system.js index 312d5f4906e..fea76693b13 100644 --- a/ui/scripts/system.js +++ b/ui/scripts/system.js @@ -269,29 +269,40 @@ }, primaryStorageCount: function(data) { + var data2 = { + page: 1, + pagesize: 1 //specifying pagesize as 1 because we don't need any embedded objects to be returned here. The only thing we need from API response is "count" property. + }; + if(cloudStack.context.zoneType != null && cloudStack.context.zoneType.length > 0) { //Basic type or Advanced type + $.extend(data2, { + zonetype: cloudStack.context.zoneType + }); + } $.ajax({ url: createURL('listStoragePools'), - data: { - page: 1, - pagesize: 1 //specifying pagesize as 1 because we don't need any embedded objects to be returned here. The only thing we need from API response is "count" property. - }, + data: data2, success: function(json) { - dataFns.secondaryStorageCount($.extend(data, { - primaryStorageCount: json.liststoragepoolsresponse.count ? - json.liststoragepoolsresponse.count : 0 + dataFns.secondaryStorageCount($.extend(data, { + primaryStorageCount: json.liststoragepoolsresponse.count ? json.liststoragepoolsresponse.count : 0 })); } }); }, secondaryStorageCount: function(data) { + var data2 = { + type: 'SecondaryStorage', + page: 1, + pagesize: 1 //specifying pagesize as 1 because we don't need any embedded objects to be returned here. The only thing we need from API response is "count" property. + }; + if(cloudStack.context.zoneType != null && cloudStack.context.zoneType.length > 0) { //Basic type or Advanced type + $.extend(data2, { + zonetype: cloudStack.context.zoneType + }); + } $.ajax({ url: createURL('listHosts'), - data: { - type: 'SecondaryStorage', - page: 1, - pagesize: 1 //specifying pagesize as 1 because we don't need any embedded objects to be returned here. The only thing we need from API response is "count" property. - }, + data: data2, success: function(json) { dataFns.systemVmCount($.extend(data, { secondaryStorageCount: json.listhostsresponse.count ? From 232d44bf6e31898887b324bcdebbc659423917e4 Mon Sep 17 00:00:00 2001 From: Prachi Damle Date: Thu, 25 Apr 2013 14:47:59 -0700 Subject: [PATCH 426/607] CLOUDSTACK-2158: 'userconcentratedpod_firstfit failed to find alternate host to run VM In the applicationContext .xml , the context of the 'UserConcentratedPodPlanner' needs to include the list of allocators. This will ensure that when this component is loaded by Spring, the allocators gets initialized. --- client/tomcatconf/applicationContext.xml.in | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/client/tomcatconf/applicationContext.xml.in b/client/tomcatconf/applicationContext.xml.in index d2ea380ddab..1f5ab20333a 100644 --- a/client/tomcatconf/applicationContext.xml.in +++ b/client/tomcatconf/applicationContext.xml.in @@ -532,10 +532,14 @@ --> + + + + From 6f60833f9321bb1639372900bb625dd657006229 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Thu, 25 Apr 2013 15:09:45 -0700 Subject: [PATCH 427/607] CLOUDSTACK-2120: mixed zone management - (1) extend listRouters API to to take in zonetype. (2) UI: populate Routers list page with ones whose networktype matches selected option in zone type dropdown on top menu. (3) UI: count total number of Routers based on selected option in zone type dropdown on top menu. --- .../command/admin/router/ListRoutersCmd.java | 7 ++ .../com/cloud/api/query/QueryManagerImpl.java | 12 ++- ui/scripts/system.js | 93 ++++++++++++------- 3 files changed, 78 insertions(+), 34 deletions(-) diff --git a/api/src/org/apache/cloudstack/api/command/admin/router/ListRoutersCmd.java b/api/src/org/apache/cloudstack/api/command/admin/router/ListRoutersCmd.java index d2b26c0ac8f..9fbc9401532 100644 --- a/api/src/org/apache/cloudstack/api/command/admin/router/ListRoutersCmd.java +++ b/api/src/org/apache/cloudstack/api/command/admin/router/ListRoutersCmd.java @@ -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; } diff --git a/server/src/com/cloud/api/query/QueryManagerImpl.java b/server/src/com/cloud/api/query/QueryManagerImpl.java index 67af7e4b684..2c003d31679 100644 --- a/server/src/com/cloud/api/query/QueryManagerImpl.java +++ b/server/src/com/cloud/api/query/QueryManagerImpl.java @@ -994,7 +994,8 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { Long id = cmd.getId(); String name = cmd.getRouterName(); String state = cmd.getState(); - Long zone = cmd.getZoneId(); + Long zoneId = cmd.getZoneId(); + String zoneType = cmd.getZoneType(); Long pod = cmd.getPodId(); Long hostId = cmd.getHostId(); String keyword = cmd.getKeyword(); @@ -1027,6 +1028,7 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { sb.and("accountId", sb.entity().getAccountId(), SearchCriteria.Op.IN); sb.and("state", sb.entity().getState(), SearchCriteria.Op.EQ); sb.and("dataCenterId", sb.entity().getDataCenterId(), SearchCriteria.Op.EQ); + sb.and("dataCenterType", sb.entity().getDataCenterType(), SearchCriteria.Op.EQ); sb.and("podId", sb.entity().getPodId(), SearchCriteria.Op.EQ); sb.and("hostId", sb.entity().getHostId(), SearchCriteria.Op.EQ); sb.and("vpcId", sb.entity().getVpcId(), SearchCriteria.Op.EQ); @@ -1067,10 +1069,14 @@ public class QueryManagerImpl extends ManagerBase implements QueryService { sc.setParameters("state", state); } - if (zone != null) { - sc.setParameters("dataCenterId", zone); + if (zoneId != null) { + sc.setParameters("dataCenterId", zoneId); } + if (zoneType != null) { + sc.setParameters("dataCenterType", zoneType); + } + if (pod != null) { sc.setParameters("podId", pod); } diff --git a/ui/scripts/system.js b/ui/scripts/system.js index fea76693b13..8c962fc2b7b 100644 --- a/ui/scripts/system.js +++ b/ui/scripts/system.js @@ -329,22 +329,35 @@ }, virtualRouterCount: function(data) { + var data2 = { + projectid: -1, + page: 1, + pagesize: 1 //specifying pagesize as 1 because we don't need any embedded objects to be returned here. The only thing we need from API response is "count" property. + }; + if(cloudStack.context.zoneType != null && cloudStack.context.zoneType.length > 0) { //Basic type or Advanced type + $.extend(data2, { + zonetype: cloudStack.context.zoneType + }); + } $.ajax({ url: createURL('listRouters'), - data: { - projectid: -1, - page: 1, - pagesize: 1 //specifying pagesize as 1 because we don't need any embedded objects to be returned here. The only thing we need from API response is "count" property. - }, + data: data2, success: function(json) { - var total1 = json.listroutersresponse.count ? json.listroutersresponse.count : 0; + var total1 = json.listroutersresponse.count ? json.listroutersresponse.count : 0; + + var data3 = { + listAll: true, + page: 1, + pagesize: 1 //specifying pagesize as 1 because we don't need any embedded objects to be returned here. The only thing we need from API response is "count" property. + }; + if(cloudStack.context.zoneType != null && cloudStack.context.zoneType.length > 0) { //Basic type or Advanced type + $.extend(data3, { + zonetype: cloudStack.context.zoneType + }); + } $.ajax({ url: createURL('listRouters'), - data: { - listAll: true, - page: 1, - pagesize: 1 //specifying pagesize as 1 because we don't need any embedded objects to be returned here. The only thing we need from API response is "count" property. - }, + data: data3, success: function(json) { var total2 = json.listroutersresponse.count ? json.listroutersresponse.count : 0; dataFns.capacity($.extend(data, { @@ -2317,12 +2330,18 @@ } } + var data2 = { + forvpc: false + }; + if(cloudStack.context.zoneType != null && cloudStack.context.zoneType.length > 0) { //Basic type or Advanced type + $.extend(data2, { + zonetype: cloudStack.context.zoneType + }); + } var routers = []; $.ajax({ url: createURL("listRouters&zoneid=" + selectedZoneObj.id + "&listAll=true&page=" + args.page + "&pagesize=" + pageSize + array1.join("")), - data: { - forvpc: false - }, + data: data2, success: function(json) { var items = json.listroutersresponse.router ? json.listroutersresponse.router : []; @@ -2334,9 +2353,7 @@ // Get project routers $.ajax({ url: createURL("listRouters&zoneid=" + selectedZoneObj.id + "&listAll=true&page=" + args.page + "&pagesize=" + pageSize + array1.join("") + "&projectid=-1"), - data: { - forvpc: false - }, + data: data2, success: function(json) { var items = json.listroutersresponse.router ? json.listroutersresponse.router : []; @@ -2798,13 +2815,19 @@ } } + var data2 = { + forvpc: true + }; + if(cloudStack.context.zoneType != null && cloudStack.context.zoneType.length > 0) { //Basic type or Advanced type + $.extend(data2, { + zonetype: cloudStack.context.zoneType + }); + } var routers = []; $.ajax({ url: createURL("listRouters&zoneid=" + selectedZoneObj.id + "&listAll=true&page=" + args.page + "&pagesize=" + pageSize + array1.join("")), dataType: 'json', - data: { - forvpc: true - }, + data: data2, async: true, success: function(json) { var items = json.listroutersresponse.router; @@ -2816,9 +2839,7 @@ $.ajax({ url: createURL("listRouters&zoneid=" + selectedZoneObj.id + "&listAll=true&page=" + args.page + "&pagesize=" + pageSize + array1.join("") + "&projectid=-1"), dataType: 'json', - data: { - forvpc: true - }, + data: data2, async: true, success: function(json) { var items = json.listroutersresponse.router; @@ -5754,10 +5775,16 @@ var searchByArgs = args.filterBy.search.value.length ? '&name=' + args.filterBy.search.value : ''; + var data2 = {}; + if(cloudStack.context.zoneType != null && cloudStack.context.zoneType.length > 0) { //Basic type or Advanced type + $.extend(data2, { + zonetype: cloudStack.context.zoneType + }); + } var routers = []; $.ajax({ url: createURL("listRouters&listAll=true&page=" + args.page + "&pagesize=" + pageSize + searchByArgs), - dataType: 'json', + data: data2, async: true, success: function(json) { var items = json.listroutersresponse.router ? @@ -5770,7 +5797,7 @@ // Get project routers $.ajax({ url: createURL("listRouters&listAll=true&page=" + args.page + "&pagesize=" + pageSize + "&projectid=-1"), - dataType: 'json', + data: data2, async: true, success: function(json) { var items = json.listroutersresponse.router ? @@ -5854,12 +5881,18 @@ } } + var data2 = { + forvpc: false + }; + if(cloudStack.context.zoneType != null && cloudStack.context.zoneType.length > 0) { //Basic type or Advanced type + $.extend(data2, { + zonetype: cloudStack.context.zoneType + }); + } var routers = []; $.ajax({ url: createURL("listRouters&zoneid=" + selectedZoneObj.id + "&listAll=true&page=" + args.page + "&pagesize=" + pageSize + array1.join("")), - data: { - forvpc: false - }, + data: data2, success: function(json) { var items = json.listroutersresponse.router ? json.listroutersresponse.router : []; @@ -5870,9 +5903,7 @@ // Get project routers $.ajax({ url: createURL("listRouters&zoneid=" + selectedZoneObj.id + "&listAll=true&page=" + args.page + "&pagesize=" + pageSize + array1.join("") + "&projectid=-1"), - data: { - forvpc: false - }, + data: data2, success: function(json) { var items = json.listroutersresponse.router ? json.listroutersresponse.router : []; From 64635abba5804767764e5d130ae6429c6b76b371 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Thu, 25 Apr 2013 16:03:02 -0700 Subject: [PATCH 428/607] CLOUDSTACK-1910: UI- Regions menu - GSLB - View assigned load balancing - refresh data. --- ui/scripts/regions.js | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/ui/scripts/regions.js b/ui/scripts/regions.js index 334eb267bd8..2bbbbeea672 100644 --- a/ui/scripts/regions.js +++ b/ui/scripts/regions.js @@ -461,18 +461,27 @@ id: 'lbUnderGSLB', label: 'assigned load balancing', fields: { - 'name': { label: 'label.name' }, + name: { label: 'label.name' }, publicport: { label: 'label.public.port' }, - privateport: { label: 'label.private.port' }, - algorithm: { label: 'label.algorithm' } + privateport: { label: 'label.private.port' }, + algorithm: { label: 'label.algorithm' } }, - dataProvider: function(args) { - var items = args.context.GSLB[0].loadbalancerrule; - args.response.success({ - data: items - }); + dataProvider: function(args) { + var data = { + id: args.context.GSLB[0].id + }; + $.ajax({ + url: createURL('listGlobalLoadBalancerRules'), + data: data, + success: function(json) { + var items = json.listgloballoadbalancerrulesresponse.globalloadbalancerrule[0].loadbalancerrule; + args.response.success({ + data: items + }); + } + }); }, - actions: { + actions: { add: { label: 'assign more load balancing', messages: { From efb4471dc9b8204fd97e2f053fca0dfe1e9d922b Mon Sep 17 00:00:00 2001 From: Min Chen Date: Thu, 25 Apr 2013 17:40:18 -0700 Subject: [PATCH 429/607] CLOUDSTACK-2196 and CLOUDSTACK-2126: fix missing async job status in listXXX api and incorrect async job status in other async api. Conflicts: server/src/com/cloud/api/query/vo/AccountJoinVO.java --- core/src/com/cloud/async/AsyncJobVO.java | 1 + server/src/com/cloud/api/query/dao/AccountJoinDaoImpl.java | 6 ++++-- .../com/cloud/api/query/dao/DomainRouterJoinDaoImpl.java | 6 ++++-- server/src/com/cloud/api/query/dao/HostJoinDaoImpl.java | 6 ++++-- .../com/cloud/api/query/dao/SecurityGroupJoinDaoImpl.java | 6 ++++-- .../src/com/cloud/api/query/dao/StoragePoolJoinDaoImpl.java | 6 ++++-- .../src/com/cloud/api/query/dao/UserAccountJoinDaoImpl.java | 6 ++++-- server/src/com/cloud/api/query/dao/UserVmJoinDaoImpl.java | 6 ++++-- server/src/com/cloud/api/query/dao/VolumeJoinDaoImpl.java | 6 ++++-- server/src/com/cloud/api/query/vo/AccountJoinVO.java | 6 +++--- server/src/com/cloud/api/query/vo/DomainRouterJoinVO.java | 6 +++--- server/src/com/cloud/api/query/vo/HostJoinVO.java | 6 +++--- server/src/com/cloud/api/query/vo/SecurityGroupJoinVO.java | 6 +++--- server/src/com/cloud/api/query/vo/StoragePoolJoinVO.java | 6 +++--- server/src/com/cloud/api/query/vo/UserAccountJoinVO.java | 6 +++--- server/src/com/cloud/api/query/vo/UserVmJoinVO.java | 6 +++--- server/src/com/cloud/api/query/vo/VolumeJoinVO.java | 6 +++--- 17 files changed, 57 insertions(+), 40 deletions(-) diff --git a/core/src/com/cloud/async/AsyncJobVO.java b/core/src/com/cloud/async/AsyncJobVO.java index ad482b03a9d..c40fc987a4a 100644 --- a/core/src/com/cloud/async/AsyncJobVO.java +++ b/core/src/com/cloud/async/AsyncJobVO.java @@ -133,6 +133,7 @@ public class AsyncJobVO implements AsyncJob { this.callbackType = CALLBACK_POLLING; this.uuid = UUID.randomUUID().toString(); this.instanceId = instanceId; + this.instanceType = instanceType; } public AsyncJobVO(long userId, long accountId, String cmd, String cmdInfo, diff --git a/server/src/com/cloud/api/query/dao/AccountJoinDaoImpl.java b/server/src/com/cloud/api/query/dao/AccountJoinDaoImpl.java index 796ae54d52f..528bdacffda 100644 --- a/server/src/com/cloud/api/query/dao/AccountJoinDaoImpl.java +++ b/server/src/com/cloud/api/query/dao/AccountJoinDaoImpl.java @@ -203,8 +203,10 @@ public class AccountJoinDaoImpl extends GenericDaoBase impl accountResponse.setObjectName("account"); // set async job - accountResponse.setJobId(account.getJobUuid()); - accountResponse.setJobStatus(account.getJobStatus()); + if (account.getJobId() != null) { + accountResponse.setJobId(account.getJobUuid()); + accountResponse.setJobStatus(account.getJobStatus()); + } return accountResponse; } diff --git a/server/src/com/cloud/api/query/dao/DomainRouterJoinDaoImpl.java b/server/src/com/cloud/api/query/dao/DomainRouterJoinDaoImpl.java index 25cd62faf7b..125db17c760 100644 --- a/server/src/com/cloud/api/query/dao/DomainRouterJoinDaoImpl.java +++ b/server/src/com/cloud/api/query/dao/DomainRouterJoinDaoImpl.java @@ -158,8 +158,10 @@ public class DomainRouterJoinDaoImpl extends GenericDaoBase implements hostResponse.setResourceState(host.getResourceState().toString()); // set async job - hostResponse.setJobId(host.getJobUuid()); - hostResponse.setJobStatus(host.getJobStatus()); + if (host.getJobId() != null) { + hostResponse.setJobId(host.getJobUuid()); + hostResponse.setJobStatus(host.getJobStatus()); + } hostResponse.setObjectName("host"); diff --git a/server/src/com/cloud/api/query/dao/SecurityGroupJoinDaoImpl.java b/server/src/com/cloud/api/query/dao/SecurityGroupJoinDaoImpl.java index 3e579c179e2..2a6afca231e 100644 --- a/server/src/com/cloud/api/query/dao/SecurityGroupJoinDaoImpl.java +++ b/server/src/com/cloud/api/query/dao/SecurityGroupJoinDaoImpl.java @@ -117,8 +117,10 @@ public class SecurityGroupJoinDaoImpl extends GenericDaoBase implem } } userVmResponse.setPassword(userVm.getPassword()); - userVmResponse.setJobId(userVm.getJobUuid()); - userVmResponse.setJobStatus(userVm.getJobStatus()); + if (userVm.getJobId() != null) { + userVmResponse.setJobId(userVm.getJobUuid()); + userVmResponse.setJobStatus(userVm.getJobStatus()); + } //userVmResponse.setForVirtualNetwork(userVm.getForVirtualNetwork()); userVmResponse.setPublicIpId(userVm.getPublicIpUuid()); diff --git a/server/src/com/cloud/api/query/dao/VolumeJoinDaoImpl.java b/server/src/com/cloud/api/query/dao/VolumeJoinDaoImpl.java index a7a0bf0b435..a09c4a0c09b 100644 --- a/server/src/com/cloud/api/query/dao/VolumeJoinDaoImpl.java +++ b/server/src/com/cloud/api/query/dao/VolumeJoinDaoImpl.java @@ -197,8 +197,10 @@ public class VolumeJoinDaoImpl extends GenericDaoBase implem volResponse.setExtractable(isExtractable); // set async job - volResponse.setJobId(volume.getJobUuid()); - volResponse.setJobStatus(volume.getJobStatus()); + if (volume.getJobId() != null) { + volResponse.setJobId(volume.getJobUuid()); + volResponse.setJobStatus(volume.getJobStatus()); + } volResponse.setObjectName("volume"); return volResponse; diff --git a/server/src/com/cloud/api/query/vo/AccountJoinVO.java b/server/src/com/cloud/api/query/vo/AccountJoinVO.java index 800da7803fd..fbcc9342b22 100644 --- a/server/src/com/cloud/api/query/vo/AccountJoinVO.java +++ b/server/src/com/cloud/api/query/vo/AccountJoinVO.java @@ -177,7 +177,7 @@ public class AccountJoinVO extends BaseViewVO implements InternalIdentity, Ident private Long secondaryStorageTotal; @Column(name="job_id") - private long jobId; + private Long jobId; @Column(name="job_uuid") private String jobUuid; @@ -645,12 +645,12 @@ public class AccountJoinVO extends BaseViewVO implements InternalIdentity, Ident } - public long getJobId() { + public Long getJobId() { return jobId; } - public void setJobId(long jobId) { + public void setJobId(Long jobId) { this.jobId = jobId; } diff --git a/server/src/com/cloud/api/query/vo/DomainRouterJoinVO.java b/server/src/com/cloud/api/query/vo/DomainRouterJoinVO.java index 5f2b500fa57..83e15477287 100644 --- a/server/src/com/cloud/api/query/vo/DomainRouterJoinVO.java +++ b/server/src/com/cloud/api/query/vo/DomainRouterJoinVO.java @@ -210,7 +210,7 @@ public class DomainRouterJoinVO extends BaseViewVO implements ControlledViewEnti private String projectName; @Column(name="job_id") - private long jobId; + private Long jobId; @Column(name="job_uuid") private String jobUuid; @@ -781,14 +781,14 @@ public class DomainRouterJoinVO extends BaseViewVO implements ControlledViewEnti } - public long getJobId() { + public Long getJobId() { return jobId; } - public void setJobId(long jobId) { + public void setJobId(Long jobId) { this.jobId = jobId; } diff --git a/server/src/com/cloud/api/query/vo/HostJoinVO.java b/server/src/com/cloud/api/query/vo/HostJoinVO.java index 4aa45e5f593..4b70cfcaa10 100644 --- a/server/src/com/cloud/api/query/vo/HostJoinVO.java +++ b/server/src/com/cloud/api/query/vo/HostJoinVO.java @@ -168,7 +168,7 @@ public class HostJoinVO extends BaseViewVO implements InternalIdentity, Identity private long cpuReservedCapacity; @Column(name="job_id") - private long jobId; + private Long jobId; @Column(name="job_uuid") private String jobUuid; @@ -427,11 +427,11 @@ public class HostJoinVO extends BaseViewVO implements InternalIdentity, Identity this.osCategoryName = osCategoryName; } - public long getJobId() { + public Long getJobId() { return jobId; } - public void setJobId(long jobId) { + public void setJobId(Long jobId) { this.jobId = jobId; } diff --git a/server/src/com/cloud/api/query/vo/SecurityGroupJoinVO.java b/server/src/com/cloud/api/query/vo/SecurityGroupJoinVO.java index 922e130ed30..258b6136224 100644 --- a/server/src/com/cloud/api/query/vo/SecurityGroupJoinVO.java +++ b/server/src/com/cloud/api/query/vo/SecurityGroupJoinVO.java @@ -77,7 +77,7 @@ public class SecurityGroupJoinVO extends BaseViewVO implements ControlledViewEnt private String projectName; @Column(name="job_id") - private long jobId; + private Long jobId; @Column(name="job_uuid") private String jobUuid; @@ -269,11 +269,11 @@ public class SecurityGroupJoinVO extends BaseViewVO implements ControlledViewEnt this.projectName = projectName; } - public long getJobId() { + public Long getJobId() { return jobId; } - public void setJobId(long jobId) { + public void setJobId(Long jobId) { this.jobId = jobId; } diff --git a/server/src/com/cloud/api/query/vo/StoragePoolJoinVO.java b/server/src/com/cloud/api/query/vo/StoragePoolJoinVO.java index da06227ea66..d86726c3523 100644 --- a/server/src/com/cloud/api/query/vo/StoragePoolJoinVO.java +++ b/server/src/com/cloud/api/query/vo/StoragePoolJoinVO.java @@ -121,7 +121,7 @@ public class StoragePoolJoinVO extends BaseViewVO implements InternalIdentity, I @Column(name="job_id") - private long jobId; + private Long jobId; @Column(name="job_uuid") private String jobUuid; @@ -342,11 +342,11 @@ public class StoragePoolJoinVO extends BaseViewVO implements InternalIdentity, I this.reservedCapacity = reservedCapacity; } - public long getJobId() { + public Long getJobId() { return jobId; } - public void setJobId(long jobId) { + public void setJobId(Long jobId) { this.jobId = jobId; } diff --git a/server/src/com/cloud/api/query/vo/UserAccountJoinVO.java b/server/src/com/cloud/api/query/vo/UserAccountJoinVO.java index d85392fb85a..c44027b8bc0 100644 --- a/server/src/com/cloud/api/query/vo/UserAccountJoinVO.java +++ b/server/src/com/cloud/api/query/vo/UserAccountJoinVO.java @@ -109,7 +109,7 @@ public class UserAccountJoinVO extends BaseViewVO implements InternalIdentity, I private String domainPath = null; @Column(name="job_id") - private long jobId; + private Long jobId; @Column(name="job_uuid") private String jobUuid; @@ -324,11 +324,11 @@ public class UserAccountJoinVO extends BaseViewVO implements InternalIdentity, I this.loginAttempts = loginAttempts; } - public long getJobId() { + public Long getJobId() { return jobId; } - public void setJobId(long jobId) { + public void setJobId(Long jobId) { this.jobId = jobId; } diff --git a/server/src/com/cloud/api/query/vo/UserVmJoinVO.java b/server/src/com/cloud/api/query/vo/UserVmJoinVO.java index a50906d9e3d..d7b516c312f 100644 --- a/server/src/com/cloud/api/query/vo/UserVmJoinVO.java +++ b/server/src/com/cloud/api/query/vo/UserVmJoinVO.java @@ -332,7 +332,7 @@ public class UserVmJoinVO extends BaseViewVO implements ControlledViewEntity { private String keypairName; @Column(name="job_id") - private long jobId; + private Long jobId; @Column(name="job_uuid") private String jobUuid; @@ -1608,14 +1608,14 @@ public class UserVmJoinVO extends BaseViewVO implements ControlledViewEntity { - public long getJobId() { + public Long getJobId() { return jobId; } - public void setJobId(long jobId) { + public void setJobId(Long jobId) { this.jobId = jobId; } diff --git a/server/src/com/cloud/api/query/vo/VolumeJoinVO.java b/server/src/com/cloud/api/query/vo/VolumeJoinVO.java index 8a4bfe5c0fa..2d7b1d5bb49 100644 --- a/server/src/com/cloud/api/query/vo/VolumeJoinVO.java +++ b/server/src/com/cloud/api/query/vo/VolumeJoinVO.java @@ -206,7 +206,7 @@ public class VolumeJoinVO extends BaseViewVO implements ControlledViewEntity { private Storage.TemplateType templateType; @Column(name="job_id") - private long jobId; + private Long jobId; @Column(name="job_uuid") private String jobUuid; @@ -817,13 +817,13 @@ public class VolumeJoinVO extends BaseViewVO implements ControlledViewEntity { - public long getJobId() { + public Long getJobId() { return jobId; } - public void setJobId(long jobId) { + public void setJobId(Long jobId) { this.jobId = jobId; } From f429c6687b713cbbe1ca7f78bbf4869a32fe39f4 Mon Sep 17 00:00:00 2001 From: Marcus Sorensen Date: Thu, 25 Apr 2013 22:35:54 -0600 Subject: [PATCH 430/607] Don't allow success to be reported when we fail to stop vm due to no agent connection BUG-ID: CLOUDSTACK-2195 Bugfix-for: 4.2 Reviewed-by: Edison Su Signed-off-by: Marcus Sorensen 1366950954 -0600 --- server/src/com/cloud/vm/UserVmManagerImpl.java | 11 +++++++---- .../src/com/cloud/vm/VirtualMachineManagerImpl.java | 2 ++ 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/server/src/com/cloud/vm/UserVmManagerImpl.java b/server/src/com/cloud/vm/UserVmManagerImpl.java index ebc5757770e..f58d6be5b2f 100755 --- a/server/src/com/cloud/vm/UserVmManagerImpl.java +++ b/server/src/com/cloud/vm/UserVmManagerImpl.java @@ -2902,10 +2902,15 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use } UserVO user = _userDao.findById(userId); - + boolean status = false; try { VirtualMachineEntity vmEntity = _orchSrvc.getVirtualMachine(vm.getUuid()); - vmEntity.stop(new Long(userId).toString()); + status = vmEntity.stop(new Long(userId).toString()); + if (status) { + return _vmDao.findById(vmId); + } else { + return null; + } } catch (ResourceUnavailableException e) { throw new CloudRuntimeException( "Unable to contact the agent to stop the virtual machine " @@ -2915,8 +2920,6 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Use "Unable to contact the agent to stop the virtual machine " + vm, e); } - - return _vmDao.findById(vmId); } @Override diff --git a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java index 252fc99ca0d..b0d6378e9e5 100755 --- a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java +++ b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java @@ -1136,7 +1136,9 @@ public class VirtualMachineManagerImpl extends ManagerBase implements VirtualMac vmGuru.finalizeStop(profile, answer); } catch (AgentUnavailableException e) { + s_logger.warn("Unable to stop vm, agent unavailable: " + e.toString()); } catch (OperationTimedoutException e) { + s_logger.warn("Unable to stop vm, operation timed out: " + e.toString()); } finally { if (!stopped) { if (!forced) { From 2f40a90c53067c3901cf9e5c9a33309907e48aab Mon Sep 17 00:00:00 2001 From: Ashutosh Kelkar Date: Wed, 24 Apr 2013 15:03:10 +0530 Subject: [PATCH 431/607] Multiple fixes to marvin framework 1. adding hypervisor information to configs TODO: support for multi-hypervisor zones? 2. CLOUDSTACK-601: Marvin unicode decode errors when running mysql queries via dbClient 3. adding keypair support for remotessh client Signed-off-by: Prasanna Santhanam --- tools/marvin/marvin/asyncJobMgr.py | 70 ++- tools/marvin/marvin/cloudstackConnection.py | 17 +- tools/marvin/marvin/cloudstackTestClient.py | 53 +- tools/marvin/marvin/dbConnection.py | 6 +- tools/marvin/marvin/deployDataCenter.py | 7 + tools/marvin/marvin/integration/lib/base.py | 600 +++++++++++++++++-- tools/marvin/marvin/integration/lib/utils.py | 17 +- tools/marvin/marvin/remoteSSHClient.py | 18 +- 8 files changed, 669 insertions(+), 119 deletions(-) diff --git a/tools/marvin/marvin/asyncJobMgr.py b/tools/marvin/marvin/asyncJobMgr.py index 40304fa4141..698462783bd 100644 --- a/tools/marvin/marvin/asyncJobMgr.py +++ b/tools/marvin/marvin/asyncJobMgr.py @@ -28,6 +28,8 @@ class job(object): def __init__(self): self.id = None self.cmd = None + + class jobStatus(object): def __init__(self): self.result = None @@ -37,8 +39,11 @@ class jobStatus(object): self.duration = None self.jobId = None self.responsecls = None + def __str__(self): return '{%s}' % str(', '.join('%s : %s' % (k, repr(v)) for (k, v) in self.__dict__.iteritems())) + + class workThread(threading.Thread): def __init__(self, in_queue, outqueue, apiClient, db=None, lock=None): threading.Thread.__init__(self) @@ -47,11 +52,11 @@ class workThread(threading.Thread): self.connection = apiClient.connection.__copy__() self.db = None self.lock = lock - + def queryAsynJob(self, job): if job.jobId is None: return job - + try: self.lock.acquire() result = self.connection.poll(job.jobId, job.responsecls).jobresult @@ -59,10 +64,10 @@ class workThread(threading.Thread): result = str(e) finally: self.lock.release() - + job.result = result return job - + def executeCmd(self, job): cmd = job.cmd @@ -70,14 +75,15 @@ class workThread(threading.Thread): jobId = None try: self.lock.acquire() - + if cmd.isAsync == "false": jobstatus.startTime = datetime.datetime.now() - + result = self.connection.make_request(cmd) jobstatus.result = result jobstatus.endTime = datetime.datetime.now() - jobstatus.duration = time.mktime(jobstatus.endTime.timetuple()) - time.mktime(jobstatus.startTime.timetuple()) + jobstatus.duration = time.mktime(jobstatus.endTime.timetuple()) - time.mktime( + jobstatus.startTime.timetuple()) else: result = self.connection.make_request(cmd, None, True) if result is None: @@ -99,9 +105,9 @@ class workThread(threading.Thread): jobstatus.result = sys.exc_info() finally: self.lock.release() - + return jobstatus - + def run(self): while self.inqueue.qsize() > 0: job = self.inqueue.get() @@ -109,18 +115,20 @@ class workThread(threading.Thread): jobstatus = self.queryAsynJob(job) else: jobstatus = self.executeCmd(job) - + self.output.put(jobstatus) self.inqueue.task_done() - + '''release the resource''' self.connection.close() + class jobThread(threading.Thread): def __init__(self, inqueue, interval): threading.Thread.__init__(self) self.inqueue = inqueue self.interval = interval + def run(self): while self.inqueue.qsize() > 0: job = self.inqueue.get() @@ -130,23 +138,25 @@ class jobThread(threading.Thread): job.apiClient.connection.close() except: pass - + self.inqueue.task_done() time.sleep(self.interval) - + + class outputDict(object): def __init__(self): self.lock = threading.Condition() - self.dict = {} + self.dict = {} + class asyncJobMgr(object): def __init__(self, apiClient, db): self.inqueue = Queue.Queue() - self.output = outputDict() + self.output = outputDict() self.outqueue = Queue.Queue() self.apiClient = apiClient self.db = db - + def submitCmds(self, cmds): if not self.inqueue.empty(): return False @@ -160,11 +170,12 @@ class asyncJobMgr(object): id += 1 ids.append(id) return ids - + def updateTimeStamp(self, jobstatus): jobId = jobstatus.jobId if jobId is not None and self.db is not None: - result = self.db.execute("select job_status, created, last_updated from async_job where id=%s"%jobId) + result = self.db.execute( + "select job_status, created, last_updated from async_job where id='%s'" % str(jobId)) if result is not None and len(result) > 0: if result[0][0] == 1: jobstatus.status = True @@ -174,7 +185,7 @@ class asyncJobMgr(object): jobstatus.endTime = result[0][2] delta = jobstatus.endTime - jobstatus.startTime jobstatus.duration = delta.total_seconds() - + def waitForComplete(self, workers=10): self.inqueue.join() lock = threading.Lock() @@ -183,28 +194,30 @@ class asyncJobMgr(object): for i in range(workers): worker = workThread(self.outqueue, resultQueue, self.apiClient, self.db, lock) worker.start() - + self.outqueue.join() - + asyncJobResult = [] while resultQueue.qsize() > 0: jobstatus = resultQueue.get() self.updateTimeStamp(jobstatus) asyncJobResult.append(jobstatus) - + return asyncJobResult - + '''put commands into a queue at first, then start workers numbers threads to execute this commands''' + def submitCmdsAndWait(self, cmds, workers=10): self.submitCmds(cmds) lock = threading.Lock() for i in range(workers): worker = workThread(self.inqueue, self.outqueue, self.apiClient, self.db, lock) worker.start() - + return self.waitForComplete(workers) '''submit one job and execute the same job ntimes, with nums_threads of threads''' + def submitJobExecuteNtimes(self, job, ntimes=1, nums_threads=1, interval=1): inqueue1 = Queue.Queue() lock = threading.Condition() @@ -213,22 +226,23 @@ class asyncJobMgr(object): setattr(newjob, "apiClient", copy.copy(self.apiClient)) setattr(newjob, "lock", lock) inqueue1.put(newjob) - + for i in range(nums_threads): work = jobThread(inqueue1, interval) work.start() inqueue1.join() - + '''submit n jobs, execute them with nums_threads of threads''' + def submitJobs(self, jobs, nums_threads=1, interval=1): inqueue1 = Queue.Queue() lock = threading.Condition() - + for job in jobs: setattr(job, "apiClient", copy.copy(self.apiClient)) setattr(job, "lock", lock) inqueue1.put(job) - + for i in range(nums_threads): work = jobThread(inqueue1, interval) work.start() diff --git a/tools/marvin/marvin/cloudstackConnection.py b/tools/marvin/marvin/cloudstackConnection.py index 5d30803d930..9a4c387a87a 100644 --- a/tools/marvin/marvin/cloudstackConnection.py +++ b/tools/marvin/marvin/cloudstackConnection.py @@ -33,13 +33,18 @@ from requests import RequestException class cloudConnection(object): """ Connections to make API calls to the cloudstack management server """ - def __init__(self, mgtSvr, port=8096, apiKey=None, securityKey=None, + def __init__(self, mgtSvr, port=8096, user=None, passwd=None, + apiKey=None, securityKey=None, asyncTimeout=3600, logging=None, scheme='http', path='client/api'): self.apiKey = apiKey self.securityKey = securityKey self.mgtSvr = mgtSvr self.port = port + if user: + self.user = user + if passwd: + self.passwd = passwd self.logging = logging self.path = path self.retries = 5 @@ -55,9 +60,10 @@ class cloudConnection(object): % (self.protocol, self.mgtSvr, self.port, self.path) def __copy__(self): - return cloudConnection(self.mgtSvr, self.port, self.apiKey, - self.securityKey, self.asyncTimeout, - self.logging, self.protocol, self.path) + return cloudConnection(self.mgtSvr, self.port, self.user, self.passwd, + self.apiKey, self.securityKey, + self.asyncTimeout, self.logging, self.protocol, + self.path) def poll(self, jobid, response): """ @@ -200,7 +206,8 @@ class cloudConnection(object): @return: """ cmdname, isAsync, payload = self.sanitize_command(cmd) - self.logging.debug("sending %s request: %s %s" % (method, cmdname, str(payload))) + self.logging.debug("sending %s request: %s %s" % (method, cmdname, + str(payload))) response = self.request( cmdname, self.auth, payload=payload, method=method) self.logging.debug("Request: %s Response: %s" % diff --git a/tools/marvin/marvin/cloudstackTestClient.py b/tools/marvin/marvin/cloudstackTestClient.py index 85552ed5523..d85a61c4872 100644 --- a/tools/marvin/marvin/cloudstackTestClient.py +++ b/tools/marvin/marvin/cloudstackTestClient.py @@ -18,24 +18,29 @@ import cloudstackConnection import asyncJobMgr import dbConnection -from cloudstackAPI import * +from cloudstackAPI import * import random import string import hashlib class cloudstackTestClient(object): - def __init__(self, mgtSvr=None, port=8096, apiKey = None, securityKey = None, asyncTimeout=3600, + def __init__(self, mgtSvr=None, port=8096, user=None, passwd=None, + apiKey=None, securityKey=None, asyncTimeout=3600, defaultWorkerThreads=10, logging=None): - self.connection = cloudstackConnection.cloudConnection(mgtSvr, port, apiKey, securityKey, asyncTimeout, logging) + self.connection = \ + cloudstackConnection.cloudConnection( + mgtSvr, port, user, + passwd, apiKey, securityKey, + asyncTimeout, logging) self.apiClient = cloudstackAPIClient.CloudStackAPIClient(self.connection) self.dbConnection = None self.asyncJobMgr = None self.ssh = None self.defaultWorkerThreads = defaultWorkerThreads - + def dbConfigure(self, host="localhost", port=3306, user='cloud', passwd='cloud', db='cloud'): self.dbConnection = dbConnection.dbConnection(host, port, user, passwd, db) - + def isAdminContext(self): """ A user is a regular user if he fails to listDomains; @@ -53,7 +58,7 @@ class cloudstackTestClient(object): return 2 #domain-admin except: return 0 #user - + def random_gen(self, size=6, chars=string.ascii_uppercase + string.digits): """Generate Random Strings of variable length""" return ''.join(random.choice(chars) for x in range(size)) @@ -61,7 +66,7 @@ class cloudstackTestClient(object): def createUserApiClient(self, UserName, DomainName, acctType=0): if not self.isAdminContext(): return self.apiClient - + listDomain = listDomains.listDomainsCmd() listDomain.listall = True listDomain.name = DomainName @@ -73,11 +78,11 @@ class cloudstackTestClient(object): cdomain.name = DomainName domain = self.apiClient.createDomain(cdomain) domId = domain.id - + mdf = hashlib.md5() mdf.update("password") mdf_pass = mdf.hexdigest() - + cmd = listAccounts.listAccountsCmd() cmd.name = UserName cmd.domainid = domId @@ -95,46 +100,47 @@ class cloudstackTestClient(object): createAcctCmd.username = UserName acct = self.apiClient.createAccount(createAcctCmd) acctId = acct.id - - listuser = listUsers.listUsersCmd() + + listuser = listUsers.listUsersCmd() listuser.username = UserName - + listuserRes = self.apiClient.listUsers(listuser) userId = listuserRes[0].id apiKey = listuserRes[0].apikey securityKey = listuserRes[0].secretkey - + if apiKey is None: registerUser = registerUserKeys.registerUserKeysCmd() registerUser.id = userId registerUserRes = self.apiClient.registerUserKeys(registerUser) apiKey = registerUserRes.apikey securityKey = registerUserRes.secretkey - + newUserConnection = cloudstackConnection.cloudConnection(self.connection.mgtSvr, self.connection.port, + self.connection.user, self.connection.passwd, apiKey, securityKey, self.connection.asyncTimeout, self.connection.logging) self.userApiClient = cloudstackAPIClient.CloudStackAPIClient(newUserConnection) self.userApiClient.connection = newUserConnection return self.userApiClient - + def close(self): if self.connection is not None: self.connection.close() - + def getDbConnection(self): return self.dbConnection def executeSql(self, sql=None): if sql is None or self.dbConnection is None: return None - + return self.dbConnection.execute() - + def executeSqlFromFile(self, sqlFile=None): if sqlFile is None or self.dbConnection is None: return None return self.dbConnection.executeSqlFromFile(sqlFile) - + def getApiClient(self): return self.apiClient @@ -151,18 +157,21 @@ class cloudstackTestClient(object): '''FixME, httplib has issue if more than one thread submitted''' + def submitCmdsAndWait(self, cmds, workers=1): if self.asyncJobMgr is None: self.asyncJobMgr = asyncJobMgr.asyncJobMgr(self.apiClient, self.dbConnection) return self.asyncJobMgr.submitCmdsAndWait(cmds, workers) - + '''submit one job and execute the same job ntimes, with nums_threads of threads''' + def submitJob(self, job, ntimes=1, nums_threads=10, interval=1): if self.asyncJobMgr is None: self.asyncJobMgr = asyncJobMgr.asyncJobMgr(self.apiClient, self.dbConnection) self.asyncJobMgr.submitJobExecuteNtimes(job, ntimes, nums_threads, interval) - - '''submit n jobs, execute them with nums_threads of threads''' + + '''submit n jobs, execute them with nums_threads of threads''' + def submitJobs(self, jobs, nums_threads=10, interval=1): if self.asyncJobMgr is None: self.asyncJobMgr = asyncJobMgr.asyncJobMgr(self.apiClient, self.dbConnection) diff --git a/tools/marvin/marvin/dbConnection.py b/tools/marvin/marvin/dbConnection.py index 8fa86438ab0..958299aff2a 100644 --- a/tools/marvin/marvin/dbConnection.py +++ b/tools/marvin/marvin/dbConnection.py @@ -37,7 +37,11 @@ class dbConnection(object): return None resultRow = [] - with contextlib.closing(mysql.connector.connect(host=self.host, port=self.port, user=self.user, password=self.passwd, db=self.database)) as conn: + with contextlib.closing(mysql.connector.connect(host=str(self.host), + port=int(self.port), + user=str(self.user), + password=str(self.passwd), + db=str(self.database))) as conn: conn.autocommit = True with contextlib.closing(conn.cursor(buffered=True)) as cursor: cursor.execute(sql, params) diff --git a/tools/marvin/marvin/deployDataCenter.py b/tools/marvin/marvin/deployDataCenter.py index d358789d8da..5ca1ebfb4f8 100644 --- a/tools/marvin/marvin/deployDataCenter.py +++ b/tools/marvin/marvin/deployDataCenter.py @@ -402,6 +402,7 @@ class deployDataCenters(): self.testClient = \ cloudstackTestClient.cloudstackTestClient(mgt.mgtSvrIp, mgt.port, \ + mgt.user, mgt.passwd, \ mgt.apiKey, \ mgt.securityKey, \ logging=self.testClientLogger) @@ -409,6 +410,7 @@ class deployDataCenters(): apiKey, securityKey = self.registerApiKey() self.testClient = \ cloudstackTestClient.cloudstackTestClient(mgt.mgtSvrIp, 8080, \ + mgt.user, mgt.passwd, \ apiKey, securityKey, \ logging=self.testClientLogger) @@ -419,6 +421,11 @@ class deployDataCenters(): dbSvr.passwd, dbSvr.db) self.apiClient = self.testClient.getApiClient() + """set hypervisor""" + if mgt.hypervisor: + self.apiClient.hypervisor = mgt.hypervisor + else: + self.apiClient.hypervisor = "XenServer" #Defaults to Xenserver def updateConfiguration(self, globalCfg): if globalCfg is None: diff --git a/tools/marvin/marvin/integration/lib/base.py b/tools/marvin/marvin/integration/lib/base.py index 6c285233a82..1d86c6c1599 100755 --- a/tools/marvin/marvin/integration/lib/base.py +++ b/tools/marvin/marvin/integration/lib/base.py @@ -5,9 +5,9 @@ # 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 @@ -22,7 +22,7 @@ import marvin from utils import is_server_ssh_ready, random_gen from marvin.cloudstackAPI import * -#Import System modules +# Import System modules import time import hashlib import base64 @@ -54,8 +54,12 @@ class Domain: cmd.parentdomainid = parentdomainid elif "parentdomainid" in services: cmd.parentdomainid = services["parentdomainid"] - - return Domain(apiclient.createDomain(cmd).__dict__) + try: + domain = apiclient.createDomain(cmd) + if domain is not None: + return Domain(domain.__dict__) + except Exception as e: + raise e def delete(self, apiclient, cleanup=None): """Delete an domain""" @@ -83,7 +87,7 @@ class Account: """Creates an account""" cmd = createAccount.createAccountCmd() - #0 - User, 1 - Root Admin, 2 - Domain Admin + # 0 - User, 1 - Root Admin, 2 - Domain Admin cmd.accounttype = 2 if (admin and domainid) else int(admin) cmd.email = services["email"] @@ -213,14 +217,15 @@ class VirtualMachine: else: self.ssh_port = 22 self.ssh_client = None - #extract out the ipaddress + # extract out the ipaddress self.ipaddress = self.nic[0].ipaddress @classmethod def create(cls, apiclient, services, templateid=None, accountid=None, domainid=None, zoneid=None, networkids=None, serviceofferingid=None, securitygroupids=None, projectid=None, startvm=None, - diskofferingid=None, affinitygroupnames=None, hostid=None, mode='basic', method='GET'): + diskofferingid=None, affinitygroupnames=None, group=None, + hostid=None, keypair=None, mode='basic', method='GET'): """Create the instance""" cmd = deployVirtualMachine.deployVirtualMachineCmd() @@ -234,7 +239,13 @@ class VirtualMachine: cmd.zoneid = zoneid elif "zoneid" in services: cmd.zoneid = services["zoneid"] - cmd.hypervisor = services["hypervisor"] + cmd.hypervisor = apiclient.hypervisor + + if "displayname" in services: + cmd.displayname = services["displayname"] + + if "name" in services: + cmd.name = services["name"] if accountid: cmd.account = accountid @@ -256,9 +267,16 @@ class VirtualMachine: elif "template" in services: cmd.templateid = services["template"] - if "diskoffering" in services: + if diskofferingid: + cmd.diskofferingid = diskofferingid + elif "diskoffering" in services: cmd.diskofferingid = services["diskoffering"] + if keypair: + cmd.keypair = keypair + elif "keypair" in services: + cmd.keypair = services["keypair"] + if securitygroupids: cmd.securitygroupids = [str(sg_id) for sg_id in securitygroupids] @@ -282,6 +300,15 @@ class VirtualMachine: virtual_machine = apiclient.deployVirtualMachine(cmd, method=method) + if group: + cmd.group = group + virtual_machine = apiclient.deployVirtualMachine(cmd) + + if startvm == False: + virtual_machine.ssh_ip = virtual_machine.nic[0].ipaddress + virtual_machine.public_ip = virtual_machine.nic[0].ipaddress + return VirtualMachine(virtual_machine.__dict__, services) + # VM should be in Running state after deploy timeout = 10 while True: @@ -308,14 +335,14 @@ class VirtualMachine: virtual_machine.domainid, services ) - fw_rule = FireWallRule.create( + FireWallRule.create( apiclient, ipaddressid=public_ip.ipaddress.id, protocol='TCP', cidrlist=['0.0.0.0/0'], startport=22, endport=22 - ) + ) nat_rule = NATRule.create( apiclient, virtual_machine, @@ -348,7 +375,13 @@ class VirtualMachine: cmd.id = self.id apiclient.rebootVirtualMachine(cmd) - def get_ssh_client(self, ipaddress=None, reconnect=False, port=None): + def recover(self, apiclient): + """Recover the instance""" + cmd = recoverVirtualMachine.recoverVirtualMachineCmd() + cmd.id = self.id + apiclient.recoverVirtualMachine(cmd) + + def get_ssh_client(self, ipaddress=None, reconnect=False, port=None, keyPairFileLocation=None): """Get SSH object of VM""" # If NAT Rules are not created while VM deployment in Advanced mode @@ -358,27 +391,56 @@ class VirtualMachine: if port: self.ssh_port = port + if keyPairFileLocation is not None: + self.password = None + if reconnect: self.ssh_client = is_server_ssh_ready( self.ssh_ip, self.ssh_port, self.username, - self.password + self.password, + keyPairFileLocation=keyPairFileLocation ) self.ssh_client = self.ssh_client or is_server_ssh_ready( self.ssh_ip, self.ssh_port, self.username, - self.password + self.password, + keyPairFileLocation=keyPairFileLocation ) return self.ssh_client + def resetSshKey(self, apiclient, **kwargs): + """Resets SSH key""" + + cmd = resetSSHKeyForVirtualMachine.resetSSHKeyForVirtualMachineCmd() + cmd.id = self.id + [setattr(cmd, k, v) for k, v in kwargs.items()] + return(apiclient.resetSSHKeyForVirtualMachine(cmd)) + + def update(self, apiclient, **kwargs): + """Updates the VM data""" + + cmd = updateVirtualMachine.updateVirtualMachineCmd() + cmd.id = self.id + [setattr(cmd, k, v) for k, v in kwargs.items()] + return(apiclient.updateVirtualMachine(cmd)) + def delete(self, apiclient): """Destroy an Instance""" cmd = destroyVirtualMachine.destroyVirtualMachineCmd() cmd.id = self.id apiclient.destroyVirtualMachine(cmd) + def migrate(self, apiclient, hostid=None): + """migrate an Instance""" + cmd = migrateVirtualMachine.migrateVirtualMachineCmd() + cmd.virtualmachineid = self.id + if hostid: + cmd.hostid = hostid + apiclient.migrateVirtualMachine(cmd) + def attach_volume(self, apiclient, volume): """Attach volume to instance""" cmd = attachVolume.attachVolumeCmd() @@ -394,7 +456,7 @@ class VirtualMachine: def add_nic(self, apiclient, networkId): """Add a NIC to a VM""" - cmd = addNicToVirtualMachine.addNicToVirtualMachineCmd(); + cmd = addNicToVirtualMachine.addNicToVirtualMachineCmd() cmd.virtualmachineid = self.id cmd.networkid = networkId return apiclient.addNicToVirtualMachine(cmd) @@ -413,6 +475,26 @@ class VirtualMachine: cmd.virtualmachineid = self.id return apiclient.updateDefaultNicForVirtualMachine(cmd) + def attach_iso(self, apiclient, iso): + """Attach ISO to instance""" + cmd = attachIso.attachIsoCmd() + cmd.id = iso.id + cmd.virtualmachineid = self.id + return apiclient.attachIso(cmd) + + def detach_iso(self, apiclient): + """Detach ISO to instance""" + cmd = detachIso.detachIsoCmd() + cmd.id = self.id + return apiclient.detachIso(cmd) + + def change_service_offering(self, apiclient, serviceOfferingId): + """Change service offering of the instance""" + cmd = changeServiceForVirtualMachine.changeServiceForVirtualMachineCmd() + cmd.id = self.id + cmd.serviceofferingid = serviceOfferingId + return apiclient.changeServiceForVirtualMachine(cmd) + @classmethod def list(cls, apiclient, **kwargs): """List all VMs matching criteria""" @@ -428,16 +510,14 @@ class VirtualMachine: cmd.id = self.id try: response = apiclient.resetPasswordForVirtualMachine(cmd) - print response except Exception as e: raise Exception("Reset Password failed! - %s" % e) - print type(response) if isinstance(response, list): return response[0].password class Volume: - """Manage Volume Lifecycle + """Manage Volume Life cycle """ def __init__(self, items): self.__dict__.update(items) @@ -533,7 +613,7 @@ class Volume: [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listVolumes(cmd)) - def resize(cls, apiclient, **kwargs): + def resize(self, apiclient, **kwargs): """Resize a volume""" cmd = resizeVolume.resizeVolumeCmd() cmd.id = self.id @@ -541,6 +621,58 @@ class Volume: return(apiclient.resizeVolume(cmd)) @classmethod + def upload(cls, apiclient, services, zoneid=None, account=None, domainid=None, url=None): + """Uploads the volume to specified account""" + + cmd = uploadVolume.uploadVolumeCmd() + if zoneid: + cmd.zoneid = zoneid + if account: + cmd.account = account + if domainid: + cmd.domainid = domainid + cmd.format = services["format"] + cmd.name = services["diskname"] + if url: + cmd.url = url + else: + cmd.url = services["url"] + return Volume(apiclient.uploadVolume(cmd).__dict__) + + def wait_for_upload(self, apiclient, timeout=5, interval=60): + """Wait for upload""" + # Sleep to ensure template is in proper state before download + time.sleep(interval) + + while True: + volume_response = Volume.list( + apiclient, + id=self.id, + zoneid=self.zoneid, + ) + if isinstance(volume_response, list): + + volume = volume_response[0] + # If volume is ready, + # volume.state = Allocated + if volume.state == 'Uploaded': + break + + elif 'Uploading' in volume.state: + time.sleep(interval) + + elif 'Installing' not in volume.state: + raise Exception( + "Error in uploading volume: status - %s" % + volume.state) + elif timeout == 0: + break + + else: + time.sleep(interval) + timeout = timeout - 1 + return + def migrate(cls, apiclient, **kwargs): """Migrate a volume""" cmd = migrateVolume.migrateVolumeCmd() @@ -592,7 +724,7 @@ class Template: def create(cls, apiclient, services, volumeid=None, account=None, domainid=None, projectid=None): """Create template from Volume""" - #Create template from Virtual machine and Volume ID + # Create template from Virtual machine and Volume ID cmd = createTemplate.createTemplateCmd() cmd.displaytext = services["displaytext"] cmd.name = "-".join([services["name"], random_gen()]) @@ -617,7 +749,6 @@ class Template: cmd.ispublic = services["ispublic"] if "ispublic" in services else False cmd.isextractable = services["isextractable"] if "isextractable" in services else False cmd.passwordenabled = services["passwordenabled"] if "passwordenabled" in services else False - cmd.passwordenabled = services["passwordenabled"] if "passwordenabled" in services else False if volumeid: cmd.volumeid = volumeid @@ -637,12 +768,12 @@ class Template: account=None, domainid=None): """Create template from URL""" - #Create template from Virtual machine and Volume ID + # Create template from Virtual machine and Volume ID cmd = registerTemplate.registerTemplateCmd() cmd.displaytext = services["displaytext"] cmd.name = "-".join([services["name"], random_gen()]) cmd.format = services["format"] - cmd.hypervisor = services["hypervisor"] + cmd.hypervisor = apiclient.hypervisor if "ostypeid" in services: cmd.ostypeid = services["ostypeid"] @@ -689,7 +820,7 @@ class Template: def create_from_snapshot(cls, apiclient, snapshot, services, random_name=True): """Create Template from snapshot""" - #Create template from Virtual machine and Snapshot ID + # Create template from Virtual machine and Snapshot ID cmd = createTemplate.createTemplateCmd() cmd.displaytext = services["displaytext"] cmd.name = "-".join([ @@ -726,7 +857,7 @@ class Template: def download(self, apiclient, timeout=5, interval=60): """Download Template""" - #Sleep to ensure template is in proper state before download + # Sleep to ensure template is in proper state before download time.sleep(interval) while True: @@ -789,7 +920,7 @@ class Iso: def create(cls, apiclient, services, account=None, domainid=None, projectid=None): """Create an ISO""" - #Create ISO from URL + # Create ISO from URL cmd = registerIso.registerIsoCmd() cmd.displaytext = services["displaytext"] cmd.name = services["name"] @@ -841,7 +972,7 @@ class Iso: def download(self, apiclient, timeout=5, interval=60): """Download an ISO""" - #Ensuring ISO is successfully downloaded + # Ensuring ISO is successfully downloaded while True: time.sleep(interval) @@ -853,7 +984,6 @@ class Iso: response = iso_response[0] # Again initialize timeout to avoid listISO failure timeout = 5 - print response.status # Check whether download is in progress(for Ex:10% Downloaded) # or ISO is 'Successfully Installed' if response.status == 'Successfully Installed': @@ -940,7 +1070,7 @@ class NATRule: @classmethod def create(cls, apiclient, virtual_machine, services, ipaddressid=None, - projectid=None, networkid=None): + projectid=None, openfirewall=False, networkid=None, vpcid=None): """Create Port forwarding rule""" cmd = createPortForwardingRule.createPortForwardingRuleCmd() @@ -951,15 +1081,24 @@ class NATRule: cmd.privateport = services["privateport"] cmd.publicport = services["publicport"] + if "privateendport" in services: + cmd.privateendport = services["privateendport"] + if "publicendport" in services: + cmd.publicendport = services["publicendport"] cmd.protocol = services["protocol"] cmd.virtualmachineid = virtual_machine.id if projectid: cmd.projectid = projectid + if openfirewall: + cmd.openfirewall = True + if networkid: cmd.networkid = networkid + if vpcid: + cmd.vpcid = vpcid return NATRule(apiclient.createPortForwardingRule(cmd).__dict__) def delete(self, apiclient): @@ -985,10 +1124,10 @@ class StaticNATRule: self.__dict__.update(items) @classmethod - def create(cls, apiclient, services, ipaddressid=None, vpcid=None): + def create(cls, apiclient, services, ipaddressid=None, networkid=None, vpcid=None): """Creates static ip forwarding rule""" - cmd = createIpForwardingRule.createIpForwardingRuleCmd() + cmd = createFirewallRule.createFirewallRuleCmd() cmd.protocol = services["protocol"] cmd.startport = services["startport"] @@ -1003,10 +1142,12 @@ class StaticNATRule: elif "ipaddressid" in services: cmd.ipaddressid = services["ipaddressid"] + if networkid: + cmd.networkid = networkid + if vpcid: cmd.vpcid = vpcid - - return StaticNATRule(apiclient.createIpForwardingRule(cmd).__dict__) + return StaticNATRule(apiclient.createFirewallRule(cmd).__dict__) def delete(self, apiclient): """Delete IP forwarding rule""" @@ -1024,12 +1165,14 @@ class StaticNATRule: return(apiclient.listIpForwardingRules(cmd)) @classmethod - def enable(cls, apiclient, ipaddressid, virtualmachineid): + def enable(cls, apiclient, ipaddressid, virtualmachineid, networkid=None): """Enables Static NAT rule""" cmd = enableStaticNat.enableStaticNatCmd() cmd.ipaddressid = ipaddressid cmd.virtualmachineid = virtualmachineid + if networkid: + cmd.networkid = networkid apiclient.enableStaticNat(cmd) return @@ -1105,6 +1248,14 @@ class ServiceOffering: if "storagetype" in services: cmd.storagetype = services["storagetype"] + if "systemvmtype" in services: + cmd.systemvmtype = services['systemvmtype'] + + if "issystem" in services: + cmd.issystem = services['issystem'] + + if "tags" in services: + cmd.tags = services["tags"] # Service Offering private to that domain if domainid: cmd.domainid = domainid @@ -1183,20 +1334,25 @@ class NetworkOffering: cmd.displaytext = "-".join([services["displaytext"], random_gen()]) cmd.name = "-".join([services["name"], random_gen()]) cmd.guestiptype = services["guestiptype"] - cmd.supportedservices = services["supportedservices"] + cmd.supportedservices = '' + if "supportedservices" in services: + cmd.supportedservices = services["supportedservices"] cmd.traffictype = services["traffictype"] + if "useVpc" in services: + cmd.useVpc = services["useVpc"] cmd.serviceProviderList = [] - for service, provider in services["serviceProviderList"].items(): - cmd.serviceProviderList.append({ + if "serviceProviderList" in services: + for service, provider in services["serviceProviderList"].items(): + cmd.serviceProviderList.append({ 'service': service, 'provider': provider }) if "servicecapabilitylist" in services: - cmd.servicecapabilitylist = [] + cmd.serviceCapabilityList = [] for service, capability in services["servicecapabilitylist"].items(): for ctype, value in capability.items(): - cmd.servicecapabilitylist.append({ + cmd.serviceCapabilityList.append({ 'service': service, 'capabilitytype': ctype, 'capabilityvalue': value @@ -1205,6 +1361,7 @@ class NetworkOffering: cmd.specifyVlan = services["specifyVlan"] if "specifyIpRanges" in services: cmd.specifyIpRanges = services["specifyIpRanges"] + cmd.availability = 'Optional' [setattr(cmd, k, v) for k, v in kwargs.items()] @@ -1275,7 +1432,7 @@ class LoadBalancerRule: @classmethod def create(cls, apiclient, services, ipaddressid=None, accountid=None, - networkid=None, projectid=None, domainid=None): + networkid=None, vpcid=None, projectid=None, domainid=None): """Create Load balancing Rule""" cmd = createLoadBalancerRule.createLoadBalancerRuleCmd() @@ -1293,6 +1450,8 @@ class LoadBalancerRule: if domainid: cmd.domainid = domainid + if vpcid: + cmd.vpcid = vpcid cmd.name = services["name"] cmd.algorithm = services["alg"] cmd.privateport = services["privateport"] @@ -1359,19 +1518,19 @@ class LoadBalancerRule: for name, value in param.items(): cmd.param.append({'name': name, 'value': value}) return apiclient.createLBStickinessPolicy(cmd) - + def deleteSticky(self, apiclient, id): """Deletes stickyness policy""" - + cmd = deleteLBStickinessPolicy.deleteLBStickinessPolicyCmd() cmd.id = id return apiclient.deleteLBStickinessPolicy(cmd) - + @classmethod def listStickyPolicies(cls, apiclient, lbruleid, **kwargs): """Lists stickiness policies for load balancing rule""" - - cmd= listLBStickinessPolicies.listLBStickinessPoliciesCmd() + + cmd = listLBStickinessPolicies.listLBStickinessPoliciesCmd() cmd.lbruleid = lbruleid [setattr(cmd, k, v) for k, v in kwargs.items()] return apiclient.listLBStickinessPolicies(cmd) @@ -1396,7 +1555,7 @@ class Cluster: """Create Cluster""" cmd = addCluster.addClusterCmd() cmd.clustertype = services["clustertype"] - cmd.hypervisor = services["hypervisor"] + cmd.hypervisor = apiclient.hypervisor if zoneid: cmd.zoneid = zoneid @@ -1446,7 +1605,7 @@ class Host: """Create Host in cluster""" cmd = addHost.addHostCmd() - cmd.hypervisor = services["hypervisor"] + cmd.hypervisor = apiclient.hypervisor cmd.url = services["url"] cmd.clusterid = cluster.id @@ -1493,6 +1652,29 @@ class Host: cmd.id = self.id return apiclient.prepareHostForMaintenance(cmd) + @classmethod + def enableMaintenance(cls, apiclient, id): + """enables maintainance mode Host""" + + cmd = prepareHostForMaintenance.prepareHostForMaintenanceCmd() + cmd.id = id + return apiclient.prepareHostForMaintenance(cmd) + + def cancelMaintenance(self, apiclient): + """Cancels maintainance mode Host""" + + cmd = cancelHostMaintenance.cancelHostMaintenanceCmd() + cmd.id = self.id + return apiclient.cancelHostMaintenance(cmd) + + @classmethod + def cancelMaintenance(cls, apiclient, id): + """Cancels maintainance mode Host""" + + cmd = cancelHostMaintenance.cancelHostMaintenanceCmd() + cmd.id = id + return apiclient.cancelHostMaintenance(cmd) + @classmethod def list(cls, apiclient, **kwargs): """List all Hosts matching criteria""" @@ -1586,7 +1768,8 @@ class Network: @classmethod def create(cls, apiclient, services, accountid=None, domainid=None, - networkofferingid=None, projectid=None, zoneid=None, + networkofferingid=None, projectid=None, + subdomainaccess=None, zoneid=None, gateway=None, netmask=None, vpcid=None, guestcidr=None): """Create Network for account""" cmd = createNetwork.createNetworkCmd() @@ -1603,6 +1786,9 @@ class Network: elif "zoneid" in services: cmd.zoneid = services["zoneid"] + if subdomainaccess is not None: + cmd.subdomainaccess = subdomainaccess + if gateway: cmd.gateway = gateway elif "gateway" in services: @@ -1717,7 +1903,7 @@ class Vpn: @classmethod def create(cls, apiclient, publicipid, account=None, domainid=None, - projectid=None, vpcid=None): + projectid=None, networkid=None, vpcid=None): """Create VPN for Public IP address""" cmd = createRemoteAccessVpn.createRemoteAccessVpnCmd() cmd.publicipid = publicipid @@ -1727,6 +1913,8 @@ class Vpn: cmd.domainid = domainid if projectid: cmd.projectid = projectid + if networkid: + cmd.networkid = networkid if vpcid: cmd.vpcid = vpcid return Vpn(apiclient.createRemoteAccessVpn(cmd).__dict__) @@ -1755,10 +1943,11 @@ class VpnUser: @classmethod def create(cls, apiclient, username, password, account=None, domainid=None, - projectid=None): + projectid=None, rand_name=True): """Create VPN user""" cmd = addVpnUser.addVpnUserCmd() - cmd.username = username + cmd.username = "-".join([username, + random_gen()]) if rand_name else username cmd.password = password if account: @@ -1997,6 +2186,7 @@ class PhysicalNetwork: [setattr(cmd, k, v) for k, v in kwargs.items()] return map(lambda pn : PhysicalNetwork(pn.__dict__), apiclient.listPhysicalNetworks(cmd)) + class SecurityGroup: """Manage Security Groups""" @@ -2364,6 +2554,104 @@ class NetworkServiceProvider: [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listNetworkServiceProviders(cmd)) + +class Router: + """Manage router life cycle""" + + def __init__(self, items): + self.__dict__.update(items) + + @classmethod + def start(cls, apiclient, id): + """Starts the router""" + cmd = startRouter.startRouterCmd() + cmd.id = id + return apiclient.startRouter(cmd) + + @classmethod + def stop(cls, apiclient, id, forced=None): + """Stops the router""" + cmd = stopRouter.stopRouterCmd() + cmd.id = id + if forced: + cmd.forced = forced + return apiclient.stopRouter(cmd) + + @classmethod + def reboot(cls, apiclient, id): + """Reboots the router""" + cmd = rebootRouter.rebootRouterCmd() + cmd.id = id + return apiclient.rebootRouter(cmd) + + @classmethod + def destroy(cls, apiclient, id): + """Destroy the router""" + cmd = destroyRouter.destroyRouterCmd() + cmd.id = id + return apiclient.destroyRouter(cmd) + + @classmethod + def change_service_offering(cls, apiclient, id, serviceofferingid): + """Change service offering of the router""" + cmd = changeServiceForRouter.changeServiceForRouterCmd() + cmd.id = id + cmd.serviceofferingid = serviceofferingid + return apiclient.changeServiceForRouter(cmd) + + @classmethod + def list(cls, apiclient, **kwargs): + """List routers""" + + cmd = listRouters.listRoutersCmd() + [setattr(cmd, k, v) for k, v in kwargs.items()] + return(apiclient.listRouters(cmd)) + + +class Tag: + """Manage tags""" + + def __init__(self, items): + self.__dict__.update(items) + + @classmethod + def create(cls, apiclient, resourceIds, resourceType, tags): + """Create tags""" + + cmd = createTags.createTagsCmd() + cmd.resourceIds = resourceIds + cmd.resourcetype = resourceType + cmd.tags = [] + for key, value in tags.items(): + cmd.tags.append({ + 'key': key, + 'value': value + }) + return Tag(apiclient.createTags(cmd).__dict__) + + def delete(self, apiclient, resourceIds, resourceType, tags): + """Delete tags""" + + cmd = deleteTags.deleteTagsCmd() + cmd.resourceIds = resourceIds + cmd.resourcetype = resourceType + cmd.tags = [] + for key, value in tags.items(): + cmd.tags.append({ + 'key': key, + 'value': value + }) + apiclient.deleteTags(cmd) + + @classmethod + def list(cls, apiclient, **kwargs): + """List all tags matching the criteria""" + + cmd = listTags.listTagsCmd() + [setattr(cmd, k, v) for k, v in kwargs.items()] + return(apiclient.listTags(cmd)) + + class VpcOffering: """Manage VPC offerings""" @@ -2417,7 +2705,7 @@ class VPC: @classmethod def create(cls, apiclient, services, vpcofferingid, - zoneid, networkDomain=None, account=None, domainid=None): + zoneid, networkDomain=None, account=None, domainid=None): """Creates the virtual private connection (VPC)""" cmd = createVPC.createVPCCmd() @@ -2467,6 +2755,40 @@ class VPC: [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listVPCs(cmd)) + +class PrivateGateway: + """Manage private gateway lifecycle""" + def create(cls, apiclient, gateway, ipaddress, netmask, vlan, vpcid, + physicalnetworkid=None): + """Create private gateway""" + + cmd = createPrivateGateway.createPrivateGatewayCmd() + cmd.gateway = gateway + cmd.ipaddress = ipaddress + cmd.netmask = netmask + cmd.vlan = vlan + cmd.vpcid = vpcid + if physicalnetworkid: + cmd.physicalnetworkid = physicalnetworkid + + return PrivateGateway(apiclient.createPrivateGateway(cmd).__dict__) + + def delete(self, apiclient): + """Delete private gateway""" + + cmd = deletePrivateGateway.deletePrivateGatewayCmd() + cmd.id = self.id + return apiclient.deletePrivateGateway(cmd) + + @classmethod + def list(cls, apiclient, **kwargs): + """List private gateways""" + + cmd = listPrivateGateways.listPrivateGatewaysCmd() + [setattr(cmd, k, v) for k, v in kwargs.items()] + return(apiclient.listPrivateGateways(cmd)) + + class AffinityGroup: def __init__(self, items): self.__dict__.update(items) @@ -2495,9 +2817,35 @@ class AffinityGroup: [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listVPCs(cmd)) +class StaticRoute: + """Manage static route lifecycle""" + @classmethod + def create(cls, apiclient, cidr, gatewayid): + """Create static route""" + + cmd = createStaticRoute.createStaticRouteCmd() + cmd.cidr = cidr + cmd.gatewayid = gatewayid + return StaticRoute(apiclient.createStaticRoute(cmd).__dict__) + + def delete(self, apiclient): + """Delete static route""" + + cmd = deleteStaticRoute.deleteStaticRouteCmd() + cmd.id = self.id + return apiclient.deleteStaticRoute(cmd) + + @classmethod + def list(cls, apiclient, **kwargs): + """List static route""" + + cmd = listStaticRoutes.listStaticRoutesCmd() + [setattr(cmd, k, v) for k, v in kwargs.items()] + return(apiclient.listStaticRoutes(cmd)) + + class VNMC: """Manage VNMC lifecycle""" - def __init__(self, items): self.__dict__.update(items) @@ -2526,13 +2874,153 @@ class VNMC: [setattr(cmd, k, v) for k, v in kwargs.items()] return(apiclient.listCiscoVnmcResources(cmd)) -class ASA1000V: - """Manage ASA 1000v lifecycle""" + +class SSHKeyPair: + """Manage SSH Key pairs""" + + def __init__(self, items, services): + self.__dict__.update(items) + + @classmethod + def create(cls, apiclient, name=None, account=None, + domainid=None, projectid=None): + """Creates SSH keypair""" + cmd = createSSHKeyPair.createSSHKeyPairCmd() + cmd.name = name + if account is not None: + cmd.account = account + if domainid is not None: + cmd.domainid = domainid + if projectid is not None: + cmd.projectid = projectid + return (apiclient.createSSHKeyPair(cmd)) + + def delete(self, apiclient): + """Delete SSH key pair""" + cmd = deleteSSHKeyPair.deleteSSHKeyPairCmd() + cmd.name = self.name + apiclient.deleteSSHKeyPair(cmd) + + @classmethod + def list(cls, apiclient, **kwargs): + """List all SSH key pairs""" + cmd = listSSHKeyPairs.listSSHKeyPairsCmd() + [setattr(cmd, k, v) for k, v in kwargs.items()] + return(apiclient.listSSHKeyPairs(cmd)) + + +class Capacities: + """Manage Capacities""" + + @classmethod + def list(cls, apiclient, **kwargs): + """Lists capacities""" + + cmd = listCapacity.listCapacityCmd() + [setattr(cmd, k, v) for k, v in kwargs.items()] + return(apiclient.listCapacity(cmd)) + + +class Alert: + """Manage alerts""" + + @classmethod + def list(cls, apiclient, **kwargs): + """Lists alerts""" + + cmd = listAlerts.listAlertsCmd() + [setattr(cmd, k, v) for k, v in kwargs.items()] + return(apiclient.listAlerts(cmd)) + + +class InstanceGroup: + """Manage VM instance groups""" def __init__(self, items): self.__dict__.update(items) @classmethod + def create(cls, apiclient, name=None, account=None, domainid=None, + projectid=None, networkid=None, rand_name=True): + """Creates instance groups""" + + cmd = createInstanceGroup.createInstanceGroupCmd() + cmd.name = "-".join([name, random_gen()]) if rand_name else name + if account is not None: + cmd.account = account + if domainid is not None: + cmd.domainid = domainid + if projectid is not None: + cmd.projectid = projectid + if networkid is not None: + cmd.networkid = networkid + return InstanceGroup(apiclient.createInstanceGroup(cmd).__dict__) + + def delete(self, apiclient): + """Delete instance group""" + cmd = deleteInstanceGroup.deleteInstanceGroupCmd() + cmd.id = self.id + apiclient.deleteInstanceGroup(cmd) + + def update(self, apiclient, **kwargs): + """Updates the instance groups""" + cmd = updateInstanceGroup.updateInstanceGroupCmd() + cmd.id = self.id + [setattr(cmd, k, v) for k, v in kwargs.items()] + return (apiclient.updateInstanceGroup(cmd)) + + @classmethod + def list(cls, apiclient, **kwargs): + """List all instance groups""" + cmd = listInstanceGroups.listInstanceGroupsCmd() + [setattr(cmd, k, v) for k, v in kwargs.items()] + return (apiclient.listInstanceGroups(cmd)) + + def startInstances(self, apiclient): + """Starts all instances in a VM tier""" + + cmd = startVirtualMachine.startVirtualMachineCmd() + cmd.group = self.id + return apiclient.startVirtualMachine(cmd) + + def stopInstances(self, apiclient): + """Stops all instances in a VM tier""" + + cmd = stopVirtualMachine.stopVirtualMachineCmd() + cmd.group = self.id + return apiclient.stopVirtualMachine(cmd) + + def rebootInstances(self, apiclient): + """Reboot all instances in a VM tier""" + + cmd = rebootVirtualMachine.rebootVirtualMachineCmd() + cmd.group = self.id + return apiclient.rebootVirtualMachine(cmd) + + def deleteInstances(self, apiclient): + """Stops all instances in a VM tier""" + + cmd = destroyVirtualMachine.destroyVirtualMachineCmd() + cmd.group = self.id + return apiclient.destroyVirtualMachine(cmd) + + def changeServiceOffering(self, apiclient, serviceOfferingId): + """Change service offering of the vm tier""" + + cmd = changeServiceForVirtualMachine.changeServiceForVirtualMachineCmd() + cmd.group = self.id + cmd.serviceofferingid = serviceOfferingId + return apiclient.changeServiceForVirtualMachine(cmd) + + def recoverInstances(self, apiclient): + """Recover the instances from vm tier""" + cmd = recoverVirtualMachine.recoverVirtualMachineCmd() + cmd.group = self.id + apiclient.recoverVirtualMachine(cmd) + + +class ASA1000V: + """Manage ASA 1000v lifecycle""" def create(cls, apiclient, hostname, insideportprofile, clusterid, physicalnetworkid): """Registers ASA 1000v appliance""" diff --git a/tools/marvin/marvin/integration/lib/utils.py b/tools/marvin/marvin/integration/lib/utils.py index cff24a1b2d5..6892c41d1ec 100644 --- a/tools/marvin/marvin/integration/lib/utils.py +++ b/tools/marvin/marvin/integration/lib/utils.py @@ -106,12 +106,17 @@ def cleanup_resources(api_client, resources): obj.delete(api_client) -def is_server_ssh_ready(ipaddress, port, username, password, retries=50): +def is_server_ssh_ready(ipaddress, port, username, password, retries=50, keyPairFileLocation=None): """Return ssh handle else wait till sshd is running""" loop_cnt = retries while True: try: - ssh = remoteSSHClient(ipaddress, port, username, password) + ssh = remoteSSHClient( + host=ipaddress, + port=port, + user=username, + passwd=password, + keyPairFileLocation=keyPairFileLocation) except Exception as e: if loop_cnt == 0: raise e @@ -149,12 +154,16 @@ def fetch_api_client(config_file='datacenterCfg'): ) -def get_process_status(hostip, port, username, password, linklocalip, process): +def get_process_status(hostip, port, username, password, linklocalip, process, hypervisor=None): """Double hop and returns a process status""" #SSH to the machine ssh = remoteSSHClient(hostip, port, username, password) - ssh_command = "ssh -i ~/.ssh/id_rsa.cloud -ostricthostkeychecking=no " + if str(hypervisor).lower() == 'vmware': + ssh_command = "ssh -i /var/lib/cloud/management/.ssh/id_rsa -ostricthostkeychecking=no " + else: + ssh_command = "ssh -i ~/.ssh/id_rsa.cloud -ostricthostkeychecking=no " + ssh_command = ssh_command + \ "-oUserKnownHostsFile=/dev/null -p 3922 %s %s" % ( linklocalip, diff --git a/tools/marvin/marvin/remoteSSHClient.py b/tools/marvin/marvin/remoteSSHClient.py index 4fb2f0de8f0..04450fdf0e2 100644 --- a/tools/marvin/marvin/remoteSSHClient.py +++ b/tools/marvin/marvin/remoteSSHClient.py @@ -23,11 +23,12 @@ import logging from contextlib import closing class remoteSSHClient(object): - def __init__(self, host, port, user, passwd, retries = 10, log_lvl=logging.INFO): + def __init__(self, host, port, user, passwd, retries = 10, log_lvl=logging.INFO, keyPairFileLocation=None): self.host = host self.port = port self.user = user self.passwd = passwd + self.keyPairFile = keyPairFileLocation self.ssh = paramiko.SSHClient() self.ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) self.logger = logging.getLogger('sshClient') @@ -38,8 +39,19 @@ class remoteSSHClient(object): retry_count = retries while True: try: - self.ssh.connect(str(host),int(port), user, passwd) - self.logger.debug("SSH connect: %s@%s with passwd %s"%(user, str(host), passwd)) + if keyPairFileLocation == None: + self.ssh.connect(str(host),int(port), user, passwd) + self.logger.debug("SSH connect: %s@%s with passwd %s"%(user, str(host), passwd)) + else: + self.ssh.connect( + hostname=str(host), + port=int(port), + username=str(user), + key_filename=str(keyPairFileLocation), + look_for_keys=False + ) + self.logger.debug("connecting to server %s with user %s key %s"%(str(host), user, keyPairFileLocation)) + self.logger.debug("SSH connect: %s@%s with passwd %s"%(user, str(host), passwd)) except paramiko.SSHException, sshex: if retry_count == 0: raise cloudstackException.InvalidParameterException(repr(sshex)) From 0412c95ef845cb9b67d9fd4a3d89d11b2399b521 Mon Sep 17 00:00:00 2001 From: Hugo Trippaers Date: Tue, 23 Apr 2013 15:05:20 +0200 Subject: [PATCH 432/607] CLOUDSTACK-2152 Fix rel number, needs to be present --- packaging/centos63/package.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packaging/centos63/package.sh b/packaging/centos63/package.sh index faa089b73fa..c466f588776 100755 --- a/packaging/centos63/package.sh +++ b/packaging/centos63/package.sh @@ -44,7 +44,7 @@ if echo $VERSION | grep SNAPSHOT ; then else DEFVER="-D_ver $REALVER" DEFPRE= - DEFREL= + DEFREL="-D_rel 1" fi mkdir -p $RPMDIR/SPECS @@ -78,7 +78,7 @@ else REALVER=`echo $VERSION` DEFVER="-D_ver $REALVER" DEFPRE= - DEFREL= + DEFREL="-D_rel 1" fi mkdir -p $RPMDIR/SPECS From c34233d5b1091bda9cd6580351845f5c90dcff2f Mon Sep 17 00:00:00 2001 From: Hugo Trippaers Date: Fri, 26 Apr 2013 08:55:47 +0200 Subject: [PATCH 433/607] Fix small typo --- agent/conf/agent.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/agent/conf/agent.properties b/agent/conf/agent.properties index e49afbf2aaf..7dc4ba8a18c 100644 --- a/agent/conf/agent.properties +++ b/agent/conf/agent.properties @@ -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 From c65ad6b8e80a90a535fded7e284dce8c74f94a98 Mon Sep 17 00:00:00 2001 From: Jayapal Date: Thu, 25 Apr 2013 15:19:31 +0530 Subject: [PATCH 434/607] CLOUDSTACK-2161 coping /etc/iptables/iptables-* to /etc/iptables/rules to work for old templates In 4.2 templates iptables-persistent is looking for /etc/iptables/rules.v4 file but the old templates 4.1 and earlier are looking for /etc/iptables/rules. So coping the file to both rules and rules.v4 Signed-off-by: Abhinandan Prateek --- .../systemvm/debian/config/etc/init.d/cloud-early-config | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/patches/systemvm/debian/config/etc/init.d/cloud-early-config b/patches/systemvm/debian/config/etc/init.d/cloud-early-config index 187ae25c40c..6ffd648faeb 100755 --- a/patches/systemvm/debian/config/etc/init.d/cloud-early-config +++ b/patches/systemvm/debian/config/etc/init.d/cloud-early-config @@ -520,6 +520,7 @@ setup_sshd(){ local eth=$2 [ -f /etc/ssh/sshd_config ] && sed -i -e "s/^[#]*ListenAddress.*$/ListenAddress $ip/" /etc/ssh/sshd_config sed -i "/3922/s/eth./$eth/" /etc/iptables/rules.v4 + sed -i "/3922/s/eth./$eth/" /etc/iptables/rules } @@ -692,6 +693,8 @@ setup_router() { enable_fwding 1 chkconfig nfs-common off cp /etc/iptables/iptables-router /etc/iptables/rules.v4 +#for old templates + cp /etc/iptables/iptables-router /etc/iptables/rules setup_sshd $ETH1_IP "eth1" } @@ -764,6 +767,7 @@ EOF disable_rpfilter enable_fwding 1 cp /etc/iptables/iptables-vpcrouter /etc/iptables/rules.v4 + cp /etc/iptables/iptables-vpcrouter /etc/iptables/rules setup_sshd $ETH0_IP "eth0" cp /etc/vpcdnsmasq.conf /etc/dnsmasq.conf cp /etc/cloud-nic.rules /etc/udev/rules.d/cloud-nic.rules @@ -790,6 +794,7 @@ setup_dhcpsrvr() { enable_fwding 0 chkconfig nfs-common off cp /etc/iptables/iptables-router /etc/iptables/rules.v4 + cp /etc/iptables/iptables-router /etc/iptables/rules if [ "$SSHONGUEST" == "true" ] then setup_sshd $ETH0_IP "eth0" @@ -825,6 +830,7 @@ setup_secstorage() { echo "$public_ip $NAME" >> /etc/hosts cp /etc/iptables/iptables-secstorage /etc/iptables/rules.v4 + cp /etc/iptables/iptables-secstorage /etc/iptables/rules if [ "$hyp" == "vmware" ]; then setup_sshd $ETH1_IP "eth1" else @@ -849,6 +855,7 @@ setup_console_proxy() { sed -i /gateway/d /etc/hosts echo "$public_ip $NAME" >> /etc/hosts cp /etc/iptables/iptables-consoleproxy /etc/iptables/rules.v4 + cp /etc/iptables/iptables-consoleproxy /etc/iptables/rules if [ "$hyp" == "vmware" ]; then setup_sshd $ETH1_IP "eth1" else @@ -874,6 +881,7 @@ setup_elbvm() { echo "$public_ip $NAME" >> /etc/hosts cp /etc/iptables/iptables-elbvm /etc/iptables/rules.v4 + cp /etc/iptables/iptables-elbvm /etc/iptables/rules if [ "$SSHONGUEST" == "true" ] then setup_sshd $ETH0_IP "eth0" From 3a9001bfb6f44f322b55da41c67d748ac7528f89 Mon Sep 17 00:00:00 2001 From: Pranav Saxena Date: Fri, 26 Apr 2013 14:18:40 +0530 Subject: [PATCH 435/607] Correcting the case for secondary storage limit --- ui/scripts/domains.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/scripts/domains.js b/ui/scripts/domains.js index 8ee0ee6816a..e82f8ff44e8 100644 --- a/ui/scripts/domains.js +++ b/ui/scripts/domains.js @@ -530,7 +530,7 @@ case "10": domainObj["primaryStorageLimit"] = limit.max; break; - case "7": + case "11": domainObj["secondaryStorageLimit"] = limit.max; break; } From 318c7f2af0a664c057ec1ed057ccaad608339f62 Mon Sep 17 00:00:00 2001 From: Jayapal Date: Fri, 26 Apr 2013 14:28:02 +0530 Subject: [PATCH 436/607] CLOUDSTACK-1794 Throwing error when configuring egress rules for shared networks --- .../cloud/network/firewall/FirewallManagerImpl.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/server/src/com/cloud/network/firewall/FirewallManagerImpl.java b/server/src/com/cloud/network/firewall/FirewallManagerImpl.java index 080f7b0edf6..4ad8868b86a 100644 --- a/server/src/com/cloud/network/firewall/FirewallManagerImpl.java +++ b/server/src/com/cloud/network/firewall/FirewallManagerImpl.java @@ -27,6 +27,7 @@ import javax.ejb.Local; import javax.inject.Inject; import javax.naming.ConfigurationException; +import com.cloud.network.dao.*; import org.apache.cloudstack.api.command.user.firewall.ListFirewallRulesCmd; import org.apache.log4j.Logger; import org.springframework.stereotype.Component; @@ -56,10 +57,6 @@ import com.cloud.network.Networks.TrafficType; import com.cloud.network.NetworkManager; import com.cloud.network.NetworkModel; import com.cloud.network.NetworkRuleApplier; -import com.cloud.network.dao.FirewallRulesCidrsDao; -import com.cloud.network.dao.FirewallRulesDao; -import com.cloud.network.dao.IPAddressDao; -import com.cloud.network.dao.IPAddressVO; import com.cloud.network.element.FirewallServiceProvider; import com.cloud.network.element.NetworkACLServiceProvider; import com.cloud.network.element.PortForwardingServiceProvider; @@ -127,6 +124,8 @@ public class FirewallManagerImpl extends ManagerBase implements FirewallService, @Inject ResourceTagDao _resourceTagDao; @Inject + NetworkDao _networkDao; + @Inject VpcManager _vpcMgr; @Inject List _firewallElements; @@ -150,6 +149,11 @@ public class FirewallManagerImpl extends ManagerBase implements FirewallService, @Override public FirewallRule createEgressFirewallRule(FirewallRule rule) throws NetworkRuleConflictException { Account caller = UserContext.current().getCaller(); + + Network network = _networkDao.findById(rule.getNetworkId()); + if (network.getGuestType() == Network.GuestType.Shared) { + throw new InvalidParameterValueException("Egress firewall rules are not supported for " + network.getGuestType() + " networks"); + } return createFirewallRule(null, caller, rule.getXid(), rule.getSourcePortStart(), rule.getSourcePortEnd(), rule.getProtocol(), rule.getSourceCidrList(), rule.getIcmpCode(), From 93ef3ad55050657768703f22c0215427e09f544c Mon Sep 17 00:00:00 2001 From: Radhika PC Date: Fri, 26 Apr 2013 16:31:49 +0530 Subject: [PATCH 437/607] CLOUDSTACK-1567 ui and api changes --- docs/en-US/added-API-commands-4.2.xml | 24 ++++++++++++++++++++++++ docs/en-US/delete-event-alerts.xml | 12 ++++++++++++ docs/en-US/events.xml | 2 +- docs/en-US/images/eip-ns-basiczone.png | Bin 0 -> 55568 bytes 4 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 docs/en-US/images/eip-ns-basiczone.png diff --git a/docs/en-US/added-API-commands-4.2.xml b/docs/en-US/added-API-commands-4.2.xml index 4bec148ba96..34716240657 100644 --- a/docs/en-US/added-API-commands-4.2.xml +++ b/docs/en-US/added-API-commands-4.2.xml @@ -39,5 +39,29 @@ The response parameters are: id, ipaddress, secondaryips, gateway, netmask, macaddr, broadcasturi, isolationuri, isdefault, + + deleteAlerts + Deletes the specified alerts. The request parameters are: ids (allowed to pass one or + more IDs separated by comma); type (string); olderthan (yyyy-mm-dd format). + The response parameters are: true, false + + + archiveAlerts + Archives the specified alerts. The request parameters are: ids (allowed to pass one or + more IDs separated by comma); type (string); olderthan (yyyy-mm-dd format). + The response parameters are: true, false + + + deleteEvents + Deletes the specified events. The request parameters are: ids (allowed to pass one or + more IDs separated by comma); type (string); olderthan (yyyy-mm-dd format). + The response parameters are: true, false + + + archiveEvents + Archives the specified events. The request parameters are: ids (allowed to pass one or + more IDs separated by comma); type (string); olderthan (yyyy-mm-dd format). + The response parameters are: true, false + diff --git a/docs/en-US/delete-event-alerts.xml b/docs/en-US/delete-event-alerts.xml index 3eebcb727a0..ef39040c102 100644 --- a/docs/en-US/delete-event-alerts.xml +++ b/docs/en-US/delete-event-alerts.xml @@ -28,6 +28,18 @@ or by using the Details page. If you want to delete multiple alerts or events at the same time, you can use the respective context menu. You can delete alerts or events by category for a time period. + In order to support the delete or archive alerts, the following global parameters have been + added: + + + alert.purge.delay: The alerts older than specified + number of days are purged. Set the value to 0 to never purge alerts automatically. + + + alert.purge.interval: The interval in seconds to wait + before running the alert purge thread. The default is 86400 seconds (one day). + + Archived alerts or events cannot be viewed in the UI, or by using the API. They are maintained in the database for auditing or compliance purposes. diff --git a/docs/en-US/events.xml b/docs/en-US/events.xml index 4a1445873a4..3b93ee0451e 100644 --- a/docs/en-US/events.xml +++ b/docs/en-US/events.xml @@ -25,7 +25,7 @@ physical resources associated with a cloud environment. Events are used by monitoring systems, usage and billing systems, or any other event-driven workflow systems to discern a pattern and make the right business decision. In &PRODUCT; an event could be a state change of virtual or - psychical resources, an action performed by an user (action events), or policy based events + physical resources, an action performed by an user (action events), or policy based events (alerts). diff --git a/docs/en-US/images/eip-ns-basiczone.png b/docs/en-US/images/eip-ns-basiczone.png new file mode 100644 index 0000000000000000000000000000000000000000..315ff55dab9e4169559ab3d357ffc4486d8c25de GIT binary patch literal 55568 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 literal 0 HcmV?d00001 From 1adec812fad2fd58559d5b2e37b8b35d121486ce Mon Sep 17 00:00:00 2001 From: Hugo Trippaers Date: Fri, 26 Apr 2013 13:56:07 +0200 Subject: [PATCH 438/607] Please, please, pretty please try to stay away from the exec plugin whereever possible. It ussually ends up being non portable across developer operating systems. Most commands like cp have a perfectly usable equivalent in ant like the copy task. --- client/pom.xml | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/client/pom.xml b/client/pom.xml index 743cd363005..a7c7009ffc2 100644 --- a/client/pom.xml +++ b/client/pom.xml @@ -450,16 +450,15 @@ - test - - - - - + + + + + From ae79d782ec56c5bf9b5697850d627b66acf1b9ba Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Fri, 26 Apr 2013 10:48:25 -0700 Subject: [PATCH 439/607] Add remove NIC API calls --- .../classes/resources/messages.properties | 2 ++ ui/dictionary.jsp | 2 ++ ui/scripts/instances.js | 21 ++++++++++++++----- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/client/WEB-INF/classes/resources/messages.properties b/client/WEB-INF/classes/resources/messages.properties index ad8f42b0e78..32f5946e96e 100644 --- a/client/WEB-INF/classes/resources/messages.properties +++ b/client/WEB-INF/classes/resources/messages.properties @@ -14,6 +14,8 @@ # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. +label.action.delete.nic=Remove NIC +message.action.delete.nic=Please confirm that want to remove this NIC, which will also remove the associated network from the VM. label.add.affinity.group=Add new affinity group message.delete.affinity.group=Please confirm that you would like to remove this affinity group. label.delete.affinity.group=Delete Affinity Group diff --git a/ui/dictionary.jsp b/ui/dictionary.jsp index 1880be53e7e..47ba794c1be 100644 --- a/ui/dictionary.jsp +++ b/ui/dictionary.jsp @@ -25,6 +25,8 @@ under the License. <% long now = System.currentTimeMillis(); %> From 271f8759be06a6a150809f454b469d2301c25d1b Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Sat, 27 Apr 2013 18:29:46 -0700 Subject: [PATCH 453/607] CLOUDSTACK-2120: mixed zone management - API: extend listPods API to to take in zonetype. --- .../api/command/admin/pod/ListPodsByCmd.java | 7 ++++ .../cloud/server/ManagementServerImpl.java | 42 +++++++++++++------ 2 files changed, 36 insertions(+), 13 deletions(-) diff --git a/api/src/org/apache/cloudstack/api/command/admin/pod/ListPodsByCmd.java b/api/src/org/apache/cloudstack/api/command/admin/pod/ListPodsByCmd.java index 3dace4244ae..db233ae441e 100644 --- a/api/src/org/apache/cloudstack/api/command/admin/pod/ListPodsByCmd.java +++ b/api/src/org/apache/cloudstack/api/command/admin/pod/ListPodsByCmd.java @@ -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; } diff --git a/server/src/com/cloud/server/ManagementServerImpl.java b/server/src/com/cloud/server/ManagementServerImpl.java index 050f57bca98..5db8329928a 100755 --- a/server/src/com/cloud/server/ManagementServerImpl.java +++ b/server/src/com/cloud/server/ManagementServerImpl.java @@ -1068,17 +1068,29 @@ public class ManagementServerImpl extends ManagerBase implements ManagementServe @Override public Pair, Integer> searchForPods(ListPodsByCmd cmd) { - Filter searchFilter = new Filter(HostPodVO.class, "dataCenterId", true, cmd.getStartIndex(), cmd.getPageSizeVal()); - SearchCriteria sc = _hostPodDao.createSearchCriteria(); - String podName = cmd.getPodName(); Long id = cmd.getId(); - Long zoneId = cmd.getZoneId(); + Long zoneId = cmd.getZoneId(); Object keyword = cmd.getKeyword(); Object allocationState = cmd.getAllocationState(); - + String zoneType = cmd.getZoneType(); zoneId = _accountMgr.checkAccessAndSpecifyAuthority(UserContext.current().getCaller(), zoneId); + + Filter searchFilter = new Filter(HostPodVO.class, "dataCenterId", true, cmd.getStartIndex(), cmd.getPageSizeVal()); + SearchBuilder sb = _hostPodDao.createSearchBuilder(); + sb.and("id", sb.entity().getId(), SearchCriteria.Op.EQ); + sb.and("name", sb.entity().getName(), SearchCriteria.Op.LIKE); + sb.and("dataCenterId", sb.entity().getDataCenterId(), SearchCriteria.Op.EQ); + sb.and("allocationState", sb.entity().getAllocationState(), SearchCriteria.Op.EQ); + + if(zoneType != null) { + SearchBuilder zoneSb = _dcDao.createSearchBuilder(); + zoneSb.and("zoneNetworkType", zoneSb.entity().getNetworkType(), SearchCriteria.Op.EQ); + sb.join("zoneSb", zoneSb, sb.entity().getDataCenterId(), zoneSb.entity().getId(), JoinBuilder.JoinType.INNER); + } + + SearchCriteria sc = sb.create(); if (keyword != null) { SearchCriteria ssc = _hostPodDao.createSearchCriteria(); ssc.addOr("name", SearchCriteria.Op.LIKE, "%" + keyword + "%"); @@ -1088,21 +1100,25 @@ public class ManagementServerImpl extends ManagerBase implements ManagementServe } if (id != null) { - sc.addAnd("id", SearchCriteria.Op.EQ, id); + sc.setParameters("id", id); } - + if (podName != null) { - sc.addAnd("name", SearchCriteria.Op.LIKE, "%" + podName + "%"); + sc.setParameters("name", "%" + podName + "%"); } - + if (zoneId != null) { - sc.addAnd("dataCenterId", SearchCriteria.Op.EQ, zoneId); + sc.setParameters("dataCenterId", zoneId); } - + if (allocationState != null) { - sc.addAnd("allocationState", SearchCriteria.Op.EQ, allocationState); + sc.setParameters("allocationState", allocationState); + } + + if(zoneType != null) { + sc.setJoinParameters("zoneSb", "zoneNetworkType", zoneType); } - + Pair, Integer> result = _hostPodDao.searchAndCount(sc, searchFilter); return new Pair, Integer>(result.first(), result.second()); } From ef00f1b04f8d9e4f7ea981c3174ae9f4a84d4a58 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Sat, 27 Apr 2013 21:38:03 -0700 Subject: [PATCH 454/607] CLOUDSTACK-2120: mixed zone management - API: extend listClusters API to to take in zonetype. --- .../admin/cluster/ListClustersCmd.java | 8 +++- .../cloud/server/ManagementServerImpl.java | 47 ++++++++++++++----- 2 files changed, 41 insertions(+), 14 deletions(-) diff --git a/api/src/org/apache/cloudstack/api/command/admin/cluster/ListClustersCmd.java b/api/src/org/apache/cloudstack/api/command/admin/cluster/ListClustersCmd.java index 0417b187e38..f2dd3499b84 100644 --- a/api/src/org/apache/cloudstack/api/command/admin/cluster/ListClustersCmd.java +++ b/api/src/org/apache/cloudstack/api/command/admin/cluster/ListClustersCmd.java @@ -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; } diff --git a/server/src/com/cloud/server/ManagementServerImpl.java b/server/src/com/cloud/server/ManagementServerImpl.java index 5db8329928a..1799f7729e0 100755 --- a/server/src/com/cloud/server/ManagementServerImpl.java +++ b/server/src/com/cloud/server/ManagementServerImpl.java @@ -616,48 +616,69 @@ public class ManagementServerImpl extends ManagerBase implements ManagementServe @Override public Pair, Integer> searchForClusters(ListClustersCmd cmd) { - Filter searchFilter = new Filter(ClusterVO.class, "id", true, cmd.getStartIndex(), cmd.getPageSizeVal()); - SearchCriteria sc = _clusterDao.createSearchCriteria(); - - Object id = cmd.getId(); + Object id = cmd.getId(); Object name = cmd.getClusterName(); Object podId = cmd.getPodId(); Long zoneId = cmd.getZoneId(); Object hypervisorType = cmd.getHypervisorType(); Object clusterType = cmd.getClusterType(); Object allocationState = cmd.getAllocationState(); + String zoneType = cmd.getZoneType(); String keyword = cmd.getKeyword(); - zoneId = _accountMgr.checkAccessAndSpecifyAuthority(UserContext.current().getCaller(), zoneId); - + + + Filter searchFilter = new Filter(ClusterVO.class, "id", true, cmd.getStartIndex(), cmd.getPageSizeVal()); + + SearchBuilder sb = _clusterDao.createSearchBuilder(); + sb.and("id", sb.entity().getId(), SearchCriteria.Op.EQ); + sb.and("name", sb.entity().getName(), SearchCriteria.Op.LIKE); + sb.and("podId", sb.entity().getPodId(), SearchCriteria.Op.EQ); + sb.and("dataCenterId", sb.entity().getDataCenterId(), SearchCriteria.Op.EQ); + sb.and("hypervisorType", sb.entity().getHypervisorType(), SearchCriteria.Op.EQ); + sb.and("clusterType", sb.entity().getClusterType(), SearchCriteria.Op.EQ); + sb.and("allocationState", sb.entity().getAllocationState(), SearchCriteria.Op.EQ); + + if(zoneType != null) { + SearchBuilder zoneSb = _dcDao.createSearchBuilder(); + zoneSb.and("zoneNetworkType", zoneSb.entity().getNetworkType(), SearchCriteria.Op.EQ); + sb.join("zoneSb", zoneSb, sb.entity().getDataCenterId(), zoneSb.entity().getId(), JoinBuilder.JoinType.INNER); + } + + + SearchCriteria sc = sb.create(); if (id != null) { - sc.addAnd("id", SearchCriteria.Op.EQ, id); + sc.setParameters("id", id); } if (name != null) { - sc.addAnd("name", SearchCriteria.Op.LIKE, "%" + name + "%"); + sc.setParameters("name", "%" + name + "%"); } if (podId != null) { - sc.addAnd("podId", SearchCriteria.Op.EQ, podId); + sc.setParameters("podId", podId); } if (zoneId != null) { - sc.addAnd("dataCenterId", SearchCriteria.Op.EQ, zoneId); + sc.setParameters("dataCenterId", zoneId); } if (hypervisorType != null) { - sc.addAnd("hypervisorType", SearchCriteria.Op.EQ, hypervisorType); + sc.setParameters("hypervisorType", hypervisorType); } if (clusterType != null) { - sc.addAnd("clusterType", SearchCriteria.Op.EQ, clusterType); + sc.setParameters("clusterType", clusterType); } if (allocationState != null) { - sc.addAnd("allocationState", SearchCriteria.Op.EQ, allocationState); + sc.setParameters("allocationState", allocationState); } + if(zoneType != null) { + sc.setJoinParameters("zoneSb", "zoneNetworkType", zoneType); + } + if (keyword != null) { SearchCriteria ssc = _clusterDao.createSearchCriteria(); ssc.addOr("name", SearchCriteria.Op.LIKE, "%" + keyword + "%"); From b2fdd5e2a23b44e5976c7135632d1ca6ade57663 Mon Sep 17 00:00:00 2001 From: sanjeevneelarapu Date: Fri, 26 Apr 2013 17:10:37 +0530 Subject: [PATCH 455/607] CLOUDSTACK-702: Tests for Multiple IP Ranges 1. Adding a cidr in existing subnet 2. Adding a cidr in new subnet Signed-off-by: sanjeevneelarapu Signed-off-by: Prasanna Santhanam --- .../component/test_multiple_ip_ranges.py | 238 ++++++++++++++++++ 1 file changed, 238 insertions(+) create mode 100644 test/integration/component/test_multiple_ip_ranges.py diff --git a/test/integration/component/test_multiple_ip_ranges.py b/test/integration/component/test_multiple_ip_ranges.py new file mode 100644 index 00000000000..489e7ca3bdf --- /dev/null +++ b/test/integration/component/test_multiple_ip_ranges.py @@ -0,0 +1,238 @@ +# 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. +""" Tests for Multiple IP Ranges feature +""" +from marvin.cloudstackTestCase import * +from marvin.cloudstackAPI import * +from marvin.integration.lib.utils import * +from marvin.integration.lib.base import * +from marvin.integration.lib.common import * +from netaddr import * + +from nose.plugins.attrib import attr + +class Services: + """Test Multiple IP Ranges + """ + def __init__(self): + self.services = { + "account": { + "email": "test@test.com", + "firstname": "Test", + "lastname": "User", + "username": "test", + # Random characters are appended for unique + # username + "password": "password", + }, + "service_offering": { + "name": "Tiny Instance", + "displaytext": "Tiny Instance", + "cpunumber": 1, + "cpuspeed": 200, # in MHz + "memory": 256, # In MBs + }, + "disk_offering": { + "displaytext": "Small Disk", + "name": "Small Disk", + "disksize": 1 + }, + "templates": { + "displaytext": 'Template', + "name": 'Template', + "ostype": "CentOS 5.3 (64-bit)", + "templatefilter": 'self', + }, + "vlan_ip_range": { + "startip": "", + "endip": "", + "netmask": "", + "gateway": "", + "forvirtualnetwork": "false", + "vlan": "untagged", + } + } + +class TestMultipleIpRanges(cloudstackTestCase): + """Test Multiple IP Ranges for guest network + """ + + + @classmethod + def setUpClass(cls): + cls.api_client = super(TestMultipleIpRanges, cls).getClsTestClient().getApiClient() + cls.services = Services().services + # Get Zone, Domain and templates + cls.domain = get_domain(cls.api_client, cls.services) + cls.zone = get_zone(cls.api_client, cls.services) + cls.pod = get_pod(cls.api_client, cls.zone.id, cls.services) + cls.services['mode'] = cls.zone.networktype + cls.services["domainid"] = cls.domain.id + cls.services["zoneid"] = cls.zone.id + cls.account = Account.create( + cls.api_client, + cls.services["account"], + domainid=cls.domain.id + ) + cls.services["account"] = cls.account.account.name + cls._cleanup = [ + cls.account, + ] + return + + @classmethod + def tearDownClass(cls): + try: + #Cleanup resources used + cleanup_resources(cls.api_client, cls._cleanup) + except Exception as e: + raise Exception("Warning: Exception during cleanup : %s" % e) + return + + def setUp(self): + self.apiclient = self.testClient.getApiClient() + self.dbclient = self.testClient.getDbConnection() + self.cleanup = [ ] + return + + def tearDown(self): + try: + #Clean up, terminate the resources created + cleanup_resources(self.apiclient, self.cleanup) + except Exception as e: + raise Exception("Warning: Exception during cleanup : %s" % e) + return + + def increment_cidr(self): + """Takes CIDR as input and will increment by one and returns the new CIDR + """ + publicIpRange = PublicIpRange.list(self.apiclient) + self.startIp = publicIpRange[0].startip + self.endIp = publicIpRange[0].endip + self.gateway = publicIpRange[0].gateway + self.netmask = publicIpRange[0].netmask + #Pass ip address and mask length to IPNetwork to findout the CIDR + ip = IPNetwork(self.startIp+"/"+self.netmask) + new_cidr = ip.__iadd__(1) + ip2 = IPNetwork(new_cidr) + return ip2 + + def verify_vlan_range(self,vlan,services): + #compare vlan_list response with configured values + self.assertEqual( + isinstance(vlan, list), + True, + "Check list response returned a valid list" + ) + self.assertNotEqual( + len(vlan), + 0, + "check list vlan response" + ) + self.assertEqual( + vlan[0].startip, + services["startip"], + "Start IP in vlan ip range is not matched with the configured start ip" + ) + self.assertEqual( + vlan[0].endip, + services["endip"], + "End IP in vlan ip range is not matched with the configured end ip" + ) + self.assertEqual( + vlan[0].gateway, + services["gateway"], + "gateway in vlan ip range is not matched with the configured gateway" + ) + self.assertEqual( + vlan[0].netmask, + services["netmask"], + "netmask in vlan ip range is not matched with the configured netmask" + ) + return + + @attr(tags=["advanced_sg", "sg"]) + def test_01_add_ip_same_cidr(self): + """Test add guest ip range in the existing cidr + """ + #call increment_cidr function to get exiting cidr from the setup and increment it + ip2 = self.increment_cidr() + test_nw = ip2.network + #Add IP range(5 IPs) in the new CIDR + test_gateway = test_nw+1 + test_startIp = test_nw+2 + test_endIp = test_startIp+5 + test_startIp2= test_endIp+5 + test_endIp2 = test_startIp2+5 + #Populating services with new IP range + self.services["vlan_ip_range"]["startip"] = test_startIp + self.services["vlan_ip_range"]["endip"] = test_endIp + self.services["vlan_ip_range"]["gateway"] = test_gateway + self.services["vlan_ip_range"]["netmask"] = self.netmask + self.services["vlan_ip_range"]["zoneid"] = self.zone.id + self.services["vlan_ip_range"]["podid"] = self.pod.id + #create new vlan ip range + new_vlan = PublicIpRange.create(self.apiclient, self.services["vlan_ip_range"]) + self.debug("Created new vlan range with startip:%s and endip:%s" %(test_startIp,test_endIp)) + self.cleanup.append(new_vlan) + new_vlan_res = new_vlan.list(self.apiclient,new_vlan.id) + #Compare list output with configured values + self.verify_vlan_range(new_vlan_res,self.services["vlan_ip_range"]) + #Add few more ips in the same CIDR + self.services["vlan_ip_range"]["startip"] = test_startIp2 + self.services["vlan_ip_range"]["endip"] = test_endIp2 + new_vlan2 = PublicIpRange.create(self.apiclient, self.services["vlan_ip_range"]) + self.debug("Created new vlan range with startip:%s and endip:%s" %(test_startIp2,test_endIp2)) + self.cleanup.append(new_vlan2) + #list new vlan ip range + new_vlan2_res = new_vlan2.list(self.apiclient,new_vlan2.id) + #Compare list output with configured values + self.verify_vlan_range(new_vlan2_res,self.services["vlan_ip_range"]) + return + + @attr(tags=["advanced_sg", "sg"]) + def test_02_add_ip_diff_cidr(self): + """Test add ip range in a new cidr + + Steps: + 1.Get public vlan range (guest cidr) from the setup + 2.Add IP range to a new cidr + """ + #call increment_cidr function to get exiting cidr from the setup and increment it + ip2 = self.increment_cidr() + test_nw = ip2.network + #Add IP range(5 IPs) in the new CIDR + test_gateway = test_nw+1 + test_startIp = test_nw+2 + test_endIp = test_startIp+5 + #Populating services with new IP range + self.services["vlan_ip_range"]["startip"] = test_startIp + self.services["vlan_ip_range"]["endip"] = test_endIp + self.services["vlan_ip_range"]["gateway"] = test_gateway + self.services["vlan_ip_range"]["netmask"] = self.netmask + self.services["vlan_ip_range"]["zoneid"] = self.zone.id + self.services["vlan_ip_range"]["podid"] = self.pod.id + #create new vlan ip range + new_vlan = PublicIpRange.create(self.apiclient, self.services["vlan_ip_range"]) + self.debug("Created new vlan range with startip:%s and endip:%s" %(test_startIp,test_endIp)) + self.cleanup.append(new_vlan) + new_vlan_res = new_vlan.list(self.apiclient,new_vlan.id) + #Compare list output with configured values + self.verify_vlan_range(new_vlan_res,self.services["vlan_ip_range"]) + return + + From deaf9106ca557a938edf25bee65cf6b4eb3ac03f Mon Sep 17 00:00:00 2001 From: Harikrishna Patnala Date: Mon, 29 Apr 2013 14:11:51 +0530 Subject: [PATCH 456/607] CLOUDSTACK-741: Granular Global Parameters and adding fixes for CLOUDSTACK-2176, CLOUDSTACK-2198, CLOUDSTACK-2200 Adding the zone, cluster, account level parameters The parameters at scope (zone/cluster/pool/account) can be updated by updateConfiguration API with additional parameter zoneid/clusterid/accountid/storagepoolid Whenever these scoped parameters are used in CS they get value from the corresponding details table if not defined get value from global parameter. Same with the listConfiguration API with additional parameter zoneid/clusterid/accountid/storagepoolid --- .../configuration/ConfigurationService.java | 15 +- api/src/com/cloud/network/NetworkModel.java | 2 +- .../command/admin/config/ListCfgsByCmd.java | 44 +++-- .../command/admin/config/UpdateCfgCmd.java | 47 +++-- .../api/response/ConfigurationResponse.java | 3 + .../src/com/cloud/alert/AlertManagerImpl.java | 27 ++- server/src/com/cloud/api/ApiDBUtils.java | 2 +- .../com/cloud/capacity/dao/CapacityDao.java | 2 +- .../cloud/capacity/dao/CapacityDaoImpl.java | 35 ++-- .../src/com/cloud/configuration/Config.java | 20 +- .../configuration/ConfigurationManager.java | 2 +- .../ConfigurationManagerImpl.java | 171 ++++++++++++------ .../src/com/cloud/deploy/FirstFitPlanner.java | 25 +-- .../com/cloud/network/NetworkManagerImpl.java | 7 +- .../com/cloud/network/NetworkModelImpl.java | 11 +- .../com/cloud/network/vpc/VpcManagerImpl.java | 2 +- .../vpn/RemoteAccessVpnManagerImpl.java | 6 +- .../cloud/server/ConfigurationServerImpl.java | 11 +- .../cloud/server/ManagementServerImpl.java | 41 ++++- .../dao/StoragePoolDetailsDaoImpl.java | 1 + .../cloud/template/TemplateAdapterBase.java | 7 +- .../cloud/template/TemplateManagerImpl.java | 10 +- .../cloud/network/MockNetworkModelImpl.java | 2 +- .../vpc/MockConfigurationManagerImpl.java | 8 +- .../com/cloud/vpc/MockNetworkModelImpl.java | 2 +- .../AffinityApiTestConfiguration.java | 29 ++- .../ChildTestConfiguration.java | 38 ++-- setup/db/db/schema-410to420.sql | 4 + .../integration/smoke/test_global_settings.py | 14 +- 29 files changed, 388 insertions(+), 200 deletions(-) diff --git a/api/src/com/cloud/configuration/ConfigurationService.java b/api/src/com/cloud/configuration/ConfigurationService.java index 6937d0b64de..fdbd9d6bb0b 100644 --- a/api/src/com/cloud/configuration/ConfigurationService.java +++ b/api/src/com/cloud/configuration/ConfigurationService.java @@ -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); diff --git a/api/src/com/cloud/network/NetworkModel.java b/api/src/com/cloud/network/NetworkModel.java index 4d7d714a7ae..d81b2d76fee 100644 --- a/api/src/com/cloud/network/NetworkModel.java +++ b/api/src/com/cloud/network/NetworkModel.java @@ -181,7 +181,7 @@ public interface NetworkModel { /** * @return */ - String getDefaultNetworkDomain(); + String getDefaultNetworkDomain(long zoneId); /** * @param ntwkOffId diff --git a/api/src/org/apache/cloudstack/api/command/admin/config/ListCfgsByCmd.java b/api/src/org/apache/cloudstack/api/command/admin/config/ListCfgsByCmd.java index 9f34405ffbd..a11904e90ce 100644 --- a/api/src/org/apache/cloudstack/api/command/admin/config/ListCfgsByCmd.java +++ b/api/src/org/apache/cloudstack/api/command/admin/config/ListCfgsByCmd.java @@ -45,11 +45,17 @@ public class ListCfgsByCmd extends BaseListCmd { @Parameter(name = ApiConstants.NAME, type = CommandType.STRING, description = "lists configuration by name") private String configName; - @Parameter(name=ApiConstants.SCOPE, type = CommandType.STRING, description = "scope(zone/cluster/pool/account) of the parameter that needs to be updated") - private String scope; + @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.ID, type = CommandType.UUID, entityType = {ZoneResponse.class, ClusterResponse.class, StoragePoolResponse.class, AccountResponse.class}, description = "corresponding ID of the scope") - private Long 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; // /////////////////////////////////////////////////// @@ -64,14 +70,21 @@ public class ListCfgsByCmd extends BaseListCmd { return configName; } - public String getScope() { - return scope; + public Long getZoneId() { + return zone_id; } - public Long getId() { - return id; + public Long getClusterId() { + return cluster_id; } + public Long getStoragepoolId() { + return storagepool_id; + } + + public Long getAccountId() { + return account_id; + } @Override public Long getPageSizeVal() { @@ -100,10 +113,17 @@ public class ListCfgsByCmd extends BaseListCmd { for (Configuration cfg : result.first()) { ConfigurationResponse cfgResponse = _responseGenerator.createConfigurationResponse(cfg); cfgResponse.setObjectName("configuration"); - if (scope != null) { - cfgResponse.setScope(scope); - } else { - cfgResponse.setScope("global"); + 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); } diff --git a/api/src/org/apache/cloudstack/api/command/admin/config/UpdateCfgCmd.java b/api/src/org/apache/cloudstack/api/command/admin/config/UpdateCfgCmd.java index 074c5a3b028..deb61d3741d 100644 --- a/api/src/org/apache/cloudstack/api/command/admin/config/UpdateCfgCmd.java +++ b/api/src/org/apache/cloudstack/api/command/admin/config/UpdateCfgCmd.java @@ -43,11 +43,17 @@ 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.SCOPE, type = CommandType.STRING, description = "scope(zone/cluster/pool/account) of the parameter that needs to be updated") - private String scope; + @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.ID, type = CommandType.UUID, entityType = {ZoneResponse.class, ClusterResponse.class, StoragePoolResponse.class, AccountResponse.class}, description = "corresponding ID of the scope") - private Long 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 /////////////////////// @@ -61,12 +67,20 @@ public class UpdateCfgCmd extends BaseCmd { return value; } - public String getScope() { - return scope; + public Long getZoneId() { + return zone_id; } - public Long getId() { - return id; + public Long getClusterId() { + return cluster_id; + } + + public Long getStoragepoolId() { + return storagepool_id; + } + + public Long getAccountId() { + return account_id; } ///////////////////////////////////////////////////// @@ -89,12 +103,19 @@ public class UpdateCfgCmd extends BaseCmd { if (cfg != null) { ConfigurationResponse response = _responseGenerator.createConfigurationResponse(cfg); response.setResponseName(getCommandName()); - if (scope != null) { - response.setScope(scope); - response.setValue(value); - } else { - response.setScope("global"); + 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"); diff --git a/api/src/org/apache/cloudstack/api/response/ConfigurationResponse.java b/api/src/org/apache/cloudstack/api/response/ConfigurationResponse.java index 176c47aff8b..fa0d4b45475 100644 --- a/api/src/org/apache/cloudstack/api/response/ConfigurationResponse.java +++ b/api/src/org/apache/cloudstack/api/response/ConfigurationResponse.java @@ -35,6 +35,9 @@ public class ConfigurationResponse extends BaseResponse { @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; diff --git a/server/src/com/cloud/alert/AlertManagerImpl.java b/server/src/com/cloud/alert/AlertManagerImpl.java index 655ed98ea60..6839d44635d 100755 --- a/server/src/com/cloud/alert/AlertManagerImpl.java +++ b/server/src/com/cloud/alert/AlertManagerImpl.java @@ -70,6 +70,7 @@ import com.cloud.host.dao.HostDao; import com.cloud.network.dao.IPAddressDao; import com.cloud.org.Grouping.AllocationState; import com.cloud.resource.ResourceManager; +import com.cloud.server.ConfigurationServer; import com.cloud.storage.StorageManager; import com.cloud.storage.dao.VolumeDao; import com.cloud.utils.NumbersUtil; @@ -106,7 +107,8 @@ public class AlertManagerImpl extends ManagerBase implements AlertManager { @Inject private PrimaryDataStoreDao _storagePoolDao; @Inject private ConfigurationDao _configDao; @Inject private ResourceManager _resourceMgr; - @Inject private ConfigurationManager _configMgr; + @Inject private ConfigurationManager _configMgr; + @Inject ConfigurationServer _configServer; private Timer _timer = null; private float _cpuOverProvisioningFactor = 1; private long _capacityCheckPeriod = 60L * 60L * 1000L; // one hour by default @@ -562,19 +564,30 @@ public class AlertManagerImpl extends ManagerBase implements AlertManager { float overProvFactor = 1f; capacity = _capacityDao.findCapacityBy(capacityType.intValue(), cluster.getDataCenterId(), null, cluster.getId()); - if (capacityType == Capacity.CAPACITY_TYPE_STORAGE){ - capacity.add(getUsedStats(capacityType, cluster.getDataCenterId(), cluster.getPodId(), cluster.getId())); + // cpu and memory allocated capacity notification threshold can be defined at cluster level, so getting the value if they are defined at cluster level + double capacityValue = 0; + switch (capacityType) { + case Capacity.CAPACITY_TYPE_STORAGE: + capacity.add(getUsedStats(capacityType, cluster.getDataCenterId(), cluster.getPodId(), cluster.getId())); + capacityValue = _capacityTypeThresholdMap.get(capacityType); + break; + case Capacity.CAPACITY_TYPE_CPU: + overProvFactor = ApiDBUtils.getCpuOverprovisioningFactor(); + capacityValue = Double.parseDouble(_configServer.getConfigValue(Config.CPUCapacityThreshold.key(), Config.ConfigurationParameterScope.cluster.toString(), cluster.getId())); + break; + case Capacity.CAPACITY_TYPE_MEMORY: + capacityValue = Double.parseDouble(_configServer.getConfigValue(Config.MemoryCapacityThreshold.key(), Config.ConfigurationParameterScope.cluster.toString(), cluster.getId())); + break; + default: + capacityValue = _capacityTypeThresholdMap.get(capacityType); } if (capacity == null || capacity.size() == 0){ continue; - } - if (capacityType == Capacity.CAPACITY_TYPE_CPU){ - overProvFactor = ApiDBUtils.getCpuOverprovisioningFactor(); } double totalCapacity = capacity.get(0).getTotalCapacity() * overProvFactor; double usedCapacity = capacity.get(0).getUsedCapacity() + capacity.get(0).getReservedCapacity(); - if (totalCapacity != 0 && usedCapacity/totalCapacity > _capacityTypeThresholdMap.get(capacityType)){ + if (totalCapacity != 0 && usedCapacity/totalCapacity > capacityValue){ generateEmailAlert(ApiDBUtils.findZoneById(cluster.getDataCenterId()), ApiDBUtils.findPodById(cluster.getPodId()), cluster, totalCapacity, usedCapacity, capacityType); } diff --git a/server/src/com/cloud/api/ApiDBUtils.java b/server/src/com/cloud/api/ApiDBUtils.java index 21ce63b8ae8..e291c844a8c 100755 --- a/server/src/com/cloud/api/ApiDBUtils.java +++ b/server/src/com/cloud/api/ApiDBUtils.java @@ -1034,7 +1034,7 @@ public class ApiDBUtils { } public static Integer getNetworkRate(long networkOfferingId) { - return _configMgr.getNetworkOfferingNetworkRate(networkOfferingId); + return _configMgr.getNetworkOfferingNetworkRate(networkOfferingId, null); } public static Account getVlanAccount(long vlanId) { diff --git a/server/src/com/cloud/capacity/dao/CapacityDao.java b/server/src/com/cloud/capacity/dao/CapacityDao.java index 0132f69cd50..04466f4adb2 100755 --- a/server/src/com/cloud/capacity/dao/CapacityDao.java +++ b/server/src/com/cloud/capacity/dao/CapacityDao.java @@ -41,5 +41,5 @@ public interface CapacityDao extends GenericDao { List listCapacitiesGroupedByLevelAndType(Integer capacityType, Long zoneId, Long podId, Long clusterId, int level, Long limit); void updateCapacityState(Long dcId, Long podId, Long clusterId, Long hostId, String capacityState); - List listClustersCrossingThreshold(short capacityType, Long zoneId, Float disableThreshold, long computeRequested); + List listClustersCrossingThreshold(short capacityType, Long zoneId, String ConfigName, long computeRequested); } diff --git a/server/src/com/cloud/capacity/dao/CapacityDaoImpl.java b/server/src/com/cloud/capacity/dao/CapacityDaoImpl.java index c3d98173a5c..ec5081a6edf 100755 --- a/server/src/com/cloud/capacity/dao/CapacityDaoImpl.java +++ b/server/src/com/cloud/capacity/dao/CapacityDaoImpl.java @@ -27,6 +27,7 @@ import java.util.Map; import javax.ejb.Local; import javax.inject.Inject; +import com.cloud.configuration.Config; import org.apache.cloudstack.storage.datastore.db.PrimaryDataStoreDao; import org.apache.cloudstack.storage.datastore.db.StoragePoolVO; import org.apache.log4j.Logger; @@ -115,12 +116,20 @@ public class CapacityDaoImpl extends GenericDaoBase implements private static final String LIST_CAPACITY_GROUP_BY_CLUSTER_TYPE_PART2 = " GROUP BY cluster_id, capacity_type order by percent desc limit "; private static final String UPDATE_CAPACITY_STATE = "UPDATE `cloud`.`op_host_capacity` SET capacity_state = ? WHERE "; - private static final String LIST_CLUSTERS_CROSSING_THRESHOLD = "SELECT cluster_id " + - "FROM (SELECT cluster_id, ( (sum(capacity.used_capacity) + sum(capacity.reserved_capacity) + ?)/sum(total_capacity) ) ratio "+ - "FROM `cloud`.`op_host_capacity` capacity "+ - "WHERE capacity.data_center_id = ? AND capacity.capacity_type = ? AND capacity.total_capacity > 0 "+ - "GROUP BY cluster_id) tmp " + - "WHERE tmp.ratio > ? "; + + private static final String LIST_CLUSTERS_CROSSING_THRESHOLD = "SELECT clusterList.cluster_id " + + "FROM ( SELECT cluster.cluster_id cluster_id, ( (sum(cluster.used) + sum(cluster.reserved) + ?)/sum(cluster.total) ) ratio, cluster.configValue value " + + "FROM ( SELECT capacity.cluster_id cluster_id, capacity.used_capacity used, capacity.reserved_capacity reserved, capacity.total_capacity total, " + + "CASE (SELECT count(*) FROM `cloud`.`cluster_details` details WHERE details.cluster_id = capacity.cluster_id AND details.name = ? ) " + + "WHEN 1 THEN ( SELECT details.value FROM `cloud`.`cluster_details` details WHERE details.cluster_id = capacity.cluster_id AND details.name = ? ) " + + "ELSE ( SELECT config.value FROM `cloud`.`configuration` config WHERE config.name = ?) " + + "END configValue " + + "FROM `cloud`.`op_host_capacity` capacity " + + "WHERE capacity.data_center_id = ? AND capacity.capacity_type = ? AND capacity.total_capacity > 0) cluster " + + + "GROUP BY cluster.cluster_id) clusterList " + + "WHERE clusterList.ratio > clusterList.value; "; + public CapacityDaoImpl() { @@ -146,20 +155,22 @@ public class CapacityDaoImpl extends GenericDaoBase implements } @Override - public List listClustersCrossingThreshold(short capacityType, Long zoneId, Float disableThreshold, long compute_requested){ + public List listClustersCrossingThreshold(short capacityType, Long zoneId, String configName, long compute_requested){ Transaction txn = Transaction.currentTxn(); PreparedStatement pstmt = null; List result = new ArrayList(); StringBuilder sql = new StringBuilder(LIST_CLUSTERS_CROSSING_THRESHOLD); - - + // during listing the clusters that cross the threshold + // we need to check with disabled thresholds of each cluster if not defined at cluster consider the global value try { pstmt = txn.prepareAutoCloseStatement(sql.toString()); pstmt.setLong(1,compute_requested); - pstmt.setShort(2,capacityType); - pstmt.setFloat(3,disableThreshold); - pstmt.setLong(4,zoneId); + pstmt.setString(2, configName); + pstmt.setString(3, configName); + pstmt.setString(4, configName); + pstmt.setLong(5,zoneId); + pstmt.setShort(6,capacityType); ResultSet rs = pstmt.executeQuery(); while (rs.next()) { diff --git a/server/src/com/cloud/configuration/Config.java b/server/src/com/cloud/configuration/Config.java index dbcbc5332d0..af6adcf44a7 100755 --- a/server/src/com/cloud/configuration/Config.java +++ b/server/src/com/cloud/configuration/Config.java @@ -53,8 +53,8 @@ public enum Config { CapacityCheckPeriod("Alert", ManagementServer.class, Integer.class, "capacity.check.period", "300000", "The interval in milliseconds between capacity checks", null), StorageAllocatedCapacityThreshold("Alert", ManagementServer.class, Float.class, "cluster.storage.allocated.capacity.notificationthreshold", "0.75", "Percentage (as a value between 0 and 1) of allocated storage utilization above which alerts will be sent about low storage available.", null), StorageCapacityThreshold("Alert", ManagementServer.class, Float.class, "cluster.storage.capacity.notificationthreshold", "0.75", "Percentage (as a value between 0 and 1) of storage utilization above which alerts will be sent about low storage available.", null), - CPUCapacityThreshold("Alert", ManagementServer.class, Float.class, "cluster.cpu.allocated.capacity.notificationthreshold", "0.75", "Percentage (as a value between 0 and 1) of cpu utilization above which alerts will be sent about low cpu available.", null), - MemoryCapacityThreshold("Alert", ManagementServer.class, Float.class, "cluster.memory.allocated.capacity.notificationthreshold", "0.75", "Percentage (as a value between 0 and 1) of memory utilization above which alerts will be sent about low memory available.", null), + CPUCapacityThreshold("Alert", ManagementServer.class, Float.class, "cluster.cpu.allocated.capacity.notificationthreshold", "0.75", "Percentage (as a value between 0 and 1) of cpu utilization above which alerts will be sent about low cpu available.", null, ConfigurationParameterScope.cluster.toString()), + MemoryCapacityThreshold("Alert", ManagementServer.class, Float.class, "cluster.memory.allocated.capacity.notificationthreshold", "0.75", "Percentage (as a value between 0 and 1) of memory utilization above which alerts will be sent about low memory available.", null, ConfigurationParameterScope.cluster.toString()), PublicIpCapacityThreshold("Alert", ManagementServer.class, Float.class, "zone.virtualnetwork.publicip.capacity.notificationthreshold", "0.75", "Percentage (as a value between 0 and 1) of public IP address space utilization above which alerts will be sent.", null), PrivateIpCapacityThreshold("Alert", ManagementServer.class, Float.class, "pod.privateip.capacity.notificationthreshold", "0.75", "Percentage (as a value between 0 and 1) of private IP address space utilization above which alerts will be sent.", null), SecondaryStorageCapacityThreshold("Alert", ManagementServer.class, Float.class, "zone.secstorage.capacity.notificationthreshold", "0.75", "Percentage (as a value between 0 and 1) of secondary storage utilization above which alerts will be sent about low storage available.", null), @@ -63,8 +63,8 @@ public enum Config { LocalStorageCapacityThreshold("Alert", ManagementServer.class, Float.class, "cluster.localStorage.capacity.notificationthreshold", "0.75", "Percentage (as a value between 0 and 1) of local storage utilization above which alerts will be sent about low local storage available.", null), StorageAllocatedCapacityDisableThreshold("Alert", ManagementServer.class, Float.class, "pool.storage.allocated.capacity.disablethreshold", "0.85", "Percentage (as a value between 0 and 1) of allocated storage utilization above which allocators will disable using the pool for low allocated storage available.", null), StorageCapacityDisableThreshold("Alert", ManagementServer.class, Float.class, "pool.storage.capacity.disablethreshold", "0.85", "Percentage (as a value between 0 and 1) of storage utilization above which allocators will disable using the pool for low storage available.", null), - CPUCapacityDisableThreshold("Alert", ManagementServer.class, Float.class, "cluster.cpu.allocated.capacity.disablethreshold", "0.85", "Percentage (as a value between 0 and 1) of cpu utilization above which allocators will disable using the cluster for low cpu available. Keep the corresponding notification threshold lower than this to be notified beforehand.", null), - MemoryCapacityDisableThreshold("Alert", ManagementServer.class, Float.class, "cluster.memory.allocated.capacity.disablethreshold", "0.85", "Percentage (as a value between 0 and 1) of memory utilization above which allocators will disable using the cluster for low memory available. Keep the corresponding notification threshold lower than this to be notified beforehand.", null), + CPUCapacityDisableThreshold("Alert", ManagementServer.class, Float.class, "cluster.cpu.allocated.capacity.disablethreshold", "0.85", "Percentage (as a value between 0 and 1) of cpu utilization above which allocators will disable using the cluster for low cpu available. Keep the corresponding notification threshold lower than this to be notified beforehand.", null, ConfigurationParameterScope.cluster.toString()), + MemoryCapacityDisableThreshold("Alert", ManagementServer.class, Float.class, "cluster.memory.allocated.capacity.disablethreshold", "0.85", "Percentage (as a value between 0 and 1) of memory utilization above which allocators will disable using the cluster for low memory available. Keep the corresponding notification threshold lower than this to be notified beforehand.", null, ConfigurationParameterScope.cluster.toString()), // Storage @@ -93,8 +93,8 @@ public enum Config { GuestVlanBits("Network", ManagementServer.class, Integer.class, "guest.vlan.bits", "12", "The number of bits to reserve for the VLAN identifier in the guest subnet.", null), //MulticastThrottlingRate("Network", ManagementServer.class, Integer.class, "multicast.throttling.rate", "10", "Default multicast rate in megabits per second allowed.", null), - NetworkThrottlingRate("Network", ManagementServer.class, Integer.class, "network.throttling.rate", "200", "Default data transfer rate in megabits per second allowed in network.", null), - GuestDomainSuffix("Network", AgentManager.class, String.class, "guest.domain.suffix", "cloud.internal", "Default domain name for vms inside virtualized networks fronted by router", null), + NetworkThrottlingRate("Network", ManagementServer.class, Integer.class, "network.throttling.rate", "200", "Default data transfer rate in megabits per second allowed in network.", null, ConfigurationParameterScope.zone.toString()), + GuestDomainSuffix("Network", AgentManager.class, String.class, "guest.domain.suffix", "cloud.internal", "Default domain name for vms inside virtualized networks fronted by router", null, ConfigurationParameterScope.zone.toString()), DirectNetworkNoDefaultRoute("Network", ManagementServer.class, Boolean.class, "direct.network.no.default.route", "false", "Direct Network Dhcp Server should not send a default route", "true/false"), OvsTunnelNetwork("Network", ManagementServer.class, Boolean.class, "sdn.ovs.controller", "false", "Enable/Disable Open vSwitch SDN controller for L2-in-L3 overlay networks", null), OvsTunnelNetworkDefaultLabel("Network", ManagementServer.class, String.class, "sdn.ovs.controller.default.label", "cloud-public", "Default network label to be used when fetching interface for GRE endpoints", null), @@ -112,7 +112,7 @@ public enum Config { //VPN RemoteAccessVpnPskLength("Network", AgentManager.class, Integer.class, "remote.access.vpn.psk.length", "24", "The length of the ipsec preshared key (minimum 8, maximum 256)", null), - RemoteAccessVpnClientIpRange("Network", AgentManager.class, String.class, "remote.access.vpn.client.iprange", "10.1.2.1-10.1.2.8", "The range of ips to be allocated to remote access vpn clients. The first ip in the range is used by the VPN server", null), + RemoteAccessVpnClientIpRange("Network", AgentManager.class, String.class, "remote.access.vpn.client.iprange", "10.1.2.1-10.1.2.8", "The range of ips to be allocated to remote access vpn clients. The first ip in the range is used by the VPN server", null, ConfigurationParameterScope.account.toString()), RemoteAccessVpnUserLimit("Network", AgentManager.class, String.class, "remote.access.vpn.user.limit", "8", "The maximum number of VPN users that can be created per account", null), Site2SiteVpnConnectionPerVpnGatewayLimit("Network", ManagementServer.class, Integer.class, "site2site.vpn.vpngateway.connection.limit", "4", "The maximum number of VPN connection per VPN gateway", null), Site2SiteVpnSubnetsPerCustomerGatewayLimit("Network", ManagementServer.class, Integer.class, "site2site.vpn.customergateway.subnets.limit", "10", "The maximum number of subnets per customer gateway", null), @@ -149,7 +149,7 @@ public enum Config { S3Enable("Advanced", ManagementServer.class, Boolean.class, "s3.enable", "false", "enable s3 ", null), EventPurgeInterval("Advanced", ManagementServer.class, Integer.class, "event.purge.interval", "86400", "The interval (in seconds) to wait before running the event purge thread", null), AccountCleanupInterval("Advanced", ManagementServer.class, Integer.class, "account.cleanup.interval", "86400", "The interval (in seconds) between cleanup for removed accounts", null), - AllowPublicUserTemplates("Advanced", ManagementServer.class, Integer.class, "allow.public.user.templates", "true", "If false, users will not be able to create public templates.", null), + AllowPublicUserTemplates("Advanced", ManagementServer.class, Integer.class, "allow.public.user.templates", "true", "If false, users will not be able to create public templates.", null, ConfigurationParameterScope.account.toString()), InstanceName("Advanced", AgentManager.class, String.class, "instance.name", "VM", "Name of the deployment instance.", "instanceName"), ExpungeDelay("Advanced", UserVmManager.class, Integer.class, "expunge.delay", "86400", "Determines how long (in seconds) to wait before actually expunging destroyed vm. The default value = the default value of expunge.interval", null), ExpungeInterval("Advanced", UserVmManager.class, Integer.class, "expunge.interval", "86400", "The interval (in seconds) to wait before running the expunge thread.", null), @@ -419,7 +419,7 @@ public enum Config { global, zone, cluster, - pool, + storagepool, account } @@ -427,7 +427,7 @@ public enum Config { static { _scopeLevelConfigsMap.put(ConfigurationParameterScope.zone.toString(), new ArrayList()); _scopeLevelConfigsMap.put(ConfigurationParameterScope.cluster.toString(), new ArrayList()); - _scopeLevelConfigsMap.put(ConfigurationParameterScope.pool.toString(), new ArrayList()); + _scopeLevelConfigsMap.put(ConfigurationParameterScope.storagepool.toString(), new ArrayList()); _scopeLevelConfigsMap.put(ConfigurationParameterScope.account.toString(), new ArrayList()); _scopeLevelConfigsMap.put(ConfigurationParameterScope.global.toString(), new ArrayList()); diff --git a/server/src/com/cloud/configuration/ConfigurationManager.java b/server/src/com/cloud/configuration/ConfigurationManager.java index 738c5bab35d..bce1776af73 100755 --- a/server/src/com/cloud/configuration/ConfigurationManager.java +++ b/server/src/com/cloud/configuration/ConfigurationManager.java @@ -60,7 +60,7 @@ public interface ConfigurationManager extends ConfigurationService, Manager { * @param name * @param value */ - void updateConfiguration(long userId, String name, String category, String value, String scope, Long id); + String updateConfiguration(long userId, String name, String category, String value, String scope, Long id); /** * Creates a new service offering diff --git a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java index d5e405d5395..068a58634ed 100755 --- a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java +++ b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java @@ -39,7 +39,9 @@ import javax.naming.NamingException; import javax.naming.directory.DirContext; import javax.naming.directory.InitialDirContext; +import com.cloud.dc.*; import com.cloud.dc.dao.*; +import com.cloud.user.*; import org.apache.cloudstack.acl.SecurityChecker; import org.apache.cloudstack.api.ApiConstants.LDAPParams; import org.apache.cloudstack.api.command.admin.config.UpdateCfgCmd; @@ -64,6 +66,10 @@ import org.apache.cloudstack.api.command.admin.zone.CreateZoneCmd; import org.apache.cloudstack.api.command.admin.zone.DeleteZoneCmd; import org.apache.cloudstack.api.command.admin.zone.UpdateZoneCmd; import org.apache.cloudstack.api.command.user.network.ListNetworkOfferingsCmd; +import org.apache.cloudstack.storage.datastore.db.PrimaryDataStoreDao; +import org.apache.cloudstack.storage.datastore.db.StoragePoolDetailVO; +import org.apache.cloudstack.storage.datastore.db.StoragePoolDetailsDao; +import org.apache.cloudstack.storage.datastore.db.StoragePoolVO; import org.apache.log4j.Logger; import org.springframework.stereotype.Component; @@ -72,20 +78,8 @@ import com.cloud.api.ApiDBUtils; import com.cloud.capacity.dao.CapacityDao; import com.cloud.configuration.Resource.ResourceType; import com.cloud.configuration.dao.ConfigurationDao; -import com.cloud.dc.AccountVlanMapVO; -import com.cloud.dc.ClusterVO; -import com.cloud.dc.DataCenter; import com.cloud.dc.DataCenter.NetworkType; -import com.cloud.dc.DataCenterIpAddressVO; -import com.cloud.dc.DataCenterLinkLocalIpAddressVO; -import com.cloud.dc.DataCenterVO; -import com.cloud.dc.DcDetailVO; -import com.cloud.dc.HostPodVO; -import com.cloud.dc.Pod; -import com.cloud.dc.PodVlanMapVO; -import com.cloud.dc.Vlan; import com.cloud.dc.Vlan.VlanType; -import com.cloud.dc.VlanVO; import com.cloud.deploy.DataCenterDeployment; import com.cloud.domain.Domain; import com.cloud.domain.DomainVO; @@ -133,6 +127,7 @@ import com.cloud.org.Grouping; import com.cloud.org.Grouping.AllocationState; import com.cloud.projects.Project; import com.cloud.projects.ProjectManager; +import com.cloud.server.ConfigurationServer; import com.cloud.service.ServiceOfferingVO; import com.cloud.service.dao.ServiceOfferingDao; import com.cloud.storage.DiskOfferingVO; @@ -144,12 +139,6 @@ import com.cloud.storage.s3.S3Manager; import com.cloud.storage.secondary.SecondaryStorageVmManager; import com.cloud.storage.swift.SwiftManager; import com.cloud.test.IPRangeConfig; -import com.cloud.user.Account; -import com.cloud.user.AccountManager; -import com.cloud.user.AccountVO; -import com.cloud.user.ResourceLimitService; -import com.cloud.user.User; -import com.cloud.user.UserContext; import com.cloud.user.dao.AccountDao; import com.cloud.utils.NumbersUtil; import com.cloud.utils.StringUtils; @@ -182,8 +171,6 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati @Inject DataCenterDao _zoneDao; @Inject - DcDetailsDao _zoneDetailsDao; - @Inject DomainDao _domainDao; @Inject SwiftDao _swiftDao; @@ -245,6 +232,18 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati FirewallRulesDao _firewallDao; @Inject VpcManager _vpcMgr; + @Inject + ConfigurationServer _configServer; + @Inject + DcDetailsDao _dcDetailsDao; + @Inject + ClusterDetailsDao _clusterDetailsDao; + @Inject + StoragePoolDetailsDao _storagePoolDetailsDao; + @Inject + AccountDetailsDao _accountDetailsDao; + @Inject + PrimaryDataStoreDao _storagePoolDao; // FIXME - why don't we have interface for DataCenterLinkLocalIpAddressDao? @Inject protected DataCenterLinkLocalIpAddressDao _LinkLocalIpAllocDao; @@ -323,9 +322,9 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati @Override @DB - public void updateConfiguration(long userId, String name, String category, String value, String scope, Long resourceId) { + public String updateConfiguration(long userId, String name, String category, String value, String scope, Long resourceId) { - String validationMsg = validateConfigurationValue(name, value, scope); + String validationMsg = validateConfigurationValue(name, value); if (validationMsg != null) { s_logger.error("Invalid configuration option, name: " + name + ", value:" + value); @@ -335,23 +334,61 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati // If scope of the parameter is given then it needs to be updated in the corresponding details table, // if scope is mentioned as global or not mentioned then it is normal global parameter updation if (scope != null && !scope.isEmpty() && !Config.ConfigurationParameterScope.global.toString().equalsIgnoreCase(scope)) { - if (Config.ConfigurationParameterScope.zone.toString().equalsIgnoreCase(scope)) { - DataCenterVO zone = _zoneDao.findById(resourceId); - if (zone == null) { - throw new InvalidParameterValueException("unable to find zone by id " + resourceId); - } - DcDetailVO dcDetailVO = _zoneDetailsDao.findDetail(resourceId, name.toLowerCase()); - if (dcDetailVO == null) { - dcDetailVO = new DcDetailVO(zone.getId(), name, value); - _zoneDetailsDao.persist(dcDetailVO); - } else { - dcDetailVO.setValue(value); - _zoneDetailsDao.update(resourceId, dcDetailVO); - } - } else { - s_logger.error("TO Do for the remaining levels (cluster/pool/account)"); - throw new InvalidParameterValueException("The scope "+ scope +" yet to be implemented"); + switch (Config.ConfigurationParameterScope.valueOf(scope)) { + case zone: DataCenterVO zone = _zoneDao.findById(resourceId); + if (zone == null) { + throw new InvalidParameterValueException("unable to find zone by id " + resourceId); + } + DcDetailVO dcDetailVO = _dcDetailsDao.findDetail(resourceId, name.toLowerCase()); + if (dcDetailVO == null) { + dcDetailVO = new DcDetailVO(resourceId, name, value); + _dcDetailsDao.persist(dcDetailVO); + } else { + dcDetailVO.setValue(value); + _dcDetailsDao.update(dcDetailVO.getId(), dcDetailVO); + } break; + case cluster: ClusterVO cluster = _clusterDao.findById(resourceId); + if (cluster == null) { + throw new InvalidParameterValueException("unable to find cluster by id " + resourceId); + } + ClusterDetailsVO clusterDetailsVO = _clusterDetailsDao.findDetail(resourceId, name); + if (clusterDetailsVO == null) { + clusterDetailsVO = new ClusterDetailsVO(resourceId, name, value); + _clusterDetailsDao.persist(clusterDetailsVO); + } else { + clusterDetailsVO.setValue(value); + _clusterDetailsDao.update(clusterDetailsVO.getId(), clusterDetailsVO); + } break; + + case storagepool: StoragePoolVO pool = _storagePoolDao.findById(resourceId); + if (pool == null) { + throw new InvalidParameterValueException("unable to find storage pool by id " + resourceId); + } + StoragePoolDetailVO storagePoolDetailVO = _storagePoolDetailsDao.findDetail(resourceId, name); + if (storagePoolDetailVO == null) { + storagePoolDetailVO = new StoragePoolDetailVO(resourceId, name, value); + _storagePoolDetailsDao.persist(storagePoolDetailVO); + + } else { + storagePoolDetailVO.setValue(value); + _storagePoolDetailsDao.update(storagePoolDetailVO.getId(), storagePoolDetailVO); + } break; + + case account: AccountVO account = _accountDao.findById(resourceId); + if (account == null) { + throw new InvalidParameterValueException("unable to find account by id " + resourceId); + } + AccountDetailVO accountDetailVO = _accountDetailsDao.findDetail(resourceId, name); + if (accountDetailVO == null) { + accountDetailVO = new AccountDetailVO(resourceId, name, value); + _accountDetailsDao.persist(accountDetailVO); + } else { + accountDetailVO.setValue(value); + _accountDetailsDao.update(accountDetailVO.getId(), accountDetailVO); + } break; + default: throw new InvalidParameterValueException("Scope provided is invalid"); } + return value; } // Execute all updates in a single transaction @@ -450,16 +487,19 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati } txn.commit(); + return _configDao.getValue(name); } @Override @ActionEvent(eventType = EventTypes.EVENT_CONFIGURATION_VALUE_EDIT, eventDescription = "updating configuration") - public Configuration updateConfiguration(UpdateCfgCmd cmd) { + public Configuration updateConfiguration(UpdateCfgCmd cmd) throws InvalidParameterValueException { Long userId = UserContext.current().getCallerUserId(); String name = cmd.getCfgName(); String value = cmd.getValue(); - String scope = cmd.getScope(); - Long id = cmd.getId(); + Long zoneId = cmd.getZoneId(); + Long clusterId = cmd.getClusterId(); + Long storagepoolId = cmd.getStoragepoolId(); + Long accountId = cmd.getAccountId(); UserContext.current().setEventDetails(" Name: " + name + " New Value: " + (((name.toLowerCase()).contains("password")) ? "*****" : (((value == null) ? "" : value)))); // check if config value exists @@ -476,17 +516,44 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati value = null; } - updateConfiguration(userId, name, config.getCategory(), value, scope, id); - String updatedValue = _configDao.getValue(name); + String scope = null; + Long id = null; + int paramCountCheck = 0; + + if (zoneId != null) { + scope = Config.ConfigurationParameterScope.zone.toString(); + id = zoneId; + paramCountCheck++; + } + if (clusterId != null) { + scope = Config.ConfigurationParameterScope.cluster.toString(); + id = clusterId; + paramCountCheck++; + } + if (accountId != null) { + scope = Config.ConfigurationParameterScope.account.toString(); + id = accountId; + paramCountCheck++; + } + if (storagepoolId != null) { + scope = Config.ConfigurationParameterScope.storagepool.toString(); + id = storagepoolId; + paramCountCheck++; + } + + if (paramCountCheck > 1) { + throw new InvalidParameterValueException("cannot handle multiple IDs, provide only one ID corresponding to the scope"); + } + + String updatedValue = updateConfiguration(userId, name, config.getCategory(), value, scope, id); if ((value == null && updatedValue == null) || updatedValue.equalsIgnoreCase(value)) { return _configDao.findByName(name); - } else { throw new CloudRuntimeException("Unable to update configuration parameter " + name); } } - private String validateConfigurationValue(String name, String value, String scope) { + private String validateConfigurationValue(String name, String value) { Config c = Config.getConfig(name); if (c == null) { @@ -494,12 +561,6 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati return "Invalid configuration variable."; } String configScope = c.getScope(); - if (scope != null && !scope.isEmpty()) { - if (!configScope.contains(scope)) { - s_logger.error("Invalid scope " + scope + " for the parameter " + name); - return "Invalid scope for the parameter."; - } - } Class type = c.getType(); @@ -4077,7 +4138,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati } @Override - public Integer getNetworkOfferingNetworkRate(long networkOfferingId) { + public Integer getNetworkOfferingNetworkRate(long networkOfferingId, Long dataCenterId) { // validate network offering information NetworkOffering no = getNetworkOffering(networkOfferingId); @@ -4089,7 +4150,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati if (no.getRateMbps() != null) { networkRate = no.getRateMbps(); } else { - networkRate = Integer.parseInt(_configDao.getValue(Config.NetworkThrottlingRate.key())); + networkRate = Integer.parseInt(_configServer.getConfigValue(Config.NetworkThrottlingRate.key(), Config.ConfigurationParameterScope.zone.toString(), dataCenterId)); } // networkRate is unsigned int in netowrkOfferings table, and can't be @@ -4225,7 +4286,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati } @Override - public Integer getServiceOfferingNetworkRate(long serviceOfferingId) { + public Integer getServiceOfferingNetworkRate(long serviceOfferingId, Long dataCenterId) { // validate network offering information ServiceOffering offering = _serviceOfferingDao.findById(serviceOfferingId); @@ -4239,7 +4300,7 @@ public class ConfigurationManagerImpl extends ManagerBase implements Configurati } else { // for domain router service offering, get network rate from if (offering.getSystemVmType() != null && offering.getSystemVmType().equalsIgnoreCase(VirtualMachine.Type.DomainRouter.toString())) { - networkRate = Integer.parseInt(_configDao.getValue(Config.NetworkThrottlingRate.key())); + networkRate = Integer.parseInt(_configServer.getConfigValue(Config.NetworkThrottlingRate.key(), Config.ConfigurationParameterScope.zone.toString(), dataCenterId)); } else { networkRate = Integer.parseInt(_configDao.getValue(Config.VmNetworkThrottlingRate.key())); } diff --git a/server/src/com/cloud/deploy/FirstFitPlanner.java b/server/src/com/cloud/deploy/FirstFitPlanner.java index 1647cf7dba9..2e7e9f6128f 100755 --- a/server/src/com/cloud/deploy/FirstFitPlanner.java +++ b/server/src/com/cloud/deploy/FirstFitPlanner.java @@ -452,21 +452,6 @@ public class FirstFitPlanner extends PlannerBase implements DeploymentPlanner { return disabledPods; } - private Map getCapacityThresholdMap(){ - // Lets build this real time so that the admin wont have to restart MS if he changes these values - Map disableThresholdMap = new HashMap(); - - String cpuDisableThresholdString = _configDao.getValue(Config.CPUCapacityDisableThreshold.key()); - float cpuDisableThreshold = NumbersUtil.parseFloat(cpuDisableThresholdString, 0.85F); - disableThresholdMap.put(Capacity.CAPACITY_TYPE_CPU, cpuDisableThreshold); - - String memoryDisableThresholdString = _configDao.getValue(Config.MemoryCapacityDisableThreshold.key()); - float memoryDisableThreshold = NumbersUtil.parseFloat(memoryDisableThresholdString, 0.85F); - disableThresholdMap.put(Capacity.CAPACITY_TYPE_MEMORY, memoryDisableThreshold); - - return disableThresholdMap; - } - private List getCapacitiesForCheckingThreshold(){ List capacityList = new ArrayList(); capacityList.add(Capacity.CAPACITY_TYPE_CPU); @@ -476,7 +461,6 @@ public class FirstFitPlanner extends PlannerBase implements DeploymentPlanner { private void removeClustersCrossingThreshold(List clusterListForVmAllocation, ExcludeList avoid, VirtualMachineProfile vmProfile, DeploymentPlan plan){ - Map capacityThresholdMap = getCapacityThresholdMap(); List capacityList = getCapacitiesForCheckingThreshold(); List clustersCrossingThreshold = new ArrayList(); @@ -491,12 +475,11 @@ public class FirstFitPlanner extends PlannerBase implements DeploymentPlanner { return; } if (capacity == Capacity.CAPACITY_TYPE_CPU) { - clustersCrossingThreshold = _capacityDao.listClustersCrossingThreshold(capacity, plan.getDataCenterId(), - capacityThresholdMap.get(capacity), cpu_requested); + clustersCrossingThreshold = _capacityDao.listClustersCrossingThreshold(capacity, plan.getDataCenterId(), Config.CPUCapacityDisableThreshold.key(), cpu_requested); } else if (capacity == Capacity.CAPACITY_TYPE_MEMORY ) { clustersCrossingThreshold = _capacityDao.listClustersCrossingThreshold(capacity, plan.getDataCenterId(), - capacityThresholdMap.get(capacity), ram_requested ); + Config.MemoryCapacityDisableThreshold.key(), ram_requested ); } @@ -506,8 +489,8 @@ public class FirstFitPlanner extends PlannerBase implements DeploymentPlanner { // Remove clusters crossing disabled threshold clusterListForVmAllocation.removeAll(clustersCrossingThreshold); - s_logger.debug("Cannot allocate cluster list " + clustersCrossingThreshold.toString() + " for vm creation since their allocated percentage" + - " crosses the disable capacity threshold: " + capacityThresholdMap.get(capacity) + " for capacity Type : " + capacity + ", skipping these clusters"); + s_logger.debug("Cannot allocate cluster list " + clustersCrossingThreshold.toString() + " for vm creation since their allocated percentage" + + " crosses the disable capacity threshold defined at each cluster/ at global value for capacity Type : " + capacity + ", skipping these clusters"); } } diff --git a/server/src/com/cloud/network/NetworkManagerImpl.java b/server/src/com/cloud/network/NetworkManagerImpl.java index 72ccac0ec7d..7adcf07f044 100755 --- a/server/src/com/cloud/network/NetworkManagerImpl.java +++ b/server/src/com/cloud/network/NetworkManagerImpl.java @@ -46,6 +46,7 @@ import com.cloud.host.Host; import com.cloud.host.HostVO; import com.cloud.host.Status; import com.cloud.host.dao.HostDao; +import com.cloud.server.ConfigurationServer; import com.cloud.hypervisor.Hypervisor.HypervisorType; import com.cloud.network.IpAddress.State; import com.cloud.network.Network.*; @@ -153,6 +154,8 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L RemoteAccessVpnService _vpnMgr; @Inject PodVlanMapDao _podVlanMapDao; + @Inject + ConfigurationServer _configServer; List _networkGurus; public List getNetworkGurus() { @@ -245,7 +248,6 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L int _networkGcWait; int _networkGcInterval; - String _networkDomain; int _networkLockTimeout; private Map _configs; @@ -866,7 +868,6 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L _networkGcInterval = NumbersUtil.parseInt(_configs.get(Config.NetworkGcInterval.key()), 600); _configs = _configDao.getConfiguration("Network", params); - _networkDomain = _configs.get(Config.GuestDomainSuffix.key()); _networkLockTimeout = NumbersUtil.parseInt(_configs.get(Config.NetworkLockTimeout.key()), 600); @@ -2023,7 +2024,7 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L // 2) If null, generate networkDomain using domain suffix from the global config variables if (networkDomain == null) { - networkDomain = "cs" + Long.toHexString(owner.getId()) + _networkDomain; + networkDomain = "cs" + Long.toHexString(owner.getId()) + _configServer.getConfigValue(Config.GuestDomainSuffix.key(), Config.ConfigurationParameterScope.zone.toString(), zoneId); } } else { diff --git a/server/src/com/cloud/network/NetworkModelImpl.java b/server/src/com/cloud/network/NetworkModelImpl.java index c5930d9315c..bd62886674f 100755 --- a/server/src/com/cloud/network/NetworkModelImpl.java +++ b/server/src/com/cloud/network/NetworkModelImpl.java @@ -52,6 +52,7 @@ import com.cloud.exception.InvalidParameterValueException; import com.cloud.exception.PermissionDeniedException; import com.cloud.exception.UnsupportedServiceException; import com.cloud.hypervisor.Hypervisor.HypervisorType; +import com.cloud.server.ConfigurationServer; import com.cloud.network.IpAddress.State; import com.cloud.network.Network.Capability; import com.cloud.network.Network.GuestType; @@ -143,6 +144,8 @@ public class NetworkModelImpl extends ManagerBase implements NetworkModel { @Inject PodVlanMapDao _podVlanMapDao; + @Inject + ConfigurationServer _configServer; List _networkElements; public List getNetworkElements() { @@ -921,9 +924,9 @@ public class NetworkModelImpl extends ManagerBase implements NetworkModel { } } if (isUserVmsDefaultNetwork || isDomRGuestOrPublicNetwork) { - return _configMgr.getServiceOfferingNetworkRate(vm.getServiceOfferingId()); + return _configMgr.getServiceOfferingNetworkRate(vm.getServiceOfferingId(), vm.getDataCenterId()); } else { - return _configMgr.getNetworkOfferingNetworkRate(ntwkOff.getId()); + return _configMgr.getNetworkOfferingNetworkRate(ntwkOff.getId(), vm.getDataCenterId()); } } @@ -1564,8 +1567,8 @@ public class NetworkModelImpl extends ManagerBase implements NetworkModel { } @Override - public String getDefaultNetworkDomain() { - return _networkDomain; + public String getDefaultNetworkDomain(long zoneId) { + return _configServer.getConfigValue(Config.GuestDomainSuffix.key(), Config.ConfigurationParameterScope.zone.toString(), zoneId); } @Override diff --git a/server/src/com/cloud/network/vpc/VpcManagerImpl.java b/server/src/com/cloud/network/vpc/VpcManagerImpl.java index 224a6800326..bc7bb0c75f2 100644 --- a/server/src/com/cloud/network/vpc/VpcManagerImpl.java +++ b/server/src/com/cloud/network/vpc/VpcManagerImpl.java @@ -582,7 +582,7 @@ public class VpcManagerImpl extends ManagerBase implements VpcManager, VpcProvis // 2) If null, generate networkDomain using domain suffix from the global config variables if (networkDomain == null) { - networkDomain = "cs" + Long.toHexString(owner.getId()) + _ntwkModel.getDefaultNetworkDomain(); + networkDomain = "cs" + Long.toHexString(owner.getId()) + _ntwkModel.getDefaultNetworkDomain(zoneId); } } diff --git a/server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java b/server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java index 673535aaa42..062743b23af 100755 --- a/server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java +++ b/server/src/com/cloud/network/vpn/RemoteAccessVpnManagerImpl.java @@ -62,6 +62,7 @@ import com.cloud.network.rules.FirewallRule.Purpose; import com.cloud.network.rules.FirewallRuleVO; import com.cloud.network.rules.RulesManager; import com.cloud.projects.Project.ListProjectResourcesCriteria; +import com.cloud.server.ConfigurationServer; import com.cloud.user.Account; import com.cloud.user.AccountManager; import com.cloud.user.DomainManager; @@ -100,6 +101,7 @@ public class RemoteAccessVpnManagerImpl extends ManagerBase implements RemoteAcc @Inject UsageEventDao _usageEventDao; @Inject ConfigurationDao _configDao; @Inject List _vpnServiceProviders; + @Inject ConfigurationServer _configServer; int _userLimit; @@ -156,7 +158,7 @@ public class RemoteAccessVpnManagerImpl extends ManagerBase implements RemoteAcc } if (ipRange == null) { - ipRange = _clientIpRange; + ipRange = _configServer.getConfigValue(Config.RemoteAccessVpnClientIpRange.key(), Config.ConfigurationParameterScope.account.toString(), ipAddr.getAccountId()); } String[] range = ipRange.split("-"); if (range.length != 2) { @@ -200,7 +202,7 @@ public class RemoteAccessVpnManagerImpl extends ManagerBase implements RemoteAcc private void validateRemoteAccessVpnConfiguration() throws ConfigurationException { String ipRange = _clientIpRange; if (ipRange == null) { - s_logger.warn("Remote Access VPN configuration missing client ip range -- ignoring"); + s_logger.warn("Remote Access VPN global configuration missing client ip range -- ignoring"); return; } Integer pskLength = _pskLength; diff --git a/server/src/com/cloud/server/ConfigurationServerImpl.java b/server/src/com/cloud/server/ConfigurationServerImpl.java index cd890ce8582..3d97447fe40 100755 --- a/server/src/com/cloud/server/ConfigurationServerImpl.java +++ b/server/src/com/cloud/server/ConfigurationServerImpl.java @@ -48,8 +48,10 @@ import com.cloud.dc.*; import com.cloud.dc.dao.DcDetailsDao; import com.cloud.user.*; import com.cloud.utils.db.GenericDao; +import org.apache.cloudstack.storage.datastore.db.PrimaryDataStoreDao; import org.apache.cloudstack.storage.datastore.db.StoragePoolDetailVO; import org.apache.cloudstack.storage.datastore.db.StoragePoolDetailsDao; +import org.apache.cloudstack.storage.datastore.db.StoragePoolVO; import org.apache.commons.codec.binary.Base64; import org.apache.log4j.Logger; import org.springframework.stereotype.Component; @@ -59,6 +61,7 @@ import com.cloud.configuration.Resource.ResourceType; import com.cloud.configuration.dao.ConfigurationDao; import com.cloud.configuration.dao.ResourceCountDao; import com.cloud.dc.DataCenter.NetworkType; +import com.cloud.dc.dao.ClusterDao; import com.cloud.dc.dao.DataCenterDao; import com.cloud.dc.dao.HostPodDao; import com.cloud.dc.dao.VlanDao; @@ -112,6 +115,8 @@ public class ConfigurationServerImpl extends ManagerBase implements Configuratio @Inject private ConfigurationDao _configDao; @Inject private DataCenterDao _zoneDao; + @Inject private ClusterDao _clusterDao; + @Inject private PrimaryDataStoreDao _storagePoolDao; @Inject private HostPodDao _podDao; @Inject private DiskOfferingDao _diskOfferingDao; @Inject private ServiceOfferingDao _serviceOfferingDao; @@ -698,7 +703,7 @@ public class ConfigurationServerImpl extends ManagerBase implements Configuratio return dcDetailVO.getValue(); } break; - case cluster: ClusterDetailsVO cluster = _clusterDetailsDao.findById(resourceId); + case cluster: ClusterVO cluster = _clusterDao.findById(resourceId); if (cluster == null) { throw new InvalidParameterValueException("unable to find cluster by id " + resourceId); } @@ -707,7 +712,7 @@ public class ConfigurationServerImpl extends ManagerBase implements Configuratio return clusterDetailsVO.getValue(); } break; - case pool: StoragePoolDetailVO pool = _storagePoolDetailsDao.findById(resourceId); + case storagepool: StoragePoolVO pool = _storagePoolDao.findById(resourceId); if (pool == null) { throw new InvalidParameterValueException("unable to find storage pool by id " + resourceId); } @@ -716,7 +721,7 @@ public class ConfigurationServerImpl extends ManagerBase implements Configuratio return storagePoolDetailVO.getValue(); } break; - case account: AccountDetailVO account = _accountDetailsDao.findById(resourceId); + case account: AccountVO account = _accountDao.findById(resourceId); if (account == null) { throw new InvalidParameterValueException("unable to find account by id " + resourceId); } diff --git a/server/src/com/cloud/server/ManagementServerImpl.java b/server/src/com/cloud/server/ManagementServerImpl.java index 1799f7729e0..f18c9d592aa 100755 --- a/server/src/com/cloud/server/ManagementServerImpl.java +++ b/server/src/com/cloud/server/ManagementServerImpl.java @@ -1274,16 +1274,41 @@ public class ManagementServerImpl extends ManagerBase implements ManagementServe Object name = cmd.getConfigName(); Object category = cmd.getCategory(); Object keyword = cmd.getKeyword(); - Long id = cmd.getId(); - String scope = cmd.getScope(); + Long zoneId = cmd.getZoneId(); + Long clusterId = cmd.getClusterId(); + Long storagepoolId = cmd.getStoragepoolId(); + Long accountId = cmd.getAccountId(); + String scope = null; + Long id = null; + int paramCountCheck = 0; - if (scope!= null && !scope.isEmpty()) { + if (zoneId != null) { + scope = Config.ConfigurationParameterScope.zone.toString(); + id = zoneId; + paramCountCheck++; + } + if (clusterId != null) { + scope = Config.ConfigurationParameterScope.cluster.toString(); + id = clusterId; + paramCountCheck++; + } + if (accountId != null) { + scope = Config.ConfigurationParameterScope.account.toString(); + id = accountId; + paramCountCheck++; + } + if (storagepoolId != null) { + scope = Config.ConfigurationParameterScope.storagepool.toString(); + id = storagepoolId; + paramCountCheck++; + } + + if (paramCountCheck > 1) { + throw new InvalidParameterValueException("cannot handle multiple IDs, provide only one ID corresponding to the scope"); + } + + if (scope != null && !scope.isEmpty()) { // getting the list of parameters at requested scope - try { - Config.ConfigurationParameterScope.valueOf(scope.toLowerCase()); - } catch (Exception e ) { - throw new InvalidParameterValueException("Invalid scope " + scope + " while listing configuration parameters"); - } if (id == null) { throw new InvalidParameterValueException("Invalid id null, id is needed corresponding to the scope"); } diff --git a/server/src/com/cloud/storage/dao/StoragePoolDetailsDaoImpl.java b/server/src/com/cloud/storage/dao/StoragePoolDetailsDaoImpl.java index a0d5d0e6e97..38b525330f2 100644 --- a/server/src/com/cloud/storage/dao/StoragePoolDetailsDaoImpl.java +++ b/server/src/com/cloud/storage/dao/StoragePoolDetailsDaoImpl.java @@ -41,6 +41,7 @@ public class StoragePoolDetailsDaoImpl extends GenericDaoBase Date: Sat, 27 Apr 2013 13:21:36 +0530 Subject: [PATCH 457/607] Add VPN users automation tests Signed-off-by: Prasanna Santhanam --- test/integration/component/test_vpn_users.py | 447 +++++++++++++++++++ 1 file changed, 447 insertions(+) create mode 100644 test/integration/component/test_vpn_users.py diff --git a/test/integration/component/test_vpn_users.py b/test/integration/component/test_vpn_users.py new file mode 100644 index 00000000000..e18c5384707 --- /dev/null +++ b/test/integration/component/test_vpn_users.py @@ -0,0 +1,447 @@ +# 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. + +""" P1 tests for VPN users +""" +# Import Local Modules +from nose.plugins.attrib import attr +from marvin.cloudstackTestCase import cloudstackTestCase +from marvin.integration.lib.base import ( + Account, + ServiceOffering, + VirtualMachine, + PublicIPAddress, + Vpn, + VpnUser, + Configurations, + NATRule + ) +from marvin.integration.lib.common import (get_domain, + get_zone, + get_template, + cleanup_resources, + ) + + +class Services: + """Test VPN users Services + """ + + def __init__(self): + self.services = { + "account": { + "email": "test@test.com", + "firstname": "Test", + "lastname": "User", + "username": "test", + # Random characters are appended for unique + # username + "password": "password", + }, + "service_offering": { + "name": "Tiny Instance", + "displaytext": "Tiny Instance", + "cpunumber": 1, + "cpuspeed": 100, # in MHz + "memory": 128, # In MBs + }, + "disk_offering": { + "displaytext": "Small Disk Offering", + "name": "Small Disk Offering", + "disksize": 1 + }, + "virtual_machine": { + "displayname": "TestVM", + "username": "root", + "password": "password", + "ssh_port": 22, + "hypervisor": 'KVM', + "privateport": 22, + "publicport": 22, + "protocol": 'TCP', + }, + "vpn_user": { + "username": "test", + "password": "test", + }, + "natrule": { + "privateport": 1701, + "publicport": 1701, + "protocol": "UDP" + }, + "ostype": 'CentOS 5.5 (64-bit)', + "sleep": 60, + "timeout": 10, + # Networking mode: Advanced, Basic + } + + +class TestVPNUsers(cloudstackTestCase): + + @classmethod + def setUpClass(cls): + cls.api_client = super(TestVPNUsers, + cls).getClsTestClient().getApiClient() + cls.services = Services().services + # Get Zone, Domain and templates + cls.domain = get_domain(cls.api_client, cls.services) + cls.zone = get_zone(cls.api_client, cls.services) + cls.services["mode"] = cls.zone.networktype + + cls.template = get_template( + cls.api_client, + cls.zone.id, + cls.services["ostype"] + ) + + cls.services["virtual_machine"]["zoneid"] = cls.zone.id + cls.service_offering = ServiceOffering.create( + cls.api_client, + cls.services["service_offering"] + ) + + cls._cleanup = [cls.service_offering, ] + return + + @classmethod + def tearDownClass(cls): + try: + # Cleanup resources used + cleanup_resources(cls.api_client, cls._cleanup) + except Exception as e: + raise Exception("Warning: Exception during cleanup : %s" % e) + return + + def setUp(self): + self.apiclient = self.testClient.getApiClient() + self.dbclient = self.testClient.getDbConnection() + self.account = Account.create( + self.apiclient, + self.services["account"], + domainid=self.domain.id + ) + self.virtual_machine = VirtualMachine.create( + self.apiclient, + self.services["virtual_machine"], + templateid=self.template.id, + accountid=self.account.account.name, + domainid=self.account.account.domainid, + serviceofferingid=self.service_offering.id + ) + self.public_ip = PublicIPAddress.create( + self.apiclient, + self.virtual_machine.account, + self.virtual_machine.zoneid, + self.virtual_machine.domainid, + self.services["virtual_machine"] + ) + self.cleanup = [ + self.account, + ] + return + + def tearDown(self): + try: + # Clean up, terminate the created instance, volumes and snapshots + cleanup_resources(self.apiclient, self.cleanup) + except Exception as e: + raise Exception("Warning: Exception during cleanup : %s" % e) + return + + def create_VPN(self, public_ip): + """Creates VPN for the network""" + + self.debug("Creating VPN with public IP: %s" % public_ip.ipaddress.id) + try: + # Assign VPN to Public IP + vpn = Vpn.create(self.apiclient, + self.public_ip.ipaddress.id, + account=self.account.account.name, + domainid=self.account.account.domainid) + + self.debug("Verifying the remote VPN access") + vpns = Vpn.list(self.apiclient, + publicipid=public_ip.ipaddress.id, + listall=True) + self.assertEqual( + isinstance(vpns, list), + True, + "List VPNs shall return a valid response" + ) + return vpn + except Exception as e: + self.fail("Failed to create remote VPN access: %s" % e) + + def create_VPN_Users(self, rand_name=True, api_client=None): + """Creates VPN users for the network""" + + self.debug("Creating VPN users for account: %s" % + self.account.account.name) + if api_client is None: + api_client = self.apiclient + try: + vpnuser = VpnUser.create( + api_client, + self.services["vpn_user"]["username"], + self.services["vpn_user"]["password"], + account=self.account.account.name, + domainid=self.account.account.domainid, + rand_name=rand_name + ) + + self.debug("Verifying the remote VPN access") + vpn_users = VpnUser.list(self.apiclient, + id=vpnuser.id, + listall=True) + self.assertEqual( + isinstance(vpn_users, list), + True, + "List VPNs shall return a valid response" + ) + return vpnuser + except Exception as e: + self.fail("Failed to create remote VPN users: %s" % e) + + @attr(tags=["advanced", "advancedns"]) + @attr(configuration='remote.access.vpn.user.limit') + def test_01_VPN_user_limit(self): + """VPN remote access user limit tests""" + + # Validate the following + # prerequisite: change management configuration setting of + # remote.access.vpn.user.limit + # 1. provision more users than is set in the limit + # Provisioning of users after the limit should failProvisioning of + # users after the limit should fail + + self.debug("Fetching the limit for remote access VPN users") + configs = Configurations.list( + self.apiclient, + name='remote.access.vpn.user.limit', + listall=True) + self.assertEqual(isinstance(configs, list), + True, + "List configs should return a valid response") + + limit = int(configs[0].value) + + self.debug("Enabling the VPN access for IP: %s" % + self.public_ip.ipaddress.ipaddress) + + self.create_VPN(self.public_ip) + self.debug("Creating %s VPN users" % limit) + for x in range(limit): + self.create_VPN_Users() + + self.debug("Adding another user exceeding limit for remote VPN users") + with self.assertRaises(Exception): + self.create_VPN_Users() + self.debug("Limit exceeded exception raised!") + return + + @attr(tags=["advanced", "advancedns"]) + def test_02_use_vpn_port(self): + """Test create VPN when L2TP port in use""" + + # Validate the following + # 1. set a port forward for UDP: 1701 and enable VPN + # 2. set port forward rule for the udp port 1701 over which L2TP works + # 3. port forward should prevent VPN from being enabled + + self.debug("Creating a port forwarding rule on port 1701") + # Create NAT rule + nat_rule = NATRule.create( + self.apiclient, + self.virtual_machine, + self.services["natrule"], + self.public_ip.ipaddress.id) + + self.debug("Verifying the NAT rule created") + nat_rules = NATRule.list(self.apiclient, id=nat_rule.id, listall=True) + + self.assertEqual(isinstance(nat_rules, list), + True, + "List NAT rules should return a valid response") + + self.debug("Enabling the VPN connection for IP: %s" % + self.public_ip.ipaddress.ipaddress) + with self.assertRaises(Exception): + self.create_VPN(self.public_ip) + self.debug("Create VPN connection failed! Test successful!") + return + + @attr(tags=["advanced", "advancedns"]) + def test_03_enable_vpn_use_port(self): + """Test create NAT rule when VPN when L2TP enabled""" + + # Validate the following + # 1. Enable a VPN connection on source NAT + # 2. Add a VPN user + # 3. add a port forward rule for UDP port 1701. Should result in error + # saying that VPN is enabled over port 1701 + + self.debug("Enabling the VPN connection for IP: %s" % + self.public_ip.ipaddress.ipaddress) + self.create_VPN(self.public_ip) + + self.debug("Creating a port forwarding rule on port 1701") + # Create NAT rule + with self.assertRaises(Exception): + NATRule.create( + self.apiclient, + self.virtual_machine, + self.services["natrule"], + self.public_ip.ipaddress.id) + + self.debug("Create NAT rule failed! Test successful!") + return + + @attr(tags=["advanced", "advancedns"]) + def test_04_add_new_users(self): + """Test add new users to existing VPN""" + + # Validate the following + # 1. Enable a VPN connection on source NAT + # 2. Add new user to VPN when there are already existing users. + # 3. We should be able to successfully establish a VPN connection using + # the newly added user credential. + + self.debug("Enabling the VPN connection for IP: %s" % + self.public_ip.ipaddress.ipaddress) + self.create_VPN(self.public_ip) + + try: + self.debug("Adding new VPN user to account: %s" % + self.account.account.name) + self.create_VPN_Users() + + # TODO: Verify the VPN connection + self.debug("Adding another user to account") + self.create_VPN_Users() + + # TODO: Verify the VPN connection with new user + except Exception as e: + self.fail("Failed to create new VPN user: %s" % e) + return + + @attr(tags=["advanced", "advancedns"]) + def test_05_add_duplicate_user(self): + """Test add duplicate user to existing VPN""" + + # Validate the following + # 1. Enable a VPN connection on source NAT + # 2. Add a VPN user say "abc" that already an added user to the VPN. + # 3. Adding this VPN user should fail. + + self.debug("Enabling the VPN connection for IP: %s" % + self.public_ip.ipaddress.ipaddress) + self.create_VPN(self.public_ip) + + self.debug("Adding new VPN user to account: %s" % + self.account.account.name) + self.create_VPN_Users(rand_name=False) + + # TODO: Verify the VPN connection + self.debug("Adding another user to account with same username") + with self.assertRaises(Exception): + self.create_VPN_Users(rand_name=False) + return + + @attr(tags=["advanced", "advancedns"]) + def test_06_add_VPN_user_global_admin(self): + """Test as global admin, add a new VPN user to an existing VPN entry + that was created by another account.""" + + # Steps for verification + # 1. Create a new user and deploy few Vms. + # 2. Enable VPN access. Add few VPN users. + # 3. Make sure that VPN access works as expected. + # 4. As global Admin , add VPN user to this user's existing VPN entry. + # Validate the following + # 1. The newly added VPN user should get configured to the router of + # user account. + # 2. We should be able to use this newly created user credential to + # establish VPN connection that will give access all VMs of this user + + self.debug("Enabling VPN connection to account: %s" % + self.account.account.name) + self.create_VPN(self.public_ip) + self.debug("Creating VPN user for the account: %s" % + self.account.account.name) + self.create_VPN_Users() + + self.debug("Creating a global admin account") + admin = Account.create(self.apiclient, + self.services["account"], + admin=True, + domainid=self.account.account.domainid) + self.cleanup.append(admin) + self.debug("Creating API client for newly created user") + api_client = self.testClient.createUserApiClient( + UserName=self.account.account.name, + DomainName=self.account.account.domain) + + self.debug("Adding new user to VPN as a global admin: %s" % + admin.account.name) + try: + self.create_VPN_Users(api_client=api_client) + except Exception as e: + self.fail("Global admin should be allowed to create VPN user: %s" % + e) + return + + @attr(tags=["advanced", "advancedns"]) + def test_07_add_VPN_user_domain_admin(self): + """Test as domain admin, add a new VPN user to an existing VPN entry + that was created by another account.""" + + # Steps for verification + # 1. Create a new user and deploy few Vms. + # 2. Enable VPN access. Add few VPN users. + # 3. Make sure that VPN access works as expected. + # 4. As domain Admin , add VPN user to this user's existing VPN entry. + # Validate the following + # 1. The newly added VPN user should get configured to the router of + # user account. + # 2. We should be able to use this newly created user credential to + # establish VPN connection that will give access all VMs of this user + + self.debug("Enabling VPN connection to account: %s" % + self.account.account.name) + self.create_VPN(self.public_ip) + self.debug("Creating VPN user for the account: %s" % + self.account.account.name) + self.create_VPN_Users() + + self.debug("Creating a domain admin account") + admin = Account.create(self.apiclient, + self.services["account"], + domainid=self.account.account.domainid) + self.cleanup.append(admin) + self.debug("Creating API client for newly created user") + api_client = self.testClient.createUserApiClient( + UserName=self.account.account.name, + DomainName=self.account.account.domain) + + self.debug("Adding new user to VPN as a domain admin: %s" % + admin.account.name) + try: + self.create_VPN_Users(api_client=api_client) + except Exception as e: + self.fail("Domain admin should be allowed to create VPN user: %s" % + e) + return From 509cfa98567f3d64b6da8bcb50c3d18e6d2bc122 Mon Sep 17 00:00:00 2001 From: Milamber Date: Mon, 29 Apr 2013 11:00:48 +0100 Subject: [PATCH 458/607] CLOUDSTACK-2138 - add a sync-transifex-ui.sh script to automate the exchange between CloudStack L10N resource files and Transifex CS-UI resource files Signed-off-by: Milamber --- tools/transifex/.tx/config | 19 ++++ tools/transifex/README-transifex.txt | 65 +++++++++++ tools/transifex/sync-transifex-ui.sh | 158 +++++++++++++++++++++++++++ 3 files changed, 242 insertions(+) create mode 100644 tools/transifex/.tx/config create mode 100644 tools/transifex/README-transifex.txt create mode 100755 tools/transifex/sync-transifex-ui.sh diff --git a/tools/transifex/.tx/config b/tools/transifex/.tx/config new file mode 100644 index 00000000000..171d9b10e1a --- /dev/null +++ b/tools/transifex/.tx/config @@ -0,0 +1,19 @@ +[main] +host = https://www.transifex.com + +[CloudStack_UI.2-2messagesproperties] +file_filter = translations/CloudStack_UI.2-2messagesproperties/.properties +source_lang = en + +[CloudStack_UI.30xmessagesproperties] +file_filter = translations/CloudStack_UI.30xmessagesproperties/.properties +source_lang = en + +[CloudStack_UI.41xmessageproperties] +file_filter = translations/CloudStack_UI.41xmessageproperties/.properties +source_lang = en + +[CloudStack_UI.42xmessagesproperties] +file_filter = translations/CloudStack_UI.42xmessagesproperties/.properties +source_lang = en + diff --git a/tools/transifex/README-transifex.txt b/tools/transifex/README-transifex.txt new file mode 100644 index 00000000000..986aed7afb6 --- /dev/null +++ b/tools/transifex/README-transifex.txt @@ -0,0 +1,65 @@ +# 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. + +sync-transifex-ui is a script to automate the synchronisation between +Apache CloudStack L10N resource files and Transifex CloudStack project. + +Commun usage is: + +1/ Init and configure the transifex client CLI +(Already made on git CloudStack repo) + + ./sync-transifex-ui.sh init-transifex https://www.transifex.com/projects/p/CloudStack_UI/ + +2/ Upload to Transifex the last version of the source language (en) +which generally have the new keys/values to translate. + + ./sync-transifex-ui.sh upload-source-language CloudStack_UI.42xmessagesproperties + +3/ Download the last L10N resource files from Transifex to resources +files directory in CloudStack tree to upade the L10N resource files +with the translatons from traductors. + + ./sync-transifex-ui.sh download-l10n-languages CloudStack_UI.42xmessagesproperties + +===== +The sync-transifex-ui provide too the ability to : + +* Download from Transifex the source language resource files. Be carrefully, +with this,you can remove some transation on Transifex if some keys has +been removed inside the source language resource files. + + ./sync-transifex-ui.sh download-source-language CloudStack_UI.42xmessagesproperties + +* Upload the L10N resource files on Transifex. + + ./sync-transifex-ui.sh upload-l10n-languages CloudStack_UI.42xmessagesproperties + +===== +Note 1: +Choose the good branch on git matching with the good resource on Transifex: +(no branch) <--> CloudStack_UI.2-2messagesproperties +(no branch) <--> CloudStack_UI.30xmessagesproperties +(4.1) <--> CloudStack_UI.41xmessageproperties +(master) <--> CloudStack_UI.42xmessagesproperties + +Note 2: +If you want add a new L10N language, we need edit the sync-transifex-ui.sh script +to add his language code in LIST_LANG variable, before run the download-l10n-languages +command. + + diff --git a/tools/transifex/sync-transifex-ui.sh b/tools/transifex/sync-transifex-ui.sh new file mode 100755 index 00000000000..5fb4e57b16b --- /dev/null +++ b/tools/transifex/sync-transifex-ui.sh @@ -0,0 +1,158 @@ +#!/bin/sh +# 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. + +SRCLANG=en +LIST_LANG="ca de_DE es fr_FR it_IT ja ko_KR nb_NO pt_BR ru_RU zh_CN" + +DIRECTORY_RESOURCES="../../client/WEB-INF/classes/resources" +WORKDIR="./work-dir" + +AL2_STRING="# Licensed to the Apache Software Foundation (ASF) under one\n# or more contributor license agreements. See the NOTICE file\n# distributed with this work for additional information\n# regarding copyright ownership. The ASF licenses this file\n# to you under the Apache License, Version 2.0 (the\n# \"License\"); you may not use this file except in compliance\n# with the License. You may obtain a copy of the License at\n#\n# http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing,\n# software distributed under the License is distributed on an\n# \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n# KIND, either express or implied. See the License for the\n# specific language governing permissions and limitations\n# under the License.\n" + +doInit() +{ + tx init + tx set --auto-remote ${ARGUMENTS} +} + +doMakeWdir() +{ + mkdir -p ${WORKDIR} +} + +doCheckInit() +{ + if [ ! -f ./.tx/config ]; then + echo "Error: Transifex project isn't init. Please run $0 init-transifex URL-transifex-project" >&2 + exit 2 + fi +} + +doUploadL10NLangs() +{ + # l10n languages + for CODELANG in ${LIST_LANG} ; do + if [ -f "${DIRECTORY_RESOURCES}/messages_${CODELANG}.properties" ]; then + native2ascii -reverse -encoding UTF-8 ${DIRECTORY_RESOURCES}/messages_${CODELANG}.properties ${WORKDIR}/messages_${CODELANG}.properties + sed -i "s/\\\\\\\'/'/g" ${WORKDIR}/messages_${CODELANG}.properties + tx set -r ${ARGUMENTS} -l ${CODELANG} ${WORKDIR}/messages_${CODELANG}.properties + tx push -t -r ${ARGUMENTS} -l ${CODELANG} + else + echo "Warning: the resource file for language ${CODELANG} doesn't exist." + fi + done +} + +doDownloadL10NLangs() +{ + # prepare l10n languages + for CODELANG in ${LIST_LANG} ; do + if [ -f "${DIRECTORY_RESOURCES}/messages_${CODELANG}.properties" ]; then + native2ascii -reverse -encoding UTF-8 ${DIRECTORY_RESOURCES}/messages_${CODELANG}.properties ${WORKDIR}/messages_${CODELANG}.properties + sed -i "s/\\\\\\\'/'/g" ${WORKDIR}/messages_${CODELANG}.properties + tx set -r ${ARGUMENTS} -l ${CODELANG} ${WORKDIR}/messages_${CODELANG}.properties + else + echo "Warning: the resource file for language ${CODELANG} doesn't exist." + fi + done + + # get all resource files from transifex + tx pull -r ${ARGUMENTS} + + # l10n languages + for CODELANG in ${LIST_LANG} ; do + #tx pull -r ${ARGUMENTS} -l ${CODELANG} + if [ -f "${WORKDIR}/messages_${CODELANG}.properties" ]; then + native2ascii -encoding UTF-8 ${WORKDIR}/messages_${CODELANG}.properties ${WORKDIR}/messages_${CODELANG}.properties.tmp1 + grep -v "^#" ${WORKDIR}/messages_${CODELANG}.properties.tmp1 | sort -f | uniq | sed "s/'/\\\\\\\\\'/g" > ${WORKDIR}/messages_${CODELANG}.properties.tmp2 + echo "$AL2_STRING" | cat - ${WORKDIR}/messages_${CODELANG}.properties.tmp2 > ${DIRECTORY_RESOURCES}/messages_${CODELANG}.properties + else + echo "Warning: the resource file for language ${CODELANG} doesn't exist on transifex" + fi + done +} + +doUploadSourceLang() +{ + # Source language + if [ -f ${DIRECTORY_RESOURCES}/messages.properties ]; then + native2ascii -reverse -encoding UTF-8 ${DIRECTORY_RESOURCES}/messages.properties ${WORKDIR}/messages.properties + sed -i "s/\\\\\\\'/'/g" ${WORKDIR}/messages.properties + tx set --source -r ${ARGUMENTS} -l ${SRCLANG} ${WORKDIR}/messages.properties + tx push -s -r ${ARGUMENTS} + else + echo "Warning: the source language doesn't exist!" + fi +} + +doDownloadSourceLang() +{ + # get all resource files from transifex + tx pull -s -r ${ARGUMENTS} + # Source language + if [ -f "${WORKDIR}/messages.properties" ]; then + native2ascii -encoding UTF-8 ${WORKDIR}/messages.properties ${WORKDIR}/messages.properties.tmp1 + grep -v "^#" ${WORKDIR}/messages.properties.tmp1 | sort -f | uniq | sed "s/'/\\\\\\\\\'/g" > ${WORKDIR}/messages.properties.tmp2 + echo "$AL2_STRING" | cat - ${WORKDIR}/messages.properties.tmp2 > ${DIRECTORY_RESOURCES}/messages.properties + else + echo "Warning: the source language hasn't been retrieve!" + fi +} + +if [ $# -ne 2 ]; then + COMMAND="error" +else + COMMAND="$1" + ARGUMENTS="$2" + doMakeWdir +fi + +case "$COMMAND" in + upload-source-language) + doCheckInit + doUploadSourceLang + ;; + + download-source-language) + doCheckInit + doDownloadSourceLang + ;; + + upload-l10n-languages) + doCheckInit + doUploadL10NLangs + ;; + + download-l10n-languages) + doCheckInit + doDownloadL10NLangs + ;; + + init-transifex) + doInit + ;; + + *|error) + echo "Usage: $0 [upload-source-language|download-source-language] [upload-l10n-languages|download-l10n-languages] transifex-resource" >&2 + echo "\n\tExemple: $0 download-l10n-languages CloudStack_UI-42xmessagesproperties\n" >&2 + echo "Usage: $0 init-transifex URL-transifex-project" >&2 + echo "\n\tExemple: $0 init-transifex https://www.transifex.com/projects/p/CloudStack_UI/\n" >&2 + exit 1 + ;; +esac + From b633353fff295782a31db86f39f5b6b937b83377 Mon Sep 17 00:00:00 2001 From: Milamber Date: Mon, 29 Apr 2013 11:14:57 +0100 Subject: [PATCH 459/607] CLOUDSTACK-2138 - first automate sync with Transifex. 1/ Upload the lastest EN resource file on Transifex. 2/ Download the lastest L10N resource file for "ca de_DE es fr_FR it_IT ja ko_KR nb_NO pt_BR ru_RU zh_CN" form Transifex to CS repo. --- .../classes/resources/messages_ca.properties | 1 + .../resources/messages_de_DE.properties | 1 + .../classes/resources/messages_es.properties | 1 + .../resources/messages_fr_FR.properties | 1796 +++++------ .../resources/messages_it_IT.properties | 1 + .../classes/resources/messages_ja.properties | 2679 +++++++++-------- .../resources/messages_ko_KR.properties | 1 + .../resources/messages_nb_NO.properties | 1 + .../resources/messages_pt_BR.properties | 1 + .../resources/messages_ru_RU.properties | 1 + .../resources/messages_zh_CN.properties | 1 + tools/transifex/.tx/config | 12 + 12 files changed, 2259 insertions(+), 2237 deletions(-) diff --git a/client/WEB-INF/classes/resources/messages_ca.properties b/client/WEB-INF/classes/resources/messages_ca.properties index 2d8e953419f..4e66083dbd5 100644 --- a/client/WEB-INF/classes/resources/messages_ca.properties +++ b/client/WEB-INF/classes/resources/messages_ca.properties @@ -15,6 +15,7 @@ # 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 diff --git a/client/WEB-INF/classes/resources/messages_de_DE.properties b/client/WEB-INF/classes/resources/messages_de_DE.properties index 45812687d2f..9b1d6b03310 100644 --- a/client/WEB-INF/classes/resources/messages_de_DE.properties +++ b/client/WEB-INF/classes/resources/messages_de_DE.properties @@ -15,6 +15,7 @@ # 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. diff --git a/client/WEB-INF/classes/resources/messages_es.properties b/client/WEB-INF/classes/resources/messages_es.properties index 28f9363724a..c0680b30613 100644 --- a/client/WEB-INF/classes/resources/messages_es.properties +++ b/client/WEB-INF/classes/resources/messages_es.properties @@ -15,6 +15,7 @@ # 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. diff --git a/client/WEB-INF/classes/resources/messages_fr_FR.properties b/client/WEB-INF/classes/resources/messages_fr_FR.properties index 6a7cc9a9d55..6d860486d0c 100644 --- a/client/WEB-INF/classes/resources/messages_fr_FR.properties +++ b/client/WEB-INF/classes/resources/messages_fr_FR.properties @@ -15,78 +15,46 @@ # specific language governing permissions and limitations # under the License. -#Stored by I18NEdit, may be edited! -ICMP.code=Code ICMP -ICMP.type=Type ICMP -changed.item.properties=Propri\u00E9t\u00E9s de l\\'\u00E9l\u00E9ment modifi\u00E9es + +changed.item.properties=Propri\u00e9t\u00e9s de l\\'\u00e9l\u00e9ment modifi\u00e9es confirm.enable.s3=Remplir les informations suivantes pour activer le support de stockage secondaire S3 confirm.enable.swift=Remplir les informations suivantes pour activer Swift error.could.not.enable.zone=Impossible d\\'activer la zone -error.installWizard.message=Une erreur s\\'est produite ; vous pouvez retourner en arri\u00E8re et corriger les erreurs +error.installWizard.message=Une erreur s\\'est produite ; vous pouvez retourner en arri\u00e8re et corriger les erreurs error.invalid.username.password=Utilisateur ou mot de passe invalide -error.login=Votre nom d\\'utilisateur / mot de passe ne correspond pas \u00E0 nos donn\u00E9es. -error.menu.select=\u00C9chec de l\\'action car il n\\'y a aucun \u00E9l\u00E9ment s\u00E9lectionn\u00E9. +error.login=Votre nom d\\'utilisateur / mot de passe ne correspond pas \u00e0 nos donn\u00e9es. +error.menu.select=\u00c9chec de l\\'action car il n\\'y a aucun \u00e9l\u00e9ment s\u00e9lectionn\u00e9. error.mgmt.server.inaccessible=Le serveur de gestion est indisponible. Essayez plus tard. error.password.not.match=Les mots de passe ne correspondent pas -error.please.specify.physical.network.tags=L\\'offre r\u00E9seau ne sera pas disponible tant que des libell\u00E9s n\\'auront pas \u00E9t\u00E9 renseign\u00E9s pour ce r\u00E9seau physique. -error.session.expired=Votre session a expir\u00E9e. +error.please.specify.physical.network.tags=L\\'offre r\u00e9seau ne sera pas disponible tant que des libell\u00e9s n\\'auront pas \u00e9t\u00e9 renseign\u00e9s pour ce r\u00e9seau physique. +error.session.expired=Votre session a expir\u00e9e. error.something.went.wrong.please.correct.the.following=Erreur; corriger le point suivant error.unable.to.reach.management.server=Impossible de joindre le serveur d\\'administration -error.unresolved.internet.name=Votre nom Internet ne peut pas \u00EAtre r\u00E9solu. -extractable=D\u00E9compressable +error.unresolved.internet.name=Votre nom Internet ne peut pas \u00eatre r\u00e9solu. +extractable=D\u00e9compressable +force.delete.domain.warning=Attention \: Choisir cette option entra\u00eenera la suppression de tous les domaines issus et l\\'ensemble des comptes associ\u00e9s, ainsi que de leur ressources force.delete=Forcer la suppression -force.delete.domain.warning=Attention \: Choisir cette option entra\u00EEnera la suppression de tous les domaines issus et l\\'ensemble des comptes associ\u00E9s, ainsi que de leur ressources force.remove=Forcer la suppression -force.remove.host.warning=Attention \: Choisir cette option entra\u00EEnera CloudStack \u00E0\u00A0arr\u00EAter l\\'ensemble des machines virtuelles avant d\\'enlever l\\'h\u00F4te du cluster -force.stop=Forcer l\\'arr\u00EAt -force.stop.instance.warning=Attention \: un arr\u00EAt forc\u00E9 sur cette instance est la dernier option. Cela peut engendrer des pertes de donn\u00E9es et/ou un comportement inconsistant de votre instance. -image.directory=R\u00E9pertoire d\\'images -inline=Align\u00E9 -instances.actions.reboot.label=Red\u00E9marrer l\\'instance -label.CIDR.list=Liste CIDR -label.CIDR.of.destination.network=CIDR du r\u00E9seau de destination -label.CPU.cap=Limitation CPU -label.DHCP.server.type=Serveur DHCP -label.DNS.domain.for.guest.networks=Domaine DNS pour les r\u00E9seaux invit\u00E9s -label.ESP.encryption=Chiffrement ESP -label.ESP.hash=Empreinte ESP -label.ESP.lifetime=Dur\u00E9e de vie ESP (secondes) -label.ESP.policy=Mode ESP -label.IKE.DH=DH IKE -label.IKE.encryption=Chiffrement IKE -label.IKE.hash=Empreinte IKE -label.IKE.lifetime=Dur\u00E9e de vie IKE (secondes) -label.IKE.policy=Mode IKE -label.IPsec.preshared.key=Cl\u00E9 partag\u00E9e IPsec -label.LB.isolation=R\u00E9partition de charge isol\u00E9e -label.LUN.number=N\u00B0 LUN -label.PING.CIFS.password=Mot de passe CIFS PING -label.PING.CIFS.username=Identifiant CIFS PING -label.PING.dir=R\u00E9pertoire PING -label.PING.storage.IP=IP stockage PING -label.PreSetup=PreSetup -label.Pxe.server.type=Serveur PXE -label.SR.name=Nom du point de montage -label.SharedMountPoint=Point de montage partag\u00E9 -label.TFTP.dir=R\u00E9pertoire TFTP -label.VMFS.datastore=Magasin de donn\u00E9es VMFS -label.VMs.in.tier=Machines virtuelles dans le tiers -label.VPC.router.details=D\u00E9tails routeur VPC -label.VPN.connection=Connexion VPN -label.VPN.customer.gateway=Passerelle VPN client -label.VPN.gateway=Passerelle VPN +force.remove.host.warning=Attention \: Choisir cette option entra\u00eenera CloudStack \u00e0\u00a0arr\u00eater l\\'ensemble des machines virtuelles avant d\\'enlever l\\'h\u00f4te du cluster +force.stop=Forcer l\\'arr\u00eat +force.stop.instance.warning=Attention \: un arr\u00eat forc\u00e9 sur cette instance est la dernier option. Cela peut engendrer des pertes de donn\u00e9es et/ou un comportement inconsistant de votre instance. +ICMP.code=Code ICMP +ICMP.type=Type ICMP +image.directory=R\u00e9pertoire d\\'images +inline=Align\u00e9 +instances.actions.reboot.label=Red\u00e9marrer l\\'instance label.accept.project.invitation=Accepter l\\'invitation au projet +label.account.and.security.group=Compte, groupe de s\u00e9curit\u00e9 label.account=Compte -label.account.and.security.group=Compte, groupe de s\u00E9curit\u00E9 label.account.id=ID du Compte label.account.name=Nom du compte -label.account.specific=Sp\u00E9cifique au compte label.accounts=Comptes -label.acquire.new.ip=Acqu\u00E9rir une nouvelle adresse IP -label.action.attach.disk=Rattacher un disque +label.account.specific=Sp\u00e9cifique au compte +label.acquire.new.ip=Acqu\u00e9rir une nouvelle adresse IP label.action.attach.disk.processing=Rattachement du Disque... -label.action.attach.iso=Rattacher une image ISO +label.action.attach.disk=Rattacher un disque label.action.attach.iso.processing=Rattachement de l\\'image ISO +label.action.attach.iso=Rattacher une image ISO label.action.cancel.maintenance.mode=Annuler le mode maintenance label.action.cancel.maintenance.mode.processing=Annulation du mode maintenance... label.action.change.password=Changer le mot de passe @@ -94,100 +62,100 @@ label.action.change.service=Changer d\\'offre de service label.action.change.service.processing=Changement de d\\'offre de service... label.action.copy.ISO=Copier une image ISO label.action.copy.ISO.processing=Copie de l\\'image ISO... -label.action.copy.template=Copier un mod\u00E8le -label.action.copy.template.processing=Copie du Mod\u00E8le... -label.action.create.template=Cr\u00E9er un mod\u00E8le -label.action.create.template.from.vm=Cr\u00E9er un mod\u00E8le depuis la VM -label.action.create.template.from.volume=Cr\u00E9er un mod\u00E8le depuis le volume -label.action.create.template.processing=Cr\u00E9ation du Mod\u00E8le... -label.action.create.vm=Cr\u00E9er une VM -label.action.create.vm.processing=Cr\u00E9ation de la VM... -label.action.create.volume=Cr\u00E9er un Volume -label.action.create.volume.processing=Cr\u00E9ation du Volume... -label.action.delete.IP.range=Supprimer la plage IP -label.action.delete.IP.range.processing=Suppression de la plage IP... -label.action.delete.ISO=Supprimer l\\'image ISO -label.action.delete.ISO.processing=Suppression de l\\'image ISO... -label.action.delete.account=Supprimer un compte +label.action.copy.template=Copier un mod\u00e8le +label.action.copy.template.processing=Copie du Mod\u00e8le... +label.action.create.template=Cr\u00e9er un mod\u00e8le +label.action.create.template.from.vm=Cr\u00e9er un mod\u00e8le depuis la VM +label.action.create.template.from.volume=Cr\u00e9er un mod\u00e8le depuis le volume +label.action.create.template.processing=Cr\u00e9ation du Mod\u00e8le... +label.action.create.vm=Cr\u00e9er une VM +label.action.create.vm.processing=Cr\u00e9ation de la VM... +label.action.create.volume=Cr\u00e9er un Volume +label.action.create.volume.processing=Cr\u00e9ation du Volume... label.action.delete.account.processing=Suppression du compte... -label.action.delete.cluster=Supprimer le Cluster +label.action.delete.account=Supprimer un compte label.action.delete.cluster.processing=Suppression du Cluster... -label.action.delete.disk.offering=Supprimer l\\'offre Disque +label.action.delete.cluster=Supprimer le Cluster label.action.delete.disk.offering.processing=Suppression de l\\'offre Disque... -label.action.delete.domain=Supprimer le domaine +label.action.delete.disk.offering=Supprimer l\\'offre Disque label.action.delete.domain.processing=Suppression du domaine... -label.action.delete.firewall=Supprimer la r\u00E8gle de pare-feu +label.action.delete.domain=Supprimer le domaine label.action.delete.firewall.processing=Suppression du Pare-feu... -label.action.delete.ingress.rule=Supprimer la r\u00E8gle d\\'entr\u00E9e -label.action.delete.ingress.rule.processing=Suppression de la r\u00E8gle d\\'entr\u00E9e.. -label.action.delete.load.balancer=Supprimer la r\u00E8gle de r\u00E9partition de charge -label.action.delete.load.balancer.processing=Suppression du r\u00E9partiteur de charge... -label.action.delete.network=Supprimer le r\u00E9seau -label.action.delete.network.processing=Suppression du r\u00E9seau... +label.action.delete.firewall=Supprimer la r\u00e8gle de pare-feu +label.action.delete.ingress.rule.processing=Suppression de la r\u00e8gle d\\'entr\u00e9e.. +label.action.delete.ingress.rule=Supprimer la r\u00e8gle d\\'entr\u00e9e +label.action.delete.IP.range.processing=Suppression de la plage IP... +label.action.delete.IP.range=Supprimer la plage IP +label.action.delete.ISO.processing=Suppression de l\\'image ISO... +label.action.delete.ISO=Supprimer l\\'image ISO +label.action.delete.load.balancer.processing=Suppression du r\u00e9partiteur de charge... +label.action.delete.load.balancer=Supprimer la r\u00e8gle de r\u00e9partition de charge +label.action.delete.network.processing=Suppression du r\u00e9seau... +label.action.delete.network=Supprimer le r\u00e9seau label.action.delete.nexusVswitch=Supprimer le Nexus 1000v -label.action.delete.physical.network=Supprimer le r\u00E9seau physique -label.action.delete.pod=Supprimer le Pod +label.action.delete.physical.network=Supprimer le r\u00e9seau physique label.action.delete.pod.processing=Suppression du pod... -label.action.delete.primary.storage=Supprimer le stockage principal +label.action.delete.pod=Supprimer le Pod label.action.delete.primary.storage.processing=Suppression du stockage principal... -label.action.delete.secondary.storage=Supprimer le stockage secondaire +label.action.delete.primary.storage=Supprimer le stockage principal label.action.delete.secondary.storage.processing=Suppression du stockage secondaire... -label.action.delete.security.group=Supprimer le groupe de s\u00E9curit\u00E9 -label.action.delete.security.group.processing=Suppression du groupe de s\u00E9curit\u00E9 -label.action.delete.service.offering=Supprimer l\\'offre de service +label.action.delete.secondary.storage=Supprimer le stockage secondaire +label.action.delete.security.group.processing=Suppression du groupe de s\u00e9curit\u00e9 +label.action.delete.security.group=Supprimer le groupe de s\u00e9curit\u00e9 label.action.delete.service.offering.processing=Suppression de l\\'offre de service... -label.action.delete.snapshot=Supprimer l\\'instantan\u00E9 -label.action.delete.snapshot.processing=Suppression de l\\'instantan\u00E9... -label.action.delete.system.service.offering=Supprimer l\\'offre syst\u00E8me -label.action.delete.template=Supprimer le mod\u00E8le -label.action.delete.template.processing=Suppression du mod\u00E8le... -label.action.delete.user=Supprimer l\\'utilisateur +label.action.delete.service.offering=Supprimer l\\'offre de service +label.action.delete.snapshot.processing=Suppression de l\\'instantan\u00e9... +label.action.delete.snapshot=Supprimer l\\'instantan\u00e9 +label.action.delete.system.service.offering=Supprimer l\\'offre syst\u00e8me +label.action.delete.template.processing=Suppression du mod\u00e8le... +label.action.delete.template=Supprimer le mod\u00e8le label.action.delete.user.processing=Suppression de l\\'utilisateur... -label.action.delete.volume=Supprimer le volume +label.action.delete.user=Supprimer l\\'utilisateur label.action.delete.volume.processing=Suppression du volume... -label.action.delete.zone=Supprimer la zone +label.action.delete.volume=Supprimer le volume label.action.delete.zone.processing=Suppression de la zone... -label.action.destroy.instance=Supprimer l\\'instance +label.action.delete.zone=Supprimer la zone label.action.destroy.instance.processing=Suppression de l\\'instance... -label.action.destroy.systemvm=Supprimer la VM Syst\u00E8me -label.action.destroy.systemvm.processing=Suppression de la VM Syst\u00E8me... -label.action.detach.disk=D\u00E9tacher le disque -label.action.detach.disk.processing=D\u00E9tachement du disque... -label.action.detach.iso=D\u00E9tacher l\\'image ISO -label.action.detach.iso.processing=D\u00E9tachement de l\\'image ISO... -label.action.disable.account=D\u00E9sactiver le compte -label.action.disable.account.processing=D\u00E9sactivation du compte... -label.action.disable.cluster=D\u00E9sactiver le cluster -label.action.disable.cluster.processing=D\u00E9sactivation du cluster... -label.action.disable.nexusVswitch=D\u00E9sactiver le Nexus 1000v -label.action.disable.physical.network=D\u00E9sactiver le r\u00E9seau physique -label.action.disable.pod=D\u00E9sactiver le Pod -label.action.disable.pod.processing=D\u00E9sactivation du Pod... -label.action.disable.static.NAT=D\u00E9sactiver le NAT Statique -label.action.disable.static.NAT.processing=D\u00E9sactivation du NAT Statique... -label.action.disable.user=D\u00E9sactiver l\\'utilisateur -label.action.disable.user.processing=D\u00E9sactivation de l\\'utilisateur... -label.action.disable.zone=D\u00E9sactivation de la zone -label.action.disable.zone.processing=D\u00E9sactivation de la zone... -label.action.download.ISO=T\u00E9l\u00E9charger une image ISO -label.action.download.template=T\u00E9l\u00E9charger un mod\u00E8le -label.action.download.volume=T\u00E9l\u00E9charger un volume -label.action.download.volume.processing=T\u00E9l\u00E9chargement du volume... -label.action.edit.ISO=Modifier l\\'image ISO +label.action.destroy.instance=Supprimer l\\'instance +label.action.destroy.systemvm.processing=Suppression de la VM Syst\u00e8me... +label.action.destroy.systemvm=Supprimer la VM Syst\u00e8me +label.action.detach.disk=D\u00e9tacher le disque +label.action.detach.disk.processing=D\u00e9tachement du disque... +label.action.detach.iso=D\u00e9tacher l\\'image ISO +label.action.detach.iso.processing=D\u00e9tachement de l\\'image ISO... +label.action.disable.account=D\u00e9sactiver le compte +label.action.disable.account.processing=D\u00e9sactivation du compte... +label.action.disable.cluster=D\u00e9sactiver le cluster +label.action.disable.cluster.processing=D\u00e9sactivation du cluster... +label.action.disable.nexusVswitch=D\u00e9sactiver le Nexus 1000v +label.action.disable.physical.network=D\u00e9sactiver le r\u00e9seau physique +label.action.disable.pod=D\u00e9sactiver le Pod +label.action.disable.pod.processing=D\u00e9sactivation du Pod... +label.action.disable.static.NAT=D\u00e9sactiver le NAT Statique +label.action.disable.static.NAT.processing=D\u00e9sactivation du NAT Statique... +label.action.disable.user=D\u00e9sactiver l\\'utilisateur +label.action.disable.user.processing=D\u00e9sactivation de l\\'utilisateur... +label.action.disable.zone=D\u00e9sactivation de la zone +label.action.disable.zone.processing=D\u00e9sactivation de la zone... +label.action.download.ISO=T\u00e9l\u00e9charger une image ISO +label.action.download.template=T\u00e9l\u00e9charger un mod\u00e8le +label.action.download.volume.processing=T\u00e9l\u00e9chargement du volume... +label.action.download.volume=T\u00e9l\u00e9charger un volume label.action.edit.account=Modifier le Compte label.action.edit.disk.offering=Modifier l\\'offre de disque label.action.edit.domain=Modifier le domaine label.action.edit.global.setting=Modifier la configuration globale -label.action.edit.host=Modifier l\\'h\u00F4te +label.action.edit.host=Modifier l\\'h\u00f4te label.action.edit.instance=Modifier l\\'instance -label.action.edit.network=Modifier le r\u00E9seau -label.action.edit.network.offering=Modifier l\\'offre de service r\u00E9seau -label.action.edit.network.processing=Modification du R\u00E9seau... +label.action.edit.ISO=Modifier l\\'image ISO +label.action.edit.network=Modifier le r\u00e9seau +label.action.edit.network.offering=Modifier l\\'offre de service r\u00e9seau +label.action.edit.network.processing=Modification du R\u00e9seau... label.action.edit.pod=Modifier le pod label.action.edit.primary.storage=Modifier le stockage principal label.action.edit.resource.limits=Modifier les limites de ressources label.action.edit.service.offering=Modifier l\\'offre de service -label.action.edit.template=Modifier le mod\u00E8le +label.action.edit.template=Modifier le mod\u00e8le label.action.edit.user=Modifier l\\'utilisateur label.action.edit.zone=Modifier la zone label.action.enable.account=Activer le compte @@ -197,7 +165,7 @@ label.action.enable.cluster.processing=Activation du cluster... label.action.enable.maintenance.mode=Activer le mode maintenance label.action.enable.maintenance.mode.processing=Activation du mode maintenance... label.action.enable.nexusVswitch=Activer le Nexus 1000v -label.action.enable.physical.network=Activer le r\u00E9seau physique +label.action.enable.physical.network=Activer le r\u00e9seau physique label.action.enable.pod=Activer le Pod label.action.enable.pod.processing=Activation du Pod... label.action.enable.static.NAT=Activer le NAT Statique @@ -208,74 +176,69 @@ label.action.enable.zone=Activer la zone label.action.enable.zone.processing=Activation de la zone... label.action.force.reconnect=Forcer la reconnexion label.action.force.reconnect.processing=Reconnexion en cours... -label.action.generate.keys=G\u00E9n\u00E9rer les cl\u00E9s -label.action.generate.keys.processing=G\u00E9n\u00E9ration des cl\u00E9s... +label.action.generate.keys=G\u00e9n\u00e9rer les cl\u00e9s +label.action.generate.keys.processing=G\u00e9n\u00e9ration des cl\u00e9s... label.action.list.nexusVswitch=Liste des Nexus 1000v -label.action.lock.account=Verrouiller le compte label.action.lock.account.processing=Verrouillage du compte... -label.action.manage.cluster=G\u00E9rer le Cluster +label.action.lock.account=Verrouiller le compte +label.action.manage.cluster=G\u00e9rer le Cluster label.action.manage.cluster.processing=Gestion du cluster... label.action.migrate.instance=Migrer l\\'instance label.action.migrate.instance.processing=Migration de l\\'instance... label.action.migrate.router=Migration routeur label.action.migrate.router.processing=Migration routeur en cours... -label.action.migrate.systemvm=Migration VM syst\u00E8me -label.action.migrate.systemvm.processing=Migration VM syst\u00E8me en cours ... -label.action.reboot.instance=Red\u00E9marrer l\\'instance -label.action.reboot.instance.processing=Red\u00E9marrage de l\\'instance... -label.action.reboot.router=Red\u00E9marrer le routeur -label.action.reboot.router.processing=Red\u00E9marrage du routeur... -label.action.reboot.systemvm=Red\u00E9marrer la VM Syst\u00E8me -label.action.reboot.systemvm.processing=Red\u00E9marrage de la VM Syst\u00E8me... -label.action.recurring.snapshot=Instantan\u00E9s r\u00E9currents +label.action.migrate.systemvm=Migration VM syst\u00e8me +label.action.migrate.systemvm.processing=Migration VM syst\u00e8me en cours ... +label.action.reboot.instance.processing=Red\u00e9marrage de l\\'instance... +label.action.reboot.instance=Red\u00e9marrer l\\'instance +label.action.reboot.router.processing=Red\u00e9marrage du routeur... +label.action.reboot.router=Red\u00e9marrer le routeur +label.action.reboot.systemvm.processing=Red\u00e9marrage de la VM Syst\u00e8me... +label.action.reboot.systemvm=Red\u00e9marrer la VM Syst\u00e8me +label.action.recurring.snapshot=Instantan\u00e9s r\u00e9currents label.action.register.iso=Enregistrer ISO -label.action.register.template=Enregistrer mod\u00E8le -label.action.release.ip=Lib\u00E9rer l\\'adresse IP -label.action.release.ip.processing=Lib\u00E9ration de l\\'adresse IP... -label.action.remove.host=Supprimer l\\'h\u00F4te -label.action.remove.host.processing=Suppression de l\\'h\u00F4te... -label.action.reset.password=R\u00E9-initialiser le mot de passe -label.action.reset.password.processing=R\u00E9-initialisation du mot de passe... -label.action.resize.volume=Redimensionner Volume +label.action.register.template=Enregistrer mod\u00e8le +label.action.release.ip=Lib\u00e9rer l\\'adresse IP +label.action.release.ip.processing=Lib\u00e9ration de l\\'adresse IP... +label.action.remove.host.processing=Suppression de l\\'h\u00f4te... +label.action.remove.host=Supprimer l\\'h\u00f4te +label.action.reset.password.processing=R\u00e9-initialisation du mot de passe... +label.action.reset.password=R\u00e9-initialiser le mot de passe label.action.resize.volume.processing=Redimensionnement en cours... +label.action.resize.volume=Redimensionner Volume label.action.resource.limits=Limites de ressources -label.action.restore.instance=Restaurer l\\'instance label.action.restore.instance.processing=Restauration de l\\'instance... -label.action.start.instance=D\u00E9marrer l\\'instance -label.action.start.instance.processing=D\u00E9marrage de l\\'instance... -label.action.start.router=D\u00E9marrer le routeur -label.action.start.router.processing=D\u00E9marrage du routeur... -label.action.start.systemvm=D\u00E9marrer la VM syst\u00E8me -label.action.start.systemvm.processing=D\u00E9marrage de la VM syst\u00E8me... -label.action.stop.instance=Arr\u00EAter l\\'Instance -label.action.stop.instance.processing=Arr\u00EAt de l\\'Instance... -label.action.stop.router=Arr\u00EAter le routeur -label.action.stop.router.processing=Arr\u00EAt du routeur... -label.action.stop.systemvm=Arr\u00EAter la VM syst\u00E8me -label.action.stop.systemvm.processing=Arr\u00EAt de la VM syst\u00E8me... -label.action.take.snapshot=Prendre un instantan\u00E9 -label.action.take.snapshot.processing=Prise de l\\'instantan\u00E9... -label.action.unmanage.cluster=Ne plus g\u00E9rer le Cluster -label.action.unmanage.cluster.processing=Arr\u00EAt de la gestion du Cluster -label.action.update.OS.preference=Mettre \u00E0 jour les pr\u00E9f\u00E9rences d\\'OS -label.action.update.OS.preference.processing=Mise \u00E0 jour des pr\u00E9f\u00E9rences d\\'OS... -label.action.update.resource.count=Mettre \u00E0 jour le compteur des ressources -label.action.update.resource.count.processing=Mise \u00E0 jour du compteur... +label.action.restore.instance=Restaurer l\\'instance label.actions=Actions +label.action.start.instance=D\u00e9marrer l\\'instance +label.action.start.instance.processing=D\u00e9marrage de l\\'instance... +label.action.start.router=D\u00e9marrer le routeur +label.action.start.router.processing=D\u00e9marrage du routeur... +label.action.start.systemvm=D\u00e9marrer la VM syst\u00e8me +label.action.start.systemvm.processing=D\u00e9marrage de la VM syst\u00e8me... +label.action.stop.instance=Arr\u00eater l\\'Instance +label.action.stop.instance.processing=Arr\u00eat de l\\'Instance... +label.action.stop.router=Arr\u00eater le routeur +label.action.stop.router.processing=Arr\u00eat du routeur... +label.action.stop.systemvm=Arr\u00eater la VM syst\u00e8me +label.action.stop.systemvm.processing=Arr\u00eat de la VM syst\u00e8me... +label.action.take.snapshot=Prendre un instantan\u00e9 +label.action.take.snapshot.processing=Prise de l\\'instantan\u00e9... +label.action.unmanage.cluster=Ne plus g\u00e9rer le Cluster +label.action.unmanage.cluster.processing=Arr\u00eat de la gestion du Cluster +label.action.update.OS.preference=Mettre \u00e0 jour les pr\u00e9f\u00e9rences d\\'OS +label.action.update.OS.preference.processing=Mise \u00e0 jour des pr\u00e9f\u00e9rences d\\'OS... +label.action.update.resource.count=Mettre \u00e0 jour le compteur des ressources +label.action.update.resource.count.processing=Mise \u00e0 jour du compteur... label.activate.project=Activer projet label.active.sessions=Sessions actives -label.add=Ajouter -label.add.ACL=Ajouter r\u00E8gle ACL -label.add.F5.device=Ajouter un F5 -label.add.NiciraNvp.device=Ajouter un contr\u00F4leur Nvp -label.add.SRX.device=Ajouter un SRX -label.add.VM.to.tier=Ajouter une machine virtuelle au tiers -label.add.VPN.gateway=Ajouter une passerelle VPN label.add.account=Ajouter un compte -label.add.account.to.project=Ajouter un compte au projet label.add.accounts=Ajouter des comptes label.add.accounts.to=Ajouter des comptes sur -label.add.by=Ajout\u00E9 par +label.add.account.to.project=Ajouter un compte au projet +label.add.ACL=Ajouter r\u00e8gle ACL +label.add=Ajouter +label.add.by=Ajout\u00e9 par label.add.by.cidr=Ajouter par CIDR label.add.by.group=Ajouter par groupe label.add.cluster=Ajouter un cluster @@ -283,308 +246,327 @@ label.add.compute.offering=Ajouter une offre de calcul label.add.direct.iprange=Ajouter une plage d\\'adresse IP directe label.add.disk.offering=Ajouter une offre disque label.add.domain=Ajouter un domaine -label.add.egress.rule=Ajouter la r\u00E8gle sortante -label.add.firewall=Ajouter une r\u00E8gle de pare-feu -label.add.guest.network=Ajouter un r\u00E9seau d\\'invit\u00E9 -label.add.host=Ajouter un h\u00F4te -label.add.ingress.rule=Ajouter une r\u00E8gle d\\'entr\u00E9e +label.add.egress.rule=Ajouter la r\u00e8gle sortante +label.add.F5.device=Ajouter un F5 +label.add.firewall=Ajouter une r\u00e8gle de pare-feu +label.add.guest.network=Ajouter un r\u00e9seau d\\'invit\u00e9 +label.add.host=Ajouter un h\u00f4te +label.adding=Ajout +label.adding.cluster=Ajout du Cluster +label.adding.failed=\u00c9chec de l\\'ajout +label.adding.pod=Ajout du Pod +label.adding.processing=Ajout... +label.add.ingress.rule=Ajouter une r\u00e8gle d\\'entr\u00e9e +label.adding.succeeded=Ajout r\u00e9ussi +label.adding.user=Ajout de l\\'utilisateur +label.adding.zone=Ajout de la zone label.add.ip.range=Ajouter une plage IP -label.add.load.balancer=Ajouter un r\u00E9partiteur de charge +label.additional.networks=R\u00e9seaux additionnels +label.add.load.balancer=Ajouter un r\u00e9partiteur de charge label.add.more=Ajouter plus label.add.netScaler.device=Ajouter un Netscaler -label.add.network=Ajouter un r\u00E9seau -label.add.network.ACL=Ajouter une r\u00E8gle d\\'acc\u00E8s r\u00E9seau ACL -label.add.network.device=Ajouter un \u00E9quipement r\u00E9seau -label.add.network.offering=Ajouter une offre r\u00E9seau +label.add.network.ACL=Ajouter une r\u00e8gle d\\'acc\u00e8s r\u00e9seau ACL +label.add.network=Ajouter un r\u00e9seau +label.add.network.device=Ajouter un \u00e9quipement r\u00e9seau +label.add.network.offering=Ajouter une offre r\u00e9seau label.add.new.F5=Ajouter un F5 +label.add.new.gateway=Ajouter une nouvelle passerelle label.add.new.NetScaler=Ajouter un Netscaler label.add.new.SRX=Ajouter un SRX -label.add.new.gateway=Ajouter une nouvelle passerelle label.add.new.tier=Ajouter un nouveau tiers -label.add.physical.network=Ajouter un r\u00E9seau physique +label.add.NiciraNvp.device=Ajouter un contr\u00f4leur Nvp +label.add.physical.network=Ajouter un r\u00e9seau physique label.add.pod=Ajouter un pod -label.add.port.forwarding.rule=Ajouter une r\u00E8gle de transfert de port +label.add.port.forwarding.rule=Ajouter une r\u00e8gle de transfert de port label.add.primary.storage=Ajouter un stockage principal label.add.resources=Ajouter ressources label.add.route=Ajouter route -label.add.rule=Ajouter r\u00E8gle +label.add.rule=Ajouter r\u00e8gle label.add.secondary.storage=Ajouter un stockage secondaire -label.add.security.group=Ajouter un groupe de s\u00E9curit\u00E9 +label.add.security.group=Ajouter un groupe de s\u00e9curit\u00e9 label.add.service.offering=Ajouter une offre de service -label.add.static.nat.rule=Ajouter une r\u00E8gle de NAT statique +label.add.SRX.device=Ajouter un SRX +label.add.static.nat.rule=Ajouter une r\u00e8gle de NAT statique label.add.static.route=Ajouter une route statique -label.add.system.service.offering=Ajouter une offre de service syst\u00E8me -label.add.template=Ajouter un mod\u00E8le +label.add.system.service.offering=Ajouter une offre de service syst\u00e8me +label.add.template=Ajouter un mod\u00e8le label.add.to.group=Ajouter au groupe label.add.user=Ajouter un utilisateur label.add.vlan=Ajouter un VLAN label.add.vm=Ajouter VM label.add.vms=Ajouter VMs -label.add.vms.to.lb=Ajouter une/des VM(s) \u00E0 la r\u00E8gle de r\u00E9partition de charge +label.add.vms.to.lb=Ajouter une/des VM(s) \u00e0 la r\u00e8gle de r\u00e9partition de charge +label.add.VM.to.tier=Ajouter une machine virtuelle au tiers label.add.volume=Ajouter un volume label.add.vpc=Ajouter un VPC label.add.vpn.customer.gateway=Ajouter une passerelle VPN cliente +label.add.VPN.gateway=Ajouter une passerelle VPN label.add.vpn.user=Ajouter un utilisateur VPN label.add.zone=Ajouter une zone -label.adding=Ajout -label.adding.cluster=Ajout du Cluster -label.adding.failed=\u00C9chec de l\\'ajout -label.adding.pod=Ajout du Pod -label.adding.processing=Ajout... -label.adding.succeeded=Ajout r\u00E9ussi -label.adding.user=Ajout de l\\'utilisateur -label.adding.zone=Ajout de la zone -label.additional.networks=R\u00E9seaux additionnels -label.admin=Administrateur label.admin.accounts=Comptes Administrateur -label.advanced=Avanc\u00E9 -label.advanced.mode=Mode avanc\u00E9 -label.advanced.search=Recherche avanc\u00E9e +label.admin=Administrateur +label.advanced=Avanc\u00e9 +label.advanced.mode=Mode avanc\u00e9 +label.advanced.search=Recherche avanc\u00e9e label.agent.password=Mot de passe Agent label.agent.username=Identifiant Agent label.agree=Accepter label.alert=Alerte label.algorithm=Algorithme -label.allocated=Allou\u00E9 -label.allocation.state=\u00C9tat -label.api.key=Cl\u00E9 d\\'API +label.allocated=Allou\u00e9 +label.allocation.state=\u00c9tat +label.api.key=Cl\u00e9 d\\'API label.apply=Appliquer label.assign=Assigner -label.assign.to.load.balancer=Assigner l\\'instance au r\u00E9partiteur de charge -label.associated.network=R\u00E9seau associ\u00E9 -label.associated.network.id=ID du r\u00E9seau associ\u00E9 -label.attached.iso=Image ISO attach\u00E9e -label.availability=Disponibilit\u00E9 -label.availability.zone=Zone de disponibilit\u00E9 +label.assign.to.load.balancer=Assigner l\\'instance au r\u00e9partiteur de charge +label.associated.network.id=ID du r\u00e9seau associ\u00e9 +label.associated.network=R\u00e9seau associ\u00e9 +label.attached.iso=Image ISO attach\u00e9e +label.availability=Disponibilit\u00e9 +label.availability.zone=Zone de disponibilit\u00e9 label.available=Disponible label.available.public.ips=Adresses IP publiques disponibles label.back=Retour label.bandwidth=Bande passante label.basic=Basique label.basic.mode=Mode basique -label.bootable=Amor\u00E7able +label.bootable=Amor\u00e7able label.broadcast.domain.range=Plage du domaine multi-diffusion label.broadcast.domain.type=Type de domaine de multi-diffusion label.broadcast.uri=URI multi-diffusion label.by.account=Par compte -label.by.availability=Par disponibilit\u00E9 +label.by.availability=Par disponibilit\u00e9 label.by.domain=Par domaine label.by.end.date=Par date de fin label.by.level=Par niveau label.by.pod=Par Pod -label.by.role=Par r\u00F4le -label.by.start.date=Par date de d\u00E9but -label.by.state=Par \u00E9tat +label.by.role=Par r\u00f4le +label.by.start.date=Par date de d\u00e9but +label.by.state=Par \u00e9tat +label.bytes.received=Octets re\u00e7us +label.bytes.sent=Octets envoy\u00e9s label.by.traffic.type=Par type de trafic -label.by.type=Par type label.by.type.id=Par type d\\'ID +label.by.type=Par type label.by.zone=Par zone -label.bytes.received=Octets re\u00E7us -label.bytes.sent=Octets envoy\u00E9s label.cancel=Annuler -label.capacity=Capacit\u00E9 +label.capacity=Capacit\u00e9 label.certificate=Certificat label.change.service.offering=Modifier l\\'offre de service label.change.value=Modifier la valeur -label.character=Caract\u00E8re -label.checksum=Somme de contr\u00F4le MD5 +label.character=Caract\u00e8re +label.checksum=Somme de contr\u00f4le MD5 +label.cidr.account=CIDR ou Compte/Groupe de s\u00e9curit\u00e9 label.cidr=CIDR -label.cidr.account=CIDR ou Compte/Groupe de s\u00E9curit\u00E9 label.cidr.list=CIDR Source +label.CIDR.list=Liste CIDR +label.CIDR.of.destination.network=CIDR du r\u00e9seau de destination label.clean.up=Nettoyage label.clear.list=Purger la liste label.close=Fermer label.cloud.console=Console d\\'Administration du Cloud -label.cloud.managed=G\u00E9r\u00E9 par Cloud.com +label.cloud.managed=G\u00e9r\u00e9 par Cloud.com label.cluster=Cluster label.cluster.name=Nom du cluster -label.cluster.type=Type de Cluster label.clusters=Clusters +label.cluster.type=Type de Cluster label.clvm=CLVM label.code=Code -label.community=Communaut\u00E9 -label.compute=Processeur +label.community=Communaut\u00e9 label.compute.and.storage=Calcul et Stockage label.compute.offering=Offre de calcul label.compute.offerings=Offres de calcul +label.compute=Processeur label.configuration=Configuration label.configure=Configurer -label.configure.network.ACLs=Configurer les r\u00E8gles d\\'acc\u00E8s r\u00E9seau ACL +label.configure.network.ACLs=Configurer les r\u00e8gles d\\'acc\u00e8s r\u00e9seau ACL label.configure.vpc=Configurer le VPC -label.confirm.password=Confirmer le mot de passe label.confirmation=Confirmation -label.congratulations=F\u00E9licitations \! +label.confirm.password=Confirmer le mot de passe +label.congratulations=F\u00e9licitations \! label.conserve.mode=Conserver le mode label.console.proxy=Console proxy -label.continue=Continuer label.continue.basic.install=Continuer avec l\\'installation basique -label.corrections.saved=Modifications enregistr\u00E9es +label.continue=Continuer +label.corrections.saved=Modifications enregistr\u00e9es +label.cpu.allocated=CPU allou\u00e9e +label.cpu.allocated.for.VMs=CPU allou\u00e9e aux VMs +label.CPU.cap=Limitation CPU label.cpu=CPU -label.cpu.allocated=CPU allou\u00E9e -label.cpu.allocated.for.VMs=CPU allou\u00E9e aux VMs label.cpu.mhz=CPU (en MHz) -label.cpu.utilized=CPU utilis\u00E9e -label.create.VPN.connection=Cr\u00E9er une connexion VPN -label.create.project=Cr\u00E9er un projet -label.create.template=Cr\u00E9er un mod\u00E8le -label.created=Cr\u00E9\u00E9 -label.created.by.system=Cr\u00E9\u00E9 par le syst\u00E8me +label.cpu.utilized=CPU utilis\u00e9e +label.created.by.system=Cr\u00e9\u00e9 par le syst\u00e8me +label.created=Cr\u00e9\u00e9 +label.create.project=Cr\u00e9er un projet +label.create.template=Cr\u00e9er un mod\u00e8le +label.create.VPN.connection=Cr\u00e9er une connexion VPN label.cross.zones=Multi Zones -label.custom.disk.size=Taille de disque personnalis\u00E9e +label.custom.disk.size=Taille de disque personnalis\u00e9e label.daily=Quotidien -label.data.disk.offering=Offre de disque de donn\u00E9es +label.data.disk.offering=Offre de disque de donn\u00e9es label.date=Date label.day.of.month=Jour du mois label.day.of.week=Jour de la semaine -label.dead.peer.detection=D\u00E9tection de pair mort +label.dead.peer.detection=D\u00e9tection de pair mort label.decline.invitation=Refuser l\\'invitation -label.dedicated=D\u00E9di\u00E9 -label.default=Par d\u00E9faut -label.default.use=Utilisation par d\u00E9faut -label.default.view=Vue par d\u00E9faut -label.delete=Supprimer +label.dedicated=D\u00e9di\u00e9 +label.default=Par d\u00e9faut +label.default.use=Utilisation par d\u00e9faut +label.default.view=Vue par d\u00e9faut label.delete.F5=Supprimer F5 +label.delete.gateway=Supprimer la passerelle label.delete.NetScaler=Supprimer Netscaler -label.delete.NiciraNvp=Supprimer un contr\u00F4leur Nvp +label.delete.NiciraNvp=Supprimer un contr\u00f4leur Nvp +label.delete.project=Supprimer projet label.delete.SRX=Supprimer SRX +label.delete=Supprimer label.delete.VPN.connection=Supprimer la connexion VPN label.delete.VPN.customer.gateway=Supprimer la passerelle VPN client label.delete.VPN.gateway=Supprimer la passerelle VPN -label.delete.gateway=Supprimer la passerelle -label.delete.project=Supprimer projet label.delete.vpn.user=Supprimer l\\'utilisateur VPN -label.deleting.failed=Suppression \u00E9chou\u00E9e +label.deleting.failed=Suppression \u00e9chou\u00e9e label.deleting.processing=Suppression... label.description=Description -label.destination.physical.network.id=Identifiant du r\u00E9seau physique de destination +label.destination.physical.network.id=Identifiant du r\u00e9seau physique de destination label.destination.zone=Zone de destination -label.destroy=D\u00E9truire +label.destroy=D\u00e9truire label.destroy.router=Supprimer le routeur -label.detaching.disk=D\u00E9tacher le disque -label.details=D\u00E9tails -label.device.id=ID du p\u00E9riph\u00E9rique +label.detaching.disk=D\u00e9tacher le disque +label.details=D\u00e9tails +label.device.id=ID du p\u00e9riph\u00e9rique label.devices=Machines label.dhcp=DHCP -label.direct.ips=Adresses IP du r\u00E9seau partag\u00E9 -label.disable.provider=D\u00E9sactiver ce fournisseur -label.disable.vpn=D\u00E9sactiver le VPN -label.disabled=D\u00E9sactiv\u00E9 -label.disabling.vpn.access=D\u00E9sactiver l\\'acc\u00E8s VPN -label.disk.allocated=Disque Allou\u00E9 +label.DHCP.server.type=Serveur DHCP +label.direct.ips=Adresses IP du r\u00e9seau partag\u00e9 +label.disabled=D\u00e9sactiv\u00e9 +label.disable.provider=D\u00e9sactiver ce fournisseur +label.disable.vpn=D\u00e9sactiver le VPN +label.disabling.vpn.access=D\u00e9sactiver l\\'acc\u00e8s VPN +label.disk.allocated=Disque Allou\u00e9 label.disk.offering=Offre de Disque -label.disk.size=Taille du disque label.disk.size.gb=Taille du disque (en Go) +label.disk.size=Taille du disque label.disk.total=Espace disque total label.disk.volume=Volume disque label.display.name=Nom commun -label.display.text=Texte affich\u00E9 -label.dns=DNS +label.display.text=Texte affich\u00e9 label.dns.1=DNS 1 label.dns.2=DNS 2 -label.domain=Domaine +label.dns=DNS +label.DNS.domain.for.guest.networks=Domaine DNS pour les r\u00e9seaux invit\u00e9s label.domain.admin=Administrateur du domaine +label.domain=Domaine label.domain.id=ID du domaine label.domain.name=Nom de domaine label.domain.router=Routeur du domaine label.domain.suffix=Suffixe de domaine DNS (i.e., xyz.com) -label.done=Termin\u00E9 -label.double.quotes.are.not.allowed=Les guillemets ne sont pas autoris\u00E9es -label.download.progress=Progression du t\u00E9l\u00E9chargement -label.drag.new.position=D\u00E9placer sur une autre position +label.done=Termin\u00e9 +label.double.quotes.are.not.allowed=Les guillemets ne sont pas autoris\u00e9es +label.download.progress=Progression du t\u00e9l\u00e9chargement +label.drag.new.position=D\u00e9placer sur une autre position +label.edit.lb.rule=Modifier la r\u00e8gle LB label.edit=Modifier -label.edit.lb.rule=Modifier la r\u00E8gle LB -label.edit.network.details=Modifier les param\u00E8tres r\u00E9seau -label.edit.project.details=Modifier les d\u00E9tails du projet +label.edit.network.details=Modifier les param\u00e8tres r\u00e9seau +label.edit.project.details=Modifier les d\u00e9tails du projet label.edit.tags=Modifier les balises label.edit.traffic.type=Modifier le type de trafic label.edit.vpc=Modifier le VPC -label.egress.rule=R\u00E8gle sortante -label.egress.rules=R\u00E8gles de sortie -label.elastic=\u00C9lastique +label.egress.rule=R\u00e8gle sortante +label.egress.rules=R\u00e8gles de sortie label.elastic.IP=IP extensible -label.elastic.LB=R\u00E9partition de charge extensible +label.elastic.LB=R\u00e9partition de charge extensible +label.elastic=\u00c9lastique label.email=Email label.enable.provider=Activer le fournisseur label.enable.s3=Activer le stockage secondaire de type S3 label.enable.swift=Activer Swift label.enable.vpn=Activer VPN +label.enabling.vpn.access=Activation de l\\'acc\u00e8s VPN label.enabling.vpn=Activation du VPN -label.enabling.vpn.access=Activation de l\\'acc\u00E8s VPN label.end.IP=Fin de plage IP +label.endpoint.or.operation=Terminaison ou Op\u00e9ration label.end.port=Port de fin -label.end.reserved.system.IP=Adresse IP de fin r\u00E9serv\u00E9e Syst\u00E8me +label.end.reserved.system.IP=Adresse IP de fin r\u00e9serv\u00e9e Syst\u00e8me label.end.vlan=VLAN de fin -label.endpoint.or.operation=Terminaison ou Op\u00E9ration label.enter.token=Entrez le jeton unique -label.error=Erreur label.error.code=Code d\\'erreur -label.esx.host=H\u00F4te ESX/ESXi +label.error=Erreur +label.ESP.encryption=Chiffrement ESP +label.ESP.hash=Empreinte ESP +label.ESP.lifetime=Dur\u00e9e de vie ESP (secondes) +label.ESP.policy=Mode ESP +label.esx.host=H\u00f4te ESX/ESXi label.example=Exemple label.f5=F5 -label.failed=\u00C9chou\u00E9 -label.featured=Sponsoris\u00E9 -label.fetch.latest=Rafra\u00EEchir +label.failed=\u00c9chou\u00e9 +label.featured=Sponsoris\u00e9 +label.fetch.latest=Rafra\u00eechir label.filterBy=Filtre label.firewall=Pare-feu -label.first.name=Pr\u00E9nom +label.first.name=Pr\u00e9nom label.format=Format label.friday=Vendredi label.full=Complet label.full.path=Chemin complet label.gateway=Passerelle -label.general.alerts=Alertes g\u00E9n\u00E9rales -label.generating.url=G\u00E9n\u00E9ration de l\\'URL -label.go.step.2=Aller \u00E0 l\\'\u00E9tape 2 -label.go.step.3=Aller \u00E0 l\\'\u00E9tape 3 -label.go.step.4=Aller \u00E0 l\\'\u00E9tape 4 -label.go.step.5=Aller \u00E0 l\\'\u00E9tape 5 +label.general.alerts=Alertes g\u00e9n\u00e9rales +label.generating.url=G\u00e9n\u00e9ration de l\\'URL +label.go.step.2=Aller \u00e0 l\\'\u00e9tape 2 +label.go.step.3=Aller \u00e0 l\\'\u00e9tape 3 +label.go.step.4=Aller \u00e0 l\\'\u00e9tape 4 +label.go.step.5=Aller \u00e0 l\\'\u00e9tape 5 label.group=Groupe label.group.optional=Groupe (optionnel) -label.guest=Invit\u00E9 -label.guest.cidr=CIDR invit\u00E9 -label.guest.end.ip=Adresse IP de fin pour les invit\u00E9s -label.guest.gateway=Passerelle pour les invit\u00E9s -label.guest.ip=Adresse IP des invit\u00E9s -label.guest.ip.range=Plage d\\'adresses IP des invit\u00E9s -label.guest.netmask=Masque de r\u00E9seau des invit\u00E9s -label.guest.networks=R\u00E9seaux d\\'invit\u00E9 -label.guest.start.ip=Adresse IP de d\u00E9but pour les invit\u00E9s -label.guest.traffic=Trafic invit\u00E9 -label.guest.type=Type d\\'invit\u00E9 -label.ha.enabled=Haute disponibilit\u00E9 activ\u00E9e +label.guest.cidr=CIDR invit\u00e9 +label.guest.end.ip=Adresse IP de fin pour les invit\u00e9s +label.guest.gateway=Passerelle pour les invit\u00e9s +label.guest=Invit\u00e9 +label.guest.ip=Adresse IP des invit\u00e9s +label.guest.ip.range=Plage d\\'adresses IP des invit\u00e9s +label.guest.netmask=Masque de r\u00e9seau des invit\u00e9s +label.guest.networks=R\u00e9seaux d\\'invit\u00e9 +label.guest.start.ip=Adresse IP de d\u00e9but pour les invit\u00e9s +label.guest.traffic=Trafic invit\u00e9 +label.guest.type=Type d\\'invit\u00e9 +label.ha.enabled=Haute disponibilit\u00e9 activ\u00e9e label.help=Aide -label.hide.ingress.rule=Cacher la r\u00E8gle d\\'entr\u00E9e +label.hide.ingress.rule=Cacher la r\u00e8gle d\\'entr\u00e9e label.hints=Astuces -label.host=H\u00F4te -label.host.MAC=Adresse MAC h\u00F4te -label.host.alerts=Alertes des h\u00F4tes -label.host.name=Nom d\\'h\u00F4te -label.host.tags=\u00C9tiquettes d\\'h\u00F4te -label.hosts=H\u00F4tes +label.host.alerts=Alertes des h\u00f4tes +label.host=H\u00f4te +label.host.MAC=Adresse MAC h\u00f4te +label.host.name=Nom d\\'h\u00f4te +label.hosts=H\u00f4tes +label.host.tags=\u00c9tiquettes d\\'h\u00f4te label.hourly=Chaque heure -label.hypervisor=Hyperviseur label.hypervisor.capabilities=Fonctions hyperviseur +label.hypervisor=Hyperviseur label.hypervisor.type=Type d\\'hyperviseur label.hypervisor.version=Version hyperviseur label.id=ID +label.IKE.DH=DH IKE +label.IKE.encryption=Chiffrement IKE +label.IKE.hash=Empreinte IKE +label.IKE.lifetime=Dur\u00e9e de vie IKE (secondes) +label.IKE.policy=Mode IKE label.info=Information -label.ingress.rule=R\u00E8gle d\\'entr\u00E9e -label.initiated.by=Initi\u00E9 par +label.ingress.rule=R\u00e8gle d\\'entr\u00e9e +label.initiated.by=Initi\u00e9 par label.installWizard.addClusterIntro.subtitle=Qu\\'est ce qu\\'un cluster ? label.installWizard.addClusterIntro.title=Ajoutons un cluster -label.installWizard.addHostIntro.subtitle=Qu\\'est ce qu\\'un h\u00F4te ? -label.installWizard.addHostIntro.title=Ajoutons un h\u00F4te +label.installWizard.addHostIntro.subtitle=Qu\\'est ce qu\\'un h\u00f4te ? +label.installWizard.addHostIntro.title=Ajoutons un h\u00f4te label.installWizard.addPodIntro.subtitle=Qu\\'est ce qu\\'un pod ? label.installWizard.addPodIntro.title=Ajoutons un pod label.installWizard.addPrimaryStorageIntro.subtitle=Qu\\'est ce que le stockage principal ? label.installWizard.addPrimaryStorageIntro.title=Ajoutons du stockage principal label.installWizard.addSecondaryStorageIntro.subtitle=Qu\\'est ce que le stockage secondaire ? label.installWizard.addSecondaryStorageIntro.title=Ajoutons du stockage secondaire -label.installWizard.addZone.title=Ajouter une zone label.installWizard.addZoneIntro.subtitle=Qu\\'est ce qu\\'une zone ? label.installWizard.addZoneIntro.title=Ajoutons une zone -label.installWizard.click.launch=Appuyer sur le bouton d\u00E9marrer. -label.installWizard.subtitle=Ce tutoriel vous aidera \u00E0 configurer votre installation CloudStack&\#8482; +label.installWizard.addZone.title=Ajouter une zone +label.installWizard.click.launch=Appuyer sur le bouton d\u00e9marrer. +label.installWizard.subtitle=Ce tutoriel vous aidera \u00e0 configurer votre installation CloudStack&\#8482; label.installWizard.title=Bonjour et bienvenue dans CloudStack&\#8482; label.instance=Instance label.instance.limits=Limites des instances @@ -594,105 +576,108 @@ label.internal.dns.1=DNS interne 1 label.internal.dns.2=DNS interne 2 label.internal.name=Nom interne label.interval.type=Type d\\'intervalle -label.introduction.to.cloudstack=Introduction \u00E0 CloudStack&\#8482; +label.introduction.to.cloudstack=Introduction \u00e0 CloudStack&\#8482; label.invalid.integer=Nombre entier invalide label.invalid.number=Nombre invalide label.invitations=Invitations +label.invited.accounts=Comptes invit\u00e9s label.invite=Inviter label.invite.to=Inviter sur -label.invited.accounts=Comptes invit\u00E9s -label.ip=IP label.ip.address=Adresse IP +label.ipaddress=Adresse IP label.ip.allocations=Allocations de IPs +label.ip=IP label.ip.limits=Limite de IPs publiques label.ip.or.fqdn=IP ou FQDN label.ip.range=Plage IP label.ip.ranges=Plages IP -label.ipaddress=Adresse IP +label.IPsec.preshared.key=Cl\u00e9 partag\u00e9e IPsec label.ips=IPs -label.is.default=Est par d\u00E9faut -label.is.redundant.router=Redondant -label.is.shared=Est partag\u00E9 -label.is.system=Est Syst\u00E8me label.iscsi=iSCSI +label.is.default=Est par d\u00e9faut +label.iso.boot=D\u00e9marrage par ISO label.iso=ISO -label.iso.boot=D\u00E9marrage par ISO -label.isolated.networks=R\u00E9seaux isol\u00E9s -label.isolation.method=M\u00E9thode de s\u00E9paration +label.isolated.networks=R\u00e9seaux isol\u00e9s +label.isolation.method=M\u00e9thode de s\u00e9paration label.isolation.mode=Mode d\\'isolation label.isolation.uri=URI d\\'isolation -label.item.listing=Liste des \u00E9l\u00E9ments +label.is.redundant.router=Redondant +label.is.shared=Est partag\u00e9 +label.is.system=Est Syst\u00e8me +label.item.listing=Liste des \u00e9l\u00e9ments label.keep=Conserver -label.key=Clef label.keyboard.type=Type de clavier -label.kvm.traffic.label=Libell\u00E9 pour le trafic KVM -label.label=Libell\u00E9 -label.lang.brportugese=Portuguais Br\u00E9sil +label.key=Clef +label.kvm.traffic.label=Libell\u00e9 pour le trafic KVM +label.label=Libell\u00e9 +label.lang.brportugese=Portuguais Br\u00e9sil label.lang.catalan=Catalan -label.lang.chinese=Chinois (simplifi\u00E9) +label.lang.chinese=Chinois (simplifi\u00e9) label.lang.english=Anglais -label.lang.french=Fran\u00E7ais +label.lang.french=Fran\u00e7ais label.lang.german=Allemand label.lang.italian=Italien label.lang.japanese=Japonais -label.lang.korean=Cor\u00E9en -label.lang.norwegian=Norv\u00E9gien +label.lang.korean=Cor\u00e9en +label.lang.norwegian=Norv\u00e9gien label.lang.russian=Russe label.lang.spanish=Espagnol -label.last.disconnected=Derni\u00E8re D\u00E9connexion +label.last.disconnected=Derni\u00e8re D\u00e9connexion label.last.name=Nom -label.latest.events=Derniers \u00E9v\u00E9nements -label.launch=D\u00E9marrer -label.launch.vm=D\u00E9marrer VM -label.launch.zone=D\u00E9marrer la zone +label.latest.events=Derniers \u00e9v\u00e9nements +label.launch=D\u00e9marrer +label.launch.vm=D\u00e9marrer VM +label.launch.zone=D\u00e9marrer la zone +label.LB.isolation=R\u00e9partition de charge isol\u00e9e label.least.connections=Le moins de connexions label.level=Niveau label.linklocal.ip=Adresse IP de lien local -label.load.balancer=R\u00E9partiteur de charge -label.load.balancing=R\u00E9partition de charge -label.load.balancing.policies=R\u00E8gles de r\u00E9partition de charge +label.load.balancer=R\u00e9partiteur de charge +label.load.balancing.policies=R\u00e8gles de r\u00e9partition de charge +label.load.balancing=R\u00e9partition de charge label.loading=Chargement en cours label.local=Local +label.local.storage.enabled=Stockage local activ\u00e9 label.local.storage=Stockage local -label.local.storage.enabled=Stockage local activ\u00E9 label.login=Connexion -label.logout=D\u00E9connexion +label.logout=D\u00e9connexion label.lun=LUN -label.make.project.owner=Devenir propri\u00E9taire du projet -label.manage=G\u00E9r\u00E9 -label.manage.resources=G\u00E9rer les ressources +label.LUN.number=N\u00b0 LUN +label.make.project.owner=Devenir propri\u00e9taire du projet +label.manage=G\u00e9r\u00e9 label.management=Administration label.management.ips=Adresses IP de gestion -label.max.guest.limit=Nombre maximum d\\'invit\u00E9s -label.max.networks=R\u00E9seaux Max. +label.manage.resources=G\u00e9rer les ressources +label.max.guest.limit=Nombre maximum d\\'invit\u00e9s +label.maximum=Maximum +label.max.networks=R\u00e9seaux Max. label.max.public.ips=Max. IP publiques -label.max.snapshots=Max instantan\u00E9es -label.max.templates=Max. mod\u00E8les +label.max.snapshots=Max instantan\u00e9es +label.max.templates=Max. mod\u00e8les label.max.vms=Max. VMs utilisateur label.max.volumes=Max. volumes label.max.vpcs=Max. VPCs -label.maximum=Maximum label.may.continue=Vous pouvez continuer. -label.memory=M\u00E9moire (en Mo) -label.memory.allocated=M\u00E9moire allou\u00E9e -label.memory.mb=M\u00E9moire (en MB) -label.memory.total=M\u00E9moire totale -label.memory.used=M\u00E9moire utilis\u00E9e +label.memory.allocated=M\u00e9moire allou\u00e9e +label.memory.mb=M\u00e9moire (en MB) +label.memory=M\u00e9moire (en Mo) +label.memory.total=M\u00e9moire totale +label.memory.used=M\u00e9moire utilis\u00e9e label.menu.accounts=Comptes label.menu.alerts=Alertes label.menu.all.accounts=Tous les comptes label.menu.all.instances=Toutes les instances -label.menu.community.isos=ISO de la communaut\u00E9 -label.menu.community.templates=Mod\u00E8les de la communaut\u00E9 +label.menu.community.isos=ISO de la communaut\u00e9 +label.menu.community.templates=Mod\u00e8les de la communaut\u00e9 label.menu.configuration=Configuration label.menu.dashboard=Tableau de bord -label.menu.destroyed.instances=Instances d\u00E9truites +label.menu.destroyed.instances=Instances d\u00e9truites label.menu.disk.offerings=Offres de disque label.menu.domains=Domaines -label.menu.events=\u00C9v\u00E9nements -label.menu.featured.isos=ISOs Sponsoris\u00E9es -label.menu.featured.templates=Mod\u00E8les sponsoris\u00E9s -label.menu.global.settings=Param\u00E8tres globaux +label.menu.events=\u00c9v\u00e9nements +label.menu.featured.isos=ISOs Sponsoris\u00e9es +label.menu.featured.templates=Mod\u00e8les sponsoris\u00e9s +label.menu.global.settings=Param\u00e8tres globaux label.menu.infrastructure=Infrastructure label.menu.instances=Instances label.menu.ipaddresses=Adresses IP @@ -700,72 +685,72 @@ label.menu.isos=ISOs label.menu.my.accounts=Mes comptes label.menu.my.instances=Mes instances label.menu.my.isos=Mes ISOs -label.menu.my.templates=Mes mod\u00E8les -label.menu.network=R\u00E9seau -label.menu.network.offerings=Offres de Service R\u00E9seau +label.menu.my.templates=Mes mod\u00e8les +label.menu.network.offerings=Offres de Service R\u00e9seau +label.menu.network=R\u00e9seau label.menu.physical.resources=Ressources physiques label.menu.running.instances=Instances actives -label.menu.security.groups=Groupes de s\u00E9curit\u00E9 +label.menu.security.groups=Groupes de s\u00e9curit\u00e9 label.menu.service.offerings=Offres de Service -label.menu.snapshots=Instantan\u00E9s -label.menu.stopped.instances=Instances Arr\u00EAt\u00E9es +label.menu.snapshots=Instantan\u00e9s +label.menu.stopped.instances=Instances Arr\u00eat\u00e9es label.menu.storage=Stockage -label.menu.system=Syst\u00E8me -label.menu.system.service.offerings=Offres syst\u00E8me -label.menu.system.vms=\ VMs Syst\u00E8mes -label.menu.templates=Mod\u00E8les +label.menu.system.service.offerings=Offres syst\u00e8me +label.menu.system=Syst\u00e8me +label.menu.system.vms=\ VMs Syst\u00e8mes +label.menu.templates=Mod\u00e8les label.menu.virtual.appliances=Appliances Virtuelles label.menu.virtual.resources=Ressources Virtuelles label.menu.volumes=Volumes +label.migrate.instance.to.host=Migration de l\\'instance sur un autre h\u00f4te label.migrate.instance.to=Migrer l\\'instance vers -label.migrate.instance.to.host=Migration de l\\'instance sur un autre h\u00F4te label.migrate.instance.to.ps=Migration de l\\'instance sur un autre stockage principal label.migrate.router.to=Migrer le routeur vers -label.migrate.systemvm.to=Migrer la VM syst\u00E8me vers -label.migrate.to.host=Migrer vers un h\u00F4te +label.migrate.systemvm.to=Migrer la VM syst\u00e8me vers +label.migrate.to.host=Migrer vers un h\u00f4te label.migrate.to.storage=Migrer vers un stockage label.migrate.volume=Migration du volume vers un autre stockage principal label.minimum=Minimum label.minute.past.hour=minute(s) label.monday=Lundi label.monthly=Mensuel -label.more.templates=Plus de mod\u00E8les +label.more.templates=Plus de mod\u00e8les label.move.down.row=Descendre d\\'un cran -label.move.to.bottom=D\u00E9placer en bas +label.move.to.bottom=D\u00e9placer en bas label.move.to.top=Placer au dessus label.move.up.row=Monter d\\'un cran label.my.account=Mon compte -label.my.network=Mon r\u00E9seau -label.my.templates=Mes mod\u00E8les +label.my.network=Mon r\u00e9seau +label.my.templates=Mes mod\u00e8les label.name=Nom label.name.optional=Nom (optionnel) label.nat.port.range=Plage de port NAT +label.netmask=Masque de r\u00e9seau label.netScaler=NetScaler -label.netmask=Masque de r\u00E9seau -label.network=R\u00E9seau -label.network.ACL=R\u00E8gles d\\'acc\u00E8s r\u00E9seau ACL -label.network.ACL.total=Total R\u00E8gles d\\'acc\u00E8s r\u00E9seau -label.network.ACLs=R\u00E8gles d\\'acc\u00E8s r\u00E9seau -label.network.desc=Description r\u00E9seau -label.network.device=\u00C9quipement R\u00E9seau -label.network.device.type=Type d\\'\u00E9quipement r\u00E9seau +label.network.ACL=R\u00e8gles d\\'acc\u00e8s r\u00e9seau ACL +label.network.ACLs=R\u00e8gles d\\'acc\u00e8s r\u00e9seau +label.network.ACL.total=Total R\u00e8gles d\\'acc\u00e8s r\u00e9seau +label.network.desc=Description r\u00e9seau +label.network.device.type=Type d\\'\u00e9quipement r\u00e9seau +label.network.device=\u00c9quipement R\u00e9seau label.network.domain=Nom de domaine -label.network.domain.text=Domaine r\u00E9seau -label.network.id=ID r\u00E9seau -label.network.label.display.for.blank.value=Utiliser la passerelle par d\u00E9faut -label.network.name=Nom du r\u00E9seau -label.network.offering=Offre de Service R\u00E9seau -label.network.offering.display.text=Texte affich\u00E9 d\\'Offre de R\u00E9seau -label.network.offering.id=ID de l\\'Offre de Service R\u00E9seau -label.network.offering.name=Nom de l\\'Offre de Service R\u00E9seau -label.network.rate=D\u00E9bit R\u00E9seau -label.network.rate.megabytes=D\u00E9bit r\u00E9seau (Mo/s) -label.network.read=Lecture r\u00E9seau -label.network.service.providers=Fournisseurs de service r\u00E9seau -label.network.type=Type de r\u00E9seau -label.network.write=\u00C9criture r\u00E9seau -label.networking.and.security=R\u00E9seau et s\u00E9curit\u00E9 -label.networks=R\u00E9seaux +label.network.domain.text=Domaine r\u00e9seau +label.network.id=ID r\u00e9seau +label.networking.and.security=R\u00e9seau et s\u00e9curit\u00e9 +label.network.label.display.for.blank.value=Utiliser la passerelle par d\u00e9faut +label.network.name=Nom du r\u00e9seau +label.network.offering.display.text=Texte affich\u00e9 d\\'Offre de R\u00e9seau +label.network.offering.id=ID de l\\'Offre de Service R\u00e9seau +label.network.offering.name=Nom de l\\'Offre de Service R\u00e9seau +label.network.offering=Offre de Service R\u00e9seau +label.network.rate=D\u00e9bit R\u00e9seau +label.network.rate.megabytes=D\u00e9bit r\u00e9seau (Mo/s) +label.network.read=Lecture r\u00e9seau +label.network=R\u00e9seau +label.network.service.providers=Fournisseurs de service r\u00e9seau +label.networks=R\u00e9seaux +label.network.type=Type de r\u00e9seau +label.network.write=\u00c9criture r\u00e9seau label.new=Nouveau label.new.password=Nouveau mot de passe label.new.project=Nouveau projet @@ -775,220 +760,228 @@ label.nexusVswitch=Nexus 1000v label.nfs=NFS label.nfs.server=Serveur NFS label.nfs.storage=Stockage NFS -label.nic.adapter.type=Type de carte r\u00E9seau -label.nicira.controller.address=Adresse du contr\u00F4leur +label.nic.adapter.type=Type de carte r\u00e9seau +label.nicira.controller.address=Adresse du contr\u00f4leur label.nicira.l3gatewayserviceuuid=Uuid du service passerelle L3 label.nicira.transportzoneuuid=Uuid de la Zone Transport label.nics=Cartes NIC -label.no=Non label.no.actions=Aucune action disponible -label.no.alerts=Aucune alerte r\u00E9cente -label.no.data=Aucune donn\u00E9e -label.no.errors=Aucune erreur r\u00E9cente +label.no.alerts=Aucune alerte r\u00e9cente +label.no.data=Aucune donn\u00e9e +label.no.errors=Aucune erreur r\u00e9cente label.no.isos=Aucun ISOs disponible -label.no.items=Aucun \u00E9l\u00E9ment disponible -label.no.security.groups=Aucun groupe de s\u00E9curit\u00E9 disponible -label.no.thanks=Non merci +label.no.items=Aucun \u00e9l\u00e9ment disponible label.none=Aucun +label.no=Non +label.no.security.groups=Aucun groupe de s\u00e9curit\u00e9 disponible label.not.found=Introuvable +label.no.thanks=Non merci label.notifications=Messages -label.num.cpu.cores=Nombre de c\u0153urs label.number.of.clusters=Nombre de clusters -label.number.of.hosts=Nombre d\\'H\u00F4tes +label.number.of.hosts=Nombre d\\'H\u00f4tes label.number.of.pods=Nombre de Pods -label.number.of.system.vms=Nombre de VM Syst\u00E8me +label.number.of.system.vms=Nombre de VM Syst\u00e8me label.number.of.virtual.routers=Nombre de routeurs virtuels label.number.of.zones=Nombre de zones +label.num.cpu.cores=Nombre de c\u0153urs label.numretries=Nombre de tentatives label.ocfs2=OCFS2 -label.offer.ha=Offrir la haute disponibilit\u00E9 +label.offer.ha=Offrir la haute disponibilit\u00e9 label.ok=OK label.optional=Facultatif label.order=Ordre -label.os.preference=Pr\u00E9f\u00E9rence OS +label.os.preference=Pr\u00e9f\u00e9rence OS label.os.type=Type du OS -label.owned.public.ips=Adresses IP Publiques d\u00E9tenues -label.owner.account=Propri\u00E9taire -label.owner.domain=Propri\u00E9taire +label.owned.public.ips=Adresses IP Publiques d\u00e9tenues +label.owner.account=Propri\u00e9taire +label.owner.domain=Propri\u00e9taire label.parent.domain=Parent du Domaine +label.password.enabled=Mot de passe activ\u00e9 label.password=Mot de passe -label.password.enabled=Mot de passe activ\u00E9 label.path=Chemin -label.perfect.forward.secrecy=Confidentialit\u00E9 persistante -label.physical.network=R\u00E9seau physique -label.physical.network.ID=Identifiant du r\u00E9seau physique +label.perfect.forward.secrecy=Confidentialit\u00e9 persistante +label.physical.network.ID=Identifiant du r\u00e9seau physique +label.physical.network=R\u00e9seau physique +label.PING.CIFS.password=Mot de passe CIFS PING +label.PING.CIFS.username=Identifiant CIFS PING +label.PING.dir=R\u00e9pertoire PING +label.PING.storage.IP=IP stockage PING label.please.specify.netscaler.info=Renseigner les informations sur le Netscaler label.please.wait=Patientez s\\'il vous plait -label.pod=Pod label.pod.name=Nom du pod +label.pod=Pod label.pods=Pods +label.port.forwarding.policies=R\u00e8gles de transfert de port label.port.forwarding=Redirection de port -label.port.forwarding.policies=R\u00E8gles de transfert de port label.port.range=Plage de ports -label.prev=Pr\u00E9c\u00E9dent +label.PreSetup=PreSetup label.previous=Retour -label.primary.allocated=Stockage principal allou\u00E9 -label.primary.network=R\u00E9seau principal -label.primary.storage=Premier stockage +label.prev=Pr\u00e9c\u00e9dent +label.primary.allocated=Stockage principal allou\u00e9 +label.primary.network=R\u00e9seau principal label.primary.storage.count=Groupes de stockage principal -label.primary.used=Stockage principal utilis\u00E9 -label.private.Gateway=Passerelle priv\u00E9e -label.private.interface=Interface priv\u00E9e -label.private.ip=Adresse IP Priv\u00E9e -label.private.ip.range=Plage d\\'adresses IP Priv\u00E9es -label.private.ips=Adresses IP Priv\u00E9es -label.private.network=R\u00E9seau priv\u00E9 -label.private.port=Port priv\u00E9 -label.private.zone=Zone Priv\u00E9e -label.privatekey=Cl\u00E9 priv\u00E9e PKCS\#8 -label.project=Projet +label.primary.storage=Premier stockage +label.primary.used=Stockage principal utilis\u00e9 +label.private.Gateway=Passerelle priv\u00e9e +label.private.interface=Interface priv\u00e9e +label.private.ip=Adresse IP Priv\u00e9e +label.private.ip.range=Plage d\\'adresses IP Priv\u00e9es +label.private.ips=Adresses IP Priv\u00e9es +label.privatekey=Cl\u00e9 priv\u00e9e PKCS\#8 +label.private.network=R\u00e9seau priv\u00e9 +label.private.port=Port priv\u00e9 +label.private.zone=Zone Priv\u00e9e label.project.dashboard=Tableau de bord projet label.project.id=ID projet label.project.invite=Inviter sur le projet label.project.name=Nom du projet -label.project.view=Vue projet +label.project=Projet label.projects=Projets +label.project.view=Vue projet label.protocol=Protocole label.providers=Fournisseurs -label.public=Publique label.public.interface=Interface publique label.public.ip=Adresse IP publique label.public.ips=Adresses IP publiques -label.public.network=R\u00E9seau public +label.public.network=R\u00e9seau public label.public.port=Port public +label.public=Publique label.public.traffic=Trafic public label.public.zone=Zone publique -label.purpose=R\u00F4le -label.quickview=Aper\u00E7u -label.reboot=Red\u00E9marrer -label.recent.errors=Erreurs r\u00E9centes -label.redundant.router=Routeur redondant +label.purpose=R\u00f4le +label.Pxe.server.type=Serveur PXE +label.quickview=Aper\u00e7u +label.reboot=Red\u00e9marrer +label.recent.errors=Erreurs r\u00e9centes label.redundant.router.capability=Router redondant -label.redundant.state=\u00C9tat de la redondance +label.redundant.router=Routeur redondant +label.redundant.state=\u00c9tat de la redondance label.refresh=Actualiser label.related=Connexes label.remind.later=Rappeler moi plus tard -label.remove.ACL=Supprimer une r\u00E8gle ACL -label.remove.egress.rule=Supprimer la r\u00E8gle sortante -label.remove.from.load.balancer=Supprimer l\\'instance du r\u00E9partiteur de charge -label.remove.ingress.rule=Supprimer la r\u00E8gle entrante +label.remove.ACL=Supprimer une r\u00e8gle ACL +label.remove.egress.rule=Supprimer la r\u00e8gle sortante +label.remove.from.load.balancer=Supprimer l\\'instance du r\u00e9partiteur de charge +label.remove.ingress.rule=Supprimer la r\u00e8gle entrante label.remove.ip.range=Supprimer la plage IP -label.remove.pf=Supprimer la r\u00E8gle de transfert de port +label.remove.pf=Supprimer la r\u00e8gle de transfert de port label.remove.project.account=Supprimer le compte projet -label.remove.rule=Supprimer la r\u00E8gle +label.remove.rule=Supprimer la r\u00e8gle label.remove.static.nat.rule=Supprimer le NAT statique label.remove.static.route=Supprimer une route statique label.remove.tier=Supprimer le tiers -label.remove.vm.from.lb=Supprimer la VM de la r\u00E8gle de r\u00E9partition de charge +label.remove.vm.from.lb=Supprimer la VM de la r\u00e8gle de r\u00e9partition de charge label.remove.vpc=Supprimer le VPC label.removing=Suppression label.removing.user=Retrait de l\\'utilisateur label.required=Requis -label.reserved.system.gateway=Passerelle r\u00E9serv\u00E9e Syst\u00E8me -label.reserved.system.ip=Adresse IP Syst\u00E8me r\u00E9serv\u00E9e -label.reserved.system.netmask=Masque de sous-r\u00E9seau r\u00E9serv\u00E9 Syst\u00E8me -label.reset.VPN.connection=R\u00E9-initialiser la connexion VPN +label.reserved.system.gateway=Passerelle r\u00e9serv\u00e9e Syst\u00e8me +label.reserved.system.ip=Adresse IP Syst\u00e8me r\u00e9serv\u00e9e +label.reserved.system.netmask=Masque de sous-r\u00e9seau r\u00e9serv\u00e9 Syst\u00e8me +label.reset.VPN.connection=R\u00e9-initialiser la connexion VPN label.resize.new.offering.id=Nouvelle Offre label.resize.new.size=Nouvelle Taille (Go) -label.resize.shrink.ok=R\u00E9duction OK -label.resource=Ressource +label.resize.shrink.ok=R\u00e9duction OK label.resource.limits=Limite des ressources -label.resource.state=\u00C9tat des ressources +label.resource=Ressource label.resources=Ressources -label.restart.network=Red\u00E9marrage du r\u00E9seau -label.restart.required=Red\u00E9marrage n\u00E9cessaire -label.restart.vpc=Red\u00E9marrer le VPC +label.resource.state=\u00c9tat des ressources +label.restart.network=Red\u00e9marrage du r\u00e9seau +label.restart.required=Red\u00e9marrage n\u00e9cessaire +label.restart.vpc=Red\u00e9marrer le VPC label.restore=Restaurer label.review=Revoir -label.revoke.project.invite=R\u00E9voquer l\\'invitation -label.role=R\u00F4le -label.root.disk.controller=Contr\u00F4leur de disque principal +label.revoke.project.invite=R\u00e9voquer l\\'invitation +label.role=R\u00f4le +label.root.disk.controller=Contr\u00f4leur de disque principal label.root.disk.offering=Offre de disque racine -label.round.robin=Al\u00E9atoire -label.rules=R\u00E8gles +label.round.robin=Al\u00e9atoire +label.rules=R\u00e8gles label.running.vms=VMs actives -label.s3.access_key=Cl\u00E9 d\\'Acc\u00E8s +label.s3.access_key=Cl\u00e9 d\\'Acc\u00e8s label.s3.bucket=Seau -label.s3.connection_timeout=D\u00E9lai d\\'expiration de connexion +label.s3.connection_timeout=D\u00e9lai d\\'expiration de connexion label.s3.endpoint=Terminaison label.s3.max_error_retry=Nombre d\\'essai en erreur max. -label.s3.secret_key=Cl\u00E9 Priv\u00E9e -label.s3.socket_timeout=D\u00E9lai d\\'expiration de la socket +label.s3.secret_key=Cl\u00e9 Priv\u00e9e +label.s3.socket_timeout=D\u00e9lai d\\'expiration de la socket label.s3.use_https=Utiliser HTTPS label.saturday=Samedi -label.save=Sauvegarder label.save.and.continue=Enregistrer et continuer +label.save=Sauvegarder label.saving.processing=Sauvegarde en cours... -label.scope=Port\u00E9e +label.scope=Port\u00e9e label.search=Rechercher -label.secondary.storage=Stockage secondaire label.secondary.storage.count=Groupes de stockage secondaire +label.secondary.storage=Stockage secondaire label.secondary.storage.vm=VM stockage secondaire -label.secondary.used=Stockage secondaire utilis\u00E9 -label.secret.key=Cl\u00E9 priv\u00E9e -label.security.group=Groupe de s\u00E9curit\u00E9 -label.security.group.name=Nom du groupe de s\u00E9curit\u00E9 -label.security.groups=Groupes de s\u00E9curit\u00E9 -label.security.groups.enabled=Groupes de s\u00E9curit\u00E9 Activ\u00E9s -label.select=S\u00E9lectionner -label.select-view=S\u00E9lectionner la vue -label.select.a.template=S\u00E9lectionner un mod\u00E8le -label.select.a.zone=S\u00E9lectionner une zone -label.select.instance=S\u00E9lectionner une instance -label.select.instance.to.attach.volume.to=S\u00E9lectionner l\\'instance \u00E0 laquelle rattacher ce volume -label.select.iso.or.template=S\u00E9lectionner un ISO ou un mod\u00E8le -label.select.offering=S\u00E9lectionner une offre -label.select.project=S\u00E9lectionner un projet -label.select.tier=S\u00E9lectionner le tiers -label.select.vm.for.static.nat=S\u00E9lectionner une VM pour le NAT statique -label.sent=Envoy\u00E9 +label.secondary.used=Stockage secondaire utilis\u00e9 +label.secret.key=Cl\u00e9 priv\u00e9e +label.security.group=Groupe de s\u00e9curit\u00e9 +label.security.group.name=Nom du groupe de s\u00e9curit\u00e9 +label.security.groups.enabled=Groupes de s\u00e9curit\u00e9 Activ\u00e9s +label.security.groups=Groupes de s\u00e9curit\u00e9 +label.select.a.template=S\u00e9lectionner un mod\u00e8le +label.select.a.zone=S\u00e9lectionner une zone +label.select.instance=S\u00e9lectionner une instance +label.select.instance.to.attach.volume.to=S\u00e9lectionner l\\'instance \u00e0 laquelle rattacher ce volume +label.select.iso.or.template=S\u00e9lectionner un ISO ou un mod\u00e8le +label.select.offering=S\u00e9lectionner une offre +label.select.project=S\u00e9lectionner un projet +label.select=S\u00e9lectionner +label.select.tier=S\u00e9lectionner le tiers +label.select-view=S\u00e9lectionner la vue +label.select.vm.for.static.nat=S\u00e9lectionner une VM pour le NAT statique +label.sent=Envoy\u00e9 label.server=Serveur label.service.capabilities=Fonctions disponibles label.service.offering=Offre de Service -label.session.expired=Session expir\u00E9e -label.set.up.zone.type=Configurer le type de zone +label.session.expired=Session expir\u00e9e label.setup=Configuration -label.setup.network=Configurer le r\u00E9seau +label.setup.network=Configurer le r\u00e9seau label.setup.zone=Configurer la zone +label.set.up.zone.type=Configurer le type de zone label.shared=En partage -label.show.ingress.rule=Montrer la r\u00E8gle d\\'entr\u00E9e -label.shutdown.provider=\u00C9teindre ce fournisseur -label.site.to.site.VPN=VPN Site-\u00E0-Site +label.SharedMountPoint=Point de montage partag\u00e9 +label.show.ingress.rule=Montrer la r\u00e8gle d\\'entr\u00e9e +label.shutdown.provider=\u00c9teindre ce fournisseur +label.site.to.site.VPN=VPN Site-\u00e0-Site label.size=Taille -label.skip.guide=J\\'ai d\u00E9j\u00E0 utilis\u00E9 CloudStack avant, passer ce tutoriel -label.snapshot=Instantan\u00E9 -label.snapshot.limits=Limites d\\'instantan\u00E9s -label.snapshot.name=Nom Instantan\u00E9 -label.snapshot.s=Instantan\u00E9(s) -label.snapshot.schedule=Configurer un instantan\u00E9 r\u00E9current -label.snapshots=Instantan\u00E9s -label.source=Origine +label.skip.guide=J\\'ai d\u00e9j\u00e0 utilis\u00e9 CloudStack avant, passer ce tutoriel +label.snapshot=Instantan\u00e9 +label.snapshot.limits=Limites d\\'instantan\u00e9s +label.snapshot.name=Nom Instantan\u00e9 +label.snapshot.schedule=Configurer un instantan\u00e9 r\u00e9current +label.snapshot.s=Instantan\u00e9(s) +label.snapshots=Instantan\u00e9s label.source.nat=NAT Source -label.specify.IP.ranges=Sp\u00E9cifier des plages IP -label.specify.vlan=Pr\u00E9ciser le VLAN +label.source=Origine +label.specify.IP.ranges=Sp\u00e9cifier des plages IP +label.specify.vlan=Pr\u00e9ciser le VLAN +label.SR.name=Nom du point de montage label.srx=SRX -label.start.IP=Plage de d\u00E9but IP -label.start.port=Port de d\u00E9but -label.start.reserved.system.IP=Adresse IP de d\u00E9but r\u00E9serv\u00E9e Syst\u00E8me -label.start.vlan=VLAN de d\u00E9part -label.state=\u00C9tat +label.start.IP=Plage de d\u00e9but IP +label.start.port=Port de d\u00e9but +label.start.reserved.system.IP=Adresse IP de d\u00e9but r\u00e9serv\u00e9e Syst\u00e8me +label.start.vlan=VLAN de d\u00e9part +label.state=\u00c9tat +label.static.nat.enabled=NAT statique activ\u00e9 label.static.nat=NAT Statique -label.static.nat.enabled=NAT statique activ\u00E9 label.static.nat.to=NAT Statique vers -label.static.nat.vm.details=D\u00E9tails des NAT statique VM +label.static.nat.vm.details=D\u00e9tails des NAT statique VM label.statistics=Statistiques label.status=Statut -label.step.1=\u00C9tape 1 -label.step.1.title=\u00C9tape 1 \: S\u00E9lectionnez un mod\u00E8le -label.step.2=\u00C9tape 2 -label.step.2.title=\u00C9tape 2 \: Offre de Service -label.step.3=\u00C9tape 3 -label.step.3.title=\u00C9tape 3 \: S\u00E9lectionnez une offre de service -label.step.4=\u00C9tape 4 -label.step.4.title=\u00C9tape 4 \: R\u00E9seau -label.step.5=\u00C9tape 5 -label.step.5.title=\u00C9tape 5 \: V\u00E9rification -label.stickiness=Fid\u00E9lit\u00E9 +label.step.1.title=\u00c9tape 1 \: S\u00e9lectionnez un mod\u00e8le +label.step.1=\u00c9tape 1 +label.step.2.title=\u00c9tape 2 \: Offre de Service +label.step.2=\u00c9tape 2 +label.step.3.title=\u00c9tape 3 \: S\u00e9lectionnez une offre de service +label.step.3=\u00c9tape 3 +label.step.4.title=\u00c9tape 4 \: R\u00e9seau +label.step.4=\u00c9tape 4 +label.step.5.title=\u00c9tape 5 \: V\u00e9rification +label.step.5=\u00c9tape 5 +label.stickiness=Fid\u00e9lit\u00e9 label.sticky.cookie-name=Nom du cookie label.sticky.domain=Domaine label.sticky.expire=Expiration @@ -997,127 +990,134 @@ label.sticky.indirect=Indirect label.sticky.length=Longueur label.sticky.mode=Mode label.sticky.nocache=Pas de cache -label.sticky.postonly=Apr\u00E8s seulement -label.sticky.prefix=Pr\u00E9fixe -label.sticky.request-learn=Apprendre la requ\u00EAte +label.sticky.postonly=Apr\u00e8s seulement +label.sticky.prefix=Pr\u00e9fixe +label.sticky.request-learn=Apprendre la requ\u00eate label.sticky.tablesize=Taille du tableau -label.stop=Arr\u00EAter -label.stopped.vms=VMs arr\u00EAt\u00E9es +label.stop=Arr\u00eater +label.stopped.vms=VMs arr\u00eat\u00e9es label.storage=Stockage -label.storage.tags=\u00C9tiquettes de stockage +label.storage.tags=\u00c9tiquettes de stockage label.storage.traffic=Trafic stockage label.storage.type=Type de stockage -label.subdomain.access=Acc\u00E8s sous-domaine +label.subdomain.access=Acc\u00e8s sous-domaine label.submit=Envoyer label.submitted.by=[Soumis par \: ] -label.succeeded=R\u00E9ussi +label.succeeded=R\u00e9ussi label.sunday=Dimanche -label.super.cidr.for.guest.networks=Super CIDR pour les r\u00E9seaux invit\u00E9s -label.supported.services=Services support\u00E9s -label.supported.source.NAT.type=Type de NAT support\u00E9 +label.super.cidr.for.guest.networks=Super CIDR pour les r\u00e9seaux invit\u00e9s +label.supported.services=Services support\u00e9s +label.supported.source.NAT.type=Type de NAT support\u00e9 label.suspend.project=Suspendre projet -label.system.capacity=Capacit\u00E9 syst\u00E8me -label.system.offering=Offre de syst\u00E8me -label.system.service.offering=Offre de Service Syst\u00E8me -label.system.vm=VM Syst\u00E8me -label.system.vm.type=Type de VM syst\u00E8me -label.system.vms=\ VMs Syst\u00E8mes -label.system.wide.capacity=Capacit\u00E9 globale -label.tagged=\u00C9tiquet\u00E9 -label.tags=\u00C9tiquette +label.system.capacity=Capacit\u00e9 syst\u00e8me +label.system.offering=Offre de syst\u00e8me +label.system.service.offering=Offre de Service Syst\u00e8me +label.system.vms=\ VMs Syst\u00e8mes +label.system.vm.type=Type de VM syst\u00e8me +label.system.vm=VM Syst\u00e8me +label.system.wide.capacity=Capacit\u00e9 globale +label.tagged=\u00c9tiquet\u00e9 +label.tags=\u00c9tiquette label.target.iqn=Cible IQN -label.task.completed=T\u00E2che termin\u00E9e -label.template=Mod\u00E8le -label.template.limits=Limites de mod\u00E8le -label.theme.default=Th\u00E8me par d\u00E9faut -label.theme.grey=Personnalis\u00E9 - Gris -label.theme.lightblue=Personnalis\u00E9 - Bleu clair +label.task.completed=T\u00e2che termin\u00e9e +label.template.limits=Limites de mod\u00e8le +label.template=Mod\u00e8le +label.TFTP.dir=R\u00e9pertoire TFTP +label.theme.default=Th\u00e8me par d\u00e9faut +label.theme.grey=Personnalis\u00e9 - Gris +label.theme.lightblue=Personnalis\u00e9 - Bleu clair label.thursday=Jeudi +label.tier.details=D\u00e9tails du tiers label.tier=Tiers -label.tier.details=D\u00E9tails du tiers +label.timeout=D\u00e9lai d\\'expiration +label.timeout.in.second=D\u00e9lai d\\'expiration (secondes) label.time=Temps label.time.zone=Fuseau horaire -label.timeout=D\u00E9lai d\\'expiration -label.timeout.in.second=D\u00E9lai d\\'expiration (secondes) label.timezone=Fuseau horaire label.token=Jeton unique -label.total.CPU=Capacit\u00E9 totale en CPU -label.total.cpu=Capacit\u00E9 Totale en CPU -label.total.hosts=Total H\u00F4tes -label.total.memory=Total m\u00E9moire +label.total.cpu=Capacit\u00e9 Totale en CPU +label.total.CPU=Capacit\u00e9 totale en CPU +label.total.hosts=Total H\u00f4tes +label.total.memory=Total m\u00e9moire label.total.of.ip=Total adresses IP label.total.of.vm=Total VM label.total.storage=Total stockage label.total.vms=Nombre total de VMs -label.traffic.label=Libell\u00E9 de trafic -label.traffic.type=Type de Trafic +label.traffic.label=Libell\u00e9 de trafic label.traffic.types=Types de trafic +label.traffic.type=Type de Trafic label.tuesday=Mardi -label.type=Type label.type.id=ID du Type +label.type=Type label.unavailable=Indisponible -label.unlimited=Illimit\u00E9 -label.untagged=Non Tagg\u00E9 -label.update.project.resources=Mettre \u00E0 jour les ressources du projet -label.update.ssl=Certificat SSL +label.unlimited=Illimit\u00e9 +label.untagged=Non Tagg\u00e9 +label.update.project.resources=Mettre \u00e0 jour les ressources du projet label.update.ssl.cert=Certificat SSL -label.updating=Mise \u00E0 jour +label.update.ssl=Certificat SSL +label.updating=Mise \u00e0 jour label.upload=Charger label.upload.volume=Charger un volume label.url=URL label.usage.interface=Interface Utilisation -label.used=Utilis\u00E9 -label.user=Utilisateur +label.used=Utilis\u00e9 label.username=Nom d\\'Utilisateur label.users=Utilisateurs +label.user=Utilisateur label.value=Valeur label.vcdcname=Nom du DC vCenter label.vcenter.cluster=Cluster vCenter label.vcenter.datacenter=Datacenter vCenter label.vcenter.datastore=Datastore vCenter -label.vcenter.host=H\u00F4te vCenter +label.vcenter.host=H\u00f4te vCenter label.vcenter.password=Mot de passe vCenter label.vcenter.username=Nom d\\'utilisateur vCenter label.vcipaddress=Adresse IP vCenter label.version=Version -label.view=Voir label.view.all=Voir tout label.view.console=Voir la console -label.view.more=Voir plus label.viewing=Consultation en cours +label.view.more=Voir plus +label.view=Voir label.virtual.appliance=Appliance Virtuelle label.virtual.appliances=Appliances Virtuelles label.virtual.machines=Machines virtuelles -label.virtual.network=R\u00E9seau virtuel +label.virtual.network=R\u00e9seau virtuel label.virtual.router=Routeur Virtuel label.virtual.routers=Routeurs virtuels -label.vlan=VLAN label.vlan.id=ID du VLAN label.vlan.range=Plage du VLAN +label.vlan=VLAN label.vm.add=Ajouter une instance -label.vm.destroy=D\u00E9truire +label.vm.destroy=D\u00e9truire label.vm.display.name=Nom commun VM -label.vm.name=Nom de la VM -label.vm.reboot=Red\u00E9marrer -label.vm.start=D\u00E9marrer -label.vm.state=\u00C9tat VM -label.vm.stop=Arr\u00EAter +label.VMFS.datastore=Magasin de donn\u00e9es VMFS label.vmfs=VMFS +label.vm.name=Nom de la VM +label.vm.reboot=Red\u00e9marrer +label.VMs.in.tier=Machines virtuelles dans le tiers +label.vm.start=D\u00e9marrer +label.vm.state=\u00c9tat VM +label.vm.stop=Arr\u00eater label.vms=VMs -label.vmware.traffic.label=Libell\u00E9 pour le trafic VMware +label.vmware.traffic.label=Libell\u00e9 pour le trafic VMware label.volgroup=Groupe de Volume -label.volume=Volume label.volume.limits=Limites des volumes label.volume.name=Nom du volume label.volumes=Volumes -label.vpc=VPC +label.volume=Volume label.vpc.id=ID VPC -label.vpn=VPN +label.VPC.router.details=D\u00e9tails routeur VPC +label.vpc=VPC +label.VPN.connection=Connexion VPN label.vpn.customer.gateway=Passerelle VPN client -label.vsmctrlvlanid=\ ID VLAN Contr\u00F4le +label.VPN.customer.gateway=Passerelle VPN client +label.VPN.gateway=Passerelle VPN +label.vpn=VPN +label.vsmctrlvlanid=\ ID VLAN Contr\u00f4le label.vsmpktvlanid=ID VLAN Paquet label.vsmstoragevlanid=VLAN ID Stockage -label.vsphere.managed=G\u00E9r\u00E9e par vSphere +label.vsphere.managed=G\u00e9r\u00e9e par vSphere label.waiting=En attente label.warn=Avertissement label.wednesday=Mercredi @@ -1125,353 +1125,353 @@ label.weekly=Hebdomadaire label.welcome=Bienvenue label.welcome.cloud.console=Bienvenue dans la Console d\\'Administration label.what.is.cloudstack=Qu\\'est-ce-que CloudStack&\#8482; ? -label.xen.traffic.label=Libell\u00E9 pour le trafic XenServer +label.xen.traffic.label=Libell\u00e9 pour le trafic XenServer label.yes=Oui -label.zone=Zone -label.zone.details=D\u00E9tails de la zone +label.zone.details=D\u00e9tails de la zone label.zone.id=ID de la zone label.zone.name=Nom de zone -label.zone.step.1.title=\u00C9tape 1 \: S\u00E9lectionnez un r\u00E9seau -label.zone.step.2.title=\u00C9tape 2 \: Ajoutez une zone -label.zone.step.3.title=\u00C9tape 3 \: Ajoutez un Pod -label.zone.step.4.title=\u00C9tape 4 \: Ajoutez une plage d\\'adresses IP -label.zone.type=Type de zone -label.zone.wide=Transverse \u00E0 la zone -label.zoneWizard.trafficType.guest=Invit\u00E9 \: Trafic entre les machines virtuelles utilisateurs -label.zoneWizard.trafficType.management=Administration \: Trafic entre les ressources internes de CloudStack, incluant tous les composants qui communiquent avec le serveur d\\'administration, tels que les h\u00F4tes and les machines virtuelles Syst\u00E8mes CloudStack -label.zoneWizard.trafficType.public=Public \: Trafic entre Internet et les machines virtuelles dans le nuage -label.zoneWizard.trafficType.storage=Stockage \: Trafic entre les serveurs de stockages principaux et secondaires, tel que le transfert de machines virtuelles mod\u00E8les et des instantan\u00E9s de disques +label.zone.step.1.title=\u00c9tape 1 \: S\u00e9lectionnez un r\u00e9seau +label.zone.step.2.title=\u00c9tape 2 \: Ajoutez une zone +label.zone.step.3.title=\u00c9tape 3 \: Ajoutez un Pod +label.zone.step.4.title=\u00c9tape 4 \: Ajoutez une plage d\\'adresses IP label.zones=Zones -managed.state=\u00C9tat de la gestion -message.Zone.creation.complete=Cr\u00E9ation de la zone termin\u00E9e -message.acquire.new.ip=Confirmer l\\'acquisition d\\'une nouvelle adresse IP pour ce r\u00E9seau. +label.zone.type=Type de zone +label.zone.wide=Transverse \u00e0 la zone +label.zoneWizard.trafficType.guest=Invit\u00e9 \: Trafic entre les machines virtuelles utilisateurs +label.zoneWizard.trafficType.management=Administration \: Trafic entre les ressources internes de CloudStack, incluant tous les composants qui communiquent avec le serveur d\\'administration, tels que les h\u00f4tes and les machines virtuelles Syst\u00e8mes CloudStack +label.zoneWizard.trafficType.public=Public \: Trafic entre Internet et les machines virtuelles dans le nuage +label.zoneWizard.trafficType.storage=Stockage \: Trafic entre les serveurs de stockages principaux et secondaires, tel que le transfert de machines virtuelles mod\u00e8les et des instantan\u00e9s de disques +label.zone=Zone +managed.state=\u00c9tat de la gestion +message.acquire.new.ip=Confirmer l\\'acquisition d\\'une nouvelle adresse IP pour ce r\u00e9seau. message.acquire.new.ip.vpc=Veuillez confirmer que vous voulez une nouvelle adresse IP pour ce VPC -message.acquire.public.ip=S\u00E9lectionnez la zone dans laquelle vous voulez acqu\u00E9rir votre nouvelle adresse IP. -message.action.cancel.maintenance=Votre h\u00F4te a quitt\u00E9 la maintenance. Ce processus peut prendre jusqu\\'\u00E0 plusieurs minutes. +message.acquire.public.ip=S\u00e9lectionnez la zone dans laquelle vous voulez acqu\u00e9rir votre nouvelle adresse IP. message.action.cancel.maintenance.mode=Confirmer l\\'annulation de cette maintenance. -message.action.change.service.warning.for.instance=Votre instance doit \u00EAtre arr\u00EAt\u00E9e avant d\\'essayer de changer son offre de service. -message.action.change.service.warning.for.router=Votre routeur doit \u00EAtre arr\u00EAt\u00E9 avant d\\'essayer de changer son offre de service. -message.action.delete.ISO=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cette ISO. -message.action.delete.ISO.for.all.zones=L\\'ISO est utilis\u00E9 par toutes les zones. S\\'il vous pla\u00EEt confirmer que vous voulez le supprimer de toutes les zones. -message.action.delete.cluster=\u00CAtes-vous s\u00FBr que vous voulez supprimer ce cluster. -message.action.delete.disk.offering=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cette offre de disque. -message.action.delete.domain=\u00CAtes-vous s\u00FBr que vous voulez supprimer ce domaine. -message.action.delete.external.firewall=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce pare-feu externe. Attention \: Si vous pr\u00E9voyez de rajouter le m\u00EAme pare-feu externe de nouveau, vous devez r\u00E9-initialiser les donn\u00E9es d\\'utilisation sur l\\'appareil. -message.action.delete.external.load.balancer=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce r\u00E9partiteur de charge externe. Attention \: Si vous pensez ajouter le m\u00EAme r\u00E9partiteur de charge plus tard, vous devez remettre \u00E0 z\u00E9ro les statistiques d\\'utilisation de cet \u00E9quipement. -message.action.delete.ingress.rule=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cette r\u00E8gle d\\'entr\u00E9e. -message.action.delete.network=\u00CAtes-vous s\u00FBr que vous voulez supprimer ce r\u00E9seau. +message.action.cancel.maintenance=Votre h\u00f4te a quitt\u00e9 la maintenance. Ce processus peut prendre jusqu\\'\u00e0 plusieurs minutes. +message.action.change.service.warning.for.instance=Votre instance doit \u00eatre arr\u00eat\u00e9e avant d\\'essayer de changer son offre de service. +message.action.change.service.warning.for.router=Votre routeur doit \u00eatre arr\u00eat\u00e9 avant d\\'essayer de changer son offre de service. +message.action.delete.cluster=\u00cates-vous s\u00fbr que vous voulez supprimer ce cluster. +message.action.delete.disk.offering=\u00cates-vous s\u00fbr que vous souhaitez supprimer cette offre de disque. +message.action.delete.domain=\u00cates-vous s\u00fbr que vous voulez supprimer ce domaine. +message.action.delete.external.firewall=\u00cates-vous s\u00fbr que vous souhaitez supprimer ce pare-feu externe. Attention \: Si vous pr\u00e9voyez de rajouter le m\u00eame pare-feu externe de nouveau, vous devez r\u00e9-initialiser les donn\u00e9es d\\'utilisation sur l\\'appareil. +message.action.delete.external.load.balancer=\u00cates-vous s\u00fbr que vous souhaitez supprimer ce r\u00e9partiteur de charge externe. Attention \: Si vous pensez ajouter le m\u00eame r\u00e9partiteur de charge plus tard, vous devez remettre \u00e0 z\u00e9ro les statistiques d\\'utilisation de cet \u00e9quipement. +message.action.delete.ingress.rule=\u00cates-vous s\u00fbr que vous souhaitez supprimer cette r\u00e8gle d\\'entr\u00e9e. +message.action.delete.ISO.for.all.zones=L\\'ISO est utilis\u00e9 par toutes les zones. S\\'il vous pla\u00eet confirmer que vous voulez le supprimer de toutes les zones. +message.action.delete.ISO=\u00cates-vous s\u00fbr que vous souhaitez supprimer cette ISO. +message.action.delete.network=\u00cates-vous s\u00fbr que vous voulez supprimer ce r\u00e9seau. message.action.delete.nexusVswitch=Confirmer la suppession de ce Nexus 1000v -message.action.delete.physical.network=Confirmer la suppression du r\u00E9seau physique -message.action.delete.pod=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce pod. -message.action.delete.primary.storage=\u00CAtes-vous s\u00FBr que vous voulez supprimer ce stockage principal. -message.action.delete.secondary.storage=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce stockage secondaire. -message.action.delete.security.group=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce groupe de s\u00E9curit\u00E9. -message.action.delete.service.offering=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cette offre de service. -message.action.delete.snapshot=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cet instantan\u00E9 -message.action.delete.system.service.offering=\u00CAtes-vous s\u00FBr que vous voulez supprimer l\\'offre syst\u00E8me. -message.action.delete.template=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce mod\u00E8le. -message.action.delete.template.for.all.zones=Ce mod\u00E8le est utilis\u00E9 par toutes les zones. \u00CAtes-vous s\u00FBr que vous souhaitez le supprimer de toutes les zones. -message.action.delete.volume=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce volume. -message.action.delete.zone=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cette zone. -message.action.destroy.instance=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cette instance. -message.action.destroy.systemvm=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer cette VM Syst\u00E8me. -message.action.disable.cluster=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9sactiver ce cluster -message.action.disable.nexusVswitch=Confirmer la d\u00E9sactivation de ce Nexus 1000v -message.action.disable.physical.network=Confirmer l\\'activation de ce r\u00E9seau physique. -message.action.disable.pod=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9sactiver ce Pod -message.action.disable.static.NAT=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9sactiver le NAT statique. -message.action.disable.zone=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9sactiver cette zone -message.action.download.iso=Confirmer le t\u00E9l\u00E9chargement de cet ISO -message.action.download.template=Confirmer le t\u00E9l\u00E9chargement de ce mod\u00E8le -message.action.enable.cluster=\u00CAtes-vous s\u00FBr que vous souhaitez activer ce cluster -message.action.enable.maintenance=Votre h\u00F4te a \u00E9t\u00E9 mis en mode maintenance avec succ\u00E8s. Ce processus peut durer plusieurs minutes ou plus, suivant le nombre de VMs actives sur cet h\u00F4te. +message.action.delete.physical.network=Confirmer la suppression du r\u00e9seau physique +message.action.delete.pod=\u00cates-vous s\u00fbr que vous souhaitez supprimer ce pod. +message.action.delete.primary.storage=\u00cates-vous s\u00fbr que vous voulez supprimer ce stockage principal. +message.action.delete.secondary.storage=\u00cates-vous s\u00fbr que vous souhaitez supprimer ce stockage secondaire. +message.action.delete.security.group=\u00cates-vous s\u00fbr que vous souhaitez supprimer ce groupe de s\u00e9curit\u00e9. +message.action.delete.service.offering=\u00cates-vous s\u00fbr que vous souhaitez supprimer cette offre de service. +message.action.delete.snapshot=\u00cates-vous s\u00fbr que vous souhaitez supprimer cet instantan\u00e9 +message.action.delete.system.service.offering=\u00cates-vous s\u00fbr que vous voulez supprimer l\\'offre syst\u00e8me. +message.action.delete.template.for.all.zones=Ce mod\u00e8le est utilis\u00e9 par toutes les zones. \u00cates-vous s\u00fbr que vous souhaitez le supprimer de toutes les zones. +message.action.delete.template=\u00cates-vous s\u00fbr que vous souhaitez supprimer ce mod\u00e8le. +message.action.delete.volume=\u00cates-vous s\u00fbr que vous souhaitez supprimer ce volume. +message.action.delete.zone=\u00cates-vous s\u00fbr que vous souhaitez supprimer cette zone. +message.action.destroy.instance=\u00cates-vous s\u00fbr que vous souhaitez supprimer cette instance. +message.action.destroy.systemvm=\u00cates-vous s\u00fbr que vous souhaitez supprimer cette VM Syst\u00e8me. +message.action.disable.cluster=\u00cates-vous s\u00fbr que vous souhaitez d\u00e9sactiver ce cluster +message.action.disable.nexusVswitch=Confirmer la d\u00e9sactivation de ce Nexus 1000v +message.action.disable.physical.network=Confirmer l\\'activation de ce r\u00e9seau physique. +message.action.disable.pod=\u00cates-vous s\u00fbr que vous souhaitez d\u00e9sactiver ce Pod +message.action.disable.static.NAT=\u00cates-vous s\u00fbr que vous souhaitez d\u00e9sactiver le NAT statique. +message.action.disable.zone=\u00cates-vous s\u00fbr que vous souhaitez d\u00e9sactiver cette zone +message.action.download.iso=Confirmer le t\u00e9l\u00e9chargement de cet ISO +message.action.download.template=Confirmer le t\u00e9l\u00e9chargement de ce mod\u00e8le +message.action.enable.cluster=\u00cates-vous s\u00fbr que vous souhaitez activer ce cluster +message.action.enable.maintenance=Votre h\u00f4te a \u00e9t\u00e9 mis en mode maintenance avec succ\u00e8s. Ce processus peut durer plusieurs minutes ou plus, suivant le nombre de VMs actives sur cet h\u00f4te. message.action.enable.nexusVswitch=Confirmer l\\'activation de ce Nexus 1000v -message.action.enable.physical.network=Confirmer l\\'activation de ce r\u00E9seau physique. -message.action.enable.pod=\u00CAtes-vous s\u00FBr que vous souhaitez activer ce Pod -message.action.enable.zone=\u00CAtes-vous s\u00FBr que vous souhaitez activer cette zone -message.action.force.reconnect=Votre h\u00F4te a \u00E9t\u00E9 forc\u00E9e \u00E0 se reconnecter avec succ\u00E8s. Ce processus peut prendre jusqu\\'\u00E0 plusieurs minutes. -message.action.host.enable.maintenance.mode=Activer le mode maintenance va causer la migration \u00E0 chaud de l\\'ensemble des instances de cet h\u00F4te sur les autres h\u00F4tes disponibles. +message.action.enable.physical.network=Confirmer l\\'activation de ce r\u00e9seau physique. +message.action.enable.pod=\u00cates-vous s\u00fbr que vous souhaitez activer ce Pod +message.action.enable.zone=\u00cates-vous s\u00fbr que vous souhaitez activer cette zone +message.action.force.reconnect=Votre h\u00f4te a \u00e9t\u00e9 forc\u00e9e \u00e0 se reconnecter avec succ\u00e8s. Ce processus peut prendre jusqu\\'\u00e0 plusieurs minutes. +message.action.host.enable.maintenance.mode=Activer le mode maintenance va causer la migration \u00e0 chaud de l\\'ensemble des instances de cet h\u00f4te sur les autres h\u00f4tes disponibles. message.action.instance.reset.password=Confirmer le changement du mot de passe ROOT pour cette machine virtuelle. -message.action.manage.cluster=\u00CAtes-vous s\u00FBr que vous souhaitez g\u00E9rer le cluster -message.action.primarystorage.enable.maintenance.mode=Attention \: placer ce stockage principal en mode maintenance va provoquer l\\'arr\u00EAt de l\\'ensemble des VMs utilisant des volumes sur ce stockage. Souhaitez-vous continuer ? -message.action.reboot.instance=\u00CAtes-vous s\u00FBr que vous souhaitez red\u00E9marrer cette instance. -message.action.reboot.router=Tous les services fournit par ce routeur virtuel vont \u00EAtre interrompus. Confirmer le r\u00E9-amor\u00E7age de ce routeur. -message.action.reboot.systemvm=\u00CAtes-vous s\u00FBr que vous souhaitez red\u00E9marrer cette VM Syst\u00E8me -message.action.release.ip=\u00CAtes-vous s\u00FBr que vous souhaitez lib\u00E9rer cette IP. -message.action.remove.host=\u00CAtes-vous s\u00FBr que vous voulez supprimer cet h\u00F4te. -message.action.reset.password.off=Votre instance ne supporte pas pour le moment cette fonctionnalit\u00E9. -message.action.reset.password.warning=Votre instance doit \u00EAtre arr\u00EAt\u00E9e avant d\\'essayer de changer son mot de passe. -message.action.restore.instance=\u00CAtes-vous s\u00FBr que vous souhaitez restaurer cette instance. -message.action.start.instance=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9marrer cette instance. -message.action.start.router=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9marrer ce routeur. -message.action.start.systemvm=\u00CAtes-vous s\u00FBr que vous souhaitez red\u00E9marrer cette VM syst\u00E8me. -message.action.stop.instance=\u00CAtes-vous s\u00FBr que vous souhaitez arr\u00EAter cette instance. -message.action.stop.router=Tous les services fournit par ce routeur virtuel vont \u00EAtre interrompus. Confirmer l\\'arr\u00EAt de ce routeur. -message.action.stop.systemvm=\u00CAtes-vous s\u00FBr que vous souhaitez arr\u00EAter cette VM. -message.action.take.snapshot=Confirmer la prise d\\'un instantan\u00E9 pour ce volume. -message.action.unmanage.cluster=Confirmez que vous ne voulez plus g\u00E9rer le cluster -message.activate.project=\u00CAtes-vous s\u00FBr de vouloir activer ce projet ? -message.add.VPN.gateway=Confirmer l\\'ajout d\\'une passerelle VPN -message.add.cluster=Ajouter un cluster d\\'hyperviseurs g\u00E9r\u00E9 pour cette zone , pod -message.add.cluster.zone=Ajouter un cluster d\\'hyperviseurs g\u00E9r\u00E9 pour cette zone -message.add.disk.offering=Renseignez les param\u00E8tres suivants pour ajouter un offre de service de disques -message.add.domain=Sp\u00E9cifier le sous domaine que vous souhaitez cr\u00E9er sous ce domaine -message.add.firewall=Ajouter un pare-feu \u00E0 cette zone -message.add.guest.network=Confirmer l\\'ajout du r\u00E9seau invit\u00E9 -message.add.host=Renseignez les param\u00E8tres suivants pour ajouter une h\u00F4te -message.add.ip.range=Ajouter une plage IP pour le r\u00E9seau publique dans la zone -message.add.ip.range.direct.network=Ajouter une plage IP au r\u00E9seau direct dans la zone -message.add.ip.range.to.pod=

    Ajouter une plage IP pour le pod\:

    -message.add.load.balancer=Ajouter un r\u00E9partiteur de charge \u00E0 la zone -message.add.load.balancer.under.ip=La r\u00E8gle de r\u00E9partition de charge \u00E9t\u00E9 ajout\u00E9e sous l\\'adresse IP \: -message.add.network=Ajouter un nouveau r\u00E9seau \u00E0 la zone\: -message.add.new.gateway.to.vpc=Renseigner les informations suivantes pour ajouter une nouvelle passerelle pour ce VPC -message.add.pod=Ajouter un nouveau pod \u00E0 la zone -message.add.pod.during.zone.creation=Chaque zone doit contenir un ou plusieurs pods, et le premier pod sera ajout\u00E9 maintenant. Une pod contient les h\u00F4tes et les serveurs de stockage principal, qui seront ajout\u00E9s dans une \u00E9tape ult\u00E9rieure. Configurer une plage d\\'adresses IP r\u00E9serv\u00E9es pour le trafic de gestion interne de CloudStack. La plage d\\'IP r\u00E9serv\u00E9e doit \u00EAtre unique pour chaque zone dans le nuage. -message.add.primary=Renseignez les param\u00E8tres suivants pour ajouter un stockage principal -message.add.primary.storage=Ajouter un nouveau stockage principal \u00E0 la zone , pod -message.add.secondary.storage=Ajouter un nouveau stockage pour la zone -message.add.service.offering=Renseigner les informations suivantes pour ajouter une nouvelle offre de service de calcul. -message.add.system.service.offering=Ajouter les informations suivantes pour cr\u00E9er une nouvelle offre syst\u00E8me. -message.add.template=Renseignez les informations suivantes pour cr\u00E9er votre nouveau mod\u00E8le -message.add.volume=Renseignez les informations suivantes pour ajouter un nouveau volume +message.action.manage.cluster=\u00cates-vous s\u00fbr que vous souhaitez g\u00e9rer le cluster +message.action.primarystorage.enable.maintenance.mode=Attention \: placer ce stockage principal en mode maintenance va provoquer l\\'arr\u00eat de l\\'ensemble des VMs utilisant des volumes sur ce stockage. Souhaitez-vous continuer ? +message.action.reboot.instance=\u00cates-vous s\u00fbr que vous souhaitez red\u00e9marrer cette instance. +message.action.reboot.router=Tous les services fournit par ce routeur virtuel vont \u00eatre interrompus. Confirmer le r\u00e9-amor\u00e7age de ce routeur. +message.action.reboot.systemvm=\u00cates-vous s\u00fbr que vous souhaitez red\u00e9marrer cette VM Syst\u00e8me +message.action.release.ip=\u00cates-vous s\u00fbr que vous souhaitez lib\u00e9rer cette IP. +message.action.remove.host=\u00cates-vous s\u00fbr que vous voulez supprimer cet h\u00f4te. +message.action.reset.password.off=Votre instance ne supporte pas pour le moment cette fonctionnalit\u00e9. +message.action.reset.password.warning=Votre instance doit \u00eatre arr\u00eat\u00e9e avant d\\'essayer de changer son mot de passe. +message.action.restore.instance=\u00cates-vous s\u00fbr que vous souhaitez restaurer cette instance. +message.action.start.instance=\u00cates-vous s\u00fbr que vous souhaitez d\u00e9marrer cette instance. +message.action.start.router=\u00cates-vous s\u00fbr que vous souhaitez d\u00e9marrer ce routeur. +message.action.start.systemvm=\u00cates-vous s\u00fbr que vous souhaitez red\u00e9marrer cette VM syst\u00e8me. +message.action.stop.instance=\u00cates-vous s\u00fbr que vous souhaitez arr\u00eater cette instance. +message.action.stop.router=Tous les services fournit par ce routeur virtuel vont \u00eatre interrompus. Confirmer l\\'arr\u00eat de ce routeur. +message.action.stop.systemvm=\u00cates-vous s\u00fbr que vous souhaitez arr\u00eater cette VM. +message.action.take.snapshot=Confirmer la prise d\\'un instantan\u00e9 pour ce volume. +message.action.unmanage.cluster=Confirmez que vous ne voulez plus g\u00e9rer le cluster +message.activate.project=\u00cates-vous s\u00fbr de vouloir activer ce projet ? +message.add.cluster=Ajouter un cluster d\\'hyperviseurs g\u00e9r\u00e9 pour cette zone , pod +message.add.cluster.zone=Ajouter un cluster d\\'hyperviseurs g\u00e9r\u00e9 pour cette zone +message.add.disk.offering=Renseignez les param\u00e8tres suivants pour ajouter un offre de service de disques +message.add.domain=Sp\u00e9cifier le sous domaine que vous souhaitez cr\u00e9er sous ce domaine +message.add.firewall=Ajouter un pare-feu \u00e0 cette zone +message.add.guest.network=Confirmer l\\'ajout du r\u00e9seau invit\u00e9 +message.add.host=Renseignez les param\u00e8tres suivants pour ajouter une h\u00f4te +message.adding.host=Ajout un h\u00f4te message.adding.Netscaler.device=Ajouter un Netscaler message.adding.Netscaler.provider=Ajouter un fournisseur Netscaler -message.adding.host=Ajout un h\u00F4te -message.additional.networks.desc=S\u00E9lectionnez le(s) r\u00E9seau(x) additionnel(s) au(x)quel(s) sera connect\u00E9e votre instance. -message.advanced.mode.desc=Choisissez ce mod\u00E8le de r\u00E9seau si vous souhaitez b\u00E9n\u00E9ficier du support des VLANs. Ce mode de r\u00E9seau donne le plus de flexibilit\u00E9 aux administrateurs pour fournir des offres de service r\u00E9seau personnalis\u00E9es comme fournir des pare-feux, VPN, r\u00E9partiteurs de charge ou \u00E9galement activer des r\u00E9seaux virtuels ou directs. -message.advanced.security.group=Choisissez ceci si vous souhaitez utiliser les groupes de s\u00E9curit\u00E9 pour fournir l\\'isolation des VMs invit\u00E9es. -message.advanced.virtual=Choisissez ceci si vous souhaitez utiliser des VLANs pour fournir l\\'isolation des VMs invit\u00E9es. -message.after.enable.s3=Le stockage secondaire S3 est configur\u00E9. Note \: Quand vous quitterez cette page, vous ne pourrez plus re-configurer le support S3. -message.after.enable.swift=Swift configur\u00E9. Remarque \: une fois que vous quitterez cette page, il ne sera plus possible de re-configurer Swift \u00E0 nouveau. -message.alert.state.detected=\u00C9tat d\\'alerte d\u00E9tect\u00E9 -message.allow.vpn.access=Entrez un nom d\\'utilisateur et un mot de passe pour l\\'utilisateur que vous souhaitez autoriser \u00E0 utiliser l\\'acc\u00E8s VPN. -message.apply.snapshot.policy=Vous avez mis \u00E0 jour votre politique d\\'instantan\u00E9s avec succ\u00E8s. -message.attach.iso.confirm=\u00CAtes-vous s\u00FBr que vous souhaitez attacher l\\'image ISO \u00E0 cette instance. -message.attach.volume=Renseignez les donn\u00E9es suivantes pour attacher un nouveau volume. Si vous attachez un volume disque \u00E0 une machine virtuelle sous Windows, vous aurez besoin de red\u00E9marrer l\\'instance pour voir le nouveau disque. -message.basic.mode.desc=Choisissez ce mod\u00E8le de r\u00E9seau si vous *ne voulez pas* activer le support des VLANs. Toutes les instances cr\u00E9\u00E9es avec ce mod\u00E8le de r\u00E9seau se verront assigner une adresse IP et les groupes de s\u00E9curit\u00E9 seront utilis\u00E9s pour fournir l\\'isolation entre les VMs. -message.change.offering.confirm=\u00CAtes-vous s\u00FBr que vous souhaitez changer l\\'offre de service de cette instance. +message.add.ip.range=Ajouter une plage IP pour le r\u00e9seau publique dans la zone +message.add.ip.range.direct.network=Ajouter une plage IP au r\u00e9seau direct dans la zone +message.add.ip.range.to.pod=

    Ajouter une plage IP pour le pod\:

    +message.additional.networks.desc=S\u00e9lectionnez le(s) r\u00e9seau(x) additionnel(s) au(x)quel(s) sera connect\u00e9e votre instance. +message.add.load.balancer=Ajouter un r\u00e9partiteur de charge \u00e0 la zone +message.add.load.balancer.under.ip=La r\u00e8gle de r\u00e9partition de charge \u00e9t\u00e9 ajout\u00e9e sous l\\'adresse IP \: +message.add.network=Ajouter un nouveau r\u00e9seau \u00e0 la zone\: +message.add.new.gateway.to.vpc=Renseigner les informations suivantes pour ajouter une nouvelle passerelle pour ce VPC +message.add.pod=Ajouter un nouveau pod \u00e0 la zone +message.add.pod.during.zone.creation=Chaque zone doit contenir un ou plusieurs pods, et le premier pod sera ajout\u00e9 maintenant. Une pod contient les h\u00f4tes et les serveurs de stockage principal, qui seront ajout\u00e9s dans une \u00e9tape ult\u00e9rieure. Configurer une plage d\\'adresses IP r\u00e9serv\u00e9es pour le trafic de gestion interne de CloudStack. La plage d\\'IP r\u00e9serv\u00e9e doit \u00eatre unique pour chaque zone dans le nuage. +message.add.primary=Renseignez les param\u00e8tres suivants pour ajouter un stockage principal +message.add.primary.storage=Ajouter un nouveau stockage principal \u00e0 la zone , pod +message.add.secondary.storage=Ajouter un nouveau stockage pour la zone +message.add.service.offering=Renseigner les informations suivantes pour ajouter une nouvelle offre de service de calcul. +message.add.system.service.offering=Ajouter les informations suivantes pour cr\u00e9er une nouvelle offre syst\u00e8me. +message.add.template=Renseignez les informations suivantes pour cr\u00e9er votre nouveau mod\u00e8le +message.add.volume=Renseignez les informations suivantes pour ajouter un nouveau volume +message.add.VPN.gateway=Confirmer l\\'ajout d\\'une passerelle VPN +message.advanced.mode.desc=Choisissez ce mod\u00e8le de r\u00e9seau si vous souhaitez b\u00e9n\u00e9ficier du support des VLANs. Ce mode de r\u00e9seau donne le plus de flexibilit\u00e9 aux administrateurs pour fournir des offres de service r\u00e9seau personnalis\u00e9es comme fournir des pare-feux, VPN, r\u00e9partiteurs de charge ou \u00e9galement activer des r\u00e9seaux virtuels ou directs. +message.advanced.security.group=Choisissez ceci si vous souhaitez utiliser les groupes de s\u00e9curit\u00e9 pour fournir l\\'isolation des VMs invit\u00e9es. +message.advanced.virtual=Choisissez ceci si vous souhaitez utiliser des VLANs pour fournir l\\'isolation des VMs invit\u00e9es. +message.after.enable.s3=Le stockage secondaire S3 est configur\u00e9. Note \: Quand vous quitterez cette page, vous ne pourrez plus re-configurer le support S3. +message.after.enable.swift=Swift configur\u00e9. Remarque \: une fois que vous quitterez cette page, il ne sera plus possible de re-configurer Swift \u00e0 nouveau. +message.alert.state.detected=\u00c9tat d\\'alerte d\u00e9tect\u00e9 +message.allow.vpn.access=Entrez un nom d\\'utilisateur et un mot de passe pour l\\'utilisateur que vous souhaitez autoriser \u00e0 utiliser l\\'acc\u00e8s VPN. +message.apply.snapshot.policy=Vous avez mis \u00e0 jour votre politique d\\'instantan\u00e9s avec succ\u00e8s. +message.attach.iso.confirm=\u00cates-vous s\u00fbr que vous souhaitez attacher l\\'image ISO \u00e0 cette instance. +message.attach.volume=Renseignez les donn\u00e9es suivantes pour attacher un nouveau volume. Si vous attachez un volume disque \u00e0 une machine virtuelle sous Windows, vous aurez besoin de red\u00e9marrer l\\'instance pour voir le nouveau disque. +message.basic.mode.desc=Choisissez ce mod\u00e8le de r\u00e9seau si vous *ne voulez pas* activer le support des VLANs. Toutes les instances cr\u00e9\u00e9es avec ce mod\u00e8le de r\u00e9seau se verront assigner une adresse IP et les groupes de s\u00e9curit\u00e9 seront utilis\u00e9s pour fournir l\\'isolation entre les VMs. +message.change.offering.confirm=\u00cates-vous s\u00fbr que vous souhaitez changer l\\'offre de service de cette instance. message.change.password=Merci de modifier votre mot de passe. -message.configure.all.traffic.types=Vous avez de multiples r\u00E9seaux physiques ; veuillez configurer les libell\u00E9s pour chaque type de trafic en cliquant sur le bouton Modifier. -message.configuring.guest.traffic=Configuration du r\u00E9seau VM -message.configuring.physical.networks=Configuration des r\u00E9seaux physiques -message.configuring.public.traffic=Configuration du r\u00E9seau public -message.configuring.storage.traffic=Configuration du r\u00E9seau de stockage -message.confirm.action.force.reconnect=Confirmer la re-connexion forc\u00E9e de cet h\u00F4te. +message.configure.all.traffic.types=Vous avez de multiples r\u00e9seaux physiques ; veuillez configurer les libell\u00e9s pour chaque type de trafic en cliquant sur le bouton Modifier. +message.configuring.guest.traffic=Configuration du r\u00e9seau VM +message.configuring.physical.networks=Configuration des r\u00e9seaux physiques +message.configuring.public.traffic=Configuration du r\u00e9seau public +message.configuring.storage.traffic=Configuration du r\u00e9seau de stockage +message.confirm.action.force.reconnect=Confirmer la re-connexion forc\u00e9e de cet h\u00f4te. message.confirm.delete.F5=Confirmer la suppression du F5 message.confirm.delete.NetScaler=Confirmer la suppression du Netscaler message.confirm.delete.SRX=Confirmer la suppression du SRX -message.confirm.destroy.router=\u00CAtes-vous s\u00FBr que vous voulez supprimer ce routeur -message.confirm.disable.provider=Confirmer la d\u00E9sactivation de ce fournisseur +message.confirm.destroy.router=\u00cates-vous s\u00fbr que vous voulez supprimer ce routeur +message.confirm.disable.provider=Confirmer la d\u00e9sactivation de ce fournisseur message.confirm.enable.provider=Confirmer l\\'activation de ce fournisseur -message.confirm.join.project=\u00CAtes-vous s\u00FBr que vous souhaitez rejoindre ce projet. -message.confirm.remove.IP.range=\u00CAtes-vous s\u00FBr que vous voulez supprimer cette plage d\\'adresses IP -message.confirm.shutdown.provider=Confirmer l\\'arr\u00EAt de ce fournisseur -message.copy.iso.confirm=\u00CAtes-vous s\u00FBr que vous souhaitez copier votre image ISO vers -message.copy.template=Copier le mod\u00E8le XXX de la zone vers -message.create.template=Voulez vous cr\u00E9er un mod\u00E8le ? -message.create.template.vm=Cr\u00E9er la VM depuis le mod\u00E8le -message.create.template.volume=Renseignez les informations suivantes avec de cr\u00E9er un mod\u00E8le \u00E0 partir de votre volume de disque\:. La cr\u00E9ation du mod\u00E8le peut prendre plusieurs minutes suivant la taille du volume. -message.creating.cluster=Cr\u00E9ation du cluster -message.creating.guest.network=Cr\u00E9ation du r\u00E9seau pour les invit\u00E9s -message.creating.physical.networks=Cr\u00E9ation des r\u00E9seaux physiques -message.creating.pod=Cr\u00E9ation d\\'un pod -message.creating.primary.storage=Cr\u00E9ation du stockage principal -message.creating.secondary.storage=Cr\u00E9ation du stockage secondaire -message.creating.zone=Cr\u00E9ation de la zone +message.confirm.join.project=\u00cates-vous s\u00fbr que vous souhaitez rejoindre ce projet. +message.confirm.remove.IP.range=\u00cates-vous s\u00fbr que vous voulez supprimer cette plage d\\'adresses IP +message.confirm.shutdown.provider=Confirmer l\\'arr\u00eat de ce fournisseur +message.copy.iso.confirm=\u00cates-vous s\u00fbr que vous souhaitez copier votre image ISO vers +message.copy.template=Copier le mod\u00e8le XXX de la zone vers +message.create.template.vm=Cr\u00e9er la VM depuis le mod\u00e8le +message.create.template.volume=Renseignez les informations suivantes avec de cr\u00e9er un mod\u00e8le \u00e0 partir de votre volume de disque\:. La cr\u00e9ation du mod\u00e8le peut prendre plusieurs minutes suivant la taille du volume. +message.create.template=Voulez vous cr\u00e9er un mod\u00e8le ? +message.creating.cluster=Cr\u00e9ation du cluster +message.creating.guest.network=Cr\u00e9ation du r\u00e9seau pour les invit\u00e9s +message.creating.physical.networks=Cr\u00e9ation des r\u00e9seaux physiques +message.creating.pod=Cr\u00e9ation d\\'un pod +message.creating.primary.storage=Cr\u00e9ation du stockage principal +message.creating.secondary.storage=Cr\u00e9ation du stockage secondaire +message.creating.zone=Cr\u00e9ation de la zone message.decline.invitation=Voulez-vous refuser cette invitation au projet ? -message.delete.VPN.connection=\u00CAtes-vous s\u00FBr que vous voulez supprimer la connexion VPN -message.delete.VPN.customer.gateway=\u00CAtes-vous s\u00FBr que vous voulez supprimer cette passerelle VPN client -message.delete.VPN.gateway=\u00CAtes-vous s\u00FBr que vous voulez supprimer cette passerelle VPN -message.delete.account=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer ce compte. -message.delete.gateway=\u00CAtes-vous s\u00FBr que vous voulez supprimer cette passerelle -message.delete.project=\u00CAtes-vous s\u00FBr de vouloir supprimer ce projet ? -message.delete.user=\u00CAtes-vous s\u00FBr que vous voulez supprimer cet utilisateur. -message.desc.advanced.zone=Pour des topologies de r\u00E9seau plus sophistiqu\u00E9es. Ce mod\u00E8le de r\u00E9seau permet plus de flexibilit\u00E9 dans la d\u00E9finition des r\u00E9seaux d\\'invit\u00E9s et propose des offres personnalis\u00E9es telles que le support de pare-feu, VPN ou d\\'\u00E9quilibrage de charge. -message.desc.basic.zone=Fournit un r\u00E9seau unique o\u00F9 chaque instance de machine virtuelle se voit attribuer une adresse IP directement depuis le r\u00E9seau. L\\'isolation des invit\u00E9s peut \u00EAtre assur\u00E9 au niveau de la couche r\u00E9seau-3 tels que les groupes de s\u00E9curit\u00E9 (filtrage d\\'adresse IP source). -message.desc.cluster=Chaque pod doit contenir un ou plusieurs clusters, et le premier cluster sera ajout\u00E9 tout de suite. Un cluster est un regroupement pour h\u00F4tes. Les h\u00F4tes d\\'un cluster ont tous un mat\u00E9riel identique, ex\u00E9cutent le m\u00EAme hyperviseur, sont dans le m\u00EAme sous-r\u00E9seau, et acc\u00E8dent au m\u00EAme stockage partag\u00E9. Chaque cluster comprend une ou plusieurs h\u00F4tes et un ou plusieurs serveurs de stockage principal. -message.desc.host=Chaque cluster doit contenir au moins un h\u00F4te (machine) pour ex\u00E9cuter des machines virtuelles invit\u00E9es, et le premier h\u00F4te sera ajout\u00E9 tout de suite. Pour un h\u00F4te fonctionnant dans CloudStack, vous devez installer un logiciel hyperviseur sur l\\'h\u00F4te, attribuer une adresse IP \u00E0 l\\'h\u00F4te, et s\\'assurer que l\\'h\u00F4te est connect\u00E9 au serveur d\\'administration CloudStack.

    Indiquer le nom de l\\'h\u00F4te ou son adresse IP, l\\'identifiant de connexion (g\u00E9n\u00E9ralement root) et le mot de passe ainsi que toutes les \u00E9tiquettes permettant de classer les h\u00F4tes. -message.desc.primary.storage=Chaque cluster doit contenir un ou plusieurs serveurs de stockage principal, et le premier sera ajout\u00E9 tout de suite. Le stockage principal contient les volumes de disque pour les machines virtuelles s\\'ex\u00E9cutant sur les h\u00F4tes dans le cluster. Utiliser les protocoles standards pris en charge par l\\'hyperviseur sous-jacent. -message.desc.secondary.storage=Chaque zone doit avoir au moins un serveur NFS ou un serveur de stockage secondaire, et sera ajout\u00E9 en premier tout de suite. Le stockage secondaire entrepose les mod\u00E8les de machines virtuelles, les images ISO et les images disques des volumes des machines virtuelles. Ce serveur doit \u00EAtre accessible pour toutes les machines h\u00F4tes dans la zone.

    Saisir l\\'adresse IP et le chemin d\\'export. -message.desc.zone=Une zone est la plus grande unit\u00E9 organisationnelle dans CloudStack, et correspond typiquement \u00E0 un centre de donn\u00E9es. Les zones fournissent un isolement physique et de la redondance. Une zone est constitu\u00E9e d\\'un ou plusieurs pods (dont chacun contient les h\u00F4tes et les serveurs de stockage principal) et un serveur de stockage secondaire qui est partag\u00E9e par tous les pods dans la zone. -message.detach.disk=Voulez-vous d\u00E9tacher ce disque ? -message.detach.iso.confirm=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9tacher l\\'image ISO de cette instance. -message.disable.account=Veuillez confirmer que vous voulez d\u00E9sactiver ce compte. En d\u00E9sactivant le compte, tous les utilisateurs pour ce compte n\\'auront plus acc\u00E8s \u00E0 leurs ressources sur le cloud. Toutes les machines virtuelles vont \u00EAtre arr\u00EAt\u00E9es imm\u00E9diatement. -message.disable.snapshot.policy=Vous avez d\u00E9sactiv\u00E9 votre politique d\\'instantan\u00E9 avec succ\u00E8s. -message.disable.user=Confirmer la d\u00E9sactivation de cet utilisateur. -message.disable.vpn=\u00CAtes-vous s\u00FBr de vouloir d\u00E9sactiver le VPN ? -message.disable.vpn.access=\u00CAtes-vous s\u00FBr que vous souhaitez d\u00E9sactiver l\\'acc\u00E8s VPN. -message.download.ISO=Cliquer
    00000 pour t\u00E9l\u00E9charger une image ISO -message.download.template=Cliquer sur 00000 pour t\u00E9l\u00E9charger le mod\u00E8le -message.download.volume=Cliquer sur 00000 pour t\u00E9l\u00E9charger le volume -message.download.volume.confirm=Confirmer le t\u00E9l\u00E9chargement du volume +message.delete.account=\u00cates-vous s\u00fbr que vous souhaitez supprimer ce compte. +message.delete.gateway=\u00cates-vous s\u00fbr que vous voulez supprimer cette passerelle +message.delete.project=\u00cates-vous s\u00fbr de vouloir supprimer ce projet ? +message.delete.user=\u00cates-vous s\u00fbr que vous voulez supprimer cet utilisateur. +message.delete.VPN.connection=\u00cates-vous s\u00fbr que vous voulez supprimer la connexion VPN +message.delete.VPN.customer.gateway=\u00cates-vous s\u00fbr que vous voulez supprimer cette passerelle VPN client +message.delete.VPN.gateway=\u00cates-vous s\u00fbr que vous voulez supprimer cette passerelle VPN +message.desc.advanced.zone=Pour des topologies de r\u00e9seau plus sophistiqu\u00e9es. Ce mod\u00e8le de r\u00e9seau permet plus de flexibilit\u00e9 dans la d\u00e9finition des r\u00e9seaux d\\'invit\u00e9s et propose des offres personnalis\u00e9es telles que le support de pare-feu, VPN ou d\\'\u00e9quilibrage de charge. +message.desc.basic.zone=Fournit un r\u00e9seau unique o\u00f9 chaque instance de machine virtuelle se voit attribuer une adresse IP directement depuis le r\u00e9seau. L\\'isolation des invit\u00e9s peut \u00eatre assur\u00e9 au niveau de la couche r\u00e9seau-3 tels que les groupes de s\u00e9curit\u00e9 (filtrage d\\'adresse IP source). +message.desc.cluster=Chaque pod doit contenir un ou plusieurs clusters, et le premier cluster sera ajout\u00e9 tout de suite. Un cluster est un regroupement pour h\u00f4tes. Les h\u00f4tes d\\'un cluster ont tous un mat\u00e9riel identique, ex\u00e9cutent le m\u00eame hyperviseur, sont dans le m\u00eame sous-r\u00e9seau, et acc\u00e8dent au m\u00eame stockage partag\u00e9. Chaque cluster comprend une ou plusieurs h\u00f4tes et un ou plusieurs serveurs de stockage principal. +message.desc.host=Chaque cluster doit contenir au moins un h\u00f4te (machine) pour ex\u00e9cuter des machines virtuelles invit\u00e9es, et le premier h\u00f4te sera ajout\u00e9 tout de suite. Pour un h\u00f4te fonctionnant dans CloudStack, vous devez installer un logiciel hyperviseur sur l\\'h\u00f4te, attribuer une adresse IP \u00e0 l\\'h\u00f4te, et s\\'assurer que l\\'h\u00f4te est connect\u00e9 au serveur d\\'administration CloudStack.

    Indiquer le nom de l\\'h\u00f4te ou son adresse IP, l\\'identifiant de connexion (g\u00e9n\u00e9ralement root) et le mot de passe ainsi que toutes les \u00e9tiquettes permettant de classer les h\u00f4tes. +message.desc.primary.storage=Chaque cluster doit contenir un ou plusieurs serveurs de stockage principal, et le premier sera ajout\u00e9 tout de suite. Le stockage principal contient les volumes de disque pour les machines virtuelles s\\'ex\u00e9cutant sur les h\u00f4tes dans le cluster. Utiliser les protocoles standards pris en charge par l\\'hyperviseur sous-jacent. +message.desc.secondary.storage=Chaque zone doit avoir au moins un serveur NFS ou un serveur de stockage secondaire, et sera ajout\u00e9 en premier tout de suite. Le stockage secondaire entrepose les mod\u00e8les de machines virtuelles, les images ISO et les images disques des volumes des machines virtuelles. Ce serveur doit \u00eatre accessible pour toutes les machines h\u00f4tes dans la zone.

    Saisir l\\'adresse IP et le chemin d\\'export. +message.desc.zone=Une zone est la plus grande unit\u00e9 organisationnelle dans CloudStack, et correspond typiquement \u00e0 un centre de donn\u00e9es. Les zones fournissent un isolement physique et de la redondance. Une zone est constitu\u00e9e d\\'un ou plusieurs pods (dont chacun contient les h\u00f4tes et les serveurs de stockage principal) et un serveur de stockage secondaire qui est partag\u00e9e par tous les pods dans la zone. +message.detach.disk=Voulez-vous d\u00e9tacher ce disque ? +message.detach.iso.confirm=\u00cates-vous s\u00fbr que vous souhaitez d\u00e9tacher l\\'image ISO de cette instance. +message.disable.account=Veuillez confirmer que vous voulez d\u00e9sactiver ce compte. En d\u00e9sactivant le compte, tous les utilisateurs pour ce compte n\\'auront plus acc\u00e8s \u00e0 leurs ressources sur le cloud. Toutes les machines virtuelles vont \u00eatre arr\u00eat\u00e9es imm\u00e9diatement. +message.disable.snapshot.policy=Vous avez d\u00e9sactiv\u00e9 votre politique d\\'instantan\u00e9 avec succ\u00e8s. +message.disable.user=Confirmer la d\u00e9sactivation de cet utilisateur. +message.disable.vpn.access=\u00cates-vous s\u00fbr que vous souhaitez d\u00e9sactiver l\\'acc\u00e8s VPN. +message.disable.vpn=\u00cates-vous s\u00fbr de vouloir d\u00e9sactiver le VPN ? +message.download.ISO=Cliquer 00000 pour t\u00e9l\u00e9charger une image ISO +message.download.template=Cliquer sur 00000 pour t\u00e9l\u00e9charger le mod\u00e8le +message.download.volume=Cliquer sur 00000 pour t\u00e9l\u00e9charger le volume +message.download.volume.confirm=Confirmer le t\u00e9l\u00e9chargement du volume message.edit.account=Modifier ("-1" signifie pas de limite de ressources) message.edit.confirm=Confirmer les changements avant de cliquer sur "Enregistrer". -message.edit.limits=Renseignez les limites pour les ressources suivantes. "-1" indique qu\\'il n\\'y a pas de limites pour la cr\u00E9ation de ressources. -message.edit.traffic.type=Sp\u00E9cifier le libell\u00E9 de trafic associ\u00E9 avec ce type de trafic. -message.enable.account=\u00CAtes-vous s\u00FBr que vous souhaitez activer ce compte. +message.edit.limits=Renseignez les limites pour les ressources suivantes. "-1" indique qu\\'il n\\'y a pas de limites pour la cr\u00e9ation de ressources. +message.edit.traffic.type=Sp\u00e9cifier le libell\u00e9 de trafic associ\u00e9 avec ce type de trafic. +message.enable.account=\u00cates-vous s\u00fbr que vous souhaitez activer ce compte. +message.enabled.vpn.ip.sec=Votre cl\u00e9 partag\u00e9e IPSec est +message.enabled.vpn=Votre acc\u00e8s VPN est activ\u00e9 et peut \u00eatre acc\u00e9d\u00e9 par l\\'IP message.enable.user=Confirmer l\\'activation de cet utilisateur. -message.enable.vpn=Confirmer l\\'activation de l\\'acc\u00E8s VPN pour cette adresse IP. -message.enable.vpn.access=Le VPN est d\u00E9sactiv\u00E9 pour cette adresse IP. Voulez vous activer l\\'acc\u00E8s VPN ? -message.enabled.vpn=Votre acc\u00E8s VPN est activ\u00E9 et peut \u00EAtre acc\u00E9d\u00E9 par l\\'IP -message.enabled.vpn.ip.sec=Votre cl\u00E9 partag\u00E9e IPSec est -message.enabling.security.group.provider=Activation du fournisseur de groupe de s\u00E9curit\u00E9 +message.enable.vpn.access=Le VPN est d\u00e9sactiv\u00e9 pour cette adresse IP. Voulez vous activer l\\'acc\u00e8s VPN ? +message.enable.vpn=Confirmer l\\'activation de l\\'acc\u00e8s VPN pour cette adresse IP. +message.enabling.security.group.provider=Activation du fournisseur de groupe de s\u00e9curit\u00e9 message.enabling.zone=Activation de la zone -message.enter.token=Entrer le jeton unique re\u00E7u dans le message d\\'invitation. -message.generate.keys=Confirmer la g\u00E9n\u00E9ration de nouvelles clefs pour cet utilisateur. -message.guest.traffic.in.advanced.zone=Le trafic r\u00E9seau d\\'invit\u00E9 est la communication entre les machines virtuelles utilisateur. Sp\u00E9cifier une plage d\\'identifiant VLAN pour le trafic des invit\u00E9s pour chaque r\u00E9seau physique. -message.guest.traffic.in.basic.zone=Le trafic r\u00E9seau d\\'invit\u00E9 est la communication entre les machines virtuelles utilisateur. Sp\u00E9cifier une plage d\\'adresses IP que CloudStack peut assigner aux machines virtuelles Invit\u00E9. S\\'assurer que cette plage n\\'empi\u00E8te pas sur la plage r\u00E9serv\u00E9e aux adresses IP Syst\u00E8me. -message.installWizard.click.retry=Appuyer sur le bouton pour essayer \u00E0 nouveau le d\u00E9marrage. -message.installWizard.copy.whatIsACluster=Un cluster permet de grouper les h\u00F4tes. Les h\u00F4tes d\\'un cluster ont un mat\u00E9riel identique, ex\u00E9cutent le m\u00EAme hyperviseur, sont sur le m\u00EAme sous-r\u00E9seau, et acc\u00E8dent au m\u00EAme stockage partag\u00E9. Les instances de machines virtuelles (VM) peuvent \u00EAtre migr\u00E9es \u00E0 chaud d\\'un h\u00F4te \u00E0 un autre au sein du m\u00EAme groupe, sans interrompre les services utilisateur. Un cluster est la trois \u00E8me plus large unit\u00E9 organisationnelle dans un d\u00E9ploiement CloudStack&\#8482;. Les clusters sont contenus dans les pods et les pods sont contenus dans les zones.

    CloudStack&\#8482; permet d\\'avoir plusieurs clusters dans un d\u00E9ploiement en nuage, mais pour une installation basique, il n\\'y a qu\\'un seul cluster. -message.installWizard.copy.whatIsAHost=Un h\u00F4te est une machine. Les h\u00F4tes fournissent les ressources informatiques qui ex\u00E9cutent les machines virtuelles invit\u00E9es. Chaque h\u00F4te a un logiciel hyperviseur install\u00E9 pour g\u00E9rer les machines virtuelles invit\u00E9es (sauf pour les h\u00F4tes de type \\'bare-metal\\', qui sont un cas particulier d\u00E9taill\u00E9 dans le Guide d\\'installation avanc\u00E9e). Par exemple, un serveur Linux avec KVM, un serveur Citrix XenServer, et un serveur ESXi sont des h\u00F4tes. Dans une installation basique, un seul h\u00F4te ex\u00E9cutant XenServer ou KVM est utilis\u00E9.

    L\\'h\u00F4te est la plus petite unit\u00E9 organisation au sein d\\'un d\u00E9ploiement CloudStack&\#8482;. Les h\u00F4tes sont contenus dans les clusters, les clusters sont contenus dans les pods et les pods sont contenus dans les zones. -message.installWizard.copy.whatIsAPod=Un pod repr\u00E9sente souvent un seul rack. Les h\u00F4tes dans le m\u00EAme pod sont dans le m\u00EAme sous-r\u00E9seau.
    Un pod est la deuxi\u00E8me plus grande unit\u00E9 organisationnelle au sein d\\'un d\u00E9ploiement CloudStack&\#8482;. Les pods sont contenus dans les zones. Chaque zone peut contenir un ou plusieurs pods ; dans l\\'Installation Basique, vous aurez juste un pod dans votre zone. -message.installWizard.copy.whatIsAZone=Une zone est la plus grande unit\u00E9 organisationnelle au sein d\\'un d\u00E9ploiement CloudStack&\#8482;. Une zone correspond typiquement \u00E0 un centre de donn\u00E9es, mais il est permis d\\'avoir plusieurs zones dans un centre de donn\u00E9es. L\\'avantage d\\'organiser une infrastructure en zones est de fournir une isolation physique et de la redondance. Par exemple, chaque zone peut avoir sa propre alimentation et de liaison avec le r\u00E9seau, et les zones peuvent \u00EAtre tr\u00E8s \u00E9loign\u00E9es g\u00E9ographiquement (m\u00EAme si ce n\\'est pas une obligation). -message.installWizard.copy.whatIsCloudStack=CloudStack&\#8482; est une plate-forme logicielle de pools de ressources informatiques pour construire des infrastructures publiques, priv\u00E9es et hybrides en tant que services (IaaS) dans les nuages. CloudStack&\#8482; g\u00E8re le r\u00E9seau, le stockage et les noeuds de calcul qui composent une infrastructure dans les nuages. Utilisez CloudStack&\#8482; pour d\u00E9ployer, g\u00E9rer et configurer les environnements d\\'informatiques dans les nuages.

    S\\'\u00E9tendant au-del\u00E0 des machines virtuelles individuelles fonctionnant sur du mat\u00E9riel standard, CloudStack&\#8482; offre une solution d\\'informatique en nuage cl\u00E9 en main pour fournir des centres de donn\u00E9es virtuels comme service - fournissant tous les composants essentiels pour construire, d\u00E9ployer et g\u00E9rer des applications \\'cloud\\' multi-niveaux et multi-locataire. Les versions libre et Premium sont disponibles, la version Libre offrant des caract\u00E9ristiques presque identiques. -message.installWizard.copy.whatIsPrimaryStorage=Une infrastructure CloudStack&\#8482; utilise deux types de stockage \: stockage principal et stockage secondaire. Les deux peuvent \u00EAtre des serveurs iSCSI ou NFS, ou sur disque local.

    Le stockage principal est associ\u00E9 \u00E0 un cluster, et stocke les volumes disques de chaque machine virtuelle pour toutes les VMs s\\'ex\u00E9cutant sur les h\u00F4tes dans le cluster. Le serveur de stockage principal est typiquement proche des h\u00F4tes. -message.installWizard.copy.whatIsSecondaryStorage=Le stockage secondaire est associ\u00E9 \u00E0 une zone, et il stocke les \u00E9l\u00E9ments suivants\:
    • Mod\u00E8les - images de syst\u00E8mes d\\'exploitation qui peuvent \u00EAtre utilis\u00E9es pour d\u00E9marrer les machines virtuelles et peuvent inclure des informations de configuration suppl\u00E9mentaires, telles que les applications pr\u00E9-install\u00E9es
    • Images ISO - images de syst\u00E8me d\\'exploitation ou d\\'installation d\\'OS qui peuvent \u00EAtre amor\u00E7able ou non-amor\u00E7able
    • Images de volume disque - capture des donn\u00E9es de machines virtuelles qui peuvent \u00EAtre utilis\u00E9es pour la r\u00E9cup\u00E9ration des donn\u00E9es ou cr\u00E9er des mod\u00E8les
    +message.enter.token=Entrer le jeton unique re\u00e7u dans le message d\\'invitation. +message.generate.keys=Confirmer la g\u00e9n\u00e9ration de nouvelles clefs pour cet utilisateur. +message.guest.traffic.in.advanced.zone=Le trafic r\u00e9seau d\\'invit\u00e9 est la communication entre les machines virtuelles utilisateur. Sp\u00e9cifier une plage d\\'identifiant VLAN pour le trafic des invit\u00e9s pour chaque r\u00e9seau physique. +message.guest.traffic.in.basic.zone=Le trafic r\u00e9seau d\\'invit\u00e9 est la communication entre les machines virtuelles utilisateur. Sp\u00e9cifier une plage d\\'adresses IP que CloudStack peut assigner aux machines virtuelles Invit\u00e9. S\\'assurer que cette plage n\\'empi\u00e8te pas sur la plage r\u00e9serv\u00e9e aux adresses IP Syst\u00e8me. +message.installWizard.click.retry=Appuyer sur le bouton pour essayer \u00e0 nouveau le d\u00e9marrage. +message.installWizard.copy.whatIsACluster=Un cluster permet de grouper les h\u00f4tes. Les h\u00f4tes d\\'un cluster ont un mat\u00e9riel identique, ex\u00e9cutent le m\u00eame hyperviseur, sont sur le m\u00eame sous-r\u00e9seau, et acc\u00e8dent au m\u00eame stockage partag\u00e9. Les instances de machines virtuelles (VM) peuvent \u00eatre migr\u00e9es \u00e0 chaud d\\'un h\u00f4te \u00e0 un autre au sein du m\u00eame groupe, sans interrompre les services utilisateur. Un cluster est la trois \u00e8me plus large unit\u00e9 organisationnelle dans un d\u00e9ploiement CloudStack&\#8482;. Les clusters sont contenus dans les pods et les pods sont contenus dans les zones.

    CloudStack&\#8482; permet d\\'avoir plusieurs clusters dans un d\u00e9ploiement en nuage, mais pour une installation basique, il n\\'y a qu\\'un seul cluster. +message.installWizard.copy.whatIsAHost=Un h\u00f4te est une machine. Les h\u00f4tes fournissent les ressources informatiques qui ex\u00e9cutent les machines virtuelles invit\u00e9es. Chaque h\u00f4te a un logiciel hyperviseur install\u00e9 pour g\u00e9rer les machines virtuelles invit\u00e9es (sauf pour les h\u00f4tes de type \\'bare-metal\\', qui sont un cas particulier d\u00e9taill\u00e9 dans le Guide d\\'installation avanc\u00e9e). Par exemple, un serveur Linux avec KVM, un serveur Citrix XenServer, et un serveur ESXi sont des h\u00f4tes. Dans une installation basique, un seul h\u00f4te ex\u00e9cutant XenServer ou KVM est utilis\u00e9.

    L\\'h\u00f4te est la plus petite unit\u00e9 organisation au sein d\\'un d\u00e9ploiement CloudStack&\#8482;. Les h\u00f4tes sont contenus dans les clusters, les clusters sont contenus dans les pods et les pods sont contenus dans les zones. +message.installWizard.copy.whatIsAPod=Un pod repr\u00e9sente souvent un seul rack. Les h\u00f4tes dans le m\u00eame pod sont dans le m\u00eame sous-r\u00e9seau.
    Un pod est la deuxi\u00e8me plus grande unit\u00e9 organisationnelle au sein d\\'un d\u00e9ploiement CloudStack&\#8482;. Les pods sont contenus dans les zones. Chaque zone peut contenir un ou plusieurs pods ; dans l\\'Installation Basique, vous aurez juste un pod dans votre zone. +message.installWizard.copy.whatIsAZone=Une zone est la plus grande unit\u00e9 organisationnelle au sein d\\'un d\u00e9ploiement CloudStack&\#8482;. Une zone correspond typiquement \u00e0 un centre de donn\u00e9es, mais il est permis d\\'avoir plusieurs zones dans un centre de donn\u00e9es. L\\'avantage d\\'organiser une infrastructure en zones est de fournir une isolation physique et de la redondance. Par exemple, chaque zone peut avoir sa propre alimentation et de liaison avec le r\u00e9seau, et les zones peuvent \u00eatre tr\u00e8s \u00e9loign\u00e9es g\u00e9ographiquement (m\u00eame si ce n\\'est pas une obligation). +message.installWizard.copy.whatIsCloudStack=CloudStack&\#8482; est une plate-forme logicielle de pools de ressources informatiques pour construire des infrastructures publiques, priv\u00e9es et hybrides en tant que services (IaaS) dans les nuages. CloudStack&\#8482; g\u00e8re le r\u00e9seau, le stockage et les noeuds de calcul qui composent une infrastructure dans les nuages. Utilisez CloudStack&\#8482; pour d\u00e9ployer, g\u00e9rer et configurer les environnements d\\'informatiques dans les nuages.

    S\\'\u00e9tendant au-del\u00e0 des machines virtuelles individuelles fonctionnant sur du mat\u00e9riel standard, CloudStack&\#8482; offre une solution d\\'informatique en nuage cl\u00e9 en main pour fournir des centres de donn\u00e9es virtuels comme service - fournissant tous les composants essentiels pour construire, d\u00e9ployer et g\u00e9rer des applications \\'cloud\\' multi-niveaux et multi-locataire. Les versions libre et Premium sont disponibles, la version Libre offrant des caract\u00e9ristiques presque identiques. +message.installWizard.copy.whatIsPrimaryStorage=Une infrastructure CloudStack&\#8482; utilise deux types de stockage \: stockage principal et stockage secondaire. Les deux peuvent \u00eatre des serveurs iSCSI ou NFS, ou sur disque local.

    Le stockage principal est associ\u00e9 \u00e0 un cluster, et stocke les volumes disques de chaque machine virtuelle pour toutes les VMs s\\'ex\u00e9cutant sur les h\u00f4tes dans le cluster. Le serveur de stockage principal est typiquement proche des h\u00f4tes. +message.installWizard.copy.whatIsSecondaryStorage=Le stockage secondaire est associ\u00e9 \u00e0 une zone, et il stocke les \u00e9l\u00e9ments suivants\:
    • Mod\u00e8les - images de syst\u00e8mes d\\'exploitation qui peuvent \u00eatre utilis\u00e9es pour d\u00e9marrer les machines virtuelles et peuvent inclure des informations de configuration suppl\u00e9mentaires, telles que les applications pr\u00e9-install\u00e9es
    • Images ISO - images de syst\u00e8me d\\'exploitation ou d\\'installation d\\'OS qui peuvent \u00eatre amor\u00e7able ou non-amor\u00e7able
    • Images de volume disque - capture des donn\u00e9es de machines virtuelles qui peuvent \u00eatre utilis\u00e9es pour la r\u00e9cup\u00e9ration des donn\u00e9es ou cr\u00e9er des mod\u00e8les
    message.installWizard.now.building=Construction de votre Cloud en cours -message.installWizard.tooltip.addCluster.name=Un nom pour le cluster. Ce choix est libre et n\\'est pas utilis\u00E9 par CloudStack. +message.installWizard.tooltip.addCluster.name=Un nom pour le cluster. Ce choix est libre et n\\'est pas utilis\u00e9 par CloudStack. message.installWizard.tooltip.addHost.hostname=Le nom DNS ou adresse IP du serveur. -message.installWizard.tooltip.addHost.password=Le mot de passe pour l\\'utilisateur indiqu\u00E9 pr\u00E9c\u00E9demment (issu de l\\'installation XenServer). +message.installWizard.tooltip.addHost.password=Le mot de passe pour l\\'utilisateur indiqu\u00e9 pr\u00e9c\u00e9demment (issu de l\\'installation XenServer). message.installWizard.tooltip.addHost.username=Habituellement root. message.installWizard.tooltip.addPod.name=Nom pour le pod -message.installWizard.tooltip.addPod.reservedSystemEndIp=Ceci est la plage d\\'adresses IP dans le r\u00E9seau priv\u00E9 que CloudStack utilise la gestion des VMs du stockage secondaire et les VMs Console Proxy. Ces adresses IP sont prises dans le m\u00EAme sous-r\u00E9seau que les serveurs h\u00F4tes. +message.installWizard.tooltip.addPod.reservedSystemEndIp=Ceci est la plage d\\'adresses IP dans le r\u00e9seau priv\u00e9 que CloudStack utilise la gestion des VMs du stockage secondaire et les VMs Console Proxy. Ces adresses IP sont prises dans le m\u00eame sous-r\u00e9seau que les serveurs h\u00f4tes. message.installWizard.tooltip.addPod.reservedSystemGateway=Passerelle pour les serveurs dans ce pod -message.installWizard.tooltip.addPod.reservedSystemNetmask=Le masque r\u00E9seau que les instances utiliseront sur le r\u00E9seau -message.installWizard.tooltip.addPod.reservedSystemStartIp=Ceci est la plage d\\'adresses IP dans le r\u00E9seau priv\u00E9 que CloudStack utilise la gestion des VMs du stockage secondaire et les VMs Console Proxy. Ces adresses IP sont prises dans le m\u00EAme sous-r\u00E9seau que les serveurs h\u00F4tes. +message.installWizard.tooltip.addPod.reservedSystemNetmask=Le masque r\u00e9seau que les instances utiliseront sur le r\u00e9seau +message.installWizard.tooltip.addPod.reservedSystemStartIp=Ceci est la plage d\\'adresses IP dans le r\u00e9seau priv\u00e9 que CloudStack utilise la gestion des VMs du stockage secondaire et les VMs Console Proxy. Ces adresses IP sont prises dans le m\u00eame sous-r\u00e9seau que les serveurs h\u00f4tes. message.installWizard.tooltip.addPrimaryStorage.name=Nom pour ce stockage -message.installWizard.tooltip.addPrimaryStorage.path=(pour NFS) Dans NFS, ceci est le chemin d\\'export depuis le serveur. (pour SharedMountPoint) Le chemin. Avec KVM, c\\'est le chemin sur chaque h\u00F4te o\u00F9 ce stockage principal est mont\u00E9. Par exemple, "/mnt/primary". +message.installWizard.tooltip.addPrimaryStorage.path=(pour NFS) Dans NFS, ceci est le chemin d\\'export depuis le serveur. (pour SharedMountPoint) Le chemin. Avec KVM, c\\'est le chemin sur chaque h\u00f4te o\u00f9 ce stockage principal est mont\u00e9. Par exemple, "/mnt/primary". message.installWizard.tooltip.addPrimaryStorage.server=(pour NFS, iSCSI ou PreSetup) Adresse IP ou nom DNS du stockage message.installWizard.tooltip.addSecondaryStorage.nfsServer=Adresse IP du serveur NFS supportant le stockage secondaire -message.installWizard.tooltip.addSecondaryStorage.path=Le chemin export\u00E9, situ\u00E9 sur le serveur sp\u00E9cifi\u00E9 pr\u00E9c\u00E9demment -message.installWizard.tooltip.addZone.dns1=Ces serveurs DNS sont utilis\u00E9s par les machines virtuelles Invit\u00E9es dans la zone. Ces serveurs DNS seront accessibles par le r\u00E9seau public, ce dernier sera ajout\u00E9 plus tard. Les adresses IP publiques pour la zone doivent avoir une route vers les serveurs DNS indiqu\u00E9s ici. -message.installWizard.tooltip.addZone.dns2=Ces serveurs DNS sont utilis\u00E9s par les machines virtuelles Invit\u00E9es dans la zone. Ces serveurs DNS seront accessibles par le r\u00E9seau public, ce dernier sera ajout\u00E9 plus tard. Les adresses IP publiques pour la zone doivent avoir une route vers les serveurs DNS indiqu\u00E9s ici. -message.installWizard.tooltip.addZone.internaldns1=Ces serveurs DNS sont utilis\u00E9s par les machines virtuelles Invit\u00E9es dans la zone. Ces serveurs DNS seront accessibles par le r\u00E9seau public, ce dernier sera ajout\u00E9 plus tard. Les adresses IP publiques pour la zone doivent avoir une route vers les serveurs DNS indiqu\u00E9s ici. -message.installWizard.tooltip.addZone.internaldns2=Ces serveurs DNS sont utilis\u00E9s par les machines virtuelles Invit\u00E9es dans la zone. Ces serveurs DNS seront accessibles par le r\u00E9seau public, ce dernier sera ajout\u00E9 plus tard. Les adresses IP publiques pour la zone doivent avoir une route vers les serveurs DNS indiqu\u00E9s ici. +message.installWizard.tooltip.addSecondaryStorage.path=Le chemin export\u00e9, situ\u00e9 sur le serveur sp\u00e9cifi\u00e9 pr\u00e9c\u00e9demment +message.installWizard.tooltip.addZone.dns1=Ces serveurs DNS sont utilis\u00e9s par les machines virtuelles Invit\u00e9es dans la zone. Ces serveurs DNS seront accessibles par le r\u00e9seau public, ce dernier sera ajout\u00e9 plus tard. Les adresses IP publiques pour la zone doivent avoir une route vers les serveurs DNS indiqu\u00e9s ici. +message.installWizard.tooltip.addZone.dns2=Ces serveurs DNS sont utilis\u00e9s par les machines virtuelles Invit\u00e9es dans la zone. Ces serveurs DNS seront accessibles par le r\u00e9seau public, ce dernier sera ajout\u00e9 plus tard. Les adresses IP publiques pour la zone doivent avoir une route vers les serveurs DNS indiqu\u00e9s ici. +message.installWizard.tooltip.addZone.internaldns1=Ces serveurs DNS sont utilis\u00e9s par les machines virtuelles Invit\u00e9es dans la zone. Ces serveurs DNS seront accessibles par le r\u00e9seau public, ce dernier sera ajout\u00e9 plus tard. Les adresses IP publiques pour la zone doivent avoir une route vers les serveurs DNS indiqu\u00e9s ici. +message.installWizard.tooltip.addZone.internaldns2=Ces serveurs DNS sont utilis\u00e9s par les machines virtuelles Invit\u00e9es dans la zone. Ces serveurs DNS seront accessibles par le r\u00e9seau public, ce dernier sera ajout\u00e9 plus tard. Les adresses IP publiques pour la zone doivent avoir une route vers les serveurs DNS indiqu\u00e9s ici. message.installWizard.tooltip.addZone.name=Nom pour la zone -message.installWizard.tooltip.configureGuestTraffic.description=Description pour ce r\u00E9seau -message.installWizard.tooltip.configureGuestTraffic.guestEndIp=La plage d\\'adresses IP qui sera disponible en allocation pour les machines invit\u00E9es dans cette zone. Si une carte r\u00E9seau est utilis\u00E9e, ces adresses IP peuvent \u00EAtre dans le m\u00EAme CIDR que le CIDR du pod. -message.installWizard.tooltip.configureGuestTraffic.guestGateway=La passerelle que les instances invit\u00E9es doivent utiliser -message.installWizard.tooltip.configureGuestTraffic.guestNetmask=Le masque r\u00E9seau que les instances devrait utiliser sur le r\u00E9seau -message.installWizard.tooltip.configureGuestTraffic.guestStartIp=La plage d\\'adresses IP qui sera disponible en allocation pour les machines invit\u00E9es dans cette zone. Si une carte r\u00E9seau est utilis\u00E9e, ces adresses IP peuvent \u00EAtre dans le m\u00EAme CIDR que le CIDR du pod. -message.installWizard.tooltip.configureGuestTraffic.name=Nom pour ce r\u00E9seau -message.instanceWizard.noTemplates=Vous n\\'avez pas de image disponible ; Ajouter un mod\u00E8le compatible puis relancer l\\'assistant de cr\u00E9ation d\\'instance. -message.ip.address.changed=Vos adresses IP ont peut \u00EAtre chang\u00E9es ; Voulez vous rafra\u00EEchir la liste ? Dans ce cas, le panneau de d\u00E9tail se fermera. -message.iso.desc=Image disque contenant des donn\u00E9es ou un support amor\u00E7able pour OS -message.join.project=Vous avez rejoint un projet. S\u00E9lectionnez la vue Projet pour le voir. -message.launch.vm.on.private.network=Souhaitez vous d\u00E9marrer cette instance sur votre propre r\u00E9seau priv\u00E9 ? -message.launch.zone=La zone est pr\u00EAte \u00E0 d\u00E9marrer ; passer \u00E0 l\\'\u00E9tape suivante. -message.lock.account=\u00CAtes-vous s\u00FBr que vous souhaitez verrouiller ce compte. En le verrouillant, les utilisateurs de ce compte ne seront plus capables de g\u00E9rer leurs ressources. Les ressources existantes resteront toutefois accessibles. -message.migrate.instance.confirm=Confirmez l\\'h\u00F4te vers lequel vous souhaitez migrer cette instance -message.migrate.instance.to.host=Confirmer la migration de l\\'instance vers un autre h\u00F4te +message.installWizard.tooltip.configureGuestTraffic.description=Description pour ce r\u00e9seau +message.installWizard.tooltip.configureGuestTraffic.guestEndIp=La plage d\\'adresses IP qui sera disponible en allocation pour les machines invit\u00e9es dans cette zone. Si une carte r\u00e9seau est utilis\u00e9e, ces adresses IP peuvent \u00eatre dans le m\u00eame CIDR que le CIDR du pod. +message.installWizard.tooltip.configureGuestTraffic.guestGateway=La passerelle que les instances invit\u00e9es doivent utiliser +message.installWizard.tooltip.configureGuestTraffic.guestNetmask=Le masque r\u00e9seau que les instances devrait utiliser sur le r\u00e9seau +message.installWizard.tooltip.configureGuestTraffic.guestStartIp=La plage d\\'adresses IP qui sera disponible en allocation pour les machines invit\u00e9es dans cette zone. Si une carte r\u00e9seau est utilis\u00e9e, ces adresses IP peuvent \u00eatre dans le m\u00eame CIDR que le CIDR du pod. +message.installWizard.tooltip.configureGuestTraffic.name=Nom pour ce r\u00e9seau +message.instanceWizard.noTemplates=Vous n\\'avez pas de image disponible ; Ajouter un mod\u00e8le compatible puis relancer l\\'assistant de cr\u00e9ation d\\'instance. +message.ip.address.changed=Vos adresses IP ont peut \u00eatre chang\u00e9es ; Voulez vous rafra\u00eechir la liste ? Dans ce cas, le panneau de d\u00e9tail se fermera. +message.iso.desc=Image disque contenant des donn\u00e9es ou un support amor\u00e7able pour OS +message.join.project=Vous avez rejoint un projet. S\u00e9lectionnez la vue Projet pour le voir. +message.launch.vm.on.private.network=Souhaitez vous d\u00e9marrer cette instance sur votre propre r\u00e9seau priv\u00e9 ? +message.launch.zone=La zone est pr\u00eate \u00e0 d\u00e9marrer ; passer \u00e0 l\\'\u00e9tape suivante. +message.lock.account=\u00cates-vous s\u00fbr que vous souhaitez verrouiller ce compte. En le verrouillant, les utilisateurs de ce compte ne seront plus capables de g\u00e9rer leurs ressources. Les ressources existantes resteront toutefois accessibles. +message.migrate.instance.confirm=Confirmez l\\'h\u00f4te vers lequel vous souhaitez migrer cette instance +message.migrate.instance.to.host=Confirmer la migration de l\\'instance vers un autre h\u00f4te message.migrate.instance.to.ps=Confirmer la migration de l\\'instance vers un autre stockage principal message.migrate.router.confirm=Confirmer la migration du routeur vers \: -message.migrate.systemvm.confirm=Confirmer la migration de la VM syst\u00E8me vers \: +message.migrate.systemvm.confirm=Confirmer la migration de la VM syst\u00e8me vers \: message.migrate.volume=Confirmer la migration du volume vers un autre stockage principal. message.new.user=Renseigner les informations suivantes pour ajouter un nouveau compte utilisateur -message.no.network.support=S\u00E9lectionnez l\\'hyperviseur. vSphere, n\\'a pas de fonctionnalit\u00E9s suppl\u00E9mentaires pour le r\u00E9seau. Continuez \u00E0 l\\'\u00E9tape 5. -message.no.network.support.configuration.not.true=Il n\\'y a pas de zone avec la fonction groupe de s\u00E9curit\u00E9 active. D\u00E8s lors, pas de fonction r\u00E9seau suppl\u00E9mentaires disponibles. Continuer \u00E0 l\\'\u00E9tape 5. -message.no.projects=Vous n\\'avez pas de projet.
    Vous pouvez en cr\u00E9er un depuis la section projets. +message.no.network.support.configuration.not.true=Il n\\'y a pas de zone avec la fonction groupe de s\u00e9curit\u00e9 active. D\u00e8s lors, pas de fonction r\u00e9seau suppl\u00e9mentaires disponibles. Continuer \u00e0 l\\'\u00e9tape 5. +message.no.network.support=S\u00e9lectionnez l\\'hyperviseur. vSphere, n\\'a pas de fonctionnalit\u00e9s suppl\u00e9mentaires pour le r\u00e9seau. Continuez \u00e0 l\\'\u00e9tape 5. message.no.projects.adminOnly=Vous n\\'avez pas de projet.
    Contacter votre administrateur pour ajouter un projet. +message.no.projects=Vous n\\'avez pas de projet.
    Vous pouvez en cr\u00e9er un depuis la section projets. message.number.clusters=

    \# de Clusters

    -message.number.hosts=

    \# d\\' H\u00F4tes

    +message.number.hosts=

    \# d\\' H\u00f4tes

    message.number.pods=

    \# de Pods

    message.number.storage=

    \# de Volumes de Stockage Principal

    message.number.zones=

    \# de Zones

    message.pending.projects.1=Vous avez des invitations projet en attente \: -message.pending.projects.2=Pour les visualiser, aller dans la section projets, puis s\u00E9lectionner invitation dans la liste d\u00E9roulante. -message.please.add.at.lease.one.traffic.range=Ajouter au moins une plage r\u00E9seau -message.please.proceed=Continuer vers la prochaine \u00E9tape. -message.please.select.a.configuration.for.your.zone=S\u00E9lectionner une configuration pour la zone. -message.please.select.a.different.public.and.management.network.before.removing=S\u00E9lectionner un r\u00E9seau public et d\\'administration diff\u00E9rent avant de supprimer -message.please.select.networks=S\u00E9lectionner les r\u00E9seaux pour votre machine virtuelle. -message.please.wait.while.zone.is.being.created=Patienter pendant la cr\u00E9ation de la zone, cela peut prendre du temps... -message.project.invite.sent=Invitation envoy\u00E9e ; les utilisateurs seront ajout\u00E9s apr\u00E8s acceptation de l\\'invitation -message.public.traffic.in.advanced.zone=Le trafic public est g\u00E9n\u00E9r\u00E9 lorsque les machines virtuelles dans le nuage acc\u00E8dent \u00E0 Internet. Des adresses IP publiquement accessibles doivent \u00EAtre pr\u00E9vues \u00E0 cet effet. Les utilisateurs peuvent utiliser l\\'interface d\\'administration de CloudStack pour acqu\u00E9rir ces adresses IP qui impl\u00E9menteront une translation d\\'adresse NAT entre le r\u00E9seau d\\'invit\u00E9 et le r\u00E9seau public.

    Fournir au moins une plage d\\'adresses IP pour le trafic Internet. -message.public.traffic.in.basic.zone=Le trafic public est g\u00E9n\u00E9r\u00E9 lorsque les machines virtuelles dans le nuage acc\u00E8dent \u00E0 Internet ou fournissent des services \u00E0 des utilisateurs sur Internet. Des adresses IP publiquement accessibles doivent \u00EAtre pr\u00E9vus \u00E0 cet effet. Quand une instance est cr\u00E9\u00E9e, une adresse IP publique depuis un ensemble d\\'adresses IP publiques sera allou\u00E9e \u00E0 l\\'instance, en plus de l\\'adresse IP de l\\'invit\u00E9. La translation d\\'adresses statique NAT 1-1 sera mises en place automatiquement entre l\\'adresse IP publique et l\\'adresse IP de l\\'invit\u00E9. Les utilisateurs peuvent \u00E9galement utiliser l\\'interface d\\'administration CloudStack pour acqu\u00E9rir des adresses IP suppl\u00E9mentaires pour ajouter une translation d\\'adresse statique NAT entre leurs instances et le r\u00E9seau d\\'adresses IP publiques. +message.pending.projects.2=Pour les visualiser, aller dans la section projets, puis s\u00e9lectionner invitation dans la liste d\u00e9roulante. +message.please.add.at.lease.one.traffic.range=Ajouter au moins une plage r\u00e9seau +message.please.proceed=Continuer vers la prochaine \u00e9tape. +message.please.select.a.configuration.for.your.zone=S\u00e9lectionner une configuration pour la zone. +message.please.select.a.different.public.and.management.network.before.removing=S\u00e9lectionner un r\u00e9seau public et d\\'administration diff\u00e9rent avant de supprimer +message.please.select.networks=S\u00e9lectionner les r\u00e9seaux pour votre machine virtuelle. +message.please.wait.while.zone.is.being.created=Patienter pendant la cr\u00e9ation de la zone, cela peut prendre du temps... +message.project.invite.sent=Invitation envoy\u00e9e ; les utilisateurs seront ajout\u00e9s apr\u00e8s acceptation de l\\'invitation +message.public.traffic.in.advanced.zone=Le trafic public est g\u00e9n\u00e9r\u00e9 lorsque les machines virtuelles dans le nuage acc\u00e8dent \u00e0 Internet. Des adresses IP publiquement accessibles doivent \u00eatre pr\u00e9vues \u00e0 cet effet. Les utilisateurs peuvent utiliser l\\'interface d\\'administration de CloudStack pour acqu\u00e9rir ces adresses IP qui impl\u00e9menteront une translation d\\'adresse NAT entre le r\u00e9seau d\\'invit\u00e9 et le r\u00e9seau public.

    Fournir au moins une plage d\\'adresses IP pour le trafic Internet. +message.public.traffic.in.basic.zone=Le trafic public est g\u00e9n\u00e9r\u00e9 lorsque les machines virtuelles dans le nuage acc\u00e8dent \u00e0 Internet ou fournissent des services \u00e0 des utilisateurs sur Internet. Des adresses IP publiquement accessibles doivent \u00eatre pr\u00e9vus \u00e0 cet effet. Quand une instance est cr\u00e9\u00e9e, une adresse IP publique depuis un ensemble d\\'adresses IP publiques sera allou\u00e9e \u00e0 l\\'instance, en plus de l\\'adresse IP de l\\'invit\u00e9. La translation d\\'adresses statique NAT 1-1 sera mises en place automatiquement entre l\\'adresse IP publique et l\\'adresse IP de l\\'invit\u00e9. Les utilisateurs peuvent \u00e9galement utiliser l\\'interface d\\'administration CloudStack pour acqu\u00e9rir des adresses IP suppl\u00e9mentaires pour ajouter une translation d\\'adresse statique NAT entre leurs instances et le r\u00e9seau d\\'adresses IP publiques. message.remove.vpc=Confirmer la suppression du VPC -message.remove.vpn.access=\u00CAtes-vous s\u00FBr que vous souhaitez supprimer l\\'acc\u00E8s VPN \u00E0 l\\'utilisateur suivant. -message.reset.VPN.connection=Confirmer le r\u00E9-initialisation de la connexion VPN -message.reset.password.warning.notPasswordEnabled=Le mod\u00E8le de cette instance a \u00E9t\u00E9 cr\u00E9\u00E9 sans la gestion de mot de passe -message.reset.password.warning.notStopped=Votre instance doit \u00EAtre arr\u00EAt\u00E9e avant de changer son mot de passe -message.restart.mgmt.server=Red\u00E9marrez votre(vos) serveur(s) de management pour appliquer les nouveaux param\u00E8tres. -message.restart.mgmt.usage.server=Red\u00E9marrer le ou les serveur(s) de gestion et le ou les serveur(s) de consommation pour que les nouveaux param\u00E8tres soient pris en compte. -message.restart.network=Tous les services fournit par ce routeur virtuel vont \u00EAtre interrompus. Confirmer le red\u00E9marrage de ce routeur. -message.restart.vpc=Confirmer le red\u00E9marrage du VPC -message.security.group.usage=(Utilisez Ctrl-clic pour s\u00E9lectionner les groupes de s\u00E9curit\u00E9 vis\u00E9s) -message.select.a.zone=Une zone correspond typiquement \u00E0 un seul centre de donn\u00E9es. Des zones multiples peuvent permettre de rendre votre cloud plus fiable en apportant une isolation physique et de la redondance. -message.select.instance=S\u00E9lectionner une instance. -message.select.iso=S\u00E9lectionner un ISO pour votre nouvelle instance virtuelle. -message.select.item=Merci de s\u00E9lectionner un \u00E9l\u00E9ment. -message.select.security.groups=Merci de s\u00E9lectionner un(des) groupe(s) de s\u00E9curit\u00E9 pour la nouvelle VM -message.select.template=S\u00E9lectionner un mod\u00E8le pour votre nouvelle instance virtuelle. -message.setup.physical.network.during.zone.creation=Lorsque vous ajoutez une zone avanc\u00E9e, vous avez besoin de d\u00E9finir un ou plusieurs r\u00E9seaux physiques. Chaque r\u00E9seau correspond \u00E0 une carte r\u00E9seau sur l\\'hyperviseur. Chaque r\u00E9seau physique peut supporter un ou plusieurs types de trafic, avec certaines restrictions sur la fa\u00E7on dont ils peuvent \u00EAtre combin\u00E9s.

    Glisser et d\u00E9poser un ou plusieurs types de trafic sur chaque r\u00E9seau physique. -message.setup.physical.network.during.zone.creation.basic=Quand vous ajoutez une zone basique, vous pouvez param\u00E9trer un seul r\u00E9seau physique, correspondant \u00E0 une carte r\u00E9seau sur l\\'hyperviseur. Ce r\u00E9seau comportera plusieurs types de trafic.

    Vous pouvez \u00E9galement glisser et d\u00E9poser d\\'autres types de trafic sur le r\u00E9seau physique. -message.setup.successful=Installation du Cloud r\u00E9ussie \! -message.snapshot.schedule=Vous pouvez mettre en place les politiques de g\u00E9n\u00E9ration d\\'instantan\u00E9s en s\u00E9lectionnant les options disponibles ci-dessous et en appliquant votre politique. +message.remove.vpn.access=\u00cates-vous s\u00fbr que vous souhaitez supprimer l\\'acc\u00e8s VPN \u00e0 l\\'utilisateur suivant. +message.reset.password.warning.notPasswordEnabled=Le mod\u00e8le de cette instance a \u00e9t\u00e9 cr\u00e9\u00e9 sans la gestion de mot de passe +message.reset.password.warning.notStopped=Votre instance doit \u00eatre arr\u00eat\u00e9e avant de changer son mot de passe +message.reset.VPN.connection=Confirmer le r\u00e9-initialisation de la connexion VPN +message.restart.mgmt.server=Red\u00e9marrez votre(vos) serveur(s) de management pour appliquer les nouveaux param\u00e8tres. +message.restart.mgmt.usage.server=Red\u00e9marrer le ou les serveur(s) de gestion et le ou les serveur(s) de consommation pour que les nouveaux param\u00e8tres soient pris en compte. +message.restart.network=Tous les services fournit par ce routeur virtuel vont \u00eatre interrompus. Confirmer le red\u00e9marrage de ce routeur. +message.restart.vpc=Confirmer le red\u00e9marrage du VPC +message.security.group.usage=(Utilisez Ctrl-clic pour s\u00e9lectionner les groupes de s\u00e9curit\u00e9 vis\u00e9s) +message.select.a.zone=Une zone correspond typiquement \u00e0 un seul centre de donn\u00e9es. Des zones multiples peuvent permettre de rendre votre cloud plus fiable en apportant une isolation physique et de la redondance. +message.select.instance=S\u00e9lectionner une instance. +message.select.iso=S\u00e9lectionner un ISO pour votre nouvelle instance virtuelle. +message.select.item=Merci de s\u00e9lectionner un \u00e9l\u00e9ment. +message.select.security.groups=Merci de s\u00e9lectionner un(des) groupe(s) de s\u00e9curit\u00e9 pour la nouvelle VM +message.select.template=S\u00e9lectionner un mod\u00e8le pour votre nouvelle instance virtuelle. +message.setup.physical.network.during.zone.creation.basic=Quand vous ajoutez une zone basique, vous pouvez param\u00e9trer un seul r\u00e9seau physique, correspondant \u00e0 une carte r\u00e9seau sur l\\'hyperviseur. Ce r\u00e9seau comportera plusieurs types de trafic.

    Vous pouvez \u00e9galement glisser et d\u00e9poser d\\'autres types de trafic sur le r\u00e9seau physique. +message.setup.physical.network.during.zone.creation=Lorsque vous ajoutez une zone avanc\u00e9e, vous avez besoin de d\u00e9finir un ou plusieurs r\u00e9seaux physiques. Chaque r\u00e9seau correspond \u00e0 une carte r\u00e9seau sur l\\'hyperviseur. Chaque r\u00e9seau physique peut supporter un ou plusieurs types de trafic, avec certaines restrictions sur la fa\u00e7on dont ils peuvent \u00eatre combin\u00e9s.

    Glisser et d\u00e9poser un ou plusieurs types de trafic sur chaque r\u00e9seau physique. +message.setup.successful=Installation du Cloud r\u00e9ussie \! +message.snapshot.schedule=Vous pouvez mettre en place les politiques de g\u00e9n\u00e9ration d\\'instantan\u00e9s en s\u00e9lectionnant les options disponibles ci-dessous et en appliquant votre politique. message.specify.url=Renseigner l\\'URL -message.step.1.continue=S\u00E9lectionnez un mod\u00E8le ou une image ISO pour continuer -message.step.1.desc=S\u00E9lectionnez un mod\u00E8le pour votre nouvelle instance virtuelle. Vous pouvez \u00E9galement choisir un mod\u00E8le vierge sur lequel une image ISO pourra \u00EAtre install\u00E9e. -message.step.2.continue=S\u00E9lectionnez une offre de service pour continuer -message.step.3.continue=S\u00E9lectionnez un offre de service de disque pour continuer -message.step.4.continue=S\u00E9lectionnez au moins un r\u00E9seau pour continuer -message.step.4.desc=S\u00E9lectionnez le r\u00E9seau principal auquel votre instance va \u00EAtre connect\u00E9. -message.storage.traffic=Trafic entre les ressources internes de CloudStack, incluant tous les composants qui communiquent avec le serveur d\\'administration, tels que les h\u00F4tes et les machines virtuelles Syst\u00E8mes CloudStack. Veuillez configurer le trafic de stockage ici. -message.suspend.project=\u00CAtes-vous s\u00FBr de vouloir suspendre ce projet ? -message.template.desc=Image OS pouvant \u00EAtre utilis\u00E9e pour d\u00E9marrer une VM -message.tooltip.dns.1=Nom d\\'un serveur DNS utilis\u00E9 par les VM de la zone. Les adresses IP publiques de cette zone doivent avoir une route vers ce serveur. -message.tooltip.dns.2=Nom d\\'un serveur DNS secondaire utilis\u00E9 par les VM de la zone. Les adresses IP publiques de cette zone doivent avoir une route vers ce serveur. -message.tooltip.internal.dns.1=Nom d\\'un serveur DNS que CloudStack peut utiliser pour les VM syst\u00E8me dans cette zone. Les adresses IP priv\u00E9es des pods doivent avoir une route vers ce serveur. -message.tooltip.internal.dns.2=Nom d\\'un serveur DNS que CloudStack peut utiliser pour les VM syst\u00E8me dans cette zone. Les adresses IP priv\u00E9es des pods doivent avoir une route vers ce serveur. -message.tooltip.network.domain=Suffixe DNS qui cr\u00E9era un nom de domaine personnalis\u00E9 pour les r\u00E9seau accessible par les VM invit\u00E9es. +message.step.1.continue=S\u00e9lectionnez un mod\u00e8le ou une image ISO pour continuer +message.step.1.desc=S\u00e9lectionnez un mod\u00e8le pour votre nouvelle instance virtuelle. Vous pouvez \u00e9galement choisir un mod\u00e8le vierge sur lequel une image ISO pourra \u00eatre install\u00e9e. +message.step.2.continue=S\u00e9lectionnez une offre de service pour continuer +message.step.3.continue=S\u00e9lectionnez un offre de service de disque pour continuer +message.step.4.continue=S\u00e9lectionnez au moins un r\u00e9seau pour continuer +message.step.4.desc=S\u00e9lectionnez le r\u00e9seau principal auquel votre instance va \u00eatre connect\u00e9. +message.storage.traffic=Trafic entre les ressources internes de CloudStack, incluant tous les composants qui communiquent avec le serveur d\\'administration, tels que les h\u00f4tes et les machines virtuelles Syst\u00e8mes CloudStack. Veuillez configurer le trafic de stockage ici. +message.suspend.project=\u00cates-vous s\u00fbr de vouloir suspendre ce projet ? +message.template.desc=Image OS pouvant \u00eatre utilis\u00e9e pour d\u00e9marrer une VM +message.tooltip.dns.1=Nom d\\'un serveur DNS utilis\u00e9 par les VM de la zone. Les adresses IP publiques de cette zone doivent avoir une route vers ce serveur. +message.tooltip.dns.2=Nom d\\'un serveur DNS secondaire utilis\u00e9 par les VM de la zone. Les adresses IP publiques de cette zone doivent avoir une route vers ce serveur. +message.tooltip.internal.dns.1=Nom d\\'un serveur DNS que CloudStack peut utiliser pour les VM syst\u00e8me dans cette zone. Les adresses IP priv\u00e9es des pods doivent avoir une route vers ce serveur. +message.tooltip.internal.dns.2=Nom d\\'un serveur DNS que CloudStack peut utiliser pour les VM syst\u00e8me dans cette zone. Les adresses IP priv\u00e9es des pods doivent avoir une route vers ce serveur. +message.tooltip.network.domain=Suffixe DNS qui cr\u00e9era un nom de domaine personnalis\u00e9 pour les r\u00e9seau accessible par les VM invit\u00e9es. message.tooltip.pod.name=Nom pour ce pod. -message.tooltip.reserved.system.gateway=La passerelle pour les h\u00F4tes du pod. -message.tooltip.reserved.system.netmask=Le pr\u00E9fixe r\u00E9seau utilis\u00E9 par le sous-r\u00E9seau du pod. Au format CIDR. +message.tooltip.reserved.system.gateway=La passerelle pour les h\u00f4tes du pod. +message.tooltip.reserved.system.netmask=Le pr\u00e9fixe r\u00e9seau utilis\u00e9 par le sous-r\u00e9seau du pod. Au format CIDR. message.tooltip.zone.name=Nom pour cette zone. -message.update.os.preference=Choisissez votre OS pr\u00E9f\u00E9r\u00E9 pour cet h\u00F4te. Toutes les instances avec des pr\u00E9f\u00E9rences similaires seront d\\'abord allou\u00E9es \u00E0 cet h\u00F4te avant d\\'en choisir un autre. -message.update.resource.count=Confirmer la mise \u00E0 jour des ressources pour ce compte. -message.update.ssl=Soumettez un nouveau certificat SSL compatible X.509 qui sera mis \u00E0 jour sur l\\'ensemble de instance de proxy console. -message.validate.instance.name=Le nom de l\\'instance ne peut d\u00E9passer 63 caract\u00E8res. Seuls les lettres de a \u00E0 z, les chiffres de 0 \u00E0 9 et les tirets sont accept\u00E9s. Le nom doit commencer par une lettre et se terminer par une lettre ou un chiffre. -message.virtual.network.desc=Un r\u00E9seau virtuel d\u00E9di\u00E9 pour votre compte. Ce domaine de multi-diffusion est contenu dans un VLAN et l\\'ensemble des r\u00E9seaux d\\'acc\u00E8s publique sont rout\u00E9s par un routeur virtuel. -message.vm.create.template.confirm=Cr\u00E9er un mod\u00E8le va red\u00E9marrer la VM automatiquement -message.vm.review.launch=Merci de v\u00E9rifier les informations suivantes et de confirmer que votre instance virtuelle est correcte avant de la d\u00E9marrer. -message.volume.create.template.confirm=\u00CAtes-vous s\u00FBr que vous souhaitez cr\u00E9er un mod\u00E8le pour ce disque. La cr\u00E9ation peut prendre plusieurs minutes, voire plus, selon la taille du volume. -message.you.must.have.at.least.one.physical.network=Vous devez avoir au moins un r\u00E9seau physique -message.zone.creation.complete.would.you.like.to.enable.this.zone=Cr\u00E9ation de la zone termin\u00E9e. Voulez-vous l\\'activer ? -message.zone.no.network.selection=La zone s\u00E9lectionn\u00E9e ne propose pas le r\u00E9seau choisi -message.zone.step.1.desc=S\u00E9lectionnez un mod\u00E8le de r\u00E9seau pour votre zone. +message.update.os.preference=Choisissez votre OS pr\u00e9f\u00e9r\u00e9 pour cet h\u00f4te. Toutes les instances avec des pr\u00e9f\u00e9rences similaires seront d\\'abord allou\u00e9es \u00e0 cet h\u00f4te avant d\\'en choisir un autre. +message.update.resource.count=Confirmer la mise \u00e0 jour des ressources pour ce compte. +message.update.ssl=Soumettez un nouveau certificat SSL compatible X.509 qui sera mis \u00e0 jour sur l\\'ensemble de instance de proxy console. +message.validate.instance.name=Le nom de l\\'instance ne peut d\u00e9passer 63 caract\u00e8res. Seuls les lettres de a \u00e0 z, les chiffres de 0 \u00e0 9 et les tirets sont accept\u00e9s. Le nom doit commencer par une lettre et se terminer par une lettre ou un chiffre. +message.virtual.network.desc=Un r\u00e9seau virtuel d\u00e9di\u00e9 pour votre compte. Ce domaine de multi-diffusion est contenu dans un VLAN et l\\'ensemble des r\u00e9seaux d\\'acc\u00e8s publique sont rout\u00e9s par un routeur virtuel. +message.vm.create.template.confirm=Cr\u00e9er un mod\u00e8le va red\u00e9marrer la VM automatiquement +message.vm.review.launch=Merci de v\u00e9rifier les informations suivantes et de confirmer que votre instance virtuelle est correcte avant de la d\u00e9marrer. +message.volume.create.template.confirm=\u00cates-vous s\u00fbr que vous souhaitez cr\u00e9er un mod\u00e8le pour ce disque. La cr\u00e9ation peut prendre plusieurs minutes, voire plus, selon la taille du volume. +message.you.must.have.at.least.one.physical.network=Vous devez avoir au moins un r\u00e9seau physique +message.Zone.creation.complete=Cr\u00e9ation de la zone termin\u00e9e +message.zone.creation.complete.would.you.like.to.enable.this.zone=Cr\u00e9ation de la zone termin\u00e9e. Voulez-vous l\\'activer ? +message.zone.no.network.selection=La zone s\u00e9lectionn\u00e9e ne propose pas le r\u00e9seau choisi +message.zone.step.1.desc=S\u00e9lectionnez un mod\u00e8le de r\u00e9seau pour votre zone. message.zone.step.2.desc=Renseigner les informations suivantes pour ajouter une nouvelle zone message.zone.step.3.desc=Renseigner les informations suivantes pour ajouter un nouveau pod -message.zoneWizard.enable.local.storage=ATTENTION \: si vous activez le stockage local pour cette zone, vous devez effectuer les op\u00E9rations suivantes, selon l\\'endroit o\u00F9 vous souhaitez lancer vos machines virtuelles Syst\u00E8mes \:

    1. Si les machines virtuelles Syst\u00E8mes doivent \u00EAtre lanc\u00E9es depuis le stockage principal, ce dernier doit \u00EAtre ajout\u00E9 \u00E0 la zone apr\u00E8s la cr\u00E9ation. Vous devez \u00E9galement d\u00E9marrer la zone dans un \u00E9tat d\u00E9sactiv\u00E9.

    2. Si les machines virtuelles Syst\u00E8mes doivent \u00EAtre lanc\u00E9es depuis le stockage local, le param\u00E8tre system.vm.use.local.storage doit \u00EAtre d\u00E9fini \u00E0 \\'true\\' avant d\\'activer la zone.


    Voulez-vous continuer ? +message.zoneWizard.enable.local.storage=ATTENTION \: si vous activez le stockage local pour cette zone, vous devez effectuer les op\u00e9rations suivantes, selon l\\'endroit o\u00f9 vous souhaitez lancer vos machines virtuelles Syst\u00e8mes \:

    1. Si les machines virtuelles Syst\u00e8mes doivent \u00eatre lanc\u00e9es depuis le stockage principal, ce dernier doit \u00eatre ajout\u00e9 \u00e0 la zone apr\u00e8s la cr\u00e9ation. Vous devez \u00e9galement d\u00e9marrer la zone dans un \u00e9tat d\u00e9sactiv\u00e9.

    2. Si les machines virtuelles Syst\u00e8mes doivent \u00eatre lanc\u00e9es depuis le stockage local, le param\u00e8tre system.vm.use.local.storage doit \u00eatre d\u00e9fini \u00e0 \\'true\\' avant d\\'activer la zone.


    Voulez-vous continuer ? mode=Mode -network.rate=D\u00E9bit R\u00E9seau -notification.reboot.instance=Red\u00E9marrer l\\'instance -notification.start.instance=D\u00E9marrer l\\'instance +network.rate=D\u00e9bit R\u00e9seau +notification.reboot.instance=Red\u00e9marrer l\\'instance +notification.start.instance=D\u00e9marrer l\\'instance notification.stop.instance=Stopper l\\'instance -side.by.side=C\u00F4te \u00E0 c\u00F4te -state.Accepted=Accept\u00E9 +side.by.side=C\u00f4te \u00e0 c\u00f4te +state.Accepted=Accept\u00e9 state.Active=Actif -state.Allocated=Allou\u00E9 +state.Allocated=Allou\u00e9 state.Allocating=Allocation en cours -state.BackedUp=Sauvegard\u00E9 +state.BackedUp=Sauvegard\u00e9 state.BackingUp=Sauvegarde en cours -state.Completed=Termin\u00E9 -state.Creating=Cr\u00E9ation en cours -state.Declined=Refus\u00E9 -state.Destroyed=Supprim\u00E9e -state.Disabled=D\u00E9sactiv\u00E9 +state.Completed=Termin\u00e9 +state.Creating=Cr\u00e9ation en cours +state.Declined=Refus\u00e9 +state.Destroyed=Supprim\u00e9e +state.Disabled=D\u00e9sactiv\u00e9 +state.enabled=Actifs state.Enabled=Actifs state.Error=Erreur state.Expunging=Purge en cours state.Migrating=Migration en cours state.Pending=En attente -state.Ready=Pr\u00EAt -state.Running=D\u00E9marr\u00E9e -state.Starting=D\u00E9marrage en cours -state.Stopped=Arr\u00EAt\u00E9e -state.Stopping=Arr\u00EAt en cours +state.ready=Pr\u00eat +state.Ready=Pr\u00eat +state.Running=D\u00e9marr\u00e9e +state.Starting=D\u00e9marrage en cours +state.Stopped=Arr\u00eat\u00e9e +state.Stopping=Arr\u00eat en cours state.Suspended=Suspendu -state.enabled=Actifs -state.ready=Pr\u00EAt ui.listView.filters.all=Tous ui.listView.filters.mine=Mon diff --git a/client/WEB-INF/classes/resources/messages_it_IT.properties b/client/WEB-INF/classes/resources/messages_it_IT.properties index c6bc2dba127..f0c6524a3f0 100644 --- a/client/WEB-INF/classes/resources/messages_it_IT.properties +++ b/client/WEB-INF/classes/resources/messages_it_IT.properties @@ -15,6 +15,7 @@ # 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 diff --git a/client/WEB-INF/classes/resources/messages_ja.properties b/client/WEB-INF/classes/resources/messages_ja.properties index 2380e914a75..e4ea7944048 100644 --- a/client/WEB-INF/classes/resources/messages_ja.properties +++ b/client/WEB-INF/classes/resources/messages_ja.properties @@ -15,873 +15,874 @@ # specific language governing permissions and limitations # under the License. -changed.item.properties=\u9805\u76EE\u306E\u30D7\u30ED\u30D1\u30C6\u30A3\u306E\u5909\u66F4 + +changed.item.properties=\u9805\u76ee\u306e\u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u5909\u66f4 confirm.enable.s3=S3\u57fa\u76e4\u30bb\u30ab\u30f3\u30c0\u30ea\u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u6709\u52b9\u5316\u3059\u308b\u305f\u3081\u306b\u306f\u3001\u4ee5\u4e0b\u306e\u60c5\u5831\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044 -confirm.enable.swift=Swift1 \u306E\u30B5\u30DD\u30FC\u30C8\u3092\u6709\u52B9\u306B\u3059\u308B\u306B\u306F\u3001\u6B21\u306E\u60C5\u5831\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -error.could.not.enable.zone=\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F -error.installWizard.message=\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u623B\u3063\u3066\u30A8\u30E9\u30FC\u3092\u4FEE\u6B63\u3067\u304D\u307E\u3059\u3002 -error.invalid.username.password=\u7121\u52B9\u306A\u30E6\u30FC\u30B6\u30FC\u540D\u307E\u305F\u306F\u30D1\u30B9\u30EF\u30FC\u30C9 -error.login=\u30E6\u30FC\u30B6\u30FC\u540D/\u30D1\u30B9\u30EF\u30FC\u30C9\u304C\u8A18\u9332\u3068\u4E00\u81F4\u3057\u307E\u305B\u3093\u3002 +confirm.enable.swift=Swift1 \u306e\u30b5\u30dd\u30fc\u30c8\u3092\u6709\u52b9\u306b\u3059\u308b\u306b\u306f\u3001\u6b21\u306e\u60c5\u5831\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +error.could.not.enable.zone=\u30be\u30fc\u30f3\u3092\u6709\u52b9\u306b\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f +error.installWizard.message=\u554f\u984c\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002\u623b\u3063\u3066\u30a8\u30e9\u30fc\u3092\u4fee\u6b63\u3067\u304d\u307e\u3059\u3002 +error.invalid.username.password=\u7121\u52b9\u306a\u30e6\u30fc\u30b6\u30fc\u540d\u307e\u305f\u306f\u30d1\u30b9\u30ef\u30fc\u30c9 +error.login=\u30e6\u30fc\u30b6\u30fc\u540d/\u30d1\u30b9\u30ef\u30fc\u30c9\u304c\u8a18\u9332\u3068\u4e00\u81f4\u3057\u307e\u305b\u3093\u3002 error.menu.select=\u00e3\u0082\u00a2\u00e3\u0082\u00a4\u00e3\u0083\u0086\u00e3\u0083\u00a0\u00e3\u0081\u008c\u00e9\u0081\u00b8\u00e6\u008a\u009e\u00e3\u0081\u0095\u00e3\u0082\u008c\u00e3\u0081\u00a6\u00e3\u0081\u0084\u00e3\u0081\u00aa\u00e3\u0081\u0084\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0082\u00a2\u00e3\u0082\u00af\u00e3\u0082\u00b7\u00e3\u0083\u00a7\u00e3\u0083\u00b3\u00e3\u0082\u0092\u00e5\u00ae\u009f\u00e8\u00a1\u008c\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u0093\u00e3\u0081\u00a8\u00e3\u0081\u008c\u00e3\u0081\u00a7\u00e3\u0081\u008d\u00e3\u0081\u00be\u00e3\u0081\u009b\u00e3\u0082\u0093 -error.mgmt.server.inaccessible=\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093\u3002\u5F8C\u3067\u518D\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -error.password.not.match=\u30D1\u30B9\u30EF\u30FC\u30C9\u304C\u4E00\u81F4\u3057\u307E\u305B\u3093 -error.please.specify.physical.network.tags=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30BF\u30B0\u3092\u6307\u5B9A\u3057\u306A\u3051\u308C\u3070\u3001\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002 -error.session.expired=\u30BB\u30C3\u30B7\u30E7\u30F3\u306E\u6709\u52B9\u671F\u9650\u304C\u5207\u308C\u307E\u3057\u305F\u3002 -error.something.went.wrong.please.correct.the.following=\u554F\u984C\u304C\u767A\u751F\u3057\u307E\u3057\u305F\u3002\u6B21\u306E\u5185\u5BB9\u3092\u4FEE\u6B63\u3057\u3066\u304F\u3060\u3055\u3044 -error.unable.to.reach.management.server=\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3068\u901A\u4FE1\u3067\u304D\u307E\u305B\u3093 +error.mgmt.server.inaccessible=\u7ba1\u7406\u30b5\u30fc\u30d0\u30fc\u306b\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u305b\u3093\u3002\u5f8c\u3067\u518d\u5b9f\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +error.password.not.match=\u30d1\u30b9\u30ef\u30fc\u30c9\u304c\u4e00\u81f4\u3057\u307e\u305b\u3093 +error.please.specify.physical.network.tags=\u3053\u306e\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u30bf\u30b0\u3092\u6307\u5b9a\u3057\u306a\u3051\u308c\u3070\u3001\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u306f\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3002 +error.session.expired=\u30bb\u30c3\u30b7\u30e7\u30f3\u306e\u6709\u52b9\u671f\u9650\u304c\u5207\u308c\u307e\u3057\u305f\u3002 +error.something.went.wrong.please.correct.the.following=\u554f\u984c\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002\u6b21\u306e\u5185\u5bb9\u3092\u4fee\u6b63\u3057\u3066\u304f\u3060\u3055\u3044 +error.unable.to.reach.management.server=\u7ba1\u7406\u30b5\u30fc\u30d0\u30fc\u3068\u901a\u4fe1\u3067\u304d\u307e\u305b\u3093 error.unresolved.internet.name=\u3042\u306a\u305f\u306e\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u540d\u306f\u89e3\u6c7a\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002 -extractable=\u62BD\u51FA\u53EF\u80FD -force.delete.domain.warning=\u8B66\u544A\: \u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u3059\u3079\u3066\u306E\u5B50\u30C9\u30E1\u30A4\u30F3\u304A\u3088\u3073\u95A2\u9023\u3059\u308B\u3059\u3079\u3066\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3068\u305D\u306E\u30EA\u30BD\u30FC\u30B9\u304C\u524A\u9664\u3055\u308C\u307E\u3059\u3002 -force.delete=\u5F37\u5236\u524A\u9664 -force.remove.host.warning=\u8B66\u544A\: \u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u5B9F\u884C\u4E2D\u306E\u3059\u3079\u3066\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u304C\u5F37\u5236\u7684\u306B\u505C\u6B62\u3055\u308C\u3001\u30AF\u30E9\u30B9\u30BF\u30FC\u304B\u3089\u3053\u306E\u30DB\u30B9\u30C8\u304C\u5F37\u5236\u7684\u306B\u89E3\u9664\u3055\u308C\u307E\u3059\u3002 -force.remove=\u5F37\u5236\u89E3\u9664 -force.stop.instance.warning=\u8B66\u544A\: \u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u5F37\u5236\u505C\u6B62\u306F\u3001\u6700\u7D42\u624B\u6BB5\u306B\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u30C7\u30FC\u30BF\u3092\u640D\u5931\u3059\u308B\u3060\u3051\u3067\u306A\u304F\u3001\u4EEE\u60F3\u30DE\u30B7\u30F3\u306E\u52D5\u4F5C\u304C\u4E00\u8CAB\u3057\u306A\u304F\u306A\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 -force.stop=\u5F37\u5236\u505C\u6B62 -ICMP.code=ICMP \u30B3\u30FC\u30C9 -ICMP.type=ICMP \u306E\u7A2E\u985E -image.directory=\u753B\u50CF\u30C7\u30A3\u30EC\u30AF\u30C8\u30EA -inline=\u76F4\u5217 -instances.actions.reboot.label=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u518D\u8D77\u52D5 -label.accept.project.invitation=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u62DB\u5F85\u306E\u627F\u8AFE -label.account.and.security.group=\u30A2\u30AB\u30A6\u30F3\u30C8\u3001\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 -label.account.id=\u30A2\u30AB\u30A6\u30F3\u30C8 ID -label.account.name=\u30A2\u30AB\u30A6\u30F3\u30C8\u540D -label.account.specific=\u30A2\u30AB\u30A6\u30F3\u30C8\u56FA\u6709 -label.accounts=\u30A2\u30AB\u30A6\u30F3\u30C8 -label.account=\u30A2\u30AB\u30A6\u30F3\u30C8 -label.acquire.new.ip=\u65B0\u3057\u3044 IP \u30A2\u30C9\u30EC\u30B9\u306E\u53D6\u5F97 -label.action.attach.disk.processing=\u30C7\u30A3\u30B9\u30AF\u3092\u30A2\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... -label.action.attach.disk=\u30C7\u30A3\u30B9\u30AF\u306E\u30A2\u30BF\u30C3\u30C1 -label.action.attach.iso=ISO \u306E\u30A2\u30BF\u30C3\u30C1 -label.action.attach.iso.processing=ISO \u3092\u30A2\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... -label.action.cancel.maintenance.mode.processing=\u4FDD\u5B88\u30E2\u30FC\u30C9\u3092\u30AD\u30E3\u30F3\u30BB\u30EB\u3057\u3066\u3044\u307E\u3059... -label.action.cancel.maintenance.mode=\u4FDD\u5B88\u30E2\u30FC\u30C9\u306E\u30AD\u30E3\u30F3\u30BB\u30EB -label.action.change.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u306E\u5909\u66F4 -label.action.change.service.processing=\u30B5\u30FC\u30D3\u30B9\u3092\u5909\u66F4\u3057\u3066\u3044\u307E\u3059... -label.action.change.service=\u30B5\u30FC\u30D3\u30B9\u306E\u5909\u66F4 -label.action.copy.ISO=ISO \u306E\u30B3\u30D4\u30FC -label.action.copy.ISO.processing=ISO \u3092\u30B3\u30D4\u30FC\u3057\u3066\u3044\u307E\u3059... -label.action.copy.template.processing=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u30B3\u30D4\u30FC\u3057\u3066\u3044\u307E\u3059... -label.action.copy.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u30B3\u30D4\u30FC -label.action.create.template.from.vm=VM \u304B\u3089\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u4F5C\u6210 -label.action.create.template.from.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u304B\u3089\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u4F5C\u6210 -label.action.create.template.processing=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059... -label.action.create.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210 -label.action.create.vm.processing=VM \u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059... -label.action.create.vm=VM \u306E\u4F5C\u6210 -label.action.create.volume.processing=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059... -label.action.create.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u4F5C\u6210 -label.action.delete.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u524A\u9664 -label.action.delete.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u524A\u9664 -label.action.delete.disk.offering.processing=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u524A\u9664 -label.action.delete.domain.processing=\u30C9\u30E1\u30A4\u30F3\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.domain=\u30C9\u30E1\u30A4\u30F3\u306E\u524A\u9664 -label.action.delete.firewall.processing=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.firewall=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u898F\u5247\u306E\u524A\u9664 -label.action.delete.ingress.rule.processing=\u53D7\u4FE1\u898F\u5247\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u524A\u9664 -label.action.delete.IP.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u524A\u9664 -label.action.delete.IP.range.processing=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.ISO=ISO \u306E\u524A\u9664 -label.action.delete.ISO.processing=ISO \u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.load.balancer.processing=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.load.balancer=\u8CA0\u8377\u5206\u6563\u898F\u5247\u306E\u524A\u9664 -label.action.delete.network.processing=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u524A\u9664 -label.action.delete.nexusVswitch=Nexus 1000V \u306E\u524A\u9664 -label.action.delete.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u524A\u9664 -label.action.delete.pod.processing=\u30DD\u30C3\u30C9\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.pod=\u30DD\u30C3\u30C9\u306E\u524A\u9664 -label.action.delete.primary.storage.processing=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u524A\u9664 -label.action.delete.secondary.storage.processing=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u524A\u9664 -label.action.delete.security.group.processing=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.security.group=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u306E\u524A\u9664 -label.action.delete.service.offering.processing=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u524A\u9664 -label.action.delete.snapshot.processing=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.snapshot=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u524A\u9664 -label.action.delete.system.service.offering=\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u524A\u9664 -label.action.delete.template.processing=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u524A\u9664 -label.action.delete.user.processing=\u30E6\u30FC\u30B6\u30FC\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.user=\u30E6\u30FC\u30B6\u30FC\u306E\u524A\u9664 -label.action.delete.volume.processing=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u524A\u9664 -label.action.delete.zone.processing=\u30BE\u30FC\u30F3\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.delete.zone=\u30BE\u30FC\u30F3\u306E\u524A\u9664 -label.action.destroy.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u7834\u68C4\u3057\u3066\u3044\u307E\u3059... -label.action.destroy.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u7834\u68C4 -label.action.destroy.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u7834\u68C4\u3057\u3066\u3044\u307E\u3059... -label.action.destroy.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u7834\u68C4 -label.action.detach.disk.processing=\u30C7\u30A3\u30B9\u30AF\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... -label.action.detach.disk=\u30C7\u30A3\u30B9\u30AF\u306E\u30C7\u30BF\u30C3\u30C1 -label.action.detach.iso=ISO \u306E\u30C7\u30BF\u30C3\u30C1 -label.action.detach.iso.processing=ISO \u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059... -label.action.disable.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.disable.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u7121\u52B9\u5316 -label.action.disable.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.disable.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u7121\u52B9\u5316 -label.action.disable.nexusVswitch=Nexus 1000V \u306E\u7121\u52B9\u5316 -label.action.disable.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u7121\u52B9\u5316 -label.action.disable.pod.processing=\u30DD\u30C3\u30C9\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.disable.pod=\u30DD\u30C3\u30C9\u306E\u7121\u52B9\u5316 -label.action.disable.static.NAT.processing=\u9759\u7684 NAT \u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.disable.static.NAT=\u9759\u7684 NAT \u306E\u7121\u52B9\u5316 -label.action.disable.user.processing=\u30E6\u30FC\u30B6\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.disable.user=\u30E6\u30FC\u30B6\u30FC\u306E\u7121\u52B9\u5316 -label.action.disable.zone.processing=\u30BE\u30FC\u30F3\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.disable.zone=\u30BE\u30FC\u30F3\u306E\u7121\u52B9\u5316 -label.action.download.ISO=ISO \u306E\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9 -label.action.download.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9 -label.action.download.volume.processing=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3044\u307E\u3059... -label.action.download.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9 -label.action.edit.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u7DE8\u96C6 -label.action.edit.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u7DE8\u96C6 -label.action.edit.domain=\u30C9\u30E1\u30A4\u30F3\u306E\u7DE8\u96C6 -label.action.edit.global.setting=\u30B0\u30ED\u30FC\u30D0\u30EB\u8A2D\u5B9A\u306E\u7DE8\u96C6 -label.action.edit.host=\u30DB\u30B9\u30C8\u306E\u7DE8\u96C6 -label.action.edit.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u7DE8\u96C6 -label.action.edit.ISO=ISO \u306E\u7DE8\u96C6 -label.action.edit.network.offering=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u7DE8\u96C6 -label.action.edit.network.processing=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u7DE8\u96C6\u3057\u3066\u3044\u307E\u3059... -label.action.edit.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u7DE8\u96C6 -label.action.edit.pod=\u30DD\u30C3\u30C9\u306E\u7DE8\u96C6 -label.action.edit.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u7DE8\u96C6 -label.action.edit.resource.limits=\u30EA\u30BD\u30FC\u30B9\u5236\u9650\u306E\u7DE8\u96C6 -label.action.edit.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u7DE8\u96C6 -label.action.edit.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u7DE8\u96C6 -label.action.edit.user=\u30E6\u30FC\u30B6\u30FC\u306E\u7DE8\u96C6 -label.action.edit.zone=\u30BE\u30FC\u30F3\u306E\u7DE8\u96C6 -label.action.enable.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.enable.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u6709\u52B9\u5316 -label.action.enable.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.enable.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u6709\u52B9\u5316 -label.action.enable.maintenance.mode.processing=\u4FDD\u5B88\u30E2\u30FC\u30C9\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.enable.maintenance.mode=\u4FDD\u5B88\u30E2\u30FC\u30C9\u306E\u6709\u52B9\u5316 -label.action.enable.nexusVswitch=Nexus 1000V \u306E\u6709\u52B9\u5316 -label.action.enable.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u6709\u52B9\u5316 -label.action.enable.pod.processing=\u30DD\u30C3\u30C9\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.enable.pod=\u30DD\u30C3\u30C9\u306E\u6709\u52B9\u5316 -label.action.enable.static.NAT.processing=\u9759\u7684 NAT \u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.enable.static.NAT=\u9759\u7684 NAT \u306E\u6709\u52B9\u5316 -label.action.enable.user.processing=\u30E6\u30FC\u30B6\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.enable.user=\u30E6\u30FC\u30B6\u30FC\u306E\u6709\u52B9\u5316 -label.action.enable.zone.processing=\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.enable.zone=\u30BE\u30FC\u30F3\u306E\u6709\u52B9\u5316 -label.action.force.reconnect.processing=\u518D\u63A5\u7D9A\u3057\u3066\u3044\u307E\u3059... -label.action.force.reconnect=\u5F37\u5236\u518D\u63A5\u7D9A -label.action.generate.keys.processing=\u30AD\u30FC\u3092\u751F\u6210\u3057\u3066\u3044\u307E\u3059... -label.action.generate.keys=\u30AD\u30FC\u306E\u751F\u6210 -label.action.list.nexusVswitch=Nexus 1000V \u306E\u4E00\u89A7\u8868\u793A -label.action.lock.account.processing=\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u30ED\u30C3\u30AF\u3057\u3066\u3044\u307E\u3059... -label.action.lock.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30ED\u30C3\u30AF -label.action.manage.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.manage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u7BA1\u7406\u5BFE\u8C61\u5316 -label.action.migrate.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u79FB\u884C\u3057\u3066\u3044\u307E\u3059... -label.action.migrate.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C -label.action.migrate.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u79FB\u884C\u3057\u3066\u3044\u307E\u3059... -label.action.migrate.router=\u30EB\u30FC\u30BF\u30FC\u306E\u79FB\u884C -label.action.migrate.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u79FB\u884C\u3057\u3066\u3044\u307E\u3059... -label.action.migrate.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u79FB\u884C -label.action.reboot.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u518D\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... -label.action.reboot.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u518D\u8D77\u52D5 -label.action.reboot.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... -label.action.reboot.router=\u30EB\u30FC\u30BF\u30FC\u306E\u518D\u8D77\u52D5 -label.action.reboot.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u518D\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... -label.action.reboot.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u518D\u8D77\u52D5 -label.action.recurring.snapshot=\u5B9A\u671F\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 -label.action.register.iso=ISO \u306E\u767B\u9332 -label.action.register.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u767B\u9332 -label.action.release.ip=IP \u30A2\u30C9\u30EC\u30B9\u306E\u89E3\u653E -label.action.release.ip.processing=IP \u30A2\u30C9\u30EC\u30B9\u3092\u89E3\u653E\u3057\u3066\u3044\u307E\u3059... -label.action.remove.host.processing=\u30DB\u30B9\u30C8\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.action.remove.host=\u30DB\u30B9\u30C8\u306E\u524A\u9664 -label.action.reset.password.processing=\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u30EA\u30BB\u30C3\u30C8\u3057\u3066\u3044\u307E\u3059... -label.action.reset.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u306E\u30EA\u30BB\u30C3\u30C8 -label.action.resource.limits=\u30EA\u30BD\u30FC\u30B9\u5236\u9650 -label.action.restore.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u5FA9\u5143\u3057\u3066\u3044\u307E\u3059... -label.action.restore.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u5FA9\u5143 -label.action.start.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... -label.action.start.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u8D77\u52D5 -label.action.start.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... -label.action.start.router=\u30EB\u30FC\u30BF\u30FC\u306E\u8D77\u52D5 -label.action.start.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059... -label.action.start.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u8D77\u52D5 -label.action.stop.instance.processing=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3057\u3066\u3044\u307E\u3059... -label.action.stop.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u505C\u6B62 -label.action.stop.router.processing=\u30EB\u30FC\u30BF\u30FC\u3092\u505C\u6B62\u3057\u3066\u3044\u307E\u3059... -label.action.stop.router=\u30EB\u30FC\u30BF\u30FC\u306E\u505C\u6B62 -label.action.stop.systemvm.processing=\u30B7\u30B9\u30C6\u30E0 VM \u3092\u505C\u6B62\u3057\u3066\u3044\u307E\u3059... -label.action.stop.systemvm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u505C\u6B62 -label.actions=\u64CD\u4F5C -label.action.take.snapshot.processing=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059.... -label.action.take.snapshot=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u4F5C\u6210 -label.action.unmanage.cluster.processing=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u975E\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3044\u307E\u3059... -label.action.unmanage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u975E\u7BA1\u7406\u5BFE\u8C61\u5316 -label.action.update.OS.preference=OS \u57FA\u672C\u8A2D\u5B9A\u306E\u66F4\u65B0 -label.action.update.OS.preference.processing=OS \u57FA\u672C\u8A2D\u5B9A\u3092\u66F4\u65B0\u3057\u3066\u3044\u307E\u3059... -label.action.update.resource.count.processing=\u30EA\u30BD\u30FC\u30B9\u6570\u3092\u66F4\u65B0\u3057\u3066\u3044\u307E\u3059... -label.action.update.resource.count=\u30EA\u30BD\u30FC\u30B9\u6570\u306E\u66F4\u65B0 -label.activate.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30A2\u30AF\u30C6\u30A3\u30D6\u5316 -label.active.sessions=\u30A2\u30AF\u30C6\u30A3\u30D6\u306A\u30BB\u30C3\u30B7\u30E7\u30F3 -label.add.accounts.to=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u8FFD\u52A0\u5148\: -label.add.accounts=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u8FFD\u52A0 -label.add.account.to.project=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u8FFD\u52A0 -label.add.account=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u8FFD\u52A0 -label.add.ACL=ACL \u306E\u8FFD\u52A0 -label.add.by.cidr=CIDR \u3067\u8FFD\u52A0 -label.add.by.group=\u30B0\u30EB\u30FC\u30D7\u3067\u8FFD\u52A0 -label.add.by=\u8FFD\u52A0\u5358\u4F4D -label.add.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u8FFD\u52A0 -label.add.compute.offering=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 -label.add.direct.iprange=\u76F4\u63A5 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u8FFD\u52A0 -label.add.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 -label.add.domain=\u30C9\u30E1\u30A4\u30F3\u306E\u8FFD\u52A0 -label.add.egress.rule=\u9001\u4FE1\u898F\u5247\u306E\u8FFD\u52A0 -label.add.F5.device=F5 \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 -label.add.firewall=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u898F\u5247\u306E\u8FFD\u52A0 -label.add.guest.network=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8FFD\u52A0 -label.add.host=\u30DB\u30B9\u30C8\u306E\u8FFD\u52A0 -label.adding.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -label.adding.failed=\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F -label.adding.pod=\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -label.adding.processing=\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059... -label.add.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u8FFD\u52A0 -label.adding.succeeded=\u8FFD\u52A0\u3057\u307E\u3057\u305F -label.adding=\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -label.adding.user=\u30E6\u30FC\u30B6\u30FC\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -label.adding.zone=\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -label.add.ip.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u8FFD\u52A0 -label.additional.networks=\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.add.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306E\u8FFD\u52A0 -label.add.more=\u305D\u306E\u307B\u304B\u306E\u9805\u76EE\u306E\u8FFD\u52A0 -label.add.netScaler.device=Netscaler \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 -label.add.network.ACL=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL \u306E\u8FFD\u52A0 -label.add.network.device=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 -label.add.network.offering=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 -label.add.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8FFD\u52A0 -label.add.new.F5=\u65B0\u3057\u3044 F5 \u306E\u8FFD\u52A0 -label.add.new.gateway=\u65B0\u3057\u3044\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u8FFD\u52A0 -label.add.new.NetScaler=\u65B0\u3057\u3044 NetScaler \u306E\u8FFD\u52A0 -label.add.new.SRX=\u65B0\u3057\u3044 SRX \u306E\u8FFD\u52A0 -label.add.new.tier=\u65B0\u3057\u3044\u968E\u5C64\u306E\u8FFD\u52A0 +extractable=\u62bd\u51fa\u53ef\u80fd +force.delete.domain.warning=\u8b66\u544a\: \u3053\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u9078\u629e\u3059\u308b\u3068\u3001\u3059\u3079\u3066\u306e\u5b50\u30c9\u30e1\u30a4\u30f3\u304a\u3088\u3073\u95a2\u9023\u3059\u308b\u3059\u3079\u3066\u306e\u30a2\u30ab\u30a6\u30f3\u30c8\u3068\u305d\u306e\u30ea\u30bd\u30fc\u30b9\u304c\u524a\u9664\u3055\u308c\u307e\u3059\u3002 +force.delete=\u5f37\u5236\u524a\u9664 +force.remove.host.warning=\u8b66\u544a\: \u3053\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u9078\u629e\u3059\u308b\u3068\u3001\u5b9f\u884c\u4e2d\u306e\u3059\u3079\u3066\u306e\u4eee\u60f3\u30de\u30b7\u30f3\u304c\u5f37\u5236\u7684\u306b\u505c\u6b62\u3055\u308c\u3001\u30af\u30e9\u30b9\u30bf\u30fc\u304b\u3089\u3053\u306e\u30db\u30b9\u30c8\u304c\u5f37\u5236\u7684\u306b\u89e3\u9664\u3055\u308c\u307e\u3059\u3002 +force.remove=\u5f37\u5236\u89e3\u9664 +force.stop.instance.warning=\u8b66\u544a\: \u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u5f37\u5236\u505c\u6b62\u306f\u3001\u6700\u7d42\u624b\u6bb5\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u30c7\u30fc\u30bf\u3092\u640d\u5931\u3059\u308b\u3060\u3051\u3067\u306a\u304f\u3001\u4eee\u60f3\u30de\u30b7\u30f3\u306e\u52d5\u4f5c\u304c\u4e00\u8cab\u3057\u306a\u304f\u306a\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002 +force.stop=\u5f37\u5236\u505c\u6b62 +ICMP.code=ICMP \u30b3\u30fc\u30c9 +ICMP.type=ICMP \u306e\u7a2e\u985e +image.directory=\u753b\u50cf\u30c7\u30a3\u30ec\u30af\u30c8\u30ea +inline=\u76f4\u5217 +instances.actions.reboot.label=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u518d\u8d77\u52d5 +label.accept.project.invitation=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3078\u306e\u62db\u5f85\u306e\u627f\u8afe +label.account.and.security.group=\u30a2\u30ab\u30a6\u30f3\u30c8\u3001\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7 +label.account.id=\u30a2\u30ab\u30a6\u30f3\u30c8 ID +label.account.name=\u30a2\u30ab\u30a6\u30f3\u30c8\u540d +label.account.specific=\u30a2\u30ab\u30a6\u30f3\u30c8\u56fa\u6709 +label.accounts=\u30a2\u30ab\u30a6\u30f3\u30c8 +label.account=\u30a2\u30ab\u30a6\u30f3\u30c8 +label.acquire.new.ip=\u65b0\u3057\u3044 IP \u30a2\u30c9\u30ec\u30b9\u306e\u53d6\u5f97 +label.action.attach.disk.processing=\u30c7\u30a3\u30b9\u30af\u3092\u30a2\u30bf\u30c3\u30c1\u3057\u3066\u3044\u307e\u3059... +label.action.attach.disk=\u30c7\u30a3\u30b9\u30af\u306e\u30a2\u30bf\u30c3\u30c1 +label.action.attach.iso=ISO \u306e\u30a2\u30bf\u30c3\u30c1 +label.action.attach.iso.processing=ISO \u3092\u30a2\u30bf\u30c3\u30c1\u3057\u3066\u3044\u307e\u3059... +label.action.cancel.maintenance.mode.processing=\u4fdd\u5b88\u30e2\u30fc\u30c9\u3092\u30ad\u30e3\u30f3\u30bb\u30eb\u3057\u3066\u3044\u307e\u3059... +label.action.cancel.maintenance.mode=\u4fdd\u5b88\u30e2\u30fc\u30c9\u306e\u30ad\u30e3\u30f3\u30bb\u30eb +label.action.change.password=\u30d1\u30b9\u30ef\u30fc\u30c9\u306e\u5909\u66f4 +label.action.change.service.processing=\u30b5\u30fc\u30d3\u30b9\u3092\u5909\u66f4\u3057\u3066\u3044\u307e\u3059... +label.action.change.service=\u30b5\u30fc\u30d3\u30b9\u306e\u5909\u66f4 +label.action.copy.ISO=ISO \u306e\u30b3\u30d4\u30fc +label.action.copy.ISO.processing=ISO \u3092\u30b3\u30d4\u30fc\u3057\u3066\u3044\u307e\u3059... +label.action.copy.template.processing=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3092\u30b3\u30d4\u30fc\u3057\u3066\u3044\u307e\u3059... +label.action.copy.template=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u30b3\u30d4\u30fc +label.action.create.template.from.vm=VM \u304b\u3089\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u4f5c\u6210 +label.action.create.template.from.volume=\u30dc\u30ea\u30e5\u30fc\u30e0\u304b\u3089\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u4f5c\u6210 +label.action.create.template.processing=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3092\u4f5c\u6210\u3057\u3066\u3044\u307e\u3059... +label.action.create.template=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u4f5c\u6210 +label.action.create.vm.processing=VM \u3092\u4f5c\u6210\u3057\u3066\u3044\u307e\u3059... +label.action.create.vm=VM \u306e\u4f5c\u6210 +label.action.create.volume.processing=\u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u4f5c\u6210\u3057\u3066\u3044\u307e\u3059... +label.action.create.volume=\u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u4f5c\u6210 +label.action.delete.account.processing=\u30a2\u30ab\u30a6\u30f3\u30c8\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.account=\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u524a\u9664 +label.action.delete.cluster.processing=\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.cluster=\u30af\u30e9\u30b9\u30bf\u30fc\u306e\u524a\u9664 +label.action.delete.disk.offering.processing=\u30c7\u30a3\u30b9\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.disk.offering=\u30c7\u30a3\u30b9\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u306e\u524a\u9664 +label.action.delete.domain.processing=\u30c9\u30e1\u30a4\u30f3\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.domain=\u30c9\u30e1\u30a4\u30f3\u306e\u524a\u9664 +label.action.delete.firewall.processing=\u30d5\u30a1\u30a4\u30a2\u30a6\u30a9\u30fc\u30eb\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.firewall=\u30d5\u30a1\u30a4\u30a2\u30a6\u30a9\u30fc\u30eb\u898f\u5247\u306e\u524a\u9664 +label.action.delete.ingress.rule.processing=\u53d7\u4fe1\u898f\u5247\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.ingress.rule=\u53d7\u4fe1\u898f\u5247\u306e\u524a\u9664 +label.action.delete.IP.range=IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u306e\u524a\u9664 +label.action.delete.IP.range.processing=IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.ISO=ISO \u306e\u524a\u9664 +label.action.delete.ISO.processing=ISO \u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.load.balancer.processing=\u8ca0\u8377\u5206\u6563\u88c5\u7f6e\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.load.balancer=\u8ca0\u8377\u5206\u6563\u898f\u5247\u306e\u524a\u9664 +label.action.delete.network.processing=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.network=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u524a\u9664 +label.action.delete.nexusVswitch=Nexus 1000V \u306e\u524a\u9664 +label.action.delete.physical.network=\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u524a\u9664 +label.action.delete.pod.processing=\u30dd\u30c3\u30c9\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.pod=\u30dd\u30c3\u30c9\u306e\u524a\u9664 +label.action.delete.primary.storage.processing=\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.primary.storage=\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u524a\u9664 +label.action.delete.secondary.storage.processing=\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.secondary.storage=\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u524a\u9664 +label.action.delete.security.group.processing=\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.security.group=\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7\u306e\u524a\u9664 +label.action.delete.service.offering.processing=\u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.service.offering=\u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u306e\u524a\u9664 +label.action.delete.snapshot.processing=\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.snapshot=\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u306e\u524a\u9664 +label.action.delete.system.service.offering=\u30b7\u30b9\u30c6\u30e0 \u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u306e\u524a\u9664 +label.action.delete.template.processing=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.template=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u524a\u9664 +label.action.delete.user.processing=\u30e6\u30fc\u30b6\u30fc\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.user=\u30e6\u30fc\u30b6\u30fc\u306e\u524a\u9664 +label.action.delete.volume.processing=\u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.volume=\u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u524a\u9664 +label.action.delete.zone.processing=\u30be\u30fc\u30f3\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.delete.zone=\u30be\u30fc\u30f3\u306e\u524a\u9664 +label.action.destroy.instance.processing=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u7834\u68c4\u3057\u3066\u3044\u307e\u3059... +label.action.destroy.instance=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u7834\u68c4 +label.action.destroy.systemvm.processing=\u30b7\u30b9\u30c6\u30e0 VM \u3092\u7834\u68c4\u3057\u3066\u3044\u307e\u3059... +label.action.destroy.systemvm=\u30b7\u30b9\u30c6\u30e0 VM \u306e\u7834\u68c4 +label.action.detach.disk.processing=\u30c7\u30a3\u30b9\u30af\u3092\u30c7\u30bf\u30c3\u30c1\u3057\u3066\u3044\u307e\u3059... +label.action.detach.disk=\u30c7\u30a3\u30b9\u30af\u306e\u30c7\u30bf\u30c3\u30c1 +label.action.detach.iso=ISO \u306e\u30c7\u30bf\u30c3\u30c1 +label.action.detach.iso.processing=ISO \u3092\u30c7\u30bf\u30c3\u30c1\u3057\u3066\u3044\u307e\u3059... +label.action.disable.account.processing=\u30a2\u30ab\u30a6\u30f3\u30c8\u3092\u7121\u52b9\u306b\u3057\u3066\u3044\u307e\u3059... +label.action.disable.account=\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u7121\u52b9\u5316 +label.action.disable.cluster.processing=\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u7121\u52b9\u306b\u3057\u3066\u3044\u307e\u3059... +label.action.disable.cluster=\u30af\u30e9\u30b9\u30bf\u30fc\u306e\u7121\u52b9\u5316 +label.action.disable.nexusVswitch=Nexus 1000V \u306e\u7121\u52b9\u5316 +label.action.disable.physical.network=\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u7121\u52b9\u5316 +label.action.disable.pod.processing=\u30dd\u30c3\u30c9\u3092\u7121\u52b9\u306b\u3057\u3066\u3044\u307e\u3059... +label.action.disable.pod=\u30dd\u30c3\u30c9\u306e\u7121\u52b9\u5316 +label.action.disable.static.NAT.processing=\u9759\u7684 NAT \u3092\u7121\u52b9\u306b\u3057\u3066\u3044\u307e\u3059... +label.action.disable.static.NAT=\u9759\u7684 NAT \u306e\u7121\u52b9\u5316 +label.action.disable.user.processing=\u30e6\u30fc\u30b6\u30fc\u3092\u7121\u52b9\u306b\u3057\u3066\u3044\u307e\u3059... +label.action.disable.user=\u30e6\u30fc\u30b6\u30fc\u306e\u7121\u52b9\u5316 +label.action.disable.zone.processing=\u30be\u30fc\u30f3\u3092\u7121\u52b9\u306b\u3057\u3066\u3044\u307e\u3059... +label.action.disable.zone=\u30be\u30fc\u30f3\u306e\u7121\u52b9\u5316 +label.action.download.ISO=ISO \u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9 +label.action.download.template=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9 +label.action.download.volume.processing=\u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u3044\u307e\u3059... +label.action.download.volume=\u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9 +label.action.edit.account=\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u7de8\u96c6 +label.action.edit.disk.offering=\u30c7\u30a3\u30b9\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u306e\u7de8\u96c6 +label.action.edit.domain=\u30c9\u30e1\u30a4\u30f3\u306e\u7de8\u96c6 +label.action.edit.global.setting=\u30b0\u30ed\u30fc\u30d0\u30eb\u8a2d\u5b9a\u306e\u7de8\u96c6 +label.action.edit.host=\u30db\u30b9\u30c8\u306e\u7de8\u96c6 +label.action.edit.instance=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u7de8\u96c6 +label.action.edit.ISO=ISO \u306e\u7de8\u96c6 +label.action.edit.network.offering=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u306e\u7de8\u96c6 +label.action.edit.network.processing=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u7de8\u96c6\u3057\u3066\u3044\u307e\u3059... +label.action.edit.network=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u7de8\u96c6 +label.action.edit.pod=\u30dd\u30c3\u30c9\u306e\u7de8\u96c6 +label.action.edit.primary.storage=\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u7de8\u96c6 +label.action.edit.resource.limits=\u30ea\u30bd\u30fc\u30b9\u5236\u9650\u306e\u7de8\u96c6 +label.action.edit.service.offering=\u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u306e\u7de8\u96c6 +label.action.edit.template=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u7de8\u96c6 +label.action.edit.user=\u30e6\u30fc\u30b6\u30fc\u306e\u7de8\u96c6 +label.action.edit.zone=\u30be\u30fc\u30f3\u306e\u7de8\u96c6 +label.action.enable.account.processing=\u30a2\u30ab\u30a6\u30f3\u30c8\u3092\u6709\u52b9\u306b\u3057\u3066\u3044\u307e\u3059... +label.action.enable.account=\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u6709\u52b9\u5316 +label.action.enable.cluster.processing=\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u6709\u52b9\u306b\u3057\u3066\u3044\u307e\u3059... +label.action.enable.cluster=\u30af\u30e9\u30b9\u30bf\u30fc\u306e\u6709\u52b9\u5316 +label.action.enable.maintenance.mode.processing=\u4fdd\u5b88\u30e2\u30fc\u30c9\u3092\u6709\u52b9\u306b\u3057\u3066\u3044\u307e\u3059... +label.action.enable.maintenance.mode=\u4fdd\u5b88\u30e2\u30fc\u30c9\u306e\u6709\u52b9\u5316 +label.action.enable.nexusVswitch=Nexus 1000V \u306e\u6709\u52b9\u5316 +label.action.enable.physical.network=\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u6709\u52b9\u5316 +label.action.enable.pod.processing=\u30dd\u30c3\u30c9\u3092\u6709\u52b9\u306b\u3057\u3066\u3044\u307e\u3059... +label.action.enable.pod=\u30dd\u30c3\u30c9\u306e\u6709\u52b9\u5316 +label.action.enable.static.NAT.processing=\u9759\u7684 NAT \u3092\u6709\u52b9\u306b\u3057\u3066\u3044\u307e\u3059... +label.action.enable.static.NAT=\u9759\u7684 NAT \u306e\u6709\u52b9\u5316 +label.action.enable.user.processing=\u30e6\u30fc\u30b6\u30fc\u3092\u6709\u52b9\u306b\u3057\u3066\u3044\u307e\u3059... +label.action.enable.user=\u30e6\u30fc\u30b6\u30fc\u306e\u6709\u52b9\u5316 +label.action.enable.zone.processing=\u30be\u30fc\u30f3\u3092\u6709\u52b9\u306b\u3057\u3066\u3044\u307e\u3059... +label.action.enable.zone=\u30be\u30fc\u30f3\u306e\u6709\u52b9\u5316 +label.action.force.reconnect.processing=\u518d\u63a5\u7d9a\u3057\u3066\u3044\u307e\u3059... +label.action.force.reconnect=\u5f37\u5236\u518d\u63a5\u7d9a +label.action.generate.keys.processing=\u30ad\u30fc\u3092\u751f\u6210\u3057\u3066\u3044\u307e\u3059... +label.action.generate.keys=\u30ad\u30fc\u306e\u751f\u6210 +label.action.list.nexusVswitch=Nexus 1000V \u306e\u4e00\u89a7\u8868\u793a +label.action.lock.account.processing=\u30a2\u30ab\u30a6\u30f3\u30c8\u3092\u30ed\u30c3\u30af\u3057\u3066\u3044\u307e\u3059... +label.action.lock.account=\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u30ed\u30c3\u30af +label.action.manage.cluster.processing=\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u7ba1\u7406\u5bfe\u8c61\u306b\u3057\u3066\u3044\u307e\u3059... +label.action.manage.cluster=\u30af\u30e9\u30b9\u30bf\u30fc\u306e\u7ba1\u7406\u5bfe\u8c61\u5316 +label.action.migrate.instance.processing=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u79fb\u884c\u3057\u3066\u3044\u307e\u3059... +label.action.migrate.instance=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u79fb\u884c +label.action.migrate.router.processing=\u30eb\u30fc\u30bf\u30fc\u3092\u79fb\u884c\u3057\u3066\u3044\u307e\u3059... +label.action.migrate.router=\u30eb\u30fc\u30bf\u30fc\u306e\u79fb\u884c +label.action.migrate.systemvm.processing=\u30b7\u30b9\u30c6\u30e0 VM \u3092\u79fb\u884c\u3057\u3066\u3044\u307e\u3059... +label.action.migrate.systemvm=\u30b7\u30b9\u30c6\u30e0 VM \u306e\u79fb\u884c +label.action.reboot.instance.processing=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u518d\u8d77\u52d5\u3057\u3066\u3044\u307e\u3059... +label.action.reboot.instance=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u518d\u8d77\u52d5 +label.action.reboot.router.processing=\u30eb\u30fc\u30bf\u30fc\u3092\u518d\u8d77\u52d5\u3057\u3066\u3044\u307e\u3059... +label.action.reboot.router=\u30eb\u30fc\u30bf\u30fc\u306e\u518d\u8d77\u52d5 +label.action.reboot.systemvm.processing=\u30b7\u30b9\u30c6\u30e0 VM \u3092\u518d\u8d77\u52d5\u3057\u3066\u3044\u307e\u3059... +label.action.reboot.systemvm=\u30b7\u30b9\u30c6\u30e0 VM \u306e\u518d\u8d77\u52d5 +label.action.recurring.snapshot=\u5b9a\u671f\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8 +label.action.register.iso=ISO \u306e\u767b\u9332 +label.action.register.template=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u767b\u9332 +label.action.release.ip=IP \u30a2\u30c9\u30ec\u30b9\u306e\u89e3\u653e +label.action.release.ip.processing=IP \u30a2\u30c9\u30ec\u30b9\u3092\u89e3\u653e\u3057\u3066\u3044\u307e\u3059... +label.action.remove.host.processing=\u30db\u30b9\u30c8\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.action.remove.host=\u30db\u30b9\u30c8\u306e\u524a\u9664 +label.action.reset.password.processing=\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u30ea\u30bb\u30c3\u30c8\u3057\u3066\u3044\u307e\u3059... +label.action.reset.password=\u30d1\u30b9\u30ef\u30fc\u30c9\u306e\u30ea\u30bb\u30c3\u30c8 +label.action.resource.limits=\u30ea\u30bd\u30fc\u30b9\u5236\u9650 +label.action.restore.instance.processing=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u5fa9\u5143\u3057\u3066\u3044\u307e\u3059... +label.action.restore.instance=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u5fa9\u5143 +label.action.start.instance.processing=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u8d77\u52d5\u3057\u3066\u3044\u307e\u3059... +label.action.start.instance=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u8d77\u52d5 +label.action.start.router.processing=\u30eb\u30fc\u30bf\u30fc\u3092\u8d77\u52d5\u3057\u3066\u3044\u307e\u3059... +label.action.start.router=\u30eb\u30fc\u30bf\u30fc\u306e\u8d77\u52d5 +label.action.start.systemvm.processing=\u30b7\u30b9\u30c6\u30e0 VM \u3092\u8d77\u52d5\u3057\u3066\u3044\u307e\u3059... +label.action.start.systemvm=\u30b7\u30b9\u30c6\u30e0 VM \u306e\u8d77\u52d5 +label.action.stop.instance.processing=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u505c\u6b62\u3057\u3066\u3044\u307e\u3059... +label.action.stop.instance=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u505c\u6b62 +label.action.stop.router.processing=\u30eb\u30fc\u30bf\u30fc\u3092\u505c\u6b62\u3057\u3066\u3044\u307e\u3059... +label.action.stop.router=\u30eb\u30fc\u30bf\u30fc\u306e\u505c\u6b62 +label.action.stop.systemvm.processing=\u30b7\u30b9\u30c6\u30e0 VM \u3092\u505c\u6b62\u3057\u3066\u3044\u307e\u3059... +label.action.stop.systemvm=\u30b7\u30b9\u30c6\u30e0 VM \u306e\u505c\u6b62 +label.actions=\u64cd\u4f5c +label.action.take.snapshot.processing=\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3092\u4f5c\u6210\u3057\u3066\u3044\u307e\u3059.... +label.action.take.snapshot=\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u306e\u4f5c\u6210 +label.action.unmanage.cluster.processing=\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u975e\u7ba1\u7406\u5bfe\u8c61\u306b\u3057\u3066\u3044\u307e\u3059... +label.action.unmanage.cluster=\u30af\u30e9\u30b9\u30bf\u30fc\u306e\u975e\u7ba1\u7406\u5bfe\u8c61\u5316 +label.action.update.OS.preference=OS \u57fa\u672c\u8a2d\u5b9a\u306e\u66f4\u65b0 +label.action.update.OS.preference.processing=OS \u57fa\u672c\u8a2d\u5b9a\u3092\u66f4\u65b0\u3057\u3066\u3044\u307e\u3059... +label.action.update.resource.count.processing=\u30ea\u30bd\u30fc\u30b9\u6570\u3092\u66f4\u65b0\u3057\u3066\u3044\u307e\u3059... +label.action.update.resource.count=\u30ea\u30bd\u30fc\u30b9\u6570\u306e\u66f4\u65b0 +label.activate.project=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30a2\u30af\u30c6\u30a3\u30d6\u5316 +label.active.sessions=\u30a2\u30af\u30c6\u30a3\u30d6\u306a\u30bb\u30c3\u30b7\u30e7\u30f3 +label.add.accounts.to=\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u8ffd\u52a0\u5148\: +label.add.accounts=\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u8ffd\u52a0 +label.add.account.to.project=\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3078\u306e\u8ffd\u52a0 +label.add.account=\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u8ffd\u52a0 +label.add.ACL=ACL \u306e\u8ffd\u52a0 +label.add.by.cidr=CIDR \u3067\u8ffd\u52a0 +label.add.by.group=\u30b0\u30eb\u30fc\u30d7\u3067\u8ffd\u52a0 +label.add.by=\u8ffd\u52a0\u5358\u4f4d +label.add.cluster=\u30af\u30e9\u30b9\u30bf\u30fc\u306e\u8ffd\u52a0 +label.add.compute.offering=\u30b3\u30f3\u30d4\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u306e\u8ffd\u52a0 +label.add.direct.iprange=\u76f4\u63a5 IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u306e\u8ffd\u52a0 +label.add.disk.offering=\u30c7\u30a3\u30b9\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u306e\u8ffd\u52a0 +label.add.domain=\u30c9\u30e1\u30a4\u30f3\u306e\u8ffd\u52a0 +label.add.egress.rule=\u9001\u4fe1\u898f\u5247\u306e\u8ffd\u52a0 +label.add.F5.device=F5 \u30c7\u30d0\u30a4\u30b9\u306e\u8ffd\u52a0 +label.add.firewall=\u30d5\u30a1\u30a4\u30a2\u30a6\u30a9\u30fc\u30eb\u898f\u5247\u306e\u8ffd\u52a0 +label.add.guest.network=\u30b2\u30b9\u30c8 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u8ffd\u52a0 +label.add.host=\u30db\u30b9\u30c8\u306e\u8ffd\u52a0 +label.adding.cluster=\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u8ffd\u52a0\u3057\u3066\u3044\u307e\u3059 +label.adding.failed=\u8ffd\u52a0\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f +label.adding.pod=\u30dd\u30c3\u30c9\u3092\u8ffd\u52a0\u3057\u3066\u3044\u307e\u3059 +label.adding.processing=\u8ffd\u52a0\u3057\u3066\u3044\u307e\u3059... +label.add.ingress.rule=\u53d7\u4fe1\u898f\u5247\u306e\u8ffd\u52a0 +label.adding.succeeded=\u8ffd\u52a0\u3057\u307e\u3057\u305f +label.adding=\u8ffd\u52a0\u3057\u3066\u3044\u307e\u3059 +label.adding.user=\u30e6\u30fc\u30b6\u30fc\u3092\u8ffd\u52a0\u3057\u3066\u3044\u307e\u3059 +label.adding.zone=\u30be\u30fc\u30f3\u3092\u8ffd\u52a0\u3057\u3066\u3044\u307e\u3059 +label.add.ip.range=IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u306e\u8ffd\u52a0 +label.additional.networks=\u8ffd\u52a0\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af +label.add.load.balancer=\u8ca0\u8377\u5206\u6563\u88c5\u7f6e\u306e\u8ffd\u52a0 +label.add.more=\u305d\u306e\u307b\u304b\u306e\u9805\u76ee\u306e\u8ffd\u52a0 +label.add.netScaler.device=Netscaler \u30c7\u30d0\u30a4\u30b9\u306e\u8ffd\u52a0 +label.add.network.ACL=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af ACL \u306e\u8ffd\u52a0 +label.add.network.device=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30c7\u30d0\u30a4\u30b9\u306e\u8ffd\u52a0 +label.add.network.offering=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u306e\u8ffd\u52a0 +label.add.network=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u8ffd\u52a0 +label.add.new.F5=\u65b0\u3057\u3044 F5 \u306e\u8ffd\u52a0 +label.add.new.gateway=\u65b0\u3057\u3044\u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u306e\u8ffd\u52a0 +label.add.new.NetScaler=\u65b0\u3057\u3044 NetScaler \u306e\u8ffd\u52a0 +label.add.new.SRX=\u65b0\u3057\u3044 SRX \u306e\u8ffd\u52a0 +label.add.new.tier=\u65b0\u3057\u3044\u968e\u5c64\u306e\u8ffd\u52a0 label.add.NiciraNvp.device=NVP\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u8ffd\u52a0 -label.add.physical.network=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8FFD\u52A0 -label.add.pod=\u30DD\u30C3\u30C9\u306E\u8FFD\u52A0 -label.add.port.forwarding.rule=\u30DD\u30FC\u30C8\u8EE2\u9001\u898F\u5247\u306E\u8FFD\u52A0 -label.add.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u8FFD\u52A0 -label.add.resources=\u30EA\u30BD\u30FC\u30B9\u306E\u8FFD\u52A0 -label.add.route=\u30EB\u30FC\u30C8\u306E\u8FFD\u52A0 -label.add.rule=\u898F\u5247\u306E\u8FFD\u52A0 -label.add.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u8FFD\u52A0 -label.add.security.group=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u306E\u8FFD\u52A0 -label.add.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 -label.add.SRX.device=SRX \u30C7\u30D0\u30A4\u30B9\u306E\u8FFD\u52A0 -label.add.static.nat.rule=\u9759\u7684 NAT \u898F\u5247\u306E\u8FFD\u52A0 -label.add.static.route=\u9759\u7684\u30EB\u30FC\u30C8\u306E\u8FFD\u52A0 -label.add.system.service.offering=\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u8FFD\u52A0 -label.add.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u8FFD\u52A0 -label.add.to.group=\u30B0\u30EB\u30FC\u30D7\u3078\u306E\u8FFD\u52A0 -label.add=\u8FFD\u52A0 -label.add.user=\u30E6\u30FC\u30B6\u30FC\u306E\u8FFD\u52A0 -label.add.vlan=VLAN \u306E\u8FFD\u52A0 -label.add.vms.to.lb=\u8CA0\u8377\u5206\u6563\u898F\u5247\u3078\u306E VM \u306E\u8FFD\u52A0 -label.add.vms=VM \u306E\u8FFD\u52A0 -label.add.VM.to.tier=\u968E\u5C64\u3078\u306E VM \u306E\u8FFD\u52A0 -label.add.vm=VM \u306E\u8FFD\u52A0 -label.add.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u8FFD\u52A0 -label.add.vpc=VPC \u306E\u8FFD\u52A0 -label.add.vpn.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u8FFD\u52A0 -label.add.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u8FFD\u52A0 -label.add.vpn.user=VPN \u30E6\u30FC\u30B6\u30FC\u306E\u8FFD\u52A0 -label.add.zone=\u30BE\u30FC\u30F3\u306E\u8FFD\u52A0 -label.admin.accounts=\u7BA1\u7406\u8005\u30A2\u30AB\u30A6\u30F3\u30C8 -label.admin=\u7BA1\u7406\u8005 -label.advanced.mode=\u62E1\u5F35\u30E2\u30FC\u30C9 -label.advanced.search=\u9AD8\u5EA6\u306A\u691C\u7D22 -label.advanced=\u62E1\u5F35 -label.agent.password=\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8 \u30D1\u30B9\u30EF\u30FC\u30C9 -label.agent.username=\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8 \u30E6\u30FC\u30B6\u30FC\u540D -label.agree=\u540C\u610F\u3059\u308B -label.alert=\u30A2\u30E9\u30FC\u30C8 -label.algorithm=\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0 -label.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F -label.allocation.state=\u5272\u308A\u5F53\u3066\u72B6\u614B -label.api.key=API \u30AD\u30FC +label.add.physical.network=\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u8ffd\u52a0 +label.add.pod=\u30dd\u30c3\u30c9\u306e\u8ffd\u52a0 +label.add.port.forwarding.rule=\u30dd\u30fc\u30c8\u8ee2\u9001\u898f\u5247\u306e\u8ffd\u52a0 +label.add.primary.storage=\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u8ffd\u52a0 +label.add.resources=\u30ea\u30bd\u30fc\u30b9\u306e\u8ffd\u52a0 +label.add.route=\u30eb\u30fc\u30c8\u306e\u8ffd\u52a0 +label.add.rule=\u898f\u5247\u306e\u8ffd\u52a0 +label.add.secondary.storage=\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u8ffd\u52a0 +label.add.security.group=\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7\u306e\u8ffd\u52a0 +label.add.service.offering=\u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u306e\u8ffd\u52a0 +label.add.SRX.device=SRX \u30c7\u30d0\u30a4\u30b9\u306e\u8ffd\u52a0 +label.add.static.nat.rule=\u9759\u7684 NAT \u898f\u5247\u306e\u8ffd\u52a0 +label.add.static.route=\u9759\u7684\u30eb\u30fc\u30c8\u306e\u8ffd\u52a0 +label.add.system.service.offering=\u30b7\u30b9\u30c6\u30e0 \u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u306e\u8ffd\u52a0 +label.add.template=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u8ffd\u52a0 +label.add.to.group=\u30b0\u30eb\u30fc\u30d7\u3078\u306e\u8ffd\u52a0 +label.add=\u8ffd\u52a0 +label.add.user=\u30e6\u30fc\u30b6\u30fc\u306e\u8ffd\u52a0 +label.add.vlan=VLAN \u306e\u8ffd\u52a0 +label.add.vms.to.lb=\u8ca0\u8377\u5206\u6563\u898f\u5247\u3078\u306e VM \u306e\u8ffd\u52a0 +label.add.vms=VM \u306e\u8ffd\u52a0 +label.add.VM.to.tier=\u968e\u5c64\u3078\u306e VM \u306e\u8ffd\u52a0 +label.add.vm=VM \u306e\u8ffd\u52a0 +label.add.volume=\u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u8ffd\u52a0 +label.add.vpc=VPC \u306e\u8ffd\u52a0 +label.add.vpn.customer.gateway=VPN \u30ab\u30b9\u30bf\u30de\u30fc \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u306e\u8ffd\u52a0 +label.add.VPN.gateway=VPN \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u306e\u8ffd\u52a0 +label.add.vpn.user=VPN \u30e6\u30fc\u30b6\u30fc\u306e\u8ffd\u52a0 +label.add.zone=\u30be\u30fc\u30f3\u306e\u8ffd\u52a0 +label.admin.accounts=\u7ba1\u7406\u8005\u30a2\u30ab\u30a6\u30f3\u30c8 +label.admin=\u7ba1\u7406\u8005 +label.advanced.mode=\u62e1\u5f35\u30e2\u30fc\u30c9 +label.advanced.search=\u9ad8\u5ea6\u306a\u691c\u7d22 +label.advanced=\u62e1\u5f35 +label.agent.password=\u30a8\u30fc\u30b8\u30a7\u30f3\u30c8 \u30d1\u30b9\u30ef\u30fc\u30c9 +label.agent.username=\u30a8\u30fc\u30b8\u30a7\u30f3\u30c8 \u30e6\u30fc\u30b6\u30fc\u540d +label.agree=\u540c\u610f\u3059\u308b +label.alert=\u30a2\u30e9\u30fc\u30c8 +label.algorithm=\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0 +label.allocated=\u5272\u308a\u5f53\u3066\u6e08\u307f +label.allocation.state=\u5272\u308a\u5f53\u3066\u72b6\u614b +label.api.key=API \u30ad\u30fc label.apply=\u9069\u7528 -label.assign.to.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u5272\u308A\u5F53\u3066\u3066\u3044\u307E\u3059 -label.assign=\u5272\u308A\u5F53\u3066 -label.associated.network.id=\u95A2\u9023\u3065\u3051\u3089\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID -label.associated.network=\u95A2\u9023\u3065\u3051\u3089\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.attached.iso=\u30A2\u30BF\u30C3\u30C1\u3055\u308C\u305F ISO -label.availability=\u53EF\u7528\u6027 -label.availability.zone=\u5229\u7528\u53EF\u80FD\u30BE\u30FC\u30F3 -label.available.public.ips=\u4F7F\u7528\u3067\u304D\u308B\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 -label.available=\u4F7F\u7528\u53EF\u80FD -label.back=\u623B\u308B -label.bandwidth=\u5E2F\u57DF\u5E45 -label.basic.mode=\u57FA\u672C\u30E2\u30FC\u30C9 -label.basic=\u57FA\u672C -label.bootable=\u8D77\u52D5\u53EF\u80FD -label.broadcast.domain.range=\u30D6\u30ED\u30FC\u30C9\u30AD\u30E3\u30B9\u30C8 \u30C9\u30E1\u30A4\u30F3\u306E\u7BC4\u56F2 -label.broadcast.domain.type=\u30D6\u30ED\u30FC\u30C9\u30AD\u30E3\u30B9\u30C8 \u30C9\u30E1\u30A4\u30F3\u306E\u7A2E\u985E +label.assign.to.load.balancer=\u8ca0\u8377\u5206\u6563\u88c5\u7f6e\u306b\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u5272\u308a\u5f53\u3066\u3066\u3044\u307e\u3059 +label.assign=\u5272\u308a\u5f53\u3066 +label.associated.network.id=\u95a2\u9023\u3065\u3051\u3089\u308c\u305f\u30cd\u30c3\u30c8\u30ef\u30fc\u30af ID +label.associated.network=\u95a2\u9023\u3065\u3051\u3089\u308c\u305f\u30cd\u30c3\u30c8\u30ef\u30fc\u30af +label.attached.iso=\u30a2\u30bf\u30c3\u30c1\u3055\u308c\u305f ISO +label.availability=\u53ef\u7528\u6027 +label.availability.zone=\u5229\u7528\u53ef\u80fd\u30be\u30fc\u30f3 +label.available.public.ips=\u4f7f\u7528\u3067\u304d\u308b\u30d1\u30d6\u30ea\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9 +label.available=\u4f7f\u7528\u53ef\u80fd +label.back=\u623b\u308b +label.bandwidth=\u5e2f\u57df\u5e45 +label.basic.mode=\u57fa\u672c\u30e2\u30fc\u30c9 +label.basic=\u57fa\u672c +label.bootable=\u8d77\u52d5\u53ef\u80fd +label.broadcast.domain.range=\u30d6\u30ed\u30fc\u30c9\u30ad\u30e3\u30b9\u30c8 \u30c9\u30e1\u30a4\u30f3\u306e\u7bc4\u56f2 +label.broadcast.domain.type=\u30d6\u30ed\u30fc\u30c9\u30ad\u30e3\u30b9\u30c8 \u30c9\u30e1\u30a4\u30f3\u306e\u7a2e\u985e label.broadcast.uri=Broadcast URI -label.by.account=\u30A2\u30AB\u30A6\u30F3\u30C8 -label.by.availability=\u53EF\u7528\u6027 -label.by.domain=\u30C9\u30E1\u30A4\u30F3 -label.by.end.date=\u7D42\u4E86\u65E5 -label.by.level=\u30EC\u30D9\u30EB -label.by.pod=\u30DD\u30C3\u30C9 -label.by.role=\u5F79\u5272 -label.by.start.date=\u958B\u59CB\u65E5 -label.by.state=\u72B6\u614B -label.bytes.received=\u53D7\u4FE1\u30D0\u30A4\u30C8 -label.bytes.sent=\u9001\u4FE1\u30D0\u30A4\u30C8 -label.by.traffic.type=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E -label.by.type.id=\u7A2E\u985E ID -label.by.type=\u7A2E\u985E -label.by.zone=\u30BE\u30FC\u30F3 -label.cancel=\u30AD\u30E3\u30F3\u30BB\u30EB -label.capacity=\u51E6\u7406\u80FD\u529B -label.certificate=\u8A3C\u660E\u66F8 -label.change.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u5909\u66F4 -label.change.value=\u5024\u306E\u5909\u66F4 -label.character=\u6587\u5B57 -label.checksum=MD5 \u30C1\u30A7\u30C3\u30AF\u30B5\u30E0 -label.cidr.account=CIDR \u307E\u305F\u306F\u30A2\u30AB\u30A6\u30F3\u30C8/\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 +label.by.account=\u30a2\u30ab\u30a6\u30f3\u30c8 +label.by.availability=\u53ef\u7528\u6027 +label.by.domain=\u30c9\u30e1\u30a4\u30f3 +label.by.end.date=\u7d42\u4e86\u65e5 +label.by.level=\u30ec\u30d9\u30eb +label.by.pod=\u30dd\u30c3\u30c9 +label.by.role=\u5f79\u5272 +label.by.start.date=\u958b\u59cb\u65e5 +label.by.state=\u72b6\u614b +label.bytes.received=\u53d7\u4fe1\u30d0\u30a4\u30c8 +label.bytes.sent=\u9001\u4fe1\u30d0\u30a4\u30c8 +label.by.traffic.type=\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306e\u7a2e\u985e +label.by.type.id=\u7a2e\u985e ID +label.by.type=\u7a2e\u985e +label.by.zone=\u30be\u30fc\u30f3 +label.cancel=\u30ad\u30e3\u30f3\u30bb\u30eb +label.capacity=\u51e6\u7406\u80fd\u529b +label.certificate=\u8a3c\u660e\u66f8 +label.change.service.offering=\u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u306e\u5909\u66f4 +label.change.value=\u5024\u306e\u5909\u66f4 +label.character=\u6587\u5b57 +label.checksum=MD5 \u30c1\u30a7\u30c3\u30af\u30b5\u30e0 +label.cidr.account=CIDR \u307e\u305f\u306f\u30a2\u30ab\u30a6\u30f3\u30c8/\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7 label.cidr=CIDR -label.CIDR.list=CIDR \u4E00\u89A7 -label.cidr.list=\u9001\u4FE1\u5143 CIDR -label.CIDR.of.destination.network=\u5B9B\u5148\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E CIDR -label.clean.up=\u30AF\u30EA\u30FC\u30F3 \u30A2\u30C3\u30D7 -label.clear.list=\u4E00\u89A7\u306E\u6D88\u53BB -label.close=\u9589\u3058\u308B -label.cloud.console=\u30AF\u30E9\u30A6\u30C9\u7BA1\u7406\u30B3\u30F3\u30BD\u30FC\u30EB -label.cloud.managed=Cloud.com \u306B\u3088\u308B\u7BA1\u7406 -label.cluster.name=\u30AF\u30E9\u30B9\u30BF\u30FC\u540D -label.clusters=\u30AF\u30E9\u30B9\u30BF\u30FC -label.cluster.type=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u7A2E\u985E -label.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC +label.CIDR.list=CIDR \u4e00\u89a7 +label.cidr.list=\u9001\u4fe1\u5143 CIDR +label.CIDR.of.destination.network=\u5b9b\u5148\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e CIDR +label.clean.up=\u30af\u30ea\u30fc\u30f3 \u30a2\u30c3\u30d7 +label.clear.list=\u4e00\u89a7\u306e\u6d88\u53bb +label.close=\u9589\u3058\u308b +label.cloud.console=\u30af\u30e9\u30a6\u30c9\u7ba1\u7406\u30b3\u30f3\u30bd\u30fc\u30eb +label.cloud.managed=Cloud.com \u306b\u3088\u308b\u7ba1\u7406 +label.cluster.name=\u30af\u30e9\u30b9\u30bf\u30fc\u540d +label.clusters=\u30af\u30e9\u30b9\u30bf\u30fc +label.cluster.type=\u30af\u30e9\u30b9\u30bf\u30fc\u306e\u7a2e\u985e +label.cluster=\u30af\u30e9\u30b9\u30bf\u30fc label.clvm=CLVM -label.code=\u30B3\u30FC\u30C9 -label.community=\u30B3\u30DF\u30E5\u30CB\u30C6\u30A3 -label.compute.and.storage=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0\u3068\u30B9\u30C8\u30EC\u30FC\u30B8 -label.compute.offerings=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.compute.offering=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.compute=\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 -label.configuration=\u69CB\u6210 -label.configure.network.ACLs=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL \u306E\u69CB\u6210 -label.configure=\u69CB\u6210 -label.configure.vpc=VPC \u306E\u69CB\u6210 -label.confirmation=\u78BA\u8A8D -label.confirm.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u306E\u78BA\u8A8D\u5165\u529B -label.congratulations=\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u306F\u3053\u308C\u3067\u5B8C\u4E86\u3067\u3059\u3002 -label.conserve.mode=\u7BC0\u7D04\u30E2\u30FC\u30C9 -label.console.proxy=\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7 -label.continue.basic.install=\u57FA\u672C\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3092\u7D9A\u884C\u3059\u308B -label.continue=\u7D9A\u884C -label.corrections.saved=\u63A5\u7D9A\u304C\u4FDD\u5B58\u3055\u308C\u307E\u3057\u305F -label.cpu.allocated.for.VMs=VM \u306B\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E CPU -label.cpu.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E CPU +label.code=\u30b3\u30fc\u30c9 +label.community=\u30b3\u30df\u30e5\u30cb\u30c6\u30a3 +label.compute.and.storage=\u30b3\u30f3\u30d4\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0\u3068\u30b9\u30c8\u30ec\u30fc\u30b8 +label.compute.offerings=\u30b3\u30f3\u30d4\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0 +label.compute.offering=\u30b3\u30f3\u30d4\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0 +label.compute=\u30b3\u30f3\u30d4\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0 +label.configuration=\u69cb\u6210 +label.configure.network.ACLs=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af ACL \u306e\u69cb\u6210 +label.configure=\u69cb\u6210 +label.configure.vpc=VPC \u306e\u69cb\u6210 +label.confirmation=\u78ba\u8a8d +label.confirm.password=\u30d1\u30b9\u30ef\u30fc\u30c9\u306e\u78ba\u8a8d\u5165\u529b +label.congratulations=\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u306f\u3053\u308c\u3067\u5b8c\u4e86\u3067\u3059\u3002 +label.conserve.mode=\u7bc0\u7d04\u30e2\u30fc\u30c9 +label.console.proxy=\u30b3\u30f3\u30bd\u30fc\u30eb \u30d7\u30ed\u30ad\u30b7 +label.continue.basic.install=\u57fa\u672c\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3092\u7d9a\u884c\u3059\u308b +label.continue=\u7d9a\u884c +label.corrections.saved=\u63a5\u7d9a\u304c\u4fdd\u5b58\u3055\u308c\u307e\u3057\u305f +label.cpu.allocated.for.VMs=VM \u306b\u5272\u308a\u5f53\u3066\u6e08\u307f\u306e CPU +label.cpu.allocated=\u5272\u308a\u5f53\u3066\u6e08\u307f\u306e CPU label.CPU.cap=CPU \u5236\u9650 label.cpu=CPU label.cpu.mhz=CPU (MHz) -label.cpu.utilized=CPU \u4F7F\u7528\u7387 -label.created.by.system=\u30B7\u30B9\u30C6\u30E0\u4F5C\u6210 -label.created=\u4F5C\u6210\u65E5\u6642 -label.create.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u4F5C\u6210 -label.create.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210 -label.create.VPN.connection=VPN \u63A5\u7D9A\u306E\u4F5C\u6210 -label.cross.zones=\u30AF\u30ED\u30B9 \u30BE\u30FC\u30F3 -label.custom.disk.size=\u30AB\u30B9\u30BF\u30E0 \u30C7\u30A3\u30B9\u30AF \u30B5\u30A4\u30BA -label.daily=\u6BCE\u65E5 -label.data.disk.offering=\u30C7\u30FC\u30BF \u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.date=\u65E5\u6642 -label.day.of.month=\u6BCE\u6708\u6307\u5B9A\u65E5 -label.day.of.week=\u6BCE\u9031\u6307\u5B9A\u65E5 -label.dead.peer.detection=\u505C\u6B62\u30D4\u30A2\u306E\u691C\u51FA -label.decline.invitation=\u62DB\u5F85\u306E\u8F9E\u9000 -label.dedicated=\u5C02\u7528 -label.default=\u30C7\u30D5\u30A9\u30EB\u30C8 -label.default.use=\u30C7\u30D5\u30A9\u30EB\u30C8\u4F7F\u7528 -label.default.view=\u30C7\u30D5\u30A9\u30EB\u30C8 \u30D3\u30E5\u30FC -label.delete.F5=F5 \u306E\u524A\u9664 -label.delete.gateway=\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u524A\u9664 -label.delete.NetScaler=NetScaler \u306E\u524A\u9664 +label.cpu.utilized=CPU \u4f7f\u7528\u7387 +label.created.by.system=\u30b7\u30b9\u30c6\u30e0\u4f5c\u6210 +label.created=\u4f5c\u6210\u65e5\u6642 +label.create.project=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u4f5c\u6210 +label.create.template=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u4f5c\u6210 +label.create.VPN.connection=VPN \u63a5\u7d9a\u306e\u4f5c\u6210 +label.cross.zones=\u30af\u30ed\u30b9 \u30be\u30fc\u30f3 +label.custom.disk.size=\u30ab\u30b9\u30bf\u30e0 \u30c7\u30a3\u30b9\u30af \u30b5\u30a4\u30ba +label.daily=\u6bce\u65e5 +label.data.disk.offering=\u30c7\u30fc\u30bf \u30c7\u30a3\u30b9\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0 +label.date=\u65e5\u6642 +label.day.of.month=\u6bce\u6708\u6307\u5b9a\u65e5 +label.day.of.week=\u6bce\u9031\u6307\u5b9a\u65e5 +label.dead.peer.detection=\u505c\u6b62\u30d4\u30a2\u306e\u691c\u51fa +label.decline.invitation=\u62db\u5f85\u306e\u8f9e\u9000 +label.dedicated=\u5c02\u7528 +label.default=\u30c7\u30d5\u30a9\u30eb\u30c8 +label.default.use=\u30c7\u30d5\u30a9\u30eb\u30c8\u4f7f\u7528 +label.default.view=\u30c7\u30d5\u30a9\u30eb\u30c8 \u30d3\u30e5\u30fc +label.delete.F5=F5 \u306e\u524a\u9664 +label.delete.gateway=\u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u306e\u524a\u9664 +label.delete.NetScaler=NetScaler \u306e\u524a\u9664 label.delete.NiciraNvp=NVP\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u524a\u9664 -label.delete.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u524A\u9664 -label.delete.SRX=SRX \u306E\u524A\u9664 -label.delete=\u524A\u9664 -label.delete.VPN.connection=VPN \u63A5\u7D9A\u306E\u524A\u9664 -label.delete.VPN.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u524A\u9664 -label.delete.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u306E\u524A\u9664 -label.delete.vpn.user=VPN \u30E6\u30FC\u30B6\u30FC\u306E\u524A\u9664 -label.deleting.failed=\u524A\u9664\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F -label.deleting.processing=\u524A\u9664\u3057\u3066\u3044\u307E\u3059... -label.description=\u8AAC\u660E -label.destination.physical.network.id=\u30D6\u30EA\u30C3\u30B8\u5148\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID -label.destination.zone=\u30B3\u30D4\u30FC\u5148\u30BE\u30FC\u30F3 -label.destroy.router=\u30EB\u30FC\u30BF\u30FC\u306E\u7834\u68C4 +label.delete.project=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u524a\u9664 +label.delete.SRX=SRX \u306e\u524a\u9664 +label.delete=\u524a\u9664 +label.delete.VPN.connection=VPN \u63a5\u7d9a\u306e\u524a\u9664 +label.delete.VPN.customer.gateway=VPN \u30ab\u30b9\u30bf\u30de\u30fc \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u306e\u524a\u9664 +label.delete.VPN.gateway=VPN \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u306e\u524a\u9664 +label.delete.vpn.user=VPN \u30e6\u30fc\u30b6\u30fc\u306e\u524a\u9664 +label.deleting.failed=\u524a\u9664\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f +label.deleting.processing=\u524a\u9664\u3057\u3066\u3044\u307e\u3059... +label.description=\u8aac\u660e +label.destination.physical.network.id=\u30d6\u30ea\u30c3\u30b8\u5148\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af ID +label.destination.zone=\u30b3\u30d4\u30fc\u5148\u30be\u30fc\u30f3 +label.destroy.router=\u30eb\u30fc\u30bf\u30fc\u306e\u7834\u68c4 label.destroy=\u7834\u68c4 -label.detaching.disk=\u30C7\u30A3\u30B9\u30AF\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3044\u307E\u3059 -label.details=\u8A73\u7D30 -label.device.id=\u30C7\u30D0\u30A4\u30B9 ID -label.devices=\u30C7\u30D0\u30A4\u30B9 +label.detaching.disk=\u30c7\u30a3\u30b9\u30af\u3092\u30c7\u30bf\u30c3\u30c1\u3057\u3066\u3044\u307e\u3059 +label.details=\u8a73\u7d30 +label.device.id=\u30c7\u30d0\u30a4\u30b9 ID +label.devices=\u30c7\u30d0\u30a4\u30b9 label.dhcp=DHCP -label.DHCP.server.type=DHCP \u30B5\u30FC\u30D0\u30FC\u306E\u7A2E\u985E -label.direct.ips=\u76F4\u63A5 IP \u30A2\u30C9\u30EC\u30B9 -label.disabled=\u7121\u52B9 -label.disable.provider=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u306E\u7121\u52B9\u5316 -label.disable.vpn=VPN \u306E\u7121\u52B9\u5316 -label.disabling.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u7121\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 -label.disk.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E\u30C7\u30A3\u30B9\u30AF -label.disk.offering=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.disk.size.gb=\u30C7\u30A3\u30B9\u30AF \u30B5\u30A4\u30BA (GB \u5358\u4F4D) -label.disk.size=\u30C7\u30A3\u30B9\u30AF \u30B5\u30A4\u30BA -label.disk.total=\u30C7\u30A3\u30B9\u30AF\u5408\u8A08 -label.disk.volume=\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0 -label.display.name=\u8868\u793A\u540D -label.display.text=\u8868\u793A\u30C6\u30AD\u30B9\u30C8 +label.DHCP.server.type=DHCP \u30b5\u30fc\u30d0\u30fc\u306e\u7a2e\u985e +label.direct.ips=\u76f4\u63a5 IP \u30a2\u30c9\u30ec\u30b9 +label.disabled=\u7121\u52b9 +label.disable.provider=\u30d7\u30ed\u30d0\u30a4\u30c0\u30fc\u306e\u7121\u52b9\u5316 +label.disable.vpn=VPN \u306e\u7121\u52b9\u5316 +label.disabling.vpn.access=VPN \u30a2\u30af\u30bb\u30b9\u3092\u7121\u52b9\u306b\u3057\u3066\u3044\u307e\u3059 +label.disk.allocated=\u5272\u308a\u5f53\u3066\u6e08\u307f\u306e\u30c7\u30a3\u30b9\u30af +label.disk.offering=\u30c7\u30a3\u30b9\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0 +label.disk.size.gb=\u30c7\u30a3\u30b9\u30af \u30b5\u30a4\u30ba (GB \u5358\u4f4d) +label.disk.size=\u30c7\u30a3\u30b9\u30af \u30b5\u30a4\u30ba +label.disk.total=\u30c7\u30a3\u30b9\u30af\u5408\u8a08 +label.disk.volume=\u30c7\u30a3\u30b9\u30af \u30dc\u30ea\u30e5\u30fc\u30e0 +label.display.name=\u8868\u793a\u540d +label.display.text=\u8868\u793a\u30c6\u30ad\u30b9\u30c8 label.dns.1=DNS 1 label.dns.2=DNS 2 label.dns=DNS -label.DNS.domain.for.guest.networks=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E DNS \u30C9\u30E1\u30A4\u30F3 -label.domain.admin=\u30C9\u30E1\u30A4\u30F3\u7BA1\u7406\u8005 -label.domain.id=\u30C9\u30E1\u30A4\u30F3 ID -label.domain.name=\u30C9\u30E1\u30A4\u30F3\u540D -label.domain.router=\u30C9\u30E1\u30A4\u30F3 \u30EB\u30FC\u30BF\u30FC -label.domain.suffix=DNS \u30C9\u30E1\u30A4\u30F3 \u30B5\u30D5\u30A3\u30C3\u30AF\u30B9 (\u4F8B\: xyz.com) -label.domain=\u30C9\u30E1\u30A4\u30F3 -label.done=\u5B8C\u4E86 -label.double.quotes.are.not.allowed=\u4E8C\u91CD\u5F15\u7528\u7B26\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093 -label.download.progress=\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u306E\u9032\u6357\u72B6\u6CC1 -label.drag.new.position=\u65B0\u3057\u3044\u4F4D\u7F6E\u306B\u30C9\u30E9\u30C3\u30B0 -label.edit.lb.rule=\u8CA0\u8377\u5206\u6563\u898F\u5247\u306E\u7DE8\u96C6 -label.edit.network.details=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8A73\u7D30\u306E\u7DE8\u96C6 -label.edit.project.details=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u8A73\u7D30\u306E\u7DE8\u96C6 -label.edit.tags=\u30BF\u30B0\u306E\u7DE8\u96C6 -label.edit.traffic.type=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u306E\u7DE8\u96C6 -label.edit=\u7DE8\u96C6 -label.edit.vpc=VPC \u306E\u7DE8\u96C6 +label.DNS.domain.for.guest.networks=\u30b2\u30b9\u30c8 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e DNS \u30c9\u30e1\u30a4\u30f3 +label.domain.admin=\u30c9\u30e1\u30a4\u30f3\u7ba1\u7406\u8005 +label.domain.id=\u30c9\u30e1\u30a4\u30f3 ID +label.domain.name=\u30c9\u30e1\u30a4\u30f3\u540d +label.domain.router=\u30c9\u30e1\u30a4\u30f3 \u30eb\u30fc\u30bf\u30fc +label.domain.suffix=DNS \u30c9\u30e1\u30a4\u30f3 \u30b5\u30d5\u30a3\u30c3\u30af\u30b9 (\u4f8b\: xyz.com) +label.domain=\u30c9\u30e1\u30a4\u30f3 +label.done=\u5b8c\u4e86 +label.double.quotes.are.not.allowed=\u4e8c\u91cd\u5f15\u7528\u7b26\u306f\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093 +label.download.progress=\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u306e\u9032\u6357\u72b6\u6cc1 +label.drag.new.position=\u65b0\u3057\u3044\u4f4d\u7f6e\u306b\u30c9\u30e9\u30c3\u30b0 +label.edit.lb.rule=\u8ca0\u8377\u5206\u6563\u898f\u5247\u306e\u7de8\u96c6 +label.edit.network.details=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u8a73\u7d30\u306e\u7de8\u96c6 +label.edit.project.details=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u8a73\u7d30\u306e\u7de8\u96c6 +label.edit.tags=\u30bf\u30b0\u306e\u7de8\u96c6 +label.edit.traffic.type=\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306e\u7a2e\u985e\u306e\u7de8\u96c6 +label.edit=\u7de8\u96c6 +label.edit.vpc=VPC \u306e\u7de8\u96c6 label.egress.rules=\u9001\u4fe1\u30eb\u30fc\u30eb -label.egress.rule=\u9001\u4FE1\u898F\u5247 -label.elastic.IP=\u30A8\u30E9\u30B9\u30C6\u30A3\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 -label.elastic.LB=\u30A8\u30E9\u30B9\u30C6\u30A3\u30C3\u30AF\u8CA0\u8377\u5206\u6563 -label.elastic=\u30A8\u30E9\u30B9\u30C6\u30A3\u30C3\u30AF -label.email=\u96FB\u5B50\u30E1\u30FC\u30EB -label.enable.provider=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u306E\u6709\u52B9\u5316 +label.egress.rule=\u9001\u4fe1\u898f\u5247 +label.elastic.IP=\u30a8\u30e9\u30b9\u30c6\u30a3\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9 +label.elastic.LB=\u30a8\u30e9\u30b9\u30c6\u30a3\u30c3\u30af\u8ca0\u8377\u5206\u6563 +label.elastic=\u30a8\u30e9\u30b9\u30c6\u30a3\u30c3\u30af +label.email=\u96fb\u5b50\u30e1\u30fc\u30eb +label.enable.provider=\u30d7\u30ed\u30d0\u30a4\u30c0\u30fc\u306e\u6709\u52b9\u5316 label.enable.s3=S3\u57fa\u76e4\u30bb\u30ab\u30f3\u30c0\u30ea\u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u6709\u52b9\u5316 -label.enable.swift=Swift \u306E\u6709\u52B9\u5316 -label.enable.vpn=VPN \u306E\u6709\u52B9\u5316 -label.enabling.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 -label.enabling.vpn=VPN \u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 -label.end.IP=\u7D42\u4E86 IP \u30A2\u30C9\u30EC\u30B9 -label.endpoint.or.operation=\u30A8\u30F3\u30C9\u30DD\u30A4\u30F3\u30C8\u307E\u305F\u306F\u64CD\u4F5C +label.enable.swift=Swift \u306e\u6709\u52b9\u5316 +label.enable.vpn=VPN \u306e\u6709\u52b9\u5316 +label.enabling.vpn.access=VPN \u30a2\u30af\u30bb\u30b9\u3092\u6709\u52b9\u306b\u3057\u3066\u3044\u307e\u3059 +label.enabling.vpn=VPN \u3092\u6709\u52b9\u306b\u3057\u3066\u3044\u307e\u3059 +label.end.IP=\u7d42\u4e86 IP \u30a2\u30c9\u30ec\u30b9 +label.endpoint.or.operation=\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8\u307e\u305f\u306f\u64cd\u4f5c label.endpoint=\u30a8\u30f3\u30c9\u30dd\u30a4\u30f3\u30c8 -label.end.port=\u7D42\u4E86\u30DD\u30FC\u30C8 -label.end.reserved.system.IP=\u4E88\u7D04\u6E08\u307F\u7D42\u4E86\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9 -label.end.vlan=\u7D42\u4E86 VLAN -label.enter.token=\u30C8\u30FC\u30AF\u30F3\u306E\u5165\u529B -label.error.code=\u30A8\u30E9\u30FC \u30B3\u30FC\u30C9 -label.error=\u30A8\u30E9\u30FC -label.ESP.encryption=ESP \u6697\u53F7\u5316 -label.ESP.hash=ESP \u30CF\u30C3\u30B7\u30E5 -label.ESP.policy=ESP \u30DD\u30EA\u30B7\u30FC -label.esx.host=ESX/ESXi \u30DB\u30B9\u30C8 -label.example=\u4F8B +label.end.port=\u7d42\u4e86\u30dd\u30fc\u30c8 +label.end.reserved.system.IP=\u4e88\u7d04\u6e08\u307f\u7d42\u4e86\u30b7\u30b9\u30c6\u30e0 IP \u30a2\u30c9\u30ec\u30b9 +label.end.vlan=\u7d42\u4e86 VLAN +label.enter.token=\u30c8\u30fc\u30af\u30f3\u306e\u5165\u529b +label.error.code=\u30a8\u30e9\u30fc \u30b3\u30fc\u30c9 +label.error=\u30a8\u30e9\u30fc +label.ESP.encryption=ESP \u6697\u53f7\u5316 +label.ESP.hash=ESP \u30cf\u30c3\u30b7\u30e5 +label.ESP.policy=ESP \u30dd\u30ea\u30b7\u30fc +label.esx.host=ESX/ESXi \u30db\u30b9\u30c8 +label.example=\u4f8b label.f5=F5 label.failed=\u5931\u6557 -label.featured=\u304A\u3059\u3059\u3081 -label.fetch.latest=\u6700\u65B0\u60C5\u5831\u306E\u53D6\u5F97 -label.filterBy=\u30D5\u30A3\u30EB\u30BF\u30FC -label.firewall=\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB -label.first.name=\u540D -label.format=\u5F62\u5F0F -label.friday=\u91D1\u66DC\u65E5 -label.full.path=\u30D5\u30EB \u30D1\u30B9 -label.full=\u5B8C\u5168 -label.gateway=\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 -label.general.alerts=\u4E00\u822C\u30A2\u30E9\u30FC\u30C8 -label.generating.url=URL \u3092\u751F\u6210\u3057\u3066\u3044\u307E\u3059 -label.go.step.2=\u624B\u9806 2 \u306B\u9032\u3080 -label.go.step.3=\u624B\u9806 3 \u306B\u9032\u3080 -label.go.step.4=\u624B\u9806 4 \u306B\u9032\u3080 -label.go.step.5=\u624B\u9806 5 \u306B\u9032\u3080 -label.group.optional=\u30B0\u30EB\u30FC\u30D7 (\u30AA\u30D7\u30B7\u30E7\u30F3) -label.group=\u30B0\u30EB\u30FC\u30D7 -label.guest.cidr=\u30B2\u30B9\u30C8 CIDR -label.guest.end.ip=\u30B2\u30B9\u30C8\u306E\u7D42\u4E86 IP \u30A2\u30C9\u30EC\u30B9 -label.guest.gateway=\u30B2\u30B9\u30C8 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 -label.guest.ip.range=\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 -label.guest.ip=\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9 -label.guest.netmask=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30DE\u30B9\u30AF -label.guest.networks=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.guest.start.ip=\u30B2\u30B9\u30C8\u306E\u958B\u59CB IP \u30A2\u30C9\u30EC\u30B9 -label.guest.traffic=\u30B2\u30B9\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF -label.guest.type=\u30B2\u30B9\u30C8\u306E\u7A2E\u985E -label.guest=\u30B2\u30B9\u30C8 -label.ha.enabled=\u9AD8\u53EF\u7528\u6027\u6709\u52B9 -label.help=\u30D8\u30EB\u30D7 -label.hide.ingress.rule=\u53D7\u4FE1\u898F\u5247\u3092\u96A0\u3059 -label.hints=\u30D2\u30F3\u30C8 -label.host.alerts=\u30DB\u30B9\u30C8 \u30A2\u30E9\u30FC\u30C8 -label.host.MAC=\u30DB\u30B9\u30C8\u306E MAC -label.host.name=\u30DB\u30B9\u30C8\u540D -label.hosts=\u30DB\u30B9\u30C8 +label.featured=\u304a\u3059\u3059\u3081 +label.fetch.latest=\u6700\u65b0\u60c5\u5831\u306e\u53d6\u5f97 +label.filterBy=\u30d5\u30a3\u30eb\u30bf\u30fc +label.firewall=\u30d5\u30a1\u30a4\u30a2\u30a6\u30a9\u30fc\u30eb +label.first.name=\u540d +label.format=\u5f62\u5f0f +label.friday=\u91d1\u66dc\u65e5 +label.full.path=\u30d5\u30eb \u30d1\u30b9 +label.full=\u5b8c\u5168 +label.gateway=\u30b2\u30fc\u30c8\u30a6\u30a7\u30a4 +label.general.alerts=\u4e00\u822c\u30a2\u30e9\u30fc\u30c8 +label.generating.url=URL \u3092\u751f\u6210\u3057\u3066\u3044\u307e\u3059 +label.go.step.2=\u624b\u9806 2 \u306b\u9032\u3080 +label.go.step.3=\u624b\u9806 3 \u306b\u9032\u3080 +label.go.step.4=\u624b\u9806 4 \u306b\u9032\u3080 +label.go.step.5=\u624b\u9806 5 \u306b\u9032\u3080 +label.group.optional=\u30b0\u30eb\u30fc\u30d7 (\u30aa\u30d7\u30b7\u30e7\u30f3) +label.group=\u30b0\u30eb\u30fc\u30d7 +label.guest.cidr=\u30b2\u30b9\u30c8 CIDR +label.guest.end.ip=\u30b2\u30b9\u30c8\u306e\u7d42\u4e86 IP \u30a2\u30c9\u30ec\u30b9 +label.guest.gateway=\u30b2\u30b9\u30c8 \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4 +label.guest.ip.range=\u30b2\u30b9\u30c8 IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2 +label.guest.ip=\u30b2\u30b9\u30c8 IP \u30a2\u30c9\u30ec\u30b9 +label.guest.netmask=\u30b2\u30b9\u30c8 \u30cd\u30c3\u30c8\u30de\u30b9\u30af +label.guest.networks=\u30b2\u30b9\u30c8 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af +label.guest.start.ip=\u30b2\u30b9\u30c8\u306e\u958b\u59cb IP \u30a2\u30c9\u30ec\u30b9 +label.guest.traffic=\u30b2\u30b9\u30c8 \u30c8\u30e9\u30d5\u30a3\u30c3\u30af +label.guest.type=\u30b2\u30b9\u30c8\u306e\u7a2e\u985e +label.guest=\u30b2\u30b9\u30c8 +label.ha.enabled=\u9ad8\u53ef\u7528\u6027\u6709\u52b9 +label.help=\u30d8\u30eb\u30d7 +label.hide.ingress.rule=\u53d7\u4fe1\u898f\u5247\u3092\u96a0\u3059 +label.hints=\u30d2\u30f3\u30c8 +label.host.alerts=\u30db\u30b9\u30c8 \u30a2\u30e9\u30fc\u30c8 +label.host.MAC=\u30db\u30b9\u30c8\u306e MAC +label.host.name=\u30db\u30b9\u30c8\u540d +label.hosts=\u30db\u30b9\u30c8 label.host.tags=\u00e3\u0083\u009b\u00e3\u0082\u00b9\u00e3\u0083\u0088\u00e3\u0082\u00bf\u00e3\u0082\u00b0 -label.host=\u30DB\u30B9\u30C8 -label.hourly=\u6BCE\u6642 -label.hypervisor.capabilities=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306E\u6A5F\u80FD -label.hypervisor.type=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306E\u7A2E\u985E -label.hypervisor=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC -label.hypervisor.version=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306E\u30D0\u30FC\u30B8\u30E7\u30F3 +label.host=\u30db\u30b9\u30c8 +label.hourly=\u6bce\u6642 +label.hypervisor.capabilities=\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u306e\u6a5f\u80fd +label.hypervisor.type=\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u306e\u7a2e\u985e +label.hypervisor=\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc +label.hypervisor.version=\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u306e\u30d0\u30fc\u30b8\u30e7\u30f3 label.id=ID label.IKE.DH=IKE DH -label.IKE.encryption=IKE \u6697\u53F7\u5316 -label.IKE.hash=IKE \u30CF\u30C3\u30B7\u30E5 -label.IKE.policy=IKE \u30DD\u30EA\u30B7\u30FC -label.info=\u60C5\u5831 -label.ingress.rule=\u53D7\u4FE1\u898F\u5247 -label.initiated.by=\u958B\u59CB\u30E6\u30FC\u30B6\u30FC -label.installWizard.addClusterIntro.subtitle=\u30AF\u30E9\u30B9\u30BF\u30FC\u306B\u3064\u3044\u3066 -label.installWizard.addClusterIntro.title=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 -label.installWizard.addHostIntro.subtitle=\u30DB\u30B9\u30C8\u306B\u3064\u3044\u3066 -label.installWizard.addHostIntro.title=\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 -label.installWizard.addPodIntro.subtitle=\u30DD\u30C3\u30C9\u306B\u3064\u3044\u3066 -label.installWizard.addPodIntro.title=\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 -label.installWizard.addPrimaryStorageIntro.subtitle=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u3064\u3044\u3066 -label.installWizard.addPrimaryStorageIntro.title=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 +label.IKE.encryption=IKE \u6697\u53f7\u5316 +label.IKE.hash=IKE \u30cf\u30c3\u30b7\u30e5 +label.IKE.policy=IKE \u30dd\u30ea\u30b7\u30fc +label.info=\u60c5\u5831 +label.ingress.rule=\u53d7\u4fe1\u898f\u5247 +label.initiated.by=\u958b\u59cb\u30e6\u30fc\u30b6\u30fc +label.installWizard.addClusterIntro.subtitle=\u30af\u30e9\u30b9\u30bf\u30fc\u306b\u3064\u3044\u3066 +label.installWizard.addClusterIntro.title=\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u8ffd\u52a0\u3057\u307e\u3057\u3087\u3046 +label.installWizard.addHostIntro.subtitle=\u30db\u30b9\u30c8\u306b\u3064\u3044\u3066 +label.installWizard.addHostIntro.title=\u30db\u30b9\u30c8\u3092\u8ffd\u52a0\u3057\u307e\u3057\u3087\u3046 +label.installWizard.addPodIntro.subtitle=\u30dd\u30c3\u30c9\u306b\u3064\u3044\u3066 +label.installWizard.addPodIntro.title=\u30dd\u30c3\u30c9\u3092\u8ffd\u52a0\u3057\u307e\u3057\u3087\u3046 +label.installWizard.addPrimaryStorageIntro.subtitle=\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u306b\u3064\u3044\u3066 +label.installWizard.addPrimaryStorageIntro.title=\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3057\u307e\u3057\u3087\u3046 label.installWizard.addSecondaryStorageIntro.subtitle=\u30bb\u30ab\u30f3\u30c0\u30ea\u30fc\u30b9\u30c8\u30ec\u30fc\u30b8\u3068\u306f\uff1f -label.installWizard.addSecondaryStorageIntro.title=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 -label.installWizard.addZoneIntro.subtitle=\u30BE\u30FC\u30F3\u306B\u3064\u3044\u3066 -label.installWizard.addZoneIntro.title=\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3057\u307E\u3057\u3087\u3046 -label.installWizard.addZone.title=\u30BE\u30FC\u30F3\u306E\u8FFD\u52A0 -label.installWizard.click.launch=[\u8D77\u52D5] \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -label.installWizard.subtitle=\u3053\u306E\u30AC\u30A4\u30C9 \u30C4\u30A2\u30FC\u306F CloudStack&\#8482; \u74B0\u5883\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u306B\u5F79\u7ACB\u3061\u307E\u3059 -label.installWizard.title=CloudStack&\#8482; \u3078\u3088\u3046\u3053\u305D -label.instance.limits=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u5236\u9650 -label.instance.name=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u540D -label.instances=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.internal.dns.1=\u5185\u90E8 DNS 1 -label.internal.dns.2=\u5185\u90E8 DNS 2 -label.internal.name=\u5185\u90E8\u540D -label.interval.type=\u9593\u9694\u306E\u7A2E\u985E -label.introduction.to.cloudstack=CloudStack&\#8482; \u306E\u7D39\u4ECB -label.invalid.integer=\u7121\u52B9\u306A\u6574\u6570 -label.invalid.number=\u7121\u52B9\u306A\u6570 -label.invitations=\u62DB\u5F85\u72B6 -label.invited.accounts=\u62DB\u5F85\u6E08\u307F\u30A2\u30AB\u30A6\u30F3\u30C8 -label.invite.to=\u62DB\u5F85\u3059\u308B\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\: -label.invite=\u62DB\u5F85 -label.ip.address=IP \u30A2\u30C9\u30EC\u30B9 -label.ipaddress=IP \u30A2\u30C9\u30EC\u30B9 -label.ip.allocations=IP \u30A2\u30C9\u30EC\u30B9\u306E\u5272\u308A\u5F53\u3066 +label.installWizard.addSecondaryStorageIntro.title=\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3057\u307e\u3057\u3087\u3046 +label.installWizard.addZoneIntro.subtitle=\u30be\u30fc\u30f3\u306b\u3064\u3044\u3066 +label.installWizard.addZoneIntro.title=\u30be\u30fc\u30f3\u3092\u8ffd\u52a0\u3057\u307e\u3057\u3087\u3046 +label.installWizard.addZone.title=\u30be\u30fc\u30f3\u306e\u8ffd\u52a0 +label.installWizard.click.launch=[\u8d77\u52d5] \u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +label.installWizard.subtitle=\u3053\u306e\u30ac\u30a4\u30c9 \u30c4\u30a2\u30fc\u306f CloudStack&\#8482; \u74b0\u5883\u306e\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u306b\u5f79\u7acb\u3061\u307e\u3059 +label.installWizard.title=CloudStack&\#8482; \u3078\u3088\u3046\u3053\u305d +label.instance.limits=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u5236\u9650 +label.instance.name=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u540d +label.instances=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9 +label.instance=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9 +label.internal.dns.1=\u5185\u90e8 DNS 1 +label.internal.dns.2=\u5185\u90e8 DNS 2 +label.internal.name=\u5185\u90e8\u540d +label.interval.type=\u9593\u9694\u306e\u7a2e\u985e +label.introduction.to.cloudstack=CloudStack&\#8482; \u306e\u7d39\u4ecb +label.invalid.integer=\u7121\u52b9\u306a\u6574\u6570 +label.invalid.number=\u7121\u52b9\u306a\u6570 +label.invitations=\u62db\u5f85\u72b6 +label.invited.accounts=\u62db\u5f85\u6e08\u307f\u30a2\u30ab\u30a6\u30f3\u30c8 +label.invite.to=\u62db\u5f85\u3059\u308b\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\: +label.invite=\u62db\u5f85 +label.ip.address=IP \u30a2\u30c9\u30ec\u30b9 +label.ipaddress=IP \u30a2\u30c9\u30ec\u30b9 +label.ip.allocations=IP \u30a2\u30c9\u30ec\u30b9\u306e\u5272\u308a\u5f53\u3066 label.ip=IP -label.ip.limits=\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u306E\u5236\u9650 -label.ip.or.fqdn=IP \u30A2\u30C9\u30EC\u30B9\u307E\u305F\u306F FQDN -label.ip.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 -label.ip.ranges=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 -label.IPsec.preshared.key=IPsec \u4E8B\u524D\u5171\u6709\u30AD\u30FC +label.ip.limits=\u30d1\u30d6\u30ea\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9\u306e\u5236\u9650 +label.ip.or.fqdn=IP \u30a2\u30c9\u30ec\u30b9\u307e\u305f\u306f FQDN +label.ip.range=IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2 +label.ip.ranges=IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2 +label.IPsec.preshared.key=IPsec \u4e8b\u524d\u5171\u6709\u30ad\u30fc label.ips=IP label.iscsi=iSCSI -label.is.default=\u30C7\u30D5\u30A9\u30EB\u30C8 -label.iso.boot=ISO \u8D77\u52D5 +label.is.default=\u30c7\u30d5\u30a9\u30eb\u30c8 +label.iso.boot=ISO \u8d77\u52d5 label.iso=ISO -label.isolated.networks=\u5206\u96E2\u3055\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.isolation.method=\u5206\u96E2\u65B9\u6CD5 -label.isolation.mode=\u5206\u96E2\u30E2\u30FC\u30C9 +label.isolated.networks=\u5206\u96e2\u3055\u308c\u305f\u30cd\u30c3\u30c8\u30ef\u30fc\u30af +label.isolation.method=\u5206\u96e2\u65b9\u6cd5 +label.isolation.mode=\u5206\u96e2\u30e2\u30fc\u30c9 label.isolation.uri=Isolation URI label.is.redundant.router=\u5197\u9577 label.is.shared=\u5171\u6709 -label.is.system=\u30B7\u30B9\u30C6\u30E0 -label.item.listing=\u9805\u76EE\u4E00\u89A7 -label.keep=\u7DAD\u6301 -label.keyboard.type=\u30AD\u30FC\u30DC\u30FC\u30C9\u306E\u7A2E\u985E -label.key=\u30AD\u30FC -label.kvm.traffic.label=KVM \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u30E9\u30D9\u30EB -label.label=\u30E9\u30D9\u30EB +label.is.system=\u30b7\u30b9\u30c6\u30e0 +label.item.listing=\u9805\u76ee\u4e00\u89a7 +label.keep=\u7dad\u6301 +label.keyboard.type=\u30ad\u30fc\u30dc\u30fc\u30c9\u306e\u7a2e\u985e +label.key=\u30ad\u30fc +label.kvm.traffic.label=KVM \u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306e\u30e9\u30d9\u30eb +label.label=\u30e9\u30d9\u30eb label.lang.brportugese=Brazilian Portugese -label.lang.chinese=\u7C21\u4F53\u5B57\u4E2D\u56FD\u8A9E -label.lang.english=\u82F1\u8A9E +label.lang.chinese=\u7c21\u4f53\u5b57\u4e2d\u56fd\u8a9e +label.lang.english=\u82f1\u8a9e label.lang.french=French -label.lang.japanese=\u65E5\u672C\u8A9E +label.lang.japanese=\u65e5\u672c\u8a9e label.lang.russian=Russian -label.lang.spanish=\u30B9\u30DA\u30A4\u30F3\u8A9E -label.last.disconnected=\u6700\u7D42\u5207\u65AD\u65E5\u6642 -label.last.name=\u59D3 -label.latest.events=\u6700\u65B0\u30A4\u30D9\u30F3\u30C8 -label.launch=\u8D77\u52D5 -label.launch.vm=VM \u306E\u8D77\u52D5 -label.LB.isolation=\u8CA0\u8377\u5206\u6563\u5206\u96E2 -label.least.connections=\u6700\u5C0F\u63A5\u7D9A -label.level=\u30EC\u30D9\u30EB -label.linklocal.ip=\u30EA\u30F3\u30AF \u30ED\u30FC\u30AB\u30EB IP \u30A2\u30C9\u30EC\u30B9 -label.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E -label.load.balancing.policies=\u8CA0\u8377\u5206\u6563\u30DD\u30EA\u30B7\u30FC -label.load.balancing=\u8CA0\u8377\u5206\u6563 -label.loading=\u30ED\u30FC\u30C9\u3057\u3066\u3044\u307E\u3059 -label.local.storage.enabled=\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8\u306F\u6709\u52B9\u3067\u3059 -label.local.storage=\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8 -label.local=\u30ED\u30FC\u30AB\u30EB -label.login=\u30ED\u30B0\u30AA\u30F3 -label.logout=\u30ED\u30B0\u30AA\u30D5 +label.lang.spanish=\u30b9\u30da\u30a4\u30f3\u8a9e +label.last.disconnected=\u6700\u7d42\u5207\u65ad\u65e5\u6642 +label.last.name=\u59d3 +label.latest.events=\u6700\u65b0\u30a4\u30d9\u30f3\u30c8 +label.launch=\u8d77\u52d5 +label.launch.vm=VM \u306e\u8d77\u52d5 +label.LB.isolation=\u8ca0\u8377\u5206\u6563\u5206\u96e2 +label.least.connections=\u6700\u5c0f\u63a5\u7d9a +label.level=\u30ec\u30d9\u30eb +label.linklocal.ip=\u30ea\u30f3\u30af \u30ed\u30fc\u30ab\u30eb IP \u30a2\u30c9\u30ec\u30b9 +label.load.balancer=\u8ca0\u8377\u5206\u6563\u88c5\u7f6e +label.load.balancing.policies=\u8ca0\u8377\u5206\u6563\u30dd\u30ea\u30b7\u30fc +label.load.balancing=\u8ca0\u8377\u5206\u6563 +label.loading=\u30ed\u30fc\u30c9\u3057\u3066\u3044\u307e\u3059 +label.local.storage.enabled=\u30ed\u30fc\u30ab\u30eb \u30b9\u30c8\u30ec\u30fc\u30b8\u306f\u6709\u52b9\u3067\u3059 +label.local.storage=\u30ed\u30fc\u30ab\u30eb \u30b9\u30c8\u30ec\u30fc\u30b8 +label.local=\u30ed\u30fc\u30ab\u30eb +label.login=\u30ed\u30b0\u30aa\u30f3 +label.logout=\u30ed\u30b0\u30aa\u30d5 label.lun=LUN -label.LUN.number=LUN \u756A\u53F7 -label.make.project.owner=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u6240\u6709\u8005\u5316 -label.management.ips=\u7BA1\u7406 IP \u30A2\u30C9\u30EC\u30B9 -label.management=\u7BA1\u7406 -label.manage.resources=\u30EA\u30BD\u30FC\u30B9\u306E\u7BA1\u7406 -label.manage=\u7BA1\u7406 -label.max.guest.limit=\u6700\u5927\u30B2\u30B9\u30C8\u5236\u9650 +label.LUN.number=LUN \u756a\u53f7 +label.make.project.owner=\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u6240\u6709\u8005\u5316 +label.management.ips=\u7ba1\u7406 IP \u30a2\u30c9\u30ec\u30b9 +label.management=\u7ba1\u7406 +label.manage.resources=\u30ea\u30bd\u30fc\u30b9\u306e\u7ba1\u7406 +label.manage=\u7ba1\u7406 +label.max.guest.limit=\u6700\u5927\u30b2\u30b9\u30c8\u5236\u9650 label.maximum=\u6700\u5927 -label.max.networks=\u6700\u5927\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6570 -label.max.public.ips=\u6700\u5927\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u6570 -label.max.snapshots=\u6700\u5927\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u6570 -label.max.templates=\u6700\u5927\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u6570 -label.max.vms=\u6700\u5927\u30E6\u30FC\u30B6\u30FC VM \u6570 -label.max.volumes=\u6700\u5927\u30DC\u30EA\u30E5\u30FC\u30E0\u6570 +label.max.networks=\u6700\u5927\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u6570 +label.max.public.ips=\u6700\u5927\u30d1\u30d6\u30ea\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9\u6570 +label.max.snapshots=\u6700\u5927\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u6570 +label.max.templates=\u6700\u5927\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u6570 +label.max.vms=\u6700\u5927\u30e6\u30fc\u30b6\u30fc VM \u6570 +label.max.volumes=\u6700\u5927\u30dc\u30ea\u30e5\u30fc\u30e0\u6570 label.max.vpcs=Max. VPCs -label.may.continue=\u7D9A\u884C\u3067\u304D\u307E\u3059\u3002 -label.memory.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E\u30E1\u30E2\u30EA -label.memory.mb=\u30E1\u30E2\u30EA (MB) -label.memory.total=\u30E1\u30E2\u30EA\u5408\u8A08 -label.memory=\u30E1\u30E2\u30EA -label.memory.used=\u30E1\u30E2\u30EA\u4F7F\u7528\u91CF -label.menu.accounts=\u30A2\u30AB\u30A6\u30F3\u30C8 -label.menu.alerts=\u30A2\u30E9\u30FC\u30C8 -label.menu.all.accounts=\u3059\u3079\u3066\u306E\u30A2\u30AB\u30A6\u30F3\u30C8 -label.menu.all.instances=\u3059\u3079\u3066\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.menu.community.isos=\u30B3\u30DF\u30E5\u30CB\u30C6\u30A3 ISO -label.menu.community.templates=\u30B3\u30DF\u30E5\u30CB\u30C6\u30A3 \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 -label.menu.configuration=\u69CB\u6210 -label.menu.dashboard=\u30C0\u30C3\u30B7\u30E5\u30DC\u30FC\u30C9 -label.menu.destroyed.instances=\u7834\u68C4\u3055\u308C\u305F\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.menu.disk.offerings=\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.menu.domains=\u30C9\u30E1\u30A4\u30F3 -label.menu.events=\u30A4\u30D9\u30F3\u30C8 -label.menu.featured.isos=\u304A\u3059\u3059\u3081\u306E ISO -label.menu.featured.templates=\u304A\u3059\u3059\u3081\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 -label.menu.global.settings=\u30B0\u30ED\u30FC\u30D0\u30EB\u8A2D\u5B9A -label.menu.infrastructure=\u30A4\u30F3\u30D5\u30E9\u30B9\u30C8\u30E9\u30AF\u30C1\u30E3 -label.menu.instances=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.menu.ipaddresses=IP \u30A2\u30C9\u30EC\u30B9 +label.may.continue=\u7d9a\u884c\u3067\u304d\u307e\u3059\u3002 +label.memory.allocated=\u5272\u308a\u5f53\u3066\u6e08\u307f\u306e\u30e1\u30e2\u30ea +label.memory.mb=\u30e1\u30e2\u30ea (MB) +label.memory.total=\u30e1\u30e2\u30ea\u5408\u8a08 +label.memory=\u30e1\u30e2\u30ea +label.memory.used=\u30e1\u30e2\u30ea\u4f7f\u7528\u91cf +label.menu.accounts=\u30a2\u30ab\u30a6\u30f3\u30c8 +label.menu.alerts=\u30a2\u30e9\u30fc\u30c8 +label.menu.all.accounts=\u3059\u3079\u3066\u306e\u30a2\u30ab\u30a6\u30f3\u30c8 +label.menu.all.instances=\u3059\u3079\u3066\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9 +label.menu.community.isos=\u30b3\u30df\u30e5\u30cb\u30c6\u30a3 ISO +label.menu.community.templates=\u30b3\u30df\u30e5\u30cb\u30c6\u30a3 \u30c6\u30f3\u30d7\u30ec\u30fc\u30c8 +label.menu.configuration=\u69cb\u6210 +label.menu.dashboard=\u30c0\u30c3\u30b7\u30e5\u30dc\u30fc\u30c9 +label.menu.destroyed.instances=\u7834\u68c4\u3055\u308c\u305f\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9 +label.menu.disk.offerings=\u30c7\u30a3\u30b9\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0 +label.menu.domains=\u30c9\u30e1\u30a4\u30f3 +label.menu.events=\u30a4\u30d9\u30f3\u30c8 +label.menu.featured.isos=\u304a\u3059\u3059\u3081\u306e ISO +label.menu.featured.templates=\u304a\u3059\u3059\u3081\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8 +label.menu.global.settings=\u30b0\u30ed\u30fc\u30d0\u30eb\u8a2d\u5b9a +label.menu.infrastructure=\u30a4\u30f3\u30d5\u30e9\u30b9\u30c8\u30e9\u30af\u30c1\u30e3 +label.menu.instances=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9 +label.menu.ipaddresses=IP \u30a2\u30c9\u30ec\u30b9 label.menu.isos=ISO -label.menu.my.accounts=\u30DE\u30A4 \u30A2\u30AB\u30A6\u30F3\u30C8 -label.menu.my.instances=\u30DE\u30A4 \u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.menu.my.isos=\u30DE\u30A4 ISO -label.menu.my.templates=\u30DE\u30A4 \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 -label.menu.network.offerings=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.menu.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.menu.physical.resources=\u7269\u7406\u30EA\u30BD\u30FC\u30B9 -label.menu.running.instances=\u5B9F\u884C\u4E2D\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.menu.security.groups=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 -label.menu.service.offerings=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.menu.snapshots=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 -label.menu.stopped.instances=\u505C\u6B62\u3055\u308C\u305F\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 -label.menu.storage=\u30B9\u30C8\u30EC\u30FC\u30B8 -label.menu.system.service.offerings=\u30B7\u30B9\u30C6\u30E0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.menu.system=\u30B7\u30B9\u30C6\u30E0 -label.menu.system.vms=\u30B7\u30B9\u30C6\u30E0 VM -label.menu.templates=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 -label.menu.virtual.appliances=\u4EEE\u60F3\u30A2\u30D7\u30E9\u30A4\u30A2\u30F3\u30B9 -label.menu.virtual.resources=\u4EEE\u60F3\u30EA\u30BD\u30FC\u30B9 -label.menu.volumes=\u30DC\u30EA\u30E5\u30FC\u30E0 -label.migrate.instance.to.host=\u5225\u306E\u30DB\u30B9\u30C8\u3078\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C -label.migrate.instance.to.ps=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3078\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C -label.migrate.instance.to=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C\u5148\: -label.migrate.router.to=\u30EB\u30FC\u30BF\u30FC\u306E\u79FB\u884C\u5148\: -label.migrate.systemvm.to=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u79FB\u884C\u5148\: +label.menu.my.accounts=\u30de\u30a4 \u30a2\u30ab\u30a6\u30f3\u30c8 +label.menu.my.instances=\u30de\u30a4 \u30a4\u30f3\u30b9\u30bf\u30f3\u30b9 +label.menu.my.isos=\u30de\u30a4 ISO +label.menu.my.templates=\u30de\u30a4 \u30c6\u30f3\u30d7\u30ec\u30fc\u30c8 +label.menu.network.offerings=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0 +label.menu.network=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af +label.menu.physical.resources=\u7269\u7406\u30ea\u30bd\u30fc\u30b9 +label.menu.running.instances=\u5b9f\u884c\u4e2d\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9 +label.menu.security.groups=\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7 +label.menu.service.offerings=\u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0 +label.menu.snapshots=\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8 +label.menu.stopped.instances=\u505c\u6b62\u3055\u308c\u305f\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9 +label.menu.storage=\u30b9\u30c8\u30ec\u30fc\u30b8 +label.menu.system.service.offerings=\u30b7\u30b9\u30c6\u30e0 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0 +label.menu.system=\u30b7\u30b9\u30c6\u30e0 +label.menu.system.vms=\u30b7\u30b9\u30c6\u30e0 VM +label.menu.templates=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8 +label.menu.virtual.appliances=\u4eee\u60f3\u30a2\u30d7\u30e9\u30a4\u30a2\u30f3\u30b9 +label.menu.virtual.resources=\u4eee\u60f3\u30ea\u30bd\u30fc\u30b9 +label.menu.volumes=\u30dc\u30ea\u30e5\u30fc\u30e0 +label.migrate.instance.to.host=\u5225\u306e\u30db\u30b9\u30c8\u3078\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u79fb\u884c +label.migrate.instance.to.ps=\u5225\u306e\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3078\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u79fb\u884c +label.migrate.instance.to=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u79fb\u884c\u5148\: +label.migrate.router.to=\u30eb\u30fc\u30bf\u30fc\u306e\u79fb\u884c\u5148\: +label.migrate.systemvm.to=\u30b7\u30b9\u30c6\u30e0 VM \u306e\u79fb\u884c\u5148\: label.migrate.to.host=\u30db\u30b9\u30c8\u3078\u79fb\u884c label.migrate.to.storage=\u30b9\u30c8\u30ec\u30fc\u30b8\u3078\u79fb\u884c -label.migrate.volume=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3078\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u79FB\u884C -label.minimum=\u6700\u5C0F -label.minute.past.hour=\u5206 (\u6BCE\u6642) -label.monday=\u6708\u66DC\u65E5 -label.monthly=\u6BCE\u6708 -label.more.templates=\u305D\u306E\u307B\u304B\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 -label.move.down.row=1 \u884C\u4E0B\u306B\u79FB\u52D5 -label.move.to.bottom=\u6700\u4E0B\u4F4D\u306B\u79FB\u52D5 -label.move.to.top=\u6700\u4E0A\u4F4D\u306B\u79FB\u52D5 -label.move.up.row=1 \u884C\u4E0A\u306B\u79FB\u52D5 -label.my.account=\u30DE\u30A4 \u30A2\u30AB\u30A6\u30F3\u30C8 -label.my.network=\u30DE\u30A4 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.my.templates=\u30DE\u30A4 \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 -label.name.optional=\u540D\u524D (\u30AA\u30D7\u30B7\u30E7\u30F3) -label.name=\u540D\u524D -label.nat.port.range=NAT \u30DD\u30FC\u30C8\u306E\u7BC4\u56F2 -label.netmask=\u30CD\u30C3\u30C8\u30DE\u30B9\u30AF +label.migrate.volume=\u5225\u306e\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3078\u306e\u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u79fb\u884c +label.minimum=\u6700\u5c0f +label.minute.past.hour=\u5206 (\u6bce\u6642) +label.monday=\u6708\u66dc\u65e5 +label.monthly=\u6bce\u6708 +label.more.templates=\u305d\u306e\u307b\u304b\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8 +label.move.down.row=1 \u884c\u4e0b\u306b\u79fb\u52d5 +label.move.to.bottom=\u6700\u4e0b\u4f4d\u306b\u79fb\u52d5 +label.move.to.top=\u6700\u4e0a\u4f4d\u306b\u79fb\u52d5 +label.move.up.row=1 \u884c\u4e0a\u306b\u79fb\u52d5 +label.my.account=\u30de\u30a4 \u30a2\u30ab\u30a6\u30f3\u30c8 +label.my.network=\u30de\u30a4 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af +label.my.templates=\u30de\u30a4 \u30c6\u30f3\u30d7\u30ec\u30fc\u30c8 +label.name.optional=\u540d\u524d (\u30aa\u30d7\u30b7\u30e7\u30f3) +label.name=\u540d\u524d +label.nat.port.range=NAT \u30dd\u30fc\u30c8\u306e\u7bc4\u56f2 +label.netmask=\u30cd\u30c3\u30c8\u30de\u30b9\u30af label.netScaler=NetScaler -label.network.ACLs=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL -label.network.ACL.total=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL \u5408\u8A08 -label.network.ACL=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ACL -label.network.desc=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8AAC\u660E -label.network.device.type=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C7\u30D0\u30A4\u30B9\u306E\u7A2E\u985E -label.network.device=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C7\u30D0\u30A4\u30B9 -label.network.domain.text=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C9\u30E1\u30A4\u30F3 -label.network.domain=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C9\u30E1\u30A4\u30F3 -label.network.id=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID -label.networking.and.security=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3068\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 -label.network.label.display.for.blank.value=\u30C7\u30D5\u30A9\u30EB\u30C8 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u4F7F\u7528 -label.network.name=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u540D -label.network.offering.display.text=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u8868\u793A\u30C6\u30AD\u30B9\u30C8 -label.network.offering.id=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 ID -label.network.offering.name=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u540D -label.network.offering=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.network.rate.megabytes=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u901F\u5EA6 (MB/\u79D2) -label.network.rate=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u901F\u5EA6 -label.network.read=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8AAD\u307F\u53D6\u308A -label.network.service.providers=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30B5\u30FC\u30D3\u30B9 \u30D7\u30ED\u30D0\u30A4\u30C0\u30FC -label.networks=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.network.type=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u7A2E\u985E -label.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.network.write=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u66F8\u304D\u8FBC\u307F -label.new.password=\u65B0\u3057\u3044\u30D1\u30B9\u30EF\u30FC\u30C9 -label.new.project=\u65B0\u3057\u3044\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 -label.new=\u65B0\u898F -label.new.vm=\u65B0\u3057\u3044 VM -label.next=\u6B21\u3078 +label.network.ACLs=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af ACL +label.network.ACL.total=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af ACL \u5408\u8a08 +label.network.ACL=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af ACL +label.network.desc=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u8aac\u660e +label.network.device.type=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30c7\u30d0\u30a4\u30b9\u306e\u7a2e\u985e +label.network.device=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30c7\u30d0\u30a4\u30b9 +label.network.domain.text=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30c9\u30e1\u30a4\u30f3 +label.network.domain=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30c9\u30e1\u30a4\u30f3 +label.network.id=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af ID +label.networking.and.security=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3068\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 +label.network.label.display.for.blank.value=\u30c7\u30d5\u30a9\u30eb\u30c8 \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u3092\u4f7f\u7528 +label.network.name=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u540d +label.network.offering.display.text=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u8868\u793a\u30c6\u30ad\u30b9\u30c8 +label.network.offering.id=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0 ID +label.network.offering.name=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u540d +label.network.offering=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0 +label.network.rate.megabytes=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u901f\u5ea6 (MB/\u79d2) +label.network.rate=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u901f\u5ea6 +label.network.read=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u8aad\u307f\u53d6\u308a +label.network.service.providers=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30b5\u30fc\u30d3\u30b9 \u30d7\u30ed\u30d0\u30a4\u30c0\u30fc +label.networks=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af +label.network.type=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u7a2e\u985e +label.network=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af +label.network.write=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u66f8\u304d\u8fbc\u307f +label.new.password=\u65b0\u3057\u3044\u30d1\u30b9\u30ef\u30fc\u30c9 +label.new.project=\u65b0\u3057\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8 +label.new=\u65b0\u898f +label.new.vm=\u65b0\u3057\u3044 VM +label.next=\u6b21\u3078 label.nexusVswitch=Nexus 1000V label.nfs=NFS -label.nfs.server=NFS \u30B5\u30FC\u30D0\u30FC -label.nfs.storage=NFS \u30B9\u30C8\u30EC\u30FC\u30B8 -label.nic.adapter.type=NIC \u30A2\u30C0\u30D7\u30BF\u30FC\u306E\u7A2E\u985E +label.nfs.server=NFS \u30b5\u30fc\u30d0\u30fc +label.nfs.storage=NFS \u30b9\u30c8\u30ec\u30fc\u30b8 +label.nic.adapter.type=NIC \u30a2\u30c0\u30d7\u30bf\u30fc\u306e\u7a2e\u985e label.nicira.controller.address=\u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc\u306e\u30a2\u30c9\u30ec\u30b9 label.nicira.l3gatewayserviceuuid=L3 \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u30b5\u30fc\u30d3\u30b9UUID label.nicira.transportzoneuuid=Transport Zone Uuid label.nics=NIC -label.no.actions=\u5B9F\u884C\u3067\u304D\u308B\u64CD\u4F5C\u306F\u3042\u308A\u307E\u305B\u3093 -label.no.alerts=\u6700\u8FD1\u306E\u30A2\u30E9\u30FC\u30C8\u306F\u3042\u308A\u307E\u305B\u3093 -label.no.data=\u8868\u793A\u3059\u308B\u30C7\u30FC\u30BF\u304C\u3042\u308A\u307E\u305B\u3093 -label.no.errors=\u6700\u8FD1\u306E\u30A8\u30E9\u30FC\u306F\u3042\u308A\u307E\u305B\u3093 -label.no.isos=\u4F7F\u7528\u3067\u304D\u308B ISO \u306F\u3042\u308A\u307E\u305B\u3093 -label.no.items=\u4F7F\u7528\u3067\u304D\u308B\u9805\u76EE\u306F\u3042\u308A\u307E\u305B\u3093 -label.none=\u306A\u3057 -label.no.security.groups=\u4F7F\u7528\u3067\u304D\u308B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u306F\u3042\u308A\u307E\u305B\u3093 -label.not.found=\u898B\u3064\u304B\u308A\u307E\u305B\u3093 -label.no.thanks=\u8A2D\u5B9A\u3057\u306A\u3044 -label.notifications=\u901A\u77E5 +label.no.actions=\u5b9f\u884c\u3067\u304d\u308b\u64cd\u4f5c\u306f\u3042\u308a\u307e\u305b\u3093 +label.no.alerts=\u6700\u8fd1\u306e\u30a2\u30e9\u30fc\u30c8\u306f\u3042\u308a\u307e\u305b\u3093 +label.no.data=\u8868\u793a\u3059\u308b\u30c7\u30fc\u30bf\u304c\u3042\u308a\u307e\u305b\u3093 +label.no.errors=\u6700\u8fd1\u306e\u30a8\u30e9\u30fc\u306f\u3042\u308a\u307e\u305b\u3093 +label.no.isos=\u4f7f\u7528\u3067\u304d\u308b ISO \u306f\u3042\u308a\u307e\u305b\u3093 +label.no.items=\u4f7f\u7528\u3067\u304d\u308b\u9805\u76ee\u306f\u3042\u308a\u307e\u305b\u3093 +label.none=\u306a\u3057 +label.no.security.groups=\u4f7f\u7528\u3067\u304d\u308b\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7\u306f\u3042\u308a\u307e\u305b\u3093 +label.not.found=\u898b\u3064\u304b\u308a\u307e\u305b\u3093 +label.no.thanks=\u8a2d\u5b9a\u3057\u306a\u3044 +label.notifications=\u901a\u77e5 label.no=\u3044\u3044\u3048 -label.number.of.clusters=\u30AF\u30E9\u30B9\u30BF\u30FC\u6570 -label.number.of.hosts=\u30DB\u30B9\u30C8\u6570 -label.number.of.pods=\u30DD\u30C3\u30C9\u6570 -label.number.of.system.vms=\u30B7\u30B9\u30C6\u30E0 VM \u6570 -label.number.of.virtual.routers=\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u6570 -label.number.of.zones=\u30BE\u30FC\u30F3\u6570 -label.num.cpu.cores=CPU \u30B3\u30A2\u6570 -label.numretries=\u518D\u8A66\u884C\u56DE\u6570 +label.number.of.clusters=\u30af\u30e9\u30b9\u30bf\u30fc\u6570 +label.number.of.hosts=\u30db\u30b9\u30c8\u6570 +label.number.of.pods=\u30dd\u30c3\u30c9\u6570 +label.number.of.system.vms=\u30b7\u30b9\u30c6\u30e0 VM \u6570 +label.number.of.virtual.routers=\u4eee\u60f3\u30eb\u30fc\u30bf\u30fc\u6570 +label.number.of.zones=\u30be\u30fc\u30f3\u6570 +label.num.cpu.cores=CPU \u30b3\u30a2\u6570 +label.numretries=\u518d\u8a66\u884c\u56de\u6570 label.ocfs2=OCFS2 -label.offer.ha=\u9AD8\u53EF\u7528\u6027\u306E\u63D0\u4F9B +label.offer.ha=\u9ad8\u53ef\u7528\u6027\u306e\u63d0\u4f9b label.ok=OK -label.optional=\u30AA\u30D7\u30B7\u30E7\u30F3 -label.order=\u9806\u5E8F -label.os.preference=OS \u57FA\u672C\u8A2D\u5B9A -label.os.type=OS \u306E\u7A2E\u985E -label.owned.public.ips=\u6240\u6709\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 -label.owner.account=\u6240\u6709\u8005\u30A2\u30AB\u30A6\u30F3\u30C8 +label.optional=\u30aa\u30d7\u30b7\u30e7\u30f3 +label.order=\u9806\u5e8f +label.os.preference=OS \u57fa\u672c\u8a2d\u5b9a +label.os.type=OS \u306e\u7a2e\u985e +label.owned.public.ips=\u6240\u6709\u3059\u308b\u30d1\u30d6\u30ea\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9 +label.owner.account=\u6240\u6709\u8005\u30a2\u30ab\u30a6\u30f3\u30c8 label.owner.domain=\u00e6\u0089\u0080\u00e6\u009c\u0089\u00e8\u0080\u0085\u00e3\u0083\u0089\u00e3\u0083\u00a1\u00e3\u0082\u00a4\u00e3\u0083\u00b3 -label.parent.domain=\u89AA\u30C9\u30E1\u30A4\u30F3 -label.password.enabled=\u30D1\u30B9\u30EF\u30FC\u30C9\u7BA1\u7406\u6709\u52B9 -label.password=\u30D1\u30B9\u30EF\u30FC\u30C9 -label.path=\u30D1\u30B9 +label.parent.domain=\u89aa\u30c9\u30e1\u30a4\u30f3 +label.password.enabled=\u30d1\u30b9\u30ef\u30fc\u30c9\u7ba1\u7406\u6709\u52b9 +label.password=\u30d1\u30b9\u30ef\u30fc\u30c9 +label.path=\u30d1\u30b9 label.perfect.forward.secrecy=Perfect Forward Secrecy -label.physical.network.ID=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF ID -label.PING.CIFS.password=PING CIFS \u30D1\u30B9\u30EF\u30FC\u30C9 -label.PING.CIFS.username=PING CIFS \u30E6\u30FC\u30B6\u30FC\u540D -label.PING.dir=PING \u30C7\u30A3\u30EC\u30AF\u30C8\u30EA -label.PING.storage.IP=PING \u5BFE\u8C61\u306E\u30B9\u30C8\u30EC\u30FC\u30B8 IP \u30A2\u30C9\u30EC\u30B9 -label.please.specify.netscaler.info=Netscaler \u60C5\u5831\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044 -label.please.wait=\u304A\u5F85\u3061\u304F\u3060\u3055\u3044 -label.pod.name=\u30DD\u30C3\u30C9\u540D -label.pods=\u30DD\u30C3\u30C9 -label.pod=\u30DD\u30C3\u30C9 -label.port.forwarding.policies=\u30DD\u30FC\u30C8\u8EE2\u9001\u30DD\u30EA\u30B7\u30FC -label.port.forwarding=\u30DD\u30FC\u30C8\u8EE2\u9001 -label.port.range=\u30DD\u30FC\u30C8\u306E\u7BC4\u56F2 +label.physical.network.ID=\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af ID +label.PING.CIFS.password=PING CIFS \u30d1\u30b9\u30ef\u30fc\u30c9 +label.PING.CIFS.username=PING CIFS \u30e6\u30fc\u30b6\u30fc\u540d +label.PING.dir=PING \u30c7\u30a3\u30ec\u30af\u30c8\u30ea +label.PING.storage.IP=PING \u5bfe\u8c61\u306e\u30b9\u30c8\u30ec\u30fc\u30b8 IP \u30a2\u30c9\u30ec\u30b9 +label.please.specify.netscaler.info=Netscaler \u60c5\u5831\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044 +label.please.wait=\u304a\u5f85\u3061\u304f\u3060\u3055\u3044 +label.pod.name=\u30dd\u30c3\u30c9\u540d +label.pods=\u30dd\u30c3\u30c9 +label.pod=\u30dd\u30c3\u30c9 +label.port.forwarding.policies=\u30dd\u30fc\u30c8\u8ee2\u9001\u30dd\u30ea\u30b7\u30fc +label.port.forwarding=\u30dd\u30fc\u30c8\u8ee2\u9001 +label.port.range=\u30dd\u30fc\u30c8\u306e\u7bc4\u56f2 label.PreSetup=PreSetup -label.previous=\u623B\u308B -label.prev=\u623B\u308B -label.primary.allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 -label.primary.network=\u30D7\u30E9\u30A4\u30DE\u30EA \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.primary.storage.count=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30D7\u30FC\u30EB -label.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 -label.primary.used=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u4F7F\u7528\u91CF -label.private.Gateway=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 -label.private.interface=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9 -label.private.ip.range=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2 -label.private.ips=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9 -label.private.ip=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9 -label.privatekey=PKC\#8 \u79D8\u5BC6\u30AD\u30FC -label.private.network=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.private.port=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30DD\u30FC\u30C8 -label.private.zone=\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30BE\u30FC\u30F3 -label.project.dashboard=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30C0\u30C3\u30B7\u30E5\u30DC\u30FC\u30C9 -label.project.id=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 ID -label.project.invite=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u62DB\u5F85 -label.project.name=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u540D -label.projects=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 -label.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 -label.project.view=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30D3\u30E5\u30FC -label.protocol=\u30D7\u30ED\u30C8\u30B3\u30EB -label.providers=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC -label.public.interface=\u30D1\u30D6\u30EA\u30C3\u30AF \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9 -label.public.ips=\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 -label.public.ip=\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9 -label.public.network=\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.public.port=\u30D1\u30D6\u30EA\u30C3\u30AF \u30DD\u30FC\u30C8 -label.public=\u30D1\u30D6\u30EA\u30C3\u30AF -label.public.zone=\u30D1\u30D6\u30EA\u30C3\u30AF \u30BE\u30FC\u30F3 -label.purpose=\u76EE\u7684 -label.Pxe.server.type=PXE \u30B5\u30FC\u30D0\u30FC\u306E\u7A2E\u985E +label.previous=\u623b\u308b +label.prev=\u623b\u308b +label.primary.allocated=\u5272\u308a\u5f53\u3066\u6e08\u307f\u306e\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 +label.primary.network=\u30d7\u30e9\u30a4\u30de\u30ea \u30cd\u30c3\u30c8\u30ef\u30fc\u30af +label.primary.storage.count=\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 \u30d7\u30fc\u30eb +label.primary.storage=\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 +label.primary.used=\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u4f7f\u7528\u91cf +label.private.Gateway=\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4 +label.private.interface=\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9 +label.private.ip.range=\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2 +label.private.ips=\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 IP \u30a2\u30c9\u30ec\u30b9 +label.private.ip=\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 IP \u30a2\u30c9\u30ec\u30b9 +label.privatekey=PKC\#8 \u79d8\u5bc6\u30ad\u30fc +label.private.network=\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af +label.private.port=\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 \u30dd\u30fc\u30c8 +label.private.zone=\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 \u30be\u30fc\u30f3 +label.project.dashboard=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8 \u30c0\u30c3\u30b7\u30e5\u30dc\u30fc\u30c9 +label.project.id=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8 ID +label.project.invite=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3078\u306e\u62db\u5f85 +label.project.name=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u540d +label.projects=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8 +label.project=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8 +label.project.view=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8 \u30d3\u30e5\u30fc +label.protocol=\u30d7\u30ed\u30c8\u30b3\u30eb +label.providers=\u30d7\u30ed\u30d0\u30a4\u30c0\u30fc +label.public.interface=\u30d1\u30d6\u30ea\u30c3\u30af \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9 +label.public.ips=\u30d1\u30d6\u30ea\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9 +label.public.ip=\u30d1\u30d6\u30ea\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9 +label.public.network=\u30d1\u30d6\u30ea\u30c3\u30af \u30cd\u30c3\u30c8\u30ef\u30fc\u30af +label.public.port=\u30d1\u30d6\u30ea\u30c3\u30af \u30dd\u30fc\u30c8 +label.public=\u30d1\u30d6\u30ea\u30c3\u30af +label.public.zone=\u30d1\u30d6\u30ea\u30c3\u30af \u30be\u30fc\u30f3 +label.purpose=\u76ee\u7684 +label.Pxe.server.type=PXE \u30b5\u30fc\u30d0\u30fc\u306e\u7a2e\u985e label.quickview=\u30af\u30a4\u30c3\u30af\u30d3\u30e5\u30fc label.reboot=\u518d\u8d77\u52d5 -label.recent.errors=\u6700\u8FD1\u306E\u30A8\u30E9\u30FC -label.redundant.router.capability=\u5197\u9577\u30EB\u30FC\u30BF\u30FC\u6A5F\u80FD -label.redundant.router=\u5197\u9577\u30EB\u30FC\u30BF\u30FC -label.redundant.state=\u5197\u9577\u72B6\u614B -label.refresh=\u66F4\u65B0 -label.related=\u95A2\u9023 -label.remind.later=\u30A2\u30E9\u30FC\u30E0\u3092\u8868\u793A\u3059\u308B -label.remove.ACL=ACL \u306E\u524A\u9664 -label.remove.egress.rule=\u9001\u4FE1\u898F\u5247\u306E\u524A\u9664 -label.remove.from.load.balancer=\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u304B\u3089\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059 -label.remove.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u524A\u9664 -label.remove.ip.range=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u524A\u9664 -label.remove.pf=\u30DD\u30FC\u30C8\u8EE2\u9001\u898F\u5247\u306E\u524A\u9664 -label.remove.rule=\u898F\u5247\u306E\u524A\u9664 -label.remove.static.nat.rule=\u9759\u7684 NAT \u898F\u5247\u306E\u524A\u9664 -label.remove.static.route=\u9759\u7684\u30EB\u30FC\u30C8\u306E\u524A\u9664 -label.remove.tier=\u968E\u5C64\u306E\u524A\u9664 -label.remove.vm.from.lb=\u8CA0\u8377\u5206\u6563\u898F\u5247\u304B\u3089\u306E VM \u306E\u524A\u9664 -label.remove.vpc=VPC \u306E\u524A\u9664 -label.removing=\u524A\u9664\u3057\u3066\u3044\u307E\u3059 -label.removing.user=\u30E6\u30FC\u30B6\u30FC\u3092\u524A\u9664\u3057\u3066\u3044\u307E\u3059 -label.required=\u5FC5\u9808\u3067\u3059 -label.reserved.system.gateway=\u4E88\u7D04\u6E08\u307F\u30B7\u30B9\u30C6\u30E0 \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 -label.reserved.system.ip=\u4E88\u7D04\u6E08\u307F\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9 -label.reserved.system.netmask=\u4E88\u7D04\u6E08\u307F\u30B7\u30B9\u30C6\u30E0 \u30CD\u30C3\u30C8\u30DE\u30B9\u30AF -label.reset.VPN.connection=VPN \u63A5\u7D9A\u306E\u30EA\u30BB\u30C3\u30C8 -label.resource.limits=\u30EA\u30BD\u30FC\u30B9\u5236\u9650 -label.resource.state=\u30EA\u30BD\u30FC\u30B9\u306E\u72B6\u614B -label.resources=\u30EA\u30BD\u30FC\u30B9 -label.resource=\u30EA\u30BD\u30FC\u30B9 -label.restart.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u518D\u8D77\u52D5 -label.restart.required=\u518D\u8D77\u52D5\u304C\u5FC5\u8981 -label.restart.vpc=VPC \u306E\u518D\u8D77\u52D5 +label.recent.errors=\u6700\u8fd1\u306e\u30a8\u30e9\u30fc +label.redundant.router.capability=\u5197\u9577\u30eb\u30fc\u30bf\u30fc\u6a5f\u80fd +label.redundant.router=\u5197\u9577\u30eb\u30fc\u30bf\u30fc +label.redundant.state=\u5197\u9577\u72b6\u614b +label.refresh=\u66f4\u65b0 +label.related=\u95a2\u9023 +label.remind.later=\u30a2\u30e9\u30fc\u30e0\u3092\u8868\u793a\u3059\u308b +label.remove.ACL=ACL \u306e\u524a\u9664 +label.remove.egress.rule=\u9001\u4fe1\u898f\u5247\u306e\u524a\u9664 +label.remove.from.load.balancer=\u8ca0\u8377\u5206\u6563\u88c5\u7f6e\u304b\u3089\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059 +label.remove.ingress.rule=\u53d7\u4fe1\u898f\u5247\u306e\u524a\u9664 +label.remove.ip.range=IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u306e\u524a\u9664 +label.remove.pf=\u30dd\u30fc\u30c8\u8ee2\u9001\u898f\u5247\u306e\u524a\u9664 +label.remove.rule=\u898f\u5247\u306e\u524a\u9664 +label.remove.static.nat.rule=\u9759\u7684 NAT \u898f\u5247\u306e\u524a\u9664 +label.remove.static.route=\u9759\u7684\u30eb\u30fc\u30c8\u306e\u524a\u9664 +label.remove.tier=\u968e\u5c64\u306e\u524a\u9664 +label.remove.vm.from.lb=\u8ca0\u8377\u5206\u6563\u898f\u5247\u304b\u3089\u306e VM \u306e\u524a\u9664 +label.remove.vpc=VPC \u306e\u524a\u9664 +label.removing=\u524a\u9664\u3057\u3066\u3044\u307e\u3059 +label.removing.user=\u30e6\u30fc\u30b6\u30fc\u3092\u524a\u9664\u3057\u3066\u3044\u307e\u3059 +label.required=\u5fc5\u9808\u3067\u3059 +label.reserved.system.gateway=\u4e88\u7d04\u6e08\u307f\u30b7\u30b9\u30c6\u30e0 \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4 +label.reserved.system.ip=\u4e88\u7d04\u6e08\u307f\u30b7\u30b9\u30c6\u30e0 IP \u30a2\u30c9\u30ec\u30b9 +label.reserved.system.netmask=\u4e88\u7d04\u6e08\u307f\u30b7\u30b9\u30c6\u30e0 \u30cd\u30c3\u30c8\u30de\u30b9\u30af +label.reset.VPN.connection=VPN \u63a5\u7d9a\u306e\u30ea\u30bb\u30c3\u30c8 +label.resource.limits=\u30ea\u30bd\u30fc\u30b9\u5236\u9650 +label.resource.state=\u30ea\u30bd\u30fc\u30b9\u306e\u72b6\u614b +label.resources=\u30ea\u30bd\u30fc\u30b9 +label.resource=\u30ea\u30bd\u30fc\u30b9 +label.restart.network=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u518d\u8d77\u52d5 +label.restart.required=\u518d\u8d77\u52d5\u304c\u5fc5\u8981 +label.restart.vpc=VPC \u306e\u518d\u8d77\u52d5 label.restore=\u30ea\u30b9\u30c8\u30a2 -label.review=\u78BA\u8A8D -label.revoke.project.invite=\u62DB\u5F85\u306E\u53D6\u308A\u6D88\u3057 -label.role=\u5F79\u5272 -label.root.disk.controller=\u30EB\u30FC\u30C8 \u30C7\u30A3\u30B9\u30AF \u30B3\u30F3\u30C8\u30ED\u30FC\u30E9\u30FC -label.root.disk.offering=\u30EB\u30FC\u30C8 \u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.round.robin=\u30E9\u30A6\u30F3\u30C9\u30ED\u30D3\u30F3 -label.rules=\u898F\u5247 -label.running.vms=\u5B9F\u884C\u4E2D\u306E VM +label.review=\u78ba\u8a8d +label.revoke.project.invite=\u62db\u5f85\u306e\u53d6\u308a\u6d88\u3057 +label.role=\u5f79\u5272 +label.root.disk.controller=\u30eb\u30fc\u30c8 \u30c7\u30a3\u30b9\u30af \u30b3\u30f3\u30c8\u30ed\u30fc\u30e9\u30fc +label.root.disk.offering=\u30eb\u30fc\u30c8 \u30c7\u30a3\u30b9\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0 +label.round.robin=\u30e9\u30a6\u30f3\u30c9\u30ed\u30d3\u30f3 +label.rules=\u898f\u5247 +label.running.vms=\u5b9f\u884c\u4e2d\u306e VM label.s3.access_key=\u30a2\u30af\u30bb\u30b9\u30ad\u30fc label.s3.bucket=\u30d0\u30b1\u30c3\u30c8 label.s3.connection_timeout=\u30b3\u30cd\u30af\u30b7\u30e7\u30f3\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8 @@ -890,569 +891,569 @@ label.s3.max_error_retry=\u30a8\u30e9\u30fc\u6642\u306e\u6700\u5927\u30ea\u30c8\ label.s3.secret_key=\u79d8\u5bc6\u9375 label.s3.socket_timeout=\u30bd\u30b1\u30c3\u30c8\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8 label.s3.use_https=HTTPS\u306e\u4f7f\u7528 -label.saturday=\u571F\u66DC\u65E5 -label.save.and.continue=\u4FDD\u5B58\u3057\u3066\u7D9A\u884C -label.save=\u4FDD\u5B58 -label.saving.processing=\u4FDD\u5B58\u3057\u3066\u3044\u307E\u3059... -label.scope=\u30B9\u30B3\u30FC\u30D7 -label.search=\u691C\u7D22 -label.secondary.storage.count=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30D7\u30FC\u30EB -label.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 -label.secondary.storage.vm=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 VM -label.secondary.used=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u4F7F\u7528\u91CF +label.saturday=\u571f\u66dc\u65e5 +label.save.and.continue=\u4fdd\u5b58\u3057\u3066\u7d9a\u884c +label.save=\u4fdd\u5b58 +label.saving.processing=\u4fdd\u5b58\u3057\u3066\u3044\u307e\u3059... +label.scope=\u30b9\u30b3\u30fc\u30d7 +label.search=\u691c\u7d22 +label.secondary.storage.count=\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 \u30d7\u30fc\u30eb +label.secondary.storage=\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 +label.secondary.storage.vm=\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 VM +label.secondary.used=\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u4f7f\u7528\u91cf label.secret.key=\u79d8\u5bc6\u9375 -label.security.group.name=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u540D -label.security.groups.enabled=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u6709\u52B9 -label.security.groups=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 -label.security.group=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 -label.select.a.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u9078\u629E -label.select.a.zone=\u30BE\u30FC\u30F3\u306E\u9078\u629E -label.select.instance.to.attach.volume.to=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30A2\u30BF\u30C3\u30C1\u3059\u308B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 -label.select.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u9078\u629E -label.select.iso.or.template=ISO \u307E\u305F\u306F\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u9078\u629E -label.select.offering=\u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u9078\u629E -label.select.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u9078\u629E -label.select.tier=\u968E\u5C64\u306E\u9078\u629E -label.select=\u9078\u629E -label.select-view=\u30D3\u30E5\u30FC\u306E\u9078\u629E -label.select.vm.for.static.nat=\u9759\u7684 NAT \u7528 VM \u306E\u9078\u629E -label.sent=\u9001\u4FE1\u6E08\u307F -label.server=\u30B5\u30FC\u30D0\u30FC -label.service.capabilities=\u30B5\u30FC\u30D3\u30B9\u306E\u6A5F\u80FD -label.service.offering=\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.session.expired=\u30BB\u30C3\u30B7\u30E7\u30F3\u306E\u6709\u52B9\u671F\u9650\u304C\u5207\u308C\u307E\u3057\u305F -label.setup.network=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 -label.setup=\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 -label.set.up.zone.type=\u30BE\u30FC\u30F3\u306E\u7A2E\u985E\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 -label.setup.zone=\u30BE\u30FC\u30F3\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 +label.security.group.name=\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7\u540d +label.security.groups.enabled=\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7\u6709\u52b9 +label.security.groups=\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7 +label.security.group=\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7 +label.select.a.template=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u9078\u629e +label.select.a.zone=\u30be\u30fc\u30f3\u306e\u9078\u629e +label.select.instance.to.attach.volume.to=\u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u30a2\u30bf\u30c3\u30c1\u3059\u308b\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044 +label.select.instance=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u9078\u629e +label.select.iso.or.template=ISO \u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u9078\u629e +label.select.offering=\u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u306e\u9078\u629e +label.select.project=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u9078\u629e +label.select.tier=\u968e\u5c64\u306e\u9078\u629e +label.select=\u9078\u629e +label.select-view=\u30d3\u30e5\u30fc\u306e\u9078\u629e +label.select.vm.for.static.nat=\u9759\u7684 NAT \u7528 VM \u306e\u9078\u629e +label.sent=\u9001\u4fe1\u6e08\u307f +label.server=\u30b5\u30fc\u30d0\u30fc +label.service.capabilities=\u30b5\u30fc\u30d3\u30b9\u306e\u6a5f\u80fd +label.service.offering=\u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0 +label.session.expired=\u30bb\u30c3\u30b7\u30e7\u30f3\u306e\u6709\u52b9\u671f\u9650\u304c\u5207\u308c\u307e\u3057\u305f +label.setup.network=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7 +label.setup=\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7 +label.set.up.zone.type=\u30be\u30fc\u30f3\u306e\u7a2e\u985e\u306e\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7 +label.setup.zone=\u30be\u30fc\u30f3\u306e\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7 label.SharedMountPoint=SharedMountPoint label.shared=\u5171\u6709 -label.show.ingress.rule=\u53D7\u4FE1\u898F\u5247\u306E\u8868\u793A -label.shutdown.provider=\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u306E\u30B7\u30E3\u30C3\u30C8\u30C0\u30A6\u30F3 -label.site.to.site.VPN=\u30B5\u30A4\u30C8\u9593 VPN -label.size=\u30B5\u30A4\u30BA -label.skip.guide=CloudStack \u3092\u4F7F\u7528\u3057\u305F\u3053\u3068\u304C\u3042\u308B\u306E\u3067\u3001\u3053\u306E\u30AC\u30A4\u30C9\u3092\u30B9\u30AD\u30C3\u30D7\u3059\u308B -label.snapshot.limits=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u5236\u9650 -label.snapshot.name=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u540D -label.snapshot.schedule=\u5B9A\u671F\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7 -label.snapshot.s=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 -label.snapshots=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 -label.snapshot=\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 -label.source.nat=\u9001\u4FE1\u5143 NAT -label.source=\u9001\u4FE1\u5143 -label.specify.IP.ranges=IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306E\u6307\u5B9A -label.specify.vlan=VLAN \u306E\u6307\u5B9A -label.SR.name = SR \u540D\u30E9\u30D9\u30EB +label.show.ingress.rule=\u53d7\u4fe1\u898f\u5247\u306e\u8868\u793a +label.shutdown.provider=\u30d7\u30ed\u30d0\u30a4\u30c0\u30fc\u306e\u30b7\u30e3\u30c3\u30c8\u30c0\u30a6\u30f3 +label.site.to.site.VPN=\u30b5\u30a4\u30c8\u9593 VPN +label.size=\u30b5\u30a4\u30ba +label.skip.guide=CloudStack \u3092\u4f7f\u7528\u3057\u305f\u3053\u3068\u304c\u3042\u308b\u306e\u3067\u3001\u3053\u306e\u30ac\u30a4\u30c9\u3092\u30b9\u30ad\u30c3\u30d7\u3059\u308b +label.snapshot.limits=\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u5236\u9650 +label.snapshot.name=\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u540d +label.snapshot.schedule=\u5b9a\u671f\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u306e\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7 +label.snapshot.s=\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8 +label.snapshots=\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8 +label.snapshot=\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8 +label.source.nat=\u9001\u4fe1\u5143 NAT +label.source=\u9001\u4fe1\u5143 +label.specify.IP.ranges=IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u306e\u6307\u5b9a +label.specify.vlan=VLAN \u306e\u6307\u5b9a +label.SR.name = SR \u540d\u30e9\u30d9\u30eb label.srx=SRX -label.start.IP=\u958B\u59CB IP \u30A2\u30C9\u30EC\u30B9 -label.start.port=\u958B\u59CB\u30DD\u30FC\u30C8 -label.start.reserved.system.IP=\u4E88\u7D04\u6E08\u307F\u958B\u59CB\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9 -label.start.vlan=\u958B\u59CB VLAN -label.state=\u72B6\u614B -label.static.nat.enabled=\u9759\u7684 NAT \u6709\u52B9 -label.static.nat.to=\u9759\u7684 NAT \u306E\u8A2D\u5B9A\u5148\: +label.start.IP=\u958b\u59cb IP \u30a2\u30c9\u30ec\u30b9 +label.start.port=\u958b\u59cb\u30dd\u30fc\u30c8 +label.start.reserved.system.IP=\u4e88\u7d04\u6e08\u307f\u958b\u59cb\u30b7\u30b9\u30c6\u30e0 IP \u30a2\u30c9\u30ec\u30b9 +label.start.vlan=\u958b\u59cb VLAN +label.state=\u72b6\u614b +label.static.nat.enabled=\u9759\u7684 NAT \u6709\u52b9 +label.static.nat.to=\u9759\u7684 NAT \u306e\u8a2d\u5b9a\u5148\: label.static.nat=\u9759\u7684 NAT -label.static.nat.vm.details=\u9759\u7684 NAT VM \u306E\u8A73\u7D30 -label.statistics=\u7D71\u8A08 -label.status=\u72B6\u614B -label.step.1.title=\u624B\u9806 1. \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u9078\u629E -label.step.1=\u624B\u9806 1 -label.step.2.title=\u624B\u9806 2. \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.step.2=\u624B\u9806 2 -label.step.3.title=\u624B\u9806 3. \u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u306E\u9078\u629E -label.step.3=\u624B\u9806 3 -label.step.4.title=\u624B\u9806 4. \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.step.4=\u624B\u9806 4 -label.step.5.title=\u624B\u9806 5. \u78BA\u8A8D -label.step.5=\u624B\u9806 5 -label.stickiness=\u6301\u7D9A\u6027 -label.sticky.cookie-name=Cookie \u540D -label.sticky.domain=\u30C9\u30E1\u30A4\u30F3 -label.sticky.expire=\u5931\u52B9 -label.sticky.holdtime=\u4FDD\u6301\u6642\u9593 -label.sticky.indirect=\u9593\u63A5 +label.static.nat.vm.details=\u9759\u7684 NAT VM \u306e\u8a73\u7d30 +label.statistics=\u7d71\u8a08 +label.status=\u72b6\u614b +label.step.1.title=\u624b\u9806 1. \u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u9078\u629e +label.step.1=\u624b\u9806 1 +label.step.2.title=\u624b\u9806 2. \u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0 +label.step.2=\u624b\u9806 2 +label.step.3.title=\u624b\u9806 3. \u30c7\u30a3\u30b9\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u306e\u9078\u629e +label.step.3=\u624b\u9806 3 +label.step.4.title=\u624b\u9806 4. \u30cd\u30c3\u30c8\u30ef\u30fc\u30af +label.step.4=\u624b\u9806 4 +label.step.5.title=\u624b\u9806 5. \u78ba\u8a8d +label.step.5=\u624b\u9806 5 +label.stickiness=\u6301\u7d9a\u6027 +label.sticky.cookie-name=Cookie \u540d +label.sticky.domain=\u30c9\u30e1\u30a4\u30f3 +label.sticky.expire=\u5931\u52b9 +label.sticky.holdtime=\u4fdd\u6301\u6642\u9593 +label.sticky.indirect=\u9593\u63a5 label.sticky.length=\u9577\u3055 -label.sticky.mode=\u30E2\u30FC\u30C9 -label.sticky.nocache=\u30AD\u30E3\u30C3\u30B7\u30E5\u306A\u3057 -label.sticky.postonly=\u30DD\u30B9\u30C8\u306E\u307F -label.sticky.prefix=\u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9 -label.sticky.request-learn=\u30E9\u30FC\u30CB\u30F3\u30B0\u306E\u8981\u6C42 -label.sticky.tablesize=\u30C6\u30FC\u30D6\u30EB \u30B5\u30A4\u30BA -label.stopped.vms=\u505C\u6B62\u4E2D\u306E VM +label.sticky.mode=\u30e2\u30fc\u30c9 +label.sticky.nocache=\u30ad\u30e3\u30c3\u30b7\u30e5\u306a\u3057 +label.sticky.postonly=\u30dd\u30b9\u30c8\u306e\u307f +label.sticky.prefix=\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9 +label.sticky.request-learn=\u30e9\u30fc\u30cb\u30f3\u30b0\u306e\u8981\u6c42 +label.sticky.tablesize=\u30c6\u30fc\u30d6\u30eb \u30b5\u30a4\u30ba +label.stopped.vms=\u505c\u6b62\u4e2d\u306e VM label.stop=\u505c\u6b62 -label.storage.tags=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30BF\u30B0 -label.storage.traffic=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF -label.storage.type=\u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u7A2E\u985E -label.storage=\u30B9\u30C8\u30EC\u30FC\u30B8 -label.subdomain.access=\u30B5\u30D6\u30C9\u30E1\u30A4\u30F3 \u30A2\u30AF\u30BB\u30B9 -label.submitted.by=[\u9001\u4FE1\u30E6\u30FC\u30B6\u30FC\: ] -label.submit=\u9001\u4FE1 -label.succeeded=\u6210\u529F -label.sunday=\u65E5\u66DC\u65E5 -label.super.cidr.for.guest.networks=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30B9\u30FC\u30D1\u30FC CIDR -label.supported.services=\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u308B\u30B5\u30FC\u30D3\u30B9 -label.supported.source.NAT.type=\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u308B\u9001\u4FE1\u5143 NAT \u306E\u7A2E\u985E -label.suspend.project=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u4E00\u6642\u505C\u6B62 -label.system.capacity=\u30B7\u30B9\u30C6\u30E0\u306E\u51E6\u7406\u80FD\u529B -label.system.offering=\u30B7\u30B9\u30C6\u30E0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.system.service.offering=\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0 -label.system.vms=\u30B7\u30B9\u30C6\u30E0 VM -label.system.vm.type=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u7A2E\u985E -label.system.vm=\u30B7\u30B9\u30C6\u30E0 VM -label.system.wide.capacity=\u30B7\u30B9\u30C6\u30E0\u5168\u4F53\u306E\u51E6\u7406\u80FD\u529B -label.tagged=\u30BF\u30B0\u3042\u308A -label.tags=\u30BF\u30B0 -label.target.iqn=\u30BF\u30FC\u30B2\u30C3\u30C8 IQN -label.task.completed=\u30BF\u30B9\u30AF\u304C\u5B8C\u4E86\u3057\u307E\u3057\u305F -label.template.limits=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u5236\u9650 -label.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 -label.TFTP.dir=TFTP \u30C7\u30A3\u30EC\u30AF\u30C8\u30EA -label.theme.default=\u30C7\u30D5\u30A9\u30EB\u30C8 \u30C6\u30FC\u30DE -label.theme.grey=\u30AB\u30B9\u30BF\u30E0 - \u30B0\u30EC\u30FC -label.theme.lightblue=\u30AB\u30B9\u30BF\u30E0 - \u30E9\u30A4\u30C8 \u30D6\u30EB\u30FC -label.thursday=\u6728\u66DC\u65E5 -label.tier.details=\u968E\u5C64\u306E\u8A73\u7D30 -label.tier=\u968E\u5C64 -label.timeout.in.second = \u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 (\u79D2) -label.timeout=\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 -label.time=\u6642\u523B -label.time.zone=\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3 -label.timezone=\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3 -label.token=\u30C8\u30FC\u30AF\u30F3 -label.total.cpu=CPU \u5408\u8A08 -label.total.CPU=CPU \u5408\u8A08 -label.total.hosts=\u30DB\u30B9\u30C8\u5408\u8A08 -label.total.memory=\u30E1\u30E2\u30EA\u5408\u8A08 -label.total.of.ip=IP \u30A2\u30C9\u30EC\u30B9\u5408\u8A08 -label.total.of.vm=VM \u5408\u8A08 -label.total.storage=\u30B9\u30C8\u30EC\u30FC\u30B8\u5408\u8A08 -label.total.vms=VM \u5408\u8A08 -label.traffic.label=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF \u30E9\u30D9\u30EB -label.traffic.types=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E -label.traffic.type=\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E -label.tuesday=\u706B\u66DC\u65E5 -label.type.id=\u7A2E\u985E ID -label.type=\u7A2E\u985E -label.unavailable=\u4F7F\u7528\u4E0D\u80FD +label.storage.tags=\u30b9\u30c8\u30ec\u30fc\u30b8 \u30bf\u30b0 +label.storage.traffic=\u30b9\u30c8\u30ec\u30fc\u30b8 \u30c8\u30e9\u30d5\u30a3\u30c3\u30af +label.storage.type=\u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u7a2e\u985e +label.storage=\u30b9\u30c8\u30ec\u30fc\u30b8 +label.subdomain.access=\u30b5\u30d6\u30c9\u30e1\u30a4\u30f3 \u30a2\u30af\u30bb\u30b9 +label.submitted.by=[\u9001\u4fe1\u30e6\u30fc\u30b6\u30fc\: ] +label.submit=\u9001\u4fe1 +label.succeeded=\u6210\u529f +label.sunday=\u65e5\u66dc\u65e5 +label.super.cidr.for.guest.networks=\u30b2\u30b9\u30c8 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u30b9\u30fc\u30d1\u30fc CIDR +label.supported.services=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u308b\u30b5\u30fc\u30d3\u30b9 +label.supported.source.NAT.type=\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u308b\u9001\u4fe1\u5143 NAT \u306e\u7a2e\u985e +label.suspend.project=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u4e00\u6642\u505c\u6b62 +label.system.capacity=\u30b7\u30b9\u30c6\u30e0\u306e\u51e6\u7406\u80fd\u529b +label.system.offering=\u30b7\u30b9\u30c6\u30e0 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0 +label.system.service.offering=\u30b7\u30b9\u30c6\u30e0 \u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0 +label.system.vms=\u30b7\u30b9\u30c6\u30e0 VM +label.system.vm.type=\u30b7\u30b9\u30c6\u30e0 VM \u306e\u7a2e\u985e +label.system.vm=\u30b7\u30b9\u30c6\u30e0 VM +label.system.wide.capacity=\u30b7\u30b9\u30c6\u30e0\u5168\u4f53\u306e\u51e6\u7406\u80fd\u529b +label.tagged=\u30bf\u30b0\u3042\u308a +label.tags=\u30bf\u30b0 +label.target.iqn=\u30bf\u30fc\u30b2\u30c3\u30c8 IQN +label.task.completed=\u30bf\u30b9\u30af\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f +label.template.limits=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u5236\u9650 +label.template=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8 +label.TFTP.dir=TFTP \u30c7\u30a3\u30ec\u30af\u30c8\u30ea +label.theme.default=\u30c7\u30d5\u30a9\u30eb\u30c8 \u30c6\u30fc\u30de +label.theme.grey=\u30ab\u30b9\u30bf\u30e0 - \u30b0\u30ec\u30fc +label.theme.lightblue=\u30ab\u30b9\u30bf\u30e0 - \u30e9\u30a4\u30c8 \u30d6\u30eb\u30fc +label.thursday=\u6728\u66dc\u65e5 +label.tier.details=\u968e\u5c64\u306e\u8a73\u7d30 +label.tier=\u968e\u5c64 +label.timeout.in.second = \u30bf\u30a4\u30e0\u30a2\u30a6\u30c8 (\u79d2) +label.timeout=\u30bf\u30a4\u30e0\u30a2\u30a6\u30c8 +label.time=\u6642\u523b +label.time.zone=\u30bf\u30a4\u30e0\u30be\u30fc\u30f3 +label.timezone=\u30bf\u30a4\u30e0\u30be\u30fc\u30f3 +label.token=\u30c8\u30fc\u30af\u30f3 +label.total.cpu=CPU \u5408\u8a08 +label.total.CPU=CPU \u5408\u8a08 +label.total.hosts=\u30db\u30b9\u30c8\u5408\u8a08 +label.total.memory=\u30e1\u30e2\u30ea\u5408\u8a08 +label.total.of.ip=IP \u30a2\u30c9\u30ec\u30b9\u5408\u8a08 +label.total.of.vm=VM \u5408\u8a08 +label.total.storage=\u30b9\u30c8\u30ec\u30fc\u30b8\u5408\u8a08 +label.total.vms=VM \u5408\u8a08 +label.traffic.label=\u30c8\u30e9\u30d5\u30a3\u30c3\u30af \u30e9\u30d9\u30eb +label.traffic.types=\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306e\u7a2e\u985e +label.traffic.type=\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306e\u7a2e\u985e +label.tuesday=\u706b\u66dc\u65e5 +label.type.id=\u7a2e\u985e ID +label.type=\u7a2e\u985e +label.unavailable=\u4f7f\u7528\u4e0d\u80fd label.unlimited=\u7121\u5236\u9650 -label.untagged=\u30BF\u30B0\u306A\u3057 -label.update.project.resources=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30EA\u30BD\u30FC\u30B9\u306E\u66F4\u65B0 -label.update.ssl.cert= SSL \u8A3C\u660E\u66F8\u306E\u66F4\u65B0 -label.update.ssl= SSL \u8A3C\u660E\u66F8\u306E\u66F4\u65B0 -label.updating=\u66F4\u65B0\u3057\u3066\u3044\u307E\u3059 -label.upload=\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9 -label.upload.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9 +label.untagged=\u30bf\u30b0\u306a\u3057 +label.update.project.resources=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8 \u30ea\u30bd\u30fc\u30b9\u306e\u66f4\u65b0 +label.update.ssl.cert= SSL \u8a3c\u660e\u66f8\u306e\u66f4\u65b0 +label.update.ssl= SSL \u8a3c\u660e\u66f8\u306e\u66f4\u65b0 +label.updating=\u66f4\u65b0\u3057\u3066\u3044\u307e\u3059 +label.upload=\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9 +label.upload.volume=\u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9 label.url=URL -label.usage.interface=\u4F7F\u7528\u72B6\u6CC1\u6E2C\u5B9A\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9 -label.used=\u4F7F\u7528\u4E2D -label.username=\u30E6\u30FC\u30B6\u30FC\u540D -label.users=\u30E6\u30FC\u30B6\u30FC -label.user=\u30E6\u30FC\u30B6\u30FC +label.usage.interface=\u4f7f\u7528\u72b6\u6cc1\u6e2c\u5b9a\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9 +label.used=\u4f7f\u7528\u4e2d +label.username=\u30e6\u30fc\u30b6\u30fc\u540d +label.users=\u30e6\u30fc\u30b6\u30fc +label.user=\u30e6\u30fc\u30b6\u30fc label.value=\u5024 -label.vcdcname=vCenter DC \u540D -label.vcenter.cluster=vCenter \u30AF\u30E9\u30B9\u30BF\u30FC -label.vcenter.datacenter=vCenter \u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC -label.vcenter.datastore=vCenter \u30C7\u30FC\u30BF\u30B9\u30C8\u30A2 -label.vcenter.host=vCenter \u30DB\u30B9\u30C8 -label.vcenter.password=vCenter \u30D1\u30B9\u30EF\u30FC\u30C9 -label.vcenter.username=vCenter \u30E6\u30FC\u30B6\u30FC\u540D -label.vcipaddress=vCenter IP \u30A2\u30C9\u30EC\u30B9 -label.version=\u30D0\u30FC\u30B8\u30E7\u30F3 -label.view.all=\u3059\u3079\u3066\u8868\u793A -label.view.console=\u30B3\u30F3\u30BD\u30FC\u30EB\u306E\u8868\u793A -label.viewing=\u8868\u793A\u9805\u76EE\: -label.view.more=\u8A73\u7D30\u8868\u793A -label.view=\u8868\u793A - -label.virtual.appliances=\u4EEE\u60F3\u30A2\u30D7\u30E9\u30A4\u30A2\u30F3\u30B9 -label.virtual.appliance=\u4EEE\u60F3\u30A2\u30D7\u30E9\u30A4\u30A2\u30F3\u30B9 -label.virtual.machines=\u4EEE\u60F3\u30DE\u30B7\u30F3 -label.virtual.network=\u4EEE\u60F3\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF -label.virtual.routers=\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC -label.virtual.router=\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC +label.vcdcname=vCenter DC \u540d +label.vcenter.cluster=vCenter \u30af\u30e9\u30b9\u30bf\u30fc +label.vcenter.datacenter=vCenter \u30c7\u30fc\u30bf\u30bb\u30f3\u30bf\u30fc +label.vcenter.datastore=vCenter \u30c7\u30fc\u30bf\u30b9\u30c8\u30a2 +label.vcenter.host=vCenter \u30db\u30b9\u30c8 +label.vcenter.password=vCenter \u30d1\u30b9\u30ef\u30fc\u30c9 +label.vcenter.username=vCenter \u30e6\u30fc\u30b6\u30fc\u540d +label.vcipaddress=vCenter IP \u30a2\u30c9\u30ec\u30b9 +label.version=\u30d0\u30fc\u30b8\u30e7\u30f3 +label.view.all=\u3059\u3079\u3066\u8868\u793a +label.view.console=\u30b3\u30f3\u30bd\u30fc\u30eb\u306e\u8868\u793a +label.viewing=\u8868\u793a\u9805\u76ee\: +label.view.more=\u8a73\u7d30\u8868\u793a +label.view=\u8868\u793a - +label.virtual.appliances=\u4eee\u60f3\u30a2\u30d7\u30e9\u30a4\u30a2\u30f3\u30b9 +label.virtual.appliance=\u4eee\u60f3\u30a2\u30d7\u30e9\u30a4\u30a2\u30f3\u30b9 +label.virtual.machines=\u4eee\u60f3\u30de\u30b7\u30f3 +label.virtual.network=\u4eee\u60f3\u30cd\u30c3\u30c8\u30ef\u30fc\u30af +label.virtual.routers=\u4eee\u60f3\u30eb\u30fc\u30bf\u30fc +label.virtual.router=\u4eee\u60f3\u30eb\u30fc\u30bf\u30fc label.vlan.id=VLAN ID -label.vlan.range=VLAN \u306E\u7BC4\u56F2 +label.vlan.range=VLAN \u306e\u7bc4\u56f2 label.vlan=VLAN -label.vm.add=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u8FFD\u52A0 +label.vm.add=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u8ffd\u52a0 label.vm.destroy=\u7834\u68c4 -label.vm.display.name=VM \u8868\u793A\u540D -label.VMFS.datastore=VMFS \u30C7\u30FC\u30BF\u30B9\u30C8\u30A2 +label.vm.display.name=VM \u8868\u793a\u540d +label.VMFS.datastore=VMFS \u30c7\u30fc\u30bf\u30b9\u30c8\u30a2 label.vmfs=VMFS -label.vm.name=VM \u540D +label.vm.name=VM \u540d label.vm.reboot=\u518d\u8d77\u52d5 -label.VMs.in.tier=\u968E\u5C64\u5185\u306E VM -label.vmsnapshot.type=\u7A2E\u985E -label.vm.start=\u8D77\u52D5 -label.vm.state=VM \u306E\u72B6\u614B +label.VMs.in.tier=\u968e\u5c64\u5185\u306e VM +label.vmsnapshot.type=\u7a2e\u985e +label.vm.start=\u8d77\u52d5 +label.vm.state=VM \u306e\u72b6\u614b label.vm.stop=\u505c\u6b62 label.vms=VM -label.vmware.traffic.label=VMware \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u30E9\u30D9\u30EB -label.volgroup=\u30DC\u30EA\u30E5\u30FC\u30E0 \u30B0\u30EB\u30FC\u30D7 -label.volume.limits=\u30DC\u30EA\u30E5\u30FC\u30E0\u5236\u9650 -label.volume.name=\u30DC\u30EA\u30E5\u30FC\u30E0\u540D -label.volumes=\u30DC\u30EA\u30E5\u30FC\u30E0 -label.volume=\u30DC\u30EA\u30E5\u30FC\u30E0 +label.vmware.traffic.label=VMware \u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306e\u30e9\u30d9\u30eb +label.volgroup=\u30dc\u30ea\u30e5\u30fc\u30e0 \u30b0\u30eb\u30fc\u30d7 +label.volume.limits=\u30dc\u30ea\u30e5\u30fc\u30e0\u5236\u9650 +label.volume.name=\u30dc\u30ea\u30e5\u30fc\u30e0\u540d +label.volumes=\u30dc\u30ea\u30e5\u30fc\u30e0 +label.volume=\u30dc\u30ea\u30e5\u30fc\u30e0 label.vpc.id=VPC ID -label.VPC.router.details=VPC \u30EB\u30FC\u30BF\u30FC\u306E\u8A73\u7D30 +label.VPC.router.details=VPC \u30eb\u30fc\u30bf\u30fc\u306e\u8a73\u7d30 label.vpc=VPC -label.VPN.connection=VPN \u63A5\u7D9A -label.vpn.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 -label.VPN.customer.gateway=VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 -label.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4 +label.VPN.connection=VPN \u63a5\u7d9a +label.vpn.customer.gateway=VPN \u30ab\u30b9\u30bf\u30de\u30fc \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4 +label.VPN.customer.gateway=VPN \u30ab\u30b9\u30bf\u30de\u30fc \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4 +label.VPN.gateway=VPN \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4 label.vpn=VPN -label.vsmctrlvlanid=\u30B3\u30F3\u30C8\u30ED\u30FC\u30EB VLAN ID -label.vsmpktvlanid=\u30D1\u30B1\u30C3\u30C8 VLAN ID -label.vsmstoragevlanid=\u30B9\u30C8\u30EC\u30FC\u30B8 VLAN ID -label.vsphere.managed=vSphere \u306B\u3088\u308B\u7BA1\u7406 -label.waiting=\u5F85\u6A5F\u3057\u3066\u3044\u307E\u3059 -label.warn=\u8B66\u544A -label.wednesday=\u6C34\u66DC\u65E5 -label.weekly=\u6BCE\u9031 -label.welcome.cloud.console=\u7BA1\u7406\u30B3\u30F3\u30BD\u30FC\u30EB\u3078\u3088\u3046\u3053\u305D -label.welcome=\u3088\u3046\u3053\u305D -label.what.is.cloudstack=CloudStack&\#8482; \u306B\u3064\u3044\u3066 -label.xen.traffic.label=XenServer \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u30E9\u30D9\u30EB -label.yes=\u306F\u3044 -label.zone.details=\u30BE\u30FC\u30F3\u306E\u8A73\u7D30 -label.zone.id=\u30BE\u30FC\u30F3 ID -label.zone.name=\u30BE\u30FC\u30F3\u540D -label.zone.step.1.title=\u624B\u9806 1. \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u9078\u629E -label.zone.step.2.title=\u624B\u9806 2. \u30BE\u30FC\u30F3\u306E\u8FFD\u52A0 -label.zone.step.3.title=\u624B\u9806 3. \u30DD\u30C3\u30C9\u306E\u8FFD\u52A0 -label.zone.step.4.title=\u624B\u9806 4. IP \u30A2\u30C9\u30EC\u30B9\u7BC4\u56F2\u306E\u8FFD\u52A0 -label.zones=\u30BE\u30FC\u30F3 -label.zone.type=\u30BE\u30FC\u30F3\u306E\u7A2E\u985E -label.zone=\u30BE\u30FC\u30F3 -label.zone.wide=\u30BE\u30FC\u30F3\u5168\u4F53 +label.vsmctrlvlanid=\u30b3\u30f3\u30c8\u30ed\u30fc\u30eb VLAN ID +label.vsmpktvlanid=\u30d1\u30b1\u30c3\u30c8 VLAN ID +label.vsmstoragevlanid=\u30b9\u30c8\u30ec\u30fc\u30b8 VLAN ID +label.vsphere.managed=vSphere \u306b\u3088\u308b\u7ba1\u7406 +label.waiting=\u5f85\u6a5f\u3057\u3066\u3044\u307e\u3059 +label.warn=\u8b66\u544a +label.wednesday=\u6c34\u66dc\u65e5 +label.weekly=\u6bce\u9031 +label.welcome.cloud.console=\u7ba1\u7406\u30b3\u30f3\u30bd\u30fc\u30eb\u3078\u3088\u3046\u3053\u305d +label.welcome=\u3088\u3046\u3053\u305d +label.what.is.cloudstack=CloudStack&\#8482; \u306b\u3064\u3044\u3066 +label.xen.traffic.label=XenServer \u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306e\u30e9\u30d9\u30eb +label.yes=\u306f\u3044 +label.zone.details=\u30be\u30fc\u30f3\u306e\u8a73\u7d30 +label.zone.id=\u30be\u30fc\u30f3 ID +label.zone.name=\u30be\u30fc\u30f3\u540d +label.zone.step.1.title=\u624b\u9806 1. \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u9078\u629e +label.zone.step.2.title=\u624b\u9806 2. \u30be\u30fc\u30f3\u306e\u8ffd\u52a0 +label.zone.step.3.title=\u624b\u9806 3. \u30dd\u30c3\u30c9\u306e\u8ffd\u52a0 +label.zone.step.4.title=\u624b\u9806 4. IP \u30a2\u30c9\u30ec\u30b9\u7bc4\u56f2\u306e\u8ffd\u52a0 +label.zones=\u30be\u30fc\u30f3 +label.zone.type=\u30be\u30fc\u30f3\u306e\u7a2e\u985e +label.zone=\u30be\u30fc\u30f3 +label.zone.wide=\u30be\u30fc\u30f3\u5168\u4f53 label.zoneWizard.trafficType.guest=\u30b2\u30b9\u30c8\: \u30a8\u30f3\u30c9\u30e6\u30fc\u30b6\u30fc\u4eee\u60f3\u30de\u30b7\u30f3\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af label.zoneWizard.trafficType.management=\u7ba1\u7406\: \u30db\u30b9\u30c8\u3084\u30b7\u30b9\u30c6\u30e0VM\u306a\u3069\u3001\u7ba1\u7406\u30b5\u30fc\u30d0\u30fc\u3068\u901a\u4fe1\u3059\u308b\u3042\u3089\u3086\u308b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u542b\u3081\u305f\u3001CloudStack\u5185\u90e8\u306e\u30ea\u30bd\u30fc\u30b9\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af label.zoneWizard.trafficType.public=\u30d1\u30d6\u30ea\u30c3\u30af\: \u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u3068\u30af\u30e9\u30a6\u30c9\u5185\u306e\u4eee\u60f3\u30de\u30b7\u30f3\u306e\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af label.zoneWizard.trafficType.storage=\u30b9\u30c8\u30ec\u30fc\u30b8\: VM\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3068\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u306e\u3088\u3046\u306a\u3001\u30d7\u30e9\u30a4\u30de\u30ea\u3068\u30bb\u30ab\u30f3\u30c0\u30ea\u306e\u30b9\u30c8\u30ec\u30fc\u30b8\u30b5\u30fc\u30d0\u30fc\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3002 -managed.state=\u7BA1\u7406\u5BFE\u8C61\u72B6\u614B -message.acquire.new.ip=\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u65B0\u3057\u3044 IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +managed.state=\u7ba1\u7406\u5bfe\u8c61\u72b6\u614b +message.acquire.new.ip=\u3053\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u65b0\u3057\u3044 IP \u30a2\u30c9\u30ec\u30b9\u3092\u53d6\u5f97\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? message.acquire.new.ip.vpc=VPC\u306e\u65b0\u3057\u3044IP\u3092\u53d6\u5f97\u3059\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002 -message.acquire.public.ip=\u65B0\u3057\u3044 IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3059\u308B\u30BE\u30FC\u30F3\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.action.cancel.maintenance.mode=\u3053\u306E\u4FDD\u5B88\u3092\u30AD\u30E3\u30F3\u30BB\u30EB\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.cancel.maintenance=\u30DB\u30B9\u30C8\u306E\u4FDD\u5B88\u306F\u6B63\u5E38\u306B\u30AD\u30E3\u30F3\u30BB\u30EB\u3055\u308C\u307E\u3057\u305F\u3002\u3053\u306E\u51E6\u7406\u306B\u306F\u6570\u5206\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.change.service.warning.for.instance=\u73FE\u5728\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.change.service.warning.for.router=\u73FE\u5728\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30EB\u30FC\u30BF\u30FC\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.delete.cluster=\u3053\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.disk.offering=\u3053\u306E\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.domain=\u3053\u306E\u30C9\u30E1\u30A4\u30F3\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.external.firewall=\u3053\u306E\u5916\u90E8\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u8B66\u544A\: \u540C\u3058\u5916\u90E8\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u518D\u5EA6\u8FFD\u52A0\u3059\u308B\u4E88\u5B9A\u3067\u3042\u308B\u5834\u5408\u306F\u3001\u30C7\u30D0\u30A4\u30B9\u306E\u4F7F\u7528\u72B6\u6CC1\u30C7\u30FC\u30BF\u3092\u30EA\u30BB\u30C3\u30C8\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.delete.external.load.balancer=\u3053\u306E\u5916\u90E8\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u8B66\u544A\: \u540C\u3058\u5916\u90E8\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u518D\u5EA6\u8FFD\u52A0\u3059\u308B\u4E88\u5B9A\u3067\u3042\u308B\u5834\u5408\u306F\u3001\u30C7\u30D0\u30A4\u30B9\u306E\u4F7F\u7528\u72B6\u6CC1\u30C7\u30FC\u30BF\u3092\u30EA\u30BB\u30C3\u30C8\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.delete.ingress.rule=\u3053\u306E\u53D7\u4FE1\u898F\u5247\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.ISO.for.all.zones=\u305D\u306E ISO \u306F\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u304B\u3089\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.ISO=\u3053\u306E ISO \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.network=\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.nexusVswitch=\u3053\u306E Nexus 1000V \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.physical.network=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.pod=\u3053\u306E\u30DD\u30C3\u30C9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.primary.storage=\u3053\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.secondary.storage=\u3053\u306E\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.security.group=\u3053\u306E\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.service.offering=\u3053\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.snapshot=\u3053\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.system.service.offering=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.template.for.all.zones=\u305D\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306F\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u3059\u3079\u3066\u306E\u30BE\u30FC\u30F3\u304B\u3089\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.template=\u3053\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.volume=\u3053\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.delete.zone=\u3053\u306E\u30BE\u30FC\u30F3\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.destroy.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u7834\u68C4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.destroy.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u7834\u68C4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.disable.cluster=\u3053\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.disable.nexusVswitch=\u3053\u306E Nexus 1000V \u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.disable.physical.network=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.disable.pod=\u3053\u306E\u30DD\u30C3\u30C9\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.disable.static.NAT=\u9759\u7684 NAT \u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.disable.zone=\u3053\u306E\u30BE\u30FC\u30F3\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.download.iso=\u3053\u306E ISO \u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.download.template=\u3053\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.enable.cluster=\u3053\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.enable.maintenance=\u30DB\u30B9\u30C8\u3092\u4FDD\u5B88\u3059\u308B\u6E96\u5099\u304C\u3067\u304D\u307E\u3057\u305F\u3002\u3053\u306E\u30DB\u30B9\u30C8\u4E0A\u306E VM \u6570\u306B\u3088\u3063\u3066\u306F\u3001\u3053\u306E\u51E6\u7406\u306B\u306F\u6570\u5206\u4EE5\u4E0A\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.enable.nexusVswitch=\u3053\u306E Nexus 1000V \u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.enable.physical.network=\u3053\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.enable.pod=\u3053\u306E\u30DD\u30C3\u30C9\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.enable.zone=\u3053\u306E\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.force.reconnect=\u30DB\u30B9\u30C8\u306F\u5F37\u5236\u7684\u306B\u518D\u63A5\u7D9A\u3057\u307E\u3057\u305F\u3002\u3053\u306E\u51E6\u7406\u306B\u306F\u6570\u5206\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.host.enable.maintenance.mode=\u4FDD\u5B88\u30E2\u30FC\u30C9\u3092\u6709\u52B9\u306B\u3059\u308B\u3068\u3001\u3053\u306E\u30DB\u30B9\u30C8\u3067\u5B9F\u884C\u4E2D\u306E\u3059\u3079\u3066\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u307B\u304B\u306E\u4F7F\u7528\u3067\u304D\u308B\u30DB\u30B9\u30C8\u306B\u30E9\u30A4\u30D6 \u30DE\u30A4\u30B0\u30EC\u30FC\u30B7\u30E7\u30F3\u3055\u308C\u307E\u3059\u3002 +message.acquire.public.ip=\u65b0\u3057\u3044 IP \u30a2\u30c9\u30ec\u30b9\u3092\u53d6\u5f97\u3059\u308b\u30be\u30fc\u30f3\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.action.cancel.maintenance.mode=\u3053\u306e\u4fdd\u5b88\u3092\u30ad\u30e3\u30f3\u30bb\u30eb\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.cancel.maintenance=\u30db\u30b9\u30c8\u306e\u4fdd\u5b88\u306f\u6b63\u5e38\u306b\u30ad\u30e3\u30f3\u30bb\u30eb\u3055\u308c\u307e\u3057\u305f\u3002\u3053\u306e\u51e6\u7406\u306b\u306f\u6570\u5206\u304b\u304b\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002 +message.action.change.service.warning.for.instance=\u73fe\u5728\u306e\u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u5909\u66f4\u3059\u308b\u524d\u306b\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u505c\u6b62\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.action.change.service.warning.for.router=\u73fe\u5728\u306e\u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u5909\u66f4\u3059\u308b\u524d\u306b\u30eb\u30fc\u30bf\u30fc\u3092\u505c\u6b62\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.action.delete.cluster=\u3053\u306e\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.disk.offering=\u3053\u306e\u30c7\u30a3\u30b9\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.domain=\u3053\u306e\u30c9\u30e1\u30a4\u30f3\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.external.firewall=\u3053\u306e\u5916\u90e8\u30d5\u30a1\u30a4\u30a2\u30a6\u30a9\u30fc\u30eb\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? \u8b66\u544a\: \u540c\u3058\u5916\u90e8\u30d5\u30a1\u30a4\u30a2\u30a6\u30a9\u30fc\u30eb\u3092\u518d\u5ea6\u8ffd\u52a0\u3059\u308b\u4e88\u5b9a\u3067\u3042\u308b\u5834\u5408\u306f\u3001\u30c7\u30d0\u30a4\u30b9\u306e\u4f7f\u7528\u72b6\u6cc1\u30c7\u30fc\u30bf\u3092\u30ea\u30bb\u30c3\u30c8\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.action.delete.external.load.balancer=\u3053\u306e\u5916\u90e8\u8ca0\u8377\u5206\u6563\u88c5\u7f6e\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? \u8b66\u544a\: \u540c\u3058\u5916\u90e8\u8ca0\u8377\u5206\u6563\u88c5\u7f6e\u3092\u518d\u5ea6\u8ffd\u52a0\u3059\u308b\u4e88\u5b9a\u3067\u3042\u308b\u5834\u5408\u306f\u3001\u30c7\u30d0\u30a4\u30b9\u306e\u4f7f\u7528\u72b6\u6cc1\u30c7\u30fc\u30bf\u3092\u30ea\u30bb\u30c3\u30c8\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.action.delete.ingress.rule=\u3053\u306e\u53d7\u4fe1\u898f\u5247\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.ISO.for.all.zones=\u305d\u306e ISO \u306f\u3059\u3079\u3066\u306e\u30be\u30fc\u30f3\u3067\u4f7f\u7528\u3055\u308c\u3066\u3044\u307e\u3059\u3002\u3059\u3079\u3066\u306e\u30be\u30fc\u30f3\u304b\u3089\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.ISO=\u3053\u306e ISO \u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.network=\u3053\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.nexusVswitch=\u3053\u306e Nexus 1000V \u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.physical.network=\u3053\u306e\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.pod=\u3053\u306e\u30dd\u30c3\u30c9\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.primary.storage=\u3053\u306e\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.secondary.storage=\u3053\u306e\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.security.group=\u3053\u306e\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.service.offering=\u3053\u306e\u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.snapshot=\u3053\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.system.service.offering=\u3053\u306e\u30b7\u30b9\u30c6\u30e0 \u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.template.for.all.zones=\u305d\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306f\u3059\u3079\u3066\u306e\u30be\u30fc\u30f3\u3067\u4f7f\u7528\u3055\u308c\u3066\u3044\u307e\u3059\u3002\u3059\u3079\u3066\u306e\u30be\u30fc\u30f3\u304b\u3089\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.template=\u3053\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.volume=\u3053\u306e\u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.delete.zone=\u3053\u306e\u30be\u30fc\u30f3\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.destroy.instance=\u3053\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u7834\u68c4\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.destroy.systemvm=\u3053\u306e\u30b7\u30b9\u30c6\u30e0 VM \u3092\u7834\u68c4\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.disable.cluster=\u3053\u306e\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u7121\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.disable.nexusVswitch=\u3053\u306e Nexus 1000V \u3092\u7121\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.disable.physical.network=\u3053\u306e\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u7121\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.disable.pod=\u3053\u306e\u30dd\u30c3\u30c9\u3092\u7121\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.disable.static.NAT=\u9759\u7684 NAT \u3092\u7121\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.disable.zone=\u3053\u306e\u30be\u30fc\u30f3\u3092\u7121\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.download.iso=\u3053\u306e ISO \u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.download.template=\u3053\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.enable.cluster=\u3053\u306e\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u6709\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.enable.maintenance=\u30db\u30b9\u30c8\u3092\u4fdd\u5b88\u3059\u308b\u6e96\u5099\u304c\u3067\u304d\u307e\u3057\u305f\u3002\u3053\u306e\u30db\u30b9\u30c8\u4e0a\u306e VM \u6570\u306b\u3088\u3063\u3066\u306f\u3001\u3053\u306e\u51e6\u7406\u306b\u306f\u6570\u5206\u4ee5\u4e0a\u304b\u304b\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002 +message.action.enable.nexusVswitch=\u3053\u306e Nexus 1000V \u3092\u6709\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.enable.physical.network=\u3053\u306e\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u6709\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.enable.pod=\u3053\u306e\u30dd\u30c3\u30c9\u3092\u6709\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.enable.zone=\u3053\u306e\u30be\u30fc\u30f3\u3092\u6709\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.force.reconnect=\u30db\u30b9\u30c8\u306f\u5f37\u5236\u7684\u306b\u518d\u63a5\u7d9a\u3057\u307e\u3057\u305f\u3002\u3053\u306e\u51e6\u7406\u306b\u306f\u6570\u5206\u304b\u304b\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002 +message.action.host.enable.maintenance.mode=\u4fdd\u5b88\u30e2\u30fc\u30c9\u3092\u6709\u52b9\u306b\u3059\u308b\u3068\u3001\u3053\u306e\u30db\u30b9\u30c8\u3067\u5b9f\u884c\u4e2d\u306e\u3059\u3079\u3066\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u304c\u307b\u304b\u306e\u4f7f\u7528\u3067\u304d\u308b\u30db\u30b9\u30c8\u306b\u30e9\u30a4\u30d6 \u30de\u30a4\u30b0\u30ec\u30fc\u30b7\u30e7\u30f3\u3055\u308c\u307e\u3059\u3002 message.action.instance.reset.password=\u00e3\u0081\u0093\u00e3\u0081\u00ae\u00e4\u00bb\u00ae\u00e6\u0083\u00b3\u00e3\u0083\u009e\u00e3\u0082\u00b7\u00e3\u0083\u00b3\u00e3\u0081\u00ae\u00e3\u0083\u00ab\u00e3\u0083\u00bc\u00e3\u0083\u0088\u00e3\u0083\u0091\u00e3\u0082\u00b9\u00e3\u0083\u00af\u00e3\u0083\u00bc\u00e3\u0083\u0089\u00e3\u0082\u0092\u00e5\u00a4\u0089\u00e6\u009b\u00b4\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0082\u0082\u00e3\u0082\u0088\u00e3\u0082\u008d\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0081\u00a7\u00e3\u0081\u0099\u00e3\u0081\u008b? -message.action.manage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.primarystorage.enable.maintenance.mode=\u8B66\u544A\: \u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4FDD\u5B88\u30E2\u30FC\u30C9\u306B\u3059\u308B\u3068\u3001\u305D\u306E\u30B9\u30C8\u30EC\u30FC\u30B8\u4E0A\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u4F7F\u7528\u3059\u308B\u3059\u3079\u3066\u306E VM \u304C\u505C\u6B62\u3057\u307E\u3059\u3002\u7D9A\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.reboot.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.reboot.router=\u3053\u306E\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u3067\u63D0\u4F9B\u3059\u308B\u3059\u3079\u3066\u306E\u30B5\u30FC\u30D3\u30B9\u304C\u4E2D\u65AD\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.reboot.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.release.ip=\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u3092\u89E3\u653E\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.remove.host=\u3053\u306E\u30DB\u30B9\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.reset.password.off=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306F\u73FE\u5728\u3053\u306E\u6A5F\u80FD\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u305B\u3093\u3002 -message.action.reset.password.warning=\u73FE\u5728\u306E\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.action.restore.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u5FA9\u5143\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.start.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.start.router=\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.start.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.stop.instance=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.stop.router=\u3053\u306E\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u3067\u63D0\u4F9B\u3059\u308B\u3059\u3079\u3066\u306E\u30B5\u30FC\u30D3\u30B9\u304C\u4E2D\u65AD\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.stop.systemvm=\u3053\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3092\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.take.snapshot=\u3053\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.action.unmanage.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u975E\u7BA1\u7406\u5BFE\u8C61\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.activate.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u30A2\u30AF\u30C6\u30A3\u30D6\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.add.cluster=\u30BE\u30FC\u30F3 \u306E\u30DD\u30C3\u30C9 \u306B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3067\u7BA1\u7406\u3055\u308C\u308B\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.cluster.zone=\u30BE\u30FC\u30F3 \u306B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3067\u7BA1\u7406\u3055\u308C\u308B\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.disk.offering=\u65B0\u3057\u3044\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.domain=\u3053\u306E\u30C9\u30E1\u30A4\u30F3\u306B\u4F5C\u6210\u3059\u308B\u30B5\u30D6\u30C9\u30E1\u30A4\u30F3\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.firewall=\u30BE\u30FC\u30F3\u306B\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.guest.network=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u8FFD\u52A0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.add.host=\u65B0\u3057\u3044\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.adding.host=\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -message.adding.Netscaler.device=Netscaler \u30C7\u30D0\u30A4\u30B9\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -message.adding.Netscaler.provider=Netscaler \u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u8FFD\u52A0\u3057\u3066\u3044\u307E\u3059 -message.add.ip.range.direct.network=\u30BE\u30FC\u30F3 \u306E\u76F4\u63A5\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.ip.range.to.pod=

    \u30DD\u30C3\u30C9 \u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u307E\u3059

    -message.add.ip.range=\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.additional.networks.desc=\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u63A5\u7D9A\u3059\u308B\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.load.balancer=\u30BE\u30FC\u30F3\u306B\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.load.balancer.under.ip=\u8CA0\u8377\u5206\u6563\u898F\u5247\u304C\u6B21\u306E IP \u30A2\u30C9\u30EC\u30B9\u306B\u5BFE\u3057\u3066\u8FFD\u52A0\u3055\u308C\u307E\u3057\u305F\: -message.add.network=\u30BE\u30FC\u30F3 \u306B\u65B0\u3057\u3044\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.new.gateway.to.vpc=\u3053\u306E VPC \u306B\u65B0\u3057\u3044\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306E\u60C5\u5831\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.pod.during.zone.creation=\u5404\u30BE\u30FC\u30F3\u306B\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DD\u30C3\u30C9\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30DD\u30C3\u30C9\u306F\u30DB\u30B9\u30C8\u3068\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059\u304C\u3001\u3053\u308C\u3089\u306F\u5F8C\u306E\u624B\u9806\u3067\u8FFD\u52A0\u3057\u307E\u3059\u3002\u6700\u521D\u306B\u3001CloudStack \u306E\u5185\u90E8\u7BA1\u7406\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u305F\u3081\u306B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u4E88\u7D04\u3057\u307E\u3059\u3002IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u306F\u3001\u30AF\u30E9\u30A6\u30C9\u5185\u306E\u5404\u30BE\u30FC\u30F3\u3067\u91CD\u8907\u3057\u306A\u3044\u3088\u3046\u306B\u4E88\u7D04\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.add.pod=\u30BE\u30FC\u30F3 \u306B\u65B0\u3057\u3044\u30DD\u30C3\u30C9\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.primary.storage=\u30BE\u30FC\u30F3 \u306E\u30DD\u30C3\u30C9 \u306B\u65B0\u3057\u3044\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.primary=\u65B0\u3057\u3044\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30D1\u30E9\u30E1\u30FC\u30BF\u30FC\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.secondary.storage=\u30BE\u30FC\u30F3 \u306B\u65B0\u3057\u3044\u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u8FFD\u52A0\u3057\u307E\u3059 -message.add.service.offering=\u65B0\u3057\u3044\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.system.service.offering=\u65B0\u3057\u3044\u30B7\u30B9\u30C6\u30E0 \u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.template=\u65B0\u3057\u3044\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.volume=\u65B0\u3057\u3044\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u8FFD\u52A0\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.add.VPN.gateway=VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u8FFD\u52A0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.advanced.mode.desc=VLAN \u30B5\u30DD\u30FC\u30C8\u3092\u6709\u52B9\u306B\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3053\u306E\u30E2\u30C7\u30EB\u3067\u306F\u6700\u3082\u67D4\u8EDF\u306B\u30AB\u30B9\u30BF\u30E0 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u63D0\u4F9B\u3067\u304D\u3001\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3001VPN\u3001\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306E\u30B5\u30DD\u30FC\u30C8\u306E\u307B\u304B\u306B\u3001\u76F4\u63A5\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3068\u4EEE\u60F3\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3082\u6709\u52B9\u306B\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002 -message.advanced.security.group=\u30B2\u30B9\u30C8 VM \u3092\u5206\u96E2\u3059\u308B\u305F\u3081\u306B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u4F7F\u7528\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.advanced.virtual=\u30B2\u30B9\u30C8 VM \u3092\u5206\u96E2\u3059\u308B\u305F\u3081\u306B\u30BE\u30FC\u30F3\u5168\u4F53\u306E VLAN \u3092\u4F7F\u7528\u3059\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.action.manage.cluster=\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u7ba1\u7406\u5bfe\u8c61\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.primarystorage.enable.maintenance.mode=\u8b66\u544a\: \u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u4fdd\u5b88\u30e2\u30fc\u30c9\u306b\u3059\u308b\u3068\u3001\u305d\u306e\u30b9\u30c8\u30ec\u30fc\u30b8\u4e0a\u306e\u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u4f7f\u7528\u3059\u308b\u3059\u3079\u3066\u306e VM \u304c\u505c\u6b62\u3057\u307e\u3059\u3002\u7d9a\u884c\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.reboot.instance=\u3053\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u518d\u8d77\u52d5\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.reboot.router=\u3053\u306e\u4eee\u60f3\u30eb\u30fc\u30bf\u30fc\u3067\u63d0\u4f9b\u3059\u308b\u3059\u3079\u3066\u306e\u30b5\u30fc\u30d3\u30b9\u304c\u4e2d\u65ad\u3055\u308c\u307e\u3059\u3002\u3053\u306e\u30eb\u30fc\u30bf\u30fc\u3092\u518d\u8d77\u52d5\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.reboot.systemvm=\u3053\u306e\u30b7\u30b9\u30c6\u30e0 VM \u3092\u518d\u8d77\u52d5\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.release.ip=\u3053\u306e IP \u30a2\u30c9\u30ec\u30b9\u3092\u89e3\u653e\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.remove.host=\u3053\u306e\u30db\u30b9\u30c8\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.reset.password.off=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306f\u73fe\u5728\u3053\u306e\u6a5f\u80fd\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u3044\u307e\u305b\u3093\u3002 +message.action.reset.password.warning=\u73fe\u5728\u306e\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u5909\u66f4\u3059\u308b\u524d\u306b\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u505c\u6b62\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.action.restore.instance=\u3053\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u5fa9\u5143\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.start.instance=\u3053\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u8d77\u52d5\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.start.router=\u3053\u306e\u30eb\u30fc\u30bf\u30fc\u3092\u8d77\u52d5\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.start.systemvm=\u3053\u306e\u30b7\u30b9\u30c6\u30e0 VM \u3092\u8d77\u52d5\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.stop.instance=\u3053\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u505c\u6b62\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.stop.router=\u3053\u306e\u4eee\u60f3\u30eb\u30fc\u30bf\u30fc\u3067\u63d0\u4f9b\u3059\u308b\u3059\u3079\u3066\u306e\u30b5\u30fc\u30d3\u30b9\u304c\u4e2d\u65ad\u3055\u308c\u307e\u3059\u3002\u3053\u306e\u30eb\u30fc\u30bf\u30fc\u3092\u505c\u6b62\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.stop.systemvm=\u3053\u306e\u30b7\u30b9\u30c6\u30e0 VM \u3092\u505c\u6b62\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.take.snapshot=\u3053\u306e\u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3092\u4f5c\u6210\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.action.unmanage.cluster=\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u975e\u7ba1\u7406\u5bfe\u8c61\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.activate.project=\u3053\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u30a2\u30af\u30c6\u30a3\u30d6\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.add.cluster=\u30be\u30fc\u30f3 \u306e\u30dd\u30c3\u30c9 \u306b\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u3067\u7ba1\u7406\u3055\u308c\u308b\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u8ffd\u52a0\u3057\u307e\u3059 +message.add.cluster.zone=\u30be\u30fc\u30f3 \u306b\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u3067\u7ba1\u7406\u3055\u308c\u308b\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u8ffd\u52a0\u3057\u307e\u3059 +message.add.disk.offering=\u65b0\u3057\u3044\u30c7\u30a3\u30b9\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u8ffd\u52a0\u3059\u308b\u305f\u3081\u306b\u3001\u6b21\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.add.domain=\u3053\u306e\u30c9\u30e1\u30a4\u30f3\u306b\u4f5c\u6210\u3059\u308b\u30b5\u30d6\u30c9\u30e1\u30a4\u30f3\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.add.firewall=\u30be\u30fc\u30f3\u306b\u30d5\u30a1\u30a4\u30a2\u30a6\u30a9\u30fc\u30eb\u3092\u8ffd\u52a0\u3057\u307e\u3059 +message.add.guest.network=\u30b2\u30b9\u30c8 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u8ffd\u52a0\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.add.host=\u65b0\u3057\u3044\u30db\u30b9\u30c8\u3092\u8ffd\u52a0\u3059\u308b\u305f\u3081\u306b\u3001\u6b21\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.adding.host=\u30db\u30b9\u30c8\u3092\u8ffd\u52a0\u3057\u3066\u3044\u307e\u3059 +message.adding.Netscaler.device=Netscaler \u30c7\u30d0\u30a4\u30b9\u3092\u8ffd\u52a0\u3057\u3066\u3044\u307e\u3059 +message.adding.Netscaler.provider=Netscaler \u30d7\u30ed\u30d0\u30a4\u30c0\u30fc\u3092\u8ffd\u52a0\u3057\u3066\u3044\u307e\u3059 +message.add.ip.range.direct.network=\u30be\u30fc\u30f3 \u306e\u76f4\u63a5\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u306b IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u3092\u8ffd\u52a0\u3057\u307e\u3059 +message.add.ip.range.to.pod=

    \u30dd\u30c3\u30c9 \u306b IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u3092\u8ffd\u52a0\u3057\u307e\u3059

    +message.add.ip.range=\u30be\u30fc\u30f3\u306e\u30d1\u30d6\u30ea\u30c3\u30af \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306b IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u3092\u8ffd\u52a0\u3057\u307e\u3059 +message.additional.networks.desc=\u4eee\u60f3\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u304c\u63a5\u7d9a\u3059\u308b\u8ffd\u52a0\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.add.load.balancer=\u30be\u30fc\u30f3\u306b\u8ca0\u8377\u5206\u6563\u88c5\u7f6e\u3092\u8ffd\u52a0\u3057\u307e\u3059 +message.add.load.balancer.under.ip=\u8ca0\u8377\u5206\u6563\u898f\u5247\u304c\u6b21\u306e IP \u30a2\u30c9\u30ec\u30b9\u306b\u5bfe\u3057\u3066\u8ffd\u52a0\u3055\u308c\u307e\u3057\u305f\: +message.add.network=\u30be\u30fc\u30f3 \u306b\u65b0\u3057\u3044\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u8ffd\u52a0\u3057\u307e\u3059 +message.add.new.gateway.to.vpc=\u3053\u306e VPC \u306b\u65b0\u3057\u3044\u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u3092\u8ffd\u52a0\u3059\u308b\u305f\u3081\u306e\u60c5\u5831\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.add.pod.during.zone.creation=\u5404\u30be\u30fc\u30f3\u306b\u306f 1 \u3064\u4ee5\u4e0a\u306e\u30dd\u30c3\u30c9\u304c\u5fc5\u8981\u3067\u3059\u3002\u4eca\u3053\u3053\u3067\u6700\u521d\u306e\u30dd\u30c3\u30c9\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002\u30dd\u30c3\u30c9\u306f\u30db\u30b9\u30c8\u3068\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 \u30b5\u30fc\u30d0\u30fc\u304b\u3089\u69cb\u6210\u3055\u308c\u307e\u3059\u304c\u3001\u3053\u308c\u3089\u306f\u5f8c\u306e\u624b\u9806\u3067\u8ffd\u52a0\u3057\u307e\u3059\u3002\u6700\u521d\u306b\u3001CloudStack \u306e\u5185\u90e8\u7ba1\u7406\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306e\u305f\u3081\u306b IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u3092\u4e88\u7d04\u3057\u307e\u3059\u3002IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u306f\u3001\u30af\u30e9\u30a6\u30c9\u5185\u306e\u5404\u30be\u30fc\u30f3\u3067\u91cd\u8907\u3057\u306a\u3044\u3088\u3046\u306b\u4e88\u7d04\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.add.pod=\u30be\u30fc\u30f3 \u306b\u65b0\u3057\u3044\u30dd\u30c3\u30c9\u3092\u8ffd\u52a0\u3057\u307e\u3059 +message.add.primary.storage=\u30be\u30fc\u30f3 \u306e\u30dd\u30c3\u30c9 \u306b\u65b0\u3057\u3044\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3057\u307e\u3059 +message.add.primary=\u65b0\u3057\u3044\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3059\u308b\u305f\u3081\u306b\u3001\u6b21\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.add.secondary.storage=\u30be\u30fc\u30f3 \u306b\u65b0\u3057\u3044\u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3057\u307e\u3059 +message.add.service.offering=\u65b0\u3057\u3044\u30b3\u30f3\u30d4\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u8ffd\u52a0\u3059\u308b\u305f\u3081\u306b\u3001\u6b21\u306e\u30c7\u30fc\u30bf\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.add.system.service.offering=\u65b0\u3057\u3044\u30b7\u30b9\u30c6\u30e0 \u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u8ffd\u52a0\u3059\u308b\u305f\u3081\u306b\u3001\u6b21\u306e\u30c7\u30fc\u30bf\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.add.template=\u65b0\u3057\u3044\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306b\u3001\u6b21\u306e\u30c7\u30fc\u30bf\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.add.volume=\u65b0\u3057\u3044\u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u8ffd\u52a0\u3059\u308b\u305f\u3081\u306b\u3001\u6b21\u306e\u30c7\u30fc\u30bf\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.add.VPN.gateway=VPN \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u3092\u8ffd\u52a0\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.advanced.mode.desc=VLAN \u30b5\u30dd\u30fc\u30c8\u3092\u6709\u52b9\u306b\u3059\u308b\u5834\u5408\u306f\u3001\u3053\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30e2\u30c7\u30eb\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u3053\u306e\u30e2\u30c7\u30eb\u3067\u306f\u6700\u3082\u67d4\u8edf\u306b\u30ab\u30b9\u30bf\u30e0 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u63d0\u4f9b\u3067\u304d\u3001\u30d5\u30a1\u30a4\u30a2\u30a6\u30a9\u30fc\u30eb\u3001VPN\u3001\u8ca0\u8377\u5206\u6563\u88c5\u7f6e\u306e\u30b5\u30dd\u30fc\u30c8\u306e\u307b\u304b\u306b\u3001\u76f4\u63a5\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3068\u4eee\u60f3\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3082\u6709\u52b9\u306b\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 +message.advanced.security.group=\u30b2\u30b9\u30c8 VM \u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u306b\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7\u3092\u4f7f\u7528\u3059\u308b\u5834\u5408\u306f\u3001\u3053\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.advanced.virtual=\u30b2\u30b9\u30c8 VM \u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u306b\u30be\u30fc\u30f3\u5168\u4f53\u306e VLAN \u3092\u4f7f\u7528\u3059\u308b\u5834\u5408\u306f\u3001\u3053\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 message.after.enable.s3=S3\u57fa\u76e4\u30bb\u30ab\u30f3\u30c0\u30ea\u30b9\u30c8\u30ec\u30fc\u30b8\u304c\u8a2d\u5b9a\u3055\u308c\u307e\u3057\u305f\u3002 \u30ce\u30fc\u30c8\:\u3053\u306e\u30da\u30fc\u30b8\u3092\u9589\u3058\u308b\u3068S3\u3092\u518d\u8a2d\u5b9a\u3067\u304d\u307e\u305b\u3093\u3002 -message.after.enable.swift=Swift \u304C\u69CB\u6210\u3055\u308C\u307E\u3057\u305F\u3002\u6CE8\: \u3053\u306E\u30DA\u30FC\u30B8\u3092\u9589\u3058\u308B\u3068\u3001Swift \u3092\u518D\u69CB\u6210\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002 -message.alert.state.detected=\u30A2\u30E9\u30FC\u30C8\u72B6\u614B\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F -message.allow.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u8A31\u53EF\u3059\u308B\u30E6\u30FC\u30B6\u30FC\u306E\u30E6\u30FC\u30B6\u30FC\u540D\u3068\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.apply.snapshot.policy=\u73FE\u5728\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 \u30DD\u30EA\u30B7\u30FC\u3092\u66F4\u65B0\u3057\u307E\u3057\u305F\u3002 -message.attach.iso.confirm=\u3053\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B ISO \u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30BF\u30C3\u30C1\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.attach.volume=\u65B0\u3057\u3044\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30A2\u30BF\u30C3\u30C1\u3059\u308B\u305F\u3081\u306B\u3001\u6B21\u306E\u30C7\u30FC\u30BF\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002Windows \u30D9\u30FC\u30B9\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u306B\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30A2\u30BF\u30C3\u30C1\u3059\u308B\u5834\u5408\u306F\u3001\u30A2\u30BF\u30C3\u30C1\u3057\u305F\u30C7\u30A3\u30B9\u30AF\u3092\u8A8D\u8B58\u3059\u308B\u305F\u3081\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u518D\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.basic.mode.desc=VLAN \u30B5\u30DD\u30FC\u30C8\u304C\u4E0D\u8981\u3067\u3042\u308B\u5834\u5408\u306F\u3001\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3067\u4F5C\u6210\u3055\u308C\u308B\u3059\u3079\u3066\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304B\u3089\u76F4\u63A5 IP \u30A2\u30C9\u30EC\u30B9\u304C\u5272\u308A\u5F53\u3066\u3089\u308C\u3001\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u4F7F\u7528\u3057\u3066\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u3068\u5206\u96E2\u304C\u63D0\u4F9B\u3055\u308C\u307E\u3059\u3002 -message.change.offering.confirm=\u3053\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u5909\u66F4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.change.password=\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5909\u66F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.configure.all.traffic.types=\u8907\u6570\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304C\u3042\u308A\u307E\u3059\u3002[\u7DE8\u96C6] \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u3054\u3068\u306B\u30E9\u30D9\u30EB\u3092\u69CB\u6210\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.configuring.guest.traffic=\u30B2\u30B9\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 -message.configuring.physical.networks=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 -message.configuring.public.traffic=\u30D1\u30D6\u30EA\u30C3\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 -message.configuring.storage.traffic=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u3044\u307E\u3059 -message.confirm.action.force.reconnect=\u3053\u306E\u30DB\u30B9\u30C8\u3092\u5F37\u5236\u518D\u63A5\u7D9A\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.delete.F5=F5 \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.delete.NetScaler=NetScaler \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.delete.SRX=SRX \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.destroy.router=\u3053\u306E\u30EB\u30FC\u30BF\u30FC\u3092\u7834\u68C4\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.disable.provider=\u3053\u306E\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.enable.provider=\u3053\u306E\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.join.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306B\u53C2\u52A0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.remove.IP.range=\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.confirm.shutdown.provider=\u3053\u306E\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u30B7\u30E3\u30C3\u30C8\u30C0\u30A6\u30F3\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.copy.iso.confirm=ISO \u3092\u6B21\u306E\u5834\u6240\u306B\u30B3\u30D4\u30FC\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.copy.template=\u30BE\u30FC\u30F3 \u304B\u3089\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 XXX \u3092\u6B21\u306E\u5834\u6240\u306B\u30B3\u30D4\u30FC\u3057\u307E\u3059\: -message.create.template=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.create.template.vm=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 \u304B\u3089 VM \u3092\u4F5C\u6210\u3057\u307E\u3059 -message.create.template.volume=\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0 \u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3059\u308B\u524D\u306B\u3001\u6B21\u306E\u60C5\u5831\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u30DC\u30EA\u30E5\u30FC\u30E0 \u30B5\u30A4\u30BA\u306B\u3088\u3063\u3066\u306F\u3001\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210\u306B\u306F\u6570\u5206\u4EE5\u4E0A\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 -message.creating.cluster=\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 -message.creating.guest.network=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 -message.creating.physical.networks=\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 -message.creating.pod=\u30DD\u30C3\u30C9\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 -message.creating.primary.storage=\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 -message.creating.secondary.storage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 -message.creating.zone=\u30BE\u30FC\u30F3\u3092\u4F5C\u6210\u3057\u3066\u3044\u307E\u3059 -message.decline.invitation=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3078\u306E\u62DB\u5F85\u3092\u8F9E\u9000\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.delete.account=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.delete.gateway=\u3053\u306E\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.delete.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.delete.user=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.delete.VPN.connection=VPN \u63A5\u7D9A\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.delete.VPN.customer.gateway=\u3053\u306E VPN \u30AB\u30B9\u30BF\u30DE\u30FC \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.delete.VPN.gateway=\u3053\u306E VPN \u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.desc.advanced.zone=\u3088\u308A\u6D17\u7DF4\u3055\u308C\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6280\u8853\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u3088\u308A\u67D4\u8EDF\u306B\u30B2\u30B9\u30C8\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u5B9A\u7FA9\u3057\u3001\u30D5\u30A1\u30A4\u30A2\u30A6\u30A9\u30FC\u30EB\u3001VPN\u3001\u8CA0\u8377\u5206\u6563\u88C5\u7F6E\u306E\u30B5\u30DD\u30FC\u30C8\u306E\u3088\u3046\u306A\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA\u3057\u305F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u63D0\u4F9B\u3067\u304D\u307E\u3059\u3002 -message.desc.basic.zone=\u5404 VM \u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B IP \u30A2\u30C9\u30EC\u30B9\u304C\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304B\u3089\u76F4\u63A5\u5272\u308A\u5F53\u3066\u3089\u308C\u308B\u3001\u5358\u4E00\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u63D0\u4F9B\u3057\u307E\u3059\u3002\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 (\u9001\u4FE1\u5143 IP \u30A2\u30C9\u30EC\u30B9\u306E\u30D5\u30A3\u30EB\u30BF\u30FC) \u306E\u3088\u3046\u306A\u30EC\u30A4\u30E4\u30FC 3 \u30EC\u30D9\u30EB\u306E\u65B9\u6CD5\u3067\u30B2\u30B9\u30C8\u3092\u5206\u96E2\u3067\u304D\u307E\u3059\u3002 -message.desc.cluster=\u5404\u30DD\u30C3\u30C9\u306B\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30AF\u30E9\u30B9\u30BF\u30FC\u306F\u30DB\u30B9\u30C8\u3092\u30B0\u30EB\u30FC\u30D7\u5316\u3059\u308B\u65B9\u6CD5\u3067\u3059\u30021 \u3064\u306E\u30AF\u30E9\u30B9\u30BF\u30FC\u5185\u306E\u30DB\u30B9\u30C8\u306F\u3059\u3079\u3066\u540C\u4E00\u306E\u30CF\u30FC\u30C9\u30A6\u30A7\u30A2\u304B\u3089\u69CB\u6210\u3055\u308C\u3001\u540C\u3058\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3092\u5B9F\u884C\u3057\u3001\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u4E0A\u306B\u3042\u308A\u3001\u540C\u3058\u5171\u6709\u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u30A2\u30AF\u30BB\u30B9\u3057\u307E\u3059\u3002\u5404\u30AF\u30E9\u30B9\u30BF\u30FC\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DB\u30B9\u30C8\u3068 1 \u3064\u4EE5\u4E0A\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059\u3002 -message.desc.host=\u5404\u30AF\u30E9\u30B9\u30BF\u30FC\u306B\u306F\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u3001\u30B2\u30B9\u30C8 VM \u3092\u5B9F\u884C\u3059\u308B\u305F\u3081\u306E\u30DB\u30B9\u30C8 (\u30B3\u30F3\u30D4\u30E5\u30FC\u30BF\u30FC) \u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30DB\u30B9\u30C8\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002CloudStack \u3067\u30DB\u30B9\u30C8\u3092\u6A5F\u80FD\u3055\u305B\u308B\u306B\u306F\u3001\u30DB\u30B9\u30C8\u306B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3057\u3066 IP \u30A2\u30C9\u30EC\u30B9\u3092\u5272\u308A\u5F53\u3066\u3001\u30DB\u30B9\u30C8\u304C CloudStack \u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u306B\u63A5\u7D9A\u3057\u3066\u3044\u308B\u3053\u3068\u3092\u78BA\u8A8D\u3057\u307E\u3059\u3002

    \u30DB\u30B9\u30C8\u306E DNS \u540D\u307E\u305F\u306F IP \u30A2\u30C9\u30EC\u30B9\u3001\u30E6\u30FC\u30B6\u30FC\u540D (\u901A\u5E38\u306F root) \u3068\u30D1\u30B9\u30EF\u30FC\u30C9\u3001\u304A\u3088\u3073\u30DB\u30B9\u30C8\u306E\u5206\u985E\u306B\u4F7F\u7528\u3059\u308B\u30E9\u30D9\u30EB\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.desc.primary.storage=\u5404\u30AF\u30E9\u30B9\u30BF\u30FC\u306B\u306F\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u3001\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30B5\u30FC\u30D0\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306F\u3001\u30AF\u30E9\u30B9\u30BF\u30FC\u5185\u306E\u30DB\u30B9\u30C8\u4E0A\u3067\u52D5\u4F5C\u3059\u308B\u3059\u3079\u3066\u306E VM \u306E\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u683C\u7D0D\u3057\u307E\u3059\u3002\u57FA\u790E\u3068\u306A\u308B\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u308B\u3001\u6A19\u6E96\u306B\u6E96\u62E0\u3057\u305F\u30D7\u30ED\u30C8\u30B3\u30EB\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.desc.secondary.storage=\u5404\u30BE\u30FC\u30F3\u306B\u306F\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u3001NFS \u3064\u307E\u308A\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304C\u5FC5\u8981\u3067\u3059\u3002\u4ECA\u3053\u3053\u3067\u6700\u521D\u306E\u30B5\u30FC\u30D0\u30FC\u3092\u8FFD\u52A0\u3057\u307E\u3059\u3002\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306F VM \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3001ISO \u30A4\u30E1\u30FC\u30B8\u3001\u304A\u3088\u3073VM \u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u3092\u683C\u7D0D\u3057\u307E\u3059\u3002\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306F\u30BE\u30FC\u30F3\u5185\u306E\u3059\u3079\u3066\u306E\u30DB\u30B9\u30C8\u3067\u4F7F\u7528\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002

    IP \u30A2\u30C9\u30EC\u30B9\u3068\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3055\u308C\u305F\u30D1\u30B9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.desc.zone=\u30BE\u30FC\u30F3\u306F CloudStack \u74B0\u5883\u5185\u306E\u6700\u5927\u306E\u7D44\u7E54\u5358\u4F4D\u3067\u3001\u901A\u5E38\u3001\u5358\u4E00\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u306B\u76F8\u5F53\u3057\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306B\u3088\u3063\u3066\u7269\u7406\u7684\u306A\u5206\u96E2\u3068\u5197\u9577\u6027\u304C\u63D0\u4F9B\u3055\u308C\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DD\u30C3\u30C9 (\u5404\u30DD\u30C3\u30C9\u306F\u30DB\u30B9\u30C8\u3068\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059) \u3068\u3001\u30BE\u30FC\u30F3\u5185\u306E\u3059\u3079\u3066\u306E\u30DD\u30C3\u30C9\u3067\u5171\u6709\u3055\u308C\u308B\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u69CB\u6210\u3055\u308C\u307E\u3059\u3002 -message.detach.disk=\u3053\u306E\u30C7\u30A3\u30B9\u30AF\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.detach.iso.confirm=\u3053\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304B\u3089 ISO \u30D5\u30A1\u30A4\u30EB\u3092\u30C7\u30BF\u30C3\u30C1\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.after.enable.swift=Swift \u304c\u69cb\u6210\u3055\u308c\u307e\u3057\u305f\u3002\u6ce8\: \u3053\u306e\u30da\u30fc\u30b8\u3092\u9589\u3058\u308b\u3068\u3001Swift \u3092\u518d\u69cb\u6210\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093\u3002 +message.alert.state.detected=\u30a2\u30e9\u30fc\u30c8\u72b6\u614b\u304c\u691c\u51fa\u3055\u308c\u307e\u3057\u305f +message.allow.vpn.access=VPN \u30a2\u30af\u30bb\u30b9\u3092\u8a31\u53ef\u3059\u308b\u30e6\u30fc\u30b6\u30fc\u306e\u30e6\u30fc\u30b6\u30fc\u540d\u3068\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.apply.snapshot.policy=\u73fe\u5728\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8 \u30dd\u30ea\u30b7\u30fc\u3092\u66f4\u65b0\u3057\u307e\u3057\u305f\u3002 +message.attach.iso.confirm=\u3053\u306e\u4eee\u60f3\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306b ISO \u30d5\u30a1\u30a4\u30eb\u3092\u30a2\u30bf\u30c3\u30c1\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.attach.volume=\u65b0\u3057\u3044\u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u30a2\u30bf\u30c3\u30c1\u3059\u308b\u305f\u3081\u306b\u3001\u6b21\u306e\u30c7\u30fc\u30bf\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002Windows \u30d9\u30fc\u30b9\u306e\u4eee\u60f3\u30de\u30b7\u30f3\u306b\u30c7\u30a3\u30b9\u30af \u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u30a2\u30bf\u30c3\u30c1\u3059\u308b\u5834\u5408\u306f\u3001\u30a2\u30bf\u30c3\u30c1\u3057\u305f\u30c7\u30a3\u30b9\u30af\u3092\u8a8d\u8b58\u3059\u308b\u305f\u3081\u306b\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u518d\u8d77\u52d5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.basic.mode.desc=VLAN \u30b5\u30dd\u30fc\u30c8\u304c\u4e0d\u8981\u3067\u3042\u308b\u5834\u5408\u306f\u3001\u3053\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30e2\u30c7\u30eb\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u3053\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30e2\u30c7\u30eb\u3067\u4f5c\u6210\u3055\u308c\u308b\u3059\u3079\u3066\u306e\u4eee\u60f3\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306b\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304b\u3089\u76f4\u63a5 IP \u30a2\u30c9\u30ec\u30b9\u304c\u5272\u308a\u5f53\u3066\u3089\u308c\u3001\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7\u3092\u4f7f\u7528\u3057\u3066\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u3068\u5206\u96e2\u304c\u63d0\u4f9b\u3055\u308c\u307e\u3059\u3002 +message.change.offering.confirm=\u3053\u306e\u4eee\u60f3\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u5909\u66f4\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.change.password=\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u5909\u66f4\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.configure.all.traffic.types=\u8907\u6570\u306e\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304c\u3042\u308a\u307e\u3059\u3002[\u7de8\u96c6] \u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306e\u7a2e\u985e\u3054\u3068\u306b\u30e9\u30d9\u30eb\u3092\u69cb\u6210\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.configuring.guest.traffic=\u30b2\u30b9\u30c8 \u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3092\u69cb\u6210\u3057\u3066\u3044\u307e\u3059 +message.configuring.physical.networks=\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u69cb\u6210\u3057\u3066\u3044\u307e\u3059 +message.configuring.public.traffic=\u30d1\u30d6\u30ea\u30c3\u30af \u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3092\u69cb\u6210\u3057\u3066\u3044\u307e\u3059 +message.configuring.storage.traffic=\u30b9\u30c8\u30ec\u30fc\u30b8 \u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3092\u69cb\u6210\u3057\u3066\u3044\u307e\u3059 +message.confirm.action.force.reconnect=\u3053\u306e\u30db\u30b9\u30c8\u3092\u5f37\u5236\u518d\u63a5\u7d9a\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.confirm.delete.F5=F5 \u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.confirm.delete.NetScaler=NetScaler \u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.confirm.delete.SRX=SRX \u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.confirm.destroy.router=\u3053\u306e\u30eb\u30fc\u30bf\u30fc\u3092\u7834\u68c4\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.confirm.disable.provider=\u3053\u306e\u30d7\u30ed\u30d0\u30a4\u30c0\u30fc\u3092\u7121\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.confirm.enable.provider=\u3053\u306e\u30d7\u30ed\u30d0\u30a4\u30c0\u30fc\u3092\u6709\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.confirm.join.project=\u3053\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306b\u53c2\u52a0\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.confirm.remove.IP.range=\u3053\u306e IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.confirm.shutdown.provider=\u3053\u306e\u30d7\u30ed\u30d0\u30a4\u30c0\u30fc\u3092\u30b7\u30e3\u30c3\u30c8\u30c0\u30a6\u30f3\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.copy.iso.confirm=ISO \u3092\u6b21\u306e\u5834\u6240\u306b\u30b3\u30d4\u30fc\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.copy.template=\u30be\u30fc\u30f3 \u304b\u3089\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8 XXX \u3092\u6b21\u306e\u5834\u6240\u306b\u30b3\u30d4\u30fc\u3057\u307e\u3059\: +message.create.template=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3092\u4f5c\u6210\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.create.template.vm=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8 \u304b\u3089 VM \u3092\u4f5c\u6210\u3057\u307e\u3059 +message.create.template.volume=\u30c7\u30a3\u30b9\u30af \u30dc\u30ea\u30e5\u30fc\u30e0 \u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3092\u4f5c\u6210\u3059\u308b\u524d\u306b\u3001\u6b21\u306e\u60c5\u5831\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u30dc\u30ea\u30e5\u30fc\u30e0 \u30b5\u30a4\u30ba\u306b\u3088\u3063\u3066\u306f\u3001\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u4f5c\u6210\u306b\u306f\u6570\u5206\u4ee5\u4e0a\u304b\u304b\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002 +message.creating.cluster=\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u4f5c\u6210\u3057\u3066\u3044\u307e\u3059 +message.creating.guest.network=\u30b2\u30b9\u30c8 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u4f5c\u6210\u3057\u3066\u3044\u307e\u3059 +message.creating.physical.networks=\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u4f5c\u6210\u3057\u3066\u3044\u307e\u3059 +message.creating.pod=\u30dd\u30c3\u30c9\u3092\u4f5c\u6210\u3057\u3066\u3044\u307e\u3059 +message.creating.primary.storage=\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u4f5c\u6210\u3057\u3066\u3044\u307e\u3059 +message.creating.secondary.storage=\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u4f5c\u6210\u3057\u3066\u3044\u307e\u3059 +message.creating.zone=\u30be\u30fc\u30f3\u3092\u4f5c\u6210\u3057\u3066\u3044\u307e\u3059 +message.decline.invitation=\u3053\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3078\u306e\u62db\u5f85\u3092\u8f9e\u9000\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.delete.account=\u3053\u306e\u30a2\u30ab\u30a6\u30f3\u30c8\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.delete.gateway=\u3053\u306e\u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.delete.project=\u3053\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.delete.user=\u3053\u306e\u30e6\u30fc\u30b6\u30fc\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.delete.VPN.connection=VPN \u63a5\u7d9a\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.delete.VPN.customer.gateway=\u3053\u306e VPN \u30ab\u30b9\u30bf\u30de\u30fc \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.delete.VPN.gateway=\u3053\u306e VPN \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.desc.advanced.zone=\u3088\u308a\u6d17\u7df4\u3055\u308c\u305f\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u6280\u8853\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002\u3053\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30e2\u30c7\u30eb\u3092\u9078\u629e\u3059\u308b\u3068\u3001\u3088\u308a\u67d4\u8edf\u306b\u30b2\u30b9\u30c8\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u5b9a\u7fa9\u3057\u3001\u30d5\u30a1\u30a4\u30a2\u30a6\u30a9\u30fc\u30eb\u3001VPN\u3001\u8ca0\u8377\u5206\u6563\u88c5\u7f6e\u306e\u30b5\u30dd\u30fc\u30c8\u306e\u3088\u3046\u306a\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3057\u305f\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u63d0\u4f9b\u3067\u304d\u307e\u3059\u3002 +message.desc.basic.zone=\u5404 VM \u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306b IP \u30a2\u30c9\u30ec\u30b9\u304c\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304b\u3089\u76f4\u63a5\u5272\u308a\u5f53\u3066\u3089\u308c\u308b\u3001\u5358\u4e00\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7 (\u9001\u4fe1\u5143 IP \u30a2\u30c9\u30ec\u30b9\u306e\u30d5\u30a3\u30eb\u30bf\u30fc) \u306e\u3088\u3046\u306a\u30ec\u30a4\u30e4\u30fc 3 \u30ec\u30d9\u30eb\u306e\u65b9\u6cd5\u3067\u30b2\u30b9\u30c8\u3092\u5206\u96e2\u3067\u304d\u307e\u3059\u3002 +message.desc.cluster=\u5404\u30dd\u30c3\u30c9\u306b\u306f 1 \u3064\u4ee5\u4e0a\u306e\u30af\u30e9\u30b9\u30bf\u30fc\u304c\u5fc5\u8981\u3067\u3059\u3002\u4eca\u3053\u3053\u3067\u6700\u521d\u306e\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002\u30af\u30e9\u30b9\u30bf\u30fc\u306f\u30db\u30b9\u30c8\u3092\u30b0\u30eb\u30fc\u30d7\u5316\u3059\u308b\u65b9\u6cd5\u3067\u3059\u30021 \u3064\u306e\u30af\u30e9\u30b9\u30bf\u30fc\u5185\u306e\u30db\u30b9\u30c8\u306f\u3059\u3079\u3066\u540c\u4e00\u306e\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u304b\u3089\u69cb\u6210\u3055\u308c\u3001\u540c\u3058\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u3092\u5b9f\u884c\u3057\u3001\u540c\u3058\u30b5\u30d6\u30cd\u30c3\u30c8\u4e0a\u306b\u3042\u308a\u3001\u540c\u3058\u5171\u6709\u30b9\u30c8\u30ec\u30fc\u30b8\u306b\u30a2\u30af\u30bb\u30b9\u3057\u307e\u3059\u3002\u5404\u30af\u30e9\u30b9\u30bf\u30fc\u306f 1 \u3064\u4ee5\u4e0a\u306e\u30db\u30b9\u30c8\u3068 1 \u3064\u4ee5\u4e0a\u306e\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 \u30b5\u30fc\u30d0\u30fc\u304b\u3089\u69cb\u6210\u3055\u308c\u307e\u3059\u3002 +message.desc.host=\u5404\u30af\u30e9\u30b9\u30bf\u30fc\u306b\u306f\u5c11\u306a\u304f\u3068\u3082 1 \u3064\u3001\u30b2\u30b9\u30c8 VM \u3092\u5b9f\u884c\u3059\u308b\u305f\u3081\u306e\u30db\u30b9\u30c8 (\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30fc) \u304c\u5fc5\u8981\u3067\u3059\u3002\u4eca\u3053\u3053\u3067\u6700\u521d\u306e\u30db\u30b9\u30c8\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002CloudStack \u3067\u30db\u30b9\u30c8\u3092\u6a5f\u80fd\u3055\u305b\u308b\u306b\u306f\u3001\u30db\u30b9\u30c8\u306b\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066 IP \u30a2\u30c9\u30ec\u30b9\u3092\u5272\u308a\u5f53\u3066\u3001\u30db\u30b9\u30c8\u304c CloudStack \u7ba1\u7406\u30b5\u30fc\u30d0\u30fc\u306b\u63a5\u7d9a\u3057\u3066\u3044\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002

    \u30db\u30b9\u30c8\u306e DNS \u540d\u307e\u305f\u306f IP \u30a2\u30c9\u30ec\u30b9\u3001\u30e6\u30fc\u30b6\u30fc\u540d (\u901a\u5e38\u306f root) \u3068\u30d1\u30b9\u30ef\u30fc\u30c9\u3001\u304a\u3088\u3073\u30db\u30b9\u30c8\u306e\u5206\u985e\u306b\u4f7f\u7528\u3059\u308b\u30e9\u30d9\u30eb\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.desc.primary.storage=\u5404\u30af\u30e9\u30b9\u30bf\u30fc\u306b\u306f\u5c11\u306a\u304f\u3068\u3082 1 \u3064\u3001\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 \u30b5\u30fc\u30d0\u30fc\u304c\u5fc5\u8981\u3067\u3059\u3002\u4eca\u3053\u3053\u3067\u6700\u521d\u306e\u30b5\u30fc\u30d0\u30fc\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u306f\u3001\u30af\u30e9\u30b9\u30bf\u30fc\u5185\u306e\u30db\u30b9\u30c8\u4e0a\u3067\u52d5\u4f5c\u3059\u308b\u3059\u3079\u3066\u306e VM \u306e\u30c7\u30a3\u30b9\u30af \u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u683c\u7d0d\u3057\u307e\u3059\u3002\u57fa\u790e\u3068\u306a\u308b\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u3067\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u308b\u3001\u6a19\u6e96\u306b\u6e96\u62e0\u3057\u305f\u30d7\u30ed\u30c8\u30b3\u30eb\u3092\u4f7f\u7528\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.desc.secondary.storage=\u5404\u30be\u30fc\u30f3\u306b\u306f\u5c11\u306a\u304f\u3068\u3082 1 \u3064\u3001NFS \u3064\u307e\u308a\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 \u30b5\u30fc\u30d0\u30fc\u304c\u5fc5\u8981\u3067\u3059\u3002\u4eca\u3053\u3053\u3067\u6700\u521d\u306e\u30b5\u30fc\u30d0\u30fc\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u306f VM \u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3001ISO \u30a4\u30e1\u30fc\u30b8\u3001\u304a\u3088\u3073VM \u30c7\u30a3\u30b9\u30af \u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3092\u683c\u7d0d\u3057\u307e\u3059\u3002\u3053\u306e\u30b5\u30fc\u30d0\u30fc\u306f\u30be\u30fc\u30f3\u5185\u306e\u3059\u3079\u3066\u306e\u30db\u30b9\u30c8\u3067\u4f7f\u7528\u3067\u304d\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002

    IP \u30a2\u30c9\u30ec\u30b9\u3068\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3055\u308c\u305f\u30d1\u30b9\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.desc.zone=\u30be\u30fc\u30f3\u306f CloudStack \u74b0\u5883\u5185\u306e\u6700\u5927\u306e\u7d44\u7e54\u5358\u4f4d\u3067\u3001\u901a\u5e38\u3001\u5358\u4e00\u306e\u30c7\u30fc\u30bf\u30bb\u30f3\u30bf\u30fc\u306b\u76f8\u5f53\u3057\u307e\u3059\u3002\u30be\u30fc\u30f3\u306b\u3088\u3063\u3066\u7269\u7406\u7684\u306a\u5206\u96e2\u3068\u5197\u9577\u6027\u304c\u63d0\u4f9b\u3055\u308c\u307e\u3059\u3002\u30be\u30fc\u30f3\u306f 1 \u3064\u4ee5\u4e0a\u306e\u30dd\u30c3\u30c9 (\u5404\u30dd\u30c3\u30c9\u306f\u30db\u30b9\u30c8\u3068\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 \u30b5\u30fc\u30d0\u30fc\u304b\u3089\u69cb\u6210\u3055\u308c\u307e\u3059) \u3068\u3001\u30be\u30fc\u30f3\u5185\u306e\u3059\u3079\u3066\u306e\u30dd\u30c3\u30c9\u3067\u5171\u6709\u3055\u308c\u308b\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 \u30b5\u30fc\u30d0\u30fc\u304b\u3089\u69cb\u6210\u3055\u308c\u307e\u3059\u3002 +message.detach.disk=\u3053\u306e\u30c7\u30a3\u30b9\u30af\u3092\u30c7\u30bf\u30c3\u30c1\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.detach.iso.confirm=\u3053\u306e\u4eee\u60f3\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u304b\u3089 ISO \u30d5\u30a1\u30a4\u30eb\u3092\u30c7\u30bf\u30c3\u30c1\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? message.disable.account=\u00e3\u0081\u0093\u00e3\u0081\u00ae\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0082\u0092\u00e7\u0084\u00a1\u00e5\u008a\u00b9\u00e3\u0081\u00ab\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0082\u0082\u00e3\u0082\u0088\u00e3\u0082\u008d\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0081\u00a7\u00e3\u0081\u0099\u00e3\u0081\u008b? \u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0082\u0092\u00e7\u0084\u00a1\u00e5\u008a\u00b9\u00e3\u0081\u00ab\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u0093\u00e3\u0081\u00a8\u00e3\u0081\u00ab\u00e3\u0082\u0088\u00e3\u0082\u008a\u00e3\u0080\u0081\u00e3\u0081\u0093\u00e3\u0081\u00ae\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0081\u00ae\u00e3\u0081\u0099\u00e3\u0081\u00b9\u00e3\u0081\u00a6\u00e3\u0081\u00ae\u00e3\u0083\u00a6\u00e3\u0083\u00bc\u00e3\u0082\u00b6\u00e3\u0083\u00bc\u00e3\u0081\u00af\u00e3\u0082\u00af\u00e3\u0083\u00a9\u00e3\u0082\u00a6\u00e3\u0083\u0089\u00e3\u0083\u00aa\u00e3\u0082\u00bd\u00e3\u0083\u00bc\u00e3\u0082\u00b9\u00e3\u0081\u00ab\u00e3\u0082\u00a2\u00e3\u0082\u00af\u00e3\u0082\u00bb\u00e3\u0082\u00b9\u00e3\u0081\u00a7\u00e3\u0081\u008d\u00e3\u0081\u00aa\u00e3\u0081\u008f\u00e3\u0081\u00aa\u00e3\u0082\u008a\u00e3\u0081\u00be\u00e3\u0081\u0099\u00e3\u0080\u0082\u00e5\u00ae\u009f\u00e8\u00a1\u008c\u00e4\u00b8\u00ad\u00e3\u0081\u00ae\u00e3\u0081\u0099\u00e3\u0081\u00b9\u00e3\u0081\u00a6\u00e3\u0081\u00ae\u00e4\u00bb\u00ae\u00e6\u0083\u00b3\u00e3\u0083\u009e\u00e3\u0082\u00b7\u00e3\u0083\u00b3\u00e3\u0081\u00af\u00e3\u0081\u0099\u00e3\u0081\u0090\u00e3\u0081\u00ab\u00e3\u0082\u00b7\u00e3\u0083\u00a3\u00e3\u0083\u0083\u00e3\u0083\u0088\u00e3\u0083\u0080\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0081\u0095\u00e3\u0082\u008c\u00e3\u0081\u00be\u00e3\u0081\u0099\u00e3\u0080\u0082 -message.disable.snapshot.policy=\u73FE\u5728\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 \u30DD\u30EA\u30B7\u30FC\u3092\u7121\u52B9\u306B\u3057\u307E\u3057\u305F\u3002 -message.disable.user=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.disable.vpn.access=VPN \u30A2\u30AF\u30BB\u30B9\u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.disable.vpn=VPN \u3092\u7121\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.disable.snapshot.policy=\u73fe\u5728\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8 \u30dd\u30ea\u30b7\u30fc\u3092\u7121\u52b9\u306b\u3057\u307e\u3057\u305f\u3002 +message.disable.user=\u3053\u306e\u30e6\u30fc\u30b6\u30fc\u3092\u7121\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.disable.vpn.access=VPN \u30a2\u30af\u30bb\u30b9\u3092\u7121\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.disable.vpn=VPN \u3092\u7121\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? message.download.ISO=ISO\u00e3\u0082\u0092\u00e3\u0083\u0080\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u00ad\u00e3\u0083\u00bc\u00e3\u0083\u0089\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab00000\u00e3\u0082\u0092\u00e3\u0082\u00af\u00e3\u0083\u00aa\u00e3\u0083\u0083\u00e3\u0082\u00af\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 message.download.template=\u00e3\u0083\u0086\u00e3\u0083\u00b3\u00e3\u0083\u0097\u00e3\u0083\u00ac\u00e3\u0083\u00bc\u00e3\u0083\u0088\u00e3\u0082\u0092\u00e3\u0083\u0080\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u00ad\u00e3\u0083\u00bc\u00e3\u0083\u0089\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab00000\u00e3\u0082\u0092\u00e3\u0082\u00af\u00e3\u0083\u00aa\u00e3\u0083\u0083\u00e3\u0082\u00af\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 -message.download.volume.confirm=\u3053\u306E\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.download.volume=\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9\u3059\u308B\u306B\u306F 00000 \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u307E\u3059 -message.edit.account=\u7DE8\u96C6 ("-1" \u306F\u3001\u30EA\u30BD\u30FC\u30B9\u4F5C\u6210\u306E\u91CF\u306B\u5236\u9650\u304C\u306A\u3044\u3053\u3068\u3092\u793A\u3057\u307E\u3059) -message.edit.confirm=[\u4FDD\u5B58] \u3092\u30AF\u30EA\u30C3\u30AF\u3059\u308B\u524D\u306B\u5909\u66F4\u5185\u5BB9\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.edit.limits=\u6B21\u306E\u30EA\u30BD\u30FC\u30B9\u306B\u5236\u9650\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u300C-1\u300D\u306F\u3001\u30EA\u30BD\u30FC\u30B9\u4F5C\u6210\u306B\u5236\u9650\u304C\u306A\u3044\u3053\u3068\u3092\u793A\u3057\u307E\u3059\u3002 -message.edit.traffic.type=\u3053\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u306B\u95A2\u9023\u4ED8\u3051\u308B\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF \u30E9\u30D9\u30EB\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.enable.account=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.enabled.vpn.ip.sec=IPSec \u4E8B\u524D\u5171\u6709\u30AD\u30FC\: -message.enabled.vpn=\u73FE\u5728\u3001VPN \u30A2\u30AF\u30BB\u30B9\u304C\u6709\u52B9\u306B\u306A\u3063\u3066\u3044\u307E\u3059\u3002\u6B21\u306E IP \u30A2\u30C9\u30EC\u30B9\u7D4C\u7531\u3067\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u3059\u3002 -message.enable.user=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.enable.vpn.access=\u73FE\u5728\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u306B\u5BFE\u3059\u308B VPN \u306F\u7121\u52B9\u3067\u3059\u3002VPN \u30A2\u30AF\u30BB\u30B9\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.enable.vpn=\u3053\u306E IP \u30A2\u30C9\u30EC\u30B9\u306B\u5BFE\u3059\u308B VPN \u30A2\u30AF\u30BB\u30B9\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.enabling.security.group.provider=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7 \u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 -message.enabling.zone=\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3044\u307E\u3059 -message.enter.token=\u96FB\u5B50\u30E1\u30FC\u30EB\u306E\u62DB\u5F85\u72B6\u306B\u8A18\u8F09\u3055\u308C\u3066\u3044\u308B\u30C8\u30FC\u30AF\u30F3\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.generate.keys=\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u306B\u65B0\u3057\u3044\u30AD\u30FC\u3092\u751F\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.guest.traffic.in.advanced.zone=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306F\u3001\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u9593\u306E\u901A\u4FE1\u3067\u3059\u3002\u5404\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30B2\u30B9\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u901A\u4FE1\u3059\u308B\u305F\u3081\u306E VLAN ID \u306E\u7BC4\u56F2\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.guest.traffic.in.basic.zone=\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306F\u3001\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306E\u4EEE\u60F3\u30DE\u30B7\u30F3\u9593\u306E\u901A\u4FE1\u3067\u3059\u3002CloudStack \u3067\u30B2\u30B9\u30C8 VM \u306B\u5272\u308A\u5F53\u3066\u3089\u308C\u308B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u3053\u306E\u7BC4\u56F2\u304C\u4E88\u7D04\u6E08\u307F\u306E\u30B7\u30B9\u30C6\u30E0 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3068\u91CD\u8907\u3057\u306A\u3044\u3088\u3046\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.installWizard.click.retry=\u8D77\u52D5\u3092\u518D\u8A66\u884C\u3059\u308B\u306B\u306F\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.installWizard.copy.whatIsAPod=\u901A\u5E38\u30011 \u3064\u306E\u30DD\u30C3\u30C9\u306F\u5358\u4E00\u306E\u30E9\u30C3\u30AF\u3092\u8868\u3057\u307E\u3059\u3002\u540C\u3058\u30DD\u30C3\u30C9\u5185\u306E\u30DB\u30B9\u30C8\u306F\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u306B\u542B\u307E\u308C\u307E\u3059\u3002

    \u30DD\u30C3\u30C9\u306F CloudStack&\#8482; \u74B0\u5883\u5185\u306E 2 \u756A\u76EE\u306B\u5927\u304D\u306A\u7D44\u7E54\u5358\u4F4D\u3067\u3059\u3002\u30DD\u30C3\u30C9\u306F\u30BE\u30FC\u30F3\u306B\u542B\u307E\u308C\u307E\u3059\u3002\u5404\u30BE\u30FC\u30F3\u306F 1 \u3064\u4EE5\u4E0A\u306E\u30DD\u30C3\u30C9\u3092\u542B\u3080\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002\u57FA\u672C\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3067\u306F\u3001\u30BE\u30FC\u30F3\u5185\u306E\u30DD\u30C3\u30C9\u306F 1 \u3064\u3067\u3059\u3002 -message.installWizard.copy.whatIsAZone=\u30BE\u30FC\u30F3\u306F CloudStack&\#8482; \u74B0\u5883\u5185\u306E\u6700\u5927\u306E\u7D44\u7E54\u5358\u4F4D\u3067\u3059\u30021 \u3064\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u5185\u306B\u8907\u6570\u306E\u30BE\u30FC\u30F3\u3092\u8A2D\u5B9A\u3067\u304D\u307E\u3059\u304C\u3001\u901A\u5E38\u3001\u30BE\u30FC\u30F3\u306F\u5358\u4E00\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u306B\u76F8\u5F53\u3057\u307E\u3059\u3002\u30A4\u30F3\u30D5\u30E9\u30B9\u30C8\u30E9\u30AF\u30C1\u30E3\u3092\u30BE\u30FC\u30F3\u306B\u7D44\u7E54\u5316\u3059\u308B\u3068\u3001\u30BE\u30FC\u30F3\u3092\u7269\u7406\u7684\u306B\u5206\u96E2\u3057\u3066\u5197\u9577\u5316\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002\u305F\u3068\u3048\u3070\u3001\u5404\u30BE\u30FC\u30F3\u306B\u96FB\u6E90\u3068\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30A2\u30C3\u30D7\u30EA\u30F3\u30AF\u3092\u914D\u5099\u3057\u307E\u3059\u3002\u5FC5\u9808\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u304C\u3001\u30BE\u30FC\u30F3\u306F\u9060\u9694\u5730\u306B\u5206\u6563\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002 -message.installWizard.copy.whatIsSecondaryStorage=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306F\u30BE\u30FC\u30F3\u3068\u95A2\u9023\u4ED8\u3051\u3089\u308C\u3001\u6B21\u306E\u9805\u76EE\u3092\u683C\u7D0D\u3057\u307E\u3059\u3002
    • \u30C6\u30F3\u30D7\u30EC\u30FC\u30C8 - VM \u306E\u8D77\u52D5\u306B\u4F7F\u7528\u3067\u304D\u308B OS \u30A4\u30E1\u30FC\u30B8\u3067\u3001\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u306E\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u306A\u3069\u8FFD\u52A0\u306E\u69CB\u6210\u3092\u542B\u3081\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002
    • ISO \u30A4\u30E1\u30FC\u30B8 - \u8D77\u52D5\u53EF\u80FD\u307E\u305F\u306F\u8D77\u52D5\u4E0D\u53EF\u306E OS \u30A4\u30E1\u30FC\u30B8\u3067\u3059\u3002
    • \u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8 - VM \u30C7\u30FC\u30BF\u306E\u4FDD\u5B58\u30B3\u30D4\u30FC\u3067\u3059\u3002\u30C7\u30FC\u30BF\u306E\u5FA9\u5143\u307E\u305F\u306F\u65B0\u3057\u3044\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210\u306B\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002
    -message.installWizard.tooltip.addCluster.name=\u30AF\u30E9\u30B9\u30BF\u30FC\u306E\u540D\u524D\u3067\u3059\u3002CloudStack \u3067\u4F7F\u7528\u3055\u308C\u3066\u3044\u306A\u3044\u3001\u4EFB\u610F\u306E\u30C6\u30AD\u30B9\u30C8\u3092\u6307\u5B9A\u3067\u304D\u307E\u3059\u3002 -message.installWizard.tooltip.addHost.hostname=\u30DB\u30B9\u30C8\u306E DNS \u540D\u307E\u305F\u306F IP \u30A2\u30C9\u30EC\u30B9\u3067\u3059\u3002 -message.installWizard.tooltip.addHost.password=XenServer \u5074\u3067\u6307\u5B9A\u3057\u305F\u3001\u4E0A\u306E\u30E6\u30FC\u30B6\u30FC\u540D\u306B\u5BFE\u3059\u308B\u30D1\u30B9\u30EF\u30FC\u30C9\u3067\u3059\u3002 -message.installWizard.tooltip.addHost.username=\u901A\u5E38\u306F root \u3067\u3059\u3002 -message.installWizard.tooltip.addPod.name=\u30DD\u30C3\u30C9\u306E\u540D\u524D\u3067\u3059\u3002 -message.installWizard.tooltip.addPod.reservedSystemEndIp=\u3053\u308C\u306F\u3001\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 VM \u304A\u3088\u3073\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7 VM \u3092\u7BA1\u7406\u3059\u308B\u305F\u3081\u306B CloudStack \u3067\u4F7F\u7528\u3059\u308B\u3001\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u5185\u306E IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30B5\u30FC\u30D0\u30FC\u3068\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u304B\u3089\u5272\u308A\u5F53\u3066\u307E\u3059\u3002 -message.installWizard.tooltip.addPod.reservedSystemGateway=\u3053\u306E\u30DD\u30C3\u30C9\u5185\u306E\u30DB\u30B9\u30C8\u306E\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3067\u3059\u3002 -message.installWizard.tooltip.addPod.reservedSystemNetmask=\u30B2\u30B9\u30C8\u306E\u4F7F\u7528\u3059\u308B\u30B5\u30D6\u30CD\u30C3\u30C8\u4E0A\u3067\u4F7F\u7528\u3055\u308C\u308B\u30CD\u30C3\u30C8\u30DE\u30B9\u30AF\u3067\u3059\u3002 -message.installWizard.tooltip.addPod.reservedSystemStartIp=\u3053\u308C\u306F\u3001\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 VM \u304A\u3088\u3073\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7 VM \u3092\u7BA1\u7406\u3059\u308B\u305F\u3081\u306B CloudStack \u3067\u4F7F\u7528\u3059\u308B\u3001\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u5185\u306E IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30B3\u30F3\u30D4\u30E5\u30FC\u30C6\u30A3\u30F3\u30B0 \u30B5\u30FC\u30D0\u30FC\u3068\u540C\u3058\u30B5\u30D6\u30CD\u30C3\u30C8\u304B\u3089\u5272\u308A\u5F53\u3066\u307E\u3059\u3002 -message.installWizard.tooltip.addPrimaryStorage.name=\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C7\u30D0\u30A4\u30B9\u306E\u540D\u524D\u3067\u3059\u3002 -message.installWizard.tooltip.addPrimaryStorage.path=(NFS \u306E\u5834\u5408) \u30B5\u30FC\u30D0\u30FC\u304B\u3089\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3055\u308C\u305F\u30D1\u30B9\u3067\u3059\u3002(SharedMountPoint \u306E\u5834\u5408) \u30D1\u30B9\u3067\u3059\u3002KVM \u3067\u306F\u3053\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u304C\u30DE\u30A6\u30F3\u30C8\u3055\u308C\u308B\u5404\u30DB\u30B9\u30C8\u4E0A\u306E\u30D1\u30B9\u3067\u3059\u3002\u305F\u3068\u3048\u3070\u3001/mnt/primary \u3067\u3059\u3002 -message.installWizard.tooltip.addPrimaryStorage.server=(NFS\u3001iSCSI\u3001\u307E\u305F\u306F PreSetup \u306E\u5834\u5408) \u30B9\u30C8\u30EC\u30FC\u30B8 \u30C7\u30D0\u30A4\u30B9\u306E IP \u30A2\u30C9\u30EC\u30B9\u307E\u305F\u306F DNS \u540D\u3067\u3059\u3002 -message.installWizard.tooltip.addSecondaryStorage.nfsServer=\u30BB\u30AB\u30F3\u30C0\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u30DB\u30B9\u30C8\u3059\u308B NFS \u30B5\u30FC\u30D0\u30FC\u306E IP \u30A2\u30C9\u30EC\u30B9\u3067\u3059\u3002 -message.installWizard.tooltip.addSecondaryStorage.path=\u4E0A\u306B\u6307\u5B9A\u3057\u305F\u30B5\u30FC\u30D0\u30FC\u306B\u5B58\u5728\u3059\u308B\u3001\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3055\u308C\u305F\u30D1\u30B9\u3067\u3059\u3002 -message.installWizard.tooltip.addZone.dns1=\u30BE\u30FC\u30F3\u5185\u306E\u30B2\u30B9\u30C8 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306B\u306F\u3001\u5F8C\u3067\u8FFD\u52A0\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u7D4C\u7531\u3067\u30A2\u30AF\u30BB\u30B9\u3057\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.installWizard.tooltip.addZone.dns2=\u30BE\u30FC\u30F3\u5185\u306E\u30B2\u30B9\u30C8 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306B\u306F\u3001\u5F8C\u3067\u8FFD\u52A0\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u7D4C\u7531\u3067\u30A2\u30AF\u30BB\u30B9\u3057\u307E\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B\u30D1\u30D6\u30EA\u30C3\u30AF DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.installWizard.tooltip.addZone.internaldns1=\u30BE\u30FC\u30F3\u5185\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306F\u3001\u30B7\u30B9\u30C6\u30E0 VM \u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4ECB\u3057\u3066\u30A2\u30AF\u30BB\u30B9\u3055\u308C\u307E\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.installWizard.tooltip.addZone.internaldns2=\u30BE\u30FC\u30F3\u5185\u306E\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u3067\u3059\u3002\u3053\u308C\u3089\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306F\u3001\u30B7\u30B9\u30C6\u30E0 VM \u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4ECB\u3057\u3066\u30A2\u30AF\u30BB\u30B9\u3055\u308C\u307E\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u3053\u3067\u6307\u5B9A\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.installWizard.tooltip.addZone.name=\u30BE\u30FC\u30F3\u306E\u540D\u524D\u3067\u3059\u3002 -message.installWizard.tooltip.configureGuestTraffic.description=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u8AAC\u660E\u3067\u3059\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestEndIp=\u3053\u306E\u30BE\u30FC\u30F3\u306E\u30B2\u30B9\u30C8\u306B\u5272\u308A\u5F53\u3066\u308B\u3053\u3068\u304C\u3067\u304D\u308B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u4F7F\u7528\u3059\u308B NIC \u304C 1 \u3064\u306E\u5834\u5408\u306F\u3001\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30DD\u30C3\u30C9\u306E CIDR \u3068\u540C\u3058 CIDR \u306B\u542B\u307E\u308C\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestGateway=\u30B2\u30B9\u30C8\u306E\u4F7F\u7528\u3059\u308B\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3067\u3059\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestNetmask=\u30B2\u30B9\u30C8\u306E\u4F7F\u7528\u3059\u308B\u30B5\u30D6\u30CD\u30C3\u30C8\u4E0A\u3067\u4F7F\u7528\u3055\u308C\u308B\u30CD\u30C3\u30C8\u30DE\u30B9\u30AF\u3067\u3059\u3002 -message.installWizard.tooltip.configureGuestTraffic.guestStartIp=\u3053\u306E\u30BE\u30FC\u30F3\u306E\u30B2\u30B9\u30C8\u306B\u5272\u308A\u5F53\u3066\u308B\u3053\u3068\u304C\u3067\u304D\u308B IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3067\u3059\u3002\u4F7F\u7528\u3059\u308B NIC \u304C 1 \u3064\u306E\u5834\u5408\u306F\u3001\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u306F\u30DD\u30C3\u30C9\u306E CIDR \u3068\u540C\u3058 CIDR \u306B\u542B\u307E\u308C\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.installWizard.tooltip.configureGuestTraffic.name=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u540D\u524D\u3067\u3059\u3002 -message.instanceWizard.noTemplates=\u4F7F\u7528\u53EF\u80FD\u306A\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u4E92\u63DB\u6027\u306E\u3042\u308B\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u8FFD\u52A0\u3057\u3066\u3001\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9 \u30A6\u30A3\u30B6\u30FC\u30C9\u3092\u518D\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.ip.address.changed=\u304A\u4F7F\u3044\u306E IP \u30A2\u30C9\u30EC\u30B9\u304C\u5909\u66F4\u3055\u308C\u3066\u3044\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002\u4E00\u89A7\u3092\u66F4\u65B0\u3057\u307E\u3059\u304B? \u305D\u306E\u5834\u5408\u306F\u3001\u8A73\u7D30\u30DA\u30A4\u30F3\u304C\u9589\u3058\u308B\u3053\u3068\u306B\u6CE8\u610F\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.iso.desc=\u30C7\u30FC\u30BF\u307E\u305F\u306F OS \u8D77\u52D5\u53EF\u80FD\u30E1\u30C7\u30A3\u30A2\u3092\u542B\u3080\u30C7\u30A3\u30B9\u30AF \u30A4\u30E1\u30FC\u30B8 -message.join.project=\u3053\u308C\u3067\u3001\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306B\u53C2\u52A0\u3057\u307E\u3057\u305F\u3002\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u53C2\u7167\u3059\u308B\u306B\u306F\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30D3\u30E5\u30FC\u306B\u5207\u308A\u66FF\u3048\u3066\u304F\u3060\u3055\u3044\u3002 -message.launch.zone=\u30BE\u30FC\u30F3\u3092\u8D77\u52D5\u3059\u308B\u6E96\u5099\u304C\u3067\u304D\u307E\u3057\u305F\u3002\u6B21\u306E\u624B\u9806\u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 -message.lock.account=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u30ED\u30C3\u30AF\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u3059\u3079\u3066\u306E\u30E6\u30FC\u30B6\u30FC\u304C\u30AF\u30E9\u30A6\u30C9 \u30EA\u30BD\u30FC\u30B9\u3092\u7BA1\u7406\u3067\u304D\u306A\u304F\u306A\u308A\u307E\u3059\u3002\u305D\u306E\u5F8C\u3082\u65E2\u5B58\u306E\u30EA\u30BD\u30FC\u30B9\u306B\u306F\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u3059\u3002 -message.migrate.instance.confirm=\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u79FB\u884C\u5148\u306F\u6B21\u306E\u30DB\u30B9\u30C8\u3067\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.migrate.instance.to.host=\u5225\u306E\u30DB\u30B9\u30C8\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u79FB\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.migrate.instance.to.ps=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u79FB\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.migrate.router.confirm=\u30EB\u30FC\u30BF\u30FC\u306E\u79FB\u884C\u5148\u306F\u6B21\u306E\u30DB\u30B9\u30C8\u3067\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.migrate.systemvm.confirm=\u30B7\u30B9\u30C6\u30E0 VM \u306E\u79FB\u884C\u5148\u306F\u6B21\u306E\u30DB\u30B9\u30C8\u3067\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.migrate.volume=\u5225\u306E\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u306B\u30DC\u30EA\u30E5\u30FC\u30E0\u3092\u79FB\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? +message.download.volume.confirm=\u3053\u306e\u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.download.volume=\u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3059\u308b\u306b\u306f 00000 \u3092\u30af\u30ea\u30c3\u30af\u3057\u307e\u3059 +message.edit.account=\u7de8\u96c6 ("-1" \u306f\u3001\u30ea\u30bd\u30fc\u30b9\u4f5c\u6210\u306e\u91cf\u306b\u5236\u9650\u304c\u306a\u3044\u3053\u3068\u3092\u793a\u3057\u307e\u3059) +message.edit.confirm=[\u4fdd\u5b58] \u3092\u30af\u30ea\u30c3\u30af\u3059\u308b\u524d\u306b\u5909\u66f4\u5185\u5bb9\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.edit.limits=\u6b21\u306e\u30ea\u30bd\u30fc\u30b9\u306b\u5236\u9650\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u300c-1\u300d\u306f\u3001\u30ea\u30bd\u30fc\u30b9\u4f5c\u6210\u306b\u5236\u9650\u304c\u306a\u3044\u3053\u3068\u3092\u793a\u3057\u307e\u3059\u3002 +message.edit.traffic.type=\u3053\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306e\u7a2e\u985e\u306b\u95a2\u9023\u4ed8\u3051\u308b\u30c8\u30e9\u30d5\u30a3\u30c3\u30af \u30e9\u30d9\u30eb\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.enable.account=\u3053\u306e\u30a2\u30ab\u30a6\u30f3\u30c8\u3092\u6709\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.enabled.vpn.ip.sec=IPSec \u4e8b\u524d\u5171\u6709\u30ad\u30fc\: +message.enabled.vpn=\u73fe\u5728\u3001VPN \u30a2\u30af\u30bb\u30b9\u304c\u6709\u52b9\u306b\u306a\u3063\u3066\u3044\u307e\u3059\u3002\u6b21\u306e IP \u30a2\u30c9\u30ec\u30b9\u7d4c\u7531\u3067\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u3059\u3002 +message.enable.user=\u3053\u306e\u30e6\u30fc\u30b6\u30fc\u3092\u6709\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.enable.vpn.access=\u73fe\u5728\u3053\u306e IP \u30a2\u30c9\u30ec\u30b9\u306b\u5bfe\u3059\u308b VPN \u306f\u7121\u52b9\u3067\u3059\u3002VPN \u30a2\u30af\u30bb\u30b9\u3092\u6709\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.enable.vpn=\u3053\u306e IP \u30a2\u30c9\u30ec\u30b9\u306b\u5bfe\u3059\u308b VPN \u30a2\u30af\u30bb\u30b9\u3092\u6709\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.enabling.security.group.provider=\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7 \u30d7\u30ed\u30d0\u30a4\u30c0\u30fc\u3092\u6709\u52b9\u306b\u3057\u3066\u3044\u307e\u3059 +message.enabling.zone=\u30be\u30fc\u30f3\u3092\u6709\u52b9\u306b\u3057\u3066\u3044\u307e\u3059 +message.enter.token=\u96fb\u5b50\u30e1\u30fc\u30eb\u306e\u62db\u5f85\u72b6\u306b\u8a18\u8f09\u3055\u308c\u3066\u3044\u308b\u30c8\u30fc\u30af\u30f3\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.generate.keys=\u3053\u306e\u30e6\u30fc\u30b6\u30fc\u306b\u65b0\u3057\u3044\u30ad\u30fc\u3092\u751f\u6210\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.guest.traffic.in.advanced.zone=\u30b2\u30b9\u30c8 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306f\u3001\u30a8\u30f3\u30c9 \u30e6\u30fc\u30b6\u30fc\u306e\u4eee\u60f3\u30de\u30b7\u30f3\u9593\u306e\u901a\u4fe1\u3067\u3059\u3002\u5404\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u30b2\u30b9\u30c8 \u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3092\u901a\u4fe1\u3059\u308b\u305f\u3081\u306e VLAN ID \u306e\u7bc4\u56f2\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.guest.traffic.in.basic.zone=\u30b2\u30b9\u30c8 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306f\u3001\u30a8\u30f3\u30c9 \u30e6\u30fc\u30b6\u30fc\u306e\u4eee\u60f3\u30de\u30b7\u30f3\u9593\u306e\u901a\u4fe1\u3067\u3059\u3002CloudStack \u3067\u30b2\u30b9\u30c8 VM \u306b\u5272\u308a\u5f53\u3066\u3089\u308c\u308b IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u3053\u306e\u7bc4\u56f2\u304c\u4e88\u7d04\u6e08\u307f\u306e\u30b7\u30b9\u30c6\u30e0 IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u3068\u91cd\u8907\u3057\u306a\u3044\u3088\u3046\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.installWizard.click.retry=\u8d77\u52d5\u3092\u518d\u8a66\u884c\u3059\u308b\u306b\u306f\u30dc\u30bf\u30f3\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.installWizard.copy.whatIsAPod=\u901a\u5e38\u30011 \u3064\u306e\u30dd\u30c3\u30c9\u306f\u5358\u4e00\u306e\u30e9\u30c3\u30af\u3092\u8868\u3057\u307e\u3059\u3002\u540c\u3058\u30dd\u30c3\u30c9\u5185\u306e\u30db\u30b9\u30c8\u306f\u540c\u3058\u30b5\u30d6\u30cd\u30c3\u30c8\u306b\u542b\u307e\u308c\u307e\u3059\u3002

    \u30dd\u30c3\u30c9\u306f CloudStack&\#8482; \u74b0\u5883\u5185\u306e 2 \u756a\u76ee\u306b\u5927\u304d\u306a\u7d44\u7e54\u5358\u4f4d\u3067\u3059\u3002\u30dd\u30c3\u30c9\u306f\u30be\u30fc\u30f3\u306b\u542b\u307e\u308c\u307e\u3059\u3002\u5404\u30be\u30fc\u30f3\u306f 1 \u3064\u4ee5\u4e0a\u306e\u30dd\u30c3\u30c9\u3092\u542b\u3080\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u57fa\u672c\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3067\u306f\u3001\u30be\u30fc\u30f3\u5185\u306e\u30dd\u30c3\u30c9\u306f 1 \u3064\u3067\u3059\u3002 +message.installWizard.copy.whatIsAZone=\u30be\u30fc\u30f3\u306f CloudStack&\#8482; \u74b0\u5883\u5185\u306e\u6700\u5927\u306e\u7d44\u7e54\u5358\u4f4d\u3067\u3059\u30021 \u3064\u306e\u30c7\u30fc\u30bf\u30bb\u30f3\u30bf\u30fc\u5185\u306b\u8907\u6570\u306e\u30be\u30fc\u30f3\u3092\u8a2d\u5b9a\u3067\u304d\u307e\u3059\u304c\u3001\u901a\u5e38\u3001\u30be\u30fc\u30f3\u306f\u5358\u4e00\u306e\u30c7\u30fc\u30bf\u30bb\u30f3\u30bf\u30fc\u306b\u76f8\u5f53\u3057\u307e\u3059\u3002\u30a4\u30f3\u30d5\u30e9\u30b9\u30c8\u30e9\u30af\u30c1\u30e3\u3092\u30be\u30fc\u30f3\u306b\u7d44\u7e54\u5316\u3059\u308b\u3068\u3001\u30be\u30fc\u30f3\u3092\u7269\u7406\u7684\u306b\u5206\u96e2\u3057\u3066\u5197\u9577\u5316\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u305f\u3068\u3048\u3070\u3001\u5404\u30be\u30fc\u30f3\u306b\u96fb\u6e90\u3068\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30a2\u30c3\u30d7\u30ea\u30f3\u30af\u3092\u914d\u5099\u3057\u307e\u3059\u3002\u5fc5\u9808\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u304c\u3001\u30be\u30fc\u30f3\u306f\u9060\u9694\u5730\u306b\u5206\u6563\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002 +message.installWizard.copy.whatIsSecondaryStorage=\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u306f\u30be\u30fc\u30f3\u3068\u95a2\u9023\u4ed8\u3051\u3089\u308c\u3001\u6b21\u306e\u9805\u76ee\u3092\u683c\u7d0d\u3057\u307e\u3059\u3002
    • \u30c6\u30f3\u30d7\u30ec\u30fc\u30c8 - VM \u306e\u8d77\u52d5\u306b\u4f7f\u7528\u3067\u304d\u308b OS \u30a4\u30e1\u30fc\u30b8\u3067\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u306a\u3069\u8ffd\u52a0\u306e\u69cb\u6210\u3092\u542b\u3081\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002
    • ISO \u30a4\u30e1\u30fc\u30b8 - \u8d77\u52d5\u53ef\u80fd\u307e\u305f\u306f\u8d77\u52d5\u4e0d\u53ef\u306e OS \u30a4\u30e1\u30fc\u30b8\u3067\u3059\u3002
    • \u30c7\u30a3\u30b9\u30af \u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8 - VM \u30c7\u30fc\u30bf\u306e\u4fdd\u5b58\u30b3\u30d4\u30fc\u3067\u3059\u3002\u30c7\u30fc\u30bf\u306e\u5fa9\u5143\u307e\u305f\u306f\u65b0\u3057\u3044\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u4f5c\u6210\u306b\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002
    +message.installWizard.tooltip.addCluster.name=\u30af\u30e9\u30b9\u30bf\u30fc\u306e\u540d\u524d\u3067\u3059\u3002CloudStack \u3067\u4f7f\u7528\u3055\u308c\u3066\u3044\u306a\u3044\u3001\u4efb\u610f\u306e\u30c6\u30ad\u30b9\u30c8\u3092\u6307\u5b9a\u3067\u304d\u307e\u3059\u3002 +message.installWizard.tooltip.addHost.hostname=\u30db\u30b9\u30c8\u306e DNS \u540d\u307e\u305f\u306f IP \u30a2\u30c9\u30ec\u30b9\u3067\u3059\u3002 +message.installWizard.tooltip.addHost.password=XenServer \u5074\u3067\u6307\u5b9a\u3057\u305f\u3001\u4e0a\u306e\u30e6\u30fc\u30b6\u30fc\u540d\u306b\u5bfe\u3059\u308b\u30d1\u30b9\u30ef\u30fc\u30c9\u3067\u3059\u3002 +message.installWizard.tooltip.addHost.username=\u901a\u5e38\u306f root \u3067\u3059\u3002 +message.installWizard.tooltip.addPod.name=\u30dd\u30c3\u30c9\u306e\u540d\u524d\u3067\u3059\u3002 +message.installWizard.tooltip.addPod.reservedSystemEndIp=\u3053\u308c\u306f\u3001\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 VM \u304a\u3088\u3073\u30b3\u30f3\u30bd\u30fc\u30eb \u30d7\u30ed\u30ad\u30b7 VM \u3092\u7ba1\u7406\u3059\u308b\u305f\u3081\u306b CloudStack \u3067\u4f7f\u7528\u3059\u308b\u3001\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u5185\u306e IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u3067\u3059\u3002\u3053\u308c\u3089\u306e IP \u30a2\u30c9\u30ec\u30b9\u306f\u30b3\u30f3\u30d4\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0 \u30b5\u30fc\u30d0\u30fc\u3068\u540c\u3058\u30b5\u30d6\u30cd\u30c3\u30c8\u304b\u3089\u5272\u308a\u5f53\u3066\u307e\u3059\u3002 +message.installWizard.tooltip.addPod.reservedSystemGateway=\u3053\u306e\u30dd\u30c3\u30c9\u5185\u306e\u30db\u30b9\u30c8\u306e\u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u3067\u3059\u3002 +message.installWizard.tooltip.addPod.reservedSystemNetmask=\u30b2\u30b9\u30c8\u306e\u4f7f\u7528\u3059\u308b\u30b5\u30d6\u30cd\u30c3\u30c8\u4e0a\u3067\u4f7f\u7528\u3055\u308c\u308b\u30cd\u30c3\u30c8\u30de\u30b9\u30af\u3067\u3059\u3002 +message.installWizard.tooltip.addPod.reservedSystemStartIp=\u3053\u308c\u306f\u3001\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 VM \u304a\u3088\u3073\u30b3\u30f3\u30bd\u30fc\u30eb \u30d7\u30ed\u30ad\u30b7 VM \u3092\u7ba1\u7406\u3059\u308b\u305f\u3081\u306b CloudStack \u3067\u4f7f\u7528\u3059\u308b\u3001\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u5185\u306e IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u3067\u3059\u3002\u3053\u308c\u3089\u306e IP \u30a2\u30c9\u30ec\u30b9\u306f\u30b3\u30f3\u30d4\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0 \u30b5\u30fc\u30d0\u30fc\u3068\u540c\u3058\u30b5\u30d6\u30cd\u30c3\u30c8\u304b\u3089\u5272\u308a\u5f53\u3066\u307e\u3059\u3002 +message.installWizard.tooltip.addPrimaryStorage.name=\u30b9\u30c8\u30ec\u30fc\u30b8 \u30c7\u30d0\u30a4\u30b9\u306e\u540d\u524d\u3067\u3059\u3002 +message.installWizard.tooltip.addPrimaryStorage.path=(NFS \u306e\u5834\u5408) \u30b5\u30fc\u30d0\u30fc\u304b\u3089\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3055\u308c\u305f\u30d1\u30b9\u3067\u3059\u3002(SharedMountPoint \u306e\u5834\u5408) \u30d1\u30b9\u3067\u3059\u3002KVM \u3067\u306f\u3053\u306e\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u304c\u30de\u30a6\u30f3\u30c8\u3055\u308c\u308b\u5404\u30db\u30b9\u30c8\u4e0a\u306e\u30d1\u30b9\u3067\u3059\u3002\u305f\u3068\u3048\u3070\u3001/mnt/primary \u3067\u3059\u3002 +message.installWizard.tooltip.addPrimaryStorage.server=(NFS\u3001iSCSI\u3001\u307e\u305f\u306f PreSetup \u306e\u5834\u5408) \u30b9\u30c8\u30ec\u30fc\u30b8 \u30c7\u30d0\u30a4\u30b9\u306e IP \u30a2\u30c9\u30ec\u30b9\u307e\u305f\u306f DNS \u540d\u3067\u3059\u3002 +message.installWizard.tooltip.addSecondaryStorage.nfsServer=\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u30db\u30b9\u30c8\u3059\u308b NFS \u30b5\u30fc\u30d0\u30fc\u306e IP \u30a2\u30c9\u30ec\u30b9\u3067\u3059\u3002 +message.installWizard.tooltip.addSecondaryStorage.path=\u4e0a\u306b\u6307\u5b9a\u3057\u305f\u30b5\u30fc\u30d0\u30fc\u306b\u5b58\u5728\u3059\u308b\u3001\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3055\u308c\u305f\u30d1\u30b9\u3067\u3059\u3002 +message.installWizard.tooltip.addZone.dns1=\u30be\u30fc\u30f3\u5185\u306e\u30b2\u30b9\u30c8 VM \u3067\u4f7f\u7528\u3059\u308b DNS \u30b5\u30fc\u30d0\u30fc\u3067\u3059\u3002\u3053\u308c\u3089\u306e DNS \u30b5\u30fc\u30d0\u30fc\u306b\u306f\u3001\u5f8c\u3067\u8ffd\u52a0\u3059\u308b\u30d1\u30d6\u30ea\u30c3\u30af \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u7d4c\u7531\u3067\u30a2\u30af\u30bb\u30b9\u3057\u307e\u3059\u3002\u30be\u30fc\u30f3\u306e\u30d1\u30d6\u30ea\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9\u304b\u3089\u3001\u3053\u3053\u3067\u6307\u5b9a\u3059\u308b\u30d1\u30d6\u30ea\u30c3\u30af DNS \u30b5\u30fc\u30d0\u30fc\u306b\u901a\u4fe1\u3067\u304d\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.installWizard.tooltip.addZone.dns2=\u30be\u30fc\u30f3\u5185\u306e\u30b2\u30b9\u30c8 VM \u3067\u4f7f\u7528\u3059\u308b DNS \u30b5\u30fc\u30d0\u30fc\u3067\u3059\u3002\u3053\u308c\u3089\u306e DNS \u30b5\u30fc\u30d0\u30fc\u306b\u306f\u3001\u5f8c\u3067\u8ffd\u52a0\u3059\u308b\u30d1\u30d6\u30ea\u30c3\u30af \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u7d4c\u7531\u3067\u30a2\u30af\u30bb\u30b9\u3057\u307e\u3059\u3002\u30be\u30fc\u30f3\u306e\u30d1\u30d6\u30ea\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9\u304b\u3089\u3001\u3053\u3053\u3067\u6307\u5b9a\u3059\u308b\u30d1\u30d6\u30ea\u30c3\u30af DNS \u30b5\u30fc\u30d0\u30fc\u306b\u901a\u4fe1\u3067\u304d\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.installWizard.tooltip.addZone.internaldns1=\u30be\u30fc\u30f3\u5185\u306e\u30b7\u30b9\u30c6\u30e0 VM \u3067\u4f7f\u7528\u3059\u308b DNS \u30b5\u30fc\u30d0\u30fc\u3067\u3059\u3002\u3053\u308c\u3089\u306e DNS \u30b5\u30fc\u30d0\u30fc\u306f\u3001\u30b7\u30b9\u30c6\u30e0 VM \u306e\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u4ecb\u3057\u3066\u30a2\u30af\u30bb\u30b9\u3055\u308c\u307e\u3059\u3002\u30dd\u30c3\u30c9\u306e\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 IP \u30a2\u30c9\u30ec\u30b9\u304b\u3089\u3001\u3053\u3053\u3067\u6307\u5b9a\u3059\u308b DNS \u30b5\u30fc\u30d0\u30fc\u306b\u901a\u4fe1\u3067\u304d\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.installWizard.tooltip.addZone.internaldns2=\u30be\u30fc\u30f3\u5185\u306e\u30b7\u30b9\u30c6\u30e0 VM \u3067\u4f7f\u7528\u3059\u308b DNS \u30b5\u30fc\u30d0\u30fc\u3067\u3059\u3002\u3053\u308c\u3089\u306e DNS \u30b5\u30fc\u30d0\u30fc\u306f\u3001\u30b7\u30b9\u30c6\u30e0 VM \u306e\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u4ecb\u3057\u3066\u30a2\u30af\u30bb\u30b9\u3055\u308c\u307e\u3059\u3002\u30dd\u30c3\u30c9\u306e\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 IP \u30a2\u30c9\u30ec\u30b9\u304b\u3089\u3001\u3053\u3053\u3067\u6307\u5b9a\u3059\u308b DNS \u30b5\u30fc\u30d0\u30fc\u306b\u901a\u4fe1\u3067\u304d\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.installWizard.tooltip.addZone.name=\u30be\u30fc\u30f3\u306e\u540d\u524d\u3067\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.description=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u8aac\u660e\u3067\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestEndIp=\u3053\u306e\u30be\u30fc\u30f3\u306e\u30b2\u30b9\u30c8\u306b\u5272\u308a\u5f53\u3066\u308b\u3053\u3068\u304c\u3067\u304d\u308b IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u3067\u3059\u3002\u4f7f\u7528\u3059\u308b NIC \u304c 1 \u3064\u306e\u5834\u5408\u306f\u3001\u3053\u308c\u3089\u306e IP \u30a2\u30c9\u30ec\u30b9\u306f\u30dd\u30c3\u30c9\u306e CIDR \u3068\u540c\u3058 CIDR \u306b\u542b\u307e\u308c\u3066\u3044\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestGateway=\u30b2\u30b9\u30c8\u306e\u4f7f\u7528\u3059\u308b\u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u3067\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestNetmask=\u30b2\u30b9\u30c8\u306e\u4f7f\u7528\u3059\u308b\u30b5\u30d6\u30cd\u30c3\u30c8\u4e0a\u3067\u4f7f\u7528\u3055\u308c\u308b\u30cd\u30c3\u30c8\u30de\u30b9\u30af\u3067\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.guestStartIp=\u3053\u306e\u30be\u30fc\u30f3\u306e\u30b2\u30b9\u30c8\u306b\u5272\u308a\u5f53\u3066\u308b\u3053\u3068\u304c\u3067\u304d\u308b IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u3067\u3059\u3002\u4f7f\u7528\u3059\u308b NIC \u304c 1 \u3064\u306e\u5834\u5408\u306f\u3001\u3053\u308c\u3089\u306e IP \u30a2\u30c9\u30ec\u30b9\u306f\u30dd\u30c3\u30c9\u306e CIDR \u3068\u540c\u3058 CIDR \u306b\u542b\u307e\u308c\u3066\u3044\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.installWizard.tooltip.configureGuestTraffic.name=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u540d\u524d\u3067\u3059\u3002 +message.instanceWizard.noTemplates=\u4f7f\u7528\u53ef\u80fd\u306a\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u304c\u3042\u308a\u307e\u305b\u3093\u3002\u4e92\u63db\u6027\u306e\u3042\u308b\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3092\u8ffd\u52a0\u3057\u3066\u3001\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9 \u30a6\u30a3\u30b6\u30fc\u30c9\u3092\u518d\u8d77\u52d5\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.ip.address.changed=\u304a\u4f7f\u3044\u306e IP \u30a2\u30c9\u30ec\u30b9\u304c\u5909\u66f4\u3055\u308c\u3066\u3044\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002\u4e00\u89a7\u3092\u66f4\u65b0\u3057\u307e\u3059\u304b? \u305d\u306e\u5834\u5408\u306f\u3001\u8a73\u7d30\u30da\u30a4\u30f3\u304c\u9589\u3058\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.iso.desc=\u30c7\u30fc\u30bf\u307e\u305f\u306f OS \u8d77\u52d5\u53ef\u80fd\u30e1\u30c7\u30a3\u30a2\u3092\u542b\u3080\u30c7\u30a3\u30b9\u30af \u30a4\u30e1\u30fc\u30b8 +message.join.project=\u3053\u308c\u3067\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306b\u53c2\u52a0\u3057\u307e\u3057\u305f\u3002\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u53c2\u7167\u3059\u308b\u306b\u306f\u30d7\u30ed\u30b8\u30a7\u30af\u30c8 \u30d3\u30e5\u30fc\u306b\u5207\u308a\u66ff\u3048\u3066\u304f\u3060\u3055\u3044\u3002 +message.launch.zone=\u30be\u30fc\u30f3\u3092\u8d77\u52d5\u3059\u308b\u6e96\u5099\u304c\u3067\u304d\u307e\u3057\u305f\u3002\u6b21\u306e\u624b\u9806\u306b\u9032\u3093\u3067\u304f\u3060\u3055\u3044\u3002 +message.lock.account=\u3053\u306e\u30a2\u30ab\u30a6\u30f3\u30c8\u3092\u30ed\u30c3\u30af\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? \u3053\u306e\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u3059\u3079\u3066\u306e\u30e6\u30fc\u30b6\u30fc\u304c\u30af\u30e9\u30a6\u30c9 \u30ea\u30bd\u30fc\u30b9\u3092\u7ba1\u7406\u3067\u304d\u306a\u304f\u306a\u308a\u307e\u3059\u3002\u305d\u306e\u5f8c\u3082\u65e2\u5b58\u306e\u30ea\u30bd\u30fc\u30b9\u306b\u306f\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u3059\u3002 +message.migrate.instance.confirm=\u4eee\u60f3\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u79fb\u884c\u5148\u306f\u6b21\u306e\u30db\u30b9\u30c8\u3067\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.migrate.instance.to.host=\u5225\u306e\u30db\u30b9\u30c8\u306b\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u79fb\u884c\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.migrate.instance.to.ps=\u5225\u306e\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u306b\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u79fb\u884c\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.migrate.router.confirm=\u30eb\u30fc\u30bf\u30fc\u306e\u79fb\u884c\u5148\u306f\u6b21\u306e\u30db\u30b9\u30c8\u3067\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.migrate.systemvm.confirm=\u30b7\u30b9\u30c6\u30e0 VM \u306e\u79fb\u884c\u5148\u306f\u6b21\u306e\u30db\u30b9\u30c8\u3067\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.migrate.volume=\u5225\u306e\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u306b\u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u79fb\u884c\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? message.new.user=\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0081\u00ab\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0083\u00a6\u00e3\u0083\u00bc\u00e3\u0082\u00b6\u00e3\u0083\u00bc\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e8\u00a8\u00ad\u00e5\u00ae\u009a\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084 -message.no.network.support.configuration.not.true=\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u304C\u6709\u52B9\u306A\u30BE\u30FC\u30F3\u304C\u7121\u3044\u305F\u3081\u3001\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6A5F\u80FD\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u624B\u9806 5. \u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 -message.no.network.support=\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u3068\u3057\u3066 vSphere \u3092\u9078\u629E\u3057\u307E\u3057\u305F\u304C\u3001\u3053\u306E\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u306B\u8FFD\u52A0\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u6A5F\u80FD\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u624B\u9806 5. \u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 -message.no.projects.adminOnly=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u304C\u3042\u308A\u307E\u305B\u3093\u3002
    \u7BA1\u7406\u8005\u306B\u65B0\u3057\u3044\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u4F5C\u6210\u3092\u4F9D\u983C\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.no.projects=\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u304C\u3042\u308A\u307E\u305B\u3093\u3002
    \u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30BB\u30AF\u30B7\u30E7\u30F3\u304B\u3089\u65B0\u3057\u3044\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u4F5C\u6210\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.number.clusters=

    \u30AF\u30E9\u30B9\u30BF\u30FC\u6570

    -message.number.hosts=

    \u30DB\u30B9\u30C8\u6570

    -message.number.pods=

    \u30DD\u30C3\u30C9\u6570

    -message.number.storage=

    \u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8 \u30DC\u30EA\u30E5\u30FC\u30E0\u6570

    -message.number.zones=

    \u30BE\u30FC\u30F3\u6570

    -message.pending.projects.1=\u4FDD\u7559\u4E2D\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u62DB\u5F85\u72B6\u304C\u3042\u308A\u307E\u3059\u3002 -message.pending.projects.2=\u8868\u793A\u3059\u308B\u306B\u306F\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8 \u30BB\u30AF\u30B7\u30E7\u30F3\u306B\u79FB\u52D5\u3057\u3066\u3001\u4E00\u89A7\u304B\u3089\u62DB\u5F85\u72B6\u3092\u9078\u629E\u3057\u307E\u3059\u3002 -message.please.add.at.lease.one.traffic.range=\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7BC4\u56F2\u3092\u8FFD\u52A0\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.please.proceed=\u6B21\u306E\u624B\u9806\u306B\u9032\u3093\u3067\u304F\u3060\u3055\u3044\u3002 -message.please.select.a.configuration.for.your.zone=\u30BE\u30FC\u30F3\u306E\u69CB\u6210\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.please.select.a.different.public.and.management.network.before.removing=\u524A\u9664\u306E\u524D\u306B\u7570\u306A\u308B\u30D1\u30D6\u30EA\u30C3\u30AF\u304A\u3088\u3073\u7BA1\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.please.select.networks=\u4EEE\u60F3\u30DE\u30B7\u30F3\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.please.wait.while.zone.is.being.created=\u30BE\u30FC\u30F3\u304C\u4F5C\u6210\u3055\u308C\u308B\u307E\u3067\u3057\u3070\u3089\u304F\u304A\u5F85\u3061\u304F\u3060\u3055\u3044... -message.project.invite.sent=\u30E6\u30FC\u30B6\u30FC\u306B\u62DB\u5F85\u72B6\u304C\u9001\u4FE1\u3055\u308C\u307E\u3057\u305F\u3002\u30E6\u30FC\u30B6\u30FC\u304C\u62DB\u5F85\u3092\u627F\u8AFE\u3059\u308B\u3068\u3001\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306B\u8FFD\u52A0\u3055\u308C\u307E\u3059\u3002 -message.public.traffic.in.advanced.zone=\u30AF\u30E9\u30A6\u30C9\u5185\u306E VM \u304C\u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8\u306B\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u3068\u3001\u30D1\u30D6\u30EA\u30C3\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u304C\u751F\u6210\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u305F\u3081\u306B\u3001\u4E00\u822C\u306B\u30A2\u30AF\u30BB\u30B9\u53EF\u80FD\u306A IP \u30A2\u30C9\u30EC\u30B9\u3092\u5272\u308A\u5F53\u3066\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306F CloudStack \u306E\u30E6\u30FC\u30B6\u30FC \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4F7F\u7528\u3057\u3066\u3053\u308C\u3089\u306E IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3057\u3001\u30B2\u30B9\u30C8 \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3068\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u9593\u306B NAT \u3092\u5B9F\u88C5\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002

    \u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u305F\u3081\u306B\u3001\u5C11\u306A\u304F\u3068\u3082 1 \u3064 IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.public.traffic.in.basic.zone=\u30AF\u30E9\u30A6\u30C9\u5185\u306E VM \u304C\u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8\u306B\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u304B\u30A4\u30F3\u30BF\u30FC\u30CD\u30C3\u30C8\u7D4C\u7531\u3067\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8\u306B\u30B5\u30FC\u30D3\u30B9\u3092\u63D0\u4F9B\u3059\u308B\u3068\u3001\u30D1\u30D6\u30EA\u30C3\u30AF \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u304C\u751F\u6210\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u305F\u3081\u306B\u3001\u4E00\u822C\u306B\u30A2\u30AF\u30BB\u30B9\u53EF\u80FD\u306A IP \u30A2\u30C9\u30EC\u30B9\u3092\u5272\u308A\u5F53\u3066\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u4F5C\u6210\u3059\u308B\u3068\u3001\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u307B\u304B\u306B\u3053\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u306E\u7BC4\u56F2\u304B\u3089\u30A2\u30C9\u30EC\u30B9\u304C 1 \u3064\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306B\u5272\u308A\u5F53\u3066\u3089\u308C\u307E\u3059\u3002\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u3068\u30B2\u30B9\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u306E\u9593\u306B\u3001\u9759\u7684\u306A 1 \u5BFE 1 \u306E NAT \u304C\u81EA\u52D5\u7684\u306B\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3055\u308C\u307E\u3059\u3002\u30A8\u30F3\u30C9 \u30E6\u30FC\u30B6\u30FC\u306F CloudStack \u306E\u30E6\u30FC\u30B6\u30FC \u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30A4\u30B9\u3092\u4F7F\u7528\u3057\u3066\u8FFD\u52A0\u306E IP \u30A2\u30C9\u30EC\u30B9\u3092\u53D6\u5F97\u3057\u3001\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3068\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u306E\u9593\u306B\u9759\u7684 NAT \u3092\u5B9F\u88C5\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002 -message.remove.vpc=VPC \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.remove.vpn.access=\u6B21\u306E\u30E6\u30FC\u30B6\u30FC\u304B\u3089 VPN \u30A2\u30AF\u30BB\u30B9\u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.reset.password.warning.notPasswordEnabled=\u3053\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306F\u3001\u30D1\u30B9\u30EF\u30FC\u30C9\u7BA1\u7406\u3092\u6709\u52B9\u306B\u305B\u305A\u306B\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F\u3002 -message.reset.password.warning.notStopped=\u73FE\u5728\u306E\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u5909\u66F4\u3059\u308B\u524D\u306B\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u505C\u6B62\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.reset.VPN.connection=VPN \u63A5\u7D9A\u3092\u30EA\u30BB\u30C3\u30C8\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.restart.mgmt.server=\u65B0\u3057\u3044\u8A2D\u5B9A\u3092\u6709\u52B9\u306B\u3059\u308B\u305F\u3081\u306B\u3001\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.restart.mgmt.usage.server=\u65B0\u3057\u3044\u8A2D\u5B9A\u3092\u6709\u52B9\u306B\u3059\u308B\u305F\u3081\u306B\u3001\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3068\u4F7F\u7528\u72B6\u6CC1\u6E2C\u5B9A\u30B5\u30FC\u30D0\u30FC\u3092\u518D\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.restart.network=\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3067\u63D0\u4F9B\u3059\u308B\u3059\u3079\u3066\u306E\u30B5\u30FC\u30D3\u30B9\u304C\u4E2D\u65AD\u3055\u308C\u307E\u3059\u3002\u3053\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.restart.vpc=VPC \u3092\u518D\u8D77\u52D5\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.security.group.usage=(\u8A72\u5F53\u3059\u308B\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u3059\u3079\u3066\u9078\u629E\u3059\u308B\u306B\u306F\u3001Ctrl \u30AD\u30FC\u3092\u62BC\u3057\u306A\u304C\u3089\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044) -message.select.a.zone=\u30BE\u30FC\u30F3\u306F\u901A\u5E38\u3001\u5358\u4E00\u306E\u30C7\u30FC\u30BF\u30BB\u30F3\u30BF\u30FC\u306B\u76F8\u5F53\u3057\u307E\u3059\u3002\u8907\u6570\u306E\u30BE\u30FC\u30F3\u3092\u8A2D\u5B9A\u3057\u3001\u7269\u7406\u7684\u306B\u5206\u96E2\u3057\u3066\u5197\u9577\u6027\u3092\u6301\u305F\u305B\u308B\u3053\u3068\u306B\u3088\u308A\u3001\u30AF\u30E9\u30A6\u30C9\u306E\u4FE1\u983C\u6027\u3092\u9AD8\u3081\u307E\u3059\u3002 -message.select.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.select.iso=\u65B0\u3057\u3044\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E ISO \u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.select.item=\u9805\u76EE\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.select.security.groups=\u65B0\u3057\u3044\u4EEE\u60F3\u30DE\u30B7\u30F3\u306E\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3 \u30B0\u30EB\u30FC\u30D7\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.select.template=\u65B0\u3057\u3044\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.setup.physical.network.during.zone.creation.basic=\u57FA\u672C\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3059\u308B\u3068\u304D\u306F\u3001\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u4E0A\u306E NIC \u306B\u5BFE\u5FDC\u3059\u308B 1 \u3064\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3067\u304D\u307E\u3059\u3002\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306F\u3044\u304F\u3064\u304B\u306E\u7A2E\u985E\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u4F1D\u9001\u3057\u307E\u3059\u3002

    \u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306B\u307B\u304B\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u3092\u30C9\u30E9\u30C3\u30B0 \u30A2\u30F3\u30C9 \u30C9\u30ED\u30C3\u30D7\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002 -message.setup.physical.network.during.zone.creation=\u62E1\u5F35\u30BE\u30FC\u30F3\u3092\u8FFD\u52A0\u3059\u308B\u3068\u304D\u306F\u30011 \u3064\u4EE5\u4E0A\u306E\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u5404\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306F\u30CF\u30A4\u30D1\u30FC\u30D0\u30A4\u30B6\u30FC\u4E0A\u306E 1 \u3064\u306E NIC \u306B\u5BFE\u5FDC\u3057\u307E\u3059\u3002\u5404\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3067\u306F\u3001\u7D44\u307F\u5408\u308F\u305B\u306B\u5236\u9650\u304C\u3042\u308A\u307E\u3059\u304C\u30011 \u3064\u4EE5\u4E0A\u306E\u7A2E\u985E\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u901A\u4FE1\u3067\u304D\u307E\u3059\u3002

    \u5404\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306B\u5BFE\u3057\u3066\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u306E\u7A2E\u985E\u3092\u30C9\u30E9\u30C3\u30B0 \u30A2\u30F3\u30C9 \u30C9\u30ED\u30C3\u30D7\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.setup.successful=\u30AF\u30E9\u30A6\u30C9\u304C\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3055\u308C\u307E\u3057\u305F\u3002 -message.snapshot.schedule=\u6B21\u306E\u30AA\u30D7\u30B7\u30E7\u30F3\u304B\u3089\u9078\u629E\u3057\u3066\u30DD\u30EA\u30B7\u30FC\u306E\u57FA\u672C\u8A2D\u5B9A\u3092\u9069\u7528\u3059\u308B\u3053\u3068\u306B\u3088\u308A\u3001\u5B9A\u671F\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8\u306E\u30B9\u30B1\u30B8\u30E5\u30FC\u30EB\u3092\u30BB\u30C3\u30C8\u30A2\u30C3\u30D7\u3067\u304D\u307E\u3059\u3002 -message.specify.url=URL \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044 -message.step.1.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u307E\u305F\u306F ISO \u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 -message.step.1.desc=\u65B0\u3057\u3044\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u7528\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002ISO \u3092\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3067\u304D\u308B\u7A7A\u767D\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u9078\u629E\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u3002 -message.step.2.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30B5\u30FC\u30D3\u30B9 \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +message.no.network.support.configuration.not.true=\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7\u304c\u6709\u52b9\u306a\u30be\u30fc\u30f3\u304c\u7121\u3044\u305f\u3081\u3001\u8ffd\u52a0\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u6a5f\u80fd\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u624b\u9806 5. \u306b\u9032\u3093\u3067\u304f\u3060\u3055\u3044\u3002 +message.no.network.support=\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u3068\u3057\u3066 vSphere \u3092\u9078\u629e\u3057\u307e\u3057\u305f\u304c\u3001\u3053\u306e\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u306b\u8ffd\u52a0\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u6a5f\u80fd\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u624b\u9806 5. \u306b\u9032\u3093\u3067\u304f\u3060\u3055\u3044\u3002 +message.no.projects.adminOnly=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u304c\u3042\u308a\u307e\u305b\u3093\u3002
    \u7ba1\u7406\u8005\u306b\u65b0\u3057\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u4f5c\u6210\u3092\u4f9d\u983c\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.no.projects=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u304c\u3042\u308a\u307e\u305b\u3093\u3002
    \u30d7\u30ed\u30b8\u30a7\u30af\u30c8 \u30bb\u30af\u30b7\u30e7\u30f3\u304b\u3089\u65b0\u3057\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u6210\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.number.clusters=

    \u30af\u30e9\u30b9\u30bf\u30fc\u6570

    +message.number.hosts=

    \u30db\u30b9\u30c8\u6570

    +message.number.pods=

    \u30dd\u30c3\u30c9\u6570

    +message.number.storage=

    \u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 \u30dc\u30ea\u30e5\u30fc\u30e0\u6570

    +message.number.zones=

    \u30be\u30fc\u30f3\u6570

    +message.pending.projects.1=\u4fdd\u7559\u4e2d\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u62db\u5f85\u72b6\u304c\u3042\u308a\u307e\u3059\u3002 +message.pending.projects.2=\u8868\u793a\u3059\u308b\u306b\u306f\u30d7\u30ed\u30b8\u30a7\u30af\u30c8 \u30bb\u30af\u30b7\u30e7\u30f3\u306b\u79fb\u52d5\u3057\u3066\u3001\u4e00\u89a7\u304b\u3089\u62db\u5f85\u72b6\u3092\u9078\u629e\u3057\u307e\u3059\u3002 +message.please.add.at.lease.one.traffic.range=\u5c11\u306a\u304f\u3068\u3082 1 \u3064\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306e\u7bc4\u56f2\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.please.proceed=\u6b21\u306e\u624b\u9806\u306b\u9032\u3093\u3067\u304f\u3060\u3055\u3044\u3002 +message.please.select.a.configuration.for.your.zone=\u30be\u30fc\u30f3\u306e\u69cb\u6210\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.please.select.a.different.public.and.management.network.before.removing=\u524a\u9664\u306e\u524d\u306b\u7570\u306a\u308b\u30d1\u30d6\u30ea\u30c3\u30af\u304a\u3088\u3073\u7ba1\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.please.select.networks=\u4eee\u60f3\u30de\u30b7\u30f3\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.please.wait.while.zone.is.being.created=\u30be\u30fc\u30f3\u304c\u4f5c\u6210\u3055\u308c\u308b\u307e\u3067\u3057\u3070\u3089\u304f\u304a\u5f85\u3061\u304f\u3060\u3055\u3044... +message.project.invite.sent=\u30e6\u30fc\u30b6\u30fc\u306b\u62db\u5f85\u72b6\u304c\u9001\u4fe1\u3055\u308c\u307e\u3057\u305f\u3002\u30e6\u30fc\u30b6\u30fc\u304c\u62db\u5f85\u3092\u627f\u8afe\u3059\u308b\u3068\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306b\u8ffd\u52a0\u3055\u308c\u307e\u3059\u3002 +message.public.traffic.in.advanced.zone=\u30af\u30e9\u30a6\u30c9\u5185\u306e VM \u304c\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u306b\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3068\u3001\u30d1\u30d6\u30ea\u30c3\u30af \u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u304c\u751f\u6210\u3055\u308c\u307e\u3059\u3002\u3053\u306e\u305f\u3081\u306b\u3001\u4e00\u822c\u306b\u30a2\u30af\u30bb\u30b9\u53ef\u80fd\u306a IP \u30a2\u30c9\u30ec\u30b9\u3092\u5272\u308a\u5f53\u3066\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u30a8\u30f3\u30c9 \u30e6\u30fc\u30b6\u30fc\u306f CloudStack \u306e\u30e6\u30fc\u30b6\u30fc \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u4f7f\u7528\u3057\u3066\u3053\u308c\u3089\u306e IP \u30a2\u30c9\u30ec\u30b9\u3092\u53d6\u5f97\u3057\u3001\u30b2\u30b9\u30c8 \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3068\u30d1\u30d6\u30ea\u30c3\u30af \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u9593\u306b NAT \u3092\u5b9f\u88c5\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002

    \u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8 \u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306e\u305f\u3081\u306b\u3001\u5c11\u306a\u304f\u3068\u3082 1 \u3064 IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.public.traffic.in.basic.zone=\u30af\u30e9\u30a6\u30c9\u5185\u306e VM \u304c\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u306b\u30a2\u30af\u30bb\u30b9\u3059\u308b\u304b\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u7d4c\u7531\u3067\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306b\u30b5\u30fc\u30d3\u30b9\u3092\u63d0\u4f9b\u3059\u308b\u3068\u3001\u30d1\u30d6\u30ea\u30c3\u30af \u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u304c\u751f\u6210\u3055\u308c\u307e\u3059\u3002\u3053\u306e\u305f\u3081\u306b\u3001\u4e00\u822c\u306b\u30a2\u30af\u30bb\u30b9\u53ef\u80fd\u306a IP \u30a2\u30c9\u30ec\u30b9\u3092\u5272\u308a\u5f53\u3066\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u4f5c\u6210\u3059\u308b\u3068\u3001\u30b2\u30b9\u30c8 IP \u30a2\u30c9\u30ec\u30b9\u306e\u307b\u304b\u306b\u3053\u306e\u30d1\u30d6\u30ea\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u304b\u3089\u30a2\u30c9\u30ec\u30b9\u304c 1 \u3064\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306b\u5272\u308a\u5f53\u3066\u3089\u308c\u307e\u3059\u3002\u30d1\u30d6\u30ea\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9\u3068\u30b2\u30b9\u30c8 IP \u30a2\u30c9\u30ec\u30b9\u306e\u9593\u306b\u3001\u9759\u7684\u306a 1 \u5bfe 1 \u306e NAT \u304c\u81ea\u52d5\u7684\u306b\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u3055\u308c\u307e\u3059\u3002\u30a8\u30f3\u30c9 \u30e6\u30fc\u30b6\u30fc\u306f CloudStack \u306e\u30e6\u30fc\u30b6\u30fc \u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u3092\u4f7f\u7528\u3057\u3066\u8ffd\u52a0\u306e IP \u30a2\u30c9\u30ec\u30b9\u3092\u53d6\u5f97\u3057\u3001\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3068\u30d1\u30d6\u30ea\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9\u306e\u9593\u306b\u9759\u7684 NAT \u3092\u5b9f\u88c5\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002 +message.remove.vpc=VPC \u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.remove.vpn.access=\u6b21\u306e\u30e6\u30fc\u30b6\u30fc\u304b\u3089 VPN \u30a2\u30af\u30bb\u30b9\u3092\u524a\u9664\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.reset.password.warning.notPasswordEnabled=\u3053\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306f\u3001\u30d1\u30b9\u30ef\u30fc\u30c9\u7ba1\u7406\u3092\u6709\u52b9\u306b\u305b\u305a\u306b\u4f5c\u6210\u3055\u308c\u307e\u3057\u305f\u3002 +message.reset.password.warning.notStopped=\u73fe\u5728\u306e\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u5909\u66f4\u3059\u308b\u524d\u306b\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u505c\u6b62\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.reset.VPN.connection=VPN \u63a5\u7d9a\u3092\u30ea\u30bb\u30c3\u30c8\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.restart.mgmt.server=\u65b0\u3057\u3044\u8a2d\u5b9a\u3092\u6709\u52b9\u306b\u3059\u308b\u305f\u3081\u306b\u3001\u7ba1\u7406\u30b5\u30fc\u30d0\u30fc\u3092\u518d\u8d77\u52d5\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.restart.mgmt.usage.server=\u65b0\u3057\u3044\u8a2d\u5b9a\u3092\u6709\u52b9\u306b\u3059\u308b\u305f\u3081\u306b\u3001\u7ba1\u7406\u30b5\u30fc\u30d0\u30fc\u3068\u4f7f\u7528\u72b6\u6cc1\u6e2c\u5b9a\u30b5\u30fc\u30d0\u30fc\u3092\u518d\u8d77\u52d5\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.restart.network=\u3053\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3067\u63d0\u4f9b\u3059\u308b\u3059\u3079\u3066\u306e\u30b5\u30fc\u30d3\u30b9\u304c\u4e2d\u65ad\u3055\u308c\u307e\u3059\u3002\u3053\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u518d\u8d77\u52d5\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.restart.vpc=VPC \u3092\u518d\u8d77\u52d5\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.security.group.usage=(\u8a72\u5f53\u3059\u308b\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7\u3092\u3059\u3079\u3066\u9078\u629e\u3059\u308b\u306b\u306f\u3001Ctrl \u30ad\u30fc\u3092\u62bc\u3057\u306a\u304c\u3089\u30af\u30ea\u30c3\u30af\u3057\u3066\u304f\u3060\u3055\u3044) +message.select.a.zone=\u30be\u30fc\u30f3\u306f\u901a\u5e38\u3001\u5358\u4e00\u306e\u30c7\u30fc\u30bf\u30bb\u30f3\u30bf\u30fc\u306b\u76f8\u5f53\u3057\u307e\u3059\u3002\u8907\u6570\u306e\u30be\u30fc\u30f3\u3092\u8a2d\u5b9a\u3057\u3001\u7269\u7406\u7684\u306b\u5206\u96e2\u3057\u3066\u5197\u9577\u6027\u3092\u6301\u305f\u305b\u308b\u3053\u3068\u306b\u3088\u308a\u3001\u30af\u30e9\u30a6\u30c9\u306e\u4fe1\u983c\u6027\u3092\u9ad8\u3081\u307e\u3059\u3002 +message.select.instance=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.select.iso=\u65b0\u3057\u3044\u4eee\u60f3\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e ISO \u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.select.item=\u9805\u76ee\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.select.security.groups=\u65b0\u3057\u3044\u4eee\u60f3\u30de\u30b7\u30f3\u306e\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.select.template=\u65b0\u3057\u3044\u4eee\u60f3\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.setup.physical.network.during.zone.creation.basic=\u57fa\u672c\u30be\u30fc\u30f3\u3092\u8ffd\u52a0\u3059\u308b\u3068\u304d\u306f\u3001\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u4e0a\u306e NIC \u306b\u5bfe\u5fdc\u3059\u308b 1 \u3064\u306e\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u3067\u304d\u307e\u3059\u3002\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306f\u3044\u304f\u3064\u304b\u306e\u7a2e\u985e\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3092\u4f1d\u9001\u3057\u307e\u3059\u3002

    \u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306b\u307b\u304b\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306e\u7a2e\u985e\u3092\u30c9\u30e9\u30c3\u30b0 \u30a2\u30f3\u30c9 \u30c9\u30ed\u30c3\u30d7\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002 +message.setup.physical.network.during.zone.creation=\u62e1\u5f35\u30be\u30fc\u30f3\u3092\u8ffd\u52a0\u3059\u308b\u3068\u304d\u306f\u30011 \u3064\u4ee5\u4e0a\u306e\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u5404\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306f\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u4e0a\u306e 1 \u3064\u306e NIC \u306b\u5bfe\u5fdc\u3057\u307e\u3059\u3002\u5404\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3067\u306f\u3001\u7d44\u307f\u5408\u308f\u305b\u306b\u5236\u9650\u304c\u3042\u308a\u307e\u3059\u304c\u30011 \u3064\u4ee5\u4e0a\u306e\u7a2e\u985e\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3092\u901a\u4fe1\u3067\u304d\u307e\u3059\u3002

    \u5404\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306b\u5bfe\u3057\u3066\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306e\u7a2e\u985e\u3092\u30c9\u30e9\u30c3\u30b0 \u30a2\u30f3\u30c9 \u30c9\u30ed\u30c3\u30d7\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.setup.successful=\u30af\u30e9\u30a6\u30c9\u304c\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u3055\u308c\u307e\u3057\u305f\u3002 +message.snapshot.schedule=\u6b21\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u304b\u3089\u9078\u629e\u3057\u3066\u30dd\u30ea\u30b7\u30fc\u306e\u57fa\u672c\u8a2d\u5b9a\u3092\u9069\u7528\u3059\u308b\u3053\u3068\u306b\u3088\u308a\u3001\u5b9a\u671f\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u306e\u30b9\u30b1\u30b8\u30e5\u30fc\u30eb\u3092\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u3067\u304d\u307e\u3059\u3002 +message.specify.url=URL \u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044 +message.step.1.continue=\u7d9a\u884c\u3059\u308b\u306b\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u307e\u305f\u306f ISO \u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044 +message.step.1.desc=\u65b0\u3057\u3044\u4eee\u60f3\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u7528\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002ISO \u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3067\u304d\u308b\u7a7a\u767d\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3092\u9078\u629e\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u3002 +message.step.2.continue=\u7d9a\u884c\u3059\u308b\u306b\u306f\u30b5\u30fc\u30d3\u30b9 \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044 message.step.2.desc= -message.step.3.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30C7\u30A3\u30B9\u30AF \u30AA\u30D5\u30A1\u30EA\u30F3\u30B0\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 +message.step.3.continue=\u7d9a\u884c\u3059\u308b\u306b\u306f\u30c7\u30a3\u30b9\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044 message.step.3.desc= -message.step.4.continue=\u7D9A\u884C\u3059\u308B\u306B\u306F\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044 -message.step.4.desc=\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u304C\u63A5\u7D9A\u3059\u308B\u30D7\u30E9\u30A4\u30DE\u30EA \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.storage.traffic=\u30DB\u30B9\u30C8\u3084 CloudStack \u30B7\u30B9\u30C6\u30E0 VM \u306A\u3069\u3001\u7BA1\u7406\u30B5\u30FC\u30D0\u30FC\u3068\u901A\u4FE1\u3059\u308B CloudStack \u306E\u5185\u90E8\u30EA\u30BD\u30FC\u30B9\u9593\u306E\u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3067\u3059\u3002\u3053\u3053\u3067\u30B9\u30C8\u30EC\u30FC\u30B8 \u30C8\u30E9\u30D5\u30A3\u30C3\u30AF\u3092\u69CB\u6210\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.suspend.project=\u3053\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u4E00\u6642\u505C\u6B62\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.template.desc=VM \u306E\u8D77\u52D5\u306B\u4F7F\u7528\u3067\u304D\u308B OS \u30A4\u30E1\u30FC\u30B8 -message.tooltip.dns.1=\u30BE\u30FC\u30F3\u5185\u306E VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.tooltip.dns.2=\u30BE\u30FC\u30F3\u5185\u306E VM \u3067\u4F7F\u7528\u3059\u308B 2 \u756A\u76EE\u306E DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30BE\u30FC\u30F3\u306E\u30D1\u30D6\u30EA\u30C3\u30AF IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.tooltip.internal.dns.1=\u30BE\u30FC\u30F3\u5185\u306E CloudStack \u5185\u90E8\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.tooltip.internal.dns.2=\u30BE\u30FC\u30F3\u5185\u306E CloudStack \u5185\u90E8\u30B7\u30B9\u30C6\u30E0 VM \u3067\u4F7F\u7528\u3059\u308B DNS \u30B5\u30FC\u30D0\u30FC\u306E\u540D\u524D\u3067\u3059\u3002\u30DD\u30C3\u30C9\u306E\u30D7\u30E9\u30A4\u30D9\u30FC\u30C8 IP \u30A2\u30C9\u30EC\u30B9\u304B\u3089\u3001\u3053\u306E\u30B5\u30FC\u30D0\u30FC\u306B\u901A\u4FE1\u3067\u304D\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.tooltip.network.domain=DNS \u30B5\u30D5\u30A3\u30C3\u30AF\u30B9\u3067\u3059\u3002\u3053\u306E\u30B5\u30D5\u30A3\u30C3\u30AF\u30B9\u304B\u3089\u30B2\u30B9\u30C8 VM \u3067\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u306E\u30AB\u30B9\u30BF\u30E0 \u30C9\u30E1\u30A4\u30F3\u540D\u304C\u4F5C\u6210\u3055\u308C\u307E\u3059\u3002 -message.tooltip.pod.name=\u3053\u306E\u30DD\u30C3\u30C9\u306E\u540D\u524D\u3067\u3059\u3002 -message.tooltip.reserved.system.gateway=\u30DD\u30C3\u30C9\u5185\u306E\u30DB\u30B9\u30C8\u306E\u30B2\u30FC\u30C8\u30A6\u30A7\u30A4\u3067\u3059\u3002 -message.tooltip.reserved.system.netmask=\u30DD\u30C3\u30C9\u306E\u30B5\u30D6\u30CD\u30C3\u30C8\u3092\u5B9A\u7FA9\u3059\u308B\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9\u3067\u3059\u3002CIDR \u8868\u8A18\u3092\u4F7F\u7528\u3057\u307E\u3059\u3002 -message.tooltip.zone.name=\u30BE\u30FC\u30F3\u306E\u540D\u524D\u3067\u3059\u3002 -message.update.os.preference=\u3053\u306E\u30DB\u30B9\u30C8\u306E OS \u57FA\u672C\u8A2D\u5B9A\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u540C\u69D8\u306E\u57FA\u672C\u8A2D\u5B9A\u3092\u6301\u3064\u3059\u3079\u3066\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306F\u3001\u5225\u306E\u30DB\u30B9\u30C8\u3092\u9078\u629E\u3059\u308B\u524D\u306B\u307E\u305A\u3053\u306E\u30DB\u30B9\u30C8\u306B\u5272\u308A\u5F53\u3066\u3089\u308C\u307E\u3059\u3002 -message.update.resource.count=\u3053\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u30EA\u30BD\u30FC\u30B9\u6570\u3092\u66F4\u65B0\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.update.ssl=\u5404\u30B3\u30F3\u30BD\u30FC\u30EB \u30D7\u30ED\u30AD\u30B7\u306E\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3067\u66F4\u65B0\u3059\u308B\u3001X.509 \u6E96\u62E0\u306E\u65B0\u3057\u3044 SSL \u8A3C\u660E\u66F8\u3092\u9001\u4FE1\u3057\u3066\u304F\u3060\u3055\u3044\: -message.validate.instance.name=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u540D\u306F 63 \u6587\u5B57\u4EE5\u5185\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002ASCII \u6587\u5B57\u306E a\uFF5Ez\u3001A\uFF5EZ\u3001\u6570\u5B57\u306E 0\uFF5E9\u3001\u304A\u3088\u3073\u30CF\u30A4\u30D5\u30F3\u306E\u307F\u3092\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002\u6587\u5B57\u3067\u59CB\u307E\u308A\u3001\u6587\u5B57\u307E\u305F\u306F\u6570\u5B57\u3067\u7D42\u308F\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002 -message.virtual.network.desc=\u30A2\u30AB\u30A6\u30F3\u30C8\u306E\u5C02\u7528\u4EEE\u60F3\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3067\u3059\u3002\u30D6\u30ED\u30FC\u30C9\u30AD\u30E3\u30B9\u30C8 \u30C9\u30E1\u30A4\u30F3\u306F VLAN \u5185\u306B\u914D\u7F6E\u3055\u308C\u3001\u30D1\u30D6\u30EA\u30C3\u30AF \u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3078\u306E\u30A2\u30AF\u30BB\u30B9\u306F\u3059\u3079\u3066\u4EEE\u60F3\u30EB\u30FC\u30BF\u30FC\u306B\u3088\u3063\u3066\u30EB\u30FC\u30C6\u30A3\u30F3\u30B0\u3055\u308C\u307E\u3059\u3002 -message.vm.create.template.confirm=\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3059\u308B\u3068 VM \u304C\u81EA\u52D5\u7684\u306B\u518D\u8D77\u52D5\u3055\u308C\u307E\u3059\u3002 -message.vm.review.launch=\u6B21\u306E\u60C5\u5831\u3092\u53C2\u7167\u3057\u3066\u3001\u4EEE\u60F3\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u6B63\u3057\u304F\u8A2D\u5B9A\u3057\u305F\u3053\u3068\u3092\u78BA\u8A8D\u3057\u3066\u304B\u3089\u8D77\u52D5\u3057\u3066\u304F\u3060\u3055\u3044\u3002 -message.volume.create.template.confirm=\u3053\u306E\u30C7\u30A3\u30B9\u30AF \u30DC\u30EA\u30E5\u30FC\u30E0\u306E\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u3092\u4F5C\u6210\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? \u30DC\u30EA\u30E5\u30FC\u30E0 \u30B5\u30A4\u30BA\u306B\u3088\u3063\u3066\u306F\u3001\u30C6\u30F3\u30D7\u30EC\u30FC\u30C8\u306E\u4F5C\u6210\u306B\u306F\u6570\u5206\u4EE5\u4E0A\u304B\u304B\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002 -message.you.must.have.at.least.one.physical.network=\u5C11\u306A\u304F\u3068\u3082 1 \u3064\u7269\u7406\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u304C\u5FC5\u8981\u3067\u3059 -message.Zone.creation.complete=\u30BE\u30FC\u30F3\u304C\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F -message.zone.creation.complete.would.you.like.to.enable.this.zone=\u30BE\u30FC\u30F3\u304C\u4F5C\u6210\u3055\u308C\u307E\u3057\u305F\u3002\u3053\u306E\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -message.zone.no.network.selection=\u9078\u629E\u3057\u305F\u30BE\u30FC\u30F3\u3067\u306F\u3001\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u3092\u9078\u629E\u3067\u304D\u307E\u305B\u3093\u3002 -message.zone.step.1.desc=\u30BE\u30FC\u30F3\u306E\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF \u30E2\u30C7\u30EB\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002 +message.step.4.continue=\u7d9a\u884c\u3059\u308b\u306b\u306f\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u5c11\u306a\u304f\u3068\u3082 1 \u3064\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044 +message.step.4.desc=\u4eee\u60f3\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u304c\u63a5\u7d9a\u3059\u308b\u30d7\u30e9\u30a4\u30de\u30ea \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.storage.traffic=\u30db\u30b9\u30c8\u3084 CloudStack \u30b7\u30b9\u30c6\u30e0 VM \u306a\u3069\u3001\u7ba1\u7406\u30b5\u30fc\u30d0\u30fc\u3068\u901a\u4fe1\u3059\u308b CloudStack \u306e\u5185\u90e8\u30ea\u30bd\u30fc\u30b9\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3067\u3059\u3002\u3053\u3053\u3067\u30b9\u30c8\u30ec\u30fc\u30b8 \u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3092\u69cb\u6210\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.suspend.project=\u3053\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4e00\u6642\u505c\u6b62\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.template.desc=VM \u306e\u8d77\u52d5\u306b\u4f7f\u7528\u3067\u304d\u308b OS \u30a4\u30e1\u30fc\u30b8 +message.tooltip.dns.1=\u30be\u30fc\u30f3\u5185\u306e VM \u3067\u4f7f\u7528\u3059\u308b DNS \u30b5\u30fc\u30d0\u30fc\u306e\u540d\u524d\u3067\u3059\u3002\u30be\u30fc\u30f3\u306e\u30d1\u30d6\u30ea\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9\u304b\u3089\u3001\u3053\u306e\u30b5\u30fc\u30d0\u30fc\u306b\u901a\u4fe1\u3067\u304d\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.tooltip.dns.2=\u30be\u30fc\u30f3\u5185\u306e VM \u3067\u4f7f\u7528\u3059\u308b 2 \u756a\u76ee\u306e DNS \u30b5\u30fc\u30d0\u30fc\u306e\u540d\u524d\u3067\u3059\u3002\u30be\u30fc\u30f3\u306e\u30d1\u30d6\u30ea\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9\u304b\u3089\u3001\u3053\u306e\u30b5\u30fc\u30d0\u30fc\u306b\u901a\u4fe1\u3067\u304d\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.tooltip.internal.dns.1=\u30be\u30fc\u30f3\u5185\u306e CloudStack \u5185\u90e8\u30b7\u30b9\u30c6\u30e0 VM \u3067\u4f7f\u7528\u3059\u308b DNS \u30b5\u30fc\u30d0\u30fc\u306e\u540d\u524d\u3067\u3059\u3002\u30dd\u30c3\u30c9\u306e\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 IP \u30a2\u30c9\u30ec\u30b9\u304b\u3089\u3001\u3053\u306e\u30b5\u30fc\u30d0\u30fc\u306b\u901a\u4fe1\u3067\u304d\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.tooltip.internal.dns.2=\u30be\u30fc\u30f3\u5185\u306e CloudStack \u5185\u90e8\u30b7\u30b9\u30c6\u30e0 VM \u3067\u4f7f\u7528\u3059\u308b DNS \u30b5\u30fc\u30d0\u30fc\u306e\u540d\u524d\u3067\u3059\u3002\u30dd\u30c3\u30c9\u306e\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8 IP \u30a2\u30c9\u30ec\u30b9\u304b\u3089\u3001\u3053\u306e\u30b5\u30fc\u30d0\u30fc\u306b\u901a\u4fe1\u3067\u304d\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.tooltip.network.domain=DNS \u30b5\u30d5\u30a3\u30c3\u30af\u30b9\u3067\u3059\u3002\u3053\u306e\u30b5\u30d5\u30a3\u30c3\u30af\u30b9\u304b\u3089\u30b2\u30b9\u30c8 VM \u3067\u30a2\u30af\u30bb\u30b9\u3059\u308b\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306e\u30ab\u30b9\u30bf\u30e0 \u30c9\u30e1\u30a4\u30f3\u540d\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002 +message.tooltip.pod.name=\u3053\u306e\u30dd\u30c3\u30c9\u306e\u540d\u524d\u3067\u3059\u3002 +message.tooltip.reserved.system.gateway=\u30dd\u30c3\u30c9\u5185\u306e\u30db\u30b9\u30c8\u306e\u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u3067\u3059\u3002 +message.tooltip.reserved.system.netmask=\u30dd\u30c3\u30c9\u306e\u30b5\u30d6\u30cd\u30c3\u30c8\u3092\u5b9a\u7fa9\u3059\u308b\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u3067\u3059\u3002CIDR \u8868\u8a18\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002 +message.tooltip.zone.name=\u30be\u30fc\u30f3\u306e\u540d\u524d\u3067\u3059\u3002 +message.update.os.preference=\u3053\u306e\u30db\u30b9\u30c8\u306e OS \u57fa\u672c\u8a2d\u5b9a\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u540c\u69d8\u306e\u57fa\u672c\u8a2d\u5b9a\u3092\u6301\u3064\u3059\u3079\u3066\u306e\u4eee\u60f3\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306f\u3001\u5225\u306e\u30db\u30b9\u30c8\u3092\u9078\u629e\u3059\u308b\u524d\u306b\u307e\u305a\u3053\u306e\u30db\u30b9\u30c8\u306b\u5272\u308a\u5f53\u3066\u3089\u308c\u307e\u3059\u3002 +message.update.resource.count=\u3053\u306e\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u30ea\u30bd\u30fc\u30b9\u6570\u3092\u66f4\u65b0\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.update.ssl=\u5404\u30b3\u30f3\u30bd\u30fc\u30eb \u30d7\u30ed\u30ad\u30b7\u306e\u4eee\u60f3\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3067\u66f4\u65b0\u3059\u308b\u3001X.509 \u6e96\u62e0\u306e\u65b0\u3057\u3044 SSL \u8a3c\u660e\u66f8\u3092\u9001\u4fe1\u3057\u3066\u304f\u3060\u3055\u3044\: +message.validate.instance.name=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u540d\u306f 63 \u6587\u5b57\u4ee5\u5185\u3067\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002ASCII \u6587\u5b57\u306e a\uff5ez\u3001A\uff5eZ\u3001\u6570\u5b57\u306e 0\uff5e9\u3001\u304a\u3088\u3073\u30cf\u30a4\u30d5\u30f3\u306e\u307f\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002\u6587\u5b57\u3067\u59cb\u307e\u308a\u3001\u6587\u5b57\u307e\u305f\u306f\u6570\u5b57\u3067\u7d42\u308f\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 +message.virtual.network.desc=\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u5c02\u7528\u4eee\u60f3\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3067\u3059\u3002\u30d6\u30ed\u30fc\u30c9\u30ad\u30e3\u30b9\u30c8 \u30c9\u30e1\u30a4\u30f3\u306f VLAN \u5185\u306b\u914d\u7f6e\u3055\u308c\u3001\u30d1\u30d6\u30ea\u30c3\u30af \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3078\u306e\u30a2\u30af\u30bb\u30b9\u306f\u3059\u3079\u3066\u4eee\u60f3\u30eb\u30fc\u30bf\u30fc\u306b\u3088\u3063\u3066\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u3055\u308c\u307e\u3059\u3002 +message.vm.create.template.confirm=\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3092\u4f5c\u6210\u3059\u308b\u3068 VM \u304c\u81ea\u52d5\u7684\u306b\u518d\u8d77\u52d5\u3055\u308c\u307e\u3059\u3002 +message.vm.review.launch=\u6b21\u306e\u60c5\u5831\u3092\u53c2\u7167\u3057\u3066\u3001\u4eee\u60f3\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u6b63\u3057\u304f\u8a2d\u5b9a\u3057\u305f\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304b\u3089\u8d77\u52d5\u3057\u3066\u304f\u3060\u3055\u3044\u3002 +message.volume.create.template.confirm=\u3053\u306e\u30c7\u30a3\u30b9\u30af \u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3092\u4f5c\u6210\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? \u30dc\u30ea\u30e5\u30fc\u30e0 \u30b5\u30a4\u30ba\u306b\u3088\u3063\u3066\u306f\u3001\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u4f5c\u6210\u306b\u306f\u6570\u5206\u4ee5\u4e0a\u304b\u304b\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002 +message.you.must.have.at.least.one.physical.network=\u5c11\u306a\u304f\u3068\u3082 1 \u3064\u7269\u7406\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304c\u5fc5\u8981\u3067\u3059 +message.Zone.creation.complete=\u30be\u30fc\u30f3\u304c\u4f5c\u6210\u3055\u308c\u307e\u3057\u305f +message.zone.creation.complete.would.you.like.to.enable.this.zone=\u30be\u30fc\u30f3\u304c\u4f5c\u6210\u3055\u308c\u307e\u3057\u305f\u3002\u3053\u306e\u30be\u30fc\u30f3\u3092\u6709\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +message.zone.no.network.selection=\u9078\u629e\u3057\u305f\u30be\u30fc\u30f3\u3067\u306f\u3001\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u9078\u629e\u3067\u304d\u307e\u305b\u3093\u3002 +message.zone.step.1.desc=\u30be\u30fc\u30f3\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30e2\u30c7\u30eb\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 message.zone.step.2.desc=\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084Zone\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e5\u0085\u00a5\u00e5\u008a\u009b\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 message.zone.step.3.desc=\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084Pod\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e5\u0085\u00a5\u00e5\u008a\u009b\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 -message.zoneWizard.enable.local.storage=\u8B66\u544A\: \u3053\u306E\u30BE\u30FC\u30F3\u306E\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u6709\u52B9\u306B\u3059\u308B\u5834\u5408\u306F\u3001\u30B7\u30B9\u30C6\u30E0 VM \u306E\u8D77\u52D5\u5834\u6240\u306B\u5FDC\u3058\u3066\u6B21\u306E\u64CD\u4F5C\u304C\u5FC5\u8981\u3067\u3059\u3002

    1. \u30B7\u30B9\u30C6\u30E0 VM \u3092\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3067\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u5834\u5408\u306F\u3001\u30D7\u30E9\u30A4\u30DE\u30EA \u30B9\u30C8\u30EC\u30FC\u30B8\u3092\u4F5C\u6210\u3057\u305F\u5F8C\u3067\u30BE\u30FC\u30F3\u306B\u8FFD\u52A0\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\u307E\u305F\u3001\u7121\u52B9\u72B6\u614B\u306E\u30BE\u30FC\u30F3\u3092\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u3082\u3042\u308A\u307E\u3059\u3002

    2. \u30B7\u30B9\u30C6\u30E0 VM \u3092\u30ED\u30FC\u30AB\u30EB \u30B9\u30C8\u30EC\u30FC\u30B8\u3067\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u5834\u5408\u306F\u3001system.vm.use.local.storage \u3092 true \u306B\u8A2D\u5B9A\u3057\u3066\u304B\u3089\u30BE\u30FC\u30F3\u3092\u6709\u52B9\u306B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002


    \u7D9A\u884C\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B? -mode=\u30E2\u30FC\u30C9 -network.rate=\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u901F\u5EA6 -notification.reboot.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u518D\u8D77\u52D5 -notification.start.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u8D77\u52D5 -notification.stop.instance=\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u306E\u505C\u6B62 -side.by.side=\u4E26\u5217 -state.Accepted=\u627F\u8AFE\u6E08\u307F -state.Active=\u30A2\u30AF\u30C6\u30A3\u30D6 -state.Allocated=\u5272\u308A\u5F53\u3066\u6E08\u307F -state.Allocating=\u5272\u308A\u5F53\u3066\u4E2D -state.BackedUp=\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u6E08\u307F -state.BackingUp=\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u4E2D -state.Completed=\u5B8C\u4E86 -state.Creating=\u4F5C\u6210\u4E2D -state.Declined=\u8F9E\u9000 -state.Destroyed=\u7834\u68C4\u6E08\u307F -state.Disabled=\u7121\u52B9 -state.enabled=\u6709\u52B9 -state.Enabled=\u6709\u52B9 -state.Error=\u30A8\u30E9\u30FC -state.Expunging=\u62B9\u6D88\u4E2D -state.Migrating=\u79FB\u884C\u4E2D -state.Pending=\u4FDD\u7559 -state.ready=\u6E96\u5099\u5B8C\u4E86 -state.Ready=\u6E96\u5099\u5B8C\u4E86 -state.Running=\u5B9F\u884C\u4E2D -state.Starting=\u958B\u59CB\u4E2D -state.Stopped=\u505C\u6B62\u6E08\u307F -state.Stopping=\u505C\u6B62\u3057\u3066\u3044\u307E\u3059 -state.Suspended=\u4E00\u6642\u505C\u6B62 +message.zoneWizard.enable.local.storage=\u8b66\u544a\: \u3053\u306e\u30be\u30fc\u30f3\u306e\u30ed\u30fc\u30ab\u30eb \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u6709\u52b9\u306b\u3059\u308b\u5834\u5408\u306f\u3001\u30b7\u30b9\u30c6\u30e0 VM \u306e\u8d77\u52d5\u5834\u6240\u306b\u5fdc\u3058\u3066\u6b21\u306e\u64cd\u4f5c\u304c\u5fc5\u8981\u3067\u3059\u3002

    1. \u30b7\u30b9\u30c6\u30e0 VM \u3092\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3067\u8d77\u52d5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u5834\u5408\u306f\u3001\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u4f5c\u6210\u3057\u305f\u5f8c\u3067\u30be\u30fc\u30f3\u306b\u8ffd\u52a0\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u307e\u305f\u3001\u7121\u52b9\u72b6\u614b\u306e\u30be\u30fc\u30f3\u3092\u8d77\u52d5\u3059\u308b\u5fc5\u8981\u3082\u3042\u308a\u307e\u3059\u3002

    2. \u30b7\u30b9\u30c6\u30e0 VM \u3092\u30ed\u30fc\u30ab\u30eb \u30b9\u30c8\u30ec\u30fc\u30b8\u3067\u8d77\u52d5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u5834\u5408\u306f\u3001system.vm.use.local.storage \u3092 true \u306b\u8a2d\u5b9a\u3057\u3066\u304b\u3089\u30be\u30fc\u30f3\u3092\u6709\u52b9\u306b\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002


    \u7d9a\u884c\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? +mode=\u30e2\u30fc\u30c9 +network.rate=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u901f\u5ea6 +notification.reboot.instance=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u518d\u8d77\u52d5 +notification.start.instance=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u8d77\u52d5 +notification.stop.instance=\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u505c\u6b62 +side.by.side=\u4e26\u5217 +state.Accepted=\u627f\u8afe\u6e08\u307f +state.Active=\u30a2\u30af\u30c6\u30a3\u30d6 +state.Allocated=\u5272\u308a\u5f53\u3066\u6e08\u307f +state.Allocating=\u5272\u308a\u5f53\u3066\u4e2d +state.BackedUp=\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u6e08\u307f +state.BackingUp=\u30d0\u30c3\u30af\u30a2\u30c3\u30d7\u4e2d +state.Completed=\u5b8c\u4e86 +state.Creating=\u4f5c\u6210\u4e2d +state.Declined=\u8f9e\u9000 +state.Destroyed=\u7834\u68c4\u6e08\u307f +state.Disabled=\u7121\u52b9 +state.enabled=\u6709\u52b9 +state.Enabled=\u6709\u52b9 +state.Error=\u30a8\u30e9\u30fc +state.Expunging=\u62b9\u6d88\u4e2d +state.Migrating=\u79fb\u884c\u4e2d +state.Pending=\u4fdd\u7559 +state.ready=\u6e96\u5099\u5b8c\u4e86 +state.Ready=\u6e96\u5099\u5b8c\u4e86 +state.Running=\u5b9f\u884c\u4e2d +state.Starting=\u958b\u59cb\u4e2d +state.Stopped=\u505c\u6b62\u6e08\u307f +state.Stopping=\u505c\u6b62\u3057\u3066\u3044\u307e\u3059 +state.Suspended=\u4e00\u6642\u505c\u6b62 ui.listView.filters.all=\u3059\u3079\u3066 -ui.listView.filters.mine=\u81EA\u5206\u306E\u3082\u306E +ui.listView.filters.mine=\u81ea\u5206\u306e\u3082\u306e diff --git a/client/WEB-INF/classes/resources/messages_ko_KR.properties b/client/WEB-INF/classes/resources/messages_ko_KR.properties index 757871acde0..0a4f9903eb0 100644 --- a/client/WEB-INF/classes/resources/messages_ko_KR.properties +++ b/client/WEB-INF/classes/resources/messages_ko_KR.properties @@ -15,6 +15,7 @@ # specific language governing permissions and limitations # under the License. + changed.item.properties=\ud56d\ubaa9 \uc18d\uc131 \ubcc0\uacbd confirm.enable.swift=Swift \uae30\uc220 \uc9c0\uc6d0\ub97c \uc0ac\uc6a9 \ud558\ub824\uba74 \ub2e4\uc74c \uc815\ubcf4\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. error.could.not.enable.zone=Zone\uc744 \uc0ac\uc6a9 \ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. diff --git a/client/WEB-INF/classes/resources/messages_nb_NO.properties b/client/WEB-INF/classes/resources/messages_nb_NO.properties index be412449398..8fba48ca9c4 100644 --- a/client/WEB-INF/classes/resources/messages_nb_NO.properties +++ b/client/WEB-INF/classes/resources/messages_nb_NO.properties @@ -15,6 +15,7 @@ # 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. diff --git a/client/WEB-INF/classes/resources/messages_pt_BR.properties b/client/WEB-INF/classes/resources/messages_pt_BR.properties index fd24f542e8d..780b844c0b7 100644 --- a/client/WEB-INF/classes/resources/messages_pt_BR.properties +++ b/client/WEB-INF/classes/resources/messages_pt_BR.properties @@ -15,6 +15,7 @@ # specific language governing permissions and limitations # under the License. + changed.item.properties=Alteradas propriedades do item confirm.enable.s3=Por favor preencha as informa\u00e7\u00f5es abaixo para habilitar suporte a storage secund\u00e1ria fornecida por S3 confirm.enable.swift=Por favor preencha as informa\u00e7\u00f5es abaixo para habilitar suporte ao Swift diff --git a/client/WEB-INF/classes/resources/messages_ru_RU.properties b/client/WEB-INF/classes/resources/messages_ru_RU.properties index b28f6b69e6f..5f492c07329 100644 --- a/client/WEB-INF/classes/resources/messages_ru_RU.properties +++ b/client/WEB-INF/classes/resources/messages_ru_RU.properties @@ -15,6 +15,7 @@ # specific language governing permissions and limitations # under the License. + changed.item.properties=\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u044b confirm.enable.swift=\u0417\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u0435 \u043d\u0438\u0436\u0435\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438 Swift error.could.not.enable.zone=\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0437\u043e\u043d\u0443 diff --git a/client/WEB-INF/classes/resources/messages_zh_CN.properties b/client/WEB-INF/classes/resources/messages_zh_CN.properties index f62439d460d..c842979eb12 100644 --- a/client/WEB-INF/classes/resources/messages_zh_CN.properties +++ b/client/WEB-INF/classes/resources/messages_zh_CN.properties @@ -15,6 +15,7 @@ # specific language governing permissions and limitations # under the License. + changed.item.properties=\u66f4\u6539\u9879\u76ee\u5c5e\u6027 confirm.enable.s3=\u8bf7\u586b\u5199\u4e0b\u5217\u4fe1\u606f\u4ee5\u542f\u7528\u652f\u6301S3\u7684\u4e8c\u7ea7\u5b58\u50a8 confirm.enable.swift=\u8bf7\u586b\u5199\u4ee5\u4e0b\u4fe1\u606f\u4ee5\u542f\u7528\u5bf9 SWIFT \u7684\u652f\u6301 diff --git a/tools/transifex/.tx/config b/tools/transifex/.tx/config index 171d9b10e1a..80c02aa957c 100644 --- a/tools/transifex/.tx/config +++ b/tools/transifex/.tx/config @@ -15,5 +15,17 @@ source_lang = en [CloudStack_UI.42xmessagesproperties] file_filter = translations/CloudStack_UI.42xmessagesproperties/.properties +source_file = work-dir/messages.properties source_lang = en +trans.ca = work-dir/messages_ca.properties +trans.de_DE = work-dir/messages_de_DE.properties +trans.es = work-dir/messages_es.properties +trans.fr_FR = work-dir/messages_fr_FR.properties +trans.it_IT = work-dir/messages_it_IT.properties +trans.ja = work-dir/messages_ja.properties +trans.ko_KR = work-dir/messages_ko_KR.properties +trans.nb_NO = work-dir/messages_nb_NO.properties +trans.pt_BR = work-dir/messages_pt_BR.properties +trans.ru_RU = work-dir/messages_ru_RU.properties +trans.zh_CN = work-dir/messages_zh_CN.properties From 0f2a249411635fff6e27092b2982dfe4a4e9c594 Mon Sep 17 00:00:00 2001 From: Milamber Date: Mon, 29 Apr 2013 11:47:45 +0100 Subject: [PATCH 460/607] CLOUDSTACK-2138 - add requirements in README to use sync-transifex-ui.sh script --- tools/transifex/README-transifex.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tools/transifex/README-transifex.txt b/tools/transifex/README-transifex.txt index 986aed7afb6..4b1cd8d00de 100644 --- a/tools/transifex/README-transifex.txt +++ b/tools/transifex/README-transifex.txt @@ -18,6 +18,12 @@ sync-transifex-ui is a script to automate the synchronisation between Apache CloudStack L10N resource files and Transifex CloudStack project. +Requirements to use this script: +* A GNU/Linux or Unix machine +* Transifex client installed +http://support.transifex.com/customer/portal/topics/440187-transifex-client/articles +On Debian/Ubuntu: apt-get install transifex-client + Commun usage is: 1/ Init and configure the transifex client CLI From 6bf67c9f682740f22952a648d13e294cb97879c1 Mon Sep 17 00:00:00 2001 From: Pranav Saxena Date: Mon, 29 Apr 2013 16:21:49 +0530 Subject: [PATCH 461/607] CLOUDSTACK-2113:System VM scaleUp UI support --- ui/scripts/system.js | 160 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 158 insertions(+), 2 deletions(-) diff --git a/ui/scripts/system.js b/ui/scripts/system.js index 8c962fc2b7b..7aa0566fbef 100644 --- a/ui/scripts/system.js +++ b/ui/scripts/system.js @@ -5424,6 +5424,83 @@ poll: pollAsyncJobResult } }, + + scaleUp:{ + label:'scaleUp System VM', + createForm: { + title: 'label.change.service.offering', + desc: '', + fields: { + serviceOfferingId: { + label: 'label.compute.offering', + select: function(args) { + var apiCmd = "listServiceOfferings&issystem=true"; + if(args.context.systemVMs[0].systemvmtype == "secondarystoragevm") + apiCmd += "&systemvmtype=secondarystoragevm"; + else if(args.context.systemVMs[0].systemvmtype == "consoleproxy") + apiCmd += "&systemvmtype=consoleproxy"; + $.ajax({ + url: createURL(apiCmd), + dataType: "json", + async: true, + success: function(json) { + var serviceofferings = json.listserviceofferingsresponse.serviceoffering; + var items = []; + $(serviceofferings).each(function() { + if(this.id != args.context.systemVMs[0].serviceofferingid) { + items.push({id: this.id, description: this.name}); + } + }); + args.response.success({data: items}); + } + }); + } + } + } + }, + + action: function(args) { + $.ajax({ + url: createURL("scaleVirtualMachine&id=" + args.context.systemVMs[0].id + "&serviceofferingid=" + args.data.serviceOfferingId), + dataType: "json", + async: true, + success: function(json) { + var jid = json.scalevirtualmachineresponse.jobid; + args.response.success( + {_custom: + {jobId: jid, + getUpdatedItem: function(json) { + return json.queryasyncjobresultresponse.jobresult.virtualmachine; + }, + getActionFilter: function() { + return vmActionfilter; + } + + } + } + ); + }, + error:function(json){ + args.response.error(parseXMLHttpResponse(json)); + } + + }); + }, + messages: { + confirm: function(args) { + return 'Do you really want to scale up the system VM ?'; + }, + notification: function(args) { + + return 'System VM Scaled Up'; + } + }, + notification: { + poll: pollAsyncJobResult + } + + }, + viewConsole: { label: 'label.view.console', @@ -6658,6 +6735,83 @@ } }, + scaleUp:{ + label:'scaleUp System VM', + createForm: { + title: 'label.change.service.offering', + desc: '', + fields: { + serviceOfferingId: { + label: 'label.compute.offering', + select: function(args) { + var apiCmd = "listServiceOfferings&issystem=true"; + if(args.context.systemVMs[0].systemvmtype == "secondarystoragevm") + apiCmd += "&systemvmtype=secondarystoragevm"; + else if(args.context.systemVMs[0].systemvmtype == "consoleproxy") + apiCmd += "&systemvmtype=consoleproxy"; + $.ajax({ + url: createURL(apiCmd), + dataType: "json", + async: true, + success: function(json) { + var serviceofferings = json.listserviceofferingsresponse.serviceoffering; + var items = []; + $(serviceofferings).each(function() { + if(this.id != args.context.systemVMs[0].serviceofferingid) { + items.push({id: this.id, description: this.name}); + } + }); + args.response.success({data: items}); + } + }); + } + } + } + }, + + action: function(args) { + $.ajax({ + url: createURL("scaleVirtualMachine&id=" + args.context.systemVMs[0].id + "&serviceofferingid=" + args.data.serviceOfferingId), + dataType: "json", + async: true, + success: function(json) { + var jid = json.scalevirtualmachineresponse.jobid; + args.response.success( + {_custom: + {jobId: jid, + getUpdatedItem: function(json) { + return json.queryasyncjobresultresponse.jobresult.virtualmachine; + }, + getActionFilter: function() { + return vmActionfilter; + } + } + } + ); + }, + error:function(json){ + args.response.error(parseXMLHttpResponse(json)); + } + + }); + }, + messages: { + confirm: function(args) { + return 'Do you really want to scale up the system VM ?'; + }, + notification: function(args) { + + return 'System VM Scaled Up'; + } + }, + notification: { + poll: pollAsyncJobResult + } + + }, + + + viewConsole: { label: 'label.view.console', action: { @@ -11687,14 +11841,16 @@ if (jsonObj.state == 'Running') { allowedActions.push("stop"); allowedActions.push("restart"); - allowedActions.push("remove"); + allowedActions.push("remove"); + allowedActions.push("scaleUp"); allowedActions.push("viewConsole"); if (isAdmin()) allowedActions.push("migrate"); } else if (jsonObj.state == 'Stopped') { allowedActions.push("start"); - allowedActions.push("changeService"); + allowedActions.push("scaleUp"); + allowedActions.push("changeService"); allowedActions.push("remove"); } else if (jsonObj.state == 'Error') { From 134704bb10fd6177c103b12adb3045683ce2f1ad Mon Sep 17 00:00:00 2001 From: Sebastien Goasguen Date: Mon, 29 Apr 2013 06:56:46 -0400 Subject: [PATCH 462/607] [TRANSLATION] Adding arabic strings --- .../classes/resources/messages.properties | 1 + .../classes/resources/messages_ar.properties | 1547 +++++++++++++++++ ui/index.jsp | 1 + 3 files changed, 1549 insertions(+) create mode 100644 client/WEB-INF/classes/resources/messages_ar.properties diff --git a/client/WEB-INF/classes/resources/messages.properties b/client/WEB-INF/classes/resources/messages.properties index fbc04713fb7..9f84c5ac96d 100644 --- a/client/WEB-INF/classes/resources/messages.properties +++ b/client/WEB-INF/classes/resources/messages.properties @@ -631,6 +631,7 @@ label.lang.japanese=Japanese label.lang.korean=Korean label.lang.russian=Russian label.lang.spanish=Spanish +label.lang.arabic=Arabic label.last.disconnected=Last Disconnected label.last.name=Last Name label.latest.events=Latest events diff --git a/client/WEB-INF/classes/resources/messages_ar.properties b/client/WEB-INF/classes/resources/messages_ar.properties new file mode 100644 index 00000000000..b4b1974ddd1 --- /dev/null +++ b/client/WEB-INF/classes/resources/messages_ar.properties @@ -0,0 +1,1547 @@ +# 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. + + +#new labels (begin) ********************************************************************************************** +label.egress.rules=\u0642\u0648\u0627\u0639\u062f \u0627\u0644\u062e\u0631\u0648\u062c +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. +label.zoneWizard.trafficType.management=\u0625\u062f\u0627\u0631\u0629\\\: \u0627\u0644\u062d\u0631\u0643\u0629 \u0628\u064a\u0646 \u0627\u0644\u0645\u0648\u0627\u0631\u062f \u0627\u0644\u062f\u0627\u062e\u0644\u064a\u0629 \u0644 \u0643\u0644\u0627\u0648\u062f \u0633\u062a\u0627\u0643 \u060c \u0645\u062a\u0636\u0645\u0646\u0629 \u0623\u064a \u062c\u0632\u0621 \u064a\u062a\u0635\u0644 \u0628\u062e\u0627\u062f\u0645\\\u0633\u064a\u0631\u0641\u0631 \u0627\u0644\u0625\u062f\u0627\u0631\u0629 \u060c \u0645\u062b\u0644 \u0627\u0644\u0645\u0636\u064a\u0641\u0627\u062a \u0648 \u0623\u0646\u0638\u0645\u0629 \u0643\u0644\u0627\u0648\u062f \u0633\u062a\u0627\u0643 \u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a\u0629. +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.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.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 +label.quickview=\u0646\u0638\u0631\u0629 \u0633\u0631\u064a\u0639\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.stop=\u062a\u0648\u0642\u0641 +label.reboot=\u0625\u0639\u0627\u062f\u0629 \u062a\u0634\u063a\u064a\u0644 +label.destroy=\u0647\u062f\u0645 +label.restore=\u0625\u0633\u062a\u0639\u0627\u062f\u0629 +label.isolation.uri=\u0639\u0632\u0644 \u0627\u0644\u0631\u0627\u0628\u0637 +label.broadcast.uri=\u0628\u062b \u0627\u0644\u0631\u0627\u0628\u0637 +label.enable.s3=\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u062a\u062e\u0632\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u0648\u064a S3 +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. +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. +label.s3.access_key=\u0645\u0641\u062a\u0627\u062d \u0627\u0644\u0648\u0635\u0648\u0644 +label.s3.secret_key=\u0627\u0644\u0645\u0641\u062a\u0627\u062d \u0627\u0644\u0633\u0631\u064a +label.s3.bucket=\u062f\u0644\u0648 +label.s3.endpoint=\u0646\u0642\u0637\u0629 \u0627\u0644\u0646\u0647\u0627\u064a\u0629 +label.s3.use_https=\u0627\u0633\u062a\u062e\u062f\u0645 HTTPS +label.s3.connection_timeout=\u0645\u0647\u0644\u0629 \u0627\u0644\u0627\u062a\u0635\u0627\u0644 +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.socket_timeout=\u0645\u0647\u0644\u0629 \u0627\u0644\u0645\u0642\u0628\u0633 +#new labels (end) ************************************************************************************************ + + +#modified labels (begin) ***************************************************************************************** +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 +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 \\\:

    \n1.\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 +#modified labels (end) ******************************************************************************************* + +label.configure.network.ACLs=\u0636\u0628\u0637 \u0634\u0628\u0643\u0629 ACLs +label.network.ACLs=\u0634\u0628\u0643\u0629 ACLs +label.add.network.ACL=\u0625\u0636\u0627\u0641\u0629 \u0634\u0628\u0643\u0629 ACL +label.private.Gateway=\u0645\u0646\u0641\u0630\\Gateway \u062e\u0627\u0635 +label.VPC.router.details=\u062a\u0641\u0627\u0635\u064a\u0644 \u062c\u0647\u0627\u0632 \u0627\u0644\u062a\u0648\u062c\u064a\u0647 VPC +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.local.storage.enabled=\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u062a\u062e\u0632\u064a\u0646 \u0627\u0644\u0645\u062d\u0644\u064a +label.tier.details=\u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u0637\u0628\u0642\u0629 +label.edit.tags=\u062a\u0639\u062f\u064a\u0644 \u0627\u0644\u0639\u0644\u0627\u0645\u0627\u062a +label.action.enable.physical.network=\u062a\u0645\u0643\u064a\u0646 \u0634\u0628\u0643\u0629 \u0641\u064a\u0632\u064a\u0627\u0626\u064a\u0629 +label.action.disable.physical.network=\u062a\u0639\u0637\u064a\u0644 \u0634\u0628\u0643\u0629 \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.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 + +label.select.tier=\u062d\u062f\u062f \u0637\u0628\u0642\u0629 +label.add.ACL=\u0625\u0636\u0627\u0641\u0629 ACL +label.remove.ACL=\u0625\u0632\u0627\u0644\u0629 ACL +label.tier=\u0637\u0628\u0642\u0629 +label.network.ACL=\u0634\u0628\u0643\u0629 ACL +label.network.ACL.total=\u0625\u062c\u0645\u0627\u0644 \u0634\u0628\u0643\u0629 ACL +label.add.new.gateway=\u0623\u0636\u0641 \u0628\u0648\u0627\u0628\u0629 \u062c\u062f\u064a\u062f\u0629 +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 +label.delete.gateway=\u0627\u062d\u0630\u0641 \u0627\u0644\u0628\u0648\u0627\u0628\u0629 +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 +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.add.route=\u0625\u0636\u0627\u0641\u0629 \u0645\u0633\u0627\u0631 +label.add.static.route=\u0625\u0636\u0627\u0641\u0629 \u062a\u0648\u062c\u064a\u0647 \u062b\u0627\u0628\u062a +label.remove.static.route=\u0625\u0632\u0627\u0644\u0629 \u0627\u0644\u062a\u0648\u062c\u064a\u0647 \u062b\u0627\u0628\u062a +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 +# message.add.VPN.gateway=Please confirm that you want to add a VPN Gateway +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.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 +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 +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.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.IKE.policy=\u0633\u064a\u0627\u0633\u0629 IKE +label.ESP.policy=\u0633\u064a\u0627\u0633\u0629 ESP +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.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.CIDR.list=\u0642\u0627\u0626\u0645\u0629 CIDR +label.IKE.lifetime=\u0639\u0645\u0631 IKE (\u062b\u0627\u0646\u064a\u0629) +label.ESP.lifetime=\u0639\u0645\u0631 ESP (\u062b\u0627\u0646\u064a\u0629) +label.dead.peer.detection=\u0643\u0634\u0641 \u0627\u0644\u0642\u0631\u064a\u0646 \u0627\u0644\u0645\u0641\u0642\u0648\u062f +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 +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 +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 +# message.delete.VPN.connection=Please confirm that you want to delete VPN connection +label.add.new.tier=\u0625\u0636\u0627\u0641\u0629 \u0637\u0628\u0642\u0629 \u062c\u062f\u064a\u062f\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.remove.tier=\u0625\u0636\u0627\u0641\u0629 \u0637\u0628\u0642\u0629 + +label.local.storage.enabled=\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u062a\u062e\u0632\u064a\u0646 \u0627\u0644\u0645\u062d\u0644\u064a +label.associated.network=\u0634\u0628\u0643\u0629 \u0645\u0631\u062a\u0628\u0637\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.dns=\u0646\u0638\u0627\u0645 \u062a\u0633\u0645\u064a\u0629 \u0627\u0644\u0645\u062c\u0627\u0644 DNS + +label.vpc=\u0633\u062d\u0627\u0628\u0629 \u0625\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u062e\u0627\u0635\u0629 VPC +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.tier=\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.super.cidr.for.guest.networks=CIDR \u0645\u0645\u062a\u0627\u0632 \u0644\u0634\u0628\u0643\u0627\u062a \u0627\u0644\u0636\u064a\u0641. +# label.DNS.domain.for.guest.networks=DNS domain for Guest Networks +# label.configure.vpc=Configure VPC +# label.edit.vpc=Edit VPC +# label.restart.vpc=restart VPC +# message.restart.vpc=Please confirm that you want to restart the VPC +# label.remove.vpc=remove VPC +# message.remove.vpc=Please confirm that you want to remove the VPC +# label.vpn.customer.gateway=VPN Customer Gateway +# label.add.vpn.customer.gateway=Add VPN Customer Gateway +# label.IKE.encryption=IKE Encryption +# label.IKE.hash=IKE Hash +# label.IKE.DH=IKE DH +# label.ESP.encryption=ESP Encryption +# label.ESP.hash=ESP Hash +# label.perfect.forward.secrecy=Perfect Forward Secrecy +label.IKE.lifetime=\u0639\u0645\u0631 IKE (\u062b\u0627\u0646\u064a\u0629) +label.ESP.lifetime=\u0639\u0645\u0631 ESP (\u062b\u0627\u0646\u064a\u0629) +label.dead.peer.detection=\u0643\u0634\u0641 \u0627\u0644\u0642\u0631\u064a\u0646 \u0627\u0644\u0645\u0641\u0642\u0648\u062f +label.delete.VPN.customer.gateway=\u062d\u0630\u0641 \u0628\u0648\u0627\u0628\u0629 VPN \u0627\u0644\u0645\u062e\u0635\u0635\u0629 +# message.delete.VPN.customer.gateway=Please confirm that you want to delete this VPN Customer Gateway + +# label.network.domain.text=Network domain +label.memory.mb=\u0627\u0644\u0630\u0627\u0643\u0631\u0629 ( \u0628\u0627\u0644\u0645\u064a\u062c\u0627\u0628\u0627\u064a\u0628\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) + +# message.action.remove.host=Please confirm that you want to remove this host. + +# message.action.reboot.router=All services provided by this virtual router will be interrupted. Please confirm that you want to reboot this router. +# message.action.stop.router=All services provided by this virtual router will be interrupted. Please confirm that you want to stop this router. +# message.restart.network=All services provided by this network will be interrupted. Please confirm that you want to restart this network. + + +# label.ipaddress=IP Address +# label.vcdcname=vCenter DC name +# label.vcipaddress=vCenter IP Address +# label.vsmctrlvlanid=Control VLAN ID +# label.vsmpktvlanid=Packet VLAN ID +# label.vsmstoragevlanid=Storage VLAN ID +# label.nexusVswitch=Nexus 1000v +# label.action.delete.nexusVswitch=Delete Nexus 1000v +# label.action.enable.nexusVswitch=Enable Nexus 1000v +# label.action.disable.nexusVswitch=Disable Nexus 1000v +# label.action.list.nexusVswitch=List Nexus 1000v +# message.action.delete.nexusVswitch=Please confirm that you want to delete this nexus 1000v +# message.action.enable.nexusVswitch=Please confirm that you want to enable this nexus 1000v +# message.action.disable.nexusVswitch=Please confirm that you want to disable this nexus 1000v +# message.specify.url=Please specify URL +# label.select.instance.to.attach.volume.to=Select instance to attach volume to +label.upload=\u0631\u0641\u0639 +# label.upload.volume=Upload volume +# label.virtual.routers=Virtual Routers +# label.primary.storage.count=Primary Storage Pools +# label.secondary.storage.count=Secondary Storage Pools +# label.number.of.system.vms=Number of System VMs +# label.number.of.virtual.routers=Number of Virtual Routers +# label.action.register.iso=Register ISO +# label.isolation.method=Isolation method +# label.action.register.template=Register template +# label.checksum=MD5 checksum +# label.vpn=VPN +# label.vlan=VLAN + + +# label.management.ips=Management IP Addresses +label.devices=\u0627\u0644\u0623\u062c\u0647\u0632\u0629 +# label.rules=Rules +# label.traffic.label=Traffic label +# label.vm.state=VM state +# message.setup.physical.network.during.zone.creation.basic=When adding a basic zone, you can set up one physical network, which corresponds to a NIC on the hypervisor. The network carries several types of traffic.

    You may also drag and drop other traffic types onto the physical network. +# label.domain.router=Domain router +# label.console.proxy=Console proxy +# label.secondary.storage.vm=Secondary storage VM +# label.add.netScaler.device=Add Netscaler device +# label.add.F5.device=Add F5 device +# label.add.SRX.device=Add SRX device +# label.account.and.security.group=Account, Security group +# label.fetch.latest=Fetch latest +# label.system.offering=System Offering +# message.validate.instance.name=Instance name can not be longer than 63 characters. Only ASCII letters a~z, A~Z, digits 0~9, hyphen are allowed. Must start with a letter and end with a letter or a digit. + + +# label.isolated.networks=Isolated networks +# label.latest.events=Latest events +# state.Enabled=Enabled +# label.system.wide.capacity=System-wide capacity +# label.network.service.providers=Network Service Providers +# message.launch.zone=Zone is ready to launch; please proceed to the next step. +# error.unable.to.reach.management.server=Unable to reach Management Server +# label.internal.name=Internal name +# message.configure.all.traffic.types=You have multiple physical networks; please configure labels for each traffic type by clicking on the Edit button. +# message.edit.traffic.type=Please specify the traffic label you want associated with this traffic type. +# label.edit.traffic.type=Edit traffic type +# label.label=Label +# label.max.networks=Max. networks +# error.invalid.username.password=Invalid username or password +# message.enabling.security.group.provider=Enabling Security Group provider +# message.adding.Netscaler.provider=Adding Netscaler provider +# message.creating.guest.network=Creating guest network +# label.action.delete.physical.network=Delete physical network +# message.action.delete.physical.network=Please confirm that you want to delete this physical network +# message.installWizard.copy.whatIsAHost=A host is a single computer. Hosts provide the computing resources that run the guest virtual machines. Each host has hypervisor software installed on it to manage the guest VMs (except for bare metal hosts, which are a special case discussed in the Advanced Installation Guide). For example, a Linux KVM-enabled server, a Citrix XenServer server, and an ESXi server are hosts. In a Basic Installation, we use a single host running XenServer or KVM.

    The host is the smallest organizational unit within a CloudStack&\\\#8482; deployment. Hosts are contained within clusters, clusters are contained within pods, and pods are contained within zones. + + +# label.add.compute.offering=Add compute offering +# label.compute.offering=Compute offering +# label.compute.offerings=Compute offerings +# label.select.offering=Select offering +# label.menu.infrastructure=Infrastructure +label.sticky.tablesize=\u062d\u062c\u0645 \u0627\u0644\u062c\u062f\u0648\u0644 +# label.sticky.expire=Expires +# label.sticky.cookie-name=Cookie name +# label.sticky.mode=Mode +# label.sticky.length=Length +# label.sticky.holdtime=Hold time +# label.sticky.request-learn=Request learn +# label.sticky.prefix=Prefix +# label.sticky.nocache=No cache +# label.sticky.indirect=Indirect +# label.sticky.postonly=Post only +# label.sticky.domain=Domain +# state.Allocating=Allocating +# state.Migrating=Migrating +# error.please.specify.physical.network.tags=Network offerings is not available until you specify tags for this physical network. + + +# state.Stopping=Stopping +# message.add.load.balancer.under.ip=The load balancer rule has been added under IP\\\: +# message.select.instance=Please select an instance. +# label.select=Select +# label.select.vm.for.static.nat=Select VM for static NAT +# label.select.instance=Select instance +# label.nat.port.range=NAT Port Range +# label.static.nat.vm.details=Static NAT VM Details +# label.edit.lb.rule=Edit LB rule +# message.migrate.instance.to.host=Please confirm that you want to migrate instance to another host. +# label.migrate.instance.to.host=Migrate instance to another host +# message.migrate.instance.to.ps=Please confirm that you want to migrate instance to another primary storage. +# label.migrate.instance.to.ps=Migrate instance to another primary storage +# label.corrections.saved=Corrections saved +# message.installWizard.copy.whatIsSecondaryStorage=Secondary storage is associated with a zone, and it stores the following\\\:
    • Templates - OS images that can be used to boot VMs and can include additional configuration information, such as installed applications
    • ISO images - OS images that can be bootable or non-bootable
    • Disk volume snapshots - saved copies of VM data which can be used for data recovery or to create new templates
    +# message.installWizard.copy.whatIsPrimaryStorage=A CloudStack&\\\#8482; cloud infrastructure makes use of two types of storage\\\: primary storage and secondary storage. Both of these can be iSCSI or NFS servers, or localdisk.

    Primary storage is associated with a cluster, and it stores the disk volumes of each guest VM for all the VMs running on hosts in that cluster. The primary storage server is typically located close to the hosts. +# message.installWizard.copy.whatIsACluster=A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Virtual machine instances (VMs) can be live-migrated from one host to another within the same cluster, without interrupting service to the user. A cluster is the third-largest organizational unit within a CloudStack&\\\#8482; deployment. Clusters are contained within pods, and pods are contained within zones.

    CloudStack&\\\#8482; allows multiple clusters in a cloud deployment, but for a Basic Installation, we only need one cluster. +# message.installWizard.copy.whatIsAPod=A pod often represents a single rack. Hosts in the same pod are in the same subnet.

    A pod is the second-largest organizational unit within a CloudStack&\\\#8482; deployment. Pods are contained within zones. Each zone can contain one or more pods; in the Basic Installation, you will have just one pod in your zone. +# message.installWizard.copy.whatIsAZone=A zone is the largest organizational unit within a CloudStack&\\\#8482; deployment. A zone typically corresponds to a single datacenter, although it is permissible to have multiple zones in a datacenter. The benefit of organizing infrastructure into zones is to provide physical isolation and redundancy. For example, each zone can have its own power supply and network uplink, and the zones can be widely separated geographically (though this is not required). +# message.installWizard.copy.whatIsCloudStack=CloudStack&\\\#8482 is a software platform that pools computing resources to build public, private, and hybrid Infrastructure as a Service (IaaS) clouds. CloudStack&\\\#8482 manages the network, storage, and compute nodes that make up a cloud infrastructure. Use CloudStack&\\\#8482 to deploy, manage, and configure cloud computing environments.

    Extending beyond individual virtual machine images running on commodity hardware, CloudStack&\\\#8482 provides a turnkey cloud infrastructure software stack for delivering virtual datacenters as a service - delivering all of the essential components to build, deploy, and manage multi-tier and multi-tenant cloud applications. Both open-source and Premium versions are available, with the open-source version offering nearly identical features. +# message.installWizard.tooltip.addSecondaryStorage.path=The exported path, located on the server you specified above +# message.installWizard.tooltip.addSecondaryStorage.nfsServer=The IP address of the NFS server hosting the secondary storage +# message.installWizard.tooltip.addPrimaryStorage.path=(for NFS) In NFS this is the exported path from the server. Path (for SharedMountPoint). With KVM this is the path on each host that is where this primary storage is mounted. For example, "/mnt/primary". +# message.installWizard.tooltip.addPrimaryStorage.server=(for NFS, iSCSI, or PreSetup) The IP address or DNS name of the storage device. +# message.installWizard.tooltip.addPrimaryStorage.name=The name for the storage device. +# message.installWizard.tooltip.addHost.password=This is the password for the user named above (from your XenServer install). +# message.installWizard.tooltip.addHost.username=Usually root. +# message.installWizard.tooltip.addHost.hostname=The DNS name or IP address of the host. +# message.installWizard.tooltip.addCluster.name=A name for the cluster. This can be text of your choosing and is not used by CloudStack. +# message.installWizard.tooltip.addPod.reservedSystemEndIp=This is the IP range in the private network that the CloudStack uses to manage Secondary Storage VMs and Console Proxy VMs. These IP addresses are taken from the same subnet as computing servers. +# message.installWizard.tooltip.addPod.reservedSystemStartIp=This is the IP range in the private network that the CloudStack uses to manage Secondary Storage VMs and Console Proxy VMs. These IP addresses are taken from the same subnet as computing servers. +# message.installWizard.tooltip.addPod.reservedSystemNetmask=The netmask in use on the subnet the guests will use. +# message.installWizard.tooltip.addPod.reservedSystemGateway=The gateway for the hosts in that pod. +# message.installWizard.tooltip.addPod.name=A name for the pod +# message.installWizard.tooltip.configureGuestTraffic.guestEndIp=The range of IP addresses that will be available for allocation to guests in this zone. If one NIC is used, these IPs should be in the same CIDR as the pod CIDR. +# message.installWizard.tooltip.configureGuestTraffic.guestStartIp=The range of IP addresses that will be available for allocation to guests in this zone. If one NIC is used, these IPs should be in the same CIDR as the pod CIDR. +# message.installWizard.tooltip.configureGuestTraffic.guestNetmask=The netmask in use on the subnet that the guests should use +# message.installWizard.tooltip.configureGuestTraffic.guestGateway=The gateway that the guests should use +# message.installWizard.tooltip.configureGuestTraffic.description=A description for your network +# message.installWizard.tooltip.configureGuestTraffic.name=A name for your network +# message.installWizard.tooltip.addZone.internaldns2=These are DNS servers for use by system VMs in the zone. These DNS servers will be accessed via the private network interface of the System VMs. The private IP address you provide for the pods must have a route to the DNS server named here. +# message.installWizard.tooltip.addZone.internaldns1=These are DNS servers for use by system VMs in the zone. These DNS servers will be accessed via the private network interface of the System VMs. The private IP address you provide for the pods must have a route to the DNS server named here. +# message.installWizard.tooltip.addZone.dns2=These are DNS servers for use by guest VMs in the zone. These DNS servers will be accessed via the public network you will add later. The public IP addresses for the zone must have a route to the DNS server named here. +# message.installWizard.tooltip.addZone.name=A name for the zone +# message.installWizard.tooltip.addZone.dns1=These are DNS servers for use by guest VMs in the zone. These DNS servers will be accessed via the public network you will add later. The public IP addresses for the zone must have a route to the DNS server named here. +# message.setup.successful=Cloud setup successful\\\! +# label.may.continue=You may now continue. +# error.installWizard.message=Something went wrong; you may go back and correct any errors +# message.installWizard.now.building=Now building your cloud... +# message.installWizard.click.retry=Click the button to retry launch. +# label.launch=Launch +# label.installWizard.click.launch=Click the launch button. +# label.congratulations=Congratulations\\\! +# label.installWizard.addSecondaryStorageIntro.subtitle=What is secondary storage? +# label.installWizard.addSecondaryStorageIntro.title=Let’s add secondary storage +# label.installWizard.addPrimaryStorageIntro.subtitle=What is primary storage? +# label.installWizard.addPrimaryStorageIntro.title=Let’s add primary storage +# label.installWizard.addHostIntro.subtitle=What is a host? +# label.installWizard.addHostIntro.title=Let’s add a host +# label.installWizard.addClusterIntro.subtitle=What is a cluster? +# label.installWizard.addClusterIntro.title=Let’s add a cluster +# label.installWizard.addPodIntro.subtitle=What is a pod? +# label.installWizard.addPodIntro.title=Let’s add a pod +# label.installWizard.addZone.title=Add zone +# label.installWizard.addZoneIntro.subtitle=What is a zone? +# label.installWizard.addZoneIntro.title=Let’s add a zone +# error.password.not.match=The password fields do not match +# label.confirm.password=Confirm password +# message.change.password=Please change your password. +# label.save.and.continue=Save and continue +# label.skip.guide=I have used CloudStack before, skip this guide +# label.continue.basic.install=Continue with basic installation +# label.introduction.to.cloudstack=Introduction to CloudStack&\\\#8482 +# label.what.is.cloudstack=What is CloudStack&\\\#8482? +# label.hints=Hints +# label.installWizard.subtitle=This tour will aid you in setting up your CloudStack&\\\#8482 installation +# label.continue=Continue +# label.installWizard.title=Hello and Welcome to CloudStack&\\\#8482 +# label.agree=Agree +# label.manage.resources=Manage Resources +# label.port.forwarding.policies=Port forwarding policies +# label.load.balancing.policies=Load balancing policies +# label.networking.and.security=Networking and security +# label.bandwidth=Bandwidth +# label.virtual.machines=Virtual machines +# label.compute.and.storage=Compute and Storage +# label.task.completed=Task completed +# label.update.project.resources=Update project resources +# label.remove.project.account=Remove project account +# label.item.listing=Item listing +# message.select.item=Please select an item. +# label.removing=Removing +# label.invite=Invite +# label.add.by=Add by +# label.max.vms=Max. user VMs +# label.max.public.ips=Max. public IPs +# label.max.volumes=Max. volumes +# label.max.snapshots=Max. snapshots +# label.max.templates=Max. templates +# label.max.vpcs=Max. VPCs +# label.project.dashboard=Project dashboard +label.remind.later=\u0630\u0643\u0631\u0646\u064a \u0644\u0627\u062d\u0642\u0627\u064b +label.invited.accounts=\u062f\u0639\u0648\u0629 \u062d\u0633\u0627\u0628\u0627\u062a +label.invite.to=\u062f\u0639\u0648\u0629 \u0644\u0640 +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.project.name=\u0627\u0633\u0645 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 +label.create.project=\u0623\u0646\u0634\u0626 \u0645\u0634\u0631\u0648\u0639 +label.networks=\u0627\u0644\u0634\u0628\u0643\u0627\u062a +# label.launch.vm=Launch VM +# label.new.vm=New VM +label.previous=\u0627\u0644\u0633\u0627\u0628\u0642 +label.add.to.group=\u0625\u0636\u0627\u0641\u0629 \u0625\u0644\u0649 \u0627\u0644\u0645\u062c\u0645\u0648\u0639\u0629 +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.select.security.groups=Please select security group(s) for your new VM +label.new=\u062c\u062f\u064a\u062f +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.please.proceed=Please proceed to the next step. +# message.zone.no.network.selection=The zone you selected does not have any choices for network selection. +label.no.thanks=\u0644\u0627\u061b \u0634\u0643\u0631\u0627\u064b +label.my.templates=\u0642\u0648\u0627\u0644\u0628\u064a +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.select.iso=Please select an ISO for your new virtual instance. +# message.template.desc=OS image that can be used to boot VMs +# message.iso.desc=Disc image containing data or bootable media for OS +# label.select.iso.or.template=Select ISO or template +# message.select.a.zone=A zone typically corresponds to a single datacenter. Multiple zones help make the cloud more reliable by providing physical isolation and redundancy. +# label.select.a.zone=Select a zone +label.review=\u0645\u0631\u0627\u062c\u0639\u0629 +label.select.a.template=\u0627\u062e\u062a\u0631 \u0642\u0627\u0644\u0628 +label.setup=\u0627\u0644\u062a\u062b\u0628\u064a\u062a +state.Allocated=\u062a\u062e\u0635\u064a\u0635 +changed.item.properties=\u062a\u063a\u064a\u0631 \u062e\u0635\u0627\u0626\u0635 \u0627\u0644\u0639\u0646\u0635\u0631 +label.apply=\u062a\u0637\u0628\u064a\u0642 +label.default=\u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a +label.viewing=\u0639\u0631\u0636 +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.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.drag.new.position=\u0627\u0633\u062d\u0628 \u0644\u0645\u0648\u0642\u0641 \u062c\u062f\u064a\u062f +label.order=\u062a\u0631\u062a\u064a\u0628 +label.no.data=\u0644\u0627 \u064a\u0648\u062c\u062f \u0628\u064a\u0627\u0646\u0627\u062a \u0644\u0644\u0639\u0631\u0636 +label.change.value=\u062a\u063a\u064a\u0631 \u0627\u0644\u0642\u064a\u0645\u0629 +label.clear.list=\u0645\u0633\u062d \u0627\u0644\u0642\u0627\u0626\u0645\u0629 +label.full.path=\u0645\u0633\u0627\u0631 \u0643\u0627\u0645\u0644 +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.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.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.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.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.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.edit.account=Edit ("-1" indicates no limit to the amount of resources create) +# label.total.of.vm=Total of VM +# label.total.of.ip=Total of IP Address +state.enabled=\u062a\u0645\u0643\u064a\u0646 +# message.action.download.iso=Please confirm that you want to download this ISO. +# message.action.download.template=Please confirm that you want to download this template. +# label.destination.zone=Destination Zone +label.keyboard.type=\u0646\u0648\u0639 \u0644\u0648\u062d\u0629 \u0627\u0644\u0645\u0641\u0627\u062a\u064a\u062d +# label.nic.adapter.type=NIC adapter type +# label.root.disk.controller=Root disk controller +# label.community=Community +# label.remove.egress.rule=Remove egress rule +# label.add.egress.rule=Add egress rule +# label.egress.rule=Egress rule +# label.remove.ingress.rule=Remove ingress rule +# label.delete.vpn.user=Delete VPN user +# label.add.vpn.user=Add VPN user +# label.remove.pf=Remove port forwarding rule +# label.remove.vm.from.lb=Remove VM from load balancer rule +# label.add.vms.to.lb=Add VM(s) to load balancer rule +# label.add.vm=Add VM +# label.remove.static.nat.rule=Remove static NAT rule +# label.remove.rule=Remove rule +# label.add.static.nat.rule=Add static NAT rule +label.add.rule=\u0625\u0636\u0627\u0641\u0629 \u0642\u0627\u0639\u062f\u0629 +label.configuration=\u0627\u0644\u062a\u0643\u0648\u064a\u0646 +# message.disable.vpn=Are you sure you want to disable VPN? +# label.disable.vpn=Disable VPN +# message.enable.vpn=Please confirm that you want VPN access enabled for this IP address. +# label.enable.vpn=Enable VPN +# message.acquire.new.ip=Please confirm that you would like to acquire a new IP for this network. +label.elastic=\u0645\u0631\u0646 +label.my.network=\u0634\u0628\u0643\u062a\u064a +# label.add.vms=Add VMs +label.configure=\u0642\u0645 \u0628\u062a\u0643\u0648\u064a\u0646 +# label.stickiness=Stickiness +label.source=\u0645\u0635\u062f\u0631 +label.least.connections=\u0623\u0642\u0644 \u0627\u0644\u0625\u062a\u0635\u0627\u0644\u0627\u062a +# label.round.robin=Round-robin +label.restart.required=\u0645\u0637\u0644\u0648\u0628 \u0625\u0639\u0627\u062f\u0629 \u0627\u0644\u062a\u0634\u063a\u064a\u0644 +label.clean.up=\u062a\u0646\u0638\u064a\u0641 +label.restart.network=\u0625\u0639\u0627\u062f\u0629 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u0634\u0628\u0643\u0629 +label.edit.network.details=\u062a\u062d\u0631\u064a\u0631 \u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u0634\u0628\u0643\u0629 +# label.add.guest.network=Add guest network +# label.guest.networks=Guest networks +# message.ip.address.changed=Your IP addresses may have changed; would you like to refresh the listing? Note that in this case the details pane will close. +# state.BackingUp=Backing Up +# state.BackedUp=Backed Up +# label.done=Done +# label.vm.name=VM name +# message.migrate.volume=Please confirm that you want to migrate volume to another primary storage. +# label.migrate.volume=Migrate volume to another primary storage +# message.create.template=Are you sure you want to create template? +# label.create.template=Create template +# message.download.volume.confirm=Please confirm that you want to download this volume +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 +state.ready=\u062c\u0627\u0647\u0632 +state.Ready=\u062c\u0627\u0647\u0632 +# label.vm.display.name=VM display name +label.select-view=\u062d\u062f\u062f \u0637\u0631\u064a\u0642\u0629 \u0627\u0644\u0639\u0631\u0636 +# label.local.storage=Local Storage +label.direct.ips=\u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0645\u0634\u062a\u0631\u0643\u0629 IPs +label.view.all=\u0639\u0631\u0636 \u0627\u0644\u0643\u0644 +label.zone.details=\u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u0645\u0646\u0637\u0642\u0629 +# message.alert.state.detected=Alert state detected +# state.Starting=Starting +state.Expunging=\u0645\u062d\u0648 +state.Creating=\u0625\u0646\u0634\u0627\u0621 +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 +label.decline.invitation=\u0631\u0641\u0636 \u0627\u0644\u062f\u0639\u0648\u0629 +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.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 +label.accept.project.invitation=\u0642\u0628\u0648\u0644 \u062f\u0639\u0648\u0629 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 +# label.token=Token +# label.project.id=Project ID +# message.enter.token=Please enter the token that you were given in your invite e-mail. +# label.enter.token=Enter token +state.Accepted=\u062a\u0645 \u0627\u0644\u0642\u0628\u0648\u0644 +state.Pending=\u0641\u064a \u0627\u0644\u0627\u0646\u062a\u0638\u0627\u0631 +state.Completed=\u062a\u0645 \u0627\u0644\u0627\u0643\u0645\u0627\u0644 +state.Declined=\u062a\u0645 \u0627\u0644\u0631\u0641\u0636 +label.project=\u0645\u0634\u0631\u0648\u0639 +label.invitations=\u062f\u0639\u0648\u0627\u062a +label.delete.project=\u062d\u0630\u0641 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 +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.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 +label.activate.project=\u062a\u0641\u0639\u064a\u0644 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 +label.suspend.project=\u0625\u064a\u0642\u0627\u0641 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 +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 +state.Suspended=\u062a\u0645 \u0627\u0644\u0625\u064a\u0642\u0627\u0641 +label.edit.project.details=\u0627\u0636\u0627\u0641\u0629 \u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 +label.new.project=\u0645\u0634\u0631\u0648\u0639 \u062c\u062f\u064a\u062f +state.Active=\u0646\u0634\u0637 +# state.Disabled=Disabled +label.projects=\u0627\u0644\u0645\u0634\u0627\u0631\u064a\u0639 +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.remove.project.account=Remove project account +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 +label.add.account.to.project=\u0625\u0636\u0627\u0641\u0629 \u062d\u0633\u0627\u0628 \u0644\u0644\u0645\u0634\u0631\u0648\u0639 +label.revoke.project.invite=\u0625\u0644\u063a\u0627\u0621 \u0627\u0644\u062f\u0639\u0648\u0629 +label.project.invite=\u062f\u0639\u0648\u0629 \u0625\u0644\u0649 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 +label.select.project=\u062d\u062f\u062f \u0627\u0644\u0645\u0634\u0631\u0648\u0639 +message.no.projects=\u0644\u064a\u0633 \u0644\u062f\u064a\u0643 \u0623\u064a \u0645\u0634\u0627\u0631\u064a\u0639.
    \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.no.projects.adminOnly=\u0644\u064a\u0633 \u0644\u062f\u064a\u0643 \u0623\u064a \u0645\u0634\u0627\u0631\u064a\u0639.
    \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.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.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 . +label.view=\u0639\u0631\u0636 +instances.actions.reboot.label=\u0625\u0639\u0627\u062f\u0629 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u0646\u0645\u0648\u0630\u062c +label.filterBy=\u062a\u0635\u0641\u064a\u0629 \u062d\u0633\u0628 +label.ok=\u0645\u0648\u0627\u0641\u0642 +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 +label.display.name=\u0639\u0631\u0636 \u0627\u0644\u0627\u0633\u0645 +label.zone.name=\u0627\u0633\u0645 \u0627\u0644\u0645\u0646\u0637\u0642\u0629 +ui.listView.filters.all=\u0627\u0644\u0643\u0644 +# ui.listView.filters.mine=Mine +# state.Running=Running +state.Stopped=\u062a\u0648\u0642\u0641 +state.Destroyed=\u062f\u0645\u0631 +state.Error=\u062e\u0637\u0623 +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 +label.notifications=\u0627\u0644\u062a\u0646\u0628\u064a\u0647\u0627\u062a +label.default.view=\u0637\u0631\u064a\u0642\u0629 \u0627\u0644\u0639\u0631\u0636 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 +label.project.view=\u0639\u0631\u0636 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 + +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.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. +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.hypervisor.capabilities=Hypervisor capabilities +# label.hypervisor.version=Hypervisor version +label.max.guest.limit=\u0627\u0644\u062d\u062f \u0627\u0644\u0623\u0642\u0635\u0627\u0621 \u0644\u0636\u064a\u0641 +# label.add.network.offering=Add network offering +label.supported.services=\t\u0627\u0644\u062e\u062f\u0645\u0627\u062a \u0627\u0644\u0645\u062f\u0639\u0648\u0645\u0629 +label.service.capabilities=\u0642\u062f\u0631\u0627\u062a \u0627\u0644\u062e\u062f\u0645\u0629 +label.guest.type=\u0646\u0648\u0639 \u0627\u0644\u0636\u064a\u0641 +label.specify.IP.ranges=\u062a\u062d\u062f\u064a\u062f \u0646\u0637\u0627\u0642\u0627\u062a IP +# label.conserve.mode=Conserve mode +# label.created.by.system=Created by system +# label.menu.system.service.offerings=System Offerings +# label.add.system.service.offering=Add System Service Offering +# label.redundant.router.capability=Redundant router capability +# label.supported.source.NAT.type=Supported Source NAT type +# label.elastic.LB=Elastic LB +# label.LB.isolation=LB isolation +# label.elastic.IP=Elastic IP +# label.network.label.display.for.blank.value=Use default gateway +# label.xen.traffic.label=XenServer traffic label +# label.kvm.traffic.label=KVM traffic label +# label.vmware.traffic.label=VMware traffic label +# label.start.IP=Start IP +# label.end.IP=End IP +# label.remove.ip.range=Remove IP range +# label.ip.ranges=IP Ranges +# label.start.vlan=Start Vlan +# label.end.vlan=End Vlan +# label.broadcast.domain.range=Broadcast domain range +# label.compute=Compute +# message.add.guest.network=Please confirm that you would like to add a guest network +# label.subdomain.access=Subdomain Access +# label.guest.start.ip=Guest start IP +# label.guest.end.ip=Guest end IP +# label.virtual.router=Virtual Router +# label.physical.network.ID=Physical network ID +# label.destination.physical.network.id=Destination physical network ID +# label.dhcp=DHCP +# label.destroy.router=Destroy router +# message.confirm.destroy.router=Please confirm that you would like to destroy this router +# label.change.service.offering=Change service offering +# label.view.console=View console +# label.redundant.state=Redundant state +# label.enable.provider=Enable provider +# message.confirm.enable.provider=Please confirm that you would like to enable this provider +# label.disable.provider=Disable provider +# message.confirm.disable.provider=Please confirm that you would like to disable this provider +# label.shutdown.provider=Shutdown provider +# message.confirm.shutdown.provider=Please confirm that you would like to shutdown this provider +# label.netScaler=NetScaler +# label.add.new.NetScaler=Add new NetScaler +# label.capacity=Capacity +# label.dedicated=Dedicated +# label.f5=F5 +# label.add.new.F5=Add new F5 +# label.srx=SRX +# label.providers=Providers +# label.add.new.SRX=Add new SRX +# label.timeout=Timeout +# label.public.network=Public network +# label.private.network=Private network +# label.enable.swift=Enable Swift +# confirm.enable.swift=Please fill in the following information to enable support for Swift +# message.after.enable.swift=Swift configured. Note\\\: When you leave this page, you will not be able to re-configure Swift again. +# label.key=Key +# label.delete.NetScaler=Delete NetScaler +# message.confirm.delete.NetScaler=Please confirm that you would like to delete NetScaler +# label.delete.F5=Delete F5 +# message.confirm.delete.F5=Please confirm that you would like to delete F5 +# label.delete.SRX=Delete SRX +# message.confirm.delete.SRX=Please confirm that you would like to delete SRX +# label.pods=Pods +# label.pod.name=Pod name +# label.reserved.system.gateway=Reserved system gateway +# label.reserved.system.netmask=Reserved system netmask +# label.start.reserved.system.IP=Start Reserved system IP +# label.end.reserved.system.IP=End Reserved system IP +# label.clusters=Clusters +# label.cluster.name=Cluster Name +# label.host.MAC=Host MAC +# label.agent.username=Agent Username +# label.agent.password=Agent Password +# message.confirm.action.force.reconnect=Please confirm that you want to force reconnect this host. +# label.resource.state=Resource state +# label.LUN.number=LUN \\\# +# message.confirm.remove.IP.range=Please confirm that you would like to remove this IP range. +# message.tooltip.zone.name=A name for the zone. +# message.tooltip.dns.1=Name of a DNS server for use by VMs in the zone. The public IP addresses for the zone must have a route to this server. +# message.tooltip.dns.2=A second DNS server name for use by VMs in the zone. The public IP addresses for the zone must have a route to this server. +# message.tooltip.internal.dns.1=Name of a DNS server for use by CloudStack internal system VMs in the zone. The private IP address for the pods must have a route to this server. +# message.tooltip.internal.dns.2=Name of a DNS server for use by CloudStack internal system VMs in the zone. The private IP address for the pods must have a route to this server. +# message.tooltip.network.domain=A DNS suffix that will create a custom domain name for the network that is accessed by guest VMs. +# message.tooltip.pod.name=A name for this pod. +# message.tooltip.reserved.system.gateway=The gateway for the hosts in the pod. +# message.tooltip.reserved.system.netmask=The network prefix that defines the pod subnet. Uses CIDR notation. +# message.creating.zone=Creating zone +# message.creating.physical.networks=Creating physical networks +# message.configuring.physical.networks=Configuring physical networks +# message.adding.Netscaler.device=Adding Netscaler device +# message.creating.pod=Creating pod +# message.configuring.public.traffic=Configuring public traffic +# message.configuring.storage.traffic=Configuring storage traffic +# message.configuring.guest.traffic=Configuring guest traffic +# message.creating.cluster=Creating cluster +# message.adding.host=Adding host +# message.creating.primary.storage=Creating primary storage +# message.creating.secondary.storage=Creating secondary storage +# message.Zone.creation.complete=Zone creation complete +# message.enabling.zone=Enabling zone +# error.something.went.wrong.please.correct.the.following=Something went wrong; please correct the following +# error.could.not.enable.zone=Could not enable zone +# message.zone.creation.complete.would.you.like.to.enable.this.zone=Zone creation complete. Would you like to enable this zone? +# message.please.add.at.lease.one.traffic.range=Please add at least one traffic range. +# message.you.must.have.at.least.one.physical.network=You must have at least one physical network +# message.please.select.a.different.public.and.management.network.before.removing=Please select a different public and management network before removing + +# label.zone.type=Zone Type +# label.setup.zone=Setup Zone +# label.setup.network=Setup Network +# label.add.resources=Add Resources +# label.launch=Launch +# label.set.up.zone.type=Set up zone type +# message.please.select.a.configuration.for.your.zone=Please select a configuration for your zone. +# message.desc.basic.zone=Provide a single network where each VM instance is assigned an IP directly from the network. Guest isolation can be provided through layer-3 means such as security groups (IP address source filtering). +# label.basic=Basic +# message.desc.advanced.zone=For more sophisticated network topologies. This network model provides the most flexibility in defining guest networks and providing custom network offerings such as firewall, VPN, or load balancer support. +# label.advanced=Advanced +# message.desc.zone=A zone is the largest organizational unit in CloudStack, and it typically corresponds to a single datacenter. Zones provide physical isolation and redundancy. A zone consists of one or more pods (each of which contains hosts and primary storage servers) and a secondary storage server which is shared by all pods in the zone. +# label.physical.network=Physical Network +# label.public.traffic=Public traffic +# label.guest.traffic=Guest Traffic +# label.storage.traffic=Storage Traffic +# message.setup.physical.network.during.zone.creation=When adding an advanced zone, you need to set up one or more physical networks. Each network corresponds to a NIC on the hypervisor. Each physical network can carry one or more types of traffic, with certain restrictions on how they may be combined.

    Drag and drop one or more traffic types onto each physical network. +# label.add.physical.network=Add physical network +# label.traffic.types=Traffic Types +# label.management=Management +# label.guest=Guest +# label.please.specify.netscaler.info=Please specify Netscaler info +# message.public.traffic.in.advanced.zone=Public traffic is generated when VMs in the cloud access the internet. Publicly-accessible IPs must be allocated for this purpose. End users can use the CloudStack UI to acquire these IPs to implement NAT between their guest network and their public network.

    Provide at least one range of IP addresses for internet traffic. +# message.public.traffic.in.basic.zone=Public traffic is generated when VMs in the cloud access the Internet or provide services to clients over the Internet. Publicly accessible IPs must be allocated for this purpose. When a instance is created, an IP from this set of Public IPs will be allocated to the instance in addition to the guest IP address. Static 1-1 NAT will be set up automatically between the public IP and the guest IP. End users can also use the CloudStack UI to acquire additional IPs to implement static NAT between their instances and the public IP. +# message.add.pod.during.zone.creation=Each zone must contain in one or more pods, and we will add the first pod now. A pod contains hosts and primary storage servers, which you will add in a later step. First, configure a range of reserved IP addresses for CloudStack's internal management traffic. The reserved IP range must be unique for each zone in the cloud. +# message.guest.traffic.in.advanced.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of VLAN IDs to carry guest traffic for each physical network. +# message.guest.traffic.in.basic.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of IP addresses that CloudStack can assign to guest VMs. Make sure this range does not overlap the reserved system IP range. +# message.storage.traffic=Traffic between CloudStack's internal resources, including any components that communicate with the Management Server, such as hosts and CloudStack system VMs. Please configure storage traffic here. +# message.desc.cluster=Each pod must contain one or more clusters, and we will add the first cluster now. A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Each cluster consists of one or more hosts and one or more primary storage servers. +# message.desc.host=Each cluster must contain at least one host (computer) for guest VMs to run on, and we will add the first host now. For a host to function in CloudStack, you must install hypervisor software on the host, assign an IP address to the host, and ensure the host is connected to the CloudStack management server.

    Give the host's DNS or IP address, the user name (usually root) and password, and any labels you use to categorize hosts. +# message.desc.primary.storage=Each cluster must contain one or more primary storage servers, and we will add the first one now. Primary storage contains the disk volumes for all the VMs running on hosts in the cluster. Use any standards-compliant protocol that is supported by the underlying hypervisor. +# message.desc.secondary.storage=Each zone must have at least one NFS or secondary storage server, and we will add the first one now. Secondary storage stores VM templates, ISO images, and VM disk volume snapshots. This server must be available to all hosts in the zone.

    Provide the IP address and exported path. +# label.launch.zone=Launch zone +# message.please.wait.while.zone.is.being.created=Please wait while your zone is being created; this may take a while... + +# label.load.balancing=Load Balancing +# label.static.nat.enabled=Static NAT Enabled +# label.zones=Zones +# label.view.more=View more +# label.number.of.zones=Number of Zones +# label.number.of.pods=Number of Pods +# label.number.of.clusters=Number of Clusters +# label.number.of.hosts=Number of Hosts +# label.total.hosts=Total Hosts +# label.total.CPU=Total CPU +# label.total.memory=Total Memory +# label.total.storage=Total Storage +# label.purpose=Purpose + + + + +# label.action.migrate.router=Migrate Router +# label.action.migrate.router.processing=Migrating Router.... +# message.migrate.router.confirm=Please confirm the host you wish to migrate the router to\\\: +# label.migrate.router.to=Migrate Router to + +# label.action.migrate.systemvm=Migrate System VM +# label.action.migrate.systemvm.processing=Migrating System VM.... +# message.migrate.systemvm.confirm=Please confirm the host you wish to migrate the system VM to\\\: +# label.migrate.systemvm.to=Migrate System VM to + + +# mode=Mode +# side.by.side=Side by Side +# inline=Inline + +# extractable=Extractable + +# label.ocfs2=OCFS2 + +# label.action.edit.host=Edit Host + +# network.rate=Network Rate + +# ICMP.type=ICMP Type +# ICMP.code=ICMP Code + +# image.directory=Image Directory + +# label.action.create.template.from.vm=Create Template from VM +# label.action.create.template.from.volume=Create Template from Volume + +# message.vm.create.template.confirm=Create Template will reboot the VM automatically. + +# label.action.manage.cluster=Manage Cluster +# message.action.manage.cluster=Please confirm that you want to manage the cluster. +# label.action.manage.cluster.processing=Managing Cluster.... + +# label.action.unmanage.cluster=Unmanage Cluster +# message.action.unmanage.cluster=Please confirm that you want to unmanage the cluster. +# label.action.unmanage.cluster.processing=Unmanaging Cluster.... + +# label.allocation.state=Allocation State +# managed.state=Managed State + +# label.default.use=Default Use +# label.host.tags=Host Tags + +# label.cidr=CIDR +# label.cidr.list=Source CIDR + +# label.storage.tags=Storage Tags + +# label.redundant.router=Redundant Router +# label.is.redundant.router=Redundant + +# force.delete=Force Delete +# force.delete.domain.warning=Warning\\\: Choosing this option will cause the deletion of all child domains and all associated accounts and their resources. + +# force.remove=Force Remove +# force.remove.host.warning=Warning\\\: Choosing this option will cause CloudStack to forcefully stop all running virtual machines before removing this host from the cluster. + +# force.stop=Force Stop +# force.stop.instance.warning=Warning\\\: Forcing a stop on this instance should be your last option. It can lead to data loss as well as inconsistent behavior of the virtual machine state. + +# label.PreSetup=PreSetup +# label.SR.name = SR Name-Label +# label.SharedMountPoint=SharedMountPoint +# label.clvm=CLVM +# label.volgroup=Volume Group +# label.VMFS.datastore=VMFS datastore + +# label.network.device=Network Device +# label.add.network.device=Add Network Device +# label.network.device.type=Network Device Type +# label.DHCP.server.type=DHCP Server Type +# label.Pxe.server.type=Pxe Server Type +# label.PING.storage.IP=PING storage IP +# label.PING.dir=PING Directory +# label.TFTP.dir=TFTP Directory +# label.PING.CIFS.username=PING CIFS username +# label.PING.CIFS.password=PING CIFS password +# label.CPU.cap=CPU Cap + + +# label.action.enable.zone=Enable Zone +# label.action.enable.zone.processing=Enabling Zone.... +# message.action.enable.zone=Please confirm that you want to enable this zone. +# label.action.disable.zone=Disable Zone +# label.action.disable.zone.processing=Disabling Zone.... +# message.action.disable.zone=Please confirm that you want to disable this zone. + +# label.action.enable.pod=Enable Pod +# label.action.enable.pod.processing=Enabling Pod.... +# message.action.enable.pod=Please confirm that you want to enable this pod. +# label.action.disable.pod=Disable Pod +# label.action.disable.pod.processing=Disabling Pod.... +# message.action.disable.pod=Please confirm that you want to disable this pod. + +# label.action.enable.cluster=Enable Cluster +# label.action.enable.cluster.processing=Enabling Cluster.... +# message.action.enable.cluster=Please confirm that you want to enable this cluster. +# label.action.disable.cluster=Disable Cluster +# label.action.disable.cluster.processing=Disabling Cluster.... +# message.action.disable.cluster=Please confirm that you want to disable this cluster. + +# label.account.id=Account ID +# label.account.name=Account Name +# label.account.specific=Account-Specific +# label.account=Account +# label.accounts=Accounts +# label.acquire.new.ip=Acquire New IP +# label.show.ingress.rule=Show Ingress Rule +# label.hide.ingress.rule=Hide Ingress Rule +# label.action.attach.disk.processing=Attaching Disk.... +# label.action.attach.disk=Attach Disk +# label.action.attach.iso.processing=Attaching ISO.... +# label.action.attach.iso=Attach ISO +# label.action.cancel.maintenance.mode.processing=Cancelling Maintenance Mode.... +# label.action.cancel.maintenance.mode=Cancel Maintenance Mode +# label.action.change.password=Change Password +# label.action.change.service.processing=Changing Service.... +# label.action.change.service=Change Service +# label.action.copy.ISO.processing=Coping ISO.... +# label.action.copy.ISO=Copy ISO +# label.action.copy.template.processing=Coping Template.... +# label.action.copy.template=Copy Template +# label.action.create.template.processing=Creating Template.... +# label.action.create.template=Create Template +# label.action.create.vm.processing=Creating VM.... +# label.action.create.vm=Create VM +# label.action.create.volume.processing=Creating Volume.... +# label.action.create.volume=Create Volume +# label.action.delete.IP.range.processing=Deleting IP Range.... +# label.action.delete.IP.range=Delete IP Range +# label.action.delete.ISO.processing=Deleting ISO.... +# label.action.delete.ISO=Delete ISO +# label.action.delete.account.processing=Deleting account.... +# label.action.delete.account=Delete account +# label.action.delete.cluster.processing=Deleting Cluster.... +# label.action.delete.cluster=Delete Cluster +# label.action.delete.disk.offering.processing=Deleting Disk Offering.... +# label.action.delete.disk.offering=Delete Disk Offering + +# label.action.update.resource.count=Update Resource Count +# label.action.update.resource.count.processing=Updating Resource Count.... + +# label.action.delete.domain=Delete Domain +# label.action.delete.domain.processing=Deleting Domain.... + +# label.action.delete.firewall.processing=Deleting Firewall.... +# label.action.delete.firewall=Delete firewall rule +# label.action.delete.ingress.rule.processing=Deleting Ingress Rule.... +# label.action.delete.ingress.rule=Delete Ingress Rule +# label.action.delete.load.balancer.processing=Deleting Load Balancer.... +# label.action.delete.load.balancer=Delete load balancer rule +# label.action.edit.network.processing=Editing Network.... +# label.action.edit.network=Edit Network +# label.action.delete.network.processing=Deleting Network.... +# label.action.delete.network=Delete Network +# label.action.delete.pod.processing=Deleting Pod.... +# label.action.delete.pod=Delete Pod +# label.action.delete.primary.storage.processing=Deleting Primary Storage.... +# label.action.delete.primary.storage=Delete Primary Storage +# label.action.delete.secondary.storage.processing=Deleting Secondary Storage.... +# label.action.delete.secondary.storage=Delete Secondary Storage +# label.action.delete.security.group.processing=Deleting Security Group.... +# label.action.delete.security.group=Delete Security Group +# label.action.delete.service.offering.processing=Deleting Service Offering.... +# label.action.delete.service.offering=Delete Service Offering +# label.action.delete.snapshot.processing=Deleting Snapshot.... +# label.action.delete.snapshot=Delete Snapshot +# label.action.delete.template.processing=Deleting Template.... +# label.action.delete.template=Delete Template +# label.action.delete.user.processing=Deleting User.... +# label.action.delete.user=Delete User +# label.action.delete.volume.processing=Deleting Volume.... +# label.action.delete.volume=Delete Volume +# label.action.delete.zone.processing=Deleting Zone.... +# label.action.delete.zone=Delete Zone +# label.action.destroy.instance.processing=Destroying Instance.... +# label.action.destroy.instance=Destroy Instance +# label.action.destroy.systemvm.processing=Destroying System VM.... +# label.action.destroy.systemvm=Destroy System VM +# label.action.detach.disk.processing=Detaching Disk.... +# label.action.detach.disk=Detach Disk +# label.action.detach.iso.processing=Detaching ISO.... +# label.action.detach.iso=Detach ISO +# label.action.disable.account.processing=Disabling account.... +# label.action.disable.account=Disable account +# label.action.disable.static.NAT.processing=Disabling Static NAT.... +# label.action.disable.static.NAT=Disable Static NAT +# label.action.disable.user.processing=Disabling User.... +# label.action.disable.user=Disable User +# label.action.download.ISO=Download ISO +# label.action.download.template=Download Template +# label.action.download.volume.processing=Downloading Volume.... +# label.action.download.volume=Download Volume +# label.action.edit.ISO=Edit ISO +# label.action.edit.account=Edit account +# label.action.edit.disk.offering=Edit Disk Offering +# label.action.edit.domain=Edit Domain +# label.action.edit.global.setting=Edit Global Setting +# label.action.edit.instance=Edit Instance +# label.action.edit.network.offering=Edit Network Offering +# label.action.edit.pod=Edit Pod +# label.action.edit.primary.storage=Edit Primary Storage +# label.action.edit.resource.limits=Edit Resource Limits +# label.action.edit.service.offering=Edit Service Offering +# label.action.edit.template=Edit Template +# label.action.edit.user=Edit User +# label.action.edit.zone=Edit Zone +# label.action.enable.account.processing=Enabling account.... +# label.action.enable.account=Enable account +# label.action.enable.maintenance.mode.processing=Enabling Maintenance Mode.... +# label.action.enable.maintenance.mode=Enable Maintenance Mode +# label.action.enable.static.NAT.processing=Enabling Static NAT.... +# label.action.enable.static.NAT=Enable Static NAT +# label.action.enable.user.processing=Enabling User.... +# label.action.enable.user=Enable User +# label.action.force.reconnect.processing=Reconnecting.... +# label.action.force.reconnect=Force Reconnect +# label.action.generate.keys.processing=Generate Keys.... +# label.action.generate.keys=Generate Keys +# label.action.lock.account.processing=Locking account.... +# label.action.lock.account=Lock account +# label.action.migrate.instance=Migrate Instance +# label.action.migrate.instance.processing=Migrating Instance.... +# label.action.reboot.instance.processing=Rebooting Instance.... +# label.action.reboot.instance=Reboot Instance +# label.action.reboot.router.processing=Rebooting Router.... +# label.action.reboot.router=Reboot Router +# label.action.reboot.systemvm.processing=Rebooting System VM.... +# label.action.reboot.systemvm=Reboot System VM +# label.action.recurring.snapshot=Recurring Snapshots +# label.action.release.ip.processing=Releasing IP.... +# label.action.release.ip=Release IP +# label.action.remove.host.processing=Removing Host.... +# label.action.remove.host=Remove Host +# label.action.reset.password.processing=Resetting Password.... +# label.action.reset.password=Reset Password +# label.action.resource.limits=Resource limits +# label.action.restore.instance.processing=Restoring Instance.... +# label.action.restore.instance=Restore Instance +# label.action.start.instance.processing=Starting Instance.... +# label.action.start.instance=Start Instance +# label.action.start.router.processing=Starting Router.... +# label.action.start.router=Start Router +# label.action.start.systemvm.processing=Starting System VM.... +# label.action.start.systemvm=Start System VM +# label.action.stop.instance.processing=Stopping Instance.... +# label.action.stop.instance=Stop Instance +# label.action.stop.router.processing=Stopping Router.... +# label.action.stop.router=Stop Router +# label.action.stop.systemvm.processing=Stopping System VM.... +# label.action.stop.systemvm=Stop System VM +# label.action.take.snapshot.processing=Taking Snapshot.... +# label.action.take.snapshot=Take Snapshot +# label.action.update.OS.preference.processing=Updating OS Preference.... +# label.action.update.OS.preference=Update OS Preference +# label.actions=Actions +# label.active.sessions=Active Sessions +# label.add.account=Add Account +# label.add.by.cidr=Add By CIDR +# label.add.by.group=Add By Group +# label.add.cluster=Add Cluster +# label.add.direct.iprange=Add Direct Ip Range +# label.add.disk.offering=Add Disk Offering +# label.add.domain=Add Domain +# label.add.firewall=Add firewall rule +# label.add.host=Add Host +# label.add.ingress.rule=Add Ingress Rule +# label.add.ip.range=Add IP Range +# label.add.load.balancer=Add Load Balancer +# label.add.more=Add More +# label.add.network=Add Network +# label.add.pod=Add Pod +# label.add.primary.storage=Add Primary Storage +# label.add.secondary.storage=Add Secondary Storage +# label.add.security.group=Add Security Group +# label.add.service.offering=Add Service Offering +# label.add.template=Add Template +# label.add.user=Add User +# label.add.vlan=Add VLAN +# label.add.volume=Add Volume +# label.add.zone=Add Zone +# label.add=Add +# label.adding.cluster=Adding Cluster +# label.adding.failed=Adding Failed +# label.adding.pod=Adding Pod +# label.adding.processing=Adding.... +# label.adding.succeeded=Adding Succeeded +# label.adding.user=Adding User +# label.adding.zone=Adding Zone +# label.adding=Adding +# label.additional.networks=Additional Networks +# label.admin.accounts=Admin Accounts +# label.admin=Admin +# label.advanced.mode=Advanced Mode +# label.advanced.search=Advance Search +# label.advanced=Advanced +# label.alert=Alert +# label.algorithm=Algorithm +# label.allocated=Allocated +# label.api.key=API Key +# label.assign.to.load.balancer=Assigning instance to load balancer +# label.assign=Assign +# label.associated.network.id=Associated Network ID +# label.attached.iso=Attached ISO +# label.availability.zone=Availability Zone +# label.availability=Availability +# label.available.public.ips=Available Public IP Addresses +# label.available=Available +# label.back=Back +# label.basic.mode=Basic Mode +# label.bootable=Bootable +# label.broadcast.domain.type=Broadcast Domain Type +# label.by.account=By Account +# label.by.availability=By Availability +# label.by.domain=By Domain +# label.by.end.date=By End Date +# label.by.level=By Level +# label.by.pod=By Pod +# label.by.role=By Role +# label.by.start.date=By Start Date +# label.by.state=By State +# label.by.traffic.type=By Traffic Type +# label.by.type.id=By Type ID +# label.by.type=By Type +# label.by.zone=By Zone +# label.bytes.received=Bytes Received +# label.bytes.sent=Bytes Sent +# label.cancel=Cancel +# label.certificate=Certificate +# label.privatekey=PKCS\\\#8 Private Key +# label.domain.suffix=DNS Domain Suffix (i.e., xyz.com) +# label.character=Character +# label.cidr.account=CIDR or Account/Security Group +# label.close=Close +# label.cloud.console=Cloud Management Console +# label.cloud.managed=Cloud.com Managed +# label.cluster.type=Cluster Type +# label.cluster=Cluster +# label.code=Code +# label.confirmation=Confirmation +# label.cpu.allocated.for.VMs=CPU Allocated for VMs +# label.cpu.allocated=CPU Allocated +# label.cpu.utilized=CPU Utilized +# label.cpu=CPU +# label.created=Created +# label.cross.zones=Cross Zones +# label.custom.disk.size=Custom Disk Size +# label.daily=Daily +# label.data.disk.offering=Data Disk Offering +# label.date=Date +# label.day.of.month=Day of Month +# label.day.of.week=Day of Week +# label.delete=Delete +# label.deleting.failed=Deleting Failed +# label.deleting.processing=Deleting.... +# label.description=Description +# label.detaching.disk=Detaching Disk +# label.details=Details +# label.device.id=Device ID +# label.disabled=Disabled +# label.disabling.vpn.access=Disabling VPN Access +# label.disk.allocated=Disk Allocated +# label.disk.offering=Disk Offering +# label.disk.size.gb=Disk Size (in GB) +# label.disk.size=Disk Size +# label.disk.total=Disk Total +# label.disk.volume=Disk Volume +# label.display.text=Display Text +# label.dns.1=DNS 1 +# label.dns.2=DNS 2 +# label.domain.admin=Domain Admin +# label.domain.id=Domain ID +# label.domain.name=Domain Name +# label.domain=Domain +# label.double.quotes.are.not.allowed=Double quotes are not allowed +# label.download.progress=Download Progress +# label.edit=Edit +# label.email=Email +# label.enabling.vpn.access=Enabling VPN Access +# label.enabling.vpn=Enabling VPN +# label.end.port=End Port +# label.endpoint.or.operation=Endpoint or Operation +# label.error.code=Error Code +# label.error=Error +# label.esx.host=ESX/ESXi Host +# label.example=Example +# label.failed=Failed +# label.featured=Featured +# label.firewall=Firewall +# label.first.name=First Name +# label.format=Format +# label.friday=Friday +# label.full=Full +# label.gateway=Gateway +# label.general.alerts=General Alerts +# label.generating.url=Generating URL +# label.go.step.2=Go to Step 2 +# label.go.step.3=Go to Step 3 +# label.go.step.4=Go to Step 4 +# label.go.step.5=Go to Step 5 +# label.group.optional=Group (Optional) +# label.group=Group +# label.guest.cidr=Guest CIDR +# label.guest.gateway=Guest Gateway +# label.guest.ip.range=Guest IP Range +# label.guest.ip=Guest IP Address +# label.guest.netmask=Guest Netmask +# label.ha.enabled=HA Enabled +# label.help=Help +# label.host.alerts=Host Alerts +# label.host.name=Host Name +# label.host=Host +# label.hosts=Hosts +# label.hourly=Hourly +# label.hypervisor.type=Hypervisor Type +# label.hypervisor=Hypervisor +# label.id=ID +# label.info=Info +# label.ingress.rule=Ingress Rule +# label.initiated.by=Initiated By +# label.instance.limits=Instance Limits +# label.instance.name=Instance Name +# label.instance=Instance +# label.instances=Instances +# label.internal.dns.1=Internal DNS 1 +# label.internal.dns.2=Internal DNS 2 +# label.interval.type=Interval Type +# label.invalid.integer=Invalid Integer +# label.invalid.number=Invalid Number +# label.ip.address=IP Address +# label.ip.allocations=IP Allocations +# label.ip.limits=Public IP Limits +# label.ip.or.fqdn=IP or FQDN +# label.ip.range=IP Range +# label.ip=IP +# label.ips=IPs +# label.is.default=Is Default +# label.is.shared=Is Shared +# label.is.system=Is System +# label.iscsi=iSCSI +# label.iso.boot=ISO Boot +# label.iso=ISO +# label.isolation.mode=Isolation Mode +# label.keep=Keep +# label.lang.chinese=Chinese (Simplified) +# label.lang.english=English +# label.lang.japanese=Japanese +# label.lang.spanish=Spanish +# label.lang.russian=Russian +# label.lang.french=French +# label.lang.brportugese=Brazilian Portugese +# label.last.disconnected=Last Disconnected +# label.last.name=Last Name +# label.level=Level +# label.linklocal.ip=Link Local IP Adddress +# label.load.balancer=Load Balancer +# label.loading=Loading +# label.local=Local +label.local.storage.enabled=\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u062a\u062e\u0632\u064a\u0646 \u0627\u0644\u0645\u062d\u0644\u064a +# label.login=Login +# label.logout=Logout +# label.lun=LUN +# label.manage=Manage +# label.maximum=Maximum +# label.memory.allocated=Memory Allocated +# label.memory.total=Memory Total +# label.memory.used=Memory Used +# label.memory=Memory +# label.menu.accounts=Accounts +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.menu.ipaddresses=IP Addresses +# label.menu.isos=ISOs +# label.menu.my.accounts=My Accounts +# label.menu.my.instances=My Instances +# label.menu.my.isos=My ISOs +# label.menu.my.templates=My Templates +# label.menu.network.offerings=Network Offerings +# label.menu.network=Network +# label.menu.physical.resources=Physical Resources +# label.menu.running.instances=Running Instances +# label.menu.security.groups=Security Groups +# label.menu.service.offerings=Service Offerings +# label.menu.snapshots=Snapshots +# label.menu.stopped.instances=Stopped Instances +# label.menu.storage=Storage +# label.menu.system.vms=System VMs +# label.menu.system=System +# label.menu.templates=Templates +# label.menu.virtual.appliances=Virtual Appliances +# label.menu.virtual.resources=Virtual Resources +# label.menu.volumes=Volumes +# label.migrate.instance.to=Migrate instance to +# label.minimum=Minimum +# label.minute.past.hour=minute(s) Past the Hour +# label.monday=Monday +# label.monthly=Monthly +# label.more.templates=More Templates +# label.my.account=My Account +# label.name.optional=Name (Optional) +# label.name=Name +# label.netmask=Netmask +# label.network.desc=Network Desc +# label.network.domain=Network Domain +# label.network.id=Network ID +# label.network.name=Network Name +# label.network.offering.display.text=Network Offering Display Text +# label.network.offering.id=Network Offering ID +# label.network.offering.name=Network Offering Name +# label.network.offering=Network Offering +# label.network.rate=Network Rate +# label.network.rate.megabytes=Network Rate (Mb/s) +# label.network.read=Network Read +# label.network.type=Network Type +# label.network.write=Network Write +# label.network=Network +# label.new.password=New Password +# label.next=Next +# label.nfs.server=NFS Server +# label.nfs.storage=NFS Storage +# label.nfs=NFS +# label.nics=NICs +# label.no.actions=No Available Actions +# label.no.alerts=No Recent Alerts +# label.no.errors=No Recent Errors +# label.no.isos=No available ISOs +# label.no.items=No Available Items +# label.no.security.groups=No Available Security Groups +label.no.thanks=\u0644\u0627\u061b \u0634\u0643\u0631\u0627\u064b +# label.no=No +# label.none=None +# label.not.found=Not Found +# label.num.cpu.cores=\\\# of CPU Cores +# label.numretries=Number of Retries +# label.offer.ha=Offer HA +# label.optional=Optional +# label.os.preference=OS Preference +# label.os.type=OS Type +# label.owned.public.ips=Owned Public IP Addresses +# label.owner.account=Owner Account +# label.owner.domain=Owner Domain +# label.parent.domain=Parent Domain +# label.password.enabled=Password Enabled +# label.password=Password +# label.path=Path +# label.please.wait=Please Wait +# label.pod=Pod +# label.port.forwarding=Port Forwarding +# label.port.range=Port Range +# label.prev=Prev +# label.primary.allocated=Primary Storage Allocated +# label.primary.network=Primary Network +# label.primary.storage=Primary Storage +# label.primary.used=Primary Storage Used +# label.private.interface=Private Interface +# label.private.ip.range=Private IP Range +# label.private.ip=Private IP Address +# label.private.ips=Private IP Addresses +# label.private.port=Private Port +# label.private.zone=Private Zone +# label.protocol=Protocol +# label.public.interface=Public Interface +# label.public.ip=Public IP Address +# label.public.ips=Public IP Addresses +# label.public.port=Public Port +# label.public.zone=Public Zone +# label.public=Public +# label.recent.errors=Recent Errors +# label.refresh=Refresh +# label.related=Related +# label.remove.from.load.balancer=Removing instance from load balancer +# label.removing.user=Removing User +# label.required=Required +# label.reserved.system.ip=Reserved System IP +# label.resource.limits=Resource Limits +# label.resource=Resource +# label.resources=Resources +# label.role=Role +# label.root.disk.offering=Root Disk Offering +# label.running.vms=Running VMs +# label.saturday=Saturday +# label.save=Save +# label.saving.processing=Saving.... +label.scope=\u0627\u0644\u0645\u062c\u0627\u0644 +label.search=\u0628\u062d\u062b +# label.secondary.storage=Secondary Storage +# label.secondary.used=Secondary Storage Used +# label.secret.key=Secret Key +# label.security.group.name=Security Group Name +# label.security.group=Security Group +# label.security.groups.enabled=Security Groups Enabled +# label.security.groups=Security Groups +# label.sent=Sent +# label.server=Server +# label.service.offering=Service Offering +# label.system.service.offering=System Service Offering +# label.session.expired=Session Expired +# label.shared=Shared +# label.size=Size +# label.snapshot.limits=Snapshot Limits +# label.snapshot.name=Snapshot Name +# label.snapshot.s=Snapshot (s) +# label.snapshot.schedule=Setup Recurring Snapshot +# label.snapshot=Snapshot +# label.snapshots=Snapshots +# label.source.nat=Source NAT +# label.specify.vlan=Specify VLAN +# label.start.port=Start Port +# label.state=State +# label.static.nat.to=Static NAT to +# label.static.nat=Static NAT +# label.statistics=Statistics +# label.status=Status +# label.step.1.title=Step 1\\\: Select a Template +# label.step.1=Step 1 +# label.step.2.title=Step 2\\\: Service Offering +# label.step.2=Step 2 +# label.step.3.title=Step 3\\\: Select a Disk Offering +# label.step.3=Step 3 +# label.step.4.title=Step 4\\\: Network +# label.step.4=Step 4 +# label.step.5.title=Step 5\\\: Review +# label.step.5=Step 5 +# label.stopped.vms=Stopped VMs +# label.storage.type=Storage Type +# label.storage=Storage +# label.submit=Submit +# label.submitted.by=[Submitted by\\\: ] +# label.succeeded=Succeeded +# label.sunday=Sunday +# label.system.capacity=System Capacity +# label.system.vm.type=System VM Type +# label.system.vm=System VM +# label.system.vms=System VMs +# label.tagged=Tagged +# label.tags=Tags +# label.target.iqn=Target IQN +# label.template.limits=Template Limits +# label.template=Template +# label.theme.default=Default Theme +# label.theme.grey=Custom - Grey +# label.theme.lightblue=Custom - Light Blue +# label.thursday=Thursday +# label.time.zone=Timezone +# label.time=Time +# label.timeout.in.second = Timeout(seconds) +# label.timezone=Timezone +# label.total.cpu=Total CPU +# label.total.vms=Total VMs +# label.traffic.type=Traffic Type +# label.tuesday=Tuesday +# label.type.id=Type ID +# label.type=Type +# label.unavailable=Unavailable +# label.unlimited=Unlimited +# label.untagged=Untagged +# label.update.ssl.cert= SSL Certificate +# label.update.ssl= SSL Certificate +# label.updating=Updating +# label.url=URL +# label.usage.interface=Usage Interface +# label.used=Used +# label.user=User +# label.username=Username +# label.users=Users +# label.value=Value +# label.vcenter.cluster=vCenter Cluster +# label.vcenter.datacenter=vCenter Datacenter +# label.vcenter.datastore=vCenter Datastore +# label.vcenter.host=vCenter Host +# label.vcenter.password=vCenter Password +# label.vcenter.username=vCenter Username +# label.version=Version +# label.virtual.appliance=Virtual Appliance +# label.virtual.appliances=Virtual Appliances +# label.virtual.network=Virtual Network +# label.vlan.id=VLAN ID +# label.vlan.range=VLAN Range +# label.vm.add=Add Instance +# label.vm.destroy=Destroy +# label.vm.reboot=Reboot +# label.vm.start=Start +# label.vm.stop=Stop +# label.vmfs=VMFS +# label.vms=VMs +label.volume.limits=\u062d\u062f\u0648\u062f \u0627\u0644\u0645\u0646\u0637\u0642\u0629 +# label.volume.name=Volume Name +# label.volume=Volume +# label.volumes=Volumes +# label.vsphere.managed=vSphere Managed +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.id=Zone ID +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 +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 +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 +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.zone=Zone + +#Messages +# message.acquire.public.ip=Please select a zone from which you want to acquire your new IP from. +# message.action.cancel.maintenance.mode=Please confirm that you want to cancel this maintenance. +# message.action.cancel.maintenance=Your host has been successfully canceled for maintenance. This process can take up to several minutes. +# message.action.delete.ISO.for.all.zones=The ISO is used by all zones. Please confirm that you want to delete it from all zones. +# message.action.delete.ISO=Please confirm that you want to delete this ISO. +# message.action.delete.cluster=Please confirm that you want to delete this cluster. +# message.action.delete.disk.offering=Please confirm that you want to delete this disk offering. +# message.action.delete.domain=Please confirm that you want to delete this domain. +# message.action.delete.external.firewall=Please confirm that you would like to remove this external firewall. Warning\\\: If you are planning to add back the same external firewall, you must reset usage data on the device. +# message.action.delete.external.load.balancer=Please confirm that you would like to remove this external load balancer. Warning\\\: If you are planning to add back the same external load balancer, you must reset usage data on the device. +# message.action.delete.ingress.rule=Please confirm that you want to delete this ingress rule. +# message.action.delete.network=Please confirm that you want to delete this network. +# message.action.delete.pod=Please confirm that you want to delete this pod. +# message.action.delete.primary.storage=Please confirm that you want to delete this primary storage. +# message.action.delete.secondary.storage=Please confirm that you want to delete this secondary storage. +# message.action.delete.security.group=Please confirm that you want to delete this security group. +# message.action.delete.service.offering=Please confirm that you want to delete this service offering. +# message.action.delete.snapshot=Please confirm that you want to delete this snapshot. +# message.action.delete.template.for.all.zones=The template is used by all zones. Please confirm that you want to delete it from all zones. +# message.action.delete.template=Please confirm that you want to delete this template. +# message.action.delete.volume=Please confirm that you want to delete this volume. +# message.action.delete.zone=Please confirm that you want to delete this zone. +# message.action.destroy.instance=Please confirm that you want to destroy this instance. +# message.action.destroy.systemvm=Please confirm that you want to destroy this System VM. +# message.action.disable.static.NAT=Please confirm that you want to disable static NAT. +# message.action.enable.maintenance=Your host has been successfully prepared for maintenance. This process can take up to several minutes or longer depending on how many VMs are currently on this host. +# message.action.force.reconnect=Your host has been successfully forced to reconnect. This process can take up to several minutes. +# message.action.host.enable.maintenance.mode=Enabling maintenance mode will cause a live migration of all running instances on this host to any available host. +# message.action.instance.reset.password=Please confirm that you want to change the ROOT password for this virtual machine. +# message.action.primarystorage.enable.maintenance.mode=Warning\\\: placing the primary storage into maintenance mode will cause all VMs using volumes from it to be stopped. Do you want to continue? +# message.action.reboot.instance=Please confirm that you want to reboot this instance. +# message.action.reboot.systemvm=Please confirm that you want to reboot this system VM. +# message.action.release.ip=Please confirm that you want to release this IP. +# message.action.remove.host=Please confirm that you want to remove this host. +# message.action.restore.instance=Please confirm that you want to restore this instance. +# message.action.start.instance=Please confirm that you want to start this instance. +# message.action.start.router=Please confirm that you want to start this router. +# message.action.start.systemvm=Please confirm that you want to start this system VM. +# message.action.stop.instance=Please confirm that you want to stop this instance. +# message.action.stop.systemvm=Please confirm that you want to stop this system VM. +# message.action.take.snapshot=Please confirm that you want to take a snapshot of this volume. +# message.add.cluster.zone=Add a hypervisor managed cluster for zone +# message.add.cluster=Add a hypervisor managed cluster for zone , pod +# message.add.disk.offering=Please specify the following parameters to add a new disk offering +# message.add.firewall=Add a firewall to zone +# message.add.host=Please specify the following parameters to add a new host +# message.add.ip.range.direct.network=Add an IP range to direct network in zone +# message.add.ip.range.to.pod=

    Add an IP range to pod\\\:

    +# message.add.ip.range=Add an IP range to public network in zone +# message.add.load.balancer=Add a load balancer to zone +# message.add.network=Add a new network for zone\\\: +# message.add.pod=Add a new pod for zone +# message.add.primary.storage=Add a new Primary Storage for zone , pod +# message.add.primary=Please specify the following parameters to add a new primary storage +# message.add.secondary.storage=Add a new storage for zone +# message.add.service.offering=Please fill in the following data to add a new compute offering. +# message.add.template=Please enter the following data to create your new template +# message.add.volume=Please fill in the following data to add a new volume. +# message.additional.networks.desc=Please select additional network(s) that your virtual instance will be connected to. +# message.advanced.mode.desc=Choose this network model if you wish to enable VLAN support. This network model provides the most flexibility in allowing administrators to provide custom network offerings such as providing firewall, vpn, or load balancer support as well as enabling direct vs virtual networking. +# message.advanced.security.group=Choose this if you wish to use security groups to provide guest VM isolation. +# message.advanced.virtual=Choose this if you wish to use zone-wide VLANs to provide guest VM isolation. +# message.allow.vpn.access=Please enter a username and password of the user that you want to allow VPN access. +# message.attach.iso.confirm=Please confirm that you want to attach the ISO to this virtual instance. +# message.attach.volume=Please fill in the following data to attach a new volume. If you are attaching a disk volume to a Windows based virtual machine, you will need to reboot the instance to see the attached disk. +# message.basic.mode.desc=Choose this network model if you do *not* want to enable any VLAN support. All virtual instances created under this network model will be assigned an IP directly from the network and security groups are used to provide security and segregation. +# message.change.offering.confirm=Please confirm that you wish to change the service offering of this virtual instance. +# message.copy.iso.confirm=Please confirm that you wish to copy your ISO to +# message.copy.template=Copy template XXX from zone to +# message.create.template.vm=Create VM from template +# message.create.template.volume=Please specify the following information before creating a template of your disk volume\\\: . Creation of the template can range from several minutes to longer depending on the size of the volume. +# message.delete.account=Please confirm that you want to delete this account. +# message.detach.iso.confirm=Please confirm that you want to detach the ISO from this virtual instance. +# message.disable.account=Please confirm that you want to disable this account. By disabling the account, all users for this account will no longer have access to their cloud resources. All running virtual machines will be immediately shut down. +# message.disable.vpn.access=Please confirm that you want to disable VPN Access. +# message.download.ISO=Please click 00000 to download ISO +# message.download.template=Please click 00000 to download template +# message.download.volume=Please click 00000 to download volume +# message.edit.confirm=Please confirm that your changes before clicking "Save". +# message.edit.limits=Please specify limits to the following resources. A "-1" indicates no limit to the amount of resources create. +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.vpn.access=VPN is currently disabled for this IP Address. Would you like to enable VPN access? +# message.enabled.vpn.ip.sec=Your IPSec pre-shared key is +# message.enabled.vpn=Your VPN access is currently enabled and can be accessed via the IP +# message.launch.vm.on.private.network=Do you wish to launch your instance on your own private dedicated network? +# message.lock.account=Please confirm that you want to lock this account. By locking the account, all users for this account will no longer be able to manage their cloud resources. Existing resources can still be accessed. +# message.migrate.instance.confirm=Please confirm the host you wish to migrate the virtual instance to. +# message.new.user=Specify the following to add a new user to the account +# message.no.network.support.configuration.not.true=You do not have any zone that has security group enabled. Thus, no additional network features. Please continue to step 5. +# message.no.network.support=Your selected hypervisor, vSphere, does not have any additional network features. Please continue to step 5. +# message.number.clusters=

    \\\# of Clusters

    +# message.number.hosts=

    \\\# of Hosts

    +# message.number.pods=

    \\\# of Pods

    +# message.number.storage=

    \\\# of Primary Storage Volumes

    +# message.number.zones=

    \\\# of Zones

    +# message.remove.vpn.access=Please confirm that you want to remove VPN access from the following user. +# message.restart.mgmt.server=Please restart your management server(s) for your new settings to take effect. +# message.restart.mgmt.usage.server=Please restart your management server(s) and usage server(s) for your new settings to take effect. +# message.security.group.usage=(Use Ctrl-click to select all applicable security groups) +# message.snapshot.schedule=You can setup recurring snapshot schedules by selecting from the available options below and applying your policy preference +# message.step.1.continue=Please select a template or ISO to continue +# message.step.1.desc=Please select a template for your new virtual instance. You can also choose to select a blank template from which an ISO image can be installed onto. +# message.step.2.continue=Please select a service offering to continue +message.step.2.desc= +# message.step.3.continue=Please select a disk offering to continue +message.step.3.desc= +# message.step.4.continue=Please select at least one network to continue +# message.step.4.desc=Please select the primary network that your virtual instance will be connected to. +# message.update.os.preference=Please choose a OS preference for this host. All virtual instances with similar preferences will be first allocated to this host before choosing another. +# message.update.ssl=Please submit a new X.509 compliant SSL certificate to be updated to each console proxy virtual instance\\\: +# message.virtual.network.desc=A dedicated virtualized network for your account. The broadcast domain is contained within a VLAN and all public network access is routed out by a virtual router. +# message.volume.create.template.confirm=Please confirm that you wish to create a template for this disk volume. Creation of the template can range from several minutes to longer depending on the size of the volume. +# message.zone.step.1.desc=Please select a network model for your zone. +# message.zone.step.2.desc=Please enter the following info to add a new zone +# message.zone.step.3.desc=Please enter the following info to add a new pod +# message.apply.snapshot.policy=You have successfully updated your current snapshot policy. +# message.disable.snapshot.policy=You have successfully disabled your current snapshot policy. +# message.action.change.service.warning.for.instance=Your instance must be stopped before attempting to change its current service offering. +# message.action.change.service.warning.for.router=Your router must be stopped before attempting to change its current service offering. +# message.action.reset.password.warning=Your instance must be stopped before attempting to change its current password. +# message.action.reset.password.off=Your instance currently does not support this feature. + +#Errors +# error.login=Your username/password does not match our records. +# error.menu.select=Unable to perform action due to no items being selected. +# error.mgmt.server.inaccessible=The Management Server is unaccessible. Please try again later. +# error.session.expired=Your session has expired. +# error.unresolved.internet.name=Your internet name cannot be resolved. + +# label.add.NiciraNvp.device=Add Nvp Controller +# label.delete.NiciraNvp=Remove Nvp Controller +# label.nicira.controller.address=Controller Address +# label.nicira.transportzoneuuid=Transport Zone Uuid +# label.nicira.l3gatewayserviceuuid=L3 Gateway Service Uuid + diff --git a/ui/index.jsp b/ui/index.jsp index 12cb9557912..69341fd91f9 100644 --- a/ui/index.jsp +++ b/ui/index.jsp @@ -81,6 +81,7 @@ under the License. + From 4ebe0469ea17c331e8f02e06dd70b584130bd06a Mon Sep 17 00:00:00 2001 From: Milamber Date: Mon, 29 Apr 2013 12:06:25 +0100 Subject: [PATCH 463/607] remove a \n char --- client/WEB-INF/classes/resources/messages_ar.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/WEB-INF/classes/resources/messages_ar.properties b/client/WEB-INF/classes/resources/messages_ar.properties index b4b1974ddd1..aa8e4410dda 100644 --- a/client/WEB-INF/classes/resources/messages_ar.properties +++ b/client/WEB-INF/classes/resources/messages_ar.properties @@ -48,7 +48,7 @@ label.s3.socket_timeout=\u0645\u0647\u0644\u0629 \u0627\u0644\u0645\u0642\u0628\ #modified labels (begin) ***************************************************************************************** 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 -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 \\\:

    \n1.\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 +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 \\\:

    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 #modified labels (end) ******************************************************************************************* label.configure.network.ACLs=\u0636\u0628\u0637 \u0634\u0628\u0643\u0629 ACLs From 8e5186daf1ffdf6a8c011dd803bd7b7094af1654 Mon Sep 17 00:00:00 2001 From: Milamber Date: Mon, 29 Apr 2013 12:40:13 +0100 Subject: [PATCH 464/607] CLOUDSTACK-2138 - Add Arabic L10N, fix a issue with sed on OSX, detab some lines --- tools/transifex/sync-transifex-ui.sh | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/tools/transifex/sync-transifex-ui.sh b/tools/transifex/sync-transifex-ui.sh index 5fb4e57b16b..daba88d00ea 100755 --- a/tools/transifex/sync-transifex-ui.sh +++ b/tools/transifex/sync-transifex-ui.sh @@ -17,7 +17,7 @@ # under the License. SRCLANG=en -LIST_LANG="ca de_DE es fr_FR it_IT ja ko_KR nb_NO pt_BR ru_RU zh_CN" +LIST_LANG="ar ca de_DE es fr_FR it_IT ja ko_KR nb_NO pt_BR ru_RU zh_CN" DIRECTORY_RESOURCES="../../client/WEB-INF/classes/resources" WORKDIR="./work-dir" @@ -49,8 +49,8 @@ doUploadL10NLangs() for CODELANG in ${LIST_LANG} ; do if [ -f "${DIRECTORY_RESOURCES}/messages_${CODELANG}.properties" ]; then native2ascii -reverse -encoding UTF-8 ${DIRECTORY_RESOURCES}/messages_${CODELANG}.properties ${WORKDIR}/messages_${CODELANG}.properties - sed -i "s/\\\\\\\'/'/g" ${WORKDIR}/messages_${CODELANG}.properties - tx set -r ${ARGUMENTS} -l ${CODELANG} ${WORKDIR}/messages_${CODELANG}.properties + sed -i"" "s/\\\\\\\'/'/g" ${WORKDIR}/messages_${CODELANG}.properties + tx set -r ${ARGUMENTS} -l ${CODELANG} ${WORKDIR}/messages_${CODELANG}.properties tx push -t -r ${ARGUMENTS} -l ${CODELANG} else echo "Warning: the resource file for language ${CODELANG} doesn't exist." @@ -64,8 +64,8 @@ doDownloadL10NLangs() for CODELANG in ${LIST_LANG} ; do if [ -f "${DIRECTORY_RESOURCES}/messages_${CODELANG}.properties" ]; then native2ascii -reverse -encoding UTF-8 ${DIRECTORY_RESOURCES}/messages_${CODELANG}.properties ${WORKDIR}/messages_${CODELANG}.properties - sed -i "s/\\\\\\\'/'/g" ${WORKDIR}/messages_${CODELANG}.properties - tx set -r ${ARGUMENTS} -l ${CODELANG} ${WORKDIR}/messages_${CODELANG}.properties + sed -i"" "s/\\\\\\\'/'/g" ${WORKDIR}/messages_${CODELANG}.properties + tx set -r ${ARGUMENTS} -l ${CODELANG} ${WORKDIR}/messages_${CODELANG}.properties else echo "Warning: the resource file for language ${CODELANG} doesn't exist." fi @@ -92,11 +92,11 @@ doUploadSourceLang() # Source language if [ -f ${DIRECTORY_RESOURCES}/messages.properties ]; then native2ascii -reverse -encoding UTF-8 ${DIRECTORY_RESOURCES}/messages.properties ${WORKDIR}/messages.properties - sed -i "s/\\\\\\\'/'/g" ${WORKDIR}/messages.properties + sed -i"" "s/\\\\\\\'/'/g" ${WORKDIR}/messages.properties tx set --source -r ${ARGUMENTS} -l ${SRCLANG} ${WORKDIR}/messages.properties tx push -s -r ${ARGUMENTS} else - echo "Warning: the source language doesn't exist!" + echo "Warning: the source language doesn't exist!" fi } @@ -110,8 +110,8 @@ doDownloadSourceLang() grep -v "^#" ${WORKDIR}/messages.properties.tmp1 | sort -f | uniq | sed "s/'/\\\\\\\\\'/g" > ${WORKDIR}/messages.properties.tmp2 echo "$AL2_STRING" | cat - ${WORKDIR}/messages.properties.tmp2 > ${DIRECTORY_RESOURCES}/messages.properties else - echo "Warning: the source language hasn't been retrieve!" - fi + echo "Warning: the source language hasn't been retrieve!" + fi } if [ $# -ne 2 ]; then @@ -119,7 +119,7 @@ if [ $# -ne 2 ]; then else COMMAND="$1" ARGUMENTS="$2" - doMakeWdir + doMakeWdir fi case "$COMMAND" in From 53d69d34ca20d7d824f8a4cc9ac66228926f80ce Mon Sep 17 00:00:00 2001 From: Milamber Date: Mon, 29 Apr 2013 13:53:25 +0100 Subject: [PATCH 465/607] Add more detail in a warning message. useful when we add a new L10N language at first time --- tools/transifex/sync-transifex-ui.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tools/transifex/sync-transifex-ui.sh b/tools/transifex/sync-transifex-ui.sh index daba88d00ea..ed108098028 100755 --- a/tools/transifex/sync-transifex-ui.sh +++ b/tools/transifex/sync-transifex-ui.sh @@ -67,7 +67,9 @@ doDownloadL10NLangs() sed -i"" "s/\\\\\\\'/'/g" ${WORKDIR}/messages_${CODELANG}.properties tx set -r ${ARGUMENTS} -l ${CODELANG} ${WORKDIR}/messages_${CODELANG}.properties else - echo "Warning: the resource file for language ${CODELANG} doesn't exist." + echo "\nWarning: the resource file for language ${CODELANG} doesn't exist." + echo "Run this command to force get this language from transifex:" + echo "\ntx set -r ${ARGUMENTS} -l ${CODELANG} ${WORKDIR}/messages_${CODELANG}.properties\n" fi done From 02e5262a61d96393fcd3e6d9a3ec86db67428712 Mon Sep 17 00:00:00 2001 From: Radhika PC Date: Mon, 29 Apr 2013 18:41:38 +0530 Subject: [PATCH 466/607] CLOUDSTACK-847 --- docs/en-US/guest-ip-ranges.xml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/docs/en-US/guest-ip-ranges.xml b/docs/en-US/guest-ip-ranges.xml index 1f8c8a1a4b1..b3ebd761394 100644 --- a/docs/en-US/guest-ip-ranges.xml +++ b/docs/en-US/guest-ip-ranges.xml @@ -21,8 +21,12 @@ specific language governing permissions and limitations under the License. --> -
    - Guest IP Ranges - The IP ranges for guest network traffic are set on a per-account basis by the user. This allows the users to configure their network in a fashion that will enable VPN linking between their guest network and their clients. + Guest IP Ranges + The IP ranges for guest network traffic are set on a per-account basis by the user. This + allows the users to configure their network in a fashion that will enable VPN linking between + their guest network and their clients. + In shared networks in Basic zone and Security Group-enabled Advanced networks, you will have + the flexibility to add multiple guest IP ranges from different subnets. You can add or remove + one IP range at a time.
    From 35b416616e451b984d85f198d721b8f0fdb3a47b Mon Sep 17 00:00:00 2001 From: Radhika PC Date: Mon, 29 Apr 2013 18:56:52 +0530 Subject: [PATCH 467/607] CLOUDSTACK-847 api changes --- docs/en-US/changed-API-commands-4.2.xml | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/docs/en-US/changed-API-commands-4.2.xml b/docs/en-US/changed-API-commands-4.2.xml index 26f10ff6037..2dd5a3b05ea 100644 --- a/docs/en-US/changed-API-commands-4.2.xml +++ b/docs/en-US/changed-API-commands-4.2.xml @@ -29,6 +29,15 @@ + + createVlanIpRange + + No new parameter has been added. However, the current functionality has been + extended to add guest IPs from a different subnet in shared networks in a Basic zone. + Ensure that you provide netmask and gateway if you are adding guest IPs from a + different subnet. + + updateResourceLimit @@ -113,8 +122,10 @@ removelan (removes the specified VLAN range) - The removevlan and vlan parameters can be used together. If the VLAN range that you are trying - to remove is in use, the operation will not succeed. + + The removevlan and vlan parameters can be used together. If the VLAN range that + you are trying to remove is in use, the operation will not succeed. + From 9416cb14a9f9008d2c9e6355000e5abbbaeef3cf Mon Sep 17 00:00:00 2001 From: Sebastien Goasguen Date: Mon, 29 Apr 2013 09:51:24 -0400 Subject: [PATCH 468/607] Adding arabic key to resource file --- .../classes/resources/messages.properties | 577 +++++++++--------- 1 file changed, 286 insertions(+), 291 deletions(-) diff --git a/client/WEB-INF/classes/resources/messages.properties b/client/WEB-INF/classes/resources/messages.properties index bab65dea64e..8f9c662d63d 100644 --- a/client/WEB-INF/classes/resources/messages.properties +++ b/client/WEB-INF/classes/resources/messages.properties @@ -14,16 +14,7 @@ # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. -label.add.affinity.group=Add new affinity group -message.delete.affinity.group=Please confirm that you would like to remove this affinity group. -label.delete.affinity.group=Delete Affinity Group -label.edit.affinity.group=Edit Affinity Group -label.affinity=Affinity -label.anti.affinity=Anti-affinity -label.affinity.groups=Affinity Groups -label.anti.affinity.groups=Anti-affinity Groups -label.affinity.group=Affinity Group -label.anti.affinity.group=Anti-affinity Group + changed.item.properties=Changed item properties confirm.enable.s3=Please fill in the following information to enable support for S3-backed Secondary Storage confirm.enable.swift=Please fill in the following information to enable support for Swift @@ -31,7 +22,7 @@ error.could.not.enable.zone=Could not enable zone error.installWizard.message=Something went wrong; you may go back and correct any errors error.invalid.username.password=Invalid username or password error.login=Your username/password does not match our records. -error.menu.select=Unable to perform action due to no items being selected. +error.menu.select=Unable to perform action due to no items being selected. error.mgmt.server.inaccessible=The Management Server is unaccessible. Please try again later. error.password.not.match=The password fields do not match error.please.specify.physical.network.tags=Network offerings is not available until you specify tags for this physical network. @@ -40,115 +31,115 @@ error.something.went.wrong.please.correct.the.following=Something went wrong; pl error.unable.to.reach.management.server=Unable to reach Management Server error.unresolved.internet.name=Your internet name cannot be resolved. extractable=Extractable -force.delete.domain.warning=Warning: Choosing this option will cause the deletion of all child domains and all associated accounts and their resources. +force.delete.domain.warning=Warning\: Choosing this option will cause the deletion of all child domains and all associated accounts and their resources. force.delete=Force Delete +force.remove.host.warning=Warning\: Choosing this option will cause CloudStack to forcefully stop all running virtual machines before removing this host from the cluster. force.remove=Force Remove -force.remove.host.warning=Warning: Choosing this option will cause CloudStack to forcefully stop all running virtual machines before removing this host from the cluster. +force.stop.instance.warning=Warning\: Forcing a stop on this instance should be your last option. It can lead to data loss as well as inconsistent behavior of the virtual machine state. force.stop=Force Stop -force.stop.instance.warning=Warning: Forcing a stop on this instance should be your last option. It can lead to data loss as well as inconsistent behavior of the virtual machine state. ICMP.code=ICMP Code ICMP.type=ICMP Type image.directory=Image Directory inline=Inline instances.actions.reboot.label=Reboot instance label.accept.project.invitation=Accept project invitation -label.account=Account label.account.and.security.group=Account, Security group label.account.id=Account ID label.account.name=Account Name -label.accounts=Accounts label.account.specific=Account-Specific +label.account=Account +label.accounts=Accounts label.acquire.new.ip=Acquire New IP -label.action.attach.disk=Attach Disk label.action.attach.disk.processing=Attaching Disk.... -label.action.attach.iso=Attach ISO +label.action.attach.disk=Attach Disk label.action.attach.iso.processing=Attaching ISO.... -label.action.cancel.maintenance.mode=Cancel Maintenance Mode +label.action.attach.iso=Attach ISO label.action.cancel.maintenance.mode.processing=Cancelling Maintenance Mode.... +label.action.cancel.maintenance.mode=Cancel Maintenance Mode label.action.change.password=Change Password -label.action.change.service=Change Service label.action.change.service.processing=Changing Service.... -label.action.copy.ISO=Copy ISO +label.action.change.service=Change Service label.action.copy.ISO.processing=Coping ISO.... -label.action.copy.template=Copy Template +label.action.copy.ISO=Copy ISO label.action.copy.template.processing=Coping Template.... -label.action.create.template=Create Template +label.action.copy.template=Copy Template label.action.create.template.from.vm=Create Template from VM label.action.create.template.from.volume=Create Template from Volume label.action.create.template.processing=Creating Template.... -label.action.create.vm=Create VM +label.action.create.template=Create Template label.action.create.vm.processing=Creating VM.... -label.action.create.volume=Create Volume +label.action.create.vm=Create VM label.action.create.volume.processing=Creating Volume.... -label.action.delete.account=Delete account +label.action.create.volume=Create Volume label.action.delete.account.processing=Deleting account.... -label.action.delete.cluster=Delete Cluster +label.action.delete.account=Delete account label.action.delete.cluster.processing=Deleting Cluster.... -label.action.delete.disk.offering=Delete Disk Offering +label.action.delete.cluster=Delete Cluster label.action.delete.disk.offering.processing=Deleting Disk Offering.... -label.action.delete.domain=Delete Domain +label.action.delete.disk.offering=Delete Disk Offering label.action.delete.domain.processing=Deleting Domain.... -label.action.delete.firewall=Delete firewall rule +label.action.delete.domain=Delete Domain label.action.delete.firewall.processing=Deleting Firewall.... -label.action.delete.ingress.rule=Delete Ingress Rule +label.action.delete.firewall=Delete firewall rule label.action.delete.ingress.rule.processing=Deleting Ingress Rule.... -label.action.delete.IP.range=Delete IP Range +label.action.delete.ingress.rule=Delete Ingress Rule label.action.delete.IP.range.processing=Deleting IP Range.... -label.action.delete.ISO=Delete ISO +label.action.delete.IP.range=Delete IP Range label.action.delete.ISO.processing=Deleting ISO.... -label.action.delete.load.balancer=Delete load balancer rule +label.action.delete.ISO=Delete ISO label.action.delete.load.balancer.processing=Deleting Load Balancer.... -label.action.delete.network=Delete Network +label.action.delete.load.balancer=Delete load balancer rule label.action.delete.network.processing=Deleting Network.... +label.action.delete.network=Delete Network label.action.delete.nexusVswitch=Delete Nexus 1000v label.action.delete.physical.network=Delete physical network -label.action.delete.pod=Delete Pod label.action.delete.pod.processing=Deleting Pod.... -label.action.delete.primary.storage=Delete Primary Storage +label.action.delete.pod=Delete Pod label.action.delete.primary.storage.processing=Deleting Primary Storage.... -label.action.delete.secondary.storage=Delete Secondary Storage +label.action.delete.primary.storage=Delete Primary Storage label.action.delete.secondary.storage.processing=Deleting Secondary Storage.... -label.action.delete.security.group=Delete Security Group +label.action.delete.secondary.storage=Delete Secondary Storage label.action.delete.security.group.processing=Deleting Security Group.... -label.action.delete.service.offering=Delete Service Offering +label.action.delete.security.group=Delete Security Group label.action.delete.service.offering.processing=Deleting Service Offering.... -label.action.delete.snapshot=Delete Snapshot +label.action.delete.service.offering=Delete Service Offering label.action.delete.snapshot.processing=Deleting Snapshot.... +label.action.delete.snapshot=Delete Snapshot label.action.delete.system.service.offering=Delete System Service Offering -label.action.delete.template=Delete Template label.action.delete.template.processing=Deleting Template.... -label.action.delete.user=Delete User +label.action.delete.template=Delete Template label.action.delete.user.processing=Deleting User.... -label.action.delete.volume=Delete Volume +label.action.delete.user=Delete User label.action.delete.volume.processing=Deleting Volume.... -label.action.delete.zone=Delete Zone +label.action.delete.volume=Delete Volume label.action.delete.zone.processing=Deleting Zone.... -label.action.destroy.instance=Destroy Instance +label.action.delete.zone=Delete Zone label.action.destroy.instance.processing=Destroying Instance.... -label.action.destroy.systemvm=Destroy System VM +label.action.destroy.instance=Destroy Instance label.action.destroy.systemvm.processing=Destroying System VM.... -label.action.detach.disk=Detach Disk +label.action.destroy.systemvm=Destroy System VM label.action.detach.disk.processing=Detaching Disk.... -label.action.detach.iso=Detach ISO +label.action.detach.disk=Detach Disk label.action.detach.iso.processing=Detaching ISO.... -label.action.disable.account=Disable account +label.action.detach.iso=Detach ISO label.action.disable.account.processing=Disabling account.... -label.action.disable.cluster=Disable Cluster +label.action.disable.account=Disable account label.action.disable.cluster.processing=Disabling Cluster.... +label.action.disable.cluster=Disable Cluster label.action.disable.nexusVswitch=Disable Nexus 1000v label.action.disable.physical.network=Disable physical network -label.action.disable.pod=Disable Pod label.action.disable.pod.processing=Disabling Pod.... -label.action.disable.static.NAT=Disable Static NAT +label.action.disable.pod=Disable Pod label.action.disable.static.NAT.processing=Disabling Static NAT.... -label.action.disable.user=Disable User +label.action.disable.static.NAT=Disable Static NAT label.action.disable.user.processing=Disabling User.... -label.action.disable.zone=Disable Zone +label.action.disable.user=Disable User label.action.disable.zone.processing=Disabling Zone.... +label.action.disable.zone=Disable Zone label.action.download.ISO=Download ISO label.action.download.template=Download Template -label.action.download.volume=Download Volume label.action.download.volume.processing=Downloading Volume.... +label.action.download.volume=Download Volume label.action.edit.account=Edit account label.action.edit.disk.offering=Edit Disk Offering label.action.edit.domain=Edit Domain @@ -156,9 +147,9 @@ label.action.edit.global.setting=Edit Global Setting label.action.edit.host=Edit Host label.action.edit.instance=Edit Instance label.action.edit.ISO=Edit ISO -label.action.edit.network=Edit Network label.action.edit.network.offering=Edit Network Offering label.action.edit.network.processing=Editing Network.... +label.action.edit.network=Edit Network label.action.edit.pod=Edit Pod label.action.edit.primary.storage=Edit Primary Storage label.action.edit.resource.limits=Edit Resource Limits @@ -166,37 +157,37 @@ label.action.edit.service.offering=Edit Service Offering label.action.edit.template=Edit Template label.action.edit.user=Edit User label.action.edit.zone=Edit Zone -label.action.enable.account=Enable account label.action.enable.account.processing=Enabling account.... -label.action.enable.cluster=Enable Cluster +label.action.enable.account=Enable account label.action.enable.cluster.processing=Enabling Cluster.... -label.action.enable.maintenance.mode=Enable Maintenance Mode +label.action.enable.cluster=Enable Cluster label.action.enable.maintenance.mode.processing=Enabling Maintenance Mode.... +label.action.enable.maintenance.mode=Enable Maintenance Mode label.action.enable.nexusVswitch=Enable Nexus 1000v label.action.enable.physical.network=Enable physical network -label.action.enable.pod=Enable Pod label.action.enable.pod.processing=Enabling Pod.... -label.action.enable.static.NAT=Enable Static NAT +label.action.enable.pod=Enable Pod label.action.enable.static.NAT.processing=Enabling Static NAT.... -label.action.enable.user=Enable User +label.action.enable.static.NAT=Enable Static NAT label.action.enable.user.processing=Enabling User.... -label.action.enable.zone=Enable Zone +label.action.enable.user=Enable User label.action.enable.zone.processing=Enabling Zone.... -label.action.force.reconnect=Force Reconnect +label.action.enable.zone=Enable Zone label.action.force.reconnect.processing=Reconnecting.... -label.action.generate.keys=Generate Keys +label.action.force.reconnect=Force Reconnect label.action.generate.keys.processing=Generate Keys.... +label.action.generate.keys=Generate Keys label.action.list.nexusVswitch=List Nexus 1000v -label.action.lock.account=Lock account label.action.lock.account.processing=Locking account.... -label.action.manage.cluster=Manage Cluster +label.action.lock.account=Lock account label.action.manage.cluster.processing=Managing Cluster.... -label.action.migrate.instance=Migrate Instance +label.action.manage.cluster=Manage Cluster label.action.migrate.instance.processing=Migrating Instance.... -label.action.migrate.router=Migrate Router +label.action.migrate.instance=Migrate Instance label.action.migrate.router.processing=Migrating Router.... -label.action.migrate.systemvm=Migrate System VM +label.action.migrate.router=Migrate Router label.action.migrate.systemvm.processing=Migrating System VM.... +label.action.migrate.systemvm=Migrate System VM label.action.reboot.instance.processing=Rebooting Instance.... label.action.reboot.instance=Reboot Instance label.action.reboot.router.processing=Rebooting Router.... @@ -217,7 +208,6 @@ label.action.resize.volume=Resize Volume label.action.resource.limits=Resource limits label.action.restore.instance.processing=Restoring Instance.... label.action.restore.instance=Restore Instance -label.actions=Actions label.action.start.instance.processing=Starting Instance.... label.action.start.instance=Start Instance label.action.start.router.processing=Starting Router.... @@ -241,18 +231,19 @@ label.action.update.resource.count=Update Resource Count label.action.vmsnapshot.create=Take VM Snapshot label.action.vmsnapshot.delete=Delete VM snapshot label.action.vmsnapshot.revert=Revert to VM snapshot +label.actions=Actions label.activate.project=Activate Project label.active.sessions=Active Sessions -label.add.account=Add Account -label.add.accounts=Add accounts -label.add.accounts.to=Add accounts to label.add.account.to.project=Add account to project +label.add.account=Add Account +label.add.accounts.to=Add accounts to +label.add.accounts=Add accounts label.add.ACL=Add ACL -label.add=Add +label.add.affinity.group=Add new affinity group label.add.BigSwitchVns.device=Add BigSwitch Vns Controller -label.add.by=Add by label.add.by.cidr=Add By CIDR label.add.by.group=Add By Group +label.add.by=Add by label.add.cluster=Add Cluster label.add.compute.offering=Add compute offering label.add.direct.iprange=Add Direct Ip Range @@ -263,24 +254,15 @@ label.add.F5.device=Add F5 device label.add.firewall=Add firewall rule label.add.guest.network=Add guest network label.add.host=Add Host -label.adding=Adding -label.adding.cluster=Adding Cluster -label.adding.failed=Adding Failed -label.adding.pod=Adding Pod -label.adding.processing=Adding.... label.add.ingress.rule=Add Ingress Rule -label.adding.succeeded=Adding Succeeded -label.adding.user=Adding User -label.adding.zone=Adding Zone label.add.ip.range=Add IP Range -label.additional.networks=Additional Networks label.add.load.balancer=Add Load Balancer label.add.more=Add More label.add.netScaler.device=Add Netscaler device label.add.network.ACL=Add network ACL -label.add.network=Add Network label.add.network.device=Add Network Device label.add.network.offering=Add network offering +label.add.network=Add Network label.add.new.F5=Add new F5 label.add.new.gateway=Add new gateway label.add.new.NetScaler=Add new NetScaler @@ -306,21 +288,34 @@ label.add.template=Add Template label.add.to.group=Add to group label.add.user=Add User label.add.vlan=Add VLAN -label.add.vm=Add VM -label.add.vms=Add VMs -label.add.vms.to.lb=Add VM(s) to load balancer rule label.add.VM.to.tier=Add VM to tier +label.add.vm=Add VM +label.add.vms.to.lb=Add VM(s) to load balancer rule +label.add.vms=Add VMs label.add.volume=Add Volume label.add.vpc=Add VPC label.add.vpn.customer.gateway=Add VPN Customer Gateway label.add.VPN.gateway=Add VPN Gateway label.add.vpn.user=Add VPN user label.add.zone=Add Zone +label.add=Add +label.adding.cluster=Adding Cluster +label.adding.failed=Adding Failed +label.adding.pod=Adding Pod +label.adding.processing=Adding.... +label.adding.succeeded=Adding Succeeded +label.adding.user=Adding User +label.adding.zone=Adding Zone +label.adding=Adding +label.additional.networks=Additional Networks label.admin.accounts=Admin Accounts label.admin=Admin -label.advanced=Advanced label.advanced.mode=Advanced Mode label.advanced.search=Advance Search +label.advanced=Advanced +label.affinity.group=Affinity Group +label.affinity.groups=Affinity Groups +label.affinity=Affinity label.agent.password=Agent Password label.agent.username=Agent Username label.agree=Agree @@ -328,23 +323,26 @@ label.alert=Alert label.algorithm=Algorithm label.allocated=Allocated label.allocation.state=Allocation State +label.anti.affinity.group=Anti-affinity Group +label.anti.affinity.groups=Anti-affinity Groups +label.anti.affinity=Anti-affinity label.api.key=API Key label.apply=Apply -label.assign=Assign label.assign.to.load.balancer=Assigning instance to load balancer -label.associated.network=Associated Network +label.assign=Assign label.associated.network.id=Associated Network ID +label.associated.network=Associated Network label.attached.iso=Attached ISO label.author.email=Author e-mail label.author.name=Author name -label.availability=Availability label.availability.zone=Availability Zone -label.available=Available +label.availability=Availability label.available.public.ips=Available Public IP Addresses +label.available=Available label.back=Back label.bandwidth=Bandwidth -label.basic=Basic label.basic.mode=Basic Mode +label.basic=Basic label.bigswitch.controller.address=BigSwitch Vns Controller Address label.bootable=Bootable label.broadcast.domain.range=Broadcast domain range @@ -359,12 +357,12 @@ label.by.pod=By Pod label.by.role=By Role label.by.start.date=By Start Date label.by.state=By State +label.by.traffic.type=By Traffic Type +label.by.type.id=By Type ID +label.by.type=By Type +label.by.zone=By Zone label.bytes.received=Bytes Received label.bytes.sent=Bytes Sent -label.by.traffic.type=By Traffic Type -label.by.type=By Type -label.by.type.id=By Type ID -label.by.zone=By Zone label.cancel=Cancel label.capacity=Capacity label.certificate=Certificate @@ -373,50 +371,50 @@ label.change.value=Change value label.character=Character label.checksum=MD5 checksum label.cidr.account=CIDR or Account/Security Group -label.cidr=CIDR label.CIDR.list=CIDR list label.cidr.list=Source CIDR label.CIDR.of.destination.network=CIDR of destination network +label.cidr=CIDR label.clean.up=Clean up label.clear.list=Clear list label.close=Close label.cloud.console=Cloud Management Console label.cloud.managed=Cloud.com Managed -label.cluster=Cluster label.cluster.name=Cluster Name -label.clusters=Clusters label.cluster.type=Cluster Type +label.cluster=Cluster +label.clusters=Clusters label.clvm=CLVM label.code=Code label.community=Community label.compute.and.storage=Compute and Storage -label.compute=Compute label.compute.offering=Compute offering label.compute.offerings=Compute offerings +label.compute=Compute label.configuration=Configuration -label.configure=Configure label.configure.network.ACLs=Configure Network ACLs label.configure.vpc=Configure VPC -label.confirmation=Confirmation +label.configure=Configure label.confirm.password=Confirm password -label.congratulations=Congratulations! +label.confirmation=Confirmation +label.congratulations=Congratulations\! label.conserve.mode=Conserve mode label.console.proxy=Console proxy label.continue.basic.install=Continue with basic installation label.continue=Continue label.corrections.saved=Corrections saved -label.cpu.allocated=CPU Allocated label.cpu.allocated.for.VMs=CPU Allocated for VMs +label.cpu.allocated=CPU Allocated label.CPU.cap=CPU Cap -label.cpu=CPU label.cpu.limits=CPU limits label.cpu.mhz=CPU (in MHz) label.cpu.utilized=CPU Utilized -label.created.by.system=Created by system -label.created=Created +label.cpu=CPU label.create.project=Create project label.create.template=Create template label.create.VPN.connection=Create VPN Connection +label.created.by.system=Created by system +label.created=Created label.cross.zones=Cross Zones label.custom.disk.size=Custom Disk Size label.daily=Daily @@ -427,11 +425,11 @@ label.day.of.week=Day of Week label.dead.peer.detection=Dead Peer Detection label.decline.invitation=Decline invitation label.dedicated=Dedicated -label.default=Default label.default.use=Default Use label.default.view=Default View +label.default=Default +label.delete.affinity.group=Delete Affinity Group label.delete.BigSwitchVns=Remove BigSwitch Vns Controller -label.delete=Delete label.delete.F5=Delete F5 label.delete.gateway=delete gateway label.delete.NetScaler=Delete NetScaler @@ -442,58 +440,60 @@ label.delete.VPN.connection=delete VPN connection label.delete.VPN.customer.gateway=delete VPN Customer Gateway label.delete.VPN.gateway=delete VPN Gateway label.delete.vpn.user=Delete VPN user +label.delete=Delete label.deleting.failed=Deleting Failed label.deleting.processing=Deleting.... label.description=Description label.destination.physical.network.id=Destination physical network ID label.destination.zone=Destination Zone -label.destroy=Destroy label.destroy.router=Destroy router +label.destroy=Destroy label.detaching.disk=Detaching Disk label.details=Details label.device.id=Device ID label.devices=Devices -label.dhcp=DHCP label.DHCP.server.type=DHCP Server Type +label.dhcp=DHCP label.direct.ips=Shared Network IPs -label.disabled=Disabled label.disable.provider=Disable provider label.disable.vpn=Disable VPN +label.disabled=Disabled label.disabling.vpn.access=Disabling VPN Access label.disk.allocated=Disk Allocated label.disk.offering=Disk Offering -label.disk.size=Disk Size label.disk.size.gb=Disk Size (in GB) +label.disk.size=Disk Size label.disk.total=Disk Total label.disk.volume=Disk Volume label.display.name=Display name label.display.text=Display Text label.dns.1=DNS 1 label.dns.2=DNS 2 -label.dns=DNS label.DNS.domain.for.guest.networks=DNS domain for Guest Networks +label.dns=DNS label.domain.admin=Domain Admin -label.domain=Domain label.domain.id=Domain ID label.domain.name=Domain Name label.domain.router=Domain router label.domain.suffix=DNS Domain Suffix (i.e., xyz.com) +label.domain=Domain label.done=Done label.double.quotes.are.not.allowed=Double quotes are not allowed label.download.progress=Download Progress label.drag.new.position=Drag to new position -label.edit=Edit +label.edit.affinity.group=Edit Affinity Group label.edit.lb.rule=Edit LB rule label.edit.network.details=Edit network details label.edit.project.details=Edit project details label.edit.tags=Edit tags label.edit.traffic.type=Edit traffic type label.edit.vpc=Edit VPC +label.edit=Edit label.egress.rule=Egress rule label.egress.rules=Egress rules -label.elastic=Elastic label.elastic.IP=Elastic IP label.elastic.LB=Elastic LB +label.elastic=Elastic label.email=Email label.enable.provider=Enable provider label.enable.s3=Enable S3-backed Secondary Storage @@ -502,18 +502,17 @@ label.enable.vpn=Enable VPN label.enabling.vpn.access=Enabling VPN Access label.enabling.vpn=Enabling VPN label.end.IP=End IP -label.endpoint=Endpoint -label.endpoint.or.operation=Endpoint or Operation label.end.port=End Port label.end.reserved.system.IP=End Reserved system IP label.end.vlan=End Vlan +label.endpoint.or.operation=Endpoint or Operation +label.endpoint=Endpoint label.enter.token=Enter token label.error.code=Error Code label.error=Error label.ESP.encryption=ESP Encryption label.ESP.hash=ESP Hash label.ESP.lifetime=ESP Lifetime (second) -label.ESP.lifetime=ESP Lifetime(second) label.ESP.policy=ESP policy label.esx.host=ESX/ESXi Host label.example=Example @@ -527,8 +526,8 @@ label.firewall=Firewall label.first.name=First Name label.format=Format label.friday=Friday -label.full=Full label.full.path=Full path +label.full=Full label.gateway=Gateway label.general.alerts=General Alerts label.generating.url=Generating URL @@ -536,40 +535,39 @@ label.go.step.2=Go to Step 2 label.go.step.3=Go to Step 3 label.go.step.4=Go to Step 4 label.go.step.5=Go to Step 5 -label.group=Group label.group.optional=Group (Optional) +label.group=Group label.guest.cidr=Guest CIDR label.guest.end.ip=Guest end IP label.guest.gateway=Guest Gateway -label.guest=Guest -label.guest.ip=Guest IP Address label.guest.ip.range=Guest IP Range +label.guest.ip=Guest IP Address label.guest.netmask=Guest Netmask label.guest.networks=Guest networks label.guest.start.ip=Guest start IP label.guest.traffic=Guest Traffic label.guest.type=Guest Type +label.guest=Guest label.ha.enabled=HA Enabled label.help=Help label.hide.ingress.rule=Hide Ingress Rule label.hints=Hints label.host.alerts=Host Alerts -label.host=Host label.host.MAC=Host MAC label.host.name=Host Name +label.host.tags=Host Tags +label.host=Host label.hosts=Hosts -label.host.tags=Host Tags label.hourly=Hourly label.hypervisor.capabilities=Hypervisor capabilities -label.hypervisor=Hypervisor label.hypervisor.type=Hypervisor Type label.hypervisor.version=Hypervisor version +label.hypervisor=Hypervisor label.id=ID label.IKE.DH=IKE DH label.IKE.encryption=IKE Encryption label.IKE.hash=IKE Hash label.IKE.lifetime=IKE lifetime (second) -label.IKE.lifetime=IKE Lifetime (second) label.IKE.policy=IKE policy label.info=Info label.ingress.rule=Ingress Rule @@ -584,54 +582,55 @@ label.installWizard.addPrimaryStorageIntro.subtitle=What is primary storage? label.installWizard.addPrimaryStorageIntro.title=Let’s add primary storage label.installWizard.addSecondaryStorageIntro.subtitle=What is secondary storage? label.installWizard.addSecondaryStorageIntro.title=Let’s add secondary storage +label.installWizard.addZone.title=Add zone label.installWizard.addZoneIntro.subtitle=What is a zone? label.installWizard.addZoneIntro.title=Let’s add a zone -label.installWizard.addZone.title=Add zone label.installWizard.click.launch=Click the launch button. -label.installWizard.subtitle=This tour will aid you in setting up your CloudStack™ installation -label.installWizard.title=Hello and Welcome to CloudStack™ -label.instance=Instance +label.installWizard.subtitle=This tour will aid you in setting up your CloudStack&\#8482 installation +label.installWizard.title=Hello and Welcome to CloudStack&\#8482 label.instance.limits=Instance Limits label.instance.name=Instance Name +label.instance=Instance label.instances=Instances label.internal.dns.1=Internal DNS 1 label.internal.dns.2=Internal DNS 2 label.internal.name=Internal name label.interval.type=Interval Type -label.introduction.to.cloudstack=Introduction to CloudStack™ +label.introduction.to.cloudstack=Introduction to CloudStack&\#8482 label.invalid.integer=Invalid Integer label.invalid.number=Invalid Number label.invitations=Invitations -label.invited.accounts=Invited accounts -label.invite=Invite label.invite.to=Invite to +label.invite=Invite +label.invited.accounts=Invited accounts label.ip.address=IP Address -label.ipaddress=IP Address label.ip.allocations=IP Allocations -label.ip=IP label.ip.limits=Public IP Limits label.ip.or.fqdn=IP or FQDN label.ip.range=IP Range label.ip.ranges=IP Ranges -label.IPsec.preshared.key=IPsec Preshared-Key +label.ip=IP +label.ipaddress=IP Address label.ips=IPs -label.iscsi=iSCSI +label.IPsec.preshared.key=IPsec Preshared-Key label.is.default=Is Default +label.is.redundant.router=Redundant +label.is.shared=Is Shared +label.is.system=Is System +label.iscsi=iSCSI label.iso.boot=ISO Boot label.iso=ISO label.isolated.networks=Isolated networks label.isolation.method=Isolation method label.isolation.mode=Isolation Mode label.isolation.uri=Isolation URI -label.is.redundant.router=Redundant -label.is.shared=Is Shared -label.is.system=Is System label.item.listing=Item listing label.keep=Keep -label.keyboard.type=Keyboard type label.key=Key +label.keyboard.type=Keyboard type label.kvm.traffic.label=KVM traffic label label.label=Label +label.lang.arabic=Arabic label.lang.brportugese=Brazilian Portugese label.lang.catalan=Catalan label.lang.chinese=Chinese (Simplified) @@ -644,37 +643,34 @@ label.lang.korean=Korean label.lang.norwegian=Norwegian label.lang.russian=Russian label.lang.spanish=Spanish -label.lang.arabic=Arabic label.last.disconnected=Last Disconnected label.last.name=Last Name label.latest.events=Latest events -label.launch=Launch label.launch.vm=Launch VM -label.launch.zone=Launch zone +label.launch.zone=Launch zone +label.launch=Launch label.LB.isolation=LB isolation label.least.connections=Least connections label.level=Level label.linklocal.ip=Link Local IP Adddress label.load.balancer=Load Balancer -label.load.balancing=Load Balancing label.load.balancing.policies=Load balancing policies +label.load.balancing=Load Balancing label.loading=Loading -label.local=Local label.local.storage.enabled=Local storage enabled -label.local.storage.enabled=Local Storage Enabled label.local.storage=Local Storage +label.local=Local label.login=Login label.logout=Logout +label.LUN.number=LUN \# label.lun=LUN -label.LUN.number=LUN # label.make.project.owner=Make account project owner +label.manage.resources=Manage Resources label.manage=Manage label.management.ips=Management IP Addresses label.management=Management -label.manage.resources=Manage Resources label.max.cpus=Max. CPU cores label.max.guest.limit=Max guest limit -label.maximum=Maximum label.max.memory=Max. memory (MiB) label.max.networks=Max. networks label.max.primary.storage=Max. primary (GiB) @@ -685,13 +681,14 @@ label.max.templates=Max. templates label.max.vms=Max. user VMs label.max.volumes=Max. volumes label.max.vpcs=Max. VPCs +label.maximum=Maximum label.may.continue=You may now continue. label.memory.allocated=Memory Allocated label.memory.limits=Memory limits (MiB) label.memory.mb=Memory (in MB) -label.memory=Memory label.memory.total=Memory Total label.memory.used=Memory Used +label.memory=Memory label.menu.accounts=Accounts label.menu.alerts=Alerts label.menu.all.accounts=All Accounts @@ -715,8 +712,8 @@ label.menu.my.accounts=My Accounts label.menu.my.instances=My Instances label.menu.my.isos=My ISOs label.menu.my.templates=My Templates -label.menu.network=Network label.menu.network.offerings=Network Offerings +label.menu.network=Network label.menu.physical.resources=Physical Resources label.menu.regions=Regions label.menu.running.instances=Running Instances @@ -726,15 +723,15 @@ label.menu.snapshots=Snapshots label.menu.stopped.instances=Stopped Instances label.menu.storage=Storage label.menu.system.service.offerings=System Offerings -label.menu.system=System label.menu.system.vms=System VMs +label.menu.system=System label.menu.templates=Templates label.menu.virtual.appliances=Virtual Appliances label.menu.virtual.resources=Virtual Resources label.menu.volumes=Volumes label.migrate.instance.to.host=Migrate instance to another host -label.migrate.instance.to=Migrate instance to label.migrate.instance.to.ps=Migrate instance to another primary storage +label.migrate.instance.to=Migrate instance to label.migrate.router.to=Migrate Router to label.migrate.systemvm.to=Migrate System VM to label.migrate.to.host=Migrate to host @@ -752,24 +749,22 @@ label.move.up.row=Move up one row label.my.account=My Account label.my.network=My network label.my.templates=My templates -label.name=Name label.name.optional=Name (Optional) +label.name=Name label.nat.port.range=NAT Port Range label.netmask=Netmask label.netScaler=NetScaler +label.network.ACL.total=Network ACL Total label.network.ACL=Network ACL label.network.ACLs=Network ACLs -label.network.ACL.total=Network ACL Total label.network.desc=Network Desc -label.network.device=Network Device label.network.device.type=Network Device Type -label.network.domain=Network Domain +label.network.device=Network Device label.network.domain.text=Network domain +label.network.domain=Network Domain label.network.id=Network ID -label.networking.and.security=Networking and security label.network.label.display.for.blank.value=Use default gateway label.network.name=Network Name -label.network=Network label.network.offering.display.text=Network Offering Display Text label.network.offering.id=Network Offering ID label.network.offering.name=Network Offering Name @@ -778,18 +773,20 @@ label.network.rate.megabytes=Network Rate (Mb/s) label.network.rate=Network Rate label.network.read=Network Read label.network.service.providers=Network Service Providers -label.networks=Networks label.network.type=Network Type label.network.write=Network Write -label.new=New +label.network=Network +label.networking.and.security=Networking and security +label.networks=Networks label.new.password=New Password label.new.project=New Project label.new.vm=New VM +label.new=New label.next=Next label.nexusVswitch=Nexus 1000v -label.nfs=NFS label.nfs.server=NFS Server label.nfs.storage=NFS Storage +label.nfs=NFS label.nic.adapter.type=NIC adapter type label.nicira.controller.address=Controller Address label.nicira.l3gatewayserviceuuid=L3 Gateway Service Uuid @@ -801,20 +798,19 @@ label.no.data=No data to show label.no.errors=No Recent Errors label.no.isos=No available ISOs label.no.items=No Available Items -label.none=None -label.no=No label.no.security.groups=No Available Security Groups -label.not.found=Not Found label.no.thanks=No thanks -label.no.thanks=No Thanks +label.no=No +label.none=None +label.not.found=Not Found label.notifications=Notifications +label.num.cpu.cores=\# of CPU Cores label.number.of.clusters=Number of Clusters label.number.of.hosts=Number of Hosts label.number.of.pods=Number of Pods label.number.of.system.vms=Number of System VMs label.number.of.virtual.routers=Number of Virtual Routers label.number.of.zones=Number of Zones -label.num.cpu.cores=# of CPU Cores label.numretries=Number of Retries label.ocfs2=OCFS2 label.offer.ha=Offer HA @@ -825,14 +821,14 @@ label.os.preference=OS Preference label.os.type=OS Type label.owned.public.ips=Owned Public IP Addresses label.owner.account=Owner Account -label.owner.domain=Owner Domain +label.owner.domain=Owner Domain label.parent.domain=Parent Domain label.password.enabled=Password Enabled label.password=Password label.path=Path label.perfect.forward.secrecy=Perfect Forward Secrecy label.physical.network.ID=Physical network ID -label.physical.network=Physical Network +label.physical.network=Physical Network label.PING.CIFS.password=PING CIFS password label.PING.CIFS.username=PING CIFS username label.PING.dir=PING Directory @@ -848,8 +844,8 @@ label.port.forwarding.policies=Port forwarding policies label.port.forwarding=Port Forwarding label.port.range=Port Range label.PreSetup=PreSetup -label.previous=Previous label.prev=Prev +label.previous=Previous label.primary.allocated=Primary Storage Allocated label.primary.network=Primary Network label.primary.storage.count=Primary Storage Pools @@ -858,20 +854,20 @@ label.primary.storage=Primary Storage label.primary.used=Primary Storage Used label.private.Gateway=Private Gateway label.private.interface=Private Interface -label.private.ip=Private IP Address label.private.ip.range=Private IP Range +label.private.ip=Private IP Address label.private.ips=Private IP Addresses -label.privatekey=PKCS#8 Private Key label.private.network=Private network label.private.port=Private Port label.private.zone=Private Zone +label.privatekey=PKCS\#8 Private Key label.project.dashboard=Project dashboard label.project.id=Project ID label.project.invite=Invite to project label.project.name=Project name +label.project.view=Project View label.project=Project label.projects=Projects -label.project.view=Project View label.protocol=Protocol label.providers=Providers label.public.interface=Public Interface @@ -879,9 +875,9 @@ label.public.ip=Public IP Address label.public.ips=Public IP Addresses label.public.network=Public network label.public.port=Public Port -label.public=Public -label.public.traffic=Public traffic +label.public.traffic=Public traffic label.public.zone=Public Zone +label.public=Public label.purpose=Purpose label.Pxe.server.type=Pxe Server Type label.quickview=Quickview @@ -901,7 +897,6 @@ label.remove.ingress.rule=Remove ingress rule label.remove.ip.range=Remove IP range label.remove.pf=Remove port forwarding rule label.remove.project.account=Remove account from project -label.remove.project.account=Remove project account label.remove.region=Remove Region label.remove.rule=Remove rule label.remove.static.nat.rule=Remove static NAT rule @@ -909,8 +904,8 @@ label.remove.static.route=Remove static route label.remove.tier=Remove tier label.remove.vm.from.lb=Remove VM from load balancer rule label.remove.vpc=remove VPC -label.removing=Removing label.removing.user=Removing User +label.removing=Removing label.required=Required label.reserved.system.gateway=Reserved system gateway label.reserved.system.ip=Reserved System IP @@ -920,9 +915,9 @@ label.resize.new.offering.id=New Offering label.resize.new.size=New Size(GB) label.resize.shrink.ok=Shrink OK label.resource.limits=Resource Limits +label.resource.state=Resource state label.resource=Resource label.resources=Resources -label.resource.state=Resource state label.restart.network=Restart network label.restart.required=Restart required label.restart.vpc=restart VPC @@ -951,36 +946,36 @@ label.scope=Scope label.search=Search label.secondary.storage.count=Secondary Storage Pools label.secondary.storage.limits=Secondary Storage limits (GiB) -label.secondary.storage=Secondary Storage label.secondary.storage.vm=Secondary storage VM +label.secondary.storage=Secondary Storage label.secondary.used=Secondary Storage Used label.secret.key=Secret Key label.security.group.name=Security Group Name label.security.group=Security Group label.security.groups.enabled=Security Groups Enabled label.security.groups=Security Groups +label.select-view=Select view label.select.a.template=Select a template label.select.a.zone=Select a zone -label.select.instance=Select instance label.select.instance.to.attach.volume.to=Select instance to attach volume to +label.select.instance=Select instance label.select.iso.or.template=Select ISO or template label.select.offering=Select offering label.select.project=Select Project -label.select=Select label.select.tier=Select Tier -label.select-view=Select view label.select.vm.for.static.nat=Select VM for static NAT +label.select=Select label.sent=Sent label.server=Server label.service.capabilities=Service Capabilities label.service.offering=Service Offering label.session.expired=Session Expired -label.setup.network=Setup Network -label.setup=Setup -label.setup.zone=Setup Zone label.set.up.zone.type=Set up zone type -label.SharedMountPoint=SharedMountPoint +label.setup.network=Setup Network +label.setup.zone=Setup Zone +label.setup=Setup label.shared=Shared +label.SharedMountPoint=SharedMountPoint label.show.ingress.rule=Show Ingress Rule label.shutdown.provider=Shutdown provider label.site.to.site.VPN=Site-to-site VPN @@ -988,9 +983,9 @@ label.size=Size label.skip.guide=I have used CloudStack before, skip this guide label.snapshot.limits=Snapshot Limits label.snapshot.name=Snapshot Name +label.snapshot.s=Snapshot (s) label.snapshot.schedule=Setup Recurring Snapshot label.snapshot=Snapshot -label.snapshot.s=Snapshot (s) label.snapshots=Snapshots label.source.nat=Source NAT label.source=Source @@ -1004,21 +999,21 @@ label.start.reserved.system.IP=Start Reserved system IP label.start.vlan=Start Vlan label.state=State label.static.nat.enabled=Static NAT Enabled -label.static.nat=Static NAT label.static.nat.to=Static NAT to label.static.nat.vm.details=Static NAT VM Details +label.static.nat=Static NAT label.statistics=Statistics label.status=Status +label.step.1.title=Step 1\: Select a Template label.step.1=Step 1 -label.step.1.title=Step 1: Select a Template +label.step.2.title=Step 2\: Service Offering label.step.2=Step 2 -label.step.2.title=Step 2: Service Offering +label.step.3.title=Step 3\: Select a Disk Offering label.step.3=Step 3 -label.step.3.title=Step 3: Select a Disk Offering +label.step.4.title=Step 4\: Network label.step.4=Step 4 -label.step.4.title=Step 4: Network +label.step.5.title=Step 5\: Review label.step.5=Step 5 -label.step.5.title=Step 5: Review label.stickiness=Stickiness label.sticky.cookie-name=Cookie name label.sticky.domain=Domain @@ -1032,15 +1027,15 @@ label.sticky.postonly=Post only label.sticky.prefix=Prefix label.sticky.request-learn=Request learn label.sticky.tablesize=Table size -label.stopped.vms=Stopped VMs label.stop=Stop -label.storage=Storage +label.stopped.vms=Stopped VMs label.storage.tags=Storage Tags label.storage.traffic=Storage Traffic label.storage.type=Storage Type +label.storage=Storage label.subdomain.access=Subdomain Access label.submit=Submit -label.submitted.by=[Submitted by: ] +label.submitted.by=[Submitted by\: ] label.succeeded=Succeeded label.sunday=Sunday label.super.cidr.for.guest.networks=Super CIDR for Guest Networks @@ -1050,9 +1045,9 @@ label.suspend.project=Suspend Project label.system.capacity=System Capacity label.system.offering=System Offering label.system.service.offering=System Service Offering -label.system.vms=System VMs -label.system.vm=System VM label.system.vm.type=System VM Type +label.system.vm=System VM +label.system.vms=System VMs label.system.wide.capacity=System-wide capacity label.tagged=Tagged label.tags=Tags @@ -1067,14 +1062,14 @@ label.theme.lightblue=Custom - Light Blue label.thursday=Thursday label.tier.details=Tier details label.tier=Tier +label.time.zone=Timezone +label.time=Time label.timeout.in.second = Timeout(seconds) label.timeout=Timeout -label.time=Time -label.time.zone=Timezone label.timezone=Timezone label.token=Token -label.total.cpu=Total CPU label.total.CPU=Total CPU +label.total.cpu=Total CPU label.total.hosts=Total Hosts label.total.memory=Total Memory label.total.of.ip=Total of IP Address @@ -1082,8 +1077,8 @@ label.total.of.vm=Total of VM label.total.storage=Total Storage label.total.vms=Total VMs label.traffic.label=Traffic label -label.traffic.types=Traffic Types label.traffic.type=Traffic Type +label.traffic.types=Traffic Types label.tuesday=Tuesday label.type.id=Type ID label.type=Type @@ -1094,15 +1089,15 @@ label.update.project.resources=Update project resources label.update.ssl.cert= SSL Certificate label.update.ssl= SSL Certificate label.updating=Updating -label.upload=Upload label.upload.volume=Upload volume +label.upload=Upload label.url=URL label.usage.interface=Usage Interface +label.use.vm.ip=Use VM IP\: label.used=Used +label.user=User label.username=Username label.users=Users -label.user=User -label.use.vm.ip=Use VM IP: label.value=Value label.vcdcname=vCenter DC name label.vcenter.cluster=vCenter Cluster @@ -1115,47 +1110,47 @@ label.vcipaddress=vCenter IP Address label.version=Version label.view.all=View all label.view.console=View console -label.viewing=Viewing label.view.more=View more label.view=View -label.virtual.appliances=Virtual Appliances +label.viewing=Viewing label.virtual.appliance=Virtual Appliance +label.virtual.appliances=Virtual Appliances label.virtual.machines=Virtual machines label.virtual.network=Virtual Network -label.virtual.routers=Virtual Routers label.virtual.router=Virtual Router +label.virtual.routers=Virtual Routers label.vlan.id=VLAN ID label.vlan.range=VLAN Range label.vlan=VLAN label.vm.add=Add Instance label.vm.destroy=Destroy label.vm.display.name=VM display name -label.VMFS.datastore=VMFS datastore -label.vmfs=VMFS label.vm.name=VM name label.vm.reboot=Reboot +label.vm.start=Start +label.vm.state=VM state +label.vm.stop=Stop +label.VMFS.datastore=VMFS datastore +label.vmfs=VMFS label.VMs.in.tier=VMs in tier +label.vms=VMs label.vmsnapshot.current=isCurrent label.vmsnapshot.memory=Snapshot memory label.vmsnapshot.parentname=Parent label.vmsnapshot.type=Type label.vmsnapshot=VM Snapshots -label.vm.start=Start -label.vm.state=VM state -label.vm.stop=Stop -label.vms=VMs label.vmware.traffic.label=VMware traffic label label.volgroup=Volume Group label.volume.limits=Volume Limits label.volume.name=Volume Name -label.volumes=Volumes label.volume=Volume +label.volumes=Volumes label.vpc.id=VPC ID label.VPC.router.details=VPC router details label.vpc=VPC label.VPN.connection=VPN Connection -label.vpn.customer.gateway=VPN Customer Gateway label.VPN.customer.gateway=VPN Customer Gateway +label.vpn.customer.gateway=VPN Customer Gateway label.VPN.gateway=VPN Gateway label.vpn=VPN label.vsmctrlvlanid=Control VLAN ID @@ -1168,27 +1163,27 @@ label.wednesday=Wednesday label.weekly=Weekly label.welcome.cloud.console=Welcome to Management Console label.welcome=Welcome -label.what.is.cloudstack=What is CloudStack™? +label.what.is.cloudstack=What is CloudStack&\#8482? label.xen.traffic.label=XenServer traffic label label.yes=Yes label.zone.details=Zone details label.zone.id=Zone ID label.zone.name=Zone name -label.zone.step.1.title=Step 1: Select a Network -label.zone.step.2.title=Step 2: Add a Zone -label.zone.step.3.title=Step 3: Add a Pod -label.zone.step.4.title=Step 4: Add an IP range -label.zones=Zones +label.zone.step.1.title=Step 1\: Select a Network +label.zone.step.2.title=Step 2\: Add a Zone +label.zone.step.3.title=Step 3\: Add a Pod +label.zone.step.4.title=Step 4\: Add an IP range label.zone.type=Zone Type label.zone.wide=Zone-Wide -label.zoneWizard.trafficType.guest=Guest: Traffic between end-user virtual machines -label.zoneWizard.trafficType.management=Management: Traffic between CloudStack\'s internal resources, including any components that communicate with the Management Server, such as hosts and CloudStack system VMs -label.zoneWizard.trafficType.public=Public: Traffic between the internet and virtual machines in the cloud. -label.zoneWizard.trafficType.storage=Storage: Traffic between primary and secondary storage servers, such as VM templates and snapshots label.zone=Zone +label.zones=Zones +label.zoneWizard.trafficType.guest=Guest\: Traffic between end-user virtual machines +label.zoneWizard.trafficType.management=Management\: Traffic between CloudStack\\\\'s internal resources, including any components that communicate with the Management Server, such as hosts and CloudStack system VMs +label.zoneWizard.trafficType.public=Public\: Traffic between the internet and virtual machines in the cloud. +label.zoneWizard.trafficType.storage=Storage\: Traffic between primary and secondary storage servers, such as VM templates and snapshots managed.state=Managed State -message.acquire.new.ip=Please confirm that you would like to acquire a new IP for this network. message.acquire.new.ip.vpc=Please confirm that you would like to acquire a new IP for this VPC. +message.acquire.new.ip=Please confirm that you would like to acquire a new IP for this network. message.acquire.public.ip=Please select a zone from which you want to acquire your new IP from. message.action.cancel.maintenance.mode=Please confirm that you want to cancel this maintenance. message.action.cancel.maintenance=Your host has been successfully canceled for maintenance. This process can take up to several minutes. @@ -1197,8 +1192,8 @@ message.action.change.service.warning.for.router=Your router must be stopped bef message.action.delete.cluster=Please confirm that you want to delete this cluster. message.action.delete.disk.offering=Please confirm that you want to delete this disk offering. message.action.delete.domain=Please confirm that you want to delete this domain. -message.action.delete.external.firewall=Please confirm that you would like to remove this external firewall. Warning: If you are planning to add back the same external firewall, you must reset usage data on the device. -message.action.delete.external.load.balancer=Please confirm that you would like to remove this external load balancer. Warning: If you are planning to add back the same external load balancer, you must reset usage data on the device. +message.action.delete.external.firewall=Please confirm that you would like to remove this external firewall. Warning\: If you are planning to add back the same external firewall, you must reset usage data on the device. +message.action.delete.external.load.balancer=Please confirm that you would like to remove this external load balancer. Warning\: If you are planning to add back the same external load balancer, you must reset usage data on the device. message.action.delete.ingress.rule=Please confirm that you want to delete this ingress rule. message.action.delete.ISO.for.all.zones=The ISO is used by all zones. Please confirm that you want to delete it from all zones. message.action.delete.ISO=Please confirm that you want to delete this ISO. @@ -1234,15 +1229,14 @@ message.action.enable.pod=Please confirm that you want to enable this pod. message.action.enable.zone=Please confirm that you want to enable this zone. message.action.force.reconnect=Your host has been successfully forced to reconnect. This process can take up to several minutes. message.action.host.enable.maintenance.mode=Enabling maintenance mode will cause a live migration of all running instances on this host to any available host. -message.action.instance.reset.password=Please confirm that you want to change the ROOT password for this virtual machine. +message.action.instance.reset.password=Please confirm that you want to change the ROOT password for this virtual machine. message.action.manage.cluster=Please confirm that you want to manage the cluster. -message.action.primarystorage.enable.maintenance.mode=Warning: placing the primary storage into maintenance mode will cause all VMs using volumes from it to be stopped. Do you want to continue? +message.action.primarystorage.enable.maintenance.mode=Warning\: placing the primary storage into maintenance mode will cause all VMs using volumes from it to be stopped. Do you want to continue? message.action.reboot.instance=Please confirm that you want to reboot this instance. message.action.reboot.router=All services provided by this virtual router will be interrupted. Please confirm that you want to reboot this router. message.action.reboot.systemvm=Please confirm that you want to reboot this system VM. message.action.release.ip=Please confirm that you want to release this IP. message.action.remove.host=Please confirm that you want to remove this host. -message.action.remove.host=Removing last/only host in cluster and reinstalling the host will destroy working environment/database on the host and render the VM Guests unuseable. message.action.reset.password.off=Your instance currently does not support this feature. message.action.reset.password.warning=Your instance must be stopped before attempting to change its current password. message.action.restore.instance=Please confirm that you want to restore this instance. @@ -1257,40 +1251,40 @@ message.action.unmanage.cluster=Please confirm that you want to unmanage the clu message.action.vmsnapshot.delete=Please confirm that you want to delete this VM snapshot. message.action.vmsnapshot.revert=Revert VM snapshot message.activate.project=Are you sure you want to activate this project? -message.add.cluster=Add a hypervisor managed cluster for zone , pod -message.add.cluster.zone=Add a hypervisor managed cluster for zone +message.add.cluster.zone=Add a hypervisor managed cluster for zone +message.add.cluster=Add a hypervisor managed cluster for zone , pod message.add.disk.offering=Please specify the following parameters to add a new disk offering message.add.domain=Please specify the subdomain you want to create under this domain message.add.firewall=Add a firewall to zone message.add.guest.network=Please confirm that you would like to add a guest network message.add.host=Please specify the following parameters to add a new host -message.adding.host=Adding host -message.adding.Netscaler.device=Adding Netscaler device -message.adding.Netscaler.provider=Adding Netscaler provider +message.add.ip.range.direct.network=Add an IP range to direct network in zone +message.add.ip.range.to.pod=

    Add an IP range to pod\:

    message.add.ip.range=Add an IP range to public network in zone -message.add.ip.range.direct.network=Add an IP range to direct network in zone -message.add.ip.range.to.pod=

    Add an IP range to pod:

    -message.additional.networks.desc=Please select additional network(s) that your virtual instance will be connected to. +message.add.load.balancer.under.ip=The load balancer rule has been added under IP\: message.add.load.balancer=Add a load balancer to zone -message.add.load.balancer.under.ip=The load balancer rule has been added under IP: -message.add.network=Add a new network for zone: +message.add.network=Add a new network for zone\: message.add.new.gateway.to.vpc=Please specify the information to add a new gateway to this VPC. -message.add.pod=Add a new pod for zone -message.add.pod.during.zone.creation=Each zone must contain in one or more pods, and we will add the first pod now. A pod contains hosts and primary storage servers, which you will add in a later step. First, configure a range of reserved IP addresses for CloudStack's internal management traffic. The reserved IP range must be unique for each zone in the cloud. +message.add.pod.during.zone.creation=Each zone must contain in one or more pods, and we will add the first pod now. A pod contains hosts and primary storage servers, which you will add in a later step. First, configure a range of reserved IP addresses for CloudStack\\'s internal management traffic. The reserved IP range must be unique for each zone in the cloud. +message.add.pod=Add a new pod for zone +message.add.primary.storage=Add a new Primary Storage for zone , pod message.add.primary=Please specify the following parameters to add a new primary storage -message.add.primary.storage=Add a new Primary Storage for zone , pod message.add.region=Please specify the required information to add a new region. -message.add.secondary.storage=Add a new storage for zone +message.add.secondary.storage=Add a new storage for zone message.add.service.offering=Please fill in the following data to add a new compute offering. message.add.system.service.offering=Please fill in the following data to add a new system service offering. message.add.template=Please enter the following data to create your new template message.add.volume=Please fill in the following data to add a new volume. message.add.VPN.gateway=Please confirm that you want to add a VPN Gateway +message.adding.host=Adding host +message.adding.Netscaler.device=Adding Netscaler device +message.adding.Netscaler.provider=Adding Netscaler provider +message.additional.networks.desc=Please select additional network(s) that your virtual instance will be connected to. message.advanced.mode.desc=Choose this network model if you wish to enable VLAN support. This network model provides the most flexibility in allowing administrators to provide custom network offerings such as providing firewall, vpn, or load balancer support as well as enabling direct vs virtual networking. message.advanced.security.group=Choose this if you wish to use security groups to provide guest VM isolation. message.advanced.virtual=Choose this if you wish to use zone-wide VLANs to provide guest VM isolation. -message.after.enable.s3=S3-backed Secondary Storage configured. Note: When you leave this page, you will not be able to re-configure S3 again. -message.after.enable.swift=Swift configured. Note: When you leave this page, you will not be able to re-configure Swift again. +message.after.enable.s3=S3-backed Secondary Storage configured. Note\: When you leave this page, you will not be able to re-configure S3 again. +message.after.enable.swift=Swift configured. Note\: When you leave this page, you will not be able to re-configure Swift again. message.alert.state.detected=Alert state detected message.allow.vpn.access=Please enter a username and password of the user that you want to allow VPN access. message.apply.snapshot.policy=You have successfully updated your current snapshot policy. @@ -1315,10 +1309,10 @@ message.confirm.join.project=Please confirm you wish to join this project. message.confirm.remove.IP.range=Please confirm that you would like to remove this IP range. message.confirm.shutdown.provider=Please confirm that you would like to shutdown this provider message.copy.iso.confirm=Please confirm that you wish to copy your ISO to -message.copy.template=Copy template XXX from zone to +message.copy.template=Copy template XXX from zone to +message.create.template.vm=Create VM from template +message.create.template.volume=Please specify the following information before creating a template of your disk volume\: . Creation of the template can range from several minutes to longer depending on the size of the volume. message.create.template=Are you sure you want to create template? -message.create.template.vm=Create VM from template -message.create.template.volume=Please specify the following information before creating a template of your disk volume: . Creation of the template can range from several minutes to longer depending on the size of the volume. message.creating.cluster=Creating cluster message.creating.guest.network=Creating guest network message.creating.physical.networks=Creating physical networks @@ -1328,6 +1322,7 @@ message.creating.secondary.storage=Creating secondary storage message.creating.zone=Creating zone message.decline.invitation=Are you sure you want to decline this project invitation? message.delete.account=Please confirm that you want to delete this account. +message.delete.affinity.group=Please confirm that you would like to remove this affinity group. message.delete.gateway=Please confirm you want to delete the gateway message.delete.project=Are you sure you want to delete this project? message.delete.user=Please confirm that you would like to delete this user. @@ -1337,31 +1332,31 @@ message.delete.VPN.gateway=Please confirm that you want to delete this VPN Gatew message.desc.advanced.zone=For more sophisticated network topologies. This network model provides the most flexibility in defining guest networks and providing custom network offerings such as firewall, VPN, or load balancer support. message.desc.basic.zone=Provide a single network where each VM instance is assigned an IP directly from the network. Guest isolation can be provided through layer-3 means such as security groups (IP address source filtering). message.desc.cluster=Each pod must contain one or more clusters, and we will add the first cluster now. A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Each cluster consists of one or more hosts and one or more primary storage servers. -message.desc.host=Each cluster must contain at least one host (computer) for guest VMs to run on, and we will add the first host now. For a host to function in CloudStack, you must install hypervisor software on the host, assign an IP address to the host, and ensure the host is connected to the CloudStack management server.

    Give the host's DNS or IP address, the user name (usually root) and password, and any labels you use to categorize hosts. +message.desc.host=Each cluster must contain at least one host (computer) for guest VMs to run on, and we will add the first host now. For a host to function in CloudStack, you must install hypervisor software on the host, assign an IP address to the host, and ensure the host is connected to the CloudStack management server.

    Give the host\\'s DNS or IP address, the user name (usually root) and password, and any labels you use to categorize hosts. message.desc.primary.storage=Each cluster must contain one or more primary storage servers, and we will add the first one now. Primary storage contains the disk volumes for all the VMs running on hosts in the cluster. Use any standards-compliant protocol that is supported by the underlying hypervisor. message.desc.secondary.storage=Each zone must have at least one NFS or secondary storage server, and we will add the first one now. Secondary storage stores VM templates, ISO images, and VM disk volume snapshots. This server must be available to all hosts in the zone.

    Provide the IP address and exported path. message.desc.zone=A zone is the largest organizational unit in CloudStack, and it typically corresponds to a single datacenter. Zones provide physical isolation and redundancy. A zone consists of one or more pods (each of which contains hosts and primary storage servers) and a secondary storage server which is shared by all pods in the zone. message.detach.disk=Are you sure you want to detach this disk? message.detach.iso.confirm=Please confirm that you want to detach the ISO from this virtual instance. -message.disable.account=Please confirm that you want to disable this account. By disabling the account, all users for this account will no longer have access to their cloud resources. All running virtual machines will be immediately shut down. +message.disable.account=Please confirm that you want to disable this account. By disabling the account, all users for this account will no longer have access to their cloud resources. All running virtual machines will be immediately shut down. message.disable.snapshot.policy=You have successfully disabled your current snapshot policy. message.disable.user=Please confirm that you would like to disable this user. message.disable.vpn.access=Please confirm that you want to disable VPN Access. message.disable.vpn=Are you sure you want to disable VPN? -message.download.ISO=Please click 00000 to download ISO -message.download.template=Please click 00000 to download template +message.download.ISO=Please click 00000 to download ISO +message.download.template=Please click 00000 to download template message.download.volume.confirm=Please confirm that you want to download this volume -message.download.volume=Please click 00000 to download volume +message.download.volume=Please click 00000 to download volume message.edit.account=Edit ("-1" indicates no limit to the amount of resources create) message.edit.confirm=Please confirm that your changes before clicking "Save". message.edit.limits=Please specify limits to the following resources. A "-1" indicates no limit to the amount of resources create. message.edit.traffic.type=Please specify the traffic label you want associated with this traffic type. message.enable.account=Please confirm that you want to enable this account. -message.enabled.vpn.ip.sec=Your IPSec pre-shared key is -message.enabled.vpn=Your VPN access is currently enabled and can be accessed via the IP message.enable.user=Please confirm that you would like to enable this user. message.enable.vpn.access=VPN is currently disabled for this IP Address. Would you like to enable VPN access? message.enable.vpn=Please confirm that you want VPN access enabled for this IP address. +message.enabled.vpn.ip.sec=Your IPSec pre-shared key is +message.enabled.vpn=Your VPN access is currently enabled and can be accessed via the IP message.enabling.security.group.provider=Enabling Security Group provider message.enabling.zone=Enabling zone message.enter.token=Please enter the token that you were given in your invite e-mail. @@ -1369,14 +1364,14 @@ message.generate.keys=Please confirm that you would like to generate new keys fo message.guest.traffic.in.advanced.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of VLAN IDs to carry guest traffic for each physical network. message.guest.traffic.in.basic.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of IP addresses that CloudStack can assign to guest VMs. Make sure this range does not overlap the reserved system IP range. message.installWizard.click.retry=Click the button to retry launch. -message.installWizard.copy.whatIsACluster=A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Virtual machine instances (VMs) can be live-migrated from one host to another within the same cluster, without interrupting service to the user. A cluster is the third-largest organizational unit within a CloudStack™ deployment. Clusters are contained within pods, and pods are contained within zones.

    CloudStack™ allows multiple clusters in a cloud deployment, but for a Basic Installation, we only need one cluster. -message.installWizard.copy.whatIsAHost=A host is a single computer. Hosts provide the computing resources that run the guest virtual machines. Each host has hypervisor software installed on it to manage the guest VMs (except for bare metal hosts, which are a special case discussed in the Advanced Installation Guide). For example, a Linux KVM-enabled server, a Citrix XenServer server, and an ESXi server are hosts. In a Basic Installation, we use a single host running XenServer or KVM.

    The host is the smallest organizational unit within a CloudStack™ deployment. Hosts are contained within clusters, clusters are contained within pods, and pods are contained within zones. -message.installWizard.copy.whatIsAPod=A pod often represents a single rack. Hosts in the same pod are in the same subnet.

    A pod is the second-largest organizational unit within a CloudStack™ deployment. Pods are contained within zones. Each zone can contain one or more pods; in the Basic Installation, you will have just one pod in your zone. -message.installWizard.copy.whatIsAZone=A zone is the largest organizational unit within a CloudStack™ deployment. A zone typically corresponds to a single datacenter, although it is permissible to have multiple zones in a datacenter. The benefit of organizing infrastructure into zones is to provide physical isolation and redundancy. For example, each zone can have its own power supply and network uplink, and the zones can be widely separated geographically (though this is not required). -message.installWizard.copy.whatIsCloudStack=CloudStack™ is a software platform that pools computing resources to build public, private, and hybrid Infrastructure as a Service (IaaS) clouds. CloudStack™ manages the network, storage, and compute nodes that make up a cloud infrastructure. Use CloudStack™ to deploy, manage, and configure cloud computing environments.

    Extending beyond individual virtual machine images running on commodity hardware, CloudStack™ provides a turnkey cloud infrastructure software stack for delivering virtual datacenters as a service - delivering all of the essential components to build, deploy, and manage multi-tier and multi-tenant cloud applications. Both open-source and Premium versions are available, with the open-source version offering nearly identical features. -message.installWizard.copy.whatIsPrimaryStorage=A CloudStack™ cloud infrastructure makes use of two types of storage: primary storage and secondary storage. Both of these can be iSCSI or NFS servers, or localdisk.

    Primary storage is associated with a cluster, and it stores the disk volumes of each guest VM for all the VMs running on hosts in that cluster. The primary storage server is typically located close to the hosts. -message.installWizard.copy.whatIsSecondaryStorage=Secondary storage is associated with a zone, and it stores the following:
    • Templates - OS images that can be used to boot VMs and can include additional configuration information, such as installed applications
    • ISO images - OS images that can be bootable or non-bootable
    • Disk volume snapshots - saved copies of VM data which can be used for data recovery or to create new templates
    -message.installWizard.now.building=Now building your cloud... +message.installWizard.copy.whatIsACluster=A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Virtual machine instances (VMs) can be live-migrated from one host to another within the same cluster, without interrupting service to the user. A cluster is the third-largest organizational unit within a CloudStack&\#8482; deployment. Clusters are contained within pods, and pods are contained within zones.

    CloudStack&\#8482; allows multiple clusters in a cloud deployment, but for a Basic Installation, we only need one cluster. +message.installWizard.copy.whatIsAHost=A host is a single computer. Hosts provide the computing resources that run the guest virtual machines. Each host has hypervisor software installed on it to manage the guest VMs (except for bare metal hosts, which are a special case discussed in the Advanced Installation Guide). For example, a Linux KVM-enabled server, a Citrix XenServer server, and an ESXi server are hosts. In a Basic Installation, we use a single host running XenServer or KVM.

    The host is the smallest organizational unit within a CloudStack&\#8482; deployment. Hosts are contained within clusters, clusters are contained within pods, and pods are contained within zones. +message.installWizard.copy.whatIsAPod=A pod often represents a single rack. Hosts in the same pod are in the same subnet.

    A pod is the second-largest organizational unit within a CloudStack&\#8482; deployment. Pods are contained within zones. Each zone can contain one or more pods; in the Basic Installation, you will have just one pod in your zone. +message.installWizard.copy.whatIsAZone=A zone is the largest organizational unit within a CloudStack&\#8482; deployment. A zone typically corresponds to a single datacenter, although it is permissible to have multiple zones in a datacenter. The benefit of organizing infrastructure into zones is to provide physical isolation and redundancy. For example, each zone can have its own power supply and network uplink, and the zones can be widely separated geographically (though this is not required). +message.installWizard.copy.whatIsCloudStack=CloudStack&\#8482 is a software platform that pools computing resources to build public, private, and hybrid Infrastructure as a Service (IaaS) clouds. CloudStack&\#8482 manages the network, storage, and compute nodes that make up a cloud infrastructure. Use CloudStack&\#8482 to deploy, manage, and configure cloud computing environments.

    Extending beyond individual virtual machine images running on commodity hardware, CloudStack&\#8482 provides a turnkey cloud infrastructure software stack for delivering virtual datacenters as a service - delivering all of the essential components to build, deploy, and manage multi-tier and multi-tenant cloud applications. Both open-source and Premium versions are available, with the open-source version offering nearly identical features. +message.installWizard.copy.whatIsPrimaryStorage=A CloudStack&\#8482; cloud infrastructure makes use of two types of storage\: primary storage and secondary storage. Both of these can be iSCSI or NFS servers, or localdisk.

    Primary storage is associated with a cluster, and it stores the disk volumes of each guest VM for all the VMs running on hosts in that cluster. The primary storage server is typically located close to the hosts. +message.installWizard.copy.whatIsSecondaryStorage=Secondary storage is associated with a zone, and it stores the following\:
    • Templates - OS images that can be used to boot VMs and can include additional configuration information, such as installed applications
    • ISO images - OS images that can be bootable or non-bootable
    • Disk volume snapshots - saved copies of VM data which can be used for data recovery or to create new templates
    +message.installWizard.now.building=Now building your cloud... message.installWizard.tooltip.addCluster.name=A name for the cluster. This can be text of your choosing and is not used by CloudStack. message.installWizard.tooltip.addHost.hostname=The DNS name or IP address of the host. message.installWizard.tooltip.addHost.password=This is the password for the user named above (from your XenServer install). @@ -1406,26 +1401,26 @@ message.instanceWizard.noTemplates=You do not have any templates available; plea message.ip.address.changed=Your IP addresses may have changed; would you like to refresh the listing? Note that in this case the details pane will close. message.iso.desc=Disc image containing data or bootable media for OS message.join.project=You have now joined a project. Please switch to Project view to see the project. -message.launch.vm.on.private.network=Do you wish to launch your instance on your own private dedicated network? +message.launch.vm.on.private.network=Do you wish to launch your instance on your own private dedicated network? message.launch.zone=Zone is ready to launch; please proceed to the next step. message.lock.account=Please confirm that you want to lock this account. By locking the account, all users for this account will no longer be able to manage their cloud resources. Existing resources can still be accessed. message.migrate.instance.confirm=Please confirm the host you wish to migrate the virtual instance to. message.migrate.instance.to.host=Please confirm that you want to migrate instance to another host. message.migrate.instance.to.ps=Please confirm that you want to migrate instance to another primary storage. -message.migrate.router.confirm=Please confirm the host you wish to migrate the router to: -message.migrate.systemvm.confirm=Please confirm the host you wish to migrate the system VM to: +message.migrate.router.confirm=Please confirm the host you wish to migrate the router to\: +message.migrate.systemvm.confirm=Please confirm the host you wish to migrate the system VM to\: message.migrate.volume=Please confirm that you want to migrate volume to another primary storage. -message.new.user=Specify the following to add a new user to the account +message.new.user=Specify the following to add a new user to the account message.no.network.support.configuration.not.true=You do not have any zone that has security group enabled. Thus, no additional network features. Please continue to step 5. message.no.network.support=Your selected hypervisor, vSphere, does not have any additional network features. Please continue to step 5. message.no.projects.adminOnly=You do not have any projects.
    Please ask your administrator to create a new project. message.no.projects=You do not have any projects.
    Please create a new one from the projects section. -message.number.clusters=

    # of Clusters

    -message.number.hosts=

    # of Hosts

    -message.number.pods=

    # of Pods

    -message.number.storage=

    # of Primary Storage Volumes

    -message.number.zones=

    # of Zones

    -message.pending.projects.1=You have pending project invitations: +message.number.clusters=

    \# of Clusters

    +message.number.hosts=

    \# of Hosts

    +message.number.pods=

    \# of Pods

    +message.number.storage=

    \# of Primary Storage Volumes

    +message.number.zones=

    \# of Zones

    +message.pending.projects.1=You have pending project invitations\: message.pending.projects.2=To view, please go to the projects section, then select invitations from the drop-down. message.please.add.at.lease.one.traffic.range=Please add at least one traffic range. message.please.proceed=Please proceed to the next step. @@ -1456,7 +1451,7 @@ message.select.security.groups=Please select security group(s) for your new VM message.select.template=Please select a template for your new virtual instance. message.setup.physical.network.during.zone.creation.basic=When adding a basic zone, you can set up one physical network, which corresponds to a NIC on the hypervisor. The network carries several types of traffic.

    You may also drag and drop other traffic types onto the physical network. message.setup.physical.network.during.zone.creation=When adding an advanced zone, you need to set up one or more physical networks. Each network corresponds to a NIC on the hypervisor. Each physical network can carry one or more types of traffic, with certain restrictions on how they may be combined.

    Drag and drop one or more traffic types onto each physical network. -message.setup.successful=Cloud setup successful! +message.setup.successful=Cloud setup successful\! message.snapshot.schedule=You can setup recurring snapshot schedules by selecting from the available options below and applying your policy preference message.specify.url=Please specify URL message.step.1.continue=Please select a template or ISO to continue @@ -1467,7 +1462,7 @@ message.step.3.continue=Please select a disk offering to continue message.step.3.desc= message.step.4.continue=Please select at least one network to continue message.step.4.desc=Please select the primary network that your virtual instance will be connected to. -message.storage.traffic=Traffic between CloudStack's internal resources, including any components that communicate with the Management Server, such as hosts and CloudStack system VMs. Please configure storage traffic here. +message.storage.traffic=Traffic between CloudStack\\'s internal resources, including any components that communicate with the Management Server, such as hosts and CloudStack system VMs. Please configure storage traffic here. message.suspend.project=Are you sure you want to suspend this project? message.template.desc=OS image that can be used to boot VMs message.tooltip.dns.1=Name of a DNS server for use by VMs in the zone. The public IP addresses for the zone must have a route to this server. @@ -1481,7 +1476,7 @@ message.tooltip.reserved.system.netmask=The network prefix that defines the pod message.tooltip.zone.name=A name for the zone. message.update.os.preference=Please choose a OS preference for this host. All virtual instances with similar preferences will be first allocated to this host before choosing another. message.update.resource.count=Please confirm that you want to update resource counts for this account. -message.update.ssl=Please submit a new X.509 compliant SSL certificate to be updated to each console proxy virtual instance: +message.update.ssl=Please submit a new X.509 compliant SSL certificate to be updated to each console proxy virtual instance\: message.validate.instance.name=Instance name can not be longer than 63 characters. Only ASCII letters a~z, A~Z, digits 0~9, hyphen are allowed. Must start with a letter and end with a letter or a digit. message.virtual.network.desc=A dedicated virtualized network for your account. The broadcast domain is contained within a VLAN and all public network access is routed out by a virtual router. message.vm.create.template.confirm=Create Template will reboot the VM automatically. @@ -1492,9 +1487,9 @@ message.zone.creation.complete.would.you.like.to.enable.this.zone=Zone creation message.Zone.creation.complete=Zone creation complete message.zone.no.network.selection=The zone you selected does not have any choices for network selection. message.zone.step.1.desc=Please select a network model for your zone. -message.zone.step.2.desc=Please enter the following info to add a new zone -message.zone.step.3.desc=Please enter the following info to add a new pod -message.zoneWizard.enable.local.storage=WARNING: If you enable local storage for this zone, you must do the following, depending on where you would like your system VMs to launch:

    1. If system VMs need to be launched in primary storage, primary storage needs to be added to the zone after creation. You must also start the zone in a disabled state.

    2. If system VMs need to be launched in local storage, system.vm.use.local.storage needs to be set to true before you enable the zone.


    Would you like to continue? +message.zone.step.2.desc=Please enter the following info to add a new zone +message.zone.step.3.desc=Please enter the following info to add a new pod +message.zoneWizard.enable.local.storage=WARNING\: If you enable local storage for this zone, you must do the following, depending on where you would like your system VMs to launch\:

    1. If system VMs need to be launched in primary storage, primary storage needs to be added to the zone after creation. You must also start the zone in a disabled state.

    2. If system VMs need to be launched in local storage, system.vm.use.local.storage needs to be set to true before you enable the zone.


    Would you like to continue? mode=Mode network.rate=Network Rate notification.reboot.instance=Reboot instance @@ -1512,14 +1507,14 @@ state.Creating=Creating state.Declined=Declined state.Destroyed=Destroyed state.Disabled=Disabled -state.enabled=Enabled state.Enabled=Enabled +state.enabled=Enabled state.Error=Error state.Expunging=Expunging state.Migrating=Migrating state.Pending=Pending -state.ready=Ready state.Ready=Ready +state.ready=Ready state.Running=Running state.Starting=Starting state.Stopped=Stopped From bdbeb7bc3bafe0a694d43ef58f5d21d6f9cff0b5 Mon Sep 17 00:00:00 2001 From: Sebastien Goasguen Date: Mon, 29 Apr 2013 09:53:13 -0400 Subject: [PATCH 469/607] Adding arabic to .tx/config file --- tools/transifex/.tx/config | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/transifex/.tx/config b/tools/transifex/.tx/config index 80c02aa957c..9c495cce520 100644 --- a/tools/transifex/.tx/config +++ b/tools/transifex/.tx/config @@ -17,6 +17,7 @@ source_lang = en file_filter = translations/CloudStack_UI.42xmessagesproperties/.properties source_file = work-dir/messages.properties source_lang = en +trans.ar = work-dir/messages_ar.properties trans.ca = work-dir/messages_ca.properties trans.de_DE = work-dir/messages_de_DE.properties trans.es = work-dir/messages_es.properties From 137fd188cf45b484fae03d8c2e9ebae856197ab9 Mon Sep 17 00:00:00 2001 From: Sebastien Goasguen Date: Mon, 29 Apr 2013 10:09:47 -0400 Subject: [PATCH 470/607] Adding latest arabic resource file --- .../classes/resources/messages_ar.properties | 1683 ++--------------- 1 file changed, 198 insertions(+), 1485 deletions(-) diff --git a/client/WEB-INF/classes/resources/messages_ar.properties b/client/WEB-INF/classes/resources/messages_ar.properties index aa8e4410dda..f0b779611b6 100644 --- a/client/WEB-INF/classes/resources/messages_ar.properties +++ b/client/WEB-INF/classes/resources/messages_ar.properties @@ -16,1150 +16,82 @@ # under the License. -#new labels (begin) ********************************************************************************************** -label.egress.rules=\u0642\u0648\u0627\u0639\u062f \u0627\u0644\u062e\u0631\u0648\u062c -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. -label.zoneWizard.trafficType.management=\u0625\u062f\u0627\u0631\u0629\\\: \u0627\u0644\u062d\u0631\u0643\u0629 \u0628\u064a\u0646 \u0627\u0644\u0645\u0648\u0627\u0631\u062f \u0627\u0644\u062f\u0627\u062e\u0644\u064a\u0629 \u0644 \u0643\u0644\u0627\u0648\u062f \u0633\u062a\u0627\u0643 \u060c \u0645\u062a\u0636\u0645\u0646\u0629 \u0623\u064a \u062c\u0632\u0621 \u064a\u062a\u0635\u0644 \u0628\u062e\u0627\u062f\u0645\\\u0633\u064a\u0631\u0641\u0631 \u0627\u0644\u0625\u062f\u0627\u0631\u0629 \u060c \u0645\u062b\u0644 \u0627\u0644\u0645\u0636\u064a\u0641\u0627\u062a \u0648 \u0623\u0646\u0638\u0645\u0629 \u0643\u0644\u0627\u0648\u062f \u0633\u062a\u0627\u0643 \u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a\u0629. -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.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.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 -label.quickview=\u0646\u0638\u0631\u0629 \u0633\u0631\u064a\u0639\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.stop=\u062a\u0648\u0642\u0641 -label.reboot=\u0625\u0639\u0627\u062f\u0629 \u062a\u0634\u063a\u064a\u0644 -label.destroy=\u0647\u062f\u0645 -label.restore=\u0625\u0633\u062a\u0639\u0627\u062f\u0629 -label.isolation.uri=\u0639\u0632\u0644 \u0627\u0644\u0631\u0627\u0628\u0637 -label.broadcast.uri=\u0628\u062b \u0627\u0644\u0631\u0627\u0628\u0637 -label.enable.s3=\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u062a\u062e\u0632\u064a\u0646 \u0627\u0644\u062b\u0627\u0646\u0648\u064a S3 +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. -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. -label.s3.access_key=\u0645\u0641\u062a\u0627\u062d \u0627\u0644\u0648\u0635\u0648\u0644 -label.s3.secret_key=\u0627\u0644\u0645\u0641\u062a\u0627\u062d \u0627\u0644\u0633\u0631\u064a -label.s3.bucket=\u062f\u0644\u0648 -label.s3.endpoint=\u0646\u0642\u0637\u0629 \u0627\u0644\u0646\u0647\u0627\u064a\u0629 -label.s3.use_https=\u0627\u0633\u062a\u062e\u062f\u0645 HTTPS -label.s3.connection_timeout=\u0645\u0647\u0644\u0629 \u0627\u0644\u0627\u062a\u0635\u0627\u0644 -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.socket_timeout=\u0645\u0647\u0644\u0629 \u0627\u0644\u0645\u0642\u0628\u0633 -#new labels (end) ************************************************************************************************ - - -#modified labels (begin) ***************************************************************************************** -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 -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 \\\:

    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 -#modified labels (end) ******************************************************************************************* - -label.configure.network.ACLs=\u0636\u0628\u0637 \u0634\u0628\u0643\u0629 ACLs -label.network.ACLs=\u0634\u0628\u0643\u0629 ACLs -label.add.network.ACL=\u0625\u0636\u0627\u0641\u0629 \u0634\u0628\u0643\u0629 ACL -label.private.Gateway=\u0645\u0646\u0641\u0630\\Gateway \u062e\u0627\u0635 -label.VPC.router.details=\u062a\u0641\u0627\u0635\u064a\u0644 \u062c\u0647\u0627\u0632 \u0627\u0644\u062a\u0648\u062c\u064a\u0647 VPC -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.local.storage.enabled=\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u062a\u062e\u0632\u064a\u0646 \u0627\u0644\u0645\u062d\u0644\u064a -label.tier.details=\u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u0637\u0628\u0642\u0629 -label.edit.tags=\u062a\u0639\u062f\u064a\u0644 \u0627\u0644\u0639\u0644\u0627\u0645\u0627\u062a -label.action.enable.physical.network=\u062a\u0645\u0643\u064a\u0646 \u0634\u0628\u0643\u0629 \u0641\u064a\u0632\u064a\u0627\u0626\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 -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.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 - -label.select.tier=\u062d\u062f\u062f \u0637\u0628\u0642\u0629 -label.add.ACL=\u0625\u0636\u0627\u0641\u0629 ACL -label.remove.ACL=\u0625\u0632\u0627\u0644\u0629 ACL -label.tier=\u0637\u0628\u0642\u0629 -label.network.ACL=\u0634\u0628\u0643\u0629 ACL -label.network.ACL.total=\u0625\u062c\u0645\u0627\u0644 \u0634\u0628\u0643\u0629 ACL -label.add.new.gateway=\u0623\u0636\u0641 \u0628\u0648\u0627\u0628\u0629 \u062c\u062f\u064a\u062f\u0629 -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 -label.delete.gateway=\u0627\u062d\u0630\u0641 \u0627\u0644\u0628\u0648\u0627\u0628\u0629 -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 -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.add.route=\u0625\u0636\u0627\u0641\u0629 \u0645\u0633\u0627\u0631 -label.add.static.route=\u0625\u0636\u0627\u0641\u0629 \u062a\u0648\u062c\u064a\u0647 \u062b\u0627\u0628\u062a -label.remove.static.route=\u0625\u0632\u0627\u0644\u0629 \u0627\u0644\u062a\u0648\u062c\u064a\u0647 \u062b\u0627\u0628\u062a -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 -# message.add.VPN.gateway=Please confirm that you want to add a VPN Gateway -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.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 -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 -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.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.IKE.policy=\u0633\u064a\u0627\u0633\u0629 IKE -label.ESP.policy=\u0633\u064a\u0627\u0633\u0629 ESP -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.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.CIDR.list=\u0642\u0627\u0626\u0645\u0629 CIDR -label.IKE.lifetime=\u0639\u0645\u0631 IKE (\u062b\u0627\u0646\u064a\u0629) -label.ESP.lifetime=\u0639\u0645\u0631 ESP (\u062b\u0627\u0646\u064a\u0629) -label.dead.peer.detection=\u0643\u0634\u0641 \u0627\u0644\u0642\u0631\u064a\u0646 \u0627\u0644\u0645\u0641\u0642\u0648\u062f -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 -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 -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 -# message.delete.VPN.connection=Please confirm that you want to delete VPN connection -label.add.new.tier=\u0625\u0636\u0627\u0641\u0629 \u0637\u0628\u0642\u0629 \u062c\u062f\u064a\u062f\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.remove.tier=\u0625\u0636\u0627\u0641\u0629 \u0637\u0628\u0642\u0629 - -label.local.storage.enabled=\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u062a\u062e\u0632\u064a\u0646 \u0627\u0644\u0645\u062d\u0644\u064a -label.associated.network=\u0634\u0628\u0643\u0629 \u0645\u0631\u062a\u0628\u0637\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.dns=\u0646\u0638\u0627\u0645 \u062a\u0633\u0645\u064a\u0629 \u0627\u0644\u0645\u062c\u0627\u0644 DNS - -label.vpc=\u0633\u062d\u0627\u0628\u0629 \u0625\u0641\u062a\u0631\u0627\u0636\u064a\u0629 \u062e\u0627\u0635\u0629 VPC -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.tier=\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.super.cidr.for.guest.networks=CIDR \u0645\u0645\u062a\u0627\u0632 \u0644\u0634\u0628\u0643\u0627\u062a \u0627\u0644\u0636\u064a\u0641. -# label.DNS.domain.for.guest.networks=DNS domain for Guest Networks -# label.configure.vpc=Configure VPC -# label.edit.vpc=Edit VPC -# label.restart.vpc=restart VPC -# message.restart.vpc=Please confirm that you want to restart the VPC -# label.remove.vpc=remove VPC -# message.remove.vpc=Please confirm that you want to remove the VPC -# label.vpn.customer.gateway=VPN Customer Gateway -# label.add.vpn.customer.gateway=Add VPN Customer Gateway -# label.IKE.encryption=IKE Encryption -# label.IKE.hash=IKE Hash -# label.IKE.DH=IKE DH -# label.ESP.encryption=ESP Encryption -# label.ESP.hash=ESP Hash -# label.perfect.forward.secrecy=Perfect Forward Secrecy -label.IKE.lifetime=\u0639\u0645\u0631 IKE (\u062b\u0627\u0646\u064a\u0629) -label.ESP.lifetime=\u0639\u0645\u0631 ESP (\u062b\u0627\u0646\u064a\u0629) -label.dead.peer.detection=\u0643\u0634\u0641 \u0627\u0644\u0642\u0631\u064a\u0646 \u0627\u0644\u0645\u0641\u0642\u0648\u062f -label.delete.VPN.customer.gateway=\u062d\u0630\u0641 \u0628\u0648\u0627\u0628\u0629 VPN \u0627\u0644\u0645\u062e\u0635\u0635\u0629 -# message.delete.VPN.customer.gateway=Please confirm that you want to delete this VPN Customer Gateway - -# label.network.domain.text=Network domain -label.memory.mb=\u0627\u0644\u0630\u0627\u0643\u0631\u0629 ( \u0628\u0627\u0644\u0645\u064a\u062c\u0627\u0628\u0627\u064a\u0628\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) - -# message.action.remove.host=Please confirm that you want to remove this host. - -# message.action.reboot.router=All services provided by this virtual router will be interrupted. Please confirm that you want to reboot this router. -# message.action.stop.router=All services provided by this virtual router will be interrupted. Please confirm that you want to stop this router. -# message.restart.network=All services provided by this network will be interrupted. Please confirm that you want to restart this network. - - -# label.ipaddress=IP Address -# label.vcdcname=vCenter DC name -# label.vcipaddress=vCenter IP Address -# label.vsmctrlvlanid=Control VLAN ID -# label.vsmpktvlanid=Packet VLAN ID -# label.vsmstoragevlanid=Storage VLAN ID -# label.nexusVswitch=Nexus 1000v -# label.action.delete.nexusVswitch=Delete Nexus 1000v -# label.action.enable.nexusVswitch=Enable Nexus 1000v -# label.action.disable.nexusVswitch=Disable Nexus 1000v -# label.action.list.nexusVswitch=List Nexus 1000v -# message.action.delete.nexusVswitch=Please confirm that you want to delete this nexus 1000v -# message.action.enable.nexusVswitch=Please confirm that you want to enable this nexus 1000v -# message.action.disable.nexusVswitch=Please confirm that you want to disable this nexus 1000v -# message.specify.url=Please specify URL -# label.select.instance.to.attach.volume.to=Select instance to attach volume to -label.upload=\u0631\u0641\u0639 -# label.upload.volume=Upload volume -# label.virtual.routers=Virtual Routers -# label.primary.storage.count=Primary Storage Pools -# label.secondary.storage.count=Secondary Storage Pools -# label.number.of.system.vms=Number of System VMs -# label.number.of.virtual.routers=Number of Virtual Routers -# label.action.register.iso=Register ISO -# label.isolation.method=Isolation method -# label.action.register.template=Register template -# label.checksum=MD5 checksum -# label.vpn=VPN -# label.vlan=VLAN - - -# label.management.ips=Management IP Addresses -label.devices=\u0627\u0644\u0623\u062c\u0647\u0632\u0629 -# label.rules=Rules -# label.traffic.label=Traffic label -# label.vm.state=VM state -# message.setup.physical.network.during.zone.creation.basic=When adding a basic zone, you can set up one physical network, which corresponds to a NIC on the hypervisor. The network carries several types of traffic.

    You may also drag and drop other traffic types onto the physical network. -# label.domain.router=Domain router -# label.console.proxy=Console proxy -# label.secondary.storage.vm=Secondary storage VM -# label.add.netScaler.device=Add Netscaler device -# label.add.F5.device=Add F5 device -# label.add.SRX.device=Add SRX device -# label.account.and.security.group=Account, Security group -# label.fetch.latest=Fetch latest -# label.system.offering=System Offering -# message.validate.instance.name=Instance name can not be longer than 63 characters. Only ASCII letters a~z, A~Z, digits 0~9, hyphen are allowed. Must start with a letter and end with a letter or a digit. - - -# label.isolated.networks=Isolated networks -# label.latest.events=Latest events -# state.Enabled=Enabled -# label.system.wide.capacity=System-wide capacity -# label.network.service.providers=Network Service Providers -# message.launch.zone=Zone is ready to launch; please proceed to the next step. -# error.unable.to.reach.management.server=Unable to reach Management Server -# label.internal.name=Internal name -# message.configure.all.traffic.types=You have multiple physical networks; please configure labels for each traffic type by clicking on the Edit button. -# message.edit.traffic.type=Please specify the traffic label you want associated with this traffic type. -# label.edit.traffic.type=Edit traffic type -# label.label=Label -# label.max.networks=Max. networks -# error.invalid.username.password=Invalid username or password -# message.enabling.security.group.provider=Enabling Security Group provider -# message.adding.Netscaler.provider=Adding Netscaler provider -# message.creating.guest.network=Creating guest network -# label.action.delete.physical.network=Delete physical network -# message.action.delete.physical.network=Please confirm that you want to delete this physical network -# message.installWizard.copy.whatIsAHost=A host is a single computer. Hosts provide the computing resources that run the guest virtual machines. Each host has hypervisor software installed on it to manage the guest VMs (except for bare metal hosts, which are a special case discussed in the Advanced Installation Guide). For example, a Linux KVM-enabled server, a Citrix XenServer server, and an ESXi server are hosts. In a Basic Installation, we use a single host running XenServer or KVM.

    The host is the smallest organizational unit within a CloudStack&\\\#8482; deployment. Hosts are contained within clusters, clusters are contained within pods, and pods are contained within zones. - - -# label.add.compute.offering=Add compute offering -# label.compute.offering=Compute offering -# label.compute.offerings=Compute offerings -# label.select.offering=Select offering -# label.menu.infrastructure=Infrastructure -label.sticky.tablesize=\u062d\u062c\u0645 \u0627\u0644\u062c\u062f\u0648\u0644 -# label.sticky.expire=Expires -# label.sticky.cookie-name=Cookie name -# label.sticky.mode=Mode -# label.sticky.length=Length -# label.sticky.holdtime=Hold time -# label.sticky.request-learn=Request learn -# label.sticky.prefix=Prefix -# label.sticky.nocache=No cache -# label.sticky.indirect=Indirect -# label.sticky.postonly=Post only -# label.sticky.domain=Domain -# state.Allocating=Allocating -# state.Migrating=Migrating -# error.please.specify.physical.network.tags=Network offerings is not available until you specify tags for this physical network. - - -# state.Stopping=Stopping -# message.add.load.balancer.under.ip=The load balancer rule has been added under IP\\\: -# message.select.instance=Please select an instance. -# label.select=Select -# label.select.vm.for.static.nat=Select VM for static NAT -# label.select.instance=Select instance -# label.nat.port.range=NAT Port Range -# label.static.nat.vm.details=Static NAT VM Details -# label.edit.lb.rule=Edit LB rule -# message.migrate.instance.to.host=Please confirm that you want to migrate instance to another host. -# label.migrate.instance.to.host=Migrate instance to another host -# message.migrate.instance.to.ps=Please confirm that you want to migrate instance to another primary storage. -# label.migrate.instance.to.ps=Migrate instance to another primary storage -# label.corrections.saved=Corrections saved -# message.installWizard.copy.whatIsSecondaryStorage=Secondary storage is associated with a zone, and it stores the following\\\:
    • Templates - OS images that can be used to boot VMs and can include additional configuration information, such as installed applications
    • ISO images - OS images that can be bootable or non-bootable
    • Disk volume snapshots - saved copies of VM data which can be used for data recovery or to create new templates
    -# message.installWizard.copy.whatIsPrimaryStorage=A CloudStack&\\\#8482; cloud infrastructure makes use of two types of storage\\\: primary storage and secondary storage. Both of these can be iSCSI or NFS servers, or localdisk.

    Primary storage is associated with a cluster, and it stores the disk volumes of each guest VM for all the VMs running on hosts in that cluster. The primary storage server is typically located close to the hosts. -# message.installWizard.copy.whatIsACluster=A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Virtual machine instances (VMs) can be live-migrated from one host to another within the same cluster, without interrupting service to the user. A cluster is the third-largest organizational unit within a CloudStack&\\\#8482; deployment. Clusters are contained within pods, and pods are contained within zones.

    CloudStack&\\\#8482; allows multiple clusters in a cloud deployment, but for a Basic Installation, we only need one cluster. -# message.installWizard.copy.whatIsAPod=A pod often represents a single rack. Hosts in the same pod are in the same subnet.

    A pod is the second-largest organizational unit within a CloudStack&\\\#8482; deployment. Pods are contained within zones. Each zone can contain one or more pods; in the Basic Installation, you will have just one pod in your zone. -# message.installWizard.copy.whatIsAZone=A zone is the largest organizational unit within a CloudStack&\\\#8482; deployment. A zone typically corresponds to a single datacenter, although it is permissible to have multiple zones in a datacenter. The benefit of organizing infrastructure into zones is to provide physical isolation and redundancy. For example, each zone can have its own power supply and network uplink, and the zones can be widely separated geographically (though this is not required). -# message.installWizard.copy.whatIsCloudStack=CloudStack&\\\#8482 is a software platform that pools computing resources to build public, private, and hybrid Infrastructure as a Service (IaaS) clouds. CloudStack&\\\#8482 manages the network, storage, and compute nodes that make up a cloud infrastructure. Use CloudStack&\\\#8482 to deploy, manage, and configure cloud computing environments.

    Extending beyond individual virtual machine images running on commodity hardware, CloudStack&\\\#8482 provides a turnkey cloud infrastructure software stack for delivering virtual datacenters as a service - delivering all of the essential components to build, deploy, and manage multi-tier and multi-tenant cloud applications. Both open-source and Premium versions are available, with the open-source version offering nearly identical features. -# message.installWizard.tooltip.addSecondaryStorage.path=The exported path, located on the server you specified above -# message.installWizard.tooltip.addSecondaryStorage.nfsServer=The IP address of the NFS server hosting the secondary storage -# message.installWizard.tooltip.addPrimaryStorage.path=(for NFS) In NFS this is the exported path from the server. Path (for SharedMountPoint). With KVM this is the path on each host that is where this primary storage is mounted. For example, "/mnt/primary". -# message.installWizard.tooltip.addPrimaryStorage.server=(for NFS, iSCSI, or PreSetup) The IP address or DNS name of the storage device. -# message.installWizard.tooltip.addPrimaryStorage.name=The name for the storage device. -# message.installWizard.tooltip.addHost.password=This is the password for the user named above (from your XenServer install). -# message.installWizard.tooltip.addHost.username=Usually root. -# message.installWizard.tooltip.addHost.hostname=The DNS name or IP address of the host. -# message.installWizard.tooltip.addCluster.name=A name for the cluster. This can be text of your choosing and is not used by CloudStack. -# message.installWizard.tooltip.addPod.reservedSystemEndIp=This is the IP range in the private network that the CloudStack uses to manage Secondary Storage VMs and Console Proxy VMs. These IP addresses are taken from the same subnet as computing servers. -# message.installWizard.tooltip.addPod.reservedSystemStartIp=This is the IP range in the private network that the CloudStack uses to manage Secondary Storage VMs and Console Proxy VMs. These IP addresses are taken from the same subnet as computing servers. -# message.installWizard.tooltip.addPod.reservedSystemNetmask=The netmask in use on the subnet the guests will use. -# message.installWizard.tooltip.addPod.reservedSystemGateway=The gateway for the hosts in that pod. -# message.installWizard.tooltip.addPod.name=A name for the pod -# message.installWizard.tooltip.configureGuestTraffic.guestEndIp=The range of IP addresses that will be available for allocation to guests in this zone. If one NIC is used, these IPs should be in the same CIDR as the pod CIDR. -# message.installWizard.tooltip.configureGuestTraffic.guestStartIp=The range of IP addresses that will be available for allocation to guests in this zone. If one NIC is used, these IPs should be in the same CIDR as the pod CIDR. -# message.installWizard.tooltip.configureGuestTraffic.guestNetmask=The netmask in use on the subnet that the guests should use -# message.installWizard.tooltip.configureGuestTraffic.guestGateway=The gateway that the guests should use -# message.installWizard.tooltip.configureGuestTraffic.description=A description for your network -# message.installWizard.tooltip.configureGuestTraffic.name=A name for your network -# message.installWizard.tooltip.addZone.internaldns2=These are DNS servers for use by system VMs in the zone. These DNS servers will be accessed via the private network interface of the System VMs. The private IP address you provide for the pods must have a route to the DNS server named here. -# message.installWizard.tooltip.addZone.internaldns1=These are DNS servers for use by system VMs in the zone. These DNS servers will be accessed via the private network interface of the System VMs. The private IP address you provide for the pods must have a route to the DNS server named here. -# message.installWizard.tooltip.addZone.dns2=These are DNS servers for use by guest VMs in the zone. These DNS servers will be accessed via the public network you will add later. The public IP addresses for the zone must have a route to the DNS server named here. -# message.installWizard.tooltip.addZone.name=A name for the zone -# message.installWizard.tooltip.addZone.dns1=These are DNS servers for use by guest VMs in the zone. These DNS servers will be accessed via the public network you will add later. The public IP addresses for the zone must have a route to the DNS server named here. -# message.setup.successful=Cloud setup successful\\\! -# label.may.continue=You may now continue. -# error.installWizard.message=Something went wrong; you may go back and correct any errors -# message.installWizard.now.building=Now building your cloud... -# message.installWizard.click.retry=Click the button to retry launch. -# label.launch=Launch -# label.installWizard.click.launch=Click the launch button. -# label.congratulations=Congratulations\\\! -# label.installWizard.addSecondaryStorageIntro.subtitle=What is secondary storage? -# label.installWizard.addSecondaryStorageIntro.title=Let’s add secondary storage -# label.installWizard.addPrimaryStorageIntro.subtitle=What is primary storage? -# label.installWizard.addPrimaryStorageIntro.title=Let’s add primary storage -# label.installWizard.addHostIntro.subtitle=What is a host? -# label.installWizard.addHostIntro.title=Let’s add a host -# label.installWizard.addClusterIntro.subtitle=What is a cluster? -# label.installWizard.addClusterIntro.title=Let’s add a cluster -# label.installWizard.addPodIntro.subtitle=What is a pod? -# label.installWizard.addPodIntro.title=Let’s add a pod -# label.installWizard.addZone.title=Add zone -# label.installWizard.addZoneIntro.subtitle=What is a zone? -# label.installWizard.addZoneIntro.title=Let’s add a zone -# error.password.not.match=The password fields do not match -# label.confirm.password=Confirm password -# message.change.password=Please change your password. -# label.save.and.continue=Save and continue -# label.skip.guide=I have used CloudStack before, skip this guide -# label.continue.basic.install=Continue with basic installation -# label.introduction.to.cloudstack=Introduction to CloudStack&\\\#8482 -# label.what.is.cloudstack=What is CloudStack&\\\#8482? -# label.hints=Hints -# label.installWizard.subtitle=This tour will aid you in setting up your CloudStack&\\\#8482 installation -# label.continue=Continue -# label.installWizard.title=Hello and Welcome to CloudStack&\\\#8482 -# label.agree=Agree -# label.manage.resources=Manage Resources -# label.port.forwarding.policies=Port forwarding policies -# label.load.balancing.policies=Load balancing policies -# label.networking.and.security=Networking and security -# label.bandwidth=Bandwidth -# label.virtual.machines=Virtual machines -# label.compute.and.storage=Compute and Storage -# label.task.completed=Task completed -# label.update.project.resources=Update project resources -# label.remove.project.account=Remove project account -# label.item.listing=Item listing -# message.select.item=Please select an item. -# label.removing=Removing -# label.invite=Invite -# label.add.by=Add by -# label.max.vms=Max. user VMs -# label.max.public.ips=Max. public IPs -# label.max.volumes=Max. volumes -# label.max.snapshots=Max. snapshots -# label.max.templates=Max. templates -# label.max.vpcs=Max. VPCs -# label.project.dashboard=Project dashboard -label.remind.later=\u0630\u0643\u0631\u0646\u064a \u0644\u0627\u062d\u0642\u0627\u064b -label.invited.accounts=\u062f\u0639\u0648\u0629 \u062d\u0633\u0627\u0628\u0627\u062a -label.invite.to=\u062f\u0639\u0648\u0629 \u0644\u0640 +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.account.to.project=\u0625\u0636\u0627\u0641\u0629 \u062d\u0633\u0627\u0628 \u0644\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.project.name=\u0627\u0633\u0645 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 -label.create.project=\u0623\u0646\u0634\u0626 \u0645\u0634\u0631\u0648\u0639 -label.networks=\u0627\u0644\u0634\u0628\u0643\u0627\u062a -# label.launch.vm=Launch VM -# label.new.vm=New VM -label.previous=\u0627\u0644\u0633\u0627\u0628\u0642 -label.add.to.group=\u0625\u0636\u0627\u0641\u0629 \u0625\u0644\u0649 \u0627\u0644\u0645\u062c\u0645\u0648\u0639\u0629 -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.select.security.groups=Please select security group(s) for your new VM -label.new=\u062c\u062f\u064a\u062f -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.please.proceed=Please proceed to the next step. -# message.zone.no.network.selection=The zone you selected does not have any choices for network selection. -label.no.thanks=\u0644\u0627\u061b \u0634\u0643\u0631\u0627\u064b -label.my.templates=\u0642\u0648\u0627\u0644\u0628\u064a -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.select.iso=Please select an ISO for your new virtual instance. -# message.template.desc=OS image that can be used to boot VMs -# message.iso.desc=Disc image containing data or bootable media for OS -# label.select.iso.or.template=Select ISO or template -# message.select.a.zone=A zone typically corresponds to a single datacenter. Multiple zones help make the cloud more reliable by providing physical isolation and redundancy. -# label.select.a.zone=Select a zone -label.review=\u0645\u0631\u0627\u062c\u0639\u0629 -label.select.a.template=\u0627\u062e\u062a\u0631 \u0642\u0627\u0644\u0628 -label.setup=\u0627\u0644\u062a\u062b\u0628\u064a\u062a -state.Allocated=\u062a\u062e\u0635\u064a\u0635 -changed.item.properties=\u062a\u063a\u064a\u0631 \u062e\u0635\u0627\u0626\u0635 \u0627\u0644\u0639\u0646\u0635\u0631 -label.apply=\u062a\u0637\u0628\u064a\u0642 -label.default=\u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a -label.viewing=\u0639\u0631\u0636 -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.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.drag.new.position=\u0627\u0633\u062d\u0628 \u0644\u0645\u0648\u0642\u0641 \u062c\u062f\u064a\u062f -label.order=\u062a\u0631\u062a\u064a\u0628 -label.no.data=\u0644\u0627 \u064a\u0648\u062c\u062f \u0628\u064a\u0627\u0646\u0627\u062a \u0644\u0644\u0639\u0631\u0636 -label.change.value=\u062a\u063a\u064a\u0631 \u0627\u0644\u0642\u064a\u0645\u0629 -label.clear.list=\u0645\u0633\u062d \u0627\u0644\u0642\u0627\u0626\u0645\u0629 -label.full.path=\u0645\u0633\u0627\u0631 \u0643\u0627\u0645\u0644 -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.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.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.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.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.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.edit.account=Edit ("-1" indicates no limit to the amount of resources create) -# label.total.of.vm=Total of VM -# label.total.of.ip=Total of IP Address -state.enabled=\u062a\u0645\u0643\u064a\u0646 -# message.action.download.iso=Please confirm that you want to download this ISO. -# message.action.download.template=Please confirm that you want to download this template. -# label.destination.zone=Destination Zone -label.keyboard.type=\u0646\u0648\u0639 \u0644\u0648\u062d\u0629 \u0627\u0644\u0645\u0641\u0627\u062a\u064a\u062d -# label.nic.adapter.type=NIC adapter type -# label.root.disk.controller=Root disk controller -# label.community=Community -# label.remove.egress.rule=Remove egress rule -# label.add.egress.rule=Add egress rule -# label.egress.rule=Egress rule -# label.remove.ingress.rule=Remove ingress rule -# label.delete.vpn.user=Delete VPN user -# label.add.vpn.user=Add VPN user -# label.remove.pf=Remove port forwarding rule -# label.remove.vm.from.lb=Remove VM from load balancer rule -# label.add.vms.to.lb=Add VM(s) to load balancer rule -# label.add.vm=Add VM -# label.remove.static.nat.rule=Remove static NAT rule -# label.remove.rule=Remove rule -# label.add.static.nat.rule=Add static NAT rule +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.configuration=\u0627\u0644\u062a\u0643\u0648\u064a\u0646 -# message.disable.vpn=Are you sure you want to disable VPN? -# label.disable.vpn=Disable VPN -# message.enable.vpn=Please confirm that you want VPN access enabled for this IP address. -# label.enable.vpn=Enable VPN -# message.acquire.new.ip=Please confirm that you would like to acquire a new IP for this network. -label.elastic=\u0645\u0631\u0646 -label.my.network=\u0634\u0628\u0643\u062a\u064a -# label.add.vms=Add VMs -label.configure=\u0642\u0645 \u0628\u062a\u0643\u0648\u064a\u0646 -# label.stickiness=Stickiness -label.source=\u0645\u0635\u062f\u0631 -label.least.connections=\u0623\u0642\u0644 \u0627\u0644\u0625\u062a\u0635\u0627\u0644\u0627\u062a -# label.round.robin=Round-robin -label.restart.required=\u0645\u0637\u0644\u0648\u0628 \u0625\u0639\u0627\u062f\u0629 \u0627\u0644\u062a\u0634\u063a\u064a\u0644 +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.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.restart.network=\u0625\u0639\u0627\u062f\u0629 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u0634\u0628\u0643\u0629 -label.edit.network.details=\u062a\u062d\u0631\u064a\u0631 \u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u0634\u0628\u0643\u0629 -# label.add.guest.network=Add guest network -# label.guest.networks=Guest networks -# message.ip.address.changed=Your IP addresses may have changed; would you like to refresh the listing? Note that in this case the details pane will close. -# state.BackingUp=Backing Up -# state.BackedUp=Backed Up -# label.done=Done -# label.vm.name=VM name -# message.migrate.volume=Please confirm that you want to migrate volume to another primary storage. -# label.migrate.volume=Migrate volume to another primary storage -# message.create.template=Are you sure you want to create template? -# label.create.template=Create template -# message.download.volume.confirm=Please confirm that you want to download this volume -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 -state.ready=\u062c\u0627\u0647\u0632 -state.Ready=\u062c\u0627\u0647\u0632 -# label.vm.display.name=VM display name -label.select-view=\u062d\u062f\u062f \u0637\u0631\u064a\u0642\u0629 \u0627\u0644\u0639\u0631\u0636 -# label.local.storage=Local Storage -label.direct.ips=\u0627\u0644\u0634\u0628\u0643\u0629 \u0627\u0644\u0645\u0634\u062a\u0631\u0643\u0629 IPs -label.view.all=\u0639\u0631\u0636 \u0627\u0644\u0643\u0644 -label.zone.details=\u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u0645\u0646\u0637\u0642\u0629 -# message.alert.state.detected=Alert state detected -# state.Starting=Starting -state.Expunging=\u0645\u062d\u0648 -state.Creating=\u0625\u0646\u0634\u0627\u0621 -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 +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.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.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 -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.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 -label.accept.project.invitation=\u0642\u0628\u0648\u0644 \u062f\u0639\u0648\u0629 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 -# label.token=Token -# label.project.id=Project ID -# message.enter.token=Please enter the token that you were given in your invite e-mail. -# label.enter.token=Enter token -state.Accepted=\u062a\u0645 \u0627\u0644\u0642\u0628\u0648\u0644 -state.Pending=\u0641\u064a \u0627\u0644\u0627\u0646\u062a\u0638\u0627\u0631 -state.Completed=\u062a\u0645 \u0627\u0644\u0627\u0643\u0645\u0627\u0644 -state.Declined=\u062a\u0645 \u0627\u0644\u0631\u0641\u0636 -label.project=\u0645\u0634\u0631\u0648\u0639 -label.invitations=\u062f\u0639\u0648\u0627\u062a -label.delete.project=\u062d\u0630\u0641 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 -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.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 -label.activate.project=\u062a\u0641\u0639\u064a\u0644 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 -label.suspend.project=\u0625\u064a\u0642\u0627\u0641 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 -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 -state.Suspended=\u062a\u0645 \u0627\u0644\u0625\u064a\u0642\u0627\u0641 -label.edit.project.details=\u0627\u0636\u0627\u0641\u0629 \u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 -label.new.project=\u0645\u0634\u0631\u0648\u0639 \u062c\u062f\u064a\u062f -state.Active=\u0646\u0634\u0637 -# state.Disabled=Disabled -label.projects=\u0627\u0644\u0645\u0634\u0627\u0631\u064a\u0639 -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.remove.project.account=Remove project account -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 -label.add.account.to.project=\u0625\u0636\u0627\u0641\u0629 \u062d\u0633\u0627\u0628 \u0644\u0644\u0645\u0634\u0631\u0648\u0639 -label.revoke.project.invite=\u0625\u0644\u063a\u0627\u0621 \u0627\u0644\u062f\u0639\u0648\u0629 -label.project.invite=\u062f\u0639\u0648\u0629 \u0625\u0644\u0649 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 -label.select.project=\u062d\u062f\u062f \u0627\u0644\u0645\u0634\u0631\u0648\u0639 -message.no.projects=\u0644\u064a\u0633 \u0644\u062f\u064a\u0643 \u0623\u064a \u0645\u0634\u0627\u0631\u064a\u0639.
    \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.no.projects.adminOnly=\u0644\u064a\u0633 \u0644\u062f\u064a\u0643 \u0623\u064a \u0645\u0634\u0627\u0631\u064a\u0639.
    \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.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.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 . -label.view=\u0639\u0631\u0636 -instances.actions.reboot.label=\u0625\u0639\u0627\u062f\u0629 \u062a\u0634\u063a\u064a\u0644 \u0627\u0644\u0646\u0645\u0648\u0630\u062c -label.filterBy=\u062a\u0635\u0641\u064a\u0629 \u062d\u0633\u0628 -label.ok=\u0645\u0648\u0627\u0641\u0642 -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 -label.display.name=\u0639\u0631\u0636 \u0627\u0644\u0627\u0633\u0645 -label.zone.name=\u0627\u0633\u0645 \u0627\u0644\u0645\u0646\u0637\u0642\u0629 -ui.listView.filters.all=\u0627\u0644\u0643\u0644 -# ui.listView.filters.mine=Mine -# state.Running=Running -state.Stopped=\u062a\u0648\u0642\u0641 -state.Destroyed=\u062f\u0645\u0631 -state.Error=\u062e\u0637\u0623 -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 -label.notifications=\u0627\u0644\u062a\u0646\u0628\u064a\u0647\u0627\u062a label.default.view=\u0637\u0631\u064a\u0642\u0629 \u0627\u0644\u0639\u0631\u0636 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\u0629 -label.project.view=\u0639\u0631\u0636 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 - -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.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. -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.hypervisor.capabilities=Hypervisor capabilities -# label.hypervisor.version=Hypervisor version -label.max.guest.limit=\u0627\u0644\u062d\u062f \u0627\u0644\u0623\u0642\u0635\u0627\u0621 \u0644\u0636\u064a\u0641 -# label.add.network.offering=Add network offering -label.supported.services=\t\u0627\u0644\u062e\u062f\u0645\u0627\u062a \u0627\u0644\u0645\u062f\u0639\u0648\u0645\u0629 -label.service.capabilities=\u0642\u062f\u0631\u0627\u062a \u0627\u0644\u062e\u062f\u0645\u0629 +label.default=\u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a +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=\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.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.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.specify.IP.ranges=\u062a\u062d\u062f\u064a\u062f \u0646\u0637\u0627\u0642\u0627\u062a IP -# label.conserve.mode=Conserve mode -# label.created.by.system=Created by system -# label.menu.system.service.offerings=System Offerings -# label.add.system.service.offering=Add System Service Offering -# label.redundant.router.capability=Redundant router capability -# label.supported.source.NAT.type=Supported Source NAT type -# label.elastic.LB=Elastic LB -# label.LB.isolation=LB isolation -# label.elastic.IP=Elastic IP -# label.network.label.display.for.blank.value=Use default gateway -# label.xen.traffic.label=XenServer traffic label -# label.kvm.traffic.label=KVM traffic label -# label.vmware.traffic.label=VMware traffic label -# label.start.IP=Start IP -# label.end.IP=End IP -# label.remove.ip.range=Remove IP range -# label.ip.ranges=IP Ranges -# label.start.vlan=Start Vlan -# label.end.vlan=End Vlan -# label.broadcast.domain.range=Broadcast domain range -# label.compute=Compute -# message.add.guest.network=Please confirm that you would like to add a guest network -# label.subdomain.access=Subdomain Access -# label.guest.start.ip=Guest start IP -# label.guest.end.ip=Guest end IP -# label.virtual.router=Virtual Router -# label.physical.network.ID=Physical network ID -# label.destination.physical.network.id=Destination physical network ID -# label.dhcp=DHCP -# label.destroy.router=Destroy router -# message.confirm.destroy.router=Please confirm that you would like to destroy this router -# label.change.service.offering=Change service offering -# label.view.console=View console -# label.redundant.state=Redundant state -# label.enable.provider=Enable provider -# message.confirm.enable.provider=Please confirm that you would like to enable this provider -# label.disable.provider=Disable provider -# message.confirm.disable.provider=Please confirm that you would like to disable this provider -# label.shutdown.provider=Shutdown provider -# message.confirm.shutdown.provider=Please confirm that you would like to shutdown this provider -# label.netScaler=NetScaler -# label.add.new.NetScaler=Add new NetScaler -# label.capacity=Capacity -# label.dedicated=Dedicated -# label.f5=F5 -# label.add.new.F5=Add new F5 -# label.srx=SRX -# label.providers=Providers -# label.add.new.SRX=Add new SRX -# label.timeout=Timeout -# label.public.network=Public network -# label.private.network=Private network -# label.enable.swift=Enable Swift -# confirm.enable.swift=Please fill in the following information to enable support for Swift -# message.after.enable.swift=Swift configured. Note\\\: When you leave this page, you will not be able to re-configure Swift again. -# label.key=Key -# label.delete.NetScaler=Delete NetScaler -# message.confirm.delete.NetScaler=Please confirm that you would like to delete NetScaler -# label.delete.F5=Delete F5 -# message.confirm.delete.F5=Please confirm that you would like to delete F5 -# label.delete.SRX=Delete SRX -# message.confirm.delete.SRX=Please confirm that you would like to delete SRX -# label.pods=Pods -# label.pod.name=Pod name -# label.reserved.system.gateway=Reserved system gateway -# label.reserved.system.netmask=Reserved system netmask -# label.start.reserved.system.IP=Start Reserved system IP -# label.end.reserved.system.IP=End Reserved system IP -# label.clusters=Clusters -# label.cluster.name=Cluster Name -# label.host.MAC=Host MAC -# label.agent.username=Agent Username -# label.agent.password=Agent Password -# message.confirm.action.force.reconnect=Please confirm that you want to force reconnect this host. -# label.resource.state=Resource state -# label.LUN.number=LUN \\\# -# message.confirm.remove.IP.range=Please confirm that you would like to remove this IP range. -# message.tooltip.zone.name=A name for the zone. -# message.tooltip.dns.1=Name of a DNS server for use by VMs in the zone. The public IP addresses for the zone must have a route to this server. -# message.tooltip.dns.2=A second DNS server name for use by VMs in the zone. The public IP addresses for the zone must have a route to this server. -# message.tooltip.internal.dns.1=Name of a DNS server for use by CloudStack internal system VMs in the zone. The private IP address for the pods must have a route to this server. -# message.tooltip.internal.dns.2=Name of a DNS server for use by CloudStack internal system VMs in the zone. The private IP address for the pods must have a route to this server. -# message.tooltip.network.domain=A DNS suffix that will create a custom domain name for the network that is accessed by guest VMs. -# message.tooltip.pod.name=A name for this pod. -# message.tooltip.reserved.system.gateway=The gateway for the hosts in the pod. -# message.tooltip.reserved.system.netmask=The network prefix that defines the pod subnet. Uses CIDR notation. -# message.creating.zone=Creating zone -# message.creating.physical.networks=Creating physical networks -# message.configuring.physical.networks=Configuring physical networks -# message.adding.Netscaler.device=Adding Netscaler device -# message.creating.pod=Creating pod -# message.configuring.public.traffic=Configuring public traffic -# message.configuring.storage.traffic=Configuring storage traffic -# message.configuring.guest.traffic=Configuring guest traffic -# message.creating.cluster=Creating cluster -# message.adding.host=Adding host -# message.creating.primary.storage=Creating primary storage -# message.creating.secondary.storage=Creating secondary storage -# message.Zone.creation.complete=Zone creation complete -# message.enabling.zone=Enabling zone -# error.something.went.wrong.please.correct.the.following=Something went wrong; please correct the following -# error.could.not.enable.zone=Could not enable zone -# message.zone.creation.complete.would.you.like.to.enable.this.zone=Zone creation complete. Would you like to enable this zone? -# message.please.add.at.lease.one.traffic.range=Please add at least one traffic range. -# message.you.must.have.at.least.one.physical.network=You must have at least one physical network -# message.please.select.a.different.public.and.management.network.before.removing=Please select a different public and management network before removing - -# label.zone.type=Zone Type -# label.setup.zone=Setup Zone -# label.setup.network=Setup Network -# label.add.resources=Add Resources -# label.launch=Launch -# label.set.up.zone.type=Set up zone type -# message.please.select.a.configuration.for.your.zone=Please select a configuration for your zone. -# message.desc.basic.zone=Provide a single network where each VM instance is assigned an IP directly from the network. Guest isolation can be provided through layer-3 means such as security groups (IP address source filtering). -# label.basic=Basic -# message.desc.advanced.zone=For more sophisticated network topologies. This network model provides the most flexibility in defining guest networks and providing custom network offerings such as firewall, VPN, or load balancer support. -# label.advanced=Advanced -# message.desc.zone=A zone is the largest organizational unit in CloudStack, and it typically corresponds to a single datacenter. Zones provide physical isolation and redundancy. A zone consists of one or more pods (each of which contains hosts and primary storage servers) and a secondary storage server which is shared by all pods in the zone. -# label.physical.network=Physical Network -# label.public.traffic=Public traffic -# label.guest.traffic=Guest Traffic -# label.storage.traffic=Storage Traffic -# message.setup.physical.network.during.zone.creation=When adding an advanced zone, you need to set up one or more physical networks. Each network corresponds to a NIC on the hypervisor. Each physical network can carry one or more types of traffic, with certain restrictions on how they may be combined.

    Drag and drop one or more traffic types onto each physical network. -# label.add.physical.network=Add physical network -# label.traffic.types=Traffic Types -# label.management=Management -# label.guest=Guest -# label.please.specify.netscaler.info=Please specify Netscaler info -# message.public.traffic.in.advanced.zone=Public traffic is generated when VMs in the cloud access the internet. Publicly-accessible IPs must be allocated for this purpose. End users can use the CloudStack UI to acquire these IPs to implement NAT between their guest network and their public network.

    Provide at least one range of IP addresses for internet traffic. -# message.public.traffic.in.basic.zone=Public traffic is generated when VMs in the cloud access the Internet or provide services to clients over the Internet. Publicly accessible IPs must be allocated for this purpose. When a instance is created, an IP from this set of Public IPs will be allocated to the instance in addition to the guest IP address. Static 1-1 NAT will be set up automatically between the public IP and the guest IP. End users can also use the CloudStack UI to acquire additional IPs to implement static NAT between their instances and the public IP. -# message.add.pod.during.zone.creation=Each zone must contain in one or more pods, and we will add the first pod now. A pod contains hosts and primary storage servers, which you will add in a later step. First, configure a range of reserved IP addresses for CloudStack's internal management traffic. The reserved IP range must be unique for each zone in the cloud. -# message.guest.traffic.in.advanced.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of VLAN IDs to carry guest traffic for each physical network. -# message.guest.traffic.in.basic.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of IP addresses that CloudStack can assign to guest VMs. Make sure this range does not overlap the reserved system IP range. -# message.storage.traffic=Traffic between CloudStack's internal resources, including any components that communicate with the Management Server, such as hosts and CloudStack system VMs. Please configure storage traffic here. -# message.desc.cluster=Each pod must contain one or more clusters, and we will add the first cluster now. A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Each cluster consists of one or more hosts and one or more primary storage servers. -# message.desc.host=Each cluster must contain at least one host (computer) for guest VMs to run on, and we will add the first host now. For a host to function in CloudStack, you must install hypervisor software on the host, assign an IP address to the host, and ensure the host is connected to the CloudStack management server.

    Give the host's DNS or IP address, the user name (usually root) and password, and any labels you use to categorize hosts. -# message.desc.primary.storage=Each cluster must contain one or more primary storage servers, and we will add the first one now. Primary storage contains the disk volumes for all the VMs running on hosts in the cluster. Use any standards-compliant protocol that is supported by the underlying hypervisor. -# message.desc.secondary.storage=Each zone must have at least one NFS or secondary storage server, and we will add the first one now. Secondary storage stores VM templates, ISO images, and VM disk volume snapshots. This server must be available to all hosts in the zone.

    Provide the IP address and exported path. -# label.launch.zone=Launch zone -# message.please.wait.while.zone.is.being.created=Please wait while your zone is being created; this may take a while... - -# label.load.balancing=Load Balancing -# label.static.nat.enabled=Static NAT Enabled -# label.zones=Zones -# label.view.more=View more -# label.number.of.zones=Number of Zones -# label.number.of.pods=Number of Pods -# label.number.of.clusters=Number of Clusters -# label.number.of.hosts=Number of Hosts -# label.total.hosts=Total Hosts -# label.total.CPU=Total CPU -# label.total.memory=Total Memory -# label.total.storage=Total Storage -# label.purpose=Purpose - - - - -# label.action.migrate.router=Migrate Router -# label.action.migrate.router.processing=Migrating Router.... -# message.migrate.router.confirm=Please confirm the host you wish to migrate the router to\\\: -# label.migrate.router.to=Migrate Router to - -# label.action.migrate.systemvm=Migrate System VM -# label.action.migrate.systemvm.processing=Migrating System VM.... -# message.migrate.systemvm.confirm=Please confirm the host you wish to migrate the system VM to\\\: -# label.migrate.systemvm.to=Migrate System VM to - - -# mode=Mode -# side.by.side=Side by Side -# inline=Inline - -# extractable=Extractable - -# label.ocfs2=OCFS2 - -# label.action.edit.host=Edit Host - -# network.rate=Network Rate - -# ICMP.type=ICMP Type -# ICMP.code=ICMP Code - -# image.directory=Image Directory - -# label.action.create.template.from.vm=Create Template from VM -# label.action.create.template.from.volume=Create Template from Volume - -# message.vm.create.template.confirm=Create Template will reboot the VM automatically. - -# label.action.manage.cluster=Manage Cluster -# message.action.manage.cluster=Please confirm that you want to manage the cluster. -# label.action.manage.cluster.processing=Managing Cluster.... - -# label.action.unmanage.cluster=Unmanage Cluster -# message.action.unmanage.cluster=Please confirm that you want to unmanage the cluster. -# label.action.unmanage.cluster.processing=Unmanaging Cluster.... - -# label.allocation.state=Allocation State -# managed.state=Managed State - -# label.default.use=Default Use -# label.host.tags=Host Tags - -# label.cidr=CIDR -# label.cidr.list=Source CIDR - -# label.storage.tags=Storage Tags - -# label.redundant.router=Redundant Router -# label.is.redundant.router=Redundant - -# force.delete=Force Delete -# force.delete.domain.warning=Warning\\\: Choosing this option will cause the deletion of all child domains and all associated accounts and their resources. - -# force.remove=Force Remove -# force.remove.host.warning=Warning\\\: Choosing this option will cause CloudStack to forcefully stop all running virtual machines before removing this host from the cluster. - -# force.stop=Force Stop -# force.stop.instance.warning=Warning\\\: Forcing a stop on this instance should be your last option. It can lead to data loss as well as inconsistent behavior of the virtual machine state. - -# label.PreSetup=PreSetup -# label.SR.name = SR Name-Label -# label.SharedMountPoint=SharedMountPoint -# label.clvm=CLVM -# label.volgroup=Volume Group -# label.VMFS.datastore=VMFS datastore - -# label.network.device=Network Device -# label.add.network.device=Add Network Device -# label.network.device.type=Network Device Type -# label.DHCP.server.type=DHCP Server Type -# label.Pxe.server.type=Pxe Server Type -# label.PING.storage.IP=PING storage IP -# label.PING.dir=PING Directory -# label.TFTP.dir=TFTP Directory -# label.PING.CIFS.username=PING CIFS username -# label.PING.CIFS.password=PING CIFS password -# label.CPU.cap=CPU Cap - - -# label.action.enable.zone=Enable Zone -# label.action.enable.zone.processing=Enabling Zone.... -# message.action.enable.zone=Please confirm that you want to enable this zone. -# label.action.disable.zone=Disable Zone -# label.action.disable.zone.processing=Disabling Zone.... -# message.action.disable.zone=Please confirm that you want to disable this zone. - -# label.action.enable.pod=Enable Pod -# label.action.enable.pod.processing=Enabling Pod.... -# message.action.enable.pod=Please confirm that you want to enable this pod. -# label.action.disable.pod=Disable Pod -# label.action.disable.pod.processing=Disabling Pod.... -# message.action.disable.pod=Please confirm that you want to disable this pod. - -# label.action.enable.cluster=Enable Cluster -# label.action.enable.cluster.processing=Enabling Cluster.... -# message.action.enable.cluster=Please confirm that you want to enable this cluster. -# label.action.disable.cluster=Disable Cluster -# label.action.disable.cluster.processing=Disabling Cluster.... -# message.action.disable.cluster=Please confirm that you want to disable this cluster. - -# label.account.id=Account ID -# label.account.name=Account Name -# label.account.specific=Account-Specific -# label.account=Account -# label.accounts=Accounts -# label.acquire.new.ip=Acquire New IP -# label.show.ingress.rule=Show Ingress Rule -# label.hide.ingress.rule=Hide Ingress Rule -# label.action.attach.disk.processing=Attaching Disk.... -# label.action.attach.disk=Attach Disk -# label.action.attach.iso.processing=Attaching ISO.... -# label.action.attach.iso=Attach ISO -# label.action.cancel.maintenance.mode.processing=Cancelling Maintenance Mode.... -# label.action.cancel.maintenance.mode=Cancel Maintenance Mode -# label.action.change.password=Change Password -# label.action.change.service.processing=Changing Service.... -# label.action.change.service=Change Service -# label.action.copy.ISO.processing=Coping ISO.... -# label.action.copy.ISO=Copy ISO -# label.action.copy.template.processing=Coping Template.... -# label.action.copy.template=Copy Template -# label.action.create.template.processing=Creating Template.... -# label.action.create.template=Create Template -# label.action.create.vm.processing=Creating VM.... -# label.action.create.vm=Create VM -# label.action.create.volume.processing=Creating Volume.... -# label.action.create.volume=Create Volume -# label.action.delete.IP.range.processing=Deleting IP Range.... -# label.action.delete.IP.range=Delete IP Range -# label.action.delete.ISO.processing=Deleting ISO.... -# label.action.delete.ISO=Delete ISO -# label.action.delete.account.processing=Deleting account.... -# label.action.delete.account=Delete account -# label.action.delete.cluster.processing=Deleting Cluster.... -# label.action.delete.cluster=Delete Cluster -# label.action.delete.disk.offering.processing=Deleting Disk Offering.... -# label.action.delete.disk.offering=Delete Disk Offering - -# label.action.update.resource.count=Update Resource Count -# label.action.update.resource.count.processing=Updating Resource Count.... - -# label.action.delete.domain=Delete Domain -# label.action.delete.domain.processing=Deleting Domain.... - -# label.action.delete.firewall.processing=Deleting Firewall.... -# label.action.delete.firewall=Delete firewall rule -# label.action.delete.ingress.rule.processing=Deleting Ingress Rule.... -# label.action.delete.ingress.rule=Delete Ingress Rule -# label.action.delete.load.balancer.processing=Deleting Load Balancer.... -# label.action.delete.load.balancer=Delete load balancer rule -# label.action.edit.network.processing=Editing Network.... -# label.action.edit.network=Edit Network -# label.action.delete.network.processing=Deleting Network.... -# label.action.delete.network=Delete Network -# label.action.delete.pod.processing=Deleting Pod.... -# label.action.delete.pod=Delete Pod -# label.action.delete.primary.storage.processing=Deleting Primary Storage.... -# label.action.delete.primary.storage=Delete Primary Storage -# label.action.delete.secondary.storage.processing=Deleting Secondary Storage.... -# label.action.delete.secondary.storage=Delete Secondary Storage -# label.action.delete.security.group.processing=Deleting Security Group.... -# label.action.delete.security.group=Delete Security Group -# label.action.delete.service.offering.processing=Deleting Service Offering.... -# label.action.delete.service.offering=Delete Service Offering -# label.action.delete.snapshot.processing=Deleting Snapshot.... -# label.action.delete.snapshot=Delete Snapshot -# label.action.delete.template.processing=Deleting Template.... -# label.action.delete.template=Delete Template -# label.action.delete.user.processing=Deleting User.... -# label.action.delete.user=Delete User -# label.action.delete.volume.processing=Deleting Volume.... -# label.action.delete.volume=Delete Volume -# label.action.delete.zone.processing=Deleting Zone.... -# label.action.delete.zone=Delete Zone -# label.action.destroy.instance.processing=Destroying Instance.... -# label.action.destroy.instance=Destroy Instance -# label.action.destroy.systemvm.processing=Destroying System VM.... -# label.action.destroy.systemvm=Destroy System VM -# label.action.detach.disk.processing=Detaching Disk.... -# label.action.detach.disk=Detach Disk -# label.action.detach.iso.processing=Detaching ISO.... -# label.action.detach.iso=Detach ISO -# label.action.disable.account.processing=Disabling account.... -# label.action.disable.account=Disable account -# label.action.disable.static.NAT.processing=Disabling Static NAT.... -# label.action.disable.static.NAT=Disable Static NAT -# label.action.disable.user.processing=Disabling User.... -# label.action.disable.user=Disable User -# label.action.download.ISO=Download ISO -# label.action.download.template=Download Template -# label.action.download.volume.processing=Downloading Volume.... -# label.action.download.volume=Download Volume -# label.action.edit.ISO=Edit ISO -# label.action.edit.account=Edit account -# label.action.edit.disk.offering=Edit Disk Offering -# label.action.edit.domain=Edit Domain -# label.action.edit.global.setting=Edit Global Setting -# label.action.edit.instance=Edit Instance -# label.action.edit.network.offering=Edit Network Offering -# label.action.edit.pod=Edit Pod -# label.action.edit.primary.storage=Edit Primary Storage -# label.action.edit.resource.limits=Edit Resource Limits -# label.action.edit.service.offering=Edit Service Offering -# label.action.edit.template=Edit Template -# label.action.edit.user=Edit User -# label.action.edit.zone=Edit Zone -# label.action.enable.account.processing=Enabling account.... -# label.action.enable.account=Enable account -# label.action.enable.maintenance.mode.processing=Enabling Maintenance Mode.... -# label.action.enable.maintenance.mode=Enable Maintenance Mode -# label.action.enable.static.NAT.processing=Enabling Static NAT.... -# label.action.enable.static.NAT=Enable Static NAT -# label.action.enable.user.processing=Enabling User.... -# label.action.enable.user=Enable User -# label.action.force.reconnect.processing=Reconnecting.... -# label.action.force.reconnect=Force Reconnect -# label.action.generate.keys.processing=Generate Keys.... -# label.action.generate.keys=Generate Keys -# label.action.lock.account.processing=Locking account.... -# label.action.lock.account=Lock account -# label.action.migrate.instance=Migrate Instance -# label.action.migrate.instance.processing=Migrating Instance.... -# label.action.reboot.instance.processing=Rebooting Instance.... -# label.action.reboot.instance=Reboot Instance -# label.action.reboot.router.processing=Rebooting Router.... -# label.action.reboot.router=Reboot Router -# label.action.reboot.systemvm.processing=Rebooting System VM.... -# label.action.reboot.systemvm=Reboot System VM -# label.action.recurring.snapshot=Recurring Snapshots -# label.action.release.ip.processing=Releasing IP.... -# label.action.release.ip=Release IP -# label.action.remove.host.processing=Removing Host.... -# label.action.remove.host=Remove Host -# label.action.reset.password.processing=Resetting Password.... -# label.action.reset.password=Reset Password -# label.action.resource.limits=Resource limits -# label.action.restore.instance.processing=Restoring Instance.... -# label.action.restore.instance=Restore Instance -# label.action.start.instance.processing=Starting Instance.... -# label.action.start.instance=Start Instance -# label.action.start.router.processing=Starting Router.... -# label.action.start.router=Start Router -# label.action.start.systemvm.processing=Starting System VM.... -# label.action.start.systemvm=Start System VM -# label.action.stop.instance.processing=Stopping Instance.... -# label.action.stop.instance=Stop Instance -# label.action.stop.router.processing=Stopping Router.... -# label.action.stop.router=Stop Router -# label.action.stop.systemvm.processing=Stopping System VM.... -# label.action.stop.systemvm=Stop System VM -# label.action.take.snapshot.processing=Taking Snapshot.... -# label.action.take.snapshot=Take Snapshot -# label.action.update.OS.preference.processing=Updating OS Preference.... -# label.action.update.OS.preference=Update OS Preference -# label.actions=Actions -# label.active.sessions=Active Sessions -# label.add.account=Add Account -# label.add.by.cidr=Add By CIDR -# label.add.by.group=Add By Group -# label.add.cluster=Add Cluster -# label.add.direct.iprange=Add Direct Ip Range -# label.add.disk.offering=Add Disk Offering -# label.add.domain=Add Domain -# label.add.firewall=Add firewall rule -# label.add.host=Add Host -# label.add.ingress.rule=Add Ingress Rule -# label.add.ip.range=Add IP Range -# label.add.load.balancer=Add Load Balancer -# label.add.more=Add More -# label.add.network=Add Network -# label.add.pod=Add Pod -# label.add.primary.storage=Add Primary Storage -# label.add.secondary.storage=Add Secondary Storage -# label.add.security.group=Add Security Group -# label.add.service.offering=Add Service Offering -# label.add.template=Add Template -# label.add.user=Add User -# label.add.vlan=Add VLAN -# label.add.volume=Add Volume -# label.add.zone=Add Zone -# label.add=Add -# label.adding.cluster=Adding Cluster -# label.adding.failed=Adding Failed -# label.adding.pod=Adding Pod -# label.adding.processing=Adding.... -# label.adding.succeeded=Adding Succeeded -# label.adding.user=Adding User -# label.adding.zone=Adding Zone -# label.adding=Adding -# label.additional.networks=Additional Networks -# label.admin.accounts=Admin Accounts -# label.admin=Admin -# label.advanced.mode=Advanced Mode -# label.advanced.search=Advance Search -# label.advanced=Advanced -# label.alert=Alert -# label.algorithm=Algorithm -# label.allocated=Allocated -# label.api.key=API Key -# label.assign.to.load.balancer=Assigning instance to load balancer -# label.assign=Assign -# label.associated.network.id=Associated Network ID -# label.attached.iso=Attached ISO -# label.availability.zone=Availability Zone -# label.availability=Availability -# label.available.public.ips=Available Public IP Addresses -# label.available=Available -# label.back=Back -# label.basic.mode=Basic Mode -# label.bootable=Bootable -# label.broadcast.domain.type=Broadcast Domain Type -# label.by.account=By Account -# label.by.availability=By Availability -# label.by.domain=By Domain -# label.by.end.date=By End Date -# label.by.level=By Level -# label.by.pod=By Pod -# label.by.role=By Role -# label.by.start.date=By Start Date -# label.by.state=By State -# label.by.traffic.type=By Traffic Type -# label.by.type.id=By Type ID -# label.by.type=By Type -# label.by.zone=By Zone -# label.bytes.received=Bytes Received -# label.bytes.sent=Bytes Sent -# label.cancel=Cancel -# label.certificate=Certificate -# label.privatekey=PKCS\\\#8 Private Key -# label.domain.suffix=DNS Domain Suffix (i.e., xyz.com) -# label.character=Character -# label.cidr.account=CIDR or Account/Security Group -# label.close=Close -# label.cloud.console=Cloud Management Console -# label.cloud.managed=Cloud.com Managed -# label.cluster.type=Cluster Type -# label.cluster=Cluster -# label.code=Code -# label.confirmation=Confirmation -# label.cpu.allocated.for.VMs=CPU Allocated for VMs -# label.cpu.allocated=CPU Allocated -# label.cpu.utilized=CPU Utilized -# label.cpu=CPU -# label.created=Created -# label.cross.zones=Cross Zones -# label.custom.disk.size=Custom Disk Size -# label.daily=Daily -# label.data.disk.offering=Data Disk Offering -# label.date=Date -# label.day.of.month=Day of Month -# label.day.of.week=Day of Week -# label.delete=Delete -# label.deleting.failed=Deleting Failed -# label.deleting.processing=Deleting.... -# label.description=Description -# label.detaching.disk=Detaching Disk -# label.details=Details -# label.device.id=Device ID -# label.disabled=Disabled -# label.disabling.vpn.access=Disabling VPN Access -# label.disk.allocated=Disk Allocated -# label.disk.offering=Disk Offering -# label.disk.size.gb=Disk Size (in GB) -# label.disk.size=Disk Size -# label.disk.total=Disk Total -# label.disk.volume=Disk Volume -# label.display.text=Display Text -# label.dns.1=DNS 1 -# label.dns.2=DNS 2 -# label.domain.admin=Domain Admin -# label.domain.id=Domain ID -# label.domain.name=Domain Name -# label.domain=Domain -# label.double.quotes.are.not.allowed=Double quotes are not allowed -# label.download.progress=Download Progress -# label.edit=Edit -# label.email=Email -# label.enabling.vpn.access=Enabling VPN Access -# label.enabling.vpn=Enabling VPN -# label.end.port=End Port -# label.endpoint.or.operation=Endpoint or Operation -# label.error.code=Error Code -# label.error=Error -# label.esx.host=ESX/ESXi Host -# label.example=Example -# label.failed=Failed -# label.featured=Featured -# label.firewall=Firewall -# label.first.name=First Name -# label.format=Format -# label.friday=Friday -# label.full=Full -# label.gateway=Gateway -# label.general.alerts=General Alerts -# label.generating.url=Generating URL -# label.go.step.2=Go to Step 2 -# label.go.step.3=Go to Step 3 -# label.go.step.4=Go to Step 4 -# label.go.step.5=Go to Step 5 -# label.group.optional=Group (Optional) -# label.group=Group -# label.guest.cidr=Guest CIDR -# label.guest.gateway=Guest Gateway -# label.guest.ip.range=Guest IP Range -# label.guest.ip=Guest IP Address -# label.guest.netmask=Guest Netmask -# label.ha.enabled=HA Enabled -# label.help=Help -# label.host.alerts=Host Alerts -# label.host.name=Host Name -# label.host=Host -# label.hosts=Hosts -# label.hourly=Hourly -# label.hypervisor.type=Hypervisor Type -# label.hypervisor=Hypervisor -# label.id=ID -# label.info=Info -# label.ingress.rule=Ingress Rule -# label.initiated.by=Initiated By -# label.instance.limits=Instance Limits -# label.instance.name=Instance Name -# label.instance=Instance -# label.instances=Instances -# label.internal.dns.1=Internal DNS 1 -# label.internal.dns.2=Internal DNS 2 -# label.interval.type=Interval Type -# label.invalid.integer=Invalid Integer -# label.invalid.number=Invalid Number -# label.ip.address=IP Address -# label.ip.allocations=IP Allocations -# label.ip.limits=Public IP Limits -# label.ip.or.fqdn=IP or FQDN -# label.ip.range=IP Range -# label.ip=IP -# label.ips=IPs -# label.is.default=Is Default -# label.is.shared=Is Shared -# label.is.system=Is System -# label.iscsi=iSCSI -# label.iso.boot=ISO Boot -# label.iso=ISO -# label.isolation.mode=Isolation Mode -# label.keep=Keep -# label.lang.chinese=Chinese (Simplified) -# label.lang.english=English -# label.lang.japanese=Japanese -# label.lang.spanish=Spanish -# label.lang.russian=Russian -# label.lang.french=French -# label.lang.brportugese=Brazilian Portugese -# label.last.disconnected=Last Disconnected -# label.last.name=Last Name -# label.level=Level -# label.linklocal.ip=Link Local IP Adddress -# label.load.balancer=Load Balancer -# label.loading=Loading -# label.local=Local +label.IKE.lifetime=\u0639\u0645\u0631 IKE (\u062b\u0627\u0646\u064a\u0629) +label.IKE.policy=\u0633\u064a\u0627\u0633\u0629 IKE +label.invitations=\u062f\u0639\u0648\u0627\u062a +label.invite.to=\u062f\u0639\u0648\u0629 \u0644\u0640 +label.invited.accounts=\u062f\u0639\u0648\u0629 \u062d\u0633\u0627\u0628\u0627\u062a +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.login=Login -# label.logout=Logout -# label.lun=LUN -# label.manage=Manage -# label.maximum=Maximum -# label.memory.allocated=Memory Allocated -# label.memory.total=Memory Total -# label.memory.used=Memory Used -# label.memory=Memory -# label.menu.accounts=Accounts +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.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 @@ -1175,225 +107,82 @@ label.menu.featured.isos=\u0645\u0645\u064a\u0632\u0627\u062a \u0627\u0644\u062a 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.menu.ipaddresses=IP Addresses -# label.menu.isos=ISOs -# label.menu.my.accounts=My Accounts -# label.menu.my.instances=My Instances -# label.menu.my.isos=My ISOs -# label.menu.my.templates=My Templates -# label.menu.network.offerings=Network Offerings -# label.menu.network=Network -# label.menu.physical.resources=Physical Resources -# label.menu.running.instances=Running Instances -# label.menu.security.groups=Security Groups -# label.menu.service.offerings=Service Offerings -# label.menu.snapshots=Snapshots -# label.menu.stopped.instances=Stopped Instances -# label.menu.storage=Storage -# label.menu.system.vms=System VMs -# label.menu.system=System -# label.menu.templates=Templates -# label.menu.virtual.appliances=Virtual Appliances -# label.menu.virtual.resources=Virtual Resources -# label.menu.volumes=Volumes -# label.migrate.instance.to=Migrate instance to -# label.minimum=Minimum -# label.minute.past.hour=minute(s) Past the Hour -# label.monday=Monday -# label.monthly=Monthly -# label.more.templates=More Templates -# label.my.account=My Account -# label.name.optional=Name (Optional) -# label.name=Name -# label.netmask=Netmask -# label.network.desc=Network Desc -# label.network.domain=Network Domain -# label.network.id=Network ID -# label.network.name=Network Name -# label.network.offering.display.text=Network Offering Display Text -# label.network.offering.id=Network Offering ID -# label.network.offering.name=Network Offering Name -# label.network.offering=Network Offering -# label.network.rate=Network Rate -# label.network.rate.megabytes=Network Rate (Mb/s) -# label.network.read=Network Read -# label.network.type=Network Type -# label.network.write=Network Write -# label.network=Network -# label.new.password=New Password -# label.next=Next -# label.nfs.server=NFS Server -# label.nfs.storage=NFS Storage -# label.nfs=NFS -# label.nics=NICs -# label.no.actions=No Available Actions -# label.no.alerts=No Recent Alerts -# label.no.errors=No Recent Errors -# label.no.isos=No available ISOs -# label.no.items=No Available Items -# label.no.security.groups=No Available Security Groups +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.ACL.total=\u0625\u062c\u0645\u0627\u0644 \u0634\u0628\u0643\u0629 ACL +label.network.ACL=\u0634\u0628\u0643\u0629 ACL +label.network.ACLs=\u0634\u0628\u0643\u0629 ACLs +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.no=No -# label.none=None -# label.not.found=Not Found -# label.num.cpu.cores=\\\# of CPU Cores -# label.numretries=Number of Retries -# label.offer.ha=Offer HA -# label.optional=Optional -# label.os.preference=OS Preference -# label.os.type=OS Type -# label.owned.public.ips=Owned Public IP Addresses -# label.owner.account=Owner Account -# label.owner.domain=Owner Domain -# label.parent.domain=Parent Domain -# label.password.enabled=Password Enabled -# label.password=Password -# label.path=Path -# label.please.wait=Please Wait -# label.pod=Pod -# label.port.forwarding=Port Forwarding -# label.port.range=Port Range -# label.prev=Prev -# label.primary.allocated=Primary Storage Allocated -# label.primary.network=Primary Network -# label.primary.storage=Primary Storage -# label.primary.used=Primary Storage Used -# label.private.interface=Private Interface -# label.private.ip.range=Private IP Range -# label.private.ip=Private IP Address -# label.private.ips=Private IP Addresses -# label.private.port=Private Port -# label.private.zone=Private Zone -# label.protocol=Protocol -# label.public.interface=Public Interface -# label.public.ip=Public IP Address -# label.public.ips=Public IP Addresses -# label.public.port=Public Port -# label.public.zone=Public Zone -# label.public=Public -# label.recent.errors=Recent Errors -# label.refresh=Refresh -# label.related=Related -# label.remove.from.load.balancer=Removing instance from load balancer -# label.removing.user=Removing User -# label.required=Required -# label.reserved.system.ip=Reserved System IP -# label.resource.limits=Resource Limits -# label.resource=Resource -# label.resources=Resources -# label.role=Role -# label.root.disk.offering=Root Disk Offering -# label.running.vms=Running VMs -# label.saturday=Saturday -# label.save=Save -# label.saving.processing=Saving.... +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.project.view=\u0639\u0631\u0636 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 +label.project=\u0645\u0634\u0631\u0648\u0639 +label.projects=\u0627\u0644\u0645\u0634\u0627\u0631\u064a\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.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.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.secondary.storage=Secondary Storage -# label.secondary.used=Secondary Storage Used -# label.secret.key=Secret Key -# label.security.group.name=Security Group Name -# label.security.group=Security Group -# label.security.groups.enabled=Security Groups Enabled -# label.security.groups=Security Groups -# label.sent=Sent -# label.server=Server -# label.service.offering=Service Offering -# label.system.service.offering=System Service Offering -# label.session.expired=Session Expired -# label.shared=Shared -# label.size=Size -# label.snapshot.limits=Snapshot Limits -# label.snapshot.name=Snapshot Name -# label.snapshot.s=Snapshot (s) -# label.snapshot.schedule=Setup Recurring Snapshot -# label.snapshot=Snapshot -# label.snapshots=Snapshots -# label.source.nat=Source NAT -# label.specify.vlan=Specify VLAN -# label.start.port=Start Port -# label.state=State -# label.static.nat.to=Static NAT to -# label.static.nat=Static NAT -# label.statistics=Statistics -# label.status=Status -# label.step.1.title=Step 1\\\: Select a Template -# label.step.1=Step 1 -# label.step.2.title=Step 2\\\: Service Offering -# label.step.2=Step 2 -# label.step.3.title=Step 3\\\: Select a Disk Offering -# label.step.3=Step 3 -# label.step.4.title=Step 4\\\: Network -# label.step.4=Step 4 -# label.step.5.title=Step 5\\\: Review -# label.step.5=Step 5 -# label.stopped.vms=Stopped VMs -# label.storage.type=Storage Type -# label.storage=Storage -# label.submit=Submit -# label.submitted.by=[Submitted by\\\: ] -# label.succeeded=Succeeded -# label.sunday=Sunday -# label.system.capacity=System Capacity -# label.system.vm.type=System VM Type -# label.system.vm=System VM -# label.system.vms=System VMs -# label.tagged=Tagged -# label.tags=Tags -# label.target.iqn=Target IQN -# label.template.limits=Template Limits -# label.template=Template -# label.theme.default=Default Theme -# label.theme.grey=Custom - Grey -# label.theme.lightblue=Custom - Light Blue -# label.thursday=Thursday -# label.time.zone=Timezone -# label.time=Time -# label.timeout.in.second = Timeout(seconds) -# label.timezone=Timezone -# label.total.cpu=Total CPU -# label.total.vms=Total VMs -# label.traffic.type=Traffic Type -# label.tuesday=Tuesday -# label.type.id=Type ID -# label.type=Type -# label.unavailable=Unavailable -# label.unlimited=Unlimited -# label.untagged=Untagged -# label.update.ssl.cert= SSL Certificate -# label.update.ssl= SSL Certificate -# label.updating=Updating -# label.url=URL -# label.usage.interface=Usage Interface -# label.used=Used -# label.user=User -# label.username=Username -# label.users=Users -# label.value=Value -# label.vcenter.cluster=vCenter Cluster -# label.vcenter.datacenter=vCenter Datacenter -# label.vcenter.datastore=vCenter Datastore -# label.vcenter.host=vCenter Host -# label.vcenter.password=vCenter Password -# label.vcenter.username=vCenter Username -# label.version=Version -# label.virtual.appliance=Virtual Appliance -# label.virtual.appliances=Virtual Appliances -# label.virtual.network=Virtual Network -# label.vlan.id=VLAN ID -# label.vlan.range=VLAN Range -# label.vm.add=Add Instance -# label.vm.destroy=Destroy -# label.vm.reboot=Reboot -# label.vm.start=Start -# label.vm.stop=Stop -# label.vmfs=VMFS -# label.vms=VMs +label.select-view=\u062d\u062f\u062f \u0637\u0631\u064a\u0642\u0629 \u0627\u0644\u0639\u0631\u0636 +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.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.view=\u0639\u0631\u0636 +label.viewing=\u0639\u0631\u0636 +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.volume.limits=\u062d\u062f\u0648\u062f \u0627\u0644\u0645\u0646\u0637\u0642\u0629 -# label.volume.name=Volume Name -# label.volume=Volume -# label.volumes=Volumes -# label.vsphere.managed=vSphere Managed +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.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 @@ -1401,147 +190,71 @@ 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.id=Zone ID +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 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 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 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.zone=Zone - -#Messages -# message.acquire.public.ip=Please select a zone from which you want to acquire your new IP from. -# message.action.cancel.maintenance.mode=Please confirm that you want to cancel this maintenance. -# message.action.cancel.maintenance=Your host has been successfully canceled for maintenance. This process can take up to several minutes. -# message.action.delete.ISO.for.all.zones=The ISO is used by all zones. Please confirm that you want to delete it from all zones. -# message.action.delete.ISO=Please confirm that you want to delete this ISO. -# message.action.delete.cluster=Please confirm that you want to delete this cluster. -# message.action.delete.disk.offering=Please confirm that you want to delete this disk offering. -# message.action.delete.domain=Please confirm that you want to delete this domain. -# message.action.delete.external.firewall=Please confirm that you would like to remove this external firewall. Warning\\\: If you are planning to add back the same external firewall, you must reset usage data on the device. -# message.action.delete.external.load.balancer=Please confirm that you would like to remove this external load balancer. Warning\\\: If you are planning to add back the same external load balancer, you must reset usage data on the device. -# message.action.delete.ingress.rule=Please confirm that you want to delete this ingress rule. -# message.action.delete.network=Please confirm that you want to delete this network. -# message.action.delete.pod=Please confirm that you want to delete this pod. -# message.action.delete.primary.storage=Please confirm that you want to delete this primary storage. -# message.action.delete.secondary.storage=Please confirm that you want to delete this secondary storage. -# message.action.delete.security.group=Please confirm that you want to delete this security group. -# message.action.delete.service.offering=Please confirm that you want to delete this service offering. -# message.action.delete.snapshot=Please confirm that you want to delete this snapshot. -# message.action.delete.template.for.all.zones=The template is used by all zones. Please confirm that you want to delete it from all zones. -# message.action.delete.template=Please confirm that you want to delete this template. -# message.action.delete.volume=Please confirm that you want to delete this volume. -# message.action.delete.zone=Please confirm that you want to delete this zone. -# message.action.destroy.instance=Please confirm that you want to destroy this instance. -# message.action.destroy.systemvm=Please confirm that you want to destroy this System VM. -# message.action.disable.static.NAT=Please confirm that you want to disable static NAT. -# message.action.enable.maintenance=Your host has been successfully prepared for maintenance. This process can take up to several minutes or longer depending on how many VMs are currently on this host. -# message.action.force.reconnect=Your host has been successfully forced to reconnect. This process can take up to several minutes. -# message.action.host.enable.maintenance.mode=Enabling maintenance mode will cause a live migration of all running instances on this host to any available host. -# message.action.instance.reset.password=Please confirm that you want to change the ROOT password for this virtual machine. -# message.action.primarystorage.enable.maintenance.mode=Warning\\\: placing the primary storage into maintenance mode will cause all VMs using volumes from it to be stopped. Do you want to continue? -# message.action.reboot.instance=Please confirm that you want to reboot this instance. -# message.action.reboot.systemvm=Please confirm that you want to reboot this system VM. -# message.action.release.ip=Please confirm that you want to release this IP. -# message.action.remove.host=Please confirm that you want to remove this host. -# message.action.restore.instance=Please confirm that you want to restore this instance. -# message.action.start.instance=Please confirm that you want to start this instance. -# message.action.start.router=Please confirm that you want to start this router. -# message.action.start.systemvm=Please confirm that you want to start this system VM. -# message.action.stop.instance=Please confirm that you want to stop this instance. -# message.action.stop.systemvm=Please confirm that you want to stop this system VM. -# message.action.take.snapshot=Please confirm that you want to take a snapshot of this volume. -# message.add.cluster.zone=Add a hypervisor managed cluster for zone -# message.add.cluster=Add a hypervisor managed cluster for zone , pod -# message.add.disk.offering=Please specify the following parameters to add a new disk offering -# message.add.firewall=Add a firewall to zone -# message.add.host=Please specify the following parameters to add a new host -# message.add.ip.range.direct.network=Add an IP range to direct network in zone -# message.add.ip.range.to.pod=

    Add an IP range to pod\\\:

    -# message.add.ip.range=Add an IP range to public network in zone -# message.add.load.balancer=Add a load balancer to zone -# message.add.network=Add a new network for zone\\\: -# message.add.pod=Add a new pod for zone -# message.add.primary.storage=Add a new Primary Storage for zone , pod -# message.add.primary=Please specify the following parameters to add a new primary storage -# message.add.secondary.storage=Add a new storage for zone -# message.add.service.offering=Please fill in the following data to add a new compute offering. -# message.add.template=Please enter the following data to create your new template -# message.add.volume=Please fill in the following data to add a new volume. -# message.additional.networks.desc=Please select additional network(s) that your virtual instance will be connected to. -# message.advanced.mode.desc=Choose this network model if you wish to enable VLAN support. This network model provides the most flexibility in allowing administrators to provide custom network offerings such as providing firewall, vpn, or load balancer support as well as enabling direct vs virtual networking. -# message.advanced.security.group=Choose this if you wish to use security groups to provide guest VM isolation. -# message.advanced.virtual=Choose this if you wish to use zone-wide VLANs to provide guest VM isolation. -# message.allow.vpn.access=Please enter a username and password of the user that you want to allow VPN access. -# message.attach.iso.confirm=Please confirm that you want to attach the ISO to this virtual instance. -# message.attach.volume=Please fill in the following data to attach a new volume. If you are attaching a disk volume to a Windows based virtual machine, you will need to reboot the instance to see the attached disk. -# message.basic.mode.desc=Choose this network model if you do *not* want to enable any VLAN support. All virtual instances created under this network model will be assigned an IP directly from the network and security groups are used to provide security and segregation. -# message.change.offering.confirm=Please confirm that you wish to change the service offering of this virtual instance. -# message.copy.iso.confirm=Please confirm that you wish to copy your ISO to -# message.copy.template=Copy template XXX from zone to -# message.create.template.vm=Create VM from template -# message.create.template.volume=Please specify the following information before creating a template of your disk volume\\\: . Creation of the template can range from several minutes to longer depending on the size of the volume. -# message.delete.account=Please confirm that you want to delete this account. -# message.detach.iso.confirm=Please confirm that you want to detach the ISO from this virtual instance. -# message.disable.account=Please confirm that you want to disable this account. By disabling the account, all users for this account will no longer have access to their cloud resources. All running virtual machines will be immediately shut down. -# message.disable.vpn.access=Please confirm that you want to disable VPN Access. -# message.download.ISO=Please click 00000 to download ISO -# message.download.template=Please click 00000 to download template -# message.download.volume=Please click 00000 to download volume -# message.edit.confirm=Please confirm that your changes before clicking "Save". -# message.edit.limits=Please specify limits to the following resources. A "-1" indicates no limit to the amount of resources create. +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.management=\u0625\u062f\u0627\u0631\u0629\\\: \u0627\u0644\u062d\u0631\u0643\u0629 \u0628\u064a\u0646 \u0627\u0644\u0645\u0648\u0627\u0631\u062f \u0627\u0644\u062f\u0627\u062e\u0644\u064a\u0629 \u0644 \u0643\u0644\u0627\u0648\u062f \u0633\u062a\u0627\u0643 \u060c \u0645\u062a\u0636\u0645\u0646\u0629 \u0623\u064a \u062c\u0632\u0621 \u064a\u062a\u0635\u0644 \u0628\u062e\u0627\u062f\u0645\\\u0633\u064a\u0631\u0641\u0631 \u0627\u0644\u0625\u062f\u0627\u0631\u0629 \u060c \u0645\u062b\u0644 \u0627\u0644\u0645\u0636\u064a\u0641\u0627\u062a \u0648 \u0623\u0646\u0638\u0645\u0629 \u0643\u0644\u0627\u0648\u062f \u0633\u062a\u0627\u0643 \u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a\u0629. +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.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.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.vpn.access=VPN is currently disabled for this IP Address. Would you like to enable VPN access? -# message.enabled.vpn.ip.sec=Your IPSec pre-shared key is -# message.enabled.vpn=Your VPN access is currently enabled and can be accessed via the IP -# message.launch.vm.on.private.network=Do you wish to launch your instance on your own private dedicated network? -# message.lock.account=Please confirm that you want to lock this account. By locking the account, all users for this account will no longer be able to manage their cloud resources. Existing resources can still be accessed. -# message.migrate.instance.confirm=Please confirm the host you wish to migrate the virtual instance to. -# message.new.user=Specify the following to add a new user to the account -# message.no.network.support.configuration.not.true=You do not have any zone that has security group enabled. Thus, no additional network features. Please continue to step 5. -# message.no.network.support=Your selected hypervisor, vSphere, does not have any additional network features. Please continue to step 5. -# message.number.clusters=

    \\\# of Clusters

    -# message.number.hosts=

    \\\# of Hosts

    -# message.number.pods=

    \\\# of Pods

    -# message.number.storage=

    \\\# of Primary Storage Volumes

    -# message.number.zones=

    \\\# of Zones

    -# message.remove.vpn.access=Please confirm that you want to remove VPN access from the following user. -# message.restart.mgmt.server=Please restart your management server(s) for your new settings to take effect. -# message.restart.mgmt.usage.server=Please restart your management server(s) and usage server(s) for your new settings to take effect. -# message.security.group.usage=(Use Ctrl-click to select all applicable security groups) -# message.snapshot.schedule=You can setup recurring snapshot schedules by selecting from the available options below and applying your policy preference -# message.step.1.continue=Please select a template or ISO to continue -# message.step.1.desc=Please select a template for your new virtual instance. You can also choose to select a blank template from which an ISO image can be installed onto. -# message.step.2.continue=Please select a service offering to continue +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.no.projects.adminOnly=\u0644\u064a\u0633 \u0644\u062f\u064a\u0643 \u0623\u064a \u0645\u0634\u0627\u0631\u064a\u0639.
    \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.
    \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.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.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.continue=Please select a disk offering to continue message.step.3.desc= -# message.step.4.continue=Please select at least one network to continue -# message.step.4.desc=Please select the primary network that your virtual instance will be connected to. -# message.update.os.preference=Please choose a OS preference for this host. All virtual instances with similar preferences will be first allocated to this host before choosing another. -# message.update.ssl=Please submit a new X.509 compliant SSL certificate to be updated to each console proxy virtual instance\\\: -# message.virtual.network.desc=A dedicated virtualized network for your account. The broadcast domain is contained within a VLAN and all public network access is routed out by a virtual router. -# message.volume.create.template.confirm=Please confirm that you wish to create a template for this disk volume. Creation of the template can range from several minutes to longer depending on the size of the volume. -# message.zone.step.1.desc=Please select a network model for your zone. -# message.zone.step.2.desc=Please enter the following info to add a new zone -# message.zone.step.3.desc=Please enter the following info to add a new pod -# message.apply.snapshot.policy=You have successfully updated your current snapshot policy. -# message.disable.snapshot.policy=You have successfully disabled your current snapshot policy. -# message.action.change.service.warning.for.instance=Your instance must be stopped before attempting to change its current service offering. -# message.action.change.service.warning.for.router=Your router must be stopped before attempting to change its current service offering. -# message.action.reset.password.warning=Your instance must be stopped before attempting to change its current password. -# message.action.reset.password.off=Your instance currently does not support this feature. - -#Errors -# error.login=Your username/password does not match our records. -# error.menu.select=Unable to perform action due to no items being selected. -# error.mgmt.server.inaccessible=The Management Server is unaccessible. Please try again later. -# error.session.expired=Your session has expired. -# error.unresolved.internet.name=Your internet name cannot be resolved. - -# label.add.NiciraNvp.device=Add Nvp Controller -# label.delete.NiciraNvp=Remove Nvp Controller -# label.nicira.controller.address=Controller Address -# label.nicira.transportzoneuuid=Transport Zone Uuid -# label.nicira.l3gatewayserviceuuid=L3 Gateway Service Uuid - +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 \\\:

    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.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 From 87cafdcbc42a6b33b91073c7f024640ccba7cde4 Mon Sep 17 00:00:00 2001 From: Milamber Date: Mon, 29 Apr 2013 16:18:11 +0100 Subject: [PATCH 471/607] Needs to force the download of l10n resource files --- tools/transifex/sync-transifex-ui.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/transifex/sync-transifex-ui.sh b/tools/transifex/sync-transifex-ui.sh index ed108098028..9124ed6a633 100755 --- a/tools/transifex/sync-transifex-ui.sh +++ b/tools/transifex/sync-transifex-ui.sh @@ -74,7 +74,7 @@ doDownloadL10NLangs() done # get all resource files from transifex - tx pull -r ${ARGUMENTS} + tx pull -f -r ${ARGUMENTS} # l10n languages for CODELANG in ${LIST_LANG} ; do From 8545e68aaf6242c735fd2b176d48fad52820bc8e Mon Sep 17 00:00:00 2001 From: Milamber Date: Mon, 29 Apr 2013 16:24:21 +0100 Subject: [PATCH 472/607] Update l10n resource file Web-UI with latest version from transifex. --- .../classes/resources/messages_ar.properties | 55 +- .../resources/messages_de_DE.properties | 22 +- .../classes/resources/messages_es.properties | 1366 ++++++++--------- .../resources/messages_fr_FR.properties | 78 +- .../resources/messages_it_IT.properties | 1 - .../classes/resources/messages_ja.properties | 12 +- .../resources/messages_ko_KR.properties | 3 - .../resources/messages_pt_BR.properties | 1 - .../resources/messages_ru_RU.properties | 3 - .../resources/messages_zh_CN.properties | 4 - 10 files changed, 801 insertions(+), 744 deletions(-) diff --git a/client/WEB-INF/classes/resources/messages_ar.properties b/client/WEB-INF/classes/resources/messages_ar.properties index f0b779611b6..4d3011b5a6c 100644 --- a/client/WEB-INF/classes/resources/messages_ar.properties +++ b/client/WEB-INF/classes/resources/messages_ar.properties @@ -24,14 +24,14 @@ label.action.delete.system.service.offering=\u062d\u0630\u0641 \u0646\u0638\u062 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.account.to.project=\u0625\u0636\u0627\u0641\u0629 \u062d\u0633\u0627\u0628 \u0644\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.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.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 @@ -39,6 +39,7 @@ label.add.to.group=\u0625\u0636\u0627\u0641\u0629 \u0625\u0644\u0649 \u0627\u064 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 @@ -50,13 +51,16 @@ 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.view=\u0637\u0631\u064a\u0642\u0629 \u0627\u0644\u0639\u0631\u0636 \u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a\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 @@ -66,14 +70,18 @@ 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 @@ -81,9 +89,10 @@ 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.invite.to=\u062f\u0639\u0648\u0629 \u0644\u0640 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 @@ -92,6 +101,7 @@ label.local.storage.enabled=\u062a\u0645\u0643\u064a\u0646 \u0627\u0644\u062a\u0 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 @@ -103,10 +113,12 @@ label.menu.destroyed.instances=\u062d\u0627\u0644\u0627\u062a \u0627\u0644\u062a 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.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 @@ -115,9 +127,9 @@ label.move.to.top=\u0627\u0646\u062a\u0642\u0627\u0644 \u0625\u0644\u0649 \u0623 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.network.ACLs=\u0634\u0628\u0643\u0629 ACLs 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 @@ -130,18 +142,20 @@ 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.project.view=\u0639\u0631\u0636 \u0627\u0644\u0645\u0634\u0631\u0648\u0639 -label.project=\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 @@ -155,10 +169,11 @@ label.s3.socket_timeout=\u0645\u0647\u0644\u0629 \u0627\u0644\u0645\u0642\u0628\ 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.select-view=\u062d\u062f\u062f \u0637\u0631\u064a\u0642\u0629 \u0627\u0644\u0639\u0631\u0636 +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 @@ -173,22 +188,26 @@ label.tier.details=\u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u0644\u0637\u0628 label.tier=\u0637\u0628\u0642\u0629 label.upload=\u0631\u0641\u0639 label.view.all=\u0639\u0631\u0636 \u0627\u0644\u0643\u0644 -label.view=\u0639\u0631\u0636 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.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.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 @@ -198,7 +217,6 @@ label.zone.step.3.title=\u0627\u0644\u062e\u0637\u0648\u0629 3 \\\: \u0639\u0644 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.management=\u0625\u062f\u0627\u0631\u0629\\\: \u0627\u0644\u062d\u0631\u0643\u0629 \u0628\u064a\u0646 \u0627\u0644\u0645\u0648\u0627\u0631\u062f \u0627\u0644\u062f\u0627\u062e\u0644\u064a\u0629 \u0644 \u0643\u0644\u0627\u0648\u062f \u0633\u062a\u0627\u0643 \u060c \u0645\u062a\u0636\u0645\u0646\u0629 \u0623\u064a \u062c\u0632\u0621 \u064a\u062a\u0635\u0644 \u0628\u062e\u0627\u062f\u0645\\\u0633\u064a\u0631\u0641\u0631 \u0627\u0644\u0625\u062f\u0627\u0631\u0629 \u060c \u0645\u062b\u0644 \u0627\u0644\u0645\u0636\u064a\u0641\u0627\u062a \u0648 \u0623\u0646\u0638\u0645\u0629 \u0643\u0644\u0627\u0648\u062f \u0633\u062a\u0627\u0643 \u0627\u0644\u0625\u0641\u062a\u0631\u0627\u0636\u064a\u0629. 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. @@ -209,12 +227,14 @@ message.activate.project=\u0647\u0644 \u0623\u0646\u062a \u0645\u062a\u0623\u064 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 @@ -223,15 +243,19 @@ message.enable.user=\u0627\u0644\u0631\u062c\u0627\u0621 \u0627\u0644\u062a\u062 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.
    \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.
    \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= @@ -250,11 +274,12 @@ 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.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 diff --git a/client/WEB-INF/classes/resources/messages_de_DE.properties b/client/WEB-INF/classes/resources/messages_de_DE.properties index 9b1d6b03310..ca87323cc77 100644 --- a/client/WEB-INF/classes/resources/messages_de_DE.properties +++ b/client/WEB-INF/classes/resources/messages_de_DE.properties @@ -22,7 +22,7 @@ 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.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 @@ -160,7 +160,7 @@ 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.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 @@ -272,7 +272,7 @@ 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.cloud.managed=Geleitet von cloud.com label.cluster=Cluster label.cluster.type=Cluster-Typ label.code=Code @@ -280,7 +280,7 @@ label.configuration=Konfiguration label.confirmation=Best\u00e4tigung label.congratulations=Herzlichen Gl\u00fcckwunsch label.corrections.saved=Korrekturen gespeichert -label.cpu.allocated=Zugeteilte CPU +label.cpu.allocated=Zugeteilte CPU label.CPU.cap=CPU Obergrenze label.cpu=CPU label.cpu.mhz=CPU (in MHz) @@ -709,7 +709,7 @@ message.enable.account=Bitte best\u00e4tigen Sie, dass Sie dieses Konto aktivier 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.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 @@ -718,16 +718,16 @@ message.installWizard.tooltip.addPod.reservedSystemGateway=Das Gateways f\u00fcr 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.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.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.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 diff --git a/client/WEB-INF/classes/resources/messages_es.properties b/client/WEB-INF/classes/resources/messages_es.properties index c0680b30613..16cfc1cda49 100644 --- a/client/WEB-INF/classes/resources/messages_es.properties +++ b/client/WEB-INF/classes/resources/messages_es.properties @@ -16,7 +16,7 @@ # under the License. -error.installWizard.message=Algo salio mal, debes ir para atr\u00e1s y corregir los error. +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. @@ -32,133 +32,133 @@ 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.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.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.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.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.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.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.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.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.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 @@ -167,650 +167,650 @@ 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.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.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.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.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.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.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.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.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.level=por Nivel label.by.pod=Por Pod -label.by.role=por funci\u00c3\u00b3n +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.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.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.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.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.code=C\u00c3\u00b3digo +label.configuration=Configuraci\u00c3\u00b3n label.confirmation=Confirmation -label.congratulations=Felicitaciones \! +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=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.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.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.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.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.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.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.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.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.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.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.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.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.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.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.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.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.network.type=Tipo de red +label.network.write=Escribir en la red label.new=Nuevo -label.new.password=Nueva contrase\u00c3\u00b1a +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.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.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.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.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.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.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.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.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.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.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.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.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.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.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.sent=Enviados +label.server=Servidor +label.service.offering=Oferta de Servicio label.session.expired=Session Caducado -label.shared=compartidas -label.SharedMountPoint=SharedMountPoint +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.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\: Seleccione una plantilla -label.step.2=Paso 2 -label.step.2.title=Paso 2\: Oferta de Servicio -label.step.3=Paso 3 -label.step.3.title=Paso 3\: Seleccione un disco Ofrenda -label.step.4=Paso 4 -label.step.4.title=Paso 4\: Red -label.step.5=Paso 5 -label.step.5.title=Paso 5\: Revisi\u00c3\u00b3n -label.sticky.domain=dominio +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\: Seleccione una plantilla +label.step.2=Paso 2 +label.step.2.title=Paso 2\: Oferta de Servicio +label.step.3=Paso 3 +label.step.3.title=Paso 3\: Seleccione un disco Ofrenda +label.step.4=Paso 4 +label.step.4.title=Paso 4\: Red +label.step.5=Paso 5 +label.step.5.title=Paso 5\: Revisi\u00c3\u00b3n +label.sticky.domain=dominio label.sticky.mode=modo -label.stop=Detener -label.stopped.vms=Detenido m\u00c3\u00a1quinas virtuales -label.storage=Almacenamiento +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\: ] -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.storage.type=Tipo de almacenamiento +label.submit=Enviar +label.submitted.by=[Enviado por\: ] +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.default=Tema Por Defecto label.theme.grey=Personal - Gris label.theme.lightblue=Personal - Azul -label.thursday=Jueves +label.thursday=Jueves label.timeout.in.second = Tiempo de espera (segundos) -label.time=Tiempo -label.time.zone=Zona horaria -label.timezone=Zona horaria +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.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.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.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.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.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\: Seleccione una red -label.zone.step.2.title=Paso 2\: A\u00c3\u00b1adir una zona -label.zone.step.3.title=Paso 3\: A\u00c3\u00b1adir una vaina -label.zone.step.4.title=Paso 4\: A\u00c3\u00b1adir un rango de IP -label.zone.wide=Zona para todo el +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\: Seleccione una red +label.zone.step.2.title=Paso 2\: A\u00c3\u00b1adir una zona +label.zone.step.3.title=Paso 3\: A\u00c3\u00b1adir una vaina +label.zone.step.4.title=Paso 4\: A\u00c3\u00b1adir un rango de IP +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.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.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.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.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.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.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.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.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 zona , la consola de -message.add.cluster.zone=A\u00c3\u00b1adir un hipervisor administradas por cl\u00c3\u00baster de zona -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 red en la zona -message.add.ip.range.to.pod=

    A\u00c3\u00b1adir un rango de IP de la vaina\:

    -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\: -message.add.pod=Agregar una vaina nueva zona -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 zona , la consola de -message.add.secondary.storage=A\u00c3\u00b1adir un nuevo almacenamiento de zona -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.add.cluster=A\u00c3\u00b1adir un hipervisor administradas por cl\u00c3\u00baster de zona , la consola de +message.add.cluster.zone=A\u00c3\u00b1adir un hipervisor administradas por cl\u00c3\u00baster de zona +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 red en la zona +message.add.ip.range.to.pod=

    A\u00c3\u00b1adir un rango de IP de la vaina\:

    +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\: +message.add.pod=Agregar una vaina nueva zona +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 zona , la consola de +message.add.secondary.storage=A\u00c3\u00b1adir un nuevo almacenamiento de zona +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.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 * no * 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 XXX de la zona -message.create.template.vm=Crear VM de la plantilla -message.create.template.volume=Por favor, especifique la siguiente informaci\u00c3\u00b3n antes de crear una plantilla de su 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.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.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 * no * 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 XXX de la zona +message.create.template.vm=Crear VM de la plantilla +message.create.template.volume=Por favor, especifique la siguiente informaci\u00c3\u00b3n antes de crear una plantilla de su 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.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 00000 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, haga clic aqu\u00c3\u00ad para habilitar VPN. +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, haga clic aqu\u00c3\u00ad 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.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 @@ -819,44 +819,44 @@ 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.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=

    \# de Grupos

    -message.number.hosts=

    \# de Anfitri\u00c3\u00b3n

    -message.number.pods=

    \# de Las vainas

    -message.number.storage=

    \# de Almacenamiento primario

    -message.number.zones=

    \# de Zonas

    -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 pulse Ctrl para seleccionar todos los grupos de seguridad se aplica) -message.select.item=Por favor, seleccionar un item . +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=

    \# de Grupos

    +message.number.hosts=

    \# de Anfitri\u00c3\u00b3n

    +message.number.pods=

    \# de Las vainas

    +message.number.storage=

    \# de Almacenamiento primario

    +message.number.zones=

    \# de Zonas

    +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 pulse Ctrl 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.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.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.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. +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 +network.rate=Tasa de Red side.by.side=Juntos -state.Allocated=Asignados -state.Disabled=personas de movilidad reducida -state.Error=Error +state.Allocated=Asignados +state.Disabled=personas de movilidad reducida +state.Error=Error diff --git a/client/WEB-INF/classes/resources/messages_fr_FR.properties b/client/WEB-INF/classes/resources/messages_fr_FR.properties index 6d860486d0c..8be438a11c1 100644 --- a/client/WEB-INF/classes/resources/messages_fr_FR.properties +++ b/client/WEB-INF/classes/resources/messages_fr_FR.properties @@ -195,7 +195,7 @@ label.action.reboot.router.processing=Red\u00e9marrage du routeur... label.action.reboot.router=Red\u00e9marrer le routeur label.action.reboot.systemvm.processing=Red\u00e9marrage de la VM Syst\u00e8me... label.action.reboot.systemvm=Red\u00e9marrer la VM Syst\u00e8me -label.action.recurring.snapshot=Instantan\u00e9s r\u00e9currents +label.action.recurring.snapshot=Instantan\u00e9s r\u00e9currents label.action.register.iso=Enregistrer ISO label.action.register.template=Enregistrer mod\u00e8le label.action.release.ip=Lib\u00e9rer l\\'adresse IP @@ -230,6 +230,9 @@ label.action.update.OS.preference=Mettre \u00e0 jour les pr\u00e9f\u00e9rences d label.action.update.OS.preference.processing=Mise \u00e0 jour des pr\u00e9f\u00e9rences d\\'OS... label.action.update.resource.count=Mettre \u00e0 jour le compteur des ressources label.action.update.resource.count.processing=Mise \u00e0 jour du compteur... +label.action.vmsnapshot.create=Prendre un instantan\u00e9 VM +label.action.vmsnapshot.delete=Supprimer l\\'instantan\u00e9 VM +label.action.vmsnapshot.revert=Revenir \u00e0 un instantan\u00e9 VM label.activate.project=Activer projet label.active.sessions=Sessions actives label.add.account=Ajouter un compte @@ -237,7 +240,9 @@ label.add.accounts=Ajouter des comptes label.add.accounts.to=Ajouter des comptes sur label.add.account.to.project=Ajouter un compte au projet label.add.ACL=Ajouter r\u00e8gle ACL +label.add.affinity.group=Ajouter nouvea groupe d\\'affinit\u00e9 label.add=Ajouter +label.add.BigSwitchVns.device=Ajouter contr\u00f4leur BigSwitch Vns label.add.by=Ajout\u00e9 par label.add.by.cidr=Ajouter par CIDR label.add.by.group=Ajouter par groupe @@ -279,6 +284,7 @@ label.add.physical.network=Ajouter un r\u00e9seau physique label.add.pod=Ajouter un pod label.add.port.forwarding.rule=Ajouter une r\u00e8gle de transfert de port label.add.primary.storage=Ajouter un stockage principal +label.add.region=Ajouter R\u00e9gion label.add.resources=Ajouter ressources label.add.route=Ajouter route label.add.rule=Ajouter r\u00e8gle @@ -308,6 +314,9 @@ label.admin=Administrateur label.advanced=Avanc\u00e9 label.advanced.mode=Mode avanc\u00e9 label.advanced.search=Recherche avanc\u00e9e +label.affinity=Affinit\u00e9 +label.affinity.group=Groupe d\\'Affinit\u00e9 +label.affinity.groups=Groups d\\'Affinit\u00e9 label.agent.password=Mot de passe Agent label.agent.username=Identifiant Agent label.agree=Accepter @@ -315,6 +324,9 @@ label.alert=Alerte label.algorithm=Algorithme label.allocated=Allou\u00e9 label.allocation.state=\u00c9tat +label.anti.affinity=Anti-affinit\u00e9 +label.anti.affinity.group=Groupe d\\'Anti-affinit\u00e9 +label.anti.affinity.groups=Groupes d\\'Anti-affinit\u00e9 label.api.key=Cl\u00e9 d\\'API label.apply=Appliquer label.assign=Assigner @@ -322,6 +334,8 @@ label.assign.to.load.balancer=Assigner l\\'instance au r\u00e9partiteur de charg label.associated.network.id=ID du r\u00e9seau associ\u00e9 label.associated.network=R\u00e9seau associ\u00e9 label.attached.iso=Image ISO attach\u00e9e +label.author.email=Email auteur +label.author.name=Nom auteur label.availability=Disponibilit\u00e9 label.availability.zone=Zone de disponibilit\u00e9 label.available=Disponible @@ -330,6 +344,7 @@ label.back=Retour label.bandwidth=Bande passante label.basic=Basique label.basic.mode=Mode basique +label.bigswitch.controller.address=Adresse du contr\u00f4leur BigSwitch Vns label.bootable=Amor\u00e7able label.broadcast.domain.range=Plage du domaine multi-diffusion label.broadcast.domain.type=Type de domaine de multi-diffusion @@ -393,6 +408,7 @@ label.cpu.allocated=CPU allou\u00e9e label.cpu.allocated.for.VMs=CPU allou\u00e9e aux VMs label.CPU.cap=Limitation CPU label.cpu=CPU +label.cpu.limits=Limites CPU label.cpu.mhz=CPU (en MHz) label.cpu.utilized=CPU utilis\u00e9e label.created.by.system=Cr\u00e9\u00e9 par le syst\u00e8me @@ -413,6 +429,8 @@ label.dedicated=D\u00e9di\u00e9 label.default=Par d\u00e9faut label.default.use=Utilisation par d\u00e9faut label.default.view=Vue par d\u00e9faut +label.delete.affinity.group=Supprimer le groupe d\\'affinit\u00e9 +label.delete.BigSwitchVns=Supprimer contr\u00f4leur BigSwitch Vns label.delete.F5=Supprimer F5 label.delete.gateway=Supprimer la passerelle label.delete.NetScaler=Supprimer Netscaler @@ -464,6 +482,7 @@ label.done=Termin\u00e9 label.double.quotes.are.not.allowed=Les guillemets ne sont pas autoris\u00e9es label.download.progress=Progression du t\u00e9l\u00e9chargement label.drag.new.position=D\u00e9placer sur une autre position +label.edit.affinity.group=Modifier le groupe d\\'affinit\u00e9 label.edit.lb.rule=Modifier la r\u00e8gle LB label.edit=Modifier label.edit.network.details=Modifier les param\u00e8tres r\u00e9seau @@ -485,6 +504,7 @@ label.enabling.vpn.access=Activation de l\\'acc\u00e8s VPN label.enabling.vpn=Activation du VPN label.end.IP=Fin de plage IP label.endpoint.or.operation=Terminaison ou Op\u00e9ration +label.endpoint=Terminaison label.end.port=Port de fin label.end.reserved.system.IP=Adresse IP de fin r\u00e9serv\u00e9e Syst\u00e8me label.end.vlan=VLAN de fin @@ -497,6 +517,7 @@ label.ESP.lifetime=Dur\u00e9e de vie ESP (secondes) label.ESP.policy=Mode ESP label.esx.host=H\u00f4te ESX/ESXi label.example=Exemple +label.external.link=Lien externe label.f5=F5 label.failed=\u00c9chou\u00e9 label.featured=Sponsoris\u00e9 @@ -610,6 +631,7 @@ label.keyboard.type=Type de clavier label.key=Clef label.kvm.traffic.label=Libell\u00e9 pour le trafic KVM label.label=Libell\u00e9 +label.lang.arabic=Arabe label.lang.brportugese=Portuguais Br\u00e9sil label.lang.catalan=Catalan label.lang.chinese=Chinois (simplifi\u00e9) @@ -648,10 +670,14 @@ label.manage=G\u00e9r\u00e9 label.management=Administration label.management.ips=Adresses IP de gestion label.manage.resources=G\u00e9rer les ressources +label.max.cpus=Nombre coeurs CPU max. label.max.guest.limit=Nombre maximum d\\'invit\u00e9s label.maximum=Maximum +label.max.memory=M\u00e9moire max. (Mo) label.max.networks=R\u00e9seaux Max. +label.max.primary.storage=Principal max. (Go) label.max.public.ips=Max. IP publiques +label.max.secondary.storage=Secondaire max. (Go) label.max.snapshots=Max instantan\u00e9es label.max.templates=Max. mod\u00e8les label.max.vms=Max. VMs utilisateur @@ -659,6 +685,7 @@ label.max.volumes=Max. volumes label.max.vpcs=Max. VPCs label.may.continue=Vous pouvez continuer. label.memory.allocated=M\u00e9moire allou\u00e9e +label.memory.limits=Limites m\u00e9moire (Mo) label.memory.mb=M\u00e9moire (en MB) label.memory=M\u00e9moire (en Mo) label.memory.total=M\u00e9moire totale @@ -689,6 +716,7 @@ label.menu.my.templates=Mes mod\u00e8les label.menu.network.offerings=Offres de Service R\u00e9seau label.menu.network=R\u00e9seau label.menu.physical.resources=Ressources physiques +label.menu.regions=R\u00e9gions label.menu.running.instances=Instances actives label.menu.security.groups=Groupes de s\u00e9curit\u00e9 label.menu.service.offerings=Offres de Service @@ -705,8 +733,8 @@ label.menu.volumes=Volumes label.migrate.instance.to.host=Migration de l\\'instance sur un autre h\u00f4te label.migrate.instance.to=Migrer l\\'instance vers label.migrate.instance.to.ps=Migration de l\\'instance sur un autre stockage principal -label.migrate.router.to=Migrer le routeur vers -label.migrate.systemvm.to=Migrer la VM syst\u00e8me vers +label.migrate.router.to=Migrer le routeur vers +label.migrate.systemvm.to=Migrer la VM syst\u00e8me vers label.migrate.to.host=Migrer vers un h\u00f4te label.migrate.to.storage=Migrer vers un stockage label.migrate.volume=Migration du volume vers un autre stockage principal @@ -808,6 +836,8 @@ label.PING.dir=R\u00e9pertoire PING label.PING.storage.IP=IP stockage PING label.please.specify.netscaler.info=Renseigner les informations sur le Netscaler label.please.wait=Patientez s\\'il vous plait +label.plugin.details=D\u00e9tails extension +label.plugins=Extensions label.pod.name=Nom du pod label.pod=Pod label.pods=Pods @@ -820,6 +850,7 @@ label.prev=Pr\u00e9c\u00e9dent label.primary.allocated=Stockage principal allou\u00e9 label.primary.network=R\u00e9seau principal label.primary.storage.count=Groupes de stockage principal +label.primary.storage.limits=Limites stockage principal (Go) label.primary.storage=Premier stockage label.primary.used=Stockage principal utilis\u00e9 label.private.Gateway=Passerelle priv\u00e9e @@ -857,6 +888,7 @@ label.redundant.router.capability=Router redondant label.redundant.router=Routeur redondant label.redundant.state=\u00c9tat de la redondance label.refresh=Actualiser +label.region=R\u00e9gion label.related=Connexes label.remind.later=Rappeler moi plus tard label.remove.ACL=Supprimer une r\u00e8gle ACL @@ -866,6 +898,7 @@ label.remove.ingress.rule=Supprimer la r\u00e8gle entrante label.remove.ip.range=Supprimer la plage IP label.remove.pf=Supprimer la r\u00e8gle de transfert de port label.remove.project.account=Supprimer le compte projet +label.remove.region=Supprimer r\u00e9gion label.remove.rule=Supprimer la r\u00e8gle label.remove.static.nat.rule=Supprimer le NAT statique label.remove.static.route=Supprimer une route statique @@ -902,7 +935,7 @@ label.s3.access_key=Cl\u00e9 d\\'Acc\u00e8s label.s3.bucket=Seau label.s3.connection_timeout=D\u00e9lai d\\'expiration de connexion label.s3.endpoint=Terminaison -label.s3.max_error_retry=Nombre d\\'essai en erreur max. +label.s3.max_error_retry=Nombre d\\'essai en erreur max. label.s3.secret_key=Cl\u00e9 Priv\u00e9e label.s3.socket_timeout=D\u00e9lai d\\'expiration de la socket label.s3.use_https=Utiliser HTTPS @@ -913,6 +946,7 @@ label.saving.processing=Sauvegarde en cours... label.scope=Port\u00e9e label.search=Rechercher label.secondary.storage.count=Groupes de stockage secondaire +label.secondary.storage.limits=Limites stockage secondaire (Go) label.secondary.storage=Stockage secondaire label.secondary.storage.vm=VM stockage secondaire label.secondary.used=Stockage secondaire utilis\u00e9 @@ -930,7 +964,7 @@ label.select.offering=S\u00e9lectionner une offre label.select.project=S\u00e9lectionner un projet label.select=S\u00e9lectionner label.select.tier=S\u00e9lectionner le tiers -label.select-view=S\u00e9lectionner la vue +label.select-view=S\u00e9lectionner la vue label.select.vm.for.static.nat=S\u00e9lectionner une VM pour le NAT statique label.sent=Envoy\u00e9 label.server=Serveur @@ -958,7 +992,7 @@ label.source.nat=NAT Source label.source=Origine label.specify.IP.ranges=Sp\u00e9cifier des plages IP label.specify.vlan=Pr\u00e9ciser le VLAN -label.SR.name=Nom du point de montage +label.SR.name = Nom du point de montage label.srx=SRX label.start.IP=Plage de d\u00e9but IP label.start.port=Port de d\u00e9but @@ -1013,9 +1047,9 @@ label.system.capacity=Capacit\u00e9 syst\u00e8me label.system.offering=Offre de syst\u00e8me label.system.service.offering=Offre de Service Syst\u00e8me label.system.vms=\ VMs Syst\u00e8mes -label.system.vm.type=Type de VM syst\u00e8me +label.system.vm.type=Type de VM syst\u00e8me label.system.vm=VM Syst\u00e8me -label.system.wide.capacity=Capacit\u00e9 globale +label.system.wide.capacity=Capacit\u00e9 globale label.tagged=\u00c9tiquet\u00e9 label.tags=\u00c9tiquette label.target.iqn=Cible IQN @@ -1030,7 +1064,7 @@ label.thursday=Jeudi label.tier.details=D\u00e9tails du tiers label.tier=Tiers label.timeout=D\u00e9lai d\\'expiration -label.timeout.in.second=D\u00e9lai d\\'expiration (secondes) +label.timeout.in.second = D\u00e9lai d\\'expiration (secondes) label.time=Temps label.time.zone=Fuseau horaire label.timezone=Fuseau horaire @@ -1053,8 +1087,8 @@ label.unavailable=Indisponible label.unlimited=Illimit\u00e9 label.untagged=Non Tagg\u00e9 label.update.project.resources=Mettre \u00e0 jour les ressources du projet -label.update.ssl.cert=Certificat SSL -label.update.ssl=Certificat SSL +label.update.ssl.cert= Certificat SSL +label.update.ssl= Certificat SSL label.updating=Mise \u00e0 jour label.upload=Charger label.upload.volume=Charger un volume @@ -1064,6 +1098,7 @@ label.used=Utilis\u00e9 label.username=Nom d\\'Utilisateur label.users=Utilisateurs label.user=Utilisateur +label.use.vm.ip=Utiliser IP VM \: label.value=Valeur label.vcdcname=Nom du DC vCenter label.vcenter.cluster=Cluster vCenter @@ -1096,11 +1131,16 @@ label.vmfs=VMFS label.vm.name=Nom de la VM label.vm.reboot=Red\u00e9marrer label.VMs.in.tier=Machines virtuelles dans le tiers +label.vmsnapshot.current=estCourant +label.vmsnapshot=Instantan\u00e9s VM +label.vmsnapshot.memory=M\u00e9more instantan\u00e9 +label.vmsnapshot.parentname=Parent +label.vmsnapshot.type=Type label.vm.start=D\u00e9marrer label.vm.state=\u00c9tat VM label.vm.stop=Arr\u00eater label.vms=VMs -label.vmware.traffic.label=Libell\u00e9 pour le trafic VMware +label.vmware.traffic.label=Libell\u00e9 pour le trafic VMware label.volgroup=Groupe de Volume label.volume.limits=Limites des volumes label.volume.name=Nom du volume @@ -1209,13 +1249,15 @@ message.action.stop.router=Tous les services fournit par ce routeur virtuel vont message.action.stop.systemvm=\u00cates-vous s\u00fbr que vous souhaitez arr\u00eater cette VM. message.action.take.snapshot=Confirmer la prise d\\'un instantan\u00e9 pour ce volume. message.action.unmanage.cluster=Confirmez que vous ne voulez plus g\u00e9rer le cluster +message.action.vmsnapshot.delete=Confirmez que vous souhaitez supprimer cet instantan\u00e9 VM. +message.action.vmsnapshot.revert=Revenir \u00e0 un instantan\u00e9 VM message.activate.project=\u00cates-vous s\u00fbr de vouloir activer ce projet ? message.add.cluster=Ajouter un cluster d\\'hyperviseurs g\u00e9r\u00e9 pour cette zone , pod message.add.cluster.zone=Ajouter un cluster d\\'hyperviseurs g\u00e9r\u00e9 pour cette zone message.add.disk.offering=Renseignez les param\u00e8tres suivants pour ajouter un offre de service de disques message.add.domain=Sp\u00e9cifier le sous domaine que vous souhaitez cr\u00e9er sous ce domaine message.add.firewall=Ajouter un pare-feu \u00e0 cette zone -message.add.guest.network=Confirmer l\\'ajout du r\u00e9seau invit\u00e9 +message.add.guest.network=Confirmer l\\'ajout du r\u00e9seau invit\u00e9 message.add.host=Renseignez les param\u00e8tres suivants pour ajouter une h\u00f4te message.adding.host=Ajout un h\u00f4te message.adding.Netscaler.device=Ajouter un Netscaler @@ -1229,9 +1271,10 @@ message.add.load.balancer.under.ip=La r\u00e8gle de r\u00e9partition de charge \ message.add.network=Ajouter un nouveau r\u00e9seau \u00e0 la zone\: message.add.new.gateway.to.vpc=Renseigner les informations suivantes pour ajouter une nouvelle passerelle pour ce VPC message.add.pod=Ajouter un nouveau pod \u00e0 la zone -message.add.pod.during.zone.creation=Chaque zone doit contenir un ou plusieurs pods, et le premier pod sera ajout\u00e9 maintenant. Une pod contient les h\u00f4tes et les serveurs de stockage principal, qui seront ajout\u00e9s dans une \u00e9tape ult\u00e9rieure. Configurer une plage d\\'adresses IP r\u00e9serv\u00e9es pour le trafic de gestion interne de CloudStack. La plage d\\'IP r\u00e9serv\u00e9e doit \u00eatre unique pour chaque zone dans le nuage. +message.add.pod.during.zone.creation=Chaque zone doit contenir un ou plusieurs pods, et le premier pod sera ajout\u00e9 maintenant. Une pod contient les h\u00f4tes et les serveurs de stockage primaire, qui seront ajout\u00e9s dans une \u00e9tape ult\u00e9rieure. Configurer une plage d\\'adresses IP r\u00e9serv\u00e9es pour le trafic de gestion interne de CloudStack. La plage d\\'IP r\u00e9serv\u00e9e doit \u00eatre unique pour chaque zone dans le nuage. message.add.primary=Renseignez les param\u00e8tres suivants pour ajouter un stockage principal message.add.primary.storage=Ajouter un nouveau stockage principal \u00e0 la zone , pod +message.add.region=Renseigner les informations suivantes pour ajouter une nouvelle r\u00e9gion. message.add.secondary.storage=Ajouter un nouveau stockage pour la zone message.add.service.offering=Renseigner les informations suivantes pour ajouter une nouvelle offre de service de calcul. message.add.system.service.offering=Ajouter les informations suivantes pour cr\u00e9er une nouvelle offre syst\u00e8me. @@ -1280,6 +1323,7 @@ message.creating.secondary.storage=Cr\u00e9ation du stockage secondaire message.creating.zone=Cr\u00e9ation de la zone message.decline.invitation=Voulez-vous refuser cette invitation au projet ? message.delete.account=\u00cates-vous s\u00fbr que vous souhaitez supprimer ce compte. +message.delete.affinity.group=Confirmer la supression de ce groupe d\\'affinit\u00e9. message.delete.gateway=\u00cates-vous s\u00fbr que vous voulez supprimer cette passerelle message.delete.project=\u00cates-vous s\u00fbr de vouloir supprimer ce projet ? message.delete.user=\u00cates-vous s\u00fbr que vous voulez supprimer cet utilisateur. @@ -1289,7 +1333,7 @@ message.delete.VPN.gateway=\u00cates-vous s\u00fbr que vous voulez supprimer cet message.desc.advanced.zone=Pour des topologies de r\u00e9seau plus sophistiqu\u00e9es. Ce mod\u00e8le de r\u00e9seau permet plus de flexibilit\u00e9 dans la d\u00e9finition des r\u00e9seaux d\\'invit\u00e9s et propose des offres personnalis\u00e9es telles que le support de pare-feu, VPN ou d\\'\u00e9quilibrage de charge. message.desc.basic.zone=Fournit un r\u00e9seau unique o\u00f9 chaque instance de machine virtuelle se voit attribuer une adresse IP directement depuis le r\u00e9seau. L\\'isolation des invit\u00e9s peut \u00eatre assur\u00e9 au niveau de la couche r\u00e9seau-3 tels que les groupes de s\u00e9curit\u00e9 (filtrage d\\'adresse IP source). message.desc.cluster=Chaque pod doit contenir un ou plusieurs clusters, et le premier cluster sera ajout\u00e9 tout de suite. Un cluster est un regroupement pour h\u00f4tes. Les h\u00f4tes d\\'un cluster ont tous un mat\u00e9riel identique, ex\u00e9cutent le m\u00eame hyperviseur, sont dans le m\u00eame sous-r\u00e9seau, et acc\u00e8dent au m\u00eame stockage partag\u00e9. Chaque cluster comprend une ou plusieurs h\u00f4tes et un ou plusieurs serveurs de stockage principal. -message.desc.host=Chaque cluster doit contenir au moins un h\u00f4te (machine) pour ex\u00e9cuter des machines virtuelles invit\u00e9es, et le premier h\u00f4te sera ajout\u00e9 tout de suite. Pour un h\u00f4te fonctionnant dans CloudStack, vous devez installer un logiciel hyperviseur sur l\\'h\u00f4te, attribuer une adresse IP \u00e0 l\\'h\u00f4te, et s\\'assurer que l\\'h\u00f4te est connect\u00e9 au serveur d\\'administration CloudStack.

    Indiquer le nom de l\\'h\u00f4te ou son adresse IP, l\\'identifiant de connexion (g\u00e9n\u00e9ralement root) et le mot de passe ainsi que toutes les \u00e9tiquettes permettant de classer les h\u00f4tes. +message.desc.host=Chaque cluster doit contenir au moins un h\u00f4te (machine) pour ex\u00e9ctuer des machines virtuelles invit\u00e9es, et le premier h\u00f4te sera ajout\u00e9e maintenant. Pour un h\u00f4te fonctionnant dans CloudStack, vous devez installer un logiciel hyperviseur sur l\\'h\u00f4te, attribuer une adresse IP \u00e0 l\\'h\u00f4te, et s\\'assurer que l\\'h\u00f4te est connect\u00e9 au serveur d\\'administration CloudStack.

    Indiquer le nom de l\\'h\u00f4te ou son adresse IP, l\\'identifiant de connexion (g\u00e9n\u00e9ralement root) et le mot de passe ainsi que toutes les \u00e9tiquettes permettant de classer les h\u00f4tes. message.desc.primary.storage=Chaque cluster doit contenir un ou plusieurs serveurs de stockage principal, et le premier sera ajout\u00e9 tout de suite. Le stockage principal contient les volumes de disque pour les machines virtuelles s\\'ex\u00e9cutant sur les h\u00f4tes dans le cluster. Utiliser les protocoles standards pris en charge par l\\'hyperviseur sous-jacent. message.desc.secondary.storage=Chaque zone doit avoir au moins un serveur NFS ou un serveur de stockage secondaire, et sera ajout\u00e9 en premier tout de suite. Le stockage secondaire entrepose les mod\u00e8les de machines virtuelles, les images ISO et les images disques des volumes des machines virtuelles. Ce serveur doit \u00eatre accessible pour toutes les machines h\u00f4tes dans la zone.

    Saisir l\\'adresse IP et le chemin d\\'export. message.desc.zone=Une zone est la plus grande unit\u00e9 organisationnelle dans CloudStack, et correspond typiquement \u00e0 un centre de donn\u00e9es. Les zones fournissent un isolement physique et de la redondance. Une zone est constitu\u00e9e d\\'un ou plusieurs pods (dont chacun contient les h\u00f4tes et les serveurs de stockage principal) et un serveur de stockage secondaire qui est partag\u00e9e par tous les pods dans la zone. @@ -1388,6 +1432,8 @@ message.please.wait.while.zone.is.being.created=Patienter pendant la cr\u00e9ati message.project.invite.sent=Invitation envoy\u00e9e ; les utilisateurs seront ajout\u00e9s apr\u00e8s acceptation de l\\'invitation message.public.traffic.in.advanced.zone=Le trafic public est g\u00e9n\u00e9r\u00e9 lorsque les machines virtuelles dans le nuage acc\u00e8dent \u00e0 Internet. Des adresses IP publiquement accessibles doivent \u00eatre pr\u00e9vues \u00e0 cet effet. Les utilisateurs peuvent utiliser l\\'interface d\\'administration de CloudStack pour acqu\u00e9rir ces adresses IP qui impl\u00e9menteront une translation d\\'adresse NAT entre le r\u00e9seau d\\'invit\u00e9 et le r\u00e9seau public.

    Fournir au moins une plage d\\'adresses IP pour le trafic Internet. message.public.traffic.in.basic.zone=Le trafic public est g\u00e9n\u00e9r\u00e9 lorsque les machines virtuelles dans le nuage acc\u00e8dent \u00e0 Internet ou fournissent des services \u00e0 des utilisateurs sur Internet. Des adresses IP publiquement accessibles doivent \u00eatre pr\u00e9vus \u00e0 cet effet. Quand une instance est cr\u00e9\u00e9e, une adresse IP publique depuis un ensemble d\\'adresses IP publiques sera allou\u00e9e \u00e0 l\\'instance, en plus de l\\'adresse IP de l\\'invit\u00e9. La translation d\\'adresses statique NAT 1-1 sera mises en place automatiquement entre l\\'adresse IP publique et l\\'adresse IP de l\\'invit\u00e9. Les utilisateurs peuvent \u00e9galement utiliser l\\'interface d\\'administration CloudStack pour acqu\u00e9rir des adresses IP suppl\u00e9mentaires pour ajouter une translation d\\'adresse statique NAT entre leurs instances et le r\u00e9seau d\\'adresses IP publiques. +message.redirecting.region=Redirection vers r\u00e9gion... +message.remove.region=Confirmer que vous souhaitez supprimer cette r\u00e9gion depuis ce serveur d\\'administration ? message.remove.vpc=Confirmer la suppression du VPC message.remove.vpn.access=\u00cates-vous s\u00fbr que vous souhaitez supprimer l\\'acc\u00e8s VPN \u00e0 l\\'utilisateur suivant. message.reset.password.warning.notPasswordEnabled=Le mod\u00e8le de cette instance a \u00e9t\u00e9 cr\u00e9\u00e9 sans la gestion de mot de passe @@ -1412,7 +1458,9 @@ message.specify.url=Renseigner l\\'URL message.step.1.continue=S\u00e9lectionnez un mod\u00e8le ou une image ISO pour continuer message.step.1.desc=S\u00e9lectionnez un mod\u00e8le pour votre nouvelle instance virtuelle. Vous pouvez \u00e9galement choisir un mod\u00e8le vierge sur lequel une image ISO pourra \u00eatre install\u00e9e. message.step.2.continue=S\u00e9lectionnez une offre de service pour continuer +message.step.2.desc= message.step.3.continue=S\u00e9lectionnez un offre de service de disque pour continuer +message.step.3.desc= message.step.4.continue=S\u00e9lectionnez au moins un r\u00e9seau pour continuer message.step.4.desc=S\u00e9lectionnez le r\u00e9seau principal auquel votre instance va \u00eatre connect\u00e9. message.storage.traffic=Trafic entre les ressources internes de CloudStack, incluant tous les composants qui communiquent avec le serveur d\\'administration, tels que les h\u00f4tes et les machines virtuelles Syst\u00e8mes CloudStack. Veuillez configurer le trafic de stockage ici. diff --git a/client/WEB-INF/classes/resources/messages_it_IT.properties b/client/WEB-INF/classes/resources/messages_it_IT.properties index f0c6524a3f0..78323b02578 100644 --- a/client/WEB-INF/classes/resources/messages_it_IT.properties +++ b/client/WEB-INF/classes/resources/messages_it_IT.properties @@ -433,7 +433,6 @@ 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.management=Management\: Traffico di rete tra le risorse interne di CloudStack, incluso qualsiasi componente che comunichi con il Management Server, come ad esempio gli host e le VM di Sistema di CloudStack 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. diff --git a/client/WEB-INF/classes/resources/messages_ja.properties b/client/WEB-INF/classes/resources/messages_ja.properties index e4ea7944048..e483a97804b 100644 --- a/client/WEB-INF/classes/resources/messages_ja.properties +++ b/client/WEB-INF/classes/resources/messages_ja.properties @@ -785,7 +785,7 @@ label.os.preference=OS \u57fa\u672c\u8a2d\u5b9a label.os.type=OS \u306e\u7a2e\u985e label.owned.public.ips=\u6240\u6709\u3059\u308b\u30d1\u30d6\u30ea\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9 label.owner.account=\u6240\u6709\u8005\u30a2\u30ab\u30a6\u30f3\u30c8 -label.owner.domain=\u00e6\u0089\u0080\u00e6\u009c\u0089\u00e8\u0080\u0085\u00e3\u0083\u0089\u00e3\u0083\u00a1\u00e3\u0082\u00a4\u00e3\u0083\u00b3 +label.owner.domain=\u00e6\u0089\u0080\u00e6\u009c\u0089\u00e8\u0080 label.parent.domain=\u89aa\u30c9\u30e1\u30a4\u30f3 label.password.enabled=\u30d1\u30b9\u30ef\u30fc\u30c9\u7ba1\u7406\u6709\u52b9 label.password=\u30d1\u30b9\u30ef\u30fc\u30c9 @@ -1125,7 +1125,6 @@ label.zone.type=\u30be\u30fc\u30f3\u306e\u7a2e\u985e label.zone=\u30be\u30fc\u30f3 label.zone.wide=\u30be\u30fc\u30f3\u5168\u4f53 label.zoneWizard.trafficType.guest=\u30b2\u30b9\u30c8\: \u30a8\u30f3\u30c9\u30e6\u30fc\u30b6\u30fc\u4eee\u60f3\u30de\u30b7\u30f3\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af -label.zoneWizard.trafficType.management=\u7ba1\u7406\: \u30db\u30b9\u30c8\u3084\u30b7\u30b9\u30c6\u30e0VM\u306a\u3069\u3001\u7ba1\u7406\u30b5\u30fc\u30d0\u30fc\u3068\u901a\u4fe1\u3059\u308b\u3042\u3089\u3086\u308b\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u542b\u3081\u305f\u3001CloudStack\u5185\u90e8\u306e\u30ea\u30bd\u30fc\u30b9\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af label.zoneWizard.trafficType.public=\u30d1\u30d6\u30ea\u30c3\u30af\: \u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u3068\u30af\u30e9\u30a6\u30c9\u5185\u306e\u4eee\u60f3\u30de\u30b7\u30f3\u306e\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af label.zoneWizard.trafficType.storage=\u30b9\u30c8\u30ec\u30fc\u30b8\: VM\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3068\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u306e\u3088\u3046\u306a\u3001\u30d7\u30e9\u30a4\u30de\u30ea\u3068\u30bb\u30ab\u30f3\u30c0\u30ea\u306e\u30b9\u30c8\u30ec\u30fc\u30b8\u30b5\u30fc\u30d0\u30fc\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3002 managed.state=\u7ba1\u7406\u5bfe\u8c61\u72b6\u614b @@ -1214,7 +1213,6 @@ message.add.load.balancer=\u30be\u30fc\u30f3\u306b\u8ca0\u8377\u5206\u6563\u88c5 message.add.load.balancer.under.ip=\u8ca0\u8377\u5206\u6563\u898f\u5247\u304c\u6b21\u306e IP \u30a2\u30c9\u30ec\u30b9\u306b\u5bfe\u3057\u3066\u8ffd\u52a0\u3055\u308c\u307e\u3057\u305f\: message.add.network=\u30be\u30fc\u30f3 \u306b\u65b0\u3057\u3044\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u8ffd\u52a0\u3057\u307e\u3059 message.add.new.gateway.to.vpc=\u3053\u306e VPC \u306b\u65b0\u3057\u3044\u30b2\u30fc\u30c8\u30a6\u30a7\u30a4\u3092\u8ffd\u52a0\u3059\u308b\u305f\u3081\u306e\u60c5\u5831\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002 -message.add.pod.during.zone.creation=\u5404\u30be\u30fc\u30f3\u306b\u306f 1 \u3064\u4ee5\u4e0a\u306e\u30dd\u30c3\u30c9\u304c\u5fc5\u8981\u3067\u3059\u3002\u4eca\u3053\u3053\u3067\u6700\u521d\u306e\u30dd\u30c3\u30c9\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002\u30dd\u30c3\u30c9\u306f\u30db\u30b9\u30c8\u3068\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 \u30b5\u30fc\u30d0\u30fc\u304b\u3089\u69cb\u6210\u3055\u308c\u307e\u3059\u304c\u3001\u3053\u308c\u3089\u306f\u5f8c\u306e\u624b\u9806\u3067\u8ffd\u52a0\u3057\u307e\u3059\u3002\u6700\u521d\u306b\u3001CloudStack \u306e\u5185\u90e8\u7ba1\u7406\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u306e\u305f\u3081\u306b IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u3092\u4e88\u7d04\u3057\u307e\u3059\u3002IP \u30a2\u30c9\u30ec\u30b9\u306e\u7bc4\u56f2\u306f\u3001\u30af\u30e9\u30a6\u30c9\u5185\u306e\u5404\u30be\u30fc\u30f3\u3067\u91cd\u8907\u3057\u306a\u3044\u3088\u3046\u306b\u4e88\u7d04\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 message.add.pod=\u30be\u30fc\u30f3 \u306b\u65b0\u3057\u3044\u30dd\u30c3\u30c9\u3092\u8ffd\u52a0\u3057\u307e\u3059 message.add.primary.storage=\u30be\u30fc\u30f3 \u306e\u30dd\u30c3\u30c9 \u306b\u65b0\u3057\u3044\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3057\u307e\u3059 message.add.primary=\u65b0\u3057\u3044\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3059\u308b\u305f\u3081\u306b\u3001\u6b21\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002 @@ -1275,7 +1273,6 @@ message.delete.VPN.gateway=\u3053\u306e VPN \u30b2\u30fc\u30c8\u30a6\u30a7\u30a4 message.desc.advanced.zone=\u3088\u308a\u6d17\u7df4\u3055\u308c\u305f\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u6280\u8853\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002\u3053\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30e2\u30c7\u30eb\u3092\u9078\u629e\u3059\u308b\u3068\u3001\u3088\u308a\u67d4\u8edf\u306b\u30b2\u30b9\u30c8\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u5b9a\u7fa9\u3057\u3001\u30d5\u30a1\u30a4\u30a2\u30a6\u30a9\u30fc\u30eb\u3001VPN\u3001\u8ca0\u8377\u5206\u6563\u88c5\u7f6e\u306e\u30b5\u30dd\u30fc\u30c8\u306e\u3088\u3046\u306a\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3057\u305f\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30aa\u30d5\u30a1\u30ea\u30f3\u30b0\u3092\u63d0\u4f9b\u3067\u304d\u307e\u3059\u3002 message.desc.basic.zone=\u5404 VM \u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306b IP \u30a2\u30c9\u30ec\u30b9\u304c\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304b\u3089\u76f4\u63a5\u5272\u308a\u5f53\u3066\u3089\u308c\u308b\u3001\u5358\u4e00\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7 (\u9001\u4fe1\u5143 IP \u30a2\u30c9\u30ec\u30b9\u306e\u30d5\u30a3\u30eb\u30bf\u30fc) \u306e\u3088\u3046\u306a\u30ec\u30a4\u30e4\u30fc 3 \u30ec\u30d9\u30eb\u306e\u65b9\u6cd5\u3067\u30b2\u30b9\u30c8\u3092\u5206\u96e2\u3067\u304d\u307e\u3059\u3002 message.desc.cluster=\u5404\u30dd\u30c3\u30c9\u306b\u306f 1 \u3064\u4ee5\u4e0a\u306e\u30af\u30e9\u30b9\u30bf\u30fc\u304c\u5fc5\u8981\u3067\u3059\u3002\u4eca\u3053\u3053\u3067\u6700\u521d\u306e\u30af\u30e9\u30b9\u30bf\u30fc\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002\u30af\u30e9\u30b9\u30bf\u30fc\u306f\u30db\u30b9\u30c8\u3092\u30b0\u30eb\u30fc\u30d7\u5316\u3059\u308b\u65b9\u6cd5\u3067\u3059\u30021 \u3064\u306e\u30af\u30e9\u30b9\u30bf\u30fc\u5185\u306e\u30db\u30b9\u30c8\u306f\u3059\u3079\u3066\u540c\u4e00\u306e\u30cf\u30fc\u30c9\u30a6\u30a7\u30a2\u304b\u3089\u69cb\u6210\u3055\u308c\u3001\u540c\u3058\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u3092\u5b9f\u884c\u3057\u3001\u540c\u3058\u30b5\u30d6\u30cd\u30c3\u30c8\u4e0a\u306b\u3042\u308a\u3001\u540c\u3058\u5171\u6709\u30b9\u30c8\u30ec\u30fc\u30b8\u306b\u30a2\u30af\u30bb\u30b9\u3057\u307e\u3059\u3002\u5404\u30af\u30e9\u30b9\u30bf\u30fc\u306f 1 \u3064\u4ee5\u4e0a\u306e\u30db\u30b9\u30c8\u3068 1 \u3064\u4ee5\u4e0a\u306e\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 \u30b5\u30fc\u30d0\u30fc\u304b\u3089\u69cb\u6210\u3055\u308c\u307e\u3059\u3002 -message.desc.host=\u5404\u30af\u30e9\u30b9\u30bf\u30fc\u306b\u306f\u5c11\u306a\u304f\u3068\u3082 1 \u3064\u3001\u30b2\u30b9\u30c8 VM \u3092\u5b9f\u884c\u3059\u308b\u305f\u3081\u306e\u30db\u30b9\u30c8 (\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30fc) \u304c\u5fc5\u8981\u3067\u3059\u3002\u4eca\u3053\u3053\u3067\u6700\u521d\u306e\u30db\u30b9\u30c8\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002CloudStack \u3067\u30db\u30b9\u30c8\u3092\u6a5f\u80fd\u3055\u305b\u308b\u306b\u306f\u3001\u30db\u30b9\u30c8\u306b\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066 IP \u30a2\u30c9\u30ec\u30b9\u3092\u5272\u308a\u5f53\u3066\u3001\u30db\u30b9\u30c8\u304c CloudStack \u7ba1\u7406\u30b5\u30fc\u30d0\u30fc\u306b\u63a5\u7d9a\u3057\u3066\u3044\u308b\u3053\u3068\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002

    \u30db\u30b9\u30c8\u306e DNS \u540d\u307e\u305f\u306f IP \u30a2\u30c9\u30ec\u30b9\u3001\u30e6\u30fc\u30b6\u30fc\u540d (\u901a\u5e38\u306f root) \u3068\u30d1\u30b9\u30ef\u30fc\u30c9\u3001\u304a\u3088\u3073\u30db\u30b9\u30c8\u306e\u5206\u985e\u306b\u4f7f\u7528\u3059\u308b\u30e9\u30d9\u30eb\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002 message.desc.primary.storage=\u5404\u30af\u30e9\u30b9\u30bf\u30fc\u306b\u306f\u5c11\u306a\u304f\u3068\u3082 1 \u3064\u3001\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 \u30b5\u30fc\u30d0\u30fc\u304c\u5fc5\u8981\u3067\u3059\u3002\u4eca\u3053\u3053\u3067\u6700\u521d\u306e\u30b5\u30fc\u30d0\u30fc\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u306f\u3001\u30af\u30e9\u30b9\u30bf\u30fc\u5185\u306e\u30db\u30b9\u30c8\u4e0a\u3067\u52d5\u4f5c\u3059\u308b\u3059\u3079\u3066\u306e VM \u306e\u30c7\u30a3\u30b9\u30af \u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u683c\u7d0d\u3057\u307e\u3059\u3002\u57fa\u790e\u3068\u306a\u308b\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u3067\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u308b\u3001\u6a19\u6e96\u306b\u6e96\u62e0\u3057\u305f\u30d7\u30ed\u30c8\u30b3\u30eb\u3092\u4f7f\u7528\u3057\u3066\u304f\u3060\u3055\u3044\u3002 message.desc.secondary.storage=\u5404\u30be\u30fc\u30f3\u306b\u306f\u5c11\u306a\u304f\u3068\u3082 1 \u3064\u3001NFS \u3064\u307e\u308a\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 \u30b5\u30fc\u30d0\u30fc\u304c\u5fc5\u8981\u3067\u3059\u3002\u4eca\u3053\u3053\u3067\u6700\u521d\u306e\u30b5\u30fc\u30d0\u30fc\u3092\u8ffd\u52a0\u3057\u307e\u3059\u3002\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u306f VM \u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3001ISO \u30a4\u30e1\u30fc\u30b8\u3001\u304a\u3088\u3073VM \u30c7\u30a3\u30b9\u30af \u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3092\u683c\u7d0d\u3057\u307e\u3059\u3002\u3053\u306e\u30b5\u30fc\u30d0\u30fc\u306f\u30be\u30fc\u30f3\u5185\u306e\u3059\u3079\u3066\u306e\u30db\u30b9\u30c8\u3067\u4f7f\u7528\u3067\u304d\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002

    IP \u30a2\u30c9\u30ec\u30b9\u3068\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3055\u308c\u305f\u30d1\u30b9\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002 message.desc.zone=\u30be\u30fc\u30f3\u306f CloudStack \u74b0\u5883\u5185\u306e\u6700\u5927\u306e\u7d44\u7e54\u5358\u4f4d\u3067\u3001\u901a\u5e38\u3001\u5358\u4e00\u306e\u30c7\u30fc\u30bf\u30bb\u30f3\u30bf\u30fc\u306b\u76f8\u5f53\u3057\u307e\u3059\u3002\u30be\u30fc\u30f3\u306b\u3088\u3063\u3066\u7269\u7406\u7684\u306a\u5206\u96e2\u3068\u5197\u9577\u6027\u304c\u63d0\u4f9b\u3055\u308c\u307e\u3059\u3002\u30be\u30fc\u30f3\u306f 1 \u3064\u4ee5\u4e0a\u306e\u30dd\u30c3\u30c9 (\u5404\u30dd\u30c3\u30c9\u306f\u30db\u30b9\u30c8\u3068\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 \u30b5\u30fc\u30d0\u30fc\u304b\u3089\u69cb\u6210\u3055\u308c\u307e\u3059) \u3068\u3001\u30be\u30fc\u30f3\u5185\u306e\u3059\u3079\u3066\u306e\u30dd\u30c3\u30c9\u3067\u5171\u6709\u3055\u308c\u308b\u30bb\u30ab\u30f3\u30c0\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8 \u30b5\u30fc\u30d0\u30fc\u304b\u3089\u69cb\u6210\u3055\u308c\u307e\u3059\u3002 @@ -1347,7 +1344,7 @@ message.migrate.instance.to.ps=\u5225\u306e\u30d7\u30e9\u30a4\u30de\u30ea \u30b9 message.migrate.router.confirm=\u30eb\u30fc\u30bf\u30fc\u306e\u79fb\u884c\u5148\u306f\u6b21\u306e\u30db\u30b9\u30c8\u3067\u3088\u308d\u3057\u3044\u3067\u3059\u304b? message.migrate.systemvm.confirm=\u30b7\u30b9\u30c6\u30e0 VM \u306e\u79fb\u884c\u5148\u306f\u6b21\u306e\u30db\u30b9\u30c8\u3067\u3088\u308d\u3057\u3044\u3067\u3059\u304b? message.migrate.volume=\u5225\u306e\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u306b\u30dc\u30ea\u30e5\u30fc\u30e0\u3092\u79fb\u884c\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? -message.new.user=\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0081\u00ab\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0083\u00a6\u00e3\u0083\u00bc\u00e3\u0082\u00b6\u00e3\u0083\u00bc\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e8\u00a8\u00ad\u00e5\u00ae\u009a\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084 +message.new.user=\u00e3\u0082\u00a2\u00e3\u0082\u00ab\u00e3\u0082\u00a6\u00e3\u0083\u00b3\u00e3\u0083\u0088\u00e3\u0081\u00ab\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084\u00e3\u0083\u00a6\u00e3\u0083\u00bc\u00e3\u0082\u00b6\u00e3\u0083\u00bc\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083 message.no.network.support.configuration.not.true=\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u30b0\u30eb\u30fc\u30d7\u304c\u6709\u52b9\u306a\u30be\u30fc\u30f3\u304c\u7121\u3044\u305f\u3081\u3001\u8ffd\u52a0\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u6a5f\u80fd\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u624b\u9806 5. \u306b\u9032\u3093\u3067\u304f\u3060\u3055\u3044\u3002 message.no.network.support=\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u3068\u3057\u3066 vSphere \u3092\u9078\u629e\u3057\u307e\u3057\u305f\u304c\u3001\u3053\u306e\u30cf\u30a4\u30d1\u30fc\u30d0\u30a4\u30b6\u30fc\u306b\u8ffd\u52a0\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u6a5f\u80fd\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u624b\u9806 5. \u306b\u9032\u3093\u3067\u304f\u3060\u3055\u3044\u3002 message.no.projects.adminOnly=\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u304c\u3042\u308a\u307e\u305b\u3093\u3002
    \u7ba1\u7406\u8005\u306b\u65b0\u3057\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u4f5c\u6210\u3092\u4f9d\u983c\u3057\u3066\u304f\u3060\u3055\u3044\u3002 @@ -1397,7 +1394,6 @@ message.step.3.continue=\u7d9a\u884c\u3059\u308b\u306b\u306f\u30c7\u30a3\u30b9\u message.step.3.desc= message.step.4.continue=\u7d9a\u884c\u3059\u308b\u306b\u306f\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u5c11\u306a\u304f\u3068\u3082 1 \u3064\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044 message.step.4.desc=\u4eee\u60f3\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u304c\u63a5\u7d9a\u3059\u308b\u30d7\u30e9\u30a4\u30de\u30ea \u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 -message.storage.traffic=\u30db\u30b9\u30c8\u3084 CloudStack \u30b7\u30b9\u30c6\u30e0 VM \u306a\u3069\u3001\u7ba1\u7406\u30b5\u30fc\u30d0\u30fc\u3068\u901a\u4fe1\u3059\u308b CloudStack \u306e\u5185\u90e8\u30ea\u30bd\u30fc\u30b9\u9593\u306e\u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3067\u3059\u3002\u3053\u3053\u3067\u30b9\u30c8\u30ec\u30fc\u30b8 \u30c8\u30e9\u30d5\u30a3\u30c3\u30af\u3092\u69cb\u6210\u3057\u3066\u304f\u3060\u3055\u3044\u3002 message.suspend.project=\u3053\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u4e00\u6642\u505c\u6b62\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? message.template.desc=VM \u306e\u8d77\u52d5\u306b\u4f7f\u7528\u3067\u304d\u308b OS \u30a4\u30e1\u30fc\u30b8 message.tooltip.dns.1=\u30be\u30fc\u30f3\u5185\u306e VM \u3067\u4f7f\u7528\u3059\u308b DNS \u30b5\u30fc\u30d0\u30fc\u306e\u540d\u524d\u3067\u3059\u3002\u30be\u30fc\u30f3\u306e\u30d1\u30d6\u30ea\u30c3\u30af IP \u30a2\u30c9\u30ec\u30b9\u304b\u3089\u3001\u3053\u306e\u30b5\u30fc\u30d0\u30fc\u306b\u901a\u4fe1\u3067\u304d\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002 @@ -1422,8 +1418,8 @@ message.Zone.creation.complete=\u30be\u30fc\u30f3\u304c\u4f5c\u6210\u3055\u308c\ message.zone.creation.complete.would.you.like.to.enable.this.zone=\u30be\u30fc\u30f3\u304c\u4f5c\u6210\u3055\u308c\u307e\u3057\u305f\u3002\u3053\u306e\u30be\u30fc\u30f3\u3092\u6709\u52b9\u306b\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? message.zone.no.network.selection=\u9078\u629e\u3057\u305f\u30be\u30fc\u30f3\u3067\u306f\u3001\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u9078\u629e\u3067\u304d\u307e\u305b\u3093\u3002 message.zone.step.1.desc=\u30be\u30fc\u30f3\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af \u30e2\u30c7\u30eb\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002 -message.zone.step.2.desc=\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084Zone\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e5\u0085\u00a5\u00e5\u008a\u009b\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 -message.zone.step.3.desc=\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084Pod\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083\u0085\u00e5\u00a0\u00b1\u00e3\u0082\u0092\u00e5\u0085\u00a5\u00e5\u008a\u009b\u00e3\u0081\u0097\u00e3\u0081\u00a6\u00e3\u0081\u008f\u00e3\u0081\u00a0\u00e3\u0081\u0095\u00e3\u0081\u0084\u00e3\u0080\u0082 +message.zone.step.2.desc=\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084Zone\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083 +message.zone.step.3.desc=\u00e6\u0096\u00b0\u00e3\u0081\u0097\u00e3\u0081\u0084Pod\u00e3\u0082\u0092\u00e8\u00bf\u00bd\u00e5\u008a\u00a0\u00e3\u0081\u0099\u00e3\u0082\u008b\u00e3\u0081\u009f\u00e3\u0082\u0081\u00e3\u0081\u00ab\u00e3\u0080\u0081\u00e6\u00ac\u00a1\u00e3\u0081\u00ae\u00e6\u0083 message.zoneWizard.enable.local.storage=\u8b66\u544a\: \u3053\u306e\u30be\u30fc\u30f3\u306e\u30ed\u30fc\u30ab\u30eb \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u6709\u52b9\u306b\u3059\u308b\u5834\u5408\u306f\u3001\u30b7\u30b9\u30c6\u30e0 VM \u306e\u8d77\u52d5\u5834\u6240\u306b\u5fdc\u3058\u3066\u6b21\u306e\u64cd\u4f5c\u304c\u5fc5\u8981\u3067\u3059\u3002

    1. \u30b7\u30b9\u30c6\u30e0 VM \u3092\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3067\u8d77\u52d5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u5834\u5408\u306f\u3001\u30d7\u30e9\u30a4\u30de\u30ea \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u4f5c\u6210\u3057\u305f\u5f8c\u3067\u30be\u30fc\u30f3\u306b\u8ffd\u52a0\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u307e\u305f\u3001\u7121\u52b9\u72b6\u614b\u306e\u30be\u30fc\u30f3\u3092\u8d77\u52d5\u3059\u308b\u5fc5\u8981\u3082\u3042\u308a\u307e\u3059\u3002

    2. \u30b7\u30b9\u30c6\u30e0 VM \u3092\u30ed\u30fc\u30ab\u30eb \u30b9\u30c8\u30ec\u30fc\u30b8\u3067\u8d77\u52d5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u5834\u5408\u306f\u3001system.vm.use.local.storage \u3092 true \u306b\u8a2d\u5b9a\u3057\u3066\u304b\u3089\u30be\u30fc\u30f3\u3092\u6709\u52b9\u306b\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002


    \u7d9a\u884c\u3057\u3066\u3082\u3088\u308d\u3057\u3044\u3067\u3059\u304b? mode=\u30e2\u30fc\u30c9 network.rate=\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u901f\u5ea6 diff --git a/client/WEB-INF/classes/resources/messages_ko_KR.properties b/client/WEB-INF/classes/resources/messages_ko_KR.properties index 0a4f9903eb0..766fc607648 100644 --- a/client/WEB-INF/classes/resources/messages_ko_KR.properties +++ b/client/WEB-INF/classes/resources/messages_ko_KR.properties @@ -1194,7 +1194,6 @@ message.add.load.balancer.under.ip=\ub2e4\uc74c IP \uc8fc\uc18c\uc5d0 \ub300\ud5 message.add.load.balancer=Zone\uc5d0 \ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uc7a5\uce58\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. message.add.network=Zone \uc5d0 \uc0c8\ub85c\uc6b4 \ub124\ud2b8\uc6cc\ud06c\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. message.add.new.gateway.to.vpc=\ud604\uc7ac VPC\uc5d0 \uc0c8\ub85c\uc6b4 \uac8c\uc774\ud2b8\uc6e8\uc774\ub97c \ucd94\uac00\ud558\uae30 \uc704\ud55c \uc815\ubcf4\ub97c \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624. -message.add.pod.during.zone.creation=\uac01 Zone\uc5d0\ub294 \ud55c \uac1c \uc774\uc0c1 Pod\uac00 \ud544\uc694\ud569\ub2c8\ub2e4. \uc9c0\uae08 \uc5ec\uae30\uc11c \uccab\ubc88\uc9f8 Pod\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. Pod\ub294 \ud638\uc2a4\ud2b8\uc640 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \uc11c\ubc84\uc5d0\uc11c \uad6c\uc131\ud569\ub2c8\ub2e4\ub9cc \uc774\ub294 \ub2e4\uc74c \uc21c\uc11c\ub85c \ucd94\uac00\ud569\ub2c8\ub2e4. \ub9e8 \ucc98\uc74c CloudStack \ub0b4\ubd80 \uad00\ub9ac \ud2b8\ub798\ud53d\uc744 \uc704\ud574\uc11c IP \uc8fc\uc18c \ubc94\uc704\ub97c \uc608\uc57d\ud569\ub2c8\ub2e4. IP \uc8fc\uc18c \ubc94\uc704\ub294 \ud074\ub77c\uc6b0\ub4dc \ub0b4\ubd80 \uac01 Zone\uc5d0\uc11c \uc911\ubcf5 \ud558\uc9c0 \uc54a\uac8c \uc608\uc57d\ud560 \ud544\uc694\uac00 \uc788\uc2b5\ub2c8\ub2e4. message.add.pod=Zone \uc5d0 \uc0c8\ub85c\uc6b4 Pod\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. message.add.primary.storage=Zone Pod \uc5d0 \uc0c8\ub85c\uc6b4 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. message.add.primary=\uc0c8\ub85c\uc6b4 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\ub97c \ucd94\uac00\ud558\uae30 \uc704\ud574 \uc544\ub798 \ud30c\ub77c\ubbf8\ud130\ub97c \uc9c0\uc815\ud574 \uc8fc\uc2ed\uc2dc\uc624. @@ -1254,7 +1253,6 @@ message.delete.VPN.gateway=\ud604\uc7ac VPN \uac8c\uc774\ud2b8\uc6e8\uc774\ub97c message.desc.advanced.zone=\ubcf4\ub2e4 \uc138\ub828\ub41c \ub124\ud2b8\uc6cc\ud06c \uae30\uc220\uc744 \uc9c0\uc6d0\ud569\ub2c8\ub2e4. \uc774 \ub124\ud2b8\uc6cc\ud06c \ubaa8\ub378\uc744 \uc120\ud0dd\ud558\uba74, \ubcf4\ub2e4 \uc720\uc5f0\ud558\uac8c \uac8c\uc2a4\ud2b8 \ub124\ud2b8\uc6cc\ud06c\ub97c \uc815\ud558\uace0 \ubc29\ud654\ubcbd(fire wall), VPN, \ub124\ud2b8\uc6cc\ud06c \ub85c\ub4dc \uacf5\uc720 \uc7a5\uce58 \uae30\uc220 \uc9c0\uc6d0\uc640 \uac19\uc740 \uc0ac\uc6a9\uc790 \uc9c0\uc815 \ud55c \ub124\ud2b8\uc6cc\ud06c \uc81c\uacf5\uc744 \uc81c\uacf5\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. message.desc.basic.zone=\uac01 VM \uc778\uc2a4\ud134\uc2a4\uc5d0 IP \uc8fc\uc18c\uac00 \ub124\ud2b8\uc6cc\ud06c\uc5d0\uc11c \uc9c1\uc811 \ud560\ub2f9\ud560 \uc218 \uc788\ub294 \ub2e8\uc77c \ub124\ud2b8\uc6cc\ud06c\ub97c \uc81c\uacf5\ud569\ub2c8\ub2e4. \ubcf4\uc548 \uadf8\ub8f9 (\uc804\uc1a1\uc6d0 IP \uc8fc\uc18c \ud544\ud130)\uacfc \uac19\uc740 \uce35 \uc138 \uac00\uc9c0 \ub808\ubca8 \ubc29\ubc95\uc73c\ub85c \uac8c\uc2a4\ud2b8\ub97c \ubd84\ub9ac\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. message.desc.cluster=\uac01 Pod\uc5d0\ub294 \ud55c \uac1c \uc774\uc0c1 \ud074\ub7ec\uc2a4\ud130\uac00 \ud544\uc694\ud569\ub2c8\ub2e4. \uc9c0\uae08 \uc5ec\uae30\uc11c \ucd5c\ucd08 \ud074\ub7ec\uc2a4\ud130\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. \ud074\ub7ec\uc2a4\ud130\ub294 \ud638\uc2a4\ud2b8\ub97c \uadf8\ub8f9\ud654 \ud558\ub294 \ubc29\ubc95\uc785\ub2c8\ub2e4. \ud55c \ud074\ub7ec\uc2a4\ud130 \ub0b4\ubd80 \ud638\uc2a4\ud2b8\ub294 \ubaa8\ub450 \ub3d9\uc77c\ud55c \ud558\ub4dc\uc6e8\uc5b4\uc5d0\uc11c \uad6c\uc131\ub418\uc5b4 \uac19\uc740 \ud558\uc774\ud37c \ubc14\uc774\uc800\ub97c \uc2e4\ud589\ud558\uace0 \uac19\uc740 \uc11c\ube0c \ub124\ud2b8\uc6cc\ud06c\uc0c1\uc5d0 \uc788\uc5b4 \uac19\uc740 \uacf5\uc720 \uc2a4\ud1a0\ub9ac\uc9c0\uc5d0 \uc811\uadfc \ud569\ub2c8\ub2e4. \uac01 \ud074\ub7ec\uc2a4\ud130\ub294 \ud55c \uac1c \uc774\uc0c1 \ud638\uc2a4\ud2b8\uc640 \ud55c \uac1c \uc774\uc0c1 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \uc11c\ubc84\uc5d0\uc11c \uad6c\uc131\ub429\ub2c8\ub2e4. -message.desc.host=\uac01 \ud074\ub7ec\uc2a4\ud130\uc5d0\ub294 \uc801\uc5b4\ub3c4 \ud55c \uac1c \uc774\uc0c1 \uac8c\uc2a4\ud2b8 VM\ub97c \uc2e4\ud589\ud558\uae30 \uc704\ud55c \ud638\uc2a4\ud2b8 (\ucef4\ud4e8\ud130)\uac00 \ud544\uc694\ud569\ub2c8\ub2e4. \uc9c0\uae08 \uc5ec\uae30\uc11c \uccab\ubc88\uc9f8 \ud638\uc2a4\ud2b8\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. CloudStack\uc73c\ub85c \ud638\uc2a4\ud2b8\ub97c \ub3d9\uc791\ud558\ub824\uba74 \ud638\uc2a4\ud2b8\uc5d0\uac8c \ud558\uc774\ud37c \ubc14\uc774\uc800\ub97c \uc124\uce58\ud558\uace0 IP \uc8fc\uc18c\ub97c \ud560\ub2f9\ud574 \ud638\uc2a4\ud2b8\uac00 CloudStack \uad00\ub9ac \uc11c\ubc84\uc5d0 \uc811\uc18d\ud558\ub3c4\ub85d \ud569\ub2c8\ub2e4.

    \ud638\uc2a4\ud2b8 DNS \uba85 \ub610\ub294 IP \uc8fc\uc18c, \uc0ac\uc6a9\uc790\uba85(\uc6d0\ub798 root)\uacfc \uc554\ud638 \ubc0f \ud638\uc2a4\ud2b8 \ubd84\ub958\uc5d0 \uc0ac\uc6a9\ud558\ub294 \ub77c\ubca8\uc744 \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. message.desc.primary.storage=\uac01 \ud074\ub7ec\uc2a4\ud130\uc5d0\ub294 \uc801\uc5b4\ub3c4 \ud55c \uac1c \uc774\uc0c1\uc758 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \uc11c\ubc84\uac00 \ud544\uc694\ud569\ub2c8\ub2e4. \uc9c0\uae08 \uc5ec\uae30\uc11c \uccab\ubc88\uc9f8 \uc11c\ubc84\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0\ub294 \ud074\ub7ec\uc2a4\ud130 \ub0b4 \ubd80 \ud638\uc2a4\ud2b8\uc0c1\uc5d0\uc11c \ub3d9\uc791\ud558\ub294 \ubaa8\ub4e0 VM \ub514\uc2a4\ud06c \ubcfc\ub968\uc744 \ud3ec\ud568\ud569\ub2c8\ub2e4. \uae30\ubcf8\uc801\uc73c\ub85c \ud558\uc774\ud37c \ubc14\uc774\uc800\uc5d0\uc11c \uae30\uc220 \uc9c0\uc6d0\ub418\ub294 \ud45c\uc900\uc5d0 \uc900\uac70\ud55c \ud504\ub85c\ud1a0\ucf5c\uc744 \uc0ac\uc6a9\ud574 \uc8fc\uc2ed\uc2dc\uc624. message.desc.secondary.storage=\uac01 Zone\uc5d0\ub294 \uc801\uc5b4\ub3c4 \ud55c \uac1c \uc774\uc0c1\uc758 NFS \uc989 2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0 \uc11c\ubc84\uac00 \ud544\uc694\ud569\ub2c8\ub2e4. \uc9c0\uae08 \uc5ec\uae30\uc11c \uccab\ubc88\uc9f8 \uc11c\ubc84\ub97c \ucd94\uac00\ud569\ub2c8\ub2e4. 2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0\ub294 VM \ud15c\ud50c\ub9bf, ISO \uc774\ubbf8\uc9c0 \ubc0f VM \ub514\uc2a4\ud06c \ubcfc\ub968 \uc2a4\ub0c5\uc0f7\uc744 \ud3ec\ud568\ud569\ub2c8\ub2e4. \uc774 \uc11c\ubc84\ub294 Zone\ub0b4 \ubaa8\ub4e0 \ud638\uc2a4\ud2b8\uc5d0\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4.

    IP \uc8fc\uc18c\uc640 \ub0b4\ubcf4\ub0b4\ub0bc \uacbd\ub85c\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. message.desc.zone=Zone\uc740 CloudStack \ud658\uacbd\ub0b4 \ucd5c\ub300 \uc870\uc9c1 \ub2e8\uc704\ub85c \uc6d0\ub798 \ub2e8\uc77c \ub370\uc774\ud130 \uc13c\ud130\uc5d0 \ud574\ub2f9\ud569\ub2c8\ub2e4. Zone\uc5d0 \ud574\uc11c \ubb3c\ub9ac\uc801\uc778 \ubd84\ub9ac\uc640 \uc911\ubcf5\uc131\uc774 \uc81c\uacf5\ub429\ub2c8\ub2e4. Zone\uc740 \ud55c \uac1c \uc774\uc0c1 Pod( \uac01 Pod\ub294 \ud638\uc2a4\ud2b8\uc640 \uae30\ubcf8 \uc2a4\ud1a0\ub9ac\uc9c0 \uc11c\ubc84\uc5d0\uc11c \uad6c\uc131)\uc640 Zone\ub0b4 \ubaa8\ub4e0 Pod\ub85c \uacf5\uc720\ub418\ub294 2\ucc28 \uc2a4\ud1a0\ub9ac\uc9c0 \uc11c\ubc84\ub85c \uad6c\uc131\ub429\ub2c8\ub2e4. @@ -1382,7 +1380,6 @@ message.step.3.continue=\uc2e4\ud589\ud558\ub824\uba74 \ub514\uc2a4\ud06c\uc81c\ message.step.3.desc= message.step.4.continue=\uc2e4\ud589\ud558\ub824\uba74 \ub124\ud2b8\uc6cc\ud06c\ub97c \uc801\uc5b4\ub3c4 \ud55c \uac1c \uc774\uc0c1 \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. message.step.4.desc=\uac00\uc0c1 \uc778\uc2a4\ud134\uc2a4\uac00 \uc811\uc18d\ud558\ub294 \uae30\ubcf8 \ub124\ud2b8\uc6cc\ud06c\ub97c \uc120\ud0dd\ud574 \uc8fc\uc2ed\uc2dc\uc624. -message.storage.traffic=\ud638\uc2a4\ud2b8\ub098 CloudStack \uc2dc\uc2a4\ud15c VM \ub4f1 \uad00\ub9ac \uc11c\ubc84\uc640 \ud1b5\uc2e0\ud558\ub294 CloudStack \ub0b4\ubd80 \uc790\uc6d0\uac04 \ud2b8\ub798\ud53d\uc785\ub2c8\ub2e4. \uc5ec\uae30\uc11c \uc2a4\ud1a0\ub9ac\uc9c0 \ud2b8\ub798\ud53d\uc744 \uad6c\uc131\ud574 \uc8fc\uc2ed\uc2dc\uc624. message.suspend.project=\ud604\uc7ac \ud504\ub85c\uc81d\ud2b8\ub97c \uc77c\uc2dc\uc815\uc9c0\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? message.template.desc=VM\uc758 \uc2dc\uc791\uc5d0 \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 OS \uc774\ubbf8\uc9c0 message.tooltip.dns.1=Zone\ub0b4 VM \ub85c \uc0ac\uc6a9\ud558\ub294 DNS \uc11c\ubc84 \uc774\ub984\uc785\ub2c8\ub2e4. Zone \uacf5\uac1c IP \uc8fc\uc18c\uc5d0\uc11c \uc774 \uc11c\ubc84\uc5d0 \ud1b5\uc2e0\ud560 \uc218 \uc788\uc5b4\uc57c \ud569\ub2c8\ub2e4. diff --git a/client/WEB-INF/classes/resources/messages_pt_BR.properties b/client/WEB-INF/classes/resources/messages_pt_BR.properties index 780b844c0b7..23123c16764 100644 --- a/client/WEB-INF/classes/resources/messages_pt_BR.properties +++ b/client/WEB-INF/classes/resources/messages_pt_BR.properties @@ -1113,7 +1113,6 @@ label.zones=Zonas label.zone.type=Tipo de Zona label.zone.wide=Zone-Wide label.zoneWizard.trafficType.guest=H\u00f3spede\: tr\u00e1fego entre m\u00e1quinas virtuais de usu\u00e1rios finais -label.zoneWizard.trafficType.management=Ger\u00eancia\: tr\u00e1fego entre recursos internos do CloudStack, incluindo quaisquer componentes que se comunicam com o servidor de gerenciamento, tais como hosts e m\u00e1quinas virtuais de sistema do CloudStack label.zoneWizard.trafficType.public=P\u00fablico\: tr\u00e1fego entre a internet e m\u00e1quinas virtuais na nuvem. label.zoneWizard.trafficType.storage=Storage\: tr\u00e1fego entre servidores de storage prim\u00e1ria e secund\u00e1ria, tais como templates de m\u00e1quinas virtuais e snapshots label.zone=Zona diff --git a/client/WEB-INF/classes/resources/messages_ru_RU.properties b/client/WEB-INF/classes/resources/messages_ru_RU.properties index 5f492c07329..5818abc9199 100644 --- a/client/WEB-INF/classes/resources/messages_ru_RU.properties +++ b/client/WEB-INF/classes/resources/messages_ru_RU.properties @@ -1131,7 +1131,6 @@ message.additional.networks.desc=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u044 message.add.load.balancer=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0443 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u0437\u043e\u043d\u0443 message.add.load.balancer.under.ip=\u041f\u0440\u0430\u0432\u0438\u043b\u043e \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0431\u044b\u043b \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u0432 IP\: message.add.network=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u043e\u0432\u0443\u044e \u0441\u0435\u0442\u044c \u0434\u043b\u044f \u0437\u043e\u043d\u044b\: -message.add.pod.during.zone.creation=\u041a\u0430\u0436\u0434\u0430\u044f \u0437\u043e\u043d\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043e\u0434\u0438\u043d \u0438\u043b\u0438 \u0431\u043e\u043b\u0435\u0435 \u0441\u0442\u0435\u043d\u0434\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u0441\u0435\u0439\u0447\u0430\u0441 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u0435 \u043f\u0435\u0440\u0432\u044b\u043c. \u0421\u0442\u0435\u043d\u0434 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0443\u0437\u043b\u044b \u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u044b \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u043c \u0448\u0430\u0433\u0435. \u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u044b\u0445 \u0430\u0434\u0440\u0435\u0441\u043e\u0432 IP \u0434\u043b\u044f \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0439 \u0441\u0435\u0442\u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f. \u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0440\u0435\u0437\u0435\u0440\u0432\u043d\u044b\u0445 IP \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u043c \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u0437\u043e\u043d\u044b \u043e\u0431\u043b\u0430\u043a\u0430. message.add.pod=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u0441\u0442\u0435\u043d\u0434 \u0434\u043b\u044f \u0437\u043e\u043d\u044b message.add.primary.storage=\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0434\u043b\u044f \u0437\u043e\u043d\u044b , \u0441\u0442\u0435\u043d\u0434\u0430 message.add.primary=\u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0434\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 @@ -1186,7 +1185,6 @@ message.delete.user=\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442 message.desc.advanced.zone=\u0414\u043b\u044f \u0431\u043e\u043b\u0435\u0435 \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u0439. \u042d\u0442\u0430 \u0441\u0435\u0442\u0435\u0432\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0443\u044e \u0433\u0438\u0431\u043a\u043e\u0441\u0442\u044c \u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0438 \u0433\u043e\u0441\u0442\u0435\u0432\u043e\u0439 \u0441\u0435\u0442\u0438 \u0438 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0443\u0441\u043b\u0443\u0433, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a \u043c\u0435\u0436\u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u044d\u043a\u0440\u0430\u043d, VPN, \u0438\u043b\u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438. message.desc.basic.zone=\u041f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0435\u0434\u0438\u0441\u0442\u0432\u0435\u043d\u043d\u0443\u044e \u0441\u0435\u0442\u044c, \u0433\u0434\u0435 \u043a\u0430\u0436\u0434\u0430\u044f \u0412\u041c \u0438\u043c\u0435\u0435\u0442 \u00ab\u0431\u0435\u043b\u044b\u0439\u00bb IP-\u0430\u0434\u0440\u0435\u0441 \u0441\u0435\u0442\u0438. \u0418\u0437\u043e\u043b\u044f\u0446\u0438\u0438 \u0433\u043e\u0441\u0442\u0435\u0439 \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0441\u0435\u0442\u0438 3-\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0433\u0440\u0443\u043f\u043f\u044b \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 (\u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f IP-\u0432\u0434\u0440\u0435\u0441\u043e\u0432) message.desc.cluster=\u041a\u0430\u0436\u0434\u044b\u0439 \u0441\u0442\u0435\u043d\u0434 \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u043c\u0435\u0442\u044c \u043e\u0434\u0438\u043d \u0438\u043b\u0438 \u0431\u043e\u043b\u0435\u0435 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u043e\u0432, \u043f\u0435\u0440\u0432\u044b\u0439 \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0432\u044b \u0441\u0435\u0439\u0447\u0430\u0441 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u0435. \u041a\u043b\u0430\u0441\u0442\u0435\u0440 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0433\u0440\u0443\u043f\u043f\u0443 \u0443\u0437\u043b\u043e\u0432. \u0423\u0437\u043b\u044b \u0432 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0435 \u0438\u043c\u0435\u044e\u0442 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u0435 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u0435, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u043e\u0434\u0438\u043d \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440, \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 \u043e\u0434\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u0438 \u0438\u043c\u0435\u044e\u0442 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043e\u0434\u043d\u043e\u043c\u0443 \u0438 \u0442\u043e\u043c\u0443 \u0436\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u043c\u0443 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0443. \u041a\u0430\u0436\u0434\u044b\u0439 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043e\u0434\u0438\u043d \u0438\u043b\u0438 \u0431\u043e\u043b\u0435\u0435 \u0443\u0437\u043b\u043e\u0432, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0438\u0435\u0442\u044c \u043e\u0434\u0438\u043d \u0438\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449. -message.desc.host=\u041a\u0430\u0436\u0434\u044b\u0439 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043a\u0430\u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u043e\u0434\u0438\u043d \u0443\u0437\u0435\u043b (\u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440) \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0412\u041c, \u043f\u0435\u0440\u0432\u044b\u0439 \u0438\u0437 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0432\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u0435 \u0441\u0435\u0439\u0447\u0430\u0441. \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0443\u0437\u043b\u0430 \u0432 CloudStack \u0432\u0430\u0436\u043d\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440\u0430 \u043d\u0430 \u0443\u0437\u0435\u043b, \u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0430 IP \u043a \u0443\u0437\u043b\u0443 \u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0443\u0437\u043b\u0430 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f CloudStack.

    \u0423\u043a\u0430\u0436\u0438\u0442\u0435 \u0438\u043c\u044f DNS \u0438\u043b\u0438 \u0430\u0434\u0440\u0435\u0441 IP, \u0438\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u043f\u0430\u0440\u043e\u043b\u044c \u043a \u041e\u0421 (\u043e\u0431\u044b\u0447\u043d\u043e root), \u0430 \u0442\u0430\u043a\u0436\u0435 \u043c\u0435\u0442\u043a\u0438 \u0434\u043b\u044f \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0443\u0437\u043b\u043e\u0432. message.desc.primary.storage=\u041a\u0430\u0436\u0434\u0430\u044f \u0433\u0440\u0443\u043f\u043f\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043e\u0434\u0438\u043d \u0438\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0435\u0440\u0432\u0438\u0447\u043d\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445, \u0438 \u043c\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u0435\u0439\u0447\u0430\u0441. \u041f\u0435\u0440\u0432\u0438\u0447\u043d\u0430\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u044b \u0436\u0435\u0441\u0442\u043a\u043e\u0433\u043e \u0434\u0438\u0441\u043a\u0430 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0445 \u043d\u0430 \u0443\u0437\u043b\u0430\u0445 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043b\u044e\u0431\u043e\u0439 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u044b\u0439 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440\u0430. message.desc.secondary.storage=\u041a\u0430\u0436\u0434\u0430\u044f \u0437\u043e\u043d\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u043e\u0431\u043b\u0430\u0434\u0430\u0442\u044c \u0445\u043e\u0442\u044f \u0431\u044b \u043e\u0434\u043d\u0438\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c NFS \u0438\u043b\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435\u043c \u0438 \u0438\u0445 \u043d\u0430\u0434\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c. \u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043e \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 \u0412\u041c, \u043e\u0431\u0440\u0430\u0437\u043e\u0432 ISO \u0438 \u0441\u043d\u0438\u043c\u043a\u043e\u0432 \u0412\u041c. \u042d\u0442\u043e\u0442 \u0441\u0435\u0440\u0432\u0435\u0440 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u0443\u0437\u043b\u043e\u0432 \u0437\u043e\u043d\u044b.

    \u041f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c IP-\u0430\u0434\u0440\u0435\u0441 \u0438 \u043f\u0443\u0442\u044c. message.desc.zone=layer 3 @@ -1311,7 +1309,6 @@ message.step.3.continue=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0434\ message.step.3.desc= message.step.4.continue=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0445\u043e\u0442\u044f \u0431\u044b \u043e\u0434\u043d\u0443 \u0441\u0435\u0442\u044c \u0434\u043b\u044f \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u044f. message.step.4.desc=\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u0443\u044e \u0441\u0435\u0442\u044c, \u043a \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u043c\u0430\u0448\u0438\u043d\u0430. -message.storage.traffic=\u0422\u0440\u0430\u0444\u0438\u043a \u043c\u0435\u0436\u0434\u0443 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u043c\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u0430\u043c\u0438 CloudStack, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0432\u0441\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0443\u044e\u0442 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f, \u0442\u0430\u043a\u0438\u0435 \u043a\u0430\u043a \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u0445\u043e\u0441\u0442\u044b \u0438 CloudStack \u0441\u0438\u0441\u0442\u0435\u043c\u044b. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u0442\u0435 \u0442\u0440\u0430\u0444\u0438\u043a \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0437\u0434\u0435\u0441\u044c. message.suspend.project=\u0412\u044b \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u0440\u0438\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442? message.template.desc=\u041e\u0431\u0440\u0430\u0437 \u041e\u0421, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u043e\u0439 \u0432 \u0412\u041c message.tooltip.dns.1=\u0418\u043c\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u0430 DNS \u0434\u043b\u044f \u0412\u041c \u044d\u0442\u043e\u0439 \u0437\u043e\u043d\u044b. \u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 \u044d\u0442\u043e\u0439 \u0437\u043e\u043d\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u043c\u0435\u0442\u044c \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u0434\u043e \u044d\u0442\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430. diff --git a/client/WEB-INF/classes/resources/messages_zh_CN.properties b/client/WEB-INF/classes/resources/messages_zh_CN.properties index c842979eb12..687ef60b3c1 100644 --- a/client/WEB-INF/classes/resources/messages_zh_CN.properties +++ b/client/WEB-INF/classes/resources/messages_zh_CN.properties @@ -1165,7 +1165,6 @@ label.zone.type=\u533a\u57df\u7c7b\u578b label.zone=\u533a\u57df label.zone.wide=\u6574\u4e2a\u533a\u57df label.zoneWizard.trafficType.guest=\u6765\u5bbe\u7f51\u7edc\: \u5ba2\u6237\u865a\u62df\u673a\u4e4b\u95f4\u7684\u7f51\u7edc\u6d41\u91cf -label.zoneWizard.trafficType.management=\u7ba1\u7406\u7f51\: CloudStack\u5185\u90e8\u8d44\u6e90\u4e4b\u95f4\u7684\u7f51\u7edc\u6d41\u91cf, \u5305\u62ec\u4e0e\u7ba1\u7406\u670d\u52a1\u5668\u4ea4\u4e92\u7684\u4efb\u4f55\u7ec4\u4ef6, \u6bd4\u5982\u4e3b\u673a\u548cCloudStack\u7cfb\u7edf\u865a\u62df\u673a label.zoneWizard.trafficType.public=\u516c\u5171\u7f51\u7edc\: \u4e91\u73af\u5883\u4e2d\u865a\u62df\u673a\u4e0e\u56e0\u7279\u7f51\u4e4b\u95f4\u7684\u7f51\u7edc\u6d41\u91cf. label.zoneWizard.trafficType.storage=\u5b58\u50a8\u7f51\: \u4e3b\u5b58\u50a8\u4e0e\u4e8c\u7ea7\u5b58\u50a8\u670d\u52a1\u5668\u4e4b\u95f4\u7684\u6d41\u91cf, \u6bd4\u5982\u865a\u673a\u6a21\u677f\u548c\u5feb\u7167 managed.state=\u6258\u7ba1\u72b6\u6001 @@ -1256,7 +1255,6 @@ message.add.load.balancer=\u5411\u533a\u57df\u4e2d\u6dfb\u52a0\u4e00\u4e2a\u8d1f message.add.load.balancer.under.ip=\u5df2\u5728\u4ee5\u4e0b IP \u4e0b\u6dfb\u52a0\u8d1f\u8f7d\u5e73\u8861\u5668\u89c4\u5219\: message.add.network=\u4e3a\u533a\u57df\u6dfb\u52a0\u4e00\u4e2a\u65b0\u7f51\u7edc\: message.add.new.gateway.to.vpc=\u8bf7\u6307\u5b9a\u5c06\u65b0\u7f51\u5173\u6dfb\u52a0\u5230\u6b64 VPC \u6240\u9700\u7684\u4fe1\u606f\u3002 -message.add.pod.during.zone.creation=\u6bcf\u4e2a\u533a\u57df\u4e2d\u5fc5\u987b\u5305\u542b\u4e00\u4e2a\u6216\u591a\u4e2a\u63d0\u4f9b\u70b9\uff0c\u73b0\u5728\u6211\u4eec\u5c06\u6dfb\u52a0\u7b2c\u4e00\u4e2a\u63d0\u4f9b\u70b9\u3002\u63d0\u4f9b\u70b9\u4e2d\u5305\u542b\u4e3b\u673a\u548c\u4e3b\u5b58\u50a8\u670d\u52a1\u5668\uff0c\u60a8\u5c06\u5728\u968f\u540e\u7684\u67d0\u4e2a\u6b65\u9aa4\u4e2d\u6dfb\u52a0\u8fd9\u4e9b\u4e3b\u673a\u548c\u670d\u52a1\u5668\u3002\u9996\u5148\uff0c\u8bf7\u4e3a CloudStack \u7684\u5185\u90e8\u7ba1\u7406\u6d41\u91cf\u914d\u7f6e\u4e00\u4e2a\u9884\u7559 IP \u5730\u5740\u8303\u56f4\u3002\u9884\u7559\u7684 IP \u8303\u56f4\u5bf9\u4e91\u4e2d\u7684\u6bcf\u4e2a\u533a\u57df\u6765\u8bf4\u5fc5\u987b\u552f\u4e00\u3002 message.add.pod=\u4e3a\u533a\u57df \u6dfb\u52a0\u4e00\u4e2a\u65b0\u63d0\u4f9b\u70b9 message.add.primary.storage=\u4e3a\u533a\u57df \u3001\u63d0\u4f9b\u70b9 \u6dfb\u52a0\u4e00\u4e2a\u65b0\u7684\u4e3b\u5b58\u50a8 message.add.primary=\u8bf7\u6307\u5b9a\u4ee5\u4e0b\u53c2\u6570\u4ee5\u6dfb\u52a0\u4e00\u4e2a\u65b0\u4e3b\u5b58\u50a8 @@ -1318,7 +1316,6 @@ message.delete.VPN.gateway=\u8bf7\u786e\u8ba4\u60a8\u786e\u5b9e\u8981\u5220\u966 message.desc.advanced.zone=\u9002\u7528\u4e8e\u66f4\u52a0\u590d\u6742\u7684\u7f51\u7edc\u62d3\u6251\u3002\u6b64\u7f51\u7edc\u6a21\u5f0f\u5728\u5b9a\u4e49\u6765\u5bbe\u7f51\u7edc\u5e76\u63d0\u4f9b\u9632\u706b\u5899\u3001VPN \u6216\u8d1f\u8f7d\u5e73\u8861\u5668\u652f\u6301\u7b49\u81ea\u5b9a\u4e49\u7f51\u7edc\u65b9\u6848\u65b9\u9762\u63d0\u4f9b\u4e86\u6700\u5927\u7684\u7075\u6d3b\u6027\u3002 message.desc.basic.zone=\u63d0\u4f9b\u4e00\u4e2a\u7f51\u7edc\uff0c\u5c06\u76f4\u63a5\u4ece\u6b64\u7f51\u7edc\u4e2d\u4e3a\u6bcf\u4e2a VM \u5b9e\u4f8b\u5206\u914d\u4e00\u4e2a IP\u3002\u53ef\u4ee5\u901a\u8fc7\u5b89\u5168\u7ec4\u7b49\u7b2c 3 \u5c42\u65b9\u5f0f\u63d0\u4f9b\u6765\u5bbe\u9694\u79bb(IP \u5730\u5740\u6e90\u8fc7\u6ee4)\u3002 message.desc.cluster=\u6bcf\u4e2a\u63d0\u4f9b\u70b9\u4e2d\u5fc5\u987b\u5305\u542b\u4e00\u4e2a\u6216\u591a\u4e2a\u7fa4\u96c6\uff0c\u73b0\u5728\u6211\u4eec\u5c06\u6dfb\u52a0\u7b2c\u4e00\u4e2a\u7fa4\u96c6\u3002\u7fa4\u96c6\u63d0\u4f9b\u4e86\u4e00\u79cd\u7f16\u7ec4\u4e3b\u673a\u7684\u65b9\u6cd5\u3002\u7fa4\u96c6\u4e2d\u7684\u6240\u6709\u4e3b\u673a\u90fd\u5177\u6709\u76f8\u540c\u7684\u786c\u4ef6\uff0c\u8fd0\u884c\u76f8\u540c\u7684\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\uff0c\u4f4d\u4e8e\u76f8\u540c\u7684\u5b50\u7f51\u4e2d\uff0c\u5e76\u8bbf\u95ee\u76f8\u540c\u7684\u5171\u4eab\u5b58\u50a8\u3002\u6bcf\u4e2a\u7fa4\u96c6\u7531\u4e00\u4e2a\u6216\u591a\u4e2a\u4e3b\u673a\u4ee5\u53ca\u4e00\u4e2a\u6216\u591a\u4e2a\u4e3b\u5b58\u50a8\u670d\u52a1\u5668\u7ec4\u6210\u3002 -message.desc.host=\u6bcf\u4e2a\u7fa4\u96c6\u4e2d\u5fc5\u987b\u81f3\u5c11\u5305\u542b\u4e00\u4e2a\u4e3b\u673a\u4ee5\u4f9b\u6765\u5bbe VM \u5728\u4e0a\u9762\u8fd0\u884c\uff0c\u73b0\u5728\u6211\u4eec\u5c06\u6dfb\u52a0\u7b2c\u4e00\u4e2a\u4e3b\u673a\u3002\u8981\u4f7f\u4e3b\u673a\u5728 CloudStack \u4e2d\u8fd0\u884c\uff0c\u5fc5\u987b\u5728\u6b64\u4e3b\u673a\u4e0a\u5b89\u88c5\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\u8f6f\u4ef6\uff0c\u4e3a\u5176\u5206\u914d\u4e00\u4e2a IP \u5730\u5740\uff0c\u5e76\u786e\u4fdd\u5c06\u5176\u8fde\u63a5\u5230 CloudStack \u7ba1\u7406\u670d\u52a1\u5668\u3002

    \u8bf7\u63d0\u4f9b\u4e3b\u673a\u7684 DNS \u6216 IP \u5730\u5740\u3001\u7528\u6237\u540d(\u901a\u5e38\u4e3a root)\u548c\u5bc6\u7801\uff0c\u4ee5\u53ca\u7528\u4e8e\u5bf9\u4e3b\u673a\u8fdb\u884c\u5206\u7c7b\u7684\u4efb\u4f55\u6807\u7b7e\u3002 message.desc.primary.storage=\u6bcf\u4e2a\u7fa4\u96c6\u4e2d\u5fc5\u987b\u5305\u542b\u4e00\u4e2a\u6216\u591a\u4e2a\u4e3b\u5b58\u50a8\u670d\u52a1\u5668\uff0c\u73b0\u5728\u6211\u4eec\u5c06\u6dfb\u52a0\u7b2c\u4e00\u4e2a\u4e3b\u5b58\u50a8\u670d\u52a1\u5668\u3002\u4e3b\u5b58\u50a8\u4e2d\u5305\u542b\u5728\u7fa4\u96c6\u4e2d\u7684\u4e3b\u673a\u4e0a\u8fd0\u884c\u7684\u6240\u6709 VM \u7684\u78c1\u76d8\u5377\u3002\u8bf7\u4f7f\u7528\u5e95\u5c42\u865a\u62df\u673a\u7ba1\u7406\u7a0b\u5e8f\u652f\u6301\u7684\u7b26\u5408\u6807\u51c6\u7684\u534f\u8bae\u3002 message.desc.secondary.storage=\u6bcf\u4e2a\u533a\u57df\u4e2d\u5fc5\u987b\u81f3\u5c11\u5305\u542b\u4e00\u4e2a NFS \u6216\u8f85\u52a9\u5b58\u50a8\u670d\u52a1\u5668\uff0c\u73b0\u5728\u6211\u4eec\u5c06\u6dfb\u52a0\u7b2c\u4e00\u4e2a NFS \u6216\u8f85\u52a9\u5b58\u50a8\u670d\u52a1\u5668\u3002\u8f85\u52a9\u5b58\u50a8\u7528\u4e8e\u5b58\u50a8 VM \u6a21\u677f\u3001ISO \u6620\u50cf\u548c VM \u78c1\u76d8\u5377\u5feb\u7167\u3002\u6b64\u670d\u52a1\u5668\u5fc5\u987b\u5bf9\u533a\u57df\u4e2d\u7684\u6240\u6709\u670d\u52a1\u5668\u53ef\u7528\u3002

    \u8bf7\u63d0\u4f9b IP \u5730\u5740\u548c\u5bfc\u51fa\u8def\u5f84\u3002 message.desc.zone=\u533a\u57df\u662f CloudStack \u4e2d\u6700\u5927\u7684\u7ec4\u7ec7\u5355\u4f4d\uff0c\u4e00\u4e2a\u533a\u57df\u901a\u5e38\u4e0e\u4e00\u4e2a\u6570\u636e\u4e2d\u5fc3\u76f8\u5bf9\u5e94\u3002\u533a\u57df\u53ef\u63d0\u4f9b\u7269\u7406\u9694\u79bb\u548c\u5197\u4f59\u3002\u4e00\u4e2a\u533a\u57df\u7531\u4e00\u4e2a\u6216\u591a\u4e2a\u63d0\u4f9b\u70b9\u4ee5\u53ca\u7531\u533a\u57df\u4e2d\u7684\u6240\u6709\u63d0\u4f9b\u70b9\u5171\u4eab\u7684\u4e00\u4e2a\u8f85\u52a9\u5b58\u50a8\u670d\u52a1\u5668\u7ec4\u6210\uff0c\u5176\u4e2d\u6bcf\u4e2a\u63d0\u4f9b\u70b9\u4e2d\u5305\u542b\u591a\u4e2a\u4e3b\u673a\u548c\u4e3b\u5b58\u50a8\u670d\u52a1\u5668\u3002 @@ -1448,7 +1445,6 @@ message.step.3.continue=\u8bf7\u9009\u62e9\u4e00\u79cd\u78c1\u76d8\u65b9\u6848\u message.step.3.desc= message.step.4.continue=\u8bf7\u81f3\u5c11\u9009\u62e9\u4e00\u4e2a\u7f51\u7edc\u4ee5\u7ee7\u7eed message.step.4.desc=\u8bf7\u9009\u62e9\u865a\u62df\u5b9e\u4f8b\u8981\u8fde\u63a5\u5230\u7684\u4e3b\u7f51\u7edc\u3002 -message.storage.traffic=CloudStack \u5185\u90e8\u8d44\u6e90(\u5305\u62ec\u4e0e\u7ba1\u7406\u670d\u52a1\u5668\u901a\u4fe1\u7684\u4efb\u4f55\u7ec4\u4ef6\uff0c\u4f8b\u5982\u4e3b\u673a\u548c CloudStack \u7cfb\u7edf VM)\u4e4b\u95f4\u7684\u6d41\u91cf\u3002\u8bf7\u5728\u6b64\u5904\u914d\u7f6e\u5b58\u50a8\u6d41\u91cf\u3002 message.suspend.project=\u662f\u5426\u786e\u5b9e\u8981\u6682\u505c\u6b64\u9879\u76ee? message.template.desc=\u53ef\u7528\u4e8e\u542f\u52a8 VM \u7684\u64cd\u4f5c\u7cfb\u7edf\u6620\u50cf message.tooltip.dns.1=\u4f9b\u533a\u57df\u4e2d\u7684 VM \u4f7f\u7528\u7684 DNS \u670d\u52a1\u5668\u540d\u79f0\u3002\u533a\u57df\u7684\u516c\u7528 IP \u5730\u5740\u5fc5\u987b\u8def\u7531\u5230\u6b64\u670d\u52a1\u5668\u3002 From a0dbf8909058dba202c057f5b9d589026399c6ef Mon Sep 17 00:00:00 2001 From: Marcus Sorensen Date: Mon, 29 Apr 2013 10:01:44 -0600 Subject: [PATCH 473/607] Look for null pointer on account id before trying to update usage when releasing an IP. This seems to be possible if expunge fails at some point after freeing an IP, on subsequent expunge tries the IP is freed already and gets null pointer when looking for account id. BUG-ID: CLOUDSTACK-2279 Bugfix-for: 4.1,4.2 Signed-off-by: Marcus Sorensen 1367251304 -0600 --- server/src/com/cloud/network/NetworkManagerImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/src/com/cloud/network/NetworkManagerImpl.java b/server/src/com/cloud/network/NetworkManagerImpl.java index 7adcf07f044..4a8b38fbc7c 100755 --- a/server/src/com/cloud/network/NetworkManagerImpl.java +++ b/server/src/com/cloud/network/NetworkManagerImpl.java @@ -2886,7 +2886,7 @@ public class NetworkManagerImpl extends ManagerBase implements NetworkManager, L } // Save usage event - if (ip.getAllocatedToAccountId() != Account.ACCOUNT_ID_SYSTEM) { + if (ip.getAllocatedToAccountId() != null && ip.getAllocatedToAccountId() != Account.ACCOUNT_ID_SYSTEM) { VlanVO vlan = _vlanDao.findById(ip.getVlanId()); String guestType = vlan.getVlanType().toString(); From e7e862db2fd65ff913158f5287a4328f403b73ea Mon Sep 17 00:00:00 2001 From: Chip Childers Date: Mon, 29 Apr 2013 16:57:55 -0400 Subject: [PATCH 474/607] Adding tools/transifex/.tx/config to the rat exclude list Signed-off-by: Chip Childers --- pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/pom.xml b/pom.xml index 7d5b4c3bdef..be8aa62d038 100644 --- a/pom.xml +++ b/pom.xml @@ -398,6 +398,7 @@ patches/systemvm/debian/config/var/www/html/userdata/.htaccess patches/systemvm/debian/config/var/www/html/latest/.htaccess patches/systemvm/debian/vpn/etc/ipsec.d/l2tp.conf + tools/transifex/.tx/config From 85e73d18f563a1f114bcd08ab57bf44652d203da Mon Sep 17 00:00:00 2001 From: Kelven Yang Date: Thu, 11 Apr 2013 15:57:19 -0700 Subject: [PATCH 475/607] Refactor message bus facitlity to avoid confusing with event bus for external notification, planning to use it in VMSync --- client/tomcatconf/applicationContext.xml.in | 2 +- core/src/com/cloud/vm/VMInstanceVO.java | 1 - .../framework/client/ClientEventBus.java | 4 +-- .../MessageBus.java} | 8 ++--- .../MessageBusBase.java} | 32 +++++++++---------- .../MessageBusEndpoint.java} | 14 ++++---- .../MessageDispatcher.java} | 18 +++++------ .../MessageHandler.java} | 4 +-- .../MessageSubscriber.java} | 6 ++-- .../PublishScope.java | 2 +- .../framework/server/ServerEventBus.java | 4 +-- .../sampleserver/SampleManagerComponent.java | 12 +++---- .../sampleserver/SampleManagerComponent2.java | 12 +++---- .../vmware/manager/VmwareManagerImpl.java | 3 +- 14 files changed, 61 insertions(+), 61 deletions(-) rename framework/ipc/src/org/apache/cloudstack/framework/{eventbus/EventBus.java => messagebus/MessageBus.java} (83%) rename framework/ipc/src/org/apache/cloudstack/framework/{eventbus/EventBusBase.java => messagebus/MessageBusBase.java} (88%) rename framework/ipc/src/org/apache/cloudstack/framework/{eventbus/EventBusEndpoint.java => messagebus/MessageBusEndpoint.java} (77%) rename framework/ipc/src/org/apache/cloudstack/framework/{eventbus/EventDispatcher.java => messagebus/MessageDispatcher.java} (83%) rename framework/ipc/src/org/apache/cloudstack/framework/{eventbus/EventHandler.java => messagebus/MessageHandler.java} (92%) rename framework/ipc/src/org/apache/cloudstack/framework/{eventbus/Subscriber.java => messagebus/MessageSubscriber.java} (83%) rename framework/ipc/src/org/apache/cloudstack/framework/{eventbus => messagebus}/PublishScope.java (94%) diff --git a/client/tomcatconf/applicationContext.xml.in b/client/tomcatconf/applicationContext.xml.in index 1f5ab20333a..2e340bfbfab 100644 --- a/client/tomcatconf/applicationContext.xml.in +++ b/client/tomcatconf/applicationContext.xml.in @@ -82,7 +82,7 @@ - + + + + + + + + org.apache.cloudstack.framework + + + + + + + + + + + + + From e7f4bfe1b8277f33e663c31744bc9f30d150fdbf Mon Sep 17 00:00:00 2001 From: Marcus Sorensen Date: Mon, 29 Apr 2013 18:15:09 -0600 Subject: [PATCH 477/607] Fix NPE in the planner, in the case that pool ID cannot be looked up in database when deploying a VM BUG-ID: CLOUdSTACK-2281 Bugfix-for: 4.2 Reviewed-by: Prachi Damle Signed-off-by: Marcus Sorensen 1367280909 -0600 --- .../src/com/cloud/deploy/FirstFitPlanner.java | 38 +++++++++++-------- 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/server/src/com/cloud/deploy/FirstFitPlanner.java b/server/src/com/cloud/deploy/FirstFitPlanner.java index 2e7e9f6128f..e8504a991c1 100755 --- a/server/src/com/cloud/deploy/FirstFitPlanner.java +++ b/server/src/com/cloud/deploy/FirstFitPlanner.java @@ -731,37 +731,43 @@ public class FirstFitPlanner extends PlannerBase implements DeploymentPlanner { //If the plan specifies a poolId, it means that this VM's ROOT volume is ready and the pool should be reused. //In this case, also check if rest of the volumes are ready and can be reused. if(plan.getPoolId() != null){ - s_logger.debug("Volume has pool already allocated, checking if pool can be reused, poolId: "+toBeCreated.getPoolId()); + s_logger.debug("Volume has pool(" + plan.getPoolId() + ") already allocated, checking if pool can be reused, poolId: "+toBeCreated.getPoolId()); List suitablePools = new ArrayList(); StoragePool pool = null; if(toBeCreated.getPoolId() != null){ + s_logger.debug("finding pool by id '" + toBeCreated.getPoolId() + "'"); pool = (StoragePool)this.dataStoreMgr.getPrimaryDataStore(toBeCreated.getPoolId()); }else{ + s_logger.debug("finding pool by id '" + plan.getPoolId() + "'"); pool = (StoragePool)this.dataStoreMgr.getPrimaryDataStore(plan.getPoolId()); } - if(!pool.isInMaintenance()){ - if(!avoid.shouldAvoid(pool)){ - long exstPoolDcId = pool.getDataCenterId(); + if(pool != null){ + if(!pool.isInMaintenance()){ + if(!avoid.shouldAvoid(pool)){ + long exstPoolDcId = pool.getDataCenterId(); - long exstPoolPodId = pool.getPodId() != null ? pool.getPodId() : -1; - long exstPoolClusterId = pool.getClusterId() != null ? pool.getClusterId() : -1; - if(plan.getDataCenterId() == exstPoolDcId && plan.getPodId() == exstPoolPodId && plan.getClusterId() == exstPoolClusterId){ - s_logger.debug("Planner need not allocate a pool for this volume since its READY"); - suitablePools.add(pool); - suitableVolumeStoragePools.put(toBeCreated, suitablePools); - if (!(toBeCreated.getState() == Volume.State.Allocated || toBeCreated.getState() == Volume.State.Creating)) { - readyAndReusedVolumes.add(toBeCreated); + long exstPoolPodId = pool.getPodId() != null ? pool.getPodId() : -1; + long exstPoolClusterId = pool.getClusterId() != null ? pool.getClusterId() : -1; + if(plan.getDataCenterId() == exstPoolDcId && plan.getPodId() == exstPoolPodId && plan.getClusterId() == exstPoolClusterId){ + s_logger.debug("Planner need not allocate a pool for this volume since its READY"); + suitablePools.add(pool); + suitableVolumeStoragePools.put(toBeCreated, suitablePools); + if (!(toBeCreated.getState() == Volume.State.Allocated || toBeCreated.getState() == Volume.State.Creating)) { + readyAndReusedVolumes.add(toBeCreated); + } + continue; + }else{ + s_logger.debug("Pool of the volume does not fit the specified plan, need to reallocate a pool for this volume"); } - continue; }else{ - s_logger.debug("Pool of the volume does not fit the specified plan, need to reallocate a pool for this volume"); + s_logger.debug("Pool of the volume is in avoid set, need to reallocate a pool for this volume"); } }else{ - s_logger.debug("Pool of the volume is in avoid set, need to reallocate a pool for this volume"); + s_logger.debug("Pool of the volume is in maintenance, need to reallocate a pool for this volume"); } }else{ - s_logger.debug("Pool of the volume is in maintenance, need to reallocate a pool for this volume"); + s_logger.debug("Unable to find pool by provided id"); } } From 09af15035b9febe6f55e73a1389f950ab042564f Mon Sep 17 00:00:00 2001 From: Murali Reddy Date: Tue, 30 Apr 2013 14:13:51 +0530 Subject: [PATCH 478/607] CLOUDSTACK-2292: GSLB: server object need to be created when 'zone load balancer' is configured on different LB service provider creating a server object before creating GSLB service --- .../network/resource/NetscalerResource.java | 64 +++++++++++++++++-- 1 file changed, 60 insertions(+), 4 deletions(-) diff --git a/plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java b/plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java index b82176b7e37..677bc785b2c 100644 --- a/plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java +++ b/plugins/network-elements/netscaler/src/com/cloud/network/resource/NetscalerResource.java @@ -1211,6 +1211,18 @@ public class NetscalerResource implements ServerResource { try { gslbservice service; service = getServiceObject(client, serviceName); + String gslbServerName = generateGslbServerName(serviceIp); + + if (!gslbServerExists(client, gslbServerName)) { + base_response apiCallResult; + com.citrix.netscaler.nitro.resource.config.basic.server nsServer = new com.citrix.netscaler.nitro.resource.config.basic.server(); + nsServer.set_name(gslbServerName); + nsServer.set_ipaddress(serviceIp); + apiCallResult = com.citrix.netscaler.nitro.resource.config.basic.server.add(client, nsServer); + if ((apiCallResult.errorcode != 0) && (apiCallResult.errorcode != NitroError.NS_RESOURCE_EXISTS)) { + throw new ExecutionException("Failed to add server " + gslbServerName + " due to" + apiCallResult.message); + } + } boolean isUpdateSite = false; if (service == null) { @@ -1220,7 +1232,7 @@ public class NetscalerResource implements ServerResource { } service.set_sitename(siteName); - service.set_servername(serviceIp); + service.set_servername(gslbServerName); int port = Integer.parseInt(servicePort); service.set_port(port); service.set_servicename(serviceName); @@ -1236,7 +1248,7 @@ public class NetscalerResource implements ServerResource { s_logger.debug("Successfully created service: " + serviceName + " at site: " + siteName); } } catch (Exception e) { - String errMsg = "Failed to created service: " + serviceName + " at site: " + siteName; + String errMsg = "Failed to created service: " + serviceName + " at site: " + siteName + " due to " + e.getMessage(); if (s_logger.isDebugEnabled()) { s_logger.debug(errMsg); } @@ -1284,7 +1296,7 @@ public class NetscalerResource implements ServerResource { } } } catch (Exception e) { - String errMsg = "Failed to update service: " + serviceName + " at site: " + siteName; + String errMsg = "Failed to update service: " + serviceName + " at site: " + siteName + "due to " + e.getMessage(); if (s_logger.isDebugEnabled()) { s_logger.debug(errMsg); } @@ -1294,6 +1306,7 @@ public class NetscalerResource implements ServerResource { private static void createVserverServiceBinding(nitro_service client, String serviceName, String vserverName) throws ExecutionException { + String errMsg; try { gslbvserver_gslbservice_binding binding = new gslbvserver_gslbservice_binding(); binding.set_name(vserverName); @@ -1303,8 +1316,18 @@ public class NetscalerResource implements ServerResource { s_logger.debug("Successfully created service: " + serviceName + " and virtual server: " + vserverName + " binding"); } + } catch (nitro_exception ne) { + if (ne.getErrorCode() == 273) { + return; + } + errMsg = "Failed to create service: " + serviceName + " and virtual server: " + + vserverName + " binding due to " + ne.getMessage(); + if (s_logger.isDebugEnabled()) { + s_logger.debug(errMsg); + } + throw new ExecutionException(errMsg); } catch (Exception e) { - String errMsg = "Failed to create service: " + serviceName + " and virtual server: " + errMsg = "Failed to create service: " + serviceName + " and virtual server: " + vserverName + " binding due to " + e.getMessage(); if (s_logger.isDebugEnabled()) { s_logger.debug(errMsg); @@ -1437,6 +1460,39 @@ public class NetscalerResource implements ServerResource { private static String generateUniqueServiceName(String siteName, String publicIp, String publicPort) { return "cloud-gslb-service-" + siteName + "-" + publicIp + "-" + publicPort; } + + private static boolean gslbServerExists(nitro_service client, String serverName) throws ExecutionException { + try { + if (com.citrix.netscaler.nitro.resource.config.basic.server.get(client, serverName) != null) { + return true; + } else { + return false; + } + } catch (nitro_exception e) { + if (e.getErrorCode() == NitroError.NS_RESOURCE_NOT_EXISTS) { + return false; + } else { + throw new ExecutionException("Failed to verify Server " + serverName + " exists on the NetScaler device due to " + e.getMessage()); + } + } catch (Exception e) { + throw new ExecutionException("Failed to verify Server " + serverName + " exists on the NetScaler device due to " + e.getMessage()); + } + } + + private static String generateGslbServerName(String serverIP) { + return genGslbObjectName("Cloud-Server-", serverIP); + } + + private static String genGslbObjectName(Object... args) { + String objectName = ""; + for (int i = 0; i < args.length; i++) { + objectName += args[i]; + if (i != args.length -1) { + objectName += "-"; + } + } + return objectName; + } } From ac23f7aae645bea0ec7f64aefecb9a8bbc2327ad Mon Sep 17 00:00:00 2001 From: Abhinandan Prateek Date: Tue, 30 Apr 2013 16:23:41 +0530 Subject: [PATCH 479/607] CLOUDSTACK-2296: Support for Windows 8 and Windows Server 2012 as VM Guest OS on Xenserver --- .../hypervisor/xen/resource/CitrixHelper.java | 3 +- setup/db/db/schema-410to420.sql | 35 +++++++++++-------- setup/db/templates.sql | 12 +++++++ .../vmware/util/VmwareGuestOsMapper.java | 14 ++++---- 4 files changed, 42 insertions(+), 22 deletions(-) diff --git a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixHelper.java b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixHelper.java index 828a8279f9a..5bcec13acb5 100644 --- a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixHelper.java +++ b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixHelper.java @@ -648,7 +648,7 @@ public class CitrixHelper { _xenServer610GuestOsMap.put("Windows 7 (32-bit)", "Windows 7 (32-bit)"); _xenServer610GuestOsMap.put("Windows 7 (64-bit)", "Windows 7 (64-bit)"); _xenServer610GuestOsMap.put("Windows 8 (32-bit)", "Windows 8 (32-bit) (experimental)"); - _xenServer610GuestOsMap.put("Windows 8 (64-bit)", "Windows 7 (64-bit) (experimental)"); + _xenServer610GuestOsMap.put("Windows 8 (64-bit)", "Windows 8 (64-bit) (experimental)"); _xenServer610GuestOsMap.put("Windows Server 2003 (32-bit)", "Windows Server 2003 (32-bit)"); _xenServer610GuestOsMap.put("Windows Server 2003 (64-bit)", "Windows Server 2003 (64-bit)"); _xenServer610GuestOsMap.put("Windows Server 2003 PAE (32-bit)", "Windows Server 2003 PAE (32-bit)"); @@ -661,6 +661,7 @@ public class CitrixHelper { _xenServer610GuestOsMap.put("Windows Server 2008 (32-bit)", "Windows Server 2008 (32-bit)"); _xenServer610GuestOsMap.put("Windows Server 2008 (64-bit)", "Windows Server 2008 (64-bit)"); _xenServer610GuestOsMap.put("Windows Server 2008 R2 (64-bit)", "Windows Server 2008 R2 (64-bit)"); + _xenServer610GuestOsMap.put("Windows Server 2012 (64-bit)", "Windows Server 2012 (64-bit) (experimental)"); _xenServer610GuestOsMap.put("Windows Server 8 (64-bit)", "Windows Server 2012 (64-bit) (experimental)"); _xenServer610GuestOsMap.put("Windows Vista (32-bit)", "Windows Vista (32-bit)"); _xenServer610GuestOsMap.put("Windows XP SP3 (32-bit)", "Windows XP SP3 (32-bit)"); diff --git a/setup/db/db/schema-410to420.sql b/setup/db/db/schema-410to420.sql index a6913b62584..9a66a0ffe03 100644 --- a/setup/db/db/schema-410to420.sql +++ b/setup/db/db/schema-410to420.sql @@ -119,21 +119,28 @@ CREATE TABLE `cloud`.`load_balancer_healthcheck_policies` ( INSERT IGNORE INTO `cloud`.`configuration` VALUES ('Advanced', 'DEFAULT', 'management-server', 'vm.instancename.flag', 'false', 'Append guest VM display Name (if set) to the internal name of the VM'); -INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (208, UUID(), 6, 'Windows 8'); -INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (209, UUID(), 6, 'Windows 8 (64 bit)'); -INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (210, UUID(), 6, 'Windows 8 Server (64 bit)'); -INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Windows 8', 208); -INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Windows 8 (64 bit)', 209); -INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Windows 8 Server (64 bit)', 210); +INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (165, UUID(), 6, 'Windows 8 (32-bit)'); +INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (166, UUID(), 6, 'Windows 8 (64-bit)'); +INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (167, UUID(), 6, 'Windows Server 2012 (64-bit)'); +INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (168, UUID(), 6, 'Windows Server 8 (64-bit)'); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Windows 8 (32-bit)', 165); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Windows 8 (64-bit)', 166); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Windows Server 2012 (64-bit)', 167); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Windows Server 8 (64-bit)', 168); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("XenServer", 'Windows 8 (32-bit)', 165); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("XenServer", 'Windows 8 (64-bit)', 166); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("XenServer", 'Windows Server 2012 (64-bit)', 167); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("XenServer", 'Windows Server 8 (64-bit)', 168); +√ -INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (211, UUID(), 7, 'Apple Mac OS X 10.6 (32 bits)'); -INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (212, UUID(), 7, 'Apple Mac OS X 10.6 (64 bits)'); -INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (213, UUID(), 7, 'Apple Mac OS X 10.7 (32 bits)'); -INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (214, UUID(), 7, 'Apple Mac OS X 10.7 (64 bits)'); -INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Apple Mac OS X 10.6 (32 bits)', 211); -INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Apple Mac OS X 10.6 (64 bits)', 212); -INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Apple Mac OS X 10.7 (32 bits)', 213); -INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Apple Mac OS X 10.7 (64 bits)', 214); +INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (211, UUID(), 7, 'Apple Mac OS X 10.6 (32-bit)'); +INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (212, UUID(), 7, 'Apple Mac OS X 10.6 (64-bit)'); +INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (213, UUID(), 7, 'Apple Mac OS X 10.7 (32-bit)'); +INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (214, UUID(), 7, 'Apple Mac OS X 10.7 (64-bit)'); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Apple Mac OS X 10.6 (32-bit)', 211); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Apple Mac OS X 10.6 (64-bit)', 212); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Apple Mac OS X 10.7 (32-bit)', 213); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Apple Mac OS X 10.7 (64-bit)', 214); CREATE TABLE `cloud`.`user_vm_clone_setting` ( `vm_id` bigint unsigned NOT NULL COMMENT 'guest VM id', diff --git a/setup/db/templates.sql b/setup/db/templates.sql index 2f95f1e00f8..1685dce385c 100755 --- a/setup/db/templates.sql +++ b/setup/db/templates.sql @@ -214,6 +214,10 @@ INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (161 INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (162, UUID(), 1, 'CentOS 5.7 (64-bit)'); INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (163, UUID(), 10, 'Ubuntu 12.04 (32-bit)'); INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (164, UUID(), 10, 'Ubuntu 12.04 (64-bit)'); +INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (165, UUID(), 6, 'Windows 8 (32-bit)'); +INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (166, UUID(), 6, 'Windows 8 (64-bit)'); +INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (167, UUID(), 6, 'Windows Server 2012 (64-bit)'); +INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (168, UUID(), 6, 'Windows Server 8 (64-bit)'); INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (200, UUID(), 1, 'Other CentOS (32-bit)'); INSERT INTO `cloud`.`guest_os` (id, uuid, category_id, display_name) VALUES (201, UUID(), 1, 'Other CentOS (64-bit)'); @@ -294,6 +298,10 @@ INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ('XenServer', 'Other install media', 130); INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ('XenServer', 'Other PV (32-bit)', 139); INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ('XenServer', 'Other PV (64-bit)', 140); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("XenServer", 'Windows 8 (32-bit)', 165); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("XenServer", 'Windows 8 (64-bit)', 166); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("XenServer", 'Windows Server 2012 (64-bit)', 167); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("XenServer", 'Windows Server 8 (64-bit)', 168); INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Microsoft Windows 7(32-bit)', 48); @@ -323,6 +331,10 @@ INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Microsoft Windows 95', 63); INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Microsoft Windows NT 4', 64); INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Microsoft Windows 3.1', 65); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Windows 8 (32-bit)', 165); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Windows 8 (64-bit)', 166); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Windows Server 2012 (64-bit)', 167); +INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Windows Server 8 (64-bit)', 168); INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Red Hat Enterprise Linux 5.0(32-bit)', 30); INSERT INTO `cloud`.`guest_os_hypervisor` (hypervisor_type, guest_os_name, guest_os_id) VALUES ("VmWare", 'Red Hat Enterprise Linux 5.1(32-bit)', 32); diff --git a/vmware-base/src/com/cloud/hypervisor/vmware/util/VmwareGuestOsMapper.java b/vmware-base/src/com/cloud/hypervisor/vmware/util/VmwareGuestOsMapper.java index c76ce84bc3d..eb16141045a 100755 --- a/vmware-base/src/com/cloud/hypervisor/vmware/util/VmwareGuestOsMapper.java +++ b/vmware-base/src/com/cloud/hypervisor/vmware/util/VmwareGuestOsMapper.java @@ -58,14 +58,14 @@ public class VmwareGuestOsMapper { s_mapper.put("Windows Server 2008 (32-bit)", VirtualMachineGuestOsIdentifier.WIN_LONGHORN_GUEST); s_mapper.put("Windows Server 2008 (64-bit)", VirtualMachineGuestOsIdentifier.WIN_LONGHORN_64_GUEST); - s_mapper.put("Windows 8", VirtualMachineGuestOsIdentifier.WINDOWS_8_GUEST); - s_mapper.put("Windows 8 (64 bit)", VirtualMachineGuestOsIdentifier.WINDOWS_8_64_GUEST); - s_mapper.put("Windows 8 Server (64 bit)", VirtualMachineGuestOsIdentifier.WINDOWS_8_SERVER_64_GUEST); + s_mapper.put("Windows 8 (32-bit)", VirtualMachineGuestOsIdentifier.WINDOWS_8_GUEST); + s_mapper.put("Windows 8 (64-bit)", VirtualMachineGuestOsIdentifier.WINDOWS_8_64_GUEST); + s_mapper.put("Windows Server 8 (64-bit)", VirtualMachineGuestOsIdentifier.WINDOWS_8_SERVER_64_GUEST); - s_mapper.put("Apple Mac OS X 10.6 (32 bits)", VirtualMachineGuestOsIdentifier.DARWIN_10_GUEST); - s_mapper.put("Apple Mac OS X 10.6 (64 bits)", VirtualMachineGuestOsIdentifier.DARWIN_10_64_GUEST); - s_mapper.put("Apple Mac OS X 10.7 (32 bits)", VirtualMachineGuestOsIdentifier.DARWIN_11_GUEST); - s_mapper.put("Apple Mac OS X 10.7 (64 bits)", VirtualMachineGuestOsIdentifier.DARWIN_11_64_GUEST); + s_mapper.put("Apple Mac OS X 10.6 (32-bit)", VirtualMachineGuestOsIdentifier.DARWIN_10_GUEST); + s_mapper.put("Apple Mac OS X 10.6 (64-bit)", VirtualMachineGuestOsIdentifier.DARWIN_10_64_GUEST); + s_mapper.put("Apple Mac OS X 10.7 (32-bit)", VirtualMachineGuestOsIdentifier.DARWIN_11_GUEST); + s_mapper.put("Apple Mac OS X 10.7 (64-bit)", VirtualMachineGuestOsIdentifier.DARWIN_11_64_GUEST); s_mapper.put("Open Enterprise Server", VirtualMachineGuestOsIdentifier.OES_GUEST); From 34885f63569d64aea0c3df90af6af31b881d0e5b Mon Sep 17 00:00:00 2001 From: Kishan Kavala Date: Tue, 30 Apr 2013 17:36:57 +0530 Subject: [PATCH 480/607] CLOUDSTACK-2201: Use DatabaseUpgradeChecker instead of premiumin nonossComponents.xml. Premium checker should be removed altogether --- client/tomcatconf/nonossComponentContext.xml.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/tomcatconf/nonossComponentContext.xml.in b/client/tomcatconf/nonossComponentContext.xml.in index 2359ba80699..ff52457a3e2 100644 --- a/client/tomcatconf/nonossComponentContext.xml.in +++ b/client/tomcatconf/nonossComponentContext.xml.in @@ -42,7 +42,7 @@ independent configuration --> - + From ce7dc70b1dd8c86b3e2de223eb0f09e23172d1a0 Mon Sep 17 00:00:00 2001 From: Kelven Yang Date: Tue, 30 Apr 2013 10:31:10 -0700 Subject: [PATCH 481/607] CLOUDSTACK-2194: Fix ApiServer component initialization sequence --- server/src/com/cloud/api/ApiServer.java | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/server/src/com/cloud/api/ApiServer.java b/server/src/com/cloud/api/ApiServer.java index dd5fd4d5657..497be50a766 100755 --- a/server/src/com/cloud/api/ApiServer.java +++ b/server/src/com/cloud/api/ApiServer.java @@ -48,7 +48,7 @@ import javax.annotation.PostConstruct; import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; import javax.inject.Inject; -import javax.servlet.http.HttpServletRequest; +import javax.naming.ConfigurationException; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; @@ -65,6 +65,7 @@ import org.apache.cloudstack.api.command.admin.host.ListHostsCmd; import org.apache.cloudstack.api.command.admin.router.ListRoutersCmd; import org.apache.cloudstack.api.command.admin.storage.ListStoragePoolsCmd; import org.apache.cloudstack.api.command.admin.user.ListUsersCmd; +import com.cloud.event.ActionEventUtils; import org.apache.cloudstack.api.command.user.account.ListAccountsCmd; import org.apache.cloudstack.api.command.user.account.ListProjectAccountsCmd; import org.apache.cloudstack.api.command.user.event.ListEventsCmd; @@ -122,7 +123,6 @@ import com.cloud.configuration.ConfigurationVO; import com.cloud.configuration.dao.ConfigurationDao; import com.cloud.domain.Domain; import com.cloud.domain.DomainVO; -import com.cloud.event.ActionEventUtils; import com.cloud.exception.AccountLimitException; import com.cloud.exception.CloudAuthenticationException; import com.cloud.exception.InsufficientCapacityException; @@ -142,6 +142,7 @@ import com.cloud.utils.NumbersUtil; import com.cloud.utils.Pair; import com.cloud.utils.StringUtils; import com.cloud.utils.component.ComponentContext; +import com.cloud.utils.component.ManagerBase; import com.cloud.utils.component.PluggableService; import com.cloud.utils.concurrency.NamedThreadFactory; import com.cloud.utils.db.SearchCriteria; @@ -149,7 +150,7 @@ import com.cloud.utils.db.Transaction; import com.cloud.utils.exception.CloudRuntimeException; @Component -public class ApiServer implements HttpRequestHandler, ApiServerService { +public class ApiServer extends ManagerBase implements HttpRequestHandler, ApiServerService { private static final Logger s_logger = Logger.getLogger(ApiServer.class.getName()); private static final Logger s_accessLogger = Logger.getLogger("apiserver." + ApiServer.class.getName()); @@ -180,13 +181,19 @@ public class ApiServer implements HttpRequestHandler, ApiServerService { @PostConstruct void initComponent() { s_instance = this; - init(); } public static ApiServer getInstance() { return s_instance; } - + + @Override + public boolean configure(String name, Map params) + throws ConfigurationException { + init(); + return true; + } + public void init() { Integer apiPort = null; // api port, null by default SearchCriteria sc = _configDao.createSearchCriteria(); From 1a4a319d32ce507df95c7cdce65a915a672f311e Mon Sep 17 00:00:00 2001 From: Brian Federle Date: Tue, 30 Apr 2013 13:14:31 -0700 Subject: [PATCH 482/607] VM wizard: Show message if no affinity groups are available. --- .../classes/resources/messages.properties | 2 ++ ui/css/cloudstack3.css | 6 ++++ ui/dictionary.jsp | 2 ++ ui/scripts/ui-custom/instanceWizard.js | 31 ++++++++++++------- 4 files changed, 30 insertions(+), 11 deletions(-) diff --git a/client/WEB-INF/classes/resources/messages.properties b/client/WEB-INF/classes/resources/messages.properties index 2145e7f9450..1638be19e49 100644 --- a/client/WEB-INF/classes/resources/messages.properties +++ b/client/WEB-INF/classes/resources/messages.properties @@ -14,6 +14,8 @@ # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. +message.select.affinity.groups=Please select any affinity groups you want this VM to belong to: +message.no.affinity.groups=You do not have any affinity groups. Please continue to the next step. label.action.delete.nic=Remove NIC message.action.delete.nic=Please confirm that want to remove this NIC, which will also remove the associated network from the VM. changed.item.properties=Changed item properties diff --git a/ui/css/cloudstack3.css b/ui/css/cloudstack3.css index eac0b20a1be..cb59216b12b 100644 --- a/ui/css/cloudstack3.css +++ b/ui/css/cloudstack3.css @@ -5716,6 +5716,12 @@ label.error { margin: 10px 10px 0px; } +.multi-wizard .select-container p { + padding: 11px; + color: #424242; + background: #DFDFDF; +} + .multi-wizard .select-container .select { font-size: 13px; margin: -1px 0 0; diff --git a/ui/dictionary.jsp b/ui/dictionary.jsp index dd76c14a994..ded9ea063d4 100644 --- a/ui/dictionary.jsp +++ b/ui/dictionary.jsp @@ -25,6 +25,8 @@ under the License. <% long now = System.currentTimeMillis(); %>