Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Colony v0.2 - Adding Proxmox content #64

Open
wants to merge 6 commits into
base: main
Choose a base branch
from
Open

Conversation

konstructcarrie
Copy link
Contributor

Description

Updating nav and adding promox content

Related Issue(s)

Fixes #

How to test

Review content added, revise/update


## View in Proxmox

If you navigate back to Proxmox you should see all of the VMs connected. To interact with the cluster you created, download the kubeconfig file. Export the variable and run
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should show the user how to downlaod a Kubeconfig file from Colony UI and set KUBECONFIG env var.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you provide steps/screen capture for this process?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Amen for the first part of your comment @muse-sisay but for the second part, there are so many ways to operate a Kubeconfig that unless we document them almost all it feels like it's more of a personal option, for example:

  • Merging kubeconfigs into one macro
  • Having the --kubeconfig /path/to/kubeconfig
  • Having a unique file
  • Having an environment variable
  • Having an "agent"

Not sure if we want to document how to set all of those and mostly I say it because while setting the KUBECONFIG is straightforward, it may not work in environments where people already maintaining kubernetes (which is our target audience) might use other tools instead.

All that to say, I'm down to tell them how to download a Kubeconfig, not sure I would want to document how to plug that Kubeconfig to your kubectl CLI. I would probably just link this instead: https://kubernetes.io/docs/reference/kubectl/ (it shows how to set the var, or if you use other tools, how to skew away).

This guide walks through the setup of Laptop-0, a machine for running Colony, and 3 additional VM's for Colony to auto discovery and install a K3S cluster. Some items to note:

- Colony requires Docker.
- If you have a firewall on your host machine (laptop 0) it needs to allow the following ports (ports TBA).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was a half thought out idea, let's remove it.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Feel free to just suggest an edit for what you think should be removed.

docs/install/proxmox/proxmox-setup.md Outdated Show resolved Hide resolved

## Getting Started

The steps here are optional, but we recommend completing these to create a Proxmox template VM that you can clone to for better performance and asset creation.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The steps here are optional, but we recommend completing these to create a Proxmox template VM that you can clone to for better performance and asset creation.
The steps here are optional, but we recommend completing these to create a Proxmox template VM that you can clone to quickly create virtual machines to experiment with. You can move on *add link here* if you have an existing virtual machine that you want to use as Laptop-0.

docs/install/proxmox/proxmox-setup.md Outdated Show resolved Hide resolved

### Debian image

These steps use a `debian cloudinit image for laptop VM`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
These steps use a `debian cloudinit image for laptop VM`.
These steps use a `debian cloudinit image for laptop VM`. Following set of commands should be in your Proxmox host machine. You can either SSH into the host or use the shell in Proxmox UI. To access the shell click on `Datacenter` > your node (choose one if you have multiple > `shell`.

docs/install/proxmox/proxmox-setup.md Outdated Show resolved Hide resolved

### Guest agent and VIM

Install `qemu-guest-agent` and `vim`. This enables information to report back from the guest machine to the host. Allows power off commands to pass to the guest.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Install `qemu-guest-agent` and `vim`. This enables information to report back from the guest machine to the host. Allows power off commands to pass to the guest.
We will use `virt-customize` to install `qemu-guest-agent` and `vim`. The qemu-guest-agent is used to provide a communication channel between a virtual machine and its Proxmox. enabling features like shutdown, time synchronization, and better management of guest systems.

Copy link
Member

@patrickdappollonio patrickdappollonio Nov 21, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

qemu-guest-agent should also be a code item.

Suggested change
Install `qemu-guest-agent` and `vim`. This enables information to report back from the guest machine to the host. Allows power off commands to pass to the guest.
We will use `virt-customize` to install `qemu-guest-agent` and `vim`. The `qemu-guest-agent` is used to provide a communication channel between a virtual machine and its Proxmox, enabling features like shutdown, time synchronization, and better management of guest systems.

docs/install/proxmox/proxmox-setup.md Outdated Show resolved Hide resolved

### Resize config

Remove machine config and resize root disk to `32 Gb`. This allows new virtual machines created from the template to have unique machine ID.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Prepare virtual machine image by increasing the disk size to 32GB and removing machine-specific information generated in previous step. This ensure that the image can be safely cloned or reused without conflicts.

virt-customize -a debian-12-genericcloud-amd64-20241004-1890.qcow2 --copy-in ./kubectl:/usr/local/bin/
```

### Resize config
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
### Resize config
### Finishing touches (? maybe)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think finishing touches is vague. Normally I'd use a heading that says what we're doing, if it's more than resizing something like... Final config steps

Comment on lines +180 to +183
colony init \
--apiKey $YOUR_COLONY_API_KEY \
--loadBalancerInterface eth0 \
--loadBalancerIP <loadbalancer>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
colony init \
--apiKey $YOUR_COLONY_API_KEY \
--loadBalancerInterface eth0 \
--loadBalancerIP <loadbalancer>
colony init \
--api-key=$COLONY_API_KEY \
--load-balancer-interface=$INTERFACE \
--load-balancer-ip=$LOAD_BALANCER_IP

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants