1.How to use ProudNet1 AMI

1.1Introduction to ProudNet 1 AMI

ProudNet 1 AMI is an Amazon Machine Image created in the EC2 instance with the following settings in advance.

  1. Unlimited license authentication per device about concurrent users

  2. Installation of the following programs necessary to run the server program developed using ProudNet 1

    • Windows Server AMI

      • Visual C++ 2015~2019 x64 redistributable package

      • DotNet Core 3.1

      • DotNet 5.0

    • CentOS7 AMI

      • unixODBC-devel

      • openssl-devel

      • wget

      • mono-complete

      • Development Tools ( installed by yum groupinstall )

      • CMake

      • DotNet Core 3.1 SDK ( Runtime included )

      • DotNet 5.0 ( Runtime included )

      • dotnet-sos ( It makes it possible to analyze the dump file of the .Netcore program created in Linux. )

      • lldb

  3. In the case of Linux CentOS7 AMI, The AMI is pre-configured to generate core dump file in case of a crash.

1.2Making an EC2 instance with PN1AMI

그림 1-1Step1. Enter the EC2 service.

그림 1-2Step2. On the EC2 page, choose the Instances menu.

그림 1-3Step3. On the Instances page, click the'Launch Instances' button in the upper right corner.

그림 1-4Step4. On the'Step 1: Choose an AMI' page, choose the AWS Marketplace tab on the left.

그림 1-5Step5. Enter "ProudNet" in the search bar.

그림 1-6Step6. Click the 'Select' button next to the AMI you want to use from among the PN1 AMIs .

그림 1-7Step7. A detailed description of the PN1 AMI appears. If you click the Continue button in the lower right corner, a general EC2 creation page (spec selection, key pair registration, etc.) will appear from then on.

In EC2 created by the method introduced so far, a security group with a name starting with the string "ProudNet1" is automatically created and applied. This security group only allows inbound ports 9000-9100 for TCP & UDP. Outbound is allowed for all traffic. (For Windows version, if you want to use RDP, you need to add TCP 3389 port to the inbound rule. For the Linux version, if you want to use SSH, you need to add the TCP 22 port to the inbound rule. The reason we did not add these well-known ports in advance is because adding these well-known ports may become a security vulnerability. ) When you specify the listening port of the server and the UDP ports to be used for P2P in static assign mode, you can select one of the ports in the range of 9000-9100. Please refer to the guide page in the link below to see what static assign mode is and why you should use static assign mode in a cloud environment.


http://guide.nettention.com/cpp_en#63a1cf4431106ddb

http://guide.nettention.com/cpp_en#lfour_switch_setting

1.3Windows Server EC2 Instance

Try remote access to the EC2 instance created through RDP.

As shown in the screenshot above, the ProudNet folder and file ared contained under C:\.

  1. Nettention folder

  2. ProudNetSetup Installation file

To use ProudNet locally on your development PC, proceed as follows.

  1. Open C:\ on the EC2 machine with Windows Explorer.

  2. Copy the C:\ProudNetSetup.exe file to your development PC.

  3. Execute the installation file copied to the development PC.

  4. When the installation is complete, you can now use ProudNet with a Personal License on your development PC.

Personal License is a license that is limited to 20 concurrent users.


If you want to test that requires more concurrent users, you can use the EC2 instance created with the ProudNet1 AMI.

Operating with a personal license without authentication works only on 'machines that have never been authenticated by ProudNet'. In addition, this unauthenticated personal license operation function was added from version 1.7.53519.

To use ProudNet1 AMI for Auto Scaling, do the following.

  1. When an EC2 instance is created, let it use of metadata & user data.

  2. Through user data, insert your server executable file and the files necessary for execution in the following location according to the language used for development.

    • If the server is developed with .NET or .NETCore, put the server executable file and the files necessary for execution in C:\Nettention\ProudNet\Sample\bin\netcoreapp3.1.

    • If the server is developed in C++, put the server executable file and files necessary for execution in C:\Nettention\ProudNet\lib\${platform}\dll\${Configuration}. (You can also put it in C:\Nettention\ProudNet\Sample\bin\Release.)

  3. If your server executable is inserted right after launch, the inserted server executable is executed through user data.

For EC2 meta data & user data, please refer to the AWS manual at the link below.


https://docs.aws.amazon.com/en_us/AWSEC2/latest/UserGuide/ec2-instance-metadata.html

1.4Linux ( CentOS7 ) EC2 Instance

If you connect to the created CentOS7 instance,

You can see that there is a ProudNet folder in the root directory (/ ).

If you want to use ProudNet locally on your Linux PC for development, please proceed as follows.

  1. Using scp, etc., transfer the following two folders in the ProudNet folder of CentOS7 to the development PC.

    • include

    • lib

  2. In the development PC, Link the library in the lib folder received and include the header file in the include folder before build.

  3. When you run the built server program, the server runs under a personal license.

Personal license is a license that is limited to 20 concurrent users.


If you want to test that requires more concurrent users, you can use the EC2 instance created with the ProudNet1 AMI.

To use ProudNet1 Linux AMI for Auto Scaling, do the following.

  1. When an EC2 instance is created, let it use of metadata & user data.

  2. Through user data, insert your server executable file and the files necessary for execution in the following location according to the language used for development.

    • If the server is developed with .NET or .NETCore, put the server executable file and the files necessary for execution in /ProudNet/bin/${Configuration}. (Not the build result, but the Publish result must be included. If the name of the developed program is 'project', project.deps.json and project.runtimeconfig.json must be included as well as project.dll) For example, If the release version, This is /ProudNet/bin/Release.

    • If the server is developed in C++, put the server executable file and files necessary for execution in /ProudNet/lib/x86_x64-linux/${Configuration}

  3. If your server executable is inserted right after launch, the inserted server executable will be executed through user data.

For EC2 meta data & user data, please refer to the AWS manual at the link below.


https://docs.aws.amazon.com/en_us/AWSEC2/latest/UserGuide/ec2-instance-metadata.html

1.5Using in CloudFormation

If you use the ProudNet1 AMI for intra modeling and provisioning using AWS CloudFormation, you can use the template provided by the following path when creating the stack.

( If you would like to learn more about intra modeling and provisioning using AWS CloudFormation, please refer to the AWS manual page at the following link. https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html )

s3://nettention.proudnet1.cloudformationsnippet/securitygroup.yaml

The template we provide contains the SecurityGroup settings for ProudNet1.

As shown in the screenshot below, when creating a stack, enter the above S3 URL and click the'View in Designer' button to view the full text of the templates we provide.