<p>I hava a custom Kubernetes Cluster(minikube) and have depleyed Metallb. When I create a LoadBalancer Service, the status is still pending.</p>

<p>Pods is below,</p>

<p><a href="https://i.stack.imgur.com/WxCUM.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/WxCUM.png" alt="all pods"></a></p>

<p>minikube ip is <code>192.168.99.103</code>,
metallb config file is below,</p>

<pre><code>apiVersion: v1
kind: ConfigMap
metadata:
  namespace: metallb-system
  name: config
data:
  config: |
    address-pools:
    - name: my-ip-space
      protocol: layer2
      addresses:
      - 192.168.99.100/28
</code></pre>

<p>and the service yaml is below,</p>

<pre><code>apiVersion: v1
kind: Service
metadata:
  name: hello-world-web-lb
spec:
  type: LoadBalancer
  ports:
  - name: http
    port: 82
    targetPort: 8416
  selector:
    app: java
</code></pre>

<p>Minikube is a single VM test cluster. You need to use <a href="https://kubernetes.io/docs/tutorials/hello-minikube/#create-a-service" rel="nofollow noreferrer"><code>minikube service</code> </a>command to expose the service. </p>

<p>Assuming you are aim is to try metallb - </p>

<p><a href="https://www.shashankv.in/kubernetes/metallb-layer2-mode/" rel="nofollow noreferrer">You need to provide address range as <code>from-to</code> syntax as follows for layer2.</a></p>

<pre><code>apiVersion: v1
kind: ConfigMap
metadata:
  namespace: metallb-system
  name: config
data:
  config: |
    address-pools:
    - name: default
      protocol: layer2
      addresses:
      - 192.168.1.240-192.168.1.250     ---&gt; This line
</code></pre>
