You need the following installed and running:
- Docker
- kubectl (with kubernetes context set to the Cluster where you want to install)
- oc
- helm (the helm2 command line tool) - Helm 3 won't work!
- cloudctl
Select the components that you want to install.
You have to have a Default Storage Class defined (should be the case for IBM ROKS).
If not add the annotation to the class (typically ibmc-block-gold):
storageclass.kubernetes.io/is-default-class=true
./10_install_cp4mcm.sh -t <MY_REGISTRY_TOKEN>
./10_install_cp4mcm.sh -t <MY_REGISTRY_TOKEN>
You need at least one cluster with:
region: EU
environment: Prod
-
Register Cluster
-
Execute on each cluster
kubectl create secret docker-registry pull-secret-hub --docker-username=ekey --docker-password=<MY ENTITLEMENT KEY> --docker-email=demo@ibm.com --docker-server=cp.icr.io -n multicluster-endpoint
-
Add cluster namespace to team
-
Label each cluster with ibm.com/cloud-native-monitoring=enabled
-
Check that all Applications have been deployed to the Prod Cluster
-
Create DC
-
Execute on each cluster
kubectl -n cp4mcm-cloud-native-monitoring create secret generic ibm-agent-https-secret --from-file=./ibm-cloud-apm-dc-configpack/keyfiles/cert.pem --from-file=./ibm-cloud-apm-dc-configpack/keyfiles/ca.pem --from-file=./ibm-cloud-apm-dc-configpack/keyfiles/key.pem kubectl create secret docker-registry pull-secret-hub --docker-username=ekey --docker-password=<MY ENTITLEMENT KEY> --docker-email=demo@ibm.com --docker-server=cp.icr.io -n cp4mcm-cloud-native-monitoring
-
Create Teams
- SRE Team1
- SME Apps Team1
-
Create Slack integration
-
Create Baselines
Kubernetes Pod:CPU Usage Millicores
-
Create Resource Group
- SRE Bookinfo: Productpage Service and Pod
- SRE Kubetoy: kubetoy pod
-
Create Runbook from ./DEMO/EXAMPLES/apm/runbook.md
-
Create SLOs
kubectl apply -f tools/apm/slo-synth-bookinfo.yaml kubectl apply -f tools/apm/slo-synth-modresort.yaml
-
Create Policies
-
Event Policy KubeToy Resource Name contains kubetoy Assign Runbook
-
Incident Policy KubeToy Resource Name contains kubetoy Priority 1 Add to Group SRE Team1 and Demo user
-
-
Enable Instrumentation for Bookinfo
tar -xf ibm-cloud-apm-dc-configpack.tar
kubectl -n bookinfo create secret generic ibm-agent-https-secret --from-file=./ibm-cloud-apm-dc-configpack/keyfiles/cert.pem --from-file=./ibm-cloud-apm-dc-configpack/keyfiles/ca.pem --from-file=./ibm-cloud-apm-dc-configpack/keyfiles/key.pem
-
Register AWS, Google, ...
-
Enable Data collection
- Configuration (cog upper right)
- CP4MCM:IM Region "Region 0 [0]" - C&U Collection / Switch on both
- Settings Server "EVM [1]" (current) - Switch on the three Capacity&Utilization XXX
- Switch on
Embedded Ansible
-
Import resources under ./DEMO/EXAMPLES/infrastructure-management
- ansible-repo.md
- Automation_Customization_ServiceDialog.yml
- Automation_Datastore.zip
- Policies_ALL.yaml
- Reports_Chargeback.yaml
-
Schedule
- Compliance for VM and Container
- VM and Instance Analysis
-
Schedule Reports
-
Create Services
-
Chargeback
- Copy Rates
- Assign Rates
-
Create connections
- AWS: "EC2"
- Google Cloud: "GoogleCloud"
-
Import Services from ./DEMO/EXAMPLES/service-management
-
Publish and make available by adding mcm-hub namespace
- Virtual MAchine Discovery
kubectl apply -f ./tools/infra/VirtualMachineDiscover.yaml
kubectl get VirtualMachine --all-namespaces
On the PROD Cluster!
- Start Bookinfo load generator
kubectl scale -n deployments/bookinfo-create-load --replicas=1
- Stop Bookinfo load generator
kubectl scale -n deployments/bookinfo-create-load --replicas=0