Skip to content

oba11/hm-demo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple Demo of Kubernetes and Consul with Service Discovery

Python App

Change directory to python-app and read the instructions in the README on how to get it started.

Installing Helm Chart with Kind

  • Deploy Kind to listen on local port
cat <<EOF | kind create cluster --config=-
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:
- role: control-plane
  kubeadmConfigPatches:
  - |
    kind: InitConfiguration
    nodeRegistration:
      kubeletExtraArgs:
        node-labels: "ingress-ready=true"
  extraPortMappings:
  - containerPort: 30000
    hostPort: 80
    protocol: TCP
    listenAddress: "127.0.0.1"
  - containerPort: 30001
    hostPort: 443
    protocol: TCP
    listenAddress: "127.0.0.1"
EOF
  • Deploy istio on kind cluster
istioctl manifest install --skip-confirmation -f -<<EOF
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
  profile: default
  components:
    pilot:
      k8s:
        resources:
          requests:
            cpu: 50m
            memory: 128Mi
    ingressGateways:
    - enabled: true
      k8s:
        hpaSpec:
          maxReplicas: 1
        resources:
          requests:
            cpu: 50m
            memory: 128Mi
        service:
          ports:
          - name: status-port
            port: 15021
            targetPort: 15021
          - name: http2
            port: 80
            targetPort: 8080
            nodePort: 30000
          - name: https
            port: 443
            targetPort: 8443
            nodePort: 30001
      name: istio-ingressgateway
  addonComponents:
    grafana:
      enabled: true
    kiali:
      enabled: true
    prometheus:
      enabled: true
  values:
    gateways:
      istio-ingressgateway:
        type: NodePort
    kiali:
      dashboard:
        auth:
          strategy: anonymous
    pilot:
      traceSampling: 100
    tracing:
      enabled: true
EOF