Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 52 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
52
Dung lượng
855 KB
Nội dung
Chương này mô tả quá trình cài đặt và cấu hình Globus Toolkit 4.0. Chúng tôi
sẽ triển khai cài đặt Globus Toolkit trong mạng gồm 3 máy tính. Các vấn đề chính
trong chương này gồm có:
• Download Globus Toolkit 4.0
• Các gói tin của Globus Toolkit 4.0
• Mô hình môi trường mạng Grid
• Cài đặt Globus Toolkit 4.0
• Cấu hình và thử nghiệm môi trường Grid
• Gỡ bỏ Globus Toolkit 4.0
1.1. Download Globus Toolkit 4.0
Globus Toolkit 4.0 là phần mềm mã nguồn mở hỗ trợ nhiều hệ điều hành. Các
gói tin binary hỗ trợ môi trường Windows, Linux (SuSE Linux 9/8, Red Hat Linux 9,
Fedora Core 2/3 và Debian 3.1) và Solaris 9. Việc biên dịch GT4 từ các gói tin nguồn
có thể hỗ trợ thêm các hệ điều hành AIX và Mac OS X. Các thành phần phát triển trên
nền tảng Java như WSRF hoặc WS Java Core đều tương thích với các hệ điều hành hỗ
trợ Java, trong đó có Windows. Hiện nay, việc sử dụng hệ điều hành Linux để phát
triển môi trường Grid đang trở nên phổ biến. Vì vậy, chúng tôi sử dụng hệ điều hành
Fedora Core 3 để phát triển môi trường Grid. Các gói tin sử dụng là các gói tin binary.
Truy cập địa chỉ: http://www.globus.org/toolkit/downloads/4.0.0/ để download các gói
tin này.
Gói tin GT4 cho Fedora Core 3 là: gt4.0.0-ia32-fedora3-binary-installer.tar.gz
1.2. Mô hình môi trường mạng Grid
Chúng tôi sử dụng 3 máy tính để cài đặt môi trường mạng Grid.
Hình 23: Mô hình mạng Grid
Các máy tính bao gồm:
1
• CA: Đây là nơi chứng thực quyền hạn. Do đó, chúng tôi sử dụng SimpleCA có
sẵn trong gói tin GT4.
• Host A, Host B: là các nốt mạng Grid. Chúng tôi cài đặt gói tin GT4 cho các
nốt này.
Host A và Host B sử dụng hai tên người dùng khác nhau là auser1 và buser1,
nhưng chúng cùng chia sẻ một ID người dùng chung là:
/O=Grid/O=Globus/OU=gridk47.com/CN=grid user 1
Bảng 7.2a mô tả các máy tính của mạng Grid.
Tên máy Tên host Chức năng Hệ điều hành Gói tin cài
đặt
CA ca.gridk47.com Chứng thực
quyền hạn
Fedora Core 3 Gói GT4
binary
Host A hosta.gridk47.com Nốt mạng
Grid
Fedora Core 3 Gói GT4
binary
Host B hostb.gridk47.com Nốt mạng
Grid
Fedora Core 3 Gói GT4
binary
Bảng 7.2a Các máy tính trong mạng Grid
Bảng 7.2b mô tả phiên bản các phần mềm sử dụng
Tên phần mềm Phiên bản Thư mục chủ
Globus Toolkit 4.0 4.0.0 /usr/local/globus-4.0.0
Java SDK 1.5 /usr/local/java
Apache Ant 1.6.3 /usr/local/ant
Bảng 7.2b: Phiên bản các phần mềm sử dụng
1.3. Cài đặt Globus Toolkit 4.0
Chương này mô tả thứ tự các bước để cài đặt Globus Toolkit 4.0
1.3.1. Cài đặt các phần mềm yêu cầu cho Globus Toolkit 4.0
Trước khi cài đặt Globus Toolkit 4.0, cần cài đặt các phần mềm sau:
Tên phần mềm Phiên bản
Java SDK 1.5
2
Apache Ant 1.6.3
Bảng 7.3a: Các phần mềm cho Globus Toolkit 4.0
a - Cài đặt Java SDK
Để cài đặt Java SDK
• Lấy gói tin Java SDK, vào địa chỉ: http://java.sun.com
• Cài đặt Java SDK:
[root@hosta]# rpm -ivh jdk-1_5_0_06-linux-i586-rpm.rpm
• Để thiết lập biến môi trường cho Java SDK, mở tệp /etc/profile và thêm đoạn sau:
export JAVA_HOME=/usr/local/java
export PATH=$JAVA_HOME/bin:$PATH
• Để biến môi trường hoạt động, đóng tệp /etc/profile và chạy lệnh:
[root@hosta]# . etc/profile
• Để kiểm tra Java SDK đã được cài đặt thành công, dùng lệnh:
[root@hosta]# java version
b - Cài đặt Apache Ant
Để cài đặt Apache Ant:
• Lấy gói tin Apache Ant tài địa chỉ: http://ant.apache.org/
• Bung tệp nén Apache Ant:
[root@hosta]# tar xvzf apache-ant-1.6.3-bin.tar.gz -C /usr/local
• Thiết lập biến môi trường cho Apache Ant, mở tệp /etc/profile và thêm đoạn sau:
export ANT_HOME=/usr/local/apache-ant-1.6.3
export PATH=$ANT_HOME/bin:$PATH
• Để biến môi trường hoạt động, đóng tệp /etc/profile và chạy lệnh:
[root@hosta]# . etc/profile
• Để kiểm tra Apache Ant đã cài đặt thành công, dùng lệnh:
3
[root@hosta]# ant version
1.3.2. Cấu hình môi trường Linux cho Globus Toolkit 4.0
Trước khi cài đặt Globus Toolkit, cần cấu hình một số thứ trong môi trường
Fedora Core 3 đang sử dụng trên các máy tính trong mạng.
a-Thêm tài khoản người dùng
Trong Fedora, sử dụng lệnh: adduser để thêm một người dùng mới. Ví dụ:
adduser auser1 để thêm người dùng auser1. Bảng sau đây là những người dùng cần
thêm vào trong các máy tính trên mạng.
Tên host Tên người dùng
ca globus
hosta globus, auser1
hostb globus, buser1
Bảng 7.3b: Danh sách người dùng trên các máy tính
b- Thiết lập thời gian
Trong mạng Grid computing, việc đồng bộ hoá thời gian giữa các máy tính
với nhau là rất quan trọng. Nếu thời gian không được đồng bộ, khi dùng chứng thực
GSI sẽ xảy ra lỗi. Do đó, chúng tôi thiết lập time server là NTP cho môi trường Grid
của mình và thiết lập thời gian cho tất cả các máy tính trong hệ thống.
Để cấu hình NTP:
• Trên máy tính CA làm NTP server, chỉnh sửa tệp: /etc/ntp.conf, bỏ comment 2 dòng
dưới đây bằng cách bỏ ký từ # đầu dòng:
server 127.127.1.0 # local clock
driftfile /etc/ntp/drift
• Thực hiện tương tự với 2 máy Host A và Host B:
server (địa chỉ IP của CA) # time server
driftfile /etc/ntp/drift
• Trên tất cả các máy, cầu hình ntp deamon bằng cách dùng lệnh:
[root@hosta]# chkconfig ntpd -on
• Bắt đầu chạy dịch vụ ntp
4
[root@hosta]# service ntpd start
• Để kiểm tra thời gian đã được đồng bộ hay chưa, dùng lệnh ntpq. Nếu có dấu sao
(*) đằng trước tên host thì cấu hình NTP đã thành công:
[root@hosta]# ntpq -p
remote refid st t when poll reach delay offset jitter
==========================================
*ca.gridk47.com LOCAL(0) 6 u 516 1024 377 0.931 -2.258 0.262
c- Thiết lập tường lửa
Ở đây cúng tôi không thiết lập tường lửa. Nếu thiết lập tường lửa, cần phải
mở các cổng TCP sau đây để lắng nghe các dịch vụ và thành phần của Globus Toolkit.
Cổng TCP Các thành phần của GT4
2811 GridFTP
8080 Globus container (chế độ không bảo mật)
8443 Globus container (chế độ bảo mật)
Bảng 7.3c: Các cổng TCP cần mở khi thiết lập tường lửa
1.3.3. Cài đặt Globus Toolkit 4.0
Để cài đặt Globus Toolkit 4.0, chúng tôi sử dụng gói tin Binary cho Fedora
Core 3.
• Lấy gói tin binary, vào địa chỉ:
http://www.globus.org/toolkit/downloads/4.0.0/
• Vào người dùng globus, bung tệp nén binary:
[globus@hosta]$ tar xvzf gt4.0.0-ia32-fedora3-binary-installer.tar.gz \
-C /tmp
• Thiết lập biến môi trường cho thư mục chứa Globus:
[globus@hosta]$ export GLOBUS_LOCATION=/usr/local/globus-4.0.0
• Thay đổi quyền hạn của thư mục này cho người dùng globus:
[globus@hosta]$ su
Password:
5
[root@hosta]# mkdir $GLOBUS_LOCATION
[root@hosta]# chown globus:globus $GLOBUS_LOCATION
[root@hosta]# exit
exit
[globus@hosta]$
Cấu hình và cài đặt Globus Toolkit 4.0, mô tả qua các bước sau:
[globus@hosta]$ cd /tmp/gt4.0.0-ia32-fedora3-binary-installer
[globus@hosta]$ ./configure prefix=$GLOBUS_LOCATION
checking for javac /usr/local/java/j2sdk1.5.0/bin/javac
checking for ant /usr/local/apache-ant-1.6.3/bin/ant
configure: creating ./config.status
config.status: creating Makefile
[globus@hosta]$ make 2>&1 | tee build.log
cd gpt-3.2autotools2004 && OBJECT_MODE=32 ./build_gpt
build_gpt ====> installing GPT into /usr/local/globus-4.0.0
(Bỏ qua thông tin)
[globus@hosta]$ make install
ln -s /usr/local/globus-4.0.0/etc/gpt/packages
/usr/local/globus-4.0.0/etc/globus_packages
/usr/local/globus-4.0.0/sbin/gpt-postinstall
(Bỏ qua thông tin)
config.status: creating fork.pm
Done
1.4. Cấu hình và thử nghiệm môi trường Grid
Sau khi cài đặt xong Globus Toolkit, cần phải cấu hình môi trường grid. Để
cấu hình môi trường grid, cần cấu hình các thành phần sau:
• Cấu hình các biến môi trường
6
• Cấu hình bảo mật
• Cấu hình Java WS Core
• Cấu hình và kiểm tra GridFTP
1.4.1. Cấu hình các biến môi trường
Để tất cả các người dùng đều có thể sử dụng các biến môi trường của Grid.
Chẳng hạn: GLOBUS_LOCATION, mở tệp /etc/profile và thêm đoạn:
export GLOBUS_LOCATION=/usr/local/globus-4.0.0
source $GLOBUS_LOCATION/etc/globus-user-env.sh
source $GLOBUS_LOCATION/etc/globus-devel-env.sh
1.4.2. Cấu hình bảo mật
Chúng tôi sử dụng SimpleCA để cài đặt bảo mật. SimpleCA là thành phần
được tích hợp trong Globus Toolkit 4.0.
a- Cài đặt các gói tin CA
Vào tài khoản người dùng globus tại máy CA
Để cài đặt simpleCA, dùng lệnh setup-simple-ca và thực hiện các bước:
[globus@ca]$ $GLOBUS_LOCATION/setup/globus/setup-simple-ca
WARNING: GPT_LOCATION not set, assuming:
GPT_LOCATION=/usr/local/globus-4.0.0
C e r t i f i c a t e A u t h o r i t y S e t u p
This script will setup a Certificate Authority for signing Globus users
certificates. It will also generate a simple CA package that can be
distributed to the users of the CA.
The CA information about the certificates it distributes will be kept in:
/home/globus/.globus/simpleCA/
/usr/local/globus-4.0.0/setup/globus/setup-simple-ca: line 250: test: res:
integer expression expected
The unique subject name for this CA is:
7
cn=Globus Simple CA, ou=simpleCA-ca.gridk47.com, ou=GlobusTest, o=Grid
Do you want to keep this as the CA subject (y/n) [y]: y
Enter the email of the CA (this is the email where certificate requests will be
sent to be signed by the CA): ca@gridk47.com
The CA certificate has an expiration date. Keep in mind that once the CA
certificate has expired, all the certificates signed by that CA become invalid.
A CA should regenerate the CA certificate and start re-issuing ca-setup
packages before the actual CA certificate expires. This can be done by
re-running this setup script. Enter the number of DAYS the CA certificate
should last before it expires.
[default: 5 years (1825 days)]: (type the number of days)1825
Enter PEM pass phrase: (nhập mật khẩu chứng thực)
Verifying - Enter PEM pass phrase: (nhập mật khẩu chứng thực)
(Bỏ qua thông tin)
setup-ssl-utils: Complete
b- Thiết lập bảo mật cho các nốt mạng
Sau khi cài đặt simpleCA, một gói tin được tạo ra để cấu hình bảo mật cho các
nốt mạng khác. Sao các gói tin này vào mỗi nốt mạng.
• Vào tài khoản globus trên các máy Host A và Host B, sao chép gói tin tại máy CA.
[globus@hosta]$ scp globus@ca:/home/globus/.globus/simpleCA \
/globus_simple_ca_(ca_hash)_setup-0.18.tar.gz .
[globus@hosta]$ $GLOBUS_LOCATION/sbin/gpt-build \
globus_simple_ca_(ca_hash)_setup-0.18.tar.gz gcc32dbg
[globus@hosta]$ $GLOBUS_LOCATION/sbin/gpt-postinstall
• Vào tài khoản root, cấu hình CA cho mỗi nốt mạng. Sau khi cấu hình, thư mục
/etc/grid-security được tạo ra
[root@hosta]# $GLOBUS_LOCATION/setup\
8
/globus_simple_ca_[ca_hash]_setup/setup-gsi -default
c- Đăng ký và xác nhận chứng thực host
Mỗi host khi tham gia mạng grid đều phải đăng ký chứng thực và được CA
xác nhận chứng thực. Ví dụ để đăng ký chứng thực cho Host A
• Vào tài khoản root, yêu cầu đăng ký chức thực với tên host là hosta
[root@hosta]# grid-cert-request -host hosta
Để xác nhận chứng thực
• Chép tệp /etc/grid-security/hostcert_request.pem được tạo ra khi đang ký chứng
thực tại Host A vào máy CA.
• Trong máy Host A, vào tài khoản globus, xác nhận chứng thực bằng lệnh: grid-ca-
sign
[globus@ca]$ grid-ca-sign -in hostcert_request.pem -out hostcert.pem
To sign the request
please enter the password for the CA key: (nhập mật khẩu chứng thực)
The new signed certificate is at:
/home/globus/.globus/simpleCA//newcerts/01.pem
• Chép đè tệp hostcert.pem đè lên tệp có sẵn trong thư mục /etc/grid-security tại Host
A
d- Đăng ký và xác nhận chứng thực người dùng
Tương tự như host, mỗi người dùng khi tham gia vào mạng Grid đều phải
đăng ký chứng thực và được xác nhận chứng thực người dùng. Ví dụ để đăng ký và
xác nhận chứng thực với người dùng auser1 tại Host A
Để đăng ký chứng thực:
[auser1@hosta]$ grid-cert-request
Enter your name, e.g., John Smith: grid user 1
A certificate request and private key is being created.
You will be asked to enter a PEM pass phrase.
This pass phrase is akin to your account password,and is used to protect your
9
key file.
If you forget your pass phrase, you will need to obtain a new certificate.
Generating a 1024 bit RSA private key
++++++
++++++
writing new private key to '/home/auser1/.globus/userkey.pem'
Enter PEM pass phrase: (nhập mật khẩu chứng thực)
Verifying - Enter PEM pass phrase: (nhập lại mật khẩu chứng thực)
Để xác nhận chứng thực người dùng
• Chép tệp /home/auser1/.globus/usercert_request.pem từ máy Host A sang máy CA.
• Tại máy CA, vào tài khoản globus, xác nhận chứng thực bằng cách dùng lệnh grid-
ca-sign
[globus@ca]$ grid-ca-sign -in usercert_request.pem -out usercert.pem
To sign the request
please enter the password for the CA key:
The new signed certificate is at:
/home/globus/.globus/simpleCA//newcerts/02.pem
Chép tệp usercert.pem đè lên tệp đã có sẵn tại thư mục /home/auser1/.globus/
ở Host A.
• Để kiểm tra người dùng đã được chứng thực, vào tài khoản auser1 và dùng lệnh:
grid-proxy-init -debug -verify
[auser1@hosta]$ grid-proxy-init -debug -verify
User Cert File: /home/auser1/.globus/usercert.pem
User Key File: /home/auser1/.globus/userkey.pem
Trusted CA Cert Dir: /etc/grid-security/certificates
Output File: /tmp/x509up_u511
10
[...]... người dùng này với tên người dùng local, dùng lệnh: grid-mapfile-add-entry [root@hosta]# grid-mapfile-add-entry -dn \ "/O=Grid/OU=GlobusTest/OU=simpleCAca.gridk47.com/OU=gridk47.com/CN=grid user 1" -ln auser1 Modifying /etc/grid-security/grid-mapfile /etc/grid-security/grid-mapfile does not exist Attempting to create /etc/grid-security/grid-mapfile New entry: "/O=Grid/OU=GlobusTest/OU=simpleCAca.gridk47.com/OU=gridk47.com/CN=grid... xmlns:wsrp="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-dra xmlns:wsrpw="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-dr xmlns:wsdlpp="http://www.globus.org/namespaces/2004/10/WSDLPreprocessor" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> . name="MathService"
targetNamespace="http://www.globus.org/namespaces/examples/core/MathService_instance"xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="http://www.globus.org/namespaces/examples/core/MathService_instance"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsrp="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.xsd"
xmlns:wsrpw="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.wsdl"
xmlns:wsdlpp="http://www.globus.org/namespaces/2004/10/WSDLPreprocessor"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<wsdl:import. dùng local, dùng lệnh:
grid-mapfile-add-entry
[root@hosta]# grid-mapfile-add-entry -dn
"/O=Grid/OU=GlobusTest/OU=simpleCA-
ca.gridk47.com/OU=gridk47.com/CN=grid