Bạn hiện đang ngoại tuyến, hãy chờ internet để kết nối lại

Cấu hình IIS 7.0 hoặc sau World Wide Web bản ghi dịch vụ xuất bản trong một cụm chuyển đổi dự phòng Windows Server 2008, Windows Server 2008 R2 hoặc Windows Server 2012

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

970759
GIỚI THIỆU
Bài viết này mô tả làm thế nào để cấu hình Microsoft Internet Information Services (IIS) 7.5 hoặc IIS 7.0 trong một cụm chuyển đổi dự phòng Windows Server 2008 hoặc Windows Server 2008 R2. Các thủ tục trong bài viết này chỉ áp dụng cho bản ghi dịch vụ xuất bản World Wide Web. Để được hướng dẫn làm thế nào để cấu hình FTP Publishing service trong một cụm chuyển đổi dự phòng, xin tham khảo:
974603 Làm thế nào để cấu hình FTP 7.5 cho IIS 7.0 trong một Windows Server 2008 cụm chuyển đổi dự phòng
Thông tin thêm
Trong phiên bản trước của Internet thông tin bản ghi dịch vụ, Microsoft cung cấp nguồn tài nguyên chung thành phần màn hình để hỗ trợ sẵn sàng cao Web máy chủ trường hợp sử dụng cơ sở hạ tầng Microsoft Clustering. Tuy nhiên, mã tùy chỉnh là cần thiết để hoàn toàn nhận ra tiềm năng của một giải pháp. Ngoài ra, các kịch bản chung mà Microsoft cung cấp không đáp ứng nhu cầu khách hàng. Để cấu hình IIS 7.5 hoặc IIS 7.0 trong một môi trường nhóm bằng cách sử dụng Windows Server chuyển đổi dự phòng clustering, bạn phải sử dụng một số mã tùy chỉnh (kịch bản) để cho phép một kịch bản sẵn sàng cao. Khi bạn làm điều này, người dùng có thể tùy chỉnh các thiết lập để đáp ứng yêu cầu của họ. Điều này mang lại cho họ đầy đủ quyền kiểm soát sự tích hợp sẵn sàng cao của các ứng dụng web. Ngoài ra, các tập lệnh giao diện để quản lý và giám sát mà đã được giới thiệu trong IIS 7,5 và IIS 7.0 cung cấp một môi trường phong phú hơn so với các tập lệnh cung cấp trước đây.

Lưu ý Tập tin cài đặt chuyên biệt IIS 7.0 không chính xác bao gồm Clusweb.vbs và tập tin kịch bản Clusftp.vbs được sử dụng trong IIS 6.0 IIS cụm tác vụ quản trị. Không sử dụng các kịch bản với IIS 7.0 hoặc phiên bản mới hơn.

Microsoft khuyến cáo quản trị viên cẩn thận đánh giá việc sử dụng của mạng tải cân bằng (NLB) là phương pháp chính và được ưa thích cho việc cải thiện khả năng mở rộng và tính khả dụng của ứng dụng web với nhiều máy chủ chạy IIS 7,5 hoặc IIS 7.0, như trái ngược với sử dụng chuyển đổi dự phòng clustering. Một trong những lợi ích của NLB là tất cả các máy chủ có thể tích cực tham gia vào việc xử lý đồng thời lượng yêu cầu HTTP đến. Một lợi ích là rằng trong một môi trường NLB IIS, nó có thể dễ dàng hơn để hỗ trợ cán Cập Nhật và rollbacks trong khi vẫn cung cấp sẵn sàng cao của các ứng dụng web. Để biết thêm chi tiết về việc sử dụng IIS 7,5 hoặc IIS 7.0 trong một môi trường NLB, xem Web site sau của Microsoft:Nó là quan trọng để xem xét rằng cụm IIS bằng phương tiện của cụm các bản ghi dịch vụ IIS không đảm luôn luôn bảo một giải pháp sẵn sàng cao cho các ứng dụng web. Trong khi các bản ghi dịch vụ IIS (đặc biệt là bản ghi dịch vụ WWW) có thể lên bật lên và chạy, một nhóm ứng dụng cụ thể của quá trình lưu trữ có thể đã chấm dứt, hoặc các ứng dụng có thể ném lỗi máy chủ nội bộ HTTP. Cụm các ứng dụng web và giám sát sức khỏe của họ bằng cách sử dụng một kịch bản tùy chỉnh là cách chính xác và được đề nghị để đạt được một cụm IIS sẵn sàng cao bằng cách sử dụng chuyển đổi dự phòng clustering. Dưới đây là một kịch bản mẫu theo dõi trạm đậu của một nhóm ứng dụng để xác định nếu nó Bắt đầu hay không.

Để đặt cấu hình sẵn sàng cao cho IIS 7.0 và 7.5 Máy chủ Web bằng cách sử dụng chuyển đổi dự phòng clustering, hãy làm theo các bước sau. Bước 3-7 được mô tả chi tiết hơn dưới đây.  Các kịch bản mẫu sau này trong bài viết này có thể được sử dụng như là một ví dụ cho IIS 7.0, IIS 7,5 và IIS 8,0.
  1. cài đặt chuyên biệt vai trò Máy chủ Web trên tất cả các nút chọn một cụm sao. Để biết chi tiết, ghé thăm Web site sau của Microsoft:
  2. cài đặt chuyên biệt tính năng cụm chuyển đổi dự phòng trên tất cả các nút chọn một cụm và tạo ra các cụm. Để biết chi tiết, ghé thăm Web site sau của Microsoft:
  3. Thiết lập một chia sẻ tập tin sẽ được sử dụng cho cấu hình chia sẻ IIS.
  4. Cấu hình cấu hình chia sẻ IIS trên tất cả các nút chọn một cụm sao.
  5. Cấu hình IIS tệp gián tuyến cho cấu hình chia sẻ trên tất cả các nút chọn một cụm sao.
  6. hồ sơ trang (bao gồm cả nhóm ứng dụng liên kết), và xác định vị trí của nội dung của nó vào một cụm nút chọn một.
  7. Cấu hình sẵn sàng cao cho web site của bạn bằng cách tạo một kịch bản chung trong chuyển đổi dự phòng clustering.

Thiết lập một chia sẻ tập tin sẽ được sử dụng cho cấu hình chia sẻ IIS

  1. Tạo một người dùng sẽ truy cập vào chia sẻ sẽ được sử dụng cho cấu hình chia sẻ IIS.
  2. Tạo chia sẻ tập tin. Chia sẻ này sẽ được sử dụng để lưu trữ cấu hình chia sẻ IIS sẽ được chia sẻ giữa IIS trên tất cả các nút chọn một cụm sao. Có nhiều tùy chọn:
    • Trên một máy chủ độc lập không phải là một phần của bất kỳ cụm chuyển đổi dự phòng, tạo một chia sẻ tập tin.
    • Trên một cụm chuyển đổi dự phòng máy chủ Windows, tạo một chia sẻ tệp sẵn sàng cao. Để biết chi tiết, ghé thăm Web site sau của Microsoft:
    • Trên cụm chuyển đổi dự phòng cùng mà sẽ lưu trữ các web site sẵn sàng cao, tạo một chia sẻ tệp sẵn sàng cao. Để biết chi tiết, ghé thăm Web site sau của Microsoft:
  3. Thiết lập quyền truy cập vào phần mà bạn đã tạo ở bước 2. Cung cấp cho người dùng mà bạn đã tạo ở bước 1 điều khiển hoàn toàn quyền để chia sẻ tập tin và NTFS cho phép.
  4. Xác nhận rằng tất cả các nút chọn một cụm có thể trình duyệt để chia sẻ tập tin. Đường dẫn đến tập tin chia sẻ \\<fileserver>\<share>.</share> </fileserver>

Cấu hình cấu hình chia sẻ IIS trên tất cả các nút chọn một cụm

Lưu ý Đó là một vấn đề với cấu IIS chia sẻ hình trên Windows 2008 Server do thiếu quyền cho các ứng dụng máy chủ bản ghi dịch vụ Helper. Chia sẻ cấu hình để làm việc, bạn phải làm theo các bước sau khi bạn tập cấu hình chia sẻ IIS trên Windows 2008 Server.
  1. Mở một dấu kiểm nhắc lệnh hành chính.
  2. Chạy lệnh sau:
    net stop apphostsvc
  3. Chạy lệnh sau:
    SC privs apphostsvc SeTcbPrivilege-SeChangeNotifyPrivilege-SeImpersonatePrivilege
  4. Chạy lệnh sau:
    net Bắt đầu apphostsvc
Sau khi bạn hoàn tất các bước trên mỗi Windows 2008 Server trong cụm sao, tiếp tục thiết lập IIS chia sẻ cấu hình như được diễn tả trong phần này.

Trên một trong các nút chọn một cụm, xuất khẩu các cấu hình chia sẻ để chia sẻ tập tin:
  1. Điều hướng đến Công cụ quản trị, và sau đó nhấp vào Quản lý bản ghi dịch vụ (IIS) thông tin Internet.
  2. Trong ngăn bên trái, nhấp vào nút chọn một tên máy (ứng dụng) phục vụ.
  3. Nhấp đúp vào các Cấu hình chia sẻ biểu tượng.
  4. Trang chia sẻ cấu hình, bấm vào Cấu hình xuất khẩu trong các Hành động cửa sổ (cửa sổ bên phải) để xuất khẩu các tập tin cấu hình từ máy tính đến một vị trí.
  5. Trong các Cấu hình xuất khẩu hộp thoại, gõ đường dẫn tập tin cô chia sẻ ((tiếng Việt)\\<fileserver>\<share></share></fileserver>) trong các Vật lý đường dẫn hộp.
  6. Bấm chuột Kết nối như, và sau đó nhập tên người dùng và mật khẩu cho tài khoản người dùng có quyền truy cập để chia sẻ trong cấu hình chia sẻ được lưu trữ, và sau đó nhấp vào Ok. Tài khoản này sẽ được sử dụng để truy cập vào phần. Bạn nên sử dụng một tài khoản Thư mục Họat động bị hạn chế không phải là quản trị viên miền.
  7. Trong các Cấu hình xuất khẩu hộp thoại, gõ mật khẩu mà sẽ được sử dụng để bảo vệ các phím mã hóa, và sau đó nhấp vào Ok.
  8. Trên các Cấu hình chia sẻ Trang, bấm để chọn các Sử cấu hình chia sẻ hộp kiểm.
  9. Gõ đường dẫn thể chất, tài khoản người dùng và mật khẩu mà bạn đã nhập trước đó, và sau đó nhấp vào Áp dụng trong các Hành động cửa sổ.
  10. Trong các Mã hóa các phím mật khẩu hộp thoại, gõ mật khẩu mã hóa quan trọng mà bạn thiết lập trước đó, và sau đó nhấp vào Ok.
  11. Trong các Cấu hình chia sẻ hộp thoại hộp, bấm vào Ok.
  12. Bấm chuột Ok.
Trên mỗi người trong số các nút chọn một cụm khác, sử dụng cấu hình chia sẻ mà bạn chỉ cần xuất khẩu để chia sẻ tập tin:
  1. Điều hướng đến Công cụ quản trị, và sau đó nhấp vào Quản lý bản ghi dịch vụ (IIS) thông tin Internet.
  2. Nhấp vào nút chọn một tên máy (ứng dụng) phục vụ.
  3. Nhấp đúp vào các Cấu hình chia sẻ biểu tượng.
  4. Trên các Cấu hình chia sẻ Trang, bấm để chọn các Sử cấu hình chia sẻ hộp kiểm.
  5. Loại đường (chia sẻ tập tin, vật lý\\<fileserver>\<share></share></fileserver>), tài khoản người dùng và mật khẩu mà bạn đã nhập trước đó, và sau đó nhấp vào Áp dụng trong các Hành động cửa sổ.
  6. Trong các Mã hóa các phím mật khẩu hộp thoại, gõ mật khẩu mã hóa quan trọng mà bạn thiết lập trước đó, và sau đó nhấp vào Ok.
  7. Trong các Cấu hình chia sẻ hộp thoại hộp, bấm vào Ok.
  8. Bấm chuột Ok.
Lưu ý Để biết thêm chi tiết về làm thế nào để tập cấu hình chia sẻ trong IIS, ghé thăm Web site sau của Microsoft:

Cấu hình IIS tệp gián tuyến cho cấu hình chia sẻ trên tất cả các nút chọn một cụm

Vào mỗi cụm nút chọn một, cho phép tệp gián tuyến:
  1. cài đặt chuyên biệt những kinh nghiệm máy tính để bàn
    1. Điều hướng đến Công cụ quản trị, và sau đó nhấp vào Quản lý máy chủ.
    2. Trong ngăn bên trái, hãy nhấp vào Tính năng.
    3. Bấm chuột Thêm các tính năng in the right pane.
    4. Nhấn vào đây để chọn các Máy tính để bàn kinh nghiệm hộp kiểm.
    5. Bấm chuột cài đặt chuyên biệt để cài đặt chuyên biệt máy tính để bàn kinh nghiệm.
    6. Khởi động lại máy tính.
  2. Trong Panel điều khiển, mở Tệp gián tuyến.
  3. Bấm chuột Sử tệp gián tuyến. Không khởi động lại máy tính tại thời điểm này.
  4. Đảm bảo rằng bộ nhớ cache được thiết lập để chỉ đọc. Để làm điều này, hãy chạy lệnh sau trong một cửa sổ cao cmd :
    REG ADD "HKLM\System\CurrentControlSet\Services\CSC\Parameters" /v ReadOnlyCache /t REG_DWORD /d 1 /f 
  5. Khởi động lại máy tính.
  6. Duyệt đến máy chủ tập tin từ máy tính. Bấm chuột phải vào phần có chứa các cấu hình IIS chia sẻ, và sau đó nhấp vào Luôn sẵn dùng gián tuyến.
    Lưu ý nếu bạn thiết lập chia sẻ tập tin để đánh giá cao có sẵn trên cụm chuyển đổi dự phòng tương tự mà tổ chức IIS nút chọn một, tùy chọn luôn sẵn dùng gián tuyến sẽ không xuất hiện khi bạn Bấm chuột phải vào phần nếu nút chọn một cụm bạn đang ở trên lưu trữ máy chủ tập tin cao có sẵn. Bạn sẽ cần phải di chuyển các ứng dụng máy chủ cao tập tin có sẵn để một nút chọn một.
  7. Trong Panel điều khiển, mở Tệp gián tuyến. Bấm chuột Mở Trung tâm Đồng bộ, và sau đó nhấp vào Lịch trình.
  8. Lịch trình một đồng bộ tệp gián tuyến cho mỗi ngày hoặc theo yêu cầu. Bạn cũng có thể cấu hình đồng bộ diễn đàn để chạy mỗi vài phút. Ngay cả khi bạn không thiết lập một trình lên lịch, khi bạn thay đổi một cái gì đó trong tập tin Applicationhost.config, thay đổi được phản ánh trên các Máy chủ Web.
Lưu ýĐể biết thêm chi tiết về làm thế nào để cấu hình tệp gián tuyến cho một cấu hình chia sẻ trong IIS, ghé thăm Web site sau của Microsoft:

hồ sơ trang (bao gồm cả nhóm ứng dụng liên kết), và xác định vị trí của nội dung của nó vào một cụm nút chọn một

Tìm nút chọn một cụm sở hữu nguồn tài nguyên cụm sao đĩa nơi tập tin nội dung web site sẽ cư trú:
  1. Điều hướng đến Công cụ quản trị, và sau đó nhấp vào Người quản lý cụm chuyển đổi dự phòng.
  2. Kết nối với cụm sao. Nếu bạn đang trên một trong các nút chọn một cụm, cụm sao sẽ xuất hiện trong danh sách tự động.
  3. Theo Lưu trữ, tìm các nguồn tài nguyên đĩa mà nội dung web site sẽ sống. Để làm điều này, mở rộng các cây lưu trữ đĩa nguồn.Đảm bảo rằng việc lưu trữ không được sử dụng bởi bất kỳ ứng dụng khác sẵn sàng cao trên cụm. Bạn sẽ tìm thấy lưu trữ dưới Lưu trữ có sẵn.
  4. Lưu ý các nút chọn một cụm sao mà tài nguyên này là trực tuyến. Bạn sẽ đặt cấu hình IIS trên nút chọn một cụm đó.
  5. Lưu ý tên tài nguyên cụm sao đĩa. Bạn sẽ sử dụng này cho các tập tin nội dung.
Trên nút chọn một cụm mà các nguồn tài nguyên là trực tuyến, cấu hình Máy chủ Web sử dụng đĩa chia sẻ nội dung trang Web:
  1. Điều hướng đến Công cụ quản trị, và sau đó nhấp vào Quản lý bản ghi dịch vụ (IIS) thông tin Internet.
  2. Trong ngăn bên trái, mở rộng các nút chọn một tên máy (ứng dụng) phục vụ.
  3. Mở rộng web site, và sau đó dưới web site, bấm vào các web site mà bạn đang đặt cấu hình.
  4. Trong ngăn bên phải, chọn Thiết đặt chuyên sâu theo Quản lý web site.
  5. Xác định vị trí các Vật lý đường dẫn bất động sản theo Tổng quát cài đặt chuyên biệt, và sau đó gõ trong vị trí nơi mà các web site nội dung tập tin được đặt. Đây là vị trí của các nguồn tài nguyên cụm sao đĩa mà bạn lưu ý ở bước 5 của các thủ tục trước đó.
  6. Bấm chuột Ok.

Cấu hình sẵn sàng cao cho web site của bạn bằng cách tạo ra một kịch bản chung trong quản lý cụm chuyển đổi dự phòng

Đối với bước cuối cùng để cấu hình sẵn sàng cao cho máy chủ IIS Web, thiết lập các nguồn tài nguyên chung kịch bản sẽ được sử dụng để giám sát các web site và ứng dụng hồ bơi cho các trang Web:
  1. Vào mỗi nút chọn một cụm, sao chép đoạn mã ở phần cuối của bài viết này để Windows\System32\inetsrv\Clusweb7.vbs.
  2. theo mặc định, các tập lệnh theo dõi một web site được đặt tên "mặc định trang web" và một nhóm ứng dụng được đặt tên là "DefaultAppPool". Nếu điều này là không chính xác web site và ứng dụng hồ bơi, thay đổi các yếu tố SITE_NAMEAPP_POOL_NAME . Đảm bảo cùng một web site và ứng dụng hồ bơi trong kịch bản tồn tại trên tất cả các nút chọn một cụm sao. Lưu ý rằng tên chữ.
  3. Điều hướng đến Công cụ quản trị, và sau đó nhấp vào Người quản lý cụm chuyển đổi dự phòng.
  4. Kết nối với cụm sao. Nếu bạn đang trên một trong các nút chọn một cụm, cụm sao sẽ xuất hiện trong danh sách tự động.
  5. Bấm chuột phải vào các nhóm, và sau đó nhấp vào Đặt cấu hình một bản ghi dịch vụ hoặc ứng dụng. Một thuật sĩ tạo ra khối lượng công việc sẵn sàng cao.
  6. Bấm chuột Kịch bản chung.
  7. Chọn các tập tin kịch bản từ đường dẫn sau đây: %systemroot%\System32\Inetsrv\clusweb7.vbs
  8. Thiết lập tên khách hàng truy cập điểm (CAP) tên web site mà khách hàng sẽ sử dụng để kết nối với các web site sẵn sàng cao. Chỉ định IP tĩnh để sử dụng cho web site CAP. Nếu bạn đang sử dụng DHCP, tùy chọn này sẽ không được hiển thị.
  9. Trên các Chọn lưu trữ bước, chọn cụm chia sẻ đĩa mà trên đó các web site nội dung tập tin nằm. Lưu trữ nên không sử dụng bất kỳ ứng dụng khác sẵn sàng cao trên cụm. Lưu ý rằng nếu chia sẻ tập tin được sử dụng cho cấu hình chia sẻ IIS được lưu trữ trên cùng một cụm, một nguồn lực đĩa khác nhau nên được sử dụng ở đây.
  10. Sau khi bạn xác nhận các thiết lập, thuật sĩ sẽ tạo nhóm cụm, tài nguyên cụm, và phụ thuộc giữa các nguồn lực, và sau đó mang lại cho các nguồn tài nguyên trực tuyến.
Lưu ý Để lưu trữ nhiều sẵn sàng cao web site trên cụm chuyển đổi dự phòng tương tự, hãy làm theo các bước tương tự như trên. Tuy nhiên, sử dụng một tập tin kịch bản khác nhau cho mỗi web site và khác nhau lưu trữ nhóm chia sẻ. Ví dụ, trong % systemroot%\System32\Inetsrv, sử dụng clusweb7.vbs cho các web site đầu tiên, clweb7-2.vbs cho phiên bản thứ hai, clweb7-3.vbs cho thứ ba, và như vậy. Mỗi tập lệnh theo dõi một web site khác nhau và ứng dụng hồ bơi.

Quan trọngcác kịch bản mẫu chỉ nhằm mục đích và không rõ ràng được hỗ trợ bởi Microsoft. Sử dụng kịch bản này trong một môi trường nhóm IIS 7.0, IIS 7,5 hoặc IIS 8,0 là nguy cơ của riêng bạn.
'<begin script sample>'This script provides high availability for IIS websites'By default, it monitors the "Default Web Site" and "DefaultAppPool"'To monitor another web site, change the SITE_NAME below'To monitor another application pool, change the APP_POOL_NAME below'More thorough and application-specific health monitoring logic can be added to the script if neededOption ExplicitDIM SITE_NAMEDIM APP_POOL_NAMEDim START_WEB_SITEDim START_APP_POOLDim SITES_SECTION_NAMEDim APPLICATION_POOLS_SECTION_NAMEDim CONFIG_APPHOST_ROOTDim STOP_WEB_SITE'Note:'Replace this with the site and application pool you want to configure high availability for'Make sure that the same web site and application pool in the script exist on all cluster nodes. Note that the names are case-sensitive.SITE_NAME = "Default Web Site"APP_POOL_NAME = "DefaultAppPool"START_WEB_SITE = 0START_APP_POOL = 0STOP_WEB_SITE  = 1SITES_SECTION_NAME = "system.applicationHost/sites"APPLICATION_POOLS_SECTION_NAME = "system.applicationHost/applicationPools"CONFIG_APPHOST_ROOT = "MACHINE/WEBROOT/APPHOST"'Helper script functions'Find the index of the website on this nodeFunction FindSiteIndex(collection, siteName)    Dim i    FindSiteIndex = -1        For i = 0 To (CInt(collection.Count) - 1)        If collection.Item(i).GetPropertyByName("name").Value = siteName Then            FindSiteIndex = i            Exit For        End If		     NextEnd Function'Find the index of the application pool on this nodeFunction FindAppPoolIndex(collection, appPoolName)    Dim i    FindAppPoolIndex = -1        For i = 0 To (CInt(collection.Count) - 1)        If collection.Item(i).GetPropertyByName("name").Value = appPoolName Then            FindAppPoolIndex = i            Exit For        End If		     NextEnd Function'Get the state of the websiteFunction GetWebSiteState(adminManager, siteName)    Dim sitesSection, sitesSectionCollection, siteSection, index, siteMethods, startMethod, executeMethod    Set sitesSection = adminManager.GetAdminSection(SITES_SECTION_NAME, CONFIG_APPHOST_ROOT)    Set sitesSectionCollection = sitesSection.Collection    index = FindSiteIndex(sitesSectionCollection, siteName)    If index = -1 Then        GetWebSiteState = -1    End If	        Set siteSection = sitesSectionCollection(index)    GetWebSiteState = siteSection.GetPropertyByName("state").ValueEnd Function'Get the state of the ApplicationPoolFunction GetAppPoolState(adminManager, appPool)    Dim configSection, index, appPoolState    set configSection = adminManager.GetAdminSection(APPLICATION_POOLS_SECTION_NAME, CONFIG_APPHOST_ROOT)    index = FindAppPoolIndex(configSection.Collection, appPool)    If index = -1 Then        GetAppPoolState = -1    End If	        GetAppPoolState = configSection.Collection.Item(index).GetPropertyByName("state").ValueEnd Function'Start the w3svc service on this nodeFunction StartW3SVC()    Dim objWmiProvider    Dim objService    Dim strServiceState    Dim response    'Check to see if the service is running    set objWmiProvider = GetObject("winmgmts:/root/cimv2")    set objService = objWmiProvider.get("win32_service='w3svc'")    strServiceState = objService.state    If ucase(strServiceState) = "RUNNING" Then        StartW3SVC = True    Else        'If the service is not running, try to start it        response = objService.StartService()        'response = 0  or 10 indicates that the request to start was accepted        If ( response <> 0 ) and ( response <> 10 ) Then            StartW3SVC = False        Else            StartW3SVC = True        End If    End If    End Function'Start the application pool for the websiteFunction StartAppPool()    Dim ahwriter, appPoolsSection, appPoolsCollection, index, appPool, appPoolMethods, startMethod, callStartMethod    Set ahwriter = CreateObject("Microsoft.ApplicationHost.WritableAdminManager")    Set appPoolsSection = ahwriter.GetAdminSection(APPLICATION_POOLS_SECTION_NAME, CONFIG_APPHOST_ROOT)           Set appPoolsCollection = appPoolsSection.Collection    index = FindAppPoolIndex(appPoolsCollection, APP_POOL_NAME)    Set appPool = appPoolsCollection.Item(index)        'See if it is already started    If appPool.GetPropertyByName("state").Value = 1 Then        StartAppPool = True        Exit Function    End If    'Try To start the application pool    Set appPoolMethods = appPool.Methods    Set startMethod = appPoolMethods.Item(START_APP_POOL)    Set callStartMethod = startMethod.CreateInstance()    callStartMethod.Execute()        'If started return true, otherwise return false    If appPool.GetPropertyByName("state").Value = 1 Then        StartAppPool = True    Else        StartAppPool = False    End IfEnd Function'Start the websiteFunction StartWebSite()    Dim ahwriter, sitesSection, sitesSectionCollection, siteSection, index, siteMethods, startMethod, executeMethod    Set ahwriter = CreateObject("Microsoft.ApplicationHost.WritableAdminManager")    Set sitesSection = ahwriter.GetAdminSection(SITES_SECTION_NAME, CONFIG_APPHOST_ROOT)    Set sitesSectionCollection = sitesSection.Collection    index = FindSiteIndex(sitesSectionCollection, SITE_NAME)    Set siteSection = sitesSectionCollection(index)    if siteSection.GetPropertyByName("state").Value = 1 Then        'Site is already started        StartWebSite = True        Exit Function    End If    'Try to start site    Set siteMethods = siteSection.Methods    Set startMethod = siteMethods.Item(START_WEB_SITE)    Set executeMethod = startMethod.CreateInstance()    executeMethod.Execute()    'Check to see if the site started, if not return false    If siteSection.GetPropertyByName("state").Value = 1 Then        StartWebSite = True    Else        StartWebSite = False    End IfEnd Function'Stop the websiteFunction StopWebSite()    Dim ahwriter, sitesSection, sitesSectionCollection, siteSection, index, siteMethods, startMethod, executeMethod, autoStartProperty    Set ahwriter = CreateObject("Microsoft.ApplicationHost.WritableAdminManager")    Set sitesSection = ahwriter.GetAdminSection(SITES_SECTION_NAME, CONFIG_APPHOST_ROOT)    Set sitesSectionCollection = sitesSection.Collection    index = FindSiteIndex(sitesSectionCollection, SITE_NAME)    Set siteSection = sitesSectionCollection(index)    'Stop the site    Set siteMethods = siteSection.Methods    Set startMethod = siteMethods.Item(STOP_WEB_SITE)    Set executeMethod = startMethod.CreateInstance()    executeMethod.Execute()End Function'Cluster resource entry points. More details here:'http://msdn.microsoft.com/en-us/library/aa372846(VS.85).aspx'Cluster resource Online entry point'Make sure the website and the application pool are startedFunction Online( )    Dim bOnline    'Make sure w3svc is started    bOnline = StartW3SVC()    If bOnline <> True Then        Resource.LogInformation "The resource failed to come online because w3svc could not be started."        Online = False        Exit Function    End If    'Make sure the application pool is started    bOnline = StartAppPool()    If bOnline <> True Then        Resource.LogInformation "The resource failed to come online because the application pool could not be started."        Online = False        Exit Function    End If    'Make sure the website is started    bOnline = StartWebSite()    If bOnline <> True Then        Resource.LogInformation "The resource failed to come online because the web site could not be started."        Online = False        Exit Function    End If    Online = true End Function 'Cluster resource offline entry point'Stop the websiteFunction Offline( )    StopWebSite()    Offline = trueEnd Function'Cluster resource LooksAlive entry point'Check for the health of the website and the application poolFunction LooksAlive( )    Dim adminManager, appPoolState, configSection, i, appPoolName, appPool, index    i = 0    Set adminManager  = CreateObject("Microsoft.ApplicationHost.AdminManager")    appPoolState = -1    'Get the state of the website    if GetWebSiteState(adminManager, SITE_NAME) <> 1 Then        Resource.LogInformation "The resource failed because the " & SITE_NAME & " web site is not started."        LooksAlive = false        Exit Function    End If    'Get the state of the Application Pool     if GetAppPoolState(adminManager, APP_POOL_NAME) <> 1 Then         Resource.LogInformation "The resource failed because Application Pool " & APP_POOL_NAME & " is not started."         LooksAlive = false  	 Exit Function     end if     '  Web site and Application Pool state are valid return true     LooksAlive = trueEnd Function'Cluster resource IsAlive entry point'Do the same health checks as LooksAlive'If a more thorough than what we do in LooksAlive is required, this should be performed hereFunction IsAlive()       IsAlive = LooksAliveEnd Function'Cluster resource Open entry pointFunction Open()    Open = trueEnd Function'Cluster resource Close entry pointFunction Close()    Close = trueEnd Function'Cluster resource Terminate entry pointFunction Terminate()    Terminate = trueEnd Function'<end script sample>

Cảnh báo: Bài viết này đã được dịch tự động

Thuộc tính

ID Bài viết: 970759 - Xem lại Lần cuối: 03/18/2013 09:02:00 - Bản sửa đổi: 1.0

  • Microsoft Internet Information Services 8.0
  • Microsoft Internet Information Services 7.5
  • Microsoft Internet Information Services 7.0
  • Windows Server 2012 Datacenter
  • Windows Server 2012 Standard
  • Windows Server 2008 R2 Datacenter
  • Windows Server 2008 R2 Enterprise
  • Windows Server 2008 Service Pack 2
  • Windows Server 2008 Datacenter
  • Windows Server 2008 Enterprise
  • kbclustering kbhowto kbsurveynew kbmt KB970759 KbMtvi
Phản hồi