mirror of
https://git.proxmox.com/git/mirror_corosync
synced 2025-08-06 03:23:02 +00:00
Updated INSTALL file.
git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2346 fd59a12c-fef9-0310-b244-a6a79926bd2f
This commit is contained in:
parent
483fe491f9
commit
2fd4d6f369
88
INSTALL
88
INSTALL
@ -10,6 +10,22 @@ together with object code resulting from the compiling of publicly
|
||||
available source code, may be exported from the United States under License
|
||||
Exception TSU prsuant to 15 C.F.R Section 740.13(e).
|
||||
|
||||
---------------------------------
|
||||
* Platforms Built and Tested On *
|
||||
---------------------------------
|
||||
Corosync has been tested on:
|
||||
Linux: Fedora 11, Debian Lenny, Red Hat Enterprise Linux 5
|
||||
Solaris: version 10 CSW
|
||||
BSD: FreeBSD and OpenBSD
|
||||
MacOSX: Darwin latest update
|
||||
|
||||
It should build and run properly on the tested platforms as well as possibly
|
||||
others with minimal effort. Corosync requires a coherent mmap() system call
|
||||
and will not operate on platforms which don't support coherent mmap().
|
||||
|
||||
Corosync has been tested with recent gcc compilers and Intel's C compiler.
|
||||
SunStudio compilers fail to build with various internal compiler errors.
|
||||
|
||||
----------------------------
|
||||
* Building from subversion *
|
||||
----------------------------
|
||||
@ -46,6 +62,29 @@ Step 2: Install the binaries
|
||||
balance:~/corosync/trunk% su
|
||||
balance:~/corosync/trunk# make install
|
||||
|
||||
-------------------------------
|
||||
* A notice about dependencies *
|
||||
-------------------------------
|
||||
We have strived very hard to avoid dependencies as much as possible, and in
|
||||
fact corosync can be compiled without any dependencies. The one optional
|
||||
dependency corosync has today is the nss package when built with support for
|
||||
nss encryption. NSS encryption performs more poorly then the default
|
||||
encryption, but may be a good choice if your organization has policies
|
||||
regarding encryption technology requiring the use of a common cryptographic
|
||||
library such as Netscape Security Services.
|
||||
|
||||
To enable nss during building:
|
||||
balance:~/corosync/trunk% ./configure --enable-nss
|
||||
|
||||
To disable nss during buildling:
|
||||
balance:~/corosync/trunk% ./configure --disable-nss
|
||||
|
||||
The nss packages required to build corosync with nss support can usually be
|
||||
found by installing the "nss-devel" and "nspr-devel" packages for your
|
||||
distribution. Note nss is enabled by default, so if you don't want nss support
|
||||
or don't want to install nss devel packages, make sure to set the appropriate
|
||||
configure option as described above.
|
||||
|
||||
------------------------
|
||||
* Configuring Corosync *
|
||||
------------------------
|
||||
@ -100,22 +139,6 @@ or unpredictable results may occur.
|
||||
|
||||
Do not use DOS style termination. This breaks the parser.
|
||||
|
||||
Configure Host
|
||||
--------------
|
||||
For security reasons, corosync only allows a process that had the EGID/GID
|
||||
of "ais" to connect to it. To make development easier, it is recommended to
|
||||
create an "ais" user with the "ais" group.
|
||||
|
||||
[root@balance root]# adduser ais -g ais
|
||||
|
||||
Set the ais user's password:
|
||||
|
||||
[root@balance root]# passwd ais
|
||||
Changing password for user ais.
|
||||
New password:
|
||||
Retype new password:
|
||||
passwd: all authentication tokens updated successfully.
|
||||
|
||||
Generate a private key
|
||||
----------------------
|
||||
corosync uses cryptographic techniques to ensure authenticity and privacy of
|
||||
@ -124,7 +147,7 @@ correct operation.
|
||||
|
||||
First generate the key on one of the nodes:
|
||||
|
||||
unix# exec/keygen
|
||||
balance# corosync-keygen
|
||||
Corosync Authentication key generator.
|
||||
Gathering 1024 bits for key from /dev/random.
|
||||
Writing corosync key to /etc/ais/authkey.
|
||||
@ -137,14 +160,13 @@ with nonmatching private keys will not be able to join the same configuration.
|
||||
Copy the key to some transportable storage or use ssh to transmit the key
|
||||
from node to node. Then install the key with the command:
|
||||
|
||||
unix# install -D --group=0 --owner=0 --mode=0400 /path_to_authkey/authkey /etc/ais/authkey
|
||||
balance# install -D --group=0 --owner=0 --mode=0400 /path_to_authkey/authkey /etc/ais/authkey
|
||||
|
||||
If the message invalid digest appears, the keys are not the same on each node.
|
||||
|
||||
Run the corosync executive
|
||||
-------------------------
|
||||
Get one or more nodes and run the corosync executive on each node. A list of
|
||||
node IPs should be logged when the nodes join a configuration. Run the
|
||||
Get one or more nodes and run the corosync executive on each node. Run the
|
||||
corosync daemon after following the previous directions. The daemon must be
|
||||
run as UID 0(root).
|
||||
|
||||
@ -153,21 +175,27 @@ and the techniques corosync use to overcome these threats.
|
||||
|
||||
Before running any of the test programs
|
||||
---------------------------------------
|
||||
The corosync executive will ensure security by only allowing the ais group (or
|
||||
uid root) to connect to the service. Switch to the ais group before
|
||||
running any applications linked to the ais apis, or the applications will
|
||||
not be authenticated and won't be able to access services.
|
||||
The corosync executive will ensure security by only allowing the UID 0(root) or
|
||||
GID 0(root) to connect to it. To allow other users to access the corosync
|
||||
executive, create a directory called /etc/corosync/uidgid.d and place a file in
|
||||
it named in some way that is identifiable to you. All files in this directory
|
||||
will be scanned and their contents added to the allowed uid gid database. The
|
||||
contents of this file should be
|
||||
uidgid {
|
||||
uid: username
|
||||
gid: groupname
|
||||
}
|
||||
|
||||
[sdake@balance sdake]$ su ais
|
||||
Password:
|
||||
[ais@balance sdake]$ id
|
||||
uid=501(ais) gid=502(ais) groups=502(ais)
|
||||
Please note that these users then have full ability to transmit and receive
|
||||
messages in the cluster and are not bound by the threat model described in
|
||||
SECURITY.
|
||||
|
||||
Try out the corosync cpg functionality
|
||||
--------------------------------------
|
||||
After corosync is running
|
||||
|
||||
su to ais user
|
||||
|
||||
Run test/testcpg on multiple nodes or on the same node. Messages can be typed
|
||||
which will then be sent to other testcpg applications in the cluster.
|
||||
|
||||
To see a hashed verified output of data on all nodes, test/cpgverify can be
|
||||
run.
|
||||
|
Loading…
Reference in New Issue
Block a user