2
0
mirror of https://github.com/xcat2/confluent.git synced 2024-11-26 19:40:12 +00:00
Commit Graph

906 Commits

Author SHA1 Message Date
Jarrod Johnson
853585f942 Have nodeattrib output be sorted
This make nodelist and nodeattrib output much easier to follow.
2018-11-29 10:02:37 -05:00
Jarrod Johnson
53996a1e9d Increase likelihood of IPMI results being sorted
Without incurring execution penalty, endeavor to sort available
data in an opportunistic way.  This certainly does not guarantee order,
but it makes it highly likely for quick queries to appear orderly.
2018-11-29 09:43:53 -05:00
Jarrod Johnson
b0a3bb18fe Add terminal resizing to http api
This enables javascript clients to submit terminal changes.
2018-11-27 09:12:53 -05:00
Jarrod Johnson
7207013abc Have httpapi be able to accept initial size on consoles
consoles and shells can now put into the body parameters including
the width and height.
2018-11-26 16:43:52 -05:00
Jarrod Johnson
b511a02f20 Have correct size on connect for shell session
In addition to resize, also support initial size being set
2018-11-26 16:21:31 -05:00
Jarrod Johnson
c60cb3a027 Implement resize from CLI client
The CLI resize is wired up for ssh usage.  At the time of this commit,
initial size is not handled.
2018-11-26 15:31:36 -05:00
Jarrod Johnson
24fd1e72e1 Expose advertised, not valided IPs in discovery
There are circumstances where the advertised IP is
useful information, even if that IP cannot be validated.

It is also the case that most of the time the advertised IP
is useless if not validated, so it is an optional field.
2018-11-19 14:39:56 -05:00
Jarrod Johnson
c8ad94313e Provide useful error when trying to delete a volume that doesn't exist 2018-11-16 11:54:46 -05:00
Jarrod Johnson
b5213e6972 Show data about created volumes upon volume completion.
Provide concrete feedback as to the results of the creation operation.
2018-11-16 11:19:27 -05:00
Jarrod Johnson
c227c2353b Provide better error on nodediscover assign
Rather than the rather useless unexpected error, actually
describe specific cases of wrong username or password.
2018-11-15 13:41:48 -05:00
Jarrod Johnson
cb2133e871 Change strategy for pam.d entry
The symbolic link did not stay a symbolic link.
Use %post in rpm instead.
2018-11-14 15:11:05 -05:00
Jarrod Johnson
c56c1948a9 Add confluent pam to packaging
This enables PAM passwords to work by default,
rather than requiring user to perform more
configuration.
2018-11-14 14:55:26 -05:00
Jarrod Johnson
34b30a1bd8 Rework password authentication
Have the cache operate against the sha256 of the passphrase rather
than the passhprase directly (mitigate presence of password in memory).

Pull PAM into the cache behavior to accelerate PAM based usage.

Rearrange things so that both built in confluent and PAM passwords
can be used.
2018-11-14 14:52:03 -05:00
Jarrod Johnson
cba514692c Bring the XCC check fix to IMM
The same check that works for XCC should be applied to IMM
2018-11-13 16:17:39 -05:00
Jarrod Johnson
2bb0a70a24 Provide an xid if one is not preserved
The SLP xid may be gone in a recheck, default to 42 in such a case.
2018-11-13 16:09:37 -05:00
Jarrod Johnson
1b84cd43fe Fix the auto-healing support
There was a mismatch between the handlers signature and expectation by
the discovery core.
2018-11-13 15:55:24 -05:00
Jarrod Johnson
39839a9f2a Add auto-healing of incomplete SLP data
If a device handler indicates an SLP data as incomplete, schedule a
attempt to fixup that specific one.
2018-11-13 15:37:41 -05:00
Jarrod Johnson
8473cb1cf8 Survive SLP values with =
If the slp parsing produces = in the value, ignore it and do best
effort to get the viable data out.
2018-11-09 15:38:40 -05:00
Jarrod Johnson
82ee69b56c Age out macmap on node database changes
This mitigates problems where automation fails to quickly
react to changes/fixes in the net attributes.
2018-11-06 08:18:37 -05:00
Jarrod Johnson
43fb4467b7 Add error if chain goes off into non-existent nodes
Various behaviors break if the administrator declares a chain goes
to nowhere, throw up an error and hopefully see it caught to detect
this misconfiguration.
2018-11-02 15:56:34 -04:00
Jarrod Johnson
5f38cce51e Finish nodestorage show
It now shows the pertinent details of storage on a node.
2018-11-01 10:43:28 -04:00
Jarrod Johnson
6378f823f3 Add resource name to the storage messages
The storage messages need to have the references preserved
for CLI consumption.
2018-10-30 15:46:54 -04:00
Jarrod Johnson
079dfed11e Add type to storage messages
Storage messages are likely to be grouped together and need
more to disambiguate them.
2018-10-30 15:28:03 -04:00
Jarrod Johnson
25b969a4db Add 'all' element to configuration/storage
Provide a way to provide all the data about storage configuration
in a single call.
2018-10-30 10:25:41 -04:00
Jarrod Johnson
950abde20e Remove 'all' from storage subelements
This concept is potentially problematic, as a volume named 'all' is
valid.  Additionally, if really wanting all, the caller probably wants
the full storage configuration, better provide that up a level to
avoid requiring many calls to do that.
2018-10-30 10:05:48 -04:00
Jarrod Johnson
73cab3774d Add support for volume creation 2018-10-26 14:31:28 -04:00
Jarrod Johnson
c2d52d4f83 Add functionality to delete volumes
Further enriching the storage api by adding the ability to delete
a volume.
2018-10-25 16:31:32 -04:00
Jarrod Johnson
fd17559a73 Show result of changing disk state.
When changing disk state, let the caller know the result explicitly.
2018-10-25 16:11:54 -04:00
Jarrod Johnson
3945ccd5c3 Advance storage configuration API
Enumerate disks in an array in disks list.

Add array associated with disk to disk data.

Show detailed data on arrays and volumes.
2018-10-25 16:07:07 -04:00
Jarrod Johnson
7c006b33bc Implement functionality to configure disks
Disks may now have their state changed between hotspare, unconfigured,
and jbod.
2018-10-25 14:48:58 -04:00
Jarrod Johnson
c96b5f0270 Fix spurious trace on immediate exit confetty
When confetty exits without doing anything, it causes
sockapi to reference an empty request.  Check for that before
checking if it is a collective request.
2018-10-25 14:12:15 -04:00
Jarrod Johnson
c150a848fd Normalize drive state
Since drive state is a key api feature, make sure it is normalized
to a set vocabulary.
2018-10-24 16:36:38 -04:00
Jarrod Johnson
bc7a197a8c Merge branch '18csi' 2018-10-23 09:16:32 -04:00
Jarrod Johnson
6973736c6a Set password before setting username
The BMC is at much higher risk for rejecting the password
(e.g. the password does not pass complexity requirements).  If the
username changes, but the password is still default, it is very
confusing.  Give the password change the chance to break the
configuration process first.
2018-10-23 09:16:15 -04:00
Jarrod Johnson
51037e2487 Change 'status' to 'state'
This is more consistent with several other confluent messages.
2018-10-17 09:37:31 -04:00
Jarrod Johnson
4077346d30 Rename api from drives to disks
It just feels more appropriate to use disks rather than drives.
2018-10-16 09:00:25 -04:00
Jarrod Johnson
8a4bf22a7e Further flesh out the storage api support
Add ability to list arrays and volumes.
2018-10-15 16:27:12 -04:00
Jarrod Johnson
f2dd501de9 Do not proceed to try to upload if file doesn't exist
After relaying the error, it went ahead and
attempted the update, contrary to any reasonable expectation.
2018-10-15 11:15:13 -04:00
Jarrod Johnson
f835057ae4 Do not proceed to try to upload if file doesn't exist
After relaying the error, it went ahead and
attempted the update, contrary to any reasonable expectation.
2018-10-15 11:14:59 -04:00
Jarrod Johnson
a11e4b71ce Merge branch '18csi' 2018-10-12 15:47:38 -04:00
Jarrod Johnson
e9ba49a4aa Intercept another 'unexpected error'
During a particularly hectic init, Invalid Session ID
may occur if a command is ran particularly early.  Intercept
and replace a more clean message.
2018-10-12 15:46:54 -04:00
Jarrod Johnson
deb90fbca9 Fix trace on early console connect
If the trace happens before tracelog is ready, just print the output
to the stdout log for now.
2018-10-12 14:56:54 -04:00
Jarrod Johnson
3105b9b1f9 Significantly rework the collective startup behavior
One, make the tracking bools enforce a lock to reduce confusion

Treat an initializing peer as failed, to avoid getting too fixated
on an uncertain target.

Make sure that no more than one follower is tried at a time by
killing before starting a new one, and syncing up the configmanager
state

Decline to act on an assimilation request if we are trying to connect
and also if the current leader asks us to connect and we already are.

Avoid calling get_leader while connecting, as that can cause a member
to decide to become a leader while trying to connect, by swapping
the reactions to the connect request.

Avoid trying to assimilate existing followers.

Fix some logging.
2018-10-12 11:45:23 -04:00
Jarrod Johnson
f525c25ba6 Provide more verbose collective logging
This helps understand the flow in practice of collective behavior.
2018-10-11 15:15:11 -04:00
Jarrod Johnson
3012de1fe4 Prioritize deletion of transactioncount
If the invalidation is incomplete, make sure that transactioncount
is invalidated first to avoid it being able to propogate through
a collective.
2018-10-11 09:16:57 -04:00
Jarrod Johnson
be930fc076 Add missing subsystem marker from a collective log 2018-10-10 16:30:28 -04:00
Jarrod Johnson
2d0199a4e9 Wrap bdb deletion in same lock that sync itself uses
If os.remove happens at a bad time, it causes an unfortunate behavior
in dbm.  Serialize this sort of operation to avoid the bad behavior.
2018-10-10 15:24:55 -04:00
Jarrod Johnson
6b70a4322a Fix rollback
The fix for the stale data introduced breaking clear rollback
Restore the behavior and make self._cfgstore a somewhat slower property
for now.
2018-10-10 15:22:20 -04:00
Jarrod Johnson
6a784e3a1c Ensure sync is complete prior to leaving configmanager sync
The initialization lock is meant to avoid collective and generic
initialization stepping on each other.  This is somewhat reduced in
efficacy if one has a sync running while the other is changing relevant
data.
2018-10-10 14:49:33 -04:00
Jarrod Johnson
3b2b96a4cf Force fullsync if dead sync thread likely
If the sync thread died previously, force the next sync to be full.
2018-10-10 14:32:13 -04:00