Help Center/ Huawei Cloud Flexus_Huawei Cloud Flexus L Instance/ Getting Started/ Creating an Nginx Server Using the CentOS Image
Updated on 2025-02-18 GMT+08:00

Creating an Nginx Server Using the CentOS Image

Nginx is a lightweight web server, reverse proxy server, and email (IMAP/POP3) proxy server. FlexusL provides mainstream Linux OS images for you to create a pure, secure, and stable runtime environment. This section uses the CentOS image as an example to describe how to create an Nginx server from an OS image.

Procedure

Procedure

Description

Preparations

Sign up for a HUAWEI ID and enable Huawei Cloud services.

Step 1: Purchase a FlexusL Instance

Purchase a FlexusL instance using the CentOS image.

Step 2: Configure Security Groups

Configure a security group and enable related ports.

Step 3: Log In to the Cloud Server

Set the login password and log in to the server.

Step 4: Configure the Nginx Server

Install Nginx and configure it to automatically start upon system startup.

Preparations

Before purchasing a FlexusL instance, sign up for a HUAWEI ID and enable Huawei Cloud services. For details, see Signing Up for a HUAWEI ID and Enabling Huawei Cloud Services.

Real-name authentication is required only when you buy or use cloud services provisioned in the Chinese mainland.

Step 1: Purchase a FlexusL Instance

  1. On the Flexus L Instance page, click Buy FlexusL and specify parameters required for purchasing a FlexusL instance.

    For details, see Purchasing a FlexusL Instance.

    Parameter

    Example

    Description

    Region

    CN-Hong Kong

    For low network latency and quick resource access, select the region nearest to your target users. After a FlexusL instance is created, the region cannot be changed. Exercise caution when selecting a region.

    NOTE:

    By default, all FlexusL instances created by the same account in the same region are located in the same VPC. They can communicate with each other over a private network. FlexusL instances that are created by different accounts or located in different regions cannot communicate with each other over a private network.

    Image

    CentOS 7.9

    OS image: only includes the necessary OSs to launch servers, without any application data or environment configurations. After a server is created from an OS image, the server runs on an OS without any applications installed. You can install applications based on your service requirements.

    For details, see Images Supported by FlexusL Instances.

    Instance Specifications

    2 vCPUs | 2 GiB and 60 GiB system disk

    You can select instance specifications based on your service requirements. Outbound traffic exceeding the data package is billed.

    For details, see Billing.

    (Optional) Instance Name

    Nginx

    You can customize your instance name.

    If this parameter is left blank, the instance name is in the default format: image name-region-random number. In a batch creation, a hyphen followed by an incremental number is added to the end of each instance name by default.

    (Optional) Associated Services

    • Data disk: 10 GiB
    • Host security
    • Cloud backup vault: 70 GiB

    You can associate other services (EVS, HSS, and CBR) with your FlexusL instance as needed.

    Required Duration

    • 1 month
    • Auto-renew

    The minimum duration of a purchase is one month and the maximum duration is three years.

    Auto-renew can be enabled, which means the purchased FlexusL instances will be automatically renewed before they expire. If you do not enable auto-renew during the purchase process, you can still enable it later after the instances are created. Monthly subscription allows you to renew the subscription for one month every time. The number of renewal times is not limited.

    For more information about auto-renewal rules, see Auto-Renewal Rules.

    Quantity

    1

    Set the number of FlexusL instances to be purchased. One instance is created by default. A maximum of five instances can be created in the same region.

    To increase the quota, submit a service ticket.

  2. Click Buy Now.

    On the displayed page, confirm the order details, read and select the agreement, and click Submit.

  3. Select a payment method and complete the payment.
  4. Go back to the FlexusL console and view the purchased FlexusL instance.

Step 2: Configure Security Groups

  1. On the FlexusL console, click the purchased instance.
  2. In the navigation pane on the left, choose Cloud Servers and then click the server name.

  3. On the Security Groups tab, click Add Rule. In the displayed dialog box, add rules displayed in the following figure, and click OK.

    The following figure only displays common rules. You can add more rules as needed.

    Table 1 Security group rules

    Priority

    Action

    Type

    Protocol & Port

    Source

    Description

    1

    Allow

    IPv4

    TCP: 22

    0.0.0.0/0

    Remote access to FlexusL instances over SSH, such as CloudShell, is allowed. SSH is a common remote login mode. You are advised to enable this port.

    1

    Allow

    IPv4

    TCP: 80

    0.0.0.0/0

    FlexusL instances can be accessed via HTTP.

Step 3: Log In to the Cloud Server

  1. Locate the target resource and choose > Reset Password.
  2. Set and confirm a new password as prompted.

    If you reset the password for a running server, the password change is applied only after the next restart. Auto Restart is selected by default.

  3. Click OK.

    The server status is Restarting. Wait until the status changes to Running and go to the next step.

  4. Locate the purchased instance and click Remote Login.
  5. Enter the username and password as prompted to log in to the server.

    The username is root, and the password is the one set in 2.

Step 4: Configure the Nginx Server

  1. After logging in to the FlexusL instance, add the Nginx yum repository of CentOS 7.

    sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

    The command may fail to be executed because the Nginx version is continuously updated. In this case, obtain the latest Nginx software package from http://nginx.org/packages/centos/7/noarch/RPMS and use it to replace the nginx-release-centos-7-0.el7.ngx.noarch.rpm field.

  2. Install Nginx.

    sudo yum install -y nginx

  3. Start Nginx.

    sudo systemctl start nginx.service

  4. Configure automatic startup for Nginx.

    sudo systemctl enable nginx.service

  5. Obtain the EIP of the purchased instance.

  6. Enter the EIP in the address bar of a local browser to preview the default Nginx server page.

    If the page can be previewed properly, the Nginx server is successfully deployed.

    Figure 1 Default Nginx server page

Related Information

  • If you want your users to access the website through a domain name, add and resolve a domain name for the FlexusL instance. For details, see Adding a Domain Name.
  • If you need to enable HTTPS on your FlexusL instance, install an SSL certificate. For details, see About SCM and SSL Certificate Usage.
  • If you want to deploy other instances by yourself, refer to the instructions in Setting Up Websites on ECSs.

    When you set up the environment by referring to Setting Up Websites on ECSs, ensure that the image version used by the FlexusL instance is the same as that in the tutorial to prevent command execution failures caused by version incompatibility.