/** * Returns the ready condition of the node. * * @param node The target node. * @return The {@link NodeCondition} or null if not found. */ private static NodeCondition getNodeReadyCondition(Node node) { Utils.checkNotNull(node, "Node can't be null."); if (node.getStatus() == null || node.getStatus().getConditions() == null) { return null; } for (NodeCondition condition : node.getStatus().getConditions()) { if (NODE_READY.equals(condition.getType())) { return condition; } } return null; } }
public String getURL(Service service, String portName, String namespace, KubernetesClient client) { ServicePort port = URLFromServiceUtil.getServicePortByName(service, portName); String serviceProto = port.getProtocol(); NodePortUrlComponents urlComponents = null; Integer nodePort = port.getNodePort(); if(nodePort != null) { try { NodeList nodeList = client.nodes().list(); if(nodeList != null && nodeList.getItems() != null) { for(Node item : nodeList.getItems()) { urlComponents = getUrlComponentsFromNodeList(item.getStatus(), nodePort); if(urlComponents != null) { break; } } } } catch (KubernetesClientException exception) { logger.warn("Could not find a node! " + exception); } } return urlComponents != null ? (serviceProto + "://" + urlComponents.getClusterIP() + ":" + urlComponents.getPortNumber()).toLowerCase() : null; }
/** * Write the external address of this node * * @return if the operation was executed successfully */ public boolean writeExternalAddress() { List<NodeAddress> addresses = client.nodes().withName(config.getNodeName()).get().getStatus().getAddresses(); log.info("NodeLabels = {}", addresses); String externalAddress = findAddress(addresses); if (externalAddress == null) { log.error("External address nto found"); return false; } else { log.info("External address found {}", externalAddress); } return write(FILE_EXTERNAL_ADDRESS, externalAddress); }
public void scanNode(Node node) { ObjectNode n = mapper.createObjectNode(); ObjectMeta meta = node.getMetadata(); n.put("nodeUid", meta.getUid()); n.put("resourceVersion", meta.getResourceVersion()); n.put("name", meta.getName()); n.put("namespace", meta.getNamespace()); n.put("clusterName", meta.getClusterName()); n.put("generateName", meta.getGenerateName()); n.put("creationTimestamp", meta.getCreationTimestamp()); n.put("deletionTimestamp", meta.getDeletionTimestamp()); n.put("deletionGracePeriod", meta.getDeletionGracePeriodSeconds()); n.put("selfLink", meta.getSelfLink()); NodeStatus ns = node.getStatus(); NodeSpec nodeSpec = node.getSpec(); n.put("externalId", nodeSpec.getExternalID()); n.put("unschedulable", nodeSpec.getUnschedulable()); n.put("podCIDR", nodeSpec.getPodCIDR()); n.put("providerId", nodeSpec.getProviderID()); n.put("clusterId", clusterId); getNeoRxClient().execCypher("merge (n:KubeNode {nodeUid:{nodeUid}}) set n.clusterId={clusterId}, n+={props}", "nodeUid", meta.getUid(), "props", n, "clusterId", clusterId); }
public NodeFluentImpl(Node instance){ this.withApiVersion(instance.getApiVersion()); this.withKind(instance.getKind()); this.withMetadata(instance.getMetadata()); this.withSpec(instance.getSpec()); this.withStatus(instance.getStatus()); }
public NodeBuilder(NodeFluent<?> fluent,Node instance,Boolean validationEnabled){ this.fluent = fluent; fluent.withApiVersion(instance.getApiVersion()); fluent.withKind(instance.getKind()); fluent.withMetadata(instance.getMetadata()); fluent.withSpec(instance.getSpec()); fluent.withStatus(instance.getStatus()); this.validationEnabled = validationEnabled; } public NodeBuilder(Node instance){
public NodeBuilder(Node instance,Boolean validationEnabled){ this.fluent = this; this.withApiVersion(instance.getApiVersion()); this.withKind(instance.getKind()); this.withMetadata(instance.getMetadata()); this.withSpec(instance.getSpec()); this.withStatus(instance.getStatus()); this.validationEnabled = validationEnabled; }
public NodeBuilder( NodeFluent<?> fluent , Node instance ){ this.fluent = fluent; fluent.withApiVersion(instance.getApiVersion()); fluent.withKind(instance.getKind()); fluent.withMetadata(instance.getMetadata()); fluent.withSpec(instance.getSpec()); fluent.withStatus(instance.getStatus()); } public NodeBuilder( Node instance ){
public NodeBuilder( NodeFluent<?> fluent , Node instance ){ this.fluent = fluent; fluent.withApiVersion(instance.getApiVersion()); fluent.withKind(instance.getKind()); fluent.withMetadata(instance.getMetadata()); fluent.withSpec(instance.getSpec()); fluent.withStatus(instance.getStatus()); } public NodeBuilder( Node instance ){
public NodeBuilder( Node instance ){ this.fluent = this; this.withApiVersion(instance.getApiVersion()); this.withKind(instance.getKind()); this.withMetadata(instance.getMetadata()); this.withSpec(instance.getSpec()); this.withStatus(instance.getStatus()); }
public NodeBuilder( Node instance ){ this.fluent = this; this.withApiVersion(instance.getApiVersion()); this.withKind(instance.getKind()); this.withMetadata(instance.getMetadata()); this.withSpec(instance.getSpec()); this.withStatus(instance.getStatus()); }
if (items != null) { for (Node item : items) { NodeStatus status = item.getStatus(); if (!found && status != null) { List<NodeAddress> addresses = status.getAddresses();