Ρύθμιση παραμέτρων της υπηρεσία δημοσίευσης World Wide Web των υπηρεσιών IIS 7.0 ενός συμπλέγματος ανακατεύθυνσης του Microsoft Windows Server 2008

Μεταφράσεις άρθρων Μεταφράσεις άρθρων
Αναγν. άρθρου: 970759 - Δείτε τα προϊόντα στα οποία αναφέρεται το συγκεκριμένο άρθρο.
Ανάπτυξη όλων | Σύμπτυξη όλων

Σε αυτήν τη σελίδα

ΕΙΣΑΓΩΓΗ

Αυτό το άρθρο περιγράφει τον τρόπο ρύθμισης παραμέτρων του Microsoft Internet Information Services (IIS) 7.0 ενός συμπλέγματος ανακατεύθυνσης του Microsoft Windows Server 2008. Οι διαδικασίες αυτού του άρθρου ισχύουν μόνο για την υπηρεσία δημοσίευσης World Wide Web. Για οδηγίες σχετικά με τον τρόπο ρύθμισης παραμέτρων της υπηρεσίας δημοσίευσης FTP ενός συμπλέγματος ανακατεύθυνσης, ανατρέξτε στα:
974603Τρόπος ρύθμισης των παραμέτρων FTP 7.5 για το IIS 7.0 ενός συμπλέγματος ανακατεύθυνσης του Windows Server 2008

Περισσότερες πληροφορίες

Σε προηγούμενες εκδόσεις των υπηρεσιών Internet Information Services, η Microsoft προσφέρει στοιχεία οθόνης γενικός πόρος για την υποστήριξη υψηλής διαθεσιμότητας παρουσίες των διακομιστή Web χρησιμοποιώντας την υποδομή του συμπλέγματος της Microsoft. Ωστόσο, προσαρμοσμένο κώδικα που απαιτήθηκε για την αντιλαμβάνεστε πλήρως το ενδεχόμενο μιας λύσης. Επίσης, το γενικό δεσμών ενεργειών που παρέχει η Microsoft δεν ικανοποιήσει ανάγκες των πελατών. Για να ρυθμίσετε τις παραμέτρους του IIS 7.0 σε ένα περιβάλλον συμπλέγματος χρησιμοποιούν διακομιστή των Windows ανακατεύθυνση συμπλέγματος, πρέπει να χρησιμοποιήσετε έναν προσαρμοσμένο κωδικό (δέσμες ενεργειών) για να ενεργοποιήσετε ένα τέτοιο σενάριο υψηλής διαθεσιμότητας. Όταν το κάνετε αυτό, οι χρήστες να προσαρμόσετε το πρόγραμμα Εγκατάστασης ώστε να ικανοποιεί τις απαιτήσεις τους. Αυτό σας δίνει τα πλήρη έλεγχο για την ενοποίηση υψηλή διαθεσιμότητα των εφαρμογών Web. Επιπλέον, για την παρακολούθηση και διαχείριση των διασυνδέσεων δέσμης ενεργειών που παρουσιάστηκαν στο IIS 7.0 παρέχουν ένα περιβάλλον πιο πλούσια από τις δέσμες ενεργειών που παρέχονται στο παρελθόν.

ΣΗΜΕΙΩΣΗΤα αρχεία εγκατάστασης των υπηρεσιών IIS 7.0 περιλαμβάνουν εσφαλμένα το Clusweb.vbs και αρχεία δέσμης ενεργειών Clusftp.vbs που χρησιμοποιούνται στις υπηρεσίες IIS 6.0 για τις υπηρεσίες IIS cluster διαχειριστικές εργασίες. Μην χρησιμοποιείτε αυτές τις δέσμες ενεργειών με το IIS 7.0.

Η Microsoft συνιστά στους διαχειριστές να αξιολογήσετε προσεκτικά τη χρήση του δικτύου φόρτου εξισορρόπησης (NLB) ως κύρια και την προτιμώμενη μέθοδο για τη βελτίωση της κλιμάκωσης και τη διαθεσιμότητα των εφαρμογών Web με πολλούς διακομιστές που εκτελούν τις υπηρεσίες IIS 7.0, αντί για τη χρήση του συμπλέγματος ανακατεύθυνσης. Ένα από τα πλεονεκτήματα της NLB είναι ότι όλοι οι διακομιστές μπορούν να συμμετέχουν ενεργά σε ταυτόχρονες χειρισμό των εισερχόμενων αιτήσεων HTTP. Ένα άλλο πλεονέκτημα είναι ότι σε περιβάλλον NLB IIS, μπορεί να είναι πολύ πιο εύκολο να υποστηρίζουν κυλιόμενο ενημερωμένες εκδόσεις και rollbacks ενώ εξακολουθεί να παρέχει υψηλή διαθεσιμότητα των εφαρμογών Web. Για περισσότερες πληροφορίες σχετικά με τη χρήση των υπηρεσιών IIS 7.0 NLB ενός περιβάλλοντος, ανατρέξτε στις ακόλουθες τοποθεσίες της Microsoft στο Web:
http://learn.IIS.NET/Page.aspx/213/Network-Load-Balancing
http://TechNet.Microsoft.com/en-us/library/cc770558.aspx
Είναι σημαντικό να λάβετε υπόψη σας ότι συμπλέγματος των υπηρεσιών IIS μέσω του συμπλέγματος των υπηρεσιών IIS δεν πάντα εγγυάται μια λύση υψηλής διαθεσιμότητας για εφαρμογές Web. Ενώ οι υπηρεσίες IIS (ειδικά την υπηρεσία WWW) μπορεί να είναι λειτουργία, θα μπορούσε να έχει τερματιστεί η διαδικασία φιλοξενίας του χώρου συγκέντρωσης εφαρμογών συγκεκριμένες ή η εφαρμογή μπορεί να καταργεί σφάλματα εσωτερικού διακομιστή HTTP. Σύμπλεγμα των εφαρμογών Web και την παρακολούθηση της εύρυθμης λειτουργίας τους, χρησιμοποιώντας μια προσαρμοσμένη δέσμη ενεργειών είναι ο τρόπος σωστά και προτείνεται για την επίτευξη ενός συμπλέγματος των υπηρεσιών IIS υψηλή διαθεσιμότητα χρησιμοποιώντας ανακατεύθυνση συμπλέγματος. Ακολουθεί ένα δείγμα δέσμης ενεργειών που παρακολουθεί την κατάσταση ενός χώρου συγκέντρωσης εφαρμογών για να προσδιορίσετε εάν έχει ξεκινήσει ή όχι.

Για να ρυθμίσετε υψηλής διαθεσιμότητας για τους διακομιστές Web των υπηρεσιών IIS, χρησιμοποιώντας την ανακατεύθυνση συμπλέγματος, ακολουθήστε τα εξής βήματα. Τα βήματα 3 έως 7 περιγράφονται λεπτομερώς παρακάτω.
  1. Εγκαταστήστε το ρόλο του διακομιστή Web σε όλους τους κόμβους του συμπλέγματος. Για λεπτομέρειες, επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web:
    http://TechNet.Microsoft.com/en-us/library/cc771752.aspx
  2. Εγκαθιστά τη δυνατότητα συμπλέγματος ανακατεύθυνσης σε όλους τους κόμβους του συμπλέγματος και να δημιουργήσετε στο σύμπλεγμα. Για λεπτομέρειες, επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web:
    http://TechNet.Microsoft.com/en-us/library/dd197477.aspx
  3. Ορίστε ένα κοινόχρηστο αρχείο που θα χρησιμοποιηθεί για τη ρύθμιση παραμέτρων κοινής χρήσης των υπηρεσιών IIS.
  4. Ρυθμίστε τις παραμέτρους κοινόχρηστων υπηρεσιών IIS σε όλους τους κόμβους του συμπλέγματος.
  5. Configure IIS Offline Files for shared configuration on all cluster nodes.
  6. Configure the Web site (including the associated application pool), and specify the location of its content on one cluster node.
  7. Configure high availability for your Web site by creating a generic script in failover clustering.

Set up a file share that will be used for IIS shared configuration

  1. Create a user that will access the share that will be used for the IIS shared configuration.
  2. Create the file share. This share will be used to store the IIS shared configuration that will be shared between IIS on all cluster nodes. There are multiple options:
    • On a standalone server that is not part of any failover cluster, create a file share.
    • On another Windows Server failover cluster, create a high availability file share. For details, visit the following Microsoft Web site:
      http://technet.microsoft.com/en-us/library/cc731844.aspx
    • On the same failover cluster that will host the high availability Web site, create a high availability file share. For details, visit the following Microsoft Web site:
      http://technet.microsoft.com/en-us/library/cc731844.aspx
  3. Set the permissions on the share that you created in step 2. Give the user that you created in step 1 Full Control permissions to the file share and NTFS permissions.
  4. Confirm that all cluster nodes are able to browse to the file share. The path to the file share is \\<fileserver>\<share>.</share></fileserver>

Configure the IIS shared configuration on all cluster nodes

ΣΗΜΕΙΩΣΗThere is a problem with IIS shared configuration on Windows 2008 Server due to missing privileges for the Application Host Helper Service. For shared configuration to work, you must follow these steps when you set up IIS shared configuration on Windows 2008 Server.
  1. Open an administrative command prompt.
  2. Εκτελέστε την ακόλουθη εντολή:
    net stop apphostsvc
  3. Εκτελέστε την ακόλουθη εντολή:
    sc privs apphostsvc SeChangeNotifyPrivilege/SeTcbPrivilege/SeImpersonatePrivilege
  4. Εκτελέστε την ακόλουθη εντολή:
    net start apphostsvc
After you complete these steps on each Windows 2008 Server in the cluster, continue setting up IIS shared configuration as described in this section.

On one of the cluster nodes, export the shared configuration to the file share:
  1. Navigate toΕργαλεία διαχείρισης, και στη συνέχεια κάντε κλικ στο κουμπίΔιαχείριση του Internet Information Services (IIS).
  2. In the left pane, click the server name node.
  3. Κάντε διπλό κλικ στο φάκελοShared ConfigurationΕικονίδιο (Icon).
  4. On the Shared Configuration page, clickExport ConfigurationΣτοΕνέργειεςpane (the right pane) to export the configuration files from the local computer to another location.
  5. ΣτοExport Configurationdialog box, type the path of the file share (\\<fileserver>\<share></share></fileserver>) με τοPhysical path"Τύπος" (Type).
  6. Κάντε κλικΣύνδεση ως, and then type the user name and the password for the user account that has access to the share in which the shared configuration is stored, and then clickOk. This account will be used to access the share. You should use a restricted Active Directory account that is not the domain administrator.
  7. ΣτοExport Configurationdialog box, type a password that will be used to protect the encryption keys, and then clickOk.
  8. Στο διακομιστήShared Configurationσελίδα, κάντε κλικ για να επιλέξετε τοEnable shared configurationΠλαίσιο ελέγχου.
  9. Type the physical path, the user account, and the password that you entered previously, and then clickΕφαρμογήΣτοΕνέργειεςτμήμα του παραθύρου.
  10. ΣτοEncryption Keys Passworddialog box, type the encryption key password that you set earlier, and then clickOk.
  11. ΣτοShared Configurationπαράθυρο διαλόγου, κάντε κλικ στο κουμπίOk.
  12. Κάντε κλικOk.
On each of the other cluster nodes, use the shared configuration that you just exported to the file share:
  1. Navigate toΕργαλεία διαχείρισης, και στη συνέχεια κάντε κλικ στο κουμπίΔιαχείριση του Internet Information Services (IIS).
  2. Click the server name node.
  3. Κάντε διπλό κλικ στο φάκελοShared ConfigurationΕικονίδιο (Icon).
  4. Στο διακομιστήShared Configurationσελίδα, κάντε κλικ για να επιλέξετε τοEnable shared configurationΠλαίσιο ελέγχου.
  5. Type the physical path of the file share (\\<fileserver>\<share></share></fileserver>), the user account, and the password that you entered previously, and then clickΕφαρμογήΣτοΕνέργειεςτμήμα του παραθύρου.
  6. ΣτοEncryption Keys Passworddialog box, type the encryption key password that you set earlier, and then clickOk.
  7. ΣτοShared Configurationπαράθυρο διαλόγου, κάντε κλικ στο κουμπίOk.
  8. Κάντε κλικOk.
ΣΗΜΕΙΩΣΗΓια περισσότερες πληροφορίες σχετικά με τον τρόπο ρύθμισης των κοινόχρηστων ρυθμίσεων παραμέτρων των υπηρεσιών IIS, επισκεφθείτε την ακόλουθη τοποθεσία της Microsoft στο Web:
http://learn.IIS.NET/Page.aspx/264/Shared-Configuration

Ρύθμιση παραμέτρων των υπηρεσιών IIS αρχείων χωρίς σύνδεση για τη ρύθμιση παραμέτρων κοινής χρήσης σε όλους τους κόμβους του συμπλέγματος

Σε κάθε κόμβο συμπλέγματος, ενεργοποίηση αρχείων χωρίς σύνδεση:
  1. Εγκαταστήστε την εμπειρία της επιφάνειας εργασίας
    1. Μεταβείτε στη διεύθυνσηΕργαλεία διαχείρισης, και στη συνέχεια κάντε κλικ στο κουμπίΔιαχείριση διακομιστή.
    2. Στο αριστερό παράθυρο, κάντε κλικ στο κουμπίΔυνατότητες.
    3. Κάντε κλικΠροσθήκη δυνατοτήτωνστο δεξιό τμήμα του παραθύρου.
    4. Κάντε κλικ για να επιλέξετε τοΕμπειρία στην επιφάνεια εργασίαςΠλαίσιο ελέγχου.
    5. Κάντε κλικΕγκατάσταση (Install)Για να εγκαταστήσετε την εμπειρία της επιφάνειας εργασίας.
    6. Ξεκινήστε πάλι τον υπολογιστή.
  2. Στον πίνακα ελέγχου, ανοίξτεΤα αρχεία χωρίς σύνδεση.
  3. Κάντε κλικΕνεργοποίηση Αρχείων χωρίς σύνδεση. Να μην γίνει επανεκκίνηση του υπολογιστή αυτήν τη στιγμή.
  4. Βεβαιωθείτε ότι έχει οριστεί στο χώρο προσωρινής αποθήκευσηςμόνο για ανάγνωση. Για να γίνει αυτό, εκτελέστε την ακόλουθη εντολή σε μια ανύψωσηCmdπαράθυρο:
    REG ADD "HKLM\System\CurrentControlSet\Services\CSC\Parameters" /v ReadOnlyCache /t REG_DWORD /d 1 /f 
    
  5. Ξεκινήστε πάλι τον υπολογιστή.
  6. Κάντε αναζήτηση στο διακομιστή αρχείων από τον υπολογιστή. Κάντε δεξιό κλικ στο κοινόχρηστο στοιχείο που περιέχει τη ρύθμιση παραμέτρων κοινόχρηστων υπηρεσιών IIS και, στη συνέχεια, κάντε κλικ στο κουμπίΠάντα διαθέσιμα χωρίς σύνδεση.
    ΣΗΜΕΙΩΣΗότι εάν η εγκατάσταση κοινόχρηστου αρχείου να είναι εξαιρετικά διαθέσιμος στο ίδιο σύμπλεγμα ανακατεύθυνσης που φιλοξενεί κόμβων των υπηρεσιών IIS, την επιλογή "πάντα διαθέσιμα χωρίς σύνδεση" δεν θα εμφανίζεται όταν κάνετε δεξιό κλικ στο κοινόχρηστο στοιχείο αν ο κόμβος του συμπλέγματος είναι φιλοξενείται στο διακομιστή αρχείων ιδιαίτερα διαθέσιμη. You will need to move the high available file server application to another node.
  7. Στον πίνακα ελέγχου, ανοίξτεΤα αρχεία χωρίς σύνδεση. Κάντε κλικOpen Sync Center, και στη συνέχεια κάντε κλικ στο κουμπίSchedule.
  8. Schedule an offline file sync for every day or according to the requirement. You can also configure the offline sync to run every few minutes.. Even if you do not set up a scheduler, when you change something in the Applicationhost.config file, the change is reflected on the Web server.
ΣΗΜΕΙΩΣΗFor more information about how to configure offline files for a shared configuration in IIS, visit the following Microsoft Web site:
http://learn.iis.net/page.aspx/212/offline-files-for-shared-configuration

Configure the Web site (including the associated application pool), and specify the location of its content on one cluster node

Find the cluster node that owns the cluster disk resource where the Web site content files will reside:
  1. Navigate toΕργαλεία διαχείρισης, και στη συνέχεια κάντε κλικ στο κουμπίFailover Cluster Manager.
  2. Connect to the cluster. If you are on one of the cluster nodes, the cluster will appear on the list automatically.
  3. underΧώρος αποθήκευσης, find the disk resource on which the Web page content will reside. To do this, expand the storage tree for the disk resource. Make sure that the storage is not used by any other high availability application on the cluster. You will find the storage underAvailable Storage.
  4. Note the cluster node on which this resource is online. You will configure IIS on that cluster node.
  5. Note the cluster disk resource name. You will use this for the content files.
On the cluster node on which the resource is online, configure the Web server to use the shared disk for Web site content:
  1. Navigate toΕργαλεία διαχείρισης, και στη συνέχεια κάντε κλικ στο κουμπίΔιαχείριση του Internet Information Services (IIS).
  2. In the left pane, expand the server name node.
  3. expandΤοποθεσίες, και στη συνέχεια, στην περιοχήΤοποθεσίες, click the site that you are configuring.
  4. In the right pane, selectΡυθμίσεις για προχωρημένουςunderManage Web Site.
  5. Εντοπίστε το φάκελοPhysical Pathproperty underΓενικάsettings, and then type in the location where the Web site content files are located. This is the location of the cluster disk resource that you noted in step 5 of the previous procedure.
  6. Κάντε κλικOk.

Configure high availability for your Web site by creating a generic script in Failover Cluster Manager

For the last step to configure high availability for IIS Web servers, set up the generic script resource that will be used to monitor the Web site and application pool for the Web site:
  1. On each cluster node, copy the script at the end of this article to Windows\System32\inetsrv\Clusweb7.vbs.
  2. By default, the script monitors a Web site that is named "Default Web Site" and an application pool that is named "DefaultAppPool". If this is not the correct Web site and application pool, change theSITE_NAMEANDAPP_POOL_NAMEvariables. 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.
  3. Navigate toΕργαλεία διαχείρισης, και στη συνέχεια κάντε κλικ στο κουμπίFailover Cluster Manager.
  4. Connect to the cluster. If you are on one of the cluster nodes, the cluster will appear on the list automatically.
  5. Κάντε δεξιό κλικ στο σύμπλεγμα και, στη συνέχεια, κάντε κλικ στο κουμπίConfigure a Service or Application. A wizard creates the high availability workload.
  6. Κάντε κλικGeneric Script.
  7. Select the script file from the following path: %systemroot%\System32\Inetsrv\clusweb7.vbs
  8. Set the Client Access Point (CAP) name to the Web site name that clients will use to connect to the high availability Web site. Specify the static IPs to use for the Web site CAP. If you are using DHCP, this option will not be displayed.
  9. Στο διακομιστήSelect Storagestep, select the cluster shared disk on which the Web site content files reside. The storage should be unused by any other high availability application on the cluster. Note that if the file share that is used for the IIS shared configuration is hosted on the same cluster, a different disk resource should be used here.
  10. After you confirm the settings, the wizard will create the cluster group, cluster resources, and the dependencies between the resources, and then bring the resources online.
ΣΗΜΕΙΩΣΗTo host multiple high availability Web sites on the same failover cluster, follow the same steps as above. However, use a different script file for each Web site and different clustered shared storage. For example, in %systemroot%\System32\Inetsrv, use clusweb7.vbs for the first Web site, clweb7-2.vbs for the second, clweb7-3.vbs for the third, and so on. Each script file monitors a different Web site and application pool.
'<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 needed

Option Explicit

DIM SITE_NAME
DIM APP_POOL_NAME
Dim START_WEB_SITE
Dim START_APP_POOL
Dim SITES_SECTION_NAME
Dim APPLICATION_POOLS_SECTION_NAME
Dim CONFIG_APPHOST_ROOT
Dim 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 = 0
START_APP_POOL = 0
STOP_WEB_SITE  = 1
SITES_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 node
Function 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		 
    Next

End Function


'Find the index of the application pool on this node
Function 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		 
    Next

End Function

'Get the state of the website
Function 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").Value

End Function

'Get the state of the ApplicationPool
Function 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").Value
End Function


'Start the w3svc service on this node
Function 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 website
Function 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 If

End Function


'Start the website
Function 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 If

End Function


'Stop the website
Function 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 started
Function 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 website
Function Offline( )

    StopWebSite()
    Offline = true

End Function


'Cluster resource LooksAlive entry point
'Check for the health of the website and the application pool
Function 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 = true
End 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 here
Function IsAlive()   

    IsAlive = LooksAlive

End Function


'Cluster resource Open entry point
Function Open()

    Open = true

End Function


'Cluster resource Close entry point
Function Close()

    Close = true

End Function


'Cluster resource Terminate entry point
Function Terminate()

    Terminate = true

End Function
'<end script sample>

Ιδιότητες

Αναγν. άρθρου: 970759 - Τελευταία αναθεώρηση: Σάββατο, 25 Δεκεμβρίου 2010 - Αναθεώρηση: 2.0
Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
Λέξεις-κλειδιά: 
kbclustering kbhowto kbsurveynew kbmt KB970759 KbMtel
Μηχανικά μεταφρασμένο
ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.
Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:970759

Αποστολή σχολίων

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com