{"id":16164569,"url":"https://github.com/reyk/meta-data","last_synced_at":"2025-03-18T23:30:29.121Z","repository":{"id":151263104,"uuid":"83096003","full_name":"reyk/meta-data","owner":"reyk","description":"meta-data datasource for OpenBSD vmd(8)","archived":false,"fork":false,"pushed_at":"2018-10-18T22:08:50.000Z","size":27,"stargazers_count":18,"open_issues_count":1,"forks_count":2,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-02-28T12:46:40.444Z","etag":null,"topics":["cloud","cloud-init","openbsd","vmd","vmm"],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/reyk.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-02-25T01:03:42.000Z","updated_at":"2025-01-31T12:20:25.000Z","dependencies_parsed_at":"2024-03-14T12:16:05.130Z","dependency_job_id":null,"html_url":"https://github.com/reyk/meta-data","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reyk%2Fmeta-data","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reyk%2Fmeta-data/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reyk%2Fmeta-data/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/reyk%2Fmeta-data/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/reyk","download_url":"https://codeload.github.com/reyk/meta-data/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243955303,"owners_count":20374369,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloud","cloud-init","openbsd","vmd","vmm"],"created_at":"2024-10-10T02:47:05.633Z","updated_at":"2025-03-18T23:30:29.117Z","avatar_url":"https://github.com/reyk.png","language":"C","readme":"META-DATA(8) - System Manager's Manual\n\n# NAME\n\n**meta-data** - meta-data server for OpenBSD's virtual machine daemon\n\n# SYNOPSIS\n\n**meta-data**\n\\[**-23**]\n\\[**-u**\u0026nbsp;*user*]\n\\[**-l**\u0026nbsp;*lease-file*]\n\\[*bridge*]\n\n# DESCRIPTION\n\nThe\n**meta-data**\nFastCGI program provides a cloud-init datasource for\nOpenBSD's\nvmd(8)\nthat is compatible with Apache CloudStack\nand partially compatible with Amazon EC2.\n\nThe options are as follows:\n\n**-2**\n\n\u003e Run in layer\n\u003e **2**\n\u003e mode.\n\u003e **meta-data**\n\u003e will find the guest VM by its MAC address in the DHCP\n\u003e *lease-file*\n\u003e and the\n\u003e *bridge*\n\u003e cache.\n\u003e This is the default if layer\n\u003e **3**\n\u003e mode is not specified.\n\u003e The default bridge name is\n\u003e \"bridge0\".\n\n**-3**\n\n\u003e Run in layer\n\u003e **3**\n\u003e mode.\n\u003e **meta-data**\n\u003e will find the guest VM by its IPv4 address in the ARP table.\n\u003e The layer\n\u003e **2**\n\u003e and\n\u003e **3**\n\u003e modes can be combined.\n\n**-u** *user*\n\n\u003e Change the\n\u003e *user*\n\u003e name.\n\u003e The default is\n\u003e \"\\_meta-data\".\n\n**-l** *lease-file*\n\n\u003e Change the\n\u003e *lease-file*.\n\u003e The default is\n\u003e */var/db/dhcpd.leases*.\n\nUse the following steps to run\n**meta-data**:\n\n1.\tCreate the\n\t*meta-data*\n\tdirectory and add the\n\t\"\\_meta-data\"\n\tuser:\n\n\t\t# mkdir -p /home/vm/meta-data\n\t\t# groupadd -g 787 _meta-data\n\t\t# useradd -g 787 -u 787 -k /var/empty -d /home/vm/meta-data \\\n\t\t\t-s /sbin/nologin -c \"meta-data user\" _meta-data\n\n2.\tUse the\n\tkfcgi(8)\n\tFastCGI server to run\n\t**meta-data**.\n\tStart it as root, with chroot disabled, and\n\t**meta-data**\n\twill drop privileges by itself.\n\tThe\n\t**meta-data**\n\tsocket has to be owned by the \"www\" user of the web server.\n\n\t\t# kfcgi -r -n 2 -u www -p / -- /usr/local/libexec/meta-data\n\n3.\tConfigure and start\n\thttpd(8)\n\tto handle\n\t**meta-data**\n\trequests:\n\n\t\tserver \"meta-data\" {\n\t\t\tlisten on 169.254.169.254 port 80\n\t\t\tfastcgi socket \"/run/httpd.sock\"\n\t\t\troot { \"/\", strip 1 }\n\t\t}\n\n# ATTRIBUTES\n\n**meta-data**\nserves a number of attributes, so-called meta-data items and optional\nuser-data, that are specific to the requesting VM.\nThe following attributes are supported:\n\n**meta-data/availability-zone**\n\n\u003e This option is provided for compatibility.\n\u003e It includes the name of the\n\u003e *bridge*\n\u003e interface.\n\n**meta-data/instance-id**\n\n\u003e The VM identifier in the format\n\u003e **vm**\u0026zwnj;*ID*,\n\u003e e.g.\n\u003e *vm1*.\n\n**meta-data/local-hostname**\n\n\u003e The hostname of the guest VM,\n\u003e based on the VM name that was specified in\n\u003e vm.conf(5)\n\u003e or by the\n\u003e vmctl(8)\n\u003e **start**\n\u003e command.\n\n**meta-data/local-ipv4**\n\n\u003e The IPv4 address of the guest VM.\n\u003e It is identical to the verified guest IP address of the HTTP request.\n\n**meta-data/public-hostname**\n\n\u003e This option is provided for compatibility.\n\u003e It includes the hostname of the\n\u003e vmd(8)\n\u003e host where\n\u003e **meta-data**\n\u003e is running.\n\n**meta-data/public-ipv4**\n\n\u003e This option is provided for compatibility.\n\u003e It currently includes the fixed string\n\u003e \"127.0.0.1\".\n\n**meta-data/public-keys/0/openssh-key**\n\n\u003e The SSH public key that is included in the\n\u003e *openssh-key*\n\u003e file in the VM's configuration directory.\n\u003e See the\n\u003e *FILES*\n\u003e section below.\n\u003e **meta-data**\n\u003e returns an\n\u003e \"HTTP 404 Not Found\"\n\u003e error if the file does not exist.\n\n**meta-data/service-offering**\n\n\u003e This option is provided for compatibility.\n\u003e It includes the fixed string\n\u003e \"OpenBSD\".\n\n**meta-data/username**\n\n\u003e Returns the contents of the\n\u003e *username*\n\u003e file in the VM's configuration directory,\n\u003e or\n\u003e \"puffy\"\n\u003e if it does not exist.\n\u003e This item is not available in other meta-data implementations.\n\n**user-data**\n\n\u003e Returns the contents of the\n\u003e *user-data*\n\u003e file in the VM's configuration directory,\n\u003e or an\n\u003e \"HTTP 404 Not Found\"\n\u003e if it does not exist.\n\u003e The user-data file typically includes a configuration file or shell\n\u003e script of a type that is indicated by the\n\u003e \"shebang\"\n\u003e in the first line, for example\n\u003e \"#!/bin/sh\"\n\u003e or\n\u003e \"#cloud-config\".\n\n# FILES\n\n*/home/vm/meta-data/openbsd.vm*\n\n\u003e Directory containing meta-data for the virtual machine\n\u003e \"openbsd.vm\".\n\n*openssh-key*\n\n\u003e The SSH public key in the VM's meta-data directory.\n\n*user-data*\n\n\u003e \"user-data\" file in the VM's meta-data directory.\n\n*username*\n\n\u003e The login username (this is an extension).\n\n# SEE ALSO\n\nkcgi(8),\nkfcgi(8),\nvmd(8)\n\n*User-Data and Meta-Data*,\n[http://docs.cloudstack.apache.org/projects/cloudstack-administration/en/latest/virtual\\_machines.html#user-data-and-meta-data](http://docs.cloudstack.apache.org/projects/cloudstack-administration/en/latest/virtual_machines.html#user-data-and-meta-data).\n\n# AUTHORS\n\nReyk Floeter \u0026lt;[reyk@openbsd.org](mailto:reyk@openbsd.org)\u0026gt;\n\nOpenBSD 6.1 - June 30, 2017\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freyk%2Fmeta-data","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Freyk%2Fmeta-data","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Freyk%2Fmeta-data/lists"}