Skip to content

Commit c4096d1

Browse files
mrunalpagnisarindam-bandyopadhyayAkarshES
authored
Release 0.9.0 (#331)
* JIRA: OKE-10515 Investigate and bring FVD tests into CCM repo JIRA: OKE-10515 Investigate and bring FVD tests into CCM repo. enhance dev0 template * 1. Customer should be able to edit the service to add/update listener even if the customer uses the service.beta.kubernetes.io/oci-load-balancer-backend-protocol: "HTTP" 2. When customers add service.beta.kubernetes.io/oci-load-balancer-backend-protocol: "HTTP" in existing service, CCM should update the existing listener with the new protocol( i.e only change the protocol of the listener, not create and delete the listerner) * JIRA: OKE-8944 - Support health check config for backend sets. * JIRA: OKE-10520 - Regional Subnet via LB annotation re-work. Remove subnets annotation and keep old annotaion. * OKE-10829 - oci-cloud-provider should retry on all retryable errors * merge internal repo commits to oss * Ensure LB SecList is synced if there are no Backend/Backendset/Listerner changes * Update seclist when lb service nodeport changes * OKE-8694 - CCM is not honouring oci-load-balancer-connection-idle-timeout annotation during update event * remove wercker references * JIRA: OKE-7821 - Opensource CSI in OGHO * OKE-10509 - CCM should set node address properly to cross compartment node OKE-7743 - Fault Domain Label to the Nodes * OKE-11767 - CCM should support LB Service creation if nodepool belongs to a different compartment * JIRA: OKE-11796 - Fix node info controller to trim providerID prefix to support backward compatibility to non-oke clusters. Co-authored-by: arindam-bandyopadhyay <[email protected]> Co-authored-by: Akarsh Ellore Sreenath <[email protected]>
1 parent c5b87ae commit c4096d1

File tree

73 files changed

+16091
-847
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

73 files changed

+16091
-847
lines changed

Makefile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,18 +16,18 @@
1616
PKG := github.com/oracle/oci-cloud-controller-manager
1717

1818
ifeq "$(CI_IMAGE_REGISTRY)" ""
19-
CI_IMAGE_REGISTRY ?= "iad.ocir.io/oracle"
19+
CI_IMAGE_REGISTRY ?= iad.ocir.io/oracle
2020
else
2121
CI_IMAGE_REGISTRY ?= ${CI_IMAGE_REGISTRY}
2222
endif
2323

2424
ifeq "$(OSS_REGISTRY)" ""
25-
OSS_REGISTRY ?= "iad.ocir.io/oracle"
25+
OSS_REGISTRY ?= iad.ocir.io/oracle
2626
else
2727
OSS_REGISTRY ?= ${OSS_REGISTRY}
2828
endif
2929
IMAGE ?= $(OSS_REGISTRY)/cloud-provider-oci
30-
COMPONENT ?= oci-cloud-controller-manager oci-volume-provisioner oci-flexvolume-driver cloud-provider-oci
30+
COMPONENT ?= oci-cloud-controller-manager oci-volume-provisioner oci-flexvolume-driver cloud-provider-oci oci-csi-controller-driver oci-csi-node-driver
3131

3232
ifeq "$(VERSION)" ""
3333
BUILD := $(shell git describe --exact-match 2> /dev/null || git describe --match=$(git rev-parse --short=8 HEAD) --always --dirty --abbrev=8)

README.md

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@ cloud-provider specific code out of the Kubernetes codebase.
2424

2525
## Compatibility matrix
2626

27-
| | Kubernetes 1.14 | Kubernetes 1.15 | Kubernetes 1.16 | Kubernetes 1.17 |
28-
|----------|-----------------------|------------------------|------------------------|------------------------|
29-
| <=v 0.7 |||||
30-
| v 0.8 || |||
31-
27+
| | Kubernetes 1.16 | Kubernetes 1.17 | Kubernetes 1.18 |
28+
|----------|------------------------|------------------------|------------------------|
29+
| <=v 0.7 | || |
30+
| v 0.8 ||||
31+
| v 0.9 ||||
3232

3333
Key:
3434

@@ -44,7 +44,7 @@ Key:
4444
- ServiceController - responsible for creating load balancers when a service
4545
of `type: LoadBalancer` is created in Kubernetes.
4646

47-
Additionally, this project implements a flexvolume driver and a flexvolume provisioner for Kubernetes clusters running on Oracle Cloud Infrastructure (OCI).
47+
Additionally, this project implements a container-storage-interface, a flexvolume driver and a flexvolume provisioner for Kubernetes clusters running on Oracle Cloud Infrastructure (OCI).
4848

4949
## Setup and Installation
5050

@@ -55,7 +55,7 @@ following:
5555
2. Create a Kubernetes secret containing the configuration for the CCM.
5656
3. Deploy the CCM as a [DaemonSet][4].
5757

58-
Note: For the setup and installation of [flexvolume driver](flex-volume-driver.md) and [flexvolume provisioner](flex-volume-provisioner.md) please refer linked resources.
58+
Note: For the setup and installation of [flexvolume driver](flex-volume-driver.md), [flexvolume provisioner](flex-volume-provisioner.md) and [container-storage-interface](container-storage-interface.md) please refer linked resources.
5959

6060
### Preparing Your Cluster
6161

@@ -65,6 +65,9 @@ use an external cloud-provider.
6565
This involves:
6666
- Setting the `--cloud-provider=external` flag on the `kubelet` on **all
6767
nodes** in your cluster.
68+
- Setting the `--provider-id=<instanceID>` flag on the `kubelet` on **all
69+
nodes** in your cluster.
70+
Where `<instanceID>` is the [instance ocid][11] of a node (unique for each node).
6871
- Setting the `--cloud-provider=external` flag on the `kube-controller-manager`
6972
in your Kubernetes control plane.
7073

@@ -125,7 +128,7 @@ I0905 13:44:51.786083 7 flags.go:52] FLAG: --cloud-provider="oci"
125128

126129
## Upgrade
127130

128-
The following example shows how to upgrade the CCM, FVP and FVD from an older version (replace ? with the version you're upgrading to):
131+
The following example shows how to upgrade the CCM, FVP, FVD and CSI from an older version (replace ? with the version you're upgrading to):
129132

130133
```bash
131134
$ export RELEASE=?
@@ -135,6 +138,9 @@ $ kubectl apply -f https://github.com/oracle/oci-cloud-controller-manager/releas
135138
$ kubectl apply -f https://github.com/oracle/oci-cloud-controller-manager/releases/download/${RELEASE}/oci-volume-provisioner-rbac.yaml
136139
$ kubectl apply -f https://github.com/oracle/oci-cloud-controller-manager/releases/download/${RELEASE}/oci-flexvolume-driver.yaml
137140
$ kubectl apply -f https://github.com/oracle/oci-cloud-controller-manager/releases/download/${RELEASE}/oci-flexvolume-driver-rbac.yaml
141+
$ kubectl apply -f https://github.com/oracle/oci-cloud-controller-manager/releases/download/${RELEASE}/oci-csi-controller-driver.yaml
142+
$ kubectl apply -f https://github.com/oracle/oci-cloud-controller-manager/releases/download/${RELEASE}/oci-csi-node-driver.yaml
143+
$ kubectl apply -f https://github.com/oracle/oci-cloud-controller-manager/releases/download/${RELEASE}/oci-csi-node-rbac.yaml
138144
```
139145

140146
## Examples
@@ -176,3 +182,4 @@ See [LICENSE](LICENSE) for more details.
176182
[8]: https://github.com/oracle/oci-cloud-controller-manager/blob/master/docs/tutorial.md
177183
[9]: https://github.com/oracle/oci-cloud-controller-manager/blob/master/docs/tutorial-ssl.md
178184
[10]: https://github.com/oracle/oci-cloud-controller-manager/blob/master/docs/rate-limiter-configuration.md
185+
[11]: https://docs.cloud.oracle.com/en-us/iaas/Content/Compute/Concepts/computeoverview.htm#two

cmd/cloud-provider-oci/app/cloud_provider_oci.go

Lines changed: 0 additions & 185 deletions
This file was deleted.

cmd/cloud-provider-oci/main.go

Lines changed: 0 additions & 59 deletions
This file was deleted.
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
// Copyright 2019 Oracle and/or its affiliates. All rights reserved.
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
package csicontrollerdriver
16+
17+
import (
18+
"github.com/oracle/oci-cloud-controller-manager/cmd/oci-csi-controller-driver/csioptions"
19+
"github.com/oracle/oci-cloud-controller-manager/pkg/csi/driver"
20+
"github.com/oracle/oci-cloud-controller-manager/pkg/logging"
21+
"go.uber.org/zap"
22+
)
23+
24+
//StartControllerDriver main function to start CSI Controller Driver
25+
func StartControllerDriver(csiOptions csioptions.CSIOptions) {
26+
27+
logger := logging.Logger().Sugar()
28+
logger.Sync()
29+
30+
drv, err := driver.NewControllerDriver(logger, csiOptions.Endpoint, csiOptions.Kubeconfig, csiOptions.Master)
31+
if err != nil {
32+
logger.With(zap.Error(err)).Fatal("Failed to create controller driver.")
33+
}
34+
35+
if err := drv.Run(); err != nil {
36+
logger.With(zap.Error(err)).Fatal("Failed to run the CSI driver.")
37+
}
38+
39+
logger.Info("CSI driver exited")
40+
}

0 commit comments

Comments
 (0)