From 51f84affe02a4d67e3faa994a04dc52b08ca327a Mon Sep 17 00:00:00 2001 From: Lily Pan Date: Tue, 12 Nov 2024 10:42:10 -0800 Subject: [PATCH] fix readme --- aks-node-controller/README.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/aks-node-controller/README.md b/aks-node-controller/README.md index 72a20f7837..8e26e3df7c 100644 --- a/aks-node-controller/README.md +++ b/aks-node-controller/README.md @@ -79,7 +79,7 @@ Here is an example response return by CSE: ### Provisioning Flow -Upon first startup, CustomData is made available to the VM, after which cloud-init is able to process the content which, in this case, involves writing the bootstrap config to disk. The binary is triggered by a systemd unit, [`aks-node-controller.service`](https://github.com/Azure/AgentBaker/blob/dev/parts/linux/cloud-init/artifacts/aks-node-controller.service) which is automatically run once cloud-init is complete. In this way, we are ensuring the bootstrapping config is present on the node and can proceeed to run the go binary to start the bootstrapping process. +Upon first startup, CustomData is made available to the VM, after which cloud-init is able to process the content, in this case, writing the bootstrap config to disk. The binary is triggered by a systemd unit, [`aks-node-controller.service`](https://github.com/Azure/AgentBaker/blob/dev/parts/linux/cloud-init/artifacts/aks-node-controller.service) which is automatically run once cloud-init is complete. In this way, we are ensuring the bootstrapping config is present on the node and can proceeed to run the go binary to start the bootstrapping process. Below is the content of `CustomData` and `CSE` that is returned by `GetNodeBootstrapping`. @@ -103,11 +103,12 @@ CSE script: `/opt/azure/containers/aks-node-controller provision-wait` Below is a diagram illustrating the provisioning flow: -![alt text](./images/scriptlessBootstrapFlow.png) +![provisionDiagram](../.github/images/scriptlessBootstrapFlow.png) Key components: 1. `aks-node-controller.service`: systemd unit that is triggered once cloud-init is complete (guaranteeing that config is present on disk) and then kickstarts bootstrapping. 2. `aks-node-controller` go binary with two modes: + - provision: parses the node config and triggers bootstrap process - provision-wait: waits for `provision.complete` to be present and reads `provision.json` which contains the provision output of type `CSEStatus` and is returned by CSE through capturing stdout \ No newline at end of file