{"id":23034134,"url":"https://github.com/autostructure/kubernetes","last_synced_at":"2025-04-02T22:15:12.804Z","repository":{"id":136317263,"uuid":"113393012","full_name":"autostructure/kubernetes","owner":"autostructure","description":"Installs kubernetes master and worker nodes.","archived":false,"fork":false,"pushed_at":"2017-12-24T01:32:34.000Z","size":43,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-08T12:45:51.195Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","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/autostructure.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG","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-12-07T02:37:00.000Z","updated_at":"2018-05-08T13:33:35.000Z","dependencies_parsed_at":null,"dependency_job_id":"79292f36-799f-4766-9a7d-a47a2bf14e95","html_url":"https://github.com/autostructure/kubernetes","commit_stats":null,"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autostructure%2Fkubernetes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autostructure%2Fkubernetes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autostructure%2Fkubernetes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autostructure%2Fkubernetes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/autostructure","download_url":"https://codeload.github.com/autostructure/kubernetes/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246899668,"owners_count":20851898,"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":[],"created_at":"2024-12-15T16:29:26.575Z","updated_at":"2025-04-02T22:15:12.781Z","avatar_url":"https://github.com/autostructure.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Kubernetes\n\n#### Table of Contents\n\n1. [Description](#description)\n1. [Setup - The basics of getting started with kubernetes](#setup)\n    * [Setup requirements](#setup-requirements)\n    * [Beginning with kubernetes](#beginning-with-kubernetes)\n1. [Usage - Configuration options and additional functionality](#usage)\n1. [Reference - An under-the-hood peek at what the module is doing and how](#reference)\n1. [Limitations - OS compatibility, etc.](#limitations)\n1. [Development - Guide for contributing to the module](#development)\n\n## Overview\n\nThe Autostructure kubernetes module installs and configures Kubernetes using the kubeadm application.\n\n## Description\n\nThis module installs, configures, and manages Kubernetes.\n\n* Centos 7.0\n\n## Setup\n\n### Setup Requirements\n\nInstall ruby and bolt to use all of the functionality of this module.\n\n#### Install ruby\n\nYou need to have ruby installed locally. If you are unfamiliar with ruby follow these instructions to install it on your machine. https://www.ruby-lang.org/en/documentation/installation/\n\n#### Install bolt and puppet\n\nIn order to execute the tasks and plans of this module you will need puppet and bolt.\n\nYou also need to download the module locally.\n\nGo ahead and install them.\n\n```puppet\ngem install puppet --no-ri --no-rdoc\ngem install bolt --no-ri --no-rdoc\npuppet module install autostructure-kubernetes\n```\n\n## Usage\n\nIf you have already installed the module with Puppet Enterprise go to [Using Puppet Enterprise.](#using_puppet_enterprise)\n\nIf you are doing an install on fresh boxes go to [Fresh Install without Puppet Enterprise.](#fresh_install_without_puppet_enterprise)\n\n### Using Puppet Enterprise\n\nIf you are using Puppet Enterprise kubeadm can be installed by calling the main class.\n\nTo install kubernetes add a single class to the manifest file:\n\n```puppet\ninclude ::kubernetes\n```\n\nYou also need to include docker. Docker must be assigned to the cgroupfs cgroupdriver. Turn off the firewall.\n\nBoth modules are required for the kubernetes module. The following snippet sets the minimal requirements for kubernetes.\n\n```puppet\nclass { '::firewall':\n  ensure =\u003e stopped,\n}\n\nclass { '::docker':\n  extra_parameters =\u003e ['--exec-opt native.cgroupdriver=cgroupfs'],\n}\n```\n\n#### Using a username and password\n\n```bolt\nbolt plan run kubernetes::install_cluster master=\u003cmaster_host_or_ip\u003e worker_nodes=\u003cworker1_host_or_ip\u003e,\u003cworker2__or_ip_2\u003e,... --user \u003csudo_user\u003e --password \u003csudo_user_password\u003e  --modulepath ~/.puppetlabs/etc/code/modules -k --sudo\n```\n\n#### Using a username private key\n\n```bolt\nbolt plan run kubernetes::install_cluster master=\u003cmaster_host_or_ip\u003e worker_nodes=\u003cworker1_host_or_ip\u003e,\u003cworker2__or_ip_2\u003e,... --user \u003csudo_user\u003e --private-key \u003cpath_to_private_key\u003e  --modulepath ~/.puppetlabs/etc/code/modules -k --sudo\n```\n\n### Fresh Install without Puppet Enterprise\n\nIf kubeadm is not installed on your servers run one of the following commands to install your kubernetes cluster.\n\nThe user you use must have the ability to run sudo.\n\n#### Using a username and password\n\n```bolt\nbolt plan run kubernetes::install_cluster master=\u003cmaster_host_or_ip\u003e worker_nodes=\u003cworker1_host_or_ip\u003e,\u003cworker2__or_ip_2\u003e,... --user \u003csudo_user\u003e --password \u003csudo_user_password\u003e  --modulepath ~/.puppetlabs/etc/code/modules -k --sudo\n```\n\n#### Using a username private key\n\n```bolt\nbolt plan run kubernetes::install_cluster master=\u003cmaster_host_or_ip\u003e worker_nodes=\u003cworker1_host_or_ip\u003e,\u003cworker2__or_ip_2\u003e,... --user \u003csudo_user\u003e --private-key \u003cpath_to_private_key\u003e  --modulepath ~/.puppetlabs/etc/code/modules -k --sudo\n```\n\n## Reference\n\n### Classes\n\n#### Public classes\n\n* kubernetes: Main class, includes all other classes.\n\n#### Private classes\n\n* kubernetes::pre_install: Handles pre-installation tasks.\n* kubernetes::install: Handles the packages.\n* kubernetes::config: Handles the configuration files.\n* kubernetes::service: Handles the service.\n\n## Limitations\n\nThis module has only been tested on CentOS. Consider it alpha.\n\n## Development\n\nPuppet modules on the Puppet Forge are open projects, and community contributions are essential for keeping them great. Please follow our guidelines when contributing changes.\n\nFor more information, see our [module contribution guide.](https://docs.puppetlabs.com/forge/contributing.html)\n\n## Contributors\n\nTo see who's already involved, see the [list of contributors.](https://github.com/autostructure/kubernetes/graphs/contributors)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fautostructure%2Fkubernetes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fautostructure%2Fkubernetes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fautostructure%2Fkubernetes/lists"}