Comments (35)
Hey @lankyninja wb :) , not sure if tagging fits here frankly. I was thinking of something like urwid.TreeWidget
To organize available hosts , it fits various use cases , dev/production is one example , or @Ramshield case is another .
from aker.
Thanks @anazmy, I'll give it a try soon! And no worries, I'm patient, just glad it has been implemented, thanks!!
Are you already accepting donations? :)
from aker.
Hope you like it @Ramshield. And no donations for now, this just for fun so far, thanks for the offer though.
from aker.
Hi @Ramshield appreciate your feedback, what exactly you mean by unclear ?
Do you mean that having long list of hosts ? cuz the list narrows down as you type host names, this doesn't help you ?
from aker.
Hi. The long list is unclear is what I mean. It would be easier to be able to divide it into categories.
I now have about 40+ hosts, which isn't even close to all of them. And I can imagine if enterprises even larger than this would use this that it would be even worse.
Ofcourse I'm not sure what your target is, but it would certainly help small/medium sized companies already to divide it into categories or subdirectories.
Or maybe even some sort of tree that would be very useful.
from aker.
I wanna make it suitable for all situations for sure , I thought that narrowing down the list of servers as you type hostnames would help , but maybe I was wrong .
I understand your request to have servers divided in sub categories here , however is it possible to provide some screenshots to show how it is not convenient as of now (considering the type-to-search feature) ?
from aker.
I'm afraid I can't provide a screenshot as this is a live environment and servers of customers, so I can't share that data. But imagine using 40+ hosts in a live environment where we switch a lot between servers, and typing it every time is a bit slow, and you need to remember the hostname in such case as well.
Therefor if I can divide it in something like:
CustomerA's servers
CustomerB's servers
Internal servers
So it is easier to scroll through, looking for a hostname. I'm familiar with most hosts, but my colleagues are not.
from aker.
No worries, well I need to evaluate this change as it requires considerable modifications in different layers .
I will keep this issue open to consider in future release .
from aker.
Okay, thanks for considering it, hopefully it will be implemented soon :)
from aker.
Would it be possible to implement a "tagging" like feature, that the filter also checks when you type? Or maybe a switch that cycles what field the filter is registering
from aker.
That's perfect @anazmy! Exactly what I had in my mind!
from aker.
Have you been able to make any progress in it by chance?
I'd really love to start using this feature!
from aker.
Been following this project for a while for a potential replacement for EzeeLogin which we currently use. It would be nicer in my opinion to just have a list of categories that you can scroll through, hitting enter would then list all the servers in that category rather than having a long expanding tree.
from aker.
@Ramshield have been busy the past period, but I will pick this up soon.
I know for fact that @lankyninja - thankfully - has started poking around this feature.
from aker.
@ezpzhosting thanks for your interest, does my screenshot above look similar to what you are describing?
from aker.
@ezpzhosting also is the shortlist as you type feature helpful, it's available now?
from aker.
In functionality it looks similar but after entering one of the groups it removes the rest from view to keep the interface clean.
They just use the 'All Servers' category in this video but it shows a couple of seconds of the interface we currently use: https://www.youtube.com/watch?v=PTIUR4oBJxE&feature=youtu.be&t=6s
from aker.
@ezpzhosting I see, I think something similar can be doable
from aker.
Good to hear @anazmy, sorry if I seem impatient, I was just curious as we're currently waiting for the feature before we can roll this further out in our environment.
from aker.
@Ramshield lots of personal stuff to take care of before attending to this, sorry for the delay.
from aker.
I have started work on this here https://github.com/lankyninja/Aker/tree/feature/35-add-cataegories.
Next step is to refacter references to the hosts as Host objects rather than the hostnames directly.
I'll create the documentation for usage at a later time
from aker.
hey @lankyninja , ur up to something here, many thanks, keep it up.
I'm think I will be clear from the stuff I got now in my hands in 1/2 weeks and will be able to focus again on getting this done.
from aker.
Proposed hostgroups structure :
{
"dbservers": {
"hosts": [
"db1.ipa.example",
"db2.ipa.example"
]
},
"linuxservers": {
"hosts": [
"aker.ipa.example",
"web1.ipa.example",
"web2.ipa.example",
"db1.ipa.example",
"db2.ipa.example"
]
}
}
Looking into building a dict of Host() object instead
from aker.
@lankyninja back now and looking into your changes, some neat stuff there 👍
from aker.
sample hosts.json (Maybe we need to rename that file):
- First list all hostgroups :
"hostgroups": [
"linuxservers",
"dbservers"
],
- Second hostgroups to be added to every host entry, every host must be part of at least one hostgroup:
{
"name": "db1.ipa.example",
"hostname": "db1.ipa.example",
"port": "22",
"key": "~/.ssh/id_rsa",
"usergroups": [
"lnxadmins",
"dbadmins"
],
"hostgroups": [
"linuxservers",
"dbservers"
]
}
from aker.
Same separation logic applies, hosts.py handles both host and hostgroup dealing from/to cache, while the IdP module - Json.py for example - communicates with the back-end.
from aker.
Hi anazmy,
Been searching for a SSH jump server solution till i found your project, gonna to start using your solution right away.
Any idea when's this feature gonna be added ?
Also in a 40+ host environment and with a large team of Sysadmins how can i manage user creation and Private keys for each without using Freeipa (in a web hosting environment) ?
from aker.
Hey @Diablo2050 , you caught me working on it, I'm nearly finished with the backend stuff, working on presenting the hostgroups (categories) now to the user TUI, hopefully it will be done soon.
As for user/server management, FreeIPA is the available method right now, its centralized and has a detailed WebUI. I want to write another tool to handle user/server management in a Json setup but that's for later.
May I ask you why you're not considering FreeIPA ?
from aker.
@anazmy we haven't tried it and i don't know how feasible it is in a web hosting environment, for example:
we have two different Geo locations for our servers and some customers(High Availability) have one in each location in case one falls then other jumps in, i don't know the how Freeipa might impact Nginx and Apache.
if you can share your insights i would be grateful.
from aker.
All what you mentioned should work nice with FreeIPA, if you're looking for more info kindly join our gitter chat, you can find it in the project landing page here in github, just want to leave this area for issue tracking.
from aker.
Hi @Diablo2050. I personally wrote a script for it. If you'd like, I'd be happy to share it!
from aker.
@Ramshield that would be awesome thanks
from aker.
@Ramshield this took long time for various reasons, it should be now implemented, please try the new code and let me know how it goes.
If you're using Json approach, take a look at the new file syntax.
from aker.
Alright, just implemented it. Took a lot longer then expected as it was quite busy.
When entering a host group, the order is 'messed up', it pretty much looks random.
Are you/we able to sort it alphabetical, or the as it was before, sorted as appeared in hosts.json?
from aker.
hmm, can you please open a new issue to track this point
from aker.
Related Issues (20)
- Feature Request: RDP Support + Kubernetes HOT 4
- custom username HOT 1
- How to connect via ip address HOT 4
- error when sign in using aker gateway. HOT 1
- [Feature Request] - Check Host Health HOT 1
- private key from cache or ~/.ssh/id_rsa ?
- [Feature Request] - Support for Encrypted Private Keys HOT 1
- error while starting aker HOT 2
- Error on /usr/bin/aker/aker.py", line 35, HOT 1
- Mariadb IDP
- FreeIPA integration with Aker
- Specific requirement for my infra HOT 1
- Error on /usr/bin/aker/aker.py
- Beef
- [bug] custom remote SSH port does not work HOT 8
- ERROR - Hosts: all subsequent calls will fallback to backened idp HOT 4
- Query HOT 48
- Aker crasches when selecting a host, MainLoop' object has no attribute 'stop' HOT 12
- Unhandled exception in SSHclient.py HOT 6
- Centos 8 support HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from aker.