Releases: zhenrong-wang/hpc-now
[BETA] Version 0.3.1.0009 released!
IMPORTANT: This upgrade is not compatible with 0.2.x
Main Changes: Added MD5sum and BASE64 modules
As you may know, the HPC-NOW needs to calculate the md5 checksums and base64 decoded strings. Previously, it relies on system utilities such as certutil
(for Microsoft Windows) md5sum
base64
(for GNU/Linux and macOS distros), etc.
Now, we have introduced the internal modules for calculating MD5sum and base64.
We also added a CONTRIBUTING.md to this project, looking forward to your feedback and contributions!
HPC-NOW: Start your HPC journey in the cloud now.
[BETA] Version 0.3.1.0007 released!
Information security is the top issue.
IMPORTANT: This upgrade is not compatible with 0.2.x
Main Changes:
1. Your SSH private keys are encrypted and protected.
As you may know, the HPC-NOW generates and manages SSH keys for you to connect with the cloud clusters. SSH private keys are sensitive, especially the global operator private key in the SSH_KEY_FOLDER
:
- For Microsoft Windows:
C:\Programdata\hpc-now\now-ssh
- For GNU/Linux:
/usr/.hpc-now/.now-ssh
- For macOS (Darwin):
/Applications/.hpc-now/.now-ssh
Previously, the private keys were hidden, but not encrypted. Now, with this release, the private keys will be encrypted locally.
2. New commands added.
For developers, we introduced 2 important commands: hpcopr encrypt
and hpcopr decrypt
. These 2 commands are convenient for users to decrypt sensitive files of one or several clusters. Therefore, users can check the TF files, cloud secrets, as well as cluster users' passwords easily.
However, the hpcopr decrypt
command is VERY RISKY!!!, and WE DO NOT RECOMMEND USE IT UNLESS YOU KNOW ALL THE CONSEQUENCES VERY CLEARLY:
- The cloud secrets will be decrypted to the
vault
directory - The user passwords will be decrypted to the
vault
directory - The Terraform/openTofu files containing sensitive information will be decrypted to the
stack
directory - The users SSH private keys will be decrypted to the cluster's sshkey folder under
SSH_KEY_FOLDER
(See the paths above)
Please do encrypt the decrypted files by using hpcopr encrypt
as soon as possible.
We also added a CONTRIBUTING.md to this project, looking forward to your feedback and contributions!
HPC-NOW: Start your HPC journey in the cloud now.
[BETA] First beta version of 0.3.1 released!
Information security is the top issue.
IMPORTANT: This upgrade is not compatible with previous versions, that is, 0.2.x
Main Changes: Strongly enhanced the information security by introducing AES-128 encryption
The HPC-NOW services handles sensitive information, typically are cloud access key (known as AK) and access secret key(known as SK), or key files (for Google Cloud Platform). Meanwhile, when managing clusters in the cloud, more sensitive information such as passwords are generated. All the information mentioned MUST be handled and protected carefully.
Since Day One of this project, we have been considering information security. That's why we have an independent crypto module named now-crypto
for the running of HPC-NOW services ever since the first release of this project. However, the previous crypto module has been a weak point, because it is simple, and a not standard one.
Therefore, after days of work, we introduced a genuine, data block level, industrial standard, wide-recognized crypto module - AES-128 (ECB mode) with PKCS padding. With the new crypto module, the security level of HPC-NOW really meets the requirement of production. In our development plan, this AES-based module will be a long-term part of HPC-NOW.
We strongly recommend you start your HPC-NOW journey from this version - 0.3.x
And, VERY IMPORTANT: DO NOT directly update from 0.2.x to 0.3.x. If you'd like to update, please submit issues to us. We are also developing a utility to make the update safe and smooth.
We also added a CONTRIBUTING.md to this project, looking forward to your feedback and contributions!
HPC-NOW: Start your HPC journey in the cloud now.
[BETA] Release version v0.2.1 evolved to 0.2.1.0025!
This is an update to the Version 0.2.1.0019.
Main changes:
1. Introduced interactive mode when initializing a cluster
This is a major update. Previously, when initializing a cluster by the command hpcopr init
, you need to specify parameters in the command line, which means that only batch mode is supported.
Now you can enter interactive mode to select options one-by-one, from region selection, az selection, image, to shared-volume capacity.
Please try it out.
We also added a CONTRIBUTING.md to this project, looking forward to your feedback and contributions!
HPC-NOW: Start your HPC journey in the cloud now.
[BETA] Release version v0.2.1 evolved to 0.2.1.0019!
This is an update to the Version 0.2.1.0015.
Main changes:
1. Enhanced the switch between terraform and tofu
Once a cluster initialized, the tf execution should not be switched between terraform and tofu. Therefore, we enhanced this feature by putting the tf execution configuration into the cluster level.
Now, each cluster has its own specific tf execution configuration during its lifecycle, and this configuration has the highest priority.
To be more clear, here is the priority of tf execution configuration options:
- Highest: the cluster's own configuration after being initialized
- Medium: the options specified in command line by using
--tf-run
--dbg-level
and/or--max-time
- Lowest: the static configuration saved in current hpcopr environment (you can update it by
hpcopr set-tf
command)
Therefore, please take care of these 3 types of options.
2. Enhanced the robustness by adding width control to the scanf() and fscanf() functions
3. Validated and updated the openTofu version to 1.6.0-beta2
Updated the version and MD5s of openTofu, please use hpcopr repair
command to use the latest component.
4. Command deprecation
None.
We also added a CONTRIBUTING.md to this project, looking forward to your feedback and contributions!
HPC-NOW: Start your HPC journey in the cloud now.
[BETA] Release version v0.2.1 evolved to 0.2.1.0015!
This is a major update to the Version 0.2.1.0011.
Main changes:
1. INTRODUCED the switch between terraform and tofu
Now, HPC-NOW generates and manages a configuration file for tf running (either terraform or opentofu). Your can use the new command below to check and update the configuration file.
hpcopr set-tf
: without extra command options, the current config will be displayed.
hpcopr set-tf --tf-run TF_NAME --dbg-level DEBUG_LOG_LEVEL --max-time MAX_WAITING_SECONDS
, where
TF_NAME
can be either terraform or tofu, currently, terraform is the default option.DEBUG_LOG_LEVEL
can be one oftrace debug info warn error off
.MAX_WAITING_SECONDS
can be a value between 600 and 1200
2. INTRODUCED 3 command keywords to switch between terraform and opentofu in running
Now, you can use the command keywords --tf-run TF_NAME --dbg-level DEBUG_LOG_LEVEL --max-time MAX_WAITING_SECONDS
to specify the tf running config for the current run. This will override the configs set by the set-tf
command above.
Example: hpcopr init -b --tf-run terraform --dbg-level error --max-time 800
This example command will start initializing a cluster with terraform, only output error logs, and with maximum execution time 800 seconds. Check the effect below:
3. Better wrapped tf_execution
The tf_execution()
function was updated with a new struct
type tf_exec_config
. With this method, the whole codes are much more readable and extendable.
4. Extra information was included in the repo
Uploaded the MD5s and versions of the third-party components. See the new directory vers_md5s
folder.
5. Command deprecation
None.
6. Deleted the dev-0.2.2-opentofu branch
Because the switch between terraform and opentofu was introduced, the previously-branched dev-0.2.2-opentofu is now outdated. We deleted it from the repository.
We also added a CONTRIBUTING.md to this project, looking forward to your feedback and contributions!
HPC-NOW: Start your HPC journey in the cloud now.
[BETA] Release version v0.2.1 evolved to 0.2.1.0011!
This is a fix to the Version 0.2.1.0009.
Main changes:
1. FIXED a major bug introduced by the batch mode.
hpcopr addc
.
This command was corrupted after introducing the batch mode. We fixed it in this minor version. Please update immediately by running installer update.
2. Make AWS EC2 hyperthreading ON by default.
HT on is the default option for all cloud services. Previously, the without explicitly specifying --ht ON, the default option was --ht OFF.
However, turning off the HT may cause potential problems expecially when reconfiguring the compute nodes - it usually needs to rebuild the nodes, not replace them.
In this version, we changed this to HT on.
3. Optimized the command logic
Now, for delc, shutdownc, turnonc, we optimized the logic and finally eliminated the command flag --htoff
. Now the command to control HT is unified to --ht HT_FLAG
.
4. Command update/deprecation
The flag --htoff
is now deprecated. Previously: hpcopr reconfc --conf a4c8g --htoff
. Now: hpcopr reconfc --conf a4c8g --ht OFF
The flag --all
for the command delc
shutdownc
turnonc
is deprecated. Previously: hpcopr delc --all
. Now: hpcopr delc --nn all
Please try the new version out.
We also added a CONTRIBUTING.md to this project, looking forward to your feedback and contributions!
HPC-NOW: Start your HPC journey in the cloud now.
[BETA] Release version v0.2.1 evolved to 0.2.1.0009!
This is a major evolution of Version 0.2.1.0007.
Main changes:
1. Added 2 important command keywords to control the running of tf.
--dbg-devel DEBUG_INFO_LEVEL
.
With this option, you can specify the verbosity of tf debug log.
Options (from most verbose to least verbose): trace, debug, info, warn, err, off
--max-time MAXIMUM_WAIT_TIME
.
With this option, you can define the maximum wait time for tf execution. You can specify a number in the range 600 ~ 1200
2. Now you can view the tf debug log with the hpcopr viewlog
command.
Command reference: hpcopr viewlog -b --log dbg
3. Updated the now-server module with the recently-introduced batch mode.
Please run the server by ./my-server.ext --client-io PORT_NUMBER
. Then the server will be standby to accept requests on the specified port number. If no port number specified, the server will use default port #19885.
4. Fixed known bugs.
Please check the source codes and the packages attached.
5. Command update/deprecation
The command hpcopr viewlog
got updated. Previously, there are only 2 streams of log: std (standard output), err (standard err output). Because we introduced the debug log (dbg), now you need to specify a stream by the --log STREAM_TYPE
command keyword. Example:
Previous command (Deprecated): hpcopr viewlog -b --err
New command: hpcopr viewlog -b --log err
We also added a CONTRIBUTING.md to this project, looking forward to your feedback and contributions!
HPC-NOW: Start your HPC journey in the cloud now.
[BETA] Release version v0.2.1 evolved to 0.2.1.0007!
This is a minor evolution of Version 0.2.1.0006.
Main changes:
- Validated and enhanced the batch mode.
- Fixed some known bugs.
- Adjusted the interactive prompts.
Please fork, build, test, and run. Any issues found, please submit to this repo.
HPC-NOW: Start your HPC journey in the cloud now.
[BETA] Release version v0.2.1 evolved to 0.2.1.0006!
Main change: Introduced the batch mode.
Now, you can run hpcopr in batch mode to skip all interactions. However, this is also a little bit risky, especially when changing resources.
By default, the hpcopr runs in interactive mode. In this mode, users interact with the hpcopr.
Please fork, test, run. Any issues found, please submit to this repo.