Giter Club home page Giter Club logo

simplenetes's People

Contributors

bashlund avatar eggfriedrice avatar filippsen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

simplenetes's Issues

Add release process `--mode=safe`

Right now sns supports two release methods for pods: hard (default) and soft.

The hard release is focused on a quick release process from the Ops perspective. It will stop the old pod version and run the new version in the same transaction, which likely gives a small glitch in uptime.

The soft process takes longer time as as it has both versions running with overlap before retiring the old version.

We would want a safe method which guarantees that there is no overlap between version. Which is desirable when
running processes which should never concurrently access the same file. For example a database.

Consider omitting connection closed message at the end of commands

It is understandable that commands targetting remote pods and hosts involve opening and closing connections. However, the Connection to <IP> closed. message at the end is potentially confusing. Example:

sns pod logs mypod

Output:

1617604253 simplenetes_io 10.0.2.100 - - [05/Apr/2021:06:30:53 +0000] "GET / HTTP/1.1" 206 364 "-" "Mozilla/5.0" "10.0.2.100"
1617604342 simplenetes_io 10.0.2.100 - - [05/Apr/2021:06:32:22 +0000] "GET / HTTP/1.1" 200 364 "-" "abc/1.1" "10.0.2.100"
1617604514 simplenetes_io 10.0.2.100 - - [05/Apr/2021:06:35:14 +0000] "GET / HTTP/1.1" 200 364 "-" "dfg" "10.0.2.100"
1617616950 simplenetes_io 10.0.2.100 - - [05/Apr/2021:10:02:30 +0000] "HEAD / HTTP/1.1" 200 0 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.67 Safari/537.36" "10.0.2.100"
Connection to <redacted IP> closed.

sns commands attempts to create missing cluster pods directory

Relative directory references were originally intended to serve the reuse of pods between clusters. However, referencing directories alone, missing or not, should not trigger the creation of new directories (mkdir).

Note:

we should consider movingexisting pods to be inside the cluster repository instead

Potential downside:

... one has to clone all the pods once for each cluster

Related data:

  • /pod directories: local podDir="$(FILE_REALPATH "${PODPATH}/${pod}")"
  • Cluster path: PODPATH: ${PODPATH:-\$CLUSTERPATH/../pods}
  • mkdir -p calls

Example in parent directory relative to CLUSTERPATH:

/media/mysite$ sns cluster ps
mkdir: cannot create directory ‘/media/mysite/../pods’: Permission denied
mkdir: cannot create directory ‘/media/pods’: Permission denied

Add SecretService

To have secrets encrypted as safe as possible we would a specific service which serves up decrypted secrets to the ramdisks of pods.

Consider outputting help for a specific context when command is empty

Given the following command:

sns CONTEXT

Current output:

[ERROR] Unknown <CONTEXT> command ''

Suggested output:

Usage:
help
-h
    Output this help

version
-V
    Output the version of Simplenetes

sns CONTEXT COMMAND [OBJECT] [OPTIONS] [ARGUMENTS]

Cluster commands:
  cluster create <cluster name>
[...]

Host commands:
  host register <host>
[...]


Pod commands:
  pod ls [[pod[:version]][@host]]
[...]

Or just that particular help usage. Example:

sns host

Targetted output:

sns host COMMAND [OBJECT] [OPTIONS] [ARGUMENTS]

Host commands:
  host register <host>
[...]

Could also consider applying the same to invalid commands, but that is more understandable as it is (in comparison to the case of empty commands).
Invalid command:

sns CONTEXT invalid

Current output:

[ERROR] Unknown <CONTEXT> command 'invalid'

Add volume management

We need tools for listing volumes, opening a shell into volumes, downloading volumes, purging old volumes.

Implement 'sns cluster ps'

To get a quick overview of the current status of a cluster one would like to run:

sns cluster ps

Right now, the function does nothing.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.