You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add custom SSH port support for dynamic and static nodepools (#2026)
- Adds configurable SSH port support for static node pools, replacing
the hardcoded port 22 -> optional `sshPort field `in the manifest
- New dynamic nodepools (created via new terraform templates) use port
22522 by default, with the port confirmed from terraform output
- Existing dynamic nodepools retain port 22 for backward compatibility
via state transfer
- Terraform templates output [IP, port] tuples; old templates outputting
just IP. This will be handled in ansibler and kube-eleven stage as ssh
port 22 for VMs
- With this PR comes new templates
berops/claudie-config#32. But changes in PR also
works with old templates. Migration from old to new templates also
tested
- **This PR replaces the earlier PR
#1997
- Closes#1837
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Added configurable SSH port support for node pools, enabling SSH
connections through non-standard ports. Defaults to port 22 when not
specified.
* Infrastructure provisioning and management services now fully support
custom SSH port configurations for cluster operations.
* **Documentation**
* Updated API documentation, deployment examples, and platform-specific
guides with the new optional `sshPort` field for node pool
specifications.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Matus Brandys <matus.brandys@berops.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: CI/CD pipeline <CI/CD-pipeline@users.noreply.github.com>
Copy file name to clipboardExpand all lines: docs/input-manifest/example.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -262,6 +262,7 @@ spec:
262
262
# secretRef: # Secret reference specification, holding private key which will be used to SSH into the node (as root or as a user specificed in the username attribute).
263
263
# name: # Name of the secret resource.
264
264
# namespace: # Namespace of the secret resource.
265
+
# sshPort: # SSH port used to connect to the static nodes. Defaults to 22 if not set. (optional)
265
266
# labels: # Map of custom user defined labels for this nodepool. This field is optional and is ignored if used in Loadbalancer cluster. (optional)
266
267
# annotations: # Map of user defined annotations, which will be applied on every node in the node pool. (optional)
267
268
# taints: # Array of custom user defined taints for this nodepool. This field is optional and is ignored if used in Loadbalancer cluster. (optional)
Copy file name to clipboardExpand all lines: docs/input-manifest/providers/on-prem.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ Claudie is designed to leverage your existing infrastructure and utilise it for
6
6
7
7
2. Connectivity between Static Nodes: Static nodes within the infrastructure should be able to communicate with each other using the specified endpoints. This connectivity is important for proper functioning of the Kubernetes cluster.
8
8
9
-
3. SSH Access with Root Privileges: Claudie relies on SSH access to the nodes using the SSH key provided in the input manifest. The SSH key should grant root privileges to enable Claudie to perform required operations on the nodes.
9
+
3. SSH Access with Root Privileges: Claudie relies on SSH access to the nodes using the SSH key provided in the input manifest. The SSH key should grant root privileges to enable Claudie to perform required operations on the nodes. By default, Claudie connects on port `22`. If your static nodes use a custom SSH port, you can specify it with the `sshPort` field on the static nodepool definition.
10
10
11
11
4. Meeting the Kubernetes nodes requirements: Learn [more](https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#before-you-begin).
12
12
@@ -43,13 +43,15 @@ spec:
43
43
nodePools:
44
44
static:
45
45
- name: control
46
+
# sshPort: 2222 # Optional: SSH port for connecting to static nodes. Defaults to 22.
46
47
nodes:
47
48
- endpoint: "192.168.10.1"
48
49
secretRef:
49
50
name: static-node-key
50
51
namespace: <your-namespace>
51
52
52
53
- name: compute
54
+
# sshPort: 2222 # Optional: SSH port for connecting to static nodes. Defaults to 22.
0 commit comments