UNCLASSIFIED - NO CUI

Skip to content
Snippets Groups Projects
Commit ed300715 authored by joshwolf's avatar joshwolf
Browse files

kpt instance

parent bd5c69da
No related branches found
No related tags found
No related merge requests found
Showing
with 300 additions and 0 deletions
apiVersion: kustomize.toolkit.fluxcd.io/v1beta1
kind: Kustomization
metadata:
name: bigbang-cert-manager
spec:
path: './instance/cert-manager'
healthChecks:
- kind: HelmRelease
apiVersion: helm.toolkit.fluxcd.io/v2beta1
name: cert-manager
namespace: cert-manager
\ No newline at end of file
apiVersion: kustomize.toolkit.fluxcd.io/v1beta1
kind: Kustomization
metadata:
name: bigbang-flux
spec:
path: './instance/flux-system'
\ No newline at end of file
apiVersion: kustomize.toolkit.fluxcd.io/v1beta1
kind: Kustomization
metadata:
name: bigbang-gatekeeper
spec:
path: './instance/gatekeeper-system'
---
apiVersion: kustomize.toolkit.fluxcd.io/v1beta1
kind: Kustomization
metadata:
name: bigbang-istio-operator
spec:
path: './instance/istio-operator'
---
apiVersion: kustomize.toolkit.fluxcd.io/v1beta1
kind: Kustomization
metadata:
name: bigbang-istio-system
spec:
path: './instance/istio-system'
dependsOn:
- name: bigbang-istio-operator
namespace: flux-system
healthChecks:
- kind: Deployment
apiVersion: apps/v1
name: istiod
namespace: istio-system
namespace: flux-system
resources:
- istio.yaml
- flux.yaml
- cert-manager.yaml
- logging.yaml
- monitoring.yaml
- gatekeeper.yaml
patches:
- target:
kind: Kustomization
group: kustomize.toolkit.fluxcd.io
patch: |
apiVersion: kustomize.toolkit.fluxcd.io/v1beta1
kind: Kustomization
metadata:
name: bigbang-apps
spec:
interval: 2m
sourceRef:
kind: GitRepository
name: this
prune: true
timeout: 2m
\ No newline at end of file
---
apiVersion: kustomize.toolkit.fluxcd.io/v1beta1
kind: Kustomization
metadata:
name: bigbang-eck-operator
spec:
path: './instance/elastic-system'
---
apiVersion: kustomize.toolkit.fluxcd.io/v1beta1
kind: Kustomization
metadata:
name: bigbang-logging
spec:
path: './instance/logging'
dependsOn:
- name: bigbang-istio-system
namespace: flux-system
\ No newline at end of file
---
apiVersion: kustomize.toolkit.fluxcd.io/v1beta1
kind: Kustomization
metadata:
name: bigbang-monitoring
spec:
path: './instance/monitoring'
healthChecks:
- kind: HelmRelease
apiVersion: helm.toolkit.fluxcd.io/v2beta1
name: monitoring
namespace: monitoring
\ No newline at end of file
namespace: gatekeeper-system
resources:
- ../../base/gatekeeper
\ No newline at end of file
namespace: istio-operator
resources:
- ../../base/istio/istio-operator
apiVersion: kpt.dev/v1alpha1
kind: Kptfile
metadata:
name: istio
packageMetadata:
shortDescription: sample description
openAPI:
definitions:
io.k8s.cli.setters.hostname:
x-k8s-cli:
setter:
name: hostname
value: hostname
required: true
io.k8s.cli.substitutions.gateway-hostname:
x-k8s-cli:
substitution:
name: gateway-hostname
pattern: '*.${hostname}'
values:
- marker: ${hostname}
ref: '#/definitions/io.k8s.cli.setters.hostname'
io.k8s.cli.setters.gateway-tls-secret:
x-k8s-cli:
setter:
name: gateway-tls-secret
value: wildcard-cert
---
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
......@@ -8,20 +7,20 @@ spec:
selector:
istio: ingressgateway
servers:
- port:
number: 80
name: http
protocol: HTTP
hosts:
- '*'
# tls:
# httpsRedirect: true
- port:
number: 443
name: https
protocol: HTTPS
hosts:
- '*.$(hostname)'
tls:
mode: SIMPLE
credentialName: wildcard-cert
- port:
number: 80
name: http
protocol: HTTP
hosts:
- '*'
# tls:
# httpsRedirect: true
- port:
number: 443
name: https
protocol: HTTPS
hosts:
- '*.hostname' # {"$kpt-set":"gateway-hostname"}
tls:
mode: SIMPLE
credentialName: wildcard-cert # {"$kpt-set":"gateway-tls-secret"}
namespace: istio-system
resources:
- ../../base/istio/istio-system
- gateway.yaml
apiVersion: kpt.dev/v1alpha1
kind: Kptfile
metadata:
name: logging
packageMetadata:
shortDescription: sample description
openAPI:
definitions:
io.k8s.cli.setters.hostname:
x-k8s-cli:
setter:
name: hostname
value: kibana.hostname
io.k8s.cli.substitutions.kibana-hostname:
x-k8s-cli:
substitution:
name: kibana-hostname
pattern: kibana.${hostname}
values:
- marker: ${hostname}
ref: '#/definitions/io.k8s.cli.setters.hostname'
# logging
## Description
sample description
## Usage
### Fetch the package
`kpt pkg get REPO_URI[.git]/PKG_PATH[@VERSION] logging`
Details: https://googlecontainertools.github.io/kpt/reference/pkg/get/
### View package content
`kpt cfg tree logging`
Details: https://googlecontainertools.github.io/kpt/reference/cfg/tree/
### List setters
`kpt cfg list-setters logging`
Details: https://googlecontainertools.github.io/kpt/reference/cfg/list-setters/
### Set a value
`kpt cfg set logging NAME VALUE`
Details: https://googlecontainertools.github.io/kpt/reference/cfg/set/
### Apply the package
```
kpt live init logging
kpt live apply logging --reconcile-timeout=2m --output=table
```
Details: https://googlecontainertools.github.io/kpt/reference/live/
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: kibana
spec:
hosts:
- "kibana.hostname" # {"$kpt-set":"kibana-hostname"}
gateways:
- main.istio-system.svc.cluster.local
http:
- route:
- destination:
port:
number: 5601
host: kibana-kb-http
resources:
- kibana-vs.yaml
namespace: logging
resources:
- ../../base/logging/efk
- ingress
apiVersion: kpt.dev/v1alpha1
kind: Kptfile
metadata:
name: monitoring
packageMetadata:
shortDescription: sample description
openAPI:
definitions:
io.k8s.cli.setters.hostname:
x-k8s-cli:
setter:
name: hostname
value: hostname
io.k8s.cli.substitutions.alertmanager-hostname:
x-k8s-cli:
substitution:
name: alertmanager-hostname
pattern: alerts.${hostname}
values:
- marker: ${hostname}
ref: '#/definitions/io.k8s.cli.setters.hostname'
io.k8s.cli.substitutions.prometheus-hostname:
x-k8s-cli:
substitution:
name: prometheus-hostname
pattern: prometheus.${hostname}
values:
- marker: ${hostname}
ref: '#/definitions/io.k8s.cli.setters.hostname'
io.k8s.cli.substitutions.grafana-hostname:
x-k8s-cli:
substitution:
name: grafana-hostname
pattern: grafana.${hostname}
values:
- marker: ${hostname}
ref: '#/definitions/io.k8s.cli.setters.hostname'
---
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
name: monitoring
namespace: monitoring
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: alert-manager
namespace: observability
spec:
hosts:
- "alerts.$(hostname)"
- "alerts.hostname" # {"$kpt-set":"alertmanager-hostname"}
gateways:
- main.istio-system.svc.cluster.local
- main.istio-system.svc.cluster.local
http:
- route:
- destination:
port:
number: 9093
host: monitoring-alertmanager.observability.svc.cluster.local
- route:
- destination:
port:
number: 9093
host: monitoring-alertmanager
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment