Skip to content

Commit

Permalink
Fix: add readme for installing neptune on kind (#31)
Browse files Browse the repository at this point in the history
* add kind install configuration

* fix run_on_kind.md

---------

Co-authored-by: dragonbanana <[email protected]>
  • Loading branch information
DragonBanana and DragonBanana authored Mar 2, 2023
1 parent d090050 commit c941bd1
Show file tree
Hide file tree
Showing 9 changed files with 690 additions and 14 deletions.
102 changes: 102 additions & 0 deletions config/crd/bases/systemautoscaler.polimi.it_podscales.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@

---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.6.2
creationTimestamp: null
name: podscales.systemautoscaler.polimi.it
spec:
group: systemautoscaler.polimi.it
names:
kind: PodScale
listKind: PodScaleList
plural: podscales
singular: podscale
preserveUnknownFields: false
scope: Namespaced
versions:
- name: v1beta1
schema:
openAPIV3Schema:
description: PodScale defines the mapping between a `ServiceLevelAgreement`
and a `Pod` matching the selector. It also keeps track of the resource values
computed by `Recommender` and adjusted by `Contention Manager`.
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: PodScaleSpec is the spec for a PodScale resource
properties:
container:
type: string
desired:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: ResourceList is a set of (resource name, quantity) pairs.
type: object
namespace:
type: string
pod:
type: string
service:
type: string
serviceLevelAgreement:
type: string
required:
- container
- namespace
- pod
- service
- serviceLevelAgreement
type: object
status:
description: PodScaleStatus contains the resources patched by the `Contention
Manager` according to the available node resources and other pods' SLA
properties:
actual:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: ResourceList is a set of (resource name, quantity) pairs.
type: object
capped:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: ResourceList is a set of (resource name, quantity) pairs.
type: object
type: object
required:
- spec
- status
type: object
served: true
storage: true
status:
acceptedNames:
kind: ""
plural: ""
conditions: []
storedVersions: []
Original file line number Diff line number Diff line change
@@ -0,0 +1,172 @@

---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.6.2
creationTimestamp: null
name: servicelevelagreements.systemautoscaler.polimi.it
spec:
group: systemautoscaler.polimi.it
names:
kind: ServiceLevelAgreement
listKind: ServiceLevelAgreementList
plural: servicelevelagreements
singular: servicelevelagreement
preserveUnknownFields: false
scope: Namespaced
versions:
- name: v1beta1
schema:
openAPIV3Schema:
description: ServiceLevelAgreement is a configuration for the autoscaling
system. It sets a requirement on the services that matches the selector.
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: ServiceLevelAgreementSpec defines the agreement specifying
the metric requirement to honor by System Autoscaler, a Selector used
to match a service with the Service Level Agreement and the default
resources assigned to pods in case the `requests` field is empty in
the `PodSpec`.
properties:
defaultResources:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: Specify the default resources assigned to pods in case
`requests` field is empty in `PodSpec`.
type: object
integralGain:
default: 25
description: Integral gain used by recommender. BC parameter
format: int32
type: integer
maxReplicas:
default: 100
description: The upper bound of replicas for the application.
format: int32
type: integer
maxResources:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: The upper bound of resources to assign to containers.
type: object
metric:
description: Specify the metric on which the requirement is set.
properties:
responseTime:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
type: object
minReplicas:
default: 1
description: The lower bound of replicas for the application.
format: int32
type: integer
minResources:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: The lower bound of resources to assign to containers.
type: object
proportionalGain:
default: 50
description: Proportional gain used by recommender. DC parameter
format: int32
type: integer
service:
description: Identify the Service on which the agreement is defined
properties:
container:
description: The container to track inside the Pods.
type: string
selector:
description: Specify the selector to match Services and Service
Level Agreement
properties:
matchExpressions:
description: matchExpressions is a list of label selector
requirements. The requirements are ANDed.
items:
description: A label selector requirement is a selector
that contains values, a key, and an operator that relates
the key and values.
properties:
key:
description: key is the label key that the selector
applies to.
type: string
operator:
description: operator represents a key's relationship
to a set of values. Valid operators are In, NotIn,
Exists and DoesNotExist.
type: string
values:
description: values is an array of string values. If
the operator is In or NotIn, the values array must
be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced
during a strategic merge patch.
items:
type: string
type: array
required:
- key
- operator
type: object
type: array
matchLabels:
additionalProperties:
type: string
description: matchLabels is a map of {key,value} pairs. A
single {key,value} in the matchLabels map is equivalent
to an element of matchExpressions, whose key field is "key",
the operator is "In", and the values array contains only
"value". The requirements are ANDed.
type: object
type: object
required:
- container
- selector
type: object
required:
- metric
- service
type: object
required:
- spec
type: object
served: true
storage: true
status:
acceptedNames:
kind: ""
plural: ""
conditions: []
storedVersions: []
Loading

0 comments on commit c941bd1

Please sign in to comment.