.build(); storageClass = client.storage().storageClasses().create(storageClass); logger.info("Newly created storage class details: {}", storageClass.toString());
client.extensions().podSecurityPolicies().create(podSecurityPolicy); logger.log(Level.INFO, "PodSecurityPolicy created with Name : " + podSecurityPolicy.getMetadata().getName()); .build(); client.extensions().podSecurityPolicies().create(podSecurityPolicy1); logger.log(Level.INFO, "PodSecurityPolicy created with Name : " + podSecurityPolicy1.getMetadata().getName());
.create(networkPolicy);
public static void main(String args[]) throws InterruptedException { String master = "https://192.168.99.100:8443/"; if (args.length == 1) { master = args[0]; } log("Using master with url ", master); Config config = new ConfigBuilder().withMasterUrl(master).build(); try (final KubernetesClient client = new DefaultKubernetesClient(config)) { PriorityClass priorityClass = new PriorityClassBuilder() .withNewMetadata().withName("high-priority").endMetadata() .withValue(new Integer(100000)) .withGlobalDefault(false) .withDescription("This priority class should be used for XYZ service pods only.") .build(); client.scheduling().priorityClass().create(priorityClass); client.pods().inNamespace("default").create(new PodBuilder() .withNewMetadata().withName("nginx").withLabels(Collections.singletonMap("env", "test")).endMetadata() .withNewSpec() .addToContainers(new ContainerBuilder().withName("nginx").withImage("nginx").withImagePullPolicy("IfNotPresent").build()) .withPriorityClassName("high-priority") .endSpec() .build() ); } catch (KubernetesClientException e) { e.printStackTrace(); log("Could not create resource", e.getMessage()); } }
@Override public void start(WorkflowInstance workflowInstance, RunSpec runSpec) throws IOException { final KubernetesSecretSpec secretSpec = ensureSecrets(workflowInstance, runSpec); stats.recordSubmission(runSpec.executionId()); try { client.pods().create(createPod(workflowInstance, runSpec, secretSpec, styxEnvironment)); } catch (KubernetesClientException kce) { throw new IOException("Failed to create Kubernetes pod", kce); } }
@Override public void createResource(Topic topic) { Map<String, String> data = new HashMap<>(); data.put(TOPIC_NAME_KEY, String.valueOf(topic.getName())); data.put(PARTITIONS_KEY, String.valueOf(topic.getPartitions())); data.put(REPLICATION_FACTOR_KEY, String.valueOf(topic.getReplicationFactor())); data.put(PROPERTIES_KEY, Config.propertiesAsString(topic.getProperties())); data.put(ACL_KEY, String.valueOf(topic.isAcl())); Map<String, String> labels = labels(); labels.put(GENERATOR_LABEL, operator.getGeneratorId()); Map<String, String> annotations = new HashMap<>(); annotations.put(GENERATED_ANNOTATION, ZonedDateTime.now().format(DateTimeFormatter.ISO_INSTANT)); ConfigMap cm = new ConfigMapBuilder() .withNewMetadata() .withName(cleanName(topic.getName())) .withLabels(labels) .withAnnotations(annotations) .endMetadata() .withData(data).build(); cm = kubeClient().configMaps().create(cm); log.info("Created ConfigMap {} for topic {}", cm, topic); }
kubeClient().secrets().create(topicSecret); if (useInitializers) { List<Initializer> pending = new ArrayList<>(deployment.getMetadata().getInitializers().getPending());
@Override public void createResource(Topic topic) { Map<String, String> labels = labels(); labels.put(GENERATOR_LABEL, operator.getGeneratorId()); Map<String, String> annotations = new HashMap<>(); annotations.put(GENERATED_ANNOTATION, ZonedDateTime.now().format(DateTimeFormatter.ISO_INSTANT)); KafkaTopic item = new KafkaTopic(); item.setMetadata(new ObjectMetaBuilder() .withName(cleanName(topic.getName())) .withLabels(labels) .withAnnotations(annotations) .build()); KafkaTopicSpec spec = new KafkaTopicSpec(); spec.setName(topic.getName()); spec.setPartitions(topic.getPartitions()); spec.setProperties(Config.propertiesAsString(topic.getProperties())); spec.setReplicationFactor(topic.getReplicationFactor()); item.setSpec(spec); item = getClient().create(item); log.info("Created KafkaTopic {} for topic {}", item, topic); }
public Secret createSecret(HasMetadata owner, Map<String, String> values) { Secret secret = new SecretBuilder().withNewMetadata() .withName(secretName(owner)) .endMetadata() .withStringData(values) .build(); setOwnership(secret, owner); return kubeClient().secrets().create(secret); }
client.secrets().create(newSecret); } catch (KubernetesClientException e) {
.addToLabels(SPRING_MARKER_KEY, SPRING_MARKER_VALUE).endMetadata().withSpec(spec).build(); client.apps().statefulSets().create(statefulSet);
private Deployment createDeployment(String appId, AppDeploymentRequest request, Map<String, String> idMap, int externalPort) { int replicas = getCountFromRequest(request); Map<String, String> annotations = getPodAnnotations(request); Map<String, String> deploymentLabels = getDeploymentLabels(request); PodSpec podSpec = createPodSpec(appId, request, externalPort, false); Deployment d = new DeploymentBuilder().withNewMetadata().withName(appId).withLabels(idMap) .addToLabels(SPRING_MARKER_KEY, SPRING_MARKER_VALUE).addToLabels(deploymentLabels).endMetadata() .withNewSpec().withNewSelector().addToMatchLabels(idMap).endSelector().withReplicas(replicas) .withNewTemplate().withNewMetadata().withLabels(idMap).addToLabels(SPRING_MARKER_KEY, SPRING_MARKER_VALUE) .addToLabels(deploymentLabels).withAnnotations(annotations).endMetadata().withSpec(podSpec).endTemplate() .endSpec().build(); return client.apps().deployments().create(d); }
@Override public AddressSpace handle(AddressSpace addressSpace) throws Exception { NetworkPolicy networkPolicy = null; InfraConfig infraConfig = parseCurrentInfraConfig(schemaProvider.getSchema(), addressSpace); if (infraConfig != null) { networkPolicy = infraConfig.getNetworkPolicy(); } if (addressSpace.getSpec().getNetworkPolicy() != null) { networkPolicy = addressSpace.getSpec().getNetworkPolicy(); } io.fabric8.kubernetes.api.model.networking.NetworkPolicy existingPolicy = kubernetesClient.network().networkPolicies().withName(KubeUtil.getNetworkPolicyName(addressSpace)).get(); if (networkPolicy != null) { String infraUuid = addressSpace.getAnnotation(AnnotationKeys.INFRA_UUID); List<Service> services = kubernetesClient.services().withLabel(LabelKeys.INFRA_UUID, infraUuid).list().getItems(); io.fabric8.kubernetes.api.model.networking.NetworkPolicy newPolicy = createNetworkPolicy(networkPolicy, addressSpace, services); if (existingPolicy == null) { kubernetesClient.network().networkPolicies().create(newPolicy); } else if (hasChanged(existingPolicy, newPolicy)) { kubernetesClient.network().networkPolicies().withName(existingPolicy.getMetadata().getName()).replace(newPolicy); } } else if (existingPolicy != null) { kubernetesClient.network().networkPolicies().delete(existingPolicy); } return addressSpace; }
@Before public void configureCloud() throws Exception { client = setupCloud(this).connect(); deletePods(client, getLabels(this), false); String image = "busybox"; Container c = new ContainerBuilder().withName(image).withImagePullPolicy("IfNotPresent").withImage(image) .withCommand("cat").withTty(true).build(); String podName = "test-command-execution-" + RandomStringUtils.random(5, "bcdfghjklmnpqrstvwxz0123456789"); pod = client.pods().create(new PodBuilder().withNewMetadata().withName(podName).withLabels(getLabels(this)) .endMetadata().withNewSpec().withContainers(c).endSpec().build()); System.out.println("Created pod: " + pod.getMetadata().getName()); decorator = new ContainerExecDecorator(client, pod.getMetadata().getName(), image, client.getNamespace()); }