Revision 053d0dfc docs/quick-install-admin-guide.rst
b/docs/quick-install-admin-guide.rst | ||
---|---|---|
890 | 890 |
|
891 | 891 |
.. code-block:: console |
892 | 892 |
|
893 |
# apt-get install snf-image-host snf-pithos-backend |
|
893 |
# apt-get install snf-image-host snf-pithos-backend python-psycopg2
|
|
894 | 894 |
|
895 | 895 |
snf-image also needs the `snf-pithos-backend <snf-pithos-backend>`, to be able to |
896 |
handle image files stored on Pithos+. This is why, we also install it on *all* |
|
896 |
handle image files stored on Pithos+. It also needs `python-psycopg2` to be able |
|
897 |
to access the Pithos+ database. This is why, we also install them on *all* |
|
897 | 898 |
VM-capable Ganeti nodes. |
898 | 899 |
|
899 | 900 |
Now, you need to download and save the corresponding helper package. Please see |
... | ... | |
1493 | 1494 |
|
1494 | 1495 |
.. code-block:: console |
1495 | 1496 |
|
1496 |
GANETI_MAX_LINK_NUMBER = 20 |
|
1497 | 1497 |
ASTAKOS_URL = 'https://node1.example.com/im/authenticate' |
1498 | 1498 |
|
1499 |
The ``GANETI_MAX_LINK_NUMBER`` is used to construct the names of the bridges |
|
1500 |
already pre-provisioned for the Private Networks. Thus we set it to ``20``, to |
|
1501 |
reflect our :ref:`Private Networks setup in the host machines |
|
1502 |
<private-networks-setup>`. These numbers will suffix the |
|
1503 |
``GANETI_LINK_PREFIX``, which is already set to ``prv`` and doesn't need to be |
|
1504 |
changed. With those two variables Cyclades will construct the names of the |
|
1505 |
available bridges ``prv1`` to ``prv20``, which are the real pre-provisioned |
|
1506 |
bridges in the backend. |
|
1507 |
|
|
1508 | 1499 |
The ``ASTAKOS_URL`` denotes the authentication endpoint for Cyclades and is set |
1509 | 1500 |
to point to Astakos (this should have the same value with Pithos+'s |
1510 | 1501 |
``PITHOS_AUTHENTICATION_URL``, setup :ref:`previously <conf-pithos>`). |
1511 | 1502 |
|
1512 |
Edit ``/etc/synnefo/20-snf-cyclades-app-backend.conf``: |
|
1513 |
|
|
1514 |
.. code-block:: console |
|
1515 |
|
|
1516 |
GANETI_MASTER_IP = "ganeti.node1.example.com" |
|
1517 |
GANETI_CLUSTER_INFO = (GANETI_MASTER_IP, 5080, "cyclades", "example_rapi_passw0rd") |
|
1518 |
|
|
1519 |
``GANETI_MASTER_IP`` denotes the Ganeti-master's floating IP. We provide the |
|
1520 |
corresponding domain that resolves to that IP, than the IP itself, to ensure |
|
1521 |
Cyclades can talk to Ganeti even after a Ganeti master-failover. |
|
1522 |
|
|
1523 |
``GANETI_CLUSTER_INFO`` is a tuple containing the ``GANETI_MASTER_IP``, the RAPI |
|
1524 |
port, the RAPI user's username and the RAPI user's password. We set the above to |
|
1525 |
reflect our :ref:`RAPI User setup <rapi-user>`. |
|
1503 |
TODO: Document the Network Options here |
|
1526 | 1504 |
|
1527 | 1505 |
Edit ``/etc/synnefo/20-snf-cyclades-app-cloudbar.conf``: |
1528 | 1506 |
|
... | ... | |
1578 | 1556 |
|
1579 | 1557 |
.. code-block:: console |
1580 | 1558 |
|
1581 |
UI_MEDIA_URL = '/static/ui/static/snf/' |
|
1582 | 1559 |
UI_LOGIN_URL = "https://node1.example.com/im/login" |
1583 | 1560 |
UI_LOGOUT_URL = "https://node1.example.com/im/logout" |
1584 | 1561 |
|
1585 |
``UI_MEDIA_URL`` denotes the location of the UI's static files. |
|
1586 |
|
|
1587 | 1562 |
The ``UI_LOGIN_URL`` option tells the Cyclades Web UI where to redirect users, |
1588 | 1563 |
if they are not logged in. We point that to Astakos. |
1589 | 1564 |
|
1590 | 1565 |
The ``UI_LOGOUT_URL`` option tells the Cyclades Web UI where to redirect the |
1591 | 1566 |
user when he/she logs out. We point that to Astakos, too. |
1592 | 1567 |
|
1568 |
Edit ``/etc/default/vncauthproxy``: |
|
1569 |
|
|
1570 |
.. code-block:: console |
|
1571 |
|
|
1572 |
CHUID="www-data:nogroup" |
|
1573 |
|
|
1593 | 1574 |
We have now finished with the basic Cyclades and Plankton configuration. |
1594 | 1575 |
|
1595 | 1576 |
Database Initialization |
... | ... | |
1610 | 1591 |
|
1611 | 1592 |
If everything returns successfully, our database is ready. |
1612 | 1593 |
|
1594 |
Add the Ganeti backend |
|
1595 |
---------------------- |
|
1596 |
|
|
1597 |
In our installation we assume that we only have one Ganeti cluster. Cyclades can |
|
1598 |
manage multiple Ganeti backends, but for the purpose of this guide, we won't get |
|
1599 |
into more detail regarding mulitple backends. |
|
1600 |
|
|
1601 |
By default, when you install Cyclades, it sets up a dummy first backend. You can |
|
1602 |
see it by running: |
|
1603 |
|
|
1604 |
.. code-block:: console |
|
1605 |
|
|
1606 |
$ snf-manage backend-list |
|
1607 |
|
|
1608 |
We modify this backend to reflect our already setup Ganeti cluster: |
|
1609 |
|
|
1610 |
.. code-block:: console |
|
1611 |
|
|
1612 |
$ snf-manage backend-modify --clustername "ganeti.node1.example.com" |
|
1613 |
--username=cyclades |
|
1614 |
--password=example_rapi_passw0rd |
|
1615 |
1 |
|
1616 |
|
|
1617 |
``clustername`` denotes the Ganeti-cluster's name. We provide the corresponding |
|
1618 |
domain that resolves to the master IP, than the IP itself, to ensure Cyclades |
|
1619 |
can talk to Ganeti even after a Ganeti master-failover. |
|
1620 |
|
|
1621 |
``username`` and ``password`` denote the RAPI user's username and the RAPI |
|
1622 |
user's password. We set the above to reflect our :ref:`RAPI User setup |
|
1623 |
<rapi-user>`. The port is already set to the default RAPI port; you need to |
|
1624 |
change it, only if you have changed it in your Ganeti cluster setup. |
|
1625 |
|
|
1626 |
Once we setup the first backend to point at our Ganeti cluster, we update the |
|
1627 |
Cyclades backends status by running: |
|
1628 |
|
|
1629 |
.. code-block:: console |
|
1630 |
|
|
1631 |
$ snf-manage backend-update-status |
|
1632 |
|
|
1633 |
Add the Public Network |
|
1634 |
---------------------- |
|
1635 |
|
|
1636 |
After connecting Cyclades with our Ganeti cluster, we need to setup the Public |
|
1637 |
Network: |
|
1638 |
|
|
1639 |
.. code-block:: console |
|
1640 |
|
|
1641 |
$ snf-manage network-create --subnet=5.6.7.0/27 |
|
1642 |
--gateway=5.6.7.1 |
|
1643 |
--subnet6=2001:648:2FFC:1322::/64 |
|
1644 |
--gateway6=2001:648:2FFC:1322::1 |
|
1645 |
--public --dhcp --type=PUBLIC_ROUTED |
|
1646 |
--name=public_network |
|
1647 |
|
|
1648 |
This will create the Public Network on both Cyclades and the Ganeti backend. To |
|
1649 |
make sure everything was setup correctly, also run: |
|
1650 |
|
|
1651 |
.. code-block:: console |
|
1652 |
|
|
1653 |
$ snf-manage reconcile-networks |
|
1654 |
$ snf-manage reconcile-pools |
|
1655 |
|
|
1656 |
You can see all available networks by running: |
|
1657 |
|
|
1658 |
.. code-block:: console |
|
1659 |
|
|
1660 |
$ snf-manage listnetworks |
|
1661 |
|
|
1662 |
and inspect each network's state by running: |
|
1663 |
|
|
1664 |
.. code-block:: console |
|
1665 |
|
|
1666 |
$ snf-manage network-inspect <net_id> |
|
1667 |
|
|
1668 |
Finally, you can see the networks from the Ganeti perspective by running on the |
|
1669 |
Ganeti MASTER: |
|
1670 |
|
|
1671 |
.. code-block:: console |
|
1672 |
|
|
1673 |
$ gnt-network list |
|
1674 |
$ gnt-network info <network_name> |
|
1675 |
|
|
1613 | 1676 |
Servers restart |
1614 | 1677 |
--------------- |
1615 | 1678 |
|
1616 |
We also need to restart gunicorn on node1:
|
|
1679 |
Restart gunicorn on node1:
|
|
1617 | 1680 |
|
1618 | 1681 |
.. code-block:: console |
1619 | 1682 |
|
Also available in: Unified diff