Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions source/adminguide/locale/zh_CN/LC_MESSAGES/events.po
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C)
# This file is distributed under the same license as the Apache CloudStack Administration Documentation package.
#
#
# Translators:
msgid ""
msgstr ""
Expand Down Expand Up @@ -51,7 +51,7 @@ msgid ""
"event logs can be used to gain more information on the status of a pending "
"job or can be used to identify a job that is hanging or has not started. The"
" following sections provide more information on these events.."
msgstr "这里有两种类型的事件记录在&PRODUCT;事件日志。标准事件记录一个事件的成功或失败,并且可以用于鉴别哪些是已经失败的任务或进程。这里也记录长时间运行任务事件。异步任务的制定,启动,完成这些事件都被记录。长时间运行的同步和异步事件日志可用于获取挂起任务更多的状态信息,也可以用来识别任务是被挂起或还未开始。以下各节提供有关这些事件的详细信息。"
msgstr "这里有两种类型的事件记录在&CloudStack;事件日志。标准事件记录一个事件的成功或失败,并且可以用于鉴别哪些是已经失败的任务或进程。这里也记录长时间运行任务事件。异步任务的制定,启动,完成这些事件都被记录。长时间运行的同步和异步事件日志可用于获取挂起任务更多的状态信息,也可以用来识别任务是被挂起或还未开始。以下各节提供有关这些事件的详细信息。"

# 127295678f0c4cf084cf737444f11087
#: ../../events.rst:45
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C)
# This file is distributed under the same license as the Apache CloudStack Administration Documentation package.
#
#
# Translators:
msgid ""
msgstr ""
Expand Down Expand Up @@ -41,7 +41,7 @@ msgid ""
"ability to create a network in CloudStack in which physical devices can be "
"deployed without having to run any VMs. Additionally, you can deploy "
"physical devices on that network."
msgstr "在您创建其它类型的网络时,在网络中第一台VM创建之前,该网络仅是数据库的一条记录。当第一个VM创建时,网络会指定一个VLAN ID并初始化。同样,当网络中最后一个VM销毁后,VLAN ID会被释放,这样该网络就不再可用。通过使用持久化网络,您就有能力在不部署VM的情况下在&PRODUCT;中创建一个网络用来部署物理设备。而且,您可以在该网络中部署物理设备。"
msgstr "在您创建其它类型的网络时,在网络中第一台VM创建之前,该网络仅是数据库的一条记录。当第一个VM创建时,网络会指定一个VLAN ID并初始化。同样,当网络中最后一个VM销毁后,VLAN ID会被释放,这样该网络就不再可用。通过使用持久化网络,您就有能力在不部署VM的情况下在&CloudStack;中创建一个网络用来部署物理设备。而且,您可以在该网络中部署物理设备。"

# 87f88f46858c41ba96f785b7c3122342
#: ../../networking/persistent_networks.rst:33
Expand Down
2 changes: 1 addition & 1 deletion source/adminguide/locale/zh_CN/LC_MESSAGES/networking2.po
Original file line number Diff line number Diff line change
Expand Up @@ -8330,7 +8330,7 @@ msgid ""
"ability to create a network in CloudStack in which physical devices can be "
"deployed without having to run any VMs. Additionally, you can deploy "
"physical devices on that network."
msgstr "在您创建其它类型的网络时,在网络中第一台VM创建之前,该网络仅是数据库的一条记录。当第一个VM创建时,网络会指定一个VLAN ID并初始化。同样,当网络中最后一个VM销毁后,VLAN ID会被释放,这样该网络就不再可用。通过使用持久化网络,您就有能力在不部署VM的情况下在&PRODUCT;中创建一个网络用来部署物理设备。而且,您可以在该网络中部署物理设备。"
msgstr "在您创建其它类型的网络时,在网络中第一台VM创建之前,该网络仅是数据库的一条记录。当第一个VM创建时,网络会指定一个VLAN ID并初始化。同样,当网络中最后一个VM销毁后,VLAN ID会被释放,这样该网络就不再可用。通过使用持久化网络,您就有能力在不部署VM的情况下在&CloudStack;中创建一个网络用来部署物理设备。而且,您可以在该网络中部署物理设备。"

# 58f4be07725f415581616cb03772a7a7
#: ../../networking2.rst:6869
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8553,7 +8553,7 @@ msgid ""
"ability to create a network in CloudStack in which physical devices can be "
"deployed without having to run any VMs. Additionally, you can deploy "
"physical devices on that network."
msgstr "在您创建其它类型的网络时,在网络中第一台VM创建之前,该网络仅是数据库的一条记录。当第一个VM创建时,网络会指定一个VLAN ID并初始化。同样,当网络中最后一个VM销毁后,VLAN ID会被释放,这样该网络就不再可用。通过使用持久化网络,您就有能力在不部署VM的情况下在&PRODUCT;中创建一个网络用来部署物理设备。而且,您可以在该网络中部署物理设备。"
msgstr "在您创建其它类型的网络时,在网络中第一台VM创建之前,该网络仅是数据库的一条记录。当第一个VM创建时,网络会指定一个VLAN ID并初始化。同样,当网络中最后一个VM销毁后,VLAN ID会被释放,这样该网络就不再可用。通过使用持久化网络,您就有能力在不部署VM的情况下在&CloudStack;中创建一个网络用来部署物理设备。而且,您可以在该网络中部署物理设备。"

# 6fcce92beeff40cb864882157e6e38eb
#: ../../networking/persistent_networks.rst:33
Expand Down
4 changes: 2 additions & 2 deletions source/adminguide/locale/zh_CN/LC_MESSAGES/usage.po
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C)
# This file is distributed under the same license as the Apache CloudStack Administration Documentation package.
#
#
# Translators:
msgid ""
msgstr ""
Expand Down Expand Up @@ -202,7 +202,7 @@ msgid ""
"October 7, then it is assumed you would like to process records for October "
"6, from midnight to midnight. CloudStack assumes this “midnight to midnight”"
" is relative to the usage.execution.timezone."
msgstr "当值为1440(一天一次)时有点特殊。该情况下,用量服务器并不需要处理上次运行之后的所有事件。&PRODUCT;假定您要一天一次处理昨天的,完成每日记录。例如,如果今天是10月7号,会假定您要处理6号的记录,从0点到24点。CloudStack假定的0点到24点采用的时区为 usage.execution.timezone的值。"
msgstr "当值为1440(一天一次)时有点特殊。该情况下,用量服务器并不需要处理上次运行之后的所有事件。&CloudStack;假定您要一天一次处理昨天的,完成每日记录。例如,如果今天是10月7号,会假定您要处理6号的记录,从0点到24点。CloudStack假定的0点到24点采用的时区为 usage.execution.timezone的值。"

# 657e01fff8404e7086e1a5cd318ed5b9
#: ../../usage.rst:121
Expand Down
2 changes: 1 addition & 1 deletion source/conceptsandterminology/locale/pot/dev.pot
Original file line number Diff line number Diff line change
Expand Up @@ -2517,7 +2517,7 @@ msgstr ""

#: ../../dev.rst:1323
# 116de5edf8e449378280c02a410c56f1
msgid "The following time zone identifiers are accepted by PRODUCT. There are several places that have a time zone as a required or optional parameter. These include scheduling recurring snapshots, creating a user, and specifying the usage time zone in the Configuration table."
msgid "The following time zone identifiers are accepted by CloudStack. There are several places that have a time zone as a required or optional parameter. These include scheduling recurring snapshots, creating a user, and specifying the usage time zone in the Configuration table."
msgstr ""

#: ../../dev.rst:1329
Expand Down
10 changes: 5 additions & 5 deletions source/conceptsandterminology/locale/pot/networking.pot
Original file line number Diff line number Diff line change
Expand Up @@ -1608,7 +1608,7 @@ msgstr ""

#: ../../networking/vxlan.rst:7
# 0856b955a54e4897a16abb275756a9fd
msgid "In PRODUCT 4.X.0, this plugin only supports the KVM hypervisor with the standard linux bridge."
msgid "In CloudStack 4.X.0, this plugin only supports the KVM hypervisor with the standard linux bridge."
msgstr ""

#: ../../networking/vxlan.rst:10
Expand All @@ -1635,7 +1635,7 @@ msgstr ""

#: ../../networking/vxlan.rst:15
# e5bde3c30dc5441eb12a4ec4b45e7060
msgid "OvsVifDriver is not supported by this plugin in PRODUCT 4.X, use BridgeVifDriver (default)."
msgid "OvsVifDriver is not supported by this plugin in CloudStack 4.X, use BridgeVifDriver (default)."
msgstr ""

#: ../../networking/vxlan.rst:17
Expand Down Expand Up @@ -1785,7 +1785,7 @@ msgstr ""

#: ../../networking/vxlan.rst:137
# 6082e428d1cb4b658d787c71d0ad1dd5
msgid "Configure PRODUCT to use VXLAN Plugin"
msgid "Configure CloudStack to use VXLAN Plugin"
msgstr ""

#: ../../networking/vxlan.rst:140
Expand All @@ -1800,7 +1800,7 @@ msgstr ""

#: ../../networking/vxlan.rst:145
# 0b30975586c54132a8722bffbd37f88d
msgid "In addition to \"KVM Hypervisor Host Installation\" in \"PRODUCT Installation Guide\", you have to configure the following item on the host."
msgid "In addition to \"KVM Hypervisor Host Installation\" in \"CloudStack Installation Guide\", you have to configure the following item on the host."
msgstr ""

#: ../../networking/vxlan.rst:150
Expand Down Expand Up @@ -1905,7 +1905,7 @@ msgstr ""

#: ../../networking/vxlan.rst:346
# 151a7ea2c74744eeb7e1c0a2c6efa55e
msgid "In almost all parts of zone setup, you can just follow the advanced zone setup istruction in \"PRODUCT Installation Guide\" to use this plugin. It is not required to add a network element nor to reconfigure the network offering. The only thing you have to do is configure the physical network to use VXLAN as the isolation method for Guest Network."
msgid "In almost all parts of zone setup, you can just follow the advanced zone setup istruction in \"CloudStack Installation Guide\" to use this plugin. It is not required to add a network element nor to reconfigure the network offering. The only thing you have to do is configure the physical network to use VXLAN as the isolation method for Guest Network."
msgstr ""

#: ../../networking/vxlan.rst:353
Expand Down
76 changes: 38 additions & 38 deletions source/developersguide/dev.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@


Programmer Guide
================
================

This guide shows how to develop CloudStack, use the API for operation
and integration, access the usage data and use CloudStack specific tools
Expand Down Expand Up @@ -64,7 +64,7 @@ API Reference Documentation

You can find all the API reference documentation at the below site:

`https://cloudstack.apache.org/api.html
`https://cloudstack.apache.org/api.html
<https://cloudstack.apache.org/api.html>`__


Expand Down Expand Up @@ -156,9 +156,9 @@ Breaking this down, we have several distinct parts to this URL.
- Command String: This part of the query string comprises of the
command, its parameters, and the API Key that identifies the account.

.. note::
As with all query string parameters of field-value pairs, the "field"
component is case insensitive while all "value" values are case
.. note::
As with all query string parameters of field-value pairs, the "field"
component is case insensitive while all "value" values are case
sensitive.

.. sourcecode: bash
Expand Down Expand Up @@ -216,17 +216,17 @@ step interactive session using Python.
First import the required modules:

.. parsed-literal::

$python
Python 2.7.3 (default, Nov 17 2012, 19:54:34)
Python 2.7.3 (default, Nov 17 2012, 19:54:34)
[GCC 4.2.1 Compatible Apple Clang 4.1 ((tags/Apple/clang-421.11.66))] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import urllib2
>>> import urllib
>>> import hashlib
>>> import hmac
>>> import base64


Define the endpoint of the Cloud, the command that you want to execute
and the keys of the user.
Expand All @@ -239,7 +239,7 @@ and the keys of the user.
>>> request['response']='json'
>>> request['apikey']='plgWJfZK4gyS3mOMTVmjUVg-X-jlWlnfaUJ9GAbBbf9EdM-kAYMmAiLqzzq1ElZLYq_u38zCm0bewzGUdP66mg'
>>> secretkey='VDaACYb0LV9eNjTetIOElcVQkvJck_J_QljX_FcHRj87ZKiy0z0ty0ZsYBkoXkY9b7eq1EhwJaw7FF3akA3KBQ'


Build the request string:

Expand All @@ -248,14 +248,14 @@ Build the request string:
>>> request_str='&'.join(['='.join([k,urllib.quote_plus(request[k])]) for k in request.keys()])
>>> request_str
'apikey=plgWJfZK4gyS3mOMTVmjUVg-X-jlWlnfaUJ9GAbBbf9EdM-kAYMmAiLqzzq1ElZLYq_u38zCm0bewzGUdP66mg&command=listUsers&response=json'


Compute the signature with hmac, do a 64 bit encoding and a url
encoding:

.. parsed-literal::
>>> sig_str='&'.join(['='.join([k.lower(),urllib.quote_plus(request[k]).lower().replace('+','%20')])for k in sorted(request.iterkeys())])

>>> sig_str='&'.join(['='.join([k.lower(),urllib.quote_plus(request[k]).lower().replace('+','%20')])for k in sorted(request.iterkeys())])
>>> sig_str 'apikey=plgwjfzk4gys3momtvmjuvg-x-jlwlnfauj9gabbbf9edm-kaymmailqzzq1elzlyq_u38zcm0bewzgudp66mg&command=listusers&response=json'
>>> sig=hmac.new(secretkey,sig_str,hashlib.sha1)
>>> sig
Expand All @@ -270,19 +270,19 @@ encoding:
>>> sig
'TTpdDq/7j/J58XCRHomKoQXEQds='
>>> sig=urllib.quote_plus(base64.encodestring(hmac.new(secretkey,sig_str,hashlib.sha1).digest()).strip())


Finally, build the entire string and do an http GET:

.. parsed-literal::

>>> req=baseurl+request_str+'&signature='+sig
>>> req
'http://localhost:8080/client/api?apikey=plgWJfZK4gyS3mOMTVmjUVg-X-jlWlnfaUJ9GAbBbf9EdM-kAYMmAiLqzzq1ElZLYq_u38zCm0bewzGUdP66mg&command=listUsers&response=json&signature=TTpdDq%2F7j%2FJ58XCRHomKoQXEQds%3D'
>>> res=urllib2.urlopen(req)
>>> res.read()
'{ "listusersresponse" : { "count":3 ,"user" : [ {"id":"7ed6d5da-93b2-4545-a502-23d20b48ef2a","username":"admin","firstname":"admin","lastname":"cloud","created":"2012-07-05T12:18:27-0700","state":"enabled","account":"admin","accounttype":1,"domainid":"8a111e58-e155-4482-93ce-84efff3c7c77","domain":"ROOT","apikey":"plgWJfZK4gyS3mOMTVmjUVg-X-jlWlnfaUJ9GAbBbf9EdM-kAYMmAiLqzzq1ElZLYq_u38zCm0bewzGUdP66mg","secretkey":"VDaACYb0LV9eNjTetIOElcVQkvJck_J_QljX_FcHRj87ZKiy0z0ty0ZsYBkoXkY9b7eq1EhwJaw7FF3akA3KBQ","accountid":"7548ac03-af1d-4c1c-9064-2f3e2c0eda0d"}, {"id":"1fea6418-5576-4989-a21e-4790787bbee3","username":"runseb","firstname":"foobar","lastname":"goa","email":"joe@smith.com","created":"2013-04-10T16:52:06-0700","state":"enabled","account":"admin","accounttype":1,"domainid":"8a111e58-e155-4482-93ce-84efff3c7c77","domain":"ROOT","apikey":"Xhsb3MewjJQaXXMszRcLvQI9_NPy_UcbDj1QXikkVbDC9MDSPwWdtZ1bUY1H7JBEYTtDDLY3yuchCeW778GkBA","secretkey":"gIsgmi8C5YwxMHjX5o51pSe0kqs6JnKriw0jJBLceY5bgnfzKjL4aM6ctJX-i1ddQIHJLbLJDK9MRzsKk6xZ_w","accountid":"7548ac03-af1d-4c1c-9064-2f3e2c0eda0d"}, {"id":"52f65396-183c-4473-883f-a37e7bb93967","username":"toto","firstname":"john","lastname":"smith","email":"john@smith.com","created":"2013-04-23T04:27:22-0700","state":"enabled","account":"admin","accounttype":1,"domainid":"8a111e58-e155-4482-93ce-84efff3c7c77","domain":"ROOT","apikey":"THaA6fFWS_OmvU8od201omxFC8yKNL_Hc5ZCS77LFCJsRzSx48JyZucbUul6XYbEg-ZyXMl_wuEpECzK-wKnow","secretkey":"O5ywpqJorAsEBKR_5jEvrtGHfWL1Y_j1E4Z_iCr8OKCYcsPIOdVcfzjJQ8YqK0a5EzSpoRrjOFiLsG0hQrYnDA","accountid":"7548ac03-af1d-4c1c-9064-2f3e2c0eda0d"} ] } }'


Enabling API Call Expiration
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Expand Down Expand Up @@ -357,7 +357,7 @@ Limitations on API Throttling
The following limitations exist in the current implementation of this
feature.

.. note::
.. note::
Even with these limitations, CloudStack is still able to effectively use
API throttling to avoid malicious attacks causing denial of service.

Expand Down Expand Up @@ -391,33 +391,33 @@ Sample XML Response:

.. parsed-literal::

<listipaddressesresponse>
<listipaddressesresponse>
<allocatedipaddress>
<ipaddress>192.168.10.141</ipaddress>
<allocated>2009-09-18T13:16:10-0700</allocated>
<zoneid>4</zoneid>
<zonename>WC</zonename>
<issourcenat>true</issourcenat>
<ipaddress>192.168.10.141</ipaddress>
<allocated>2009-09-18T13:16:10-0700</allocated>
<zoneid>4</zoneid>
<zonename>WC</zonename>
<issourcenat>true</issourcenat>
</allocatedipaddress>
</listipaddressesresponse>

Sample JSON Response:

.. parsed-literal::

{ "listipaddressesresponse" :
{ "listipaddressesresponse" :
{ "allocatedipaddress" :
[
{
"ipaddress" : "192.168.10.141",
[
{
"ipaddress" : "192.168.10.141",
"allocated" : "2009-09-18T13:16:10-0700",
"zoneid" : "4",
"zonename" : "WC",
"issourcenat" : "true"
}
"zoneid" : "4",
"zonename" : "WC",
"issourcenat" : "true"
}
]
}
}
}
}


Maximum Result Pages Returned
Expand Down Expand Up @@ -642,7 +642,7 @@ data.

.. parsed-literal::

<deployvirtualmachineresponse>
<deployvirtualmachineresponse>
<jobid>1</jobid>
<id>100</id>
</deployvirtualmachineresponse>
Expand All @@ -660,7 +660,7 @@ Job is still pending:

.. parsed-literal::

<queryasyncjobresult>
<queryasyncjobresult>
<jobid>1</jobid>
<jobstatus>0</jobstatus>
<jobprocstatus>1</jobprocstatus>
Expand Down Expand Up @@ -725,12 +725,12 @@ Job has failed:
.. parsed-literal::

<queryasyncjobresult>
<jobid>1</jobid>
<jobstatus>2</jobstatus>
<jobid>1</jobid>
<jobstatus>2</jobstatus>
<jobprocstatus>0</jobprocstatus>
<jobresultcode>551</jobresultcode>
<jobresulttype>text</jobresulttype>
<jobresult>Unable to deploy virtual machine id = 100 due to not enough capacity</jobresult>
<jobresult>Unable to deploy virtual machine id = 100 due to not enough capacity</jobresult>
</queryasyncjobresult>


Expand Down Expand Up @@ -1290,7 +1290,7 @@ Event Types
Time Zones
----------

The following time zone identifiers are accepted by PRODUCT. There are
The following time zone identifiers are accepted by CloudStack. There are
several places that have a time zone as a required or optional
parameter. These include scheduling recurring snapshots, creating a
user, and specifying the usage time zone in the Configuration table.
Expand Down
Loading