Conversation
|
@lyft/network-team @rshriram |
|
|
||
| ``/srv/runtime/current/envoy/health_check/min_interval`` | ||
|
|
||
| The terminal portion of the path is a file that generally contains a numeric value unless otherwise |
There was a problem hiding this comment.
Break into smaller sentences? Like
The terminal portion of a path is the file. The contents of the file constitute the runtime value. When reading numeric values from a file, spaces and new lines will be ignored.
| ``/srv/runtime/current/envoy_override/my-cluster/health_check/min_interval`` | ||
|
|
||
| If found, the value will override any value found in the primary lookup path. This allows runtime to | ||
| be customized for individual clusters as needed on top of a global base. |
There was a problem hiding this comment.
This allows the user to customize the runtime values for individual clusters on top of global defaults.
|
|
||
| Each '.' in a runtime key indicates a new directory in the hierarchy, rooted at *symlink_root* + | ||
| *subdirectory*. For example, the *health_check.min_interval* path would have the following full | ||
| file system path: |
There was a problem hiding this comment.
would have the following path (using the symbolic link)
| For example, :ref:`here <config_cluster_manager_cluster_runtime>` are the runtime settings for | ||
| upstream clusters. | ||
|
|
||
| Assume the following configuration settings for runtime: |
There was a problem hiding this comment.
Assume that the folder /etc/config/v1/envoy points to the actual filesystem where global envoy runtime configurations are stored. The following would be a typical configuration setting for the runtime:
...
where, /srv/runtime/current would be a symlink to /etc/config/v1.
| If found, the value will override any value found in the primary lookup path. This allows runtime to | ||
| be customized for individual clusters as needed on top of a global base. | ||
|
|
||
| Symbolic link management |
There was a problem hiding this comment.
Rename to Updating runtime values
| Symbolic link management | ||
| ------------------------ | ||
|
|
||
| Envoy uses a fairly common pattern for atomic file system updates. Envoy assumes that an entire |
There was a problem hiding this comment.
There are two steps to update any runtime value. First, create a hard copy of the entire runtime tree and update the desired runtime values. Second, atomically swap the symlink root from the old tree to the new runtime tree, using the equivalent of the following command:
|
|
||
| .. code-block:: console | ||
|
|
||
| ln -s new current_tmp && mv -Tf current_tmp current |
There was a problem hiding this comment.
/srv/runtime:~$ ln -s /etc/config/v2 new && mv -Tf new current
| documented. Envoy will strip white space as needed when reading the file. | ||
|
|
||
| The *override_subdirectory* is used along with the :option:`--service-cluster` CLI option. Assume | ||
| that :option:`--service-cluster` has been set to ``my-clustser``. Envoy will first look for the |
…proxy#619) * initial CB changes * update debian * init GCS_PATH * del unused files * change != to -n
Create the VM context as a Wasm::Context for consistency.
Description: After opening `EnvoyEngine.h` in Xcode, these two warnings were shown. Applying the fixit suggestion resulted in these changes. For the block declaration, the diagnostic was: > This block declaration is not a prototype I don't think that's a clear explanation. In C and ObjC, these two declarations are **not** the same: ```c f(); f(void); ``` In C and ObjC, the first function can take _any_ arguments, so you need to use `void` to indicate the function accepts no arguments. In C++ and ObjC++, `f()` and `f(void)` are the same, so this issue only applies to C/ObjC. Risk Level: Low Testing: None Docs Changes: N/A Release Notes: N/A Signed-off-by: JP Simard <jp@jpsim.com>
Description: After opening `EnvoyEngine.h` in Xcode, these two warnings were shown. Applying the fixit suggestion resulted in these changes. For the block declaration, the diagnostic was: > This block declaration is not a prototype I don't think that's a clear explanation. In C and ObjC, these two declarations are **not** the same: ```c f(); f(void); ``` In C and ObjC, the first function can take _any_ arguments, so you need to use `void` to indicate the function accepts no arguments. In C++ and ObjC++, `f()` and `f(void)` are the same, so this issue only applies to C/ObjC. Risk Level: Low Testing: None Docs Changes: N/A Release Notes: N/A Signed-off-by: JP Simard <jp@jpsim.com>
**Commit Message** This switches `ai-gateway-crd-helm` to `ai-gateway-crds-helm` for consistency with Envoy Gateway project. The chart will be pushed to https://hub.docker.com/r/envoyproxy/ai-gateway-crds-helm **Related Issues/PRs (if applicable)** Follow up on #618 --------- Signed-off-by: Takeshi Yoneda <t.y.mathetake@gmail.com>
fixes #612