intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Cài đặt Tomcat và triển khai các ứng dụng web với Rex

Chia sẻ: Phung Tuyet | Ngày: | Loại File: PDF | Số trang:9

117
lượt xem
15
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tomcat là một Java Servlet thi hành các ứng dụng Java Servlet và JavaServer Pages (JSP) từ Sun Microsystems, và cung cấp một máy chủ HTTP cho ngôn ngữ Java thuần túy để thực thi các chương trình lệnh viết bằng ngôn ngữ Java. Trong bài hướng dẫn này chúng tôi sẽ giúp các bạn có thể quản lý các cài đặt Tomcat của mình và triển khai những ứng dụng web một cách lặp đi lặp lại với Rex. Mặc dù phần minh họa này chúng tôi sử dụng Debian Squeeze, nhưng Rex cũng có sẵn cho các distribution...

Chủ đề:
Lưu

Nội dung Text: Cài đặt Tomcat và triển khai các ứng dụng web với Rex

  1. Cài đặt Tomcat và triển khai các ứng dụng web với Rex Tomcat là một Java Servlet thi hành các ứng dụng Java Servlet và JavaServer Pages (JSP) từ Sun Microsystems, và cung cấp một máy chủ HTTP cho ngôn ngữ Java thuần túy để thực thi các chương trình lệnh viết bằng ngôn ngữ Java. Trong bài hướng dẫn này chúng tôi sẽ giúp các bạn có thể quản lý các cài đặt Tomcat của mình và triển khai những ứng dụng web một cách lặp đi lặp lại với Rex. Mặc dù phần minh họa này chúng tôi sử dụng Debian Squeeze, nhưng Rex cũng có sẵn cho các distribution khác. Thông tin về Rex Rex là một công cụ được viết trong Perl, giúp dễ dàng quản lý và triển khai nhiều máy chủ. Điểm khởi đầu của một dự án Rex chính là tập tin Rexfile của nó. Rex sẽ
  2. phân tích file này và thực thi các tác vụ được quy định trên các máy chủ của bạn. Bạn cũng có thể hiểu một cách đơn giản nó giống như một Makefile, nhưng được viết trong Perl. Mỗi Rexfile đều được chia thành tasks, bạn có thể xác định tác vụ cho từng bước một cách hợp lý để cài đặt và cấu hình cho các máy chủ của mình. Các phần mềm Bạn chỉ cần duy nhất Rex trên máy trạm của mình, không cần phần mềm nào khác cho các server. Ngoài ra hãy lưu ý sử dụng quyền root khi truy cập ssh tới máy chủ. Người dùng có thể dễ dàng tải về Rex từ trang chủ rexify.org/get/. Các gói này có sẵn cho CentOS, Debian, Ubuntu, Fedora, Mageia và OpenSuSE. Tất cả đều có sẵn CPAN. Đối với Debian chỉ cần thêm vào kho lưu trữ Rex cho đường dẫn sources.list.d của bạn: echo 'deb http://rex.linux-files.org/debian/ squeeze rex' >> /etc/apt/sources.list Sau đó thêm khóa GPG tới apt: wget -O - http://rex.linux-files.org/DPKG-GPG-KEY- REXIFY-REPO | apt-key add - Và tiến hành cài đặt phần mềm. Chúng ta sẽ cài đặt rex cho công cụ core và rex- apache-deploy cho module deployment. apt-get update && apt-get install rex rex-apache-deploy Chuẩn bị Rexfile và thực thi tác vụ đầu tiên Trước tiên chúng ta sẽ tạo thư mục tomcat và thay đổi nó: mkdir tomcat; cd tomcat
  3. Sau đó checkout các module Rex Example từ github trong thư mục lib. Ở đó bạn sẽ nhận được sự giúp đỡ về module tomcat và apache. git clone https://github.com/krimdomu/rex-example- modules.git lib Tiếp theo chúng ta tạo tập tin Rexile và mở nó với trình soạn thảo mà mình đang dùng. Nếu bạn sử dụng vim bạn có thể chạy dòng lệnh dưới đây để kích hoạt việc tô đậm cú pháp: :set ft=perl :syn on # File: Rexfile # at first enable strict and warnings use strict; use warnings; # than include all needed example modules use ALLMODS; # this sets the include path to the rex example modules use apache; # include apache module use apache::module; use tomcat; # include tomcat module use tomcat::user; use tomcat::role; # set user and password to login to your servers user "root"; password "test";
  4. # enable password authentication. pass_auth; # if you want to use key authentication use the following # and comment out the line "pass_auth" # public_key "/path/to/your/public.key"; # private_key "/path/to/your/private.key"; # define a server group named "tomcat". # put all your servers you want to deploy in that group. group tomcats => "tc01", "tc02"; desc "Install and Configure Apache and Tomcat"; task "prepare", group => "tomcats", sub { apache::setup(); apache::module::setup({name => "jk"}); tomcat::setup(); tomcat::role::add_manager(); tomcat::user::add_manager({ username => "manager", password => "passw0rd", }); apache::restart(); tomcat::restart();
  5. # take care that the services will start on system boot service apache2 => "ensure", "started"; service tomcat6 => "ensure", "started"; }; Bây giờ lưu lại tập tin này và mở bằng terminal, sau đó thay đổi thư mục tomcat. Để thực thi một tác vụ được tạo ra trên máy chủ chỉ cần gọi nó: rex prepare Nếu bạn muốn xem các tác vụ của mình, có thể sử dụng tùy chọn -T: rex -T Cấu hình Apache/modjk Sau khi cài đặt xong apache và tomcat bạn cần cấu hình Apache/modjk để chuyển hướng các yêu cầu tới tomcat. Để thực hiện điều này bạn cần tạo thư mục có tên files để lưu lại các tập tin cấu hình của mình ở đó. mkdir files ## File: files/worker.properties ## this file is managed by rex ## worker.list=tc,jkstatus worker.tomcat.port=8009 worker.tomcat.host={"networkconfiguration"}->{"eth0"}->{"ip"} %> worker.tomcat.type=ajp13
  6. worker.tomcat.lbfactor=1 worker.tomcat.reference=worker.template worker.tc.type=lb worker.tc.balance_workers=tomcat worker.tc.sticky_session=false worker.jkstatus.type=status worker.template.type=ajp13 Như bạn thấy ở đây, có một biến đặc biệt trong file này. Rex có một hệ thống xây dựng các template, và với sự thể hiện trên bạn sẽ nhận được IP của thiết bị mạng etho. ## File: files/modjk.conf ## this file is managed by rex ## JkWorkersFile /etc/apache2/worker.properties JkLogFile /var/log/apache2/mod_jk.log JkShmFile /var/log/apache2/jk.shm JkMount /* tc # Add the jkstatus mount point JkMount /jkmanager/* jkstatus JkMount jkstatus Trong các kịch bản realworld cũng có một server.xml. Nhưng trong hướng dẫn này bạn chỉ cần bản vá tập tin để kích hoạt kết nối AJP.
  7. Bây giờ mở tập tin Rexfile của bạn và thêm một tác vụ thứ hai có tên configure: desc "Configure Apache and Tomcat"; task "configure", group => "tomcats", sub { # remove default vhost unlink "/etc/apache2/sites-enabled/000-default"; # upload the file, but parse the file as a template file "/etc/apache2/worker.properties", content => template("files/worker.properties"), owner => "root", group => "root", mode => 640, on_change => sub { apache::restart(); }; # upload the configuration files file "/etc/apache2/conf.d/modjk.conf", source => "files/modjk.conf", owner => "root", group => "root", mode => 640, on_change => sub { apache::restart(); }; # patch server.xml to allow ajp access # in realworld use a template for this file my $content = cat "/etc/tomcat6/server.xml";
  8. $content =~ s//\n/; file "/etc/tomcat6/server.xml", content => $content, on_change => sub { tomcat::restart(); }; }; Tiếp theo bạn có thể chạy tác vụ configure cho cấu hình server của mình. rex configure Triển khai các ứng dụng Sau khi triển khai và cấu hình máy chủ của mình, bạn cần tải lên các ứng dụng phục vụ cho server. Có một module Rex cho việc triển khai các tác vụ đơn giản gọi là Rex::Apache::Deploy mà bạn đã cài đặt nó. Trong phần bài viết này bạn sẽ triển khai psi-probe. Bạn có thể tải về tại đây. Tạo một thư mục có tên packages, giải nén tập tin zip và copy file probe.war vào thư mục vừa tạo. mkdir packages cd packages wget http://psi-probe.googlecode.com/files/probe- 2.2.3.zip unzip probe-2.2.3.zip Mở Rexfile của bạn và đặt vào dòng lệnh dưới đây: # include deployment support for tomcat
  9. use Rex::Apache::Deploy "Tomcat"; Và tạo một tác vụ thứ ba có tên deploy. desc "Deploy the application"; task "deploy", group => "tomcats", sub { # set the context path for our tomcat application context_path "/psiprobe"; # deploy the app. deploy "packages/probe.war", username => "manager", password => "passw0rd", port => 8080; }; Chạy đồng thời toàn bộ các tác vụ Bây giờ bạn có thể thực thi cả ba tác vụ cùng lúc mà không cần chạy từng lệnh một bằng cách định nghĩa một file batch. Mở Rexfile của mình và gán thêm vào đó dòng lệnh sau: desc "Execute all tasks prepare, configure and deploy"; batch all => "prepare", "configure", "deploy"; Cuối cùng bạn chỉ cần chạy lệnh sau để thực thi tác vụ: rex -b all Sau khi khởi chạy chúng, bạn có thể truy cập các ứng dụng được triển khai dưới /psiprobe trên máy chủ của mình.
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
10=>1