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

DOCS-1547-Upgrade-failing #796

Merged
merged 1 commit into from
Aug 2, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 15 additions & 17 deletions calico/operations/upgrading/kubernetes-upgrade.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ ownership of the helm resources to the new chart location.
1. Apply the {{version}} CRDs:

```bash
kubectl apply --server-side --force-conflicts -f {{manifestsUrl}}/manifests/operator-crds.yaml
kubectl apply --server-side --force-conflicts -f {{manifestsURL}}/manifests/operator-crds.yaml
```

1. Install the helm chart in the `tigera-operator` namespace.
Expand All @@ -83,7 +83,7 @@ the output and then re-running the command without --dry-run to commit to the ch
1. Apply the {{version}} CRDs:

```bash
kubectl apply --server-side --force-conflicts -f {{manifestsUrl}}/manifests/operator-crds.yaml
kubectl apply --server-side --force-conflicts -f {{manifestsURL}}/manifests/operator-crds.yaml
```

1. Run the helm upgrade:
Expand Down Expand Up @@ -113,19 +113,19 @@ the output and then re-running the command without --dry-run to commit to the ch
**{{prodname}} for policy and networking**

```bash
curl {{manifestsUrl}}/manifests/calico.yaml -O
curl {{manifestsURL}}/manifests/calico.yaml -o upgrade.yaml
```

**{{prodname}} for policy and flannel for networking**

```bash
curl {{manifestsUrl}}/manifests/canal.yaml -O
curl {{manifestsURL}}/manifests/canal.yaml -o upgrade.yaml
```

**{{prodname}} for policy (advanced)**

```bash
curl {{manifestsUrl}}/manifests/calico-policy-only.yaml -O
curl {{manifestsURL}}/manifests/calico-policy-only.yaml -o upgrade.yaml
```

:::note
Expand All @@ -135,16 +135,15 @@ the output and then re-running the command without --dry-run to commit to the ch

:::

1. Use the following command to initiate a rolling update, after replacing
`<manifest-file-name>` with the file name of your {{version}} manifest.
1. Use the following command to initiate a rolling update.
Copy link
Member

@rene-dekker rene-dekker Jul 7, 2023

Choose a reason for hiding this comment

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

I think it will be nicer if the curl step before this step would would store the manifest as a fixed name, like upgrade.yaml
so that you can modify all commands below to apply upgrade.yaml:

kubectl apply --server-side --force-conflicts -f upgrade.yaml

Copy link
Member

Choose a reason for hiding this comment

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

So in stead of

curl https://raw.githubusercontent.com/projectcalico/calico/v3.25.1/manifests/calico.yaml -O
curl https://raw.githubusercontent.com/projectcalico/calico/v3.25.1/manifests/canal.yaml -O
curl https://raw.githubusercontent.com/projectcalico/calico/v3.25.1/manifests/calico-policy-only.yaml -O

it would be:

curl https://raw.githubusercontent.com/projectcalico/calico/v3.25.1/manifests/calico.yaml -o upgrade.yaml
curl https://raw.githubusercontent.com/projectcalico/calico/v3.25.1/manifests/canal.yaml -o upgrade.yaml
curl https://raw.githubusercontent.com/projectcalico/calico/v3.25.1/manifests/calico-policy-only.yaml -o upgrade.yaml

Copy link
Contributor Author

@bmckercher123 bmckercher123 Jul 7, 2023

Choose a reason for hiding this comment

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

@rene-dekker We can do above, but the manifests paths using {{version}} are failing in netlify (see logs). Unless you or Dan can fix the backend?

Copy link
Member

Choose a reason for hiding this comment

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

These URLs all work for me.

Copy link
Member

@rene-dekker rene-dekker Jul 31, 2023

Choose a reason for hiding this comment

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

In the CI, the patch version is missing from URLs:

https://raw.githubusercontent.com/projectcalico/calico/v3.26/manifests/canal.yaml

It should be v3.26.x. Rather than using {{version}}, you need something that includes the patch.


```
kubectl replace -f <manifest-file-name>
```bash
kubectl apply --server-side --force-conflicts -f upgrade.yaml
```

1. Watch the status of the upgrade as follows.

```
```bash
watch kubectl get pods -n kube-system
```

Expand Down Expand Up @@ -182,13 +181,13 @@ the output and then re-running the command without --dry-run to commit to the ch
**{{prodname}} for policy and networking**

```bash
curl {{manifestsUrl}}/manifests/calico-etcd.yaml -O
curl {{manifestsUrl}}/manifests/calico-etcd.yaml -o upgrade.yaml
```

**{{prodname}} for policy and flannel for networking**

```bash
curl {{manifestsUrl}}/manifests/canal-etcd.yaml -O
curl {{manifestsUrl}}/manifests/canal-etcd.yaml -o upgrade.yaml
```

:::note
Expand All @@ -199,16 +198,15 @@ the output and then re-running the command without --dry-run to commit to the ch

:::

1. Use the following command to initiate a rolling update, after replacing
`<manifest-file-name>` with the file name of your {{version}} manifest.
1. Use the following command to initiate a rolling update.

```
kubectl apply -f <manifest-file-name>
```bash
kubectl apply --server-side --force-conflicts -f upgrade.yaml
```

1. Watch the status of the upgrade as follows.

```
```bash
watch kubectl get pods -n kube-system
```

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -113,19 +113,19 @@ the output and then re-running the command without --dry-run to commit to the ch
**{{prodname}} for policy and networking**

```bash
curl {{manifestsUrl}}/manifests/calico.yaml -O
curl {{manifestsUrl}}/manifests/calico.yaml -o upgrade.yaml
```

**{{prodname}} for policy and flannel for networking**

```bash
curl {{manifestsUrl}}/manifests/canal.yaml -O
curl {{manifestsUrl}}/manifests/canal.yaml -o upgrade.yaml
```

**{{prodname}} for policy (advanced)**

```bash
curl {{manifestsUrl}}/manifests/calico-policy-only.yaml -O
curl {{manifestsUrl}}/manifests/calico-policy-only.yaml -o upgrade.yaml
```

:::note
Expand All @@ -135,22 +135,21 @@ the output and then re-running the command without --dry-run to commit to the ch

:::

1. Use the following command to initiate a rolling update, after replacing
`<manifest-file-name>` with the file name of your {{version}} manifest.
1. Use the following command to initiate a rolling update.

```
kubectl replace -f <manifest-file-name>
```bash
kubectl apply --server-side --force-conflicts -f upgrade.yaml
```

1. Watch the status of the upgrade as follows.

```
```bash
watch kubectl get pods -n kube-system
```

Verify that the status of all {{prodname}} pods indicate `Running`.

```
```bash
{{noderunning}}-hvvg8 2/2 Running 0 3m
{{noderunning}}-vm8kh 2/2 Running 0 3m
{{noderunning}}-w92wk 2/2 Running 0 3m
Expand Down Expand Up @@ -182,13 +181,13 @@ the output and then re-running the command without --dry-run to commit to the ch
**{{prodname}} for policy and networking**

```bash
curl {{manifestsUrl}}/manifests/calico-etcd.yaml -O
curl {{manifestsUrl}}/manifests/calico-etcd.yaml -o upgrade.yaml
```

**{{prodname}} for policy and flannel for networking**

```bash
curl {{manifestsUrl}}/manifests/canal-etcd.yaml -O
curl {{manifestsUrl}}/manifests/canal-etcd.yaml -o upgrade.yaml
```

:::note
Expand All @@ -199,15 +198,15 @@ the output and then re-running the command without --dry-run to commit to the ch

:::

1. Use the following command to initiate a rolling update, after replacing
`<manifest-file-name>` with the file name of your {{version}} manifest.
1. Use the following command to initiate a rolling update.

```
kubectl apply -f <manifest-file-name>
```bash
kubectl apply --server-side --force-conflicts -f upgrade.yaml
```

1. Watch the status of the upgrade as follows.

bash
```
watch kubectl get pods -n kube-system
```
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -113,19 +113,19 @@ the output and then re-running the command without --dry-run to commit to the ch
**{{prodname}} for policy and networking**

```bash
curl {{manifestsUrl}}/manifests/calico.yaml -O
curl {{manifestsUrl}}/manifests/calico.yaml -o upgrade.yaml
```

**{{prodname}} for policy and flannel for networking**

```bash
curl {{manifestsUrl}}/manifests/canal.yaml -O
curl {{manifestsUrl}}/manifests/canal.yaml -o upgrade.yaml
```

**{{prodname}} for policy (advanced)**

```bash
curl {{manifestsUrl}}/manifests/calico-policy-only.yaml -O
curl {{manifestsUrl}}/manifests/calico-policy-only.yaml -o upgrade.yaml
```

:::note
Expand All @@ -135,16 +135,15 @@ the output and then re-running the command without --dry-run to commit to the ch

:::

1. Use the following command to initiate a rolling update, after replacing
`<manifest-file-name>` with the file name of your {{version}} manifest.
1. Use the following command to initiate a rolling update.

```
kubectl replace -f <manifest-file-name>
```bash
kubectl apply --server-side --force-conflicts -f upgrade.yaml
```

1. Watch the status of the upgrade as follows.

```
```bash
watch kubectl get pods -n kube-system
```

Expand Down Expand Up @@ -182,13 +181,13 @@ the output and then re-running the command without --dry-run to commit to the ch
**{{prodname}} for policy and networking**

```bash
curl {{manifestsUrl}}/manifests/calico-etcd.yaml -O
curl {{manifestsUrl}}/manifests/calico-etcd.yaml -o upgrade.yaml
```

**{{prodname}} for policy and flannel for networking**

```bash
curl {{manifestsUrl}}/manifests/canal-etcd.yaml -O
curl {{manifestsUrl}}/manifests/canal-etcd.yaml -o upgrade.yaml
```

:::note
Expand All @@ -199,16 +198,15 @@ the output and then re-running the command without --dry-run to commit to the ch

:::

1. Use the following command to initiate a rolling update, after replacing
`<manifest-file-name>` with the file name of your {{version}} manifest.
1. Use the following command to initiate a rolling update.

```
kubectl apply -f <manifest-file-name>
```bash
kubectl apply --server-side --force-conflicts -f upgrade.yaml
```

1. Watch the status of the upgrade as follows.

```
```bash
watch kubectl get pods -n kube-system
```

Expand Down