From 7ddd72ee990fe7f8ab9130e567d238416cb58416 Mon Sep 17 00:00:00 2001 From: borutswarm <78736661+borutswarm@users.noreply.github.com> Date: Tue, 23 Mar 2021 09:44:38 +0100 Subject: Document cloud-init for Vyos * Create cloud-init.md * Update index.rst - added cloud-init.md to toc. --- docs/installation/cloud/cloud-init.md | 38 +++++++++++++++++++++++++++++++++++ docs/installation/cloud/index.rst | 3 ++- 2 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 docs/installation/cloud/cloud-init.md diff --git a/docs/installation/cloud/cloud-init.md b/docs/installation/cloud/cloud-init.md new file mode 100644 index 00000000..02e22408 --- /dev/null +++ b/docs/installation/cloud/cloud-init.md @@ -0,0 +1,38 @@ +.. _cloud-init: + +################################ +Configuring Vyos with cloud-init +################################ + +Vyos uses cloud-init to configure itself automatically in cloud environments. + +There is a Meta-Data module `cc_vyos.py` that takes care of the cloud-specific configuration. + +Additional module `cc_vyos_userdata.py` introduces a new parameter `vyos_config_commands` into User-Data (`#cloud-config`). This parameter should be a list of VyOS configuration commands that will be applied during deployment. This module will run last. + +Commands requirements: + - one command per line + - if command ending by value, it must be inside single quotes: `set some option 'value'`, `delete some option 'value'` + - a single-quote symbol is not allowed inside command or value +The commands list produced by the `show configuration commands` command on a VyOS router should comply with all the requirements, so it is easy to get a proper commands list by copying it from another router. + +Usage example (User-Data content): +``` +#cloud-config +vyos_config_commands: + - set system host-name 'demo123' + - set system ntp server 1.pool.ntp.org + - set system ntp server 2.pool.ntp.org + - delete interfaces ethernet eth2 address + - set interfaces ethernet eth2 address '192.0.2.1/24' +``` + + +References +---------- + +.. stop_vyoslinter + +https://github.com/vyos/vyos-cloud-init/commit/1607eec32641ad93ea211e447336b3366c28de06 + +.. start_vyoslinter diff --git a/docs/installation/cloud/index.rst b/docs/installation/cloud/index.rst index f6060762..e4079c2c 100644 --- a/docs/installation/cloud/index.rst +++ b/docs/installation/cloud/index.rst @@ -6,4 +6,5 @@ Running VyOS in Cloud Environments .. toctree:: :caption: Content - + + cloud-init -- cgit v1.2.3 From f533475db9021d5cdbf1b9a16b4e124e06a68c1a Mon Sep 17 00:00:00 2001 From: Robert Göhler Date: Tue, 23 Mar 2021 19:35:19 +0100 Subject: cloud-init: correct syntax --- docs/installation/cloud/cloud-init.md | 38 --------------------------- docs/installation/cloud/cloud-init.rst | 48 ++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 38 deletions(-) delete mode 100644 docs/installation/cloud/cloud-init.md create mode 100644 docs/installation/cloud/cloud-init.rst diff --git a/docs/installation/cloud/cloud-init.md b/docs/installation/cloud/cloud-init.md deleted file mode 100644 index 02e22408..00000000 --- a/docs/installation/cloud/cloud-init.md +++ /dev/null @@ -1,38 +0,0 @@ -.. _cloud-init: - -################################ -Configuring Vyos with cloud-init -################################ - -Vyos uses cloud-init to configure itself automatically in cloud environments. - -There is a Meta-Data module `cc_vyos.py` that takes care of the cloud-specific configuration. - -Additional module `cc_vyos_userdata.py` introduces a new parameter `vyos_config_commands` into User-Data (`#cloud-config`). This parameter should be a list of VyOS configuration commands that will be applied during deployment. This module will run last. - -Commands requirements: - - one command per line - - if command ending by value, it must be inside single quotes: `set some option 'value'`, `delete some option 'value'` - - a single-quote symbol is not allowed inside command or value -The commands list produced by the `show configuration commands` command on a VyOS router should comply with all the requirements, so it is easy to get a proper commands list by copying it from another router. - -Usage example (User-Data content): -``` -#cloud-config -vyos_config_commands: - - set system host-name 'demo123' - - set system ntp server 1.pool.ntp.org - - set system ntp server 2.pool.ntp.org - - delete interfaces ethernet eth2 address - - set interfaces ethernet eth2 address '192.0.2.1/24' -``` - - -References ----------- - -.. stop_vyoslinter - -https://github.com/vyos/vyos-cloud-init/commit/1607eec32641ad93ea211e447336b3366c28de06 - -.. start_vyoslinter diff --git a/docs/installation/cloud/cloud-init.rst b/docs/installation/cloud/cloud-init.rst new file mode 100644 index 00000000..b9c1c415 --- /dev/null +++ b/docs/installation/cloud/cloud-init.rst @@ -0,0 +1,48 @@ +.. _cloud-init: + +################################ +Configuring Vyos with cloud-init +################################ + +Vyos uses cloud-init to configure itself automatically in cloud environments. +There is a Meta-Data module ``cc_vyos.py`` that takes care of the +cloud-specific configuration. + +Additional module ``cc_vyos_userdata.py`` introduces a new parameter +``vyos_config_commands`` into User-Data (``#cloud-config``). This parameter +should be a list of VyOS configuration commands that will be applied during +deployment. This module will run last. + +Commands requirements: + + * one command per line + * if command ending by value, it must be inside single quotes: + ``set some option 'value'``, ``delete some option 'value'`` + * a single-quote symbol is not allowed inside command or value + +The commands list produced by the ``show configuration commands`` command on a +VyOS router should comply with all the requirements, so it is easy to get a +proper commands list by copying it from another router. + +Usage example (User-Data content): + +.. code-block:: + + #cloud-config + vyos_config_commands: + - set system host-name 'demo123' + - set system ntp server 1.pool.ntp.org + - set system ntp server 2.pool.ntp.org + - delete interfaces ethernet eth2 address + - set interfaces ethernet eth2 address '192.0.2.1/24' + + + +References +---------- + +.. stop_vyoslinter + +https://github.com/vyos/vyos-cloud-init/commit/1607eec32641ad93ea211e447336b3366c28de06 + +.. start_vyoslinter -- cgit v1.2.3 From e517ab266e62ab92b140b767b5887b6a7a35f330 Mon Sep 17 00:00:00 2001 From: Perkele Paholainen <78736661+borutswarm@users.noreply.github.com> Date: Tue, 23 Mar 2021 21:39:09 +0100 Subject: Fix code-blocks not displaying - code-blocks were not displaying in two files - lowered TOC depth in docs/installation/cloud/index.rst --- docs/configuration/system/ip.rst | 4 ++-- docs/installation/cloud/cloud-init.rst | 2 +- docs/installation/cloud/index.rst | 1 + 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/docs/configuration/system/ip.rst b/docs/configuration/system/ip.rst index 6c158de9..361e9f6d 100644 --- a/docs/configuration/system/ip.rst +++ b/docs/configuration/system/ip.rst @@ -32,7 +32,7 @@ show commands See below the different parameters available for the IPv4 **show** command: -.. code-block:: +.. code-block:: none vyos@vyos:~$ show ip Possible completions: @@ -64,7 +64,7 @@ reset commands And the different IPv4 **reset** commands available: -.. code-block:: +.. code-block:: none vyos@vyos:~$ reset ip Possible completions: diff --git a/docs/installation/cloud/cloud-init.rst b/docs/installation/cloud/cloud-init.rst index b9c1c415..1a5bda92 100644 --- a/docs/installation/cloud/cloud-init.rst +++ b/docs/installation/cloud/cloud-init.rst @@ -26,7 +26,7 @@ proper commands list by copying it from another router. Usage example (User-Data content): -.. code-block:: +.. code-block:: none #cloud-config vyos_config_commands: diff --git a/docs/installation/cloud/index.rst b/docs/installation/cloud/index.rst index e4079c2c..860122f5 100644 --- a/docs/installation/cloud/index.rst +++ b/docs/installation/cloud/index.rst @@ -5,6 +5,7 @@ Running VyOS in Cloud Environments .. toctree:: + :maxdepth: 1 :caption: Content cloud-init -- cgit v1.2.3