Welcome!

IBM Cloud Authors: Pat Romanski, Liz McMillan, Yeshim Deniz, Carmen Gonzalez, Elizabeth White

Related Topics: IBM Cloud

IBM Cloud: Article

Profiles for WebSphere Application Server 6.0

Instance separation provides facility of information

The new IBM WebSphere Application Server (WAS) v6.0 software introduces the concept of Server Profiles. Profiles can be thought of as a specific server runtime environment operating within a separate instance of the JVM.

Each runtime environment has its own configuration files, logs, properties, and other attributes. Profiles can make each Java 2 Enterprise Edition (J2EE) application server runtime unique and separate from the server binaries and from other profiles. The separation of static binaries from configuration files provides a number of benefits for system administrators.

The WAS v6.0 profiles are similar to the wsinstance tool provided with WAS v5.x, but with some important differences. The wsinstance tool creates configuration files for separate JVM instances, but shares other information across instances of WAS v5.x. In contrast, profiles draw a sharp degree of separation, so much so that each profile is separately administered with its own configuration, logs, J2EE applications, and other attributes. The separation that profiles provide allows for a unique instance of WebSphere that has not been available in previous releases of WAS.

Easier Than Multiple Installs
More than one instance of the same IBM WAS product may be required on the same machine. This is often the case if the administrator desires to keep a degree of separation between applications and environments. This may be the case if you have a development group sharing the same WebSphere install instance. When using the WAS profiles, each profile runs as its own 1.4.2 JVM instance, thus providing a physical as well as a logical separation between instances of the product. This offers an advantage over multiple installs because it saves space. In addition, service updating is simpler since an administrator only needs to maintain a single set of product binaries. Profiles can also be created and deleted more easily than with whole product installs. With the separation of product binaries and profiles, it's possible for a system administrator to allow groups to have access to the profile information that defines their application server, while at the same time locking down the WAS runtime binaries.

Easier Application Updates
Another useful aspect of profiles is the staging of application updates. In this scenario, you have updated an application and wish to test it on the targeted WebSphere Application Server. The problem is that an older version of your application is already running and being used. You could uninstall the application and reinstall the new update, yet that would require you to take the application offline and then reinstall if your test fails. A solution would be to create a new profile and test it there. The test profile will be operating in its own instance of WAS and will be logically separated, thus giving you a level of security and separation should your tests fail. Of course, it only protects you while running in the context of WAS, and not if the two applications are sharing the same database or any other shared resource the two applications may access.

Figure 1 shows a typical WebSphere Application Server Network Deployment topology running with two profiles. The first is a default profile for a WAS Base instance; this profile contains information for one server. The second is a WAS Deployment Manager instance that contains two servers in the profile. Both are logically grouped within a node. A node normally corresponds to a physical computer system with a specific IP address. Associated with the application server is the embedded HTTP server, which directs requests to the application server. The embedded HTTP can be associated with a production HTTP server such as IBM's HTTP Server product based on Apache, or another third-party product.

The profile defines the characteristics of the WAS instance that is running in the context of the JVM. The profile contains all of the information that makes the server instance unique, such as port mappings, available services, data sources, JDBC providers, etc. The profile information is contained in the <WAS_ROOT>/profiles directory. Table 1 illustrates the contents of the profile directory and their functions within the WAS. A default profile is created for you when you initially install WAS v6.0.

Creating New Profiles
For one reason or another, you have decided to create a new WAS Profile. Perhaps you have two development groups that share the same install instance but have different configuration environments. Or perhaps you wish to have two versions of the same application running, but with different environments. WAS v6 supports two ways of creating a new profile: the profile creation wizard and command line.

Profile Creation Wizard
The easiest way to create a new profile is to run the Profile creation wizard tool located in the <WAS_ROOT>/bin/ProfileCreator directory. Figure 2 shows the profile creation tool that will step you through the process of creating a profile. You will need to decide the name of the profile, the directory of where the profile information will be stored, the node and hostname of the server, and any changes to the default ports. The wizard will attempt to avoid WAS port conflicts by looking at the existing configured ports. It does not attempt to look at services outside of WebSphere that may already be running on those ports during the profile creation.

Creating Profiles with the Command Line
Another way to create a profile is via the wasprofile command line. The wasprofile creation tool is located in the <WAS_ROOT>/bin directory of the application server. For Linux, the file is wasprofile.sh and for windows it's wasprofile.bat. The wasprofile command is the primary tool used to manage profiles and provides the greatest amount of flexibility. Listing 1 creates a profile called MyNewProfile.

The -profilePath specifies the location in which the profile directory should reside. Normally, profiles are placed in the profile repository directory located in <WAS_ROOT>/profiles, but this can be overridden.

The parameter -templatePath specifies the location of profile templates that will be used in creating the new profile. The profile templates directory contains a number of Ant scripts and default configurations that act as a starting point for the tool in creating a new profile. Which template is used is important when considering what instance of WebSphere you wish to create. As an example, the WAS ND version of the product supports running in three modes: standalone base application server, a managed base application server, or as a deployment manager. The specific example uses the default profile to create a standard application server.

The profile tool only supports executing one instance at a time. If you try to start another instance of wasprofile while the first one is still completing, you will receive an error message.

The -nodeName and -cellName specify the name of the node and the name of the WAS cell. A node is a grouping of servers, while a cell is a logical grouping of nodes.

The -hostName is the name of the machine on which that the profile resides.

When the profile is created, the directory structure described in Table 1 will be created in the directory location that you specified. The default profile repository is <WAS_ROOT>/profiles/. Once the profile is created, you will need to start the application server. If you used the profile creation wizard, you will have the option of starting the FirstSteps application when the profile creation is complete. FirstSteps is an easy tool to start and test your profile. You can later rerun the FirstSteps tool by going into the firststeps directory of where your profile was created.

Another way of starting your application server using your new profile is via the command line. WebSphere provides two ways of starting the application server; it is with the same command but from two different locations. The first location is the <WAS_ROOT>/bin directory. Contained here is a helper script called startServer.cmd on Windows, and startServer.sh on Linux. When starting the application server from here, you will need to specify the profile to be started. For example, if your profile was called MyNewProfile, then the command would be:

startServer.sh server1 -profile MyNewProfile







server1 is the default server name given to Application Server when the profile was created. There are a number of other commands that are contained in this directory. If you have a specific profile that you want to change the state of, then you will need to specify the -profile command. The system administrator can use the commands in the <WAS_ROOT>/bin directory to control all of the profile instances. The commands in the <WAS_ROOT>/bin directory are intended for system administrators to execute.

The other location is within the bin directory of the profile you created. If you created the profile MyNewProfile, then the startServer.sh command would be located in <WAS_ROOT>/profiles/MyNewProfile/bin. The difference here is that all of the executables stored in this directory run in the context of the newly created profile. The -profile MyNewProfile is not required to start the application server.

The reason for the difference is that the profiles can be owned by a different group aside from the system administrator who is controlling the WAS. As the owner of MyNewProfile, I may have the need to start and stop the servers in my profile, but at the same time not have the authority to start and stop servers for another profile.

Managing Profiles
The wasprofile command also supports managing profiles as well as creating them. The description below contains some of the commands that the wasprofile provides.

Deleting a Profile
When you delete a profile, it removes the named profile and its contents from the directory. Any customization or additional scripts that you may have added to the profile directory may also be deleted as well. You should use this tool rather than deleting the profile directory manually since this will prevent corruption of the profile information that WAS maintains.

./wasprofile.sh -delete -profileName profile_name | - profilePath profile_path [-debug]


Listing Additional Profiles
To list the profiles that WAS knows about, use the following command:

./wasprofile.sh -listProfiles [-debug]


To check the integrity of a profile registry:

./wasprofile.sh -validateRegistry [-debug]


Get the path of an existing profile from the name:

./wasprofile.sh -getPath -profileName profile_name [-debug]


Conclusion
Profiles in WAS v6 offer flexibility to meet growing changes in environments. With profiles it is possible to create new application servers that have a degree of separation between other J2EE applications that might be running on the server. When you create a profile, you are creating a new instance of the WebSphere Application Server that shares the same runtime binaries, yet can have a unique configuration that is separate from another WebSphere instance. The separation has advantages for setting up and maintaining your WebSphere installation.

Resources

  • Williamson, L., Chan, L., Cundiff, R., Lauzon, S., and Mitchell, C. (2005). IBM WebSphere System Administration. IBM Press.
  • WebSphere Application Server Information Center: www-306.ibm.com/software/webservers/appserv/was/library/
  • More Stories By Kevin Haverlock

    Kevin Haverlock is an advisory software engineer for IBM's WebSphere Application Server product. He joined IBM in 1995 at Research Triangle Park, NC, where he worked as a developer for the Tivoli division. In 2000 he transferred to the WebSphere Application Server organization and is currently an architect and developer for the WebSphere Application Server Express product.

    Comments (1) View Comments

    Share your thoughts on this story.

    Add your comment
    You must be signed in to add a comment. Sign-in | Register

    In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


    Most Recent Comments
    Adam Clarricoates 02/24/05 03:29:50 AM EST

    Is there any (supported) way to move a profile from one WAS install to another? I can't see a way from quickly reading through the documentation.

    Why is this important?...

    Let's say I have 4 profiles with 4 apps pointing to WAS_HOME1, which is running v6.0.0.1. One of the apps needs a WAS fix, but the others don't want to move to the patched version (would involve lots more testing).

    At the moment, it looks like I need to make a new install, patch it, create a profile, install the app, reconfigure all the other infra to point to it (disrupting many other systems) and retest all the new configurations.

    It would be great if I could just make a new WAS install, patch it and repoint application 1's profile to it - drastically reducing the number and scope of changes and so reducing the risk of a mistake somewhere and the amount of testing required.

    Adam

    @ThingsExpo Stories
    SYS-CON Events announced today that N3N will exhibit at SYS-CON's @ThingsExpo, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. N3N’s solutions increase the effectiveness of operations and control centers, increase the value of IoT investments, and facilitate real-time operational decision making. N3N enables operations teams with a four dimensional digital “big board” that consolidates real-time live video feeds alongside IoT sensor data a...
    Mobile device usage has increased exponentially during the past several years, as consumers rely on handhelds for everything from news and weather to banking and purchases. What can we expect in the next few years? The way in which we interact with our devices will fundamentally change, as businesses leverage Artificial Intelligence. We already see this taking shape as businesses leverage AI for cost savings and customer responsiveness. This trend will continue, as AI is used for more sophistica...
    Real IoT production deployments running at scale are collecting sensor data from hundreds / thousands / millions of devices. The goal is to take business-critical actions on the real-time data and find insights from stored datasets. In his session at @ThingsExpo, John Walicki, Watson IoT Developer Advocate at IBM Cloud, will provide a fast-paced developer journey that follows the IoT sensor data from generation, to edge gateway, to edge analytics, to encryption, to the IBM Bluemix cloud, to Wa...
    What is the best strategy for selecting the right offshore company for your business? In his session at 21st Cloud Expo, Alan Winters, U.S. Head of Business Development at MobiDev, will discuss the things to look for - positive and negative - in evaluating your options. He will also discuss how to maximize productivity with your offshore developers. Before you start your search, clearly understand your business needs and how that impacts software choices.
    SYS-CON Events announced today that Fusic will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Fusic Co. provides mocks as virtual IoT devices. You can customize mocks, and get any amount of data at any time in your test. For more information, visit https://fusic.co.jp/english/.
    SYS-CON Events announced today that Massive Networks, that helps your business operate seamlessly with fast, reliable, and secure internet and network solutions, has been named "Exhibitor" of SYS-CON's 21st International Cloud Expo ®, which will take place on Oct 31 - Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. As a premier telecommunications provider, Massive Networks is headquartered out of Louisville, Colorado. With years of experience under their belt, their team of...
    SYS-CON Events announced today that MIRAI Inc. will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. MIRAI Inc. are IT consultants from the public sector whose mission is to solve social issues by technology and innovation and to create a meaningful future for people.
    SYS-CON Events announced today that Enroute Lab will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Enroute Lab is an industrial design, research and development company of unmanned robotic vehicle system. For more information, please visit http://elab.co.jp/.
    SYS-CON Events announced today that Mobile Create USA will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Mobile Create USA Inc. is an MVNO-based business model that uses portable communication devices and cellular-based infrastructure in the development, sales, operation and mobile communications systems incorporating GPS capabi...
    SYS-CON Events announced today that Interface Corporation will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Interface Corporation is a company developing, manufacturing and marketing high quality and wide variety of industrial computers and interface modules such as PCIs and PCI express. For more information, visit http://www.i...
    SYS-CON Events announced today that Keisoku Research Consultant Co. will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Keisoku Research Consultant, Co. offers research and consulting in a wide range of civil engineering-related fields from information construction to preservation of cultural properties. For more information, vi...
    There is huge complexity in implementing a successful digital business that requires efficient on-premise and cloud back-end infrastructure, IT and Internet of Things (IoT) data, analytics, Machine Learning, Artificial Intelligence (AI) and Digital Applications. In the data center alone, there are physical and virtual infrastructures, multiple operating systems, multiple applications and new and emerging business and technological paradigms such as cloud computing and XaaS. And then there are pe...
    SYS-CON Events announced today that SIGMA Corporation will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. uLaser flow inspection device from the Japanese top share to Global Standard! Then, make the best use of data to flip to next page. For more information, visit http://www.sigma-k.co.jp/en/.
    SYS-CON Events announced today that B2Cloud will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. B2Cloud specializes in IoT devices for preventive and predictive maintenance in any kind of equipment retrieving data like Energy consumption, working time, temperature, humidity, pressure, etc.
    Agile has finally jumped the technology shark, expanding outside the software world. Enterprises are now increasingly adopting Agile practices across their organizations in order to successfully navigate the disruptive waters that threaten to drown them. In our quest for establishing change as a core competency in our organizations, this business-centric notion of Agile is an essential component of Agile Digital Transformation. In the years since the publication of the Agile Manifesto, the conn...
    While some developers care passionately about how data centers and clouds are architected, for most, it is only the end result that matters. To the majority of companies, technology exists to solve a business problem, and only delivers value when it is solving that problem. 2017 brings the mainstream adoption of containers for production workloads. In his session at 21st Cloud Expo, Ben McCormack, VP of Operations at Evernote, will discuss how data centers of the future will be managed, how th...
    SYS-CON Events announced today that NetApp has been named “Bronze Sponsor” of SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. NetApp is the data authority for hybrid cloud. NetApp provides a full range of hybrid cloud data services that simplify management of applications and data across cloud and on-premises environments to accelerate digital transformation. Together with their partners, NetApp em...
    SYS-CON Events announced today that Nihon Micron will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Nihon Micron Co., Ltd. strives for technological innovation to establish high-density, high-precision processing technology for providing printed circuit board and metal mount RFID tags used for communication devices. For more inf...
    SYS-CON Events announced today that Suzuki Inc. will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Suzuki Inc. is a semiconductor-related business, including sales of consuming parts, parts repair, and maintenance for semiconductor manufacturing machines, etc. It is also a health care business providing experimental research for...
    SYS-CON Events announced today that Ryobi Systems will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Ryobi Systems Co., Ltd., as an information service company, specialized in business support for local governments and medical industry. We are challenging to achive the precision farming with AI. For more information, visit http:...